@@ -13,7 +13,7 @@ module.exports = postcss.plugin('postcss-simple-extend', function simpleExtend()
13
13
14
14
// /*DEBUG*/ appendout('./test/debugout.txt', '\n----------------------------------------');
15
15
16
- css . eachAtRule ( function ( atRule ) {
16
+ css . walkAtRules ( function ( atRule ) {
17
17
if ( definingAtRules . indexOf ( atRule . name ) !== - 1 ) {
18
18
processDefinition ( atRule ) ;
19
19
} else if ( extendingAtRules . indexOf ( atRule . name ) !== - 1 ) {
@@ -23,7 +23,7 @@ module.exports = postcss.plugin('postcss-simple-extend', function simpleExtend()
23
23
24
24
//Selectively disclude silents and placeholders, find unused,
25
25
//and exclude from the final output
26
- css . eachRule ( function ( targetNode ) {
26
+ css . walkRules ( function ( targetNode ) {
27
27
var tgtSaved = targetNode . selectors ;
28
28
var selectorAccumulator ;
29
29
for ( var i = 0 ; i < tgtSaved . length ; i ++ ) {
@@ -34,7 +34,7 @@ module.exports = postcss.plugin('postcss-simple-extend', function simpleExtend()
34
34
selectorAccumulator . push ( tgtSaved [ i ] ) ;
35
35
}
36
36
} else if ( tgtSaved . length === 1 ) {
37
- targetNode . removeSelf ( ) ;
37
+ targetNode . remove ( ) ;
38
38
// /*DEBUG*/ } else {
39
39
// /*DEBUG*/ appendout('./test/debugout.txt', '\nSifted out placeholder/silent ' + tgtSaved[i]);
40
40
}
@@ -47,35 +47,35 @@ module.exports = postcss.plugin('postcss-simple-extend', function simpleExtend()
47
47
//simplification process to find definitions in the future
48
48
function processDefinition ( atRule ) {
49
49
if ( isBadDefinitionLocation ( atRule ) ) {
50
- atRule . removeSelf ( ) ;
50
+ atRule . remove ( ) ;
51
51
return ;
52
52
}
53
53
var definition = postcss . rule ( ) ;
54
54
55
55
//Manually copy styling properties (semicolon, whitespace)
56
56
//to newly created and cloned nodes,
57
57
//cf. https://github.com/postcss/postcss/issues/85
58
- definition . semicolon = atRule . semicolon ;
58
+ definition . raws . semicolon = atRule . raws . semicolon ;
59
59
atRule . nodes . forEach ( function ( node ) {
60
60
if ( isBadDefinitionNode ( node ) ) return ;
61
61
var clone = node . clone ( ) ;
62
- clone . before = node . before ;
63
- clone . after = node . after ;
64
- clone . between = node . between ;
62
+ clone . raws . before = node . raws . before ;
63
+ clone . raws . after = node . raws . after ;
64
+ clone . raws . between = node . raws . between ;
65
65
definition . append ( clone ) ;
66
66
} ) ;
67
67
definition . selector = '@define-placeholder ' + atRule . params . toString ( ) ;
68
68
// /*DEBUG*/ appendout('./test/debugout.txt', '\nDeclaring placeholder : ' + definition.selector);
69
69
atRule . parent . insertBefore ( atRule , definition ) ;
70
- atRule . removeSelf ( ) ;
70
+ atRule . remove ( ) ;
71
71
}
72
72
73
73
function processExtension ( atRule ) {
74
74
if ( isBadExtension ( atRule ) ) {
75
75
if ( ! atRule . parent . nodes . length || ( atRule . parent . nodes . length === 1 && atRule . parent . type !== 'root' ) ) {
76
- atRule . parent . removeSelf ( ) ;
76
+ atRule . parent . remove ( ) ;
77
77
} else {
78
- atRule . removeSelf ( ) ;
78
+ atRule . remove ( ) ;
79
79
}
80
80
return ;
81
81
}
@@ -88,7 +88,7 @@ module.exports = postcss.plugin('postcss-simple-extend', function simpleExtend()
88
88
} ;
89
89
90
90
if ( ! hasMediaAncestor ( atRule ) ) {
91
- css . eachRule ( function ( targetNode ) {
91
+ css . walkRules ( function ( targetNode ) {
92
92
var tgtSaved = targetNode . selectors ;
93
93
//Strip all @define -placeholders and save slug-selectors present in tgtSaved
94
94
for ( var i = 0 ; i < tgtSaved . length ; i ++ ) {
@@ -152,7 +152,7 @@ module.exports = postcss.plugin('postcss-simple-extend', function simpleExtend()
152
152
// /*DEBUG*/ appendout('./test/debugout.txt', '\nAttempting to fetch declarations for ' + atRule.params + '...');
153
153
var backFirstTargetNode ;
154
154
var targetNodeArray = [ ] ;
155
- css . eachRule ( function ( subRule ) {
155
+ css . walkRules ( function ( subRule ) {
156
156
//create a back-is-top stack so that we can efficiently operate on nodes in reverse
157
157
//thus retaining priority when copying declarations if there are multiple matches
158
158
if ( ! hasMediaAncestor ( subRule ) || subRule . parent === atRule . parent . parent ) {
@@ -241,9 +241,9 @@ module.exports = postcss.plugin('postcss-simple-extend', function simpleExtend()
241
241
}
242
242
if ( atRule . parent !== undefined ) {
243
243
if ( ! atRule . parent . nodes . length || atRule . parent . nodes . length === 1 ) {
244
- atRule . parent . removeSelf ( ) ;
244
+ atRule . parent . remove ( ) ;
245
245
} else {
246
- atRule . removeSelf ( ) ;
246
+ atRule . remove ( ) ;
247
247
}
248
248
}
249
249
}
@@ -324,12 +324,12 @@ module.exports = postcss.plugin('postcss-simple-extend', function simpleExtend()
324
324
var clone = node . clone ( ) ;
325
325
//For lack of a better way to analyse how much tabbing is required:
326
326
if ( nodeOrigin . parent === nodeDest . parent ) {
327
- clone . before = node . before ;
327
+ clone . raws . before = node . raws . before ;
328
328
} else {
329
- clone . before = node . before + '\t' ;
329
+ clone . raws . before = node . raws . before + '\t' ;
330
330
}
331
- clone . after = node . after ;
332
- clone . between = node . between ;
331
+ clone . raws . after = node . raws . after ;
332
+ clone . raws . between = node . raws . between ;
333
333
nodeDest . append ( clone ) ;
334
334
} ) ;
335
335
}
0 commit comments