Skip to content

Commit d31526d

Browse files
authored
Merge pull request #188 from incluud/fix/astro-a11y-eslint-config
Fix Astro accessibility ESLint config and newly surfaces ESLint issues
2 parents 19ab903 + ad336a3 commit d31526d

7 files changed

Lines changed: 26 additions & 29 deletions

File tree

eslint.config.js

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import astro from 'eslint-plugin-astro'
44
import jsxA11y from 'eslint-plugin-jsx-a11y'
55
import tseslint from '@typescript-eslint/eslint-plugin'
66
import tsParser from '@typescript-eslint/parser'
7-
import astroParser from 'astro-eslint-parser'
87

98
export default [
109
// Ignore patterns
@@ -32,6 +31,10 @@ export default [
3231
// ESLint recommended rules
3332
js.configs.recommended,
3433

34+
// Astro recommended and strict accessibility rules
35+
...astro.configs['flat/recommended'],
36+
...astro.configs['flat/jsx-a11y-strict'],
37+
3538
// JavaScript files
3639
{
3740
files: ['**/*.js'],
@@ -43,19 +46,7 @@ export default [
4346
// Astro files
4447
{
4548
files: ['**/*.astro'],
46-
plugins: {
47-
astro,
48-
},
49-
languageOptions: {
50-
parser: astroParser,
51-
parserOptions: {
52-
parser: '@typescript-eslint/parser',
53-
extraFileExtensions: ['.astro'],
54-
},
55-
},
5649
rules: {
57-
...astro.configs.recommended.rules,
58-
...astro.configs['jsx-a11y-strict'].rules,
5950
'no-mixed-spaces-and-tabs': ['error', 'smart-tabs'],
6051
},
6152
},

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "accessible-astro-starter",
33
"description": "An Accessible Starter Theme for Astro including several accessibility features and tools to help you build faster.",
4-
"version": "5.2.1",
4+
"version": "5.2.2",
55
"author": "Incluud",
66
"license": "MIT",
77
"type": "module",

src/components/ColorContrast.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,7 @@ const themes: Theme[] = [
216216

217217
// Process all color items
218218
function processColorItems(): void {
219-
const colorItems: NodeListOf<Element> = document.querySelectorAll('.color-item')
219+
const colorItems = document.querySelectorAll('.color-item')
220220

221221
colorItems.forEach((item) => {
222222
// Get the background color

src/components/Navigation.astro

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ import { LauncherTrigger } from 'accessible-astro-launcher'
9797
}
9898

9999
// execution
100-
mainMenu &&
100+
if (mainMenu) {
101101
mainMenu.addEventListener('keydown', (event: KeyboardEvent) => {
102102
const element = event.target as Element
103103
const currentMenuItem = element.closest('li')
@@ -198,11 +198,13 @@ import { LauncherTrigger } from 'accessible-astro-launcher'
198198
}
199199
}
200200
})
201+
}
201202

202-
dropdownMenus &&
203+
if (dropdownMenus) {
203204
dropdownMenus.forEach((dropdownMenu) => {
204-
dropdownMenu.addEventListener('click', toggleDropdownMenu as EventListener)
205+
dropdownMenu.addEventListener('click', toggleDropdownMenu)
205206
})
207+
}
206208

207209
setActiveMenuItem()
208210
window.addEventListener('click', (event: MouseEvent) => {

src/components/ResponsiveToggle.astro

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,11 @@ const { class: className } = Astro.props
6161
if (!mobileNavigation) return
6262

6363
mobileNavigation.classList.toggle('show')
64-
mobileNavigation.classList.contains('show') ? openMenu(responsiveToggle) : closeMenu(responsiveToggle)
64+
if (mobileNavigation.classList.contains('show')) {
65+
openMenu(responsiveToggle)
66+
} else {
67+
closeMenu(responsiveToggle)
68+
}
6569
})
6670
})
6771
</script>

src/pages/accessible-components.astro

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -80,10 +80,10 @@ const components = [
8080
<AccordionItem title="First Item">
8181
<p>
8282
Lorem ipsum dolor sit amet consectetur adipisicing elit. Architecto quasi nobis optio? Qui in quo
83-
accusantium debitis <a href="#">sapiente obcaecati</a> magnam incidunt sit. Molestiae exercitationem quibusdam
84-
quod veritatis laboriosam est tenetur.
83+
accusantium debitis <a href="#accordion">sapiente obcaecati</a> magnam incidunt sit. Molestiae
84+
exercitationem quibusdam quod veritatis laboriosam est tenetur.
8585
</p>
86-
<a href="#">Tab to me!</a>
86+
<a href="#accordion">Tab to me!</a>
8787
</AccordionItem>
8888
<AccordionItem title="Second Item">
8989
<p>
@@ -120,10 +120,10 @@ const components = [
120120
<AccordionItem name="exclusive" title="First Item" variant="chevron">
121121
<p>
122122
Lorem ipsum dolor sit amet consectetur adipisicing elit. Architecto quasi nobis optio? Qui in quo
123-
accusantium debitis <a href="#">sapiente obcaecati</a> magnam incidunt sit. Molestiae exercitationem quibusdam
124-
quod veritatis laboriosam est tenetur.
123+
accusantium debitis <a href="#accordion">sapiente obcaecati</a> magnam incidunt sit. Molestiae
124+
exercitationem quibusdam quod veritatis laboriosam est tenetur.
125125
</p>
126-
<a href="#">Tab to me!</a>
126+
<a href="#accordion">Tab to me!</a>
127127
</AccordionItem>
128128
<AccordionItem name="exclusive" title="Second Item" variant="chevron">
129129
<p>
@@ -542,7 +542,7 @@ const components = [
542542
veritatis laboriosam est tenetur. Lorem ipsum dolor, sit amet consectetur adipisicing elit. Sed eveniet
543543
quidem earum at nobis enim.
544544
</p>
545-
<a href="#">Tab to me!</a>
545+
<a href="#tabs">Tab to me!</a>
546546
</TabsPanel>
547547
<TabsPanel id="panel-2" labelledby="tab-2">
548548
<Heading level="h3">Second Panel</Heading>
@@ -562,7 +562,7 @@ const components = [
562562
veritatis laboriosam est tenetur. Lorem ipsum dolor, sit amet consectetur adipisicing elit. Sed eveniet
563563
quidem earum at nobis enim.
564564
</p>
565-
<a href="#">Tab to me!</a>
565+
<a href="#tabs">Tab to me!</a>
566566
</TabsPanel>
567567
<TabsPanel id="panel-3" labelledby="tab-3">
568568
<Heading level="h3">Third Panel</Heading>
@@ -576,7 +576,7 @@ const components = [
576576
veritatis optio nulla officia quos cum at ea hic numquam perferendis molestiae! Aperiam quia veritatis
577577
earum tempora.
578578
</p>
579-
<a href="#">Tab to me!</a>
579+
<a href="#tabs">Tab to me!</a>
580580
</TabsPanel>
581581
</Tabs>
582582

src/pages/thank-you.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
import DefaultLayout from '@layouts/DefaultLayout.astro'
33
import PageHeader from '@components/PageHeader.astro'
4-
import { Heading, Link, Notification } from 'accessible-astro-components'
4+
import { Link, Notification } from 'accessible-astro-components'
55
import { Icon } from 'astro-icon/components'
66
---
77

0 commit comments

Comments
 (0)