style-to-object 1.0.8 → 1.0.9

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.
@@ -8,265 +8,274 @@
8
8
  return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
9
9
  }
10
10
 
11
- // http://www.w3.org/TR/CSS21/grammar.html
12
- // https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027
13
- var COMMENT_REGEX = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g;
14
-
15
- var NEWLINE_REGEX = /\n/g;
16
- var WHITESPACE_REGEX = /^\s*/;
17
-
18
- // declaration
19
- var PROPERTY_REGEX = /^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/;
20
- var COLON_REGEX = /^:\s*/;
21
- var VALUE_REGEX = /^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/;
22
- var SEMICOLON_REGEX = /^[;\s]*/;
23
-
24
- // https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill
25
- var TRIM_REGEX = /^\s+|\s+$/g;
26
-
27
- // strings
28
- var NEWLINE = '\n';
29
- var FORWARD_SLASH = '/';
30
- var ASTERISK = '*';
31
- var EMPTY_STRING = '';
32
-
33
- // types
34
- var TYPE_COMMENT = 'comment';
35
- var TYPE_DECLARATION = 'declaration';
36
-
37
- /**
38
- * @param {String} style
39
- * @param {Object} [options]
40
- * @return {Object[]}
41
- * @throws {TypeError}
42
- * @throws {Error}
43
- */
44
- var inlineStyleParser = function (style, options) {
45
- if (typeof style !== 'string') {
46
- throw new TypeError('First argument must be a string');
47
- }
48
-
49
- if (!style) return [];
50
-
51
- options = options || {};
52
-
53
- /**
54
- * Positional.
55
- */
56
- var lineno = 1;
57
- var column = 1;
58
-
59
- /**
60
- * Update lineno and column based on `str`.
61
- *
62
- * @param {String} str
63
- */
64
- function updatePosition(str) {
65
- var lines = str.match(NEWLINE_REGEX);
66
- if (lines) lineno += lines.length;
67
- var i = str.lastIndexOf(NEWLINE);
68
- column = ~i ? str.length - i : column + str.length;
69
- }
70
-
71
- /**
72
- * Mark position and patch `node.position`.
73
- *
74
- * @return {Function}
75
- */
76
- function position() {
77
- var start = { line: lineno, column: column };
78
- return function (node) {
79
- node.position = new Position(start);
80
- whitespace();
81
- return node;
82
- };
83
- }
84
-
85
- /**
86
- * Store position information for a node.
87
- *
88
- * @constructor
89
- * @property {Object} start
90
- * @property {Object} end
91
- * @property {undefined|String} source
92
- */
93
- function Position(start) {
94
- this.start = start;
95
- this.end = { line: lineno, column: column };
96
- this.source = options.source;
97
- }
98
-
99
- /**
100
- * Non-enumerable source string.
101
- */
102
- Position.prototype.content = style;
103
-
104
- /**
105
- * Error `msg`.
106
- *
107
- * @param {String} msg
108
- * @throws {Error}
109
- */
110
- function error(msg) {
111
- var err = new Error(
112
- options.source + ':' + lineno + ':' + column + ': ' + msg
113
- );
114
- err.reason = msg;
115
- err.filename = options.source;
116
- err.line = lineno;
117
- err.column = column;
118
- err.source = style;
119
-
120
- if (options.silent) ; else {
121
- throw err;
122
- }
123
- }
124
-
125
- /**
126
- * Match `re` and return captures.
127
- *
128
- * @param {RegExp} re
129
- * @return {undefined|Array}
130
- */
131
- function match(re) {
132
- var m = re.exec(style);
133
- if (!m) return;
134
- var str = m[0];
135
- updatePosition(str);
136
- style = style.slice(str.length);
137
- return m;
138
- }
139
-
140
- /**
141
- * Parse whitespace.
142
- */
143
- function whitespace() {
144
- match(WHITESPACE_REGEX);
145
- }
146
-
147
- /**
148
- * Parse comments.
149
- *
150
- * @param {Object[]} [rules]
151
- * @return {Object[]}
152
- */
153
- function comments(rules) {
154
- var c;
155
- rules = rules || [];
156
- while ((c = comment())) {
157
- if (c !== false) {
158
- rules.push(c);
159
- }
160
- }
161
- return rules;
162
- }
163
-
164
- /**
165
- * Parse comment.
166
- *
167
- * @return {Object}
168
- * @throws {Error}
169
- */
170
- function comment() {
171
- var pos = position();
172
- if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;
173
-
174
- var i = 2;
175
- while (
176
- EMPTY_STRING != style.charAt(i) &&
177
- (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))
178
- ) {
179
- ++i;
180
- }
181
- i += 2;
182
-
183
- if (EMPTY_STRING === style.charAt(i - 1)) {
184
- return error('End of comment missing');
185
- }
186
-
187
- var str = style.slice(2, i - 2);
188
- column += 2;
189
- updatePosition(str);
190
- style = style.slice(i);
191
- column += 2;
192
-
193
- return pos({
194
- type: TYPE_COMMENT,
195
- comment: str
196
- });
197
- }
198
-
199
- /**
200
- * Parse declaration.
201
- *
202
- * @return {Object}
203
- * @throws {Error}
204
- */
205
- function declaration() {
206
- var pos = position();
207
-
208
- // prop
209
- var prop = match(PROPERTY_REGEX);
210
- if (!prop) return;
211
- comment();
212
-
213
- // :
214
- if (!match(COLON_REGEX)) return error("property missing ':'");
215
-
216
- // val
217
- var val = match(VALUE_REGEX);
218
-
219
- var ret = pos({
220
- type: TYPE_DECLARATION,
221
- property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),
222
- value: val
223
- ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING))
224
- : EMPTY_STRING
225
- });
226
-
227
- // ;
228
- match(SEMICOLON_REGEX);
229
-
230
- return ret;
231
- }
232
-
233
- /**
234
- * Parse declarations.
235
- *
236
- * @return {Object[]}
237
- */
238
- function declarations() {
239
- var decls = [];
240
-
241
- comments(decls);
242
-
243
- // declarations
244
- var decl;
245
- while ((decl = declaration())) {
246
- if (decl !== false) {
247
- decls.push(decl);
248
- comments(decls);
249
- }
250
- }
251
-
252
- return decls;
253
- }
254
-
255
- whitespace();
256
- return declarations();
257
- };
258
-
259
- /**
260
- * Trim `str`.
261
- *
262
- * @param {String} str
263
- * @return {String}
264
- */
265
- function trim(str) {
266
- return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;
11
+ var inlineStyleParser;
12
+ var hasRequiredInlineStyleParser;
13
+
14
+ function requireInlineStyleParser () {
15
+ if (hasRequiredInlineStyleParser) return inlineStyleParser;
16
+ hasRequiredInlineStyleParser = 1;
17
+ // http://www.w3.org/TR/CSS21/grammar.html
18
+ // https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027
19
+ var COMMENT_REGEX = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g;
20
+
21
+ var NEWLINE_REGEX = /\n/g;
22
+ var WHITESPACE_REGEX = /^\s*/;
23
+
24
+ // declaration
25
+ var PROPERTY_REGEX = /^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/;
26
+ var COLON_REGEX = /^:\s*/;
27
+ var VALUE_REGEX = /^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/;
28
+ var SEMICOLON_REGEX = /^[;\s]*/;
29
+
30
+ // https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill
31
+ var TRIM_REGEX = /^\s+|\s+$/g;
32
+
33
+ // strings
34
+ var NEWLINE = '\n';
35
+ var FORWARD_SLASH = '/';
36
+ var ASTERISK = '*';
37
+ var EMPTY_STRING = '';
38
+
39
+ // types
40
+ var TYPE_COMMENT = 'comment';
41
+ var TYPE_DECLARATION = 'declaration';
42
+
43
+ /**
44
+ * @param {String} style
45
+ * @param {Object} [options]
46
+ * @return {Object[]}
47
+ * @throws {TypeError}
48
+ * @throws {Error}
49
+ */
50
+ inlineStyleParser = function (style, options) {
51
+ if (typeof style !== 'string') {
52
+ throw new TypeError('First argument must be a string');
53
+ }
54
+
55
+ if (!style) return [];
56
+
57
+ options = options || {};
58
+
59
+ /**
60
+ * Positional.
61
+ */
62
+ var lineno = 1;
63
+ var column = 1;
64
+
65
+ /**
66
+ * Update lineno and column based on `str`.
67
+ *
68
+ * @param {String} str
69
+ */
70
+ function updatePosition(str) {
71
+ var lines = str.match(NEWLINE_REGEX);
72
+ if (lines) lineno += lines.length;
73
+ var i = str.lastIndexOf(NEWLINE);
74
+ column = ~i ? str.length - i : column + str.length;
75
+ }
76
+
77
+ /**
78
+ * Mark position and patch `node.position`.
79
+ *
80
+ * @return {Function}
81
+ */
82
+ function position() {
83
+ var start = { line: lineno, column: column };
84
+ return function (node) {
85
+ node.position = new Position(start);
86
+ whitespace();
87
+ return node;
88
+ };
89
+ }
90
+
91
+ /**
92
+ * Store position information for a node.
93
+ *
94
+ * @constructor
95
+ * @property {Object} start
96
+ * @property {Object} end
97
+ * @property {undefined|String} source
98
+ */
99
+ function Position(start) {
100
+ this.start = start;
101
+ this.end = { line: lineno, column: column };
102
+ this.source = options.source;
103
+ }
104
+
105
+ /**
106
+ * Non-enumerable source string.
107
+ */
108
+ Position.prototype.content = style;
109
+
110
+ /**
111
+ * Error `msg`.
112
+ *
113
+ * @param {String} msg
114
+ * @throws {Error}
115
+ */
116
+ function error(msg) {
117
+ var err = new Error(
118
+ options.source + ':' + lineno + ':' + column + ': ' + msg
119
+ );
120
+ err.reason = msg;
121
+ err.filename = options.source;
122
+ err.line = lineno;
123
+ err.column = column;
124
+ err.source = style;
125
+
126
+ if (options.silent) ; else {
127
+ throw err;
128
+ }
129
+ }
130
+
131
+ /**
132
+ * Match `re` and return captures.
133
+ *
134
+ * @param {RegExp} re
135
+ * @return {undefined|Array}
136
+ */
137
+ function match(re) {
138
+ var m = re.exec(style);
139
+ if (!m) return;
140
+ var str = m[0];
141
+ updatePosition(str);
142
+ style = style.slice(str.length);
143
+ return m;
144
+ }
145
+
146
+ /**
147
+ * Parse whitespace.
148
+ */
149
+ function whitespace() {
150
+ match(WHITESPACE_REGEX);
151
+ }
152
+
153
+ /**
154
+ * Parse comments.
155
+ *
156
+ * @param {Object[]} [rules]
157
+ * @return {Object[]}
158
+ */
159
+ function comments(rules) {
160
+ var c;
161
+ rules = rules || [];
162
+ while ((c = comment())) {
163
+ if (c !== false) {
164
+ rules.push(c);
165
+ }
166
+ }
167
+ return rules;
168
+ }
169
+
170
+ /**
171
+ * Parse comment.
172
+ *
173
+ * @return {Object}
174
+ * @throws {Error}
175
+ */
176
+ function comment() {
177
+ var pos = position();
178
+ if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;
179
+
180
+ var i = 2;
181
+ while (
182
+ EMPTY_STRING != style.charAt(i) &&
183
+ (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))
184
+ ) {
185
+ ++i;
186
+ }
187
+ i += 2;
188
+
189
+ if (EMPTY_STRING === style.charAt(i - 1)) {
190
+ return error('End of comment missing');
191
+ }
192
+
193
+ var str = style.slice(2, i - 2);
194
+ column += 2;
195
+ updatePosition(str);
196
+ style = style.slice(i);
197
+ column += 2;
198
+
199
+ return pos({
200
+ type: TYPE_COMMENT,
201
+ comment: str
202
+ });
203
+ }
204
+
205
+ /**
206
+ * Parse declaration.
207
+ *
208
+ * @return {Object}
209
+ * @throws {Error}
210
+ */
211
+ function declaration() {
212
+ var pos = position();
213
+
214
+ // prop
215
+ var prop = match(PROPERTY_REGEX);
216
+ if (!prop) return;
217
+ comment();
218
+
219
+ // :
220
+ if (!match(COLON_REGEX)) return error("property missing ':'");
221
+
222
+ // val
223
+ var val = match(VALUE_REGEX);
224
+
225
+ var ret = pos({
226
+ type: TYPE_DECLARATION,
227
+ property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),
228
+ value: val
229
+ ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING))
230
+ : EMPTY_STRING
231
+ });
232
+
233
+ // ;
234
+ match(SEMICOLON_REGEX);
235
+
236
+ return ret;
237
+ }
238
+
239
+ /**
240
+ * Parse declarations.
241
+ *
242
+ * @return {Object[]}
243
+ */
244
+ function declarations() {
245
+ var decls = [];
246
+
247
+ comments(decls);
248
+
249
+ // declarations
250
+ var decl;
251
+ while ((decl = declaration())) {
252
+ if (decl !== false) {
253
+ decls.push(decl);
254
+ comments(decls);
255
+ }
256
+ }
257
+
258
+ return decls;
259
+ }
260
+
261
+ whitespace();
262
+ return declarations();
263
+ };
264
+
265
+ /**
266
+ * Trim `str`.
267
+ *
268
+ * @param {String} str
269
+ * @return {String}
270
+ */
271
+ function trim(str) {
272
+ return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;
273
+ }
274
+ return inlineStyleParser;
267
275
  }
