@markuplint/html-spec 3.0.0-dev.24 → 3.0.0-dev.290

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 (183) hide show
  1. package/index.d.ts +1 -1
  2. package/index.json +14776 -2258
  3. package/package.json +8 -13
  4. package/{src/structure.test.ts → test/structure.spec.mjs} +23 -13
  5. package/src/spec-common.attributes.json +0 -1650
  6. package/src/spec-common.contents.json +0 -392
  7. package/src/spec.a.json +0 -58
  8. package/src/spec.abbr.json +0 -25
  9. package/src/spec.address.json +0 -25
  10. package/src/spec.area.json +0 -64
  11. package/src/spec.article.json +0 -24
  12. package/src/spec.aside.json +0 -38
  13. package/src/spec.audio.json +0 -48
  14. package/src/spec.b.json +0 -24
  15. package/src/spec.base.json +0 -21
  16. package/src/spec.bdi.json +0 -24
  17. package/src/spec.bdo.json +0 -24
  18. package/src/spec.blockquote.json +0 -31
  19. package/src/spec.body.json +0 -100
  20. package/src/spec.br.json +0 -32
  21. package/src/spec.button.json +0 -70
  22. package/src/spec.canvas.json +0 -33
  23. package/src/spec.caption.json +0 -30
  24. package/src/spec.cite.json +0 -24
  25. package/src/spec.code.json +0 -27
  26. package/src/spec.col.json +0 -31
  27. package/src/spec.colgroup.json +0 -41
  28. package/src/spec.data.json +0 -29
  29. package/src/spec.datalist.json +0 -38
  30. package/src/spec.dd.json +0 -30
  31. package/src/spec.del.json +0 -36
  32. package/src/spec.details.json +0 -35
  33. package/src/spec.dfn.json +0 -23
  34. package/src/spec.dialog.json +0 -36
  35. package/src/spec.div.json +0 -55
  36. package/src/spec.dl.json +0 -56
  37. package/src/spec.dt.json +0 -26
  38. package/src/spec.em.json +0 -27
  39. package/src/spec.embed.json +0 -30
  40. package/src/spec.fieldset.json +0 -27
  41. package/src/spec.figcaption.json +0 -24
  42. package/src/spec.figure.json +0 -52
  43. package/src/spec.footer.json +0 -37
  44. package/src/spec.form.json +0 -100
  45. package/src/spec.h1.json +0 -26
  46. package/src/spec.h2.json +0 -26
  47. package/src/spec.h3.json +0 -26
  48. package/src/spec.h4.json +0 -26
  49. package/src/spec.h5.json +0 -26
  50. package/src/spec.h6.json +0 -26
  51. package/src/spec.head.json +0 -30
  52. package/src/spec.header.json +0 -37
  53. package/src/spec.hgroup.json +0 -45
  54. package/src/spec.hr.json +0 -23
  55. package/src/spec.html.json +0 -27
  56. package/src/spec.i.json +0 -24
  57. package/src/spec.iframe.json +0 -70
  58. package/src/spec.img.json +0 -109
  59. package/src/spec.input.json +0 -792
  60. package/src/spec.ins.json +0 -36
  61. package/src/spec.kbd.json +0 -24
  62. package/src/spec.label.json +0 -29
  63. package/src/spec.legend.json +0 -24
  64. package/src/spec.li.json +0 -40
  65. package/src/spec.link.json +0 -140
  66. package/src/spec.main.json +0 -27
  67. package/src/spec.map.json +0 -30
  68. package/src/spec.mark.json +0 -24
  69. package/src/spec.math.json +0 -20
  70. package/src/spec.menu.json +0 -53
  71. package/src/spec.meta.json +0 -59
  72. package/src/spec.meter.json +0 -62
  73. package/src/spec.nav.json +0 -26
  74. package/src/spec.noscript.json +0 -24
  75. package/src/spec.object.json +0 -40
  76. package/src/spec.ol.json +0 -71
  77. package/src/spec.optgroup.json +0 -34
  78. package/src/spec.option.json +0 -70
  79. package/src/spec.output.json +0 -29
  80. package/src/spec.p.json +0 -27
  81. package/src/spec.picture.json +0 -46
  82. package/src/spec.portal.json +0 -25
  83. package/src/spec.pre.json +0 -24
  84. package/src/spec.progress.json +0 -44
  85. package/src/spec.q.json +0 -29
  86. package/src/spec.rp.json +0 -23
  87. package/src/spec.rt.json +0 -24
  88. package/src/spec.ruby.json +0 -55
  89. package/src/spec.s.json +0 -24
  90. package/src/spec.samp.json +0 -24
  91. package/src/spec.script.json +0 -73
  92. package/src/spec.section.json +0 -73
  93. package/src/spec.select.json +0 -66
  94. package/src/spec.slot.json +0 -29
  95. package/src/spec.small.json +0 -24
  96. package/src/spec.source.json +0 -52
  97. package/src/spec.span.json +0 -24
  98. package/src/spec.strong.json +0 -27
  99. package/src/spec.style.json +0 -35
  100. package/src/spec.sub.json +0 -27
  101. package/src/spec.summary.json +0 -38
  102. package/src/spec.sup.json +0 -27
  103. package/src/spec.svg_a.json +0 -118
  104. package/src/spec.svg_animate.json +0 -109
  105. package/src/spec.svg_animateMotion.json +0 -73
  106. package/src/spec.svg_animateTransform.json +0 -47
  107. package/src/spec.svg_circle.json +0 -113
  108. package/src/spec.svg_clipPath.json +0 -108
  109. package/src/spec.svg_defs.json +0 -109
  110. package/src/spec.svg_desc.json +0 -21
  111. package/src/spec.svg_discard.json +0 -31
  112. package/src/spec.svg_ellipse.json +0 -116
  113. package/src/spec.svg_feBlend.json +0 -115
  114. package/src/spec.svg_feColorMatrix.json +0 -104
  115. package/src/spec.svg_feComponentTransfer.json +0 -97
  116. package/src/spec.svg_feComposite.json +0 -146
  117. package/src/spec.svg_feConvolveMatrix.json +0 -147
  118. package/src/spec.svg_feDiffuseLighting.json +0 -126
  119. package/src/spec.svg_feDisplacementMap.json +0 -133
  120. package/src/spec.svg_feDistantLight.json +0 -32
  121. package/src/spec.svg_feDropShadow.json +0 -109
  122. package/src/spec.svg_feFlood.json +0 -101
  123. package/src/spec.svg_feFuncA.json +0 -20
  124. package/src/spec.svg_feFuncB.json +0 -20
  125. package/src/spec.svg_feFuncG.json +0 -20
  126. package/src/spec.svg_feFuncR.json +0 -20
  127. package/src/spec.svg_feGaussianBlur.json +0 -105
  128. package/src/spec.svg_feImage.json +0 -123
  129. package/src/spec.svg_feMerge.json +0 -90
  130. package/src/spec.svg_feMergeNode.json +0 -20
  131. package/src/spec.svg_feMorphology.json +0 -106
  132. package/src/spec.svg_feOffset.json +0 -103
  133. package/src/spec.svg_fePointLight.json +0 -38
  134. package/src/spec.svg_feSpecularLighting.json +0 -131
  135. package/src/spec.svg_feSpotLight.json +0 -67
  136. package/src/spec.svg_feTile.json +0 -90
  137. package/src/spec.svg_feTurbulence.json +0 -127
  138. package/src/spec.svg_filter.json +0 -138
  139. package/src/spec.svg_foreignObject.json +0 -97
  140. package/src/spec.svg_g.json +0 -115
  141. package/src/spec.svg_image.json +0 -128
  142. package/src/spec.svg_line.json +0 -136
  143. package/src/spec.svg_linearGradient.json +0 -152
  144. package/src/spec.svg_marker.json +0 -180
  145. package/src/spec.svg_mask.json +0 -142
  146. package/src/spec.svg_metadata.json +0 -21
  147. package/src/spec.svg_mpath.json +0 -26
  148. package/src/spec.svg_path.json +0 -114
  149. package/src/spec.svg_pattern.json +0 -157
  150. package/src/spec.svg_polygon.json +0 -117
  151. package/src/spec.svg_polyline.json +0 -117
  152. package/src/spec.svg_radialGradient.json +0 -162
  153. package/src/spec.svg_rect.json +0 -118
  154. package/src/spec.svg_script.json +0 -40
  155. package/src/spec.svg_set.json +0 -42
  156. package/src/spec.svg_stop.json +0 -110
  157. package/src/spec.svg_style.json +0 -36
  158. package/src/spec.svg_svg.json +0 -170
  159. package/src/spec.svg_switch.json +0 -105
  160. package/src/spec.svg_symbol.json +0 -77
  161. package/src/spec.svg_text.json +0 -153
  162. package/src/spec.svg_textPath.json +0 -169
  163. package/src/spec.svg_title.json +0 -21
  164. package/src/spec.svg_tspan.json +0 -147
  165. package/src/spec.svg_use.json +0 -115
  166. package/src/spec.svg_view.json +0 -45
  167. package/src/spec.table.json +0 -64
  168. package/src/spec.tbody.json +0 -23
  169. package/src/spec.td.json +0 -37
  170. package/src/spec.template.json +0 -20
  171. package/src/spec.textarea.json +0 -67
  172. package/src/spec.tfoot.json +0 -23
  173. package/src/spec.th.json +0 -66
  174. package/src/spec.thead.json +0 -23
  175. package/src/spec.time.json +0 -32
  176. package/src/spec.title.json +0 -24
  177. package/src/spec.tr.json +0 -29
  178. package/src/spec.track.json +0 -54
  179. package/src/spec.u.json +0 -24
  180. package/src/spec.ul.json +0 -53
  181. package/src/spec.var.json +0 -24
  182. package/src/spec.video.json +0 -78
  183. package/src/spec.wbr.json +0 -25
