@tbela99/css-parser 1.4.1 → 1.4.3

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 (216) hide show
  1. package/.nyc_output/4874b20e-6f53-4d7a-be5a-cf68316925f2.json +1 -0
  2. package/.nyc_output/6193bc4c-6f5f-4898-8950-c628825e6342.json +1 -0
  3. package/.nyc_output/processinfo/4874b20e-6f53-4d7a-be5a-cf68316925f2.json +1 -0
  4. package/.nyc_output/processinfo/6193bc4c-6f5f-4898-8950-c628825e6342.json +1 -0
  5. package/.repl_history +4 -0
  6. package/CHANGELOG.md +168 -4
  7. package/README.md +82 -0
  8. package/badges/coverage.svg +20 -0
  9. package/deno.lock +2861 -0
  10. package/dist/config.json.js +33 -1
  11. package/dist/index-umd-web.js +24393 -18479
  12. package/dist/index.cjs +27430 -21519
  13. package/dist/index.d.ts +1403 -933
  14. package/dist/lib/ast/clone.d.ts +10 -0
  15. package/dist/lib/ast/clone.js +45 -0
  16. package/dist/lib/ast/expand.d.ts +14 -0
  17. package/dist/lib/ast/expand.js +89 -64
  18. package/dist/lib/ast/features/calc.d.ts +10 -0
  19. package/dist/lib/ast/features/calc.js +62 -24
  20. package/dist/lib/ast/features/if.d.ts +10 -0
  21. package/dist/lib/ast/features/if.js +215 -0
  22. package/dist/lib/ast/features/index.d.ts +6 -0
  23. package/dist/lib/ast/features/index.js +1 -0
  24. package/dist/lib/ast/features/inlinecssvariables.d.ts +15 -0
  25. package/dist/lib/ast/features/inlinecssvariables.js +32 -27
  26. package/dist/lib/ast/features/prefix.d.ts +8 -0
  27. package/dist/lib/ast/features/prefix.js +68 -43
  28. package/dist/lib/ast/features/shorthand.d.ts +12 -0
  29. package/dist/lib/ast/features/shorthand.js +6 -9
  30. package/dist/lib/ast/features/transform.d.ts +10 -0
  31. package/dist/lib/ast/features/transform.js +9 -13
  32. package/dist/lib/ast/features/type.d.ts +15 -0
  33. package/dist/lib/ast/find.d.ts +165 -0
  34. package/dist/lib/ast/find.js +175 -0
  35. package/dist/lib/ast/math/expression.d.ts +18 -0
  36. package/dist/lib/ast/math/expression.js +140 -98
  37. package/dist/lib/ast/math/math.d.ts +6 -0
  38. package/dist/lib/ast/math/math.js +30 -41
  39. package/dist/lib/ast/minify.d.ts +19 -0
  40. package/dist/lib/ast/minify.js +543 -215
  41. package/dist/lib/ast/transform/compute.d.ts +8 -0
  42. package/dist/lib/ast/transform/compute.js +82 -69
  43. package/dist/lib/ast/transform/matrix.d.ts +22 -0
  44. package/dist/lib/ast/transform/matrix.js +12 -26
  45. package/dist/lib/ast/transform/minify.d.ts +5 -0
  46. package/dist/lib/ast/transform/minify.js +20 -20
  47. package/dist/lib/ast/transform/perspective.d.ts +3 -0
  48. package/dist/lib/ast/transform/perspective.js +1 -1
  49. package/dist/lib/ast/transform/rotate.d.ts +12 -0
  50. package/dist/lib/ast/transform/rotate.js +1 -1
  51. package/dist/lib/ast/transform/scale.d.ts +6 -0
  52. package/dist/lib/ast/transform/scale.js +1 -1
  53. package/dist/lib/ast/transform/skew.d.ts +4 -0
  54. package/dist/lib/ast/transform/skew.js +1 -1
  55. package/dist/lib/ast/transform/translate.d.ts +6 -0
  56. package/dist/lib/ast/transform/translate.js +1 -1
  57. package/dist/lib/ast/transform/utils.d.ts +9 -0
  58. package/dist/lib/ast/types.d.ts +903 -0
  59. package/dist/lib/ast/types.js +277 -23
  60. package/dist/lib/ast/walk.d.ts +162 -0
  61. package/dist/lib/ast/walk.js +116 -60
  62. package/dist/lib/fs/resolve.d.ts +20 -0
  63. package/dist/lib/fs/resolve.js +37 -45
  64. package/dist/lib/parser/declaration/list.d.ts +16 -0
  65. package/dist/lib/parser/declaration/list.js +26 -24
  66. package/dist/lib/parser/declaration/map.d.ts +15 -0
  67. package/dist/lib/parser/declaration/map.js +140 -95
  68. package/dist/lib/parser/declaration/set.d.ts +9 -0
  69. package/dist/lib/parser/declaration/set.js +30 -25
  70. package/dist/lib/parser/node.d.ts +7 -0
  71. package/dist/lib/parser/parse.d.ts +107 -0
  72. package/dist/lib/parser/parse.js +1454 -1445
  73. package/dist/lib/parser/tokenize.d.ts +57 -0
  74. package/dist/lib/parser/tokenize.js +557 -404
  75. package/dist/lib/parser/utils/at-rule-container.d.ts +5 -0
  76. package/dist/lib/parser/utils/at-rule-container.js +486 -0
  77. package/dist/lib/parser/utils/at-rule-font-feature-values.d.ts +5 -0
  78. package/dist/lib/parser/utils/at-rule-font-feature-values.js +13 -0
  79. package/dist/lib/parser/utils/at-rule-generic.d.ts +5 -0
  80. package/dist/lib/parser/utils/at-rule-generic.js +118 -0
  81. package/dist/lib/parser/utils/at-rule-import.d.ts +5 -0
  82. package/dist/lib/parser/utils/at-rule-import.js +393 -0
  83. package/dist/lib/parser/utils/at-rule-media.d.ts +5 -0
  84. package/dist/lib/parser/utils/at-rule-media.js +603 -0
  85. package/dist/lib/parser/utils/at-rule-page.d.ts +5 -0
  86. package/dist/lib/parser/utils/at-rule-page.js +28 -0
  87. package/dist/lib/parser/utils/at-rule-support.d.ts +5 -0
  88. package/dist/lib/parser/utils/at-rule-support.js +366 -0
  89. package/dist/lib/parser/utils/at-rule-token.d.ts +1 -0
  90. package/dist/lib/parser/utils/at-rule-when-else.d.ts +5 -0
  91. package/dist/lib/parser/utils/at-rule-when-else.js +363 -0
  92. package/dist/lib/parser/utils/at-rule.d.ts +13 -0
  93. package/dist/lib/parser/utils/at-rule.js +37 -0
  94. package/dist/lib/parser/utils/cache.d.ts +6 -0
  95. package/dist/lib/parser/utils/cache.js +19 -0
  96. package/dist/lib/parser/utils/config.d.ts +2 -0
  97. package/dist/lib/parser/utils/config.js +1 -0
  98. package/dist/lib/parser/utils/declaration-list.d.ts +5 -0
  99. package/dist/lib/parser/utils/declaration.d.ts +18 -0
  100. package/dist/lib/parser/utils/declaration.js +569 -91
  101. package/dist/lib/parser/utils/eq.d.ts +1 -0
  102. package/dist/lib/parser/utils/hash.d.ts +21 -0
  103. package/dist/lib/parser/utils/hash.js +1 -1
  104. package/dist/lib/parser/utils/selector.d.ts +5 -0
  105. package/dist/lib/parser/utils/selector.js +476 -0
  106. package/dist/lib/parser/utils/text.d.ts +3 -0
  107. package/dist/lib/parser/utils/text.js +17 -1
  108. package/dist/lib/parser/utils/token.d.ts +14 -0
  109. package/dist/lib/parser/utils/token.js +102 -0
  110. package/dist/lib/parser/utils/type.d.ts +2 -0
  111. package/dist/lib/parser/utils/type.js +29 -18
  112. package/dist/lib/renderer/render.d.ts +28 -0
  113. package/dist/lib/renderer/render.js +421 -262
  114. package/dist/lib/renderer/sourcemap/lib/encode.d.ts +1 -0
  115. package/dist/lib/renderer/sourcemap/sourcemap.d.ts +26 -0
  116. package/dist/lib/renderer/sourcemap/sourcemap.js +17 -7
  117. package/dist/lib/syntax/color/a98rgb.d.ts +2 -0
  118. package/dist/lib/syntax/color/a98rgb.js +8 -12
  119. package/dist/lib/syntax/color/cmyk.d.ts +10 -0
  120. package/dist/lib/syntax/color/cmyk.js +23 -21
  121. package/dist/lib/syntax/color/color-mix.d.ts +2 -0
  122. package/dist/lib/syntax/color/color-mix.js +88 -77
  123. package/dist/lib/syntax/color/color.d.ts +42 -0
  124. package/dist/lib/syntax/color/color.js +65 -68
  125. package/dist/lib/syntax/color/hex.d.ts +16 -0
  126. package/dist/lib/syntax/color/hex.js +27 -31
  127. package/dist/lib/syntax/color/hsl.d.ts +20 -0
  128. package/dist/lib/syntax/color/hsl.js +5 -12
  129. package/dist/lib/syntax/color/hsv.d.ts +2 -0
  130. package/dist/lib/syntax/color/hwb.d.ts +21 -0
  131. package/dist/lib/syntax/color/hwb.js +8 -21
  132. package/dist/lib/syntax/color/lab.d.ts +25 -0
  133. package/dist/lib/syntax/color/lab.js +20 -21
  134. package/dist/lib/syntax/color/lch.d.ts +23 -0
  135. package/dist/lib/syntax/color/lch.js +13 -15
  136. package/dist/lib/syntax/color/oklab.d.ts +22 -0
  137. package/dist/lib/syntax/color/oklab.js +20 -39
  138. package/dist/lib/syntax/color/oklch.d.ts +20 -0
  139. package/dist/lib/syntax/color/oklch.js +14 -16
  140. package/dist/lib/syntax/color/p3.d.ts +6 -0
  141. package/dist/lib/syntax/color/p3.js +0 -8
  142. package/dist/lib/syntax/color/prophotorgb.d.ts +2 -0
  143. package/dist/lib/syntax/color/rec2020.d.ts +2 -0
  144. package/dist/lib/syntax/color/rec2020.js +9 -13
  145. package/dist/lib/syntax/color/relativecolor.d.ts +13 -0
  146. package/dist/lib/syntax/color/relativecolor.js +68 -41
  147. package/dist/lib/syntax/color/rgb.d.ts +20 -0
  148. package/dist/lib/syntax/color/rgb.js +14 -18
  149. package/dist/lib/syntax/color/srgb.d.ts +23 -0
  150. package/dist/lib/syntax/color/srgb.js +27 -26
  151. package/dist/lib/syntax/color/utils/components.d.ts +2 -0
  152. package/dist/lib/syntax/color/utils/components.js +30 -14
  153. package/dist/lib/syntax/color/utils/distance.d.ts +18 -0
  154. package/dist/lib/syntax/color/utils/distance.js +1 -8
  155. package/dist/lib/syntax/color/utils/matrix.d.ts +6 -0
  156. package/dist/lib/syntax/color/xyz.d.ts +5 -0
  157. package/dist/lib/syntax/color/xyz.js +8 -20
  158. package/dist/lib/syntax/color/xyzd50.d.ts +4 -0
  159. package/dist/lib/syntax/color/xyzd50.js +6 -20
  160. package/dist/lib/syntax/constants.d.ts +67 -0
  161. package/dist/lib/syntax/constants.js +436 -0
  162. package/dist/lib/syntax/syntax.d.ts +38 -0
  163. package/dist/lib/syntax/syntax.js +533 -568
  164. package/dist/lib/validation/config.d.ts +14 -0
  165. package/dist/lib/validation/config.js +72 -33
  166. package/dist/lib/validation/config.json.js +1159 -74
  167. package/dist/lib/validation/json.d.ts +2 -0
  168. package/dist/lib/validation/match.d.ts +38 -0
  169. package/dist/lib/validation/match.js +2985 -0
  170. package/dist/lib/validation/parser/parse.d.ts +8 -0
  171. package/dist/lib/validation/parser/parse.js +684 -935
  172. package/dist/lib/validation/parser/typedef.d.ts +95 -0
  173. package/dist/lib/validation/parser/typedef.js +100 -0
  174. package/dist/lib/validation/utils/list.d.ts +4 -0
  175. package/dist/lib/validation/utils/list.js +4 -11
  176. package/dist/lib/validation/utils/whitespace.d.ts +2 -0
  177. package/dist/lib/validation/utils/whitespace.js +2 -8
  178. package/dist/node.d.ts +207 -0
  179. package/dist/node.js +53 -47
  180. package/dist/web.d.ts +169 -0
  181. package/dist/web.js +50 -41
  182. package/package.json +18 -13
  183. package/playground/index.html +1328 -0
  184. package/playground/sw.js +55 -0
  185. package/playground/tree.js +176 -0
  186. package/dist/lib/syntax/color/utils/constants.js +0 -214
  187. package/dist/lib/syntax/utils.js +0 -70
  188. package/dist/lib/validation/at-rules/container.js +0 -342
  189. package/dist/lib/validation/at-rules/counter-style.js +0 -90
  190. package/dist/lib/validation/at-rules/custom-media.js +0 -50
  191. package/dist/lib/validation/at-rules/document.js +0 -89
  192. package/dist/lib/validation/at-rules/else.js +0 -5
  193. package/dist/lib/validation/at-rules/font-feature-values.js +0 -63
  194. package/dist/lib/validation/at-rules/import.js +0 -150
  195. package/dist/lib/validation/at-rules/keyframes.js +0 -67
  196. package/dist/lib/validation/at-rules/layer.js +0 -41
  197. package/dist/lib/validation/at-rules/media.js +0 -255
  198. package/dist/lib/validation/at-rules/namespace.js +0 -81
  199. package/dist/lib/validation/at-rules/page-margin-box.js +0 -64
  200. package/dist/lib/validation/at-rules/page.js +0 -100
  201. package/dist/lib/validation/at-rules/supports.js +0 -295
  202. package/dist/lib/validation/at-rules/when.js +0 -185
  203. package/dist/lib/validation/atrule.js +0 -184
  204. package/dist/lib/validation/selector.js +0 -36
  205. package/dist/lib/validation/syntax.js +0 -1073
  206. package/dist/lib/validation/syntaxes/complex-selector-list.js +0 -27
  207. package/dist/lib/validation/syntaxes/complex-selector.js +0 -52
  208. package/dist/lib/validation/syntaxes/compound-selector.js +0 -196
  209. package/dist/lib/validation/syntaxes/family-name.js +0 -57
  210. package/dist/lib/validation/syntaxes/keyframe-selector.js +0 -36
  211. package/dist/lib/validation/syntaxes/layer-name.js +0 -57
  212. package/dist/lib/validation/syntaxes/relative-selector-list.js +0 -31
  213. package/dist/lib/validation/syntaxes/relative-selector.js +0 -38
  214. package/dist/lib/validation/syntaxes/selector-list.js +0 -5
  215. package/dist/lib/validation/syntaxes/selector.js +0 -5
  216. package/dist/lib/validation/syntaxes/url.js +0 -40
