postcss-normalize-string 4.0.0-rc.2 → 4.0.0

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.
Files changed (3) hide show
  1. package/README.md +1 -1
  2. package/dist/index.js +44 -53
  3. package/package.json +6 -6
package/README.md CHANGED
@@ -50,7 +50,7 @@ console.log(postcss(normalize({preferredQuote: 'single'})).process(css).css);
50
50
 
51
51
  ## Contributors
52
52
 
53
- See [CONTRIBUTORS.md](https://github.com/ben-eb/cssnano/blob/master/CONTRIBUTORS.md).
53
+ See [CONTRIBUTORS.md](https://github.com/cssnano/cssnano/blob/master/CONTRIBUTORS.md).
54
54
 
55
55
  ## License
56
56
 
package/dist/index.js CHANGED
@@ -18,57 +18,53 @@ var _has2 = _interopRequireDefault(_has);
18
18
 
19
19
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
20
 
21
- function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
22
-
23
21
  /*
24
22
  * Constants (parser usage)
25
23
  */
26
24
 
27
- var SINGLE_QUOTE = '\''.charCodeAt(0);
28
- var DOUBLE_QUOTE = '"'.charCodeAt(0);
29
- var BACKSLASH = '\\'.charCodeAt(0);
30
- var NEWLINE = '\n'.charCodeAt(0);
31
- var SPACE = ' '.charCodeAt(0);
32
- var FEED = '\f'.charCodeAt(0);
33
- var TAB = '\t'.charCodeAt(0);
34
- var CR = '\r'.charCodeAt(0);
25
+ const SINGLE_QUOTE = '\''.charCodeAt(0);
26
+ const DOUBLE_QUOTE = '"'.charCodeAt(0);
27
+ const BACKSLASH = '\\'.charCodeAt(0);
28
+ const NEWLINE = '\n'.charCodeAt(0);
29
+ const SPACE = ' '.charCodeAt(0);
30
+ const FEED = '\f'.charCodeAt(0);
31
+ const TAB = '\t'.charCodeAt(0);
32
+ const CR = '\r'.charCodeAt(0);
35
33
 
36
- var WORD_END = /[ \n\t\r\f'"\\]/g;
34
+ const WORD_END = /[ \n\t\r\f'"\\]/g;
37
35
 
38
36
  /*
39
37
  * Constants (node type strings)
40
38
  */
41
39
 
42
- var C_STRING = 'string';
43
- var C_ESCAPED_SINGLE_QUOTE = 'escapedSingleQuote';
44
- var C_ESCAPED_DOUBLE_QUOTE = 'escapedDoubleQuote';
45
- var C_SINGLE_QUOTE = 'singleQuote';
46
- var C_DOUBLE_QUOTE = 'doubleQuote';
47
- var C_NEWLINE = 'newline';
48
- var C_SINGLE = 'single';
40
+ const C_STRING = 'string';
41
+ const C_ESCAPED_SINGLE_QUOTE = 'escapedSingleQuote';
42
+ const C_ESCAPED_DOUBLE_QUOTE = 'escapedDoubleQuote';
43
+ const C_SINGLE_QUOTE = 'singleQuote';
44
+ const C_DOUBLE_QUOTE = 'doubleQuote';
45
+ const C_NEWLINE = 'newline';
46
+ const C_SINGLE = 'single';
49
47
 
50
48
  /*
51
49
  * Literals
52
50
  */
53
51
 
54
- var L_SINGLE_QUOTE = `'`;
55
- var L_DOUBLE_QUOTE = `"`;
56
- var L_NEWLINE = `\\\n`;
52
+ const L_SINGLE_QUOTE = `'`;
53
+ const L_DOUBLE_QUOTE = `"`;
54
+ const L_NEWLINE = `\\\n`;
57
55
 
58
56
  /*
59
57
  * Parser nodes
60
58
  */
61
59
 
62
- var T_ESCAPED_SINGLE_QUOTE = { type: C_ESCAPED_SINGLE_QUOTE, value: `\\'` };
63
- var T_ESCAPED_DOUBLE_QUOTE = { type: C_ESCAPED_DOUBLE_QUOTE, value: `\\"` };
64
- var T_SINGLE_QUOTE = { type: C_SINGLE_QUOTE, value: L_SINGLE_QUOTE };
65
- var T_DOUBLE_QUOTE = { type: C_DOUBLE_QUOTE, value: L_DOUBLE_QUOTE };
66
- var T_NEWLINE = { type: C_NEWLINE, value: L_NEWLINE };
60
+ const T_ESCAPED_SINGLE_QUOTE = { type: C_ESCAPED_SINGLE_QUOTE, value: `\\'` };
61
+ const T_ESCAPED_DOUBLE_QUOTE = { type: C_ESCAPED_DOUBLE_QUOTE, value: `\\"` };
62
+ const T_SINGLE_QUOTE = { type: C_SINGLE_QUOTE, value: L_SINGLE_QUOTE };
63
+ const T_DOUBLE_QUOTE = { type: C_DOUBLE_QUOTE, value: L_DOUBLE_QUOTE };
64
+ const T_NEWLINE = { type: C_NEWLINE, value: L_NEWLINE };
67
65
 
68
66
  function stringify(ast) {
69
- return ast.nodes.reduce(function (str, _ref) {
70
- var value = _ref.value;
71
-
67
+ return ast.nodes.reduce((str, { value }) => {
72
68
  // Collapse multiple line strings automatically
73
69
  if (value === L_NEWLINE) {
74
70
  return str;
@@ -78,13 +74,11 @@ function stringify(ast) {
78
74
  }
79
75
 
80
76
  function parse(str) {
81
- var code = void 0,
82
- next = void 0,
83
- value = void 0;
84
- var pos = 0;
85
- var len = str.length;
77
+ let code, next, value;
78
+ let pos = 0;
79
+ let len = str.length;
86
80
 
87
- var ast = {
81
+ const ast = {
88
82
  nodes: [],
89
83
  types: {
90
84
  escapedSingleQuote: 0,
@@ -173,8 +167,7 @@ function parse(str) {
173
167
  }
174
168
 
175
169
  function changeWrappingQuotes(node, ast) {
176
- var types = ast.types;
177
-
170
+ const { types } = ast;
178
171
  if (types[C_SINGLE_QUOTE] || types[C_DOUBLE_QUOTE]) {
179
172
  return;
180
173
  }
@@ -187,14 +180,14 @@ function changeWrappingQuotes(node, ast) {
187
180
  node.quote = L_SINGLE_QUOTE;
188
181
  }
189
182
 
190
- ast.nodes = ast.nodes.reduce(function (newAst, child) {
183
+ ast.nodes = ast.nodes.reduce((newAst, child) => {
191
184
  if (child.type === C_ESCAPED_DOUBLE_QUOTE && node.quote === L_SINGLE_QUOTE) {
192
- return [].concat(_toConsumableArray(newAst), [T_DOUBLE_QUOTE]);
185
+ return [...newAst, T_DOUBLE_QUOTE];
193
186
  }
194
187
  if (child.type === C_ESCAPED_SINGLE_QUOTE && node.quote === L_DOUBLE_QUOTE) {
195
- return [].concat(_toConsumableArray(newAst), [T_SINGLE_QUOTE]);
188
+ return [...newAst, T_SINGLE_QUOTE];
196
189
  }
197
- return [].concat(_toConsumableArray(newAst), [child]);
190
+ return [...newAst, child];
198
191
  }, []);
199
192
  }
200
193
 
@@ -202,11 +195,11 @@ function normalize(value, preferredQuote) {
202
195
  if (!value || !value.length) {
203
196
  return value;
204
197
  }
205
- return (0, _postcssValueParser2.default)(value).walk(function (child) {
198
+ return (0, _postcssValueParser2.default)(value).walk(child => {
206
199
  if (child.type !== C_STRING) {
207
200
  return;
208
201
  }
209
- var ast = parse(child.value);
202
+ const ast = parse(child.value);
210
203
  if (ast.quotes) {
211
204
  changeWrappingQuotes(child, ast);
212
205
  } else if (preferredQuote === C_SINGLE) {
@@ -218,24 +211,22 @@ function normalize(value, preferredQuote) {
218
211
  }).toString();
219
212
  }
220
213
 
221
- var params = {
214
+ const params = {
222
215
  rule: 'selector',
223
216
  decl: 'value',
224
217
  atrule: 'params'
225
218
  };
226
219
 
227
- exports.default = _postcss2.default.plugin('postcss-normalize-string', function (opts) {
228
- var _Object$assign = Object.assign({}, {
220
+ exports.default = _postcss2.default.plugin('postcss-normalize-string', opts => {
221
+ const { preferredQuote } = Object.assign({}, {
229
222
  preferredQuote: 'double'
230
- }, opts),
231
- preferredQuote = _Object$assign.preferredQuote;
232
-
233
- return function (css) {
234
- css.walk(function (node) {
235
- var type = node.type;
223
+ }, opts);
236
224
 
225
+ return css => {
226
+ css.walk(node => {
227
+ const { type } = node;
237
228
  if ((0, _has2.default)(params, type)) {
238
- var param = params[type];
229
+ const param = params[type];
239
230
  node[param] = normalize(node[param], preferredQuote);
240
231
  }
241
232
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "postcss-normalize-string",
3
- "version": "4.0.0-rc.2",
3
+ "version": "4.0.0",
4
4
  "description": "Normalize wrapping quotes for CSS string literals.",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -18,24 +18,24 @@
18
18
  "license": "MIT",
19
19
  "devDependencies": {
20
20
  "babel-cli": "^6.0.0",
21
- "cross-env": "^3.0.0"
21
+ "cross-env": "^5.0.0"
22
22
  },
23
- "homepage": "https://github.com/ben-eb/cssnano",
23
+ "homepage": "https://github.com/cssnano/cssnano",
24
24
  "author": {
25
25
  "name": "Ben Briggs",
26
26
  "email": "beneb.info@gmail.com",
27
27
  "url": "http://beneb.info"
28
28
  },
29
- "repository": "ben-eb/cssnano",
29
+ "repository": "cssnano/cssnano",
30
30
  "dependencies": {
31
31
  "has": "^1.0.0",
32
32
  "postcss": "^6.0.0",
33
33
  "postcss-value-parser": "^3.0.0"
34
34
  },
35
35
  "bugs": {
36
- "url": "https://github.com/ben-eb/cssnano/issues"
36
+ "url": "https://github.com/cssnano/cssnano/issues"
37
37
  },
38
38
  "engines": {
39
- "node": ">=4"
39
+ "node": ">=6.9.0"
40
40
  }
41
41
  }