source: node_modules/autoprefixer/lib/hacks/break-props.js@ 505f39a

Last change on this file since 505f39a was 2058e5c, checked in by istevanoska <ilinastevanoska@…>, 6 months ago

Working / before login

  • Property mode set to 100644
File size: 1.3 KB
Line 
1let Declaration = require('../declaration')
2
3class BreakProps extends Declaration {
4 /**
5 * Don’t prefix some values
6 */
7 insert(decl, prefix, prefixes) {
8 if (decl.prop !== 'break-inside') {
9 return super.insert(decl, prefix, prefixes)
10 }
11 if (/region/i.test(decl.value) || /page/i.test(decl.value)) {
12 return undefined
13 }
14 return super.insert(decl, prefix, prefixes)
15 }
16
17 /**
18 * Return property name by final spec
19 */
20 normalize(prop) {
21 if (prop.includes('inside')) {
22 return 'break-inside'
23 }
24 if (prop.includes('before')) {
25 return 'break-before'
26 }
27 return 'break-after'
28 }
29
30 /**
31 * Change name for -webkit- and -moz- prefix
32 */
33 prefixed(prop, prefix) {
34 return `${prefix}column-${prop}`
35 }
36
37 /**
38 * Change prefixed value for avoid-column and avoid-page
39 */
40 set(decl, prefix) {
41 if (
42 (decl.prop === 'break-inside' && decl.value === 'avoid-column') ||
43 decl.value === 'avoid-page'
44 ) {
45 decl.value = 'avoid'
46 }
47 return super.set(decl, prefix)
48 }
49}
50
51BreakProps.names = [
52 'break-inside',
53 'page-break-inside',
54 'column-break-inside',
55 'break-before',
56 'page-break-before',
57 'column-break-before',
58 'break-after',
59 'page-break-after',
60 'column-break-after'
61]
62
63module.exports = BreakProps
Note: See TracBrowser for help on using the repository browser.