From b3761a9cd6060293004092dfbf58273c4795b0ad Mon Sep 17 00:00:00 2001 From: imageck <101450105+imageck@users.noreply.github.com> Date: Thu, 31 Aug 2023 23:41:53 +0500 Subject: [PATCH] `DropdownToggle`: make `aria-expanded` optional --- src/DropdownToggle.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/DropdownToggle.tsx b/src/DropdownToggle.tsx index 035a844..b8b81b5 100644 --- a/src/DropdownToggle.tsx +++ b/src/DropdownToggle.tsx @@ -10,7 +10,7 @@ export interface UseDropdownToggleProps { id: string; ref: DropdownContextValue['setToggle']; onClick: React.MouseEventHandler; - 'aria-expanded': boolean; + 'aria-expanded'?: boolean | null; 'aria-haspopup'?: true; } @@ -49,7 +49,6 @@ export function useDropdownToggle(): [ id, ref: setToggle || noop, onClick: handleClick, - 'aria-expanded': !!show, }; // This is maybe better down in an effect, but @@ -57,6 +56,9 @@ export function useDropdownToggle(): [ // is set so might return new props. if (menuElement && isRoleMenu(menuElement)) { props['aria-haspopup'] = true; + props['aria-expanded'] = show || null; + } else { + props['aria-expanded'] = !!show; } return [props, { show, toggle }];