@markuplint/html-spec 2.0.0-dev.26 → 2.0.0-rc.5

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 (228) hide show
  1. package/index.json +8572 -5691
  2. package/package.json +5 -3
  3. package/src/aria-in-html/abbr.json +8 -0
  4. package/src/aria-in-html/address.json +8 -0
  5. package/src/aria-in-html/b.json +8 -0
  6. package/src/aria-in-html/base.json +8 -0
  7. package/src/aria-in-html/bdi.json +8 -0
  8. package/src/aria-in-html/bdo.json +8 -0
  9. package/src/aria-in-html/blockquote.json +8 -0
  10. package/src/aria-in-html/canvas.json +8 -0
  11. package/src/aria-in-html/caption.json +8 -0
  12. package/src/aria-in-html/cite.json +8 -0
  13. package/src/aria-in-html/code.json +8 -0
  14. package/src/aria-in-html/data.json +8 -0
  15. package/src/aria-in-html/del.json +8 -0
  16. package/src/aria-in-html/div.json +8 -0
  17. package/src/aria-in-html/em.json +8 -0
  18. package/src/aria-in-html/hgroup.json +8 -0
  19. package/src/aria-in-html/i.json +8 -0
  20. package/src/aria-in-html/ins.json +8 -0
  21. package/src/aria-in-html/kbd.json +8 -0
  22. package/src/aria-in-html/mark.json +8 -0
  23. package/src/aria-in-html/p.json +8 -0
  24. package/src/aria-in-html/pre.json +8 -0
  25. package/src/aria-in-html/q.json +8 -0
  26. package/src/aria-in-html/rp.json +8 -0
  27. package/src/aria-in-html/rt.json +8 -0
  28. package/src/aria-in-html/ruby.json +8 -0
  29. package/src/aria-in-html/s.json +8 -0
  30. package/src/aria-in-html/samp.json +8 -0
  31. package/src/aria-in-html/small.json +8 -0
  32. package/src/aria-in-html/span.json +8 -0
  33. package/src/aria-in-html/strong.json +8 -0
  34. package/src/aria-in-html/sub.json +8 -0
  35. package/src/aria-in-html/sup.json +8 -0
  36. package/src/aria-in-html/td.json +6 -2
  37. package/src/aria-in-html/time.json +8 -0
  38. package/src/aria-in-html/u.json +8 -0
  39. package/src/aria-in-html/var.json +8 -0
  40. package/src/aria-in-html/wbr.json +8 -0
  41. package/src/attributes/a.json +9 -40
  42. package/src/attributes/abbr.json +11 -0
  43. package/src/attributes/address.json +11 -0
  44. package/src/attributes/area.json +24 -44
  45. package/src/attributes/article.json +11 -0
  46. package/src/attributes/aside.json +11 -0
  47. package/src/attributes/audio.json +10 -32
  48. package/src/attributes/b.json +11 -0
  49. package/src/attributes/base.json +9 -13
  50. package/src/attributes/bdi.json +11 -0
  51. package/src/attributes/bdo.json +8 -8
  52. package/src/attributes/blockquote.json +11 -4
  53. package/src/attributes/body.json +57 -50
  54. package/src/attributes/br.json +11 -0
  55. package/src/attributes/button.json +27 -44
  56. package/src/attributes/canvas.json +16 -8
  57. package/src/attributes/caption.json +11 -0
  58. package/src/attributes/cite.json +11 -0
  59. package/src/attributes/code.json +11 -0
  60. package/src/attributes/col.json +18 -5
  61. package/src/attributes/colgroup.json +18 -5
  62. package/src/attributes/data.json +12 -5
  63. package/src/attributes/datalist.json +11 -0
  64. package/src/attributes/dd.json +11 -0
  65. package/src/attributes/del.json +14 -7
  66. package/src/attributes/details.json +11 -9
  67. package/src/attributes/dfn.json +11 -0
  68. package/src/attributes/dialog.json +15 -4
  69. package/src/attributes/div.json +11 -0
  70. package/src/attributes/dl.json +11 -0
  71. package/src/attributes/dt.json +11 -0
  72. package/src/attributes/em.json +11 -0
  73. package/src/attributes/embed.json +22 -16
  74. package/src/attributes/fieldset.json +9 -14
  75. package/src/attributes/figcaption.json +11 -0
  76. package/src/attributes/figure.json +11 -0
  77. package/src/attributes/footer.json +11 -0
  78. package/src/attributes/form.json +62 -29
  79. package/src/attributes/h1.json +11 -0
  80. package/src/attributes/h2.json +11 -0
  81. package/src/attributes/h3.json +11 -0
  82. package/src/attributes/h4.json +11 -0
  83. package/src/attributes/h5.json +11 -0
  84. package/src/attributes/h6.json +11 -0
  85. package/src/attributes/head.json +11 -0
  86. package/src/attributes/header.json +11 -0
  87. package/src/attributes/hgroup.json +11 -0
  88. package/src/attributes/hr.json +11 -0
  89. package/src/attributes/html.json +11 -0
  90. package/src/attributes/i.json +11 -0
  91. package/src/attributes/iframe.json +51 -57
  92. package/src/attributes/img.json +31 -50
  93. package/src/attributes/input.json +138 -121
  94. package/src/attributes/ins.json +14 -7
  95. package/src/attributes/kbd.json +11 -0
  96. package/src/attributes/label.json +11 -8
  97. package/src/attributes/legend.json +11 -0
  98. package/src/attributes/li.json +12 -5
  99. package/src/attributes/link.json +110 -51
  100. package/src/attributes/main.json +11 -0
  101. package/src/attributes/map.json +13 -5
  102. package/src/attributes/mark.json +11 -0
  103. package/src/attributes/math.json +8 -0
  104. package/src/attributes/menu.json +11 -0
  105. package/src/attributes/meta.json +36 -21
  106. package/src/attributes/meter.json +27 -20
  107. package/src/attributes/nav.json +11 -0
  108. package/src/attributes/noscript.json +11 -0
  109. package/src/attributes/object.json +20 -27
  110. package/src/attributes/ol.json +19 -9
  111. package/src/attributes/optgroup.json +13 -9
  112. package/src/attributes/option.json +18 -14
  113. package/src/attributes/output.json +12 -12
  114. package/src/attributes/p.json +11 -0
  115. package/src/attributes/param.json +17 -8
  116. package/src/attributes/picture.json +11 -0
  117. package/src/attributes/portal.json +17 -8
  118. package/src/attributes/pre.json +11 -0
  119. package/src/attributes/progress.json +16 -8
  120. package/src/attributes/q.json +11 -4
  121. package/src/attributes/rp.json +11 -0
  122. package/src/attributes/rt.json +11 -0
  123. package/src/attributes/ruby.json +11 -0
  124. package/src/attributes/s.json +11 -0
  125. package/src/attributes/samp.json +11 -0
  126. package/src/attributes/script.json +48 -27
  127. package/src/attributes/section.json +11 -0
  128. package/src/attributes/select.json +17 -29
  129. package/src/attributes/slot.json +12 -5
  130. package/src/attributes/small.json +11 -0
  131. package/src/attributes/source.json +34 -16
  132. package/src/attributes/span.json +11 -0
  133. package/src/attributes/strong.json +11 -0
  134. package/src/attributes/style.json +12 -5
  135. package/src/attributes/sub.json +11 -0
  136. package/src/attributes/summary.json +11 -0
  137. package/src/attributes/sup.json +11 -0
  138. package/src/attributes/svg_a.json +82 -47
  139. package/src/attributes/svg_animate.json +94 -13
  140. package/src/attributes/svg_animateMotion.json +36 -32
  141. package/src/attributes/svg_animateTransform.json +27 -14
  142. package/src/attributes/svg_circle.json +88 -26
  143. package/src/attributes/svg_clipPath.json +79 -15
  144. package/src/attributes/svg_defs.json +77 -1
  145. package/src/attributes/svg_desc.json +7 -1
  146. package/src/attributes/svg_discard.json +13 -10
  147. package/src/attributes/svg_ellipse.json +89 -27
  148. package/src/attributes/svg_feBlend.json +89 -40
  149. package/src/attributes/svg_feColorMatrix.json +86 -38
  150. package/src/attributes/svg_feComponentTransfer.json +76 -31
  151. package/src/attributes/svg_feComposite.json +114 -56
  152. package/src/attributes/svg_feConvolveMatrix.json +119 -62
  153. package/src/attributes/svg_feDiffuseLighting.json +91 -42
  154. package/src/attributes/svg_feDisplacementMap.json +101 -47
  155. package/src/attributes/svg_feDistantLight.json +16 -11
  156. package/src/attributes/svg_feDropShadow.json +92 -43
  157. package/src/attributes/svg_feFlood.json +83 -37
  158. package/src/attributes/svg_feFuncA.json +6 -10
  159. package/src/attributes/svg_feFuncB.json +6 -10
  160. package/src/attributes/svg_feFuncG.json +6 -10
  161. package/src/attributes/svg_feFuncR.json +6 -10
  162. package/src/attributes/svg_feGaussianBlur.json +86 -38
  163. package/src/attributes/svg_feImage.json +98 -31
  164. package/src/attributes/svg_feMerge.json +76 -15
  165. package/src/attributes/svg_feMergeNode.json +6 -19
  166. package/src/attributes/svg_feMorphology.json +88 -39
  167. package/src/attributes/svg_feOffset.json +87 -39
  168. package/src/attributes/svg_fePointLight.json +21 -15
  169. package/src/attributes/svg_feSpecularLighting.json +96 -47
  170. package/src/attributes/svg_feSpotLight.json +52 -58
  171. package/src/attributes/svg_feTile.json +76 -31
  172. package/src/attributes/svg_feTurbulence.json +101 -33
  173. package/src/attributes/svg_filter.json +103 -27
  174. package/src/attributes/svg_foreignObject.json +84 -38
  175. package/src/attributes/svg_g.json +80 -8
  176. package/src/attributes/svg_hatch.json +103 -29
  177. package/src/attributes/svg_hatchpath.json +79 -11
  178. package/src/attributes/svg_image.json +98 -46
  179. package/src/attributes/svg_line.json +105 -27
  180. package/src/attributes/svg_linearGradient.json +118 -37
  181. package/src/attributes/svg_marker.json +125 -44
  182. package/src/attributes/svg_mask.json +89 -22
  183. package/src/attributes/svg_mesh.json +83 -10
  184. package/src/attributes/svg_meshgradient.json +22 -29
  185. package/src/attributes/svg_meshpatch.json +76 -1
  186. package/src/attributes/svg_meshrow.json +76 -1
  187. package/src/attributes/svg_metadata.json +7 -1
  188. package/src/attributes/svg_mpath.json +11 -8
  189. package/src/attributes/svg_path.json +87 -15
  190. package/src/attributes/svg_pattern.json +110 -46
  191. package/src/attributes/svg_polygon.json +89 -14
  192. package/src/attributes/svg_polyline.json +89 -14
  193. package/src/attributes/svg_radialGradient.json +132 -49
  194. package/src/attributes/svg_rect.json +91 -51
  195. package/src/attributes/svg_script.json +20 -17
  196. package/src/attributes/svg_set.json +27 -13
  197. package/src/attributes/svg_stop.json +93 -18
  198. package/src/attributes/svg_style.json +16 -13
  199. package/src/attributes/svg_svg.json +115 -62
  200. package/src/attributes/svg_switch.json +80 -8
  201. package/src/attributes/svg_symbol.json +27 -44
  202. package/src/attributes/svg_text.json +115 -32
  203. package/src/attributes/svg_textPath.json +124 -37
  204. package/src/attributes/svg_title.json +7 -1
  205. package/src/attributes/svg_tspan.json +111 -32
  206. package/src/attributes/svg_use.json +88 -46
  207. package/src/attributes/svg_view.json +21 -17
  208. package/src/attributes/table.json +11 -0
  209. package/src/attributes/tbody.json +11 -0
  210. package/src/attributes/td.json +9 -14
  211. package/src/attributes/template.json +11 -0
  212. package/src/attributes/textarea.json +42 -50
  213. package/src/attributes/tfoot.json +11 -0
  214. package/src/attributes/th.json +18 -20
  215. package/src/attributes/thead.json +11 -0
  216. package/src/attributes/time.json +12 -23
  217. package/src/attributes/title.json +11 -0
  218. package/src/attributes/tr.json +11 -0
  219. package/src/attributes/track.json +38 -0
  220. package/src/attributes/u.json +11 -0
  221. package/src/attributes/ul.json +11 -0
  222. package/src/attributes/var.json +11 -0
  223. package/src/attributes/video.json +34 -48
  224. package/src/attributes/wbr.json +11 -0
  225. package/src/global-attributes/_global.json +1362 -1161
  226. package/src/permitted-structures/svg_a.json +1 -1
  227. package/src/structure.test.ts +64 -0
  228. package/src/attributes/_custom.json +0 -10
