@markuplint/html-spec 2.0.0-dev.2021117.0 → 2.0.0-dev.20211213.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 (187) hide show
  1. package/index.json +8512 -5688
  2. package/package.json +5 -3
  3. package/src/attributes/a.json +9 -40
  4. package/src/attributes/address.json +11 -0
  5. package/src/attributes/area.json +24 -44
  6. package/src/attributes/article.json +11 -0
  7. package/src/attributes/aside.json +11 -0
  8. package/src/attributes/audio.json +10 -32
  9. package/src/attributes/b.json +11 -0
  10. package/src/attributes/base.json +9 -13
  11. package/src/attributes/bdi.json +11 -0
  12. package/src/attributes/bdo.json +8 -8
  13. package/src/attributes/blockquote.json +11 -4
  14. package/src/attributes/body.json +57 -50
  15. package/src/attributes/br.json +11 -0
  16. package/src/attributes/button.json +27 -44
  17. package/src/attributes/canvas.json +16 -8
  18. package/src/attributes/caption.json +11 -0
  19. package/src/attributes/cite.json +11 -0
  20. package/src/attributes/code.json +11 -0
  21. package/src/attributes/col.json +18 -5
  22. package/src/attributes/colgroup.json +18 -5
  23. package/src/attributes/data.json +12 -5
  24. package/src/attributes/datalist.json +11 -0
  25. package/src/attributes/dd.json +11 -0
  26. package/src/attributes/del.json +14 -7
  27. package/src/attributes/details.json +11 -9
  28. package/src/attributes/dfn.json +11 -0
  29. package/src/attributes/dialog.json +15 -4
  30. package/src/attributes/div.json +11 -0
  31. package/src/attributes/dl.json +11 -0
  32. package/src/attributes/dt.json +11 -0
  33. package/src/attributes/em.json +11 -0
  34. package/src/attributes/embed.json +22 -16
  35. package/src/attributes/fieldset.json +9 -14
  36. package/src/attributes/figcaption.json +11 -0
  37. package/src/attributes/figure.json +11 -0
  38. package/src/attributes/footer.json +11 -0
  39. package/src/attributes/form.json +62 -29
  40. package/src/attributes/h1.json +11 -0
  41. package/src/attributes/h2.json +11 -0
  42. package/src/attributes/h3.json +11 -0
  43. package/src/attributes/h4.json +11 -0
  44. package/src/attributes/h5.json +11 -0
  45. package/src/attributes/h6.json +11 -0
  46. package/src/attributes/head.json +11 -0
  47. package/src/attributes/header.json +11 -0
  48. package/src/attributes/hr.json +11 -0
  49. package/src/attributes/html.json +11 -0
  50. package/src/attributes/i.json +11 -0
  51. package/src/attributes/iframe.json +51 -57
  52. package/src/attributes/img.json +31 -50
  53. package/src/attributes/input.json +128 -120
  54. package/src/attributes/ins.json +14 -7
  55. package/src/attributes/kbd.json +11 -0
  56. package/src/attributes/label.json +11 -8
  57. package/src/attributes/legend.json +11 -0
  58. package/src/attributes/li.json +12 -5
  59. package/src/attributes/link.json +110 -51
  60. package/src/attributes/main.json +11 -0
  61. package/src/attributes/map.json +13 -5
  62. package/src/attributes/mark.json +11 -0
  63. package/src/attributes/menu.json +11 -0
  64. package/src/attributes/meta.json +36 -21
  65. package/src/attributes/meter.json +27 -20
  66. package/src/attributes/nav.json +11 -0
  67. package/src/attributes/noscript.json +11 -0
  68. package/src/attributes/object.json +20 -27
  69. package/src/attributes/ol.json +19 -9
  70. package/src/attributes/optgroup.json +13 -9
  71. package/src/attributes/option.json +18 -14
  72. package/src/attributes/output.json +12 -12
  73. package/src/attributes/p.json +11 -0
  74. package/src/attributes/param.json +17 -8
  75. package/src/attributes/picture.json +11 -0
  76. package/src/attributes/portal.json +17 -8
  77. package/src/attributes/pre.json +11 -0
  78. package/src/attributes/progress.json +16 -8
  79. package/src/attributes/q.json +11 -4
  80. package/src/attributes/rp.json +11 -0
  81. package/src/attributes/rt.json +11 -0
  82. package/src/attributes/ruby.json +11 -0
  83. package/src/attributes/s.json +11 -0
  84. package/src/attributes/samp.json +11 -0
  85. package/src/attributes/script.json +48 -27
  86. package/src/attributes/section.json +11 -0
  87. package/src/attributes/select.json +17 -29
  88. package/src/attributes/slot.json +12 -5
  89. package/src/attributes/small.json +11 -0
  90. package/src/attributes/source.json +34 -16
  91. package/src/attributes/span.json +11 -0
  92. package/src/attributes/strong.json +11 -0
  93. package/src/attributes/style.json +12 -5
  94. package/src/attributes/sub.json +11 -0
  95. package/src/attributes/summary.json +11 -0
  96. package/src/attributes/sup.json +11 -0
  97. package/src/attributes/svg_a.json +81 -47
  98. package/src/attributes/svg_animate.json +93 -13
  99. package/src/attributes/svg_animateMotion.json +36 -32
  100. package/src/attributes/svg_animateTransform.json +27 -14
  101. package/src/attributes/svg_circle.json +87 -26
  102. package/src/attributes/svg_clipPath.json +79 -15
  103. package/src/attributes/svg_defs.json +76 -1
  104. package/src/attributes/svg_desc.json +7 -1
  105. package/src/attributes/svg_discard.json +13 -10
  106. package/src/attributes/svg_ellipse.json +88 -27
  107. package/src/attributes/svg_feBlend.json +88 -40
  108. package/src/attributes/svg_feColorMatrix.json +85 -38
  109. package/src/attributes/svg_feComponentTransfer.json +75 -31
  110. package/src/attributes/svg_feComposite.json +113 -56
  111. package/src/attributes/svg_feConvolveMatrix.json +118 -62
  112. package/src/attributes/svg_feDiffuseLighting.json +90 -42
  113. package/src/attributes/svg_feDisplacementMap.json +100 -47
  114. package/src/attributes/svg_feDistantLight.json +16 -11
  115. package/src/attributes/svg_feDropShadow.json +91 -43
  116. package/src/attributes/svg_feFlood.json +82 -37
  117. package/src/attributes/svg_feFuncA.json +6 -10
  118. package/src/attributes/svg_feFuncB.json +6 -10
  119. package/src/attributes/svg_feFuncG.json +6 -10
  120. package/src/attributes/svg_feFuncR.json +6 -10
  121. package/src/attributes/svg_feGaussianBlur.json +85 -38
  122. package/src/attributes/svg_feImage.json +97 -31
  123. package/src/attributes/svg_feMerge.json +75 -15
  124. package/src/attributes/svg_feMergeNode.json +6 -19
  125. package/src/attributes/svg_feMorphology.json +87 -39
  126. package/src/attributes/svg_feOffset.json +86 -39
  127. package/src/attributes/svg_fePointLight.json +21 -15
  128. package/src/attributes/svg_feSpecularLighting.json +95 -47
  129. package/src/attributes/svg_feSpotLight.json +52 -58
  130. package/src/attributes/svg_feTile.json +75 -31
  131. package/src/attributes/svg_feTurbulence.json +100 -33
  132. package/src/attributes/svg_filter.json +102 -27
  133. package/src/attributes/svg_foreignObject.json +83 -38
  134. package/src/attributes/svg_g.json +79 -8
  135. package/src/attributes/svg_hatch.json +103 -29
  136. package/src/attributes/svg_hatchpath.json +79 -11
  137. package/src/attributes/svg_image.json +97 -46
  138. package/src/attributes/svg_line.json +104 -27
  139. package/src/attributes/svg_linearGradient.json +118 -37
  140. package/src/attributes/svg_marker.json +124 -44
  141. package/src/attributes/svg_mask.json +89 -22
  142. package/src/attributes/svg_mesh.json +82 -10
  143. package/src/attributes/svg_meshgradient.json +22 -29
  144. package/src/attributes/svg_meshpatch.json +75 -1
  145. package/src/attributes/svg_meshrow.json +75 -1
  146. package/src/attributes/svg_metadata.json +7 -1
  147. package/src/attributes/svg_mpath.json +11 -8
  148. package/src/attributes/svg_path.json +86 -15
  149. package/src/attributes/svg_pattern.json +110 -46
  150. package/src/attributes/svg_polygon.json +88 -14
  151. package/src/attributes/svg_polyline.json +88 -14
  152. package/src/attributes/svg_radialGradient.json +132 -49
  153. package/src/attributes/svg_rect.json +90 -51
  154. package/src/attributes/svg_script.json +20 -17
  155. package/src/attributes/svg_set.json +27 -13
  156. package/src/attributes/svg_stop.json +92 -18
  157. package/src/attributes/svg_style.json +16 -13
  158. package/src/attributes/svg_svg.json +114 -62
  159. package/src/attributes/svg_switch.json +79 -8
  160. package/src/attributes/svg_symbol.json +27 -44
  161. package/src/attributes/svg_text.json +114 -32
  162. package/src/attributes/svg_textPath.json +123 -37
  163. package/src/attributes/svg_title.json +7 -1
  164. package/src/attributes/svg_tspan.json +110 -32
  165. package/src/attributes/svg_use.json +87 -46
  166. package/src/attributes/svg_view.json +21 -17
  167. package/src/attributes/table.json +11 -0
  168. package/src/attributes/tbody.json +11 -0
  169. package/src/attributes/td.json +9 -14
  170. package/src/attributes/template.json +11 -0
  171. package/src/attributes/textarea.json +42 -50
  172. package/src/attributes/tfoot.json +11 -0
  173. package/src/attributes/th.json +18 -20
  174. package/src/attributes/thead.json +11 -0
  175. package/src/attributes/time.json +12 -23
  176. package/src/attributes/title.json +11 -0
  177. package/src/attributes/tr.json +11 -0
  178. package/src/attributes/track.json +38 -0
  179. package/src/attributes/u.json +11 -0
  180. package/src/attributes/ul.json +11 -0
  181. package/src/attributes/var.json +11 -0
  182. package/src/attributes/video.json +34 -48
  183. package/src/attributes/wbr.json +11 -0
  184. package/src/global-attributes/_global.json +1334 -1161
  185. package/src/permitted-structures/svg_a.json +1 -1
  186. package/src/structure.test.ts +64 -0
  187. package/src/attributes/_custom.json +0 -10
