reffy 20.0.13 → 20.0.15

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 (78) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +151 -151
  3. package/index.js +29 -29
  4. package/package.json +5 -5
  5. package/reffy.js +324 -324
  6. package/schemas/browserlib/extract-algorithms.json +52 -52
  7. package/schemas/browserlib/extract-cssdfn.json +108 -108
  8. package/schemas/browserlib/extract-dfns.json +90 -90
  9. package/schemas/browserlib/extract-elements.json +17 -17
  10. package/schemas/browserlib/extract-events.json +31 -31
  11. package/schemas/browserlib/extract-headings.json +19 -19
  12. package/schemas/browserlib/extract-ids.json +7 -7
  13. package/schemas/browserlib/extract-links.json +12 -12
  14. package/schemas/browserlib/extract-refs.json +12 -12
  15. package/schemas/common.json +876 -876
  16. package/schemas/files/extracts/algorithms.json +12 -12
  17. package/schemas/files/extracts/css.json +16 -16
  18. package/schemas/files/extracts/dfns.json +12 -12
  19. package/schemas/files/extracts/elements.json +12 -12
  20. package/schemas/files/extracts/events.json +12 -12
  21. package/schemas/files/extracts/headings.json +12 -12
  22. package/schemas/files/extracts/ids.json +12 -12
  23. package/schemas/files/extracts/links.json +12 -12
  24. package/schemas/files/extracts/refs.json +12 -12
  25. package/schemas/files/index.json +59 -59
  26. package/schemas/postprocessing/events.json +50 -50
  27. package/schemas/postprocessing/idlnames-parsed.json +27 -27
  28. package/schemas/postprocessing/idlnames.json +17 -17
  29. package/schemas/postprocessing/idlparsed.json +67 -67
  30. package/src/browserlib/clone-and-clean.mjs +24 -24
  31. package/src/browserlib/create-outline.mjs +353 -353
  32. package/src/browserlib/extract-algorithms.mjs +723 -723
  33. package/src/browserlib/extract-cddl.mjs +125 -125
  34. package/src/browserlib/extract-dfns.mjs +1093 -1093
  35. package/src/browserlib/extract-headings.mjs +76 -76
  36. package/src/browserlib/extract-ids.mjs +28 -28
  37. package/src/browserlib/extract-links.mjs +45 -45
  38. package/src/browserlib/extract-references.mjs +308 -308
  39. package/src/browserlib/extract-webidl.mjs +89 -89
  40. package/src/browserlib/get-absolute-url.mjs +29 -29
  41. package/src/browserlib/get-code-elements.mjs +20 -20
  42. package/src/browserlib/get-generator.mjs +26 -26
  43. package/src/browserlib/get-lastmodified-date.mjs +13 -13
  44. package/src/browserlib/get-revision.mjs +12 -12
  45. package/src/browserlib/get-title.mjs +14 -14
  46. package/src/browserlib/informative-selector.mjs +24 -24
  47. package/src/browserlib/map-ids-to-headings.mjs +173 -173
  48. package/src/browserlib/reffy.json +85 -85
  49. package/src/browserlib/trim-spaces.mjs +35 -35
  50. package/src/cli/check-missing-dfns.js +587 -587
  51. package/src/cli/merge-crawl-results.js +132 -132
  52. package/src/cli/parse-webidl.js +447 -447
  53. package/src/lib/css-grammar-parse-tree.schema.json +109 -109
  54. package/src/lib/css-grammar-parser.js +440 -440
  55. package/src/lib/fetch.js +51 -51
  56. package/src/lib/markdown-report.js +360 -360
  57. package/src/lib/mock-server.js +218 -218
  58. package/src/lib/post-processor.js +322 -322
  59. package/src/lib/throttled-queue.js +129 -129
  60. package/src/postprocessing/annotate-links.js +41 -41
  61. package/src/postprocessing/csscomplete.js +48 -48
  62. package/src/postprocessing/idlnames.js +391 -391
  63. package/src/postprocessing/idlparsed.js +179 -179
  64. package/src/postprocessing/patch-dfns.js +51 -51
  65. package/src/specs/missing-css-rules.json +197 -197
  66. package/src/specs/spec-equivalents.json +149 -149
  67. package/src/browserlib/extract-editors.mjs~ +0 -14
  68. package/src/browserlib/extract-events.mjs~ +0 -3
  69. package/src/browserlib/generate-es-dfn-report.sh~ +0 -4
  70. package/src/browserlib/get-revision.mjs~ +0 -7
  71. package/src/cli/csstree-grammar-check.js +0 -28
  72. package/src/cli/csstree-grammar-check.js~ +0 -10
  73. package/src/cli/csstree-grammar-parser.js +0 -11
  74. package/src/cli/csstree-grammar-parser.js~ +0 -1
  75. package/src/cli/extract-editors.js~ +0 -38
  76. package/src/cli/process-specs.js~ +0 -28
  77. package/src/postprocessing/annotate-links.js~ +0 -8
  78. package/src/postprocessing/events.js~ +0 -245