@@ -1,11 +1,83 @@
1
1
  {
2
2
  "tag": "feBlend",
3
- "attributes": [
4
- "#SVGCoreAttrs",
5
- "#SVGPresentationAttrs",
6
- "#SVGFilterPrimitiveAttrs",
7
- {
8
- "name": "in",
3
+ "ref": "https://drafts.fxtf.org/filter-effects/#feBlendElement",
4
+ "global": {
5
+ "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
6
+ "#SVGPresentationAttrs": [
7
+ "alignment-baseline",
8
+ "baseline-shift",
9
+ "clip",
10
+ "clip-path",
11
+ "clip-rule",
12
+ "color",
13
+ "color-interpolation",
14
+ "color-interpolation-filters",
15
+ "color-rendering",
16
+ "cursor",
17
+ "direction",
18
+ "display",
19
+ "dominant-baseline",
20
+ "enable-background",
21
+ "fill",
22
+ "fill-opacity",
23
+ "fill-rule",
24
+ "filter",
25
+ "flood-color",
26
+ "flood-opacity",
27
+ "font",
28
+ "font-family",
29
+ "font-size",
30
+ "font-size-adjust",
31
+ "font-stretch",
32
+ "font-style",
33
+ "font-variant",
34
+ "font-weight",
35
+ "glyph-orientation-horizontal",
36
+ "glyph-orientation-vertical",
37
+ "image-rendering",
38
+ "isolation",
39
+ "kerning",
40
+ "letter-spacing",
41
+ "lighting-color",
42
+ "marker",
43
+ "marker-end",
44
+ "marker-mid",
45
+ "marker-start",
46
+ "mask",
47
+ "mask-type",
48
+ "opacity",
49
+ "overflow",
50
+ "paint-order",
51
+ "pointer-events",
52
+ "shape-rendering",
53
+ "stop-color",
54
+ "stop-opacity",
55
+ "stroke",
56
+ "stroke-dasharray",
57
+ "stroke-dashoffset",
58
+ "stroke-linecap",
59
+ "stroke-linejoin",
60
+ "stroke-miterlimit",
61
+ "stroke-opacity",
62
+ "stroke-width",
63
+ "text-anchor",
64
+ "text-decoration",
65
+ "text-overflow",
66
+ "text-rendering",
67
+ "transform",
68
+ "transform-origin",
69
+ "unicode-bidi",
70
+ "vector-effect",
71
+ "visibility",
72
+ "white-space",
73
+ "word-spacing",
74
+ "writing-mode"
75
+ ],
76
+ "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"]
77
+ },
78
+ "attributes": {
79
+ "in2": {
80
+ "ref": "https://drafts.fxtf.org/filter-effects/#element-attrdef-feblend-in2",
9
81
  "type": [
10
82
  {
11
83
  "enum": [
@@ -15,41 +87,18 @@
15
87
  "BackgroundAlpha",
16
88
  "FillPaint",
17
89
  "StrokePaint"
18
- ]
90
+ ],
91
+ "disallowToSurroundBySpaces": false
19
92
  },
20
- "CSSCustomIdent"
21
- ]
93
+ "<custom-ident>"
94
+ ],
95
+ "animatable": true
22
96
  },
23
- {
24
- "name": "in2",
25
- "type": [
26
- {
27
- "enum": [
28
- "SourceGraphic",
29
- "SourceAlpha",
30
- "BackgroundImage",
31
- "BackgroundAlpha",
32
- "FillPaint",
33
- "StrokePaint"
34
- ]
35
- },
36
- "CSSCustomIdent"
37
- ]
38
- },
39
- {
40
- "name": "mode",
41
- "type": "CSSBlendMode",
42
- "defaultValue": "normal"
43
- },
44
- {
45
- "name": "height",
46
- "type": ["SVGLength", "SVGPercentage"],
47
- "defaultValue": "100%"
48
- },
49
- {
50
- "name": "width",
51
- "type": ["SVGLength", "SVGPercentage"],
52
- "defaultValue": "100%"
97
+ "mode": {
98
+ "ref": "https://drafts.fxtf.org/filter-effects/#element-attrdef-feblend-mode",
99
+ "type": "<blend-mode>",
100
+ "defaultValue": "normal",
101
+ "animatable": true
53
102
  }
54
- ]
103
+ }
55
104
  }
