From b87059f7319cf8a53866ce74e7cb4957ac9aeb63 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Mon, 14 Jul 2025 14:38:56 -0400 Subject: [PATCH] newlines are free :) --- .../visitors/shared/a11y/constants.js | 25 ++++++++++++++++--- .../2-analyze/visitors/shared/a11y/index.js | 1 + 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/packages/svelte/src/compiler/phases/2-analyze/visitors/shared/a11y/constants.js b/packages/svelte/src/compiler/phases/2-analyze/visitors/shared/a11y/constants.js index d0044dfe07..929b05cd4f 100644 --- a/packages/svelte/src/compiler/phases/2-analyze/visitors/shared/a11y/constants.js +++ b/packages/svelte/src/compiler/phases/2-analyze/visitors/shared/a11y/constants.js @@ -2,10 +2,12 @@ import { roles as roles_map, elementRoles } from 'aria-query'; // @ts-expect-error package doesn't provide typings import { AXObjects, elementAXObjects } from 'axobject-query'; + export const aria_attributes = 'activedescendant atomic autocomplete busy checked colcount colindex colspan controls current describedby description details disabled dropeffect errormessage expanded flowto grabbed haspopup hidden invalid keyshortcuts label labelledby level live modal multiline multiselectable orientation owns placeholder posinset pressed readonly relevant required roledescription rowcount rowindex rowspan selected setsize sort valuemax valuemin valuenow valuetext'.split( ' ' ); + /** @type {Record} */ export const a11y_required_attributes = { a: ['href'], @@ -17,6 +19,7 @@ export const a11y_required_attributes = { img: ['alt'], object: ['title', 'aria-label', 'aria-labelledby'] }; + export const a11y_distracting_elements = ['blink', 'marquee']; // this excludes `` and `