@patternfly/react-core 6.3.1-prerelease.2 → 6.3.1-prerelease.20
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 +104 -0
- 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/AnimationsProvider/AnimationsProvider/package.json +1 -0
- package/dist/dynamic/helpers/AnimationsProvider/package.json +1 -0
- 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 +6 -0
- package/dist/esm/components/Alert/AlertGroup.d.ts +2 -13
- package/dist/esm/components/Alert/AlertGroup.d.ts.map +1 -1
- package/dist/esm/components/Alert/AlertGroup.js +33 -38
- package/dist/esm/components/Alert/AlertGroup.js.map +1 -1
- package/dist/esm/components/Alert/AlertGroupInline.d.ts.map +1 -1
- package/dist/esm/components/Alert/AlertGroupInline.js +3 -1
- package/dist/esm/components/Alert/AlertGroupInline.js.map +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopy.d.ts +2 -0
- package/dist/esm/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopy.js +3 -3
- package/dist/esm/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopyButton.d.ts +2 -2
- package/dist/esm/components/ClipboardCopy/ClipboardCopyButton.d.ts.map +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopyButton.js +2 -2
- package/dist/esm/components/ClipboardCopy/ClipboardCopyButton.js.map +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.d.ts +0 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.d.ts.map +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.js +2 -2
- package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.js.map +1 -1
- package/dist/esm/components/DataList/DataListItem.d.ts.map +1 -1
- package/dist/esm/components/DataList/DataListItem.js +8 -0
- package/dist/esm/components/DataList/DataListItem.js.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.d.ts +6 -20
- package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelector.d.ts +2 -9
- package/dist/esm/components/DualListSelector/DualListSelector.d.ts.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelector.js +6 -16
- package/dist/esm/components/DualListSelector/DualListSelector.js.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
- package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.js +3 -1
- package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -1
- package/dist/esm/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
- package/dist/esm/components/Form/FormFieldGroupExpandable.js +3 -1
- package/dist/esm/components/Form/FormFieldGroupExpandable.js.map +1 -1
- package/dist/esm/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
- package/dist/esm/components/Form/InternalFormFieldGroup.js +3 -1
- package/dist/esm/components/Form/InternalFormFieldGroup.js.map +1 -1
- package/dist/esm/components/JumpLinks/JumpLinks.d.ts +2 -0
- package/dist/esm/components/JumpLinks/JumpLinks.d.ts.map +1 -1
- package/dist/esm/components/JumpLinks/JumpLinks.js +15 -3
- package/dist/esm/components/JumpLinks/JumpLinks.js.map +1 -1
- package/dist/esm/components/Menu/Menu.d.ts +2 -1
- package/dist/esm/components/Menu/Menu.d.ts.map +1 -1
- package/dist/esm/components/Menu/Menu.js +0 -1
- package/dist/esm/components/Menu/Menu.js.map +1 -1
- package/dist/esm/components/Menu/MenuContainer.d.ts +4 -17
- package/dist/esm/components/Menu/MenuContainer.d.ts.map +1 -1
- package/dist/esm/components/Menu/MenuContainer.js.map +1 -1
- package/dist/esm/components/Menu/MenuItem.js +3 -2
- package/dist/esm/components/Menu/MenuItem.js.map +1 -1
- package/dist/esm/components/Menu/MenuItemAction.d.ts.map +1 -1
- package/dist/esm/components/Menu/MenuItemAction.js +1 -2
- package/dist/esm/components/Menu/MenuItemAction.js.map +1 -1
- package/dist/esm/components/MultipleFileUpload/MultipleFileUploadStatusItem.d.ts +2 -0
- package/dist/esm/components/MultipleFileUpload/MultipleFileUploadStatusItem.d.ts.map +1 -1
- package/dist/esm/components/MultipleFileUpload/MultipleFileUploadStatusItem.js +2 -2
- package/dist/esm/components/MultipleFileUpload/MultipleFileUploadStatusItem.js.map +1 -1
- package/dist/esm/components/Progress/Progress.d.ts +2 -0
- package/dist/esm/components/Progress/Progress.d.ts.map +1 -1
- package/dist/esm/components/Progress/Progress.js +6 -2
- package/dist/esm/components/Progress/Progress.js.map +1 -1
- package/dist/esm/components/Progress/ProgressBar.d.ts +1 -0
- package/dist/esm/components/Progress/ProgressBar.d.ts.map +1 -1
- package/dist/esm/components/Progress/ProgressBar.js +1 -1
- package/dist/esm/components/Progress/ProgressBar.js.map +1 -1
- package/dist/esm/components/Progress/ProgressContainer.js +1 -1
- package/dist/esm/components/Progress/ProgressContainer.js.map +1 -1
- package/dist/esm/components/SearchInput/SearchInput.d.ts.map +1 -1
- package/dist/esm/components/SearchInput/SearchInput.js +3 -1
- package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
- package/dist/esm/components/Select/Select.d.ts +6 -26
- package/dist/esm/components/Select/Select.d.ts.map +1 -1
- package/dist/esm/components/Select/Select.js.map +1 -1
- package/dist/esm/components/Tabs/OverflowTab.d.ts +4 -25
- package/dist/esm/components/Tabs/OverflowTab.d.ts.map +1 -1
- package/dist/esm/components/Tabs/OverflowTab.js.map +1 -1
- package/dist/esm/components/Tabs/Tabs.d.ts +2 -2
- package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/esm/components/Tabs/Tabs.js +4 -1
- package/dist/esm/components/Tabs/Tabs.js.map +1 -1
- package/dist/esm/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/esm/components/Tooltip/Tooltip.js +68 -3
- package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/esm/components/TreeView/TreeView.d.ts.map +1 -1
- package/dist/esm/components/TreeView/TreeView.js +3 -1
- package/dist/esm/components/TreeView/TreeView.js.map +1 -1
- package/dist/esm/components/TreeView/TreeViewListItem.d.ts.map +1 -1
- package/dist/esm/components/TreeView/TreeViewListItem.js +3 -1
- package/dist/esm/components/TreeView/TreeViewListItem.js.map +1 -1
- package/dist/esm/components/Truncate/Truncate.d.ts.map +1 -1
- package/dist/esm/components/Truncate/Truncate.js +3 -2
- package/dist/esm/components/Truncate/Truncate.js.map +1 -1
- package/dist/esm/components/Wizard/WizardNavItem.js +1 -1
- package/dist/esm/components/Wizard/WizardNavItem.js.map +1 -1
- package/dist/esm/deprecated/components/Wizard/WizardNavItem.js +1 -1
- package/dist/esm/deprecated/components/Wizard/WizardNavItem.js.map +1 -1
- package/dist/esm/helpers/AnimationsProvider/AnimationsProvider.d.ts +76 -0
- package/dist/esm/helpers/AnimationsProvider/AnimationsProvider.d.ts.map +1 -0
- package/dist/esm/helpers/AnimationsProvider/AnimationsProvider.js +83 -0
- package/dist/esm/helpers/AnimationsProvider/AnimationsProvider.js.map +1 -0
- package/dist/esm/helpers/AnimationsProvider/index.d.ts +2 -0
- package/dist/esm/helpers/AnimationsProvider/index.d.ts.map +1 -0
- package/dist/esm/helpers/AnimationsProvider/index.js +2 -0
- package/dist/esm/helpers/AnimationsProvider/index.js.map +1 -0
- package/dist/esm/helpers/Popper/Popper.d.ts +28 -21
- package/dist/esm/helpers/Popper/Popper.d.ts.map +1 -1
- package/dist/esm/helpers/Popper/Popper.js +2 -2
- package/dist/esm/helpers/Popper/Popper.js.map +1 -1
- package/dist/esm/helpers/index.d.ts +1 -0
- package/dist/esm/helpers/index.d.ts.map +1 -1
- package/dist/esm/helpers/index.js +1 -0
- package/dist/esm/helpers/index.js.map +1 -1
- package/dist/js/components/Alert/AlertGroup.d.ts +2 -13
- package/dist/js/components/Alert/AlertGroup.d.ts.map +1 -1
- package/dist/js/components/Alert/AlertGroup.js +33 -37
- package/dist/js/components/Alert/AlertGroup.js.map +1 -1
- package/dist/js/components/Alert/AlertGroupInline.d.ts.map +1 -1
- package/dist/js/components/Alert/AlertGroupInline.js +3 -1
- package/dist/js/components/Alert/AlertGroupInline.js.map +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopy.d.ts +2 -0
- package/dist/js/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopy.js +3 -3
- package/dist/js/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopyButton.d.ts +2 -2
- package/dist/js/components/ClipboardCopy/ClipboardCopyButton.d.ts.map +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopyButton.js +2 -2
- package/dist/js/components/ClipboardCopy/ClipboardCopyButton.js.map +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.d.ts +0 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.d.ts.map +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.js +2 -2
- package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.js.map +1 -1
- package/dist/js/components/DataList/DataListItem.d.ts.map +1 -1
- package/dist/js/components/DataList/DataListItem.js +8 -0
- package/dist/js/components/DataList/DataListItem.js.map +1 -1
- package/dist/js/components/Dropdown/Dropdown.d.ts +6 -20
- package/dist/js/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/js/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelector.d.ts +2 -9
- package/dist/js/components/DualListSelector/DualListSelector.d.ts.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelector.js +7 -16
- package/dist/js/components/DualListSelector/DualListSelector.js.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
- package/dist/js/components/DualListSelector/DualListSelectorTreeItem.js +3 -1
- package/dist/js/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -1
- package/dist/js/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
- package/dist/js/components/Form/FormFieldGroupExpandable.js +3 -1
- package/dist/js/components/Form/FormFieldGroupExpandable.js.map +1 -1
- package/dist/js/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
- package/dist/js/components/Form/InternalFormFieldGroup.js +3 -1
- package/dist/js/components/Form/InternalFormFieldGroup.js.map +1 -1
- package/dist/js/components/JumpLinks/JumpLinks.d.ts +2 -0
- package/dist/js/components/JumpLinks/JumpLinks.d.ts.map +1 -1
- package/dist/js/components/JumpLinks/JumpLinks.js +14 -2
- package/dist/js/components/JumpLinks/JumpLinks.js.map +1 -1
- package/dist/js/components/Menu/Menu.d.ts +2 -1
- package/dist/js/components/Menu/Menu.d.ts.map +1 -1
- package/dist/js/components/Menu/Menu.js +0 -1
- package/dist/js/components/Menu/Menu.js.map +1 -1
- package/dist/js/components/Menu/MenuContainer.d.ts +4 -17
- package/dist/js/components/Menu/MenuContainer.d.ts.map +1 -1
- package/dist/js/components/Menu/MenuContainer.js.map +1 -1
- package/dist/js/components/Menu/MenuItem.js +3 -2
- package/dist/js/components/Menu/MenuItem.js.map +1 -1
- package/dist/js/components/Menu/MenuItemAction.d.ts.map +1 -1
- package/dist/js/components/Menu/MenuItemAction.js +1 -2
- package/dist/js/components/Menu/MenuItemAction.js.map +1 -1
- package/dist/js/components/MultipleFileUpload/MultipleFileUploadStatusItem.d.ts +2 -0
- package/dist/js/components/MultipleFileUpload/MultipleFileUploadStatusItem.d.ts.map +1 -1
- package/dist/js/components/MultipleFileUpload/MultipleFileUploadStatusItem.js +2 -2
- package/dist/js/components/MultipleFileUpload/MultipleFileUploadStatusItem.js.map +1 -1
- package/dist/js/components/Progress/Progress.d.ts +2 -0
- package/dist/js/components/Progress/Progress.d.ts.map +1 -1
- package/dist/js/components/Progress/Progress.js +6 -2
- package/dist/js/components/Progress/Progress.js.map +1 -1
- package/dist/js/components/Progress/ProgressBar.d.ts +1 -0
- package/dist/js/components/Progress/ProgressBar.d.ts.map +1 -1
- package/dist/js/components/Progress/ProgressBar.js +1 -1
- package/dist/js/components/Progress/ProgressBar.js.map +1 -1
- package/dist/js/components/Progress/ProgressContainer.js +1 -1
- package/dist/js/components/Progress/ProgressContainer.js.map +1 -1
- package/dist/js/components/SearchInput/SearchInput.d.ts.map +1 -1
- package/dist/js/components/SearchInput/SearchInput.js +3 -1
- package/dist/js/components/SearchInput/SearchInput.js.map +1 -1
- package/dist/js/components/Select/Select.d.ts +6 -26
- package/dist/js/components/Select/Select.d.ts.map +1 -1
- package/dist/js/components/Select/Select.js.map +1 -1
- package/dist/js/components/Tabs/OverflowTab.d.ts +4 -25
- package/dist/js/components/Tabs/OverflowTab.d.ts.map +1 -1
- package/dist/js/components/Tabs/OverflowTab.js.map +1 -1
- package/dist/js/components/Tabs/Tabs.d.ts +2 -2
- package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/js/components/Tabs/Tabs.js +4 -1
- package/dist/js/components/Tabs/Tabs.js.map +1 -1
- package/dist/js/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/js/components/Tooltip/Tooltip.js +68 -3
- package/dist/js/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/js/components/TreeView/TreeView.d.ts.map +1 -1
- package/dist/js/components/TreeView/TreeView.js +3 -1
- package/dist/js/components/TreeView/TreeView.js.map +1 -1
- package/dist/js/components/TreeView/TreeViewListItem.d.ts.map +1 -1
- package/dist/js/components/TreeView/TreeViewListItem.js +3 -1
- package/dist/js/components/TreeView/TreeViewListItem.js.map +1 -1
- package/dist/js/components/Truncate/Truncate.d.ts.map +1 -1
- package/dist/js/components/Truncate/Truncate.js +2 -1
- package/dist/js/components/Truncate/Truncate.js.map +1 -1
- package/dist/js/components/Wizard/WizardNavItem.js +1 -1
- package/dist/js/components/Wizard/WizardNavItem.js.map +1 -1
- package/dist/js/deprecated/components/Wizard/WizardNavItem.js +1 -1
- package/dist/js/deprecated/components/Wizard/WizardNavItem.js.map +1 -1
- package/dist/js/helpers/AnimationsProvider/AnimationsProvider.d.ts +76 -0
- package/dist/js/helpers/AnimationsProvider/AnimationsProvider.d.ts.map +1 -0
- package/dist/js/helpers/AnimationsProvider/AnimationsProvider.js +89 -0
- package/dist/js/helpers/AnimationsProvider/AnimationsProvider.js.map +1 -0
- package/dist/js/helpers/AnimationsProvider/index.d.ts +2 -0
- package/dist/js/helpers/AnimationsProvider/index.d.ts.map +1 -0
- package/dist/js/helpers/AnimationsProvider/index.js +5 -0
- package/dist/js/helpers/AnimationsProvider/index.js.map +1 -0
- package/dist/js/helpers/Popper/Popper.d.ts +28 -21
- package/dist/js/helpers/Popper/Popper.d.ts.map +1 -1
- package/dist/js/helpers/Popper/Popper.js +2 -2
- package/dist/js/helpers/Popper/Popper.js.map +1 -1
- package/dist/js/helpers/index.d.ts +1 -0
- package/dist/js/helpers/index.d.ts.map +1 -1
- package/dist/js/helpers/index.js +1 -0
- package/dist/js/helpers/index.js.map +1 -1
- package/dist/styles/base-no-reset.css +1172 -1
- package/dist/styles/base.css +1176 -1
- package/dist/umd/assets/{output-mLkegqf5.css → output-DsovVjdv.css} +20296 -19881
- 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/AlertGroup.tsx +59 -63
- package/src/components/Alert/AlertGroupInline.tsx +3 -1
- package/src/components/Alert/__tests__/AlertGroup.test.tsx +55 -4
- package/src/components/ClipboardCopy/ClipboardCopy.tsx +5 -5
- package/src/components/ClipboardCopy/ClipboardCopyButton.tsx +2 -4
- package/src/components/ClipboardCopy/ClipboardCopyToggle.tsx +0 -3
- package/src/components/ClipboardCopy/__tests__/ClipboardCopy.test.tsx +16 -0
- package/src/components/ClipboardCopy/__tests__/ClipboardCopyButton.test.tsx +5 -28
- package/src/components/ClipboardCopy/__tests__/ClipboardCopyToggle.test.tsx +3 -4
- package/src/components/ClipboardCopy/__tests__/__snapshots__/ClipboardCopy.test.tsx.snap +1 -1
- package/src/components/ClipboardCopy/__tests__/__snapshots__/ClipboardCopyButton.test.tsx.snap +0 -1
- package/src/components/ClipboardCopy/__tests__/__snapshots__/ClipboardCopyToggle.test.tsx.snap +0 -1
- package/src/components/ClipboardCopy/examples/ClipboardCopyBasic.tsx +1 -1
- package/src/components/ClipboardCopy/examples/ClipboardCopyExpanded.tsx +7 -1
- package/src/components/ClipboardCopy/examples/ClipboardCopyExpandedWithArray.tsx +7 -1
- package/src/components/ClipboardCopy/examples/ClipboardCopyInlineCompact.tsx +1 -1
- package/src/components/ClipboardCopy/examples/ClipboardCopyInlineCompactCode.tsx +7 -1
- package/src/components/ClipboardCopy/examples/ClipboardCopyInlineCompactInSentence.tsx +19 -3
- package/src/components/ClipboardCopy/examples/ClipboardCopyInlineCompactTruncation.tsx +14 -2
- package/src/components/ClipboardCopy/examples/ClipboardCopyInlineCompactWithAdditionalAction.tsx +1 -0
- package/src/components/ClipboardCopy/examples/ClipboardCopyJSONObject.tsx +8 -1
- package/src/components/ClipboardCopy/examples/ClipboardCopyReadOnly.tsx +1 -1
- package/src/components/ClipboardCopy/examples/ClipboardCopyReadOnlyExpanded.tsx +8 -1
- package/src/components/ClipboardCopy/examples/ClipboardCopyReadOnlyExpandedByDefault.tsx +9 -1
- package/src/components/DataList/DataListItem.tsx +12 -0
- package/src/components/Dropdown/Dropdown.tsx +6 -21
- package/src/components/Dropdown/examples/Dropdown.md +2 -2
- package/src/components/DualListSelector/DualListSelector.tsx +32 -39
- package/src/components/DualListSelector/DualListSelectorTreeItem.tsx +3 -1
- package/src/components/DualListSelector/__tests__/DualListSelector.test.tsx +28 -0
- package/src/components/Form/FormFieldGroupExpandable.tsx +3 -1
- package/src/components/Form/InternalFormFieldGroup.tsx +3 -1
- package/src/components/Form/__tests__/FormFieldGroupExpandable.test.tsx +30 -0
- package/src/components/JumpLinks/JumpLinks.tsx +33 -5
- package/src/components/JumpLinks/__tests__/JumpLinks.test.tsx +196 -1
- package/src/components/JumpLinks/__tests__/__snapshots__/JumpLinks.test.tsx.snap +9 -9
- package/src/components/JumpLinks/examples/JumpLinksBasic.tsx +1 -1
- package/src/components/JumpLinks/examples/JumpLinksExpandableVerticalWithSubsection.tsx +2 -2
- package/src/components/JumpLinks/examples/JumpLinksVertical.tsx +1 -1
- package/src/components/JumpLinks/examples/JumpLinksVerticalWithLabel.tsx +1 -1
- package/src/components/JumpLinks/examples/JumpLinksWithCenteredList.tsx +1 -1
- package/src/components/JumpLinks/examples/JumpLinksWithLabel.tsx +2 -2
- package/src/components/Menu/Menu.tsx +2 -2
- package/src/components/Menu/MenuContainer.tsx +4 -17
- package/src/components/Menu/MenuItem.tsx +2 -2
- package/src/components/Menu/MenuItemAction.tsx +3 -2
- package/src/components/Menu/__tests__/Menu.test.tsx +39 -1
- package/src/components/Menu/examples/Menu.md +3 -3
- package/src/components/MultipleFileUpload/MultipleFileUploadStatusItem.tsx +4 -0
- package/src/components/MultipleFileUpload/examples/MultipleFileUploadBasic.tsx +5 -4
- package/src/components/Progress/Progress.tsx +9 -1
- package/src/components/Progress/ProgressBar.tsx +2 -1
- package/src/components/Progress/ProgressContainer.tsx +1 -1
- package/src/components/Progress/__tests__/Generated/__snapshots__/ProgressBar.test.tsx.snap +1 -0
- package/src/components/Progress/__tests__/ProgressBar.test.tsx +19 -0
- package/src/components/Progress/examples/Progress.md +67 -23
- package/src/components/Progress/examples/ProgressHelperText.tsx +8 -2
- package/src/components/SearchInput/SearchInput.tsx +3 -1
- package/src/components/SearchInput/__tests__/SearchInput.test.tsx +52 -0
- package/src/components/Select/Select.tsx +6 -27
- package/src/components/Select/examples/Select.md +1 -1
- package/src/components/Tabs/OverflowTab.tsx +4 -26
- package/src/components/Tabs/Tabs.tsx +11 -3
- package/src/components/Tabs/__tests__/Tabs.test.tsx +60 -0
- package/src/components/Tabs/__tests__/__snapshots__/Tabs.test.tsx.snap +14 -14
- package/src/components/Tabs/examples/Tabs.md +27 -27
- package/src/components/Tooltip/Tooltip.tsx +76 -3
- package/src/components/Tooltip/__tests__/Tooltip.test.tsx +126 -0
- package/src/components/TreeView/TreeView.tsx +3 -1
- package/src/components/TreeView/TreeViewListItem.tsx +3 -1
- package/src/components/TreeView/__tests__/TreeView.test.tsx +28 -0
- package/src/components/TreeView/__tests__/__snapshots__/TreeView.test.tsx.snap +1 -1
- package/src/components/Truncate/Truncate.tsx +3 -1
- package/src/components/Truncate/examples/TruncateExamples.css +2 -2
- package/src/components/Wizard/WizardNavItem.tsx +1 -1
- package/src/demos/DataList/examples/DataListBasic.tsx +74 -19
- package/src/demos/DataList/examples/DataListStaticBottomPagination.tsx +16 -3
- package/src/demos/DataListDemo.md +5 -2
- package/src/demos/examples/PrimaryDetail/PrimaryDetailCardView.tsx +1 -1
- package/src/deprecated/components/Wizard/WizardNavItem.tsx +1 -1
- package/src/helpers/AnimationsProvider/AnimationsProvider.tsx +104 -0
- package/src/helpers/AnimationsProvider/__tests__/AnimationsProvider.test.tsx +157 -0
- package/src/helpers/AnimationsProvider/index.ts +1 -0
- package/src/helpers/Popper/Popper.tsx +31 -22
- package/src/helpers/index.ts +1 -0
package/helpers/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@patternfly/react-core-helpers","main":"../dist/js/helpers/index.js","module":"../dist/esm/helpers/index.js","typings":"../dist/esm/helpers/index.d.ts","version":"6.3.1-prerelease.
|
|
1
|
+
{"name":"@patternfly/react-core-helpers","main":"../dist/js/helpers/index.js","module":"../dist/esm/helpers/index.js","typings":"../dist/esm/helpers/index.d.ts","version":"6.3.1-prerelease.19","private":true}
|
package/layouts/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@patternfly/react-core-layouts","main":"../dist/js/layouts/index.js","module":"../dist/esm/layouts/index.js","typings":"../dist/esm/layouts/index.d.ts","version":"6.3.1-prerelease.
|
|
1
|
+
{"name":"@patternfly/react-core-layouts","main":"../dist/js/layouts/index.js","module":"../dist/esm/layouts/index.js","typings":"../dist/esm/layouts/index.d.ts","version":"6.3.1-prerelease.19","private":true}
|
package/next/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@patternfly/react-core-next","main":"../dist/js/next/index.js","module":"../dist/esm/next/index.js","typings":"../dist/esm/next/index.d.ts","version":"6.3.1-prerelease.
|
|
1
|
+
{"name":"@patternfly/react-core-next","main":"../dist/js/next/index.js","module":"../dist/esm/next/index.js","typings":"../dist/esm/next/index.d.ts","version":"6.3.1-prerelease.19","private":true}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@patternfly/react-core",
|
|
3
|
-
"version": "6.3.1-prerelease.
|
|
3
|
+
"version": "6.3.1-prerelease.20",
|
|
4
4
|
"description": "This library provides a set of common React components for use with the PatternFly reference implementation.",
|
|
5
5
|
"main": "dist/js/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -46,15 +46,15 @@
|
|
|
46
46
|
"subpaths": "node ../../scripts/exportSubpaths.mjs --config subpaths.config.json"
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"@patternfly/react-icons": "^6.3.
|
|
50
|
-
"@patternfly/react-styles": "^6.3.
|
|
51
|
-
"@patternfly/react-tokens": "^6.3.
|
|
49
|
+
"@patternfly/react-icons": "^6.3.1-prerelease.1",
|
|
50
|
+
"@patternfly/react-styles": "^6.3.1-prerelease.1",
|
|
51
|
+
"@patternfly/react-tokens": "^6.3.1-prerelease.1",
|
|
52
52
|
"focus-trap": "7.6.4",
|
|
53
53
|
"react-dropzone": "^14.3.5",
|
|
54
54
|
"tslib": "^2.8.1"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"@patternfly/patternfly": "6.3.0-prerelease.
|
|
57
|
+
"@patternfly/patternfly": "6.3.0-prerelease.78",
|
|
58
58
|
"case-anything": "^3.1.2",
|
|
59
59
|
"css": "^3.0.0",
|
|
60
60
|
"fs-extra": "^11.3.0"
|
|
@@ -63,5 +63,5 @@
|
|
|
63
63
|
"react": "^17 || ^18 || ^19",
|
|
64
64
|
"react-dom": "^17 || ^18 || ^19"
|
|
65
65
|
},
|
|
66
|
-
"gitHead": "
|
|
66
|
+
"gitHead": "0c3218ffa84a0359f3b6242c118d1620b30278c9"
|
|
67
67
|
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useEffect, useRef, useState } from 'react';
|
|
2
2
|
import * as ReactDOM from 'react-dom';
|
|
3
3
|
import { canUseDOM } from '../../helpers';
|
|
4
4
|
import { AlertGroupInline } from './AlertGroupInline';
|
|
5
|
+
import { useHasAnimations } from '../../helpers';
|
|
5
6
|
|
|
6
7
|
export interface AlertGroupProps extends Omit<React.HTMLProps<HTMLUListElement>, 'className'> {
|
|
7
8
|
/** Additional classes added to the AlertGroup */
|
|
@@ -26,78 +27,73 @@ export interface AlertGroupProps extends Omit<React.HTMLProps<HTMLUListElement>,
|
|
|
26
27
|
'aria-label'?: string;
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
componentDidMount() {
|
|
40
|
-
const container = document.createElement('div');
|
|
41
|
-
const target: HTMLElement = this.getTargetElement();
|
|
42
|
-
this.setState({ container });
|
|
43
|
-
target.appendChild(container);
|
|
44
|
-
}
|
|
30
|
+
export const AlertGroup: React.FunctionComponent<AlertGroupProps> = ({
|
|
31
|
+
className,
|
|
32
|
+
children,
|
|
33
|
+
hasAnimations: hasAnimationsProp,
|
|
34
|
+
isToast,
|
|
35
|
+
isLiveRegion,
|
|
36
|
+
onOverflowClick,
|
|
37
|
+
overflowMessage,
|
|
38
|
+
'aria-label': ariaLabel,
|
|
45
39
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
40
|
+
appendTo,
|
|
41
|
+
...props
|
|
42
|
+
}: AlertGroupProps) => {
|
|
43
|
+
const containerRef = useRef<HTMLElement | null>(null);
|
|
44
|
+
const [isContainerReady, setIsContainerReady] = useState(false);
|
|
45
|
+
const hasAnimations = useHasAnimations(hasAnimationsProp);
|
|
52
46
|
|
|
53
|
-
getTargetElement() {
|
|
54
|
-
const appendTo = this.props.appendTo;
|
|
47
|
+
const getTargetElement = () => {
|
|
55
48
|
if (typeof appendTo === 'function') {
|
|
56
49
|
return appendTo();
|
|
57
50
|
}
|
|
58
51
|
return appendTo || document.body;
|
|
59
|
-
}
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
useEffect(() => {
|
|
55
|
+
if (isToast && canUseDOM) {
|
|
56
|
+
const container = document.createElement('div');
|
|
57
|
+
const target = getTargetElement();
|
|
58
|
+
containerRef.current = container;
|
|
59
|
+
target.appendChild(container);
|
|
60
|
+
setIsContainerReady(true);
|
|
60
61
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
onOverflowClick,
|
|
69
|
-
overflowMessage,
|
|
70
|
-
'aria-label': ariaLabel,
|
|
71
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
72
|
-
appendTo, // do not pass down to ul
|
|
73
|
-
...props
|
|
74
|
-
} = this.props;
|
|
75
|
-
const alertGroup = (
|
|
76
|
-
<AlertGroupInline
|
|
77
|
-
onOverflowClick={onOverflowClick}
|
|
78
|
-
className={className}
|
|
79
|
-
isToast={isToast}
|
|
80
|
-
isLiveRegion={isLiveRegion}
|
|
81
|
-
overflowMessage={overflowMessage}
|
|
82
|
-
aria-label={ariaLabel}
|
|
83
|
-
hasAnimations={hasAnimations}
|
|
84
|
-
{...props}
|
|
85
|
-
>
|
|
86
|
-
{children}
|
|
87
|
-
</AlertGroupInline>
|
|
88
|
-
);
|
|
89
|
-
if (!this.props.isToast) {
|
|
90
|
-
return alertGroup;
|
|
62
|
+
return () => {
|
|
63
|
+
if (containerRef.current) {
|
|
64
|
+
target.removeChild(containerRef.current);
|
|
65
|
+
containerRef.current = null;
|
|
66
|
+
}
|
|
67
|
+
setIsContainerReady(false);
|
|
68
|
+
};
|
|
91
69
|
}
|
|
70
|
+
}, [isToast, appendTo]);
|
|
92
71
|
|
|
93
|
-
|
|
72
|
+
const alertGroup = (
|
|
73
|
+
<AlertGroupInline
|
|
74
|
+
onOverflowClick={onOverflowClick}
|
|
75
|
+
className={className}
|
|
76
|
+
isToast={isToast}
|
|
77
|
+
isLiveRegion={isLiveRegion}
|
|
78
|
+
overflowMessage={overflowMessage}
|
|
79
|
+
aria-label={ariaLabel}
|
|
80
|
+
hasAnimations={hasAnimations}
|
|
81
|
+
{...props}
|
|
82
|
+
>
|
|
83
|
+
{children}
|
|
84
|
+
</AlertGroupInline>
|
|
85
|
+
);
|
|
94
86
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
87
|
+
if (!isToast) {
|
|
88
|
+
return alertGroup;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
const container = containerRef.current;
|
|
98
92
|
|
|
99
|
-
|
|
93
|
+
if (!canUseDOM || !container || !isContainerReady) {
|
|
94
|
+
return null;
|
|
100
95
|
}
|
|
101
|
-
}
|
|
102
96
|
|
|
103
|
-
|
|
97
|
+
return ReactDOM.createPortal(alertGroup, container);
|
|
98
|
+
};
|
|
99
|
+
AlertGroup.displayName = 'AlertGroup';
|
|
@@ -4,17 +4,19 @@ import styles from '@patternfly/react-styles/css/components/Alert/alert-group';
|
|
|
4
4
|
import { AlertGroupProps } from './AlertGroup';
|
|
5
5
|
import { AlertProps } from '../Alert';
|
|
6
6
|
import { AlertGroupContext } from './AlertGroupContext';
|
|
7
|
+
import { useHasAnimations } from '../../helpers';
|
|
7
8
|
|
|
8
9
|
export const AlertGroupInline: React.FunctionComponent<AlertGroupProps> = ({
|
|
9
10
|
className,
|
|
10
11
|
children,
|
|
11
|
-
hasAnimations,
|
|
12
|
+
hasAnimations: hasAnimationsProp,
|
|
12
13
|
isToast,
|
|
13
14
|
isLiveRegion,
|
|
14
15
|
onOverflowClick,
|
|
15
16
|
overflowMessage,
|
|
16
17
|
...props
|
|
17
18
|
}: AlertGroupProps) => {
|
|
19
|
+
const hasAnimations = useHasAnimations(hasAnimationsProp);
|
|
18
20
|
const [handleTransitionEnd, setHandleTransitionEnd] = useState<() => void>(() => () => {});
|
|
19
21
|
|
|
20
22
|
const updateTransitionEnd = (onTransitionEnd: () => void) => {
|
|
@@ -4,6 +4,7 @@ import userEvent from '@testing-library/user-event';
|
|
|
4
4
|
import { Alert } from '../../Alert';
|
|
5
5
|
import { AlertGroup } from '../../Alert';
|
|
6
6
|
import { AlertActionCloseButton } from '../../../components/Alert/AlertActionCloseButton';
|
|
7
|
+
import { AnimationsProvider } from '../../../helpers/AnimationsProvider';
|
|
7
8
|
|
|
8
9
|
test('Alert Group renders without children', () => {
|
|
9
10
|
render(
|
|
@@ -56,14 +57,16 @@ test('Standard Alert Group is not a toast alert group', () => {
|
|
|
56
57
|
expect(screen.getByText('alert title').parentElement).not.toHaveClass('pf-m-toast');
|
|
57
58
|
});
|
|
58
59
|
|
|
59
|
-
test('Toast Alert Group contains expected modifier class', () => {
|
|
60
|
+
test('Toast Alert Group contains expected modifier class', async () => {
|
|
60
61
|
render(
|
|
61
62
|
<AlertGroup isToast aria-label="group label">
|
|
62
63
|
<Alert variant="warning" title="alert title" />
|
|
63
64
|
</AlertGroup>
|
|
64
65
|
);
|
|
65
66
|
|
|
66
|
-
|
|
67
|
+
// Wait for the portal to be created and rendered
|
|
68
|
+
const alertGroup = await screen.findByLabelText('group label');
|
|
69
|
+
expect(alertGroup).toHaveClass('pf-m-toast');
|
|
67
70
|
});
|
|
68
71
|
|
|
69
72
|
test('Calls the callback set by updateTransitionEnd when transition ends and animations are enabled', async () => {
|
|
@@ -90,8 +93,11 @@ test('Calls the callback set by updateTransitionEnd when transition ends and ani
|
|
|
90
93
|
</AlertGroup>
|
|
91
94
|
);
|
|
92
95
|
|
|
93
|
-
await
|
|
96
|
+
const closeButton = await screen.findByLabelText('Close');
|
|
97
|
+
await user.click(closeButton);
|
|
94
98
|
expect(mockCallback).not.toHaveBeenCalled();
|
|
99
|
+
// fireEvent is needed here because transitionEnd is a browser event that occurs automatically
|
|
100
|
+
// when CSS transitions complete, not a user interaction that userEvent can simulate
|
|
95
101
|
fireEvent.transitionEnd(screen.getByText('Test Alert').closest('.pf-v6-c-alert-group__item') as HTMLElement);
|
|
96
102
|
expect(mockCallback).toHaveBeenCalled();
|
|
97
103
|
});
|
|
@@ -120,9 +126,54 @@ test('Does not call the callback set by updateTransitionEnd when transition ends
|
|
|
120
126
|
</AlertGroup>
|
|
121
127
|
);
|
|
122
128
|
|
|
123
|
-
await
|
|
129
|
+
const closeButton = await screen.findByLabelText('Close');
|
|
130
|
+
await user.click(closeButton);
|
|
124
131
|
expect(mockCallback).toHaveBeenCalledTimes(1);
|
|
125
132
|
// The transitionend event firing should not cause the callback to be called again
|
|
133
|
+
// fireEvent is needed here because transitionEnd is a browser event that occurs automatically
|
|
134
|
+
// when CSS transitions complete, not a user interaction that userEvent can simulate
|
|
126
135
|
fireEvent.transitionEnd(screen.getByText('Test Alert').closest('.pf-v6-c-alert-group__item') as HTMLElement);
|
|
127
136
|
expect(mockCallback).toHaveBeenCalledTimes(1);
|
|
128
137
|
});
|
|
138
|
+
|
|
139
|
+
describe('Animation context behavior', () => {
|
|
140
|
+
test('respects AnimationsProvider context when no local hasAnimations prop', () => {
|
|
141
|
+
render(
|
|
142
|
+
<AnimationsProvider config={{ hasAnimations: true }}>
|
|
143
|
+
<AlertGroup>
|
|
144
|
+
<Alert title="Test Alert" />
|
|
145
|
+
</AlertGroup>
|
|
146
|
+
</AnimationsProvider>
|
|
147
|
+
);
|
|
148
|
+
|
|
149
|
+
// Should apply animation class when animations are enabled via context
|
|
150
|
+
const alertGroupItem = screen.getByText('Test Alert').closest('.pf-v6-c-alert-group__item');
|
|
151
|
+
expect(alertGroupItem).toHaveClass('pf-m-offstage-top');
|
|
152
|
+
});
|
|
153
|
+
|
|
154
|
+
test('local hasAnimations prop takes precedence over context', () => {
|
|
155
|
+
render(
|
|
156
|
+
<AnimationsProvider config={{ hasAnimations: true }}>
|
|
157
|
+
<AlertGroup hasAnimations={false}>
|
|
158
|
+
<Alert title="Test Alert" />
|
|
159
|
+
</AlertGroup>
|
|
160
|
+
</AnimationsProvider>
|
|
161
|
+
);
|
|
162
|
+
|
|
163
|
+
// Should not apply animation class when local hasAnimations=false overrides context
|
|
164
|
+
const alertGroupItem = screen.getByText('Test Alert').closest('.pf-v6-c-alert-group__item');
|
|
165
|
+
expect(alertGroupItem).not.toHaveClass('pf-m-offstage-top');
|
|
166
|
+
});
|
|
167
|
+
|
|
168
|
+
test('works without AnimationsProvider (backward compatibility)', () => {
|
|
169
|
+
render(
|
|
170
|
+
<AlertGroup>
|
|
171
|
+
<Alert title="Test Alert" />
|
|
172
|
+
</AlertGroup>
|
|
173
|
+
);
|
|
174
|
+
|
|
175
|
+
// Should not apply animation class when no context and no local hasAnimations
|
|
176
|
+
const alertGroupItem = screen.getByText('Test Alert').closest('.pf-v6-c-alert-group__item');
|
|
177
|
+
expect(alertGroupItem).not.toHaveClass('pf-m-offstage-top');
|
|
178
|
+
});
|
|
179
|
+
});
|
|
@@ -49,6 +49,8 @@ export interface ClipboardCopyProps extends Omit<React.HTMLProps<HTMLDivElement>
|
|
|
49
49
|
hoverTip?: string;
|
|
50
50
|
/** Tooltip message to display when clicking the copy button */
|
|
51
51
|
clickTip?: string;
|
|
52
|
+
/** Aria-label to use on the copy button */
|
|
53
|
+
copyAriaLabel?: string;
|
|
52
54
|
/** Aria-label to use on the TextInput. */
|
|
53
55
|
textAriaLabel?: string;
|
|
54
56
|
/** Aria-label to use on the ClipboardCopyToggle. */
|
|
@@ -194,6 +196,7 @@ class ClipboardCopy extends Component<ClipboardCopyProps, ClipboardCopyState> {
|
|
|
194
196
|
truncation,
|
|
195
197
|
ouiaId,
|
|
196
198
|
ouiaSafe,
|
|
199
|
+
copyAriaLabel,
|
|
197
200
|
...divProps
|
|
198
201
|
} = this.props;
|
|
199
202
|
const textIdPrefix = 'text-input-';
|
|
@@ -250,8 +253,7 @@ class ClipboardCopy extends Component<ClipboardCopyProps, ClipboardCopyState> {
|
|
|
250
253
|
maxWidth={maxWidth}
|
|
251
254
|
position={position}
|
|
252
255
|
id={`copy-button-${id}`}
|
|
253
|
-
|
|
254
|
-
aria-label={hoverTip}
|
|
256
|
+
aria-label={copyAriaLabel ?? hoverTip}
|
|
255
257
|
onClick={(event: any) => {
|
|
256
258
|
onCopy(event, copyableText);
|
|
257
259
|
this.setState({ copied: true });
|
|
@@ -285,7 +287,6 @@ class ClipboardCopy extends Component<ClipboardCopyProps, ClipboardCopyState> {
|
|
|
285
287
|
}
|
|
286
288
|
}}
|
|
287
289
|
id={`${toggleIdPrefix}${id}`}
|
|
288
|
-
textId={`${textIdPrefix}${id}`}
|
|
289
290
|
contentId={`${contentIdPrefix}${id}`}
|
|
290
291
|
aria-label={toggleAriaLabel}
|
|
291
292
|
/>
|
|
@@ -304,8 +305,7 @@ class ClipboardCopy extends Component<ClipboardCopyProps, ClipboardCopyState> {
|
|
|
304
305
|
maxWidth={maxWidth}
|
|
305
306
|
position={position}
|
|
306
307
|
id={`copy-button-${id}`}
|
|
307
|
-
|
|
308
|
-
aria-label={hoverTip}
|
|
308
|
+
aria-label={copyAriaLabel ?? hoverTip}
|
|
309
309
|
onClick={(event: any) => {
|
|
310
310
|
onCopy(event, this.state.expanded ? this.state.textWhenExpanded : copyableText);
|
|
311
311
|
this.setState({ copied: true });
|
|
@@ -11,8 +11,8 @@ export interface ClipboardCopyButtonProps
|
|
|
11
11
|
children: React.ReactNode;
|
|
12
12
|
/** ID of the copy button */
|
|
13
13
|
id: string;
|
|
14
|
-
/** ID of the content that is being copied */
|
|
15
|
-
textId
|
|
14
|
+
/** @deprecated ID of the content that is being copied */
|
|
15
|
+
textId?: string;
|
|
16
16
|
/** Additional classes added to the copy button */
|
|
17
17
|
className?: string;
|
|
18
18
|
/** Exit delay on the copy button tooltip */
|
|
@@ -55,7 +55,6 @@ export const ClipboardCopyButton: React.FunctionComponent<ClipboardCopyButtonPro
|
|
|
55
55
|
position = 'top',
|
|
56
56
|
'aria-label': ariaLabel = 'Copyable input',
|
|
57
57
|
id,
|
|
58
|
-
textId,
|
|
59
58
|
children,
|
|
60
59
|
variant = 'control',
|
|
61
60
|
onTooltipHidden = () => {},
|
|
@@ -86,7 +85,6 @@ export const ClipboardCopyButton: React.FunctionComponent<ClipboardCopyButtonPro
|
|
|
86
85
|
aria-label={ariaLabel}
|
|
87
86
|
className={className}
|
|
88
87
|
id={id}
|
|
89
|
-
aria-labelledby={`${id} ${textId}`}
|
|
90
88
|
icon={<CopyIcon />}
|
|
91
89
|
{...props}
|
|
92
90
|
ref={triggerRef}
|
|
@@ -7,7 +7,6 @@ export interface ClipboardCopyToggleProps
|
|
|
7
7
|
extends Omit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, 'ref'> {
|
|
8
8
|
onClick: (event: React.MouseEvent) => void;
|
|
9
9
|
id: string;
|
|
10
|
-
textId: string;
|
|
11
10
|
contentId: string;
|
|
12
11
|
isExpanded?: boolean;
|
|
13
12
|
className?: string;
|
|
@@ -16,7 +15,6 @@ export interface ClipboardCopyToggleProps
|
|
|
16
15
|
export const ClipboardCopyToggle: React.FunctionComponent<ClipboardCopyToggleProps> = ({
|
|
17
16
|
onClick,
|
|
18
17
|
id,
|
|
19
|
-
textId,
|
|
20
18
|
contentId,
|
|
21
19
|
isExpanded = false,
|
|
22
20
|
...props
|
|
@@ -26,7 +24,6 @@ export const ClipboardCopyToggle: React.FunctionComponent<ClipboardCopyTogglePro
|
|
|
26
24
|
variant="control"
|
|
27
25
|
onClick={onClick}
|
|
28
26
|
id={id}
|
|
29
|
-
aria-labelledby={`${id} ${textId}`}
|
|
30
27
|
aria-controls={isExpanded ? contentId : undefined}
|
|
31
28
|
aria-expanded={isExpanded}
|
|
32
29
|
{...props}
|
|
@@ -265,6 +265,22 @@ test('Passes position to ClipboardCopyButton when variant is inline-compact', ()
|
|
|
265
265
|
expect(screen.getByText('position: bottom')).toBeVisible();
|
|
266
266
|
});
|
|
267
267
|
|
|
268
|
+
test('Passes copyAriaLabel to ClipboardCopyButton', () => {
|
|
269
|
+
render(<ClipboardCopy copyAriaLabel="Copy text">{children}</ClipboardCopy>);
|
|
270
|
+
|
|
271
|
+
expect(screen.getByText('button-ariaLabel: Copy text')).toBeVisible();
|
|
272
|
+
});
|
|
273
|
+
|
|
274
|
+
test('Passes copyAriaLabel over hoverTip to ClipboardCopyButton when both are provided', () => {
|
|
275
|
+
render(
|
|
276
|
+
<ClipboardCopy copyAriaLabel="Copy text" hoverTip="Hover tip">
|
|
277
|
+
{children}
|
|
278
|
+
</ClipboardCopy>
|
|
279
|
+
);
|
|
280
|
+
|
|
281
|
+
expect(screen.getByText('button-ariaLabel: Copy text')).toBeVisible();
|
|
282
|
+
});
|
|
283
|
+
|
|
268
284
|
test('Passes toggleAriaLabel to ClipboardCopyToggle when variant is expansion', () => {
|
|
269
285
|
render(
|
|
270
286
|
<ClipboardCopy variant="expansion" toggleAriaLabel="toggle label">
|
|
@@ -21,8 +21,7 @@ jest.mock('../../Tooltip', () => ({
|
|
|
21
21
|
const requiredProps = {
|
|
22
22
|
onClick: jest.fn(),
|
|
23
23
|
children: 'Button content',
|
|
24
|
-
id: 'button-id'
|
|
25
|
-
textId: 'text-id'
|
|
24
|
+
id: 'button-id'
|
|
26
25
|
};
|
|
27
26
|
|
|
28
27
|
// Must be kept as first test to avoid Button's ouiaId updating in snapshots
|
|
@@ -37,37 +36,15 @@ test('Renders with passed id prop', () => {
|
|
|
37
36
|
expect(screen.getByRole('button')).toHaveAttribute('id', 'button-id');
|
|
38
37
|
});
|
|
39
38
|
|
|
40
|
-
test('Renders with aria-
|
|
39
|
+
test('Renders with aria-label', () => {
|
|
41
40
|
render(
|
|
42
41
|
<>
|
|
43
|
-
<div
|
|
44
|
-
<ClipboardCopyButton {...requiredProps} />
|
|
45
|
-
</>
|
|
46
|
-
);
|
|
47
|
-
|
|
48
|
-
expect(screen.getByRole('button')).toHaveAccessibleName('Copyable input Copyable text');
|
|
49
|
-
});
|
|
50
|
-
|
|
51
|
-
test('Renders with concatenated aria-label by default', () => {
|
|
52
|
-
render(
|
|
53
|
-
<>
|
|
54
|
-
<div id="text-id">Copyable text</div>
|
|
55
|
-
<ClipboardCopyButton {...requiredProps} />
|
|
56
|
-
</>
|
|
57
|
-
);
|
|
58
|
-
|
|
59
|
-
expect(screen.getByRole('button')).toHaveAccessibleName('Copyable input Copyable text');
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
test('Renders with concatenated aria-label when custom aria-label is passed', () => {
|
|
63
|
-
render(
|
|
64
|
-
<>
|
|
65
|
-
<div id="text-id">Copyable text</div>
|
|
66
|
-
<ClipboardCopyButton aria-label="Custom label" {...requiredProps} />
|
|
42
|
+
<div>Copyable text</div>
|
|
43
|
+
<ClipboardCopyButton aria-label="Copy" {...requiredProps} />
|
|
67
44
|
</>
|
|
68
45
|
);
|
|
69
46
|
|
|
70
|
-
expect(screen.getByRole('button')).toHaveAccessibleName('
|
|
47
|
+
expect(screen.getByRole('button')).toHaveAccessibleName('Copy');
|
|
71
48
|
});
|
|
72
49
|
|
|
73
50
|
test('Passes className to Button', () => {
|
|
@@ -5,7 +5,6 @@ import userEvent from '@testing-library/user-event';
|
|
|
5
5
|
const onClickMock = jest.fn();
|
|
6
6
|
const requiredProps = {
|
|
7
7
|
id: 'main-id',
|
|
8
|
-
textId: 'text-id',
|
|
9
8
|
contentId: 'content-id',
|
|
10
9
|
onClick: onClickMock
|
|
11
10
|
};
|
|
@@ -33,15 +32,15 @@ test('Renders with id prop', () => {
|
|
|
33
32
|
expect(screen.getByRole('button')).toHaveAttribute('id', requiredProps.id);
|
|
34
33
|
});
|
|
35
34
|
|
|
36
|
-
test('Renders with aria-
|
|
35
|
+
test('Renders with aria-label', () => {
|
|
37
36
|
render(
|
|
38
37
|
<>
|
|
39
38
|
<ClipboardCopyToggle aria-label="Toggle content" {...requiredProps} />
|
|
40
|
-
<span
|
|
39
|
+
<span>Test content</span>
|
|
41
40
|
</>
|
|
42
41
|
);
|
|
43
42
|
|
|
44
|
-
expect(screen.getByRole('button')).toHaveAccessibleName('Toggle content
|
|
43
|
+
expect(screen.getByRole('button')).toHaveAccessibleName('Toggle content');
|
|
45
44
|
});
|
|
46
45
|
|
|
47
46
|
test('Does not render with aria-controls when isExpanded is false', () => {
|
|
@@ -18,7 +18,7 @@ exports[`Matches snapshot 1`] = `
|
|
|
18
18
|
<input
|
|
19
19
|
aria-invalid="false"
|
|
20
20
|
aria-label="Copyable input"
|
|
21
|
-
data-ouia-component-id="OUIA-Generated-TextInputBase-
|
|
21
|
+
data-ouia-component-id="OUIA-Generated-TextInputBase-36"
|
|
22
22
|
data-ouia-component-type="PF6/TextInput"
|
|
23
23
|
data-ouia-safe="true"
|
|
24
24
|
id="text-input-generated-id"
|
package/src/components/ClipboardCopy/__tests__/__snapshots__/ClipboardCopyButton.test.tsx.snap
CHANGED
|
@@ -29,7 +29,6 @@ exports[`Matches snapshot 1`] = `
|
|
|
29
29
|
</a>
|
|
30
30
|
<button
|
|
31
31
|
aria-label="Copyable input"
|
|
32
|
-
aria-labelledby="button-id text-id"
|
|
33
32
|
class="pf-v6-c-button pf-m-control"
|
|
34
33
|
data-ouia-component-id="OUIA-Generated-Button-control-1"
|
|
35
34
|
data-ouia-component-type="PF6/Button"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ClipboardCopy } from '@patternfly/react-core';
|
|
2
2
|
|
|
3
3
|
export const ClipboardCopyBasic: React.FunctionComponent = () => (
|
|
4
|
-
<ClipboardCopy hoverTip="Copy" clickTip="Copied">
|
|
4
|
+
<ClipboardCopy copyAriaLabel="Copy basic example" hoverTip="Copy" clickTip="Copied">
|
|
5
5
|
This is editable
|
|
6
6
|
</ClipboardCopy>
|
|
7
7
|
);
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import { ClipboardCopy, ClipboardCopyVariant } from '@patternfly/react-core';
|
|
2
2
|
|
|
3
3
|
export const ClipboardCopyExpanded: React.FunctionComponent = () => (
|
|
4
|
-
<ClipboardCopy
|
|
4
|
+
<ClipboardCopy
|
|
5
|
+
toggleAriaLabel="Show content for expanded example"
|
|
6
|
+
copyAriaLabel="Copy expanded example"
|
|
7
|
+
hoverTip="Copy"
|
|
8
|
+
clickTip="Copied"
|
|
9
|
+
variant={ClipboardCopyVariant.expansion}
|
|
10
|
+
>
|
|
5
11
|
Got a lot of text here, need to see all of it? Click that arrow on the left side and check out the resulting
|
|
6
12
|
expansion.
|
|
7
13
|
</ClipboardCopy>
|
|
@@ -7,7 +7,13 @@ const text = [
|
|
|
7
7
|
];
|
|
8
8
|
|
|
9
9
|
export const ClipboardCopyExpandedWithArray: React.FunctionComponent = () => (
|
|
10
|
-
<ClipboardCopy
|
|
10
|
+
<ClipboardCopy
|
|
11
|
+
copyAriaLabel="Copy expanded example with array"
|
|
12
|
+
toggleAriaLabel="Show content for expanded example with array"
|
|
13
|
+
hoverTip="Copy"
|
|
14
|
+
clickTip="Copied"
|
|
15
|
+
variant={ClipboardCopyVariant.expansion}
|
|
16
|
+
>
|
|
11
17
|
{text.join(' ')}
|
|
12
18
|
</ClipboardCopy>
|
|
13
19
|
);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ClipboardCopy } from '@patternfly/react-core';
|
|
2
2
|
export const ClipboardCopyInlineCompact: React.FunctionComponent = () => (
|
|
3
|
-
<ClipboardCopy hoverTip="Copy" clickTip="Copied" variant="inline-compact">
|
|
3
|
+
<ClipboardCopy copyAriaLabel="Copy inline compact example" hoverTip="Copy" clickTip="Copied" variant="inline-compact">
|
|
4
4
|
2.3.4-2-redhat
|
|
5
5
|
</ClipboardCopy>
|
|
6
6
|
);
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import { ClipboardCopy } from '@patternfly/react-core';
|
|
2
2
|
|
|
3
3
|
export const ClipboardCopyInlineCompactCode: React.FunctionComponent = () => (
|
|
4
|
-
<ClipboardCopy
|
|
4
|
+
<ClipboardCopy
|
|
5
|
+
copyAriaLabel="Copy inline compact code example"
|
|
6
|
+
hoverTip="Copy"
|
|
7
|
+
clickTip="Copied"
|
|
8
|
+
variant="inline-compact"
|
|
9
|
+
isCode
|
|
10
|
+
>
|
|
5
11
|
2.3.4-2-redhat
|
|
6
12
|
</ClipboardCopy>
|
|
7
13
|
);
|
|
@@ -7,7 +7,12 @@ export const ClipboardCopyInlineCompactInSentence: React.FunctionComponent = ()
|
|
|
7
7
|
<br />
|
|
8
8
|
Lorem ipsum{' '}
|
|
9
9
|
{
|
|
10
|
-
<ClipboardCopy
|
|
10
|
+
<ClipboardCopy
|
|
11
|
+
copyAriaLabel="Copy inline compact basic example"
|
|
12
|
+
hoverTip="Copy"
|
|
13
|
+
clickTip="Copied"
|
|
14
|
+
variant="inline-compact"
|
|
15
|
+
>
|
|
11
16
|
2.3.4-2-redhat
|
|
12
17
|
</ClipboardCopy>
|
|
13
18
|
}
|
|
@@ -17,7 +22,12 @@ export const ClipboardCopyInlineCompactInSentence: React.FunctionComponent = ()
|
|
|
17
22
|
<br />
|
|
18
23
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{' '}
|
|
19
24
|
{
|
|
20
|
-
<ClipboardCopy
|
|
25
|
+
<ClipboardCopy
|
|
26
|
+
copyAriaLabel="Copy inline compact long copy string example"
|
|
27
|
+
hoverTip="Copy"
|
|
28
|
+
clickTip="Copied"
|
|
29
|
+
variant="inline-compact"
|
|
30
|
+
>
|
|
21
31
|
https://app.openshift.io/path/sub-path/sub-sub-path/?runtime=quarkus/12345678901234567890/abcdefghijklmnopqrstuvwxyz1234567890
|
|
22
32
|
</ClipboardCopy>
|
|
23
33
|
}{' '}
|
|
@@ -27,7 +37,13 @@ export const ClipboardCopyInlineCompactInSentence: React.FunctionComponent = ()
|
|
|
27
37
|
<br />
|
|
28
38
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{' '}
|
|
29
39
|
{
|
|
30
|
-
<ClipboardCopy
|
|
40
|
+
<ClipboardCopy
|
|
41
|
+
copyAriaLabel="Copy inline compact long copy string in block example"
|
|
42
|
+
hoverTip="Copy"
|
|
43
|
+
clickTip="Copied"
|
|
44
|
+
variant="inline-compact"
|
|
45
|
+
isBlock
|
|
46
|
+
>
|
|
31
47
|
https://app.openshift.io/path/sub-path/sub-sub-path/?runtime=quarkus/12345678901234567890/abcdefghijklmnopqrstuvwxyz1234567890
|
|
32
48
|
</ClipboardCopy>
|
|
33
49
|
}{' '}
|