@master/css 2.0.0-rc.4 → 2.0.0-rc.41

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 (112) hide show
  1. package/README.md +4 -43
  2. package/dist/_virtual/_commonjsHelpers.cjs +5 -0
  3. package/dist/_virtual/_commonjsHelpers.mjs +3 -0
  4. package/dist/_virtual/css-escape.cjs +5 -0
  5. package/dist/_virtual/css-escape.mjs +3 -0
  6. package/dist/bin/index.cjs +11 -0
  7. package/dist/bin/index.d.ts +0 -1
  8. package/dist/bin/index.mjs +9 -0
  9. package/dist/common.cjs +159 -0
  10. package/dist/common.d.ts +26 -0
  11. package/dist/common.mjs +137 -0
  12. package/dist/config/animations.cjs +113 -0
  13. package/dist/config/animations.mjs +111 -0
  14. package/dist/config/at.cjs +14 -0
  15. package/dist/config/at.d.ts +11 -0
  16. package/dist/config/at.mjs +12 -0
  17. package/dist/config/functions.cjs +351 -0
  18. package/dist/config/functions.mjs +349 -0
  19. package/dist/config/index.cjs +36 -0
  20. package/dist/config/index.d.ts +24 -21
  21. package/dist/config/index.mjs +26 -0
  22. package/dist/config/modes.cjs +8 -0
  23. package/dist/config/modes.d.ts +3 -0
  24. package/dist/config/modes.mjs +6 -0
  25. package/dist/config/selectors.cjs +28 -0
  26. package/dist/config/selectors.d.ts +0 -1
  27. package/dist/config/selectors.mjs +26 -0
  28. package/dist/config/styles.cjs +2 -0
  29. package/dist/config/styles.mjs +1 -0
  30. package/dist/config/syntaxes.cjs +2283 -0
  31. package/dist/config/syntaxes.d.ts +282 -0
  32. package/dist/config/syntaxes.mjs +2281 -0
  33. package/dist/config/utilities.cjs +204 -0
  34. package/dist/config/{semantics.d.ts → utilities.d.ts} +15 -5
  35. package/dist/config/utilities.mjs +202 -0
  36. package/dist/config/variables.cjs +337 -0
  37. package/dist/config/variables.d.ts +1 -550
  38. package/dist/config/variables.mjs +335 -0
  39. package/dist/core.cjs +1040 -0
  40. package/dist/core.d.ts +39 -35
  41. package/dist/core.mjs +1035 -0
  42. package/dist/index.cjs +73 -0
  43. package/dist/index.d.ts +15 -8
  44. package/dist/index.mjs +22 -0
  45. package/dist/layer.cjs +28 -0
  46. package/dist/layer.d.ts +26 -9
  47. package/dist/layer.mjs +26 -0
  48. package/dist/polyfills/css-escape.cjs +8 -0
  49. package/dist/polyfills/css-escape.mjs +2 -0
  50. package/dist/polyfills/css-escape2.cjs +68 -0
  51. package/dist/polyfills/css-escape2.mjs +64 -0
  52. package/dist/rule.cjs +722 -0
  53. package/dist/rule.d.ts +62 -24
  54. package/dist/rule.mjs +720 -0
  55. package/dist/shared/utils/css-escape.cjs +56 -0
  56. package/dist/shared/utils/css-escape.mjs +54 -0
  57. package/dist/types/global.cjs +2 -0
  58. package/dist/types/global.d.ts +3 -3
  59. package/dist/types/global.mjs +1 -0
  60. package/dist/utils/are-rule-at-equal.cjs +22 -0
  61. package/dist/utils/are-rule-at-equal.d.ts +2 -0
  62. package/dist/utils/are-rule-at-equal.mjs +20 -0
  63. package/dist/utils/are-rule-modes-equal.cjs +7 -0
  64. package/dist/utils/are-rule-modes-equal.d.ts +2 -0
  65. package/dist/utils/are-rule-modes-equal.mjs +5 -0
  66. package/dist/utils/are-rule-selectors-equal.cjs +29 -0
  67. package/dist/utils/are-rule-selectors-equal.d.ts +2 -0
  68. package/dist/utils/are-rule-selectors-equal.mjs +27 -0
  69. package/dist/utils/are-rule-states-equal.cjs +11 -0
  70. package/dist/utils/are-rule-states-equal.d.ts +2 -0
  71. package/dist/utils/are-rule-states-equal.mjs +9 -0
  72. package/dist/utils/are-syntaxes-duplicated.cjs +17 -0
  73. package/dist/utils/are-syntaxes-duplicated.d.ts +2 -0
  74. package/dist/utils/are-syntaxes-duplicated.mjs +15 -0
  75. package/dist/utils/autofill-solid-style.cjs +31 -0
  76. package/dist/utils/autofill-solid-style.d.ts +3 -0
  77. package/dist/utils/autofill-solid-style.mjs +29 -0
  78. package/dist/utils/extend-config.cjs +74 -0
  79. package/dist/utils/extend-config.d.ts +1 -1
  80. package/dist/utils/extend-config.mjs +72 -0
  81. package/dist/utils/flatten-object.cjs +15 -0
  82. package/dist/utils/flatten-object.mjs +13 -0
  83. package/dist/utils/generate-css.cjs +13 -0
  84. package/dist/utils/generate-css.d.ts +2 -0
  85. package/dist/utils/generate-css.mjs +11 -0
  86. package/dist/utils/hex-to-rgb.cjs +30 -0
  87. package/dist/utils/hex-to-rgb.d.ts +1 -1
  88. package/dist/utils/hex-to-rgb.mjs +28 -0
  89. package/dist/utils/is-core-rule.cjs +9 -0
  90. package/dist/utils/is-core-rule.d.ts +1 -0
  91. package/dist/utils/is-core-rule.mjs +7 -0
  92. package/dist/utils/reorder-for-readable-classes.cjs +62 -0
  93. package/dist/{functions → utils}/reorder-for-readable-classes.d.ts +2 -6
  94. package/dist/utils/reorder-for-readable-classes.mjs +60 -0
  95. package/package.json +1 -1
  96. package/dist/bin/index.bundle.js +0 -36
  97. package/dist/config/media-queries.d.ts +0 -1
  98. package/dist/config/rules.d.ts +0 -279
  99. package/dist/constants/base-unit-regex.d.ts +0 -1
  100. package/dist/constants/config-esm-text.d.ts +0 -1
  101. package/dist/constants/config-text.d.ts +0 -1
  102. package/dist/constants/config-ts-text.d.ts +0 -1
  103. package/dist/constants/start-symbol.d.ts +0 -6
  104. package/dist/functions/transform-color-with-opacity.d.ts +0 -1
  105. package/dist/index.bundle.js +0 -35
  106. package/dist/index.bundle.mjs +0 -35
  107. package/dist/tokens/screen-sizes.d.ts +0 -14
  108. package/dist/utils/concat-arrays.d.ts +0 -1
  109. package/dist/utils/get-type.d.ts +0 -7
  110. package/dist/utils/is-plain-object.d.ts +0 -8
  111. package/dist/utils/is-symbol.d.ts +0 -7
  112. package/dist/utils/rgb-to-hex.d.ts +0 -1