@@ -1,64 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/tables.html#the-table-element
2
- // https://www.w3.org/TR/html-aria/#el-table
3
- // https://w3c.github.io/html-aria/#el-table
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "zeroOrMore": ":model(script-supporting)"
9
- },
10
- {
11
- "optional": "caption"
12
- },
13
- {
14
- "zeroOrMore": ":model(script-supporting)"
15
- },
16
- {
17
- "zeroOrMore": "colgroup"
18
- },
19
- {
20
- "zeroOrMore": ":model(script-supporting)"
21
- },
22
- {
23
- "optional": "thead"
24
- },
25
- {
26
- "zeroOrMore": ":model(script-supporting)"
27
- },
28
- {
29
- "choice": [
30
- [
31
- {
32
- "zeroOrMore": "tbody"
33
- }
34
- ],
35
- [
36
- {
37
- "oneOrMore": "tr"
38
- }
39
- ]
40
- ]
41
- },
42
- {
43
- "zeroOrMore": ":model(script-supporting)"
44
- },
45
- {
46
- "optional": "tfoot"
47
- },
48
- {
49
- "zeroOrMore": ":model(script-supporting)"
50
- }
51
- ]
52
- },
53
- "globalAttrs": {
54
- "#HTMLGlobalAttrs": true,
55
- "#GlobalEventAttrs": true,
56
- "#DocumentElementEventAttrs": true,
57
- "#ARIAAttrs": true
58
- },
59
- "attributes": {},
60
- "aria": {
61
- "implicitRole": "table",
62
- "permittedRoles": true
63
- }
64
- }
@@ -1,23 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/tables.html#the-tbody-element
2
- // https://www.w3.org/TR/html-aria/#el-tbody
3
- // https://w3c.github.io/html-aria/#el-tbody
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "zeroOrMore": "tr"
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true
17
- },
18
- "attributes": {},
19
- "aria": {
20
- "implicitRole": "rowgroup",
21
- "permittedRoles": true
22
- }
23
- }
package/src/spec.td.json DELETED
@@ -1,37 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/tables.html#the-td-element
2
- // https://www.w3.org/TR/html-aria/#el-td
3
- // https://w3c.github.io/html-aria/#el-td
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "oneOrMore": ":model(flow)"
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true,
17
- "#HTMLTableCellElementAttrs": ["colspan", "rowspan", "headers"]
18
- },
19
- "attributes": {},
20
- "aria": {
21
- // No corresponding role if the ancestor table element is not exposed as a role=table, grid or treegrid.
22
- "implicitRole": false,
23
- "permittedRoles": true,
24
- "conditions": {
25
- "table:is(:not([role]), [role=table]) > :is(thead, tfoot, tbody) > tr > td, table:is(:not([role]), [role=table]) > tr > td": {
26
- "implicitRole": "cell"
27
- },
28
- "table:is([role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > td, table:is([role=grid], [role=treegrid]) > tr > td": {
29
- "implicitRole": "gridcell"
30
- },
31
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > td, table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > tr > td": {
32
- // No role if the ancestor table element has role=table, grid, or treegrid; otherwise any role.
33
- "permittedRoles": false
34
- }
35
- }
36
- }
37
- }
@@ -1,20 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/scripting.html#the-template-element
2
- // https://www.w3.org/TR/html-aria/#el-template
3
- // https://w3c.github.io/html-aria/#el-template
4
- {
5
- "contentModel": {
6
- "contents": true
7
- },
8
- "globalAttrs": {
9
- "#HTMLGlobalAttrs": true,
10
- "#GlobalEventAttrs": true,
11
- "#DocumentElementEventAttrs": true,
12
- "#ARIAAttrs": true
13
- },
14
- "attributes": {},
15
- "aria": {
16
- "implicitRole": false,
17
- "permittedRoles": false,
18
- "properties": false
19
- }
20
- }
@@ -1,67 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/form-elements.html#the-textarea-element
2
- // https://www.w3.org/TR/html-aria/#el-textarea
3
- // https://w3c.github.io/html-aria/#el-textarea
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "optional": "#text"
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true,
17
- "#HTMLFormControlElementAttrs": [
18
- "autocomplete",
19
- "dirname",
20
- "disabled",
21
- "form",
22
- "maxlength",
23
- "minlength",
24
- "name",
25
- "readonly",
26
- "required"
27
- ]
28
- },
29
- "attributes": {
30
- // https://html.spec.whatwg.org/multipage/form-elements.html#attr-textarea-cols",
31
- "cols": {
32
- "type": {
33
- "type": "integer",
34
- "gt": 0
35
- },
36
- "defaultValue": "20"
37
- },
38
- // https://html.spec.whatwg.org/multipage/form-elements.html#attr-textarea-placeholder",
39
- "placeholder": {
40
- "type": "Any"
41
- },
42
- // https://html.spec.whatwg.org/multipage/form-elements.html#attr-textarea-rows",
43
- "rows": {
44
- "type": {
45
- "type": "integer",
46
- "gt": 0
47
- },
48
- "defaultValue": "2"
49
- },
50
- // https://html.spec.whatwg.org/multipage/form-elements.html#attr-textarea-wrap",
51
- "wrap": {
52
- "type": {
53
- "enum": ["soft", "hard"],
54
- "missingValueDefault": "soft",
55
- "invalidValueDefault": "soft"
56
- }
57
- }
58
- },
59
- "aria": {
60
- "implicitRole": "textbox",
61
- "permittedRoles": false,
62
- "properties": {
63
- "global": true,
64
- "role": "textbox"
65
- }
66
- }
67
- }
@@ -1,23 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/tables.html#the-tfoot-element
2
- // https://www.w3.org/TR/html-aria/#el-tfoot
3
- // https://w3c.github.io/html-aria/#el-tfoot
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "zeroOrMore": "tr"
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true
17
- },
18
- "attributes": {},
19
- "aria": {
20
- "implicitRole": "rowgroup",
21
- "permittedRoles": true
22
- }
23
- }
package/src/spec.th.json DELETED
@@ -1,66 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/tables.html#the-th-elemen
2
- // https://www.w3.org/TR/html-aria/#el-th
3
- // https://w3c.github.io/html-aria/#el-th
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "oneOrMore": ":model(flow):not(header, footer, :model(sectioning), :model(heading), :has(header, footer, :model(sectioning), :model(heading)))"
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true,
17
- "#HTMLTableCellElementAttrs": ["colspan", "rowspan", "headers"]
18
- },
19
- "attributes": {
20
- // https://html.spec.whatwg.org/multipage/tables.html#attr-th-scope
21
- "scope": {
22
- "type": {
23
- "enum": ["row", "col", "rowgroup", "colgroup"],
24
- "missingValueDefault": "auto",
25
- "invalidValueDefault": "auto"
26
- }
27
- },
28
- // https://html.spec.whatwg.org/multipage/tables.html#attr-th-abbr
29
- "abbr": {
30
- "type": "Any"
31
- }
32
- },
33
- "aria": {
34
- // No corresponding role if the ancestor table element is not exposed as a role=table, grid or treegrid.
35
- "implicitRole": false,
36
- // No role if the ancestor table element has role=table, grid, or treegrid; otherwise any role.
37
- "permittedRoles": true,
38
- // role=columnheader, rowheader or cell if the ancestor table element is exposed as a role=table.
39
- // role=columnheader, rowheader or gridcell if the ancestor table element is exposed as a role=grid or treegrid.
40
- "conditions": {
41
- "table:is(:not([role]), [role=table]) > :is(thead, tfoot, tbody) > tr > th, table:is(:not([role]), [role=table]) > tr > th": {
42
- "implicitRole": "cell"
43
- },
44
- "table:is([role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th, table:is([role=grid], [role=treegrid]) > tr > th": {
45
- "implicitRole": "gridcell"
46
- },
47
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > thead > tr > th:not([scope])": {
48
- "implicitRole": "columnheader"
49
- },
50
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(tfoot, tbody) > tr > th:not([scope]), table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > tr > th:not([scope])": {
51
- "implicitRole": "rowheader"
52
- },
53
- // https://www.w3.org/TR/wai-aria-1.1/#columnheader Base Concept: HTML th[scope="col"]
54
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th[scope=col], table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > tr > th[scope=col]": {
55
- "implicitRole": "columnheader"
56
- },
57
- // https://www.w3.org/TR/wai-aria-1.1/#rowheader Base Concept: HTML th[scope="row"]
58
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th[scope=row], table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > tr > th[scope=row]": {
59
- "implicitRole": "rowheader"
60
- },
61
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr > th, table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > tr > th": {
62
- "permittedRoles": false
63
- }
64
- }
65
- }
66
- }
@@ -1,23 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/tables.html#the-thead-element
2
- // https://www.w3.org/TR/html-aria/#el-thead
3
- // https://w3c.github.io/html-aria/#el-thead
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "zeroOrMore": "tr"
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true
17
- },
18
- "attributes": {},
19
- "aria": {
20
- "implicitRole": "rowgroup",
21
- "permittedRoles": true
22
- }
23
- }
@@ -1,32 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-time-element
2
- // https://www.w3.org/TR/html-aria/#el-time
3
- // https://w3c.github.io/html-aria/#el-time
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "oneOrMore": ":model(phrasing)"
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true
17
- },
18
- "attributes": {
19
- // https://html.spec.whatwg.org/multipage/text-level-semantics.html#attr-time-datetime
20
- "datetime": {
21
- "type": "DateTime"
22
- }
23
- },
24
- "aria": {
25
- "implicitRole": "time",
26
- "permittedRoles": true,
27
- "namingProhibited": true,
28
- "1.1": {
29
- "implicitRole": false
30
- }
31
- }
32
- }
@@ -1,24 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/semantics.html#the-title-element
2
- // https://www.w3.org/TR/html-aria/#el-title
3
- // https://w3c.github.io/html-aria/#el-title
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "require": "#text"
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true
17
- },
18
- "attributes": {},
19
- "aria": {
20
- "implicitRole": false,
21
- "permittedRoles": false,
22
- "properties": false
23
- }
24
- }
package/src/spec.tr.json DELETED
@@ -1,29 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/tables.html#the-tr-element
2
- // https://www.w3.org/TR/html-aria/#el-tr
3
- // https://w3c.github.io/html-aria/#el-tr
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "zeroOrMore": ["th", "td", ":model(script-supporting)"]
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true
17
- },
18
- "attributes": {},
19
- "aria": {
20
- "implicitRole": "row",
21
- // No role if the ancestor table element has role=table, grid, or treegrid; otherwise any role.
22
- "permittedRoles": true,
23
- "conditions": {
24
- "table:is(:not([role]), [role=table], [role=grid], [role=treegrid]) > :is(thead, tfoot, tbody) > tr": {
25
- "permittedRoles": false
26
- }
27
- }
28
- }
29
- }
@@ -1,54 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/media.html#the-track-element
2
- // https://www.w3.org/TR/html-aria/#el-track
3
- // https://w3c.github.io/html-aria/#el-track
4
- {
5
- "contentModel": {
6
- "contents": false
7
- },
8
- "globalAttrs": {
9
- "#HTMLGlobalAttrs": true,
10
- "#GlobalEventAttrs": true,
11
- "#DocumentElementEventAttrs": true,
12
- "#ARIAAttrs": true
13
- },
14
- "attributes": {
15
- // https://html.spec.whatwg.org/multipage/media.html#attr-track-kind
16
- "kind": {
17
- "type": {
18
- "enum": ["subtitles", "captions", "descriptions", "chapters", "metadata"],
19
- "missingValueDefault": "metadata",
20
- "invalidValueDefault": "metadata"
21
- }
22
- },
23
- // https://html.spec.whatwg.org/multipage/media.html#attr-track-src
24
- "src": {
25
- "type": "URL",
26
- "required": true
27
- },
28
- // https://html.spec.whatwg.org/multipage/media.html#attr-track-srclang
29
- "srclang": {
30
- "type": "BCP47"
31
- },
32
- // https://html.spec.whatwg.org/multipage/media.html#attr-track-label
33
- "label": {
34
- // TODO:
35
- // The value of the label attribute,
36
- // if the attribute is present, must not be the empty string.
37
- // Furthermore, there must not be two track element children of
38
- // the same media element whose kind attributes are in the same state,
39
- // whose srclang attributes are both missing or have values
40
- // that represent the same language,
41
- // and whose label attributes are again both missing or both have the same value.
42
- "type": "NoEmptyAny"
43
- },
44
- // https://html.spec.whatwg.org/multipage/media.html#attr-track-default
45
- "default": {
46
- "type": "Boolean"
47
- }
48
- },
49
- "aria": {
50
- "implicitRole": false,
51
- "permittedRoles": false,
52
- "properties": false
53
- }
54
- }
package/src/spec.u.json DELETED
@@ -1,24 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-u-element
2
- // https://www.w3.org/TR/html-aria/#el-u
3
- // https://w3c.github.io/html-aria/#el-u
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "oneOrMore": ":model(phrasing)"
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true
17
- },
18
- "attributes": {},
19
- "aria": {
20
- "implicitRole": false,
21
- "permittedRoles": true,
22
- "namingProhibited": true
23
- }
24
- }
package/src/spec.ul.json DELETED
@@ -1,53 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/grouping-content.html#the-ul-element
2
- // https://www.w3.org/TR/html-aria/#el-ul
3
- // https://w3c.github.io/html-aria/#el-ul
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "zeroOrMore": ["li", ":model(script-supporting)"]
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true
17
- },
18
- "attributes": {},
19
- "aria": {
20
- "implicitRole": "list",
21
- "permittedRoles": [
22
- "group",
23
- "listbox",
24
- "menu",
25
- "menubar",
26
- "none",
27
- "presentation",
28
- "radiogroup",
29
- "tablist",
30
- "toolbar",
31
- "tree",
32
- {
33
- "name": "directory",
34
- "deprecated": true
35
- }
36
- ],
37
- "1.1": {
38
- "permittedRoles": [
39
- "directory",
40
- "group",
41
- "listbox",
42
- "menu",
43
- "menubar",
44
- "none",
45
- "presentation",
46
- "radiogroup",
47
- "tablist",
48
- "toolbar",
49
- "tree"
50
- ]
51
- }
52
- }
53
- }
package/src/spec.var.json DELETED
@@ -1,24 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-var-element
2
- // https://www.w3.org/TR/html-aria/#el-var
3
- // https://w3c.github.io/html-aria/#el-var
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "oneOrMore": ":model(phrasing)"
9
- }
10
- ]
11
- },
12
- "globalAttrs": {
13
- "#HTMLGlobalAttrs": true,
14
- "#GlobalEventAttrs": true,
15
- "#DocumentElementEventAttrs": true,
16
- "#ARIAAttrs": true
17
- },
18
- "attributes": {},
19
- "aria": {
20
- "implicitRole": false,
21
- "permittedRoles": true,
22
- "namingProhibited": true
23
- }
24
- }
@@ -1,78 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/media.html#the-video-element
2
- // https://www.w3.org/TR/html-aria/#el-video
3
- // https://w3c.github.io/html-aria/#el-video
4
- {
5
- "contentModel": {
6
- "contents": [
7
- {
8
- "zeroOrMore": "source"
9
- },
10
- {
11
- "zeroOrMore": "track"
12
- },
13
- {
14
- "transparent": ":not(audio, video, :has(audio, video))"
15
- }
16
- ],
17
- "conditional": [
18
- {
19
- "condition": "[src]",
20
- "contents": [
21
- {
22
- "zeroOrMore": "track"
23
- },
24
- {
25
- "transparent": ":not(audio, video, :has(audio, video))"
26
- }
27
- ]
28
- }
29
- ]
30
- },
31
- "globalAttrs": {
32
- "#HTMLGlobalAttrs": true,
33
- "#GlobalEventAttrs": true,
34
- "#DocumentElementEventAttrs": true,
35
- "#ARIAAttrs": true,
36
- "#HTMLLinkAndFetchingAttrs": ["crossorigin"],
37
- "#HTMLEmbededAndMediaContentAttrs": [
38
- "src",
39
- "preload",
40
- "autoplay",
41
- "loop",
42
- "muted",
43
- "controls",
44
- "height",
45
- "width"
46
- ]
47
- },
48
- "attributes": {
49
- // https://html.spec.whatwg.org/multipage/media.html#attr-video-poster
50
- "poster": {
51
- "type": "URL"
52
- },
53
- // https://html.spec.whatwg.org/multipage/media.html#attr-video-playsinline
54
- "playsinline": {
55
- "type": "Boolean"
56
- },
57
- // https://wicg.github.io/controls-list/html-output/multipage/embedded-content.html#attr-media-controlslist
58
- "controlslist": {
59
- "type": {
60
- "token": {
61
- "enum": ["nodownload", "nofullscreen", "noremoteplayback"]
62
- },
63
- "ordered": false,
64
- "caseInsensitive": true,
65
- "unique": true,
66
- "separator": "space"
67
- }
68
- }
69
- },
70
- "aria": {
71
- "implicitRole": false,
72
- "permittedRoles": ["application"],
73
- "properties": {
74
- "global": true,
75
- "role": "application"
76
- }
77
- }
78
- }
package/src/spec.wbr.json DELETED
@@ -1,25 +0,0 @@
1
- // https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-wbr-element
2
- // https://www.w3.org/TR/html-aria/#el-wbr
3
- // https://w3c.github.io/html-aria/#el-wbr
4
- {
5
- "contentModel": {
6
- "contents": false
7
- },
8
- "globalAttrs": {
9
- "#HTMLGlobalAttrs": true,
10
- "#GlobalEventAttrs": true,
11
- "#DocumentElementEventAttrs": true,
12
- "#ARIAAttrs": true
13
- },
14
- "attributes": {},
15
- "aria": {
16
- "implicitRole": false,
17
- "permittedRoles": ["none", "presentation"],
18
- "properties": {
19
- "only": ["aria-hidden"]
20
- },
21
- "1.1": {
22
- "permittedRoles": true
23
- }
24
- }
25
- }