@@ -1,45 +1,93 @@
1
1
  {
2
2
  "tag": "feColorMatrix",
3
- "attributes": [
4
- "#SVGCoreAttrs",
5
- "#SVGPresentationAttrs",
6
- "#SVGFilterPrimitiveAttrs",
7
- {
8
- "name": "in",
9
- "type": [
10
- {
11
- "enum": [
12
- "SourceGraphic",
13
- "SourceAlpha",
14
- "BackgroundImage",
15
- "BackgroundAlpha",
16
- "FillPaint",
17
- "StrokePaint"
18
- ]
19
- },
20
- "CSSCustomIdent"
21
- ]
22
- },
23
- {
24
- "name": "type",
3
+ "ref": "https://drafts.fxtf.org/filter-effects/#feColorMatrixElement",
4
+ "global": {
5
+ "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
6
+ "#SVGPresentationAttrs": [
7
+ "alignment-baseline",
8
+ "baseline-shift",
9
+ "clip",
10
+ "clip-path",
11
+ "clip-rule",
12
+ "color",
13
+ "color-interpolation",
14
+ "color-interpolation-filters",
15
+ "color-rendering",
16
+ "cursor",
17
+ "direction",
18
+ "display",
19
+ "dominant-baseline",
20
+ "enable-background",
21
+ "fill",
22
+ "fill-opacity",
23
+ "fill-rule",
24
+ "filter",
25
+ "flood-color",
26
+ "flood-opacity",
27
+ "font",
28
+ "font-family",
29
+ "font-size",
30
+ "font-size-adjust",
31
+ "font-stretch",
32
+ "font-style",
33
+ "font-variant",
34
+ "font-weight",
35
+ "glyph-orientation-horizontal",
36
+ "glyph-orientation-vertical",
37
+ "image-rendering",
38
+ "isolation",
39
+ "kerning",
40
+ "letter-spacing",
41
+ "lighting-color",
42
+ "marker",
43
+ "marker-end",
44
+ "marker-mid",
45
+ "marker-start",
46
+ "mask",
47
+ "mask-type",
48
+ "opacity",
49
+ "overflow",
50
+ "paint-order",
51
+ "pointer-events",
52
+ "shape-rendering",
53
+ "stop-color",
54
+ "stop-opacity",
55
+ "stroke",
56
+ "stroke-dasharray",
57
+ "stroke-dashoffset",
58
+ "stroke-linecap",
59
+ "stroke-linejoin",
60
+ "stroke-miterlimit",
61
+ "stroke-opacity",
62
+ "stroke-width",
63
+ "text-anchor",
64
+ "text-decoration",
65
+ "text-overflow",
66
+ "text-rendering",
67
+ "transform",
68
+ "transform-origin",
69
+ "unicode-bidi",
70
+ "vector-effect",
71
+ "visibility",
72
+ "white-space",
73
+ "word-spacing",
74
+ "writing-mode"
75
+ ],
76
+ "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"]
77
+ },
78
+ "attributes": {
79
+ "type": {
80
+ "ref": "https://drafts.fxtf.org/filter-effects/#element-attrdef-fecolormatrix-type",
25
81
  "type": {
26
- "enum": ["matrix", "saturate", "hueRotate", "luminanceToAlpha"]
82
+ "enum": ["matrix", "saturate", "hueRotate", "luminanceToAlpha"],
83
+ "disallowToSurroundBySpaces": false
27
84
  },
28
- "defaultValue": "matrix"
29
- },
30
- {
31
- "name": "values",
32
- "type": "SVGColorMatrix"
33
- },
34
- {
35
- "name": "height",
36
- "type": ["SVGLength", "SVGPercentage"],
37
- "defaultValue": "100%"
85
+ "defaultValue": "matrix",
86
+ "animatable": true
38
87
  },
39
- {
40
- "name": "width",
41
- "type": ["SVGLength", "SVGPercentage"],
42
- "defaultValue": "100%"
88
+ "values": {
89
+ "ref": "https://drafts.fxtf.org/filter-effects/#element-attrdef-fecolormatrix-values",
90
+ "type": "<color-matrix>"
43
91
  }
44
- ]
92
+ }
45
93
  }
@@ -1,34 +1,79 @@
1
1
  {
2
2
  "tag": "feComponentTransfer",
3
- "attributes": [
4
- "#SVGCoreAttrs",
5
- "#SVGPresentationAttrs",
6
- "#SVGFilterPrimitiveAttrs",
7
- {
8
- "name": "in",
9
- "type": [
10
- {
11
- "enum": [
12
- "SourceGraphic",
13
- "SourceAlpha",
14
- "BackgroundImage",
15
- "BackgroundAlpha",
16
- "FillPaint",
17
- "StrokePaint"
18
- ]
19
- },
20
- "CSSCustomIdent"
21
- ]
22
- },
23
- {
24
- "name": "height",
25
- "type": ["SVGLength", "SVGPercentage"],
26
- "defaultValue": "100%"
27
- },
28
- {
29
- "name": "width",
30
- "type": ["SVGLength", "SVGPercentage"],
31
- "defaultValue": "100%"
32
- }
33
- ]
3
+ "ref": "https://drafts.fxtf.org/filter-effects/#feComponentTransferElement",
4
+ "global": {
5
+ "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
6
+ "#SVGPresentationAttrs": [
7
+ "alignment-baseline",
8
+ "baseline-shift",
9
+ "clip",
10
+ "clip-path",
11
+ "clip-rule",
12
+ "color",
13
+ "color-interpolation",
14
+ "color-interpolation-filters",
15
+ "color-rendering",
16
+ "cursor",
17
+ "direction",
18
+ "display",
19
+ "dominant-baseline",
20
+ "enable-background",
21
+ "fill",
22
+ "fill-opacity",
23
+ "fill-rule",
24
+ "filter",
25
+ "flood-color",
26
+ "flood-opacity",
27
+ "font",
28
+ "font-family",
29
+ "font-size",
30
+ "font-size-adjust",
31
+ "font-stretch",
32
+ "font-style",
33
+ "font-variant",
34
+ "font-weight",
35
+ "glyph-orientation-horizontal",
36
+ "glyph-orientation-vertical",
37
+ "image-rendering",
38
+ "isolation",
39
+ "kerning",
40
+ "letter-spacing",
41
+ "lighting-color",
42
+ "marker",
43
+ "marker-end",
44
+ "marker-mid",
45
+ "marker-start",
46
+ "mask",
47
+ "mask-type",
48
+ "opacity",
49
+ "overflow",
50
+ "paint-order",
51
+ "pointer-events",
52
+ "shape-rendering",
53
+ "stop-color",
54
+ "stop-opacity",
55
+ "stroke",
56
+ "stroke-dasharray",
57
+ "stroke-dashoffset",
58
+ "stroke-linecap",
59
+ "stroke-linejoin",
60
+ "stroke-miterlimit",
61
+ "stroke-opacity",
62
+ "stroke-width",
63
+ "text-anchor",
64
+ "text-decoration",
65
+ "text-overflow",
66
+ "text-rendering",
67
+ "transform",
68
+ "transform-origin",
69
+ "unicode-bidi",
70
+ "vector-effect",
71
+ "visibility",
72
+ "white-space",
73
+ "word-spacing",
74
+ "writing-mode"
75
+ ],
76
+ "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"]
77
+ },
78
+ "attributes": {}
34
79
  }
