@accesslint/core 0.6.7 → 0.8.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 (269) hide show
  1. package/README.md +104 -99
  2. package/dist/i18n/en.d.ts.map +1 -1
  3. package/dist/i18n/es.d.ts.map +1 -1
  4. package/dist/index.cjs +5 -5
  5. package/dist/index.d.ts +2 -2
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.iife.js +5 -5
  8. package/dist/index.js +4185 -4138
  9. package/dist/rules/adaptable/aria-required-children.d.ts +3 -0
  10. package/dist/rules/adaptable/aria-required-children.d.ts.map +1 -0
  11. package/dist/rules/adaptable/aria-required-parent.d.ts +3 -0
  12. package/dist/rules/adaptable/aria-required-parent.d.ts.map +1 -0
  13. package/dist/rules/adaptable/autocomplete-valid.d.ts.map +1 -0
  14. package/dist/rules/adaptable/definition-list.d.ts +2 -0
  15. package/dist/rules/adaptable/definition-list.d.ts.map +1 -0
  16. package/dist/rules/adaptable/dl-children.d.ts +3 -0
  17. package/dist/rules/adaptable/dl-children.d.ts.map +1 -0
  18. package/dist/rules/adaptable/empty-table-header.d.ts +3 -0
  19. package/dist/rules/adaptable/empty-table-header.d.ts.map +1 -0
  20. package/dist/rules/adaptable/list-children.d.ts +2 -0
  21. package/dist/rules/adaptable/list-children.d.ts.map +1 -0
  22. package/dist/rules/adaptable/listitem-parent.d.ts +3 -0
  23. package/dist/rules/adaptable/listitem-parent.d.ts.map +1 -0
  24. package/dist/rules/adaptable/orientation-lock.d.ts +3 -0
  25. package/dist/rules/{structure → adaptable}/orientation-lock.d.ts.map +1 -1
  26. package/dist/rules/adaptable/scope-attr-valid.d.ts +3 -0
  27. package/dist/rules/adaptable/scope-attr-valid.d.ts.map +1 -0
  28. package/dist/rules/adaptable/table-utils.d.ts +10 -0
  29. package/dist/rules/adaptable/table-utils.d.ts.map +1 -0
  30. package/dist/rules/adaptable/td-has-header.d.ts +3 -0
  31. package/dist/rules/adaptable/td-has-header.d.ts.map +1 -0
  32. package/dist/rules/adaptable/td-headers-attr.d.ts +3 -0
  33. package/dist/rules/adaptable/td-headers-attr.d.ts.map +1 -0
  34. package/dist/rules/adaptable/th-has-data-cells.d.ts +3 -0
  35. package/dist/rules/adaptable/th-has-data-cells.d.ts.map +1 -0
  36. package/dist/rules/aria/aria-allowed-attr.d.ts.map +1 -1
  37. package/dist/rules/aria/aria-attr-audit.d.ts.map +1 -1
  38. package/dist/rules/aria/aria-hidden-body.d.ts +2 -0
  39. package/dist/rules/aria/aria-hidden-body.d.ts.map +1 -0
  40. package/dist/rules/aria/aria-hidden-focus.d.ts +3 -0
  41. package/dist/rules/aria/aria-hidden-focus.d.ts.map +1 -0
  42. package/dist/rules/aria/aria-required-attr.d.ts.map +1 -1
  43. package/dist/rules/aria/aria-roles.d.ts.map +1 -1
  44. package/dist/rules/aria/presentation-role-conflict.d.ts.map +1 -1
  45. package/dist/rules/aria/presentational-children-focusable.d.ts.map +1 -1
  46. package/dist/rules/{color/color-contrast.d.ts → distinguishable/color-contrast-enhanced.d.ts} +1 -2
  47. package/dist/rules/distinguishable/color-contrast-enhanced.d.ts.map +1 -0
  48. package/dist/rules/distinguishable/color-contrast-helpers.d.ts +9 -0
  49. package/dist/rules/distinguishable/color-contrast-helpers.d.ts.map +1 -0
  50. package/dist/rules/distinguishable/color-contrast.d.ts +3 -0
  51. package/dist/rules/distinguishable/color-contrast.d.ts.map +1 -0
  52. package/dist/rules/distinguishable/letter-spacing.d.ts +3 -0
  53. package/dist/rules/distinguishable/letter-spacing.d.ts.map +1 -0
  54. package/dist/rules/distinguishable/line-height.d.ts +3 -0
  55. package/dist/rules/distinguishable/line-height.d.ts.map +1 -0
  56. package/dist/rules/{links/link-rules.d.ts → distinguishable/link-in-text-block.d.ts} +1 -2
  57. package/dist/rules/distinguishable/link-in-text-block.d.ts.map +1 -0
  58. package/dist/rules/distinguishable/meta-viewport.d.ts +3 -0
  59. package/dist/rules/distinguishable/meta-viewport.d.ts.map +1 -0
  60. package/dist/rules/distinguishable/text-spacing-helpers.d.ts +50 -0
  61. package/dist/rules/distinguishable/text-spacing-helpers.d.ts.map +1 -0
  62. package/dist/rules/distinguishable/word-spacing.d.ts +3 -0
  63. package/dist/rules/distinguishable/word-spacing.d.ts.map +1 -0
  64. package/dist/rules/engine.d.ts.map +1 -1
  65. package/dist/rules/enough-time/blink.d.ts +2 -0
  66. package/dist/rules/enough-time/blink.d.ts.map +1 -0
  67. package/dist/rules/enough-time/marquee.d.ts +2 -0
  68. package/dist/rules/enough-time/marquee.d.ts.map +1 -0
  69. package/dist/rules/enough-time/meta-refresh-no-exception.d.ts +3 -0
  70. package/dist/rules/enough-time/meta-refresh-no-exception.d.ts.map +1 -0
  71. package/dist/rules/enough-time/meta-refresh.d.ts +3 -0
  72. package/dist/rules/enough-time/meta-refresh.d.ts.map +1 -0
  73. package/dist/rules/index.d.ts +9 -1
  74. package/dist/rules/index.d.ts.map +1 -1
  75. package/dist/rules/keyboard-accessible/accesskeys.d.ts.map +1 -0
  76. package/dist/rules/keyboard-accessible/focus-order.d.ts +3 -0
  77. package/dist/rules/keyboard-accessible/focus-order.d.ts.map +1 -0
  78. package/dist/rules/keyboard-accessible/focus-visible.d.ts.map +1 -0
  79. package/dist/rules/keyboard-accessible/nested-interactive.d.ts +3 -0
  80. package/dist/rules/keyboard-accessible/nested-interactive.d.ts.map +1 -0
  81. package/dist/rules/keyboard-accessible/scrollable-region.d.ts +3 -0
  82. package/dist/rules/keyboard-accessible/scrollable-region.d.ts.map +1 -0
  83. package/dist/rules/keyboard-accessible/server-image-map.d.ts +2 -0
  84. package/dist/rules/keyboard-accessible/server-image-map.d.ts.map +1 -0
  85. package/dist/rules/keyboard-accessible/tabindex.d.ts.map +1 -0
  86. package/dist/rules/labels-and-names/aria-command-name.d.ts +3 -0
  87. package/dist/rules/labels-and-names/aria-command-name.d.ts.map +1 -0
  88. package/dist/rules/labels-and-names/aria-dialog-name.d.ts +3 -0
  89. package/dist/rules/labels-and-names/aria-dialog-name.d.ts.map +1 -0
  90. package/dist/rules/labels-and-names/aria-input-field-name.d.ts +2 -0
  91. package/dist/rules/labels-and-names/aria-input-field-name.d.ts.map +1 -0
  92. package/dist/rules/labels-and-names/aria-meter-name.d.ts +3 -0
  93. package/dist/rules/labels-and-names/aria-meter-name.d.ts.map +1 -0
  94. package/dist/rules/labels-and-names/aria-name-helpers.d.ts +20 -0
  95. package/dist/rules/labels-and-names/aria-name-helpers.d.ts.map +1 -0
  96. package/dist/rules/labels-and-names/aria-progressbar-name.d.ts +3 -0
  97. package/dist/rules/labels-and-names/aria-progressbar-name.d.ts.map +1 -0
  98. package/dist/rules/labels-and-names/aria-toggle-field-name.d.ts +2 -0
  99. package/dist/rules/labels-and-names/aria-toggle-field-name.d.ts.map +1 -0
  100. package/dist/rules/labels-and-names/aria-tooltip-name.d.ts +3 -0
  101. package/dist/rules/labels-and-names/aria-tooltip-name.d.ts.map +1 -0
  102. package/dist/rules/labels-and-names/aria-treeitem-name.d.ts +3 -0
  103. package/dist/rules/labels-and-names/aria-treeitem-name.d.ts.map +1 -0
  104. package/dist/rules/labels-and-names/button-name.d.ts.map +1 -0
  105. package/dist/rules/{parsing/duplicate-id.d.ts → labels-and-names/duplicate-id-aria.d.ts} +1 -1
  106. package/dist/rules/labels-and-names/duplicate-id-aria.d.ts.map +1 -0
  107. package/dist/rules/labels-and-names/form-constants.d.ts +13 -0
  108. package/dist/rules/labels-and-names/form-constants.d.ts.map +1 -0
  109. package/dist/rules/labels-and-names/form-label.d.ts +3 -0
  110. package/dist/rules/labels-and-names/form-label.d.ts.map +1 -0
  111. package/dist/rules/{structure/frame-rules.d.ts → labels-and-names/frame-title-unique.d.ts} +1 -2
  112. package/dist/rules/labels-and-names/frame-title-unique.d.ts.map +1 -0
  113. package/dist/rules/labels-and-names/frame-title.d.ts +3 -0
  114. package/dist/rules/labels-and-names/frame-title.d.ts.map +1 -0
  115. package/dist/rules/labels-and-names/id-ref-constants.d.ts +6 -0
  116. package/dist/rules/labels-and-names/id-ref-constants.d.ts.map +1 -0
  117. package/dist/rules/labels-and-names/input-button-name.d.ts.map +1 -0
  118. package/dist/rules/labels-and-names/label-content-mismatch.d.ts +3 -0
  119. package/dist/rules/labels-and-names/label-content-mismatch.d.ts.map +1 -0
  120. package/dist/rules/labels-and-names/label-title-only.d.ts.map +1 -0
  121. package/dist/rules/labels-and-names/multiple-labels.d.ts +3 -0
  122. package/dist/rules/labels-and-names/multiple-labels.d.ts.map +1 -0
  123. package/dist/rules/labels-and-names/summary-name.d.ts.map +1 -0
  124. package/dist/rules/landmarks/banner-is-top-level.d.ts +2 -0
  125. package/dist/rules/landmarks/banner-is-top-level.d.ts.map +1 -0
  126. package/dist/rules/landmarks/complementary-is-top-level.d.ts +3 -0
  127. package/dist/rules/landmarks/complementary-is-top-level.d.ts.map +1 -0
  128. package/dist/rules/landmarks/constants.d.ts +37 -0
  129. package/dist/rules/landmarks/constants.d.ts.map +1 -0
  130. package/dist/rules/landmarks/contentinfo-is-top-level.d.ts +2 -0
  131. package/dist/rules/landmarks/contentinfo-is-top-level.d.ts.map +1 -0
  132. package/dist/rules/landmarks/landmark-main.d.ts +3 -0
  133. package/dist/rules/landmarks/landmark-main.d.ts.map +1 -0
  134. package/dist/rules/landmarks/landmark-unique.d.ts +3 -0
  135. package/dist/rules/landmarks/landmark-unique.d.ts.map +1 -0
  136. package/dist/rules/landmarks/main-is-top-level.d.ts +3 -0
  137. package/dist/rules/landmarks/main-is-top-level.d.ts.map +1 -0
  138. package/dist/rules/landmarks/no-duplicate-banner.d.ts +2 -0
  139. package/dist/rules/landmarks/no-duplicate-banner.d.ts.map +1 -0
  140. package/dist/rules/landmarks/no-duplicate-contentinfo.d.ts +2 -0
  141. package/dist/rules/landmarks/no-duplicate-contentinfo.d.ts.map +1 -0
  142. package/dist/rules/landmarks/no-duplicate-main.d.ts +2 -0
  143. package/dist/rules/landmarks/no-duplicate-main.d.ts.map +1 -0
  144. package/dist/rules/landmarks/region.d.ts +3 -0
  145. package/dist/rules/landmarks/region.d.ts.map +1 -0
  146. package/dist/rules/navigable/bypass.d.ts +3 -0
  147. package/dist/rules/navigable/bypass.d.ts.map +1 -0
  148. package/dist/rules/navigable/document-title.d.ts +3 -0
  149. package/dist/rules/navigable/document-title.d.ts.map +1 -0
  150. package/dist/rules/{structure/heading-rules.d.ts → navigable/empty-heading.d.ts} +1 -1
  151. package/dist/rules/navigable/empty-heading.d.ts.map +1 -0
  152. package/dist/rules/{structure → navigable}/heading-order.d.ts.map +1 -1
  153. package/dist/rules/navigable/link-name.d.ts.map +1 -0
  154. package/dist/rules/{structure/semantic-rules.d.ts → navigable/p-as-heading.d.ts} +1 -1
  155. package/dist/rules/navigable/p-as-heading.d.ts.map +1 -0
  156. package/dist/rules/navigable/page-has-heading-one.d.ts +3 -0
  157. package/dist/rules/navigable/page-has-heading-one.d.ts.map +1 -0
  158. package/dist/rules/navigable/skip-link.d.ts +3 -0
  159. package/dist/rules/navigable/skip-link.d.ts.map +1 -0
  160. package/dist/rules/readable/constants.d.ts +10 -0
  161. package/dist/rules/readable/constants.d.ts.map +1 -0
  162. package/dist/rules/readable/html-has-lang.d.ts +3 -0
  163. package/dist/rules/readable/html-has-lang.d.ts.map +1 -0
  164. package/dist/rules/readable/html-lang-valid.d.ts +3 -0
  165. package/dist/rules/readable/html-lang-valid.d.ts.map +1 -0
  166. package/dist/rules/readable/html-xml-lang-mismatch.d.ts +3 -0
  167. package/dist/rules/readable/html-xml-lang-mismatch.d.ts.map +1 -0
  168. package/dist/rules/readable/valid-lang.d.ts +3 -0
  169. package/dist/rules/readable/valid-lang.d.ts.map +1 -0
  170. package/dist/rules/text-alternatives/area-alt.d.ts.map +1 -0
  171. package/dist/rules/{images/image-redundant-alt.d.ts → text-alternatives/image-alt-words.d.ts} +2 -7
  172. package/dist/rules/text-alternatives/image-alt-words.d.ts.map +1 -0
  173. package/dist/rules/text-alternatives/image-redundant-alt.d.ts +7 -0
  174. package/dist/rules/text-alternatives/image-redundant-alt.d.ts.map +1 -0
  175. package/dist/rules/text-alternatives/img-alt.d.ts.map +1 -0
  176. package/dist/rules/text-alternatives/input-image-alt.d.ts.map +1 -0
  177. package/dist/rules/text-alternatives/object-alt.d.ts.map +1 -0
  178. package/dist/rules/text-alternatives/role-img-alt.d.ts.map +1 -0
  179. package/dist/rules/text-alternatives/svg-img-alt.d.ts.map +1 -0
  180. package/dist/rules/time-based-media/audio-transcript.d.ts +3 -0
  181. package/dist/rules/time-based-media/audio-transcript.d.ts.map +1 -0
  182. package/dist/rules/time-based-media/video-captions.d.ts +3 -0
  183. package/dist/rules/time-based-media/video-captions.d.ts.map +1 -0
  184. package/dist/rules/types.d.ts +50 -6
  185. package/dist/rules/types.d.ts.map +1 -1
  186. package/dist/rules/utils/aria.d.ts +21 -0
  187. package/dist/rules/utils/aria.d.ts.map +1 -1
  188. package/dist/rules/utils/color.d.ts +11 -0
  189. package/dist/rules/utils/color.d.ts.map +1 -1
  190. package/dist/rules/utils/filters.d.ts +6 -0
  191. package/dist/rules/utils/filters.d.ts.map +1 -0
  192. package/dist/rules/utils/visibility.d.ts +13 -0
  193. package/dist/rules/utils/visibility.d.ts.map +1 -0
  194. package/package.json +4 -3
  195. package/dist/rules/aria/aria-children-parent.d.ts +0 -4
  196. package/dist/rules/aria/aria-children-parent.d.ts.map +0 -1
  197. package/dist/rules/aria/aria-hidden-rules.d.ts +0 -4
  198. package/dist/rules/aria/aria-hidden-rules.d.ts.map +0 -1
  199. package/dist/rules/aria/aria-name-rules.d.ts +0 -10
  200. package/dist/rules/aria/aria-name-rules.d.ts.map +0 -1
  201. package/dist/rules/aria/button-name.d.ts.map +0 -1
  202. package/dist/rules/aria/summary-name.d.ts.map +0 -1
  203. package/dist/rules/color/color-contrast.d.ts.map +0 -1
  204. package/dist/rules/forms/autocomplete-valid.d.ts.map +0 -1
  205. package/dist/rules/forms/input-button-name.d.ts.map +0 -1
  206. package/dist/rules/forms/label-content-name-mismatch.d.ts +0 -3
  207. package/dist/rules/forms/label-content-name-mismatch.d.ts.map +0 -1
  208. package/dist/rules/forms/label-title-only.d.ts.map +0 -1
  209. package/dist/rules/forms/label.d.ts +0 -4
  210. package/dist/rules/forms/label.d.ts.map +0 -1
  211. package/dist/rules/forms/select-name.d.ts +0 -3
  212. package/dist/rules/forms/select-name.d.ts.map +0 -1
  213. package/dist/rules/images/area-alt.d.ts.map +0 -1
  214. package/dist/rules/images/image-redundant-alt.d.ts.map +0 -1
  215. package/dist/rules/images/img-alt.d.ts.map +0 -1
  216. package/dist/rules/images/input-image-alt.d.ts.map +0 -1
  217. package/dist/rules/images/object-alt.d.ts.map +0 -1
  218. package/dist/rules/images/role-img-alt.d.ts.map +0 -1
  219. package/dist/rules/images/server-side-image-map.d.ts +0 -2
  220. package/dist/rules/images/server-side-image-map.d.ts.map +0 -1
  221. package/dist/rules/images/svg-img-alt.d.ts.map +0 -1
  222. package/dist/rules/keyboard/accesskeys.d.ts.map +0 -1
  223. package/dist/rules/keyboard/focus-order-semantics.d.ts +0 -3
  224. package/dist/rules/keyboard/focus-order-semantics.d.ts.map +0 -1
  225. package/dist/rules/keyboard/focus-visible.d.ts.map +0 -1
  226. package/dist/rules/keyboard/interactive-rules.d.ts +0 -4
  227. package/dist/rules/keyboard/interactive-rules.d.ts.map +0 -1
  228. package/dist/rules/keyboard/tabindex.d.ts.map +0 -1
  229. package/dist/rules/language/html-has-lang.d.ts +0 -6
  230. package/dist/rules/language/html-has-lang.d.ts.map +0 -1
  231. package/dist/rules/links/link-name.d.ts.map +0 -1
  232. package/dist/rules/links/link-rules.d.ts.map +0 -1
  233. package/dist/rules/media/media-captions.d.ts +0 -4
  234. package/dist/rules/media/media-captions.d.ts.map +0 -1
  235. package/dist/rules/parsing/duplicate-id.d.ts.map +0 -1
  236. package/dist/rules/structure/deprecated-elements.d.ts +0 -3
  237. package/dist/rules/structure/deprecated-elements.d.ts.map +0 -1
  238. package/dist/rules/structure/document-rules.d.ts +0 -5
  239. package/dist/rules/structure/document-rules.d.ts.map +0 -1
  240. package/dist/rules/structure/frame-rules.d.ts.map +0 -1
  241. package/dist/rules/structure/heading-rules.d.ts.map +0 -1
  242. package/dist/rules/structure/landmark-rules.d.ts +0 -13
  243. package/dist/rules/structure/landmark-rules.d.ts.map +0 -1
  244. package/dist/rules/structure/list-rules.d.ts +0 -6
  245. package/dist/rules/structure/list-rules.d.ts.map +0 -1
  246. package/dist/rules/structure/meta-rules.d.ts +0 -5
  247. package/dist/rules/structure/meta-rules.d.ts.map +0 -1
  248. package/dist/rules/structure/orientation-lock.d.ts +0 -3
  249. package/dist/rules/structure/semantic-rules.d.ts.map +0 -1
  250. package/dist/rules/structure/text-spacing-rules.d.ts +0 -5
  251. package/dist/rules/structure/text-spacing-rules.d.ts.map +0 -1
  252. package/dist/rules/tables/table-headers.d.ts +0 -7
  253. package/dist/rules/tables/table-headers.d.ts.map +0 -1
  254. /package/dist/rules/{forms → adaptable}/autocomplete-valid.d.ts +0 -0
  255. /package/dist/rules/{keyboard → keyboard-accessible}/accesskeys.d.ts +0 -0
  256. /package/dist/rules/{keyboard → keyboard-accessible}/focus-visible.d.ts +0 -0
  257. /package/dist/rules/{keyboard → keyboard-accessible}/tabindex.d.ts +0 -0
  258. /package/dist/rules/{aria → labels-and-names}/button-name.d.ts +0 -0
  259. /package/dist/rules/{forms → labels-and-names}/input-button-name.d.ts +0 -0
  260. /package/dist/rules/{forms → labels-and-names}/label-title-only.d.ts +0 -0
  261. /package/dist/rules/{aria → labels-and-names}/summary-name.d.ts +0 -0
  262. /package/dist/rules/{structure → navigable}/heading-order.d.ts +0 -0
  263. /package/dist/rules/{links → navigable}/link-name.d.ts +0 -0
  264. /package/dist/rules/{images → text-alternatives}/area-alt.d.ts +0 -0
  265. /package/dist/rules/{images → text-alternatives}/img-alt.d.ts +0 -0
  266. /package/dist/rules/{images → text-alternatives}/input-image-alt.d.ts +0 -0
  267. /package/dist/rules/{images → text-alternatives}/object-alt.d.ts +0 -0
  268. /package/dist/rules/{images → text-alternatives}/role-img-alt.d.ts +0 -0
  269. /package/dist/rules/{images → text-alternatives}/svg-img-alt.d.ts +0 -0
