axe-core 4.2.4 → 4.3.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 (681) hide show
  1. package/CHANGELOG.md +37 -2
  2. package/README.md +24 -2
  3. package/axe.d.ts +60 -4
  4. package/axe.js +1198 -830
  5. package/axe.min.js +2 -2
  6. package/locales/de.json +1 -1
  7. package/locales/pt_BR.json +163 -44
  8. package/package.json +7 -1
  9. package/.eslintrc.js +0 -112
  10. package/.prettierrc.json +0 -10
  11. package/CONTRIBUTING.md +0 -242
  12. package/bower.json +0 -40
  13. package/doc/API.md +0 -963
  14. package/doc/accessibility-supported.md +0 -37
  15. package/doc/act-rules-format.md +0 -37
  16. package/doc/aria-supported.md +0 -13
  17. package/doc/backwards-compatibility-doc.md +0 -94
  18. package/doc/check-message-template.md +0 -124
  19. package/doc/check-options.md +0 -437
  20. package/doc/code-submission-guidelines.md +0 -171
  21. package/doc/developer-guide.md +0 -515
  22. package/doc/examples/chrome-debugging-protocol/README.md +0 -13
  23. package/doc/examples/chrome-debugging-protocol/axe-cdp.js +0 -81
  24. package/doc/examples/chrome-debugging-protocol/package.json +0 -11
  25. package/doc/examples/html-handlebars.md +0 -164
  26. package/doc/examples/jasmine/README.md +0 -35
  27. package/doc/examples/jasmine/karma.conf.js +0 -29
  28. package/doc/examples/jasmine/package-lock.json +0 -1489
  29. package/doc/examples/jasmine/package.json +0 -21
  30. package/doc/examples/jasmine/spec/a11y.js +0 -36
  31. package/doc/examples/jest_react/README.md +0 -41
  32. package/doc/examples/jest_react/link.js +0 -7
  33. package/doc/examples/jest_react/link.test.js +0 -24
  34. package/doc/examples/jest_react/package-lock.json +0 -7525
  35. package/doc/examples/jest_react/package.json +0 -28
  36. package/doc/examples/jest_react/test-helpers.js +0 -21
  37. package/doc/examples/jsdom/package.json +0 -15
  38. package/doc/examples/mocha/README.md +0 -35
  39. package/doc/examples/mocha/karma.conf.js +0 -29
  40. package/doc/examples/mocha/package-lock.json +0 -1671
  41. package/doc/examples/mocha/package.json +0 -22
  42. package/doc/examples/phantomjs/README.md +0 -17
  43. package/doc/examples/phantomjs/axe-phantom.js +0 -53
  44. package/doc/examples/phantomjs/package-lock.json +0 -862
  45. package/doc/examples/phantomjs/package.json +0 -19
  46. package/doc/examples/puppeteer/README.md +0 -12
  47. package/doc/examples/puppeteer/axe-puppeteer.js +0 -60
  48. package/doc/examples/puppeteer/package.json +0 -13
  49. package/doc/examples/qunit/README.md +0 -37
  50. package/doc/examples/qunit/package-lock.json +0 -2951
  51. package/doc/examples/qunit/package.json +0 -21
  52. package/doc/examples/test-examples.js +0 -40
  53. package/doc/frame-messenger.md +0 -107
  54. package/doc/plugins.md +0 -123
  55. package/doc/projects.md +0 -56
  56. package/doc/rule-descriptions.md +0 -135
  57. package/doc/rule-development.md +0 -123
  58. package/doc/rule-proposal.md +0 -106
  59. package/doc/standards-object.md +0 -147
  60. package/lib/checks/aria/abstractrole-evaluate.js +0 -40
  61. package/lib/checks/aria/abstractrole.json +0 -14
  62. package/lib/checks/aria/aria-allowed-attr-evaluate.js +0 -58
  63. package/lib/checks/aria/aria-allowed-attr.json +0 -14
  64. package/lib/checks/aria/aria-allowed-role-evaluate.js +0 -42
  65. package/lib/checks/aria/aria-allowed-role.json +0 -22
  66. package/lib/checks/aria/aria-errormessage-evaluate.js +0 -68
  67. package/lib/checks/aria/aria-errormessage.json +0 -18
  68. package/lib/checks/aria/aria-hidden-body-evaluate.js +0 -11
  69. package/lib/checks/aria/aria-hidden-body.json +0 -11
  70. package/lib/checks/aria/aria-prohibited-attr-evaluate.js +0 -68
  71. package/lib/checks/aria/aria-prohibited-attr.json +0 -15
  72. package/lib/checks/aria/aria-required-attr-evaluate.js +0 -67
  73. package/lib/checks/aria/aria-required-attr.json +0 -14
  74. package/lib/checks/aria/aria-required-children-evaluate.js +0 -137
  75. package/lib/checks/aria/aria-required-children.json +0 -32
  76. package/lib/checks/aria/aria-required-parent-evaluate.js +0 -120
  77. package/lib/checks/aria/aria-required-parent.json +0 -17
  78. package/lib/checks/aria/aria-roledescription-evaluate.js +0 -25
  79. package/lib/checks/aria/aria-roledescription.json +0 -23
  80. package/lib/checks/aria/aria-unsupported-attr-evaluate.js +0 -53
  81. package/lib/checks/aria/aria-unsupported-attr.json +0 -11
  82. package/lib/checks/aria/aria-valid-attr-evaluate.js +0 -51
  83. package/lib/checks/aria/aria-valid-attr-value-evaluate.js +0 -122
  84. package/lib/checks/aria/aria-valid-attr-value.json +0 -19
  85. package/lib/checks/aria/aria-valid-attr.json +0 -15
  86. package/lib/checks/aria/fallbackrole-evaluate.js +0 -13
  87. package/lib/checks/aria/fallbackrole.json +0 -11
  88. package/lib/checks/aria/has-global-aria-attribute-evaluate.js +0 -11
  89. package/lib/checks/aria/has-global-aria-attribute.json +0 -14
  90. package/lib/checks/aria/has-widget-role-evaluate.js +0 -20
  91. package/lib/checks/aria/has-widget-role.json +0 -12
  92. package/lib/checks/aria/invalidrole-evaluate.js +0 -45
  93. package/lib/checks/aria/invalidrole.json +0 -14
  94. package/lib/checks/aria/is-element-focusable-evaluate.js +0 -7
  95. package/lib/checks/aria/is-element-focusable.json +0 -11
  96. package/lib/checks/aria/no-implicit-explicit-label-evaluate.js +0 -54
  97. package/lib/checks/aria/no-implicit-explicit-label.json +0 -11
  98. package/lib/checks/aria/unsupportedrole-evaluate.js +0 -15
  99. package/lib/checks/aria/unsupportedrole.json +0 -11
  100. package/lib/checks/aria/valid-scrollable-semantics-evaluate.js +0 -70
  101. package/lib/checks/aria/valid-scrollable-semantics.json +0 -14
  102. package/lib/checks/color/color-contrast-evaluate.js +0 -178
  103. package/lib/checks/color/color-contrast.json +0 -42
  104. package/lib/checks/color/link-in-text-block-evaluate.js +0 -94
  105. package/lib/checks/color/link-in-text-block.json +0 -19
  106. package/lib/checks/forms/autocomplete-appropriate-evaluate.js +0 -84
  107. package/lib/checks/forms/autocomplete-appropriate.json +0 -11
  108. package/lib/checks/forms/autocomplete-valid-evaluate.js +0 -8
  109. package/lib/checks/forms/autocomplete-valid.json +0 -11
  110. package/lib/checks/generic/README.md +0 -13
  111. package/lib/checks/generic/attr-non-space-content-evaluate.js +0 -28
  112. package/lib/checks/generic/has-descendant-after.js +0 -15
  113. package/lib/checks/generic/has-descendant-evaluate.js +0 -20
  114. package/lib/checks/generic/has-text-content-evaluate.js +0 -11
  115. package/lib/checks/generic/matches-definition-evaluate.js +0 -7
  116. package/lib/checks/generic/page-no-duplicate-after.js +0 -6
  117. package/lib/checks/generic/page-no-duplicate-evaluate.js +0 -42
  118. package/lib/checks/index.js +0 -11
  119. package/lib/checks/keyboard/accesskeys-after.js +0 -23
  120. package/lib/checks/keyboard/accesskeys-evaluate.js +0 -11
  121. package/lib/checks/keyboard/accesskeys.json +0 -12
  122. package/lib/checks/keyboard/focusable-content-evaluate.js +0 -20
  123. package/lib/checks/keyboard/focusable-content.json +0 -11
  124. package/lib/checks/keyboard/focusable-disabled-evaluate.js +0 -36
  125. package/lib/checks/keyboard/focusable-disabled.json +0 -11
  126. package/lib/checks/keyboard/focusable-element-evaluate.js +0 -47
  127. package/lib/checks/keyboard/focusable-element.json +0 -11
  128. package/lib/checks/keyboard/focusable-modal-open-evaluate.js +0 -20
  129. package/lib/checks/keyboard/focusable-modal-open.json +0 -11
  130. package/lib/checks/keyboard/focusable-no-name-evaluate.js +0 -18
  131. package/lib/checks/keyboard/focusable-no-name.json +0 -12
  132. package/lib/checks/keyboard/focusable-not-tabbable-evaluate.js +0 -36
  133. package/lib/checks/keyboard/focusable-not-tabbable.json +0 -11
  134. package/lib/checks/keyboard/frame-focusable-content.json +0 -12
  135. package/lib/checks/keyboard/landmark-is-top-level-evaluate.js +0 -31
  136. package/lib/checks/keyboard/landmark-is-top-level.json +0 -11
  137. package/lib/checks/keyboard/no-focusable-content-evaluate.js +0 -35
  138. package/lib/checks/keyboard/no-focusable-content.json +0 -12
  139. package/lib/checks/keyboard/page-has-heading-one.json +0 -15
  140. package/lib/checks/keyboard/page-has-main.json +0 -15
  141. package/lib/checks/keyboard/page-no-duplicate-banner.json +0 -16
  142. package/lib/checks/keyboard/page-no-duplicate-contentinfo.json +0 -16
  143. package/lib/checks/keyboard/page-no-duplicate-main.json +0 -15
  144. package/lib/checks/keyboard/tabindex-evaluate.js +0 -10
  145. package/lib/checks/keyboard/tabindex.json +0 -11
  146. package/lib/checks/label/alt-space-value-evaluate.js +0 -7
  147. package/lib/checks/label/alt-space-value.json +0 -11
  148. package/lib/checks/label/duplicate-img-label-evaluate.js +0 -23
  149. package/lib/checks/label/duplicate-img-label.json +0 -14
  150. package/lib/checks/label/explicit-evaluate.js +0 -34
  151. package/lib/checks/label/explicit.json +0 -12
  152. package/lib/checks/label/help-same-as-label-evaluate.js +0 -28
  153. package/lib/checks/label/help-same-as-label.json +0 -12
  154. package/lib/checks/label/hidden-explicit-label-evaluate.js +0 -30
  155. package/lib/checks/label/hidden-explicit-label.json +0 -12
  156. package/lib/checks/label/implicit-evaluate.js +0 -16
  157. package/lib/checks/label/implicit.json +0 -12
  158. package/lib/checks/label/label-content-name-mismatch-evaluate.js +0 -71
  159. package/lib/checks/label/label-content-name-mismatch.json +0 -15
  160. package/lib/checks/label/multiple-label-evaluate.js +0 -44
  161. package/lib/checks/label/multiple-label.json +0 -11
  162. package/lib/checks/label/title-only-evaluate.js +0 -11
  163. package/lib/checks/label/title-only.json +0 -11
  164. package/lib/checks/landmarks/landmark-is-unique-after.js +0 -27
  165. package/lib/checks/landmarks/landmark-is-unique-evaluate.js +0 -14
  166. package/lib/checks/landmarks/landmark-is-unique.json +0 -12
  167. package/lib/checks/language/has-lang-evaluate.js +0 -39
  168. package/lib/checks/language/has-lang.json +0 -17
  169. package/lib/checks/language/valid-lang-evaluate.js +0 -36
  170. package/lib/checks/language/valid-lang.json +0 -14
  171. package/lib/checks/language/xml-lang-mismatch-evaluate.js +0 -10
  172. package/lib/checks/language/xml-lang-mismatch.json +0 -11
  173. package/lib/checks/lists/dlitem-evaluate.js +0 -30
  174. package/lib/checks/lists/dlitem.json +0 -11
  175. package/lib/checks/lists/listitem-evaluate.js +0 -28
  176. package/lib/checks/lists/listitem.json +0 -14
  177. package/lib/checks/lists/only-dlitems-evaluate.js +0 -51
  178. package/lib/checks/lists/only-dlitems.json +0 -11
  179. package/lib/checks/lists/only-listitems-evaluate.js +0 -63
  180. package/lib/checks/lists/only-listitems.json +0 -14
  181. package/lib/checks/lists/structured-dlitems-evaluate.js +0 -26
  182. package/lib/checks/lists/structured-dlitems.json +0 -11
  183. package/lib/checks/media/caption-evaluate.js +0 -13
  184. package/lib/checks/media/caption.json +0 -11
  185. package/lib/checks/media/frame-tested-after.js +0 -31
  186. package/lib/checks/media/frame-tested-evaluate.js +0 -6
  187. package/lib/checks/media/frame-tested.json +0 -16
  188. package/lib/checks/media/no-autoplay-audio-evaluate.js +0 -97
  189. package/lib/checks/media/no-autoplay-audio.json +0 -15
  190. package/lib/checks/mobile/css-orientation-lock-evaluate.js +0 -254
  191. package/lib/checks/mobile/css-orientation-lock.json +0 -15
  192. package/lib/checks/mobile/meta-viewport-large.json +0 -15
  193. package/lib/checks/mobile/meta-viewport-scale-evaluate.js +0 -71
  194. package/lib/checks/mobile/meta-viewport.json +0 -14
  195. package/lib/checks/navigation/header-present.json +0 -15
  196. package/lib/checks/navigation/heading-order-after.js +0 -132
  197. package/lib/checks/navigation/heading-order-evaluate.js +0 -58
  198. package/lib/checks/navigation/heading-order.json +0 -13
  199. package/lib/checks/navigation/identical-links-same-purpose-after.js +0 -106
  200. package/lib/checks/navigation/identical-links-same-purpose-evaluate.js +0 -35
  201. package/lib/checks/navigation/identical-links-same-purpose.json +0 -12
  202. package/lib/checks/navigation/internal-link-present-evaluate.js +0 -10
  203. package/lib/checks/navigation/internal-link-present.json +0 -11
  204. package/lib/checks/navigation/landmark.json +0 -14
  205. package/lib/checks/navigation/meta-refresh-evaluate.js +0 -8
  206. package/lib/checks/navigation/meta-refresh.json +0 -11
  207. package/lib/checks/navigation/p-as-heading-evaluate.js +0 -98
  208. package/lib/checks/navigation/p-as-heading.json +0 -30
  209. package/lib/checks/navigation/region-evaluate.js +0 -106
  210. package/lib/checks/navigation/region.json +0 -14
  211. package/lib/checks/navigation/skip-link-evaluate.js +0 -11
  212. package/lib/checks/navigation/skip-link.json +0 -12
  213. package/lib/checks/navigation/unique-frame-title-after.js +0 -13
  214. package/lib/checks/navigation/unique-frame-title-evaluate.js +0 -9
  215. package/lib/checks/navigation/unique-frame-title.json +0 -12
  216. package/lib/checks/parsing/duplicate-id-active.json +0 -12
  217. package/lib/checks/parsing/duplicate-id-after.js +0 -12
  218. package/lib/checks/parsing/duplicate-id-aria.json +0 -12
  219. package/lib/checks/parsing/duplicate-id-evaluate.js +0 -24
  220. package/lib/checks/parsing/duplicate-id.json +0 -12
  221. package/lib/checks/shared/aria-label-evaluate.js +0 -8
  222. package/lib/checks/shared/aria-label.json +0 -11
  223. package/lib/checks/shared/aria-labelledby-evaluate.js +0 -12
  224. package/lib/checks/shared/aria-labelledby.json +0 -12
  225. package/lib/checks/shared/avoid-inline-spacing-evaluate.js +0 -16
  226. package/lib/checks/shared/avoid-inline-spacing.json +0 -17
  227. package/lib/checks/shared/button-has-visible-text.json +0 -12
  228. package/lib/checks/shared/doc-has-title-evaluate.js +0 -8
  229. package/lib/checks/shared/doc-has-title.json +0 -11
  230. package/lib/checks/shared/exists-evaluate.js +0 -5
  231. package/lib/checks/shared/exists.json +0 -11
  232. package/lib/checks/shared/has-alt-evaluate.js +0 -10
  233. package/lib/checks/shared/has-alt.json +0 -11
  234. package/lib/checks/shared/has-visible-text.json +0 -12
  235. package/lib/checks/shared/is-on-screen-evaluate.js +0 -8
  236. package/lib/checks/shared/is-on-screen.json +0 -11
  237. package/lib/checks/shared/non-empty-alt.json +0 -17
  238. package/lib/checks/shared/non-empty-if-present-evaluate.js +0 -19
  239. package/lib/checks/shared/non-empty-if-present.json +0 -14
  240. package/lib/checks/shared/non-empty-placeholder.json +0 -17
  241. package/lib/checks/shared/non-empty-title.json +0 -17
  242. package/lib/checks/shared/non-empty-value.json +0 -17
  243. package/lib/checks/shared/presentational-role-evaluate.js +0 -42
  244. package/lib/checks/shared/presentational-role.json +0 -16
  245. package/lib/checks/shared/role-none.json +0 -19
  246. package/lib/checks/shared/role-presentation.json +0 -19
  247. package/lib/checks/shared/svg-non-empty-title-evaluate.js +0 -33
  248. package/lib/checks/shared/svg-non-empty-title.json +0 -15
  249. package/lib/checks/tables/caption-faked-evaluate.js +0 -16
  250. package/lib/checks/tables/caption-faked.json +0 -11
  251. package/lib/checks/tables/html5-scope-evaluate.js +0 -11
  252. package/lib/checks/tables/html5-scope.json +0 -11
  253. package/lib/checks/tables/same-caption-summary-evaluate.js +0 -12
  254. package/lib/checks/tables/same-caption-summary.json +0 -11
  255. package/lib/checks/tables/scope-value-evaluate.js +0 -7
  256. package/lib/checks/tables/scope-value.json +0 -14
  257. package/lib/checks/tables/td-has-header-evaluate.js +0 -33
  258. package/lib/checks/tables/td-has-header.json +0 -11
  259. package/lib/checks/tables/td-headers-attr-evaluate.js +0 -67
  260. package/lib/checks/tables/td-headers-attr.json +0 -12
  261. package/lib/checks/tables/th-has-data-cells-evaluate.js +0 -82
  262. package/lib/checks/tables/th-has-data-cells.json +0 -12
  263. package/lib/checks/visibility/hidden-content-evaluate.js +0 -34
  264. package/lib/checks/visibility/hidden-content.json +0 -12
  265. package/lib/commons/aria/allowed-attr.js +0 -31
  266. package/lib/commons/aria/arialabel-text.js +0 -21
  267. package/lib/commons/aria/arialabelledby-text.js +0 -65
  268. package/lib/commons/aria/get-accessible-refs.js +0 -73
  269. package/lib/commons/aria/get-element-unallowed-roles.js +0 -110
  270. package/lib/commons/aria/get-explicit-role.js +0 -26
  271. package/lib/commons/aria/get-owned-virtual.js +0 -27
  272. package/lib/commons/aria/get-role-type.js +0 -21
  273. package/lib/commons/aria/get-role.js +0 -178
  274. package/lib/commons/aria/get-roles-by-type.js +0 -16
  275. package/lib/commons/aria/get-roles-with-name-from-contents.js +0 -15
  276. package/lib/commons/aria/implicit-nodes.js +0 -23
  277. package/lib/commons/aria/implicit-role.js +0 -44
  278. package/lib/commons/aria/index.js +0 -32
  279. package/lib/commons/aria/is-accessible-ref.js +0 -12
  280. package/lib/commons/aria/is-aria-role-allowed-on-element.js +0 -32
  281. package/lib/commons/aria/is-unsupported-role.js +0 -16
  282. package/lib/commons/aria/is-valid-role.js +0 -22
  283. package/lib/commons/aria/label-virtual.js +0 -46
  284. package/lib/commons/aria/label.js +0 -17
  285. package/lib/commons/aria/lookup-table.js +0 -2435
  286. package/lib/commons/aria/named-from-contents.js +0 -39
  287. package/lib/commons/aria/required-attr.js +0 -21
  288. package/lib/commons/aria/required-context.js +0 -21
  289. package/lib/commons/aria/required-owned.js +0 -21
  290. package/lib/commons/aria/validate-attr-value.js +0 -70
  291. package/lib/commons/aria/validate-attr.js +0 -16
  292. package/lib/commons/color/center-point-of-rect.js +0 -31
  293. package/lib/commons/color/color.js +0 -250
  294. package/lib/commons/color/element-has-image.js +0 -35
  295. package/lib/commons/color/element-is-distinct.js +0 -87
  296. package/lib/commons/color/filtered-rect-stack.js +0 -51
  297. package/lib/commons/color/flatten-colors.js +0 -22
  298. package/lib/commons/color/get-background-color.js +0 -84
  299. package/lib/commons/color/get-background-stack.js +0 -130
  300. package/lib/commons/color/get-contrast.js +0 -27
  301. package/lib/commons/color/get-foreground-color.js +0 -69
  302. package/lib/commons/color/get-own-background-color.js +0 -24
  303. package/lib/commons/color/get-rect-stack.js +0 -32
  304. package/lib/commons/color/get-text-shadow-colors.js +0 -121
  305. package/lib/commons/color/has-valid-contrast-ratio.js +0 -30
  306. package/lib/commons/color/incomplete-data.js +0 -47
  307. package/lib/commons/color/index.js +0 -20
  308. package/lib/commons/dom/find-elms-in-context.js +0 -31
  309. package/lib/commons/dom/find-up-virtual.js +0 -52
  310. package/lib/commons/dom/find-up.js +0 -20
  311. package/lib/commons/dom/focus-disabled.js +0 -30
  312. package/lib/commons/dom/get-composed-parent.js +0 -26
  313. package/lib/commons/dom/get-element-by-reference.js +0 -34
  314. package/lib/commons/dom/get-element-coordinates.js +0 -38
  315. package/lib/commons/dom/get-element-stack.js +0 -28
  316. package/lib/commons/dom/get-rect-stack.js +0 -514
  317. package/lib/commons/dom/get-root-node.js +0 -12
  318. package/lib/commons/dom/get-scroll-offset.js +0 -32
  319. package/lib/commons/dom/get-tabbable-elements.js +0 -26
  320. package/lib/commons/dom/get-text-element-stack.js +0 -89
  321. package/lib/commons/dom/get-viewport-size.js +0 -35
  322. package/lib/commons/dom/has-content-virtual.js +0 -53
  323. package/lib/commons/dom/has-content.js +0 -21
  324. package/lib/commons/dom/idrefs.js +0 -41
  325. package/lib/commons/dom/index.js +0 -38
  326. package/lib/commons/dom/inserted-into-focus-order.js +0 -24
  327. package/lib/commons/dom/is-focusable.js +0 -36
  328. package/lib/commons/dom/is-hidden-with-css.js +0 -76
  329. package/lib/commons/dom/is-html5.js +0 -17
  330. package/lib/commons/dom/is-in-text-block.js +0 -107
  331. package/lib/commons/dom/is-modal-open.js +0 -104
  332. package/lib/commons/dom/is-natively-focusable.js +0 -41
  333. package/lib/commons/dom/is-node.js +0 -14
  334. package/lib/commons/dom/is-offscreen.js +0 -66
  335. package/lib/commons/dom/is-opaque.js +0 -16
  336. package/lib/commons/dom/is-skip-link.js +0 -49
  337. package/lib/commons/dom/is-visible.js +0 -201
  338. package/lib/commons/dom/is-visual-content.js +0 -49
  339. package/lib/commons/dom/reduce-to-elements-below-floating.js +0 -36
  340. package/lib/commons/dom/shadow-elements-from-point.js +0 -47
  341. package/lib/commons/dom/url-props-from-attribute.js +0 -152
  342. package/lib/commons/dom/visually-contains.js +0 -113
  343. package/lib/commons/dom/visually-overlaps.js +0 -46
  344. package/lib/commons/forms/index.js +0 -12
  345. package/lib/commons/forms/is-aria-combobox.js +0 -15
  346. package/lib/commons/forms/is-aria-listbox.js +0 -15
  347. package/lib/commons/forms/is-aria-range.js +0 -17
  348. package/lib/commons/forms/is-aria-textbox.js +0 -15
  349. package/lib/commons/forms/is-disabled.js +0 -40
  350. package/lib/commons/forms/is-native-select.js +0 -17
  351. package/lib/commons/forms/is-native-textbox.js +0 -34
  352. package/lib/commons/index.js +0 -31
  353. package/lib/commons/matches/attributes.js +0 -32
  354. package/lib/commons/matches/condition.js +0 -20
  355. package/lib/commons/matches/explicit-role.js +0 -24
  356. package/lib/commons/matches/from-definition.js +0 -73
  357. package/lib/commons/matches/from-function.js +0 -40
  358. package/lib/commons/matches/from-primative.js +0 -44
  359. package/lib/commons/matches/implicit-role.js +0 -24
  360. package/lib/commons/matches/index.js +0 -29
  361. package/lib/commons/matches/matches.js +0 -39
  362. package/lib/commons/matches/node-name.js +0 -29
  363. package/lib/commons/matches/properties.js +0 -32
  364. package/lib/commons/matches/semantic-role.js +0 -24
  365. package/lib/commons/standards/get-aria-roles-by-type.js +0 -14
  366. package/lib/commons/standards/get-aria-roles-supporting-name-from-content.js +0 -22
  367. package/lib/commons/standards/get-element-spec.js +0 -54
  368. package/lib/commons/standards/get-elements-by-content-type.js +0 -30
  369. package/lib/commons/standards/get-global-aria-attrs.js +0 -22
  370. package/lib/commons/standards/implicit-html-roles.js +0 -186
  371. package/lib/commons/standards/index.js +0 -11
  372. package/lib/commons/table/get-all-cells.js +0 -28
  373. package/lib/commons/table/get-cell-position.js +0 -32
  374. package/lib/commons/table/get-headers.js +0 -102
  375. package/lib/commons/table/get-scope.js +0 -58
  376. package/lib/commons/table/index.js +0 -19
  377. package/lib/commons/table/is-column-header.js +0 -15
  378. package/lib/commons/table/is-data-cell.js +0 -24
  379. package/lib/commons/table/is-data-table.js +0 -195
  380. package/lib/commons/table/is-header.js +0 -26
  381. package/lib/commons/table/is-row-header.js +0 -15
  382. package/lib/commons/table/to-grid.js +0 -48
  383. package/lib/commons/table/traverse.js +0 -76
  384. package/lib/commons/text/accessible-text-virtual.js +0 -152
  385. package/lib/commons/text/accessible-text.js +0 -19
  386. package/lib/commons/text/form-control-value.js +0 -216
  387. package/lib/commons/text/has-unicode.js +0 -38
  388. package/lib/commons/text/index.js +0 -32
  389. package/lib/commons/text/is-human-interpretable.js +0 -54
  390. package/lib/commons/text/is-icon-ligature.js +0 -214
  391. package/lib/commons/text/is-valid-autocomplete.js +0 -118
  392. package/lib/commons/text/label-text.js +0 -70
  393. package/lib/commons/text/label-virtual.js +0 -50
  394. package/lib/commons/text/label.js +0 -19
  395. package/lib/commons/text/native-element-type.js +0 -101
  396. package/lib/commons/text/native-text-alternative.js +0 -46
  397. package/lib/commons/text/native-text-methods.js +0 -136
  398. package/lib/commons/text/remove-unicode.js +0 -38
  399. package/lib/commons/text/sanitize.js +0 -21
  400. package/lib/commons/text/subtree-text.js +0 -74
  401. package/lib/commons/text/title-text.js +0 -33
  402. package/lib/commons/text/unicode.js +0 -85
  403. package/lib/commons/text/unsupported.js +0 -5
  404. package/lib/commons/text/visible-text-nodes.js +0 -27
  405. package/lib/commons/text/visible-virtual.js +0 -46
  406. package/lib/commons/text/visible.js +0 -18
  407. package/lib/core/base/audit.js +0 -767
  408. package/lib/core/base/cache.js +0 -30
  409. package/lib/core/base/check-result.js +0 -31
  410. package/lib/core/base/check.js +0 -215
  411. package/lib/core/base/context.js +0 -280
  412. package/lib/core/base/metadata-function-map.js +0 -353
  413. package/lib/core/base/rule-result.js +0 -39
  414. package/lib/core/base/rule.js +0 -611
  415. package/lib/core/base/virtual-node/abstract-virtual-node.js +0 -43
  416. package/lib/core/base/virtual-node/serial-virtual-node.js +0 -117
  417. package/lib/core/base/virtual-node/virtual-node.js +0 -194
  418. package/lib/core/constants.js +0 -70
  419. package/lib/core/core.js +0 -91
  420. package/lib/core/imports/index.js +0 -39
  421. package/lib/core/index.js +0 -40
  422. package/lib/core/log.js +0 -13
  423. package/lib/core/public/cleanup.js +0 -51
  424. package/lib/core/public/configure.js +0 -134
  425. package/lib/core/public/frame-messenger.js +0 -5
  426. package/lib/core/public/get-rules.js +0 -29
  427. package/lib/core/public/load.js +0 -65
  428. package/lib/core/public/plugins.js +0 -39
  429. package/lib/core/public/reporter.js +0 -25
  430. package/lib/core/public/reset.js +0 -13
  431. package/lib/core/public/run-rules.js +0 -83
  432. package/lib/core/public/run-virtual-rule.js +0 -63
  433. package/lib/core/public/run.js +0 -186
  434. package/lib/core/public/setup.js +0 -20
  435. package/lib/core/public/teardown.js +0 -21
  436. package/lib/core/reporters/helpers/failure-summary.js +0 -33
  437. package/lib/core/reporters/helpers/get-environment-data.js +0 -39
  438. package/lib/core/reporters/helpers/incomplete-fallback-msg.js +0 -12
  439. package/lib/core/reporters/helpers/index.js +0 -21
  440. package/lib/core/reporters/helpers/process-aggregate.js +0 -110
  441. package/lib/core/reporters/na.js +0 -24
  442. package/lib/core/reporters/no-passes.js +0 -20
  443. package/lib/core/reporters/raw-env.js +0 -17
  444. package/lib/core/reporters/raw.js +0 -32
  445. package/lib/core/reporters/v1.js +0 -33
  446. package/lib/core/reporters/v2.js +0 -19
  447. package/lib/core/utils/aggregate-checks.js +0 -90
  448. package/lib/core/utils/aggregate-node-results.js +0 -65
  449. package/lib/core/utils/aggregate-result.js +0 -39
  450. package/lib/core/utils/aggregate.js +0 -21
  451. package/lib/core/utils/are-styles-set.js +0 -18
  452. package/lib/core/utils/assert.js +0 -12
  453. package/lib/core/utils/check-helper.js +0 -36
  454. package/lib/core/utils/clone.js +0 -28
  455. package/lib/core/utils/closest.js +0 -30
  456. package/lib/core/utils/collect-results-from-frames.js +0 -84
  457. package/lib/core/utils/contains.js +0 -46
  458. package/lib/core/utils/css-parser.js +0 -9
  459. package/lib/core/utils/deep-merge.js +0 -31
  460. package/lib/core/utils/dq-element.js +0 -131
  461. package/lib/core/utils/element-matches.js +0 -43
  462. package/lib/core/utils/escape-selector.js +0 -79
  463. package/lib/core/utils/extend-meta-data.js +0 -20
  464. package/lib/core/utils/filter-html-attrs.js +0 -75
  465. package/lib/core/utils/finalize-result.js +0 -28
  466. package/lib/core/utils/find-by.js +0 -16
  467. package/lib/core/utils/frame-messenger/assert-window.js +0 -21
  468. package/lib/core/utils/frame-messenger/channel-store.js +0 -23
  469. package/lib/core/utils/frame-messenger/create-responder.js +0 -15
  470. package/lib/core/utils/frame-messenger/message-handler.js +0 -72
  471. package/lib/core/utils/frame-messenger/message-id.js +0 -22
  472. package/lib/core/utils/frame-messenger/message-parser.js +0 -109
  473. package/lib/core/utils/frame-messenger/post-message.js +0 -54
  474. package/lib/core/utils/frame-messenger/process-error.js +0 -30
  475. package/lib/core/utils/frame-messenger.js +0 -40
  476. package/lib/core/utils/get-all-checks.js +0 -13
  477. package/lib/core/utils/get-ancestry.js +0 -31
  478. package/lib/core/utils/get-base-lang.js +0 -18
  479. package/lib/core/utils/get-check-message.js +0 -24
  480. package/lib/core/utils/get-check-option.js +0 -41
  481. package/lib/core/utils/get-flattened-tree.js +0 -151
  482. package/lib/core/utils/get-friendly-uri-end.js +0 -143
  483. package/lib/core/utils/get-node-attributes.js +0 -22
  484. package/lib/core/utils/get-node-from-tree.js +0 -14
  485. package/lib/core/utils/get-root-node.js +0 -17
  486. package/lib/core/utils/get-rule.js +0 -17
  487. package/lib/core/utils/get-scroll-state.js +0 -43
  488. package/lib/core/utils/get-scroll.js +0 -41
  489. package/lib/core/utils/get-selector.js +0 -395
  490. package/lib/core/utils/get-shadow-selector.js +0 -31
  491. package/lib/core/utils/get-standards.js +0 -6
  492. package/lib/core/utils/get-stylesheet-factory.js +0 -53
  493. package/lib/core/utils/get-xpath.js +0 -84
  494. package/lib/core/utils/index.js +0 -90
  495. package/lib/core/utils/inject-style.js +0 -33
  496. package/lib/core/utils/is-hidden.js +0 -55
  497. package/lib/core/utils/is-html-element.js +0 -137
  498. package/lib/core/utils/is-node-in-context.js +0 -46
  499. package/lib/core/utils/is-shadow-root.js +0 -40
  500. package/lib/core/utils/is-xhtml.js +0 -15
  501. package/lib/core/utils/matches.js +0 -263
  502. package/lib/core/utils/memoize.js +0 -22
  503. package/lib/core/utils/merge-results.js +0 -134
  504. package/lib/core/utils/node-sorter.js +0 -23
  505. package/lib/core/utils/parse-crossorigin-stylesheet.js +0 -66
  506. package/lib/core/utils/parse-sameorigin-stylesheet.js +0 -100
  507. package/lib/core/utils/parse-stylesheet.js +0 -75
  508. package/lib/core/utils/performance-timer.js +0 -126
  509. package/lib/core/utils/pollyfills.js +0 -347
  510. package/lib/core/utils/preload-cssom.js +0 -249
  511. package/lib/core/utils/preload-media.js +0 -70
  512. package/lib/core/utils/preload.js +0 -150
  513. package/lib/core/utils/process-message.js +0 -77
  514. package/lib/core/utils/publish-metadata.js +0 -109
  515. package/lib/core/utils/query-selector-all-filter.js +0 -104
  516. package/lib/core/utils/query-selector-all.js +0 -15
  517. package/lib/core/utils/queue.js +0 -137
  518. package/lib/core/utils/respondable.js +0 -108
  519. package/lib/core/utils/rule-should-run.js +0 -83
  520. package/lib/core/utils/select.js +0 -87
  521. package/lib/core/utils/send-command-to-frame.js +0 -65
  522. package/lib/core/utils/set-scroll-state.js +0 -21
  523. package/lib/core/utils/to-array.js +0 -10
  524. package/lib/core/utils/token-list.js +0 -15
  525. package/lib/core/utils/unique-array.js +0 -13
  526. package/lib/core/utils/uuid.js +0 -253
  527. package/lib/core/utils/valid-input-type.js +0 -35
  528. package/lib/core/utils/valid-langs.js +0 -105
  529. package/lib/intro.stub +0 -15
  530. package/lib/misc/any-failure-summary.json +0 -6
  531. package/lib/misc/incomplete-fallback.json +0 -3
  532. package/lib/misc/none-failure-summary.json +0 -6
  533. package/lib/outro.stub +0 -2
  534. package/lib/rules/accesskeys.json +0 -13
  535. package/lib/rules/area-alt.json +0 -22
  536. package/lib/rules/aria-allowed-attr-matches.js +0 -15
  537. package/lib/rules/aria-allowed-attr.json +0 -12
  538. package/lib/rules/aria-allowed-role-matches.js +0 -12
  539. package/lib/rules/aria-allowed-role.json +0 -14
  540. package/lib/rules/aria-command-name.json +0 -18
  541. package/lib/rules/aria-dialog-name.json +0 -13
  542. package/lib/rules/aria-has-attr-matches.js +0 -9
  543. package/lib/rules/aria-hidden-body.json +0 -14
  544. package/lib/rules/aria-hidden-focus-matches.js +0 -22
  545. package/lib/rules/aria-hidden-focus.json +0 -18
  546. package/lib/rules/aria-input-field-name.json +0 -13
  547. package/lib/rules/aria-meter-name.json +0 -13
  548. package/lib/rules/aria-progressbar-name.json +0 -13
  549. package/lib/rules/aria-required-attr.json +0 -12
  550. package/lib/rules/aria-required-children-matches.js +0 -8
  551. package/lib/rules/aria-required-children.json +0 -13
  552. package/lib/rules/aria-required-parent-matches.js +0 -8
  553. package/lib/rules/aria-required-parent.json +0 -13
  554. package/lib/rules/aria-roledescription.json +0 -12
  555. package/lib/rules/aria-roles.json +0 -13
  556. package/lib/rules/aria-text.json +0 -12
  557. package/lib/rules/aria-toggle-field-name.json +0 -18
  558. package/lib/rules/aria-tooltip-name.json +0 -18
  559. package/lib/rules/aria-treeitem-name.json +0 -18
  560. package/lib/rules/aria-valid-attr-value.json +0 -12
  561. package/lib/rules/aria-valid-attr.json +0 -12
  562. package/lib/rules/audio-caption.json +0 -20
  563. package/lib/rules/autocomplete-matches.js +0 -58
  564. package/lib/rules/autocomplete-valid.json +0 -12
  565. package/lib/rules/avoid-inline-spacing.json +0 -12
  566. package/lib/rules/blink.json +0 -19
  567. package/lib/rules/button-name.json +0 -26
  568. package/lib/rules/bypass-matches.js +0 -14
  569. package/lib/rules/bypass.json +0 -21
  570. package/lib/rules/color-contrast-matches.js +0 -156
  571. package/lib/rules/color-contrast.json +0 -13
  572. package/lib/rules/css-orientation-lock.json +0 -13
  573. package/lib/rules/data-table-large-matches.js +0 -17
  574. package/lib/rules/data-table-matches.js +0 -7
  575. package/lib/rules/definition-list.json +0 -13
  576. package/lib/rules/dlitem.json +0 -13
  577. package/lib/rules/document-title.json +0 -13
  578. package/lib/rules/duplicate-id-active-matches.js +0 -15
  579. package/lib/rules/duplicate-id-active.json +0 -14
  580. package/lib/rules/duplicate-id-aria-matches.js +0 -7
  581. package/lib/rules/duplicate-id-aria.json +0 -14
  582. package/lib/rules/duplicate-id-misc-matches.js +0 -17
  583. package/lib/rules/duplicate-id.json +0 -14
  584. package/lib/rules/empty-heading.json +0 -19
  585. package/lib/rules/empty-table-header.json +0 -13
  586. package/lib/rules/focus-order-semantics.json +0 -13
  587. package/lib/rules/form-field-multiple-labels.json +0 -13
  588. package/lib/rules/frame-focusable-content-matches.js +0 -9
  589. package/lib/rules/frame-focusable-content.json +0 -13
  590. package/lib/rules/frame-tested.json +0 -12
  591. package/lib/rules/frame-title-has-text-matches.js +0 -8
  592. package/lib/rules/frame-title-unique.json +0 -13
  593. package/lib/rules/frame-title.json +0 -24
  594. package/lib/rules/has-implicit-chromium-role-matches.js +0 -7
  595. package/lib/rules/heading-matches.js +0 -19
  596. package/lib/rules/heading-order.json +0 -13
  597. package/lib/rules/hidden-content.json +0 -13
  598. package/lib/rules/html-has-lang.json +0 -13
  599. package/lib/rules/html-lang-valid.json +0 -12
  600. package/lib/rules/html-namespace-matches.js +0 -7
  601. package/lib/rules/html-xml-lang-mismatch.json +0 -13
  602. package/lib/rules/identical-links-same-purpose-matches.js +0 -18
  603. package/lib/rules/identical-links-same-purpose.json +0 -14
  604. package/lib/rules/image-alt.json +0 -26
  605. package/lib/rules/img-redundant-alt.json +0 -12
  606. package/lib/rules/input-button-name.json +0 -26
  607. package/lib/rules/input-image-alt.json +0 -20
  608. package/lib/rules/inserted-into-focus-order-matches.js +0 -7
  609. package/lib/rules/is-initiator-matches.js +0 -5
  610. package/lib/rules/label-content-name-mismatch-matches.js +0 -52
  611. package/lib/rules/label-content-name-mismatch.json +0 -12
  612. package/lib/rules/label-matches.js +0 -15
  613. package/lib/rules/label-title-only.json +0 -13
  614. package/lib/rules/label.json +0 -29
  615. package/lib/rules/landmark-banner-is-top-level.json +0 -13
  616. package/lib/rules/landmark-complementary-is-top-level.json +0 -12
  617. package/lib/rules/landmark-contentinfo-is-top-level.json +0 -13
  618. package/lib/rules/landmark-has-body-context-matches.js +0 -13
  619. package/lib/rules/landmark-main-is-top-level.json +0 -12
  620. package/lib/rules/landmark-no-duplicate-banner.json +0 -12
  621. package/lib/rules/landmark-no-duplicate-contentinfo.json +0 -12
  622. package/lib/rules/landmark-no-duplicate-main.json +0 -12
  623. package/lib/rules/landmark-one-main.json +0 -12
  624. package/lib/rules/landmark-unique-matches.js +0 -50
  625. package/lib/rules/landmark-unique.json +0 -13
  626. package/lib/rules/layout-table-matches.js +0 -8
  627. package/lib/rules/link-in-text-block-matches.js +0 -21
  628. package/lib/rules/link-in-text-block.json +0 -14
  629. package/lib/rules/link-name.json +0 -25
  630. package/lib/rules/list.json +0 -13
  631. package/lib/rules/listitem.json +0 -13
  632. package/lib/rules/marquee.json +0 -13
  633. package/lib/rules/meta-refresh.json +0 -20
  634. package/lib/rules/meta-viewport-large.json +0 -14
  635. package/lib/rules/meta-viewport.json +0 -14
  636. package/lib/rules/nested-interactive-matches.js +0 -13
  637. package/lib/rules/nested-interactive.json +0 -12
  638. package/lib/rules/no-autoplay-audio-matches.js +0 -22
  639. package/lib/rules/no-autoplay-audio.json +0 -15
  640. package/lib/rules/no-empty-role-matches.js +0 -13
  641. package/lib/rules/no-explicit-name-required-matches.js +0 -22
  642. package/lib/rules/no-naming-method-matches.js +0 -24
  643. package/lib/rules/no-role-matches.js +0 -5
  644. package/lib/rules/not-html-matches.js +0 -5
  645. package/lib/rules/object-alt.json +0 -24
  646. package/lib/rules/p-as-heading-matches.js +0 -21
  647. package/lib/rules/p-as-heading.json +0 -13
  648. package/lib/rules/page-has-heading-one.json +0 -12
  649. package/lib/rules/presentation-role-conflict-matches.js +0 -7
  650. package/lib/rules/presentation-role-conflict.json +0 -13
  651. package/lib/rules/region.json +0 -12
  652. package/lib/rules/role-img-alt.json +0 -20
  653. package/lib/rules/scope-attr-valid.json +0 -12
  654. package/lib/rules/scrollable-region-focusable-matches.js +0 -75
  655. package/lib/rules/scrollable-region-focusable.json +0 -12
  656. package/lib/rules/select-name.json +0 -27
  657. package/lib/rules/server-side-image-map.json +0 -18
  658. package/lib/rules/skip-link-matches.js +0 -7
  659. package/lib/rules/skip-link.json +0 -13
  660. package/lib/rules/svg-img-alt.json +0 -25
  661. package/lib/rules/svg-namespace-matches.js +0 -18
  662. package/lib/rules/tabindex.json +0 -12
  663. package/lib/rules/table-duplicate-name.json +0 -12
  664. package/lib/rules/table-fake-caption.json +0 -20
  665. package/lib/rules/td-has-header.json +0 -20
  666. package/lib/rules/td-headers-attr.json +0 -12
  667. package/lib/rules/th-has-data-cells.json +0 -13
  668. package/lib/rules/valid-lang.json +0 -13
  669. package/lib/rules/video-caption.json +0 -19
  670. package/lib/rules/window-is-top-matches.js +0 -8
  671. package/lib/rules/xml-lang-mismatch-matches.js +0 -14
  672. package/lib/standards/aria-attrs.js +0 -209
  673. package/lib/standards/aria-roles.js +0 -835
  674. package/lib/standards/css-colors.js +0 -153
  675. package/lib/standards/dpub-roles.js +0 -219
  676. package/lib/standards/graphics-roles.js +0 -22
  677. package/lib/standards/html-elms.js +0 -933
  678. package/lib/standards/index.js +0 -37
  679. package/sri-history.json +0 -274
  680. package/typings/axe-core/axe-core-tests.js +0 -203
  681. package/typings/axe-core/axe-core-tests.ts +0 -233
