@patternfly/react-core 6.0.0-prerelease.2 → 6.0.0-prerelease.21
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 +113 -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 -0
- package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
- package/dist/dynamic/deprecated/components/package.json +1 -1
- package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
- package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
- package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
- package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
- package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
- package/dist/dynamic/helpers/constants/package.json +1 -1
- package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
- package/dist/dynamic/helpers/fileUtils/package.json +1 -1
- package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
- package/dist/dynamic/helpers/package.json +1 -1
- package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
- package/dist/dynamic/helpers/typeUtils/package.json +1 -1
- package/dist/dynamic/helpers/useInterval/package.json +1 -1
- package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
- package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
- package/dist/dynamic/helpers/util/package.json +1 -1
- package/dist/dynamic/layouts/Bullseye/package.json +1 -1
- package/dist/dynamic/layouts/Flex/package.json +1 -1
- package/dist/dynamic/layouts/Gallery/package.json +1 -1
- package/dist/dynamic/layouts/Grid/package.json +1 -1
- package/dist/dynamic/layouts/Level/package.json +1 -1
- package/dist/dynamic/layouts/Split/package.json +1 -1
- package/dist/dynamic/layouts/Stack/package.json +1 -1
- package/dist/dynamic/styles/package.json +1 -1
- package/dist/dynamic-modules.json +0 -3
- package/dist/esm/components/Card/CardHeader.d.ts +2 -0
- package/dist/esm/components/Card/CardHeader.d.ts.map +1 -1
- package/dist/esm/components/Card/CardHeader.js +2 -2
- package/dist/esm/components/Card/CardHeader.js.map +1 -1
- package/dist/esm/components/Content/Content.d.ts +2 -0
- package/dist/esm/components/Content/Content.d.ts.map +1 -1
- package/dist/esm/components/Content/Content.js +2 -2
- package/dist/esm/components/Content/Content.js.map +1 -1
- package/dist/esm/components/DataList/DataListAction.d.ts +0 -2
- package/dist/esm/components/DataList/DataListAction.d.ts.map +1 -1
- package/dist/esm/components/DataList/DataListAction.js +2 -2
- package/dist/esm/components/DataList/DataListAction.js.map +1 -1
- package/dist/esm/components/DataList/DataListCheck.d.ts +4 -1
- package/dist/esm/components/DataList/DataListCheck.d.ts.map +1 -1
- package/dist/esm/components/DataList/DataListCheck.js +4 -4
- package/dist/esm/components/DataList/DataListCheck.js.map +1 -1
- package/dist/esm/components/DescriptionList/DescriptionList.js +1 -1
- package/dist/esm/components/DescriptionList/DescriptionList.js.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.js +1 -1
- package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/esm/components/EmptyState/EmptyState.d.ts +1 -1
- package/dist/esm/components/EmptyState/EmptyState.d.ts.map +1 -1
- package/dist/esm/components/EmptyState/EmptyStateHeader.d.ts +1 -1
- package/dist/esm/components/EmptyState/EmptyStateHeader.d.ts.map +1 -1
- package/dist/esm/components/EmptyState/EmptyStateHeader.js +2 -2
- package/dist/esm/components/EmptyState/EmptyStateHeader.js.map +1 -1
- package/dist/esm/components/Menu/MenuContainer.js +1 -1
- package/dist/esm/components/Menu/MenuContainer.js.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggle.d.ts +2 -8
- package/dist/esm/components/MenuToggle/MenuToggle.d.ts.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggle.js +4 -4
- package/dist/esm/components/MenuToggle/MenuToggle.js.map +1 -1
- package/dist/esm/components/Modal/Modal.d.ts +2 -0
- package/dist/esm/components/Modal/Modal.d.ts.map +1 -1
- package/dist/esm/components/Modal/Modal.js +2 -6
- package/dist/esm/components/Modal/Modal.js.map +1 -1
- package/dist/esm/components/Modal/ModalContent.d.ts +2 -0
- package/dist/esm/components/Modal/ModalContent.d.ts.map +1 -1
- package/dist/esm/components/Modal/ModalContent.js +7 -13
- package/dist/esm/components/Modal/ModalContent.js.map +1 -1
- package/dist/esm/components/Page/Page.d.ts.map +1 -1
- package/dist/esm/components/Page/Page.js +3 -4
- package/dist/esm/components/Page/Page.js.map +1 -1
- package/dist/esm/components/Select/Select.js +1 -1
- package/dist/esm/components/Select/Select.js.map +1 -1
- package/dist/esm/components/Slider/Slider.d.ts.map +1 -1
- package/dist/esm/components/Slider/Slider.js +1 -1
- package/dist/esm/components/Slider/Slider.js.map +1 -1
- package/dist/esm/components/TextInputGroup/TextInputGroup.d.ts +2 -0
- package/dist/esm/components/TextInputGroup/TextInputGroup.d.ts.map +1 -1
- package/dist/esm/components/TextInputGroup/TextInputGroup.js +3 -3
- package/dist/esm/components/TextInputGroup/TextInputGroup.js.map +1 -1
- package/dist/esm/components/TextInputGroup/TextInputGroupIcon.d.ts +11 -0
- package/dist/esm/components/TextInputGroup/TextInputGroupIcon.d.ts.map +1 -0
- package/dist/esm/components/TextInputGroup/TextInputGroupIcon.js +10 -0
- package/dist/esm/components/TextInputGroup/TextInputGroupIcon.js.map +1 -0
- package/dist/esm/components/TextInputGroup/TextInputGroupMain.d.ts.map +1 -1
- package/dist/esm/components/TextInputGroup/TextInputGroupMain.js +7 -3
- package/dist/esm/components/TextInputGroup/TextInputGroupMain.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarToggleGroup.js +1 -1
- package/dist/esm/components/Toolbar/ToolbarToggleGroup.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarUtils.js +4 -4
- package/dist/esm/components/Toolbar/ToolbarUtils.js.map +1 -1
- package/dist/esm/components/index.d.ts +0 -1
- package/dist/esm/components/index.d.ts.map +1 -1
- package/dist/esm/components/index.js +0 -1
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/deprecated/components/DragDrop/Draggable.js +1 -1
- package/dist/esm/deprecated/components/DragDrop/Draggable.js.map +1 -1
- package/dist/esm/deprecated/components/Tile/Tile.d.ts.map +1 -0
- package/dist/esm/deprecated/components/Tile/Tile.js.map +1 -0
- package/dist/esm/deprecated/components/Tile/index.d.ts.map +1 -0
- package/dist/esm/deprecated/components/Tile/index.js.map +1 -0
- package/dist/esm/deprecated/components/index.d.ts +1 -0
- package/dist/esm/deprecated/components/index.d.ts.map +1 -1
- package/dist/esm/deprecated/components/index.js +1 -0
- package/dist/esm/deprecated/components/index.js.map +1 -1
- package/dist/esm/helpers/constants.js +10 -10
- package/dist/esm/helpers/constants.js.map +1 -1
- package/dist/js/components/Card/CardHeader.d.ts +2 -0
- package/dist/js/components/Card/CardHeader.d.ts.map +1 -1
- package/dist/js/components/Card/CardHeader.js +2 -2
- package/dist/js/components/Card/CardHeader.js.map +1 -1
- package/dist/js/components/Content/Content.d.ts +2 -0
- package/dist/js/components/Content/Content.d.ts.map +1 -1
- package/dist/js/components/Content/Content.js +2 -2
- package/dist/js/components/Content/Content.js.map +1 -1
- package/dist/js/components/DataList/DataListAction.d.ts +0 -2
- package/dist/js/components/DataList/DataListAction.d.ts.map +1 -1
- package/dist/js/components/DataList/DataListAction.js +2 -2
- package/dist/js/components/DataList/DataListAction.js.map +1 -1
- package/dist/js/components/DataList/DataListCheck.d.ts +4 -1
- package/dist/js/components/DataList/DataListCheck.d.ts.map +1 -1
- package/dist/js/components/DataList/DataListCheck.js +4 -4
- package/dist/js/components/DataList/DataListCheck.js.map +1 -1
- package/dist/js/components/DescriptionList/DescriptionList.js +1 -1
- package/dist/js/components/DescriptionList/DescriptionList.js.map +1 -1
- package/dist/js/components/Dropdown/Dropdown.js +1 -1
- package/dist/js/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/js/components/EmptyState/EmptyState.d.ts +1 -1
- package/dist/js/components/EmptyState/EmptyState.d.ts.map +1 -1
- package/dist/js/components/EmptyState/EmptyStateHeader.d.ts +1 -1
- package/dist/js/components/EmptyState/EmptyStateHeader.d.ts.map +1 -1
- package/dist/js/components/EmptyState/EmptyStateHeader.js +2 -2
- package/dist/js/components/EmptyState/EmptyStateHeader.js.map +1 -1
- package/dist/js/components/Menu/MenuContainer.js +1 -1
- package/dist/js/components/Menu/MenuContainer.js.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggle.d.ts +2 -8
- package/dist/js/components/MenuToggle/MenuToggle.d.ts.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggle.js +4 -4
- package/dist/js/components/MenuToggle/MenuToggle.js.map +1 -1
- package/dist/js/components/Modal/Modal.d.ts +2 -0
- package/dist/js/components/Modal/Modal.d.ts.map +1 -1
- package/dist/js/components/Modal/Modal.js +2 -6
- package/dist/js/components/Modal/Modal.js.map +1 -1
- package/dist/js/components/Modal/ModalContent.d.ts +2 -0
- package/dist/js/components/Modal/ModalContent.d.ts.map +1 -1
- package/dist/js/components/Modal/ModalContent.js +7 -13
- package/dist/js/components/Modal/ModalContent.js.map +1 -1
- package/dist/js/components/Page/Page.d.ts.map +1 -1
- package/dist/js/components/Page/Page.js +3 -4
- package/dist/js/components/Page/Page.js.map +1 -1
- package/dist/js/components/Select/Select.js +1 -1
- package/dist/js/components/Select/Select.js.map +1 -1
- package/dist/js/components/Slider/Slider.d.ts.map +1 -1
- package/dist/js/components/Slider/Slider.js +1 -1
- package/dist/js/components/Slider/Slider.js.map +1 -1
- package/dist/js/components/TextInputGroup/TextInputGroup.d.ts +2 -0
- package/dist/js/components/TextInputGroup/TextInputGroup.d.ts.map +1 -1
- package/dist/js/components/TextInputGroup/TextInputGroup.js +3 -3
- package/dist/js/components/TextInputGroup/TextInputGroup.js.map +1 -1
- package/dist/js/components/TextInputGroup/TextInputGroupIcon.d.ts +11 -0
- package/dist/js/components/TextInputGroup/TextInputGroupIcon.d.ts.map +1 -0
- package/dist/js/components/TextInputGroup/TextInputGroupIcon.js +14 -0
- package/dist/js/components/TextInputGroup/TextInputGroupIcon.js.map +1 -0
- package/dist/js/components/TextInputGroup/TextInputGroupMain.d.ts.map +1 -1
- package/dist/js/components/TextInputGroup/TextInputGroupMain.js +7 -3
- package/dist/js/components/TextInputGroup/TextInputGroupMain.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarToggleGroup.js +2 -2
- package/dist/js/components/Toolbar/ToolbarToggleGroup.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarUtils.js +8 -8
- package/dist/js/components/Toolbar/ToolbarUtils.js.map +1 -1
- package/dist/js/components/index.d.ts +0 -1
- package/dist/js/components/index.d.ts.map +1 -1
- package/dist/js/components/index.js +0 -1
- package/dist/js/components/index.js.map +1 -1
- package/dist/js/deprecated/components/DragDrop/Draggable.js +1 -1
- package/dist/js/deprecated/components/DragDrop/Draggable.js.map +1 -1
- package/dist/js/deprecated/components/Tile/Tile.d.ts.map +1 -0
- package/dist/js/deprecated/components/Tile/Tile.js.map +1 -0
- package/dist/js/deprecated/components/Tile/index.d.ts.map +1 -0
- package/dist/js/deprecated/components/Tile/index.js.map +1 -0
- package/dist/js/deprecated/components/index.d.ts +1 -0
- package/dist/js/deprecated/components/index.d.ts.map +1 -1
- package/dist/js/deprecated/components/index.js +1 -0
- package/dist/js/deprecated/components/index.js.map +1 -1
- package/dist/js/helpers/constants.js +20 -20
- package/dist/js/helpers/constants.js.map +1 -1
- package/dist/styles/base-no-reset.css +100 -69
- package/dist/styles/base.css +115 -69
- package/dist/umd/assets/{output-DqwzX1i3.css → output-CWhO_0Db.css} +19278 -19343
- package/dist/umd/react-core.min.js +4 -4
- package/helpers/package.json +1 -1
- package/layouts/package.json +1 -1
- package/next/package.json +1 -1
- package/package.json +8 -8
- package/src/components/AboutModal/examples/AboutModal.md +1 -1
- package/src/components/Accordion/examples/Accordion.md +2 -2
- package/src/components/ActionList/examples/ActionList.md +1 -1
- package/src/components/Alert/examples/Alert.md +1 -1
- package/src/components/Avatar/examples/Avatar.md +1 -1
- package/src/components/BackToTop/examples/BackToTop.md +1 -1
- package/src/components/Backdrop/examples/Backdrop.md +1 -1
- package/src/components/BackgroundImage/examples/BackgroundImage.md +1 -1
- package/src/components/Badge/examples/Badge.md +1 -1
- package/src/components/Banner/examples/Banner.md +1 -1
- package/src/components/Breadcrumb/examples/Breadcrumb.md +1 -1
- package/src/components/Button/examples/Button.md +1 -1
- package/src/components/CalendarMonth/examples/CalendarMonth.md +1 -1
- package/src/components/Card/CardHeader.tsx +9 -2
- package/src/components/Card/examples/Card.md +24 -1
- package/src/components/Card/examples/CardTile.tsx +73 -0
- package/src/components/Card/examples/CardTileMulti.tsx +84 -0
- package/src/components/Checkbox/examples/Checkbox.md +1 -1
- package/src/components/ClipboardCopy/examples/ClipboardCopy.md +1 -1
- package/src/components/CodeBlock/examples/CodeBlock.md +1 -1
- package/src/components/Content/Content.tsx +4 -0
- package/src/components/Content/__tests__/Content.test.tsx +24 -0
- package/src/components/Content/examples/Content.md +8 -0
- package/src/components/Content/examples/ContentEditorial.tsx +24 -0
- package/src/components/DataList/DataListAction.tsx +1 -5
- package/src/components/DataList/DataListCheck.tsx +20 -13
- package/src/components/DataList/__tests__/DataListAction.test.tsx +21 -21
- package/src/components/DataList/__tests__/DataListCheck.test.tsx +3 -1
- package/src/components/DataList/__tests__/Generated/DataListCheck.test.tsx +3 -2
- package/src/components/DataList/__tests__/Generated/__snapshots__/DataListCheck.test.tsx.snap +15 -5
- package/src/components/DataList/examples/DataList.md +1 -1
- package/src/components/DataList/examples/DataListActions.tsx +0 -1
- package/src/components/DataList/examples/DataListCheckboxes.tsx +3 -6
- package/src/components/DataList/examples/DataListClickableRows.tsx +0 -2
- package/src/components/DataList/examples/DataListDraggable.tsx +6 -1
- package/src/components/DataList/examples/DataListExpandable.tsx +3 -18
- package/src/components/DataList/examples/DataListMixedExpandable.tsx +3 -18
- package/src/components/DataList/examples/DataListWidthModifiers.tsx +3 -5
- package/src/components/DatePicker/examples/DatePicker.md +1 -1
- package/src/components/DescriptionList/DescriptionList.tsx +1 -1
- package/src/components/DescriptionList/__tests__/DescriptionList.test.tsx +14 -12
- package/src/components/DescriptionList/examples/DescriptionList.md +1 -1
- package/src/components/Divider/examples/Divider.md +1 -1
- package/src/components/Drawer/examples/Drawer.md +1 -1
- package/src/components/Dropdown/Dropdown.tsx +1 -1
- package/src/components/Dropdown/examples/Dropdown.md +1 -1
- package/src/components/DualListSelector/examples/DualListSelector.md +1 -1
- package/src/components/EmptyState/EmptyState.tsx +1 -1
- package/src/components/EmptyState/EmptyStateHeader.tsx +6 -4
- package/src/components/EmptyState/__tests__/EmptyState.test.tsx +5 -0
- package/src/components/EmptyState/examples/EmptyState.md +1 -1
- package/src/components/ExpandableSection/examples/ExpandableSection.md +1 -1
- package/src/components/FileUpload/examples/FileUpload.md +1 -1
- package/src/components/Form/examples/Form.md +1 -1
- package/src/components/FormSelect/examples/FormSelect.md +1 -1
- package/src/components/HelperText/examples/HelperText.md +1 -1
- package/src/components/Hint/examples/Hint.md +1 -1
- package/src/components/Icon/examples/Icon.md +1 -1
- package/src/components/InputGroup/examples/InputGroup.md +1 -1
- package/src/components/JumpLinks/examples/JumpLinks.md +1 -0
- package/src/components/Label/examples/Label.md +1 -1
- package/src/components/List/examples/List.md +1 -1
- package/src/components/LoginPage/examples/LoginPage.md +1 -1
- package/src/components/Masthead/examples/Masthead.md +1 -1
- package/src/components/Menu/MenuContainer.tsx +1 -1
- package/src/components/Menu/examples/Menu.md +1 -1
- package/src/components/MenuToggle/MenuToggle.tsx +6 -20
- package/src/components/MenuToggle/__tests__/MenuToggle.test.tsx +10 -11
- package/src/components/MenuToggle/examples/MenuToggle.md +11 -11
- package/src/components/MenuToggle/examples/MenuToggleSplitButtonAction.tsx +23 -32
- package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckbox.tsx +9 -9
- package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckboxWithText.tsx +27 -33
- package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckboxWithToggleText.tsx +21 -27
- package/src/components/Modal/Modal.tsx +4 -11
- package/src/components/Modal/ModalContent.tsx +9 -11
- package/src/components/Modal/__tests__/Modal.test.tsx +0 -14
- package/src/components/Modal/__tests__/__snapshots__/ModalContent.test.tsx.snap +4 -0
- package/src/components/Modal/examples/Modal.md +1 -1
- package/src/components/MultipleFileUpload/examples/MultipleFileUpload.md +1 -1
- package/src/components/Nav/examples/Nav.md +1 -1
- package/src/components/NotificationBadge/examples/NotificationBadge.md +1 -1
- package/src/components/NotificationDrawer/examples/NotificationDrawer.md +1 -1
- package/src/components/NumberInput/examples/NumberInput.md +1 -1
- package/src/components/OverflowMenu/examples/OverflowMenu.md +1 -1
- package/src/components/Page/Page.tsx +3 -5
- package/src/components/Page/examples/Page.md +2 -2
- package/src/components/Pagination/examples/Pagination.md +1 -1
- package/src/components/Panel/examples/Panel.md +1 -1
- package/src/components/Popover/examples/Popover.md +1 -1
- package/src/components/Progress/examples/Progress.md +1 -1
- package/src/components/ProgressStepper/examples/ProgressStepper.md +1 -1
- package/src/components/Radio/examples/Radio.md +1 -1
- package/src/components/SearchInput/examples/SearchInput.md +1 -1
- package/src/components/Select/Select.tsx +1 -1
- package/src/components/Select/examples/Select.md +1 -1
- package/src/components/Sidebar/examples/Sidebar.md +2 -2
- package/src/components/SimpleList/examples/SimpleList.md +1 -1
- package/src/components/Skeleton/examples/Skeleton.md +8 -8
- package/src/components/Skeleton/examples/SkeletonText.tsx +14 -14
- package/src/components/SkipToContent/examples/SkipToContent.md +1 -1
- package/src/components/Slider/Slider.tsx +6 -1
- package/src/components/Slider/examples/Slider.md +1 -1
- package/src/components/Spinner/examples/Spinner.md +1 -1
- package/src/components/Switch/examples/Switch.md +1 -1
- package/src/components/Tabs/examples/Tabs.md +1 -1
- package/src/components/TextArea/examples/TextArea.md +1 -1
- package/src/components/TextInput/examples/TextInput.md +1 -1
- package/src/components/TextInputGroup/TextInputGroup.tsx +5 -1
- package/src/components/TextInputGroup/TextInputGroupIcon.tsx +25 -0
- package/src/components/TextInputGroup/TextInputGroupMain.tsx +6 -2
- package/src/components/TextInputGroup/__tests__/TextInputGroup.test.tsx +26 -4
- package/src/components/TextInputGroup/__tests__/TextInputGroupMain.test.tsx +10 -0
- package/src/components/TextInputGroup/examples/TextInputGroup.md +27 -5
- package/src/components/TextInputGroup/examples/TextInputGroupWithStatus.tsx +66 -0
- package/src/components/TimePicker/examples/TimePicker.md +1 -1
- package/src/components/Timestamp/__tests__/__snapshots__/Timestamp.test.tsx.snap +2 -2
- package/src/components/Timestamp/examples/Timestamp.md +1 -1
- package/src/components/Title/examples/Title.md +1 -1
- package/src/components/ToggleGroup/examples/ToggleGroup.md +2 -2
- package/src/components/Toolbar/ToolbarToggleGroup.tsx +1 -1
- package/src/components/Toolbar/ToolbarUtils.tsx +4 -4
- package/src/components/Toolbar/examples/Toolbar.md +1 -1
- package/src/components/Toolbar/examples/ToolbarStacked.tsx +7 -9
- package/src/components/Tooltip/examples/Tooltip.md +1 -1
- package/src/components/TreeView/examples/TreeView.md +1 -1
- package/src/components/TreeView/examples/TreeViewWithActionItems.tsx +1 -1
- package/src/components/Truncate/examples/Truncate.md +1 -0
- package/src/components/Wizard/examples/Wizard.md +1 -1
- package/src/components/index.ts +0 -1
- package/src/demos/CardDemos.md +2 -2
- package/src/demos/CardView/examples/CardView.tsx +11 -13
- package/src/demos/DataList/examples/DataListBasic.tsx +7 -9
- package/src/demos/DataList/examples/DataListExpandableControlInToolbar.tsx +3 -18
- package/src/demos/Filters/examples/FilterAttributeSearch.tsx +9 -11
- package/src/demos/Filters/examples/FilterCheckboxSelect.tsx +9 -11
- package/src/demos/Filters/examples/FilterFaceted.tsx +9 -11
- package/src/demos/Filters/examples/FilterMixedSelectGroup.tsx +9 -11
- package/src/demos/Filters/examples/FilterSameSelectGroup.tsx +9 -11
- package/src/demos/Filters/examples/FilterSearchInput.tsx +9 -11
- package/src/demos/Filters/examples/FilterSingleSelect.tsx +9 -11
- package/src/demos/JumpLinks.md +1 -0
- package/src/demos/ProgressDemo.md +5 -2
- package/src/demos/ProgressStepperDemo.md +4 -1
- package/src/demos/examples/Card/CardNested.tsx +1 -1
- package/src/demos/examples/Card/CardStatus.tsx +3 -3
- package/src/demos/examples/Card/CardTrendDemo1.tsx +1 -1
- package/src/demos/examples/Card/CardTrendDemo2.tsx +1 -1
- package/src/demos/examples/Card/CardUtilizationDemo1.tsx +1 -1
- package/src/demos/examples/Card/CardUtilizationDemo2.tsx +1 -1
- package/src/demos/examples/Card/CardUtilizationDemo3.tsx +1 -1
- package/src/demos/examples/Card/CardUtilizationDemo4.tsx +1 -1
- package/src/demos/examples/Card/CardWithAccordion.tsx +1 -1
- package/src/demos/examples/JumpLinks/JumpLinksWithDrawer.js +3 -20
- package/src/demos/examples/PrimaryDetail/PrimaryDetailCardView.tsx +11 -13
- package/src/deprecated/components/Chip/examples/Chip.md +1 -1
- package/src/deprecated/components/DragDrop/Draggable.tsx +1 -1
- package/src/deprecated/components/Modal/examples/Modal.md +1 -1
- package/src/{demos/TileDemo.md → deprecated/components/Tile/examples/Tile.md} +67 -2
- package/src/{components → deprecated/components}/Tile/examples/TileBasic.tsx +1 -1
- package/src/{components → deprecated/components}/Tile/examples/TileStacked.tsx +1 -1
- package/src/{components → deprecated/components}/Tile/examples/TileStackedWithLargeIcons.tsx +1 -1
- package/src/{components → deprecated/components}/Tile/examples/TileWithExtraContent.tsx +2 -1
- package/src/{components → deprecated/components}/Tile/examples/TileWithIcon.tsx +1 -1
- package/src/{components → deprecated/components}/Tile/examples/TileWithSubtext.tsx +1 -1
- package/src/deprecated/components/Wizard/examples/Wizard.md +1 -1
- package/src/deprecated/components/index.ts +1 -0
- package/src/helpers/constants.ts +11 -11
- package/dist/dynamic/components/Tile/package.json +0 -1
- package/dist/esm/components/Tile/Tile.d.ts.map +0 -1
- package/dist/esm/components/Tile/Tile.js.map +0 -1
- package/dist/esm/components/Tile/index.d.ts.map +0 -1
- package/dist/esm/components/Tile/index.js.map +0 -1
- package/dist/js/components/Tile/Tile.d.ts.map +0 -1
- package/dist/js/components/Tile/Tile.js.map +0 -1
- package/dist/js/components/Tile/index.d.ts.map +0 -1
- package/dist/js/components/Tile/index.js.map +0 -1
- package/dist/styles/assets/images/PF-Masthead-Logo.svg +0 -1
- package/dist/styles/assets/images/background-filter.svg +0 -17
- package/dist/styles/assets/images/g_sizing.png +0 -0
- package/dist/styles/assets/images/img_avatar-dark.svg +0 -22
- package/dist/styles/assets/images/img_avatar.svg +0 -21
- package/dist/styles/assets/images/l_pf-reverse-164x11.png +0 -0
- package/dist/styles/assets/images/l_pf-reverse.svg +0 -1
- package/dist/styles/assets/images/logo-dropbox-old.svg +0 -1
- package/dist/styles/assets/images/logo-dropbox.svg +0 -6
- package/dist/styles/assets/images/logo-facebook.svg +0 -4
- package/dist/styles/assets/images/logo-github.svg +0 -4
- package/dist/styles/assets/images/logo-gitlab.svg +0 -4
- package/dist/styles/assets/images/logo-google.svg +0 -4
- package/dist/styles/assets/images/logo-google2.svg +0 -10
- package/dist/styles/assets/images/logo__pf--reverse--base.png +0 -0
- package/dist/styles/assets/images/logo__pf--reverse--base.svg +0 -40
- package/dist/styles/assets/images/logo__pf--reverse-on-md.svg +0 -40
- package/dist/styles/assets/images/pf-c-brand__logo-base.jpg +0 -0
- package/dist/styles/assets/images/pf-c-brand__logo-on-lg-white.svg +0 -32
- package/dist/styles/assets/images/pf-c-brand__logo-on-lg.svg +0 -32
- package/dist/styles/assets/images/pf-c-brand__logo-on-md-white.svg +0 -42
- package/dist/styles/assets/images/pf-c-brand__logo-on-md.svg +0 -42
- package/dist/styles/assets/images/pf-c-brand__logo-on-sm-white.svg +0 -17
- package/dist/styles/assets/images/pf-c-brand__logo-on-sm.svg +0 -17
- package/dist/styles/assets/images/pf-c-brand__logo-on-xl-white.svg +0 -39
- package/dist/styles/assets/images/pf-c-brand__logo-on-xl.svg +0 -39
- package/dist/styles/assets/images/pf-c-brand__logo.svg +0 -10
- package/dist/styles/assets/images/pf-logo.svg +0 -28
- package/dist/styles/assets/images/pf_logo.svg +0 -37
- package/dist/styles/assets/images/pf_logo_color.svg +0 -22
- package/dist/styles/assets/images/pf_logo_white.svg +0 -37
- package/dist/styles/assets/images/pf_mini_logo_white.svg +0 -1
- package/dist/styles/assets/images/pfbg_1200.jpg +0 -0
- package/dist/styles/assets/images/pfbg_2000.jpg +0 -0
- package/dist/styles/assets/images/pfbg_576.jpg +0 -0
- package/dist/styles/assets/images/pfbg_576@2x.jpg +0 -0
- package/dist/styles/assets/images/pfbg_768.jpg +0 -0
- package/dist/styles/assets/images/pfbg_768@2x.jpg +0 -0
- package/dist/styles/assets/images/pfbg_992.jpg +0 -0
- package/dist/styles/assets/images/pfbg_992@2x.jpg +0 -0
- package/dist/styles/assets/images/status-icon-sprite.svg +0 -38
- package/src/components/Tile/examples/Tile.md +0 -48
- /package/dist/esm/{components → deprecated/components}/Tile/Tile.d.ts +0 -0
- /package/dist/esm/{components → deprecated/components}/Tile/Tile.js +0 -0
- /package/dist/esm/{components → deprecated/components}/Tile/index.d.ts +0 -0
- /package/dist/esm/{components → deprecated/components}/Tile/index.js +0 -0
- /package/dist/js/{components → deprecated/components}/Tile/Tile.d.ts +0 -0
- /package/dist/js/{components → deprecated/components}/Tile/Tile.js +0 -0
- /package/dist/js/{components → deprecated/components}/Tile/index.d.ts +0 -0
- /package/dist/js/{components → deprecated/components}/Tile/index.js +0 -0
- /package/src/{components → deprecated/components}/Tile/Tile.tsx +0 -0
- /package/src/{components → deprecated/components}/Tile/__tests__/Tile.test.tsx +0 -0
- /package/src/{components → deprecated/components}/Tile/__tests__/__snapshots__/Tile.test.tsx.snap +0 -0
- /package/src/{components → deprecated/components}/Tile/examples/Tile.css +0 -0
- /package/src/{components → deprecated/components}/Tile/index.ts +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import styles from '@patternfly/react-styles/css/components/Page/page';
|
|
3
3
|
import { css } from '@patternfly/react-styles';
|
|
4
|
-
import globalBreakpointXl from '@patternfly/react-tokens/dist/esm/
|
|
4
|
+
import globalBreakpointXl from '@patternfly/react-tokens/dist/esm/t_global_breakpoint_xl';
|
|
5
5
|
import { debounce, canUseDOM } from '../../helpers/util';
|
|
6
|
-
import { Drawer, DrawerContent,
|
|
6
|
+
import { Drawer, DrawerContent, DrawerPanelContent } from '../Drawer';
|
|
7
7
|
import { PageBreadcrumb, PageBreadcrumbProps } from './PageBreadcrumb';
|
|
8
8
|
import { PageGroup, PageGroupProps } from './PageGroup';
|
|
9
9
|
import { getResizeObserver } from '../../helpers/resizeObserver';
|
|
@@ -345,9 +345,7 @@ class Page extends React.Component<PageProps, PageState> {
|
|
|
345
345
|
{notificationDrawer && (
|
|
346
346
|
<div className={css(styles.pageDrawer)}>
|
|
347
347
|
<Drawer isExpanded={isNotificationDrawerExpanded} onExpand={(event) => onNotificationDrawerExpand(event)}>
|
|
348
|
-
<DrawerContent panelContent={panelContent}>
|
|
349
|
-
<DrawerContentBody>{main}</DrawerContentBody>
|
|
350
|
-
</DrawerContent>
|
|
348
|
+
<DrawerContent panelContent={panelContent}>{main}</DrawerContent>
|
|
351
349
|
</Drawer>
|
|
352
350
|
</div>
|
|
353
351
|
)}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: Page
|
|
3
3
|
section: components
|
|
4
|
-
cssPrefix: pf-
|
|
4
|
+
cssPrefix: pf-v6-c-page
|
|
5
5
|
propComponents:
|
|
6
6
|
['Page', 'PageSidebar', 'PageSidebarBody', 'PageSection', 'PageGroup', 'PageBreadcrumb', 'PageToggleButton']
|
|
7
7
|
---
|
|
@@ -115,7 +115,7 @@ To add additional components and information to a group, you may use the followi
|
|
|
115
115
|
|
|
116
116
|
### Centered section
|
|
117
117
|
|
|
118
|
-
By default, a page section spans the width of the page. To reduce the width of a section, use the `isWidthLimited` property. To center align width-limited page sections, use the `isCenterAligned` property. When the main content area of a page is wider than the value of a centered, width-limited page section's `--pf-
|
|
118
|
+
By default, a page section spans the width of the page. To reduce the width of a section, use the `isWidthLimited` property. To center align width-limited page sections, use the `isCenterAligned` property. When the main content area of a page is wider than the value of a centered, width-limited page section's `--pf-v6-c-page--section--m-limit-width--MaxWidth` custom property, the section will automatically be centered.
|
|
119
119
|
|
|
120
120
|
The content in this example is placed in a card to better illustrate how the section behaves when it is centered, but a card is not required to center a page section.
|
|
121
121
|
|
|
@@ -117,7 +117,7 @@ const SelectBase: React.FunctionComponent<SelectProps & OUIAProps> = ({
|
|
|
117
117
|
setTimeout(() => {
|
|
118
118
|
const firstElement = menuRef?.current?.querySelector('li button:not(:disabled),li input:not(:disabled)');
|
|
119
119
|
firstElement && (firstElement as HTMLElement).focus();
|
|
120
|
-
},
|
|
120
|
+
}, 10);
|
|
121
121
|
}
|
|
122
122
|
|
|
123
123
|
prevIsOpen.current = isOpen;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: Sidebar
|
|
3
|
-
cssPrefix: pf-
|
|
3
|
+
cssPrefix: pf-v6-c-sidebar
|
|
4
4
|
section: components
|
|
5
5
|
propComponents: ['Sidebar', 'SidebarContent', 'SidebarPanel']
|
|
6
6
|
---
|
|
@@ -43,4 +43,4 @@ A `tabIndex` should be added to the `Sidebar` when there is scrollable content i
|
|
|
43
43
|
|
|
44
44
|
### Padding on content
|
|
45
45
|
```ts file="./SidebarPaddingContent.tsx"
|
|
46
|
-
```
|
|
46
|
+
```
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: Skeleton
|
|
3
3
|
section: components
|
|
4
|
-
cssPrefix: pf-
|
|
4
|
+
cssPrefix: pf-v6-c-skeleton
|
|
5
5
|
propComponents: ['Skeleton']
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
8
|
+
import t_global_font_size_4xl from '@patternfly/react-tokens/dist/esm/t_global_font_size_4xl';
|
|
9
|
+
import t_global_font_size_3xl from '@patternfly/react-tokens/dist/esm/t_global_font_size_3xl';
|
|
10
|
+
import t_global_font_size_2xl from '@patternfly/react-tokens/dist/esm/t_global_font_size_2xl';
|
|
11
|
+
import t_global_font_size_xl from '@patternfly/react-tokens/dist/esm/t_global_font_size_xl';
|
|
12
|
+
import t_global_font_size_lg from '@patternfly/react-tokens/dist/esm/t_global_font_size_lg';
|
|
13
|
+
import t_global_font_size_md from '@patternfly/react-tokens/dist/esm/t_global_font_size_md';
|
|
14
|
+
import t_global_font_size_sm from '@patternfly/react-tokens/dist/esm/t_global_font_size_sm';
|
|
15
15
|
|
|
16
16
|
## Examples
|
|
17
17
|
|
|
@@ -1,35 +1,35 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Skeleton } from '@patternfly/react-core';
|
|
3
3
|
/* eslint-disable camelcase */
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
4
|
+
import t_global_font_size_4xl from '@patternfly/react-tokens/dist/esm/t_global_font_size_4xl';
|
|
5
|
+
import t_global_font_size_3xl from '@patternfly/react-tokens/dist/esm/t_global_font_size_3xl';
|
|
6
|
+
import t_global_font_size_2xl from '@patternfly/react-tokens/dist/esm/t_global_font_size_2xl';
|
|
7
|
+
import t_global_font_size_xl from '@patternfly/react-tokens/dist/esm/t_global_font_size_xl';
|
|
8
|
+
import t_global_font_size_lg from '@patternfly/react-tokens/dist/esm/t_global_font_size_lg';
|
|
9
|
+
import t_global_font_size_md from '@patternfly/react-tokens/dist/esm/t_global_font_size_md';
|
|
10
|
+
import t_global_font_size_sm from '@patternfly/react-tokens/dist/esm/t_global_font_size_sm';
|
|
11
11
|
|
|
12
12
|
export const SkeletonText: React.FunctionComponent = () => (
|
|
13
13
|
<React.Fragment>
|
|
14
|
-
{
|
|
14
|
+
{t_global_font_size_4xl.name}
|
|
15
15
|
<Skeleton fontSize="4xl" screenreaderText="Loading font size 4xl" />
|
|
16
16
|
<br />
|
|
17
|
-
{
|
|
17
|
+
{t_global_font_size_3xl.name}
|
|
18
18
|
<Skeleton fontSize="3xl" screenreaderText="Loading font size 3xl" />
|
|
19
19
|
<br />
|
|
20
|
-
{
|
|
20
|
+
{t_global_font_size_2xl.name}
|
|
21
21
|
<Skeleton fontSize="2xl" screenreaderText="Loading font size 2xl" />
|
|
22
22
|
<br />
|
|
23
|
-
{
|
|
23
|
+
{t_global_font_size_xl.name}
|
|
24
24
|
<Skeleton fontSize="xl" screenreaderText="Loading font size xl" />
|
|
25
25
|
<br />
|
|
26
|
-
{
|
|
26
|
+
{t_global_font_size_lg.name}
|
|
27
27
|
<Skeleton fontSize="lg" screenreaderText="Loading font size lg" />
|
|
28
28
|
<br />
|
|
29
|
-
{
|
|
29
|
+
{t_global_font_size_md.name}
|
|
30
30
|
<Skeleton fontSize="md" screenreaderText="Loading font size md" />
|
|
31
31
|
<br />
|
|
32
|
-
{
|
|
32
|
+
{t_global_font_size_sm.name}
|
|
33
33
|
<Skeleton fontSize="sm" screenreaderText="Loading font size sm" />
|
|
34
34
|
</React.Fragment>
|
|
35
35
|
);
|
|
@@ -474,7 +474,12 @@ export const Slider: React.FunctionComponent<SliderProps> = ({
|
|
|
474
474
|
</div>
|
|
475
475
|
)}
|
|
476
476
|
{hasTooltipOverThumb ? (
|
|
477
|
-
<Tooltip
|
|
477
|
+
<Tooltip
|
|
478
|
+
className={css('pf-v6-m-tabular-nums')}
|
|
479
|
+
triggerRef={thumbRef}
|
|
480
|
+
entryDelay={0}
|
|
481
|
+
content={findAriaTextValue()}
|
|
482
|
+
>
|
|
478
483
|
{thumbComponent}
|
|
479
484
|
</Tooltip>
|
|
480
485
|
) : (
|
|
@@ -11,6 +11,8 @@ export interface TextInputGroupProps extends React.HTMLProps<HTMLDivElement> {
|
|
|
11
11
|
isDisabled?: boolean;
|
|
12
12
|
/** Flag to indicate the toggle has no border or background */
|
|
13
13
|
isPlain?: boolean;
|
|
14
|
+
/** Status variant of the text input group. */
|
|
15
|
+
validated?: 'success' | 'warning' | 'error';
|
|
14
16
|
/** @hide A reference object to attach to the input box */
|
|
15
17
|
innerRef?: React.RefObject<any>;
|
|
16
18
|
}
|
|
@@ -24,6 +26,7 @@ export const TextInputGroup: React.FunctionComponent<TextInputGroupProps> = ({
|
|
|
24
26
|
className,
|
|
25
27
|
isDisabled,
|
|
26
28
|
isPlain,
|
|
29
|
+
validated,
|
|
27
30
|
innerRef,
|
|
28
31
|
...props
|
|
29
32
|
}: TextInputGroupProps) => {
|
|
@@ -31,13 +34,14 @@ export const TextInputGroup: React.FunctionComponent<TextInputGroupProps> = ({
|
|
|
31
34
|
const textInputGroupRef = innerRef || ref;
|
|
32
35
|
|
|
33
36
|
return (
|
|
34
|
-
<TextInputGroupContext.Provider value={{ isDisabled }}>
|
|
37
|
+
<TextInputGroupContext.Provider value={{ isDisabled, validated }}>
|
|
35
38
|
<div
|
|
36
39
|
ref={textInputGroupRef}
|
|
37
40
|
className={css(
|
|
38
41
|
styles.textInputGroup,
|
|
39
42
|
isDisabled && styles.modifiers.disabled,
|
|
40
43
|
isPlain && styles.modifiers.plain,
|
|
44
|
+
validated && styles.modifiers[validated],
|
|
41
45
|
className
|
|
42
46
|
)}
|
|
43
47
|
{...props}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import styles from '@patternfly/react-styles/css/components/TextInputGroup/text-input-group';
|
|
3
|
+
import { css } from '@patternfly/react-styles';
|
|
4
|
+
|
|
5
|
+
export interface TextInputGroupIconProps extends React.HTMLProps<HTMLSpanElement> {
|
|
6
|
+
/** Content rendered inside the text input group utilities div */
|
|
7
|
+
children?: React.ReactNode;
|
|
8
|
+
/** Additional classes applied to the text input group utilities container */
|
|
9
|
+
className?: string;
|
|
10
|
+
/** Flag indicating if the icon is a status icon and should inherit status styling. */
|
|
11
|
+
isStatus?: boolean;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const TextInputGroupIcon: React.FunctionComponent<TextInputGroupIconProps> = ({
|
|
15
|
+
children,
|
|
16
|
+
className,
|
|
17
|
+
isStatus,
|
|
18
|
+
...props
|
|
19
|
+
}: TextInputGroupIconProps) => (
|
|
20
|
+
<span className={css(styles.textInputGroupIcon, isStatus && styles.modifiers.status, className)} {...props}>
|
|
21
|
+
{children}
|
|
22
|
+
</span>
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
TextInputGroupIcon.displayName = 'TextInputGroupIcon';
|
|
@@ -2,6 +2,8 @@ import * as React from 'react';
|
|
|
2
2
|
import styles from '@patternfly/react-styles/css/components/TextInputGroup/text-input-group';
|
|
3
3
|
import { css } from '@patternfly/react-styles';
|
|
4
4
|
import { TextInputGroupContext } from './TextInputGroup';
|
|
5
|
+
import { TextInputGroupIcon } from './TextInputGroupIcon';
|
|
6
|
+
import { statusIcons, ValidatedOptions } from '../../helpers';
|
|
5
7
|
|
|
6
8
|
export interface TextInputGroupMainProps extends Omit<React.HTMLProps<HTMLDivElement>, 'onChange'> {
|
|
7
9
|
/** Content rendered inside the text input group main div */
|
|
@@ -78,9 +80,10 @@ const TextInputGroupMainBase: React.FunctionComponent<TextInputGroupMainProps> =
|
|
|
78
80
|
inputId,
|
|
79
81
|
...props
|
|
80
82
|
}: TextInputGroupMainProps) => {
|
|
81
|
-
const { isDisabled } = React.useContext(TextInputGroupContext);
|
|
83
|
+
const { isDisabled, validated } = React.useContext(TextInputGroupContext);
|
|
82
84
|
const ref = React.useRef(null);
|
|
83
85
|
const textInputGroupInputInputRef = innerRef || ref;
|
|
86
|
+
const StatusIcon = statusIcons[validated === ValidatedOptions.error ? 'danger' : validated];
|
|
84
87
|
|
|
85
88
|
const handleChange = (event: React.FormEvent<HTMLInputElement>) => {
|
|
86
89
|
onChange(event, event.currentTarget.value);
|
|
@@ -100,7 +103,7 @@ const TextInputGroupMainBase: React.FunctionComponent<TextInputGroupMainProps> =
|
|
|
100
103
|
id={inputId}
|
|
101
104
|
/>
|
|
102
105
|
)}
|
|
103
|
-
{icon && <
|
|
106
|
+
{icon && <TextInputGroupIcon>{icon}</TextInputGroupIcon>}
|
|
104
107
|
<input
|
|
105
108
|
ref={textInputGroupInputInputRef}
|
|
106
109
|
type={type}
|
|
@@ -119,6 +122,7 @@ const TextInputGroupMainBase: React.FunctionComponent<TextInputGroupMainProps> =
|
|
|
119
122
|
{...(isExpanded !== undefined && { 'aria-expanded': isExpanded })}
|
|
120
123
|
{...(ariaControls && { 'aria-controls': ariaControls })}
|
|
121
124
|
/>
|
|
125
|
+
{validated && <TextInputGroupIcon isStatus>{<StatusIcon aria-hidden="true" />}</TextInputGroupIcon>}
|
|
122
126
|
</span>
|
|
123
127
|
</div>
|
|
124
128
|
);
|
|
@@ -34,20 +34,42 @@ describe('TextInputGroup', () => {
|
|
|
34
34
|
expect(inputGroup).toHaveClass('custom-class');
|
|
35
35
|
});
|
|
36
36
|
|
|
37
|
-
it(
|
|
37
|
+
it(`does not render with the ${styles.modifiers.disabled} class when not disabled`, () => {
|
|
38
38
|
render(<TextInputGroup>Test</TextInputGroup>);
|
|
39
39
|
|
|
40
40
|
const inputGroup = screen.getByText('Test');
|
|
41
41
|
|
|
42
|
-
expect(inputGroup).not.toHaveClass(
|
|
42
|
+
expect(inputGroup).not.toHaveClass(styles.modifiers.disabled);
|
|
43
43
|
});
|
|
44
44
|
|
|
45
|
-
it(
|
|
45
|
+
it(`renders with the ${styles.modifiers.disabled} class when disabled`, () => {
|
|
46
46
|
render(<TextInputGroup isDisabled>Test</TextInputGroup>);
|
|
47
47
|
|
|
48
48
|
const inputGroup = screen.getByText('Test');
|
|
49
49
|
|
|
50
|
-
expect(inputGroup).toHaveClass(
|
|
50
|
+
expect(inputGroup).toHaveClass(styles.modifiers.disabled);
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
it(`renders with class ${styles.modifiers.success} when validated="success"`, () => {
|
|
54
|
+
render(<TextInputGroup validated="success">Test</TextInputGroup>);
|
|
55
|
+
|
|
56
|
+
const inputGroup = screen.getByText('Test');
|
|
57
|
+
|
|
58
|
+
expect(inputGroup).toHaveClass(styles.modifiers.success);
|
|
59
|
+
});
|
|
60
|
+
it(`renders with class ${styles.modifiers.warning} when validated="warning"`, () => {
|
|
61
|
+
render(<TextInputGroup validated="warning">Test</TextInputGroup>);
|
|
62
|
+
|
|
63
|
+
const inputGroup = screen.getByText('Test');
|
|
64
|
+
|
|
65
|
+
expect(inputGroup).toHaveClass(styles.modifiers.warning);
|
|
66
|
+
});
|
|
67
|
+
it(`renders with class ${styles.modifiers.error} when validated="error"`, () => {
|
|
68
|
+
render(<TextInputGroup validated="error">Test</TextInputGroup>);
|
|
69
|
+
|
|
70
|
+
const inputGroup = screen.getByText('Test');
|
|
71
|
+
|
|
72
|
+
expect(inputGroup).toHaveClass(styles.modifiers.error);
|
|
51
73
|
});
|
|
52
74
|
|
|
53
75
|
it('passes isDisabled=false to children via a context when isDisabled prop is not passed', () => {
|
|
@@ -242,6 +242,16 @@ describe('TextInputGroupMain', () => {
|
|
|
242
242
|
expect(hintInput).toBeVisible();
|
|
243
243
|
});
|
|
244
244
|
|
|
245
|
+
it(`Renders status icon with class ${styles.modifiers.status} when a validated prop is passed`, () => {
|
|
246
|
+
render(
|
|
247
|
+
<TextInputGroupContext.Provider value={{ validated: 'success' }}>
|
|
248
|
+
<TextInputGroupMain />
|
|
249
|
+
</TextInputGroupContext.Provider>
|
|
250
|
+
);
|
|
251
|
+
|
|
252
|
+
expect(screen.getByRole('textbox').nextElementSibling).toHaveClass(styles.modifiers.status);
|
|
253
|
+
});
|
|
254
|
+
|
|
245
255
|
it('does not call onChange callback when the input does not change', () => {
|
|
246
256
|
const onChangeMock = jest.fn();
|
|
247
257
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
id: Text input group
|
|
3
3
|
section: components
|
|
4
|
-
cssPrefix: pf-
|
|
4
|
+
cssPrefix: pf-v6-c-text-input-group
|
|
5
5
|
propComponents: ['TextInputGroup', 'TextInputGroupMain', 'TextInputGroupUtilities']
|
|
6
6
|
---
|
|
7
7
|
|
|
@@ -10,22 +10,44 @@ import TimesIcon from '@patternfly/react-icons/dist/esm/icons/times-icon';
|
|
|
10
10
|
|
|
11
11
|
## Examples
|
|
12
12
|
|
|
13
|
-
### Basic
|
|
13
|
+
### Basic text input group
|
|
14
|
+
|
|
15
|
+
A basic text input group updates its contents as users enter text.
|
|
14
16
|
|
|
15
17
|
```ts file="./TextInputGroupBasic.tsx"
|
|
18
|
+
|
|
16
19
|
```
|
|
17
20
|
|
|
18
|
-
### Disabled
|
|
21
|
+
### Disabled text input group
|
|
22
|
+
|
|
23
|
+
To prevent users from making edits to a text input group, you can disable it using `isDisabled`.
|
|
19
24
|
|
|
20
25
|
```ts file="./TextInputGroupDisabled.tsx"
|
|
26
|
+
|
|
21
27
|
```
|
|
22
28
|
|
|
23
|
-
###
|
|
29
|
+
### With icon and utilities
|
|
30
|
+
|
|
31
|
+
To help users identify the purpose of an input group, you can add an icon. To do this, import your icon and pass it to `icon` within `<TextInputGroupMain>`.
|
|
32
|
+
|
|
33
|
+
You can also add additional actions or utilities via `<TextInputGroupUtilities>`. The following example includes a clear button that allows users to remove their previous input.
|
|
24
34
|
|
|
25
35
|
```ts file="./TextInputGroupUtilitiesAndIcon.tsx"
|
|
36
|
+
|
|
26
37
|
```
|
|
27
38
|
|
|
28
|
-
###
|
|
39
|
+
### With validation
|
|
40
|
+
|
|
41
|
+
You can add a validation status to a `<TextInputGroup>` by passing the `validated` property with a value of either "success", "warning", or "error".
|
|
42
|
+
|
|
43
|
+
```ts file="./TextInputGroupWithStatus.tsx"
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### With filters
|
|
48
|
+
|
|
49
|
+
When a text input group is used within a data view, like a table, you can nest filter labels within the group. To do this, pass a `<LabelGroup>` to `<TextInputGroupMain>`, with all of the labels that a user has selected. Users can interact with these labels as needed.
|
|
29
50
|
|
|
30
51
|
```ts file="./TextInputGroupFilters.tsx"
|
|
52
|
+
|
|
31
53
|
```
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import {
|
|
3
|
+
TextInputGroup,
|
|
4
|
+
TextInputGroupMain,
|
|
5
|
+
TextInputGroupUtilities,
|
|
6
|
+
Button,
|
|
7
|
+
ValidatedOptions,
|
|
8
|
+
Flex,
|
|
9
|
+
FlexItem
|
|
10
|
+
} from '@patternfly/react-core';
|
|
11
|
+
import SearchIcon from '@patternfly/react-icons/dist/esm/icons/search-icon';
|
|
12
|
+
import TimesIcon from '@patternfly/react-icons/dist/esm/icons/times-icon';
|
|
13
|
+
|
|
14
|
+
export const TextInputGroupWithStatus: React.FunctionComponent = () => {
|
|
15
|
+
const [successValue, setSuccessValue] = React.useState('Success validation');
|
|
16
|
+
const [warningValue, setWarningValue] = React.useState('Warning validation with custom non-status icon at start');
|
|
17
|
+
const [errorValue, setErrorValue] = React.useState(
|
|
18
|
+
'Error validation with custom non-status icon at start and utilities'
|
|
19
|
+
);
|
|
20
|
+
|
|
21
|
+
/** show the input clearing button only when the input is not empty */
|
|
22
|
+
const showClearButton = !!errorValue;
|
|
23
|
+
|
|
24
|
+
/** render the utilities component only when a component it contains is being rendered */
|
|
25
|
+
const showUtilities = showClearButton;
|
|
26
|
+
|
|
27
|
+
/** callback for clearing the text input */
|
|
28
|
+
const clearInput = () => {
|
|
29
|
+
setErrorValue('');
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
return (
|
|
33
|
+
<Flex direction={{ default: 'column' }} rowGap={{ default: 'rowGapSm' }}>
|
|
34
|
+
<FlexItem>
|
|
35
|
+
<TextInputGroup validated={ValidatedOptions.success}>
|
|
36
|
+
<TextInputGroupMain value={successValue} onChange={(_event, value) => setSuccessValue(value)} />
|
|
37
|
+
</TextInputGroup>
|
|
38
|
+
</FlexItem>
|
|
39
|
+
<FlexItem>
|
|
40
|
+
<TextInputGroup validated={ValidatedOptions.warning}>
|
|
41
|
+
<TextInputGroupMain
|
|
42
|
+
icon={<SearchIcon />}
|
|
43
|
+
value={warningValue}
|
|
44
|
+
onChange={(_event, value) => setWarningValue(value)}
|
|
45
|
+
/>
|
|
46
|
+
</TextInputGroup>
|
|
47
|
+
</FlexItem>
|
|
48
|
+
<FlexItem>
|
|
49
|
+
<TextInputGroup validated={ValidatedOptions.error}>
|
|
50
|
+
<TextInputGroupMain
|
|
51
|
+
icon={<SearchIcon />}
|
|
52
|
+
value={errorValue}
|
|
53
|
+
onChange={(_event, value) => setErrorValue(value)}
|
|
54
|
+
/>
|
|
55
|
+
{showUtilities && (
|
|
56
|
+
<TextInputGroupUtilities>
|
|
57
|
+
{showClearButton && (
|
|
58
|
+
<Button variant="plain" onClick={clearInput} aria-label="Clear button and input" icon={<TimesIcon />} />
|
|
59
|
+
)}
|
|
60
|
+
</TextInputGroupUtilities>
|
|
61
|
+
)}
|
|
62
|
+
</TextInputGroup>
|
|
63
|
+
</FlexItem>
|
|
64
|
+
</Flex>
|
|
65
|
+
);
|
|
66
|
+
};
|