@@ -1,4 +1,3 @@
1
1
  import type { Rule } from "../types";
2
- export declare const frameTitle: Rule;
3
2
  export declare const frameTitleUnique: Rule;
4
- //# sourceMappingURL=frame-rules.d.ts.map
3
+ //# sourceMappingURL=frame-title-unique.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frame-title-unique.d.ts","sourceRoot":"","sources":["../../../src/rules/labels-and-names/frame-title-unique.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAKrC,eAAO,MAAM,gBAAgB,EAAE,IA0C9B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const frameTitle: Rule;
3
+ //# sourceMappingURL=frame-title.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frame-title.d.ts","sourceRoot":"","sources":["../../../src/rules/labels-and-names/frame-title.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAKrC,eAAO,MAAM,UAAU,EAAE,IA8BxB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare const ARIA_ID_ATTRS: string[];
2
+ /**
3
+ * Collect all IDs referenced by ARIA attributes and `label[for]` in the document.
4
+ */
5
+ export declare function collectActiveIdRefs(doc: Document): Set<string>;
6
+ //# sourceMappingURL=id-ref-constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id-ref-constants.d.ts","sourceRoot":"","sources":["../../../src/rules/labels-and-names/id-ref-constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,UAAuF,CAAC;AAElH;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAgB9D"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-button-name.d.ts","sourceRoot":"","sources":["../../../src/rules/labels-and-names/input-button-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,eAAe,EAAE,IAiC7B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const labelContentMismatch: Rule;
3
+ //# sourceMappingURL=label-content-mismatch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label-content-mismatch.d.ts","sourceRoot":"","sources":["../../../src/rules/labels-and-names/label-content-mismatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAqCrC,eAAO,MAAM,oBAAoB,EAAE,IA0FlC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label-title-only.d.ts","sourceRoot":"","sources":["../../../src/rules/labels-and-names/label-title-only.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAKrC,eAAO,MAAM,cAAc,EAAE,IAuC5B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const multipleLabels: Rule;
3
+ //# sourceMappingURL=multiple-labels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiple-labels.d.ts","sourceRoot":"","sources":["../../../src/rules/labels-and-names/multiple-labels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,cAAc,EAAE,IAiD5B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summary-name.d.ts","sourceRoot":"","sources":["../../../src/rules/labels-and-names/summary-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,WAAW,EAAE,IA8BzB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const bannerIsTopLevel: import("../types").Rule;
2
+ //# sourceMappingURL=banner-is-top-level.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banner-is-top-level.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/banner-is-top-level.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,yBAM3B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const complementaryIsTopLevel: Rule;
3
+ //# sourceMappingURL=complementary-is-top-level.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"complementary-is-top-level.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/complementary-is-top-level.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAa,MAAM,UAAU,CAAC;AAGhD,eAAO,MAAM,uBAAuB,EAAE,IA+BrC,CAAC"}
@@ -0,0 +1,37 @@
1
+ import type { Rule } from "../types";
2
+ /** True when an iframe/frame is hidden and not exposed to assistive technology. */
3
+ export declare function isHiddenFrame(frame: Element): boolean;
4
+ /**
5
+ * Parse a meta refresh content attribute, extracting the delay in seconds
6
+ * and whether it contains a valid URL redirect.
7
+ */
8
+ export declare function parseMetaRefreshContent(content: string): {
9
+ seconds: number;
10
+ hasValidUrl: boolean;
11
+ } | null;
12
+ export declare const SECTIONING_SELECTOR = "article, aside, main, nav, section, [role=\"article\"], [role=\"complementary\"], [role=\"main\"], [role=\"navigation\"], [role=\"region\"]";
13
+ export declare const LANDMARK_SELECTOR = "main, [role=\"main\"], header, [role=\"banner\"], footer, [role=\"contentinfo\"], nav, [role=\"navigation\"], aside, [role=\"complementary\"], section[aria-label], section[aria-labelledby], [role=\"region\"][aria-label], [role=\"region\"][aria-labelledby], form[aria-label], form[aria-labelledby], [role=\"form\"][aria-label], [role=\"form\"][aria-labelledby], [role=\"search\"]";
14
+ /**
15
+ * Factory for "nested landmark" rules. These rules check that elements with
16
+ * a given role are not nested inside sectioning content.
17
+ */
18
+ export declare function makeNestedLandmarkRule(opts: {
19
+ id: string;
20
+ selector: string;
21
+ landmarkName: string;
22
+ description: string;
23
+ guidance: string;
24
+ }): Rule;
25
+ /**
26
+ * Factory for "no duplicate landmark" rules. These rules check that at most
27
+ * one top-level element matches a given selector.
28
+ */
29
+ export declare function makeNoDuplicateLandmarkRule(opts: {
30
+ id: string;
31
+ selector: string;
32
+ landmarkName: string;
33
+ description: string;
34
+ guidance: string;
35
+ filterTopLevel: boolean;
36
+ }): Rule;
37
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAa,MAAM,UAAU,CAAC;AAGhD,mFAAmF;AACnF,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAUrD;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAYzG;AAGD,eAAO,MAAM,mBAAmB,gJAAsI,CAAC;AAGvK,eAAO,MAAM,iBAAiB,+XAA2W,CAAC;AAE1Y;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,IAAI,CA0BP;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE;IAChD,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,OAAO,CAAC;CACzB,GAAG,IAAI,CA+BP"}
@@ -0,0 +1,2 @@
1
+ export declare const contentinfoIsTopLevel: import("../types").Rule;
2
+ //# sourceMappingURL=contentinfo-is-top-level.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contentinfo-is-top-level.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/contentinfo-is-top-level.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,yBAMhC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const landmarkMain: Rule;
3
+ //# sourceMappingURL=landmark-main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"landmark-main.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/landmark-main.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAGrC,eAAO,MAAM,YAAY,EAAE,IA+B1B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const landmarkUnique: Rule;
3
+ //# sourceMappingURL=landmark-unique.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"landmark-unique.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/landmark-unique.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAa,MAAM,UAAU,CAAC;AAIhD,eAAO,MAAM,cAAc,EAAE,IAiD5B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const mainIsTopLevel: Rule;
3
+ //# sourceMappingURL=main-is-top-level.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main-is-top-level.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/main-is-top-level.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAa,MAAM,UAAU,CAAC;AAGhD,eAAO,MAAM,cAAc,EAAE,IA4B5B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const noDuplicateBanner: import("../types").Rule;
2
+ //# sourceMappingURL=no-duplicate-banner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-duplicate-banner.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/no-duplicate-banner.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,yBAO5B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const noDuplicateContentinfo: import("../types").Rule;
2
+ //# sourceMappingURL=no-duplicate-contentinfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-duplicate-contentinfo.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/no-duplicate-contentinfo.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,sBAAsB,yBAOjC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const noDuplicateMain: import("../types").Rule;
2
+ //# sourceMappingURL=no-duplicate-main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-duplicate-main.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/no-duplicate-main.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,yBAO1B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const region: Rule;
3
+ //# sourceMappingURL=region.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"region.d.ts","sourceRoot":"","sources":["../../../src/rules/landmarks/region.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAa,MAAM,UAAU,CAAC;AAKhD,eAAO,MAAM,MAAM,EAAE,IA4CpB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const bypass: Rule;
3
+ //# sourceMappingURL=bypass.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bypass.d.ts","sourceRoot":"","sources":["../../../src/rules/navigable/bypass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAErC,eAAO,MAAM,MAAM,EAAE,IA+CpB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const documentTitle: Rule;
3
+ //# sourceMappingURL=document-title.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-title.d.ts","sourceRoot":"","sources":["../../../src/rules/navigable/document-title.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAErC,eAAO,MAAM,aAAa,EAAE,IAkC3B,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import type { Rule } from "../types";
2
2
  export declare const emptyHeading: Rule;