268
276
 
269
- var parse = /*@__PURE__*/getDefaultExportFromCjs(inlineStyleParser);
277
+ var inlineStyleParserExports = requireInlineStyleParser();
278
+ var parse = /*@__PURE__*/getDefaultExportFromCjs(inlineStyleParserExports);
270
279
 
271
280
  /**
272
281
  * Parses inline style to object.
@@ -1 +1 @@
1
- {"version":3,"file":"style-to-object.js","sources":["../node_modules/inline-style-parser/index.js","../src/index.ts"],"sourcesContent":["// http://www.w3.org/TR/CSS21/grammar.html\n// https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027\nvar COMMENT_REGEX = /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//g;\n\nvar NEWLINE_REGEX = /\\n/g;\nvar WHITESPACE_REGEX = /^\\s*/;\n\n// declaration\nvar PROPERTY_REGEX = /^(\\*?[-#/*\\\\\\w]+(\\[[0-9a-z_-]+\\])?)\\s*/;\nvar COLON_REGEX = /^:\\s*/;\nvar VALUE_REGEX = /^((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};])+)/;\nvar SEMICOLON_REGEX = /^[;\\s]*/;\n\n// https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill\nvar TRIM_REGEX = /^\\s+|\\s+$/g;\n\n// strings\nvar NEWLINE = '\\n';\nvar FORWARD_SLASH = '/';\nvar ASTERISK = '*';\nvar EMPTY_STRING = '';\n\n// types\nvar TYPE_COMMENT = 'comment';\nvar TYPE_DECLARATION = 'declaration';\n\n/**\n * @param {String} style\n * @param {Object} [options]\n * @return {Object[]}\n * @throws {TypeError}\n * @throws {Error}\n */\nmodule.exports = function (style, options) {\n if (typeof style !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n if (!style) return [];\n\n options = options || {};\n\n /**\n * Positional.\n */\n var lineno = 1;\n var column = 1;\n\n /**\n * Update lineno and column based on `str`.\n *\n * @param {String} str\n */\n function updatePosition(str) {\n var lines = str.match(NEWLINE_REGEX);\n if (lines) lineno += lines.length;\n var i = str.lastIndexOf(NEWLINE);\n column = ~i ? str.length - i : column + str.length;\n }\n\n /**\n * Mark position and patch `node.position`.\n *\n * @return {Function}\n */\n function position() {\n var start = { line: lineno, column: column };\n return function (node) {\n node.position = new Position(start);\n whitespace();\n return node;\n };\n }\n\n /**\n * Store position information for a node.\n *\n * @constructor\n * @property {Object} start\n * @property {Object} end\n * @property {undefined|String} source\n */\n function Position(start) {\n this.start = start;\n this.end = { line: lineno, column: column };\n this.source = options.source;\n }\n\n /**\n * Non-enumerable source string.\n */\n Position.prototype.content = style;\n\n var errorsList = [];\n\n /**\n * Error `msg`.\n *\n * @param {String} msg\n * @throws {Error}\n */\n function error(msg) {\n var err = new Error(\n options.source + ':' + lineno + ':' + column + ': ' + msg\n );\n err.reason = msg;\n err.filename = options.source;\n err.line = lineno;\n err.column = column;\n err.source = style;\n\n if (options.silent) {\n errorsList.push(err);\n } else {\n throw err;\n }\n }\n\n /**\n * Match `re` and return captures.\n *\n * @param {RegExp} re\n * @return {undefined|Array}\n */\n function match(re) {\n var m = re.exec(style);\n if (!m) return;\n var str = m[0];\n updatePosition(str);\n style = style.slice(str.length);\n return m;\n }\n\n /**\n * Parse whitespace.\n */\n function whitespace() {\n match(WHITESPACE_REGEX);\n }\n\n /**\n * Parse comments.\n *\n * @param {Object[]} [rules]\n * @return {Object[]}\n */\n function comments(rules) {\n var c;\n rules = rules || [];\n while ((c = comment())) {\n if (c !== false) {\n rules.push(c);\n }\n }\n return rules;\n }\n\n /**\n * Parse comment.\n *\n * @return {Object}\n * @throws {Error}\n */\n function comment() {\n var pos = position();\n if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;\n\n var i = 2;\n while (\n EMPTY_STRING != style.charAt(i) &&\n (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))\n ) {\n ++i;\n }\n i += 2;\n\n if (EMPTY_STRING === style.charAt(i - 1)) {\n return error('End of comment missing');\n }\n\n var str = style.slice(2, i - 2);\n column += 2;\n updatePosition(str);\n style = style.slice(i);\n column += 2;\n\n return pos({\n type: TYPE_COMMENT,\n comment: str\n });\n }\n\n /**\n * Parse declaration.\n *\n * @return {Object}\n * @throws {Error}\n */\n function declaration() {\n var pos = position();\n\n // prop\n var prop = match(PROPERTY_REGEX);\n if (!prop) return;\n comment();\n\n // :\n if (!match(COLON_REGEX)) return error(\"property missing ':'\");\n\n // val\n var val = match(VALUE_REGEX);\n\n var ret = pos({\n type: TYPE_DECLARATION,\n property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),\n value: val\n ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING))\n : EMPTY_STRING\n });\n\n // ;\n match(SEMICOLON_REGEX);\n\n return ret;\n }\n\n /**\n * Parse declarations.\n *\n * @return {Object[]}\n */\n function declarations() {\n var decls = [];\n\n comments(decls);\n\n // declarations\n var decl;\n while ((decl = declaration())) {\n if (decl !== false) {\n decls.push(decl);\n comments(decls);\n }\n }\n\n return decls;\n }\n\n whitespace();\n return declarations();\n};\n\n/**\n * Trim `str`.\n *\n * @param {String} str\n * @return {String}\n */\nfunction trim(str) {\n return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;\n}\n",null],"names":[],"mappings":";;;;;;;;;;CAAA;CACA;CACA,IAAI,aAAa,GAAG,iCAAiC,CAAC;AACtD;CACA,IAAI,aAAa,GAAG,KAAK,CAAC;CAC1B,IAAI,gBAAgB,GAAG,MAAM,CAAC;AAC9B;CACA;CACA,IAAI,cAAc,GAAG,wCAAwC,CAAC;CAC9D,IAAI,WAAW,GAAG,OAAO,CAAC;CAC1B,IAAI,WAAW,GAAG,sDAAsD,CAAC;CACzE,IAAI,eAAe,GAAG,SAAS,CAAC;AAChC;CACA;CACA,IAAI,UAAU,GAAG,YAAY,CAAC;AAC9B;CACA;CACA,IAAI,OAAO,GAAG,IAAI,CAAC;CACnB,IAAI,aAAa,GAAG,GAAG,CAAC;CACxB,IAAI,QAAQ,GAAG,GAAG,CAAC;CACnB,IAAI,YAAY,GAAG,EAAE,CAAC;AACtB;CACA;CACA,IAAI,YAAY,GAAG,SAAS,CAAC;CAC7B,IAAI,gBAAgB,GAAG,aAAa,CAAC;AACrC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA,IAAA,iBAAc,GAAG,UAAU,KAAK,EAAE,OAAO,EAAE;CAC3C,EAAE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;CACjC,IAAI,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;CAC3D,GAAG;AACH;CACA,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;AACxB;CACA,EAAE,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;AAC1B;CACA;CACA;CACA;CACA,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC;CACjB,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC;AACjB;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,SAAS,cAAc,CAAC,GAAG,EAAE;CAC/B,IAAI,IAAI,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;CACzC,IAAI,IAAI,KAAK,EAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;CACtC,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;CACrC,IAAI,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;CACvD,GAAG;AACH;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,SAAS,QAAQ,GAAG;CACtB,IAAI,IAAI,KAAK,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;CACjD,IAAI,OAAO,UAAU,IAAI,EAAE;CAC3B,MAAM,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC;CAC1C,MAAM,UAAU,EAAE,CAAC;CACnB,MAAM,OAAO,IAAI,CAAC;CAClB,KAAK,CAAC;CACN,GAAG;AACH;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,SAAS,QAAQ,CAAC,KAAK,EAAE;CAC3B,IAAI,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;CACvB,IAAI,IAAI,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;CAChD,IAAI,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CACjC,GAAG;AACH;CACA;CACA;CACA;CACA,EAAE,QAAQ,CAAC,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;AAGrC;CACA;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,SAAS,KAAK,CAAC,GAAG,EAAE;CACtB,IAAI,IAAI,GAAG,GAAG,IAAI,KAAK;CACvB,MAAM,OAAO,CAAC,MAAM,GAAG,GAAG,GAAG,MAAM,GAAG,GAAG,GAAG,MAAM,GAAG,IAAI,GAAG,GAAG;CAC/D,KAAK,CAAC;CACN,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC;CACrB,IAAI,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;CAClC,IAAI,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC;CACtB,IAAI,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;CACxB,IAAI,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;AACvB;CACA,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAEnB,MAAM;CACX,MAAM,MAAM,GAAG,CAAC;CAChB,KAAK;CACL,GAAG;AACH;CACA;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,SAAS,KAAK,CAAC,EAAE,EAAE;CACrB,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;CAC3B,IAAI,IAAI,CAAC,CAAC,EAAE,OAAO;CACnB,IAAI,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;CACnB,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC;CACxB,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;CACpC,IAAI,OAAO,CAAC,CAAC;CACb,GAAG;AACH;CACA;CACA;CACA;CACA,EAAE,SAAS,UAAU,GAAG;CACxB,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;CAC5B,GAAG;AACH;CACA;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,SAAS,QAAQ,CAAC,KAAK,EAAE;CAC3B,IAAI,IAAI,CAAC,CAAC;CACV,IAAI,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;CACxB,IAAI,QAAQ,CAAC,GAAG,OAAO,EAAE,GAAG;CAC5B,MAAM,IAAI,CAAC,KAAK,KAAK,EAAE;CACvB,QAAQ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CACtB,OAAO;CACP,KAAK;CACL,IAAI,OAAO,KAAK,CAAC;CACjB,GAAG;AACH;CACA;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,SAAS,OAAO,GAAG;CACrB,IAAI,IAAI,GAAG,GAAG,QAAQ,EAAE,CAAC;CACzB,IAAI,IAAI,aAAa,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO;AAChF;CACA,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;CACd,IAAI;CACJ,MAAM,YAAY,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;CACrC,OAAO,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,aAAa,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CAC3E,MAAM;CACN,MAAM,EAAE,CAAC,CAAC;CACV,KAAK;CACL,IAAI,CAAC,IAAI,CAAC,CAAC;AACX;CACA,IAAI,IAAI,YAAY,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE;CAC9C,MAAM,OAAO,KAAK,CAAC,wBAAwB,CAAC,CAAC;CAC7C,KAAK;AACL;CACA,IAAI,IAAI,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACpC,IAAI,MAAM,IAAI,CAAC,CAAC;CAChB,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC;CACxB,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;CAC3B,IAAI,MAAM,IAAI,CAAC,CAAC;AAChB;CACA,IAAI,OAAO,GAAG,CAAC;CACf,MAAM,IAAI,EAAE,YAAY;CACxB,MAAM,OAAO,EAAE,GAAG;CAClB,KAAK,CAAC,CAAC;CACP,GAAG;AACH;CACA;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,SAAS,WAAW,GAAG;CACzB,IAAI,IAAI,GAAG,GAAG,QAAQ,EAAE,CAAC;AACzB;CACA;CACA,IAAI,IAAI,IAAI,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;CACrC,IAAI,IAAI,CAAC,IAAI,EAAE,OAAO;CACtB,IAAI,OAAO,EAAE,CAAC;AACd;CACA;CACA,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAClE;CACA;CACA,IAAI,IAAI,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;AACjC;CACA,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC;CAClB,MAAM,IAAI,EAAE,gBAAgB;CAC5B,MAAM,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;CAClE,MAAM,KAAK,EAAE,GAAG;CAChB,UAAU,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;CAC3D,UAAU,YAAY;CACtB,KAAK,CAAC,CAAC;AACP;CACA;CACA,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;AAC3B;CACA,IAAI,OAAO,GAAG,CAAC;CACf,GAAG;AACH;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,SAAS,YAAY,GAAG;CAC1B,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;AACnB;CACA,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpB;CACA;CACA,IAAI,IAAI,IAAI,CAAC;CACb,IAAI,QAAQ,IAAI,GAAG,WAAW,EAAE,GAAG;CACnC,MAAM,IAAI,IAAI,KAAK,KAAK,EAAE;CAC1B,QAAQ,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;CACzB,QAAQ,QAAQ,CAAC,KAAK,CAAC,CAAC;CACxB,OAAO;CACP,KAAK;AACL;CACA,IAAI,OAAO,KAAK,CAAC;CACjB,GAAG;AACH;CACA,EAAE,UAAU,EAAE,CAAC;CACf,EAAE,OAAO,YAAY,EAAE,CAAC;CACxB,CAAC,CAAC;AACF;CACA;CACA;CACA;CACA;CACA;CACA;CACA,SAAS,IAAI,CAAC,GAAG,EAAE;CACnB,EAAE,OAAO,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,YAAY,CAAC;CACpE,CAAA;;;;CCrPA;;;;;;;;;;;;;CAaG;CACW,SAAU,aAAa,CACnC,KAAa,EACb,QAAmB,EAAA;KAEnB,IAAI,WAAW,GAAuB,IAAI,CAAC;KAE3C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;CACvC,QAAA,OAAO,WAAW,CAAC;MACpB;CAED,IAAA,IAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;CAClC,IAAA,IAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC;CAEnD,IAAA,YAAY,CAAC,OAAO,CAAC,UAAC,WAAW,EAAA;CAC/B,QAAA,IAAI,WAAW,CAAC,IAAI,KAAK,aAAa,EAAE;aACtC,OAAO;UACR;SAEO,IAAA,QAAQ,GAAY,WAAW,CAAA,QAAvB,EAAE,KAAK,GAAK,WAAW,CAAA,KAAhB,CAAiB;SAExC,IAAI,WAAW,EAAE;CACf,YAAA,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;UACxC;cAAM,IAAI,KAAK,EAAE;CAChB,YAAA,WAAW,GAAG,WAAW,IAAI,EAAE,CAAC;CAChC,YAAA,WAAW,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;UAC/B;CACH,KAAC,CAAC,CAAC;CAEH,IAAA,OAAO,WAAW,CAAC;CACrB;;;;;;;;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"style-to-object.js","sources":["../node_modules/inline-style-parser/index.js","../src/index.ts"],"sourcesContent":["// http://www.w3.org/TR/CSS21/grammar.html\n// https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027\nvar COMMENT_REGEX = /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//g;\n\nvar NEWLINE_REGEX = /\\n/g;\nvar WHITESPACE_REGEX = /^\\s*/;\n\n// declaration\nvar PROPERTY_REGEX = /^(\\*?[-#/*\\\\\\w]+(\\[[0-9a-z_-]+\\])?)\\s*/;\nvar COLON_REGEX = /^:\\s*/;\nvar VALUE_REGEX = /^((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};])+)/;\nvar SEMICOLON_REGEX = /^[;\\s]*/;\n\n// https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill\nvar TRIM_REGEX = /^\\s+|\\s+$/g;\n\n// strings\nvar NEWLINE = '\\n';\nvar FORWARD_SLASH = '/';\nvar ASTERISK = '*';\nvar EMPTY_STRING = '';\n\n// types\nvar TYPE_COMMENT = 'comment';\nvar TYPE_DECLARATION = 'declaration';\n\n/**\n * @param {String} style\n * @param {Object} [options]\n * @return {Object[]}\n * @throws {TypeError}\n * @throws {Error}\n */\nmodule.exports = function (style, options) {\n if (typeof style !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n if (!style) return [];\n\n options = options || {};\n\n /**\n * Positional.\n */\n var lineno = 1;\n var column = 1;\n\n /**\n * Update lineno and column based on `str`.\n *\n * @param {String} str\n */\n function updatePosition(str) {\n var lines = str.match(NEWLINE_REGEX);\n if (lines) lineno += lines.length;\n var i = str.lastIndexOf(NEWLINE);\n column = ~i ? str.length - i : column + str.length;\n }\n\n /**\n * Mark position and patch `node.position`.\n *\n * @return {Function}\n */\n function position() {\n var start = { line: lineno, column: column };\n return function (node) {\n node.position = new Position(start);\n whitespace();\n return node;\n };\n }\n\n /**\n * Store position information for a node.\n *\n * @constructor\n * @property {Object} start\n * @property {Object} end\n * @property {undefined|String} source\n */\n function Position(start) {\n this.start = start;\n this.end = { line: lineno, column: column };\n this.source = options.source;\n }\n\n /**\n * Non-enumerable source string.\n */\n Position.prototype.content = style;\n\n var errorsList = [];\n\n /**\n * Error `msg`.\n *\n * @param {String} msg\n * @throws {Error}\n */\n function error(msg) {\n var err = new Error(\n options.source + ':' + lineno + ':' + column + ': ' + msg\n );\n err.reason = msg;\n err.filename = options.source;\n err.line = lineno;\n err.column = column;\n err.source = style;\n\n if (options.silent) {\n errorsList.push(err);\n } else {\n throw err;\n }\n }\n\n /**\n * Match `re` and return captures.\n *\n * @param {RegExp} re\n * @return {undefined|Array}\n */\n function match(re) {\n var m = re.exec(style);\n if (!m) return;\n var str = m[0];\n updatePosition(str);\n style = style.slice(str.length);\n return m;\n }\n\n /**\n * Parse whitespace.\n */\n function whitespace() {\n match(WHITESPACE_REGEX);\n }\n\n /**\n * Parse comments.\n *\n * @param {Object[]} [rules]\n * @return {Object[]}\n */\n function comments(rules) {\n var c;\n rules = rules || [];\n while ((c = comment())) {\n if (c !== false) {\n rules.push(c);\n }\n }\n return rules;\n }\n\n /**\n * Parse comment.\n *\n * @return {Object}\n * @throws {Error}\n */\n function comment() {\n var pos = position();\n if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;\n\n var i = 2;\n while (\n EMPTY_STRING != style.charAt(i) &&\n (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))\n ) {\n ++i;\n }\n i += 2;\n\n if (EMPTY_STRING === style.charAt(i - 1)) {\n return error('End of comment missing');\n }\n\n var str = style.slice(2, i - 2);\n column += 2;\n updatePosition(str);\n style = style.slice(i);\n column += 2;\n\n return pos({\n type: TYPE_COMMENT,\n comment: str\n });\n }\n\n /**\n * Parse declaration.\n *\n * @return {Object}\n * @throws {Error}\n */\n function declaration() {\n var pos = position();\n\n // prop\n var prop = match(PROPERTY_REGEX);\n if (!prop) return;\n comment();\n\n // :\n if (!match(COLON_REGEX)) return error(\"property missing ':'\");\n\n // val\n var val = match(VALUE_REGEX);\n\n var ret = pos({\n type: TYPE_DECLARATION,\n property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),\n value: val\n ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING))\n : EMPTY_STRING\n });\n\n // ;\n match(SEMICOLON_REGEX);\n\n return ret;\n }\n\n /**\n * Parse declarations.\n *\n * @return {Object[]}\n */\n function declarations() {\n var decls = [];\n\n comments(decls);\n\n // declarations\n var decl;\n while ((decl = declaration())) {\n if (decl !== false) {\n decls.push(decl);\n comments(decls);\n }\n }\n\n return decls;\n }\n\n whitespace();\n return declarations();\n};\n\n/**\n * Trim `str`.\n *\n * @param {String} str\n * @return {String}\n */\nfunction trim(str) {\n return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;\n}\n",null],"names":[],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- !function(n,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(n="undefined"!=typeof globalThis?globalThis:n||self).StyleToObject=e()}(this,(function(){"use strict";function n(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,r=/\n/g,t=/^\s*/,o=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,u=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,c=/^[;\s]*/,f=/^\s+|\s+$/g,a="";function s(n){return n?n.replace(f,a):a}var l=n((function(n,f){if("string"!=typeof n)throw new TypeError("First argument must be a string");if(!n)return[];f=f||{};var l=1,p=1;function h(n){var e=n.match(r);e&&(l+=e.length);var t=n.lastIndexOf("\n");p=~t?n.length-t:p+n.length}function v(){var n={line:l,column:p};return function(e){return e.position=new d(n),g(),e}}function d(n){this.start=n,this.end={line:l,column:p},this.source=f.source}function m(e){var r=new Error(f.source+":"+l+":"+p+": "+e);if(r.reason=e,r.filename=f.source,r.line=l,r.column=p,r.source=n,!f.silent)throw r}function y(e){var r=e.exec(n);if(r){var t=r[0];return h(t),n=n.slice(t.length),r}}function g(){y(t)}function w(n){var e;for(n=n||[];e=b();)!1!==e&&n.push(e);return n}function b(){var e=v();if("/"==n.charAt(0)&&"*"==n.charAt(1)){for(var r=2;a!=n.charAt(r)&&("*"!=n.charAt(r)||"/"!=n.charAt(r+1));)++r;if(r+=2,a===n.charAt(r-1))return m("End of comment missing");var t=n.slice(2,r-2);return p+=2,h(t),n=n.slice(r),p+=2,e({type:"comment",comment:t})}}function A(){var n=v(),r=y(o);if(r){if(b(),!y(i))return m("property missing ':'");var t=y(u),f=n({type:"declaration",property:s(r[0].replace(e,a)),value:t?s(t[0].replace(e,a)):a});return y(c),f}}return d.prototype.content=n,g(),function(){var n,e=[];for(w(e);n=A();)!1!==n&&(e.push(n),w(e));return e}()}));return function(n,e){var r=null;if(!n||"string"!=typeof n)return r;var t=l(n),o="function"==typeof e;return t.forEach((function(n){if("declaration"===n.type){var t=n.property,i=n.value;o?e(t,i,n):i&&((r=r||{})[t]=i)}})),r}}));
1
+ !function(n,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define(r):(n="undefined"!=typeof globalThis?globalThis:n||self).StyleToObject=r()}(this,(function(){"use strict";function n(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var r,t;var e=n(function(){if(t)return r;t=1;var n=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,e=/\n/g,o=/^\s*/,i=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,u=/^:\s*/,c=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,f=/^[;\s]*/,a=/^\s+|\s+$/g,s="";function l(n){return n?n.replace(a,s):s}return r=function(r,t){if("string"!=typeof r)throw new TypeError("First argument must be a string");if(!r)return[];t=t||{};var a=1,p=1;function h(n){var r=n.match(e);r&&(a+=r.length);var t=n.lastIndexOf("\n");p=~t?n.length-t:p+n.length}function v(){var n={line:a,column:p};return function(r){return r.position=new d(n),g(),r}}function d(n){this.start=n,this.end={line:a,column:p},this.source=t.source}function m(n){var e=new Error(t.source+":"+a+":"+p+": "+n);if(e.reason=n,e.filename=t.source,e.line=a,e.column=p,e.source=r,!t.silent)throw e}function y(n){var t=n.exec(r);if(t){var e=t[0];return h(e),r=r.slice(e.length),t}}function g(){y(o)}function w(n){var r;for(n=n||[];r=b();)!1!==r&&n.push(r);return n}function b(){var n=v();if("/"==r.charAt(0)&&"*"==r.charAt(1)){for(var t=2;s!=r.charAt(t)&&("*"!=r.charAt(t)||"/"!=r.charAt(t+1));)++t;if(t+=2,s===r.charAt(t-1))return m("End of comment missing");var e=r.slice(2,t-2);return p+=2,h(e),r=r.slice(t),p+=2,n({type:"comment",comment:e})}}function A(){var r=v(),t=y(i);if(t){if(b(),!y(u))return m("property missing ':'");var e=y(c),o=r({type:"declaration",property:l(t[0].replace(n,s)),value:e?l(e[0].replace(n,s)):s});return y(f),o}}return d.prototype.content=r,g(),function(){var n,r=[];for(w(r);n=A();)!1!==n&&(r.push(n),w(r));return r}()}}());return function(n,r){var t=null;if(!n||"string"!=typeof n)return t;var o=e(n),i="function"==typeof r;return o.forEach((function(n){if("declaration"===n.type){var e=n.property,o=n.value;i?r(e,o,n):o&&((t=t||{})[e]=o)}})),t}}));
2
2
  //# sourceMappingURL=style-to-object.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"style-to-object.min.js","sources":["../node_modules/inline-style-parser/index.js","../src/index.ts"],"sourcesContent":["// http://www.w3.org/TR/CSS21/grammar.html\n// https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027\nvar COMMENT_REGEX = /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//g;\n\nvar NEWLINE_REGEX = /\\n/g;\nvar WHITESPACE_REGEX = /^\\s*/;\n\n// declaration\nvar PROPERTY_REGEX = /^(\\*?[-#/*\\\\\\w]+(\\[[0-9a-z_-]+\\])?)\\s*/;\nvar COLON_REGEX = /^:\\s*/;\nvar VALUE_REGEX = /^((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};])+)/;\nvar SEMICOLON_REGEX = /^[;\\s]*/;\n\n// https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill\nvar TRIM_REGEX = /^\\s+|\\s+$/g;\n\n// strings\nvar NEWLINE = '\\n';\nvar FORWARD_SLASH = '/';\nvar ASTERISK = '*';\nvar EMPTY_STRING = '';\n\n// types\nvar TYPE_COMMENT = 'comment';\nvar TYPE_DECLARATION = 'declaration';\n\n/**\n * @param {String} style\n * @param {Object} [options]\n * @return {Object[]}\n * @throws {TypeError}\n * @throws {Error}\n */\nmodule.exports = function (style, options) {\n if (typeof style !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n if (!style) return [];\n\n options = options || {};\n\n /**\n * Positional.\n */\n var lineno = 1;\n var column = 1;\n\n /**\n * Update lineno and column based on `str`.\n *\n * @param {String} str\n */\n function updatePosition(str) {\n var lines = str.match(NEWLINE_REGEX);\n if (lines) lineno += lines.length;\n var i = str.lastIndexOf(NEWLINE);\n column = ~i ? str.length - i : column + str.length;\n }\n\n /**\n * Mark position and patch `node.position`.\n *\n * @return {Function}\n */\n function position() {\n var start = { line: lineno, column: column };\n return function (node) {\n node.position = new Position(start);\n whitespace();\n return node;\n };\n }\n\n /**\n * Store position information for a node.\n *\n * @constructor\n * @property {Object} start\n * @property {Object} end\n * @property {undefined|String} source\n */\n function Position(start) {\n this.start = start;\n this.end = { line: lineno, column: column };\n this.source = options.source;\n }\n\n /**\n * Non-enumerable source string.\n */\n Position.prototype.content = style;\n\n var errorsList = [];\n\n /**\n * Error `msg`.\n *\n * @param {String} msg\n * @throws {Error}\n */\n function error(msg) {\n var err = new Error(\n options.source + ':' + lineno + ':' + column + ': ' + msg\n );\n err.reason = msg;\n err.filename = options.source;\n err.line = lineno;\n err.column = column;\n err.source = style;\n\n if (options.silent) {\n errorsList.push(err);\n } else {\n throw err;\n }\n }\n\n /**\n * Match `re` and return captures.\n *\n * @param {RegExp} re\n * @return {undefined|Array}\n */\n function match(re) {\n var m = re.exec(style);\n if (!m) return;\n var str = m[0];\n updatePosition(str);\n style = style.slice(str.length);\n return m;\n }\n\n /**\n * Parse whitespace.\n */\n function whitespace() {\n match(WHITESPACE_REGEX);\n }\n\n /**\n * Parse comments.\n *\n * @param {Object[]} [rules]\n * @return {Object[]}\n */\n function comments(rules) {\n var c;\n rules = rules || [];\n while ((c = comment())) {\n if (c !== false) {\n rules.push(c);\n }\n }\n return rules;\n }\n\n /**\n * Parse comment.\n *\n * @return {Object}\n * @throws {Error}\n */\n function comment() {\n var pos = position();\n if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;\n\n var i = 2;\n while (\n EMPTY_STRING != style.charAt(i) &&\n (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))\n ) {\n ++i;\n }\n i += 2;\n\n if (EMPTY_STRING === style.charAt(i - 1)) {\n return error('End of comment missing');\n }\n\n var str = style.slice(2, i - 2);\n column += 2;\n updatePosition(str);\n style = style.slice(i);\n column += 2;\n\n return pos({\n type: TYPE_COMMENT,\n comment: str\n });\n }\n\n /**\n * Parse declaration.\n *\n * @return {Object}\n * @throws {Error}\n */\n function declaration() {\n var pos = position();\n\n // prop\n var prop = match(PROPERTY_REGEX);\n if (!prop) return;\n comment();\n\n // :\n if (!match(COLON_REGEX)) return error(\"property missing ':'\");\n\n // val\n var val = match(VALUE_REGEX);\n\n var ret = pos({\n type: TYPE_DECLARATION,\n property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),\n value: val\n ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING))\n : EMPTY_STRING\n });\n\n // ;\n match(SEMICOLON_REGEX);\n\n return ret;\n }\n\n /**\n * Parse declarations.\n *\n * @return {Object[]}\n */\n function declarations() {\n var decls = [];\n\n comments(decls);\n\n // declarations\n var decl;\n while ((decl = declaration())) {\n if (decl !== false) {\n decls.push(decl);\n comments(decls);\n }\n }\n\n return decls;\n }\n\n whitespace();\n return declarations();\n};\n\n/**\n * Trim `str`.\n *\n * @param {String} str\n * @return {String}\n */\nfunction trim(str) {\n return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;\n}\n",null],"names":["COMMENT_REGEX","NEWLINE_REGEX","WHITESPACE_REGEX","PROPERTY_REGEX","COLON_REGEX","VALUE_REGEX","SEMICOLON_REGEX","TRIM_REGEX","EMPTY_STRING","trim","str","replace","style","options","TypeError","lineno","column","updatePosition","lines","match","length","i","lastIndexOf","position","start","line","node","Position","whitespace","this","end","source","error","msg","err","Error","reason","filename","silent","re","m","exec","slice","comments","rules","c","comment","push","pos","charAt","type","declaration","prop","val","ret","property","value","prototype","content","decl","decls","declarations","iterator","styleObject","parse","hasIterator","forEach"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"style-to-object.min.js","sources":["../node_modules/inline-style-parser/index.js","../src/index.ts"],"sourcesContent":["// http://www.w3.org/TR/CSS21/grammar.html\n// https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027\nvar COMMENT_REGEX = /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//g;\n\nvar NEWLINE_REGEX = /\\n/g;\nvar WHITESPACE_REGEX = /^\\s*/;\n\n// declaration\nvar PROPERTY_REGEX = /^(\\*?[-#/*\\\\\\w]+(\\[[0-9a-z_-]+\\])?)\\s*/;\nvar COLON_REGEX = /^:\\s*/;\nvar VALUE_REGEX = /^((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};])+)/;\nvar SEMICOLON_REGEX = /^[;\\s]*/;\n\n// https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill\nvar TRIM_REGEX = /^\\s+|\\s+$/g;\n\n// strings\nvar NEWLINE = '\\n';\nvar FORWARD_SLASH = '/';\nvar ASTERISK = '*';\nvar EMPTY_STRING = '';\n\n// types\nvar TYPE_COMMENT = 'comment';\nvar TYPE_DECLARATION = 'declaration';\n\n/**\n * @param {String} style\n * @param {Object} [options]\n * @return {Object[]}\n * @throws {TypeError}\n * @throws {Error}\n */\nmodule.exports = function (style, options) {\n if (typeof style !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n if (!style) return [];\n\n options = options || {};\n\n /**\n * Positional.\n */\n var lineno = 1;\n var column = 1;\n\n /**\n * Update lineno and column based on `str`.\n *\n * @param {String} str\n */\n function updatePosition(str) {\n var lines = str.match(NEWLINE_REGEX);\n if (lines) lineno += lines.length;\n var i = str.lastIndexOf(NEWLINE);\n column = ~i ? str.length - i : column + str.length;\n }\n\n /**\n * Mark position and patch `node.position`.\n *\n * @return {Function}\n */\n function position() {\n var start = { line: lineno, column: column };\n return function (node) {\n node.position = new Position(start);\n whitespace();\n return node;\n };\n }\n\n /**\n * Store position information for a node.\n *\n * @constructor\n * @property {Object} start\n * @property {Object} end\n * @property {undefined|String} source\n */\n function Position(start) {\n this.start = start;\n this.end = { line: lineno, column: column };\n this.source = options.source;\n }\n\n /**\n * Non-enumerable source string.\n */\n Position.prototype.content = style;\n\n var errorsList = [];\n\n /**\n * Error `msg`.\n *\n * @param {String} msg\n * @throws {Error}\n */\n function error(msg) {\n var err = new Error(\n options.source + ':' + lineno + ':' + column + ': ' + msg\n );\n err.reason = msg;\n err.filename = options.source;\n err.line = lineno;\n err.column = column;\n err.source = style;\n\n if (options.silent) {\n errorsList.push(err);\n } else {\n throw err;\n }\n }\n\n /**\n * Match `re` and return captures.\n *\n * @param {RegExp} re\n * @return {undefined|Array}\n */\n function match(re) {\n var m = re.exec(style);\n if (!m) return;\n var str = m[0];\n updatePosition(str);\n style = style.slice(str.length);\n return m;\n }\n\n /**\n * Parse whitespace.\n */\n function whitespace() {\n match(WHITESPACE_REGEX);\n }\n\n /**\n * Parse comments.\n *\n * @param {Object[]} [rules]\n * @return {Object[]}\n */\n function comments(rules) {\n var c;\n rules = rules || [];\n while ((c = comment())) {\n if (c !== false) {\n rules.push(c);\n }\n }\n return rules;\n }\n\n /**\n * Parse comment.\n *\n * @return {Object}\n * @throws {Error}\n */\n function comment() {\n var pos = position();\n if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;\n\n var i = 2;\n while (\n EMPTY_STRING != style.charAt(i) &&\n (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))\n ) {\n ++i;\n }\n i += 2;\n\n if (EMPTY_STRING === style.charAt(i - 1)) {\n return error('End of comment missing');\n }\n\n var str = style.slice(2, i - 2);\n column += 2;\n updatePosition(str);\n style = style.slice(i);\n column += 2;\n\n return pos({\n type: TYPE_COMMENT,\n comment: str\n });\n }\n\n /**\n * Parse declaration.\n *\n * @return {Object}\n * @throws {Error}\n */\n function declaration() {\n var pos = position();\n\n // prop\n var prop = match(PROPERTY_REGEX);\n if (!prop) return;\n comment();\n\n // :\n if (!match(COLON_REGEX)) return error(\"property missing ':'\");\n\n // val\n var val = match(VALUE_REGEX);\n\n var ret = pos({\n type: TYPE_DECLARATION,\n property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),\n value: val\n ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING))\n : EMPTY_STRING\n });\n\n // ;\n match(SEMICOLON_REGEX);\n\n return ret;\n }\n\n /**\n * Parse declarations.\n *\n * @return {Object[]}\n */\n function declarations() {\n var decls = [];\n\n comments(decls);\n\n // declarations\n var decl;\n while ((decl = declaration())) {\n if (decl !== false) {\n decls.push(decl);\n comments(decls);\n }\n }\n\n return decls;\n }\n\n whitespace();\n return declarations();\n};\n\n/**\n * Trim `str`.\n *\n * @param {String} str\n * @return {String}\n */\nfunction trim(str) {\n return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;\n}\n",null],"names":["COMMENT_REGEX","NEWLINE_REGEX","WHITESPACE_REGEX","PROPERTY_REGEX","COLON_REGEX","VALUE_REGEX","SEMICOLON_REGEX","TRIM_REGEX","EMPTY_STRING","trim","str","replace","inlineStyleParser","style","options","TypeError","lineno","column","updatePosition","lines","match","length","i","lastIndexOf","position","start","line","node","Position","whitespace","this","end","source","error","msg","err","Error","reason","filename","silent","re","m","exec","slice","comments","rules","c","comment","push","pos","charAt","type","declaration","prop","val","ret","property","value","prototype","content","decl","decls","declarations","iterator","styleObject","parse","hasIterator","forEach"],"mappings":"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","x_google_ignoreList":[0]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "style-to-object",
3
- "version": "1.0.8",
3
+ "version": "1.0.9",
4
4
  "description": "Parse CSS inline style to JavaScript object.",
5
5
  "author": "Mark <mark@remarkablemark.org>",
6
6
  "main": "./cjs/index.js",
@@ -27,7 +27,7 @@
27
27
  },