@@ -60,7 +60,7 @@ var declarations = {
60
60
  syntax: "auto | after"
61
61
  },
62
62
  "-ms-overflow-style": {
63
- syntax: "auto | none | scrollbar | -ms-autohiding-scrollbar auto | none | scrollbar | -ms-autohiding-scrollbar"
63
+ syntax: " auto | none | scrollbar | -ms-autohiding-scrollbar"
64
64
  },
65
65
  "-ms-scroll-chaining": {
66
66
  syntax: "chained | none"
@@ -210,19 +210,55 @@ var declarations = {
210
210
  syntax: "default | menu | tooltip | sheet | none"
211
211
  },
212
212
  "-webkit-appearance": {
213
- syntax: "none | button | button-bevel | caret | checkbox | default-button | inner-spin-button | listbox | listitem | media-controls-background | media-controls-fullscreen-background | media-current-time-display | media-enter-fullscreen-button | media-exit-fullscreen-button | media-fullscreen-button | media-mute-button | media-overlay-play-button | media-play-button | media-seek-back-button | media-seek-forward-button | media-slider | media-sliderthumb | media-time-remaining-display | media-toggle-closed-captions-button | media-volume-slider | media-volume-slider-container | media-volume-sliderthumb | menulist | menulist-button | menulist-text | menulist-textfield | meter | progress-bar | progress-bar-value | push-button | radio | searchfield | searchfield-cancel-button | searchfield-decoration | searchfield-results-button | searchfield-results-decoration | slider-horizontal | slider-vertical | sliderthumb-horizontal | sliderthumb-vertical | square-button | textarea | textfield | -apple-pay-button none | button | button-bevel | caps-lock-indicator | caret | checkbox | default-button | inner-spin-button | listbox | listitem | media-controls-background | media-controls-fullscreen-background | media-current-time-display | media-enter-fullscreen-button | media-exit-fullscreen-button | media-fullscreen-button | media-mute-button | media-overlay-play-button | media-play-button | media-seek-back-button | media-seek-forward-button | media-slider | media-sliderthumb | media-time-remaining-display | media-toggle-closed-captions-button | media-volume-slider | media-volume-slider-container | media-volume-sliderthumb | menulist | menulist-button | menulist-text | menulist-textfield | meter | progress-bar | progress-bar-value | push-button | radio | scrollbarbutton-down | scrollbarbutton-left | scrollbarbutton-right | scrollbarbutton-up | scrollbargripper-horizontal | scrollbargripper-vertical | scrollbarthumb-horizontal | scrollbarthumb-vertical | scrollbartrack-horizontal | scrollbartrack-vertical | searchfield | searchfield-cancel-button | searchfield-decoration | searchfield-results-button | searchfield-results-decoration | slider-horizontal | slider-vertical | sliderthumb-horizontal | sliderthumb-vertical | square-button | textarea | textfield | -apple-pay-button"
213
+ syntax: " none | button | button-bevel | caps-lock-indicator | caret | checkbox | default-button | inner-spin-button | listbox | listitem | media-controls-background | media-controls-fullscreen-background | media-current-time-display | media-enter-fullscreen-button | media-exit-fullscreen-button | media-fullscreen-button | media-mute-button | media-overlay-play-button | media-play-button | media-seek-back-button | media-seek-forward-button | media-slider | media-sliderthumb | media-time-remaining-display | media-toggle-closed-captions-button | media-volume-slider | media-volume-slider-container | media-volume-sliderthumb | menulist | menulist-button | menulist-text | menulist-textfield | meter | progress-bar | progress-bar-value | push-button | radio | scrollbarbutton-down | scrollbarbutton-left | scrollbarbutton-right | scrollbarbutton-up | scrollbargripper-horizontal | scrollbargripper-vertical | scrollbarthumb-horizontal | scrollbarthumb-vertical | scrollbartrack-horizontal | scrollbartrack-vertical | searchfield | searchfield-cancel-button | searchfield-decoration | searchfield-results-button | searchfield-results-decoration | slider-horizontal | slider-vertical | sliderthumb-horizontal | sliderthumb-vertical | square-button | textarea | textfield | -apple-pay-button"
214
+ },
215
+ "-webkit-border-after": {
216
+ syntax: "<'border-top'>"
217
+ },
218
+ "-webkit-border-after-color": {
219
+ syntax: "<'border-top-color'>"
220
+ },
221
+ "-webkit-border-after-style": {
222
+ syntax: "<'border-top-style'>"
223
+ },
224
+ "-webkit-border-after-width": {
225
+ syntax: "<'border-top-width'>"
214
226
  },
215
227
  "-webkit-border-before": {
216
- syntax: "<'border-width'> || <'border-style'> || <color>"
228
+ syntax: "<'border-top'>"
217
229
  },
218
230
  "-webkit-border-before-color": {
219
- syntax: "<color>"
231
+ syntax: "<'border-top-color'>"
220
232
  },
221
233
  "-webkit-border-before-style": {
222
- syntax: "<'border-style'>"
234
+ syntax: "<'border-top-style'>"
223
235
  },
224
236
  "-webkit-border-before-width": {
225
- syntax: "<'border-width'>"
237
+ syntax: "<'border-top-width'>"
238
+ },
239
+ "-webkit-border-end": {
240
+ syntax: "<'border-top'>"
241
+ },
242
+ "-webkit-border-end-color": {
243
+ syntax: "<'border-top-color'>"
244
+ },
245
+ "-webkit-border-end-style": {
246
+ syntax: "<'border-top-style'>"
247
+ },
248
+ "-webkit-border-end-width": {
249
+ syntax: "<'border-top-width'>"
250
+ },
251
+ "-webkit-border-start": {
252
+ syntax: "<'border-top'>"
253
+ },
254
+ "-webkit-border-start-color": {
255
+ syntax: "<'border-top-color'>"
256
+ },
257
+ "-webkit-border-start-style": {
258
+ syntax: "<'border-top-style'>"
259
+ },
260
+ "-webkit-border-start-width": {
261
+ syntax: "<'border-top-width'>"
226
262
  },
227
263
  "-webkit-box-reflect": {
228
264
  syntax: "[ above | below | right | left ]? <length>? <image>?"
@@ -294,7 +330,7 @@ var declarations = {
294
330
  syntax: "read-only | read-write | read-write-plaintext-only"
295
331
  },
296
332
  "-webkit-user-select": {
297
- syntax: "auto | text | none | all auto | none | text | all"
333
+ syntax: " auto | none | text | all"
298
334
  },
299
335
  "accent-color": {
300
336
  syntax: "auto | <color>"
@@ -312,7 +348,7 @@ var declarations = {
312
348
  syntax: "[ normal | <baseline-position> | <content-distribution> | <overflow-position>? <content-position> ]#"
313
349
  },
314
350
  "alignment-baseline": {
315
- syntax: "baseline | alphabetic | ideographic | middle | central | mathematical | text-before-edge | text-after-edge auto | baseline | before-edge | text-before-edge | middle | central | after-edge | text-after-edge | ideographic | alphabetic | hanging | mathematical"
351
+ syntax: " auto | baseline | before-edge | text-before-edge | middle | central | after-edge | text-after-edge | ideographic | alphabetic | hanging | mathematical"
316
352
  },
317
353
  all: {
318
354
  syntax: "initial | inherit | unset | revert | revert-layer"
@@ -365,6 +401,9 @@ var declarations = {
365
401
  "animation-timing-function": {
366
402
  syntax: "<easing-function>#"
367
403
  },
404
+ "animation-trigger": {
405
+ syntax: "[ none | [ <dashed-ident> <animation-action>+ ]+ ]#"
406
+ },
368
407
  appearance: {
369
408
  syntax: "none | auto | <compat-auto> | <compat-special>"
370
409
  },
@@ -414,7 +453,10 @@ var declarations = {
414
453
  syntax: "<bg-size>#"
415
454
  },
416
455
  "baseline-shift": {
417
- syntax: "<length-percentage> | sub | super | baseline baseline | sub | super | <svg-length>"
456
+ syntax: " baseline | sub | super | <svg-length>"
457
+ },
458
+ "baseline-source": {
459
+ syntax: "auto | first | last"
418
460
  },
419
461
  "block-size": {
420
462
  syntax: "<'width'>"
@@ -423,13 +465,13 @@ var declarations = {
423
465
  syntax: "<line-width> || <line-style> || <color>"
424
466
  },
425
467
  "border-block": {
426
- syntax: "<'border-block-start'>"
468
+ syntax: "<'border-top'>"
427
469
  },
428
470
  "border-block-color": {
429
471
  syntax: "<'border-top-color'>{1,2}"
430
472
  },
431
473
  "border-block-end": {
432
- syntax: "<'border-top-width'> || <'border-top-style'> || <color>"
474
+ syntax: "<'border-top'>"
433
475
  },
434
476
  "border-block-end-color": {
435
477
  syntax: "<'border-top-color'>"
@@ -441,7 +483,7 @@ var declarations = {
441
483
  syntax: "<'border-top-width'>"
442
484
  },
443
485
  "border-block-start": {
444
- syntax: "<'border-top-width'> || <'border-top-style'> || <color>"
486
+ syntax: "<'border-top'>"
445
487
  },
446
488
  "border-block-start-color": {
447
489
  syntax: "<'border-top-color'>"
@@ -492,13 +534,13 @@ var declarations = {
492
534
  syntax: "<'border-image-source'> || <'border-image-slice'> [ / <'border-image-width'> | / <'border-image-width'>? / <'border-image-outset'> ]? || <'border-image-repeat'>"
493
535
  },
494
536
  "border-image-outset": {
495
- syntax: "[ <length [0,∞]> | <number [0,∞]> ]{1,4} "
537
+ syntax: "[ <length [0,∞]> | <number [0,∞]> ]{1,4}"
496
538
  },
497
539
  "border-image-repeat": {
498
540
  syntax: "[ stretch | repeat | round | space ]{1,2}"
499
541
  },
500
542
  "border-image-slice": {
501
- syntax: "[ <number [0,∞]> | <percentage [0,∞]> ]{1,4} && fill?"
543
+ syntax: "[ <number [0,∞]> | <percentage [0,∞]> ]{1,4} && fill?"
502
544
  },
503
545
  "border-image-source": {
504
546
  syntax: "none | <image>"
@@ -507,13 +549,13 @@ var declarations = {
507
549
  syntax: "[ <length-percentage [0,∞]> | <number [0,∞]> | auto ]{1,4}"
508
550
  },
509
551
  "border-inline": {
510
- syntax: "<'border-block-start'>"
552
+ syntax: "<'border-top'>"
511
553
  },
512
554
  "border-inline-color": {
513
555
  syntax: "<'border-top-color'>{1,2}"
514
556
  },
515
557
  "border-inline-end": {
516
- syntax: "<'border-top-width'> || <'border-top-style'> || <color>"
558
+ syntax: "<'border-top'>"
517
559
  },
518
560
  "border-inline-end-color": {
519
561
  syntax: "<'border-top-color'>"
@@ -525,7 +567,7 @@ var declarations = {
525
567
  syntax: "<'border-top-width'>"
526
568
  },
527
569
  "border-inline-start": {
528
- syntax: "<'border-top-width'> || <'border-top-style'> || <color>"
570
+ syntax: "<'border-top'>"
529
571
  },
530
572
  "border-inline-start-color": {
531
573
  syntax: "<'border-top-color'>"
@@ -569,6 +611,9 @@ var declarations = {
569
611
  "border-right-width": {
570
612
  syntax: "<line-width>"
571
613
  },
614
+ "border-shape": {
615
+ syntax: "none | [ <basic-shape> <geometry-box>?]{1,2}"
616
+ },
572
617
  "border-spacing": {
573
618
  syntax: "<length>{1,2}"
574
619
  },
@@ -651,7 +696,10 @@ var declarations = {
651
696
  syntax: "top | bottom"
652
697
  },
653
698
  caret: {
654
- syntax: "<'caret-color'> || <'caret-shape'>"
699
+ syntax: "<'caret-color'> || <'caret-animation'> || <'caret-shape'>"
700
+ },
701
+ "caret-animation": {
702
+ syntax: "auto | manual"
655
703
  },
656
704
  "caret-color": {
657
705
  syntax: "auto | <color>"
@@ -689,6 +737,9 @@ var declarations = {
689
737
  "column-gap": {
690
738
  syntax: "normal | <length-percentage>"
691
739
  },
740
+ "column-height": {
741
+ syntax: "auto | <length [0,∞]>"
742
+ },
692
743
  "column-rule": {
693
744
  syntax: "<'column-rule-width'> || <'column-rule-style'> || <'column-rule-color'>"
694
745
  },
@@ -696,19 +747,22 @@ var declarations = {
696
747
  syntax: "<color>"
697
748
  },
698
749
  "column-rule-style": {
699
- syntax: "<'border-style'>"
750
+ syntax: "<line-style>"
700
751
  },
701
752
  "column-rule-width": {
702
- syntax: "<'border-width'>"
753
+ syntax: "<line-width>"
703
754
  },
704
755
  "column-span": {
705
756
  syntax: "none | all"
706
757
  },
707
758
  "column-width": {
708
- syntax: "<length> | auto"
759
+ syntax: "auto | <length [0,∞]>"
760
+ },
761
+ "column-wrap": {
762
+ syntax: "auto | nowrap | wrap"
709
763
  },
710
764
  columns: {
711
- syntax: "<'column-width'> || <'column-count'>"
765
+ syntax: "[ <'column-width'> || <'column-count'> ] [ / <'column-height'> ]?"
712
766
  },
713
767
  contain: {
714
768
  syntax: "none | strict | content | [ [ size || inline-size ] || layout || style || paint ]"
@@ -743,6 +797,57 @@ var declarations = {
743
797
  "content-visibility": {
744
798
  syntax: "visible | auto | hidden"
745
799
  },
800
+ "corner-block-end-shape": {
801
+ syntax: "<corner-shape-value>{1,2}"
802
+ },
803
+ "corner-block-start-shape": {
804
+ syntax: "<corner-shape-value>{1,2}"
805
+ },
806
+ "corner-bottom-shape": {
807
+ syntax: "<corner-shape-value>{1,2}"
808
+ },
809
+ "corner-bottom-left-shape": {
810
+ syntax: "<corner-shape-value>"
811
+ },
812
+ "corner-bottom-right-shape": {
813
+ syntax: "<corner-shape-value>"
814
+ },
815
+ "corner-end-end-shape": {
816
+ syntax: "<corner-shape-value>"
817
+ },
818
+ "corner-end-start-shape": {
819
+ syntax: "<corner-shape-value>"
820
+ },
821
+ "corner-inline-end-shape": {
822
+ syntax: "<corner-shape-value>{1,2}"
823
+ },
824
+ "corner-inline-start-shape": {
825
+ syntax: "<corner-shape-value>{1,2}"
826
+ },
827
+ "corner-left-shape": {
828
+ syntax: "<corner-shape-value>{1,2}"
829
+ },
830
+ "corner-right-shape": {
831
+ syntax: "<corner-shape-value>{1,2}"
832
+ },
833
+ "corner-shape": {
834
+ syntax: "<corner-shape-value>{1,4}"
835
+ },
836
+ "corner-start-start-shape": {
837
+ syntax: "<corner-shape-value>"
838
+ },
839
+ "corner-start-end-shape": {
840
+ syntax: "<corner-shape-value>"
841
+ },
842
+ "corner-top-shape": {
843
+ syntax: "<corner-shape-value>{1,2}"
844
+ },
845
+ "corner-top-left-shape": {
846
+ syntax: "<corner-shape-value>"
847
+ },
848
+ "corner-top-right-shape": {
849
+ syntax: "<corner-shape-value>"
850
+ },
746
851
  "counter-increment": {
747
852
  syntax: "[ <counter-name> <integer>? ]+ | none"
748
853
  },
@@ -753,7 +858,7 @@ var declarations = {
753
858
  syntax: "[ <counter-name> <integer>? ]+ | none"
754
859
  },
755
860
  cursor: {
756
- syntax: "[ [ <url> [ <x> <y> ]? , ]* <cursor-predefined> ] [ [ <url> [ <x> <y> ]? , ]* [ auto | default | none | context-menu | help | pointer | progress | wait | cell | crosshair | text | vertical-text | alias | copy | move | no-drop | not-allowed | e-resize | n-resize | ne-resize | nw-resize | s-resize | se-resize | sw-resize | w-resize | ew-resize | ns-resize | nesw-resize | nwse-resize | col-resize | row-resize | all-scroll | zoom-in | zoom-out | grab | grabbing | hand | -webkit-grab | -webkit-grabbing | -webkit-zoom-in | -webkit-zoom-out | -moz-grab | -moz-grabbing | -moz-zoom-in | -moz-zoom-out ] ]"
861
+ syntax: "<cursor-predefined> | [ [ <url> [ <x> <y> ]? , ]* [ auto | default | none | context-menu | help | pointer | progress | wait | cell | crosshair | text | vertical-text | alias | copy | move | no-drop | not-allowed | e-resize | n-resize | ne-resize | nw-resize | s-resize | se-resize | sw-resize | w-resize | ew-resize | ns-resize | nesw-resize | nwse-resize | col-resize | row-resize | all-scroll | zoom-in | zoom-out | grab | grabbing | hand | -webkit-grab | -webkit-grabbing | -webkit-zoom-in | -webkit-zoom-out | -moz-grab | -moz-grabbing | -moz-zoom-in | -moz-zoom-out ] ]"
757
862
  },
758
863
  cx: {
759
864
  syntax: "<length> | <percentage>"
@@ -771,7 +876,10 @@ var declarations = {
771
876
  syntax: "[ <display-outside> || <display-inside> ] | <display-listitem> | <display-internal> | <display-box> | <display-legacy> | <-non-standard-display>"
772
877
  },
773
878
  "dominant-baseline": {
774
- syntax: "auto | text-bottom | alphabetic | ideographic | middle | central | mathematical | hanging | text-top auto | use-script | no-change | reset-size | ideographic | alphabetic | hanging | mathematical | central | middle | text-after-edge | text-before-edge"
879
+ syntax: " auto | use-script | no-change | reset-size | ideographic | alphabetic | hanging | mathematical | central | middle | text-after-edge | text-before-edge"
880
+ },
881
+ "dynamic-range-limit": {
882
+ syntax: "standard | no-limit | constrained | <dynamic-range-limit-mix()>"
775
883
  },
776
884
  "empty-cells": {
777
885
  syntax: "show | hide"
@@ -783,7 +891,7 @@ var declarations = {
783
891
  syntax: "<paint>"
784
892
  },
785
893
  "fill-opacity": {
786
- syntax: "<'opacity'> <number-zero-one>"
894
+ syntax: " <number-zero-one> | <percentage>"
787
895
  },
788
896
  "fill-rule": {
789
897
  syntax: "nonzero | evenodd"
@@ -822,7 +930,7 @@ var declarations = {
822
930
  syntax: "<'opacity'>"
823
931
  },
824
932
  font: {
825
- syntax: "[ [ <'font-style'> || <font-variant-css2> || <'font-weight'> || <font-width-css3> ]? <'font-size'> [ / <'line-height'> ]? <'font-family'># ] | <system-family-name> [ [ <'font-style'> || <font-variant-css2> || <'font-weight'> || <font-width-css3> ]? <'font-size'> [ / <'line-height'> ]? <'font-family'># ] | <system-family-name> | <-non-standard-font>"
933
+ syntax: " [ [ <'font-style'> || <font-variant-css2> || <'font-weight'> || <font-width-css3> ]? <'font-size'> [ / <'line-height'> ]? <'font-family'># ] | <system-family-name> | <-non-standard-font> | [ <'font-size'> [ / <'line-height'> ]? <'font-family'># ]"
826
934
  },
827
935
  "font-family": {
828
936
  syntax: "[ <family-name> | <generic-family> ]#"
@@ -1028,6 +1136,18 @@ var declarations = {
1028
1136
  isolation: {
1029
1137
  syntax: "auto | isolate"
1030
1138
  },
1139
+ interactivity: {
1140
+ syntax: "auto | inert"
1141
+ },
1142
+ "interest-delay": {
1143
+ syntax: "<'interest-delay-start'>{1,2}"
1144
+ },
1145
+ "interest-delay-end": {
1146
+ syntax: "normal | <time>"
1147
+ },
1148
+ "interest-delay-start": {
1149
+ syntax: "normal | <time>"
1150
+ },
1031
1151
  "justify-content": {
1032
1152
  syntax: "normal | <content-distribution> | <overflow-position>? [ <content-position> | left | right ]"
1033
1153
  },
@@ -1044,7 +1164,7 @@ var declarations = {
1044
1164
  syntax: "auto | <length-percentage> | <anchor()> | <anchor-size()>"
1045
1165
  },
1046
1166
  "letter-spacing": {
1047
- syntax: "normal | <length> normal | <length-percentage>"
1167
+ syntax: " normal | <length-percentage>"
1048
1168
  },
1049
1169
  "lighting-color": {
1050
1170
  syntax: "<color>"
@@ -1272,7 +1392,7 @@ var declarations = {
1272
1392
  syntax: "auto | none"
1273
1393
  },
1274
1394
  "overflow-block": {
1275
- syntax: "visible | hidden | clip | scroll | auto"
1395
+ syntax: "visible | hidden | clip | scroll | auto | <-non-standard-overflow>"
1276
1396
  },
1277
1397
  "overflow-clip-box": {
1278
1398
  syntax: "padding-box | content-box"
@@ -1281,7 +1401,7 @@ var declarations = {
1281
1401
  syntax: "<visual-box> || <length [0,∞]>"
1282
1402
  },
1283
1403
  "overflow-inline": {
1284
- syntax: "visible | hidden | clip | scroll | auto"
1404
+ syntax: "visible | hidden | clip | scroll | auto | <-non-standard-overflow>"
1285
1405
  },
1286
1406
  "overflow-wrap": {
1287
1407
  syntax: "normal | break-word | anywhere"
@@ -1380,7 +1500,7 @@ var declarations = {
1380
1500
  syntax: "static | relative | absolute | sticky | fixed | -webkit-sticky"
1381
1501
  },
1382
1502
  "position-anchor": {
1383
- syntax: "auto | <anchor-name>"
1503
+ syntax: "normal | auto | none | <anchor-name> | match-parent"
1384
1504
  },
1385
1505
  "position-area": {
1386
1506
  syntax: "none | <position-area>"
@@ -1406,6 +1526,12 @@ var declarations = {
1406
1526
  r: {
1407
1527
  syntax: "<length> | <percentage>"
1408
1528
  },
1529
+ "reading-flow": {
1530
+ syntax: "normal | source-order | flex-visual | flex-flow | grid-rows | grid-columns | grid-order"
1531
+ },
1532
+ "reading-order": {
1533
+ syntax: "<integer>"
1534
+ },
1409
1535
  resize: {
1410
1536
  syntax: "none | both | horizontal | vertical | block | inline"
1411
1537
  },
@@ -1431,10 +1557,10 @@ var declarations = {
1431
1557
  syntax: "[ alternate || [ over | under ] ] | inter-character"
1432
1558
  },
1433
1559
  rx: {
1434
- syntax: "<length> | <percentage>"
1560
+ syntax: "<length-percentage> | auto"
1435
1561
  },
1436
1562
  ry: {
1437
- syntax: "<length> | <percentage>"
1563
+ syntax: "<length-percentage> | auto"
1438
1564
  },
1439
1565
  scale: {
1440
1566
  syntax: "none | [ <number> | <percentage> ]{1,3}"
@@ -1478,6 +1604,9 @@ var declarations = {
1478
1604
  "scroll-margin-top": {
1479
1605
  syntax: "<length>"
1480
1606
  },
1607
+ "scroll-marker-group": {
1608
+ syntax: "none | before | after"
1609
+ },
1481
1610
  "scroll-padding": {
1482
1611
  syntax: "[ auto | <length-percentage> ]{1,4}"
1483
1612
  },
@@ -1538,6 +1667,9 @@ var declarations = {
1538
1667
  "scroll-snap-type-y": {
1539
1668
  syntax: "none | mandatory | proximity"
1540
1669
  },
1670
+ "scroll-target-group": {
1671
+ syntax: "none | auto"
1672
+ },
1541
1673
  "scroll-timeline": {
1542
1674
  syntax: "[ <'scroll-timeline-name'> <'scroll-timeline-axis'>? ]#"
1543
1675
  },
@@ -1584,25 +1716,25 @@ var declarations = {
1584
1716
  syntax: "<color>"
1585
1717
  },
1586
1718
  "stroke-dasharray": {
1587
- syntax: "none | <dasharray> none | [ <svg-length>+ ]#"
1719
+ syntax: " none | [ <svg-length>+ ]#"
1588
1720
  },
1589
1721
  "stroke-dashoffset": {
1590
- syntax: "<length-percentage> | <number> <svg-length>"
1722
+ syntax: " <svg-length>"
1591
1723
  },
1592
1724
  "stroke-linecap": {
1593
1725
  syntax: "butt | round | square"
1594
1726
  },
1595
1727
  "stroke-linejoin": {
1596
- syntax: "miter | miter-clip | round | bevel | arcs miter | round | bevel"
1728
+ syntax: " miter | round | bevel | arcs | crop | fallback | miter-clip"
1597
1729
  },
1598
1730
  "stroke-miterlimit": {
1599
- syntax: "<number> <number-one-or-greater>"
1731
+ syntax: " <number-one-or-greater>"
1600
1732
  },
1601
1733
  "stroke-opacity": {
1602
1734
  syntax: "<'opacity'>"
1603
1735
  },
1604
1736
  "stroke-width": {
1605
- syntax: "<length-percentage> | <number> <svg-length>"
1737
+ syntax: " [ <length-percentage> | <line-width> | <number> ]# "
1606
1738
  },
1607
1739
  "tab-size": {
1608
1740
  syntax: "<integer> | <length>"
@@ -1640,6 +1772,9 @@ var declarations = {
1640
1772
  "text-decoration-color": {
1641
1773
  syntax: "<color>"
1642
1774
  },
1775
+ "text-decoration-inset": {
1776
+ syntax: "<length>{1,2} | auto"
1777
+ },
1643
1778
  "text-decoration-line": {
1644
1779
  syntax: "none | [ underline || overline || line-through || blink ] | spelling-error | grammar-error"
1645
1780
  },
@@ -1653,7 +1788,7 @@ var declarations = {
1653
1788
  syntax: "solid | double | dotted | dashed | wavy"
1654
1789
  },
1655
1790
  "text-decoration-thickness": {
1656
- syntax: "auto | from-font | <length> | <percentage> "
1791
+ syntax: "auto | from-font | <length> | <percentage>"
1657
1792
  },
1658
1793
  "text-emphasis": {
1659
1794
  syntax: "<'text-emphasis-style'> || <'text-emphasis-color'>"
@@ -1695,7 +1830,7 @@ var declarations = {
1695
1830
  syntax: "none | [ capitalize | uppercase | lowercase ] || full-width || full-size-kana | math-auto"
1696
1831
  },
1697
1832
  "text-underline-offset": {
1698
- syntax: "auto | <length> | <percentage> "
1833
+ syntax: "auto | <length> | <percentage>"
1699
1834
  },
1700
1835
  "text-underline-position": {
1701
1836
  syntax: "auto | from-font | [ under || [ left | right ] ]"
@@ -1712,6 +1847,33 @@ var declarations = {
1712
1847
  "timeline-scope": {
1713
1848
  syntax: "none | <dashed-ident>#"
1714
1849
  },
1850
+ "timeline-trigger": {
1851
+ syntax: "none | [ <'timeline-trigger-name'> <'timeline-trigger-source'> <'timeline-trigger-activation-range'> [ '/' <'timeline-trigger-active-range'> ]? ]#"
1852
+ },
1853
+ "timeline-trigger-activation-range": {
1854
+ syntax: "[ <'timeline-trigger-activation-range-start'> <'timeline-trigger-activation-range-end'>? ]#"
1855
+ },
1856
+ "timeline-trigger-activation-range-end": {
1857
+ syntax: "[ normal | <length-percentage> | <timeline-range-name> <length-percentage>? ]#"
1858
+ },
1859
+ "timeline-trigger-activation-range-start": {
1860
+ syntax: "[ normal | <length-percentage> | <timeline-range-name> <length-percentage>? ]#"
1861
+ },
1862
+ "timeline-trigger-active-range": {
1863
+ syntax: "[ <'timeline-trigger-active-range-start'> <'timeline-trigger-active-range-end'>? ]#"
1864
+ },
1865
+ "timeline-trigger-active-range-end": {
1866
+ syntax: "[ auto | normal | <length-percentage> | <timeline-range-name> <length-percentage>? ]#"
1867
+ },
1868
+ "timeline-trigger-active-range-start": {
1869
+ syntax: "[ auto | normal | <length-percentage> | <timeline-range-name> <length-percentage>? ]#"
1870
+ },
1871
+ "timeline-trigger-name": {
1872
+ syntax: "none | <dashed-ident>#"
1873
+ },
1874
+ "timeline-trigger-source": {
1875
+ syntax: "<single-animation-timeline>#"
1876
+ },
1715
1877
  top: {
1716
1878
  syntax: "auto | <length-percentage> | <anchor()> | <anchor-size()>"
1717
1879
  },
@@ -1725,7 +1887,7 @@ var declarations = {
1725
1887
  syntax: "content-box | border-box | fill-box | stroke-box | view-box"
1726
1888
  },
1727
1889
  "transform-origin": {
1728
- syntax: "[ <length-percentage> | left | center | right | top | bottom ] | [ [ <length-percentage> | left | center | right ] && [ <length-percentage> | top | center | bottom ] ] <length>?"
1890
+ syntax: " [ left | center | right | top | bottom | <length-percentage> ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ] <length>? | [ [ center | left | right ] && [ center | top | bottom ] ] <length>?"
1729
1891
  },
1730
1892
  "transform-style": {
1731
1893
  syntax: "flat | preserve-3d"
@@ -1751,6 +1913,9 @@ var declarations = {
1751
1913
  translate: {
1752
1914
  syntax: "none | <length-percentage> [ <length-percentage> <length>? ]?"
1753
1915
  },
1916
+ "trigger-scope": {
1917
+ syntax: "none | all | <dashed-ident>#"
1918
+ },
1754
1919
  "unicode-bidi": {
1755
1920
  syntax: "normal | embed | isolate | bidi-override | isolate-override | plaintext | -moz-isolate | -moz-isolate-override | -moz-plaintext | -webkit-isolate | -webkit-isolate-override | -webkit-plaintext"
1756
1921
  },
@@ -1781,6 +1946,9 @@ var declarations = {
1781
1946
  "view-transition-name": {
1782
1947
  syntax: "none | <custom-ident> | match-element"
1783
1948
  },
1949
+ "view-transition-scope": {
1950
+ syntax: "none | all"
1951
+ },
1784
1952
  visibility: {
1785
1953
  syntax: "visible | hidden | collapse"
1786
1954
  },
@@ -1982,11 +2150,14 @@ var declarations = {
1982
2150
  "white-space-trim": {
1983
2151
  syntax: "none | discard-before || discard-after || discard-inner"
1984
2152
  },
2153
+ "-moz-padding-start": {
2154
+ syntax: "<'padding-top'>"
2155
+ },
2156
+ "-webkit-margin-end": {
2157
+ syntax: "<'margin-block-end'>"
2158
+ },
1985
2159
  composes: {
1986
2160
  syntax: "<composes-selector>#"
1987
- },
1988
- "composes-selector": {
1989
- syntax: "<ident>+ [from [global&&<string>]]?"
1990
2161
  }
1991
2162
  };
1992
2163
  var functions = {
@@ -2352,6 +2523,9 @@ var syntaxes = {
2352
2523
  "animateable-feature": {
2353
2524
  syntax: "scroll-position | contents | <custom-ident>"
2354
2525
  },
2526
+ "animation-action": {
2527
+ syntax: "none | play | play-once | play-forwards | play-backwards | pause | reset | replay"
2528
+ },
2355
2529
  "asin()": {
2356
2530
  syntax: "asin( <calc-sum> )"
2357
2531
  },
@@ -2392,7 +2566,7 @@ var syntaxes = {
2392
2566
  syntax: "[ first | last ]? baseline"
2393
2567
  },
2394
2568
  "basic-shape": {
2395
- syntax: "<inset()> | <xywh()> | <rect()> | <circle()> | <ellipse()> | <polygon()> | <path()>"
2569
+ syntax: "<inset()> | <xywh()> | <rect()> | <circle()> | <ellipse()> | <polygon()> | <path()> | shape()"
2396
2570
  },
2397
2571
  "basic-shape-rect": {
2398
2572
  syntax: "<inset()> | <rect()> | <xywh()>"
@@ -2407,7 +2581,7 @@ var syntaxes = {
2407
2581
  syntax: "<bg-image> || <bg-position> [ / <bg-size> ]? || <repeat-style> || <attachment> || <visual-box> || <visual-box>"
2408
2582
  },
2409
2583
  "bg-position": {
2410
- syntax: "[ [ left | center | right | top | bottom | <length-percentage> ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ] | [ center | [ left | right ] <length-percentage>? ] && [ center | [ top | bottom ] <length-percentage>? ] ]"
2584
+ syntax: "<position> | <position-three>"
2411
2585
  },
2412
2586
  "bg-size": {
2413
2587
  syntax: "[ <length-percentage [0,∞]> | auto ]{1,2} | cover | contain"
@@ -2464,7 +2638,7 @@ var syntaxes = {
2464
2638
  syntax: "<color-base> | currentColor | <system-color> | <device-cmyk()> | <light-dark()> | <-non-standard-color>"
2465
2639
  },
2466
2640
  "color()": {
2467
- syntax: "color( <colorspace-params> [ / [ <alpha-value> | none ] ]? )"
2641
+ syntax: "color( [from <color>]? <colorspace-params> [ / [ <alpha-value> | none ] ]? )"
2468
2642
  },
2469
2643
  "color-base": {
2470
2644
  syntax: "<hex-color> | <color-function> | <named-color> | <color-mix()> | transparent"
@@ -2491,7 +2665,7 @@ var syntaxes = {
2491
2665
  syntax: "<linear-color-stop> , [ <linear-color-hint>? , <linear-color-stop> ]#?"
2492
2666
  },
2493
2667
  "colorspace-params": {
2494
- syntax: "[ <predefined-rgb-params> | <xyz-params>]"
2668
+ syntax: "[<custom-params> | <predefined-rgb-params> | <xyz-params>]"
2495
2669
  },
2496
2670
  combinator: {
2497
2671
  syntax: "'>' | '+' | '~' | [ '|' '|' ]"
@@ -2530,7 +2704,7 @@ var syntaxes = {
2530
2704
  syntax: "[ [ [ from [ <angle> | <zero> ] ]? [ at <position> ]? ] || <color-interpolation-method> ]? , <angular-color-stop-list>"
2531
2705
  },
2532
2706
  "container-condition": {
2533
- syntax: "not <query-in-parens> | <query-in-parens> [ [ and <query-in-parens> ]* | [ or <query-in-parens> ]* ]"
2707
+ syntax: "[ <container-name>? <container-query>? ]!"
2534
2708
  },
2535
2709
  "container-name": {
2536
2710
  syntax: "<custom-ident>"
@@ -2559,6 +2733,9 @@ var syntaxes = {
2559
2733
  "coord-box": {
2560
2734
  syntax: "content-box | padding-box | border-box | fill-box | stroke-box | view-box"
2561
2735
  },
2736
+ "corner-shape-value": {
2737
+ syntax: "round | scoop | bevel | notch | square | squircle | <superellipse()>"
2738
+ },
2562
2739
  "cos()": {
2563
2740
  syntax: "cos( <calc-sum> )"
2564
2741
  },
@@ -2631,6 +2808,9 @@ var syntaxes = {
2631
2808
  "drop-shadow()": {
2632
2809
  syntax: "drop-shadow( [ <color>? && <length>{2,3} ] )"
2633
2810
  },
2811
+ "dynamic-range-limit-mix()": {
2812
+ syntax: "dynamic-range-limit-mix( [ <'dynamic-range-limit'> && <percentage [0,100]> ]#{2,} )"
2813
+ },
2634
2814
  "easing-function": {
2635
2815
  syntax: "<linear-easing-function> | <cubic-bezier-easing-function> | <step-easing-function>"
2636
2816
  },
@@ -2647,7 +2827,7 @@ var syntaxes = {
2647
2827
  syntax: "ellipse( <radial-size>? [ at <position> ]? )"
2648
2828
  },
2649
2829
  "env()": {
2650
- syntax: "env( <custom-ident> , <declaration-value>? )"
2830
+ syntax: "env( <custom-ident> <integer [0,∞]>* , <declaration-value>? )"
2651
2831
  },
2652
2832
  "exp()": {
2653
2833
  syntax: "exp( <calc-sum> )"
@@ -2734,7 +2914,7 @@ var syntaxes = {
2734
2914
  syntax: "<shape-box> | fill-box | stroke-box | view-box"
2735
2915
  },
2736
2916
  gradient: {
2737
- syntax: "| <-legacy-gradient>"
2917
+ syntax: "<linear-gradient()> | <repeating-linear-gradient()> | <radial-gradient()> | <repeating-radial-gradient()> | <conic-gradient()> | <repeating-conic-gradient()> | <-legacy-gradient>"
2738
2918
  },
2739
2919
  "grayscale()": {
2740
2920
  syntax: "grayscale( [ <number> | <percentage> ]? )"
@@ -2986,7 +3166,7 @@ var syntaxes = {
2986
3166
  syntax: "oklab( [ <percentage> | <number> | none] [ <percentage> | <number> | none] [ <percentage> | <number> | none] [ / [<alpha-value> | none] ]? )"
2987
3167
  },
2988
3168
  "oklch()": {
2989
- syntax: "oklch( [ <percentage> | <number> | none] [ <percentage> | <number> | none] [ <hue> | none] [ / [<alpha-value> | none] ]? )"
3169
+ syntax: "oklch( [ from <color> ]? [ <percentage> | <number> | none ] [ <percentage> | <number> | none ] [ <hue> | none ] [ / [ <alpha-value> | none ] ]? )"
2990
3170
  },
2991
3171
  "opacity()": {
2992
3172
  syntax: "opacity( [ <number> | <percentage> ]? )"
@@ -3049,7 +3229,7 @@ var syntaxes = {
3049
3229
  syntax: "polygon( <'fill-rule'>? , [ <length-percentage> <length-percentage> ]# )"
3050
3230
  },
3051
3231
  position: {
3052
- syntax: "[ [ left | center | right ] || [ top | center | bottom ] | [ left | center | right | <length-percentage> ] [ top | center | bottom | <length-percentage> ]? | [ [ left | right ] <length-percentage> ] && [ [ top | bottom ] <length-percentage> ] ]"
3232
+ syntax: "<position-one> | <position-two> | <position-four>"
3053
3233
  },
3054
3234
  "position-area": {
3055
3235
  syntax: "[ [ left | center | right | span-left | span-right | x-start | x-end | span-x-start | span-x-end | x-self-start | x-self-end | span-x-self-start | span-x-self-end | span-all ] || [ top | center | bottom | span-top | span-bottom | y-start | y-end | span-y-start | span-y-end | y-self-start | y-self-end | span-y-self-start | span-y-self-end | span-all ] | [ block-start | center | block-end | span-block-start | span-block-end | span-all ] || [ inline-start | center | inline-end | span-inline-start | span-inline-end | span-all ] | [ self-block-start | center | self-block-end | span-self-block-start | span-self-block-end | span-all ] || [ self-inline-start | center | self-inline-end | span-self-inline-start | span-self-inline-end | span-all ] | [ start | center | end | span-start | span-end | span-all ]{1,2} | [ self-start | center | self-end | span-self-start | span-self-end | span-all ]{1,2} ]"
@@ -3058,7 +3238,7 @@ var syntaxes = {
3058
3238
  syntax: "pow( <calc-sum>, <calc-sum> )"
3059
3239
  },
3060
3240
  "predefined-rgb": {
3061
- syntax: "srgb | srgb-linear | display-p3 | a98-rgb | prophoto-rgb | rec2020"
3241
+ syntax: "srgb | srgb-linear | display-p3 | display-p3-linear | a98-rgb | prophoto-rgb | rec2020"
3062
3242
  },
3063
3243
  "predefined-rgb-params": {
3064
3244
  syntax: "<predefined-rgb> [ <number> | <percentage> | none ]{3}"
@@ -3073,7 +3253,7 @@ var syntaxes = {
3073
3253
  syntax: ": [ left | right | first | blank ]"
3074
3254
  },
3075
3255
  "query-in-parens": {
3076
- syntax: "( <container-condition> ) | ( <size-feature> ) | style( <style-query> ) | <general-enclosed>"
3256
+ syntax: "( <container-query> ) | ( <size-feature> ) | style( <style-query> ) | scroll-state( <scroll-state-query> ) | <general-enclosed>"
3077
3257
  },
3078
3258
  quote: {
3079
3259
  syntax: "open-quote | close-quote | no-open-quote | no-close-quote"
@@ -3106,7 +3286,7 @@ var syntaxes = {
3106
3286
  syntax: "rect( [ <length-percentage> | auto ]{4} [ round <'border-radius'> ]? )"
3107
3287
  },
3108
3288
  "rectangular-color-space": {
3109
- syntax: "srgb | srgb-linear | display-p3 | a98-rgb | prophoto-rgb | rec2020 | lab | oklab | xyz | xyz-d50 | xyz-d65"
3289
+ syntax: "srgb | srgb-linear | display-p3 | display-p3-linear | a98-rgb | prophoto-rgb | rec2020 | lab | oklab | xyz | xyz-d50 | xyz-d65"
3110
3290
  },
3111
3291
  "relative-selector": {
3112
3292
  syntax: "<combinator>? <complex-selector>"
@@ -3193,13 +3373,13 @@ var syntaxes = {
3193
3373
  syntax: "root | nearest | self"
3194
3374
  },
3195
3375
  "scroll-state-feature": {
3196
- syntax: "<media-query-list>"
3376
+ syntax: "<scroll-state-feature-plain> | <scroll-state-feature-boolean>"
3197
3377
  },
3198
3378
  "scroll-state-in-parens": {
3199
3379
  syntax: "( <scroll-state-query> ) | ( <scroll-state-feature> ) | <general-enclosed>"
3200
3380
  },
3201
3381
  "scroll-state-query": {
3202
- syntax: "not <scroll-state-in-parens> | <scroll-state-in-parens> [ [ and <scroll-state-in-parens> ]* | [ or <scroll-state-in-parens> ]* ] | <scroll-state-feature> "
3382
+ syntax: " not <scroll-state-in-parens> | <scroll-state-in-parens> [ [ and <scroll-state-in-parens> ]* | [ or <scroll-state-in-parens> ]* ] | <scroll-state-feature>"
3203
3383
  },
3204
3384
  "selector-list": {
3205
3385
  syntax: "<complex-selector-list>"
@@ -3292,17 +3472,20 @@ var syntaxes = {
3292
3472
  syntax: "steps( <integer>, <step-position>? )"
3293
3473
  },
3294
3474
  "style-feature": {
3295
- syntax: "<declaration>"
3475
+ syntax: "<style-feature-plain> | <style-feature-boolean> | <style-range>"
3296
3476
  },
3297
3477
  "style-in-parens": {
3298
- syntax: "( <style-condition> ) | ( <style-feature> ) | <general-enclosed>"
3478
+ syntax: "( <style-query> ) | ( <style-feature> ) | <general-enclosed>"
3299
3479
  },
3300
3480
  "style-query": {
3301
- syntax: "<style-condition> | <style-feature>"
3481
+ syntax: "not <style-in-parens> | <style-in-parens> [ [ and <style-in-parens> ]* | [ or <style-in-parens> ]* ] | <style-feature>"
3302
3482
  },
3303
3483
  "subclass-selector": {
3304
3484
  syntax: "<id-selector> | <class-selector> | <attribute-selector> | <pseudo-class-selector>"
3305
3485
  },
3486
+ "superellipse()": {
3487
+ syntax: "superellipse( [ <number> | infinity | -infinity ] )"
3488
+ },
3306
3489
  "supports-condition": {
3307
3490
  syntax: "not <supports-in-parens> | <supports-in-parens> [ and <supports-in-parens> ]* | <supports-in-parens> [ or <supports-in-parens> ]*"
3308
3491
  },
@@ -3310,7 +3493,7 @@ var syntaxes = {
3310
3493
  syntax: "( <declaration> )"
3311
3494
  },
3312
3495
  "supports-feature": {
3313
- syntax: "<supports-decl> | <supports-selector-fn>"
3496
+ syntax: "<supports-selector-fn> | <supports-font-tech-fn> | <supports-font-format-fn> | <supports-at-rule-fn> | <supports-named-feature-fn> | <supports-env-fn> | <supports-decl>"
3314
3497
  },
3315
3498
  "supports-in-parens": {
3316
3499
  syntax: "( <supports-condition> ) | <supports-feature> | <general-enclosed>"
@@ -3510,6 +3693,9 @@ var syntaxes = {
3510
3693
  "attr-fallback": {
3511
3694
  syntax: "<any-value>"
3512
3695
  },
3696
+ autospace: {
3697
+ syntax: "no-autospace | [ ideograph-alpha || ideograph-numeric || punctuation ] || [ insert | replace ]"
3698
+ },
3513
3699
  bottom: {
3514
3700
  syntax: "<length> | auto"
3515
3701
  },
@@ -3627,6 +3813,147 @@ var syntaxes = {
3627
3813
  "inset-area": {
3628
3814
  syntax: "[ [ left | center | right | span-left | span-right | x-start | x-end | span-x-start | span-x-end | x-self-start | x-self-end | span-x-self-start | span-x-self-end | span-all ] || [ top | center | bottom | span-top | span-bottom | y-start | y-end | span-y-start | span-y-end | y-self-start | y-self-end | span-y-self-start | span-y-self-end | span-all ] | [ block-start | center | block-end | span-block-start | span-block-end | span-all ] || [ inline-start | center | inline-end | span-inline-start | span-inline-end | span-all ] | [ self-block-start | self-block-end | span-self-block-start | span-self-block-end | span-all ] || [ self-inline-start | self-inline-end | span-self-inline-start | span-self-inline-end | span-all ] | [ start | center | end | span-start | span-end | span-all ]{1,2} | [ self-start | center | self-end | span-self-start | span-self-end | span-all ]{1,2} ]"
3629
3815
  },
3816
+ syntax: {
3817
+ syntax: "'*' | <syntax-component> [ <syntax-combinator> <syntax-component> ]* | <syntax-string>"
3818
+ },
3819
+ "syntax-component": {
3820
+ syntax: "<syntax-single-component> <syntax-multiplier>? | '<' transform-list '>'"
3821
+ },
3822
+ "syntax-single-component": {
3823
+ syntax: "'<' <syntax-type-name> '>' | <ident>"
3824
+ },
3825
+ "syntax-type-name": {
3826
+ syntax: "angle | color | custom-ident | image | integer | length | length-percentage | number | percentage | resolution | string | time | url | transform-function"
3827
+ },
3828
+ "syntax-combinator": {
3829
+ syntax: "'|'"
3830
+ },
3831
+ "syntax-multiplier": {
3832
+ syntax: "'#' | '+'"
3833
+ },
3834
+ "syntax-string": {
3835
+ syntax: "<string>"
3836
+ },
3837
+ "function-name": {
3838
+ syntax: "<dashed-ident>("
3839
+ },
3840
+ "function-parameter": {
3841
+ syntax: "<dashed-ident> <css-type>? [ : <default-value> ]?"
3842
+ },
3843
+ "alpha()": {
3844
+ syntax: " alpha([from <color>] [ / [<alpha-value> | none] ]? )"
3845
+ },
3846
+ "if()": {
3847
+ syntax: "if( [ <if-branch> ; ]* )"
3848
+ },
3849
+ "if-branch": {
3850
+ syntax: "<if-condition> : <declaration-value>?"
3851
+ },
3852
+ "if-condition": {
3853
+ syntax: "<if-test> | else"
3854
+ },
3855
+ "if-test": {
3856
+ syntax: "supports( [ <ident> : <declaration-value> ] | <supports-condition> ) | media( <media-feature> | <media-condition> ) | style( <style-query> )"
3857
+ },
3858
+ "position-three": {
3859
+ syntax: "[ left | center | right ] && [ [ top | bottom ] <length-percentage> ] | [ [ left | right ] <length-percentage> ] && [ top | center | bottom ] "
3860
+ },
3861
+ "position-one": {
3862
+ syntax: "left | center | right | top | bottom | x-start | x-end | y-start | y-end | block-start | block-end | inline-start | inline-end | <length-percentage> "
3863
+ },
3864
+ "position-two": {
3865
+ syntax: "[ left | center | right | x-start | x-end ] && [ top | center | bottom | y-start | y-end ] | [ left | center | right | x-start | x-end | <length-percentage> ] [ top | center | bottom | y-start | y-end | <length-percentage> ] | [ block-start | center | block-end ] && [ inline-start | center | inline-end ] | [ start | center | end ]{2} "
3866
+ },
3867
+ "position-four": {
3868
+ syntax: "[ [ left | right | x-start | x-end ] <length-percentage> ] && [ [ top | bottom | y-start | y-end ] <length-percentage> ] | [ [ block-start | block-end ] <length-percentage> ] && [ [ inline-start | inline-end ] <length-percentage> ] | [ [ start | end ] <length-percentage> ]{2} "
3869
+ },
3870
+ "composes-selector": {
3871
+ syntax: "<ident>+ [from [global&&<string>]]?"
3872
+ },
3873
+ "contrast-color()": {
3874
+ syntax: "contrast-color(<color> )"
3875
+ },
3876
+ "font-feature-custom-ident": {
3877
+ syntax: "<integer>"
3878
+ },
3879
+ "font-feature-custom-ident-list": {
3880
+ syntax: "<integer>+"
3881
+ },
3882
+ "font-feature-custom-ident-character-variant": {
3883
+ syntax: "<integer> <integer>?"
3884
+ },
3885
+ "style-feature-name": {
3886
+ syntax: "<ident> |<custom-property-name>"
3887
+ },
3888
+ "style-feature-plain": {
3889
+ syntax: "<style-feature-name> : <style-feature-value>"
3890
+ },
3891
+ "style-feature-boolean": {
3892
+ syntax: "<style-feature-name>"
3893
+ },
3894
+ "style-range": {
3895
+ syntax: "<style-range-value> <mf-comparison> <style-range-value> | <style-range-value> <mf-lt> <style-range-value> <mf-lt> <style-range-value> | <style-range-value> <mf-gt> <style-range-value> <mf-gt> <style-range-value>"
3896
+ },
3897
+ "style-range-value": {
3898
+ syntax: "<custom-property-name> | <style-feature-value>"
3899
+ },
3900
+ "scroll-state-feature-plain": {
3901
+ syntax: "<scroll-state-feature-stuck> | <scroll-state-feature-snapped> | <scroll-state-feature-scrollable> | <scroll-state-feature-scrolled>"
3902
+ },
3903
+ "scroll-state-feature-stuck": {
3904
+ syntax: "stuck : [ none | top | right | bottom | left | block-start | inline-start | block-end | inline-end ]"
3905
+ },
3906
+ "scroll-state-feature-snapped": {
3907
+ syntax: "snapped : [ none | x | y | block | inline | both ]"
3908
+ },
3909
+ "scroll-state-feature-scrollable": {
3910
+ syntax: "scrollable : [ none | top | right | bottom | left | block-start | inline-start | block-end | inline-end | x | y | block | inline ]"
3911
+ },
3912
+ "scroll-state-feature-scrolled": {
3913
+ syntax: "scrolled : [ none | top | right | bottom | left | block-start | inline-start | block-end | inline-end | x | y | block | inline ]"
3914
+ },
3915
+ "scroll-state-feature-boolean": {
3916
+ syntax: "stuck | snapped | scrollable | scrolled"
3917
+ },
3918
+ "color-font-tech": {
3919
+ syntax: "color-colrv0 | color-colrv1 | color-svg | color-sbix | color-cbdt"
3920
+ },
3921
+ "font-features-tech": {
3922
+ syntax: "features-opentype | features-aat | features-graphite"
3923
+ },
3924
+ "font-tech-patch-values": {
3925
+ syntax: "incremental-patch | incremental-range | incremental-auto | variations | palettes"
3926
+ },
3927
+ "font-tech()": {
3928
+ syntax: "font-tech( <color-font-tech> | <font-features-tech> | <font-tech-patch-values> )"
3929
+ },
3930
+ "font-format-values": {
3931
+ syntax: "collection | embedded-opentype | opentype | truetype | svg | woff | woff2"
3932
+ },
3933
+ "font-format()": {
3934
+ syntax: "font-format(<font-format-values>)"
3935
+ },
3936
+ "at-rule()": {
3937
+ syntax: "at-rule(<at-keyword-token>)"
3938
+ },
3939
+ "named-feature()": {
3940
+ syntax: "named-feature( <ident> )"
3941
+ },
3942
+ "media()": {
3943
+ syntax: "media( [ <mf-plain> | <mf-boolean> | <mf-range> ] )"
3944
+ },
3945
+ "selector()": {
3946
+ syntax: "selector( <complex-selector> )"
3947
+ },
3948
+ "scroll-state()": {
3949
+ syntax: "scroll-state( <scroll-state-query> )"
3950
+ },
3951
+ "supports()": {
3952
+ syntax: "supports( <declaration> )"
3953
+ },
3954
+ "keyframe-selectors": {
3955
+ syntax: "<keyframe-selector>#"
3956
+ },
3630
3957
  "-non-standard-text-align": {
3631
3958
  syntax: "| -moz-center | -webkit-center | -webkit-match-parent"
3632
3959
  }
@@ -4019,6 +4346,18 @@ var selectors = {
4019
4346
  "::view-transition-old()": {
4020
4347
  syntax: "::view-transition-old([ '*' | <custom-ident> ])"
4021
4348
  },
4349
+ ":global": {
4350
+ syntax: ":global"
4351
+ },
4352
+ ":global()": {
4353
+ syntax: ":global( <forgiving-selector-list> )"
4354
+ },
4355
+ ":local": {
4356
+ syntax: ":local"
4357
+ },
4358
+ ":local()": {
4359
+ syntax: ":local( <forgiving-selector-list> )"
4360
+ },
4022
4361
  ":-webkit-any()": {
4023
4362
  syntax: ":-webkit-any( <forgiving-selector-list> )"
4024
4363
  },
@@ -4116,7 +4455,12 @@ var atRules = {
4116
4455
  }
4117
4456
  },
4118
4457
  "@font-feature-values": {
4119
- syntax: "@font-feature-values <family-name># {\n <feature-value-block-list>\n}"
4458
+ syntax: " @font-feature-values <family-name># { <declaration-rule-list> } ",
4459
+ descriptors: {
4460
+ "font-display": {
4461
+ syntax: "auto | block | swap | fallback | optional"
4462
+ }
4463
+ }
4120
4464
  },
4121
4465
  "@font-palette-values": {
4122
4466
  syntax: "@font-palette-values <dashed-ident> {\n <declaration-list>\n}",
@@ -4157,7 +4501,7 @@ var atRules = {
4157
4501
  syntax: "none | [ crop || cross ]"
4158
4502
  },
4159
4503
  "page-orientation": {
4160
- syntax: "upright | rotate-left | rotate-right "
4504
+ syntax: "upright | rotate-left | rotate-right"
4161
4505
  },
4162
4506
  size: {
4163
4507
  syntax: "<length [0,∞]>{1,2} | auto | [ <page-size> || [ portrait | landscape ] ]"
@@ -4165,7 +4509,45 @@ var atRules = {
4165
4509
  }
4166
4510
  },
4167
4511
  "@position-try": {
4168
- syntax: "@position-try <dashed-ident> {\n <declaration-list>\n}"
4512
+ syntax: " @position-try <dashed-ident> { <declaration-list> } ",
4513
+ descriptors: {
4514
+ top: "<'top'>",
4515
+ left: "<'left'>",
4516
+ bottom: "<'bottom'>",
4517
+ right: "<'right'>",
4518
+ "inset-block-start": "<'inset-block-start'>",
4519
+ "inset-block-end": "<'inset-block-end'>",
4520
+ "inset-inline-start": "<'inset-inline-start'>",
4521
+ "inset-inline-end": "<'inset-inline-end'>",
4522
+ "inset-block": "<'inset-block'>",
4523
+ "inset-inline": "<'inset-inline'>",
4524
+ inset: "<'inset'>",
4525
+ "margin-top": "<'margin-top'>",
4526
+ "margin-left": "<'margin-left'>",
4527
+ "margin-bottom": "<'margin-bottom'>",
4528
+ "margin-right": "<'margin-right'>",
4529
+ "margin-block-start": "<'margin-block-start'>",
4530
+ "margin-block-end": "<'margin-block-end'>",
4531
+ "margin-inline-start": "<'margin-inline-start'>",
4532
+ "margin-inline-end": "<'margin-inline-end'>",
4533
+ margin: "<'margin'>",
4534
+ "margin-block": "<'margin-block'>",
4535
+ "margin-inline": "<'margin-inline'>",
4536
+ width: "<'width'>",
4537
+ height: "<'height'>",
4538
+ "min-width": "<'min-width'>",
4539
+ "min-height": "<'min-height'>",
4540
+ "max-width": "<'max-width'>",
4541
+ "max-height": "<'max-height'>",
4542
+ "block-size": "<'block-size'>",
4543
+ "inline-size": "<'inline-size'>",
4544
+ "min-block-size": "<'min-block-size'>",
4545
+ "min-inline-size": "<'min-inline-size'>",
4546
+ "max-block-size": "<'max-block-size'>",
4547
+ "max-inline-size": "<'max-inline-size'>",
4548
+ "align-self": "<'align-self'> | anchor-center",
4549
+ "justify-self": "<'justify-self'> | anchor-center"
4550
+ }
4169
4551
  },
4170
4552
  "@property": {
4171
4553
  syntax: "@property <custom-property-name> {\n <declaration-list>\n}",
@@ -4201,28 +4583,728 @@ var atRules = {
4201
4583
  }
4202
4584
  }
4203
4585
  },
4204
- "@nest": {
4586
+ "@font-features-values": {
4587
+ descriptors: {
4588
+ "font-display": "auto | block | swap | fallback | optional"
4589
+ }
4590
+ },
4591
+ "@color-profile": {
4592
+ syntax: "@color-profile [ <dashed-ident> | device-cmyk ] { <declaration-list> }",
4593
+ descriptors: {
4594
+ src: {
4595
+ syntax: "<url>"
4596
+ }
4597
+ }
4205
4598
  },
4206
4599
  "@stylistic": {
4207
- syntax: " @stylistic { <feature-value-declaration-list> } "
4600
+ syntax: " @stylistic { <declaration-list> } "
4208
4601
  },
4209
4602
  "@historical-forms": {
4210
- syntax: " @historical-forms { <feature-value-declaration-list> } "
4603
+ syntax: " @historical-forms { <declaration-list> }"
4211
4604
  },
4212
4605
  "@styleset": {
4213
- syntax: " @styleset { <feature-value-declaration-list> } "
4606
+ syntax: "@styleset { <declaration-list> }"
4214
4607
  },
4215
4608
  "@character-variant": {
4216
- syntax: " @character-variant { <feature-value-declaration-list> } "
4609
+ syntax: "@character-variant { <declaration-list> }"
4217
4610
  },
4218
4611
  "@swash": {
4219
- syntax: " @swash { <feature-value-declaration-list> } "
4612
+ syntax: "@swash { <declaration-list> }"
4220
4613
  },
4221
4614
  "@ornaments": {
4222
- syntax: " @ornaments { <feature-value-declaration-list> } "
4615
+ syntax: "@ornaments { <declaration-list> }"
4223
4616
  },
4224
4617
  "@annotation": {
4225
- syntax: " @annotation { <feature-value-declaration-list> } "
4618
+ syntax: "@annotation { <declaration-list> }"
4619
+ },
4620
+ "@when": {
4621
+ syntax: " @when <when-condition> {\n <group-rule-body>\n}"
4622
+ },
4623
+ "@else": {
4624
+ syntax: " @else <when-condition>? {\n <group-rule-body>\n}"
4625
+ },
4626
+ "@custom-media": {
4627
+ syntax: " @custom-media <extension-name> [<media-query-list> | true | false ];"
4628
+ },
4629
+ "@top-left-corner": {
4630
+ syntax: " @top-left-corner { <declaration-list> }"
4631
+ },
4632
+ "@top-left": {
4633
+ syntax: " @top-left { <declaration-list> }"
4634
+ },
4635
+ "@top-center": {
4636
+ syntax: " @top-center { <declaration-list> }"
4637
+ },
4638
+ "@top-right": {
4639
+ syntax: " @top-right { <declaration-list> }"
4640
+ },
4641
+ "@top-right-corner": {
4642
+ syntax: " @top-right-corner { <declaration-list> }"
4643
+ },
4644
+ "@bottom-left-corner": {
4645
+ syntax: " @bottom-left-corner { <declaration-list> }"
4646
+ },
4647
+ "@bottom-left": {
4648
+ syntax: " @bottom-left { <declaration-list> }"
4649
+ },
4650
+ "@bottom-right": {
4651
+ syntax: " @bottom-right { <declaration-list> }"
4652
+ },
4653
+ "@bottom-right-corner": {
4654
+ syntax: " @bottom-right-corner { <declaration-list> }"
4655
+ },
4656
+ "@function": {
4657
+ syntax: " @function <dashed-ident>(<function-parameter>#?) [returns <css-type>]? { <declaration-rule-list> }"
4658
+ },
4659
+ "@left-top": {
4660
+ syntax: " @left-top { <declaration-list> }"
4661
+ },
4662
+ "@left-middle": {
4663
+ syntax: " @left-middle { <declaration-list> }"
4664
+ },
4665
+ "@left-bottom": {
4666
+ syntax: " @left-bottom { <declaration-list> }"
4667
+ },
4668
+ "@right-top": {
4669
+ syntax: " @right-top { <declaration-list> }"
4670
+ },
4671
+ "@right-middle": {
4672
+ syntax: " @right-middle { <declaration-list> }"
4673
+ },
4674
+ "@right-bottom": {
4675
+ syntax: " @right-bottom { <declaration-list> }"
4676
+ },
4677
+ "@value": {
4678
+ syntax: "@value [<declaration> && [ <ident># from <ident> ]]"
4679
+ }
4680
+ };
4681
+ var units = [
4682
+ "cap",
4683
+ "ch",
4684
+ "cm",
4685
+ "deg",
4686
+ "dpcm",
4687
+ "dpi",
4688
+ "dppx",
4689
+ "em",
4690
+ "ex",
4691
+ "fr",
4692
+ "grad",
4693
+ "Hz",
4694
+ "ic",
4695
+ "in",
4696
+ "kHz",
4697
+ "mm",
4698
+ "ms",
4699
+ "pc",
4700
+ "pt",
4701
+ "px",
4702
+ "Q",
4703
+ "rad",
4704
+ "rem",
4705
+ "s",
4706
+ "turn",
4707
+ "vh",
4708
+ "vmax",
4709
+ "vmin",
4710
+ "vw",
4711
+ "x"
4712
+ ];
4713
+ var languages = [
4714
+ "aa",
4715
+ "ab",
4716
+ "af",
4717
+ "ak",
4718
+ "sq",
4719
+ "am",
4720
+ "ar",
4721
+ "an",
4722
+ "hy",
4723
+ "as",
4724
+ "av",
4725
+ "ae",
4726
+ "ay",
4727
+ "az",
4728
+ "ba",
4729
+ "bm",
4730
+ "eu",
4731
+ "be",
4732
+ "bn",
4733
+ "bh",
4734
+ "bi",
4735
+ "bo",
4736
+ "bs",
4737
+ "br",
4738
+ "bg",
4739
+ "my",
4740
+ "ca",
4741
+ "cs",
4742
+ "ch",
4743
+ "ce",
4744
+ "zh",
4745
+ "cu",
4746
+ "cv",
4747
+ "kw",
4748
+ "co",
4749
+ "cr",
4750
+ "cy",
4751
+ "da",
4752
+ "de",
4753
+ "dv",
4754
+ "nl",
4755
+ "dz",
4756
+ "el",
4757
+ "en",
4758
+ "eo",
4759
+ "et",
4760
+ "ee",
4761
+ "fo",
4762
+ "fa",
4763
+ "fj",
4764
+ "fi",
4765
+ "fr",
4766
+ "fy",
4767
+ "ff",
4768
+ "ka",
4769
+ "gd",
4770
+ "ga",
4771
+ "gl",
4772
+ "gv",
4773
+ "gn",
4774
+ "gu",
4775
+ "ht",
4776
+ "ha",
4777
+ "he",
4778
+ "hz",
4779
+ "hi",
4780
+ "ho",
4781
+ "hr",
4782
+ "hu",
4783
+ "ig",
4784
+ "is",
4785
+ "io",
4786
+ "ii",
4787
+ "iu",
4788
+ "ie",
4789
+ "ia",
4790
+ "id",
4791
+ "ik",
4792
+ "it",
4793
+ "jv",
4794
+ "ja",
4795
+ "kl",
4796
+ "kn",
4797
+ "ks",
4798
+ "kr",
4799
+ "kk",
4800
+ "km",
4801
+ "ki",
4802
+ "rw",
4803
+ "ky",
4804
+ "kv",
4805
+ "kg",
4806
+ "ko",
4807
+ "kj",
4808
+ "ku",
4809
+ "lo",
4810
+ "la",
4811
+ "lv",
4812
+ "li",
4813
+ "ln",
4814
+ "lt",
4815
+ "lb",
4816
+ "lu",
4817
+ "lg",
4818
+ "mk",
4819
+ "mh",
4820
+ "ml",
4821
+ "mi",
4822
+ "mr",
4823
+ "ms",
4824
+ "mg",
4825
+ "mt",
4826
+ "mo",
4827
+ "mn",
4828
+ "na",
4829
+ "nv",
4830
+ "nr",
4831
+ "nd",
4832
+ "ng",
4833
+ "ne",
4834
+ "nn",
4835
+ "nb",
4836
+ "no",
4837
+ "ny",
4838
+ "oc",
4839
+ "oj",
4840
+ "or",
4841
+ "om",
4842
+ "os",
4843
+ "pa",
4844
+ "pi",
4845
+ "pl",
4846
+ "pt",
4847
+ "ps",
4848
+ "qu",
4849
+ "rm",
4850
+ "ro",
4851
+ "rn",
4852
+ "ru",
4853
+ "sg",
4854
+ "sa",
4855
+ "sr",
4856
+ "si",
4857
+ "sk",
4858
+ "sl",
4859
+ "se",
4860
+ "sm",
4861
+ "sn",
4862
+ "sd",
4863
+ "so",
4864
+ "st",
4865
+ "es",
4866
+ "sc",
4867
+ "ss",
4868
+ "su",
4869
+ "sw",
4870
+ "sv",
4871
+ "ty",
4872
+ "ta",
4873
+ "tt",
4874
+ "te",
4875
+ "tg",
4876
+ "tl",
4877
+ "th",
4878
+ "ti",
4879
+ "to",
4880
+ "tn",
4881
+ "ts",
4882
+ "tk",
4883
+ "tr",
4884
+ "tw",
4885
+ "ug",
4886
+ "uk",
4887
+ "ur",
4888
+ "uz",
4889
+ "ve",
4890
+ "vi",
4891
+ "vo",
4892
+ "wa",
4893
+ "wo",
4894
+ "xh",
4895
+ "yi",
4896
+ "yo",
4897
+ "za",
4898
+ "zu"
4899
+ ];
4900
+ var mediaFeatures = {
4901
+ width: {
4902
+ type: "length",
4903
+ category: "viewport"
4904
+ },
4905
+ "min-width": {
4906
+ type: "length",
4907
+ category: "viewport"
4908
+ },
4909
+ "max-width": {
4910
+ type: "length",
4911
+ category: "viewport"
4912
+ },
4913
+ height: {
4914
+ type: "length",
4915
+ category: "viewport"
4916
+ },
4917
+ "min-height": {
4918
+ type: "length",
4919
+ category: "viewport"
4920
+ },
4921
+ "max-height": {
4922
+ type: "length",
4923
+ category: "viewport"
4924
+ },
4925
+ "aspect-ratio": {
4926
+ type: "ratio",
4927
+ category: "viewport"
4928
+ },
4929
+ "min-aspect-ratio": {
4930
+ type: "ratio",
4931
+ category: "viewport"
4932
+ },
4933
+ "max-aspect-ratio": {
4934
+ type: "ratio",
4935
+ category: "viewport"
4936
+ },
4937
+ orientation: {
4938
+ type: "keyword",
4939
+ values: [
4940
+ "portrait",
4941
+ "landscape"
4942
+ ],
4943
+ category: "viewport"
4944
+ },
4945
+ "device-width": {
4946
+ type: "length",
4947
+ status: "deprecated",
4948
+ category: "device-viewport"
4949
+ },
4950
+ "device-height": {
4951
+ type: "length",
4952
+ status: "deprecated",
4953
+ category: "device-viewport"
4954
+ },
4955
+ "device-aspect-ratio": {
4956
+ type: "ratio",
4957
+ status: "deprecated",
4958
+ category: "device-viewport"
4959
+ },
4960
+ resolution: {
4961
+ type: "resolution",
4962
+ units: [
4963
+ "dpi",
4964
+ "dpcm",
4965
+ "dppx"
4966
+ ],
4967
+ category: "display"
4968
+ },
4969
+ "min-resolution": {
4970
+ type: "resolution",
4971
+ category: "display"
4972
+ },
4973
+ "max-resolution": {
4974
+ type: "resolution",
4975
+ category: "display"
4976
+ },
4977
+ scan: {
4978
+ type: "keyword",
4979
+ values: [
4980
+ "interlace",
4981
+ "progressive"
4982
+ ],
4983
+ status: "deprecated",
4984
+ category: "display"
4985
+ },
4986
+ update: {
4987
+ type: "keyword",
4988
+ values: [
4989
+ "none",
4990
+ "slow",
4991
+ "fast"
4992
+ ],
4993
+ category: "display"
4994
+ },
4995
+ "overflow-block": {
4996
+ type: "keyword",
4997
+ values: [
4998
+ "none",
4999
+ "scroll",
5000
+ "paged"
5001
+ ],
5002
+ category: "display"
5003
+ },
5004
+ "overflow-inline": {
5005
+ type: "keyword",
5006
+ values: [
5007
+ "none",
5008
+ "scroll"
5009
+ ],
5010
+ category: "display"
5011
+ },
5012
+ "display-mode": {
5013
+ type: "keyword",
5014
+ values: [
5015
+ "fullscreen",
5016
+ "standalone",
5017
+ "minimal-ui",
5018
+ "browser"
5019
+ ],
5020
+ category: "display"
5021
+ },
5022
+ color: {
5023
+ type: "integer",
5024
+ category: "color"
5025
+ },
5026
+ "min-color": {
5027
+ type: "integer",
5028
+ category: "color"
5029
+ },
5030
+ "max-color": {
5031
+ type: "integer",
5032
+ category: "color"
5033
+ },
5034
+ "color-index": {
5035
+ type: "integer",
5036
+ category: "color"
5037
+ },
5038
+ "min-color-index": {
5039
+ type: "integer",
5040
+ category: "color"
5041
+ },
5042
+ "max-color-index": {
5043
+ type: "integer",
5044
+ category: "color"
5045
+ },
5046
+ monochrome: {
5047
+ type: "integer",
5048
+ category: "color"
5049
+ },
5050
+ "min-monochrome": {
5051
+ type: "integer",
5052
+ category: "color"
5053
+ },
5054
+ "max-monochrome": {
5055
+ type: "integer",
5056
+ category: "color"
5057
+ },
5058
+ "color-gamut": {
5059
+ type: "keyword",
5060
+ values: [
5061
+ "srgb",
5062
+ "p3",
5063
+ "rec2020"
5064
+ ],
5065
+ category: "color"
5066
+ },
5067
+ "dynamic-range": {
5068
+ type: "keyword",
5069
+ values: [
5070
+ "standard",
5071
+ "high"
5072
+ ],
5073
+ category: "color"
5074
+ },
5075
+ "inverted-colors": {
5076
+ type: "keyword",
5077
+ values: [
5078
+ "none",
5079
+ "inverted"
5080
+ ],
5081
+ category: "color"
5082
+ },
5083
+ pointer: {
5084
+ type: "keyword",
5085
+ values: [
5086
+ "none",
5087
+ "coarse",
5088
+ "fine"
5089
+ ],
5090
+ category: "input"
5091
+ },
5092
+ "any-pointer": {
5093
+ type: "keyword",
5094
+ values: [
5095
+ "none",
5096
+ "coarse",
5097
+ "fine"
5098
+ ],
5099
+ category: "input"
5100
+ },
5101
+ hover: {
5102
+ type: "keyword",
5103
+ values: [
5104
+ "none",
5105
+ "hover"
5106
+ ],
5107
+ category: "input"
5108
+ },
5109
+ "any-hover": {
5110
+ type: "keyword",
5111
+ values: [
5112
+ "none",
5113
+ "hover"
5114
+ ],
5115
+ category: "input"
5116
+ },
5117
+ "prefers-reduced-motion": {
5118
+ type: "keyword",
5119
+ values: [
5120
+ "no-preference",
5121
+ "reduce"
5122
+ ],
5123
+ category: "user-preferences"
5124
+ },
5125
+ "prefers-reduced-transparency": {
5126
+ type: "keyword",
5127
+ values: [
5128
+ "no-preference",
5129
+ "reduce"
5130
+ ],
5131
+ category: "user-preferences"
5132
+ },
5133
+ "prefers-contrast": {
5134
+ type: "keyword",
5135
+ values: [
5136
+ "no-preference",
5137
+ "less",
5138
+ "more",
5139
+ "custom"
5140
+ ],
5141
+ category: "user-preferences"
5142
+ },
5143
+ "prefers-color-scheme": {
5144
+ type: "keyword",
5145
+ values: [
5146
+ "light",
5147
+ "dark"
5148
+ ],
5149
+ category: "user-preferences"
5150
+ },
5151
+ "prefers-reduced-data": {
5152
+ type: "keyword",
5153
+ values: [
5154
+ "no-preference",
5155
+ "reduce"
5156
+ ],
5157
+ category: "user-preferences"
5158
+ },
5159
+ "forced-colors": {
5160
+ type: "keyword",
5161
+ values: [
5162
+ "none",
5163
+ "active"
5164
+ ],
5165
+ category: "accessibility"
5166
+ },
5167
+ scripting: {
5168
+ type: "keyword",
5169
+ values: [
5170
+ "none",
5171
+ "initial-only",
5172
+ "enabled"
5173
+ ],
5174
+ category: "accessibility"
5175
+ },
5176
+ grid: {
5177
+ type: "boolean",
5178
+ values: [
5179
+ 0,
5180
+ 1
5181
+ ],
5182
+ category: "legacy"
5183
+ },
5184
+ "light-level": {
5185
+ type: "keyword",
5186
+ values: [
5187
+ "dim",
5188
+ "normal",
5189
+ "washed"
5190
+ ],
5191
+ status: "deprecated",
5192
+ category: "legacy"
5193
+ },
5194
+ "environment-blending": {
5195
+ type: "keyword",
5196
+ values: [
5197
+ "opaque",
5198
+ "additive",
5199
+ "subtractive"
5200
+ ],
5201
+ category: "environment"
5202
+ },
5203
+ "nav-controls": {
5204
+ type: "keyword",
5205
+ values: [
5206
+ "none",
5207
+ "back"
5208
+ ],
5209
+ category: "navigation"
5210
+ },
5211
+ "video-color-gamut": {
5212
+ type: "keyword",
5213
+ values: [
5214
+ "srgb",
5215
+ "p3",
5216
+ "rec2020"
5217
+ ],
5218
+ category: "video"
5219
+ },
5220
+ "video-dynamic-range": {
5221
+ type: "keyword",
5222
+ values: [
5223
+ "standard",
5224
+ "high"
5225
+ ],
5226
+ category: "video"
5227
+ },
5228
+ "-webkit-device-pixel-ratio": {
5229
+ type: "number",
5230
+ status: "deprecated",
5231
+ equivalent: "resolution",
5232
+ category: "-webkit-"
5233
+ },
5234
+ "-webkit-max-device-pixel-ratio": {
5235
+ type: "number",
5236
+ status: "deprecated",
5237
+ category: "-webkit-"
5238
+ },
5239
+ "-webkit-transform-3d": {
5240
+ type: "boolean",
5241
+ values: [
5242
+ 0,
5243
+ 1
5244
+ ],
5245
+ status: "non-standard",
5246
+ category: "-webkit-"
5247
+ },
5248
+ "-webkit-touch-enabled": {
5249
+ type: "boolean",
5250
+ values: [
5251
+ 0,
5252
+ 1
5253
+ ],
5254
+ status: "non-standard",
5255
+ category: "-webkit-"
5256
+ },
5257
+ "-webkit-min-device-pixel-ratio": {
5258
+ type: "number",
5259
+ status: "deprecated",
5260
+ category: "-webkit-"
5261
+ },
5262
+ "-moz-device-pixel-ratio": {
5263
+ type: "number",
5264
+ status: "deprecated",
5265
+ category: "-moz-"
5266
+ },
5267
+ "-moz-touch-enabled": {
5268
+ type: "boolean",
5269
+ values: [
5270
+ 0,
5271
+ 1
5272
+ ],
5273
+ status: "non-standard",
5274
+ category: "-moz-"
5275
+ },
5276
+ "-moz-os-version": {
5277
+ type: "string",
5278
+ status: "internal",
5279
+ category: "-moz-"
5280
+ },
5281
+ "-ms-high-contrast": {
5282
+ type: "keyword",
5283
+ values: [
5284
+ "none",
5285
+ "active",
5286
+ "black-on-white",
5287
+ "white-on-black"
5288
+ ],
5289
+ status: "deprecated",
5290
+ equivalent: "forced-colors",
5291
+ category: "-ms-"
5292
+ },
5293
+ "-ms-view-state": {
5294
+ type: "keyword",
5295
+ values: [
5296
+ "snapped",
5297
+ "fullscreen-portrait",
5298
+ "fullscreen-landscape",
5299
+ "filled"
5300
+ ],
5301
+ status: "obsolete",
5302
+ category: "-ms-"
5303
+ },
5304
+ "-o-device-pixel-ratio": {
5305
+ type: "number",
5306
+ status: "obsolete",
5307
+ category: "-o-"
4226
5308
  }
4227
5309
  };
4228
5310
  var config = {
@@ -4230,7 +5312,10 @@ var config = {
4230
5312
  functions: functions,
4231
5313
  syntaxes: syntaxes,
4232
5314
  selectors: selectors,
4233
- atRules: atRules
5315
+ atRules: atRules,
5316
+ units: units,
5317
+ languages: languages,
5318
+ mediaFeatures: mediaFeatures
4234
5319
  };
4235
5320
 
4236
- export { atRules, declarations, config as default, functions, selectors, syntaxes };
5321
+ export { atRules, declarations, config as default, functions, languages, mediaFeatures, selectors, syntaxes, units };