3
- //# sourceMappingURL=heading-rules.d.ts.map
3
+ //# sourceMappingURL=empty-heading.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"empty-heading.d.ts","sourceRoot":"","sources":["../../../src/rules/navigable/empty-heading.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,YAAY,EAAE,IAuC1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"heading-order.d.ts","sourceRoot":"","sources":["../../../src/rules/structure/heading-order.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,YAAY,EAAE,IAsC1B,CAAC"}
1
+ {"version":3,"file":"heading-order.d.ts","sourceRoot":"","sources":["../../../src/rules/navigable/heading-order.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,YAAY,EAAE,IAuC1B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-name.d.ts","sourceRoot":"","sources":["../../../src/rules/navigable/link-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AA0BrC,eAAO,MAAM,QAAQ,EAAE,IAgCtB,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import type { Rule } from "../types";
2
2
  export declare const pAsHeading: Rule;
3
- //# sourceMappingURL=semantic-rules.d.ts.map
3
+ //# sourceMappingURL=p-as-heading.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"p-as-heading.d.ts","sourceRoot":"","sources":["../../../src/rules/navigable/p-as-heading.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,UAAU,EAAE,IAmDxB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const pageHasHeadingOne: Rule;
3
+ //# sourceMappingURL=page-has-heading-one.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-has-heading-one.d.ts","sourceRoot":"","sources":["../../../src/rules/navigable/page-has-heading-one.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAGrC,eAAO,MAAM,iBAAiB,EAAE,IAsC/B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const skipLink: Rule;
3
+ //# sourceMappingURL=skip-link.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skip-link.d.ts","sourceRoot":"","sources":["../../../src/rules/navigable/skip-link.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,QAAQ,EAAE,IA4CtB,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare const VALID_PRIMARY_SUBTAGS: Set<string>;
2
+ export declare const DEPRECATED_3_LETTER: Set<string>;
3
+ export declare const VALID_LANG_FORMAT: RegExp;
4
+ export declare function isValidLangTag(lang: string): boolean;
5
+ /**
6
+ * Check whether an element has visible text content that is governed by its
7
+ * lang attribute (i.e. not overridden by a descendant's own lang).
8
+ */
9
+ export declare function hasVisibleLangText(el: Element): boolean;
10
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/rules/readable/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,qBAAqB,aASjC,CAAC;AAGF,eAAO,MAAM,mBAAmB,aAW/B,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAmC,CAAC;AAElE,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQpD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAsCvD"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const htmlHasLang: Rule;
3
+ //# sourceMappingURL=html-has-lang.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html-has-lang.d.ts","sourceRoot":"","sources":["../../../src/rules/readable/html-has-lang.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAGrC,eAAO,MAAM,WAAW,EAAE,IA0CzB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const htmlLangValid: Rule;
3
+ //# sourceMappingURL=html-lang-valid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html-lang-valid.d.ts","sourceRoot":"","sources":["../../../src/rules/readable/html-lang-valid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,aAAa,EAAE,IAwB3B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const htmlXmlLangMismatch: Rule;
3
+ //# sourceMappingURL=html-xml-lang-mismatch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html-xml-lang-mismatch.d.ts","sourceRoot":"","sources":["../../../src/rules/readable/html-xml-lang-mismatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAGrC,eAAO,MAAM,mBAAmB,EAAE,IAiCjC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const validLang: Rule;
3
+ //# sourceMappingURL=valid-lang.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"valid-lang.d.ts","sourceRoot":"","sources":["../../../src/rules/readable/valid-lang.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAKrC,eAAO,MAAM,SAAS,EAAE,IAmDvB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"area-alt.d.ts","sourceRoot":"","sources":["../../../src/rules/text-alternatives/area-alt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,OAAO,EAAE,IA6BrB,CAAC"}
@@ -1,14 +1,9 @@
1
1
  import type { Rule } from "../types";
2
- /**
3
- * Checks if alt text duplicates adjacent link or button text.
4
- * Maps to axe-core's image-redundant-alt rule.
5
- */
6
- export declare const imageRedundantAlt: Rule;
7
2
  /**
8
3
  * Checks if alt text contains self-referential words like "image" or "photo".
9
4
  * Screen readers already announce "image"/"graphic" before alt text, so these
10
5
  * words are redundant. Separate from image-redundant-alt because axe-core
11
6
  * does not have an equivalent check.
12
7
  */
13
- export declare const imageAltRedundantWords: Rule;
14
- //# sourceMappingURL=image-redundant-alt.d.ts.map
8
+ export declare const imageAltWords: Rule;
9
+ //# sourceMappingURL=image-alt-words.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image-alt-words.d.ts","sourceRoot":"","sources":["../../../src/rules/text-alternatives/image-alt-words.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAKrC;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,IAgC3B,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Rule } from "../types";
2
+ /**
3
+ * Checks if alt text duplicates adjacent link or button text.
4
+ * Maps to axe-core's image-redundant-alt rule.
5
+ */
6
+ export declare const imageRedundantAlt: Rule;
7
+ //# sourceMappingURL=image-redundant-alt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image-redundant-alt.d.ts","sourceRoot":"","sources":["../../../src/rules/text-alternatives/image-redundant-alt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAGrC;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,IAsC/B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"img-alt.d.ts","sourceRoot":"","sources":["../../../src/rules/text-alternatives/img-alt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAkCrC,eAAO,MAAM,MAAM,EAAE,IA0DpB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-image-alt.d.ts","sourceRoot":"","sources":["../../../src/rules/text-alternatives/input-image-alt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,aAAa,EAAE,IA2B3B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-alt.d.ts","sourceRoot":"","sources":["../../../src/rules/text-alternatives/object-alt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,SAAS,EAAE,IA8CvB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"role-img-alt.d.ts","sourceRoot":"","sources":["../../../src/rules/text-alternatives/role-img-alt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,UAAU,EAAE,IAmCxB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"svg-img-alt.d.ts","sourceRoot":"","sources":["../../../src/rules/text-alternatives/svg-img-alt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAmBrC,eAAO,MAAM,SAAS,EAAE,IAiCvB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const audioTranscript: Rule;
3
+ //# sourceMappingURL=audio-transcript.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio-transcript.d.ts","sourceRoot":"","sources":["../../../src/rules/time-based-media/audio-transcript.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,eAAe,EAAE,IAyC7B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from "../types";
2
+ export declare const videoCaptions: Rule;
3
+ //# sourceMappingURL=video-captions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"video-captions.d.ts","sourceRoot":"","sources":["../../../src/rules/time-based-media/video-captions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAIrC,eAAO,MAAM,aAAa,EAAE,IAiC3B,CAAC"}
@@ -1,26 +1,61 @@
1
+ /**
2
+ * How easily an agent can fix violations of this rule:
3
+ * - `mechanical`: Deterministic fix, no judgment needed (e.g., remove tabindex > 0)
4
+ * - `contextual`: Needs surrounding context but an LLM can reason about it (e.g., suggest alt text)
5
+ * - `visual`: Requires seeing the rendered output or design intent (e.g., color contrast)
6
+ */
7
+ export type Fixability = "mechanical" | "contextual" | "visual";
1
8
  export interface Rule {
2
9
  id: string;
10
+ category: string;
3
11
  actRuleIds?: string[];
4
12
  wcag: string[];
5
13
  level: "A" | "AA" | "AAA";
6
14
  tags?: string[];
15
+ /** How easily an agent can fix violations of this rule */
16
+ fixability?: Fixability;
7
17
  description: string;
8
18
  /** Generic remediation guidance for the AI to contextualize */
9
19
  guidance?: string;
10
- /** Tailored prompt for AI explanation of this specific rule violation */
11
- prompt?: string;
12
20
  run(doc: Document): Violation[];
13
21
  }
22
+ /** Structured fix suggestion for agents and automated tooling */
23
+ export type FixSuggestion = {
24
+ type: "add-attribute";
25
+ attribute: string;
26
+ value: string;
27
+ } | {
28
+ type: "set-attribute";
29
+ attribute: string;
30
+ value: string;
31
+ } | {
32
+ type: "remove-attribute";
33
+ attribute: string;
34
+ } | {
35
+ type: "add-element";
36
+ tag: string;
37
+ parent: string;
38
+ attributes?: Record<string, string>;
39
+ textContent?: string;
40
+ } | {
41
+ type: "remove-element";
42
+ } | {
43
+ type: "add-text-content";
44
+ text?: string;
45
+ } | {
46
+ type: "suggest";
47
+ suggestion: string;
48
+ };
14
49
  export interface Violation {
15
50
  ruleId: string;
16
51
  selector: string;
17
52
  html: string;
18
53
  impact: "critical" | "serious" | "moderate" | "minor";
19
54
  message: string;
20
- /** Rule-specific surrounding context to help AI understand the issue */
55
+ /** Surrounding context for understanding the violation (shown in reports and used by AI) */
21
56
  context?: string;
22
- /** Additional context for AI guidance only (not displayed to user) */
23
- aiContext?: string;
57
+ /** Structured fix suggestion for agents and automated tooling */
58
+ fix?: FixSuggestion;
24
59
  element?: Element;
25
60
  }
26
61
  export interface AuditResult {
@@ -29,6 +64,14 @@ export interface AuditResult {
29
64
  violations: Violation[];
30
65
  ruleCount: number;
31
66
  }
67
+ export interface DiffResult {
68
+ /** Violations present in `after` but not in `before` */
69
+ added: Violation[];
70
+ /** Violations present in `before` but not in `after` */
71
+ fixed: Violation[];
72
+ /** Violations present in both */
73
+ unchanged: Violation[];
74
+ }
32
75
  export interface SelectorExistsCheck {
33
76
  type: "selector-exists";
34
77
  }
@@ -71,8 +114,9 @@ export interface DeclarativeRule {
71
114
  wcag: string[];
72
115
  level: "A" | "AA" | "AAA";
73
116
  tags?: string[];
117
+ fixability?: Fixability;
74
118
  guidance?: string;
75
- prompt?: string;
119
+ fix?: FixSuggestion;
76
120
  skipAriaHidden?: boolean;
77
121
  documentOnly?: boolean;
78
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/rules/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/rules/types.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ /** Elements that are natively focusable (comprehensive list). */
2
+ export declare const FOCUSABLE_SELECTOR: string;
1
3
  export declare function clearComputedRoleCache(): void;
2
4
  /**
3
5
  * Return the implicit ARIA role for a native HTML element, or null if
@@ -15,6 +17,7 @@ export declare function getComputedRole(el: Element): string | null;
15
17
  export declare function clearAccessibleNameCache(): void;
16
18
  export declare function getAccessibleName(el: Element): string;
17
19
  export declare function isValidRole(role: string): boolean;
20
+ export declare const GLOBAL_ARIA_ATTRS: Set<string>;
18
21
  export declare function isValidAriaAttribute(attr: string): boolean;
19
22
  /**
20
23
  * Check if an element or any ancestor is hidden via computed styles
@@ -29,4 +32,22 @@ export declare function isAriaHidden(el: Element): boolean;
29
32
  * removed from the accessibility tree.
30
33
  */
31
34
  export declare function getAccessibleTextContent(el: Element): string;
35
+ /**
36
+ * Extract truly visible text from an element, excluding:
37
+ * - Non-rendered elements (style, script, SVG)
38
+ * - Elements with role="img" or role="presentation"
39
+ * - aria-hidden subtrees
40
+ * - Elements hidden via inline display:none
41
+ */
42
+ export declare function getVisibleText(el: Element): string;
43
+ /** Check if an element or any ancestor has inline visibility:hidden. */
44
+ export declare function isVisibilityHidden(el: Element): boolean;
45
+ /**
46
+ * Return the explicit accessible name for an element, checking only
47
+ * aria-labelledby, aria-label, and the title attribute. Does NOT fall
48
+ * through to text content, alt, labels, or other naming mechanisms.
49
+ */
50
+ export declare function getExplicitAccessibleName(el: Element): string;
51
+ /** Check whether an element is inside a Shadow DOM tree. */
52
+ export declare function isInShadowDOM(el: Element): boolean;
32
53
  //# sourceMappingURL=aria.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"aria.d.ts","sourceRoot":"","sources":["../../../src/rules/utils/aria.ts"],"names":[],"mappings":"AAMA,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CA0D1D;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAS1D;AAQD,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAMrD;AA8FD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAIjD;AAWD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAOrD;AAID,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAiBjD;AAkBD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CA8C5D"}
1
+ {"version":3,"file":"aria.d.ts","sourceRoot":"","sources":["../../../src/rules/utils/aria.ts"],"names":[],"mappings":"AAIA,iEAAiE;AACjE,eAAO,MAAM,kBAAkB,QAenB,CAAC;AAQb,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CA0D1D;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAS1D;AAQD,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAMrD;AA8FD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAIjD;AAED,eAAO,MAAM,iBAAiB,aAQ5B,CAAC;AAEH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAOrD;AAID,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAiBjD;AAkBD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CA8C5D;AAMD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAoBlD;AAMD,wEAAwE;AACxE,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAOvD;AAMD;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAoB7D;AAMD,4DAA4D;AAC5D,wBAAgB,aAAa,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAElD"}
@@ -49,5 +49,16 @@ export declare function parseTextShadow(textShadow: string): TextShadow[] | null
49
49
  * Check if an element (or an ancestor up to the nearest opaque background)
50
50
  * has a ::before or ::after pseudo-element that provides a visual background.
51
51
  */
52
+ export declare function rgbToHex([r, g, b]: [number, number, number]): string;
53
+ /**
54
+ * Compute the effective contrast considering text shadows.
55
+ * Uses the maximum of: fg-vs-bg, fg-vs-shadow, shadow-vs-bg for each shadow.
56
+ */
57
+ export declare function getContrastWithShadow(fg: [number, number, number], bg: [number, number, number], shadows: TextShadow[]): number;
58
+ /**
59
+ * Walk up the tree and multiply opacity values.
60
+ * Returns the accumulated opacity (0–1).
61
+ */
62
+ export declare function getAccumulatedOpacity(el: Element): number;
52
63
  export declare function hasPseudoElementBackground(el: Element): boolean;
53
64
  //# sourceMappingURL=color.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../src/rules/utils/color.ts"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,IAAI,IAAI,CAIvC;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,OAAO,GAAG,mBAAmB,CAMvE;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAMpE;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAI/D;AAWD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CA+BzE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWrD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAC5B,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAC5B,KAAK,EAAE,MAAM,GACZ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAM1B;AAED,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAOxF;AAkED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CActD;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,mBAAmB,GAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAmB,GAC9D,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAmC5B;AAID;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAMnD;AAmDD,wBAAgB,WAAW,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAOhD;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,IAAI,CAgBvE;AAMD;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAiC/D"}
1
+ {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../src/rules/utils/color.ts"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,IAAI,IAAI,CAIvC;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,OAAO,GAAG,mBAAmB,CAMvE;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAMpE;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAI/D;AAWD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CA+BzE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWrD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAC5B,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAC5B,KAAK,EAAE,MAAM,GACZ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAM1B;AAED,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAOxF;AAkED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CActD;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,mBAAmB,GAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAmB,GAC9D,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAmC5B;AAID;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAMnD;AAmDD,wBAAgB,WAAW,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAOhD;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,IAAI,CAgBvE;AAMD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAEpE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAC5B,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAC5B,OAAO,EAAE,UAAU,EAAE,GACpB,MAAM,CASR;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAUzD;AAED,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAiC/D"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Returns true when any ancestor uses visual effects that make
3
+ * contrast unreliable to compute (filter, mix-blend-mode, backdrop-filter).
4
+ */
5
+ export declare function hasUnreliableVisualEffects(el: Element): boolean;
6
+ //# sourceMappingURL=filters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../../src/rules/utils/filters.ts"],"names":[],"mappings":"AAsCA;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAa/D"}
@@ -0,0 +1,13 @@
1
+ export declare const NON_TEXT_TAGS: Set<string>;
2
+ export declare function isVisuallyHidden(style: CSSStyleDeclaration): boolean;
3
+ export declare function isHidden(el: Element): boolean;
4
+ export declare function isDisabledFormElement(el: Element): boolean;
5
+ /** Check if a label's associated control is disabled. */
6
+ export declare function isLabelForDisabledControl(el: Element, doc: Document): boolean;
7
+ /** Returns true when the element is inside a native <select>. */
8
+ export declare function isInsideNativeSelect(el: Element): boolean;
9
+ /** Returns true when text consists entirely of non-letter characters (symbols, punctuation). */
10
+ export declare function hasOnlyNonTextCharacters(text: string): boolean;
11
+ /** Returns true when the element is inside an aria-disabled container. */
12
+ export declare function isInAriaDisabledGroup(el: Element): boolean;
13
+ //# sourceMappingURL=visibility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visibility.d.ts","sourceRoot":"","sources":["../../../src/rules/utils/visibility.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa,aAexB,CAAC;AAEH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAmBpE;AAED,wBAAgB,QAAQ,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAU7C;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAc1D;AAED,yDAAyD;AACzD,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAyB7E;AAED,iEAAiE;AACjE,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAEzD;AAED,gGAAgG;AAChG,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAM9D;AAED,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAE1D"}