28
28
  "repository": {
29
29
  "type": "git",
30
- "url": "https://github.com/remarkablemark/style-to-object"
30
+ "url": "git+https://github.com/remarkablemark/style-to-object.git"
31
31
  },
32
32
  "bugs": {
33
33
  "url": "https://github.com/remarkablemark/style-to-object/issues"
@@ -45,31 +45,32 @@
45
45
  "inline-style-parser": "0.2.4"
46
46
  },
47
47
  "devDependencies": {
48
- "@commitlint/cli": "19.5.0",
49
- "@commitlint/config-conventional": "19.5.0",
50
- "@eslint/compat": "1.1.1",
51
- "@eslint/eslintrc": "3.1.0",
52
- "@eslint/js": "9.10.0",
53
- "@rollup/plugin-commonjs": "26.0.1",
54
- "@rollup/plugin-node-resolve": "15.2.3",
48
+ "@commitlint/cli": "19.8.1",
49
+ "@commitlint/config-conventional": "19.8.1",
50
+ "@eslint/compat": "1.2.9",
51
+ "@eslint/eslintrc": "3.3.1",
52
+ "@eslint/js": "9.28.0",
53
+ "@rollup/plugin-commonjs": "28.0.3",
54
+ "@rollup/plugin-node-resolve": "16.0.1",
55
55
  "@rollup/plugin-terser": "0.4.4",
56
- "@rollup/plugin-typescript": "11.1.6",
57
- "@types/jest": "29.5.12",
58
- "@types/node": "22.5.4",
59
- "@typescript-eslint/eslint-plugin": "8.5.0",
60
- "@typescript-eslint/parser": "8.5.0",
61
- "eslint": "9.10.0",
62
- "eslint-plugin-prettier": "5.2.1",
56
+ "@rollup/plugin-typescript": "12.1.2",
57
+ "@types/jest": "29.5.14",
58
+ "@types/node": "22.15.30",
59
+ "@typescript-eslint/eslint-plugin": "8.33.1",
60
+ "@typescript-eslint/parser": "8.33.1",
61
+ "eslint": "9.28.0",
62
+ "eslint-plugin-prettier": "5.4.1",
63
63
  "eslint-plugin-simple-import-sort": "12.1.1",
64
- "globals": "15.9.0",
65
- "husky": "9.1.5",
64
+ "globals": "16.2.0",
65
+ "husky": "9.1.7",
66
66
  "jest": "29.7.0",
67
- "lint-staged": "15.2.10",
67
+ "lint-staged": "16.1.0",
68
68
  "npm-run-all": "4.1.5",
69
- "prettier": "3.3.3",
70
- "rollup": "4.21.2",
71
- "ts-jest": "29.2.5",
72
- "typescript": "5.6.2"
69
+ "prettier": "3.5.3",
70
+ "rollup": "4.42.0",
71
+ "ts-jest": "29.3.4",
72
+ "ts-node": "10.9.2",
73
+ "typescript": "5.8.3"
73
74
  },
74
75
  "files": [
75
76
  "/cjs",