@@ -1,197 +1,197 @@
1
- {
2
- "<alphavalue>": {
3
- "value": "<number>",
4
- "spec": "https://drafts.csswg.org/css-color-3/#opacity"
5
- },
6
- "<basic-shape>": {
7
- "value": "<inset()> | <circle()> | <ellipse()> | <polygon()>",
8
- "spec": "https://drafts.csswg.org/css-shapes/#typedef-basic-shape"
9
- },
10
- "<border-style>": {
11
- "value": "none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset",
12
- "spec": "https://drafts.csswg.org/css2/box.html#value-def-border-style"
13
- },
14
- "<border-width>": {
15
- "value": "thin | medium | thick | <length>",
16
- "spec": "https://drafts.csswg.org/css2/box.html#value-def-border-width"
17
- },
18
- "<bottom>": {
19
- "value": "<length> | auto",
20
- "spec": "https://drafts.fxtf.org/css-masking-1/#typedef-clip-bottom"
21
- },
22
- "<counter>": {
23
- "value": "counter(<identifier>) | counter(<identifier>, <'list-style-type'>) | counters(<identifier>, <string>) | counters(<identifier>, <string>, <'list-style-type'>)",
24
- "spec": "https://drafts.csswg.org/css2/syndata.html#value-def-counter"
25
- },
26
- "<counter-style-name>": {
27
- "value": "<custom-ident>",
28
- "spec": "https://drafts.csswg.org/css-counter-styles/#typedef-counter-style-name",
29
- "prose": "<counter-style-name> is a <custom-ident> that is not an ASCII case-insensitive match for \"none\""
30
- },
31
- "<custom-property-name>": {
32
- "prose": "The <custom-property-name> production corresponds to this: it’s defined as any valid identifier that starts with two dashes.",
33
- "spec": "https://drafts.csswg.org/css-variables/#typedef-custom-property-name"
34
- },
35
- "<dashndashdigit-ident>": {
36
- "value": "<ident-token>",
37
- "prose": "<dashndashdigit-ident> is an <ident-token> whose value is an ASCII case-insensitive match for \"-n-*\", where \"*\" is a series of one or more digits",
38
- "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-dashndashdigit-ident"
39
- },
40
- "<deprecated-system-color>": {
41
- "value": "ActiveBorder | ActiveCaption | AppWorkspace | Background | ButtonFace | ButtonHighlight | ButtonShadow | ButtonText | CaptionText | GrayText | Highlight | HighlightText | InactiveBorder | InactiveCaption | InactiveCaptionText | InfoBackground | InfoText | Menu | MenuText | Scrollbar | ThreeDDarkShadow | ThreeDFace | ThreeDHighlight | ThreeDLightShadow | ThreeDShadow | Window | WindowFrame | WindowText",
42
- "spec": "https://drafts.csswg.org/css-color/#typedef-deprecated-system-color"
43
- },
44
- "<flex>": {
45
- "value": "<number> fr",
46
- "spec": "https://drafts.csswg.org/css-grid-1/#typedef-flex"
47
- },
48
- "<font-face-name>": {
49
- "value": "local( <family-name> )",
50
- "spec": "https://drafts.csswg.org/css-fonts/#font-face-name-value"
51
- },
52
- "<generic-font-family>": {
53
- "value": "serif | sans-serif | cursive | fantasy | monospace | system-ui | emoji | math | fangsong",
54
- "spec": "https://drafts.csswg.org/css-fonts-4/#generic-family-value"
55
- },
56
- "<generic-voice>": {
57
- "value": "male | female | child",
58
- "spec": "https://drafts.csswg.org/css2/aural.html#value-def-generic-voice"
59
- },
60
- "<hex-color>": {
61
- "value": "<hash-token>",
62
- "prose": "The syntax of a <hex-color> is a <hash-token> token whose value consists of 3, 4, 6, or 8 hexadecimal digits. In other words, a hex color is written as a hash character, \"#\", followed by some number of digits 0-9 or letters a-f (the case of the letters doesn’t matter - #00ff00 is identical to #00FF00).",
63
- "spec": "https://drafts.csswg.org/css-color/#typedef-hex-color"
64
- },
65
- "<hsla()>": {
66
- "value": "hsla( <hue> <percentage> <percentage> [ / <alpha-value> ]? )",
67
- "spec": "https://drafts.csswg.org/css-color/#funcdef-hsla"
68
- },
69
- "<id>": {
70
- "value": "<hash-token>",
71
- "spec": "https://drafts.csswg.org/css-ui/#typedef-id"
72
- },
73
- "<left>": {
74
- "value": "<length> | auto",
75
- "spec": "https://drafts.fxtf.org/css-masking-1/#typedef-clip-left"
76
- },
77
- "<margin-width>": {
78
- "value": "<length> | <percentage> | auto",
79
- "spec": "https://drafts.csswg.org/css2/box.html#value-def-margin-width"
80
- },
81
- "<mq-boolean>": {
82
- "value": "<integer>",
83
- "prose": "The <mq-boolean> value type is an <integer> with the value 0 or 1. Any other integer value is invalid.",
84
- "spec": "https://drafts.csswg.org/mediaqueries-4/#typedef-mq-boolean"
85
- },
86
- "<named-color>": {
87
- "value": "aliceblue | antiquewhite | aqua | aquamarine | azure | beige | bisque | black | blanchedalmond | blue | blueviolet | brown | burlywood | cadetblue | chartreuse | chocolate | coral | cornflowerblue | cornsilk | crimson | cyan | darkblue | darkcyan | darkgoldenrod | darkgray | darkgreen | darkgrey | darkkhaki | darkmagenta | darkolivegreen | darkorange | darkorchid | darkred | darksalmon | darkseagreen | darkslateblue | darkslategray | darkslategrey | darkturquoise | darkviolet | deeppink | deepskyblue | dimgray | dimgrey | dodgerblue | firebrick | floralwhite | forestgreen | fuchsia | gainsboro | ghostwhite | gold | goldenrod | gray | green | greenyellow | grey | honeydew | hotpink | indianred | indigo | ivory | khaki | lavender | lavenderblush | lawngreen | lemonchiffon | lightblue | lightcoral | lightcyan | lightgoldenrodyellow | lightgray | lightgreen | lightgrey | lightpink | lightsalmon | lightseagreen | lightskyblue | lightslategray | lightslategrey | lightsteelblue | lightyellow | lime | limegreen | linen | magenta | maroon | mediumaquamarine | mediumblue | mediumorchid | mediumpurple | mediumseagreen | mediumslateblue | mediumspringgreen | mediumturquoise | mediumvioletred | midnightblue | mintcream | mistyrose | moccasin | navajowhite | navy | oldlace | olive | olivedrab | orange | orangered | orchid | palegoldenrod | palegreen | paleturquoise | palevioletred | papayawhip | peachpuff | peru | pink | plum | powderblue | purple | rebeccapurple | red | rosybrown | royalblue | saddlebrown | salmon | sandybrown | seagreen | seashell | sienna | silver | skyblue | slateblue | slategray | slategrey | snow | springgreen | steelblue | tan | teal | thistle | tomato | turquoise | violet | wheat | white | whitesmoke | yellow | yellowgreen",
88
- "spec": "https://drafts.csswg.org/css-color/#typedef-named-color"
89
- },
90
- "<n-dimension>": {
91
- "value": "<dimension-token>",
92
- "prose": "<n-dimension> is a <dimension-token> with its type flag set to \"integer\", and a unit that is an ASCII case-insensitive match for \"n\"",
93
- "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-n-dimension"
94
- },
95
- "<ndash-dimension>": {
96
- "value": "<dimension-token>",
97
- "prose": "<ndash-dimension> is a <dimension-token> with its type flag set to \"integer\", and a unit that is an ASCII case-insensitive match for \"n-\"",
98
- "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-ndash-dimension"
99
- },
100
- "<ndashdigit-dimension>": {
101
- "value": "<dimension-token>",
102
- "prose": "<ndashdigit-dimension> is a <dimension-token> with its type flag set to \"integer\", and a unit that is an ASCII case-insensitive match for \"n-*\", where \"*\" is a series of one or more digits",
103
- "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-ndashdigit-dimension"
104
- },
105
- "<ndashdigit-ident>": {
106
- "value": "<ident-token>",
107
- "prose": "<ndashdigit-ident> is an <ident-token> whose value is an ASCII case-insensitive match for \"n-*\", where \"*\" is a series of one or more digits",
108
- "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-ndashdigit-ident"
109
- },
110
- "<outline-line-style>": {
111
- "value": "none | dotted | dashed | solid | double | groove | ridge | inset | outset",
112
- "prose": "<outline-line-style> accepts the same values as <line-style> except that hidden is not a legal outline style",
113
- "spec": "https://drafts.csswg.org/css-ui-4/#typedef-outline-line-style"
114
- },
115
- "<padding-width>": {
116
- "value": "<length> | <percentage>",
117
- "spec": "https://drafts.csswg.org/css2/box.html#value-def-padding-width"
118
- },
119
- "<page-size>": {
120
- "value": "A5 | A4 | A3 | B5 | B4 | letter | legal | ledger",
121
- "spec": "https://www.w3.org/TR/css3-page/#size"
122
- },
123
- "<ratio>": {
124
- "value": "<integer> / <integer>",
125
- "prose": "The <ratio> value type is a positive (not zero or negative) <integer> followed by optional whitespace, followed by a solidus ('/'), followed by optional whitespace, followed by a positive <integer>.",
126
- "spec": "https://drafts.csswg.org/mediaqueries-4/#typedef-ratio"
127
- },
128
- "<repeating-linear-gradient()>": {
129
- "value": "repeating-linear-gradient( [ <angle> | to <side-or-corner> ]? , <color-stop-list> )",
130
- "spec": "https://drafts.csswg.org/css-images-4/#funcdef-repeating-linear-gradient"
131
- },
132
- "<repeating-linear-gradient>": {
133
- "value": "repeating-linear-gradient( [ [ <angle> | to <side-or-corner> ] ,]? <color-stop>[, <color-stop>]+ )",
134
- "spec": "https://drafts.csswg.org/css-images-4/#funcdef-repeating-linear-gradient"
135
- },
136
- "<repeating-radial-gradient()>": {
137
- "value": "repeating-radial-gradient( [ [ circle || <length> ] [ at <position> ]? , | [ ellipse || <length-percentage>{2} ] [ at <position> ]? , | [ [ circle | ellipse ] || <extent-keyword> ] [ at <position> ]? , | at <position> , ]? <color-stop> [ , <color-stop> ]+ )",
138
- "spec": "https://drafts.csswg.org/css-images-4/#funcdef-repeating-radial-gradient"
139
- },
140
- "<repeating-radial-gradient>": {
141
- "value": "repeating-radial-gradient( [ [ <shape> || <size> ] [ at <position> ]? , | at <position>, ]? <color-stop> [ , <color-stop> ]+ )",
142
- "spec": "https://drafts.csswg.org/css-images-4/#funcdef-repeating-radial-gradient"
143
- },
144
- "<repeating-conic-gradient()>": {
145
- "value": "repeating-conic-gradient( [ from <angle> ]? [ at <position> ]?, <angular-color-stop-list> )",
146
- "spec": "https://drafts.csswg.org/css-images-4/#funcdef-repeating-conic-gradient"
147
- },
148
- "<rgba()>": {
149
- "value": "rgba( <percentage>{3} [ / <alpha-value> ]? ) | rgb( <number>{3} [ / <alpha-value> ]? )",
150
- "spec": "https://drafts.csswg.org/css-color/#funcdef-rgba"
151
- },
152
- "<right>": {
153
- "value": "<length> | auto",
154
- "spec": "https://drafts.fxtf.org/css-masking-1/#typedef-clip-right"
155
- },
156
- "<shape>": {
157
- "value": "<rect()>",
158
- "spec": "https://drafts.csswg.org/css2/visufx.html#value-def-shape"
159
- },
160
- "<signed-integer>": {
161
- "value": "<number-token>",
162
- "prose": "<signed-integer> is a <number-token> with its type flag set to \"integer\", and whose representation starts with \"+\" or \"-\"",
163
- "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-signed-integer"
164
- },
165
- "<signless-integer>": {
166
- "value": "<number-token>",
167
- "prose": "<signless-integer> is a <number-token> with its type flag set to \"integer\", and whose representation start with a digit",
168
- "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-signless-integer"
169
- },
170
- "<specific-voice>": {
171
- "prose": "Values are specific instances (e.g., comedian, trinoids, carlos, lani)."
172
- },
173
- "<top>": {
174
- "value": "<length> | auto",
175
- "spec": "https://drafts.fxtf.org/css-masking-1/#typedef-clip-top"
176
- },
177
- "<transform-function>": {
178
- "value": "<matrix()> | <translate()> | <translateX()> | <translateY()> | <scale()> | <scaleX()> | <scaleY()> | <rotate()> | <skew()> | <skewX()> | <skewY()> | <matrix3d()> | <translate3d()> | <translateZ()> | <scale3d()> | <scaleZ()> | <rotate3d()> | <rotateX()> | <rotateY()> | <rotateZ()> | <perspective()>",
179
- "spec": "https://drafts.csswg.org/css-transforms/#typedef-transform-function"
180
- },
181
- "<uri>": {
182
- "value": "<url>",
183
- "spec": "https://www.w3.org/TR/css3-values/#url-value"
184
- },
185
- "<url-modifier>": {
186
- "prose": "<url-modifier> is either an <ident> or a functional notation.",
187
- "spec": "https://drafts.csswg.org/css-values/#typedef-url-modifier"
188
- },
189
- "<x>": {
190
- "value": "<number>",
191
- "spec": "https://drafts.csswg.org/css-ui/#propdef-cursor"
192
- },
193
- "<y>": {
194
- "value": "<number>",
195
- "spec": "https://drafts.csswg.org/css-ui/#propdef-cursor"
196
- }
197
- }
1
+ {
2
+ "<alphavalue>": {
3
+ "value": "<number>",
4
+ "spec": "https://drafts.csswg.org/css-color-3/#opacity"
5
+ },
6
+ "<basic-shape>": {
7
+ "value": "<inset()> | <circle()> | <ellipse()> | <polygon()>",
8
+ "spec": "https://drafts.csswg.org/css-shapes/#typedef-basic-shape"
9
+ },
10
+ "<border-style>": {
11
+ "value": "none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset",
12
+ "spec": "https://drafts.csswg.org/css2/box.html#value-def-border-style"
13
+ },
14
+ "<border-width>": {
15
+ "value": "thin | medium | thick | <length>",
16
+ "spec": "https://drafts.csswg.org/css2/box.html#value-def-border-width"
17
+ },
18
+ "<bottom>": {
19
+ "value": "<length> | auto",
20
+ "spec": "https://drafts.fxtf.org/css-masking-1/#typedef-clip-bottom"
21
+ },
22
+ "<counter>": {
23
+ "value": "counter(<identifier>) | counter(<identifier>, <'list-style-type'>) | counters(<identifier>, <string>) | counters(<identifier>, <string>, <'list-style-type'>)",
24
+ "spec": "https://drafts.csswg.org/css2/syndata.html#value-def-counter"
25
+ },
26
+ "<counter-style-name>": {
27
+ "value": "<custom-ident>",
28
+ "spec": "https://drafts.csswg.org/css-counter-styles/#typedef-counter-style-name",
29
+ "prose": "<counter-style-name> is a <custom-ident> that is not an ASCII case-insensitive match for \"none\""
30
+ },
31
+ "<custom-property-name>": {
32
+ "prose": "The <custom-property-name> production corresponds to this: it’s defined as any valid identifier that starts with two dashes.",
33
+ "spec": "https://drafts.csswg.org/css-variables/#typedef-custom-property-name"
34
+ },
35
+ "<dashndashdigit-ident>": {
36
+ "value": "<ident-token>",
37
+ "prose": "<dashndashdigit-ident> is an <ident-token> whose value is an ASCII case-insensitive match for \"-n-*\", where \"*\" is a series of one or more digits",
38
+ "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-dashndashdigit-ident"
39
+ },
40
+ "<deprecated-system-color>": {
41
+ "value": "ActiveBorder | ActiveCaption | AppWorkspace | Background | ButtonFace | ButtonHighlight | ButtonShadow | ButtonText | CaptionText | GrayText | Highlight | HighlightText | InactiveBorder | InactiveCaption | InactiveCaptionText | InfoBackground | InfoText | Menu | MenuText | Scrollbar | ThreeDDarkShadow | ThreeDFace | ThreeDHighlight | ThreeDLightShadow | ThreeDShadow | Window | WindowFrame | WindowText",
42
+ "spec": "https://drafts.csswg.org/css-color/#typedef-deprecated-system-color"
43
+ },
44
+ "<flex>": {
45
+ "value": "<number> fr",
46
+ "spec": "https://drafts.csswg.org/css-grid-1/#typedef-flex"
47
+ },
48
+ "<font-face-name>": {
49
+ "value": "local( <family-name> )",
50
+ "spec": "https://drafts.csswg.org/css-fonts/#font-face-name-value"
51
+ },
52
+ "<generic-font-family>": {
53
+ "value": "serif | sans-serif | cursive | fantasy | monospace | system-ui | emoji | math | fangsong",
54
+ "spec": "https://drafts.csswg.org/css-fonts-4/#generic-family-value"
55
+ },
56
+ "<generic-voice>": {
57
+ "value": "male | female | child",
58
+ "spec": "https://drafts.csswg.org/css2/aural.html#value-def-generic-voice"
59
+ },
60
+ "<hex-color>": {
61
+ "value": "<hash-token>",
62
+ "prose": "The syntax of a <hex-color> is a <hash-token> token whose value consists of 3, 4, 6, or 8 hexadecimal digits. In other words, a hex color is written as a hash character, \"#\", followed by some number of digits 0-9 or letters a-f (the case of the letters doesn’t matter - #00ff00 is identical to #00FF00).",
63
+ "spec": "https://drafts.csswg.org/css-color/#typedef-hex-color"
64
+ },
65
+ "<hsla()>": {
66
+ "value": "hsla( <hue> <percentage> <percentage> [ / <alpha-value> ]? )",
67
+ "spec": "https://drafts.csswg.org/css-color/#funcdef-hsla"
68
+ },
69
+ "<id>": {
70
+ "value": "<hash-token>",
71
+ "spec": "https://drafts.csswg.org/css-ui/#typedef-id"
72
+ },
73
+ "<left>": {
74
+ "value": "<length> | auto",
75
+ "spec": "https://drafts.fxtf.org/css-masking-1/#typedef-clip-left"
76
+ },
77
+ "<margin-width>": {
78
+ "value": "<length> | <percentage> | auto",
79
+ "spec": "https://drafts.csswg.org/css2/box.html#value-def-margin-width"
80
+ },
81
+ "<mq-boolean>": {
82
+ "value": "<integer>",
83
+ "prose": "The <mq-boolean> value type is an <integer> with the value 0 or 1. Any other integer value is invalid.",
84
+ "spec": "https://drafts.csswg.org/mediaqueries-4/#typedef-mq-boolean"
85
+ },
86
+ "<named-color>": {
87
+ "value": "aliceblue | antiquewhite | aqua | aquamarine | azure | beige | bisque | black | blanchedalmond | blue | blueviolet | brown | burlywood | cadetblue | chartreuse | chocolate | coral | cornflowerblue | cornsilk | crimson | cyan | darkblue | darkcyan | darkgoldenrod | darkgray | darkgreen | darkgrey | darkkhaki | darkmagenta | darkolivegreen | darkorange | darkorchid | darkred | darksalmon | darkseagreen | darkslateblue | darkslategray | darkslategrey | darkturquoise | darkviolet | deeppink | deepskyblue | dimgray | dimgrey | dodgerblue | firebrick | floralwhite | forestgreen | fuchsia | gainsboro | ghostwhite | gold | goldenrod | gray | green | greenyellow | grey | honeydew | hotpink | indianred | indigo | ivory | khaki | lavender | lavenderblush | lawngreen | lemonchiffon | lightblue | lightcoral | lightcyan | lightgoldenrodyellow | lightgray | lightgreen | lightgrey | lightpink | lightsalmon | lightseagreen | lightskyblue | lightslategray | lightslategrey | lightsteelblue | lightyellow | lime | limegreen | linen | magenta | maroon | mediumaquamarine | mediumblue | mediumorchid | mediumpurple | mediumseagreen | mediumslateblue | mediumspringgreen | mediumturquoise | mediumvioletred | midnightblue | mintcream | mistyrose | moccasin | navajowhite | navy | oldlace | olive | olivedrab | orange | orangered | orchid | palegoldenrod | palegreen | paleturquoise | palevioletred | papayawhip | peachpuff | peru | pink | plum | powderblue | purple | rebeccapurple | red | rosybrown | royalblue | saddlebrown | salmon | sandybrown | seagreen | seashell | sienna | silver | skyblue | slateblue | slategray | slategrey | snow | springgreen | steelblue | tan | teal | thistle | tomato | turquoise | violet | wheat | white | whitesmoke | yellow | yellowgreen",
88
+ "spec": "https://drafts.csswg.org/css-color/#typedef-named-color"
89
+ },
90
+ "<n-dimension>": {
91
+ "value": "<dimension-token>",
92
+ "prose": "<n-dimension> is a <dimension-token> with its type flag set to \"integer\", and a unit that is an ASCII case-insensitive match for \"n\"",
93
+ "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-n-dimension"
94
+ },
95
+ "<ndash-dimension>": {
96
+ "value": "<dimension-token>",
97
+ "prose": "<ndash-dimension> is a <dimension-token> with its type flag set to \"integer\", and a unit that is an ASCII case-insensitive match for \"n-\"",
98
+ "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-ndash-dimension"
99
+ },
100
+ "<ndashdigit-dimension>": {
101
+ "value": "<dimension-token>",
102
+ "prose": "<ndashdigit-dimension> is a <dimension-token> with its type flag set to \"integer\", and a unit that is an ASCII case-insensitive match for \"n-*\", where \"*\" is a series of one or more digits",
103
+ "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-ndashdigit-dimension"
104
+ },
105
+ "<ndashdigit-ident>": {
106
+ "value": "<ident-token>",
107
+ "prose": "<ndashdigit-ident> is an <ident-token> whose value is an ASCII case-insensitive match for \"n-*\", where \"*\" is a series of one or more digits",
108
+ "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-ndashdigit-ident"
109
+ },
110
+ "<outline-line-style>": {
111
+ "value": "none | dotted | dashed | solid | double | groove | ridge | inset | outset",
112
+ "prose": "<outline-line-style> accepts the same values as <line-style> except that hidden is not a legal outline style",
113
+ "spec": "https://drafts.csswg.org/css-ui-4/#typedef-outline-line-style"
114
+ },
115
+ "<padding-width>": {
116
+ "value": "<length> | <percentage>",
117
+ "spec": "https://drafts.csswg.org/css2/box.html#value-def-padding-width"
118
+ },
119
+ "<page-size>": {
120
+ "value": "A5 | A4 | A3 | B5 | B4 | letter | legal | ledger",
121
+ "spec": "https://www.w3.org/TR/css3-page/#size"
122
+ },
123
+ "<ratio>": {
124
+ "value": "<integer> / <integer>",
125
+ "prose": "The <ratio> value type is a positive (not zero or negative) <integer> followed by optional whitespace, followed by a solidus ('/'), followed by optional whitespace, followed by a positive <integer>.",
126
+ "spec": "https://drafts.csswg.org/mediaqueries-4/#typedef-ratio"
127
+ },
128
+ "<repeating-linear-gradient()>": {
129
+ "value": "repeating-linear-gradient( [ <angle> | to <side-or-corner> ]? , <color-stop-list> )",
130
+ "spec": "https://drafts.csswg.org/css-images-4/#funcdef-repeating-linear-gradient"
131
+ },
132
+ "<repeating-linear-gradient>": {
133
+ "value": "repeating-linear-gradient( [ [ <angle> | to <side-or-corner> ] ,]? <color-stop>[, <color-stop>]+ )",
134
+ "spec": "https://drafts.csswg.org/css-images-4/#funcdef-repeating-linear-gradient"
135
+ },
136
+ "<repeating-radial-gradient()>": {
137
+ "value": "repeating-radial-gradient( [ [ circle || <length> ] [ at <position> ]? , | [ ellipse || <length-percentage>{2} ] [ at <position> ]? , | [ [ circle | ellipse ] || <extent-keyword> ] [ at <position> ]? , | at <position> , ]? <color-stop> [ , <color-stop> ]+ )",
138
+ "spec": "https://drafts.csswg.org/css-images-4/#funcdef-repeating-radial-gradient"
139
+ },
140
+ "<repeating-radial-gradient>": {
141
+ "value": "repeating-radial-gradient( [ [ <shape> || <size> ] [ at <position> ]? , | at <position>, ]? <color-stop> [ , <color-stop> ]+ )",
142
+ "spec": "https://drafts.csswg.org/css-images-4/#funcdef-repeating-radial-gradient"
143
+ },
144
+ "<repeating-conic-gradient()>": {
145
+ "value": "repeating-conic-gradient( [ from <angle> ]? [ at <position> ]?, <angular-color-stop-list> )",
146
+ "spec": "https://drafts.csswg.org/css-images-4/#funcdef-repeating-conic-gradient"
147
+ },
148
+ "<rgba()>": {
149
+ "value": "rgba( <percentage>{3} [ / <alpha-value> ]? ) | rgb( <number>{3} [ / <alpha-value> ]? )",
150
+ "spec": "https://drafts.csswg.org/css-color/#funcdef-rgba"
151
+ },
152
+ "<right>": {
153
+ "value": "<length> | auto",
154
+ "spec": "https://drafts.fxtf.org/css-masking-1/#typedef-clip-right"
155
+ },
156
+ "<shape>": {
157
+ "value": "<rect()>",
158
+ "spec": "https://drafts.csswg.org/css2/visufx.html#value-def-shape"
159
+ },
160
+ "<signed-integer>": {
161
+ "value": "<number-token>",
162
+ "prose": "<signed-integer> is a <number-token> with its type flag set to \"integer\", and whose representation starts with \"+\" or \"-\"",
163
+ "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-signed-integer"
164
+ },
165
+ "<signless-integer>": {
166
+ "value": "<number-token>",
167
+ "prose": "<signless-integer> is a <number-token> with its type flag set to \"integer\", and whose representation start with a digit",
168
+ "spec": "https://drafts.csswg.org/css-syntax-3/#typedef-signless-integer"
169
+ },
170
+ "<specific-voice>": {
171
+ "prose": "Values are specific instances (e.g., comedian, trinoids, carlos, lani)."
172
+ },
173
+ "<top>": {
174
+ "value": "<length> | auto",
175
+ "spec": "https://drafts.fxtf.org/css-masking-1/#typedef-clip-top"
176
+ },
177
+ "<transform-function>": {
178
+ "value": "<matrix()> | <translate()> | <translateX()> | <translateY()> | <scale()> | <scaleX()> | <scaleY()> | <rotate()> | <skew()> | <skewX()> | <skewY()> | <matrix3d()> | <translate3d()> | <translateZ()> | <scale3d()> | <scaleZ()> | <rotate3d()> | <rotateX()> | <rotateY()> | <rotateZ()> | <perspective()>",
179
+ "spec": "https://drafts.csswg.org/css-transforms/#typedef-transform-function"
180
+ },
181
+ "<uri>": {
182
+ "value": "<url>",
183
+ "spec": "https://www.w3.org/TR/css3-values/#url-value"
184
+ },
185
+ "<url-modifier>": {
186
+ "prose": "<url-modifier> is either an <ident> or a functional notation.",
187
+ "spec": "https://drafts.csswg.org/css-values/#typedef-url-modifier"
188
+ },
189
+ "<x>": {
190
+ "value": "<number>",
191
+ "spec": "https://drafts.csswg.org/css-ui/#propdef-cursor"
192
+ },
193
+ "<y>": {
194
+ "value": "<number>",
195
+ "spec": "https://drafts.csswg.org/css-ui/#propdef-cursor"
196
+ }
197
+ }