2
2
3
3
import { useLocale } from 'next-intl' ;
4
4
import Image from 'next/image' ;
5
+ import { JSX } from 'react' ;
5
6
6
7
import { Models } from '@o2s/framework/modules' ;
7
8
@@ -92,14 +93,18 @@ export const Footer: React.FC<FooterProps> = ({ data }) => {
92
93
93
94
const AccordionItemTemplate = ( {
94
95
item,
96
+ tag,
95
97
children,
96
98
} : {
97
99
item : Models . Navigation . NavigationGroup ;
100
+ tag : keyof JSX . IntrinsicElements ;
98
101
children : React . ReactNode ;
99
102
} ) => {
100
103
return (
101
104
< AccordionItem value = { item . title } className = "border-none" >
102
- < AccordionTrigger className = { mobileNavigationItemClass } > { item . title } </ AccordionTrigger >
105
+ < AccordionTrigger className = { mobileNavigationItemClass } tag = { tag } >
106
+ { item . title }
107
+ </ AccordionTrigger >
103
108
< AccordionContent className = "p-0" > { children } </ AccordionContent >
104
109
</ AccordionItem >
105
110
) ;
@@ -119,7 +124,7 @@ export const Footer: React.FC<FooterProps> = ({ data }) => {
119
124
120
125
const NavigationGroup = ( { item } : { item : Models . Navigation . NavigationGroup } ) => {
121
126
return (
122
- < AccordionItemTemplate item = { item } >
127
+ < AccordionItemTemplate item = { item } tag = "h3" >
123
128
< ul className = "flex flex-col items-start gap-2 w-full pt-2 pl-3" >
124
129
{ item . items . map ( ( item ) => {
125
130
switch ( item . __typename ) {
@@ -129,7 +134,7 @@ export const Footer: React.FC<FooterProps> = ({ data }) => {
129
134
return (
130
135
< li key = { item . title } className = "w-full list-none" >
131
136
< Accordion type = "multiple" className = "flex flex-col gap-2" >
132
- < AccordionItemTemplate item = { item } >
137
+ < AccordionItemTemplate item = { item } tag = "h4" >
133
138
< ul className = "flex flex-col items-start gap-2 w-full pt-2 pl-3" >
134
139
{ item . items . map ( ( item ) => {
135
140
if ( item . __typename !== 'NavigationItem' ) {
@@ -194,7 +199,7 @@ export const Footer: React.FC<FooterProps> = ({ data }) => {
194
199
< Separator />
195
200
< div className = "w-full m-auto max-w-7xl flex flex-col md:hidden" >
196
201
< Accordion type = "multiple" className = "flex flex-col gap-2 p-2" >
197
- < AccordionItemTemplate item = { data as unknown as Models . Navigation . NavigationGroup } >
202
+ < AccordionItemTemplate item = { data as unknown as Models . Navigation . NavigationGroup } tag = "h2" >
198
203
< Accordion type = "multiple" className = "flex flex-col gap-2 pt-2 pl-3" >
199
204
{ data . items . map ( ( item ) => {
200
205
switch ( item . __typename ) {
0 commit comments