Skip to content

Commit ade10e6

Browse files
authored
Don't render main landmark in PageLayout.Content, leave it up to developers to specify. (#3675)
1 parent 438f67e commit ade10e6

File tree

5 files changed

+27
-15
lines changed

5 files changed

+27
-15
lines changed

.changeset/angry-beds-itch.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
'@primer/react': patch
3+
---
4+
5+
PageLayout.Content no longer renders as `main` by default. Instead, developers may add a `main` landmark within `Pagelayout.Content` themselves.
6+
7+
<!-- Changed components: PageLayout -->

src/PageLayout/PageLayout.test.tsx

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,9 @@ describe('PageLayout', () => {
2323
<ThemeProvider>
2424
<PageLayout>
2525
<PageLayout.Header>Header</PageLayout.Header>
26-
<PageLayout.Content>Content</PageLayout.Content>
26+
<PageLayout.Content>
27+
<main aria-label="Content">Content</main>
28+
</PageLayout.Content>
2729
<PageLayout.Pane>Pane</PageLayout.Pane>
2830
<PageLayout.Footer>Footer</PageLayout.Footer>
2931
</PageLayout>
@@ -131,7 +133,7 @@ describe('PageLayout', () => {
131133
)
132134

133135
expect(screen.getByRole('banner')).toHaveAccessibleName('Header')
134-
expect(screen.getByRole('main')).toHaveAccessibleName('Content')
136+
expect(screen.getByLabelText('Content')).toHaveAccessibleName('Content')
135137
expect(screen.getByRole('contentinfo')).toHaveAccessibleName('Footer')
136138
})
137139

@@ -154,7 +156,7 @@ describe('PageLayout', () => {
154156
)
155157

156158
expect(screen.getByRole('banner')).toHaveAccessibleName('header')
157-
expect(screen.getByRole('main')).toHaveAccessibleName('content')
159+
expect(screen.getByLabelText('content')).toBeInTheDocument()
158160
expect(screen.getByRole('contentinfo')).toHaveAccessibleName('footer')
159161
})
160162

src/PageLayout/PageLayout.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -421,7 +421,6 @@ const Content: React.FC<React.PropsWithChildren<PageLayoutContentProps>> = ({
421421

422422
return (
423423
<Box
424-
as="main"
425424
aria-label={label}
426425
aria-labelledby={labelledBy}
427426
sx={merge<BetterSystemStyleObject>(

src/PageLayout/__snapshots__/PageLayout.test.tsx.snap

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ exports[`PageLayout renders condensed layout 1`] = `
199199
<div
200200
class="c5"
201201
>
202-
<main
202+
<div
203203
class="c6"
204204
>
205205
<div
@@ -213,7 +213,7 @@ exports[`PageLayout renders condensed layout 1`] = `
213213
<div
214214
class=""
215215
/>
216-
</main>
216+
</div>
217217
<div
218218
class="c8"
219219
>
@@ -493,7 +493,7 @@ exports[`PageLayout renders default layout 1`] = `
493493
<div
494494
class="c5"
495495
>
496-
<main
496+
<div
497497
class="c6"
498498
>
499499
<div
@@ -502,12 +502,16 @@ exports[`PageLayout renders default layout 1`] = `
502502
<div
503503
class="c7"
504504
>
505-
Content
505+
<main
506+
aria-label="Content"
507+
>
508+
Content
509+
</main>
506510
</div>
507511
<div
508512
class=""
509513
/>
510-
</main>
514+
</div>
511515
<div
512516
class="c8"
513517
>
@@ -787,7 +791,7 @@ exports[`PageLayout renders pane in different position when narrow 1`] = `
787791
<div
788792
class="c5"
789793
>
790-
<main
794+
<div
791795
class="c6"
792796
>
793797
<div
@@ -801,7 +805,7 @@ exports[`PageLayout renders pane in different position when narrow 1`] = `
801805
<div
802806
class=""
803807
/>
804-
</main>
808+
</div>
805809
<div
806810
class="c8"
807811
>
@@ -1081,7 +1085,7 @@ exports[`PageLayout renders with dividers 1`] = `
10811085
<div
10821086
class="c5"
10831087
>
1084-
<main
1088+
<div
10851089
class="c6"
10861090
>
10871091
<div
@@ -1095,7 +1099,7 @@ exports[`PageLayout renders with dividers 1`] = `
10951099
<div
10961100
class=""
10971101
/>
1098-
</main>
1102+
</div>
10991103
<div
11001104
class="c8"
11011105
>

src/SplitPageLayout/__snapshots__/SplitPageLayout.test.tsx.snap

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ exports[`SplitPageLayout renders default layout 1`] = `
234234
<div
235235
class="c5"
236236
>
237-
<main
237+
<div
238238
class="c6"
239239
>
240240
<div
@@ -248,7 +248,7 @@ exports[`SplitPageLayout renders default layout 1`] = `
248248
<div
249249
class=""
250250
/>
251-
</main>
251+
</div>
252252
<div
253253
class="c8"
254254
>

0 commit comments

Comments
 (0)