postcss 8.4.5 → 8.4.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of postcss might be problematic. Click here for more details.
- package/lib/no-work-result.js +6 -3
- package/lib/parser.js +24 -26
- package/lib/processor.js +1 -1
- package/package.json +3 -3
package/lib/no-work-result.js
CHANGED
package/lib/parser.js
CHANGED
@@ -139,10 +139,12 @@ class Parser {
|
|
139
139
|
if (brackets.length > 0) this.unclosedBracket(bracket)
|
140
140
|
|
141
141
|
if (end && colon) {
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
142
|
+
if (!customProperty) {
|
143
|
+
while (tokens.length) {
|
144
|
+
token = tokens[tokens.length - 1][0]
|
145
|
+
if (token !== 'space' && token !== 'comment') break
|
146
|
+
this.tokenizer.back(tokens.pop())
|
147
|
+
}
|
146
148
|
}
|
147
149
|
this.decl(tokens, customProperty)
|
148
150
|
} else {
|
@@ -208,7 +210,15 @@ class Parser {
|
|
208
210
|
node.raws.before += node.prop[0]
|
209
211
|
node.prop = node.prop.slice(1)
|
210
212
|
}
|
211
|
-
|
213
|
+
|
214
|
+
let firstSpaces = []
|
215
|
+
let next
|
216
|
+
while (tokens.length) {
|
217
|
+
next = tokens[0][0]
|
218
|
+
if (next !== 'space' && next !== 'comment') break
|
219
|
+
firstSpaces.push(tokens.shift())
|
220
|
+
}
|
221
|
+
|
212
222
|
this.precheckMissedSemicolon(tokens)
|
213
223
|
|
214
224
|
for (let i = tokens.length - 1; i >= 0; i--) {
|
@@ -242,12 +252,12 @@ class Parser {
|
|
242
252
|
}
|
243
253
|
|
244
254
|
let hasWord = tokens.some(i => i[0] !== 'space' && i[0] !== 'comment')
|
245
|
-
|
255
|
+
|
246
256
|
if (hasWord) {
|
247
|
-
node.raws.between += firstSpaces
|
248
|
-
|
249
|
-
node.value = firstSpaces + node.value
|
257
|
+
node.raws.between += firstSpaces.map(i => i[1]).join('')
|
258
|
+
firstSpaces = []
|
250
259
|
}
|
260
|
+
this.raw(node, 'value', firstSpaces.concat(tokens), customProperty)
|
251
261
|
|
252
262
|
if (node.value.includes(':') && !customProperty) {
|
253
263
|
this.checkMissedSemicolon(tokens)
|
@@ -395,38 +405,26 @@ class Parser {
|
|
395
405
|
if (node.type !== 'comment') this.semicolon = false
|
396
406
|
}
|
397
407
|
|
398
|
-
raw(node, prop, tokens) {
|
408
|
+
raw(node, prop, tokens, customProperty) {
|
399
409
|
let token, type
|
400
410
|
let length = tokens.length
|
401
411
|
let value = ''
|
402
412
|
let clean = true
|
403
413
|
let next, prev
|
404
|
-
let pattern = /^([#.|])?(\w)+/i
|
405
414
|
|
406
415
|
for (let i = 0; i < length; i += 1) {
|
407
416
|
token = tokens[i]
|
408
417
|
type = token[0]
|
409
|
-
|
410
|
-
|
418
|
+
if (type === 'space' && i === length - 1 && !customProperty) {
|
419
|
+
clean = false
|
420
|
+
} else if (type === 'comment') {
|
411
421
|
prev = tokens[i - 1]
|
412
422
|
next = tokens[i + 1]
|
413
|
-
|
414
|
-
if (
|
415
|
-
prev[0] !== 'space' &&
|
416
|
-
next[0] !== 'space' &&
|
417
|
-
pattern.test(prev[1]) &&
|
418
|
-
pattern.test(next[1])
|
419
|
-
) {
|
423
|
+
if (prev && next && prev[0] !== 'space' && next[0] !== 'space') {
|
420
424
|
value += token[1]
|
421
425
|
} else {
|
422
426
|
clean = false
|
423
427
|
}
|
424
|
-
|
425
|
-
continue
|
426
|
-
}
|
427
|
-
|
428
|
-
if (type === 'comment' || (type === 'space' && i === length - 1)) {
|
429
|
-
clean = false
|
430
428
|
} else {
|
431
429
|
value += token[1]
|
432
430
|
}
|
package/lib/processor.js
CHANGED
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "postcss",
|
3
|
-
"version": "8.4.
|
3
|
+
"version": "8.4.6",
|
4
4
|
"description": "Tool for transforming styles with JS plugins",
|
5
5
|
"engines": {
|
6
6
|
"node": "^10 || ^12 || >=14"
|
@@ -65,9 +65,9 @@
|
|
65
65
|
"url": "https://github.com/postcss/postcss/issues"
|
66
66
|
},
|
67
67
|
"dependencies": {
|
68
|
-
"nanoid": "^3.
|
68
|
+
"nanoid": "^3.2.0",
|
69
69
|
"picocolors": "^1.0.0",
|
70
|
-
"source-map-js": "^1.0.
|
70
|
+
"source-map-js": "^1.0.2"
|
71
71
|
},
|
72
72
|
"browser": {
|
73
73
|
"./lib/terminal-highlight": false,
|