Skip to content

Commit f9c5f8a

Browse files
committed
fix(Accessibility): interactive controls must not be nested
1 parent 066dd28 commit f9c5f8a

2 files changed

Lines changed: 21 additions & 7 deletions

File tree

packages/design-system/src/lib/components/breadcrumb/BreadcrumbItem.tsx

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,21 @@
11
import { BreadcrumbItem as BreadcrumbItemBS } from 'react-bootstrap'
2-
import { PropsWithChildren } from 'react'
2+
import { ElementType, PropsWithChildren } from 'react'
33

44
interface BreadcrumbItemProps {
55
href?: string
66
active?: boolean
7+
linkAs?: ElementType
8+
linkProps?: Record<string, unknown>
79
}
8-
export function BreadcrumbItem({ href, active, children }: PropsWithChildren<BreadcrumbItemProps>) {
10+
export function BreadcrumbItem({
11+
href,
12+
active,
13+
linkAs,
14+
linkProps,
15+
children
16+
}: PropsWithChildren<BreadcrumbItemProps>) {
917
return (
10-
<BreadcrumbItemBS href={href} active={active}>
18+
<BreadcrumbItemBS href={href} active={active} linkAs={linkAs} linkProps={linkProps}>
1119
{children}
1220
</BreadcrumbItemBS>
1321
)

src/sections/shared/hierarchy/BreadcrumbsGenerator.tsx

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,21 @@ export function BreadcrumbsGenerator({ hierarchy }: BreadcrumbGeneratorProps) {
2828

2929
if (isFirst) {
3030
return (
31-
<Breadcrumb.Item key={index}>
32-
<LinkToPage page={Route.HOME}>{item.name}</LinkToPage>
31+
<Breadcrumb.Item
32+
key={index}
33+
linkAs={LinkToPage}
34+
linkProps={{ page: Route.HOME, children: <>{item.name}</> }}>
35+
{item.name}
3336
</Breadcrumb.Item>
3437
)
3538
}
3639

3740
return (
38-
<Breadcrumb.Item key={index}>
39-
<LinkToDvObject name={item.name} type={item.type} id={item.id} version={item.version} />
41+
<Breadcrumb.Item
42+
key={index}
43+
linkAs={LinkToDvObject}
44+
linkProps={{ name: item.name, type: item.type, id: item.id, version: item.version }}>
45+
{item.name}
4046
</Breadcrumb.Item>
4147
)
4248
})}

0 commit comments

Comments
 (0)