A11y: Ensure popover dialogs have an ARIA label#33500
Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughAdds an optional Changes
Sequence Diagram(s)(omitted — changes are accessibility additions and documentation updates without a multi-component control flow requiring sequence visualization) Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (3)
MIGRATION.md (1)
630-643: Add a brief note about trigger prop-forwarding + consider adding these new subsections to the TOC
- The “Automatic aria-haspopup” behavior (Line 642) will only work if the trigger element ultimately renders a DOM element that receives
aria-*props (not just a forwarded ref). Consider a short note like: “If you use a custom trigger component, ensure it forwardsaria-*props to the underlying DOM element.”- For discoverability/consistency with nearby sections, consider adding TOC entries for:
- “Added: ariaLabel”
- “Automatic aria-haspopup”
code/core/src/manager/components/sidebar/TagsFilter.tsx (1)
215-215: LGTM! Accessibility label added correctly.The
ariaLabel="Tag filters"provides an accessible name for the popover dialog. The PopoverProvider will now automatically injectaria-haspopup="dialog"on the trigger button.💡 Optional: Consider differentiating the button and dialog labels
Both the trigger button (line 238) and the popover dialog use the same label "Tag filters". While functional, slightly different labels could provide clearer context:
- Button: "Tag filters" (what the button does)
- Popover: "Filter options" or "Tag filter panel" (what the dialog contains)
This is a minor refinement and the current implementation is acceptable.
code/core/src/components/components/Popover/PopoverProvider.tsx (1)
105-111: Consider removing the Pressable wrapper.DialogTrigger from react-aria-components already manages trigger interactions and dialog state. Since all PopoverProvider children are interactive elements (Button, SidebarToggleButton, etc.) that forwarding refs correctly, the additional Pressable wrapper adds unnecessary indirection and may cause double-wrapping of press handlers. DialogTrigger should handle press interactions directly without needing an explicit Pressable wrapper around the child trigger.
📜 Review details
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (15)
MIGRATION.mdcode/addons/docs/src/blocks/components/ArgsTable/ArgValue.tsxcode/addons/docs/src/blocks/controls/Color.tsxcode/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/components/components/Tabs/Tabs.hooks.tsxcode/core/src/components/components/tooltip/TooltipMessage.stories.tsxcode/core/src/manager/components/preview/tools/share.tsxcode/core/src/manager/components/sidebar/ChecklistWidget.tsxcode/core/src/manager/components/sidebar/ContextMenu.tsxcode/core/src/manager/components/sidebar/Menu.tsxcode/core/src/manager/components/sidebar/RefBlocks.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/manager/components/sidebar/TagsFilter.tsxcode/core/src/manager/container/Menu.stories.tsx
🧰 Additional context used
📓 Path-based instructions (5)
**/*.{js,jsx,ts,tsx,json,md,html,css,scss}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Format code using Prettier with
yarn prettier --write <file>
Files:
code/addons/docs/src/blocks/controls/Color.tsxcode/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/manager/components/sidebar/ChecklistWidget.tsxcode/addons/docs/src/blocks/components/ArgsTable/ArgValue.tsxcode/core/src/manager/components/sidebar/TagsFilter.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/components/components/tooltip/TooltipMessage.stories.tsxcode/core/src/manager/components/sidebar/ContextMenu.tsxcode/core/src/manager/container/Menu.stories.tsxcode/core/src/components/components/Tabs/Tabs.hooks.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/manager/components/sidebar/Menu.tsxcode/core/src/manager/components/preview/tools/share.tsxcode/core/src/manager/components/sidebar/RefBlocks.tsxMIGRATION.md
**/*.{js,jsx,json,html,ts,tsx,mjs}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Run ESLint checks using
yarn lint:js:cmd <file>or the full commandcross-env NODE_ENV=production eslint --cache --cache-location=../.cache/eslint --ext .js,.jsx,.json,.html,.ts,.tsx,.mjs --report-unused-disable-directivesto fix linting errors before committing
Files:
code/addons/docs/src/blocks/controls/Color.tsxcode/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/manager/components/sidebar/ChecklistWidget.tsxcode/addons/docs/src/blocks/components/ArgsTable/ArgValue.tsxcode/core/src/manager/components/sidebar/TagsFilter.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/components/components/tooltip/TooltipMessage.stories.tsxcode/core/src/manager/components/sidebar/ContextMenu.tsxcode/core/src/manager/container/Menu.stories.tsxcode/core/src/components/components/Tabs/Tabs.hooks.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/manager/components/sidebar/Menu.tsxcode/core/src/manager/components/preview/tools/share.tsxcode/core/src/manager/components/sidebar/RefBlocks.tsx
**/*.{ts,tsx}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Enable TypeScript strict mode across all packages
Files:
code/addons/docs/src/blocks/controls/Color.tsxcode/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/manager/components/sidebar/ChecklistWidget.tsxcode/addons/docs/src/blocks/components/ArgsTable/ArgValue.tsxcode/core/src/manager/components/sidebar/TagsFilter.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/components/components/tooltip/TooltipMessage.stories.tsxcode/core/src/manager/components/sidebar/ContextMenu.tsxcode/core/src/manager/container/Menu.stories.tsxcode/core/src/components/components/Tabs/Tabs.hooks.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/manager/components/sidebar/Menu.tsxcode/core/src/manager/components/preview/tools/share.tsxcode/core/src/manager/components/sidebar/RefBlocks.tsx
**/*.{ts,tsx,js,jsx}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
**/*.{ts,tsx,js,jsx}: Export functions from modules if they need to be tested
Do not useconsole.log,console.warn, orconsole.errordirectly unless in isolated files where importing loggers would significantly increase bundle size
Files:
code/addons/docs/src/blocks/controls/Color.tsxcode/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/manager/components/sidebar/ChecklistWidget.tsxcode/addons/docs/src/blocks/components/ArgsTable/ArgValue.tsxcode/core/src/manager/components/sidebar/TagsFilter.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/components/components/tooltip/TooltipMessage.stories.tsxcode/core/src/manager/components/sidebar/ContextMenu.tsxcode/core/src/manager/container/Menu.stories.tsxcode/core/src/components/components/Tabs/Tabs.hooks.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/manager/components/sidebar/Menu.tsxcode/core/src/manager/components/preview/tools/share.tsxcode/core/src/manager/components/sidebar/RefBlocks.tsx
code/{core,lib,addons,builders,frameworks,presets}/**/*.{ts,tsx,js,jsx}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Use
loggerfromstorybook/internal/node-loggerfor server-side logging in Node.js code
Files:
code/addons/docs/src/blocks/controls/Color.tsxcode/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/manager/components/sidebar/ChecklistWidget.tsxcode/addons/docs/src/blocks/components/ArgsTable/ArgValue.tsxcode/core/src/manager/components/sidebar/TagsFilter.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/components/components/tooltip/TooltipMessage.stories.tsxcode/core/src/manager/components/sidebar/ContextMenu.tsxcode/core/src/manager/container/Menu.stories.tsxcode/core/src/components/components/Tabs/Tabs.hooks.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/manager/components/sidebar/Menu.tsxcode/core/src/manager/components/preview/tools/share.tsxcode/core/src/manager/components/sidebar/RefBlocks.tsx
🧠 Learnings (7)
📓 Common learnings
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 32458
File: code/core/src/components/components/Tabs/Tabs.stories.tsx:222-227
Timestamp: 2025-11-05T09:36:55.944Z
Learning: Repo: storybookjs/storybook PR: 32458 — In code/core/src/components/components/Button/Button.tsx (React/TypeScript), ButtonProps includes ariaLabel?: string | false and the component maps it to the DOM aria-label. Convention: ariaLabel is mandatory on all Button usages — provide a descriptive string for icon-only buttons; set ariaLabel=false when the button’s children already serve as the accessible name. Do not suggest using a raw aria-label prop on Button call sites.
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 33140
File: code/core/src/manager/components/sidebar/TagsFilter.tsx:247-259
Timestamp: 2025-11-25T11:09:33.798Z
Learning: In the storybookjs/storybook repository, PopoverProvider creates popovers with a dialog role, so using aria-haspopup="dialog" on buttons that trigger PopoverProvider is semantically correct.
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 32594
File: code/core/src/components/components/Popover/WithPopover.tsx:7-9
Timestamp: 2025-10-01T15:24:01.060Z
Learning: In the Storybook repository, "react-aria-components/patched-dist/*" (e.g., "react-aria-components/patched-dist/Dialog", "react-aria-components/patched-dist/Popover", "react-aria-components/patched-dist/Tooltip") are valid import paths created by a patch applied to the react-aria-components package. These imports should not be flagged as broken or invalid until a maintainer explicitly states they are no longer acceptable.
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 32458
File: code/core/src/components/components/tooltip/WithTooltip.tsx:54-96
Timestamp: 2025-11-05T09:37:25.920Z
Learning: Repo: storybookjs/storybook — In code/core/src/components/components/tooltip/WithTooltip.tsx, the legacy WithTooltip implementation is intentionally reintroduced for backward compatibility and is deprecated; maintainers (per Sidnioulz) do not want maintenance or improvements on it. Prefer WithTooltipNew/Popover; avoid suggesting changes to WithTooltip.* going forward.
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 32458
File: code/core/src/manager/components/preview/Toolbar.tsx:102-105
Timestamp: 2025-10-03T07:55:42.639Z
Learning: In code/core/src/manager/components/preview/Toolbar.tsx, we intentionally do not add aria-label/aria-labelledby to StyledToolbar (AbstractToolbar) because the enclosing section is already labeled via an sr-only heading and the toolbar is the only content. Revisit only if real user testing indicates a need.
📚 Learning: 2025-11-05T09:36:55.944Z
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 32458
File: code/core/src/components/components/Tabs/Tabs.stories.tsx:222-227
Timestamp: 2025-11-05T09:36:55.944Z
Learning: Repo: storybookjs/storybook PR: 32458 — In code/core/src/components/components/Button/Button.tsx (React/TypeScript), ButtonProps includes ariaLabel?: string | false and the component maps it to the DOM aria-label. Convention: ariaLabel is mandatory on all Button usages — provide a descriptive string for icon-only buttons; set ariaLabel=false when the button’s children already serve as the accessible name. Do not suggest using a raw aria-label prop on Button call sites.
Applied to files:
code/addons/docs/src/blocks/controls/Color.tsxcode/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/manager/components/sidebar/ChecklistWidget.tsxcode/addons/docs/src/blocks/components/ArgsTable/ArgValue.tsxcode/core/src/manager/components/sidebar/TagsFilter.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/components/components/tooltip/TooltipMessage.stories.tsxcode/core/src/manager/components/sidebar/ContextMenu.tsxcode/core/src/manager/container/Menu.stories.tsxcode/core/src/components/components/Tabs/Tabs.hooks.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/manager/components/sidebar/Menu.tsxcode/core/src/manager/components/preview/tools/share.tsxcode/core/src/manager/components/sidebar/RefBlocks.tsxMIGRATION.md
📚 Learning: 2025-11-25T11:09:33.798Z
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 33140
File: code/core/src/manager/components/sidebar/TagsFilter.tsx:247-259
Timestamp: 2025-11-25T11:09:33.798Z
Learning: In the storybookjs/storybook repository, PopoverProvider creates popovers with a dialog role, so using aria-haspopup="dialog" on buttons that trigger PopoverProvider is semantically correct.
Applied to files:
code/addons/docs/src/blocks/controls/Color.tsxcode/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/manager/components/sidebar/ChecklistWidget.tsxcode/addons/docs/src/blocks/components/ArgsTable/ArgValue.tsxcode/core/src/manager/components/sidebar/TagsFilter.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/components/components/tooltip/TooltipMessage.stories.tsxcode/core/src/manager/components/sidebar/ContextMenu.tsxcode/core/src/manager/container/Menu.stories.tsxcode/core/src/components/components/Tabs/Tabs.hooks.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/manager/components/sidebar/Menu.tsxcode/core/src/manager/components/preview/tools/share.tsxcode/core/src/manager/components/sidebar/RefBlocks.tsxMIGRATION.md
📚 Learning: 2025-10-03T07:55:42.639Z
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 32458
File: code/core/src/manager/components/preview/Toolbar.tsx:102-105
Timestamp: 2025-10-03T07:55:42.639Z
Learning: In code/core/src/manager/components/preview/Toolbar.tsx, we intentionally do not add aria-label/aria-labelledby to StyledToolbar (AbstractToolbar) because the enclosing section is already labeled via an sr-only heading and the toolbar is the only content. Revisit only if real user testing indicates a need.
Applied to files:
code/addons/docs/src/blocks/controls/Color.tsxcode/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/manager/components/sidebar/ChecklistWidget.tsxcode/core/src/manager/components/sidebar/TagsFilter.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/components/components/tooltip/TooltipMessage.stories.tsxcode/core/src/manager/components/sidebar/ContextMenu.tsxcode/core/src/manager/container/Menu.stories.tsxcode/core/src/components/components/Tabs/Tabs.hooks.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/manager/components/sidebar/Menu.tsxcode/core/src/manager/components/preview/tools/share.tsxMIGRATION.md
📚 Learning: 2025-11-05T09:37:25.920Z
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 32458
File: code/core/src/components/components/tooltip/WithTooltip.tsx:54-96
Timestamp: 2025-11-05T09:37:25.920Z
Learning: Repo: storybookjs/storybook — In code/core/src/components/components/tooltip/WithTooltip.tsx, the legacy WithTooltip implementation is intentionally reintroduced for backward compatibility and is deprecated; maintainers (per Sidnioulz) do not want maintenance or improvements on it. Prefer WithTooltipNew/Popover; avoid suggesting changes to WithTooltip.* going forward.
Applied to files:
code/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/manager/components/sidebar/ChecklistWidget.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/components/components/tooltip/TooltipMessage.stories.tsxcode/core/src/manager/components/sidebar/ContextMenu.tsxcode/core/src/manager/container/Menu.stories.tsxcode/core/src/components/components/Tabs/Tabs.hooks.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/manager/components/sidebar/Menu.tsxcode/core/src/manager/components/preview/tools/share.tsxcode/core/src/manager/components/sidebar/RefBlocks.tsxMIGRATION.md
📚 Learning: 2025-10-01T15:24:01.060Z
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 32594
File: code/core/src/components/components/Popover/WithPopover.tsx:7-9
Timestamp: 2025-10-01T15:24:01.060Z
Learning: In the Storybook repository, "react-aria-components/patched-dist/*" (e.g., "react-aria-components/patched-dist/Dialog", "react-aria-components/patched-dist/Popover", "react-aria-components/patched-dist/Tooltip") are valid import paths created by a patch applied to the react-aria-components package. These imports should not be flagged as broken or invalid until a maintainer explicitly states they are no longer acceptable.
Applied to files:
code/core/src/components/components/Popover/PopoverProvider.stories.tsxcode/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/manager/container/Menu.stories.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxMIGRATION.md
📚 Learning: 2025-11-05T09:38:47.712Z
Learnt from: Sidnioulz
Repo: storybookjs/storybook PR: 32458
File: code/core/src/components/components/Select/Select.tsx:200-204
Timestamp: 2025-11-05T09:38:47.712Z
Learning: Repo: storybookjs/storybook — Guidance: Until Storybook 11 is released, do not suggest using React.useId anywhere (e.g., in code/core/src/components/components/Select/Select.tsx) to maintain compatibility with React 17 runtimes. Prefer advising: accept a caller-provided props.id and, if needed, generate a client-only fallback id to minimize SSR hydration issues — but avoid useId. Resume prompting for useId after Storybook 11.
Applied to files:
code/core/src/manager/components/sidebar/RefIndicator.tsxcode/core/src/components/components/Popover/PopoverProvider.tsxcode/core/src/manager/components/preview/tools/share.tsxcode/core/src/manager/components/sidebar/RefBlocks.tsxMIGRATION.md
🧬 Code graph analysis (3)
code/core/src/components/components/tooltip/TooltipMessage.stories.tsx (2)
code/core/src/components/components/Popover/PopoverProvider.tsx (1)
PopoverProvider(64-129)code/core/src/components/index.ts (1)
PopoverProvider(71-71)
code/core/src/manager/container/Menu.stories.tsx (2)
code/core/src/components/components/Popover/PopoverProvider.tsx (1)
PopoverProvider(64-129)code/core/src/components/index.ts (1)
PopoverProvider(71-71)
code/core/src/components/components/Popover/PopoverProvider.tsx (1)
code/core/src/node-logger/index.ts (1)
deprecate(95-95)
🔇 Additional comments (15)
code/addons/docs/src/blocks/controls/Color.tsx (1)
396-396: LGTM! Accessibility improvement is appropriate.The
ariaLabel="Color picker"provides a clear, descriptive label for screen readers when the popover dialog opens.code/core/src/manager/components/sidebar/ContextMenu.tsx (1)
199-199: LGTM! Accessibility improvement is appropriate.The
ariaLabel="Story actions"provides a clear, descriptive label that accurately describes the context menu's purpose for screen readers.code/core/src/components/components/Tabs/Tabs.hooks.tsx (1)
72-72: LGTM! Accessibility improvement is appropriate.The
ariaLabel="More tabs"provides a clear, descriptive label for the overflow tabs menu, making it accessible to screen readers.code/core/src/components/components/tooltip/TooltipMessage.stories.tsx (1)
30-30: LGTM! Accessibility improvement is appropriate.The
ariaLabel="Tooltip message"provides an appropriate label for the story demonstration, ensuring examples follow accessibility best practices.code/addons/docs/src/blocks/components/ArgsTable/ArgValue.tsx (1)
206-206: LGTM! Accessibility improvement is appropriate.The
ariaLabel="Argument value details"provides a clear, descriptive label that accurately describes the expanded argument information shown in the popover.code/core/src/manager/container/Menu.stories.tsx (1)
24-24: LGTM! Accessibility label added.The
ariaLabel="Menu"provides an appropriate accessible name for the popover, improving screen reader support.code/core/src/manager/components/sidebar/RefIndicator.tsx (1)
157-158: LGTM! Accessibility label added.The
ariaLabel="Storybook status"accurately describes the popover's content, which displays various status messages for composed Storybooks.code/core/src/manager/components/sidebar/ChecklistWidget.tsx (1)
257-258: LGTM! Accessibility label added.The
ariaLabel="Checklist options"appropriately describes the popover menu containing checklist management actions.code/core/src/manager/components/sidebar/Menu.tsx (1)
201-202: LGTM! Accessibility label added.The
ariaLabel="Storybook menu"provides an appropriate accessible name for the main menu popover.code/core/src/manager/components/sidebar/RefBlocks.tsx (1)
129-130: LGTM! Accessibility label added.The
ariaLabel="Error details"appropriately describes the popover displaying formatted error information.code/core/src/manager/components/preview/tools/share.tsx (1)
136-136: LGTM! Clear and descriptive accessibility label.The
ariaLabel="Share this story"provides an appropriate accessible name for the popover dialog, clearly describing its purpose to screen reader users.code/core/src/components/components/Popover/PopoverProvider.stories.tsx (1)
31-31: LGTM! Good documentation practice.Including
ariaLabelin the story args ensures the new accessibility prop is documented and demonstrated in Storybook's own UI.code/core/src/components/components/Popover/PopoverProvider.tsx (3)
15-19: LGTM! Well-documented new prop.The
ariaLabelprop is properly typed as optional with clear JSDoc documentation explaining its purpose and future requirement in Storybook 11.
79-83: LGTM! Deprecation warning correctly implemented.The deprecation warning appropriately notifies users that
ariaLabelwill become mandatory in Storybook 11, providing clear guidance without breaking existing code.
112-117: LGTM! Aria-label correctly forwarded to popover.The
aria-label={ariaLabel}onPopoverUpstreamproperly labels the dialog for screen readers, and the existingplacement,offset, andstyleprops are preserved.
Sidnioulz
left a comment
There was a problem hiding this comment.
LGTM overall, only minor edits needed. Thanks for giving this a go, @gayanMatch! Please re-request a review once you've addressed the comments!
Package BenchmarksCommit: No significant changes detected, all good. 👏 |
ad7a06d to
7161f8d
Compare
da468b5 to
5d51ca0
Compare
Closes #33494
What I did
Added accessibility improvements to
PopoverProvidercomponent:ariaLabelprop that provides an accessible label for the popover dialog, announced by screen readers when the popover opensariaLabelis not provided (will become mandatory in Storybook 11)aria-haspopup="dialog"to trigger elements, informing assistive technology that the button opens a dialogPopoverProviderusages in the codebase with appropriate aria labelsChecklist for Contributors
Testing
The changes in this PR are covered in the following automated tests:
Manual testing
yarn storybook:uiin thecodedirectoryaria-haspopup="dialog"is present on the triggeraria-expanded="true"appears on the trigger when openaria-labelis setDocumentation
MIGRATION.MD
Checklist for Maintainers
When this PR is ready for testing, make sure to add
ci:normal,ci:mergedorci:dailyGH label to it to run a specific set of sandboxes. The particular set of sandboxes can be found incode/lib/cli-storybook/src/sandbox-templates.tsMake sure this PR contains one of the labels below:
Available labels
bug: Internal changes that fixes incorrect behavior.maintenance: User-facing maintenance tasks.dependencies: Upgrading (sometimes downgrading) dependencies.build: Internal-facing build tooling & test updates. Will not show up in release changelog.cleanup: Minor cleanup style change. Will not show up in release changelog.documentation: Documentation only changes. Will not show up in release changelog.feature request: Introducing a new feature.BREAKING CHANGE: Changes that break compatibility in some way with current major version.other: Changes that don't fit in the above categories.Summary by CodeRabbit
New Features
Breaking Changes
Contribution by Gittensor, see my contribution statistics at https://gittensor.io/miners/details?githubId=132382032