reffy 6.4.2 → 6.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +158 -158
  3. package/index.js +11 -11
  4. package/package.json +53 -53
  5. package/reffy.js +248 -248
  6. package/src/browserlib/canonicalize-url.mjs +50 -50
  7. package/src/browserlib/create-outline.mjs +352 -352
  8. package/src/browserlib/extract-cssdfn.mjs +319 -319
  9. package/src/browserlib/extract-dfns.mjs +687 -686
  10. package/src/browserlib/extract-editors.mjs~ +14 -0
  11. package/src/browserlib/extract-elements.mjs +205 -205
  12. package/src/browserlib/extract-headings.mjs +48 -48
  13. package/src/browserlib/extract-ids.mjs +28 -28
  14. package/src/browserlib/extract-links.mjs +28 -28
  15. package/src/browserlib/extract-references.mjs +203 -203
  16. package/src/browserlib/extract-webidl.mjs +134 -134
  17. package/src/browserlib/generate-es-dfn-report.sh~ +4 -0
  18. package/src/browserlib/get-absolute-url.mjs +21 -21
  19. package/src/browserlib/get-generator.mjs +26 -26
  20. package/src/browserlib/get-lastmodified-date.mjs +13 -13
  21. package/src/browserlib/get-title.mjs +11 -11
  22. package/src/browserlib/informative-selector.mjs +16 -16
  23. package/src/browserlib/map-ids-to-headings.mjs +136 -136
  24. package/src/browserlib/reffy.json +53 -53
  25. package/src/cli/check-missing-dfns.js +609 -609
  26. package/src/cli/csstree-grammar-check.js +28 -0
  27. package/src/cli/csstree-grammar-check.js~ +10 -0
  28. package/src/cli/csstree-grammar-parser.js +11 -0
  29. package/src/cli/csstree-grammar-parser.js~ +1 -0
  30. package/src/cli/extract-editors.js~ +38 -0
  31. package/src/cli/generate-idlnames.js +430 -430
  32. package/src/cli/generate-idlparsed.js +139 -139
  33. package/src/cli/merge-crawl-results.js +128 -128
  34. package/src/cli/parse-webidl.js +430 -430
  35. package/src/cli/process-specs.js~ +28 -0
  36. package/src/lib/css-grammar-parse-tree.schema.json +109 -109
  37. package/src/lib/css-grammar-parser.js +440 -440
  38. package/src/lib/fetch.js +56 -56
  39. package/src/lib/nock-server.js +127 -127
  40. package/src/lib/specs-crawler.js +631 -622
  41. package/src/lib/util.js +943 -943
  42. package/src/specs/missing-css-rules.json +197 -197
  43. package/src/specs/spec-equivalents.json +149 -149
@@ -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
+ }