@primer/components 31.2.1-rc.7fa29a87 → 32.0.0-rc.7200a6a6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/release_canary.yml +1 -0
- package/CHANGELOG.md +66 -4
- package/dist/browser.esm.js +289 -351
- package/dist/browser.esm.js.map +1 -1
- package/dist/browser.umd.js +294 -356
- package/dist/browser.umd.js.map +1 -1
- package/docs/content/ActionList2.mdx +8 -7
- package/docs/content/Breadcrumbs.md +11 -16
- package/docs/content/Buttons.md +7 -17
- package/docs/content/CircleBadge.md +0 -10
- package/docs/content/CounterLabel.md +0 -10
- package/docs/content/Dialog.md +15 -18
- package/docs/content/Dialog2.mdx +1 -0
- package/docs/content/Dropdown.md +11 -18
- package/docs/content/FilterList.md +10 -17
- package/docs/content/FilteredSearch.md +4 -11
- package/docs/content/Flash.md +5 -14
- package/docs/content/FormGroup.md +9 -17
- package/docs/content/Header.md +14 -16
- package/docs/content/Label.md +32 -25
- package/docs/content/LabelGroup.md +4 -14
- package/docs/content/Link.md +8 -17
- package/docs/content/Overlay.mdx +1 -10
- package/docs/content/Pagehead.md +4 -13
- package/docs/content/Pagination.md +10 -19
- package/docs/content/Popover.md +11 -19
- package/docs/content/SelectMenu.md +50 -114
- package/docs/content/SideNav.md +15 -23
- package/docs/content/StateLabel.md +5 -14
- package/docs/content/StyledOcticon.md +7 -16
- package/docs/content/SubNav.md +19 -21
- package/docs/content/TabNav.md +10 -18
- package/docs/content/Timeline.md +34 -24
- package/docs/content/Tooltip.md +8 -17
- package/docs/content/Truncate.md +7 -16
- package/docs/content/UnderlineNav.md +13 -21
- package/lib/ActionList2/Group.d.ts +28 -2
- package/lib/ActionList2/Group.js +55 -6
- package/lib/ActionList2/Group.jsx +33 -4
- package/lib/ActionList2/List.d.ts +1 -1
- package/lib/Autocomplete/Autocomplete.d.ts +3 -3
- package/lib/Autocomplete/AutocompleteInput.d.ts +3 -3
- package/lib/Breadcrumbs.d.ts +8 -7
- package/lib/Breadcrumbs.js +7 -12
- package/lib/Breadcrumbs.jsx +3 -6
- package/lib/Button/Button.d.ts +2 -3
- package/lib/Button/Button.js +2 -6
- package/lib/Button/Button.jsx +1 -21
- package/lib/Button/ButtonBase.d.ts +5 -8
- package/lib/Button/ButtonBase.js +1 -5
- package/lib/Button/ButtonBase.jsx +0 -3
- package/lib/Button/ButtonClose.d.ts +3 -46
- package/lib/Button/ButtonClose.js +1 -1
- package/lib/Button/ButtonClose.jsx +0 -2
- package/lib/Button/ButtonDanger.d.ts +2 -3
- package/lib/Button/ButtonDanger.js +2 -6
- package/lib/Button/ButtonDanger.jsx +1 -21
- package/lib/Button/ButtonInvisible.d.ts +2 -3
- package/lib/Button/ButtonInvisible.js +2 -6
- package/lib/Button/ButtonInvisible.jsx +1 -21
- package/lib/Button/ButtonOutline.d.ts +2 -3
- package/lib/Button/ButtonOutline.js +2 -6
- package/lib/Button/ButtonOutline.jsx +1 -21
- package/lib/Button/ButtonPrimary.d.ts +2 -3
- package/lib/Button/ButtonPrimary.js +2 -6
- package/lib/Button/ButtonPrimary.jsx +1 -21
- package/lib/Button/ButtonTableList.d.ts +1 -2
- package/lib/Button/ButtonTableList.js +1 -1
- package/lib/Button/ButtonTableList.jsx +0 -3
- package/lib/CircleBadge.d.ts +4 -5
- package/lib/CircleBadge.js +1 -1
- package/lib/CircleBadge.jsx +0 -1
- package/lib/CircleOcticon.d.ts +1 -1
- package/lib/CounterLabel.d.ts +1 -2
- package/lib/CounterLabel.js +1 -1
- package/lib/CounterLabel.jsx +0 -1
- package/lib/Dialog/Dialog.d.ts +5 -9
- package/lib/Dialog/Dialog.js +17 -11
- package/lib/Dialog/Dialog.jsx +13 -7
- package/lib/Dialog.d.ts +4 -5
- package/lib/Dialog.js +1 -1
- package/lib/Dialog.jsx +0 -2
- package/lib/Dropdown.d.ts +10 -99
- package/lib/Dropdown.js +3 -3
- package/lib/Dropdown.jsx +0 -3
- package/lib/DropdownMenu/DropdownButton.d.ts +3 -47
- package/lib/DropdownMenu/DropdownButton.js +3 -1
- package/lib/DropdownMenu/DropdownButton.jsx +1 -1
- package/lib/FilterList.d.ts +264 -303
- package/lib/FilterList.js +2 -6
- package/lib/FilterList.jsx +2 -6
- package/lib/FilteredSearch.d.ts +1 -2
- package/lib/FilteredSearch.js +1 -1
- package/lib/FilteredSearch.jsx +0 -1
- package/lib/Flash.d.ts +1 -2
- package/lib/Flash.js +1 -1
- package/lib/Flash.jsx +0 -1
- package/lib/FormGroup.d.ts +4 -5
- package/lib/FormGroup.js +2 -2
- package/lib/FormGroup.jsx +0 -3
- package/lib/Header.d.ts +6 -7
- package/lib/Header.js +4 -4
- package/lib/Header.jsx +0 -7
- package/lib/Label.d.ts +1 -2
- package/lib/Label.js +2 -3
- package/lib/Label.jsx +1 -3
- package/lib/LabelGroup.d.ts +1 -2
- package/lib/LabelGroup.js +1 -1
- package/lib/LabelGroup.jsx +0 -1
- package/lib/Link.d.ts +1 -2
- package/lib/Link.js +1 -1
- package/lib/Link.jsx +0 -2
- package/lib/Overlay.d.ts +11 -10
- package/lib/Overlay.js +3 -4
- package/lib/Overlay.jsx +1 -3
- package/lib/Pagehead.d.ts +1 -2
- package/lib/Pagehead.js +1 -1
- package/lib/Pagehead.jsx +0 -1
- package/lib/Pagination/Pagination.js +1 -1
- package/lib/Pagination/Pagination.jsx +0 -2
- package/lib/Popover.d.ts +4 -5
- package/lib/Popover.js +4 -5
- package/lib/Popover.jsx +1 -9
- package/lib/Position.d.ts +4 -4
- package/lib/SelectMenu/SelectMenu.d.ts +21 -189
- package/lib/SelectMenu/SelectMenu.js +1 -3
- package/lib/SelectMenu/SelectMenu.jsx +0 -2
- package/lib/SelectMenu/SelectMenuDivider.d.ts +1 -2
- package/lib/SelectMenu/SelectMenuDivider.js +1 -1
- package/lib/SelectMenu/SelectMenuDivider.jsx +0 -1
- package/lib/SelectMenu/SelectMenuFilter.js +1 -1
- package/lib/SelectMenu/SelectMenuFilter.jsx +0 -1
- package/lib/SelectMenu/SelectMenuFooter.d.ts +1 -2
- package/lib/SelectMenu/SelectMenuFooter.js +1 -1
- package/lib/SelectMenu/SelectMenuFooter.jsx +0 -1
- package/lib/SelectMenu/SelectMenuHeader.d.ts +1 -2
- package/lib/SelectMenu/SelectMenuHeader.js +1 -1
- package/lib/SelectMenu/SelectMenuHeader.jsx +0 -2
- package/lib/SelectMenu/SelectMenuItem.d.ts +2 -3
- package/lib/SelectMenu/SelectMenuItem.js +1 -1
- package/lib/SelectMenu/SelectMenuItem.jsx +0 -1
- package/lib/SelectMenu/SelectMenuList.d.ts +1 -2
- package/lib/SelectMenu/SelectMenuList.js +1 -1
- package/lib/SelectMenu/SelectMenuList.jsx +0 -1
- package/lib/SelectMenu/SelectMenuLoadingAnimation.d.ts +2 -2
- package/lib/SelectMenu/SelectMenuLoadingAnimation.js +3 -1
- package/lib/SelectMenu/SelectMenuLoadingAnimation.jsx +2 -1
- package/lib/SelectMenu/SelectMenuModal.d.ts +2 -3
- package/lib/SelectMenu/SelectMenuModal.js +1 -1
- package/lib/SelectMenu/SelectMenuModal.jsx +0 -1
- package/lib/SelectMenu/SelectMenuTab.d.ts +1 -2
- package/lib/SelectMenu/SelectMenuTab.js +1 -1
- package/lib/SelectMenu/SelectMenuTab.jsx +0 -1
- package/lib/SelectMenu/SelectMenuTabPanel.d.ts +1 -2
- package/lib/SelectMenu/SelectMenuTabPanel.js +1 -1
- package/lib/SelectMenu/SelectMenuTabPanel.jsx +0 -1
- package/lib/SelectMenu/SelectMenuTabs.d.ts +1 -2
- package/lib/SelectMenu/SelectMenuTabs.js +1 -1
- package/lib/SelectMenu/SelectMenuTabs.jsx +0 -1
- package/lib/SideNav.d.ts +11 -8
- package/lib/SideNav.js +8 -15
- package/lib/SideNav.jsx +2 -6
- package/lib/StateLabel.d.ts +1 -2
- package/lib/StateLabel.js +6 -5
- package/lib/StateLabel.jsx +1 -2
- package/lib/StyledOcticon.d.ts +1 -2
- package/lib/StyledOcticon.js +1 -3
- package/lib/StyledOcticon.jsx +0 -2
- package/lib/SubNav.d.ts +5 -11
- package/lib/SubNav.js +7 -12
- package/lib/SubNav.jsx +4 -7
- package/lib/TabNav.d.ts +3 -4
- package/lib/TabNav.js +2 -2
- package/lib/TabNav.jsx +0 -2
- package/lib/TextInputWithTokens.d.ts +3 -3
- package/lib/Timeline.d.ts +19 -393
- package/lib/Timeline.js +16 -13
- package/lib/Timeline.jsx +9 -10
- package/lib/Token/Token.d.ts +1 -1
- package/lib/Tooltip.d.ts +1 -2
- package/lib/Tooltip.js +1 -1
- package/lib/Tooltip.jsx +1 -1
- package/lib/Truncate.d.ts +1 -2
- package/lib/Truncate.js +1 -3
- package/lib/Truncate.jsx +0 -3
- package/lib/UnderlineNav.d.ts +2 -3
- package/lib/UnderlineNav.js +2 -2
- package/lib/UnderlineNav.jsx +0 -2
- package/lib/__tests__/Breadcrumbs.test.js +4 -1
- package/lib/__tests__/Breadcrumbs.test.jsx +1 -1
- package/lib/__tests__/Breadcrumbs.types.test.d.ts +3 -0
- package/lib/__tests__/Breadcrumbs.types.test.js +25 -0
- package/lib/__tests__/Breadcrumbs.types.test.jsx +24 -0
- package/lib/__tests__/Button.test.js +6 -2
- package/lib/__tests__/Button.test.jsx +2 -2
- package/lib/__tests__/CircleBadge.types.test.d.ts +3 -0
- package/lib/__tests__/CircleBadge.types.test.js +28 -0
- package/lib/__tests__/CircleBadge.types.test.jsx +17 -0
- package/lib/__tests__/CounterLabel.types.test.d.ts +3 -0
- package/lib/__tests__/CounterLabel.types.test.js +28 -0
- package/lib/__tests__/CounterLabel.types.test.jsx +17 -0
- package/lib/__tests__/Dialog.types.test.d.ts +3 -0
- package/lib/__tests__/Dialog.types.test.js +28 -0
- package/lib/__tests__/Dialog.types.test.jsx +17 -0
- package/lib/__tests__/Dialog2.types.test.d.ts +3 -0
- package/lib/__tests__/Dialog2.types.test.js +31 -0
- package/lib/__tests__/Dialog2.types.test.jsx +17 -0
- package/lib/__tests__/Dropdown.types.test.d.ts +3 -0
- package/lib/__tests__/Dropdown.types.test.js +31 -0
- package/lib/__tests__/Dropdown.types.test.jsx +25 -0
- package/lib/__tests__/FilterList.types.test.d.ts +3 -0
- package/lib/__tests__/FilterList.types.test.js +27 -0
- package/lib/__tests__/FilterList.types.test.jsx +21 -0
- package/lib/__tests__/FilteredSearch.types.test.d.ts +3 -0
- package/lib/__tests__/FilteredSearch.types.test.js +28 -0
- package/lib/__tests__/FilteredSearch.types.test.jsx +17 -0
- package/lib/__tests__/Flash.types.test.d.ts +3 -0
- package/lib/__tests__/Flash.types.test.js +28 -0
- package/lib/__tests__/Flash.types.test.jsx +17 -0
- package/lib/__tests__/FormGroup.types.test.d.ts +3 -0
- package/lib/__tests__/FormGroup.types.test.js +28 -0
- package/lib/__tests__/FormGroup.types.test.jsx +17 -0
- package/lib/__tests__/Header.types.test.d.ts +3 -0
- package/lib/__tests__/Header.types.test.js +29 -0
- package/lib/__tests__/Header.types.test.jsx +23 -0
- package/lib/__tests__/Label.types.test.d.ts +3 -0
- package/lib/__tests__/Label.types.test.js +28 -0
- package/lib/__tests__/Label.types.test.jsx +17 -0
- package/lib/__tests__/LabelGroup.types.test.d.ts +3 -0
- package/lib/__tests__/LabelGroup.types.test.js +28 -0
- package/lib/__tests__/LabelGroup.types.test.jsx +17 -0
- package/lib/__tests__/Link.test.js +11 -5
- package/lib/__tests__/Link.test.jsx +5 -5
- package/lib/__tests__/Link.types.test.d.ts +3 -0
- package/lib/__tests__/Link.types.test.js +28 -0
- package/lib/__tests__/Link.types.test.jsx +17 -0
- package/lib/__tests__/Overlay.types.test.d.ts +3 -0
- package/lib/__tests__/Overlay.types.test.js +35 -0
- package/lib/__tests__/Overlay.types.test.jsx +18 -0
- package/lib/__tests__/Pagehead.types.test.d.ts +3 -0
- package/lib/__tests__/Pagehead.types.test.js +28 -0
- package/lib/__tests__/Pagehead.types.test.jsx +17 -0
- package/lib/__tests__/Pagination.types.test.d.ts +3 -0
- package/lib/__tests__/Pagination.types.test.js +33 -0
- package/lib/__tests__/Pagination.types.test.jsx +17 -0
- package/lib/__tests__/Popover.types.test.d.ts +3 -0
- package/lib/__tests__/Popover.types.test.js +27 -0
- package/lib/__tests__/Popover.types.test.jsx +21 -0
- package/lib/__tests__/SelectMenu.types.test.d.ts +3 -0
- package/lib/__tests__/SelectMenu.types.test.js +47 -0
- package/lib/__tests__/SelectMenu.types.test.jsx +41 -0
- package/lib/__tests__/SideNav.types.test.d.ts +3 -0
- package/lib/__tests__/SideNav.types.test.js +28 -0
- package/lib/__tests__/SideNav.types.test.jsx +17 -0
- package/lib/__tests__/StateLabel.types.test.d.ts +3 -0
- package/lib/__tests__/StateLabel.types.test.js +28 -0
- package/lib/__tests__/StateLabel.types.test.jsx +17 -0
- package/lib/__tests__/StyledOcticon.types.test.d.ts +3 -0
- package/lib/__tests__/StyledOcticon.types.test.js +32 -0
- package/lib/__tests__/StyledOcticon.types.test.jsx +18 -0
- package/lib/__tests__/SubNav.types.test.d.ts +3 -0
- package/lib/__tests__/SubNav.types.test.js +27 -0
- package/lib/__tests__/SubNav.types.test.jsx +27 -0
- package/lib/__tests__/TabNav.types.test.d.ts +3 -0
- package/lib/__tests__/TabNav.types.test.js +25 -0
- package/lib/__tests__/TabNav.types.test.jsx +24 -0
- package/lib/__tests__/Timeline.types.test.d.ts +3 -0
- package/lib/__tests__/Timeline.types.test.js +31 -0
- package/lib/__tests__/Timeline.types.test.jsx +33 -0
- package/lib/__tests__/Tooltip.types.test.d.ts +3 -0
- package/lib/__tests__/Tooltip.types.test.js +28 -0
- package/lib/__tests__/Tooltip.types.test.jsx +17 -0
- package/lib/__tests__/Truncate.types.test.d.ts +3 -0
- package/lib/__tests__/Truncate.types.test.js +31 -0
- package/lib/__tests__/Truncate.types.test.jsx +17 -0
- package/lib/__tests__/UnderlineNav.types.test.d.ts +3 -0
- package/lib/__tests__/UnderlineNav.types.test.js +25 -0
- package/lib/__tests__/UnderlineNav.types.test.jsx +24 -0
- package/lib/stories/ActionList2.stories.js +4 -3
- package/lib/stories/ActionMenu.stories.js +1 -3
- package/lib/stories/ConfirmationDialog.stories.js +16 -8
- package/lib/stories/Dialog.stories.js +6 -2
- package/lib/stories/useFocusTrap.stories.js +6 -2
- package/lib/stories/useFocusZone.stories.js +13 -5
- package/lib-esm/ActionList2/Group.d.ts +28 -2
- package/lib-esm/ActionList2/Group.js +52 -5
- package/lib-esm/ActionList2/List.d.ts +1 -1
- package/lib-esm/Autocomplete/Autocomplete.d.ts +3 -3
- package/lib-esm/Autocomplete/AutocompleteInput.d.ts +3 -3
- package/lib-esm/Breadcrumbs.d.ts +8 -7
- package/lib-esm/Breadcrumbs.js +8 -13
- package/lib-esm/Button/Button.d.ts +2 -3
- package/lib-esm/Button/Button.js +2 -2
- package/lib-esm/Button/ButtonBase.d.ts +5 -8
- package/lib-esm/Button/ButtonBase.js +1 -3
- package/lib-esm/Button/ButtonClose.d.ts +3 -46
- package/lib-esm/Button/ButtonClose.js +2 -2
- package/lib-esm/Button/ButtonDanger.d.ts +2 -3
- package/lib-esm/Button/ButtonDanger.js +2 -2
- package/lib-esm/Button/ButtonInvisible.d.ts +2 -3
- package/lib-esm/Button/ButtonInvisible.js +2 -2
- package/lib-esm/Button/ButtonOutline.d.ts +2 -3
- package/lib-esm/Button/ButtonOutline.js +2 -2
- package/lib-esm/Button/ButtonPrimary.d.ts +2 -3
- package/lib-esm/Button/ButtonPrimary.js +2 -2
- package/lib-esm/Button/ButtonTableList.d.ts +1 -2
- package/lib-esm/Button/ButtonTableList.js +2 -2
- package/lib-esm/CircleBadge.d.ts +4 -5
- package/lib-esm/CircleBadge.js +2 -2
- package/lib-esm/CircleOcticon.d.ts +1 -1
- package/lib-esm/CounterLabel.d.ts +1 -2
- package/lib-esm/CounterLabel.js +2 -2
- package/lib-esm/Dialog/Dialog.d.ts +5 -9
- package/lib-esm/Dialog/Dialog.js +12 -12
- package/lib-esm/Dialog.d.ts +4 -5
- package/lib-esm/Dialog.js +2 -2
- package/lib-esm/Dropdown.d.ts +10 -99
- package/lib-esm/Dropdown.js +4 -4
- package/lib-esm/DropdownMenu/DropdownButton.d.ts +3 -47
- package/lib-esm/DropdownMenu/DropdownButton.js +3 -1
- package/lib-esm/FilterList.d.ts +264 -303
- package/lib-esm/FilterList.js +3 -7
- package/lib-esm/FilteredSearch.d.ts +1 -2
- package/lib-esm/FilteredSearch.js +2 -2
- package/lib-esm/Flash.d.ts +1 -2
- package/lib-esm/Flash.js +2 -2
- package/lib-esm/FormGroup.d.ts +4 -5
- package/lib-esm/FormGroup.js +3 -3
- package/lib-esm/Header.d.ts +6 -7
- package/lib-esm/Header.js +5 -5
- package/lib-esm/Label.d.ts +1 -2
- package/lib-esm/Label.js +3 -4
- package/lib-esm/LabelGroup.d.ts +1 -2
- package/lib-esm/LabelGroup.js +2 -2
- package/lib-esm/Link.d.ts +1 -2
- package/lib-esm/Link.js +2 -2
- package/lib-esm/Overlay.d.ts +11 -10
- package/lib-esm/Overlay.js +2 -3
- package/lib-esm/Pagehead.d.ts +1 -2
- package/lib-esm/Pagehead.js +2 -2
- package/lib-esm/Pagination/Pagination.js +2 -2
- package/lib-esm/Popover.d.ts +4 -5
- package/lib-esm/Popover.js +4 -5
- package/lib-esm/Position.d.ts +4 -4
- package/lib-esm/SelectMenu/SelectMenu.d.ts +21 -189
- package/lib-esm/SelectMenu/SelectMenu.js +1 -2
- package/lib-esm/SelectMenu/SelectMenuDivider.d.ts +1 -2
- package/lib-esm/SelectMenu/SelectMenuDivider.js +2 -2
- package/lib-esm/SelectMenu/SelectMenuFilter.js +2 -2
- package/lib-esm/SelectMenu/SelectMenuFooter.d.ts +1 -2
- package/lib-esm/SelectMenu/SelectMenuFooter.js +2 -2
- package/lib-esm/SelectMenu/SelectMenuHeader.d.ts +1 -2
- package/lib-esm/SelectMenu/SelectMenuHeader.js +2 -2
- package/lib-esm/SelectMenu/SelectMenuItem.d.ts +2 -3
- package/lib-esm/SelectMenu/SelectMenuItem.js +2 -2
- package/lib-esm/SelectMenu/SelectMenuList.d.ts +1 -2
- package/lib-esm/SelectMenu/SelectMenuList.js +2 -2
- package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.d.ts +2 -2
- package/lib-esm/SelectMenu/SelectMenuLoadingAnimation.js +3 -2
- package/lib-esm/SelectMenu/SelectMenuModal.d.ts +2 -3
- package/lib-esm/SelectMenu/SelectMenuModal.js +2 -2
- package/lib-esm/SelectMenu/SelectMenuTab.d.ts +1 -2
- package/lib-esm/SelectMenu/SelectMenuTab.js +2 -2
- package/lib-esm/SelectMenu/SelectMenuTabPanel.d.ts +1 -2
- package/lib-esm/SelectMenu/SelectMenuTabPanel.js +2 -2
- package/lib-esm/SelectMenu/SelectMenuTabs.d.ts +1 -2
- package/lib-esm/SelectMenu/SelectMenuTabs.js +2 -2
- package/lib-esm/SideNav.d.ts +11 -8
- package/lib-esm/SideNav.js +8 -16
- package/lib-esm/StateLabel.d.ts +1 -2
- package/lib-esm/StateLabel.js +7 -6
- package/lib-esm/StyledOcticon.d.ts +1 -2
- package/lib-esm/StyledOcticon.js +1 -2
- package/lib-esm/SubNav.d.ts +5 -11
- package/lib-esm/SubNav.js +8 -13
- package/lib-esm/TabNav.d.ts +3 -4
- package/lib-esm/TabNav.js +3 -3
- package/lib-esm/TextInputWithTokens.d.ts +3 -3
- package/lib-esm/Timeline.d.ts +19 -393
- package/lib-esm/Timeline.js +12 -13
- package/lib-esm/Token/Token.d.ts +1 -1
- package/lib-esm/Tooltip.d.ts +1 -2
- package/lib-esm/Tooltip.js +2 -2
- package/lib-esm/Truncate.d.ts +1 -2
- package/lib-esm/Truncate.js +1 -2
- package/lib-esm/UnderlineNav.d.ts +2 -3
- package/lib-esm/UnderlineNav.js +3 -3
- package/lib-esm/__tests__/Breadcrumbs.test.js +4 -1
- package/lib-esm/__tests__/Breadcrumbs.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Breadcrumbs.types.test.js +12 -0
- package/lib-esm/__tests__/Button.test.js +6 -2
- package/lib-esm/__tests__/CircleBadge.types.test.d.ts +3 -0
- package/lib-esm/__tests__/CircleBadge.types.test.js +13 -0
- package/lib-esm/__tests__/CounterLabel.types.test.d.ts +3 -0
- package/lib-esm/__tests__/CounterLabel.types.test.js +13 -0
- package/lib-esm/__tests__/Dialog.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Dialog.types.test.js +13 -0
- package/lib-esm/__tests__/Dialog2.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Dialog2.types.test.js +16 -0
- package/lib-esm/__tests__/Dropdown.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Dropdown.types.test.js +17 -0
- package/lib-esm/__tests__/FilterList.types.test.d.ts +3 -0
- package/lib-esm/__tests__/FilterList.types.test.js +13 -0
- package/lib-esm/__tests__/FilteredSearch.types.test.d.ts +3 -0
- package/lib-esm/__tests__/FilteredSearch.types.test.js +13 -0
- package/lib-esm/__tests__/Flash.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Flash.types.test.js +13 -0
- package/lib-esm/__tests__/FormGroup.types.test.d.ts +3 -0
- package/lib-esm/__tests__/FormGroup.types.test.js +13 -0
- package/lib-esm/__tests__/Header.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Header.types.test.js +15 -0
- package/lib-esm/__tests__/Label.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Label.types.test.js +13 -0
- package/lib-esm/__tests__/LabelGroup.types.test.d.ts +3 -0
- package/lib-esm/__tests__/LabelGroup.types.test.js +13 -0
- package/lib-esm/__tests__/Link.test.js +11 -5
- package/lib-esm/__tests__/Link.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Link.types.test.js +13 -0
- package/lib-esm/__tests__/Overlay.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Overlay.types.test.js +20 -0
- package/lib-esm/__tests__/Pagehead.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Pagehead.types.test.js +13 -0
- package/lib-esm/__tests__/Pagination.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Pagination.types.test.js +18 -0
- package/lib-esm/__tests__/Popover.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Popover.types.test.js +13 -0
- package/lib-esm/__tests__/SelectMenu.types.test.d.ts +3 -0
- package/lib-esm/__tests__/SelectMenu.types.test.js +33 -0
- package/lib-esm/__tests__/SideNav.types.test.d.ts +3 -0
- package/lib-esm/__tests__/SideNav.types.test.js +13 -0
- package/lib-esm/__tests__/StateLabel.types.test.d.ts +3 -0
- package/lib-esm/__tests__/StateLabel.types.test.js +13 -0
- package/lib-esm/__tests__/StyledOcticon.types.test.d.ts +3 -0
- package/lib-esm/__tests__/StyledOcticon.types.test.js +16 -0
- package/lib-esm/__tests__/SubNav.types.test.d.ts +3 -0
- package/lib-esm/__tests__/SubNav.types.test.js +14 -0
- package/lib-esm/__tests__/TabNav.types.test.d.ts +3 -0
- package/lib-esm/__tests__/TabNav.types.test.js +12 -0
- package/lib-esm/__tests__/Timeline.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Timeline.types.test.js +18 -0
- package/lib-esm/__tests__/Tooltip.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Tooltip.types.test.js +13 -0
- package/lib-esm/__tests__/Truncate.types.test.d.ts +3 -0
- package/lib-esm/__tests__/Truncate.types.test.js +16 -0
- package/lib-esm/__tests__/UnderlineNav.types.test.d.ts +3 -0
- package/lib-esm/__tests__/UnderlineNav.types.test.js +12 -0
- package/lib-esm/stories/ActionList2.stories.js +4 -3
- package/lib-esm/stories/ActionMenu.stories.js +1 -3
- package/lib-esm/stories/ConfirmationDialog.stories.js +16 -8
- package/lib-esm/stories/Dialog.stories.js +6 -2
- package/lib-esm/stories/useFocusTrap.stories.js +6 -2
- package/lib-esm/stories/useFocusZone.stories.js +13 -5
- package/package-lock.json +7 -7
- package/package.json +2 -2
- package/src/ActionList2/Group.tsx +76 -7
- package/src/ActionList2/List.tsx +1 -1
- package/src/Breadcrumbs.tsx +11 -11
- package/src/Button/Button.tsx +2 -3
- package/src/Button/ButtonBase.tsx +2 -6
- package/src/Button/ButtonClose.tsx +2 -6
- package/src/Button/ButtonDanger.tsx +2 -3
- package/src/Button/ButtonInvisible.tsx +2 -3
- package/src/Button/ButtonOutline.tsx +2 -3
- package/src/Button/ButtonPrimary.tsx +2 -3
- package/src/Button/ButtonTableList.tsx +2 -15
- package/src/CircleBadge.tsx +2 -4
- package/src/CounterLabel.tsx +2 -4
- package/src/Dialog/Dialog.tsx +22 -11
- package/src/Dialog.tsx +2 -6
- package/src/Dropdown.tsx +3 -7
- package/src/DropdownMenu/DropdownButton.tsx +1 -1
- package/src/FilterList.tsx +5 -11
- package/src/FilteredSearch.tsx +2 -3
- package/src/Flash.tsx +2 -4
- package/src/FormGroup.tsx +3 -6
- package/src/Header.tsx +4 -14
- package/src/Label.tsx +2 -5
- package/src/LabelGroup.tsx +2 -3
- package/src/Link.tsx +2 -6
- package/src/Overlay.tsx +13 -11
- package/src/Pagehead.tsx +2 -3
- package/src/Pagination/Pagination.tsx +3 -5
- package/src/Popover.tsx +3 -14
- package/src/SelectMenu/SelectMenu.tsx +1 -3
- package/src/SelectMenu/SelectMenuDivider.tsx +2 -3
- package/src/SelectMenu/SelectMenuFilter.tsx +2 -3
- package/src/SelectMenu/SelectMenuFooter.tsx +2 -3
- package/src/SelectMenu/SelectMenuHeader.tsx +2 -4
- package/src/SelectMenu/SelectMenuItem.tsx +2 -3
- package/src/SelectMenu/SelectMenuList.tsx +2 -3
- package/src/SelectMenu/SelectMenuLoadingAnimation.tsx +4 -3
- package/src/SelectMenu/SelectMenuModal.tsx +2 -4
- package/src/SelectMenu/SelectMenuTab.tsx +2 -3
- package/src/SelectMenu/SelectMenuTabPanel.tsx +2 -3
- package/src/SelectMenu/SelectMenuTabs.tsx +2 -3
- package/src/SideNav.tsx +11 -13
- package/src/StateLabel.tsx +3 -5
- package/src/StyledOcticon.tsx +1 -3
- package/src/SubNav.tsx +8 -13
- package/src/TabNav.tsx +3 -7
- package/src/Timeline.tsx +11 -12
- package/src/Tooltip.tsx +3 -3
- package/src/Truncate.tsx +0 -5
- package/src/UnderlineNav.tsx +3 -6
- package/src/__tests__/Breadcrumbs.test.tsx +1 -1
- package/src/__tests__/Breadcrumbs.types.test.tsx +22 -0
- package/src/__tests__/Button.test.tsx +2 -2
- package/src/__tests__/CircleBadge.types.test.tsx +11 -0
- package/src/__tests__/CounterLabel.types.test.tsx +11 -0
- package/src/__tests__/Dialog.types.test.tsx +11 -0
- package/src/__tests__/Dialog2.types.test.tsx +11 -0
- package/src/__tests__/Dropdown.types.test.tsx +21 -0
- package/src/__tests__/FilterList.types.test.tsx +17 -0
- package/src/__tests__/FilteredSearch.types.test.tsx +11 -0
- package/src/__tests__/Flash.types.test.tsx +11 -0
- package/src/__tests__/FormGroup.types.test.tsx +11 -0
- package/src/__tests__/Header.types.test.tsx +19 -0
- package/src/__tests__/Label.types.test.tsx +11 -0
- package/src/__tests__/LabelGroup.types.test.tsx +11 -0
- package/src/__tests__/Link.test.tsx +5 -5
- package/src/__tests__/Link.types.test.tsx +11 -0
- package/src/__tests__/Overlay.types.test.tsx +18 -0
- package/src/__tests__/Pagehead.types.test.tsx +11 -0
- package/src/__tests__/Pagination.types.test.tsx +11 -0
- package/src/__tests__/Popover.types.test.tsx +17 -0
- package/src/__tests__/SelectMenu.types.test.tsx +37 -0
- package/src/__tests__/SideNav.types.test.tsx +11 -0
- package/src/__tests__/StateLabel.types.test.tsx +11 -0
- package/src/__tests__/StyledOcticon.types.test.tsx +12 -0
- package/src/__tests__/SubNav.types.test.tsx +25 -0
- package/src/__tests__/TabNav.types.test.tsx +22 -0
- package/src/__tests__/Timeline.types.test.tsx +31 -0
- package/src/__tests__/Tooltip.types.test.tsx +11 -0
- package/src/__tests__/Truncate.types.test.tsx +11 -0
- package/src/__tests__/UnderlineNav.types.test.tsx +22 -0
- package/src/__tests__/__snapshots__/Label.test.tsx.snap +3 -4
- package/src/__tests__/__snapshots__/Link.test.tsx.snap +1 -2
- package/src/stories/ActionList2.stories.tsx +3 -3
- package/src/stories/ActionMenu.stories.tsx +1 -4
- package/src/stories/ConfirmationDialog.stories.tsx +4 -4
- package/src/stories/Dialog.stories.tsx +2 -2
- package/src/stories/useFocusTrap.stories.tsx +2 -2
- package/src/stories/useFocusZone.stories.tsx +4 -4
- package/stats.html +1 -1
@@ -0,0 +1,13 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import Pagehead from '../Pagehead';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(Pagehead, null);
|
5
|
+
}
|
6
|
+
shouldAcceptCallWithNoProps.displayName = "shouldAcceptCallWithNoProps";
|
7
|
+
export function shouldNotAcceptSystemProps() {
|
8
|
+
// @ts-expect-error system props should not be accepted
|
9
|
+
return /*#__PURE__*/React.createElement(Pagehead, {
|
10
|
+
backgroundColor: "orchid"
|
11
|
+
});
|
12
|
+
}
|
13
|
+
shouldNotAcceptSystemProps.displayName = "shouldNotAcceptSystemProps";
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import Pagination from '../Pagination';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(Pagination, {
|
5
|
+
currentPage: 1,
|
6
|
+
pageCount: 2
|
7
|
+
});
|
8
|
+
}
|
9
|
+
shouldAcceptCallWithNoProps.displayName = "shouldAcceptCallWithNoProps";
|
10
|
+
export function shouldNotAcceptSystemProps() {
|
11
|
+
// @ts-expect-error system props should not be accepted
|
12
|
+
return /*#__PURE__*/React.createElement(Pagination, {
|
13
|
+
currentPage: 1,
|
14
|
+
pageCount: 2,
|
15
|
+
backgroundColor: "palegoldenrod"
|
16
|
+
});
|
17
|
+
}
|
18
|
+
shouldNotAcceptSystemProps.displayName = "shouldNotAcceptSystemProps";
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import Popover from '../Popover';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(Popover, null);
|
5
|
+
}
|
6
|
+
shouldAcceptCallWithNoProps.displayName = "shouldAcceptCallWithNoProps";
|
7
|
+
export function shouldNotAcceptSystemProps() {
|
8
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Popover, {
|
9
|
+
backgroundColor: "palegreen"
|
10
|
+
}), /*#__PURE__*/React.createElement(Popover.Content, {
|
11
|
+
backgroundColor: "paleturquoise"
|
12
|
+
}));
|
13
|
+
}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import SelectMenu from '../SelectMenu';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(SelectMenu, null);
|
5
|
+
}
|
6
|
+
shouldAcceptCallWithNoProps.displayName = "shouldAcceptCallWithNoProps";
|
7
|
+
export function shouldNotAcceptSystemProps() {
|
8
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SelectMenu, {
|
9
|
+
backgroundColor: "lightgray"
|
10
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.List, {
|
11
|
+
backgroundColor: "lightgreen"
|
12
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.Divider, {
|
13
|
+
backgroundColor: "lightgrey"
|
14
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.Filter, {
|
15
|
+
backgroundColor: "lightpink"
|
16
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.Footer, {
|
17
|
+
backgroundColor: "lightsalmon"
|
18
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.Item, {
|
19
|
+
backgroundColor: "lightseagreen"
|
20
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.Modal, {
|
21
|
+
backgroundColor: "lightskyblue"
|
22
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.Tabs, {
|
23
|
+
backgroundColor: "lightslategray"
|
24
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.Tab, {
|
25
|
+
backgroundColor: "lightslategrey"
|
26
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.TabPanel, {
|
27
|
+
backgroundColor: "lightsteelblue"
|
28
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.Header, {
|
29
|
+
backgroundColor: "lightyellow"
|
30
|
+
}), /*#__PURE__*/React.createElement(SelectMenu.LoadingAnimation, {
|
31
|
+
backgroundColor: "lightcyan"
|
32
|
+
}));
|
33
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import SideNav from '../SideNav';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(SideNav, null);
|
5
|
+
}
|
6
|
+
shouldAcceptCallWithNoProps.displayName = "shouldAcceptCallWithNoProps";
|
7
|
+
export function shouldNotAcceptSystemProps() {
|
8
|
+
// @ts-expect-error system props should not be accepted
|
9
|
+
return /*#__PURE__*/React.createElement(SideNav, {
|
10
|
+
backgroundColor: "aliceblue"
|
11
|
+
});
|
12
|
+
}
|
13
|
+
shouldNotAcceptSystemProps.displayName = "shouldNotAcceptSystemProps";
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import StateLabel from '../StateLabel';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(StateLabel, null);
|
5
|
+
}
|
6
|
+
shouldAcceptCallWithNoProps.displayName = "shouldAcceptCallWithNoProps";
|
7
|
+
export function shouldNotAcceptSystemProps() {
|
8
|
+
// @ts-expect-error system props should not be accepted
|
9
|
+
return /*#__PURE__*/React.createElement(StateLabel, {
|
10
|
+
backgroundColor: "bisque"
|
11
|
+
});
|
12
|
+
}
|
13
|
+
shouldNotAcceptSystemProps.displayName = "shouldNotAcceptSystemProps";
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { MoonIcon } from '@primer/octicons-react';
|
2
|
+
import React from 'react';
|
3
|
+
import StyledOcticon from '../StyledOcticon';
|
4
|
+
export function shouldAcceptCallWithNoProps() {
|
5
|
+
return /*#__PURE__*/React.createElement(StyledOcticon, {
|
6
|
+
icon: MoonIcon
|
7
|
+
});
|
8
|
+
}
|
9
|
+
shouldAcceptCallWithNoProps.displayName = "shouldAcceptCallWithNoProps";
|
10
|
+
export function shouldNotAcceptSystemProps() {
|
11
|
+
// @ts-expect-error system props should not be accepted
|
12
|
+
return /*#__PURE__*/React.createElement(StyledOcticon, {
|
13
|
+
backgroundColor: "wheat"
|
14
|
+
});
|
15
|
+
}
|
16
|
+
shouldNotAcceptSystemProps.displayName = "shouldNotAcceptSystemProps";
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import SubNav from '../SubNav';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SubNav, null), /*#__PURE__*/React.createElement(SubNav.Link, null), /*#__PURE__*/React.createElement(SubNav.Links, null));
|
5
|
+
}
|
6
|
+
export function shouldNotAcceptSystemProps() {
|
7
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SubNav, {
|
8
|
+
backgroundColor: "thistle"
|
9
|
+
}), /*#__PURE__*/React.createElement(SubNav.Link, {
|
10
|
+
backgroundColor: "thistle"
|
11
|
+
}), /*#__PURE__*/React.createElement(SubNav.Links, {
|
12
|
+
backgroundColor: "thistle"
|
13
|
+
}));
|
14
|
+
}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import TabNav from '../TabNav';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TabNav, null), /*#__PURE__*/React.createElement(TabNav.Link, null));
|
5
|
+
}
|
6
|
+
export function shouldNotAcceptSystemProps() {
|
7
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TabNav, {
|
8
|
+
backgroundColor: "maroon"
|
9
|
+
}), /*#__PURE__*/React.createElement(TabNav.Link, {
|
10
|
+
backgroundColor: "fuchsia"
|
11
|
+
}));
|
12
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import Timeline from '../Timeline';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Timeline, null), /*#__PURE__*/React.createElement(Timeline.Item, null), /*#__PURE__*/React.createElement(Timeline.Badge, null), /*#__PURE__*/React.createElement(Timeline.Body, null), /*#__PURE__*/React.createElement(Timeline.Break, null));
|
5
|
+
}
|
6
|
+
export function shouldNotAcceptSystemProps() {
|
7
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Timeline, {
|
8
|
+
backgroundColor: "red"
|
9
|
+
}), /*#__PURE__*/React.createElement(Timeline.Item, {
|
10
|
+
backgroundColor: "orange"
|
11
|
+
}), /*#__PURE__*/React.createElement(Timeline.Badge, {
|
12
|
+
backgroundColor: "yellow"
|
13
|
+
}), /*#__PURE__*/React.createElement(Timeline.Body, {
|
14
|
+
backgroundColor: "green"
|
15
|
+
}), /*#__PURE__*/React.createElement(Timeline.Break, {
|
16
|
+
backgroundColor: "blue"
|
17
|
+
}));
|
18
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import Tooltip from '../Tooltip';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(Tooltip, null);
|
5
|
+
}
|
6
|
+
shouldAcceptCallWithNoProps.displayName = "shouldAcceptCallWithNoProps";
|
7
|
+
export function shouldNotAcceptSystemProps() {
|
8
|
+
// @ts-expect-error system props should not be accepted
|
9
|
+
return /*#__PURE__*/React.createElement(Tooltip, {
|
10
|
+
backgroundColor: "thistle"
|
11
|
+
});
|
12
|
+
}
|
13
|
+
shouldNotAcceptSystemProps.displayName = "shouldNotAcceptSystemProps";
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import Truncate from '../Truncate';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(Truncate, {
|
5
|
+
title: "Hello"
|
6
|
+
});
|
7
|
+
}
|
8
|
+
shouldAcceptCallWithNoProps.displayName = "shouldAcceptCallWithNoProps";
|
9
|
+
export function shouldNotAcceptSystemProps() {
|
10
|
+
// @ts-expect-error system props should not be accepted
|
11
|
+
return /*#__PURE__*/React.createElement(Truncate, {
|
12
|
+
title: "Hello",
|
13
|
+
backgroundColor: "indigo"
|
14
|
+
});
|
15
|
+
}
|
16
|
+
shouldNotAcceptSystemProps.displayName = "shouldNotAcceptSystemProps";
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import UnderlineNav from '../UnderlineNav';
|
3
|
+
export function shouldAcceptCallWithNoProps() {
|
4
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(UnderlineNav, null), /*#__PURE__*/React.createElement(UnderlineNav.Link, null));
|
5
|
+
}
|
6
|
+
export function shouldNotAcceptSystemProps() {
|
7
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(UnderlineNav, {
|
8
|
+
backgroundColor: "snow"
|
9
|
+
}), /*#__PURE__*/React.createElement(UnderlineNav.Link, {
|
10
|
+
backgroundColor: "springgreen"
|
11
|
+
}));
|
12
|
+
}
|
@@ -205,11 +205,11 @@ export function GroupsStory() {
|
|
205
205
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("h1", null, "Groups"), /*#__PURE__*/React.createElement(ErsatzOverlay, null, /*#__PURE__*/React.createElement(ActionList, {
|
206
206
|
selectionVariant: "multiple",
|
207
207
|
showDividers: true,
|
208
|
-
role: "listbox",
|
209
208
|
"aria-label": "Select reviewers"
|
210
209
|
}, /*#__PURE__*/React.createElement(ActionList.Group, {
|
211
210
|
title: "Suggestions",
|
212
|
-
variant: "filled"
|
211
|
+
variant: "filled",
|
212
|
+
role: "listbox"
|
213
213
|
}, users.slice(0, 2).map(user => /*#__PURE__*/React.createElement(ActionList.Item, {
|
214
214
|
key: user.login,
|
215
215
|
role: "option",
|
@@ -221,7 +221,8 @@ export function GroupsStory() {
|
|
221
221
|
variant: "block"
|
222
222
|
}, "Recently edited these files")))), /*#__PURE__*/React.createElement(ActionList.Group, {
|
223
223
|
title: "Everyone",
|
224
|
-
variant: "filled"
|
224
|
+
variant: "filled",
|
225
|
+
role: "listbox"
|
225
226
|
}, users.slice(2).map(user => /*#__PURE__*/React.createElement(ActionList.Item, {
|
226
227
|
role: "option",
|
227
228
|
key: user.login,
|
@@ -64,9 +64,7 @@ export function SimpleListStory() {
|
|
64
64
|
onAction: onAction,
|
65
65
|
anchorContent: "Menu",
|
66
66
|
overlayProps: {
|
67
|
-
'data-test-id': 'some_test_id'
|
68
|
-
onMouseDown: e => // eslint-disable-next-line no-console
|
69
|
-
console.log('onMouseDown in the internal Overlay can be useful for controlling event interactions', e)
|
67
|
+
'data-test-id': 'some_test_id'
|
70
68
|
},
|
71
69
|
items: [{
|
72
70
|
text: 'New file',
|
@@ -46,17 +46,25 @@ export const ShorthandHook = () => {
|
|
46
46
|
flexDirection: "column",
|
47
47
|
alignItems: "flex-start"
|
48
48
|
}, /*#__PURE__*/React.createElement(Button, {
|
49
|
-
|
50
|
-
|
49
|
+
onClick: onButtonClick,
|
50
|
+
sx: {
|
51
|
+
mb: 2
|
52
|
+
}
|
51
53
|
}, "Turn me green!"), /*#__PURE__*/React.createElement(Button, {
|
52
|
-
|
53
|
-
|
54
|
+
onClick: onButtonClick,
|
55
|
+
sx: {
|
56
|
+
mb: 2
|
57
|
+
}
|
54
58
|
}, "Turn me green!"), /*#__PURE__*/React.createElement(Button, {
|
55
|
-
|
56
|
-
|
59
|
+
onClick: onButtonClick,
|
60
|
+
sx: {
|
61
|
+
mb: 2
|
62
|
+
}
|
57
63
|
}, "Turn me green!"), /*#__PURE__*/React.createElement(Button, {
|
58
|
-
|
59
|
-
|
64
|
+
onClick: onButtonClick,
|
65
|
+
sx: {
|
66
|
+
mb: 2
|
67
|
+
}
|
60
68
|
}, "Turn me green!"));
|
61
69
|
};
|
62
70
|
ShorthandHook.displayName = "ShorthandHook";
|
@@ -154,7 +154,9 @@ function CustomBody({
|
|
154
154
|
children
|
155
155
|
}) {
|
156
156
|
return /*#__PURE__*/React.createElement(Dialog.Body, {
|
157
|
-
|
157
|
+
sx: {
|
158
|
+
bg: 'danger.subtle'
|
159
|
+
}
|
158
160
|
}, children);
|
159
161
|
}
|
160
162
|
|
@@ -164,7 +166,9 @@ function CustomFooter({
|
|
164
166
|
footerButtons
|
165
167
|
}) {
|
166
168
|
return /*#__PURE__*/React.createElement(Dialog.Footer, {
|
167
|
-
|
169
|
+
sx: {
|
170
|
+
bg: 'attention.subtle'
|
171
|
+
}
|
168
172
|
}, footerButtons ? /*#__PURE__*/React.createElement(Dialog.Buttons, {
|
169
173
|
buttons: footerButtons
|
170
174
|
}) : null);
|
@@ -123,7 +123,9 @@ export const CustomInitialFocus = () => {
|
|
123
123
|
flexDirection: "column",
|
124
124
|
alignItems: "flex-start"
|
125
125
|
}, /*#__PURE__*/React.createElement(Flash, {
|
126
|
-
|
126
|
+
sx: {
|
127
|
+
mb: 3
|
128
|
+
}
|
127
129
|
}, "This story is the same as the `Focus Trap` story, except, when the trap zone is activated, the \u201CElderberry\u201D button will receive the initial focus (if the trap zone container does not already have focus)."), /*#__PURE__*/React.createElement(MarginButton, null, "Apple"), /*#__PURE__*/React.createElement(MarginButton, null, "Banana"), /*#__PURE__*/React.createElement(MarginButton, null, "Cantaloupe"), /*#__PURE__*/React.createElement(Box, {
|
128
130
|
borderColor: "gray.5",
|
129
131
|
ref: containerRef,
|
@@ -238,7 +240,9 @@ export const MultipleFocusTraps = () => {
|
|
238
240
|
flexDirection: "column",
|
239
241
|
alignItems: "flex-start"
|
240
242
|
}, /*#__PURE__*/React.createElement(Flash, {
|
241
|
-
|
243
|
+
sx: {
|
244
|
+
mb: 3
|
245
|
+
}
|
242
246
|
}, "This story demonstrates the global nature of focus traps. When a focus trap is enabled, if there is already an active focus trap, it becomes suspended and pushed onto a stack. Once the newly-active focus trap is disabled, the most recently-suspended trap will reactivate. Suspended focus traps can be disabled, causing them to be removed from the stack of suspended traps."), /*#__PURE__*/React.createElement(Box, {
|
243
247
|
p: 2,
|
244
248
|
mb: 3,
|
@@ -51,8 +51,10 @@ export const BasicFocusZone = () => {
|
|
51
51
|
right: 5,
|
52
52
|
top: 2
|
53
53
|
}, "Last key pressed: ", lastKey), /*#__PURE__*/React.createElement(ToggleButton, {
|
54
|
-
|
55
|
-
|
54
|
+
onClick: toggleFz,
|
55
|
+
sx: {
|
56
|
+
mb: 3
|
57
|
+
}
|
56
58
|
}, fzEnabled ? 'Disable' : 'Enable', " Focus Zone"), /*#__PURE__*/React.createElement(MarginButton, null, "Apple"), /*#__PURE__*/React.createElement(MarginButton, null, "Banana"), /*#__PURE__*/React.createElement(MarginButton, null, "Cantaloupe"), /*#__PURE__*/React.createElement(Box, {
|
57
59
|
borderColor: "gray.5",
|
58
60
|
ref: containerRef,
|
@@ -334,7 +336,9 @@ export const SpecialSituations = () => {
|
|
334
336
|
alignItems: "flex-start",
|
335
337
|
onKeyDownCapture: reportKey
|
336
338
|
}, /*#__PURE__*/React.createElement(Flash, {
|
337
|
-
|
339
|
+
sx: {
|
340
|
+
mb: 3
|
341
|
+
}
|
338
342
|
}, "This story is very esoteric! It only exists to show some of the nuance of the arrow key focus behavior in different situations. Focus treatment within your component should be evaluated for your particular UX using the ", /*#__PURE__*/React.createElement("a", {
|
339
343
|
href: "https://www.w3.org/TR/wai-aria-practices-1.1/#keyboard"
|
340
344
|
}, "ARIA guidelines"), "."), /*#__PURE__*/React.createElement(Box, {
|
@@ -417,7 +421,9 @@ export const ChangingSubtree = () => {
|
|
417
421
|
alignItems: "flex-start",
|
418
422
|
onKeyDownCapture: reportKey
|
419
423
|
}, /*#__PURE__*/React.createElement(Flash, {
|
420
|
-
|
424
|
+
sx: {
|
425
|
+
mb: 3
|
426
|
+
}
|
421
427
|
}, "This story demonstrates that focusZone is consistent even when the container\u2019s subtree changes."), /*#__PURE__*/React.createElement(Box, {
|
422
428
|
position: "absolute",
|
423
429
|
right: 5,
|
@@ -523,7 +529,9 @@ export const ActiveDescendant = () => {
|
|
523
529
|
alignItems: "flex-start",
|
524
530
|
onKeyDownCapture: reportKey
|
525
531
|
}, /*#__PURE__*/React.createElement(Flash, {
|
526
|
-
|
532
|
+
sx: {
|
533
|
+
mb: 3
|
534
|
+
}
|
527
535
|
}, "This story demonstrates using the `aria-activedescendant` pattern for managing both a focused element and an active element. Below, you can focus the input box then use the up/down arrow keys to change the active descendant (dark blue outline)."), /*#__PURE__*/React.createElement(Box, {
|
528
536
|
position: "absolute",
|
529
537
|
right: 5,
|
package/package-lock.json
CHANGED
@@ -79,7 +79,7 @@
|
|
79
79
|
"eslint-plugin-jsx-a11y": "6.4.1",
|
80
80
|
"eslint-plugin-mdx": "1.15.1",
|
81
81
|
"eslint-plugin-prettier": "3.4.0",
|
82
|
-
"eslint-plugin-primer-react": "0.
|
82
|
+
"eslint-plugin-primer-react": "0.7.0",
|
83
83
|
"eslint-plugin-react": "7.24.0",
|
84
84
|
"eslint-plugin-react-hooks": "4.2.0",
|
85
85
|
"jest": "27.0.4",
|
@@ -18504,9 +18504,9 @@
|
|
18504
18504
|
}
|
18505
18505
|
},
|
18506
18506
|
"node_modules/eslint-plugin-primer-react": {
|
18507
|
-
"version": "0.
|
18508
|
-
"resolved": "https://registry.npmjs.org/eslint-plugin-primer-react/-/eslint-plugin-primer-react-0.
|
18509
|
-
"integrity": "sha512-
|
18507
|
+
"version": "0.7.0",
|
18508
|
+
"resolved": "https://registry.npmjs.org/eslint-plugin-primer-react/-/eslint-plugin-primer-react-0.7.0.tgz",
|
18509
|
+
"integrity": "sha512-ERzMiCVPBwfG57xpSVjMuPg093GB76xtDLOiHtnYcME+40yOSKsI4lor9QnN7OjnEMj8AHgns4ixpBN8iK23nA==",
|
18510
18510
|
"dev": true,
|
18511
18511
|
"dependencies": {
|
18512
18512
|
"@styled-system/props": "^5.1.5",
|
@@ -51952,9 +51952,9 @@
|
|
51952
51952
|
}
|
51953
51953
|
},
|
51954
51954
|
"eslint-plugin-primer-react": {
|
51955
|
-
"version": "0.
|
51956
|
-
"resolved": "https://registry.npmjs.org/eslint-plugin-primer-react/-/eslint-plugin-primer-react-0.
|
51957
|
-
"integrity": "sha512-
|
51955
|
+
"version": "0.7.0",
|
51956
|
+
"resolved": "https://registry.npmjs.org/eslint-plugin-primer-react/-/eslint-plugin-primer-react-0.7.0.tgz",
|
51957
|
+
"integrity": "sha512-ERzMiCVPBwfG57xpSVjMuPg093GB76xtDLOiHtnYcME+40yOSKsI4lor9QnN7OjnEMj8AHgns4ixpBN8iK23nA==",
|
51958
51958
|
"dev": true,
|
51959
51959
|
"requires": {
|
51960
51960
|
"@styled-system/props": "^5.1.5",
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@primer/components",
|
3
|
-
"version": "
|
3
|
+
"version": "32.0.0-rc.7200a6a6",
|
4
4
|
"description": "Primer react components",
|
5
5
|
"main": "lib/index.js",
|
6
6
|
"module": "lib-esm/index.js",
|
@@ -114,7 +114,7 @@
|
|
114
114
|
"eslint-plugin-jsx-a11y": "6.4.1",
|
115
115
|
"eslint-plugin-mdx": "1.15.1",
|
116
116
|
"eslint-plugin-prettier": "3.4.0",
|
117
|
-
"eslint-plugin-primer-react": "0.
|
117
|
+
"eslint-plugin-primer-react": "0.7.0",
|
118
118
|
"eslint-plugin-react": "7.24.0",
|
119
119
|
"eslint-plugin-react-hooks": "4.2.0",
|
120
120
|
"jest": "27.0.4",
|
@@ -1,18 +1,51 @@
|
|
1
1
|
import React from 'react'
|
2
|
+
import {useSSRSafeId} from '@react-aria/ssr'
|
2
3
|
import Box from '../Box'
|
3
4
|
import {SxProp} from '../sx'
|
4
|
-
import {
|
5
|
-
import {
|
5
|
+
import {ListContext, ListProps} from './List'
|
6
|
+
import {AriaRole} from '../utils/types'
|
6
7
|
|
7
|
-
export type GroupProps =
|
8
|
-
|
8
|
+
export type GroupProps = {
|
9
|
+
/**
|
10
|
+
* Style variations. Usage is discretionary.
|
11
|
+
*
|
12
|
+
* - `"filled"` - Superimposed on a background, offset from nearby content
|
13
|
+
* - `"subtle"` - Relatively less offset from nearby content
|
14
|
+
*/
|
15
|
+
variant?: 'subtle' | 'filled'
|
16
|
+
/**
|
17
|
+
* Primary text which names a `Group`.
|
18
|
+
*/
|
19
|
+
title?: string
|
20
|
+
/**
|
21
|
+
* Secondary text which provides additional information about a `Group`.
|
22
|
+
*/
|
23
|
+
auxiliaryText?: string
|
24
|
+
/**
|
25
|
+
* The ARIA role describing the function of the list inside `Group` component. `listbox` or `menu` are a common values.
|
26
|
+
*/
|
27
|
+
role?: AriaRole
|
28
|
+
} & SxProp & {
|
29
|
+
/**
|
30
|
+
* Whether multiple Items or a single Item can be selected in the Group. Overrides value on ActionList root.
|
31
|
+
*/
|
9
32
|
selectionVariant?: ListProps['selectionVariant'] | false
|
10
33
|
}
|
11
34
|
|
12
35
|
type ContextProps = Pick<GroupProps, 'selectionVariant'>
|
13
36
|
export const GroupContext = React.createContext<ContextProps>({})
|
14
37
|
|
15
|
-
export const Group: React.FC<GroupProps> = ({
|
38
|
+
export const Group: React.FC<GroupProps> = ({
|
39
|
+
title,
|
40
|
+
variant = 'subtle',
|
41
|
+
auxiliaryText,
|
42
|
+
selectionVariant,
|
43
|
+
role,
|
44
|
+
sx = {},
|
45
|
+
...props
|
46
|
+
}) => {
|
47
|
+
const labelId = useSSRSafeId()
|
48
|
+
|
16
49
|
return (
|
17
50
|
<Box
|
18
51
|
as="li"
|
@@ -23,12 +56,48 @@ export const Group: React.FC<GroupProps> = ({title, variant, auxiliaryText, sele
|
|
23
56
|
}}
|
24
57
|
{...props}
|
25
58
|
>
|
26
|
-
{title && <Header title={title} variant={variant} auxiliaryText={auxiliaryText} />}
|
59
|
+
{title && <Header title={title} variant={variant} auxiliaryText={auxiliaryText} labelId={labelId} />}
|
27
60
|
<GroupContext.Provider value={{selectionVariant}}>
|
28
|
-
<Box as="ul" sx={{paddingInlineStart: 0}}>
|
61
|
+
<Box as="ul" sx={{paddingInlineStart: 0}} aria-labelledby={title ? labelId : undefined} role={role}>
|
29
62
|
{props.children}
|
30
63
|
</Box>
|
31
64
|
</GroupContext.Provider>
|
32
65
|
</Box>
|
33
66
|
)
|
34
67
|
}
|
68
|
+
|
69
|
+
export type HeaderProps = Pick<GroupProps, 'variant' | 'title' | 'auxiliaryText'> & {
|
70
|
+
labelId: string
|
71
|
+
}
|
72
|
+
|
73
|
+
/**
|
74
|
+
* Displays the name and description of a `Group`.
|
75
|
+
*
|
76
|
+
* For visual presentation only. It's hidden from screen readers.
|
77
|
+
*/
|
78
|
+
const Header: React.FC<HeaderProps> = ({variant, title, auxiliaryText, labelId, ...props}) => {
|
79
|
+
const {variant: listVariant} = React.useContext(ListContext)
|
80
|
+
|
81
|
+
const styles = {
|
82
|
+
paddingY: '6px',
|
83
|
+
paddingX: listVariant === 'full' ? 2 : 3,
|
84
|
+
fontSize: 0,
|
85
|
+
fontWeight: 'bold',
|
86
|
+
color: 'fg.muted',
|
87
|
+
...(variant === 'filled' && {
|
88
|
+
backgroundColor: 'canvas.subtle',
|
89
|
+
marginX: 0,
|
90
|
+
marginBottom: 2,
|
91
|
+
borderTop: '1px solid',
|
92
|
+
borderBottom: '1px solid',
|
93
|
+
borderColor: 'neutral.muted'
|
94
|
+
})
|
95
|
+
}
|
96
|
+
|
97
|
+
return (
|
98
|
+
<Box sx={styles} role="presentation" aria-hidden="true" {...props}>
|
99
|
+
<span id={labelId}>{title}</span>
|
100
|
+
{auxiliaryText && <span>{auxiliaryText}</span>}
|
101
|
+
</Box>
|
102
|
+
)
|
103
|
+
}
|
package/src/ActionList2/List.tsx
CHANGED
@@ -23,7 +23,7 @@ export type ListProps = {
|
|
23
23
|
role?: AriaRole
|
24
24
|
} & SxProp
|
25
25
|
|
26
|
-
type ContextProps =
|
26
|
+
type ContextProps = Pick<ListProps, 'variant' | 'selectionVariant' | 'showDividers'>
|
27
27
|
export const ListContext = React.createContext<ContextProps>({})
|
28
28
|
|
29
29
|
const ListBox = styled.ul<SxProp>(sx)
|