@@ -1,55 +1,106 @@
1
1
  {
2
2
  "tag": "image",
3
- "attributes": [
4
- "#ariaAttrs",
5
- "#SVGCoreAttrs",
6
- "#SVGConditionalProcessingAttrs",
7
- "#SVGGlobalEventAttrs",
8
- "#SVGDocumentElementEventAttrs",
9
- "#SVGPresentationAttrs",
10
- "#XLinkAttrs",
11
- {
12
- "name": "preserveAspectRatio",
13
- "type": "SVGPreserveAspectRatio",
3
+ "ref": "https://svgwg.org/svg2-draft/embedded.html#ImageElement",
4
+ "global": {
5
+ "#HTMLGlobalAttrs": true,
6
+ "#GlobalEventAttrs": true,
7
+ "#DocumentElementEventAttrs": true,
8
+ "#ARIAAttrs": true,
9
+ "#SVGCoreAttrs": ["id", "tabindex", "autofocus", "lang", "xml:space", "class", "style"],
10
+ "#SVGConditionalProcessingAttrs": ["requiredExtensions", "systemLanguage"],
11
+ "#SVGPresentationAttrs": [
12
+ "x",
13
+ "y",
14
+ "width",
15
+ "height",
16
+ "alignment-baseline",
17
+ "baseline-shift",
18
+ "clip",
19
+ "clip-path",
20
+ "clip-rule",
21
+ "color",
22
+ "color-interpolation",
23
+ "color-interpolation-filters",
24
+ "color-rendering",
25
+ "cursor",
26
+ "direction",
27
+ "display",
28
+ "dominant-baseline",
29
+ "enable-background",
30
+ "fill",
31
+ "fill-opacity",
32
+ "fill-rule",
33
+ "filter",
34
+ "flood-color",
35
+ "flood-opacity",
36
+ "font",
37
+ "font-family",
38
+ "font-size",
39
+ "font-size-adjust",
40
+ "font-stretch",
41
+ "font-style",
42
+ "font-variant",
43
+ "font-weight",
44
+ "glyph-orientation-horizontal",
45
+ "glyph-orientation-vertical",
46
+ "image-rendering",
47
+ "isolation",
48
+ "kerning",
49
+ "letter-spacing",
50
+ "lighting-color",
51
+ "marker",
52
+ "marker-end",
53
+ "marker-mid",
54
+ "marker-start",
55
+ "mask",
56
+ "mask-type",
57
+ "opacity",
58
+ "overflow",
59
+ "paint-order",
60
+ "pointer-events",
61
+ "shape-rendering",
62
+ "stop-color",
63
+ "stop-opacity",
64
+ "stroke",
65
+ "stroke-dasharray",
66
+ "stroke-dashoffset",
67
+ "stroke-linecap",
68
+ "stroke-linejoin",
69
+ "stroke-miterlimit",
70
+ "stroke-opacity",
71
+ "stroke-width",
72
+ "text-anchor",
73
+ "text-decoration",
74
+ "text-overflow",
75
+ "text-rendering",
76
+ "transform-origin",
77
+ "unicode-bidi",
78
+ "vector-effect",
79
+ "visibility",
80
+ "white-space",
81
+ "word-spacing",
82
+ "writing-mode"
83
+ ],
84
+ "#XLinkAttrs": ["xlink:href", "xlink:title"]
85
+ },
86
+ "attributes": {
87
+ "preserveAspectRatio": {
88
+ "ref": "https://svgwg.org/svg2-draft/coords.html#PreserveAspectRatioAttribute",
89
+ "type": "<preserve-aspect-ratio>",
14
90
  "defaultValue": "xMidYMid meet"
15
91
  },
16
- {
17
- "name": "href",
92
+ "href": {
93
+ "ref": "https://svgwg.org/svg2-draft/embedded.html#ImageElementHrefAttribute",
18
94
  "type": "URL"
19
95
  },
20
- {
21
- "name": "crossorigin",
22
- "type": "Crossorigin"
23
- },
24
- {
25
- "name": "x",
26
- "defaultValue": "0"
27
- },
28
- {
29
- "name": "y",
30
- "defaultValue": "0"
31
- },
32
- {
33
- "name": "width",
34
- "type": [
35
- "SVGLength",
36
- "SVGPercentage",
37
- {
38
- "enum": ["auto"]
39
- }
40
- ],
41
- "defaultValue": "auto"
42
- },
43
- {
44
- "name": "height",
45
- "type": [
46
- "SVGLength",
47
- "SVGPercentage",
48
- {
49
- "enum": ["auto"]
96
+ "crossorigin": {
97
+ "ref": "https://svgwg.org/svg2-draft/embedded.html#ImageElementCrossoriginAttribute",
98
+ "type": {
99
+ "enum": ["", "anonymous", "use-credentials"],
100
+ "sameStates": {
101
+ "anonymous": [""]
50
102
  }
51
- ],
52
- "defaultValue": "auto"
103
+ }
53
104
  }
54
- ]
105
+ }
55
106
  }
@@ -1,35 +1,112 @@
1
1
  {
2
2
  "tag": "line",
3
- "attributes": [
4
- "#ariaAttrs",
5
- "#SVGConditionalProcessingAttrs",
6
- "#SVGCoreAttrs",
7
- "#SVGGlobalEventAttrs",
8
- "#SVGDocumentElementEventAttrs",
9
- "#SVGPresentationAttrs",
10
- {
11
- "name": "pathLength",
12
- "type": "Float"
3
+ "ref": "https://svgwg.org/svg2-draft/shapes.html#LineElement",
4
+ "global": {
5
+ "#HTMLGlobalAttrs": true,
6
+ "#GlobalEventAttrs": true,
7
+ "#DocumentElementEventAttrs": true,
8
+ "#ARIAAttrs": true,
9
+ "#SVGConditionalProcessingAttrs": ["requiredExtensions", "systemLanguage"],
10
+ "#SVGCoreAttrs": ["id", "tabindex", "autofocus", "lang", "xml:space", "class", "style"],
11
+ "#SVGPresentationAttrs": [
12
+ "alignment-baseline",
13
+ "baseline-shift",
14
+ "clip",
15
+ "clip-path",
16
+ "clip-rule",
17
+ "color",
18
+ "color-interpolation",
19
+ "color-interpolation-filters",
20
+ "color-rendering",
21
+ "cursor",
22
+ "direction",
23
+ "display",
24
+ "dominant-baseline",
25
+ "enable-background",
26
+ "fill",
27
+ "fill-opacity",
28
+ "fill-rule",
29
+ "filter",
30
+ "flood-color",
31
+ "flood-opacity",
32
+ "font",
33
+ "font-family",
34
+ "font-size",
35
+ "font-size-adjust",
36
+ "font-stretch",
37
+ "font-style",
38
+ "font-variant",
39
+ "font-weight",
40
+ "glyph-orientation-horizontal",
41
+ "glyph-orientation-vertical",
42
+ "image-rendering",
43
+ "isolation",
44
+ "kerning",
45
+ "letter-spacing",
46
+ "lighting-color",
47
+ "marker",
48
+ "marker-end",
49
+ "marker-mid",
50
+ "marker-start",
51
+ "mask",
52
+ "mask-type",
53
+ "opacity",
54
+ "overflow",
55
+ "paint-order",
56
+ "pointer-events",
57
+ "shape-rendering",
58
+ "stop-color",
59
+ "stop-opacity",
60
+ "stroke",
61
+ "stroke-dasharray",
62
+ "stroke-dashoffset",
63
+ "stroke-linecap",
64
+ "stroke-linejoin",
65
+ "stroke-miterlimit",
66
+ "stroke-opacity",
67
+ "stroke-width",
68
+ "text-anchor",
69
+ "text-decoration",
70
+ "text-overflow",
71
+ "text-rendering",
72
+ "transform-origin",
73
+ "unicode-bidi",
74
+ "vector-effect",
75
+ "visibility",
76
+ "white-space",
77
+ "word-spacing",
78
+ "writing-mode"
79
+ ]
80
+ },
81
+ "attributes": {
82
+ "pathLength": {
83
+ "ref": "https://svgwg.org/svg2-draft/paths.html#PathLengthAttribute",
84
+ "type": "<number>",
85
+ "animatable": true
13
86
  },
14
- {
15
- "name": "x1",
16
- "type": ["SVGLength", "SVGPercentage"],
17
- "defaultValue": "0"
87
+ "x1": {
88
+ "ref": "https://svgwg.org/svg2-draft/shapes.html#LineElementX1Attribute",
89
+ "type": ["<svg-length>", "<percentage>", "<number>"],
90
+ "defaultValue": "0",
91
+ "animatable": true
18
92
  },
19
- {
20
- "name": "y1",
21
- "type": ["SVGLength", "SVGPercentage"],
22
- "defaultValue": "0"
93
+ "y1": {
94
+ "ref": "https://svgwg.org/svg2-draft/shapes.html#LineElementY1Attribute",
95
+ "type": ["<svg-length>", "<percentage>", "<number>"],
96
+ "defaultValue": "0",
97
+ "animatable": true
23
98
  },
24
- {
25
- "name": "x2",
26
- "type": ["SVGLength", "SVGPercentage"],
27
- "defaultValue": "0"
99
+ "x2": {
100
+ "ref": "https://svgwg.org/svg2-draft/shapes.html#LineElementX2Attribute",
101
+ "type": ["<svg-length>", "<percentage>", "<number>"],
102
+ "defaultValue": "0",
103
+ "animatable": true
28
104
  },
29
- {
30
- "name": "y2",
31
- "type": ["SVGLength", "SVGPercentage"],
32
- "defaultValue": "0"
105
+ "y2": {
106
+ "ref": "https://svgwg.org/svg2-draft/shapes.html#LineElementY2Attribute",
107
+ "type": ["<svg-length>", "<percentage>", "<number>"],
108
+ "defaultValue": "0",
109
+ "animatable": true
33
110
  }
34
- ]
111
+ }
35
112
  }
@@ -1,52 +1,133 @@
1
1
  {
2
2
  "tag": "linearGradient",
3
- "attributes": [
4
- "#SVGCoreAttrs",
5
- "#SVGGlobalEventAttrs",
6
- "#SVGDocumentElementEventAttrs",
7
- "#SVGPresentationAttrs",
8
- "#XLinkAttrs",
9
- {
10
- "name": "x1",
11
- "type": ["SVGLength", "SVGPercentage"],
12
- "defaultValue": "0%"
3
+ "ref": "https://svgwg.org/svg2-draft/pservers.html#LinearGradientElement",
4
+ "global": {
5
+ "#GlobalEventAttrs": true,
6
+ "#DocumentElementEventAttrs": true,
7
+ "#SVGCoreAttrs": ["id", "tabindex", "autofocus", "lang", "xml:space", "class", "style"],
8
+ "#SVGPresentationAttrs": [
9
+ "alignment-baseline",
10
+ "baseline-shift",
11
+ "clip",
12
+ "clip-path",
13
+ "clip-rule",
14
+ "color",
15
+ "color-interpolation",
16
+ "color-interpolation-filters",
17
+ "color-rendering",
18
+ "cursor",
19
+ "direction",
20
+ "display",
21
+ "dominant-baseline",
22
+ "enable-background",
23
+ "fill",
24
+ "fill-opacity",
25
+ "fill-rule",
26
+ "filter",
27
+ "flood-color",
28
+ "flood-opacity",
29
+ "font",
30
+ "font-family",
31
+ "font-size",
32
+ "font-size-adjust",
33
+ "font-stretch",
34
+ "font-style",
35
+ "font-variant",
36
+ "font-weight",
37
+ "glyph-orientation-horizontal",
38
+ "glyph-orientation-vertical",
39
+ "image-rendering",
40
+ "isolation",
41
+ "kerning",
42
+ "letter-spacing",
43
+ "lighting-color",
44
+ "marker",
45
+ "marker-end",
46
+ "marker-mid",
47
+ "marker-start",
48
+ "mask",
49
+ "mask-type",
50
+ "opacity",
51
+ "overflow",
52
+ "paint-order",
53
+ "pointer-events",
54
+ "shape-rendering",
55
+ "stop-color",
56
+ "stop-opacity",
57
+ "stroke",
58
+ "stroke-dasharray",
59
+ "stroke-dashoffset",
60
+ "stroke-linecap",
61
+ "stroke-linejoin",
62
+ "stroke-miterlimit",
63
+ "stroke-opacity",
64
+ "stroke-width",
65
+ "text-anchor",
66
+ "text-decoration",
67
+ "text-overflow",
68
+ "text-rendering",
69
+ "transform-origin",
70
+ "unicode-bidi",
71
+ "vector-effect",
72
+ "visibility",
73
+ "white-space",
74
+ "word-spacing",
75
+ "writing-mode"
76
+ ],
77
+ "#XLinkAttrs": ["xlink:href", "xlink:title"]
78
+ },
79
+ "attributes": {
80
+ "x1": {
81
+ "ref": "https://svgwg.org/svg2-draft/pservers.html#LinearGradientElementX1Attribute",
82
+ "type": ["<svg-length>", "<percentage>"],
83
+ "defaultValue": "0%",
84
+ "animatable": true
13
85
  },
14
- {
15
- "name": "y1",
16
- "type": ["SVGLength", "SVGPercentage"],
17
- "defaultValue": "0%"
86
+ "y1": {
87
+ "ref": "https://svgwg.org/svg2-draft/pservers.html#LinearGradientElementY1Attribute",
88
+ "type": ["<svg-length>", "<percentage>"],
89
+ "defaultValue": "0%",
90
+ "animatable": true
18
91
  },
19
- {
20
- "name": "x2",
21
- "type": ["SVGLength", "SVGPercentage"],
22
- "defaultValue": "100%"
92
+ "x2": {
93
+ "ref": "https://svgwg.org/svg2-draft/pservers.html#LinearGradientElementX2Attribute",
94
+ "type": ["<svg-length>", "<percentage>"],
95
+ "defaultValue": "100%",
96
+ "animatable": true
23
97
  },
24
- {
25
- "name": "y2",
26
- "type": ["SVGLength", "SVGPercentage"],
27
- "defaultValue": "0%"
98
+ "y2": {
99
+ "ref": "https://svgwg.org/svg2-draft/pservers.html#LinearGradientElementY2Attribute",
100
+ "type": ["<svg-length>", "<percentage>"],
101
+ "defaultValue": "0%",
102
+ "animatable": true
28
103
  },
29
- {
30
- "name": "gradientUnits",
104
+ "gradientUnits": {
105
+ "ref": "https://svgwg.org/svg2-draft/pservers.html#LinearGradientElementGradientUnitsAttribute",
31
106
  "type": {
32
- "enum": ["userSpaceOnUse", "objectBoundingBox"]
107
+ "enum": ["userSpaceOnUse", "objectBoundingBox"],
108
+ "disallowToSurroundBySpaces": false
33
109
  },
34
- "defaultValue": "objectBoundingBox"
110
+ "defaultValue": "objectBoundingBox",
111
+ "animatable": true
35
112
  },
36
- {
37
- "name": "gradientTransform",
38
- "type": "CSSTransformList"
113
+ "gradientTransform": {
114
+ "ref": "https://svgwg.org/svg2-draft/pservers.html#LinearGradientElementGradientTransformAttribute",
115
+ "type": "<transform-list>",
116
+ "animatable": true
39
117
  },
40
- {
41
- "name": "spreadMethod",
118
+ "spreadMethod": {
119
+ "ref": "https://svgwg.org/svg2-draft/pservers.html#LinearGradientElementSpreadMethodAttribute",
42
120
  "type": {
43
- "enum": ["pad", "reflect", "repeat"]
121
+ "enum": ["pad", "reflect", "repeat"],
122
+ "disallowToSurroundBySpaces": false
44
123
  },
45
- "defaultValue": "pad"
124
+ "defaultValue": "pad",
125
+ "animatable": true
46
126
  },
47
- {
48
- "name": "href",
49
- "type": "URL"
127
+ "href": {
128
+ "ref": "https://svgwg.org/svg2-draft/pservers.html#LinearGradientElementHrefAttribute",
129
+ "type": "URL",
130
+ "animatable": true
50
131
  }
51
- ]
132
+ }
52
133
  }
@@ -1,70 +1,150 @@
1
1
  {
2
2
  "tag": "marker",
3
- "attributes": [
4
- "#SVGCoreAttrs",
5
- "#SVGGlobalEventAttrs",
6
- "#SVGDocumentElementEventAttrs",
7
- "#SVGPresentationAttrs",
8
- {
9
- "name": "viewBox",
10
- "type": "SVGViewBox"
3
+ "ref": "https://svgwg.org/svg2-draft/painting.html#MarkerElement",
4
+ "global": {
5
+ "#GlobalEventAttrs": true,
6
+ "#DocumentElementEventAttrs": true,
7
+ "#SVGCoreAttrs": ["id", "tabindex", "autofocus", "lang", "xml:space", "class", "style"],
8
+ "#SVGPresentationAttrs": [
9
+ "alignment-baseline",
10
+ "baseline-shift",
11
+ "clip",
12
+ "clip-path",
13
+ "clip-rule",
14
+ "color",
15
+ "color-interpolation",
16
+ "color-interpolation-filters",
17
+ "color-rendering",
18
+ "cursor",
19
+ "direction",
20
+ "display",
21
+ "dominant-baseline",
22
+ "enable-background",
23
+ "fill",
24
+ "fill-opacity",
25
+ "fill-rule",
26
+ "filter",
27
+ "flood-color",
28
+ "flood-opacity",
29
+ "font",
30
+ "font-family",
31
+ "font-size",
32
+ "font-size-adjust",
33
+ "font-stretch",
34
+ "font-style",
35
+ "font-variant",
36
+ "font-weight",
37
+ "glyph-orientation-horizontal",
38
+ "glyph-orientation-vertical",
39
+ "image-rendering",
40
+ "isolation",
41
+ "kerning",
42
+ "letter-spacing",
43
+ "lighting-color",
44
+ "marker",
45
+ "marker-end",
46
+ "marker-mid",
47
+ "marker-start",
48
+ "mask",
49
+ "mask-type",
50
+ "opacity",
51
+ "overflow",
52
+ "paint-order",
53
+ "pointer-events",
54
+ "shape-rendering",
55
+ "stop-color",
56
+ "stop-opacity",
57
+ "stroke",
58
+ "stroke-dasharray",
59
+ "stroke-dashoffset",
60
+ "stroke-linecap",
61
+ "stroke-linejoin",
62
+ "stroke-miterlimit",
63
+ "stroke-opacity",
64
+ "stroke-width",
65
+ "text-anchor",
66
+ "text-decoration",
67
+ "text-overflow",
68
+ "text-rendering",
69
+ "transform-origin",
70
+ "unicode-bidi",
71
+ "vector-effect",
72
+ "visibility",
73
+ "white-space",
74
+ "word-spacing",
75
+ "writing-mode"
76
+ ]
77
+ },
78
+ "attributes": {
79
+ "viewBox": {
80
+ "ref": "https://svgwg.org/svg2-draft/coords.html#ViewBoxAttribute",
81
+ "type": "<view-box>",
82
+ "animatable": true
11
83
  },
12
- {
13
- "name": "preserveAspectRatio",
14
- "type": "SVGPreserveAspectRatio",
15
- "defaultValue": "xMidYMid meet"
84
+ "preserveAspectRatio": {
85
+ "ref": "https://svgwg.org/svg2-draft/coords.html#PreserveAspectRatioAttribute",
86
+ "type": "<preserve-aspect-ratio>",
87
+ "defaultValue": "xMidYMid meet",
88
+ "animatable": true
16
89
  },
17
- {
18
- "name": "refX",
90
+ "refX": {
91
+ "ref": "https://svgwg.org/svg2-draft/painting.html#MarkerElementRefXAttribute",
19
92
  "type": [
20
- "SVGLength",
21
- "SVGPercentage",
22
- "Float",
93
+ "<percentage>",
94
+ "<number>",
23
95
  {
24
- "enum": ["left", "center", "right"]
96
+ "enum": ["left", "center", "right"],
97
+ "disallowToSurroundBySpaces": false
25
98
  }
26
99
  ],
27
- "defaultValue": "0"
100
+ "defaultValue": "0",
101
+ "animatable": true
28
102
  },
29
- {
30
- "name": "refY",
103
+ "refY": {
104
+ "ref": "https://svgwg.org/svg2-draft/painting.html#MarkerElementRefYAttribute",
31
105
  "type": [
32
- "SVGLength",
33
- "SVGPercentage",
34
- "Float",
106
+ "<percentage>",
107
+ "<number>",
35
108
  {
36
- "enum": ["top", "center", "bottom"]
109
+ "enum": ["left", "center", "right"],
110
+ "disallowToSurroundBySpaces": false
37
111
  }
38
112
  ],
39
- "defaultValue": "0"
113
+ "defaultValue": "0",
114
+ "animatable": true
40
115
  },
41
- {
42
- "name": "markerUnits",
116
+ "markerUnits": {
117
+ "ref": "https://svgwg.org/svg2-draft/painting.html#MarkerUnitsAttribute",
43
118
  "type": {
44
- "enum": ["userSpaceOnUse", "strokeWidth"]
119
+ "enum": ["userSpaceOnUse", "strokeWidth"],
120
+ "disallowToSurroundBySpaces": false
45
121
  },
46
122
  "defaultValue": "strokeWidth"
47
123
  },
48
- {
49
- "name": "markerWidth",
50
- "type": ["SVGLength", "SVGPercentage", "Float"],
51
- "defaultValue": "3"
124
+ "markerWidth": {
125
+ "ref": "https://svgwg.org/svg2-draft/painting.html#MarkerWidthAttribute",
126
+ "type": ["<svg-length>", "<percentage>", "<number>"],
127
+ "defaultValue": "3",
128
+ "animatable": true
52
129
  },
53
- {
54
- "name": "markerHeight",
55
- "type": ["SVGLength", "SVGPercentage", "Float"],
56
- "defaultValue": "3"
130
+ "markerHeight": {
131
+ "ref": "https://svgwg.org/svg2-draft/painting.html#MarkerHeightAttribute",
132
+ "type": ["<svg-length>", "<percentage>", "<number>"],
133
+ "defaultValue": "3",
134
+ "animatable": true
57
135
  },
58
- {
59
- "name": "orient",
136
+ "orient": {
137
+ "ref": "https://svgwg.org/svg2-draft/painting.html#OrientAttribute",
60
138
  "type": [
61
139
  {
62
- "enum": ["auto", "auto-start-reverse"]
140
+ "enum": ["auto", "auto-start-reverse"],
141
+ "disallowToSurroundBySpaces": false
63
142
  },
64
- "CSSAngle",
65
- "Float"
143
+ "<angle>",
144
+ "<number>"
66
145
  ],
67
- "defaultValue": "0"
146
+ "defaultValue": "0",
147
+ "animatable": true
68
148
  }
69
- ]
149
+ }
70
150
  }