@@ -0,0 +1,2281 @@
1
+ import cssEscape from '../shared/utils/css-escape.mjs';
2
+ import Layer from '../layer.mjs';
3
+ import { VALUE_DELIMITERS, NUMBER_VALUE_REGEX, COLOR_VALUE_REGEX, BORDER_STYLE_VALUES, IMAGE_VALUE_REGEX } from '../common.mjs';
4
+ import autofillSolidStyle from '../utils/autofill-solid-style.mjs';
5
+
6
+ const syntaxes = {
7
+ group: {
8
+ matcher: /^(?:.+?[*_>~+])?\{.+?\}/,
9
+ layer: Layer.Shorthand,
10
+ analyze (className) {
11
+ let i = 0;
12
+ for(; i < className.length; i++){
13
+ if (className[i] === '{' && className[i - 1] !== '\\') {
14
+ break;
15
+ }
16
+ }
17
+ return [
18
+ className.slice(i),
19
+ className.slice(0, i)
20
+ ];
21
+ },
22
+ declare (value) {
23
+ const declarations = {};
24
+ const addProp = (propertyName)=>{
25
+ const indexOfColon = propertyName.indexOf(':');
26
+ if (indexOfColon !== -1) {
27
+ const propName = propertyName.slice(0, indexOfColon);
28
+ declarations[propName] = propertyName.slice(indexOfColon + 1);
29
+ }
30
+ };
31
+ const handleRule = (rule)=>{
32
+ const addProps = (cssText)=>{
33
+ const cssProperties = cssText.slice(cssEscape(rule.className).length).match(/\{(.*)\}/)?.[1].split(';');
34
+ if (cssProperties) for (const eachCssProperty of cssProperties){
35
+ addProp(eachCssProperty);
36
+ }
37
+ };
38
+ for (const eachNative of rule.natives){
39
+ addProps(eachNative.text);
40
+ }
41
+ // animation
42
+ if (rule.animationNames) {
43
+ if (!this.animationNames) {
44
+ this.animationNames = [];
45
+ }
46
+ for (const eachKeyframeName of rule.animationNames){
47
+ if (!this.animationNames.includes(eachKeyframeName)) {
48
+ this.animationNames.push(eachKeyframeName);
49
+ }
50
+ }
51
+ }
52
+ // variable
53
+ if (rule.variableNames) {
54
+ if (!this.variableNames) {
55
+ this.variableNames = [];
56
+ }
57
+ for (const eachVariableName of rule.variableNames){
58
+ if (!this.variableNames.includes(eachVariableName)) {
59
+ this.variableNames.push(eachVariableName);
60
+ }
61
+ }
62
+ }
63
+ };
64
+ const names = [];
65
+ let currentName = '';
66
+ const addName = ()=>{
67
+ if (currentName) {
68
+ names.push(currentName.replace(/ /g, '|'));
69
+ currentName = '';
70
+ }
71
+ };
72
+ let i = 1;
73
+ (function analyze(end) {
74
+ for(; i < value.length; i++){
75
+ const char = value[i];
76
+ if (!end) {
77
+ if (char === ';') {
78
+ addName();
79
+ continue;
80
+ }
81
+ if (char === '}') {
82
+ break;
83
+ }
84
+ }
85
+ currentName += char;
86
+ if (end === char) {
87
+ if (end === '\'' || end === '"') {
88
+ let count = 0;
89
+ for(let j = currentName.length - 2;; j--){
90
+ if (currentName[j] !== '\\') {
91
+ break;
92
+ }
93
+ count++;
94
+ }
95
+ if (count % 2) {
96
+ continue;
97
+ }
98
+ }
99
+ break;
100
+ } else if (char in VALUE_DELIMITERS && end !== '\'' && end !== '"') {
101
+ i++;
102
+ analyze(VALUE_DELIMITERS[char]);
103
+ }
104
+ }
105
+ })('');
106
+ addName();
107
+ for (const eachName of names){
108
+ const syntaxes = this.css.generate(eachName);
109
+ if (syntaxes.length) {
110
+ for (const eachRule of syntaxes){
111
+ handleRule(eachRule);
112
+ }
113
+ } else {
114
+ addProp(eachName);
115
+ }
116
+ }
117
+ return declarations;
118
+ }
119
+ },
120
+ variable: {
121
+ matcher: /^\$[\w-]+:/,
122
+ layer: Layer.Shorthand,
123
+ declare (value) {
124
+ return {
125
+ ['--' + this.keyToken.slice(1, -1)]: value
126
+ };
127
+ }
128
+ },
129
+ 'font-size': {
130
+ ambiguousKeys: [
131
+ 'font',
132
+ 'f'
133
+ ],
134
+ ambiguousValues: [
135
+ NUMBER_VALUE_REGEX
136
+ ],
137
+ unit: 'rem',
138
+ layer: Layer.Native
139
+ },
140
+ 'font-weight': {
141
+ ambiguousKeys: [
142
+ 'font',
143
+ 'f'
144
+ ],
145
+ ambiguousValues: [
146
+ 'bolder'
147
+ ],
148
+ layer: Layer.Native
149
+ },
150
+ 'font-family': {
151
+ ambiguousKeys: [
152
+ 'font',
153
+ 'f'
154
+ ],
155
+ layer: Layer.Native
156
+ },
157
+ 'font-smoothing': {
158
+ ambiguousKeys: [
159
+ 'font',
160
+ 'f'
161
+ ],
162
+ ambiguousValues: [
163
+ 'antialiased',
164
+ 'subpixel-antialiased'
165
+ ],
166
+ layer: Layer.Native,
167
+ declare (value) {
168
+ switch(value){
169
+ case 'subpixel-antialiased':
170
+ return {
171
+ '-webkit-font-smoothing': 'auto',
172
+ '-moz-osx-font-smoothing': 'auto'
173
+ };
174
+ case 'antialiased':
175
+ return {
176
+ '-webkit-font-smoothing': 'antialiased',
177
+ '-moz-osx-font-smoothing': 'grayscale'
178
+ };
179
+ }
180
+ }
181
+ },
182
+ 'font-style': {
183
+ ambiguousKeys: [
184
+ 'font',
185
+ 'f'
186
+ ],
187
+ ambiguousValues: [
188
+ 'normal',
189
+ 'italic',
190
+ 'oblique'
191
+ ],
192
+ layer: Layer.Native,
193
+ unit: 'deg'
194
+ },
195
+ 'font-variant-numeric': {
196
+ ambiguousKeys: [
197
+ 'font',
198
+ 'f'
199
+ ],
200
+ ambiguousValues: [
201
+ 'ordinal',
202
+ 'slashed-zero',
203
+ 'lining-nums',
204
+ 'oldstyle-nums',
205
+ 'proportional-nums',
206
+ 'tabular-nums',
207
+ 'diagonal-fractions',
208
+ 'stacked-fractions'
209
+ ],
210
+ layer: Layer.Native
211
+ },
212
+ 'font-variant': {
213
+ ambiguousKeys: [
214
+ 'font',
215
+ 'f'
216
+ ],
217
+ layer: Layer.NativeShorthand
218
+ },
219
+ font: {
220
+ subkey: 'f',
221
+ layer: Layer.NativeShorthand,
222
+ variables: [
223
+ 'font-family',
224
+ 'font-variant',
225
+ 'font-weight',
226
+ 'font-size',
227
+ 'font-style',
228
+ 'line-height'
229
+ ]
230
+ },
231
+ 'font-feature-settings': {
232
+ key: 'font-feature',
233
+ layer: Layer.Native
234
+ },
235
+ color: {
236
+ key: 'fg',
237
+ layer: Layer.Native,
238
+ variables: [
239
+ 'text'
240
+ ]
241
+ },
242
+ // margin
243
+ 'margin-left': {
244
+ key: 'ml',
245
+ layer: Layer.Native,
246
+ unit: 'rem',
247
+ variables: [
248
+ 'spacing'
249
+ ]
250
+ },
251
+ 'margin-right': {
252
+ key: 'mr',
253
+ layer: Layer.Native,
254
+ unit: 'rem',
255
+ variables: [
256
+ 'spacing'
257
+ ]
258
+ },
259
+ 'margin-top': {
260
+ key: 'mt',
261
+ layer: Layer.Native,
262
+ unit: 'rem',
263
+ variables: [
264
+ 'spacing'
265
+ ]
266
+ },
267
+ 'margin-bottom': {
268
+ key: 'mb',
269
+ layer: Layer.Native,
270
+ unit: 'rem',
271
+ variables: [
272
+ 'spacing'
273
+ ]
274
+ },
275
+ 'margin-x': {
276
+ key: 'mx',
277
+ subkey: 'margin-x',
278
+ unit: 'rem',
279
+ layer: Layer.Shorthand,
280
+ declare (value) {
281
+ return {
282
+ 'margin-left': value,
283
+ 'margin-right': value
284
+ };
285
+ },
286
+ variables: [
287
+ 'spacing'
288
+ ]
289
+ },
290
+ 'margin-y': {
291
+ key: 'my',
292
+ unit: 'rem',
293
+ layer: Layer.Shorthand,
294
+ declare (value) {
295
+ return {
296
+ 'margin-top': value,
297
+ 'margin-bottom': value
298
+ };
299
+ },
300
+ variables: [
301
+ 'spacing'
302
+ ]
303
+ },
304
+ margin: {
305
+ key: 'm',
306
+ unit: 'rem',
307
+ layer: Layer.NativeShorthand,
308
+ variables: [
309
+ 'spacing'
310
+ ]
311
+ },
312
+ // margin inline
313
+ 'margin-inline-start': {
314
+ key: 'mis',
315
+ layer: Layer.Native,
316
+ unit: 'rem',
317
+ variables: [
318
+ 'spacing'
319
+ ]
320
+ },
321
+ 'margin-inline-end': {
322
+ key: 'mie',
323
+ layer: Layer.Native,
324
+ unit: 'rem',
325
+ variables: [
326
+ 'spacing'
327
+ ]
328
+ },
329
+ 'margin-inline': {
330
+ key: 'mi',
331
+ unit: 'rem',
332
+ layer: Layer.NativeShorthand,
333
+ variables: [
334
+ 'spacing'
335
+ ]
336
+ },
337
+ // padding
338
+ 'padding-left': {
339
+ key: 'pl',
340
+ layer: Layer.Native,
341
+ unit: 'rem',
342
+ variables: [
343
+ 'spacing'
344
+ ]
345
+ },
346
+ 'padding-right': {
347
+ key: 'pr',
348
+ layer: Layer.Native,
349
+ unit: 'rem',
350
+ variables: [
351
+ 'spacing'
352
+ ]
353
+ },
354
+ 'padding-top': {
355
+ key: 'pt',
356
+ layer: Layer.Native,
357
+ unit: 'rem',
358
+ variables: [
359
+ 'spacing'
360
+ ]
361
+ },
362
+ 'padding-bottom': {
363
+ key: 'pb',
364
+ layer: Layer.Native,
365
+ unit: 'rem',
366
+ variables: [
367
+ 'spacing'
368
+ ]
369
+ },
370
+ 'padding-x': {
371
+ key: 'px',
372
+ unit: 'rem',
373
+ layer: Layer.Shorthand,
374
+ declare (value) {
375
+ return {
376
+ 'padding-left': value,
377
+ 'padding-right': value
378
+ };
379
+ },
380
+ variables: [
381
+ 'spacing'
382
+ ]
383
+ },
384
+ 'padding-y': {
385
+ key: 'py',
386
+ unit: 'rem',
387
+ layer: Layer.Shorthand,
388
+ declare (value) {
389
+ return {
390
+ 'padding-top': value,
391
+ 'padding-bottom': value
392
+ };
393
+ },
394
+ variables: [
395
+ 'spacing'
396
+ ]
397
+ },
398
+ padding: {
399
+ key: 'p',
400
+ unit: 'rem',
401
+ layer: Layer.NativeShorthand,
402
+ variables: [
403
+ 'spacing'
404
+ ]
405
+ },
406
+ // padding inline
407
+ 'padding-inline-start': {
408
+ key: 'pis',
409
+ layer: Layer.Native,
410
+ unit: 'rem',
411
+ variables: [
412
+ 'spacing'
413
+ ]
414
+ },
415
+ 'padding-inline-end': {
416
+ key: 'pie',
417
+ layer: Layer.Native,
418
+ unit: 'rem',
419
+ variables: [
420
+ 'spacing'
421
+ ]
422
+ },
423
+ 'padding-inline': {
424
+ key: 'pi',
425
+ unit: 'rem',
426
+ layer: Layer.NativeShorthand,
427
+ variables: [
428
+ 'spacing'
429
+ ]
430
+ },
431
+ // flex
432
+ 'flex-basis': {
433
+ ambiguousKeys: [
434
+ 'flex'
435
+ ],
436
+ unit: 'rem',
437
+ layer: Layer.Native
438
+ },
439
+ 'flex-wrap': {
440
+ ambiguousKeys: [
441
+ 'flex'
442
+ ],
443
+ ambiguousValues: [
444
+ 'wrap',
445
+ 'nowrap',
446
+ 'wrap-reverse'
447
+ ],
448
+ layer: Layer.Native
449
+ },
450
+ 'flex-grow': {
451
+ ambiguousKeys: [
452
+ 'flex'
453
+ ],
454
+ layer: Layer.Native
455
+ },
456
+ 'flex-shrink': {
457
+ ambiguousKeys: [
458
+ 'flex'
459
+ ],
460
+ layer: Layer.Native
461
+ },
462
+ 'flex-direction': {
463
+ ambiguousKeys: [
464
+ 'flex'
465
+ ],
466
+ ambiguousValues: [
467
+ 'row',
468
+ 'row-reverse',
469
+ 'column',
470
+ 'column-reverse'
471
+ ],
472
+ layer: Layer.Native
473
+ },
474
+ flex: {
475
+ layer: Layer.NativeShorthand
476
+ },
477
+ display: {
478
+ key: 'd',
479
+ layer: Layer.Native
480
+ },
481
+ width: {
482
+ key: 'w',
483
+ unit: 'rem',
484
+ layer: Layer.Native
485
+ },
486
+ height: {
487
+ key: 'h',
488
+ unit: 'rem',
489
+ layer: Layer.Native
490
+ },
491
+ 'min-width': {
492
+ key: 'min-w',
493
+ unit: 'rem',
494
+ layer: Layer.Native
495
+ },
496
+ 'min-height': {
497
+ key: 'min-h',
498
+ unit: 'rem',
499
+ layer: Layer.Native
500
+ },
501
+ size: {
502
+ layer: Layer.Shorthand,
503
+ unit: 'rem',
504
+ declare (_value, valueComponents) {
505
+ const length = valueComponents.length;
506
+ return {
507
+ width: length === 1 ? valueComponents[0].text : valueComponents[0].text,
508
+ height: length === 1 ? valueComponents[0].text : valueComponents[2].text
509
+ };
510
+ }
511
+ },
512
+ 'min-size': {
513
+ key: 'min',
514
+ layer: Layer.Shorthand,
515
+ unit: 'rem',
516
+ declare (_value, valueComponents) {
517
+ const length = valueComponents.length;
518
+ return {
519
+ 'min-width': length === 1 ? valueComponents[0].text : valueComponents[0].text,
520
+ 'min-height': length === 1 ? valueComponents[0].text : valueComponents[2].text
521
+ };
522
+ }
523
+ },
524
+ 'max-size': {
525
+ key: 'max',
526
+ layer: Layer.Shorthand,
527
+ unit: 'rem',
528
+ declare (_value, valueComponents) {
529
+ const length = valueComponents.length;
530
+ return {
531
+ 'max-width': length === 1 ? valueComponents[0].text : valueComponents[0].text,
532
+ 'max-height': length === 1 ? valueComponents[0].text : valueComponents[2].text
533
+ };
534
+ }
535
+ },
536
+ 'box-sizing': {
537
+ ambiguousKeys: [
538
+ 'box'
539
+ ],
540
+ layer: Layer.Native
541
+ },
542
+ 'box-decoration-break': {
543
+ key: 'box-decoration',
544
+ layer: Layer.Native,
545
+ declare (value) {
546
+ return {
547
+ '-webkit-box-decoration-break': value,
548
+ 'box-decoration-break': value
549
+ };
550
+ }
551
+ },
552
+ contain: {
553
+ layer: Layer.Native
554
+ },
555
+ content: {
556
+ layer: Layer.Native
557
+ },
558
+ 'counter-increment': {
559
+ layer: Layer.Native
560
+ },
561
+ 'counter-reset': {
562
+ layer: Layer.Native
563
+ },
564
+ 'letter-spacing': {
565
+ key: 'tracking',
566
+ subkey: 'ls',
567
+ layer: Layer.Native,
568
+ unit: 'em'
569
+ },
570
+ 'line-height': {
571
+ key: 'leading',
572
+ subkey: 'line-h',
573
+ layer: Layer.Native
574
+ },
575
+ 'object-fit': {
576
+ ambiguousKeys: [
577
+ 'object',
578
+ 'obj'
579
+ ],
580
+ ambiguousValues: [
581
+ 'contain',
582
+ 'cover',
583
+ 'fill',
584
+ 'scale-down'
585
+ ],
586
+ layer: Layer.Native
587
+ },
588
+ 'object-position': {
589
+ ambiguousKeys: [
590
+ 'object',
591
+ 'obj'
592
+ ],
593
+ ambiguousValues: [
594
+ 'top',
595
+ 'bottom',
596
+ 'right',
597
+ 'left',
598
+ 'center'
599
+ ],
600
+ layer: Layer.Native
601
+ },
602
+ 'text-align': {
603
+ ambiguousKeys: [
604
+ 'text',
605
+ 't'
606
+ ],
607
+ ambiguousValues: [
608
+ 'justify',
609
+ 'center',
610
+ 'left',
611
+ 'right',
612
+ 'start',
613
+ 'end'
614
+ ],
615
+ layer: Layer.Native
616
+ },
617
+ 'text-decoration-color': {
618
+ ambiguousKeys: [
619
+ 'text-decoration'
620
+ ],
621
+ ambiguousValues: [
622
+ COLOR_VALUE_REGEX
623
+ ],
624
+ layer: Layer.Native,
625
+ variables: [
626
+ 'text'
627
+ ]
628
+ },
629
+ 'text-decoration-style': {
630
+ ambiguousKeys: [
631
+ 'text-decoration'
632
+ ],
633
+ ambiguousValues: [
634
+ 'solid',
635
+ 'double',
636
+ 'dotted',
637
+ 'dashed',
638
+ 'wavy'
639
+ ],
640
+ layer: Layer.Native
641
+ },
642
+ 'text-decoration-thickness': {
643
+ ambiguousKeys: [
644
+ 'text-decoration'
645
+ ],
646
+ ambiguousValues: [
647
+ 'from-font',
648
+ NUMBER_VALUE_REGEX
649
+ ],
650
+ layer: Layer.Native,
651
+ unit: 'em'
652
+ },
653
+ 'text-decoration-line': {
654
+ ambiguousKeys: [
655
+ 'text-decoration'
656
+ ],
657
+ ambiguousValues: [
658
+ 'underline',
659
+ 'overline',
660
+ 'line-through'
661
+ ],
662
+ layer: Layer.Native
663
+ },
664
+ 'text-decoration': {
665
+ ambiguousKeys: [
666
+ 'text',
667
+ 't'
668
+ ],
669
+ ambiguousValues: [
670
+ 'underline',
671
+ 'overline',
672
+ 'line-through'
673
+ ],
674
+ unit: 'rem',
675
+ layer: Layer.NativeShorthand,
676
+ variables: [
677
+ 'text'
678
+ ],
679
+ declare (value) {
680
+ return {
681
+ '-webkit-text-decoration': value,
682
+ 'text-decoration': value
683
+ };
684
+ }
685
+ },
686
+ 'text-underline-offset': {
687
+ ambiguousKeys: [
688
+ 'text-underline'
689
+ ],
690
+ unit: 'rem',
691
+ layer: Layer.Native,
692
+ variables: [
693
+ 'spacing'
694
+ ]
695
+ },
696
+ 'text-underline-position': {
697
+ ambiguousKeys: [
698
+ 'text-underline'
699
+ ],
700
+ ambiguousValues: [
701
+ 'front-font',
702
+ 'under',
703
+ 'left',
704
+ 'right'
705
+ ],
706
+ layer: Layer.Native
707
+ },
708
+ 'text-overflow': {
709
+ ambiguousKeys: [
710
+ 'text',
711
+ 't'
712
+ ],
713
+ ambiguousValues: [
714
+ 'ellipsis',
715
+ 'clip'
716
+ ],
717
+ layer: Layer.Native
718
+ },
719
+ 'text-orientation': {
720
+ ambiguousKeys: [
721
+ 'text',
722
+ 't'
723
+ ],
724
+ ambiguousValues: [
725
+ 'mixed',
726
+ 'upright',
727
+ 'sideways-right',
728
+ 'sideways',
729
+ 'use-glyph-orientation'
730
+ ],
731
+ layer: Layer.Native
732
+ },
733
+ 'text-transform': {
734
+ ambiguousKeys: [
735
+ 'text',
736
+ 't'
737
+ ],
738
+ ambiguousValues: [
739
+ 'uppercase',
740
+ 'lowercase',
741
+ 'capitalize'
742
+ ],
743
+ layer: Layer.Native
744
+ },
745
+ 'text-rendering': {
746
+ ambiguousKeys: [
747
+ 'text',
748
+ 't'
749
+ ],
750
+ ambiguousValues: [
751
+ 'optimizeSpeed',
752
+ 'optimizeLegibility',
753
+ 'geometricPrecision'
754
+ ],
755
+ layer: Layer.Native
756
+ },
757
+ 'text-wrap': {
758
+ ambiguousKeys: [
759
+ 'text',
760
+ 't'
761
+ ],
762
+ ambiguousValues: [
763
+ 'wrap',
764
+ 'nowrap',
765
+ 'balance',
766
+ 'pretty'
767
+ ],
768
+ layer: Layer.NativeShorthand
769
+ },
770
+ 'text-indent': {
771
+ unit: 'rem',
772
+ layer: Layer.Native
773
+ },
774
+ 'vertical-align': {
775
+ key: 'v',
776
+ subkey: 'vertical',
777
+ layer: Layer.Native
778
+ },
779
+ columns: {
780
+ key: 'cols',
781
+ layer: Layer.NativeShorthand
782
+ },
783
+ 'white-space': {
784
+ layer: Layer.Native
785
+ },
786
+ top: {
787
+ layer: Layer.Native,
788
+ unit: 'rem',
789
+ variables: [
790
+ 'spacing'
791
+ ]
792
+ },
793
+ bottom: {
794
+ layer: Layer.Native,
795
+ unit: 'rem',
796
+ variables: [
797
+ 'spacing'
798
+ ]
799
+ },
800
+ left: {
801
+ layer: Layer.Native,
802
+ unit: 'rem',
803
+ variables: [
804
+ 'spacing'
805
+ ]
806
+ },
807
+ right: {
808
+ layer: Layer.Native,
809
+ unit: 'rem',
810
+ variables: [
811
+ 'spacing'
812
+ ]
813
+ },
814
+ inset: {
815
+ unit: 'rem',
816
+ layer: Layer.NativeShorthand,
817
+ variables: [
818
+ 'spacing'
819
+ ]
820
+ },
821
+ 'max-height': {
822
+ key: 'max-h',
823
+ unit: 'rem',
824
+ layer: Layer.Native
825
+ },
826
+ 'max-width': {
827
+ key: 'max-w',
828
+ unit: 'rem',
829
+ layer: Layer.Native
830
+ },
831
+ opacity: {
832
+ layer: Layer.Native
833
+ },
834
+ visibility: {
835
+ layer: Layer.Native
836
+ },
837
+ clear: {
838
+ layer: Layer.Native
839
+ },
840
+ float: {
841
+ layer: Layer.Native
842
+ },
843
+ isolation: {
844
+ layer: Layer.Native
845
+ },
846
+ 'overflow-x': {
847
+ layer: Layer.Native,
848
+ declare (value) {
849
+ return value === 'overlay' ? {
850
+ 'overflow-x': [
851
+ 'auto',
852
+ value
853
+ ]
854
+ } : {
855
+ 'overflow-x': value
856
+ };
857
+ }
858
+ },
859
+ 'overflow-y': {
860
+ layer: Layer.Native,
861
+ declare (value) {
862
+ return value === 'overlay' ? {
863
+ 'overflow-y': [
864
+ 'auto',
865
+ value
866
+ ]
867
+ } : {
868
+ 'overflow-y': value
869
+ };
870
+ }
871
+ },
872
+ overflow: {
873
+ layer: Layer.NativeShorthand,
874
+ declare (value) {
875
+ return value === 'overlay' ? {
876
+ overflow: [
877
+ 'auto',
878
+ value
879
+ ]
880
+ } : {
881
+ overflow: value
882
+ };
883
+ }
884
+ },
885
+ 'overscroll-behavior-x': {
886
+ layer: Layer.Native
887
+ },
888
+ 'overscroll-behavior-y': {
889
+ layer: Layer.Native
890
+ },
891
+ 'overscroll-behavior': {
892
+ layer: Layer.NativeShorthand
893
+ },
894
+ 'z-index': {
895
+ key: 'z',
896
+ layer: Layer.Native
897
+ },
898
+ position: {
899
+ layer: Layer.Native
900
+ },
901
+ cursor: {
902
+ layer: Layer.Native
903
+ },
904
+ 'pointer-events': {
905
+ layer: Layer.Native
906
+ },
907
+ resize: {
908
+ layer: Layer.Native
909
+ },
910
+ 'touch-action': {
911
+ layer: Layer.Native
912
+ },
913
+ 'word-break': {
914
+ layer: Layer.Native
915
+ },
916
+ 'word-spacing': {
917
+ layer: Layer.Native,
918
+ unit: 'em'
919
+ },
920
+ 'user-drag': {
921
+ layer: Layer.Native,
922
+ declare (value) {
923
+ return {
924
+ '-webkit-user-drag': value,
925
+ 'user-drag': value
926
+ };
927
+ }
928
+ },
929
+ 'user-select': {
930
+ layer: Layer.Native,
931
+ declare (value) {
932
+ return {
933
+ '-webkit-user-select': value,
934
+ 'user-select': value
935
+ };
936
+ }
937
+ },
938
+ 'text-shadow': {
939
+ unit: 'rem',
940
+ layer: Layer.Native
941
+ },
942
+ 'text-size': {
943
+ ambiguousKeys: [
944
+ 'text',
945
+ 't'
946
+ ],
947
+ ambiguousValues: [
948
+ NUMBER_VALUE_REGEX
949
+ ],
950
+ unit: 'rem',
951
+ declare (value) {
952
+ const diff = .875;
953
+ return {
954
+ 'font-size': value,
955
+ 'line-height': `calc(${value} + ${diff}em)`
956
+ };
957
+ },
958
+ layer: Layer.Shorthand
959
+ },
960
+ 'text-fill-color': {
961
+ ambiguousKeys: [
962
+ 'text',
963
+ 't'
964
+ ],
965
+ ambiguousValues: [
966
+ COLOR_VALUE_REGEX
967
+ ],
968
+ layer: Layer.Native,
969
+ variables: [
970
+ 'text'
971
+ ],
972
+ declare (value) {
973
+ return {
974
+ '-webkit-text-fill-color': value
975
+ };
976
+ }
977
+ },
978
+ 'text-stroke-width': {
979
+ ambiguousKeys: [
980
+ 'text-stroke'
981
+ ],
982
+ ambiguousValues: [
983
+ 'thin',
984
+ 'medium',
985
+ 'thick',
986
+ NUMBER_VALUE_REGEX
987
+ ],
988
+ unit: 'rem',
989
+ layer: Layer.Native,
990
+ declare (value) {
991
+ return {
992
+ '-webkit-text-stroke-width': value
993
+ };
994
+ }
995
+ },
996
+ 'text-stroke-color': {
997
+ ambiguousKeys: [
998
+ 'text-stroke'
999
+ ],
1000
+ ambiguousValues: [
1001
+ COLOR_VALUE_REGEX
1002
+ ],
1003
+ layer: Layer.Native,
1004
+ variables: [
1005
+ 'text'
1006
+ ],
1007
+ declare (value) {
1008
+ return {
1009
+ '-webkit-text-stroke-color': value
1010
+ };
1011
+ }
1012
+ },
1013
+ 'text-stroke': {
1014
+ unit: 'rem',
1015
+ layer: Layer.Native,
1016
+ declare (value) {
1017
+ return {
1018
+ '-webkit-text-stroke': value
1019
+ };
1020
+ }
1021
+ },
1022
+ 'text-truncate': {
1023
+ subkey: 'lines',
1024
+ declare (value) {
1025
+ return {
1026
+ display: '-webkit-box',
1027
+ '-webkit-box-orient': 'vertical',
1028
+ '-webkit-line-clamp': value,
1029
+ overflow: 'hidden',
1030
+ 'overflow-wrap': 'break-word',
1031
+ 'text-overflow': 'ellipsis'
1032
+ };
1033
+ },
1034
+ layer: Layer.Shorthand
1035
+ },
1036
+ 'box-shadow': {
1037
+ key: 'shadow',
1038
+ subkey: 's',
1039
+ unit: 'rem',
1040
+ layer: Layer.Native
1041
+ },
1042
+ 'table-layout': {
1043
+ layer: Layer.Native
1044
+ },
1045
+ 'transform-box': {
1046
+ ambiguousKeys: [
1047
+ 'transform'
1048
+ ],
1049
+ layer: Layer.Native
1050
+ },
1051
+ 'transform-style': {
1052
+ ambiguousKeys: [
1053
+ 'transform'
1054
+ ],
1055
+ ambiguousValues: [
1056
+ 'flat',
1057
+ 'preserve-3d'
1058
+ ],
1059
+ layer: Layer.Native
1060
+ },
1061
+ 'transform-origin': {
1062
+ ambiguousKeys: [
1063
+ 'transform'
1064
+ ],
1065
+ ambiguousValues: [
1066
+ 'top',
1067
+ 'bottom',
1068
+ 'right',
1069
+ 'left',
1070
+ 'center',
1071
+ NUMBER_VALUE_REGEX
1072
+ ],
1073
+ unit: 'px',
1074
+ layer: Layer.Native
1075
+ },
1076
+ transform: {
1077
+ matcher: /^(?:translate|scale|skew|rotate|perspective|matrix)(?:3d|[XYZ])?\(/,
1078
+ layer: Layer.Native,
1079
+ analyze (className) {
1080
+ return [
1081
+ className.startsWith('transform') ? className.slice(10) : className
1082
+ ];
1083
+ },
1084
+ variables: [
1085
+ 'spacing'
1086
+ ]
1087
+ },
1088
+ 'transition-property': {
1089
+ key: '~property',
1090
+ layer: Layer.Native
1091
+ },
1092
+ 'transition-timing-function': {
1093
+ key: '~easing',
1094
+ layer: Layer.Native
1095
+ },
1096
+ 'transition-duration': {
1097
+ key: '~duration',
1098
+ layer: Layer.Native,
1099
+ unit: 'ms'
1100
+ },
1101
+ 'transition-delay': {
1102
+ key: '~delay',
1103
+ layer: Layer.Native,
1104
+ unit: 'ms'
1105
+ },
1106
+ transition: {
1107
+ sign: '~',
1108
+ analyze (className) {
1109
+ if (className.startsWith('~')) {
1110
+ return [
1111
+ className.slice(1)
1112
+ ];
1113
+ } else {
1114
+ const indexOfColon = className.indexOf(':');
1115
+ this.keyToken = className.slice(0, indexOfColon + 1);
1116
+ return [
1117
+ className.slice(indexOfColon + 1)
1118
+ ];
1119
+ }
1120
+ },
1121
+ layer: Layer.NativeShorthand
1122
+ },
1123
+ 'animation-delay': {
1124
+ key: '@delay',
1125
+ layer: Layer.Native,
1126
+ unit: 'ms'
1127
+ },
1128
+ 'animation-direction': {
1129
+ key: '@direction',
1130
+ layer: Layer.Native
1131
+ },
1132
+ 'animation-duration': {
1133
+ key: '@duration',
1134
+ layer: Layer.Native,
1135
+ unit: 'ms'
1136
+ },
1137
+ 'animation-fill-mode': {
1138
+ key: '@fill',
1139
+ layer: Layer.Native
1140
+ },
1141
+ 'animation-iteration-count': {
1142
+ key: '@iteration',
1143
+ layer: Layer.Native
1144
+ },
1145
+ 'animation-name': {
1146
+ key: '@name',
1147
+ layer: Layer.Native,
1148
+ includeAnimations: true
1149
+ },
1150
+ 'animation-play-state': {
1151
+ key: '@play',
1152
+ layer: Layer.Native
1153
+ },
1154
+ 'animation-timing-function': {
1155
+ key: '@easing',
1156
+ layer: Layer.Native
1157
+ },
1158
+ animation: {
1159
+ sign: '@',
1160
+ layer: Layer.NativeShorthand,
1161
+ includeAnimations: true,
1162
+ analyze (className) {
1163
+ if (className.startsWith('@')) {
1164
+ return [
1165
+ className.slice(1)
1166
+ ];
1167
+ } else {
1168
+ const indexOfColon = className.indexOf(':');
1169
+ this.keyToken = className.slice(0, indexOfColon + 1);
1170
+ return [
1171
+ className.slice(indexOfColon + 1)
1172
+ ];
1173
+ }
1174
+ }
1175
+ },
1176
+ 'border-collapse': {
1177
+ ambiguousKeys: [
1178
+ 'b',
1179
+ 'border'
1180
+ ],
1181
+ ambiguousValues: [
1182
+ 'collapse',
1183
+ 'separate'
1184
+ ],
1185
+ layer: Layer.Native
1186
+ },
1187
+ 'border-spacing': {
1188
+ unit: 'rem',
1189
+ layer: Layer.Native,
1190
+ variables: [
1191
+ 'spacing'
1192
+ ]
1193
+ },
1194
+ // border color
1195
+ 'border-top-color': {
1196
+ ambiguousKeys: [
1197
+ 'bt',
1198
+ 'border-top'
1199
+ ],
1200
+ ambiguousValues: [
1201
+ COLOR_VALUE_REGEX
1202
+ ],
1203
+ layer: Layer.Native
1204
+ },
1205
+ 'border-bottom-color': {
1206
+ ambiguousKeys: [
1207
+ 'bb',
1208
+ 'border-bottom'
1209
+ ],
1210
+ ambiguousValues: [
1211
+ COLOR_VALUE_REGEX
1212
+ ],
1213
+ layer: Layer.Native
1214
+ },
1215
+ 'border-left-color': {
1216
+ ambiguousKeys: [
1217
+ 'bl',
1218
+ 'border-left'
1219
+ ],
1220
+ ambiguousValues: [
1221
+ COLOR_VALUE_REGEX
1222
+ ],
1223
+ layer: Layer.Native
1224
+ },
1225
+ 'border-right-color': {
1226
+ ambiguousKeys: [
1227
+ 'br',
1228
+ 'border-right'
1229
+ ],
1230
+ ambiguousValues: [
1231
+ COLOR_VALUE_REGEX
1232
+ ],
1233
+ layer: Layer.Native
1234
+ },
1235
+ 'border-x-color': {
1236
+ ambiguousKeys: [
1237
+ 'bx',
1238
+ 'border-x'
1239
+ ],
1240
+ ambiguousValues: [
1241
+ COLOR_VALUE_REGEX
1242
+ ],
1243
+ layer: Layer.Shorthand,
1244
+ declare (value) {
1245
+ return {
1246
+ 'border-left-color': value,
1247
+ 'border-right-color': value
1248
+ };
1249
+ }
1250
+ },
1251
+ 'border-y-color': {
1252
+ ambiguousKeys: [
1253
+ 'by',
1254
+ 'border-y'
1255
+ ],
1256
+ ambiguousValues: [
1257
+ COLOR_VALUE_REGEX
1258
+ ],
1259
+ layer: Layer.Shorthand,
1260
+ declare (value) {
1261
+ return {
1262
+ 'border-top-color': value,
1263
+ 'border-bottom-color': value
1264
+ };
1265
+ }
1266
+ },
1267
+ 'border-color': {
1268
+ ambiguousKeys: [
1269
+ 'b',
1270
+ 'border'
1271
+ ],
1272
+ ambiguousValues: [
1273
+ COLOR_VALUE_REGEX
1274
+ ],
1275
+ layer: Layer.NativeShorthand
1276
+ },
1277
+ // border radius
1278
+ 'border-top-left-radius': {
1279
+ key: 'rtl',
1280
+ unit: 'rem',
1281
+ layer: Layer.Native
1282
+ },
1283
+ 'border-top-right-radius': {
1284
+ key: 'rtr',
1285
+ unit: 'rem',
1286
+ layer: Layer.Native
1287
+ },
1288
+ 'border-bottom-left-radius': {
1289
+ key: 'rbl',
1290
+ unit: 'rem',
1291
+ layer: Layer.Native
1292
+ },
1293
+ 'border-bottom-right-radius': {
1294
+ key: 'rbr',
1295
+ unit: 'rem',
1296
+ layer: Layer.Native
1297
+ },
1298
+ 'border-top-radius': {
1299
+ key: 'rt',
1300
+ unit: 'rem',
1301
+ layer: Layer.Shorthand,
1302
+ declare (value) {
1303
+ return {
1304
+ 'border-top-left-radius': value,
1305
+ 'border-top-right-radius': value
1306
+ };
1307
+ }
1308
+ },
1309
+ 'border-bottom-radius': {
1310
+ key: 'rb',
1311
+ unit: 'rem',
1312
+ layer: Layer.Shorthand,
1313
+ declare (value) {
1314
+ return {
1315
+ 'border-bottom-left-radius': value,
1316
+ 'border-bottom-right-radius': value
1317
+ };
1318
+ }
1319
+ },
1320
+ 'border-left-radius': {
1321
+ key: 'rl',
1322
+ unit: 'rem',
1323
+ layer: Layer.Shorthand,
1324
+ declare (value) {
1325
+ return {
1326
+ 'border-top-left-radius': value,
1327
+ 'border-bottom-left-radius': value
1328
+ };
1329
+ }
1330
+ },
1331
+ 'border-right-radius': {
1332
+ key: 'rr',
1333
+ unit: 'rem',
1334
+ layer: Layer.Shorthand,
1335
+ declare (value) {
1336
+ return {
1337
+ 'border-top-right-radius': value,
1338
+ 'border-bottom-right-radius': value
1339
+ };
1340
+ }
1341
+ },
1342
+ 'border-radius': {
1343
+ key: 'r',
1344
+ unit: 'rem',
1345
+ layer: Layer.NativeShorthand
1346
+ },
1347
+ // border style
1348
+ 'border-top-style': {
1349
+ ambiguousKeys: [
1350
+ 'bt',
1351
+ 'border-top'
1352
+ ],
1353
+ ambiguousValues: BORDER_STYLE_VALUES,
1354
+ layer: Layer.Native
1355
+ },
1356
+ 'border-bottom-style': {
1357
+ ambiguousKeys: [
1358
+ 'bb',
1359
+ 'border-bottom'
1360
+ ],
1361
+ ambiguousValues: BORDER_STYLE_VALUES,
1362
+ layer: Layer.Native
1363
+ },
1364
+ 'border-left-style': {
1365
+ ambiguousKeys: [
1366
+ 'bl',
1367
+ 'border-left'
1368
+ ],
1369
+ ambiguousValues: BORDER_STYLE_VALUES,
1370
+ layer: Layer.Native
1371
+ },
1372
+ 'border-right-style': {
1373
+ ambiguousKeys: [
1374
+ 'br',
1375
+ 'border-right'
1376
+ ],
1377
+ ambiguousValues: BORDER_STYLE_VALUES,
1378
+ layer: Layer.Native
1379
+ },
1380
+ 'border-x-style': {
1381
+ ambiguousKeys: [
1382
+ 'bx',
1383
+ 'border-x'
1384
+ ],
1385
+ ambiguousValues: BORDER_STYLE_VALUES,
1386
+ layer: Layer.Shorthand,
1387
+ declare (value) {
1388
+ return {
1389
+ 'border-left-style': value,
1390
+ 'border-right-style': value
1391
+ };
1392
+ }
1393
+ },
1394
+ 'border-y-style': {
1395
+ ambiguousKeys: [
1396
+ 'by',
1397
+ 'border-y'
1398
+ ],
1399
+ ambiguousValues: BORDER_STYLE_VALUES,
1400
+ layer: Layer.Shorthand,
1401
+ declare (value) {
1402
+ return {
1403
+ 'border-top-style': value,
1404
+ 'border-bottom-style': value
1405
+ };
1406
+ }
1407
+ },
1408
+ 'border-style': {
1409
+ ambiguousKeys: [
1410
+ 'b',
1411
+ 'border'
1412
+ ],
1413
+ ambiguousValues: BORDER_STYLE_VALUES,
1414
+ layer: Layer.NativeShorthand
1415
+ },
1416
+ // border width
1417
+ 'border-top-width': {
1418
+ ambiguousKeys: [
1419
+ 'bt',
1420
+ 'border-top'
1421
+ ],
1422
+ ambiguousValues: [
1423
+ NUMBER_VALUE_REGEX
1424
+ ],
1425
+ unit: 'rem',
1426
+ layer: Layer.Native
1427
+ },
1428
+ 'border-bottom-width': {
1429
+ ambiguousKeys: [
1430
+ 'bb',
1431
+ 'border-bottom'
1432
+ ],
1433
+ ambiguousValues: [
1434
+ NUMBER_VALUE_REGEX
1435
+ ],
1436
+ unit: 'rem',
1437
+ layer: Layer.Native
1438
+ },
1439
+ 'border-left-width': {
1440
+ ambiguousKeys: [
1441
+ 'bl',
1442
+ 'border-left'
1443
+ ],
1444
+ ambiguousValues: [
1445
+ NUMBER_VALUE_REGEX
1446
+ ],
1447
+ unit: 'rem',
1448
+ layer: Layer.Native
1449
+ },
1450
+ 'border-right-width': {
1451
+ ambiguousKeys: [
1452
+ 'br',
1453
+ 'border-right'
1454
+ ],
1455
+ ambiguousValues: [
1456
+ NUMBER_VALUE_REGEX
1457
+ ],
1458
+ unit: 'rem',
1459
+ layer: Layer.Native
1460
+ },
1461
+ 'border-x-width': {
1462
+ ambiguousKeys: [
1463
+ 'bx',
1464
+ 'border-x'
1465
+ ],
1466
+ ambiguousValues: [
1467
+ NUMBER_VALUE_REGEX
1468
+ ],
1469
+ unit: 'rem',
1470
+ layer: Layer.Shorthand,
1471
+ declare (value) {
1472
+ return {
1473
+ 'border-left-width': value,
1474
+ 'border-right-width': value
1475
+ };
1476
+ }
1477
+ },
1478
+ 'border-y-width': {
1479
+ ambiguousKeys: [
1480
+ 'by',
1481
+ 'border-y'
1482
+ ],
1483
+ ambiguousValues: [
1484
+ NUMBER_VALUE_REGEX
1485
+ ],
1486
+ unit: 'rem',
1487
+ layer: Layer.Shorthand,
1488
+ declare (value) {
1489
+ return {
1490
+ 'border-top-width': value,
1491
+ 'border-bottom-width': value
1492
+ };
1493
+ }
1494
+ },
1495
+ 'border-width': {
1496
+ ambiguousKeys: [
1497
+ 'b',
1498
+ 'border'
1499
+ ],
1500
+ ambiguousValues: [
1501
+ NUMBER_VALUE_REGEX
1502
+ ],
1503
+ unit: 'rem',
1504
+ layer: Layer.NativeShorthand
1505
+ },
1506
+ // border image
1507
+ 'border-image-repeat': {
1508
+ ambiguousKeys: [
1509
+ 'border-image'
1510
+ ],
1511
+ ambiguousValues: [
1512
+ 'stretch',
1513
+ 'repeat',
1514
+ 'round',
1515
+ 'space'
1516
+ ],
1517
+ layer: Layer.Native
1518
+ },
1519
+ 'border-image-slice': {
1520
+ ambiguousKeys: [
1521
+ 'border-image'
1522
+ ],
1523
+ layer: Layer.Native
1524
+ },
1525
+ 'border-image-source': {
1526
+ ambiguousKeys: [
1527
+ 'border-image'
1528
+ ],
1529
+ ambiguousValues: [
1530
+ IMAGE_VALUE_REGEX
1531
+ ],
1532
+ layer: Layer.Native
1533
+ },
1534
+ 'border-image-width': {
1535
+ ambiguousKeys: [
1536
+ 'border-image'
1537
+ ],
1538
+ ambiguousValues: [
1539
+ 'auto',
1540
+ NUMBER_VALUE_REGEX
1541
+ ],
1542
+ unit: 'rem',
1543
+ layer: Layer.Native
1544
+ },
1545
+ 'border-image-outset': {
1546
+ ambiguousKeys: [
1547
+ 'border-image'
1548
+ ],
1549
+ ambiguousValues: [
1550
+ NUMBER_VALUE_REGEX
1551
+ ],
1552
+ unit: 'rem',
1553
+ layer: Layer.Native
1554
+ },
1555
+ 'border-image': {
1556
+ layer: Layer.NativeShorthand
1557
+ },
1558
+ // border
1559
+ 'border-top': {
1560
+ key: 'bt',
1561
+ layer: Layer.NativeShorthand,
1562
+ unit: 'rem',
1563
+ transformValueComponents: autofillSolidStyle
1564
+ },
1565
+ 'border-bottom': {
1566
+ key: 'bb',
1567
+ layer: Layer.NativeShorthand,
1568
+ unit: 'rem',
1569
+ transformValueComponents: autofillSolidStyle
1570
+ },
1571
+ 'border-left': {
1572
+ key: 'bl',
1573
+ layer: Layer.NativeShorthand,
1574
+ unit: 'rem',
1575
+ transformValueComponents: autofillSolidStyle
1576
+ },
1577
+ 'border-right': {
1578
+ key: 'br',
1579
+ layer: Layer.NativeShorthand,
1580
+ unit: 'rem',
1581
+ transformValueComponents: autofillSolidStyle
1582
+ },
1583
+ 'border-x': {
1584
+ key: 'bx',
1585
+ unit: 'rem',
1586
+ layer: Layer.Shorthand,
1587
+ transformValueComponents: autofillSolidStyle,
1588
+ declare (value) {
1589
+ return {
1590
+ 'border-left': value,
1591
+ 'border-right': value
1592
+ };
1593
+ }
1594
+ },
1595
+ 'border-y': {
1596
+ key: 'by',
1597
+ unit: 'rem',
1598
+ layer: Layer.Shorthand,
1599
+ transformValueComponents: autofillSolidStyle,
1600
+ declare (value) {
1601
+ return {
1602
+ 'border-top': value,
1603
+ 'border-bottom': value
1604
+ };
1605
+ }
1606
+ },
1607
+ border: {
1608
+ key: 'b',
1609
+ unit: 'rem',
1610
+ layer: Layer.NativeShorthand,
1611
+ transformValueComponents: autofillSolidStyle
1612
+ },
1613
+ 'background-attachment': {
1614
+ ambiguousKeys: [
1615
+ 'bg'
1616
+ ],
1617
+ ambiguousValues: [
1618
+ 'fixed',
1619
+ 'local',
1620
+ 'scroll'
1621
+ ],
1622
+ layer: Layer.Native
1623
+ },
1624
+ 'background-blend-mode': {
1625
+ key: 'bg-blend',
1626
+ layer: Layer.Native
1627
+ },
1628
+ 'background-color': {
1629
+ ambiguousKeys: [
1630
+ 'bg'
1631
+ ],
1632
+ ambiguousValues: [
1633
+ COLOR_VALUE_REGEX
1634
+ ],
1635
+ layer: Layer.Native
1636
+ },
1637
+ 'background-clip': {
1638
+ key: 'bg-clip',
1639
+ layer: Layer.Native,
1640
+ declare (value) {
1641
+ return {
1642
+ '-webkit-background-clip': value,
1643
+ 'background-clip': value
1644
+ };
1645
+ }
1646
+ },
1647
+ 'background-origin': {
1648
+ key: 'bg-origin',
1649
+ layer: Layer.Native
1650
+ },
1651
+ 'background-position': {
1652
+ ambiguousKeys: [
1653
+ 'bg'
1654
+ ],
1655
+ ambiguousValues: [
1656
+ 'top',
1657
+ 'bottom',
1658
+ 'right',
1659
+ 'left',
1660
+ 'center'
1661
+ ],
1662
+ layer: Layer.Native,
1663
+ unit: 'px'
1664
+ },
1665
+ 'background-repeat': {
1666
+ ambiguousKeys: [
1667
+ 'bg'
1668
+ ],
1669
+ ambiguousValues: [
1670
+ 'space',
1671
+ 'round',
1672
+ 'repeat',
1673
+ 'no-repeat',
1674
+ 'repeat-x',
1675
+ 'repeat-y'
1676
+ ],
1677
+ layer: Layer.Native
1678
+ },
1679
+ 'background-size': {
1680
+ ambiguousKeys: [
1681
+ 'bg'
1682
+ ],
1683
+ ambiguousValues: [
1684
+ 'auto',
1685
+ 'cover',
1686
+ 'contain',
1687
+ NUMBER_VALUE_REGEX
1688
+ ],
1689
+ unit: 'rem',
1690
+ layer: Layer.Native
1691
+ },
1692
+ 'background-image': {
1693
+ ambiguousKeys: [
1694
+ 'bg'
1695
+ ],
1696
+ ambiguousValues: [
1697
+ IMAGE_VALUE_REGEX
1698
+ ],
1699
+ layer: Layer.Native
1700
+ },
1701
+ background: {
1702
+ key: 'bg',
1703
+ layer: Layer.NativeShorthand
1704
+ },
1705
+ gradient: {
1706
+ matcher: /^gradient\(/,
1707
+ layer: Layer.Shorthand,
1708
+ declare (value) {
1709
+ return {
1710
+ 'background-image': 'linear-' + value
1711
+ };
1712
+ }
1713
+ },
1714
+ 'mix-blend-mode': {
1715
+ key: 'blend',
1716
+ layer: Layer.Native
1717
+ },
1718
+ 'backdrop-filter': {
1719
+ key: 'bd',
1720
+ layer: Layer.Native,
1721
+ declare (value) {
1722
+ return {
1723
+ '-webkit-backdrop-filter': value,
1724
+ 'backdrop-filter': value
1725
+ };
1726
+ }
1727
+ },
1728
+ filter: {
1729
+ matcher: /^(?:blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|opacity|saturate|sepia)\(/,
1730
+ layer: Layer.Native
1731
+ },
1732
+ fill: {
1733
+ layer: Layer.Native
1734
+ },
1735
+ 'stroke-dasharray': {
1736
+ layer: Layer.Native
1737
+ },
1738
+ 'stroke-dashoffset': {
1739
+ layer: Layer.Native,
1740
+ variables: [
1741
+ 'spacing'
1742
+ ]
1743
+ },
1744
+ 'stroke-width': {
1745
+ ambiguousKeys: [
1746
+ 'stroke'
1747
+ ],
1748
+ ambiguousValues: [
1749
+ NUMBER_VALUE_REGEX
1750
+ ],
1751
+ layer: Layer.Native
1752
+ },
1753
+ stroke: {
1754
+ layer: Layer.Native
1755
+ },
1756
+ x: {
1757
+ layer: Layer.Native,
1758
+ variables: [
1759
+ 'spacing'
1760
+ ]
1761
+ },
1762
+ y: {
1763
+ layer: Layer.Native,
1764
+ variables: [
1765
+ 'spacing'
1766
+ ]
1767
+ },
1768
+ cx: {
1769
+ layer: Layer.Native,
1770
+ variables: [
1771
+ 'spacing'
1772
+ ]
1773
+ },
1774
+ cy: {
1775
+ layer: Layer.Native,
1776
+ variables: [
1777
+ 'spacing'
1778
+ ]
1779
+ },
1780
+ rx: {
1781
+ layer: Layer.Native
1782
+ },
1783
+ ry: {
1784
+ layer: Layer.Native
1785
+ },
1786
+ 'grid-column-start': {
1787
+ key: 'grid-col-start',
1788
+ layer: Layer.Native
1789
+ },
1790
+ 'grid-column-end': {
1791
+ key: 'grid-col-end',
1792
+ layer: Layer.Native
1793
+ },
1794
+ 'grid-column-span': {
1795
+ key: 'grid-col-span',
1796
+ layer: Layer.Shorthand,
1797
+ transformValue (value) {
1798
+ return 'span' + ' ' + value + '/' + 'span' + ' ' + value;
1799
+ },
1800
+ declare (value) {
1801
+ return {
1802
+ 'grid-column': value
1803
+ };
1804
+ }
1805
+ },
1806
+ 'grid-column': {
1807
+ key: 'grid-col',
1808
+ layer: Layer.NativeShorthand
1809
+ },
1810
+ 'grid-columns': {
1811
+ key: 'grid-cols',
1812
+ declare (value) {
1813
+ return {
1814
+ display: 'grid',
1815
+ 'grid-template-columns': 'repeat' + '(' + value + ',' + 'minmax' + '(' + 0 + ',' + 1 + 'fr' + '))'
1816
+ };
1817
+ },
1818
+ layer: Layer.Shorthand
1819
+ },
1820
+ 'grid-row-start': {
1821
+ layer: Layer.Native
1822
+ },
1823
+ 'grid-row-end': {
1824
+ layer: Layer.Native
1825
+ },
1826
+ 'grid-row-span': {
1827
+ layer: Layer.Shorthand,
1828
+ transformValue (value) {
1829
+ return 'span' + ' ' + value + '/' + 'span' + ' ' + value;
1830
+ },
1831
+ declare (value) {
1832
+ return {
1833
+ 'grid-row': value
1834
+ };
1835
+ }
1836
+ },
1837
+ 'grid-row': {
1838
+ layer: Layer.NativeShorthand
1839
+ },
1840
+ 'grid-rows': {
1841
+ declare (value) {
1842
+ return {
1843
+ display: 'grid',
1844
+ 'grid-auto-flow': 'column',
1845
+ 'grid-template-rows': 'repeat' + '(' + value + ',' + 'minmax' + '(' + 0 + ',' + 1 + 'fr' + '))'
1846
+ };
1847
+ },
1848
+ layer: Layer.Shorthand
1849
+ },
1850
+ 'grid-auto-columns': {
1851
+ key: 'grid-auto-cols',
1852
+ layer: Layer.Native
1853
+ },
1854
+ 'grid-auto-flow': {
1855
+ key: 'grid-flow',
1856
+ layer: Layer.Native
1857
+ },
1858
+ 'grid-auto-rows': {
1859
+ layer: Layer.Native
1860
+ },
1861
+ 'grid-template-areas': {
1862
+ layer: Layer.Native
1863
+ },
1864
+ 'grid-template-columns': {
1865
+ key: 'grid-template-cols',
1866
+ layer: Layer.Native,
1867
+ unit: 'rem'
1868
+ },
1869
+ 'grid-template-rows': {
1870
+ layer: Layer.Native,
1871
+ unit: 'rem'
1872
+ },
1873
+ 'grid-template': {
1874
+ layer: Layer.NativeShorthand
1875
+ },
1876
+ 'grid-area': {
1877
+ layer: Layer.NativeShorthand
1878
+ },
1879
+ grid: {
1880
+ layer: Layer.NativeShorthand
1881
+ },
1882
+ 'column-gap': {
1883
+ key: 'gap-x',
1884
+ unit: 'rem',
1885
+ layer: Layer.Native,
1886
+ variables: [
1887
+ 'spacing'
1888
+ ]
1889
+ },
1890
+ 'row-gap': {
1891
+ key: 'gap-y',
1892
+ unit: 'rem',
1893
+ layer: Layer.Native,
1894
+ variables: [
1895
+ 'spacing'
1896
+ ]
1897
+ },
1898
+ gap: {
1899
+ unit: 'rem',
1900
+ layer: Layer.NativeShorthand,
1901
+ variables: [
1902
+ 'spacing'
1903
+ ]
1904
+ },
1905
+ order: {
1906
+ key: 'o',
1907
+ layer: Layer.Native
1908
+ },
1909
+ 'break-inside': {
1910
+ layer: Layer.Native
1911
+ },
1912
+ 'break-before': {
1913
+ layer: Layer.Native
1914
+ },
1915
+ 'break-after': {
1916
+ layer: Layer.Native
1917
+ },
1918
+ 'aspect-ratio': {
1919
+ key: 'aspect',
1920
+ layer: Layer.Native
1921
+ },
1922
+ 'column-span': {
1923
+ key: 'col-span',
1924
+ layer: Layer.Native
1925
+ },
1926
+ 'align-content': {
1927
+ subkey: 'ac',
1928
+ layer: Layer.Native
1929
+ },
1930
+ 'align-items': {
1931
+ subkey: 'ai',
1932
+ layer: Layer.Native
1933
+ },
1934
+ 'align-self': {
1935
+ subkey: 'as',
1936
+ layer: Layer.Native
1937
+ },
1938
+ 'justify-content': {
1939
+ subkey: 'jc',
1940
+ layer: Layer.Native
1941
+ },
1942
+ 'justify-items': {
1943
+ subkey: 'ji',
1944
+ layer: Layer.Native
1945
+ },
1946
+ 'justify-self': {
1947
+ subkey: 'js',
1948
+ layer: Layer.Native
1949
+ },
1950
+ 'place-content': {
1951
+ layer: Layer.NativeShorthand
1952
+ },
1953
+ 'place-items': {
1954
+ layer: Layer.NativeShorthand
1955
+ },
1956
+ 'place-self': {
1957
+ layer: Layer.NativeShorthand
1958
+ },
1959
+ 'list-style-position': {
1960
+ ambiguousKeys: [
1961
+ 'list-style'
1962
+ ],
1963
+ ambiguousValues: [
1964
+ 'inside',
1965
+ 'outside'
1966
+ ],
1967
+ layer: Layer.Native
1968
+ },
1969
+ 'list-style-type': {
1970
+ ambiguousKeys: [
1971
+ 'list-style'
1972
+ ],
1973
+ ambiguousValues: [
1974
+ 'disc',
1975
+ 'decimal'
1976
+ ],
1977
+ layer: Layer.Native
1978
+ },
1979
+ 'list-style-image': {
1980
+ ambiguousKeys: [
1981
+ 'list-style'
1982
+ ],
1983
+ ambiguousValues: [
1984
+ IMAGE_VALUE_REGEX
1985
+ ],
1986
+ layer: Layer.Native
1987
+ },
1988
+ 'list-style': {
1989
+ layer: Layer.NativeShorthand
1990
+ },
1991
+ 'outline-color': {
1992
+ ambiguousKeys: [
1993
+ 'outline'
1994
+ ],
1995
+ ambiguousValues: [
1996
+ COLOR_VALUE_REGEX
1997
+ ],
1998
+ layer: Layer.Native
1999
+ },
2000
+ 'outline-offset': {
2001
+ unit: 'rem',
2002
+ layer: Layer.Native,
2003
+ variables: [
2004
+ 'spacing'
2005
+ ]
2006
+ },
2007
+ 'outline-style': {
2008
+ ambiguousKeys: [
2009
+ 'outline'
2010
+ ],
2011
+ ambiguousValues: BORDER_STYLE_VALUES,
2012
+ layer: Layer.Native
2013
+ },
2014
+ 'outline-width': {
2015
+ ambiguousKeys: [
2016
+ 'outline'
2017
+ ],
2018
+ ambiguousValues: [
2019
+ 'medium',
2020
+ 'thick',
2021
+ 'thin',
2022
+ NUMBER_VALUE_REGEX
2023
+ ],
2024
+ unit: 'rem',
2025
+ layer: Layer.Native
2026
+ },
2027
+ outline: {
2028
+ unit: 'rem',
2029
+ layer: Layer.NativeShorthand,
2030
+ variables: [
2031
+ 'outline-width',
2032
+ 'outline-style',
2033
+ 'outline-offset',
2034
+ 'outline-color'
2035
+ ],
2036
+ transformValueComponents: autofillSolidStyle
2037
+ },
2038
+ 'accent-color': {
2039
+ key: 'accent',
2040
+ layer: Layer.Native
2041
+ },
2042
+ appearance: {
2043
+ layer: Layer.Native
2044
+ },
2045
+ 'caret-color': {
2046
+ key: 'caret',
2047
+ layer: Layer.Native,
2048
+ variables: [
2049
+ 'text'
2050
+ ]
2051
+ },
2052
+ 'scroll-behavior': {
2053
+ layer: Layer.Native
2054
+ },
2055
+ // scroll margin
2056
+ 'scroll-margin-left': {
2057
+ key: 'scroll-ml',
2058
+ layer: Layer.Native,
2059
+ unit: 'rem',
2060
+ variables: [
2061
+ 'spacing'
2062
+ ]
2063
+ },
2064
+ 'scroll-margin-right': {
2065
+ key: 'scroll-mr',
2066
+ layer: Layer.Native,
2067
+ unit: 'rem',
2068
+ variables: [
2069
+ 'spacing'
2070
+ ]
2071
+ },
2072
+ 'scroll-margin-top': {
2073
+ key: 'scroll-mt',
2074
+ layer: Layer.Native,
2075
+ unit: 'rem',
2076
+ variables: [
2077
+ 'spacing'
2078
+ ]
2079
+ },
2080
+ 'scroll-margin-bottom': {
2081
+ key: 'scroll-mb',
2082
+ layer: Layer.Native,
2083
+ unit: 'rem',
2084
+ variables: [
2085
+ 'spacing'
2086
+ ]
2087
+ },
2088
+ 'scroll-margin-x': {
2089
+ key: 'scroll-mx',
2090
+ unit: 'rem',
2091
+ layer: Layer.Shorthand,
2092
+ declare (value) {
2093
+ return {
2094
+ 'scroll-margin-left': value,
2095
+ 'scroll-margin-right': value
2096
+ };
2097
+ },
2098
+ variables: [
2099
+ 'spacing'
2100
+ ]
2101
+ },
2102
+ 'scroll-margin-y': {
2103
+ key: 'scroll-my',
2104
+ unit: 'rem',
2105
+ layer: Layer.Shorthand,
2106
+ declare (value) {
2107
+ return {
2108
+ 'scroll-margin-top': value,
2109
+ 'scroll-margin-bottom': value
2110
+ };
2111
+ },
2112
+ variables: [
2113
+ 'spacing'
2114
+ ]
2115
+ },
2116
+ 'scroll-margin': {
2117
+ key: 'scroll-m',
2118
+ unit: 'rem',
2119
+ layer: Layer.NativeShorthand,
2120
+ variables: [
2121
+ 'spacing'
2122
+ ]
2123
+ },
2124
+ // scroll padding
2125
+ 'scroll-padding-left': {
2126
+ key: 'scroll-pl',
2127
+ layer: Layer.Native,
2128
+ unit: 'rem',
2129
+ variables: [
2130
+ 'spacing'
2131
+ ]
2132
+ },
2133
+ 'scroll-padding-right': {
2134
+ key: 'scroll-pr',
2135
+ layer: Layer.Native,
2136
+ unit: 'rem',
2137
+ variables: [
2138
+ 'spacing'
2139
+ ]
2140
+ },
2141
+ 'scroll-padding-top': {
2142
+ key: 'scroll-pt',
2143
+ layer: Layer.Native,
2144
+ unit: 'rem',
2145
+ variables: [
2146
+ 'spacing'
2147
+ ]
2148
+ },
2149
+ 'scroll-padding-bottom': {
2150
+ key: 'scroll-pb',
2151
+ layer: Layer.Native,
2152
+ unit: 'rem',
2153
+ variables: [
2154
+ 'spacing'
2155
+ ]
2156
+ },
2157
+ 'scroll-padding-x': {
2158
+ key: 'scroll-px',
2159
+ unit: 'rem',
2160
+ layer: Layer.Shorthand,
2161
+ declare (value) {
2162
+ return {
2163
+ 'scroll-padding-left': value,
2164
+ 'scroll-padding-right': value
2165
+ };
2166
+ },
2167
+ variables: [
2168
+ 'spacing'
2169
+ ]
2170
+ },
2171
+ 'scroll-padding-y': {
2172
+ key: 'scroll-py',
2173
+ unit: 'rem',
2174
+ layer: Layer.Shorthand,
2175
+ declare (value) {
2176
+ return {
2177
+ 'scroll-padding-top': value,
2178
+ 'scroll-padding-bottom': value
2179
+ };
2180
+ },
2181
+ variables: [
2182
+ 'spacing'
2183
+ ]
2184
+ },
2185
+ 'scroll-padding': {
2186
+ key: 'scroll-p',
2187
+ unit: 'rem',
2188
+ layer: Layer.NativeShorthand,
2189
+ variables: [
2190
+ 'spacing'
2191
+ ]
2192
+ },
2193
+ // scroll snap
2194
+ 'scroll-snap-align': {
2195
+ ambiguousKeys: [
2196
+ 'scroll-snap'
2197
+ ],
2198
+ ambiguousValues: [
2199
+ 'start',
2200
+ 'end',
2201
+ 'center'
2202
+ ],
2203
+ layer: Layer.Native
2204
+ },
2205
+ 'scroll-snap-stop': {
2206
+ ambiguousKeys: [
2207
+ 'scroll-snap'
2208
+ ],
2209
+ ambiguousValues: [
2210
+ 'normal',
2211
+ 'always'
2212
+ ],
2213
+ layer: Layer.Native
2214
+ },
2215
+ 'scroll-snap-type': {
2216
+ ambiguousKeys: [
2217
+ 'scroll-snap'
2218
+ ],
2219
+ ambiguousValues: [
2220
+ 'x',
2221
+ 'y',
2222
+ 'block',
2223
+ 'inline',
2224
+ 'both'
2225
+ ],
2226
+ layer: Layer.Native
2227
+ },
2228
+ 'will-change': {
2229
+ layer: Layer.Native
2230
+ },
2231
+ 'writing-mode': {
2232
+ key: 'writing',
2233
+ layer: Layer.Native
2234
+ },
2235
+ direction: {
2236
+ layer: Layer.Native
2237
+ },
2238
+ 'shape-outside': {
2239
+ ambiguousKeys: [
2240
+ 'shape'
2241
+ ],
2242
+ ambiguousValues: [
2243
+ /(?:inset|circle|ellipse|polygon|url|linear-gradient)\(.*\)/
2244
+ ],
2245
+ layer: Layer.Native
2246
+ },
2247
+ 'shape-margin': {
2248
+ ambiguousKeys: [
2249
+ 'shape'
2250
+ ],
2251
+ ambiguousValues: [
2252
+ NUMBER_VALUE_REGEX
2253
+ ],
2254
+ unit: 'rem',
2255
+ layer: Layer.Native,
2256
+ variables: [
2257
+ 'spacing'
2258
+ ]
2259
+ },
2260
+ 'shape-image-threshold': {
2261
+ layer: Layer.Native
2262
+ },
2263
+ 'clip-path': {
2264
+ key: 'clip',
2265
+ layer: Layer.Native
2266
+ },
2267
+ quotes: {
2268
+ layer: Layer.Native
2269
+ },
2270
+ 'mask-image': {
2271
+ layer: Layer.Native,
2272
+ declare (value) {
2273
+ return {
2274
+ '-webkit-mask-image': value,
2275
+ 'mask-image': value
2276
+ };
2277
+ }
2278
+ }
2279
+ };
2280
+
2281
+ export { syntaxes as default };