@patternfly/react-core 6.3.0-prerelease.3 → 6.3.0-prerelease.31
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/CHANGELOG.md +155 -0
- package/CONTRIBUTING.md +3 -5
- package/components/package.json +1 -1
- package/deprecated/package.json +1 -1
- package/dist/dynamic/components/AboutModal/package.json +1 -1
- package/dist/dynamic/components/Accordion/package.json +1 -1
- package/dist/dynamic/components/ActionList/package.json +1 -1
- package/dist/dynamic/components/Alert/package.json +1 -1
- package/dist/dynamic/components/Avatar/package.json +1 -1
- package/dist/dynamic/components/BackToTop/package.json +1 -1
- package/dist/dynamic/components/Backdrop/package.json +1 -1
- package/dist/dynamic/components/BackgroundImage/package.json +1 -1
- package/dist/dynamic/components/Badge/package.json +1 -1
- package/dist/dynamic/components/Banner/package.json +1 -1
- package/dist/dynamic/components/Brand/package.json +1 -1
- package/dist/dynamic/components/Breadcrumb/package.json +1 -1
- package/dist/dynamic/components/Button/package.json +1 -1
- package/dist/dynamic/components/CalendarMonth/package.json +1 -1
- package/dist/dynamic/components/Card/package.json +1 -1
- package/dist/dynamic/components/Checkbox/package.json +1 -1
- package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
- package/dist/dynamic/components/CodeBlock/package.json +1 -1
- package/dist/dynamic/components/Content/package.json +1 -1
- package/dist/dynamic/components/DataList/package.json +1 -1
- package/dist/dynamic/components/DatePicker/package.json +1 -1
- package/dist/dynamic/components/DescriptionList/package.json +1 -1
- package/dist/dynamic/components/Divider/package.json +1 -1
- package/dist/dynamic/components/Drawer/package.json +1 -1
- package/dist/dynamic/components/Dropdown/package.json +1 -1
- package/dist/dynamic/components/DualListSelector/package.json +1 -1
- package/dist/dynamic/components/EmptyState/package.json +1 -1
- package/dist/dynamic/components/ExpandableSection/package.json +1 -1
- package/dist/dynamic/components/FileUpload/package.json +1 -1
- package/dist/dynamic/components/Form/package.json +1 -1
- package/dist/dynamic/components/FormSelect/package.json +1 -1
- package/dist/dynamic/components/HelperText/package.json +1 -1
- package/dist/dynamic/components/Hint/package.json +1 -1
- package/dist/dynamic/components/Icon/package.json +1 -1
- package/dist/dynamic/components/InputGroup/package.json +1 -1
- package/dist/dynamic/components/JumpLinks/package.json +1 -1
- package/dist/dynamic/components/Label/package.json +1 -1
- package/dist/dynamic/components/List/package.json +1 -1
- package/dist/dynamic/components/LoginPage/package.json +1 -1
- package/dist/dynamic/components/Masthead/package.json +1 -1
- package/dist/dynamic/components/Menu/package.json +1 -1
- package/dist/dynamic/components/MenuToggle/package.json +1 -1
- package/dist/dynamic/components/Modal/package.json +1 -1
- package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
- package/dist/dynamic/components/Nav/package.json +1 -1
- package/dist/dynamic/components/NotificationBadge/package.json +1 -1
- package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
- package/dist/dynamic/components/NumberInput/package.json +1 -1
- package/dist/dynamic/components/OverflowMenu/package.json +1 -1
- package/dist/dynamic/components/Page/package.json +1 -1
- package/dist/dynamic/components/Pagination/package.json +1 -1
- package/dist/dynamic/components/Panel/package.json +1 -1
- package/dist/dynamic/components/Popover/package.json +1 -1
- package/dist/dynamic/components/Progress/package.json +1 -1
- package/dist/dynamic/components/ProgressStepper/package.json +1 -1
- package/dist/dynamic/components/Radio/package.json +1 -1
- package/dist/dynamic/components/SearchInput/package.json +1 -1
- package/dist/dynamic/components/Select/package.json +1 -1
- package/dist/dynamic/components/Sidebar/package.json +1 -1
- package/dist/dynamic/components/SimpleList/package.json +1 -1
- package/dist/dynamic/components/Skeleton/package.json +1 -1
- package/dist/dynamic/components/SkipToContent/package.json +1 -1
- package/dist/dynamic/components/Slider/package.json +1 -1
- package/dist/dynamic/components/Spinner/package.json +1 -1
- package/dist/dynamic/components/Switch/package.json +1 -1
- package/dist/dynamic/components/Tabs/package.json +1 -1
- package/dist/dynamic/components/TextArea/package.json +1 -1
- package/dist/dynamic/components/TextInput/package.json +1 -1
- package/dist/dynamic/components/TextInputGroup/package.json +1 -1
- package/dist/dynamic/components/TimePicker/package.json +1 -1
- package/dist/dynamic/components/Timestamp/package.json +1 -1
- package/dist/dynamic/components/Title/package.json +1 -1
- package/dist/dynamic/components/ToggleGroup/package.json +1 -1
- package/dist/dynamic/components/Toolbar/package.json +1 -1
- package/dist/dynamic/components/Tooltip/package.json +1 -1
- package/dist/dynamic/components/TreeView/package.json +1 -1
- package/dist/dynamic/components/Truncate/package.json +1 -1
- package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
- package/dist/dynamic/components/Wizard/package.json +1 -1
- package/dist/dynamic/deprecated/components/Chip/package.json +1 -1
- package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
- package/dist/dynamic/deprecated/components/DualListSelector/package.json +1 -1
- package/dist/dynamic/deprecated/components/Modal/package.json +1 -1
- package/dist/dynamic/deprecated/components/Tile/package.json +1 -1
- package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
- package/dist/dynamic/deprecated/components/package.json +1 -1
- package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
- package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
- package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
- package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
- package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
- package/dist/dynamic/helpers/constants/package.json +1 -1
- package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
- package/dist/dynamic/helpers/fileUtils/package.json +1 -1
- package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
- package/dist/dynamic/helpers/package.json +1 -1
- package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
- package/dist/dynamic/helpers/typeUtils/package.json +1 -1
- package/dist/dynamic/helpers/useInterval/package.json +1 -1
- package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
- package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
- package/dist/dynamic/helpers/util/package.json +1 -1
- package/dist/dynamic/layouts/Bullseye/package.json +1 -1
- package/dist/dynamic/layouts/Flex/package.json +1 -1
- package/dist/dynamic/layouts/Gallery/package.json +1 -1
- package/dist/dynamic/layouts/Grid/package.json +1 -1
- package/dist/dynamic/layouts/Level/package.json +1 -1
- package/dist/dynamic/layouts/Split/package.json +1 -1
- package/dist/dynamic/layouts/Stack/package.json +1 -1
- package/dist/dynamic/styles/package.json +1 -1
- package/dist/dynamic-modules.json +2 -0
- package/dist/esm/components/Alert/AlertGroupInline.d.ts.map +1 -1
- package/dist/esm/components/Alert/AlertGroupInline.js +7 -1
- package/dist/esm/components/Alert/AlertGroupInline.js.map +1 -1
- package/dist/esm/components/Button/Button.d.ts +12 -0
- package/dist/esm/components/Button/Button.d.ts.map +1 -1
- package/dist/esm/components/Button/Button.js +33 -3
- package/dist/esm/components/Button/Button.js.map +1 -1
- package/dist/esm/components/Button/hamburgerIcon.d.ts +2 -0
- package/dist/esm/components/Button/hamburgerIcon.d.ts.map +1 -0
- package/dist/esm/components/Button/hamburgerIcon.js +7 -0
- package/dist/esm/components/Button/hamburgerIcon.js.map +1 -0
- package/dist/esm/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopy.js +2 -2
- package/dist/esm/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.js +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.js.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelector.d.ts +5 -0
- package/dist/esm/components/DualListSelector/DualListSelector.d.ts.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelector.js +4 -3
- package/dist/esm/components/DualListSelector/DualListSelector.js.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorContext.d.ts +1 -0
- package/dist/esm/components/DualListSelector/DualListSelectorContext.d.ts.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorContext.js +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorContext.js.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.js +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.js.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorTree.d.ts.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorTree.js +4 -1
- package/dist/esm/components/DualListSelector/DualListSelectorTree.js.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.d.ts +5 -0
- package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.js +8 -4
- package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts +5 -1
- package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSection.js +6 -2
- package/dist/esm/components/ExpandableSection/ExpandableSection.js.map +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts +2 -0
- package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.js +4 -3
- package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.js.map +1 -1
- package/dist/esm/components/Form/FormFieldGroupExpandable.d.ts +5 -0
- package/dist/esm/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
- package/dist/esm/components/Form/FormFieldGroupExpandable.js +2 -2
- package/dist/esm/components/Form/FormFieldGroupExpandable.js.map +1 -1
- package/dist/esm/components/Form/FormGroupLabelHelp.js +2 -2
- package/dist/esm/components/Form/FormGroupLabelHelp.js.map +1 -1
- package/dist/esm/components/Form/InternalFormFieldGroup.d.ts +5 -0
- package/dist/esm/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
- package/dist/esm/components/Form/InternalFormFieldGroup.js +2 -2
- package/dist/esm/components/Form/InternalFormFieldGroup.js.map +1 -1
- package/dist/esm/components/Label/Label.js +57 -57
- package/dist/esm/components/Label/Label.js.map +1 -1
- package/dist/esm/components/Menu/Menu.js +3 -3
- package/dist/esm/components/Menu/Menu.js.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggle.d.ts +2 -0
- package/dist/esm/components/MenuToggle/MenuToggle.d.ts.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggle.js +4 -3
- package/dist/esm/components/MenuToggle/MenuToggle.js.map +1 -1
- package/dist/esm/components/Nav/NavExpandable.d.ts.map +1 -1
- package/dist/esm/components/Nav/NavExpandable.js +1 -1
- package/dist/esm/components/Nav/NavExpandable.js.map +1 -1
- package/dist/esm/components/Page/PageToggleButton.d.ts +4 -0
- package/dist/esm/components/Page/PageToggleButton.d.ts.map +1 -1
- package/dist/esm/components/Page/PageToggleButton.js +2 -2
- package/dist/esm/components/Page/PageToggleButton.js.map +1 -1
- package/dist/esm/components/Popover/Popover.d.ts.map +1 -1
- package/dist/esm/components/Popover/Popover.js +11 -1
- package/dist/esm/components/Popover/Popover.js.map +1 -1
- package/dist/esm/components/SearchInput/AdvancedSearchMenu.d.ts.map +1 -1
- package/dist/esm/components/SearchInput/AdvancedSearchMenu.js +13 -19
- package/dist/esm/components/SearchInput/AdvancedSearchMenu.js.map +1 -1
- package/dist/esm/components/SearchInput/SearchInput.d.ts +4 -0
- package/dist/esm/components/SearchInput/SearchInput.d.ts.map +1 -1
- package/dist/esm/components/SearchInput/SearchInput.js +37 -13
- package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
- package/dist/esm/components/Tabs/OverflowTab.d.ts +26 -0
- package/dist/esm/components/Tabs/OverflowTab.d.ts.map +1 -1
- package/dist/esm/components/Tabs/OverflowTab.js +2 -2
- package/dist/esm/components/Tabs/OverflowTab.js.map +1 -1
- package/dist/esm/components/Tabs/Tab.d.ts.map +1 -1
- package/dist/esm/components/Tabs/Tab.js +5 -2
- package/dist/esm/components/Tabs/Tab.js.map +1 -1
- package/dist/esm/components/Tabs/Tabs.d.ts +10 -0
- package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/esm/components/Tabs/Tabs.js +46 -12
- package/dist/esm/components/Tabs/Tabs.js.map +1 -1
- package/dist/esm/components/Tabs/TabsContext.d.ts +1 -0
- package/dist/esm/components/Tabs/TabsContext.d.ts.map +1 -1
- package/dist/esm/components/Tabs/TabsContext.js +1 -0
- package/dist/esm/components/Tabs/TabsContext.js.map +1 -1
- package/dist/esm/components/TreeView/TreeView.d.ts +5 -0
- package/dist/esm/components/TreeView/TreeView.d.ts.map +1 -1
- package/dist/esm/components/TreeView/TreeView.js +5 -5
- package/dist/esm/components/TreeView/TreeView.js.map +1 -1
- package/dist/esm/components/TreeView/TreeViewListItem.d.ts +5 -0
- package/dist/esm/components/TreeView/TreeViewListItem.d.ts.map +1 -1
- package/dist/esm/components/TreeView/TreeViewListItem.js +8 -4
- package/dist/esm/components/TreeView/TreeViewListItem.js.map +1 -1
- package/dist/esm/components/TreeView/TreeViewRoot.d.ts.map +1 -1
- package/dist/esm/components/TreeView/TreeViewRoot.js +2 -2
- package/dist/esm/components/TreeView/TreeViewRoot.js.map +1 -1
- package/dist/esm/components/Truncate/Truncate.d.ts +11 -8
- package/dist/esm/components/Truncate/Truncate.d.ts.map +1 -1
- package/dist/esm/components/Truncate/Truncate.js +22 -12
- package/dist/esm/components/Truncate/Truncate.js.map +1 -1
- package/dist/esm/demos/DashboardHeader.d.ts.map +1 -1
- package/dist/esm/demos/DashboardHeader.js +1 -2
- package/dist/esm/demos/DashboardHeader.js.map +1 -1
- package/dist/esm/demos/sampleData.d.ts.map +1 -1
- package/dist/esm/demos/sampleData.js +225 -226
- package/dist/esm/demos/sampleData.js.map +1 -1
- package/dist/esm/demos/sampleDataRTL.d.ts +7 -0
- package/dist/esm/demos/sampleDataRTL.d.ts.map +1 -0
- package/dist/esm/demos/sampleDataRTL.js +128 -0
- package/dist/esm/demos/sampleDataRTL.js.map +1 -0
- package/dist/esm/helpers/KeyboardHandler.js +3 -2
- package/dist/esm/helpers/KeyboardHandler.js.map +1 -1
- package/dist/esm/helpers/Popper/Popper.d.ts.map +1 -1
- package/dist/esm/helpers/Popper/Popper.js +1 -0
- package/dist/esm/helpers/Popper/Popper.js.map +1 -1
- package/dist/esm/helpers/util.d.ts +17 -0
- package/dist/esm/helpers/util.d.ts.map +1 -1
- package/dist/esm/helpers/util.js +36 -0
- package/dist/esm/helpers/util.js.map +1 -1
- package/dist/js/components/Alert/AlertGroupInline.d.ts.map +1 -1
- package/dist/js/components/Alert/AlertGroupInline.js +6 -0
- package/dist/js/components/Alert/AlertGroupInline.js.map +1 -1
- package/dist/js/components/Button/Button.d.ts +12 -0
- package/dist/js/components/Button/Button.d.ts.map +1 -1
- package/dist/js/components/Button/Button.js +33 -3
- package/dist/js/components/Button/Button.js.map +1 -1
- package/dist/js/components/Button/hamburgerIcon.d.ts +2 -0
- package/dist/js/components/Button/hamburgerIcon.d.ts.map +1 -0
- package/dist/js/components/Button/hamburgerIcon.js +11 -0
- package/dist/js/components/Button/hamburgerIcon.js.map +1 -0
- package/dist/js/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopy.js +2 -2
- package/dist/js/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.js +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.js.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelector.d.ts +5 -0
- package/dist/js/components/DualListSelector/DualListSelector.d.ts.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelector.js +4 -3
- package/dist/js/components/DualListSelector/DualListSelector.js.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorContext.d.ts +1 -0
- package/dist/js/components/DualListSelector/DualListSelectorContext.d.ts.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorContext.js +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorContext.js.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorListWrapper.js +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorListWrapper.js.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorTree.d.ts.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorTree.js +4 -1
- package/dist/js/components/DualListSelector/DualListSelectorTree.js.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorTreeItem.d.ts +5 -0
- package/dist/js/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorTreeItem.js +7 -3
- package/dist/js/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSection.d.ts +5 -1
- package/dist/js/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSection.js +6 -2
- package/dist/js/components/ExpandableSection/ExpandableSection.js.map +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts +2 -0
- package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSectionToggle.js +4 -3
- package/dist/js/components/ExpandableSection/ExpandableSectionToggle.js.map +1 -1
- package/dist/js/components/Form/FormFieldGroupExpandable.d.ts +5 -0
- package/dist/js/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
- package/dist/js/components/Form/FormFieldGroupExpandable.js +2 -2
- package/dist/js/components/Form/FormFieldGroupExpandable.js.map +1 -1
- package/dist/js/components/Form/FormGroupLabelHelp.js +2 -2
- package/dist/js/components/Form/FormGroupLabelHelp.js.map +1 -1
- package/dist/js/components/Form/InternalFormFieldGroup.d.ts +5 -0
- package/dist/js/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
- package/dist/js/components/Form/InternalFormFieldGroup.js +2 -2
- package/dist/js/components/Form/InternalFormFieldGroup.js.map +1 -1
- package/dist/js/components/Label/Label.js +57 -57
- package/dist/js/components/Label/Label.js.map +1 -1
- package/dist/js/components/Menu/Menu.js +3 -3
- package/dist/js/components/Menu/Menu.js.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggle.d.ts +2 -0
- package/dist/js/components/MenuToggle/MenuToggle.d.ts.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggle.js +4 -3
- package/dist/js/components/MenuToggle/MenuToggle.js.map +1 -1
- package/dist/js/components/Nav/NavExpandable.d.ts.map +1 -1
- package/dist/js/components/Nav/NavExpandable.js +1 -1
- package/dist/js/components/Nav/NavExpandable.js.map +1 -1
- package/dist/js/components/Page/PageToggleButton.d.ts +4 -0
- package/dist/js/components/Page/PageToggleButton.d.ts.map +1 -1
- package/dist/js/components/Page/PageToggleButton.js +2 -2
- package/dist/js/components/Page/PageToggleButton.js.map +1 -1
- package/dist/js/components/Popover/Popover.d.ts.map +1 -1
- package/dist/js/components/Popover/Popover.js +11 -1
- package/dist/js/components/Popover/Popover.js.map +1 -1
- package/dist/js/components/SearchInput/AdvancedSearchMenu.d.ts.map +1 -1
- package/dist/js/components/SearchInput/AdvancedSearchMenu.js +12 -18
- package/dist/js/components/SearchInput/AdvancedSearchMenu.js.map +1 -1
- package/dist/js/components/SearchInput/SearchInput.d.ts +4 -0
- package/dist/js/components/SearchInput/SearchInput.d.ts.map +1 -1
- package/dist/js/components/SearchInput/SearchInput.js +36 -12
- package/dist/js/components/SearchInput/SearchInput.js.map +1 -1
- package/dist/js/components/Tabs/OverflowTab.d.ts +26 -0
- package/dist/js/components/Tabs/OverflowTab.d.ts.map +1 -1
- package/dist/js/components/Tabs/OverflowTab.js +2 -2
- package/dist/js/components/Tabs/OverflowTab.js.map +1 -1
- package/dist/js/components/Tabs/Tab.d.ts.map +1 -1
- package/dist/js/components/Tabs/Tab.js +4 -1
- package/dist/js/components/Tabs/Tab.js.map +1 -1
- package/dist/js/components/Tabs/Tabs.d.ts +10 -0
- package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/js/components/Tabs/Tabs.js +45 -11
- package/dist/js/components/Tabs/Tabs.js.map +1 -1
- package/dist/js/components/Tabs/TabsContext.d.ts +1 -0
- package/dist/js/components/Tabs/TabsContext.d.ts.map +1 -1
- package/dist/js/components/Tabs/TabsContext.js +1 -0
- package/dist/js/components/Tabs/TabsContext.js.map +1 -1
- package/dist/js/components/TreeView/TreeView.d.ts +5 -0
- package/dist/js/components/TreeView/TreeView.d.ts.map +1 -1
- package/dist/js/components/TreeView/TreeView.js +5 -5
- package/dist/js/components/TreeView/TreeView.js.map +1 -1
- package/dist/js/components/TreeView/TreeViewListItem.d.ts +5 -0
- package/dist/js/components/TreeView/TreeViewListItem.d.ts.map +1 -1
- package/dist/js/components/TreeView/TreeViewListItem.js +7 -3
- package/dist/js/components/TreeView/TreeViewListItem.js.map +1 -1
- package/dist/js/components/TreeView/TreeViewRoot.d.ts.map +1 -1
- package/dist/js/components/TreeView/TreeViewRoot.js +2 -2
- package/dist/js/components/TreeView/TreeViewRoot.js.map +1 -1
- package/dist/js/components/Truncate/Truncate.d.ts +11 -8
- package/dist/js/components/Truncate/Truncate.d.ts.map +1 -1
- package/dist/js/components/Truncate/Truncate.js +21 -12
- package/dist/js/components/Truncate/Truncate.js.map +1 -1
- package/dist/js/demos/DashboardHeader.d.ts.map +1 -1
- package/dist/js/demos/DashboardHeader.js +1 -2
- package/dist/js/demos/DashboardHeader.js.map +1 -1
- package/dist/js/demos/sampleData.d.ts.map +1 -1
- package/dist/js/demos/sampleData.js +225 -226
- package/dist/js/demos/sampleData.js.map +1 -1
- package/dist/js/demos/sampleDataRTL.d.ts +7 -0
- package/dist/js/demos/sampleDataRTL.d.ts.map +1 -0
- package/dist/js/demos/sampleDataRTL.js +131 -0
- package/dist/js/demos/sampleDataRTL.js.map +1 -0
- package/dist/js/helpers/KeyboardHandler.js +3 -2
- package/dist/js/helpers/KeyboardHandler.js.map +1 -1
- package/dist/js/helpers/Popper/Popper.d.ts.map +1 -1
- package/dist/js/helpers/Popper/Popper.js +1 -0
- package/dist/js/helpers/Popper/Popper.js.map +1 -1
- package/dist/js/helpers/util.d.ts +17 -0
- package/dist/js/helpers/util.d.ts.map +1 -1
- package/dist/js/helpers/util.js +39 -1
- package/dist/js/helpers/util.js.map +1 -1
- package/dist/styles/assets/images/icon-help.hbs +3 -0
- package/dist/styles/assets/images/icon-outlined-star.hbs +3 -0
- package/dist/styles/assets/images/icon-star.hbs +3 -0
- package/dist/styles/base-no-reset.css +52 -11
- package/dist/styles/base.css +52 -11
- package/dist/umd/assets/{output-D4Wl9sq-.css → output-dJHe8mGm.css} +16992 -16250
- package/dist/umd/react-core.min.js +3 -3
- package/helpers/package.json +1 -1
- package/layouts/package.json +1 -1
- package/next/package.json +1 -1
- package/package.json +6 -6
- package/src/components/Alert/AlertGroupInline.tsx +13 -2
- package/src/components/Button/Button.tsx +78 -5
- package/src/components/Button/__tests__/Button.test.tsx +380 -74
- package/src/components/Button/__tests__/__snapshots__/Button.test.tsx.snap +1 -1
- package/src/components/Button/examples/Button.md +57 -14
- package/src/components/Button/examples/ButtonFavorite.tsx +18 -0
- package/src/components/Button/examples/ButtonHamburger.tsx +9 -0
- package/src/components/Button/examples/ButtonSettings.tsx +10 -0
- package/src/components/Button/hamburgerIcon.tsx +13 -0
- package/src/components/Card/examples/Card.md +1 -1
- package/src/components/Card/examples/CardSelectable.tsx +73 -60
- package/src/components/Card/examples/CardSingleSelectable.tsx +65 -48
- package/src/components/ClipboardCopy/ClipboardCopy.tsx +2 -1
- package/src/components/ClipboardCopy/ClipboardCopyToggle.tsx +1 -1
- package/src/components/ClipboardCopy/__tests__/ClipboardCopyToggle.test.tsx +7 -1
- package/src/components/ClipboardCopy/__tests__/__snapshots__/ClipboardCopyToggle.test.tsx.snap +0 -1
- package/src/components/DualListSelector/DualListSelector.tsx +18 -4
- package/src/components/DualListSelector/DualListSelectorContext.ts +2 -1
- package/src/components/DualListSelector/DualListSelectorListWrapper.tsx +8 -5
- package/src/components/DualListSelector/DualListSelectorTree.tsx +4 -0
- package/src/components/DualListSelector/DualListSelectorTreeItem.tsx +17 -2
- package/src/components/DualListSelector/__tests__/DualListSelector.test.tsx +32 -1
- package/src/components/DualListSelector/__tests__/DualListSelectorTreeItem.test.tsx +55 -0
- package/src/components/DualListSelector/examples/DualListSelectorTree.tsx +1 -1
- package/src/components/ExpandableSection/ExpandableSection.tsx +13 -1
- package/src/components/ExpandableSection/ExpandableSectionToggle.tsx +5 -1
- package/src/components/ExpandableSection/__tests__/ExpandableSection.test.tsx +85 -23
- package/src/components/ExpandableSection/__tests__/ExpandableSectionToggle.test.tsx +32 -0
- package/src/components/ExpandableSection/__tests__/__snapshots__/ExpandableSection.test.tsx.snap +1 -63
- package/src/components/ExpandableSection/examples/ExpandableSection.md +2 -0
- package/src/components/ExpandableSection/examples/ExpandableSectionDetached.tsx +1 -1
- package/src/components/Form/FormFieldGroupExpandable.tsx +7 -0
- package/src/components/Form/FormGroupLabelHelp.tsx +2 -2
- package/src/components/Form/InternalFormFieldGroup.tsx +19 -3
- package/src/components/Form/__tests__/FormFieldGroupExpandable.test.tsx +55 -0
- package/src/components/Form/examples/FormFieldGroups.tsx +7 -1
- package/src/components/Label/Label.tsx +63 -63
- package/src/components/LoginPage/examples/LoginPageBasic.tsx +1 -1
- package/src/components/LoginPage/examples/LoginPageLanguageSelect.tsx +1 -1
- package/src/components/LoginPage/examples/LoginPageShowHidePassword.tsx +1 -1
- package/src/components/Masthead/examples/MastheadBasic.tsx +1 -2
- package/src/components/Masthead/examples/MastheadBasicMixedContent.tsx +1 -2
- package/src/components/Masthead/examples/MastheadDisplayInline.tsx +1 -2
- package/src/components/Masthead/examples/MastheadDisplayStack.tsx +1 -2
- package/src/components/Masthead/examples/MastheadDisplayStackInlineResponsive.tsx +1 -2
- package/src/components/Masthead/examples/MastheadInsets.tsx +1 -2
- package/src/components/Masthead/examples/MastheadLogoCustomComponent.tsx +1 -2
- package/src/components/Menu/Menu.tsx +3 -3
- package/src/components/MenuToggle/MenuToggle.tsx +6 -1
- package/src/components/MenuToggle/__tests__/MenuToggle.test.tsx +59 -45
- package/src/components/MenuToggle/__tests__/__snapshots__/MenuToggle.test.tsx.snap +9 -9
- package/src/components/MenuToggle/examples/MenuToggle.md +14 -30
- package/src/components/MenuToggle/examples/MenuToggleCustomIcon.tsx +17 -0
- package/src/components/MenuToggle/examples/MenuToggleSettings.tsx +8 -0
- package/src/components/Nav/NavExpandable.tsx +6 -1
- package/src/components/Nav/__tests__/Generated/__snapshots__/NavExpandable.test.tsx.snap +1 -0
- package/src/components/Nav/__tests__/NavExpandable.test.tsx +15 -0
- package/src/components/Nav/__tests__/__snapshots__/Nav.test.tsx.snap +3 -0
- package/src/components/Page/PageToggleButton.tsx +9 -2
- package/src/components/Page/examples/Page.md +1 -1
- package/src/components/Page/examples/PageCenteredSection.tsx +5 -9
- package/src/components/Page/examples/PageGroupSection.tsx +11 -8
- package/src/components/Page/examples/PageHorizontalNav.tsx +9 -3
- package/src/components/Page/examples/PageMainSectionPadding.tsx +14 -9
- package/src/components/Page/examples/PageMainSectionVariations.tsx +8 -11
- package/src/components/Page/examples/PageMultipleSidebarBody.tsx +11 -8
- package/src/components/Page/examples/PageUncontrolledNav.tsx +10 -7
- package/src/components/Page/examples/PageVerticalNav.tsx +11 -8
- package/src/components/Page/examples/PageWithOrWithoutFill.tsx +10 -9
- package/src/components/Popover/Popover.tsx +13 -1
- package/src/components/SearchInput/AdvancedSearchMenu.tsx +15 -23
- package/src/components/SearchInput/SearchInput.tsx +111 -15
- package/src/components/SearchInput/__tests__/SearchInput.test.tsx +84 -0
- package/src/components/SearchInput/examples/SearchInput.md +11 -2
- package/src/components/SearchInput/examples/SearchInputWithExpandable.tsx +6 -1
- package/src/components/Select/examples/Select.md +3 -26
- package/src/components/Skeleton/examples/SkeletonText.tsx +0 -1
- package/src/components/Tabs/OverflowTab.tsx +29 -0
- package/src/components/Tabs/Tab.tsx +6 -2
- package/src/components/Tabs/Tabs.tsx +76 -11
- package/src/components/Tabs/TabsContext.ts +2 -0
- package/src/components/Tabs/__tests__/Tabs.test.tsx +65 -1
- package/src/components/Tabs/__tests__/__snapshots__/Tabs.test.tsx.snap +39 -26
- package/src/components/Tabs/examples/Tabs.md +1 -1
- package/src/components/Timestamp/examples/TimestampBasicFormats.tsx +1 -1
- package/src/components/Timestamp/examples/TimestampDefaultTooltip.tsx +1 -1
- package/src/components/TreeView/TreeView.tsx +9 -0
- package/src/components/TreeView/TreeViewListItem.tsx +18 -5
- package/src/components/TreeView/TreeViewRoot.tsx +4 -2
- package/src/components/TreeView/__tests__/TreeView.test.tsx +8 -1
- package/src/components/TreeView/__tests__/TreeViewList.test.tsx +39 -0
- package/src/components/TreeView/__tests__/TreeViewListItem.test.tsx +17 -3
- package/src/components/TreeView/__tests__/__snapshots__/TreeView.test.tsx.snap +3 -0
- package/src/components/TreeView/examples/TreeViewCompact.tsx +1 -1
- package/src/components/TreeView/examples/TreeViewCompactNoBackground.tsx +8 -1
- package/src/components/TreeView/examples/TreeViewGuides.tsx +1 -1
- package/src/components/TreeView/examples/TreeViewMultiselectable.tsx +1 -0
- package/src/components/TreeView/examples/TreeViewSelectionExpansion.tsx +1 -0
- package/src/components/TreeView/examples/TreeViewSingleSelectable.tsx +1 -0
- package/src/components/TreeView/examples/TreeViewWithActionItems.tsx +1 -0
- package/src/components/TreeView/examples/TreeViewWithBadges.tsx +1 -0
- package/src/components/TreeView/examples/TreeViewWithCheckboxes.tsx +9 -1
- package/src/components/TreeView/examples/TreeViewWithCustomBadges.tsx +1 -0
- package/src/components/TreeView/examples/TreeViewWithIconPerItem.tsx +1 -0
- package/src/components/TreeView/examples/TreeViewWithIcons.tsx +1 -0
- package/src/components/TreeView/examples/TreeViewWithMemoization.tsx +1 -0
- package/src/components/TreeView/examples/TreeViewWithSearch.tsx +1 -0
- package/src/components/Truncate/Truncate.tsx +48 -22
- package/src/components/Truncate/__tests__/Truncate.test.tsx +28 -2
- package/src/components/Truncate/__tests__/__snapshots__/Truncate.test.tsx.snap +2 -2
- package/src/components/Truncate/examples/Truncate.md +8 -0
- package/src/components/Truncate/examples/TruncateLinks.tsx +22 -0
- package/src/demos/Banner.md +6 -6
- package/src/demos/CardDemos.md +1 -1
- package/src/demos/CardView/examples/CardView.tsx +9 -4
- package/src/demos/DashboardHeader.tsx +2 -5
- package/src/demos/DataList/examples/DataListActionable.tsx +5 -3
- package/src/demos/DataList/examples/DataListBasic.tsx +2 -2
- package/src/demos/DataList/examples/DataListExpandableControlInToolbar.tsx +2 -2
- package/src/demos/DataList/examples/DataListStaticBottomPagination.tsx +4 -2
- package/src/demos/DescriptionList/examples/DescriptionListBasic.tsx +4 -4
- package/src/demos/DescriptionList/examples/DescriptionListInDrawer.tsx +5 -3
- package/src/demos/JumpLinks.md +5 -5
- package/src/demos/NotificationDrawer/examples/NotificationDrawerBasic.tsx +2 -5
- package/src/demos/NotificationDrawer/examples/NotificationDrawerGrouped.tsx +2 -5
- package/src/demos/RTL/RTL.md +1 -0
- package/src/demos/RTL/examples/PaginatedTable.tsx +18 -53
- package/src/demos/Tabs.md +6 -6
- package/src/demos/examples/AlertGroup/AlertGroupToastWithNotificationDrawer.tsx +6 -6
- package/src/demos/examples/BackToTop/BackToTopNameDemo.tsx +2 -2
- package/src/demos/examples/Card/CardAggregateStatus.tsx +2 -6
- package/src/demos/examples/Card/CardDetails.tsx +2 -3
- package/src/demos/examples/Card/CardEventsView.tsx +2 -3
- package/src/demos/examples/Card/CardLogView.tsx +2 -3
- package/src/demos/examples/Card/CardStatus.tsx +0 -1
- package/src/demos/examples/Card/CardUtilizationDemo3.tsx +0 -1
- package/src/demos/examples/Masthead/MastheadWithHorizontalNav.tsx +6 -4
- package/src/demos/examples/Masthead/MastheadWithUtilitiesAndUserDropdownMenu.tsx +5 -8
- package/src/demos/examples/Nav/NavDefault.tsx +3 -3
- package/src/demos/examples/Nav/NavDrilldown.tsx +1 -1
- package/src/demos/examples/Nav/NavExpandable.tsx +3 -3
- package/src/demos/examples/Nav/NavFlyout.tsx +12 -9
- package/src/demos/examples/Nav/NavGrouped.tsx +14 -6
- package/src/demos/examples/Nav/NavHorizontal.tsx +4 -4
- package/src/demos/examples/Nav/NavHorizontalWithSubnav.tsx +7 -10
- package/src/demos/examples/Nav/NavManual.tsx +6 -9
- package/src/demos/examples/Nav/NavWithSubnav.tsx +5 -5
- package/src/demos/examples/Page/PageContextSelector.tsx +3 -6
- package/src/demos/examples/Page/PageStickySectionBreadcrumb.tsx +2 -5
- package/src/demos/examples/Page/PageStickySectionGroup.tsx +2 -5
- package/src/demos/examples/Page/PageStickySectionGroupAlternate.tsx +2 -5
- package/src/demos/examples/Tabs/ModalTabs.tsx +3 -3
- package/src/demos/examples/Tabs/NestedTabs.tsx +2 -2
- package/src/demos/examples/Tabs/NestedUnindentedTabs.tsx +2 -2
- package/src/demos/examples/Tabs/TabsAndTable.tsx +3 -3
- package/src/demos/examples/Toolbar/ConsoleLogViewerToolbar.tsx +2 -3
- package/src/demos/examples/Wizard/InPageWithDrawer.tsx +1 -4
- package/src/demos/examples/Wizard/InPageWithDrawerInformationalStep.tsx +1 -4
- package/src/demos/sampleData.tsx +225 -227
- package/src/demos/sampleDataRTL.tsx +133 -0
- package/src/helpers/KeyboardHandler.tsx +2 -2
- package/src/helpers/Popper/Popper.tsx +1 -0
- package/src/helpers/util.ts +45 -0
- package/src/demos/RTL/examples/PaginatedTable.jsx +0 -504
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { render, screen } from '@testing-library/react';
|
|
2
|
+
import { FormFieldGroupExpandable } from '../FormFieldGroupExpandable';
|
|
3
|
+
import styles from '@patternfly/react-styles/css/components/Form/form';
|
|
4
|
+
|
|
5
|
+
test('Does not render children by default', () => {
|
|
6
|
+
render(<FormFieldGroupExpandable toggleAriaLabel="Toggle label">Child content</FormFieldGroupExpandable>);
|
|
7
|
+
|
|
8
|
+
expect(screen.queryByText('Child content')).not.toBeInTheDocument();
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
test('Renders children when isExpanded is true', () => {
|
|
12
|
+
render(
|
|
13
|
+
<FormFieldGroupExpandable isExpanded toggleAriaLabel="Toggle label">
|
|
14
|
+
Child content
|
|
15
|
+
</FormFieldGroupExpandable>
|
|
16
|
+
);
|
|
17
|
+
|
|
18
|
+
expect(screen.getByText('Child content')).toBeInTheDocument();
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
test('Renders children with inert attribute by default when hasAnimations is true', () => {
|
|
22
|
+
render(
|
|
23
|
+
<FormFieldGroupExpandable hasAnimations toggleAriaLabel="Toggle label">
|
|
24
|
+
Child content
|
|
25
|
+
</FormFieldGroupExpandable>
|
|
26
|
+
);
|
|
27
|
+
|
|
28
|
+
expect(screen.getByText('Child content')).toHaveAttribute('inert', '');
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
test('Does not render children with inert attribute when hasAnimations and isExpanded are true', () => {
|
|
32
|
+
render(
|
|
33
|
+
<FormFieldGroupExpandable hasAnimations isExpanded toggleAriaLabel="Toggle label">
|
|
34
|
+
Child content
|
|
35
|
+
</FormFieldGroupExpandable>
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
expect(screen.getByText('Child content')).not.toHaveAttribute('inert');
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
test(`Does not render with class ${styles.modifiers.expandable} by default`, () => {
|
|
42
|
+
render(<FormFieldGroupExpandable toggleAriaLabel="Toggle label">Child content</FormFieldGroupExpandable>);
|
|
43
|
+
|
|
44
|
+
expect(screen.getByRole('group')).not.toHaveClass(styles.modifiers.expandable);
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
test(`Renders with class ${styles.modifiers.expandable} when hasAnimations is true`, () => {
|
|
48
|
+
render(
|
|
49
|
+
<FormFieldGroupExpandable hasAnimations toggleAriaLabel="Toggle label">
|
|
50
|
+
Child content
|
|
51
|
+
</FormFieldGroupExpandable>
|
|
52
|
+
);
|
|
53
|
+
|
|
54
|
+
expect(screen.getByRole('group')).toHaveClass(styles.modifiers.expandable);
|
|
55
|
+
});
|
|
@@ -52,6 +52,7 @@ export const FormFieldGroups: React.FunctionComponent = () => {
|
|
|
52
52
|
<TextInput isRequired id="0-label2" name="0-label2" value={inputValues['0-label2']} onChange={handleChange} />
|
|
53
53
|
</FormGroup>
|
|
54
54
|
<FormFieldGroupExpandable
|
|
55
|
+
hasAnimations
|
|
55
56
|
isExpanded
|
|
56
57
|
toggleAriaLabel="Details"
|
|
57
58
|
header={
|
|
@@ -67,6 +68,7 @@ export const FormFieldGroups: React.FunctionComponent = () => {
|
|
|
67
68
|
}
|
|
68
69
|
>
|
|
69
70
|
<FormFieldGroupExpandable
|
|
71
|
+
hasAnimations
|
|
70
72
|
isExpanded
|
|
71
73
|
toggleAriaLabel="Details"
|
|
72
74
|
header={
|
|
@@ -97,6 +99,7 @@ export const FormFieldGroups: React.FunctionComponent = () => {
|
|
|
97
99
|
</FormGroup>
|
|
98
100
|
</FormFieldGroupExpandable>
|
|
99
101
|
<FormFieldGroupExpandable
|
|
102
|
+
hasAnimations
|
|
100
103
|
toggleAriaLabel="Details"
|
|
101
104
|
header={
|
|
102
105
|
<FormFieldGroupHeader
|
|
@@ -125,6 +128,7 @@ export const FormFieldGroups: React.FunctionComponent = () => {
|
|
|
125
128
|
</FormGroup>
|
|
126
129
|
</FormFieldGroupExpandable>
|
|
127
130
|
<FormFieldGroupExpandable
|
|
131
|
+
hasAnimations
|
|
128
132
|
toggleAriaLabel="Details"
|
|
129
133
|
header={
|
|
130
134
|
<FormFieldGroupHeader
|
|
@@ -173,6 +177,7 @@ export const FormFieldGroups: React.FunctionComponent = () => {
|
|
|
173
177
|
</FormGroup>
|
|
174
178
|
</FormFieldGroupExpandable>
|
|
175
179
|
<FormFieldGroupExpandable
|
|
180
|
+
hasAnimations
|
|
176
181
|
toggleAriaLabel="Details"
|
|
177
182
|
header={
|
|
178
183
|
<FormFieldGroupHeader
|
|
@@ -194,6 +199,7 @@ export const FormFieldGroups: React.FunctionComponent = () => {
|
|
|
194
199
|
</FormGroup>
|
|
195
200
|
</FormFieldGroupExpandable>
|
|
196
201
|
<FormFieldGroupExpandable
|
|
202
|
+
hasAnimations
|
|
197
203
|
isExpanded
|
|
198
204
|
toggleAriaLabel="Details"
|
|
199
205
|
header={
|
|
@@ -273,7 +279,7 @@ export const FormFieldGroups: React.FunctionComponent = () => {
|
|
|
273
279
|
header={
|
|
274
280
|
<FormFieldGroupHeader
|
|
275
281
|
titleText={{ text: 'Field group 4 (non-expandable)', id: 'field-group4-non-expandable-titleText-id' }}
|
|
276
|
-
titleDescription="Field group 4 description text."
|
|
282
|
+
titleDescription="Field group 4 description text fdgsdg."
|
|
277
283
|
actions={
|
|
278
284
|
<>
|
|
279
285
|
<Button variant="link">Delete all</Button> <Button variant="secondary">Add parameter</Button>
|
|
@@ -145,13 +145,75 @@ export const Label: React.FunctionComponent<LabelProps> = ({
|
|
|
145
145
|
}
|
|
146
146
|
|
|
147
147
|
useEffect(() => {
|
|
148
|
+
const onDocMouseDown = (event: MouseEvent) => {
|
|
149
|
+
if (
|
|
150
|
+
isEditableActive &&
|
|
151
|
+
editableInputRef &&
|
|
152
|
+
editableInputRef.current &&
|
|
153
|
+
!editableInputRef.current.contains(event.target as Node)
|
|
154
|
+
) {
|
|
155
|
+
if (editableInputRef.current.value) {
|
|
156
|
+
onEditComplete && onEditComplete(event, editableInputRef.current.value);
|
|
157
|
+
}
|
|
158
|
+
setIsEditableActive(false);
|
|
159
|
+
}
|
|
160
|
+
};
|
|
161
|
+
|
|
162
|
+
const onKeyDown = (event: KeyboardEvent) => {
|
|
163
|
+
const key = event.key;
|
|
164
|
+
if (
|
|
165
|
+
(!isEditableActive &&
|
|
166
|
+
(!editableButtonRef ||
|
|
167
|
+
!editableButtonRef.current ||
|
|
168
|
+
!editableButtonRef.current.contains(event.target as Node))) ||
|
|
169
|
+
(isEditableActive &&
|
|
170
|
+
(!editableInputRef || !editableInputRef.current || !editableInputRef.current.contains(event.target as Node)))
|
|
171
|
+
) {
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
if (isEditableActive && (key === 'Enter' || key === 'Tab')) {
|
|
175
|
+
event.preventDefault();
|
|
176
|
+
event.stopImmediatePropagation();
|
|
177
|
+
if (editableInputRef.current.value) {
|
|
178
|
+
onEditComplete && onEditComplete(event, editableInputRef.current.value);
|
|
179
|
+
}
|
|
180
|
+
setIsEditableActive(false);
|
|
181
|
+
editableButtonRef?.current?.focus();
|
|
182
|
+
}
|
|
183
|
+
if (isEditableActive && key === 'Escape') {
|
|
184
|
+
event.preventDefault();
|
|
185
|
+
event.stopImmediatePropagation();
|
|
186
|
+
// Reset div text to initial children prop - pre-edit
|
|
187
|
+
if (editableInputRef.current.value) {
|
|
188
|
+
editableInputRef.current.value = children as string;
|
|
189
|
+
onEditCancel && onEditCancel(event, children as string);
|
|
190
|
+
}
|
|
191
|
+
setIsEditableActive(false);
|
|
192
|
+
editableButtonRef?.current?.focus();
|
|
193
|
+
}
|
|
194
|
+
if (!isEditableActive && key === 'Enter') {
|
|
195
|
+
event.preventDefault();
|
|
196
|
+
event.stopImmediatePropagation();
|
|
197
|
+
setIsEditableActive(true);
|
|
198
|
+
|
|
199
|
+
// Set cursor position to end of text
|
|
200
|
+
const el = event.target as HTMLElement;
|
|
201
|
+
const range = document.createRange();
|
|
202
|
+
const sel = window.getSelection();
|
|
203
|
+
range.selectNodeContents(el);
|
|
204
|
+
range.collapse(false);
|
|
205
|
+
sel.removeAllRanges();
|
|
206
|
+
sel.addRange(range);
|
|
207
|
+
}
|
|
208
|
+
};
|
|
209
|
+
|
|
148
210
|
document.addEventListener('mousedown', onDocMouseDown);
|
|
149
211
|
document.addEventListener('keydown', onKeyDown);
|
|
150
212
|
return () => {
|
|
151
213
|
document.removeEventListener('mousedown', onDocMouseDown);
|
|
152
214
|
document.removeEventListener('keydown', onKeyDown);
|
|
153
215
|
};
|
|
154
|
-
});
|
|
216
|
+
}, [isEditableActive, editableInputRef, editableButtonRef, onEditComplete, onEditCancel, children]);
|
|
155
217
|
|
|
156
218
|
useEffect(() => {
|
|
157
219
|
if (onLabelClick && href) {
|
|
@@ -167,68 +229,6 @@ export const Label: React.FunctionComponent<LabelProps> = ({
|
|
|
167
229
|
}
|
|
168
230
|
}, [onLabelClick, href, isEditable]);
|
|
169
231
|
|
|
170
|
-
const onDocMouseDown = (event: MouseEvent) => {
|
|
171
|
-
if (
|
|
172
|
-
isEditableActive &&
|
|
173
|
-
editableInputRef &&
|
|
174
|
-
editableInputRef.current &&
|
|
175
|
-
!editableInputRef.current.contains(event.target as Node)
|
|
176
|
-
) {
|
|
177
|
-
if (editableInputRef.current.value) {
|
|
178
|
-
onEditComplete && onEditComplete(event, editableInputRef.current.value);
|
|
179
|
-
}
|
|
180
|
-
setIsEditableActive(false);
|
|
181
|
-
}
|
|
182
|
-
};
|
|
183
|
-
|
|
184
|
-
const onKeyDown = (event: KeyboardEvent) => {
|
|
185
|
-
const key = event.key;
|
|
186
|
-
if (
|
|
187
|
-
(!isEditableActive &&
|
|
188
|
-
(!editableButtonRef ||
|
|
189
|
-
!editableButtonRef.current ||
|
|
190
|
-
!editableButtonRef.current.contains(event.target as Node))) ||
|
|
191
|
-
(isEditableActive &&
|
|
192
|
-
(!editableInputRef || !editableInputRef.current || !editableInputRef.current.contains(event.target as Node)))
|
|
193
|
-
) {
|
|
194
|
-
return;
|
|
195
|
-
}
|
|
196
|
-
if (isEditableActive && (key === 'Enter' || key === 'Tab')) {
|
|
197
|
-
event.preventDefault();
|
|
198
|
-
event.stopImmediatePropagation();
|
|
199
|
-
if (editableInputRef.current.value) {
|
|
200
|
-
onEditComplete && onEditComplete(event, editableInputRef.current.value);
|
|
201
|
-
}
|
|
202
|
-
setIsEditableActive(false);
|
|
203
|
-
editableButtonRef?.current?.focus();
|
|
204
|
-
}
|
|
205
|
-
if (isEditableActive && key === 'Escape') {
|
|
206
|
-
event.preventDefault();
|
|
207
|
-
event.stopImmediatePropagation();
|
|
208
|
-
// Reset div text to initial children prop - pre-edit
|
|
209
|
-
if (editableInputRef.current.value) {
|
|
210
|
-
editableInputRef.current.value = children as string;
|
|
211
|
-
onEditCancel && onEditCancel(event, children as string);
|
|
212
|
-
}
|
|
213
|
-
setIsEditableActive(false);
|
|
214
|
-
editableButtonRef?.current?.focus();
|
|
215
|
-
}
|
|
216
|
-
if (!isEditableActive && key === 'Enter') {
|
|
217
|
-
event.preventDefault();
|
|
218
|
-
event.stopImmediatePropagation();
|
|
219
|
-
setIsEditableActive(true);
|
|
220
|
-
|
|
221
|
-
// Set cursor position to end of text
|
|
222
|
-
const el = event.target as HTMLElement;
|
|
223
|
-
const range = document.createRange();
|
|
224
|
-
const sel = window.getSelection();
|
|
225
|
-
range.selectNodeContents(el);
|
|
226
|
-
range.collapse(false);
|
|
227
|
-
sel.removeAllRanges();
|
|
228
|
-
sel.addRange(range);
|
|
229
|
-
}
|
|
230
|
-
};
|
|
231
|
-
|
|
232
232
|
const isClickableDisabled = (href || onLabelClick) && isDisabled;
|
|
233
233
|
|
|
234
234
|
const defaultCloseButton = (
|
|
@@ -116,7 +116,7 @@ export const SimpleLoginPage: React.FunctionComponent = () => {
|
|
|
116
116
|
footerListVariants={ListVariant.inline}
|
|
117
117
|
brandImgSrc={brandImg}
|
|
118
118
|
brandImgAlt="PatternFly logo"
|
|
119
|
-
backgroundImgSrc="/assets/images/
|
|
119
|
+
backgroundImgSrc="/assets/images/pf-background.svg"
|
|
120
120
|
footerListItems={listItem}
|
|
121
121
|
textContent="This is placeholder text only. Use this area to place any information or introductory message about your application that may be relevant to users."
|
|
122
122
|
loginTitle="Log in to your account"
|
|
@@ -189,7 +189,7 @@ export const LoginPageLanguageSelect: React.FunctionComponent = () => {
|
|
|
189
189
|
footerListVariants={ListVariant.inline}
|
|
190
190
|
brandImgSrc={brandImg}
|
|
191
191
|
brandImgAlt="PatternFly logo"
|
|
192
|
-
backgroundImgSrc="/assets/images/
|
|
192
|
+
backgroundImgSrc="/assets/images/pf-background.svg"
|
|
193
193
|
footerListItems={listItem}
|
|
194
194
|
textContent="This is placeholder text only. Use this area to place any information or introductory message about your application that may be relevant to users."
|
|
195
195
|
loginTitle="Log in to your account"
|
|
@@ -117,7 +117,7 @@ export const LoginPageHideShowPassword: React.FunctionComponent = () => {
|
|
|
117
117
|
footerListVariants={ListVariant.inline}
|
|
118
118
|
brandImgSrc={brandImg}
|
|
119
119
|
brandImgAlt="PatternFly logo"
|
|
120
|
-
backgroundImgSrc="/assets/images/
|
|
120
|
+
backgroundImgSrc="/assets/images/pf-background.svg"
|
|
121
121
|
footerListItems={listItem}
|
|
122
122
|
textContent="This is placeholder text only. Use this area to place any information or introductory message about your application that may be relevant to users."
|
|
123
123
|
loginTitle="Log in to your account"
|
|
@@ -7,13 +7,12 @@ import {
|
|
|
7
7
|
MastheadContent,
|
|
8
8
|
Button
|
|
9
9
|
} from '@patternfly/react-core';
|
|
10
|
-
import BarsIcon from '@patternfly/react-icons/dist/js/icons/bars-icon';
|
|
11
10
|
|
|
12
11
|
export const MastheadBasic: React.FunctionComponent = () => (
|
|
13
12
|
<Masthead id="basic-example">
|
|
14
13
|
<MastheadMain>
|
|
15
14
|
<MastheadToggle>
|
|
16
|
-
<Button variant="plain" onClick={() => {}} aria-label="Global navigation"
|
|
15
|
+
<Button variant="plain" isHamburger onClick={() => {}} aria-label="Global navigation" />
|
|
17
16
|
</MastheadToggle>
|
|
18
17
|
<MastheadBrand>
|
|
19
18
|
<MastheadLogo component="a">Logo</MastheadLogo>
|
|
@@ -9,13 +9,12 @@ import {
|
|
|
9
9
|
Flex,
|
|
10
10
|
FlexItem
|
|
11
11
|
} from '@patternfly/react-core';
|
|
12
|
-
import BarsIcon from '@patternfly/react-icons/dist/js/icons/bars-icon';
|
|
13
12
|
|
|
14
13
|
export const MastheadBasicMixedContent: React.FunctionComponent = () => (
|
|
15
14
|
<Masthead id="basic-mixed">
|
|
16
15
|
<MastheadMain>
|
|
17
16
|
<MastheadToggle>
|
|
18
|
-
<Button variant="plain" onClick={() => {}} aria-label="Global navigation"
|
|
17
|
+
<Button variant="plain" isHamburger onClick={() => {}} aria-label="Global navigation" />
|
|
19
18
|
</MastheadToggle>
|
|
20
19
|
<MastheadBrand>
|
|
21
20
|
<MastheadLogo component="a">Logo</MastheadLogo>
|
|
@@ -7,13 +7,12 @@ import {
|
|
|
7
7
|
MastheadContent,
|
|
8
8
|
Button
|
|
9
9
|
} from '@patternfly/react-core';
|
|
10
|
-
import BarsIcon from '@patternfly/react-icons/dist/js/icons/bars-icon';
|
|
11
10
|
|
|
12
11
|
export const MastheadDisplayInline: React.FunctionComponent = () => (
|
|
13
12
|
<Masthead id="inline-masthead" display={{ default: 'inline' }}>
|
|
14
13
|
<MastheadMain>
|
|
15
14
|
<MastheadToggle>
|
|
16
|
-
<Button variant="plain" onClick={() => {}} aria-label="Global navigation"
|
|
15
|
+
<Button variant="plain" isHamburger onClick={() => {}} aria-label="Global navigation" />
|
|
17
16
|
</MastheadToggle>
|
|
18
17
|
<MastheadBrand>
|
|
19
18
|
<MastheadLogo component="a">Logo</MastheadLogo>
|
|
@@ -7,13 +7,12 @@ import {
|
|
|
7
7
|
MastheadContent,
|
|
8
8
|
Button
|
|
9
9
|
} from '@patternfly/react-core';
|
|
10
|
-
import BarsIcon from '@patternfly/react-icons/dist/js/icons/bars-icon';
|
|
11
10
|
|
|
12
11
|
export const MastheadDisplayStack: React.FunctionComponent = () => (
|
|
13
12
|
<Masthead id="stack-masthead" display={{ default: 'stack' }}>
|
|
14
13
|
<MastheadMain>
|
|
15
14
|
<MastheadToggle>
|
|
16
|
-
<Button variant="plain" onClick={() => {}} aria-label="Global navigation"
|
|
15
|
+
<Button variant="plain" isHamburger onClick={() => {}} aria-label="Global navigation" />
|
|
17
16
|
</MastheadToggle>
|
|
18
17
|
<MastheadBrand>
|
|
19
18
|
<MastheadLogo component="a">Logo</MastheadLogo>
|
|
@@ -7,13 +7,12 @@ import {
|
|
|
7
7
|
MastheadContent,
|
|
8
8
|
Button
|
|
9
9
|
} from '@patternfly/react-core';
|
|
10
|
-
import BarsIcon from '@patternfly/react-icons/dist/js/icons/bars-icon';
|
|
11
10
|
|
|
12
11
|
export const MastheadDisplayStackInlineResponsive: React.FunctionComponent = () => (
|
|
13
12
|
<Masthead id="stack-inline-masthead" display={{ default: 'inline', lg: 'stack', '2xl': 'inline' }}>
|
|
14
13
|
<MastheadMain>
|
|
15
14
|
<MastheadToggle>
|
|
16
|
-
<Button variant="plain" onClick={() => {}} aria-label="Global navigation"
|
|
15
|
+
<Button variant="plain" isHamburger onClick={() => {}} aria-label="Global navigation" />
|
|
17
16
|
</MastheadToggle>
|
|
18
17
|
<MastheadBrand>
|
|
19
18
|
<MastheadLogo component="a">Logo</MastheadLogo>
|
|
@@ -7,13 +7,12 @@ import {
|
|
|
7
7
|
MastheadContent,
|
|
8
8
|
Button
|
|
9
9
|
} from '@patternfly/react-core';
|
|
10
|
-
import BarsIcon from '@patternfly/react-icons/dist/js/icons/bars-icon';
|
|
11
10
|
|
|
12
11
|
export const MastheadInsets: React.FunctionComponent = () => (
|
|
13
12
|
<Masthead id="inset-masthead" inset={{ default: 'insetSm' }}>
|
|
14
13
|
<MastheadMain>
|
|
15
14
|
<MastheadToggle>
|
|
16
|
-
<Button variant="plain" onClick={() => {}} aria-label="Global navigation"
|
|
15
|
+
<Button variant="plain" isHamburger onClick={() => {}} aria-label="Global navigation" />
|
|
17
16
|
</MastheadToggle>
|
|
18
17
|
<MastheadBrand>
|
|
19
18
|
<MastheadLogo component="a">Logo</MastheadLogo>
|
|
@@ -8,14 +8,13 @@ import {
|
|
|
8
8
|
Button,
|
|
9
9
|
Brand
|
|
10
10
|
} from '@patternfly/react-core';
|
|
11
|
-
import BarsIcon from '@patternfly/react-icons/dist/js/icons/bars-icon';
|
|
12
11
|
import pfIcon from '../../assets/PF-HorizontalLogo-Color.svg';
|
|
13
12
|
|
|
14
13
|
export const MastheadLogoCustomComponent: React.FunctionComponent = () => (
|
|
15
14
|
<Masthead id="icon-router-link">
|
|
16
15
|
<MastheadMain>
|
|
17
16
|
<MastheadToggle>
|
|
18
|
-
<Button variant="plain" onClick={() => {}} aria-label="Global navigation"
|
|
17
|
+
<Button variant="plain" isHamburger onClick={() => {}} aria-label="Global navigation" />
|
|
19
18
|
</MastheadToggle>
|
|
20
19
|
<MastheadBrand>
|
|
21
20
|
<MastheadLogo component={(props) => <a {...props} href="#" />}>
|
|
@@ -119,15 +119,15 @@ class MenuBase extends Component<MenuProps, MenuState> {
|
|
|
119
119
|
if (this.context) {
|
|
120
120
|
this.setState({ disableHover: this.context.disableHover });
|
|
121
121
|
}
|
|
122
|
-
if (canUseDOM && this.props.containsDrilldown) {
|
|
123
|
-
window.addEventListener('transitionend', this.
|
|
122
|
+
if (canUseDOM && this.props.containsDrilldown && this.props.isRootMenu) {
|
|
123
|
+
window.addEventListener('transitionend', this.handleDrilldownTransition);
|
|
124
124
|
}
|
|
125
125
|
|
|
126
126
|
this.allowTabFirstItem();
|
|
127
127
|
}
|
|
128
128
|
|
|
129
129
|
componentWillUnmount() {
|
|
130
|
-
if (canUseDOM && this.props.containsDrilldown) {
|
|
130
|
+
if (canUseDOM && this.props.containsDrilldown && this.props.isRootMenu) {
|
|
131
131
|
window.removeEventListener('transitionend', this.handleDrilldownTransition);
|
|
132
132
|
}
|
|
133
133
|
}
|
|
@@ -3,6 +3,7 @@ import styles from '@patternfly/react-styles/css/components/MenuToggle/menu-togg
|
|
|
3
3
|
import { css } from '@patternfly/react-styles';
|
|
4
4
|
import CaretDownIcon from '@patternfly/react-icons/dist/esm/icons/caret-down-icon';
|
|
5
5
|
import { BadgeProps } from '../Badge';
|
|
6
|
+
import CogIcon from '@patternfly/react-icons/dist/esm/icons/cog-icon';
|
|
6
7
|
import CheckCircleIcon from '@patternfly/react-icons/dist/esm/icons/check-circle-icon';
|
|
7
8
|
import ExclamationCircleIcon from '@patternfly/react-icons/dist/esm/icons/exclamation-circle-icon';
|
|
8
9
|
import ExclamationTriangleIcon from '@patternfly/react-icons/dist/esm/icons/exclamation-triangle-icon';
|
|
@@ -44,6 +45,8 @@ export interface MenuToggleProps
|
|
|
44
45
|
isFullWidth?: boolean;
|
|
45
46
|
/** Flag indicating the toggle contains placeholder text */
|
|
46
47
|
isPlaceholder?: boolean;
|
|
48
|
+
/** Flag indicating whether the toggle is a settings toggle. This will override the icon property */
|
|
49
|
+
isSettings?: boolean;
|
|
47
50
|
/** Elements to display before the toggle button. When included, renders the menu toggle as a split button. */
|
|
48
51
|
splitButtonItems?: React.ReactNode[];
|
|
49
52
|
/** Variant styles of the menu toggle */
|
|
@@ -100,6 +103,7 @@ class MenuToggleBase extends Component<MenuToggleProps, MenuToggleState> {
|
|
|
100
103
|
isFullHeight,
|
|
101
104
|
isFullWidth,
|
|
102
105
|
isPlaceholder,
|
|
106
|
+
isSettings,
|
|
103
107
|
splitButtonItems,
|
|
104
108
|
variant,
|
|
105
109
|
status,
|
|
@@ -144,7 +148,7 @@ class MenuToggleBase extends Component<MenuToggleProps, MenuToggleState> {
|
|
|
144
148
|
|
|
145
149
|
const content = (
|
|
146
150
|
<>
|
|
147
|
-
{icon && <span className={css(styles.menuToggleIcon)}>{icon}</span>}
|
|
151
|
+
{(icon || isSettings) && <span className={css(styles.menuToggleIcon)}>{isSettings ? <CogIcon /> : icon}</span>}
|
|
148
152
|
{isTypeahead ? children : children && <span className={css(styles.menuToggleText)}>{children}</span>}
|
|
149
153
|
{isValidElement(badge) && <span className={css(styles.menuToggleCount)}>{badge}</span>}
|
|
150
154
|
{isTypeahead ? (
|
|
@@ -177,6 +181,7 @@ class MenuToggleBase extends Component<MenuToggleProps, MenuToggleState> {
|
|
|
177
181
|
isFullWidth && styles.modifiers.fullWidth,
|
|
178
182
|
isDisabled && styles.modifiers.disabled,
|
|
179
183
|
isPlaceholder && styles.modifiers.placeholder,
|
|
184
|
+
isSettings && styles.modifiers.settings,
|
|
180
185
|
size === MenuToggleSize.sm && styles.modifiers.small,
|
|
181
186
|
className
|
|
182
187
|
);
|
|
@@ -8,7 +8,7 @@ import { render, screen } from '@testing-library/react';
|
|
|
8
8
|
import styles from '@patternfly/react-styles/css/components/MenuToggle/menu-toggle';
|
|
9
9
|
import '@testing-library/jest-dom';
|
|
10
10
|
|
|
11
|
-
describe('
|
|
11
|
+
describe('Old Snapshot tests - remove when refactoring', () => {
|
|
12
12
|
test('renders successfully', () => {
|
|
13
13
|
const { asFragment } = render(<MenuToggle>Toggle</MenuToggle>);
|
|
14
14
|
expect(asFragment()).toMatchSnapshot();
|
|
@@ -53,54 +53,68 @@ describe('menu toggle', () => {
|
|
|
53
53
|
const { asFragment } = render(<MenuToggle badge={<Badge>badge</Badge>}>Toggle</MenuToggle>);
|
|
54
54
|
expect(asFragment()).toMatchSnapshot();
|
|
55
55
|
});
|
|
56
|
+
});
|
|
56
57
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
});
|
|
58
|
+
test(`Renders with class ${styles.modifiers.small} when size="sm" is passed`, () => {
|
|
59
|
+
render(<MenuToggle size="sm">Toggle</MenuToggle>);
|
|
60
|
+
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.small);
|
|
61
|
+
});
|
|
62
62
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
63
|
+
test(`Renders with class ${styles.modifiers.success} when status="success" is passed`, () => {
|
|
64
|
+
render(<MenuToggle status="success">Toggle</MenuToggle>);
|
|
65
|
+
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.success);
|
|
66
|
+
});
|
|
67
67
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
68
|
+
test(`Renders with class ${styles.modifiers.warning} when status="success" is passed`, () => {
|
|
69
|
+
render(<MenuToggle status="warning">Toggle</MenuToggle>);
|
|
70
|
+
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.warning);
|
|
71
|
+
});
|
|
72
72
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
73
|
+
test(`Renders with class ${styles.modifiers.danger} when status="success" is passed`, () => {
|
|
74
|
+
render(<MenuToggle status="danger">Toggle</MenuToggle>);
|
|
75
|
+
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.danger);
|
|
76
|
+
});
|
|
77
77
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
78
|
+
test('split toggle passes onClick', async () => {
|
|
79
|
+
const mockClick = jest.fn();
|
|
80
|
+
const user = userEvent.setup();
|
|
81
|
+
|
|
82
|
+
render(
|
|
83
|
+
<MenuToggle
|
|
84
|
+
onClick={mockClick}
|
|
85
|
+
splitButtonItems={[
|
|
86
|
+
<MenuToggleCheckbox
|
|
87
|
+
id="split-button-checkbox-with-text-disabled-example"
|
|
88
|
+
key="split-checkbox-with-text-disabled"
|
|
89
|
+
aria-label="Select all"
|
|
90
|
+
>
|
|
91
|
+
10 selected
|
|
92
|
+
</MenuToggleCheckbox>
|
|
93
|
+
]}
|
|
94
|
+
aria-label="Menu toggle with checkbox split button and text"
|
|
95
|
+
/>
|
|
96
|
+
);
|
|
97
|
+
|
|
98
|
+
await user.click(screen.getByRole(`button`) as Element);
|
|
99
|
+
expect(mockClick).toHaveBeenCalled();
|
|
100
|
+
});
|
|
101
101
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
102
|
+
test(`Renders with class ${styles.modifiers.placeholder} when isPlaceholder is passed`, () => {
|
|
103
|
+
render(<MenuToggle isPlaceholder>Toggle</MenuToggle>);
|
|
104
|
+
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.placeholder);
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
test(`Renders with class ${styles.modifiers.settings} when isSettings is passed`, () => {
|
|
108
|
+
render(<MenuToggle isSettings>Settings</MenuToggle>);
|
|
109
|
+
|
|
110
|
+
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.settings);
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
test('Does not render custom icon when icon prop and isSettings are passed', () => {
|
|
114
|
+
render(
|
|
115
|
+
<MenuToggle isSettings icon={<div>Custom icon</div>}>
|
|
116
|
+
Settings
|
|
117
|
+
</MenuToggle>
|
|
118
|
+
);
|
|
119
|
+
expect(screen.queryByText('Custom icon')).not.toBeInTheDocument();
|
|
106
120
|
});
|