package/CHANGELOG.md CHANGED
@@ -2,11 +2,46 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
- ### [4.2.4](https://github.com/dequelabs/axe-core/compare/v4.2.3...v4.2.4) (2021-10-22)
5
+ ## [4.3.0](https://github.com/dequelabs/axe-core/compare/v4.2.3...v4.3.0) (2021-07-09)
6
+
7
+ ### Features
8
+
9
+ - **options:** accept a string for options.runOnly ([4392bc0](https://github.com/dequelabs/axe-core/commit/4392bc05fb208606fc589b261d3419b9625c6b6c))
10
+ - **runPartial:** Test without frame communication ([#3006](https://github.com/dequelabs/axe-core/issues/3006)) ([42738b5](https://github.com/dequelabs/axe-core/commit/42738b5258f058a36b00533e8c5cfdc0f1bcdbed))
11
+ - **utils:** add getFrameContexts method ([#2995](https://github.com/dequelabs/axe-core/issues/2995)) ([f478bab](https://github.com/dequelabs/axe-core/commit/f478babae453b02dec5bf4961b7a995a5964976a))
12
+ - deprecate autocomplete appropriate check ([#2917](https://github.com/dequelabs/axe-core/issues/2917)) ([1fe1487](https://github.com/dequelabs/axe-core/commit/1fe1487758fa0f1f4b7bfc1d8c18bbe397be362d))
13
+ - Remove deprecated phantomjs example ([#2913](https://github.com/dequelabs/axe-core/issues/2913)) ([4a01ffe](https://github.com/dequelabs/axe-core/commit/4a01ffe1adf009745ea12a71f4a888843dc779da))
14
+ - Support multiple languages at once in builds ([#2994](https://github.com/dequelabs/axe-core/issues/2994)) ([f18a56b](https://github.com/dequelabs/axe-core/commit/f18a56b3efafdb14989b45bfff0f94e1863b3899))
15
+ - **rule:** add ACT Rule IDs to test rule objects ([#2866](https://github.com/dequelabs/axe-core/issues/2866)) ([cc1ebf5](https://github.com/dequelabs/axe-core/commit/cc1ebf520caaf787fe73498cac0e4917d357edad)), closes [#2820](https://github.com/dequelabs/axe-core/issues/2820)
6
16
 
7
17
  ### Bug Fixes
8
18
 
9
- - **axe.run:** add option to increase iframe ping timeout ([#3233](https://github.com/dequelabs/axe-core/issues/3233)) ([99a848e](https://github.com/dequelabs/axe-core/commit/99a848e785793782b264aa55cd71f5a35c5677c9))
19
+ - **accText:** ignore text in embedded content elements ([#3022](https://github.com/dequelabs/axe-core/issues/3022)) ([fa4f926](https://github.com/dequelabs/axe-core/commit/fa4f926c089bec2cfca882b61b74fecac504c8e0)), closes [#3017](https://github.com/dequelabs/axe-core/issues/3017)
20
+ - **aria-allowed-attr:** allow aria-posinset and aria-setsize on row elements for treegrids ([#2952](https://github.com/dequelabs/axe-core/issues/2952)) ([24e6115](https://github.com/dequelabs/axe-core/commit/24e6115adb8834b02e1e0a535a661c31caefa588))
21
+ - **aria-allowed-attr:** pass aria-label on some HTML elements ([#2935](https://github.com/dequelabs/axe-core/issues/2935)) ([d2584ed](https://github.com/dequelabs/axe-core/commit/d2584edfa7b439a5702f5b8d368253b9abe690fc))
22
+ - **aria-level:** New check for aria-level > 6 as needs review ([#3061](https://github.com/dequelabs/axe-core/issues/3061)) ([73d3ae1](https://github.com/dequelabs/axe-core/commit/73d3ae101f841c086cee89346ad66afed265097f))
23
+ - **aria-roles:** Mark as needs review if both none and presentation are used on element with no implicit role ([#2989](https://github.com/dequelabs/axe-core/issues/2989)) ([70c683c](https://github.com/dequelabs/axe-core/commit/70c683cd9844b23d62641e7063bae757a897ca38))
24
+ - **autocomplete-appropriate:** pass for autocomplete=username and type=email ([#2896](https://github.com/dequelabs/axe-core/issues/2896)) ([43394bc](https://github.com/dequelabs/axe-core/commit/43394bcd01c631f0c129f2f584d88a3a134a92a7))
25
+ - **color-contrast:** add special case for new sr-only technique ([#2985](https://github.com/dequelabs/axe-core/issues/2985)) ([d6a72f9](https://github.com/dequelabs/axe-core/commit/d6a72f9316b00eee683aed4dbf0a0fafe0661a2f))
26
+ - **color-contrast:** check for pseudo elements on element itself, not just parents ([#2980](https://github.com/dequelabs/axe-core/issues/2980)) ([9b6ccd0](https://github.com/dequelabs/axe-core/commit/9b6ccd0c2948e7036ef3984810909f59d1e65f27))
27
+ - **color-contrast-matches:** only absolutely positioned elements using clip should be not visible ([#3038](https://github.com/dequelabs/axe-core/issues/3038)) ([e93fdb1](https://github.com/dequelabs/axe-core/commit/e93fdb1f68656976d0cdfd73564f6580640be0f7))
28
+ - **combobox:** support aria 1.2 pattern for comboboxes ([#3033](https://github.com/dequelabs/axe-core/issues/3033)) ([5ab026d](https://github.com/dequelabs/axe-core/commit/5ab026d1bc9932fdf6cd2b135df32dd80051b5c9))
29
+ - **frame-tested:** run without respondable ([#2942](https://github.com/dequelabs/axe-core/issues/2942)) ([c046114](https://github.com/dequelabs/axe-core/commit/c046114e9740e3e130ad0cb98288eb77331fbb93))
30
+ - **getStandards:** Read standards from utils ([#2903](https://github.com/dequelabs/axe-core/issues/2903)) ([f1a0368](https://github.com/dequelabs/axe-core/commit/f1a036890b9befe8c1a0af388fd0f215bee6d9ae))
31
+ - **heading-order:** Prevent crash on page with iframes but no headings ([#2965](https://github.com/dequelabs/axe-core/issues/2965)) ([99e7f0c](https://github.com/dequelabs/axe-core/commit/99e7f0c2ae5758328e1299ff54a261c7e581c475))
32
+ - **heading-order:** use aria-level on headings in addition to role=header elements ([#3028](https://github.com/dequelabs/axe-core/issues/3028)) ([caccd38](https://github.com/dequelabs/axe-core/commit/caccd381d3817cc46e824d1a76e5ea888bf519bf))
33
+ - **page-no-duplicate:** don't count elements hidden from screenreaders as potential duplicates ([#3051](https://github.com/dequelabs/axe-core/issues/3051)) ([5e0098b](https://github.com/dequelabs/axe-core/commit/5e0098b0262614db20fc9d6689a5d5b95c153d8d))
34
+ - **publish-metadata:** use fail message for rules with reviewOnFail:true ([#2987](https://github.com/dequelabs/axe-core/issues/2987)) ([b6dc5f6](https://github.com/dequelabs/axe-core/commit/b6dc5f654c6c4b56217eabfd093447122890a7a2))
35
+ - **utils:** unify selecting nodes in shadow tree with shadowSelect() ([#3068](https://github.com/dequelabs/axe-core/issues/3068)) ([21681da](https://github.com/dequelabs/axe-core/commit/21681da0c8b952b5a64e17751e05686a98c6b5da))
36
+ - JS error in @axe-core/react caused by stale reference to heading ([b7094c8](https://github.com/dequelabs/axe-core/commit/b7094c8146ec816ab3d079e57f07bf0f21ce6676))
37
+ - Remove unnecessary files from npm package ([#3054](https://github.com/dequelabs/axe-core/issues/3054)) ([7600b7c](https://github.com/dequelabs/axe-core/commit/7600b7cd4a9bbb019497895d1134246d02af9763))
38
+ - **meta-viewport:** test that a user-scalable number does not prevent zoom ([b3562fb](https://github.com/dequelabs/axe-core/commit/b3562fb9fffa3152014d56a6e02a05622c10b9a9))
39
+ - **region:** contents in iframes should pass the region rule if the iframe itself is in a region ([#2949](https://github.com/dequelabs/axe-core/issues/2949)) ([43145d6](https://github.com/dequelabs/axe-core/commit/43145d6f1136c0e2c9fd9a9f3a401a68f56fe665))
40
+ - **required-parent:** Allow *item > group > *item nesting ([#2898](https://github.com/dequelabs/axe-core/issues/2898)) ([59b4a7e](https://github.com/dequelabs/axe-core/commit/59b4a7e2d939076e7aed6308ff25d1f3460d944b))
41
+ - **SerialVirtualNode:** properly handle empty string attributes ([#3042](https://github.com/dequelabs/axe-core/issues/3042)) ([dddbc0a](https://github.com/dequelabs/axe-core/commit/dddbc0ac20ffa0bc65223d392310d447b767efe9))
42
+ - **sri-history:** add backported releases ([#3004](https://github.com/dequelabs/axe-core/issues/3004)) ([6eecf34](https://github.com/dequelabs/axe-core/commit/6eecf344751e03170bd70fe076584011b5a6cacb))
43
+ - treat input with no role as textbox ([#2929](https://github.com/dequelabs/axe-core/issues/2929)) ([13d909d](https://github.com/dequelabs/axe-core/commit/13d909dd12dc40ab9ed448793aef5031e207d429))
44
+ - **types:** make `evaluate` check optional ([#2902](https://github.com/dequelabs/axe-core/issues/2902)) ([417f572](https://github.com/dequelabs/axe-core/commit/417f5724112e46f128efd5f56da9f891bf1e938c))
10
45
 
11
46
  ### [4.2.3](https://github.com/dequelabs/axe-core/compare/v4.2.2...v4.2.3) (2021-06-22)
12
47
 
package/README.md CHANGED
@@ -16,7 +16,7 @@ Axe is an accessibility testing engine for websites and other HTML-based user in
16
16
 
17
17
  Axe-core has different types of rules, for WCAG 2.0 and 2.1 on level A and AA, as well as a number of best practices that help you identify common accessibility practices like ensuring every page has an `h1` heading, and to help you avoid "gotchas" in ARIA like where an ARIA attribute you used will get ignored.
18
18
 
19
- With axe-core, you can find **on average 57% of WCAG issues automatically**. Additionally, axe-core will return elements as "incomplete" where axe-core could not be certain, and manual review is needed.
19
+ With axe-core, you can find **on average 57% of WCAG issues automatically**. Additionally, axe-core will return elements as "incomplete" where axe-core could not be certain, and manual review is needed.
20
20
 
21
21
  To catch bugs earlier in the development cycle we recommend using the [axe-linter vscode extension](https://marketplace.visualstudio.com/items?itemName=deque-systems.vscode-axe-linter). To improve test coverage even further we recommend the [intelligent guided tests](https://www.youtube.com/watch?v=AtsX0dPCG_4&feature=youtu.be&ab_channel=DequeSystems) in the [axe Extension](https://www.deque.com/axe/browser-extensions/).
22
22
 
@@ -103,7 +103,7 @@ or equivalently:
103
103
 
104
104
  `npm run build -- --lang=nl`
105
105
 
106
- This will create a new build for axe, called `axe.<lang>.js` and `axe.<lang>.min.js`. If you want to build localized versions, simply pass in `--all-lang` instead.
106
+ This will create a new build for axe, called `axe.<lang>.js` and `axe.<lang>.min.js`. If you want to build localized versions, simply pass in `--all-lang` instead. If you want to build multiple localized versions (but not all of them), you can pass in a comma-separated list of langages to the `--lang` flag, like `--lang=nl,ja`.
107
107
 
108
108
  To create a new translation for axe, start by running `grunt translate --lang=<langcode>`. This will create a json file fin the `./locales` directory, with the default English text in it for you to translate. We welcome any localization for axe-core. For details on how to contribute, see the Contributing section below. For details on the message syntax, see [Check Message Template](/docs/check-message-template.md).
109
109
 
@@ -136,6 +136,28 @@ axe.configure({
136
136
  });
137
137
  ```
138
138
 
139
+ ### Supported Locales
140
+
141
+ Axe-core supports the following locales. Do note that since locales are contributed by our community, they are not guaranteed to include all translations needed in a release.
142
+
143
+ - Basque
144
+ - Danish
145
+ - Dutch
146
+ - French
147
+ - German
148
+ - Japanese
149
+ - Korean
150
+ - Polish
151
+ - Portuguese (Brazilian)
152
+ - Spanish
153
+
154
+ ## Updates & Security
155
+
156
+ Axe-core has a new minor release every 3 to 5 months, which usually introduces new rules and features. We recommend scheduling time to upgrade to these versions. Security updates will be made available for minor version lines up to **18 months old**.
157
+
158
+ - See [release and support](doc/release-and-support.md) for details on the frequency of releases, long-term support and recommendations on upgrading axe-core.
159
+ - See [backward compatibility](doc/backwards-compatibility-doc.md) for details on the types of changes different releases may introduce.
160
+
139
161
  ## Supported ARIA Roles and Attributes.
140
162
 
141
163
  Refer [axe-core ARIA support](./doc/aria-supported.md) for a complete list of ARIA supported roles and attributes by axe.
package/axe.d.ts CHANGED
@@ -45,9 +45,13 @@ declare namespace axe {
45
45
  | 'embedded'
46
46
  | 'interactive';
47
47
 
48
+ type BaseSelector = string;
49
+ type CrossTreeSelector = BaseSelector | BaseSelector[];
50
+ type CrossFrameSelector = CrossTreeSelector[];
51
+
48
52
  type ContextObject = {
49
- include?: string[] | string[][];
50
- exclude?: string[] | string[][];
53
+ include?: BaseSelector | Array<BaseSelector | BaseSelector[]>;
54
+ exclude?: BaseSelector | Array<BaseSelector | BaseSelector[]>;
51
55
  };
52
56
 
53
57
  type RunCallback = (error: Error, results: AxeResults) => void;
@@ -78,7 +82,7 @@ declare namespace axe {
78
82
  };
79
83
  }
80
84
  interface RunOptions {
81
- runOnly?: RunOnly | TagValue[] | string[];
85
+ runOnly?: RunOnly | TagValue[] | string[] | string;
82
86
  rules?: RuleObject;
83
87
  reporter?: ReporterVersion;
84
88
  resultTypes?: resultGroups[];
@@ -241,9 +245,36 @@ declare namespace axe {
241
245
  helpUrl: string;
242
246
  tags: string[];
243
247
  }
248
+ interface SerialDqElement {
249
+ source: string;
250
+ nodeIndexes: number[];
251
+ selector: CrossFrameSelector;
252
+ xpath: string[];
253
+ ancestry: CrossFrameSelector;
254
+ }
255
+ interface PartialRuleResult {
256
+ id: string;
257
+ result: 'inapplicable';
258
+ pageLevel: boolean;
259
+ impact: null;
260
+ nodes: Array<Record<string, unknown>>;
261
+ }
262
+ interface PartialResult {
263
+ frames: SerialDqElement[];
264
+ results: PartialRuleResult[];
265
+ }
266
+ interface FrameContext {
267
+ frameSelector: CrossTreeSelector;
268
+ frameContext: ContextObject;
269
+ }
270
+ interface Utils {
271
+ getFrameContexts: (context?: ElementContext) => FrameContext[];
272
+ shadowSelect: (selector: CrossTreeSelector) => Element | null;
273
+ }
244
274
 
245
275
  let version: string;
246
276
  let plugins: any;
277
+ let utils: Utils;
247
278
 
248
279
  /**
249
280
  * Source string to use as an injected script in Selenium
@@ -285,6 +316,27 @@ declare namespace axe {
285
316
  */
286
317
  function configure(spec: Spec): void;
287
318
 
319
+ /**
320
+ * Run axe in the current window only
321
+ * @param {ElementContext} context Optional The `Context` specification object @see Context
322
+ * @param {RunOptions} options Optional Options passed into rules or checks, temporarily modifying them.
323
+ * @returns {Promise<PartialResult>} Partial result, for use in axe.finishRun.
324
+ */
325
+ function runPartial(
326
+ context: ElementContext,
327
+ options: RunOptions
328
+ ): Promise<PartialResult>;
329
+
330
+ /**
331
+ * Create a report from axe.runPartial results
332
+ * @param {PartialResult[]} partialResults Results from axe.runPartial, calls in different frames on the page.
333
+ * @param {RunOptions} options Optional Options passed into rules or checks, temporarily modifying them.
334
+ */
335
+ function finishRun(
336
+ partialResults: PartialResult[],
337
+ options: RunOptions
338
+ ): Promise<AxeResults>;
339
+
288
340
  /**
289
341
  * Searches and returns rules that contain a tag in the list of tags.
290
342
  * @param {Array} tags Optional array of tags
@@ -324,7 +376,11 @@ declare namespace axe {
324
376
  };
325
377
  type Close = Function;
326
378
  type TopicHandler = (data: TopicData, responder: Responder) => void;
327
- type ReplyHandler = (message: any | Error, keepalive: boolean, responder: Responder) => void;
379
+ type ReplyHandler = (
380
+ message: any | Error,
381
+ keepalive: boolean,
382
+ responder: Responder
383
+ ) => void;
328
384
  type Responder = (
329
385
  message: any | Error,
330
386
  keepalive?: boolean,