@@ -1,11 +1,83 @@
1
1
  {
2
2
  "tag": "feComposite",
3
- "attributes": [
4
- "#SVGCoreAttrs",
5
- "#SVGPresentationAttrs",
6
- "#SVGFilterPrimitiveAttrs",
7
- {
8
- "name": "in",
3
+ "ref": "https://drafts.fxtf.org/filter-effects/#feCompositeElement",
4
+ "global": {
5
+ "#SVGCoreAttrs": ["id", "xml:base", "xml:lang", "xml:space", "class", "style"],
6
+ "#SVGPresentationAttrs": [
7
+ "alignment-baseline",
8
+ "baseline-shift",
9
+ "clip",
10
+ "clip-path",
11
+ "clip-rule",
12
+ "color",
13
+ "color-interpolation",
14
+ "color-interpolation-filters",
15
+ "color-rendering",
16
+ "cursor",
17
+ "direction",
18
+ "display",
19
+ "dominant-baseline",
20
+ "enable-background",
21
+ "fill",
22
+ "fill-opacity",
23
+ "fill-rule",
24
+ "filter",
25
+ "flood-color",
26
+ "flood-opacity",
27
+ "font",
28
+ "font-family",
29
+ "font-size",
30
+ "font-size-adjust",
31
+ "font-stretch",
32
+ "font-style",
33
+ "font-variant",
34
+ "font-weight",
35
+ "glyph-orientation-horizontal",
36
+ "glyph-orientation-vertical",
37
+ "image-rendering",
38
+ "isolation",
39
+ "kerning",
40
+ "letter-spacing",
41
+ "lighting-color",
42
+ "marker",
43
+ "marker-end",
44
+ "marker-mid",
45
+ "marker-start",
46
+ "mask",
47
+ "mask-type",
48
+ "opacity",
49
+ "overflow",
50
+ "paint-order",
51
+ "pointer-events",
52
+ "shape-rendering",
53
+ "stop-color",
54
+ "stop-opacity",
55
+ "stroke",
56
+ "stroke-dasharray",
57
+ "stroke-dashoffset",
58
+ "stroke-linecap",
59
+ "stroke-linejoin",
60
+ "stroke-miterlimit",
61
+ "stroke-opacity",
62
+ "stroke-width",
63
+ "text-anchor",
64
+ "text-decoration",
65
+ "text-overflow",
66
+ "text-rendering",
67
+ "transform",
68
+ "transform-origin",
69
+ "unicode-bidi",
70
+ "vector-effect",
71
+ "visibility",
72
+ "white-space",
73
+ "word-spacing",
74
+ "writing-mode"
75
+ ],
76
+ "#SVGFilterPrimitiveAttrs": ["x", "y", "width", "height", "result", "in"]
77
+ },
78
+ "attributes": {
79
+ "in2": {
80
+ "ref": "https://drafts.fxtf.org/filter-effects/#element-attrdef-fecomposite-in2",
9
81
  "type": [
10
82
  {
11
83
  "enum": [
@@ -15,63 +87,49 @@
15
87
  "BackgroundAlpha",
16
88
  "FillPaint",
17
89
  "StrokePaint"
18
- ]
90
+ ],
91
+ "disallowToSurroundBySpaces": false
19
92
  },
20
- "CSSCustomIdent"
21
- ]
93
+ "<custom-ident>"
94
+ ],
95
+ "animatable": true
22
96
  },
23
- {
24
- "name": "in2",
25
- "type": [
26
- {
27
- "enum": [
28
- "SourceGraphic",
29
- "SourceAlpha",
30
- "BackgroundImage",
31
- "BackgroundAlpha",
32
- "FillPaint",
33
- "StrokePaint"
34
- ]
35
- },
36
- "CSSCustomIdent"
37
- ]
38
- },
39
- {
40
- "name": "operator",
97
+ "operator": {
98
+ "ref": "https://drafts.fxtf.org/filter-effects/#element-attrdef-fecomposite-operator",
41
99
  "type": {
42
- "enum": ["over", "in", "out", "atop", "xor", "lighter", "arithmetic"]
100
+ "enum": ["over", "in", "out", "atop", "xor", "lighter", "arithmetic"],
101
+ "disallowToSurroundBySpaces": false
43
102
  },
44
- "defaultValue": "over"
45
- },
46
- {
47
- "name": "k1",
48
- "type": "Float",
49
- "defaultValue": "0"
50
- },
51
- {
52
- "name": "k2",
53
- "type": "Float",
54
- "defaultValue": "0"
103
+ "defaultValue": "over",
104
+ "animatable": true
55
105
  },
56
- {
57
- "name": "k3",
58
- "type": "Float",
59
- "defaultValue": "0"
106
+ "k1": {
107
+ "ref": "https://drafts.fxtf.org/filter-effects/#element-attrdef-fecomposite-k1",
108
+ "type": "<number>",
109
+ "defaultValue": "0",
110
+ "animatable": true,
111
+ "ineffective": ":not([operator='arithmetic' i])"
60
112
  },
61
- {
62
- "name": "k4",
63
- "type": "Float",
64
- "defaultValue": "0"
113
+ "k2": {
114
+ "ref": "https://drafts.fxtf.org/filter-effects/#element-attrdef-fecomposite-k2",
115
+ "type": "<number>",
116
+ "defaultValue": "0",
117
+ "animatable": true,
118
+ "ineffective": ":not([operator='arithmetic' i])"
65
119
  },
66
- {
67
- "name": "height",
68
- "type": ["SVGLength", "SVGPercentage"],
69
- "defaultValue": "100%"
120
+ "k3": {
121
+ "ref": "https://drafts.fxtf.org/filter-effects/#element-attrdef-fecomposite-k3",
122
+ "type": "<number>",
123
+ "defaultValue": "0",
124
+ "animatable": true,
125
+ "ineffective": ":not([operator='arithmetic' i])"
70
126
  },
71
- {
72
- "name": "width",
73
- "type": ["SVGLength", "SVGPercentage"],
74
- "defaultValue": "100%"
127
+ "k4": {
128
+ "ref": "https://drafts.fxtf.org/filter-effects/#element-attrdef-fecomposite-k4",
129
+ "type": "<number>",
130
+ "defaultValue": "0",
131
+ "animatable": true,
132
+ "ineffective": ":not([operator='arithmetic' i])"
75
133
  }
76
- ]
134
+ }
77
135
  }