@patternfly/react-core 6.0.0-alpha.19 → 6.0.0-alpha.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 +162 -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/Chip/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/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/DragDrop/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/Text/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/Tile/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/ApplicationLauncher/package.json +1 -1
- package/dist/dynamic/deprecated/components/ContextSelector/package.json +1 -1
- package/dist/dynamic/deprecated/components/Dropdown/package.json +1 -1
- package/dist/dynamic/deprecated/components/OptionsMenu/package.json +1 -1
- package/dist/dynamic/deprecated/components/PageHeader/package.json +1 -1
- package/dist/dynamic/deprecated/components/Select/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/favorites/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/next/components/Modal/package.json +1 -0
- package/dist/dynamic/next/components/package.json +1 -1
- package/dist/dynamic/styles/package.json +1 -0
- package/dist/esm/components/Accordion/Accordion.d.ts +2 -0
- package/dist/esm/components/Accordion/Accordion.d.ts.map +1 -1
- package/dist/esm/components/Accordion/Accordion.js +4 -3
- package/dist/esm/components/Accordion/Accordion.js.map +1 -1
- package/dist/esm/components/Accordion/AccordionContext.d.ts +1 -0
- package/dist/esm/components/Accordion/AccordionContext.d.ts.map +1 -1
- package/dist/esm/components/Accordion/AccordionContext.js.map +1 -1
- package/dist/esm/components/Accordion/AccordionToggle.d.ts.map +1 -1
- package/dist/esm/components/Accordion/AccordionToggle.js +7 -4
- package/dist/esm/components/Accordion/AccordionToggle.js.map +1 -1
- package/dist/esm/components/Checkbox/Checkbox.d.ts +9 -3
- package/dist/esm/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/esm/components/Checkbox/Checkbox.js +16 -8
- package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/esm/components/Chip/Chip.d.ts.map +1 -1
- package/dist/esm/components/Chip/Chip.js +3 -1
- package/dist/esm/components/Chip/Chip.js.map +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopy.js +2 -1
- package/dist/esm/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
- package/dist/esm/components/DragDrop/index.d.ts +1 -0
- package/dist/esm/components/DragDrop/index.d.ts.map +1 -1
- package/dist/esm/components/DragDrop/index.js +1 -0
- package/dist/esm/components/DragDrop/index.js.map +1 -1
- package/dist/esm/components/Dropdown/DropdownItem.d.ts +1 -1
- package/dist/esm/components/DualListSelector/index.d.ts +2 -0
- package/dist/esm/components/DualListSelector/index.d.ts.map +1 -1
- package/dist/esm/components/DualListSelector/index.js +2 -0
- package/dist/esm/components/DualListSelector/index.js.map +1 -1
- package/dist/esm/components/FileUpload/FileUploadField.d.ts +2 -0
- package/dist/esm/components/FileUpload/FileUploadField.d.ts.map +1 -1
- package/dist/esm/components/FileUpload/FileUploadField.js +3 -3
- package/dist/esm/components/FileUpload/FileUploadField.js.map +1 -1
- package/dist/esm/components/Popover/Popover.js +4 -4
- package/dist/esm/components/Popover/Popover.js.map +1 -1
- package/dist/esm/components/Radio/Radio.d.ts +7 -5
- package/dist/esm/components/Radio/Radio.d.ts.map +1 -1
- package/dist/esm/components/Radio/Radio.js +13 -20
- package/dist/esm/components/Radio/Radio.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarChipGroupContent.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarChipGroupContent.js +1 -4
- package/dist/esm/components/Toolbar/ToolbarChipGroupContent.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarExpandableContent.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarExpandableContent.js +1 -3
- package/dist/esm/components/Toolbar/ToolbarExpandableContent.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarGroup.d.ts +2 -3
- package/dist/esm/components/Toolbar/ToolbarGroup.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarGroup.js +1 -4
- package/dist/esm/components/Toolbar/ToolbarGroup.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarItem.d.ts +1 -13
- package/dist/esm/components/Toolbar/ToolbarItem.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarItem.js +2 -20
- package/dist/esm/components/Toolbar/ToolbarItem.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarToggleGroup.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarToggleGroup.js +1 -3
- package/dist/esm/components/Toolbar/ToolbarToggleGroup.js.map +1 -1
- package/dist/esm/components/index.d.ts +1 -1
- package/dist/esm/components/index.d.ts.map +1 -1
- package/dist/esm/components/index.js +1 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/next/components/Modal/Modal.d.ts +73 -0
- package/dist/esm/next/components/Modal/Modal.d.ts.map +1 -0
- package/dist/esm/next/components/Modal/Modal.js +114 -0
- package/dist/esm/next/components/Modal/Modal.js.map +1 -0
- package/dist/esm/next/components/Modal/ModalBody.d.ts +19 -0
- package/dist/esm/next/components/Modal/ModalBody.d.ts.map +1 -0
- package/dist/esm/next/components/Modal/ModalBody.js +11 -0
- package/dist/esm/next/components/Modal/ModalBody.js.map +1 -0
- package/dist/esm/next/components/Modal/ModalBox.d.ts +21 -0
- package/dist/esm/next/components/Modal/ModalBox.d.ts.map +1 -0
- package/dist/esm/next/components/Modal/ModalBox.js +15 -0
- package/dist/esm/next/components/Modal/ModalBox.js.map +1 -0
- package/dist/esm/next/components/Modal/ModalBoxCloseButton.d.ts +14 -0
- package/dist/esm/next/components/Modal/ModalBoxCloseButton.d.ts.map +1 -0
- package/dist/esm/next/components/Modal/ModalBoxCloseButton.js +14 -0
- package/dist/esm/next/components/Modal/ModalBoxCloseButton.js.map +1 -0
- package/dist/esm/next/components/Modal/ModalBoxDescription.d.ts +11 -0
- package/dist/esm/next/components/Modal/ModalBoxDescription.d.ts.map +1 -0
- package/dist/esm/next/components/Modal/ModalBoxDescription.js +10 -0
- package/dist/esm/next/components/Modal/ModalBoxDescription.js.map +1 -0
- package/dist/esm/next/components/Modal/ModalBoxTitle.d.ts +17 -0
- package/dist/esm/next/components/Modal/ModalBoxTitle.d.ts.map +1 -0
- package/dist/esm/next/components/Modal/ModalBoxTitle.js +38 -0
- package/dist/esm/next/components/Modal/ModalBoxTitle.js.map +1 -0
- package/dist/esm/next/components/Modal/ModalContent.d.ts +42 -0
- package/dist/esm/next/components/Modal/ModalContent.d.ts.map +1 -0
- package/dist/esm/next/components/Modal/ModalContent.js +45 -0
- package/dist/esm/next/components/Modal/ModalContent.js.map +1 -0
- package/dist/esm/next/components/Modal/ModalFooter.d.ts +10 -0
- package/dist/esm/next/components/Modal/ModalFooter.d.ts.map +1 -0
- package/dist/esm/next/components/Modal/ModalFooter.js +10 -0
- package/dist/esm/next/components/Modal/ModalFooter.js.map +1 -0
- package/dist/esm/next/components/Modal/ModalHeader.d.ts +25 -0
- package/dist/esm/next/components/Modal/ModalHeader.d.ts.map +1 -0
- package/dist/esm/next/components/Modal/ModalHeader.js +21 -0
- package/dist/esm/next/components/Modal/ModalHeader.js.map +1 -0
- package/dist/esm/next/components/Modal/index.d.ts +5 -0
- package/dist/esm/next/components/Modal/index.d.ts.map +1 -0
- package/dist/esm/next/components/Modal/index.js +5 -0
- package/dist/esm/next/components/Modal/index.js.map +1 -0
- package/dist/esm/next/components/index.d.ts +1 -1
- package/dist/esm/next/components/index.d.ts.map +1 -1
- package/dist/esm/next/components/index.js +1 -1
- package/dist/esm/next/components/index.js.map +1 -1
- package/dist/esm/styles/index.d.ts +2 -0
- package/dist/esm/styles/index.d.ts.map +1 -0
- package/dist/esm/styles/index.js +2 -0
- package/dist/esm/styles/index.js.map +1 -0
- package/dist/js/components/Accordion/Accordion.d.ts +2 -0
- package/dist/js/components/Accordion/Accordion.d.ts.map +1 -1
- package/dist/js/components/Accordion/Accordion.js +4 -3
- package/dist/js/components/Accordion/Accordion.js.map +1 -1
- package/dist/js/components/Accordion/AccordionContext.d.ts +1 -0
- package/dist/js/components/Accordion/AccordionContext.d.ts.map +1 -1
- package/dist/js/components/Accordion/AccordionContext.js.map +1 -1
- package/dist/js/components/Accordion/AccordionToggle.d.ts.map +1 -1
- package/dist/js/components/Accordion/AccordionToggle.js +7 -4
- package/dist/js/components/Accordion/AccordionToggle.js.map +1 -1
- package/dist/js/components/Checkbox/Checkbox.d.ts +9 -3
- package/dist/js/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/js/components/Checkbox/Checkbox.js +16 -8
- package/dist/js/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/js/components/Chip/Chip.d.ts.map +1 -1
- package/dist/js/components/Chip/Chip.js +3 -1
- package/dist/js/components/Chip/Chip.js.map +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopy.js +2 -1
- package/dist/js/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
- package/dist/js/components/DragDrop/index.d.ts +1 -0
- package/dist/js/components/DragDrop/index.d.ts.map +1 -1
- package/dist/js/components/DragDrop/index.js +1 -0
- package/dist/js/components/DragDrop/index.js.map +1 -1
- package/dist/js/components/Dropdown/DropdownItem.d.ts +1 -1
- package/dist/js/components/DualListSelector/index.d.ts +2 -0
- package/dist/js/components/DualListSelector/index.d.ts.map +1 -1
- package/dist/js/components/DualListSelector/index.js +2 -0
- package/dist/js/components/DualListSelector/index.js.map +1 -1
- package/dist/js/components/FileUpload/FileUploadField.d.ts +2 -0
- package/dist/js/components/FileUpload/FileUploadField.d.ts.map +1 -1
- package/dist/js/components/FileUpload/FileUploadField.js +3 -3
- package/dist/js/components/FileUpload/FileUploadField.js.map +1 -1
- package/dist/js/components/Popover/Popover.js +4 -4
- package/dist/js/components/Popover/Popover.js.map +1 -1
- package/dist/js/components/Radio/Radio.d.ts +7 -5
- package/dist/js/components/Radio/Radio.d.ts.map +1 -1
- package/dist/js/components/Radio/Radio.js +13 -20
- package/dist/js/components/Radio/Radio.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarChipGroupContent.d.ts.map +1 -1
- package/dist/js/components/Toolbar/ToolbarChipGroupContent.js +1 -4
- package/dist/js/components/Toolbar/ToolbarChipGroupContent.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarExpandableContent.d.ts.map +1 -1
- package/dist/js/components/Toolbar/ToolbarExpandableContent.js +1 -3
- package/dist/js/components/Toolbar/ToolbarExpandableContent.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarGroup.d.ts +2 -3
- package/dist/js/components/Toolbar/ToolbarGroup.d.ts.map +1 -1
- package/dist/js/components/Toolbar/ToolbarGroup.js +1 -4
- package/dist/js/components/Toolbar/ToolbarGroup.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarItem.d.ts +1 -13
- package/dist/js/components/Toolbar/ToolbarItem.d.ts.map +1 -1
- package/dist/js/components/Toolbar/ToolbarItem.js +2 -20
- package/dist/js/components/Toolbar/ToolbarItem.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarToggleGroup.d.ts.map +1 -1
- package/dist/js/components/Toolbar/ToolbarToggleGroup.js +1 -3
- package/dist/js/components/Toolbar/ToolbarToggleGroup.js.map +1 -1
- package/dist/js/components/index.d.ts +1 -1
- package/dist/js/components/index.d.ts.map +1 -1
- package/dist/js/components/index.js +1 -1
- package/dist/js/components/index.js.map +1 -1
- package/dist/js/index.d.ts +1 -1
- package/dist/js/index.d.ts.map +1 -1
- package/dist/js/index.js +1 -4
- package/dist/js/index.js.map +1 -1
- package/dist/js/next/components/Modal/Modal.d.ts +73 -0
- package/dist/js/next/components/Modal/Modal.d.ts.map +1 -0
- package/dist/js/next/components/Modal/Modal.js +117 -0
- package/dist/js/next/components/Modal/Modal.js.map +1 -0
- package/dist/js/next/components/Modal/ModalBody.d.ts +19 -0
- package/dist/js/next/components/Modal/ModalBody.d.ts.map +1 -0
- package/dist/js/next/components/Modal/ModalBody.js +15 -0
- package/dist/js/next/components/Modal/ModalBody.js.map +1 -0
- package/dist/js/next/components/Modal/ModalBox.d.ts +21 -0
- package/dist/js/next/components/Modal/ModalBox.d.ts.map +1 -0
- package/dist/js/next/components/Modal/ModalBox.js +19 -0
- package/dist/js/next/components/Modal/ModalBox.js.map +1 -0
- package/dist/js/next/components/Modal/ModalBoxCloseButton.d.ts +14 -0
- package/dist/js/next/components/Modal/ModalBoxCloseButton.d.ts.map +1 -0
- package/dist/js/next/components/Modal/ModalBoxCloseButton.js +18 -0
- package/dist/js/next/components/Modal/ModalBoxCloseButton.js.map +1 -0
- package/dist/js/next/components/Modal/ModalBoxDescription.d.ts +11 -0
- package/dist/js/next/components/Modal/ModalBoxDescription.d.ts.map +1 -0
- package/dist/js/next/components/Modal/ModalBoxDescription.js +14 -0
- package/dist/js/next/components/Modal/ModalBoxDescription.js.map +1 -0
- package/dist/js/next/components/Modal/ModalBoxTitle.d.ts +17 -0
- package/dist/js/next/components/Modal/ModalBoxTitle.d.ts.map +1 -0
- package/dist/js/next/components/Modal/ModalBoxTitle.js +43 -0
- package/dist/js/next/components/Modal/ModalBoxTitle.js.map +1 -0
- package/dist/js/next/components/Modal/ModalContent.d.ts +42 -0
- package/dist/js/next/components/Modal/ModalContent.d.ts.map +1 -0
- package/dist/js/next/components/Modal/ModalContent.js +49 -0
- package/dist/js/next/components/Modal/ModalContent.js.map +1 -0
- package/dist/js/next/components/Modal/ModalFooter.d.ts +10 -0
- package/dist/js/next/components/Modal/ModalFooter.d.ts.map +1 -0
- package/dist/js/next/components/Modal/ModalFooter.js +14 -0
- package/dist/js/next/components/Modal/ModalFooter.js.map +1 -0
- package/dist/js/next/components/Modal/ModalHeader.d.ts +25 -0
- package/dist/js/next/components/Modal/ModalHeader.d.ts.map +1 -0
- package/dist/js/next/components/Modal/ModalHeader.js +25 -0
- package/dist/js/next/components/Modal/ModalHeader.js.map +1 -0
- package/dist/js/next/components/Modal/index.d.ts +5 -0
- package/dist/js/next/components/Modal/index.d.ts.map +1 -0
- package/dist/js/next/components/Modal/index.js +8 -0
- package/dist/js/next/components/Modal/index.js.map +1 -0
- package/dist/js/next/components/index.d.ts +1 -1
- package/dist/js/next/components/index.d.ts.map +1 -1
- package/dist/js/next/components/index.js +1 -1
- package/dist/js/next/components/index.js.map +1 -1
- package/dist/js/styles/index.d.ts +2 -0
- package/dist/js/styles/index.d.ts.map +1 -0
- package/dist/js/styles/index.js +5 -0
- package/dist/js/styles/index.js.map +1 -0
- package/dist/umd/react-core.min.js +1 -1
- package/helpers/package.json +1 -1
- package/layouts/package.json +1 -1
- package/next/package.json +1 -1
- package/package.json +5 -5
- package/single-packages.config.json +4 -4
- package/src/components/Accordion/Accordion.tsx +6 -1
- package/src/components/Accordion/AccordionContext.ts +1 -0
- package/src/components/Accordion/AccordionToggle.tsx +11 -5
- package/src/components/Accordion/__tests__/Accordion.test.tsx +12 -0
- package/src/components/Accordion/__tests__/AccordionToggle.test.tsx +28 -0
- package/src/components/Accordion/examples/Accordion.md +5 -0
- package/src/components/Accordion/examples/AccordionToggleIconAtStart.tsx +102 -0
- package/src/components/Checkbox/Checkbox.tsx +63 -29
- package/src/components/Checkbox/__tests__/Checkbox.test.tsx +41 -0
- package/src/components/Chip/Chip.tsx +2 -0
- package/src/components/Chip/__tests__/__snapshots__/Chip.test.tsx.snap +0 -1
- package/src/components/ClipboardCopy/ClipboardCopy.tsx +2 -1
- package/src/components/DataList/__tests__/__snapshots__/DataListAction.test.tsx.snap~HEAD +11 -0
- package/src/components/DataList/__tests__/__snapshots__/DataListAction.test.tsx.snap~main +11 -0
- package/src/components/DataList/__tests__/__snapshots__/DataListItemCells.test.tsx.snap~HEAD +9 -0
- package/src/components/DataList/__tests__/__snapshots__/DataListItemCells.test.tsx.snap~main +9 -0
- package/src/components/DataList/__tests__/__snapshots__/DataListItemRow.test.tsx.snap~HEAD +9 -0
- package/src/components/DataList/__tests__/__snapshots__/DataListItemRow.test.tsx.snap~main +9 -0
- package/src/components/DataList/examples/DataList.md +2 -2
- package/src/components/DragDrop/examples/DragDrop.md +4 -2
- package/src/components/DragDrop/examples/DragDropBasic.tsx +4 -4
- package/src/components/DragDrop/examples/DragDropMultipleLists.tsx +7 -2
- package/src/components/DragDrop/index.ts +1 -0
- package/src/components/DualListSelector/examples/DualListSelector.md +3 -1
- package/src/components/DualListSelector/index.ts +2 -0
- package/src/components/FileUpload/FileUploadField.tsx +4 -2
- package/src/components/FileUpload/__tests__/__snapshots__/FileUpload.test.tsx.snap +0 -1
- package/src/components/FileUpload/__tests__/__snapshots__/FileUploadField.test.tsx.snap +0 -1
- package/src/components/Popover/Popover.tsx +4 -4
- package/src/components/Radio/Radio.tsx +39 -38
- package/src/components/Radio/__tests__/Radio.test.tsx +41 -0
- package/src/components/Toolbar/ToolbarChipGroupContent.tsx +1 -7
- package/src/components/Toolbar/ToolbarExpandableContent.tsx +0 -1
- package/src/components/Toolbar/ToolbarGroup.tsx +2 -4
- package/src/components/Toolbar/ToolbarItem.tsx +2 -41
- package/src/components/Toolbar/ToolbarToggleGroup.tsx +0 -1
- package/src/components/Toolbar/__tests__/ToolbarItem.test.tsx +0 -14
- package/src/components/Toolbar/examples/Toolbar.md +0 -10
- package/src/components/Toolbar/examples/ToolbarComponentManagedToggleGroups.tsx +1 -1
- package/src/components/Toolbar/examples/ToolbarConsumerManagedToggleGroups.tsx +1 -1
- package/src/components/Toolbar/examples/ToolbarGroups.tsx +1 -1
- package/src/components/Toolbar/examples/ToolbarItems.tsx +1 -1
- package/src/components/Toolbar/examples/ToolbarStacked.tsx +2 -2
- package/src/components/Toolbar/examples/ToolbarWithFilters.tsx +1 -1
- package/src/components/TreeView/examples/TreeViewWithSearch.tsx +1 -1
- package/src/components/index.ts +1 -1
- package/src/demos/CardView/examples/CardView.tsx +2 -2
- package/src/demos/DataList/examples/DataListBasic.tsx +2 -2
- package/src/demos/ExpandableSection/ExpandableSection.md +17 -0
- package/src/demos/ExpandableSection/examples/ExpandableTextDemo.tsx +30 -0
- package/src/demos/Filters/examples/FilterSearchInput.tsx +1 -1
- package/src/index.ts +1 -1
- package/src/next/components/Modal/Modal.tsx +202 -0
- package/src/next/components/Modal/ModalBody.tsx +42 -0
- package/src/next/components/Modal/ModalBox.tsx +63 -0
- package/src/next/components/Modal/ModalBoxCloseButton.tsx +38 -0
- package/src/next/components/Modal/ModalBoxDescription.tsx +24 -0
- package/src/next/components/Modal/ModalBoxTitle.tsx +75 -0
- package/src/next/components/Modal/ModalContent.tsx +131 -0
- package/src/next/components/Modal/ModalFooter.tsx +23 -0
- package/src/next/components/Modal/ModalHeader.tsx +71 -0
- package/src/next/components/Modal/__tests__/Modal.test.tsx +145 -0
- package/src/next/components/Modal/__tests__/ModalBody.test.tsx +60 -0
- package/src/next/components/Modal/__tests__/ModalBox.test.tsx +58 -0
- package/src/next/components/Modal/__tests__/ModalBoxCloseButton.test.tsx +18 -0
- package/src/next/components/Modal/__tests__/ModalBoxDescription.test.tsx +8 -0
- package/src/next/components/Modal/__tests__/ModalBoxHeader.test.tsx +21 -0
- package/src/next/components/Modal/__tests__/ModalBoxTitle.test.tsx +37 -0
- package/src/next/components/Modal/__tests__/ModalContent.test.tsx +46 -0
- package/src/next/components/Modal/__tests__/ModalFooter.test.tsx +8 -0
- package/src/next/components/Modal/__tests__/__snapshots__/ModalBody.test.tsx.snap +12 -0
- package/src/next/components/Modal/__tests__/__snapshots__/ModalBox.test.tsx.snap +86 -0
- package/src/next/components/Modal/__tests__/__snapshots__/ModalBoxDescription.test.tsx.snap +12 -0
- package/src/next/components/Modal/__tests__/__snapshots__/ModalBoxHeader.test.tsx.snap +46 -0
- package/src/next/components/Modal/__tests__/__snapshots__/ModalBoxTitle.test.tsx.snap +218 -0
- package/src/next/components/Modal/__tests__/__snapshots__/ModalContent.test.tsx.snap +128 -0
- package/src/next/components/Modal/__tests__/__snapshots__/ModalFooter.test.tsx.snap +11 -0
- package/src/next/components/Modal/examples/Modal.md +148 -0
- package/src/next/components/Modal/examples/ModalBasic.tsx +43 -0
- package/src/next/components/Modal/examples/ModalCustomFocus.tsx +43 -0
- package/src/next/components/Modal/examples/ModalCustomHeader.tsx +58 -0
- package/src/next/components/Modal/examples/ModalCustomTitleIcon.tsx +54 -0
- package/src/next/components/Modal/examples/ModalCustomWidth.tsx +43 -0
- package/src/next/components/Modal/examples/ModalNoHeaderFooter.tsx +40 -0
- package/src/next/components/Modal/examples/ModalSize.tsx +63 -0
- package/src/next/components/Modal/examples/ModalTitleIcon.tsx +48 -0
- package/src/next/components/Modal/examples/ModalTopAligned.tsx +43 -0
- package/src/next/components/Modal/examples/ModalWithDescription.tsx +80 -0
- package/src/next/components/Modal/examples/ModalWithDropdown.tsx +105 -0
- package/src/next/components/Modal/examples/ModalWithForm.tsx +211 -0
- package/src/next/components/Modal/examples/ModalWithHelp.tsx +63 -0
- package/src/next/components/Modal/examples/ModalWithOverflowingContent.tsx +75 -0
- package/src/next/components/Modal/examples/ModalWithWizard.tsx +59 -0
- package/src/next/components/Modal/index.ts +4 -0
- package/src/next/components/index.ts +1 -1
- package/src/styles/index.ts +1 -0
- package/src/components/Toolbar/__tests__/__snapshots__/ToolbarItem.test.tsx.snap +0 -12
- package/src/components/Toolbar/examples/ToolbarWidths.tsx +0 -30
|
@@ -20,14 +20,14 @@ const getItems = (count: number) =>
|
|
|
20
20
|
}));
|
|
21
21
|
|
|
22
22
|
const reorder = (list: ItemType[], startIndex: number, endIndex: number) => {
|
|
23
|
-
const result = list;
|
|
23
|
+
const result = [...list];
|
|
24
24
|
const [removed] = result.splice(startIndex, 1);
|
|
25
25
|
result.splice(endIndex, 0, removed);
|
|
26
26
|
return result;
|
|
27
27
|
};
|
|
28
28
|
|
|
29
29
|
export const DragDropBasic: React.FunctionComponent = () => {
|
|
30
|
-
const [items, setItems] = React.useState(getItems(10));
|
|
30
|
+
const [items, setItems] = React.useState<ItemType[]>(getItems(10));
|
|
31
31
|
|
|
32
32
|
function onDrop(source: SourceType, dest: DestinationType) {
|
|
33
33
|
if (dest) {
|
|
@@ -42,8 +42,8 @@ export const DragDropBasic: React.FunctionComponent = () => {
|
|
|
42
42
|
return (
|
|
43
43
|
<DragDrop onDrop={onDrop}>
|
|
44
44
|
<Droppable>
|
|
45
|
-
{items.map(({ content }
|
|
46
|
-
<Draggable key={
|
|
45
|
+
{items.map(({ id, content }) => (
|
|
46
|
+
<Draggable key={id} style={{ padding: '8px' }}>
|
|
47
47
|
{content}
|
|
48
48
|
</Draggable>
|
|
49
49
|
))}
|
|
@@ -11,6 +11,11 @@ interface SourceType {
|
|
|
11
11
|
index: number;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
+
interface MultipleListState {
|
|
15
|
+
items1: ItemType[];
|
|
16
|
+
items2: ItemType[];
|
|
17
|
+
}
|
|
18
|
+
|
|
14
19
|
interface DestinationType extends SourceType {}
|
|
15
20
|
|
|
16
21
|
const getItems = (count: number, startIndex: number) =>
|
|
@@ -35,7 +40,7 @@ const move = (source: ItemType[], destination: ItemType[], sourceIndex: number,
|
|
|
35
40
|
};
|
|
36
41
|
|
|
37
42
|
export const DragDropMultipleLists: React.FunctionComponent = () => {
|
|
38
|
-
const [items, setItems] = React.useState({
|
|
43
|
+
const [items, setItems] = React.useState<MultipleListState>({
|
|
39
44
|
items1: getItems(10, 0),
|
|
40
45
|
items2: getItems(5, 10)
|
|
41
46
|
});
|
|
@@ -84,7 +89,7 @@ export const DragDropMultipleLists: React.FunctionComponent = () => {
|
|
|
84
89
|
{Object.entries(items).map(([key, subitems]) => (
|
|
85
90
|
<SplitItem key={key} style={{ flex: 1 }}>
|
|
86
91
|
<Droppable zone="multizone" droppableId={key}>
|
|
87
|
-
{subitems.map(({ id, content }) => (
|
|
92
|
+
{(subitems as ItemType[]).map(({ id, content }) => (
|
|
88
93
|
<Draggable key={id} style={{ padding: '8px' }}>
|
|
89
94
|
{content}
|
|
90
95
|
</Draggable>
|
|
@@ -87,6 +87,8 @@ The dual list selector can also be built in a composable manner to make customiz
|
|
|
87
87
|
|
|
88
88
|
### Composable with drag and drop
|
|
89
89
|
|
|
90
|
+
Note: There is a new recommended drag and drop implementation with full keyboard functionality, which replaces this implementation. To adhere to our new recommendations, refer to the [drag and drop demos](/components/drag-and-drop/react-next-demos).
|
|
91
|
+
|
|
90
92
|
This example only allows reordering the contents of the "chosen" pane with drag and drop. To make a pane able to be reordered:
|
|
91
93
|
|
|
92
94
|
- wrap the `DualListSelectorPane` in a `DragDrop` component
|
|
@@ -99,7 +101,7 @@ This example only allows reordering the contents of the "chosen" pane with drag
|
|
|
99
101
|
- define an `onDrag` callback which ensures that the drag event will not cross hairs with the `onOptionSelect` click
|
|
100
102
|
event set on the option. Note: the `ignoreNextOptionSelect` state value is used to prevent selection while dragging.
|
|
101
103
|
|
|
102
|
-
|
|
104
|
+
Keyboard and screen reader accessibility for the `<DragDrop>` component is still in development.
|
|
103
105
|
|
|
104
106
|
```ts file="DualListSelectorComposableDragDrop.tsx"
|
|
105
107
|
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
export * from './DualListSelector';
|
|
2
|
+
export * from './DualListSelectorContext';
|
|
2
3
|
export * from './DualListSelectorControl';
|
|
3
4
|
export * from './DualListSelectorControlsWrapper';
|
|
4
5
|
export * from './DualListSelectorPane';
|
|
5
6
|
export * from './DualListSelectorList';
|
|
6
7
|
export * from './DualListSelectorListItem';
|
|
7
8
|
export * from './DualListSelectorTree';
|
|
9
|
+
export * from './DualListSelectorContext';
|
|
@@ -37,6 +37,8 @@ export interface FileUploadFieldProps extends Omit<React.HTMLProps<HTMLDivElemen
|
|
|
37
37
|
hideDefaultPreview?: boolean;
|
|
38
38
|
/** Unique id for the text area. Also used to generate ids for accessible labels. */
|
|
39
39
|
id: string;
|
|
40
|
+
/** Name property for the text input. */
|
|
41
|
+
name?: string;
|
|
40
42
|
/** Flag to disable the clear button. */
|
|
41
43
|
isClearButtonDisabled?: boolean;
|
|
42
44
|
/** Flag to show if the field is disabled. */
|
|
@@ -84,6 +86,7 @@ export interface FileUploadFieldProps extends Omit<React.HTMLProps<HTMLDivElemen
|
|
|
84
86
|
|
|
85
87
|
export const FileUploadField: React.FunctionComponent<FileUploadFieldProps> = ({
|
|
86
88
|
id,
|
|
89
|
+
name,
|
|
87
90
|
type,
|
|
88
91
|
value = '',
|
|
89
92
|
filename = '',
|
|
@@ -135,7 +138,7 @@ export const FileUploadField: React.FunctionComponent<FileUploadFieldProps> = ({
|
|
|
135
138
|
readOnlyVariant="default" // Always read-only regardless of isReadOnly prop (which is just for the TextArea)
|
|
136
139
|
isDisabled={isDisabled}
|
|
137
140
|
id={`${id}-filename`}
|
|
138
|
-
name={`${id}-filename`}
|
|
141
|
+
name={name || `${id}-filename`}
|
|
139
142
|
aria-label={filenameAriaLabel}
|
|
140
143
|
placeholder={filenamePlaceholder}
|
|
141
144
|
aria-describedby={`${id}-browse-button`}
|
|
@@ -172,7 +175,6 @@ export const FileUploadField: React.FunctionComponent<FileUploadFieldProps> = ({
|
|
|
172
175
|
resizeOrientation={TextAreResizeOrientation.vertical}
|
|
173
176
|
validated={validated}
|
|
174
177
|
id={id}
|
|
175
|
-
name={id}
|
|
176
178
|
aria-label={ariaLabel}
|
|
177
179
|
value={value as string}
|
|
178
180
|
onChange={onTextAreaChange}
|
|
@@ -334,10 +334,10 @@ export const Popover: React.FunctionComponent<PopoverProps> = ({
|
|
|
334
334
|
};
|
|
335
335
|
const onDocumentClick = (event: MouseEvent, triggerElement: HTMLElement, popperElement: HTMLElement) => {
|
|
336
336
|
if (hideOnOutsideClick && visible) {
|
|
337
|
-
|
|
338
|
-
const
|
|
339
|
-
if (
|
|
340
|
-
// clicked within the popper
|
|
337
|
+
const isFromChild = popperElement && popperElement.contains(event.target as Node);
|
|
338
|
+
const isFromTrigger = triggerElement && triggerElement.contains(event.target as Node);
|
|
339
|
+
if (isFromChild || isFromTrigger) {
|
|
340
|
+
// if clicked within the popper or on the trigger, ignore this event
|
|
341
341
|
return;
|
|
342
342
|
}
|
|
343
343
|
if (triggerManually) {
|
|
@@ -7,17 +7,17 @@ import { getOUIAProps, OUIAProps, getDefaultOUIAId } from '../../helpers';
|
|
|
7
7
|
export interface RadioProps
|
|
8
8
|
extends Omit<React.HTMLProps<HTMLInputElement>, 'disabled' | 'label' | 'onChange' | 'type'>,
|
|
9
9
|
OUIAProps {
|
|
10
|
-
/** Additional classes added to the radio wrapper.
|
|
11
|
-
* isLabelWrapped is true,
|
|
10
|
+
/** Additional classes added to the radio wrapper. This wrapper will be div element by default. It will be a label element if
|
|
11
|
+
* isLabelWrapped is true, or it can be overridden by any element specified in the component prop.
|
|
12
12
|
*/
|
|
13
13
|
className?: string;
|
|
14
|
-
/** Additional
|
|
14
|
+
/** Additional classes added to the radio input. */
|
|
15
15
|
inputClassName?: string;
|
|
16
16
|
/** Id of the radio. */
|
|
17
17
|
id: string;
|
|
18
|
-
/** Flag to
|
|
18
|
+
/** Flag to indicate whether the radio wrapper element is a native label element for the radio input. Will not apply if a component prop (with a value other than a "label") is specified. */
|
|
19
19
|
isLabelWrapped?: boolean;
|
|
20
|
-
/** Flag to show if the radio label is shown before the radio
|
|
20
|
+
/** Flag to show if the radio label is shown before the radio input. */
|
|
21
21
|
isLabelBeforeButton?: boolean;
|
|
22
22
|
/** Flag to show if the radio is checked. */
|
|
23
23
|
checked?: boolean;
|
|
@@ -39,6 +39,8 @@ export interface RadioProps
|
|
|
39
39
|
description?: React.ReactNode;
|
|
40
40
|
/** Body of the radio. */
|
|
41
41
|
body?: React.ReactNode;
|
|
42
|
+
/** Sets the radio wrapper component to render. Defaults to "div". If set to "label", behaves the same as if isLabelWrapped prop was specified. */
|
|
43
|
+
component?: React.ElementType;
|
|
42
44
|
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
43
45
|
ouiaId?: number | string;
|
|
44
46
|
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
@@ -88,6 +90,7 @@ class Radio extends React.Component<RadioProps, { ouiaStateId: string }> {
|
|
|
88
90
|
body,
|
|
89
91
|
ouiaId,
|
|
90
92
|
ouiaSafe = true,
|
|
93
|
+
component,
|
|
91
94
|
...props
|
|
92
95
|
} = this.props;
|
|
93
96
|
if (!props.id) {
|
|
@@ -110,41 +113,39 @@ class Radio extends React.Component<RadioProps, { ouiaStateId: string }> {
|
|
|
110
113
|
/>
|
|
111
114
|
);
|
|
112
115
|
|
|
113
|
-
|
|
114
|
-
if (label && isLabelWrapped) {
|
|
115
|
-
labelRendered = <span className={css(styles.radioLabel, isDisabled && styles.modifiers.disabled)}>{label}</span>;
|
|
116
|
-
} else if (label) {
|
|
117
|
-
labelRendered = (
|
|
118
|
-
<label className={css(styles.radioLabel, isDisabled && styles.modifiers.disabled)} htmlFor={props.id}>
|
|
119
|
-
{label}
|
|
120
|
-
</label>
|
|
121
|
-
);
|
|
122
|
-
}
|
|
116
|
+
const wrapWithLabel = (isLabelWrapped && !component) || component === 'label';
|
|
123
117
|
|
|
124
|
-
const
|
|
125
|
-
const
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
{
|
|
129
|
-
|
|
130
|
-
{
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
{inputRendered}
|
|
136
|
-
{labelRendered}
|
|
137
|
-
{descRender}
|
|
138
|
-
{bodyRender}
|
|
139
|
-
</>
|
|
140
|
-
);
|
|
118
|
+
const Label = wrapWithLabel ? 'span' : 'label';
|
|
119
|
+
const labelRendered = label ? (
|
|
120
|
+
<Label
|
|
121
|
+
className={css(styles.radioLabel, isDisabled && styles.modifiers.disabled)}
|
|
122
|
+
htmlFor={!wrapWithLabel && props.id}
|
|
123
|
+
>
|
|
124
|
+
{label}
|
|
125
|
+
</Label>
|
|
126
|
+
) : null;
|
|
127
|
+
|
|
128
|
+
const Component = component ?? (wrapWithLabel ? 'label' : 'div');
|
|
141
129
|
|
|
142
|
-
return
|
|
143
|
-
<
|
|
144
|
-
{
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
130
|
+
return (
|
|
131
|
+
<Component
|
|
132
|
+
className={css(styles.radio, !label && styles.modifiers.standalone, className)}
|
|
133
|
+
htmlFor={wrapWithLabel && props.id}
|
|
134
|
+
>
|
|
135
|
+
{isLabelBeforeButton ? (
|
|
136
|
+
<>
|
|
137
|
+
{labelRendered}
|
|
138
|
+
{inputRendered}
|
|
139
|
+
</>
|
|
140
|
+
) : (
|
|
141
|
+
<>
|
|
142
|
+
{inputRendered}
|
|
143
|
+
{labelRendered}
|
|
144
|
+
</>
|
|
145
|
+
)}
|
|
146
|
+
{description && <span className={css(styles.radioDescription)}>{description}</span>}
|
|
147
|
+
{body && <span className={css(styles.radioBody)}>{body}</span>}
|
|
148
|
+
</Component>
|
|
148
149
|
);
|
|
149
150
|
}
|
|
150
151
|
}
|
|
@@ -100,4 +100,45 @@ describe('Radio', () => {
|
|
|
100
100
|
|
|
101
101
|
expect(myMock).toHaveBeenCalled();
|
|
102
102
|
});
|
|
103
|
+
|
|
104
|
+
test('Renders with the label wrapper if isLabelWrapped is provided', () => {
|
|
105
|
+
render(<Radio id="test-id" name="check" isLabelWrapped />);
|
|
106
|
+
|
|
107
|
+
expect(screen.getByRole('radio').parentElement?.tagName).toBe('LABEL');
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
test('Renders with span element around the inner label text if isLabelWrapped is provided', () => {
|
|
111
|
+
const labelText = 'test radio label';
|
|
112
|
+
render(<Radio id="test-id" name="check" isLabelWrapped label={labelText} />);
|
|
113
|
+
|
|
114
|
+
expect(screen.getByText(labelText).tagName).toBe('SPAN');
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
test('Renders with the provided component although isLabelWrapped is provided', () => {
|
|
118
|
+
render(<Radio id="test-id" name="check" isLabelWrapped component="h3" />);
|
|
119
|
+
|
|
120
|
+
expect(screen.getByRole('radio').parentElement?.tagName).toBe('H3');
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
test('Renders with the label wrapper if component is set to label', () => {
|
|
124
|
+
render(<Radio id="test-id" name="check" component="label" />);
|
|
125
|
+
|
|
126
|
+
expect(screen.getByRole('radio').parentElement?.tagName).toBe('LABEL');
|
|
127
|
+
});
|
|
128
|
+
|
|
129
|
+
test('Renders with span element around the inner label text if component is set to label', () => {
|
|
130
|
+
const labelText = 'test radio label';
|
|
131
|
+
render(<Radio id="test-id" name="check" component="label" label={labelText} />);
|
|
132
|
+
|
|
133
|
+
expect(screen.getByText(labelText).tagName).toBe('SPAN');
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
test('Renders label before radio input if isLabelBeforeButton is provided', () => {
|
|
137
|
+
render(<Radio id="test-id" name="check" isLabelBeforeButton label={'test radio label'} />);
|
|
138
|
+
|
|
139
|
+
const wrapper = screen.getByRole('radio').parentElement!;
|
|
140
|
+
|
|
141
|
+
expect(wrapper.children[0].tagName).toBe('LABEL');
|
|
142
|
+
expect(wrapper.children[1].tagName).toBe('INPUT');
|
|
143
|
+
});
|
|
103
144
|
});
|
|
@@ -72,13 +72,7 @@ class ToolbarChipGroupContent extends React.Component<ToolbarChipGroupContentPro
|
|
|
72
72
|
|
|
73
73
|
return (
|
|
74
74
|
<div
|
|
75
|
-
className={css(
|
|
76
|
-
styles.toolbarContent,
|
|
77
|
-
// TODO: Update with issue issue #9677
|
|
78
|
-
// !isHidden && !collapseListedFilters && styles.modifiers.chipContainer,
|
|
79
|
-
isHidden && styles.modifiers.hidden,
|
|
80
|
-
className
|
|
81
|
-
)}
|
|
75
|
+
className={css(styles.toolbarContent, isHidden && styles.modifiers.hidden, className)}
|
|
82
76
|
{...((numberOfFilters === 0 || isExpanded) && { hidden: true })}
|
|
83
77
|
ref={chipGroupContentRef}
|
|
84
78
|
{...props}
|
|
@@ -61,7 +61,6 @@ class ToolbarExpandableContent extends React.Component<ToolbarExpandableContentP
|
|
|
61
61
|
>
|
|
62
62
|
<ToolbarGroup>{children}</ToolbarGroup>
|
|
63
63
|
{numberOfFilters > 0 && (
|
|
64
|
-
// TODO: Update with issue issue #9677. Removed 'chipContainer' modifier
|
|
65
64
|
<ToolbarGroup>
|
|
66
65
|
<ToolbarGroup ref={chipContainerRef} />
|
|
67
66
|
{showClearFiltersButton && !customChipGroupContent && (
|
|
@@ -6,15 +6,14 @@ import { PageContext } from '../Page/PageContext';
|
|
|
6
6
|
|
|
7
7
|
export enum ToolbarGroupVariant {
|
|
8
8
|
'filter-group' = 'filter-group',
|
|
9
|
-
'icon-button-group' = 'icon-button-group'
|
|
10
|
-
'button-group' = 'button-group'
|
|
9
|
+
'icon-button-group' = 'icon-button-group'
|
|
11
10
|
}
|
|
12
11
|
|
|
13
12
|
export interface ToolbarGroupProps extends Omit<React.HTMLProps<HTMLDivElement>, 'ref'> {
|
|
14
13
|
/** Classes applied to root element of the data toolbar group */
|
|
15
14
|
className?: string;
|
|
16
15
|
/** A type modifier which modifies spacing specifically depending on the type of group */
|
|
17
|
-
variant?: ToolbarGroupVariant | 'filter-group' | 'icon-button-group'
|
|
16
|
+
variant?: ToolbarGroupVariant | 'filter-group' | 'icon-button-group';
|
|
18
17
|
/** Visibility at various breakpoints. */
|
|
19
18
|
visibility?: {
|
|
20
19
|
default?: 'hidden' | 'visible';
|
|
@@ -82,7 +81,6 @@ class ToolbarGroupWithRef extends React.Component<ToolbarGroupProps> {
|
|
|
82
81
|
<div
|
|
83
82
|
className={css(
|
|
84
83
|
styles.toolbarGroup,
|
|
85
|
-
// TODO: Update with issue #9677. Removed "buttonGroup" modifier
|
|
86
84
|
variant && styles.modifiers[toCamel(variant) as 'filterGroup' | 'iconButtonGroup'],
|
|
87
85
|
formatBreakpointMods(visibility, styles, '', getBreakpoint(width)),
|
|
88
86
|
formatBreakpointMods(align, styles, '', getBreakpoint(width)),
|
|
@@ -1,19 +1,13 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import styles from '@patternfly/react-styles/css/components/Toolbar/toolbar';
|
|
3
3
|
import { css } from '@patternfly/react-styles';
|
|
4
|
-
// TODO: Update with issue #9677
|
|
5
|
-
// import cssWidth from '@patternfly/react-tokens/dist/esm/c_toolbar__item_Width';
|
|
6
|
-
|
|
7
4
|
import { formatBreakpointMods, toCamel } from '../../helpers/util';
|
|
8
5
|
import { Divider } from '../Divider';
|
|
9
6
|
import { PageContext } from '../Page/PageContext';
|
|
10
7
|
|
|
11
8
|
export enum ToolbarItemVariant {
|
|
12
9
|
separator = 'separator',
|
|
13
|
-
'bulk-select' = 'bulk-select',
|
|
14
|
-
'overflow-menu' = 'overflow-menu',
|
|
15
10
|
pagination = 'pagination',
|
|
16
|
-
'search-filter' = 'search-filter',
|
|
17
11
|
label = 'label',
|
|
18
12
|
'chip-group' = 'chip-group',
|
|
19
13
|
'expand-all' = 'expand-all'
|
|
@@ -23,16 +17,7 @@ export interface ToolbarItemProps extends React.HTMLProps<HTMLDivElement> {
|
|
|
23
17
|
/** Classes applied to root element of the data toolbar item */
|
|
24
18
|
className?: string;
|
|
25
19
|
/** A type modifier which modifies spacing specifically depending on the type of item */
|
|
26
|
-
variant?:
|
|
27
|
-
| ToolbarItemVariant
|
|
28
|
-
| 'bulk-select'
|
|
29
|
-
| 'overflow-menu'
|
|
30
|
-
| 'pagination'
|
|
31
|
-
| 'search-filter'
|
|
32
|
-
| 'label'
|
|
33
|
-
| 'chip-group'
|
|
34
|
-
| 'separator'
|
|
35
|
-
| 'expand-all';
|
|
20
|
+
variant?: ToolbarItemVariant | 'pagination' | 'label' | 'chip-group' | 'separator' | 'expand-all';
|
|
36
21
|
/** Visibility at various breakpoints. */
|
|
37
22
|
visibility?: {
|
|
38
23
|
default?: 'hidden' | 'visible';
|
|
@@ -61,15 +46,6 @@ export interface ToolbarItemProps extends React.HTMLProps<HTMLDivElement> {
|
|
|
61
46
|
xl?: 'spacerNone' | 'spacerSm' | 'spacerMd' | 'spacerLg';
|
|
62
47
|
'2xl'?: 'spacerNone' | 'spacerSm' | 'spacerMd' | 'spacerLg';
|
|
63
48
|
};
|
|
64
|
-
/** Widths at various breakpoints. */
|
|
65
|
-
widths?: {
|
|
66
|
-
default?: string;
|
|
67
|
-
sm?: string;
|
|
68
|
-
md?: string;
|
|
69
|
-
lg?: string;
|
|
70
|
-
xl?: string;
|
|
71
|
-
'2xl'?: string;
|
|
72
|
-
};
|
|
73
49
|
/** id for this data toolbar item */
|
|
74
50
|
id?: string;
|
|
75
51
|
/** Flag indicating if the expand-all variant is expanded or not */
|
|
@@ -85,8 +61,6 @@ export const ToolbarItem: React.FunctionComponent<ToolbarItemProps> = ({
|
|
|
85
61
|
variant,
|
|
86
62
|
visibility,
|
|
87
63
|
spacer,
|
|
88
|
-
// TODO: Update with issue #9677
|
|
89
|
-
// widths,
|
|
90
64
|
align,
|
|
91
65
|
alignSelf,
|
|
92
66
|
alignItems,
|
|
@@ -100,24 +74,13 @@ export const ToolbarItem: React.FunctionComponent<ToolbarItemProps> = ({
|
|
|
100
74
|
return <Divider className={css(className)} orientation={{ default: 'vertical' }} {...props} />;
|
|
101
75
|
}
|
|
102
76
|
|
|
103
|
-
// TODO: Update with issue #9677
|
|
104
|
-
// const widthStyles: any = {};
|
|
105
|
-
// if (widths) {
|
|
106
|
-
// Object.entries(widths || {}).map(
|
|
107
|
-
// ([breakpoint, value]) =>
|
|
108
|
-
// (widthStyles[`${cssWidth.name}${breakpoint !== 'default' ? `-on-${breakpoint}` : ''}`] = value)
|
|
109
|
-
// );
|
|
110
|
-
// }
|
|
111
|
-
|
|
112
77
|
return (
|
|
113
78
|
<PageContext.Consumer>
|
|
114
79
|
{({ width, getBreakpoint }) => (
|
|
115
80
|
<div
|
|
116
81
|
className={css(
|
|
117
82
|
styles.toolbarItem,
|
|
118
|
-
variant &&
|
|
119
|
-
// TODO: Update with issue #9677. Removed "bulkSleect", "overflowMenu" and "searchFilter" modifiers
|
|
120
|
-
styles.modifiers[toCamel(variant) as 'pagination' | 'label' | 'chipGroup'],
|
|
83
|
+
variant && styles.modifiers[toCamel(variant) as 'pagination' | 'label' | 'chipGroup'],
|
|
121
84
|
isAllExpanded && styles.modifiers.expanded,
|
|
122
85
|
isOverflowContainer && styles.modifiers.overflowContainer,
|
|
123
86
|
formatBreakpointMods(visibility, styles, '', getBreakpoint(width)),
|
|
@@ -134,8 +97,6 @@ export const ToolbarItem: React.FunctionComponent<ToolbarItemProps> = ({
|
|
|
134
97
|
{...(variant === 'label' && { 'aria-hidden': true })}
|
|
135
98
|
id={id}
|
|
136
99
|
{...props}
|
|
137
|
-
// TODO: Update with issue #9677
|
|
138
|
-
// {...(widths && { style: { ...widthStyles, ...props.style } as React.CSSProperties })}
|
|
139
100
|
>
|
|
140
101
|
{children}
|
|
141
102
|
</div>
|
|
@@ -162,7 +162,6 @@ class ToolbarToggleGroup extends React.Component<ToolbarToggleGroupProps> {
|
|
|
162
162
|
className={css(
|
|
163
163
|
styles.toolbarGroup,
|
|
164
164
|
styles.modifiers.toggleGroup,
|
|
165
|
-
// TODO: Update with issue #9677. Removed "buttonGroup" modifier
|
|
166
165
|
variant && styles.modifiers[toCamel(variant) as 'filterGroup' | 'iconButtonGroup'],
|
|
167
166
|
formatBreakpointMods(breakpointMod, styles, '', getBreakpoint(width)),
|
|
168
167
|
formatBreakpointMods(visibility, styles, '', getBreakpoint(width)),
|
|
@@ -3,20 +3,6 @@ import { render, screen } from '@testing-library/react';
|
|
|
3
3
|
import { ToolbarItem } from '../ToolbarItem';
|
|
4
4
|
|
|
5
5
|
describe('ToolbarItem', () => {
|
|
6
|
-
it('should map width breakpoints', () => {
|
|
7
|
-
const widths = {
|
|
8
|
-
default: '100px',
|
|
9
|
-
sm: '80px',
|
|
10
|
-
md: '150px',
|
|
11
|
-
lg: '200px',
|
|
12
|
-
xl: '250px',
|
|
13
|
-
'2xl': '300px'
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
const { asFragment } = render(<ToolbarItem widths={widths}>Test</ToolbarItem>);
|
|
17
|
-
expect(asFragment()).toMatchSnapshot();
|
|
18
|
-
});
|
|
19
|
-
|
|
20
6
|
it('should render with pf-m-overflow-container when isOverflowContainer is set', () => {
|
|
21
7
|
render(
|
|
22
8
|
<ToolbarItem data-testid="toolbaritem" isOverflowContainer>
|
|
@@ -34,16 +34,6 @@ Items are spaced “16px” apart by default. To adjust the size of the space be
|
|
|
34
34
|
|
|
35
35
|
```
|
|
36
36
|
|
|
37
|
-
### Toolbar items with adjusted widths
|
|
38
|
-
|
|
39
|
-
You can adjust the width of toolbar items so that they better fit the size of their container.
|
|
40
|
-
|
|
41
|
-
The default width of a toolbar item is “100px”. To adjust an item’s width, use the `widths` property of the `<ToolbarItem>`. You can set the “px” value at multiple breakpoints, including "default", "sm", "md", "lg, "xl", and "2xl".
|
|
42
|
-
|
|
43
|
-
```ts file="./ToolbarWidths.tsx"
|
|
44
|
-
|
|
45
|
-
```
|
|
46
|
-
|
|
47
37
|
### With adjusted inset
|
|
48
38
|
|
|
49
39
|
To adjust a toolbar’s inset, use the `inset` property. You can set the inset value at multiple breakpoints, including "default", "md", "lg, "xl", and "2xl". Inset values include “insetNone”, “insetSm”, “insetMd”, “insetLg”, “insetXl”, and “inset2xl”.
|
|
@@ -48,7 +48,7 @@ export const ToolbarComponentManagedToggleGroup: React.FunctionComponent = () =>
|
|
|
48
48
|
|
|
49
49
|
const toggleGroupItems = (
|
|
50
50
|
<React.Fragment>
|
|
51
|
-
<ToolbarItem
|
|
51
|
+
<ToolbarItem>
|
|
52
52
|
<SearchInput
|
|
53
53
|
aria-label="Component toggle groups example search input"
|
|
54
54
|
onChange={(_event, value) => onInputChange(value)}
|
|
@@ -53,7 +53,7 @@ export const ToolbarConsumerManagedToggleGroup: React.FunctionComponent = () =>
|
|
|
53
53
|
|
|
54
54
|
const toggleGroupItems = (
|
|
55
55
|
<React.Fragment>
|
|
56
|
-
<ToolbarItem
|
|
56
|
+
<ToolbarItem>
|
|
57
57
|
<SearchInput
|
|
58
58
|
aria-label="Consumer toggle groups example search input"
|
|
59
59
|
onChange={(_event, value) => onInputChange(value)}
|
|
@@ -189,7 +189,7 @@ export const ToolbarGroups: React.FunctionComponent = () => {
|
|
|
189
189
|
<React.Fragment>
|
|
190
190
|
<ToolbarGroup variant="filter-group">{filterGroupItems}</ToolbarGroup>
|
|
191
191
|
<ToolbarGroup variant="icon-button-group">{iconButtonGroupItems}</ToolbarGroup>
|
|
192
|
-
<ToolbarGroup
|
|
192
|
+
<ToolbarGroup>{buttonGroupItems}</ToolbarGroup>
|
|
193
193
|
</React.Fragment>
|
|
194
194
|
);
|
|
195
195
|
|
|
@@ -5,7 +5,7 @@ import { Button, SearchInput } from '@patternfly/react-core';
|
|
|
5
5
|
export const ToolbarItems: React.FunctionComponent = () => {
|
|
6
6
|
const items = (
|
|
7
7
|
<React.Fragment>
|
|
8
|
-
<ToolbarItem
|
|
8
|
+
<ToolbarItem>
|
|
9
9
|
<SearchInput aria-label="Items example search input" />
|
|
10
10
|
</ToolbarItem>
|
|
11
11
|
<ToolbarItem>
|
|
@@ -206,7 +206,7 @@ export const ToolbarStacked: React.FunctionComponent = () => {
|
|
|
206
206
|
<ToolbarToggleGroup toggleIcon={<FilterIcon />} breakpoint="lg">
|
|
207
207
|
{toggleGroupItems}
|
|
208
208
|
</ToolbarToggleGroup>
|
|
209
|
-
<ToolbarItem
|
|
209
|
+
<ToolbarItem>
|
|
210
210
|
<OverflowMenu breakpoint="2xl">
|
|
211
211
|
<OverflowMenuContent>
|
|
212
212
|
<OverflowMenuGroup groupType="button">
|
|
@@ -249,7 +249,7 @@ export const ToolbarStacked: React.FunctionComponent = () => {
|
|
|
249
249
|
<React.Fragment>
|
|
250
250
|
<Toolbar>
|
|
251
251
|
<ToolbarContent>
|
|
252
|
-
<ToolbarItem
|
|
252
|
+
<ToolbarItem>
|
|
253
253
|
<Dropdown
|
|
254
254
|
onSelect={onSplitButtonSelect}
|
|
255
255
|
isOpen={isSplitButtonDropdownOpen}
|
|
@@ -125,7 +125,7 @@ export const ToolbarWithFilters: React.FunctionComponent = () => {
|
|
|
125
125
|
|
|
126
126
|
const toggleGroupItems = (
|
|
127
127
|
<React.Fragment>
|
|
128
|
-
<ToolbarItem
|
|
128
|
+
<ToolbarItem>
|
|
129
129
|
<SearchInput
|
|
130
130
|
aria-label="With filters example search input"
|
|
131
131
|
onChange={(_event, value) => onInputChange(value)}
|
|
@@ -109,7 +109,7 @@ export const TreeViewWithSearch: React.FunctionComponent = () => {
|
|
|
109
109
|
const toolbar = (
|
|
110
110
|
<Toolbar style={{ padding: 0 }}>
|
|
111
111
|
<ToolbarContent style={{ padding: 0 }}>
|
|
112
|
-
<ToolbarItem
|
|
112
|
+
<ToolbarItem>
|
|
113
113
|
<TreeViewSearch onSearch={onSearch} id="input-search" name="search-input" aria-label="Search input example" />
|
|
114
114
|
</ToolbarItem>
|
|
115
115
|
</ToolbarContent>
|
package/src/components/index.ts
CHANGED
|
@@ -22,6 +22,7 @@ export * from './DataList';
|
|
|
22
22
|
export * from './DatePicker';
|
|
23
23
|
export * from './DescriptionList';
|
|
24
24
|
export * from './Divider';
|
|
25
|
+
export * from './DragDrop';
|
|
25
26
|
export * from './Drawer';
|
|
26
27
|
export * from './Dropdown';
|
|
27
28
|
export * from './DualListSelector';
|
|
@@ -76,7 +77,6 @@ export * from './Tooltip';
|
|
|
76
77
|
export * from './NumberInput';
|
|
77
78
|
export * from './TreeView';
|
|
78
79
|
export * from './Wizard';
|
|
79
|
-
export * from './DragDrop';
|
|
80
80
|
export * from './TextInputGroup';
|
|
81
81
|
export * from './Panel';
|
|
82
82
|
export * from './Truncate';
|
|
@@ -413,9 +413,9 @@ export const CardViewBasic: React.FunctionComponent = () => {
|
|
|
413
413
|
|
|
414
414
|
const toolbarItems = (
|
|
415
415
|
<React.Fragment>
|
|
416
|
-
<ToolbarItem
|
|
416
|
+
<ToolbarItem>{buildSelectDropdown()}</ToolbarItem>
|
|
417
417
|
<ToolbarItem>{buildFilterDropdown()}</ToolbarItem>
|
|
418
|
-
<ToolbarItem
|
|
418
|
+
<ToolbarItem>
|
|
419
419
|
<OverflowMenu breakpoint="md">
|
|
420
420
|
<OverflowMenuItem>
|
|
421
421
|
<Button variant="primary">Create a project</Button>
|
|
@@ -38,7 +38,7 @@ export const DataListBasic: React.FunctionComponent = () => {
|
|
|
38
38
|
|
|
39
39
|
const toolbarItems = (
|
|
40
40
|
<React.Fragment>
|
|
41
|
-
<ToolbarItem
|
|
41
|
+
<ToolbarItem>
|
|
42
42
|
<MenuToggle
|
|
43
43
|
aria-label="Select cards"
|
|
44
44
|
splitButtonOptions={{
|
|
@@ -55,7 +55,7 @@ export const DataListBasic: React.FunctionComponent = () => {
|
|
|
55
55
|
<ToolbarItem>
|
|
56
56
|
<MenuToggle>Filter by creator name</MenuToggle>
|
|
57
57
|
</ToolbarItem>
|
|
58
|
-
<ToolbarItem
|
|
58
|
+
<ToolbarItem>
|
|
59
59
|
<OverflowMenu breakpoint="md">
|
|
60
60
|
<OverflowMenuItem>
|
|
61
61
|
<Button variant="primary">Create instance</Button>
|