@patternfly/react-core 6.4.1-prerelease.9 → 6.5.0-prerelease.10
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 +73 -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/Compass/package.json +1 -0
- package/dist/dynamic/components/Content/package.json +1 -1
- package/dist/dynamic/components/DataList/package.json +1 -1
- package/dist/dynamic/components/DatePicker/package.json +1 -1
- package/dist/dynamic/components/DescriptionList/package.json +1 -1
- package/dist/dynamic/components/Divider/package.json +1 -1
- package/dist/dynamic/components/Drawer/package.json +1 -1
- package/dist/dynamic/components/Dropdown/package.json +1 -1
- package/dist/dynamic/components/DualListSelector/package.json +1 -1
- package/dist/dynamic/components/EmptyState/package.json +1 -1
- package/dist/dynamic/components/ExpandableSection/package.json +1 -1
- package/dist/dynamic/components/FileUpload/package.json +1 -1
- package/dist/dynamic/components/Form/package.json +1 -1
- package/dist/dynamic/components/FormSelect/package.json +1 -1
- package/dist/dynamic/components/HelperText/package.json +1 -1
- package/dist/dynamic/components/Hint/package.json +1 -1
- package/dist/dynamic/components/Icon/package.json +1 -1
- package/dist/dynamic/components/InputGroup/package.json +1 -1
- package/dist/dynamic/components/JumpLinks/package.json +1 -1
- package/dist/dynamic/components/Label/package.json +1 -1
- package/dist/dynamic/components/List/package.json +1 -1
- package/dist/dynamic/components/LoginPage/package.json +1 -1
- package/dist/dynamic/components/Masthead/package.json +1 -1
- package/dist/dynamic/components/Menu/package.json +1 -1
- package/dist/dynamic/components/MenuToggle/package.json +1 -1
- package/dist/dynamic/components/Modal/package.json +1 -1
- package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
- package/dist/dynamic/components/Nav/package.json +1 -1
- package/dist/dynamic/components/NotificationBadge/package.json +1 -1
- package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
- package/dist/dynamic/components/NumberInput/package.json +1 -1
- package/dist/dynamic/components/OverflowMenu/package.json +1 -1
- package/dist/dynamic/components/Page/package.json +1 -1
- package/dist/dynamic/components/Pagination/package.json +1 -1
- package/dist/dynamic/components/Panel/package.json +1 -1
- package/dist/dynamic/components/Popover/package.json +1 -1
- package/dist/dynamic/components/Progress/package.json +1 -1
- package/dist/dynamic/components/ProgressStepper/package.json +1 -1
- package/dist/dynamic/components/Radio/package.json +1 -1
- package/dist/dynamic/components/SearchInput/package.json +1 -1
- package/dist/dynamic/components/Select/package.json +1 -1
- package/dist/dynamic/components/Sidebar/package.json +1 -1
- package/dist/dynamic/components/SimpleList/package.json +1 -1
- package/dist/dynamic/components/Skeleton/package.json +1 -1
- package/dist/dynamic/components/SkipToContent/package.json +1 -1
- package/dist/dynamic/components/Slider/package.json +1 -1
- package/dist/dynamic/components/Spinner/package.json +1 -1
- package/dist/dynamic/components/Switch/package.json +1 -1
- package/dist/dynamic/components/Tabs/package.json +1 -1
- package/dist/dynamic/components/TextArea/package.json +1 -1
- package/dist/dynamic/components/TextInput/package.json +1 -1
- package/dist/dynamic/components/TextInputGroup/package.json +1 -1
- package/dist/dynamic/components/TimePicker/package.json +1 -1
- package/dist/dynamic/components/Timestamp/package.json +1 -1
- package/dist/dynamic/components/Title/package.json +1 -1
- package/dist/dynamic/components/ToggleGroup/package.json +1 -1
- package/dist/dynamic/components/Toolbar/package.json +1 -1
- package/dist/dynamic/components/Tooltip/package.json +1 -1
- package/dist/dynamic/components/TreeView/package.json +1 -1
- package/dist/dynamic/components/Truncate/package.json +1 -1
- package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
- package/dist/dynamic/components/Wizard/package.json +1 -1
- package/dist/dynamic/deprecated/components/Chip/package.json +1 -1
- package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
- package/dist/dynamic/deprecated/components/DualListSelector/package.json +1 -1
- package/dist/dynamic/deprecated/components/Modal/package.json +1 -1
- package/dist/dynamic/deprecated/components/Tile/package.json +1 -1
- package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
- package/dist/dynamic/deprecated/components/package.json +1 -1
- package/dist/dynamic/helpers/AnimationsProvider/AnimationsProvider/package.json +1 -1
- package/dist/dynamic/helpers/AnimationsProvider/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 +8 -0
- package/dist/esm/components/ActionList/ActionList.d.ts +2 -0
- package/dist/esm/components/ActionList/ActionList.d.ts.map +1 -1
- package/dist/esm/components/ActionList/ActionList.js +2 -2
- package/dist/esm/components/ActionList/ActionList.js.map +1 -1
- package/dist/esm/components/Button/Button.d.ts +2 -0
- package/dist/esm/components/Button/Button.d.ts.map +1 -1
- package/dist/esm/components/Button/Button.js +2 -2
- package/dist/esm/components/Button/Button.js.map +1 -1
- package/dist/esm/components/Card/CardSubtitle.d.ts +9 -0
- package/dist/esm/components/Card/CardSubtitle.d.ts.map +1 -0
- package/dist/esm/components/Card/CardSubtitle.js +10 -0
- package/dist/esm/components/Card/CardSubtitle.js.map +1 -0
- package/dist/esm/components/Card/CardTitle.d.ts +2 -0
- package/dist/esm/components/Card/CardTitle.d.ts.map +1 -1
- package/dist/esm/components/Card/CardTitle.js +5 -3
- package/dist/esm/components/Card/CardTitle.js.map +1 -1
- package/dist/esm/components/Compass/Compass.d.ts +34 -0
- package/dist/esm/components/Compass/Compass.d.ts.map +1 -0
- package/dist/esm/components/Compass/Compass.js +25 -0
- package/dist/esm/components/Compass/Compass.js.map +1 -0
- package/dist/esm/components/Compass/CompassContent.d.ts +15 -0
- package/dist/esm/components/Compass/CompassContent.d.ts.map +1 -0
- package/dist/esm/components/Compass/CompassContent.js +16 -0
- package/dist/esm/components/Compass/CompassContent.js.map +1 -0
- package/dist/esm/components/Compass/CompassHeader.d.ts +12 -0
- package/dist/esm/components/Compass/CompassHeader.d.ts.map +1 -0
- package/dist/esm/components/Compass/CompassHeader.js +6 -0
- package/dist/esm/components/Compass/CompassHeader.js.map +1 -0
- package/dist/esm/components/Compass/CompassHero.d.ts +26 -0
- package/dist/esm/components/Compass/CompassHero.d.ts.map +1 -0
- package/dist/esm/components/Compass/CompassHero.js +47 -0
- package/dist/esm/components/Compass/CompassHero.js.map +1 -0
- package/dist/esm/components/Compass/CompassMainHeader.d.ts +14 -0
- package/dist/esm/components/Compass/CompassMainHeader.d.ts.map +1 -0
- package/dist/esm/components/Compass/CompassMainHeader.js +13 -0
- package/dist/esm/components/Compass/CompassMainHeader.js.map +1 -0
- package/dist/esm/components/Compass/CompassMessageBar.d.ts +10 -0
- package/dist/esm/components/Compass/CompassMessageBar.d.ts.map +1 -0
- package/dist/esm/components/Compass/CompassMessageBar.js +10 -0
- package/dist/esm/components/Compass/CompassMessageBar.js.map +1 -0
- package/dist/esm/components/Compass/CompassPanel.d.ts +22 -0
- package/dist/esm/components/Compass/CompassPanel.d.ts.map +1 -0
- package/dist/esm/components/Compass/CompassPanel.js +10 -0
- package/dist/esm/components/Compass/CompassPanel.js.map +1 -0
- package/dist/esm/components/Compass/index.d.ts +8 -0
- package/dist/esm/components/Compass/index.d.ts.map +1 -0
- package/dist/esm/components/Compass/index.js +8 -0
- package/dist/esm/components/Compass/index.js.map +1 -0
- package/dist/esm/components/DataList/DataList.d.ts +2 -0
- package/dist/esm/components/DataList/DataList.d.ts.map +1 -1
- package/dist/esm/components/DataList/DataList.js +2 -2
- package/dist/esm/components/DataList/DataList.js.map +1 -1
- package/dist/esm/components/Drawer/Drawer.d.ts +2 -0
- package/dist/esm/components/Drawer/Drawer.d.ts.map +1 -1
- package/dist/esm/components/Drawer/Drawer.js +2 -2
- package/dist/esm/components/Drawer/Drawer.js.map +1 -1
- package/dist/esm/components/Drawer/DrawerPanelContent.d.ts +2 -0
- package/dist/esm/components/Drawer/DrawerPanelContent.d.ts.map +1 -1
- package/dist/esm/components/Drawer/DrawerPanelContent.js +2 -2
- package/dist/esm/components/Drawer/DrawerPanelContent.js.map +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts +9 -2
- package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSection.js +5 -3
- package/dist/esm/components/ExpandableSection/ExpandableSection.js.map +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts +5 -0
- package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.js +3 -2
- package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.js.map +1 -1
- package/dist/esm/components/Menu/Menu.d.ts +0 -1
- package/dist/esm/components/Menu/Menu.d.ts.map +1 -1
- package/dist/esm/components/Menu/Menu.js +5 -8
- package/dist/esm/components/Menu/Menu.js.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggle.d.ts +2 -0
- package/dist/esm/components/MenuToggle/MenuToggle.d.ts.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggle.js +3 -2
- package/dist/esm/components/MenuToggle/MenuToggle.js.map +1 -1
- package/dist/esm/components/Page/Page.d.ts.map +1 -1
- package/dist/esm/components/Page/Page.js +1 -0
- package/dist/esm/components/Page/Page.js.map +1 -1
- package/dist/esm/components/Page/PageContext.d.ts +1 -0
- package/dist/esm/components/Page/PageContext.d.ts.map +1 -1
- package/dist/esm/components/Page/PageContext.js +1 -0
- package/dist/esm/components/Page/PageContext.js.map +1 -1
- package/dist/esm/components/Page/PageSidebar.js +2 -2
- package/dist/esm/components/Page/PageSidebar.js.map +1 -1
- package/dist/esm/components/Progress/Progress.d.ts +2 -0
- package/dist/esm/components/Progress/Progress.d.ts.map +1 -1
- package/dist/esm/components/Progress/Progress.js +2 -2
- package/dist/esm/components/Progress/Progress.js.map +1 -1
- package/dist/esm/components/Progress/ProgressContainer.d.ts +2 -0
- package/dist/esm/components/Progress/ProgressContainer.d.ts.map +1 -1
- package/dist/esm/components/Progress/ProgressContainer.js +2 -2
- package/dist/esm/components/Progress/ProgressContainer.js.map +1 -1
- package/dist/esm/components/Tabs/Tabs.d.ts +2 -0
- package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/esm/components/Tabs/Tabs.js +5 -4
- package/dist/esm/components/Tabs/Tabs.js.map +1 -1
- package/dist/esm/components/Truncate/Truncate.d.ts.map +1 -1
- package/dist/esm/components/Truncate/Truncate.js +5 -4
- package/dist/esm/components/Truncate/Truncate.js.map +1 -1
- package/dist/esm/components/index.d.ts +1 -0
- package/dist/esm/components/index.d.ts.map +1 -1
- package/dist/esm/components/index.js +1 -0
- package/dist/esm/components/index.js.map +1 -1
- package/dist/js/components/ActionList/ActionList.d.ts +2 -0
- package/dist/js/components/ActionList/ActionList.d.ts.map +1 -1
- package/dist/js/components/ActionList/ActionList.js +2 -2
- package/dist/js/components/ActionList/ActionList.js.map +1 -1
- package/dist/js/components/Button/Button.d.ts +2 -0
- package/dist/js/components/Button/Button.d.ts.map +1 -1
- package/dist/js/components/Button/Button.js +2 -2
- package/dist/js/components/Button/Button.js.map +1 -1
- package/dist/js/components/Card/CardSubtitle.d.ts +9 -0
- package/dist/js/components/Card/CardSubtitle.d.ts.map +1 -0
- package/dist/js/components/Card/CardSubtitle.js +14 -0
- package/dist/js/components/Card/CardSubtitle.js.map +1 -0
- package/dist/js/components/Card/CardTitle.d.ts +2 -0
- package/dist/js/components/Card/CardTitle.d.ts.map +1 -1
- package/dist/js/components/Card/CardTitle.js +4 -2
- package/dist/js/components/Card/CardTitle.js.map +1 -1
- package/dist/js/components/Compass/Compass.d.ts +34 -0
- package/dist/js/components/Compass/Compass.d.ts.map +1 -0
- package/dist/js/components/Compass/Compass.js +29 -0
- package/dist/js/components/Compass/Compass.js.map +1 -0
- package/dist/js/components/Compass/CompassContent.d.ts +15 -0
- package/dist/js/components/Compass/CompassContent.d.ts.map +1 -0
- package/dist/js/components/Compass/CompassContent.js +20 -0
- package/dist/js/components/Compass/CompassContent.js.map +1 -0
- package/dist/js/components/Compass/CompassHeader.d.ts +12 -0
- package/dist/js/components/Compass/CompassHeader.d.ts.map +1 -0
- package/dist/js/components/Compass/CompassHeader.js +11 -0
- package/dist/js/components/Compass/CompassHeader.js.map +1 -0
- package/dist/js/components/Compass/CompassHero.d.ts +26 -0
- package/dist/js/components/Compass/CompassHero.d.ts.map +1 -0
- package/dist/js/components/Compass/CompassHero.js +51 -0
- package/dist/js/components/Compass/CompassHero.js.map +1 -0
- package/dist/js/components/Compass/CompassMainHeader.d.ts +14 -0
- package/dist/js/components/Compass/CompassMainHeader.d.ts.map +1 -0
- package/dist/js/components/Compass/CompassMainHeader.js +17 -0
- package/dist/js/components/Compass/CompassMainHeader.js.map +1 -0
- package/dist/js/components/Compass/CompassMessageBar.d.ts +10 -0
- package/dist/js/components/Compass/CompassMessageBar.d.ts.map +1 -0
- package/dist/js/components/Compass/CompassMessageBar.js +14 -0
- package/dist/js/components/Compass/CompassMessageBar.js.map +1 -0
- package/dist/js/components/Compass/CompassPanel.d.ts +22 -0
- package/dist/js/components/Compass/CompassPanel.d.ts.map +1 -0
- package/dist/js/components/Compass/CompassPanel.js +14 -0
- package/dist/js/components/Compass/CompassPanel.js.map +1 -0
- package/dist/js/components/Compass/index.d.ts +8 -0
- package/dist/js/components/Compass/index.d.ts.map +1 -0
- package/dist/js/components/Compass/index.js +11 -0
- package/dist/js/components/Compass/index.js.map +1 -0
- package/dist/js/components/DataList/DataList.d.ts +2 -0
- package/dist/js/components/DataList/DataList.d.ts.map +1 -1
- package/dist/js/components/DataList/DataList.js +2 -2
- package/dist/js/components/DataList/DataList.js.map +1 -1
- package/dist/js/components/Drawer/Drawer.d.ts +2 -0
- package/dist/js/components/Drawer/Drawer.d.ts.map +1 -1
- package/dist/js/components/Drawer/Drawer.js +2 -2
- package/dist/js/components/Drawer/Drawer.js.map +1 -1
- package/dist/js/components/Drawer/DrawerPanelContent.d.ts +2 -0
- package/dist/js/components/Drawer/DrawerPanelContent.d.ts.map +1 -1
- package/dist/js/components/Drawer/DrawerPanelContent.js +2 -2
- package/dist/js/components/Drawer/DrawerPanelContent.js.map +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSection.d.ts +9 -2
- package/dist/js/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSection.js +5 -3
- package/dist/js/components/ExpandableSection/ExpandableSection.js.map +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts +5 -0
- package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSectionToggle.js +3 -2
- package/dist/js/components/ExpandableSection/ExpandableSectionToggle.js.map +1 -1
- package/dist/js/components/Menu/Menu.d.ts +0 -1
- package/dist/js/components/Menu/Menu.d.ts.map +1 -1
- package/dist/js/components/Menu/Menu.js +5 -8
- package/dist/js/components/Menu/Menu.js.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggle.d.ts +2 -0
- package/dist/js/components/MenuToggle/MenuToggle.d.ts.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggle.js +3 -2
- package/dist/js/components/MenuToggle/MenuToggle.js.map +1 -1
- package/dist/js/components/Page/Page.d.ts.map +1 -1
- package/dist/js/components/Page/Page.js +1 -0
- package/dist/js/components/Page/Page.js.map +1 -1
- package/dist/js/components/Page/PageContext.d.ts +1 -0
- package/dist/js/components/Page/PageContext.d.ts.map +1 -1
- package/dist/js/components/Page/PageContext.js +1 -0
- package/dist/js/components/Page/PageContext.js.map +1 -1
- package/dist/js/components/Page/PageSidebar.js +2 -2
- package/dist/js/components/Page/PageSidebar.js.map +1 -1
- package/dist/js/components/Progress/Progress.d.ts +2 -0
- package/dist/js/components/Progress/Progress.d.ts.map +1 -1
- package/dist/js/components/Progress/Progress.js +2 -2
- package/dist/js/components/Progress/Progress.js.map +1 -1
- package/dist/js/components/Progress/ProgressContainer.d.ts +2 -0
- package/dist/js/components/Progress/ProgressContainer.d.ts.map +1 -1
- package/dist/js/components/Progress/ProgressContainer.js +2 -2
- package/dist/js/components/Progress/ProgressContainer.js.map +1 -1
- package/dist/js/components/Tabs/Tabs.d.ts +2 -0
- package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/js/components/Tabs/Tabs.js +5 -4
- package/dist/js/components/Tabs/Tabs.js.map +1 -1
- package/dist/js/components/Truncate/Truncate.d.ts.map +1 -1
- package/dist/js/components/Truncate/Truncate.js +5 -4
- package/dist/js/components/Truncate/Truncate.js.map +1 -1
- package/dist/js/components/index.d.ts +1 -0
- package/dist/js/components/index.d.ts.map +1 -1
- package/dist/js/components/index.js +1 -0
- package/dist/js/components/index.js.map +1 -1
- package/dist/styles/assets/images/RHAiExperienceIcon.svg +27 -0
- package/dist/styles/assets/images/RHAutomationsLogo.svg +96 -0
- package/dist/styles/assets/images/RHServerStackIcon.svg +16 -0
- package/dist/styles/assets/images/compass--hero-bg.png +0 -0
- package/dist/styles/assets/images/compass--rh-wallpaper-dark.png +0 -0
- package/dist/styles/assets/images/compass--rh-wallpaper-light.png +0 -0
- package/dist/styles/assets/images/compass--wallpaper-dark.png +0 -0
- package/dist/styles/assets/images/compass--wallpaper-light.png +0 -0
- package/dist/styles/base-no-reset.css +97 -0
- package/dist/styles/base.css +104 -0
- package/dist/umd/assets/{output-CJfbZNQh.css → output-4DDCBaXc.css} +21118 -20783
- package/dist/umd/react-core.min.js +3 -3
- package/helpers/package.json +1 -1
- package/layouts/package.json +1 -1
- package/next/package.json +1 -1
- package/package.json +6 -6
- package/src/components/ActionList/ActionList.tsx +12 -1
- package/src/components/ActionList/__tests__/ActionList.test.tsx +12 -0
- package/src/components/ActionList/examples/ActionList.md +6 -0
- package/src/components/ActionList/examples/ActionListVertical.tsx +46 -0
- package/src/components/Button/Button.tsx +4 -0
- package/src/components/Button/__tests__/Button.test.tsx +5 -0
- package/src/components/Button/__tests__/__snapshots__/Button.test.tsx.snap +1 -1
- package/src/components/Button/examples/Button.md +8 -0
- package/src/components/Button/examples/ButtonCircle.tsx +63 -0
- package/src/components/Card/CardSubtitle.tsx +20 -0
- package/src/components/Card/CardTitle.tsx +6 -0
- package/src/components/Card/__tests__/CardSubtitle.test.tsx +48 -0
- package/src/components/Card/__tests__/CardTitle.test.tsx +27 -17
- package/src/components/Card/__tests__/__snapshots__/CardSubtitle.test.tsx.snap +21 -0
- package/src/components/Card/__tests__/__snapshots__/CardTitle.test.tsx.snap +1 -1
- package/src/components/Card/examples/Card.md +16 -1
- package/src/components/Card/examples/CardSubtitle.tsx +9 -0
- package/src/components/Card/examples/CardSubtitleActions.tsx +107 -0
- package/src/components/ClipboardCopy/__tests__/ClipboardCopyTruncateIntegration.test.tsx +32 -0
- package/src/components/Compass/Compass.tsx +109 -0
- package/src/components/Compass/CompassContent.tsx +42 -0
- package/src/components/Compass/CompassHeader.tsx +21 -0
- package/src/components/Compass/CompassHero.tsx +87 -0
- package/src/components/Compass/CompassMainHeader.tsx +43 -0
- package/src/components/Compass/CompassMessageBar.tsx +21 -0
- package/src/components/Compass/CompassPanel.tsx +51 -0
- package/src/components/Compass/__tests__/Compass.test.tsx +172 -0
- package/src/components/Compass/__tests__/CompassContent.test.tsx +46 -0
- package/src/components/Compass/__tests__/CompassHeader.test.tsx +56 -0
- package/src/components/Compass/__tests__/CompassHero.test.tsx +150 -0
- package/src/components/Compass/__tests__/CompassMainHeader.test.tsx +90 -0
- package/src/components/Compass/__tests__/CompassMessageBar.test.tsx +41 -0
- package/src/components/Compass/__tests__/CompassPanel.test.tsx +86 -0
- package/src/components/Compass/__tests__/__snapshots__/Compass.test.tsx.snap +108 -0
- package/src/components/Compass/__tests__/__snapshots__/CompassContent.test.tsx.snap +40 -0
- package/src/components/Compass/__tests__/__snapshots__/CompassHeader.test.tsx.snap +27 -0
- package/src/components/Compass/__tests__/__snapshots__/CompassHero.test.tsx.snap +18 -0
- package/src/components/Compass/__tests__/__snapshots__/CompassMainHeader.test.tsx.snap +42 -0
- package/src/components/Compass/__tests__/__snapshots__/CompassMessageBar.test.tsx.snap +13 -0
- package/src/components/Compass/__tests__/__snapshots__/CompassPanel.test.tsx.snap +25 -0
- package/src/components/Compass/examples/Compass.md +47 -0
- package/src/components/Compass/examples/CompassBasic.tsx +33 -0
- package/src/components/Compass/examples/CompassDemo.tsx +151 -0
- package/src/components/Compass/examples/compass.css +11 -0
- package/src/components/Compass/index.ts +7 -0
- package/src/components/DataList/DataList.tsx +4 -0
- package/src/components/DataList/__tests__/DataList.test.tsx +6 -0
- package/src/components/DataList/examples/DataList.md +6 -0
- package/src/components/DataList/examples/DataListPlain.tsx +32 -0
- package/src/components/Drawer/Drawer.tsx +4 -0
- package/src/components/Drawer/DrawerPanelContent.tsx +4 -0
- package/src/components/Drawer/__tests__/Drawer.test.tsx +26 -1
- package/src/components/Drawer/__tests__/DrawerPanelContent.test.tsx +10 -0
- package/src/components/Drawer/examples/Drawer.md +13 -0
- package/src/components/Drawer/examples/DrawerBasicPill.tsx +57 -0
- package/src/components/Drawer/examples/DrawerPillInline.tsx +57 -0
- package/src/components/ExpandableSection/ExpandableSection.tsx +17 -5
- package/src/components/ExpandableSection/ExpandableSectionToggle.tsx +48 -38
- package/src/components/ExpandableSection/__tests__/ExpandableSection.test.tsx +63 -0
- package/src/components/ExpandableSection/__tests__/ExpandableSectionToggle.test.tsx +28 -0
- package/src/components/ExpandableSection/examples/ExpandableSection.md +16 -0
- package/src/components/ExpandableSection/examples/ExpandableSectionCustomToggle.tsx +31 -16
- package/src/components/ExpandableSection/examples/ExpandableSectionUncontrolledDynamicToggleFunction.tsx +13 -0
- package/src/components/ExpandableSection/examples/ExpandableSectionWithHeading.tsx +89 -0
- package/src/components/Menu/Menu.tsx +1 -6
- package/src/components/MenuToggle/MenuToggle.tsx +5 -1
- package/src/components/MenuToggle/__tests__/MenuToggle.test.tsx +20 -0
- package/src/components/MenuToggle/examples/MenuToggle.md +18 -0
- package/src/components/MenuToggle/examples/MenuTogglePlainCircle.tsx +11 -0
- package/src/components/Page/Page.tsx +1 -0
- package/src/components/Page/PageContext.tsx +2 -0
- package/src/components/Page/PageSidebar.tsx +2 -2
- package/src/components/Page/__tests__/Generated/__snapshots__/PageSidebar.test.tsx.snap +1 -1
- package/src/components/Page/__tests__/__snapshots__/Page.test.tsx.snap +12 -12
- package/src/components/Progress/Progress.tsx +4 -0
- package/src/components/Progress/ProgressContainer.tsx +5 -2
- package/src/components/Progress/__tests__/Generated/ProgressContainer.test.tsx +1 -0
- package/src/components/Progress/__tests__/Progress.test.tsx +32 -0
- package/src/components/Progress/examples/Progress.md +2 -14
- package/src/components/Progress/examples/ProgressInteractiveFailure.tsx +55 -0
- package/src/components/Tabs/Tabs.tsx +7 -2
- package/src/components/Tabs/__tests__/Tabs.test.tsx +60 -0
- package/src/components/Tabs/__tests__/__snapshots__/Tabs.test.tsx.snap +13 -13
- package/src/components/Tabs/examples/Tabs.md +8 -0
- package/src/components/Tabs/examples/TabsSiteNav.tsx +40 -0
- package/src/components/Truncate/Truncate.tsx +5 -4
- package/src/components/Truncate/__tests__/Truncate.test.tsx +21 -3
- package/src/components/Truncate/__tests__/__snapshots__/Truncate.test.tsx.snap +3 -9
- package/src/components/index.ts +1 -0
- package/src/components/Progress/examples/ProgressFailureWithoutMeasure.tsx +0 -5
- package/src/components/Progress/examples/ProgressInsideSuccess.tsx +0 -10
- package/src/components/Progress/examples/ProgressOutsideFailure.tsx +0 -10
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { Drawer, DrawerContent, DrawerContentBody, DrawerProps } from '../Drawer';
|
|
2
|
+
import styles from '@patternfly/react-styles/css/components/Compass/compass';
|
|
3
|
+
import { css } from '@patternfly/react-styles';
|
|
4
|
+
|
|
5
|
+
import compassBackgroundImageLight from '@patternfly/react-tokens/dist/esm/c_compass_BackgroundImage_light';
|
|
6
|
+
import compassBackgroundImageDark from '@patternfly/react-tokens/dist/esm/c_compass_BackgroundImage_dark';
|
|
7
|
+
|
|
8
|
+
export interface CompassProps extends React.HTMLProps<HTMLDivElement> {
|
|
9
|
+
/** Additional classes added to the compass. */
|
|
10
|
+
className?: string;
|
|
11
|
+
/** Content placed at the top of the layout */
|
|
12
|
+
header?: React.ReactNode;
|
|
13
|
+
/** Flag indicating if the header is expanded */
|
|
14
|
+
isHeaderExpanded?: boolean;
|
|
15
|
+
/** Content placed at the horizontal start of the layout, before the main content */
|
|
16
|
+
sidebarStart?: React.ReactNode;
|
|
17
|
+
/** Flag indicating if the start sidebar is expanded */
|
|
18
|
+
isSidebarStartExpanded?: boolean;
|
|
19
|
+
/** Content placed at the center of the layout */
|
|
20
|
+
main?: React.ReactNode;
|
|
21
|
+
/** Content placed at the horizontal end of the layout, after the main content */
|
|
22
|
+
sidebarEnd?: React.ReactNode;
|
|
23
|
+
/** Flag indicating if the end sidebar is expanded */
|
|
24
|
+
isSidebarEndExpanded?: boolean;
|
|
25
|
+
/** Content placed at the bottom of the layout */
|
|
26
|
+
footer?: React.ReactNode;
|
|
27
|
+
/** Flag indicating if the footer is expanded */
|
|
28
|
+
isFooterExpanded?: boolean;
|
|
29
|
+
/** Content rendered in an optional drawer wrapping the layout */
|
|
30
|
+
drawerContent?: React.ReactNode;
|
|
31
|
+
/** Additional props passed to the drawer */
|
|
32
|
+
drawerProps?: DrawerProps;
|
|
33
|
+
/** Light theme background image path of the compass */
|
|
34
|
+
backgroundSrcLight?: string;
|
|
35
|
+
/** Dark theme background image path of the compass */
|
|
36
|
+
backgroundSrcDark?: string;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export const Compass: React.FunctionComponent<CompassProps> = ({
|
|
40
|
+
className,
|
|
41
|
+
header,
|
|
42
|
+
isHeaderExpanded = true,
|
|
43
|
+
sidebarStart,
|
|
44
|
+
isSidebarStartExpanded = true,
|
|
45
|
+
main,
|
|
46
|
+
sidebarEnd,
|
|
47
|
+
isSidebarEndExpanded = true,
|
|
48
|
+
footer,
|
|
49
|
+
isFooterExpanded = true,
|
|
50
|
+
drawerContent,
|
|
51
|
+
drawerProps,
|
|
52
|
+
backgroundSrcLight,
|
|
53
|
+
backgroundSrcDark,
|
|
54
|
+
...props
|
|
55
|
+
}) => {
|
|
56
|
+
const hasDrawer = drawerContent !== undefined;
|
|
57
|
+
|
|
58
|
+
const backgroundImageStyles: { [key: string]: string } = {};
|
|
59
|
+
if (backgroundSrcLight) {
|
|
60
|
+
backgroundImageStyles[compassBackgroundImageLight.name] = `url(${backgroundSrcLight})`;
|
|
61
|
+
}
|
|
62
|
+
if (backgroundSrcDark) {
|
|
63
|
+
backgroundImageStyles[compassBackgroundImageDark.name] = `url(${backgroundSrcDark})`;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
const compassContent = (
|
|
67
|
+
<div className={css(styles.compass, className)} {...props} style={{ ...props.style, ...backgroundImageStyles }}>
|
|
68
|
+
<div
|
|
69
|
+
className={css(styles.compassHeader, isHeaderExpanded && 'pf-m-expanded')}
|
|
70
|
+
{...(!isHeaderExpanded && { inert: 'true' })}
|
|
71
|
+
>
|
|
72
|
+
{header}
|
|
73
|
+
</div>
|
|
74
|
+
<div
|
|
75
|
+
className={css(styles.compassSidebar, styles.modifiers.start, isSidebarStartExpanded && 'pf-m-expanded')}
|
|
76
|
+
{...(!isSidebarStartExpanded && { inert: 'true' })}
|
|
77
|
+
>
|
|
78
|
+
{sidebarStart}
|
|
79
|
+
</div>
|
|
80
|
+
<div className={css(styles.compassMain)}>{main}</div>
|
|
81
|
+
<div
|
|
82
|
+
className={css(styles.compassSidebar, styles.modifiers.end, isSidebarEndExpanded && 'pf-m-expanded')}
|
|
83
|
+
{...(!isSidebarEndExpanded && { inert: 'true' })}
|
|
84
|
+
>
|
|
85
|
+
{sidebarEnd}
|
|
86
|
+
</div>
|
|
87
|
+
<div
|
|
88
|
+
className={css(styles.compassFooter, isFooterExpanded && 'pf-m-expanded')}
|
|
89
|
+
{...(!isFooterExpanded && { inert: 'true' })}
|
|
90
|
+
>
|
|
91
|
+
{footer}
|
|
92
|
+
</div>
|
|
93
|
+
</div>
|
|
94
|
+
);
|
|
95
|
+
|
|
96
|
+
if (hasDrawer) {
|
|
97
|
+
return (
|
|
98
|
+
<Drawer {...drawerProps}>
|
|
99
|
+
<DrawerContent panelContent={drawerContent}>
|
|
100
|
+
<DrawerContentBody>{compassContent}</DrawerContentBody>
|
|
101
|
+
</DrawerContent>
|
|
102
|
+
</Drawer>
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
return compassContent;
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
Compass.displayName = 'Compass';
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Drawer, DrawerContent, DrawerProps } from '../Drawer';
|
|
2
|
+
import styles from '@patternfly/react-styles/css/components/Compass/compass';
|
|
3
|
+
import { css } from '@patternfly/react-styles';
|
|
4
|
+
|
|
5
|
+
interface CompassContentProps extends React.HTMLProps<HTMLDivElement> {
|
|
6
|
+
/** Content of the main compass area. Typically one or more CompassPanel components. */
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
/** Additional classes added to the CompassContent */
|
|
9
|
+
className?: string;
|
|
10
|
+
/** Content rendered in an optional drawer wrapping the CompassContent */
|
|
11
|
+
drawerContent?: React.ReactNode;
|
|
12
|
+
/** Additional props passed to the drawer */
|
|
13
|
+
drawerProps?: DrawerProps;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export const CompassContent: React.FunctionComponent<CompassContentProps> = ({
|
|
17
|
+
children,
|
|
18
|
+
className,
|
|
19
|
+
drawerProps,
|
|
20
|
+
drawerContent,
|
|
21
|
+
...props
|
|
22
|
+
}) => {
|
|
23
|
+
const hasDrawer = drawerContent !== undefined;
|
|
24
|
+
|
|
25
|
+
const compassContent = (
|
|
26
|
+
<div className={css(styles.compassContent, className)} {...props}>
|
|
27
|
+
{children}
|
|
28
|
+
</div>
|
|
29
|
+
);
|
|
30
|
+
|
|
31
|
+
if (hasDrawer) {
|
|
32
|
+
return (
|
|
33
|
+
<Drawer {...drawerProps}>
|
|
34
|
+
<DrawerContent panelContent={drawerContent}>{compassContent}</DrawerContent>
|
|
35
|
+
</Drawer>
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
return compassContent;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
CompassContent.displayName = 'CompassContent';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import styles from '@patternfly/react-styles/css/components/Compass/compass';
|
|
2
|
+
import { css } from '@patternfly/react-styles';
|
|
3
|
+
|
|
4
|
+
interface CompassHeaderProps {
|
|
5
|
+
/** Content of the logo area */
|
|
6
|
+
logo?: React.ReactNode;
|
|
7
|
+
/** Content of the navigation area */
|
|
8
|
+
nav?: React.ReactNode;
|
|
9
|
+
/** Content of the profile area */
|
|
10
|
+
profile?: React.ReactNode;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export const CompassHeader: React.FunctionComponent<CompassHeaderProps> = ({ logo, nav, profile }) => (
|
|
14
|
+
<>
|
|
15
|
+
<div className={css(`${styles.compass}__logo`)}>{logo}</div>
|
|
16
|
+
<div className={css(styles.compassNav)}>{nav}</div>
|
|
17
|
+
<div className={css(styles.compassProfile)}>{profile}</div>
|
|
18
|
+
</>
|
|
19
|
+
);
|
|
20
|
+
|
|
21
|
+
CompassHeader.displayName = 'CompassHeader';
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import styles from '@patternfly/react-styles/css/components/Compass/compass';
|
|
2
|
+
import { css } from '@patternfly/react-styles';
|
|
3
|
+
|
|
4
|
+
import compassHeroBackgroundImageLight from '@patternfly/react-tokens/dist/esm/c_compass__hero_BackgroundImage_light';
|
|
5
|
+
import compassHeroBackgroundImageDark from '@patternfly/react-tokens/dist/esm/c_compass__hero_BackgroundImage_dark';
|
|
6
|
+
import compassHeroGradientStop1Light from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_1_light';
|
|
7
|
+
import compassHeroGradientStop2Light from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_2_light';
|
|
8
|
+
import compassHeroGradientStop3Light from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_3_light';
|
|
9
|
+
import compassHeroGradientStop1Dark from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_1_dark';
|
|
10
|
+
import compassHeroGradientStop2Dark from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_2_dark';
|
|
11
|
+
import compassHeroGradientStop3Dark from '@patternfly/react-tokens/dist/esm/c_compass__hero_gradient_stop_3_dark';
|
|
12
|
+
|
|
13
|
+
interface CompassHeroProps extends Omit<React.HTMLProps<HTMLDivElement>, 'content'> {
|
|
14
|
+
/** Content of the hero */
|
|
15
|
+
children?: React.ReactNode;
|
|
16
|
+
/** Additional classes added to the hero */
|
|
17
|
+
className?: string;
|
|
18
|
+
/** Light theme background image path of the hero */
|
|
19
|
+
backgroundSrcLight?: string;
|
|
20
|
+
/** Dark theme background image path of the hero */
|
|
21
|
+
backgroundSrcDark?: string;
|
|
22
|
+
/** Light theme gradient of the hero */
|
|
23
|
+
gradientLight?: {
|
|
24
|
+
stop1?: string;
|
|
25
|
+
stop2?: string;
|
|
26
|
+
stop3?: string;
|
|
27
|
+
};
|
|
28
|
+
/** Dark theme gradient of the hero */
|
|
29
|
+
gradientDark?: {
|
|
30
|
+
stop1?: string;
|
|
31
|
+
stop2?: string;
|
|
32
|
+
stop3?: string;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export const CompassHero: React.FunctionComponent<CompassHeroProps> = ({
|
|
37
|
+
className,
|
|
38
|
+
children,
|
|
39
|
+
backgroundSrcLight,
|
|
40
|
+
backgroundSrcDark,
|
|
41
|
+
gradientLight,
|
|
42
|
+
gradientDark,
|
|
43
|
+
...props
|
|
44
|
+
}) => {
|
|
45
|
+
const backgroundImageStyles: { [key: string]: string } = {};
|
|
46
|
+
if (backgroundSrcLight) {
|
|
47
|
+
backgroundImageStyles[compassHeroBackgroundImageLight.name] = `url(${backgroundSrcLight})`;
|
|
48
|
+
}
|
|
49
|
+
if (backgroundSrcDark) {
|
|
50
|
+
backgroundImageStyles[compassHeroBackgroundImageDark.name] = `url(${backgroundSrcDark})`;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
if (gradientLight) {
|
|
54
|
+
if (gradientLight.stop1) {
|
|
55
|
+
backgroundImageStyles[compassHeroGradientStop1Light.name] = gradientLight.stop1;
|
|
56
|
+
}
|
|
57
|
+
if (gradientLight.stop2) {
|
|
58
|
+
backgroundImageStyles[compassHeroGradientStop2Light.name] = gradientLight.stop2;
|
|
59
|
+
}
|
|
60
|
+
if (gradientLight.stop3) {
|
|
61
|
+
backgroundImageStyles[compassHeroGradientStop3Light.name] = gradientLight.stop3;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (gradientDark) {
|
|
65
|
+
if (gradientDark.stop1) {
|
|
66
|
+
backgroundImageStyles[compassHeroGradientStop1Dark.name] = gradientDark.stop1;
|
|
67
|
+
}
|
|
68
|
+
if (gradientDark.stop2) {
|
|
69
|
+
backgroundImageStyles[compassHeroGradientStop2Dark.name] = gradientDark.stop2;
|
|
70
|
+
}
|
|
71
|
+
if (gradientDark.stop3) {
|
|
72
|
+
backgroundImageStyles[compassHeroGradientStop3Dark.name] = gradientDark.stop3;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
return (
|
|
77
|
+
<div
|
|
78
|
+
className={css(styles.compassPanel, styles.compassHero, className)}
|
|
79
|
+
style={{ ...props.style, ...backgroundImageStyles }}
|
|
80
|
+
{...props}
|
|
81
|
+
>
|
|
82
|
+
<div className={css(styles.compassHeroBody)}>{children}</div>
|
|
83
|
+
</div>
|
|
84
|
+
);
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
CompassHero.displayName = 'CompassHero';
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Flex, FlexItem } from '../../layouts/Flex';
|
|
2
|
+
import { CompassPanel } from './CompassPanel';
|
|
3
|
+
import styles from '@patternfly/react-styles/css/components/Compass/compass';
|
|
4
|
+
import { css } from '@patternfly/react-styles';
|
|
5
|
+
|
|
6
|
+
interface CompassMainHeaderProps extends Omit<React.HTMLProps<HTMLDivElement>, 'title'> {
|
|
7
|
+
/** Additional classes added to the main header */
|
|
8
|
+
className?: string;
|
|
9
|
+
/** Styled title. If title or toolbar is provided, the children will be ignored. */
|
|
10
|
+
title?: React.ReactNode;
|
|
11
|
+
/** Styled toolbar. If title or toolbar is provided, the children will be ignored. */
|
|
12
|
+
toolbar?: React.ReactNode;
|
|
13
|
+
/** Custom main header content. To opt into a default styling, use the title and toolbar props instead. */
|
|
14
|
+
children?: React.ReactNode;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export const CompassMainHeader: React.FunctionComponent<CompassMainHeaderProps> = ({
|
|
18
|
+
className,
|
|
19
|
+
title,
|
|
20
|
+
toolbar,
|
|
21
|
+
children,
|
|
22
|
+
...props
|
|
23
|
+
}) => {
|
|
24
|
+
const _content =
|
|
25
|
+
title !== undefined || toolbar !== undefined ? (
|
|
26
|
+
<CompassPanel>
|
|
27
|
+
<Flex alignItems={{ default: 'alignItemsCenter' }}>
|
|
28
|
+
<FlexItem grow={{ default: 'grow' }}>{title}</FlexItem>
|
|
29
|
+
{toolbar && <FlexItem>{toolbar}</FlexItem>}
|
|
30
|
+
</Flex>
|
|
31
|
+
</CompassPanel>
|
|
32
|
+
) : (
|
|
33
|
+
children
|
|
34
|
+
);
|
|
35
|
+
|
|
36
|
+
return (
|
|
37
|
+
<div className={css(`${styles.compass}__main-header`, className)} {...props}>
|
|
38
|
+
{_content}
|
|
39
|
+
</div>
|
|
40
|
+
);
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
CompassMainHeader.displayName = 'CompassMainHeader';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import styles from '@patternfly/react-styles/css/components/Compass/compass';
|
|
2
|
+
import { css } from '@patternfly/react-styles';
|
|
3
|
+
|
|
4
|
+
interface CompassMessageBarProps extends React.HTMLProps<HTMLDivElement> {
|
|
5
|
+
/** Content of the message bar. Typically a @patternfly/chatbot MessageBar component. */
|
|
6
|
+
children?: React.ReactNode;
|
|
7
|
+
/** Additional classes added to the message bar */
|
|
8
|
+
className?: string;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const CompassMessageBar: React.FunctionComponent<CompassMessageBarProps> = ({
|
|
12
|
+
children,
|
|
13
|
+
className,
|
|
14
|
+
...props
|
|
15
|
+
}) => (
|
|
16
|
+
<div className={css(styles.compassMessageBar, className)} {...props}>
|
|
17
|
+
{children}
|
|
18
|
+
</div>
|
|
19
|
+
);
|
|
20
|
+
|
|
21
|
+
CompassMessageBar.displayName = 'CompassMessageBar';
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import styles from '@patternfly/react-styles/css/components/Compass/compass';
|
|
2
|
+
import { css } from '@patternfly/react-styles';
|
|
3
|
+
|
|
4
|
+
interface CompassPanelProps extends React.HTMLProps<HTMLDivElement> {
|
|
5
|
+
/** Content of the panel. */
|
|
6
|
+
children: React.ReactNode;
|
|
7
|
+
/** Additional classes added to the panel. */
|
|
8
|
+
className?: string;
|
|
9
|
+
/** Indicates the panel should have a pill border radius */
|
|
10
|
+
isPill?: boolean;
|
|
11
|
+
/** Indicates the panel should expand to fill the available height */
|
|
12
|
+
isFullHeight?: boolean;
|
|
13
|
+
/** Indicates the panel should scroll its overflow */
|
|
14
|
+
isScrollable?: boolean;
|
|
15
|
+
/** Indicates the panel should have no border */
|
|
16
|
+
hasNoBorder?: boolean;
|
|
17
|
+
/** Indicates the panel should have no padding */
|
|
18
|
+
hasNoPadding?: boolean;
|
|
19
|
+
/** Indicates the panel should have a "thinking" animation */
|
|
20
|
+
isThinking?: boolean;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export const CompassPanel: React.FunctionComponent<CompassPanelProps> = ({
|
|
24
|
+
children,
|
|
25
|
+
className,
|
|
26
|
+
isPill,
|
|
27
|
+
hasNoBorder,
|
|
28
|
+
hasNoPadding,
|
|
29
|
+
isThinking,
|
|
30
|
+
isFullHeight,
|
|
31
|
+
isScrollable,
|
|
32
|
+
...props
|
|
33
|
+
}) => (
|
|
34
|
+
<div
|
|
35
|
+
className={css(
|
|
36
|
+
styles.compassPanel,
|
|
37
|
+
isPill && styles.modifiers.pill,
|
|
38
|
+
hasNoBorder && styles.modifiers.noBorder,
|
|
39
|
+
hasNoPadding && styles.modifiers.noPadding,
|
|
40
|
+
isThinking && 'pf-v6-m-thinking',
|
|
41
|
+
isFullHeight && styles.modifiers.fullHeight,
|
|
42
|
+
isScrollable && styles.modifiers.scrollable,
|
|
43
|
+
className
|
|
44
|
+
)}
|
|
45
|
+
{...props}
|
|
46
|
+
>
|
|
47
|
+
{children}
|
|
48
|
+
</div>
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
CompassPanel.displayName = 'CompassPanel';
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { render, screen } from '@testing-library/react';
|
|
2
|
+
import { Compass } from '../Compass';
|
|
3
|
+
import styles from '@patternfly/react-styles/css/components/Compass/compass';
|
|
4
|
+
|
|
5
|
+
test('Renders without children', () => {
|
|
6
|
+
render(
|
|
7
|
+
<div data-testid="test-compass">
|
|
8
|
+
<Compass />
|
|
9
|
+
</div>
|
|
10
|
+
);
|
|
11
|
+
expect(screen.getByTestId('test-compass').firstChild).toBeVisible();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
test('Renders with custom class name when className prop is provided', () => {
|
|
15
|
+
render(<Compass className="custom-class" data-testid="compass" />);
|
|
16
|
+
expect(screen.getByTestId('compass')).toHaveClass('custom-class');
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
test('Renders with default compass class', () => {
|
|
20
|
+
render(<Compass data-testid="compass" />);
|
|
21
|
+
expect(screen.getByTestId('compass')).toHaveClass(styles.compass);
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
test('Renders header content when provided', () => {
|
|
25
|
+
render(<Compass header={<div>Header content</div>} />);
|
|
26
|
+
expect(screen.getByText('Header content')).toBeVisible();
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
test('Renders sidebar start content when provided', () => {
|
|
30
|
+
render(<Compass sidebarStart={<div>Sidebar start</div>} />);
|
|
31
|
+
expect(screen.getByText('Sidebar start')).toBeVisible();
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
test('Renders main content when provided', () => {
|
|
35
|
+
render(<Compass main={<div>Main content</div>} />);
|
|
36
|
+
expect(screen.getByText('Main content')).toBeVisible();
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
test('Renders sidebar end content when provided', () => {
|
|
40
|
+
render(<Compass sidebarEnd={<div>Sidebar end</div>} />);
|
|
41
|
+
expect(screen.getByText('Sidebar end')).toBeVisible();
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
test('Renders footer content when provided', () => {
|
|
45
|
+
render(<Compass footer={<div>Footer content</div>} />);
|
|
46
|
+
expect(screen.getByText('Footer content')).toBeVisible();
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
test('Renders header with expanded class when isHeaderExpanded is true', () => {
|
|
50
|
+
render(<Compass header={<div>Header</div>} isHeaderExpanded />);
|
|
51
|
+
expect(screen.getByText('Header').parentElement).toHaveClass('pf-m-expanded');
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
test('Renders header without expanded class and with inert when isHeaderExpanded is false', () => {
|
|
55
|
+
render(<Compass header={<div>Header</div>} isHeaderExpanded={false} />);
|
|
56
|
+
const headerElement = screen.getByText('Header').parentElement;
|
|
57
|
+
expect(headerElement).not.toHaveClass('pf-m-expanded');
|
|
58
|
+
expect(headerElement).toHaveAttribute('inert');
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
test('Renders sidebar start with expanded class when isSidebarStartExpanded is true', () => {
|
|
62
|
+
render(<Compass sidebarStart={<div>Sidebar start</div>} isSidebarStartExpanded />);
|
|
63
|
+
expect(screen.getByText('Sidebar start').parentElement).toHaveClass('pf-m-expanded');
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
test('Renders sidebar start without expanded class and with inert when isSidebarStartExpanded is false', () => {
|
|
67
|
+
render(<Compass sidebarStart={<div>Sidebar start</div>} isSidebarStartExpanded={false} />);
|
|
68
|
+
const sidebarElement = screen.getByText('Sidebar start').parentElement;
|
|
69
|
+
expect(sidebarElement).not.toHaveClass('pf-m-expanded');
|
|
70
|
+
expect(sidebarElement).toHaveAttribute('inert');
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
test('Renders sidebar end with expanded class when isSidebarEndExpanded is true', () => {
|
|
74
|
+
render(<Compass sidebarEnd={<div>Sidebar end</div>} isSidebarEndExpanded />);
|
|
75
|
+
expect(screen.getByText('Sidebar end').parentElement).toHaveClass('pf-m-expanded');
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
test('Renders sidebar end without expanded class and with inert when isSidebarEndExpanded is false', () => {
|
|
79
|
+
render(<Compass sidebarEnd={<div>Sidebar end</div>} isSidebarEndExpanded={false} />);
|
|
80
|
+
const sidebarElement = screen.getByText('Sidebar end').parentElement;
|
|
81
|
+
expect(sidebarElement).not.toHaveClass('pf-m-expanded');
|
|
82
|
+
expect(sidebarElement).toHaveAttribute('inert');
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
test('Renders footer with expanded class when isFooterExpanded is true', () => {
|
|
86
|
+
render(<Compass footer={<div>Footer</div>} isFooterExpanded />);
|
|
87
|
+
expect(screen.getByText('Footer').parentElement).toHaveClass('pf-m-expanded');
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
test('Renders footer without expanded class and with inert when isFooterExpanded is false', () => {
|
|
91
|
+
render(<Compass footer={<div>Footer</div>} isFooterExpanded={false} />);
|
|
92
|
+
const footerElement = screen.getByText('Footer').parentElement;
|
|
93
|
+
expect(footerElement).not.toHaveClass('pf-m-expanded');
|
|
94
|
+
expect(footerElement).toHaveAttribute('inert');
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
test('Renders with drawer when drawerContent is provided', () => {
|
|
98
|
+
render(<Compass drawerContent={<div>Drawer content</div>} />);
|
|
99
|
+
expect(screen.getByText('Drawer content')).toBeVisible();
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
test('Renders with light background image when backgroundSrcLight is provided', () => {
|
|
103
|
+
const backgroundSrc = 'light-bg.jpg';
|
|
104
|
+
render(<Compass backgroundSrcLight={backgroundSrc} data-testid="compass" />);
|
|
105
|
+
expect(screen.getByTestId('compass')).toHaveStyle(`--pf-v6-c-compass--BackgroundImage--light: url(${backgroundSrc})`);
|
|
106
|
+
});
|
|
107
|
+
|
|
108
|
+
test('Renders with dark background image when backgroundSrcDark is provided', () => {
|
|
109
|
+
const backgroundSrc = 'dark-bg.jpg';
|
|
110
|
+
render(<Compass backgroundSrcDark={backgroundSrc} data-testid="compass" />);
|
|
111
|
+
expect(screen.getByTestId('compass')).toHaveStyle(`--pf-v6-c-compass--BackgroundImage--dark: url(${backgroundSrc})`);
|
|
112
|
+
});
|
|
113
|
+
|
|
114
|
+
test('Renders with both light and dark background images when both are provided', () => {
|
|
115
|
+
const lightSrc = 'light-bg.jpg';
|
|
116
|
+
const darkSrc = 'dark-bg.jpg';
|
|
117
|
+
render(<Compass backgroundSrcLight={lightSrc} backgroundSrcDark={darkSrc} data-testid="compass" />);
|
|
118
|
+
const compassElement = screen.getByTestId('compass');
|
|
119
|
+
expect(compassElement).toHaveStyle(`--pf-v6-c-compass--BackgroundImage--light: url(${lightSrc})`);
|
|
120
|
+
expect(compassElement).toHaveStyle(`--pf-v6-c-compass--BackgroundImage--dark: url(${darkSrc})`);
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
test('Renders with additional props spread to the component', () => {
|
|
124
|
+
render(<Compass aria-label="Test label" data-testid="compass" />);
|
|
125
|
+
expect(screen.getByTestId('compass')).toHaveAccessibleName('Test label');
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
test('Renders with default expansion states', () => {
|
|
129
|
+
render(
|
|
130
|
+
<Compass
|
|
131
|
+
header={<div>Header</div>}
|
|
132
|
+
sidebarStart={<div>Sidebar start</div>}
|
|
133
|
+
sidebarEnd={<div>Sidebar end</div>}
|
|
134
|
+
footer={<div>Footer</div>}
|
|
135
|
+
>
|
|
136
|
+
Test
|
|
137
|
+
</Compass>
|
|
138
|
+
);
|
|
139
|
+
|
|
140
|
+
expect(screen.getByText('Header').parentElement).toHaveClass('pf-m-expanded');
|
|
141
|
+
expect(screen.getByText('Sidebar start').parentElement).toHaveClass('pf-m-expanded');
|
|
142
|
+
expect(screen.getByText('Sidebar end').parentElement).toHaveClass('pf-m-expanded');
|
|
143
|
+
expect(screen.getByText('Footer').parentElement).toHaveClass('pf-m-expanded');
|
|
144
|
+
});
|
|
145
|
+
|
|
146
|
+
test('Matches the snapshot with basic layout', () => {
|
|
147
|
+
const { asFragment } = render(
|
|
148
|
+
<Compass
|
|
149
|
+
header={<div>Header</div>}
|
|
150
|
+
sidebarStart={<div>Sidebar start</div>}
|
|
151
|
+
main={<div>Main content</div>}
|
|
152
|
+
sidebarEnd={<div>Sidebar end</div>}
|
|
153
|
+
footer={<div>Footer</div>}
|
|
154
|
+
/>
|
|
155
|
+
);
|
|
156
|
+
expect(asFragment()).toMatchSnapshot();
|
|
157
|
+
});
|
|
158
|
+
|
|
159
|
+
test('Matches the snapshot with drawer', () => {
|
|
160
|
+
const { asFragment } = render(
|
|
161
|
+
<Compass
|
|
162
|
+
drawerContent={<div>Drawer content</div>}
|
|
163
|
+
drawerProps={{ isExpanded: true }}
|
|
164
|
+
header={<div>Header</div>}
|
|
165
|
+
sidebarStart={<div>Sidebar start</div>}
|
|
166
|
+
main={<div>Main content</div>}
|
|
167
|
+
sidebarEnd={<div>Sidebar end</div>}
|
|
168
|
+
footer={<div>Footer</div>}
|
|
169
|
+
/>
|
|
170
|
+
);
|
|
171
|
+
expect(asFragment()).toMatchSnapshot();
|
|
172
|
+
});
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { render, screen } from '@testing-library/react';
|
|
2
|
+
import { CompassContent } from '../CompassContent';
|
|
3
|
+
import styles from '@patternfly/react-styles/css/components/Compass/compass';
|
|
4
|
+
|
|
5
|
+
test('Renders with children', () => {
|
|
6
|
+
render(<CompassContent>Test content</CompassContent>);
|
|
7
|
+
expect(screen.getByText('Test content')).toBeVisible();
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
test('Renders with custom class name when className prop is provided', () => {
|
|
11
|
+
render(<CompassContent className="custom-class">Test</CompassContent>);
|
|
12
|
+
expect(screen.getByText('Test')).toHaveClass('custom-class');
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
test(`Renders with default ${styles.compassContent} class`, () => {
|
|
16
|
+
render(<CompassContent>Test</CompassContent>);
|
|
17
|
+
expect(screen.getByText('Test')).toHaveClass(styles.compassContent);
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
test('Renders with drawer when drawerContent is provided', () => {
|
|
21
|
+
render(<CompassContent drawerContent={<div>Drawer content</div>}>Test</CompassContent>);
|
|
22
|
+
expect(screen.getByText('Drawer content')).toBeVisible();
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
test('Renders with additional props spread to the component', () => {
|
|
26
|
+
render(<CompassContent aria-label="Test label">Test</CompassContent>);
|
|
27
|
+
expect(screen.getByText('Test')).toHaveAccessibleName('Test label');
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
test('Matches the snapshot without drawer', () => {
|
|
31
|
+
const { asFragment } = render(
|
|
32
|
+
<CompassContent>
|
|
33
|
+
<div>Test content</div>
|
|
34
|
+
</CompassContent>
|
|
35
|
+
);
|
|
36
|
+
expect(asFragment()).toMatchSnapshot();
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
test('Matches the snapshot with drawer', () => {
|
|
40
|
+
const { asFragment } = render(
|
|
41
|
+
<CompassContent drawerContent={<div>Drawer content</div>} drawerProps={{ isExpanded: true }}>
|
|
42
|
+
<div>Test content</div>
|
|
43
|
+
</CompassContent>
|
|
44
|
+
);
|
|
45
|
+
expect(asFragment()).toMatchSnapshot();
|
|
46
|
+
});
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { render, screen } from '@testing-library/react';
|
|
2
|
+
import { CompassHeader } from '../CompassHeader';
|
|
3
|
+
import styles from '@patternfly/react-styles/css/components/Compass/compass';
|
|
4
|
+
|
|
5
|
+
test('Renders without children', () => {
|
|
6
|
+
render(
|
|
7
|
+
<div data-testid="test-header">
|
|
8
|
+
<CompassHeader />
|
|
9
|
+
</div>
|
|
10
|
+
);
|
|
11
|
+
expect(screen.getByTestId('test-header').firstChild).toBeVisible();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
test('Renders logo content when provided', () => {
|
|
15
|
+
render(<CompassHeader logo={<div>Logo content</div>} />);
|
|
16
|
+
expect(screen.getByText('Logo content')).toBeVisible();
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
test('Renders nav content when provided', () => {
|
|
20
|
+
render(<CompassHeader nav={<div>Nav content</div>} />);
|
|
21
|
+
expect(screen.getByText('Nav content')).toBeVisible();
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
test('Renders profile content when provided', () => {
|
|
25
|
+
render(<CompassHeader profile={<div>Profile content</div>} />);
|
|
26
|
+
expect(screen.getByText('Profile content')).toBeVisible();
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
test('Renders all content when all props are provided', () => {
|
|
30
|
+
render(<CompassHeader logo={<div>Logo</div>} nav={<div>Nav</div>} profile={<div>Profile</div>} />);
|
|
31
|
+
expect(screen.getByText('Logo')).toBeVisible();
|
|
32
|
+
expect(screen.getByText('Nav')).toBeVisible();
|
|
33
|
+
expect(screen.getByText('Profile')).toBeVisible();
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
test(`Renders logo with ${styles.compass}__logo class`, () => {
|
|
37
|
+
render(<CompassHeader logo={<div>Logo</div>} />);
|
|
38
|
+
expect(screen.getByText('Logo').parentElement).toHaveClass(`${styles.compass}__logo`);
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
test(`Renders nav with ${styles.compassNav} class`, () => {
|
|
42
|
+
render(<CompassHeader nav={<div>Nav</div>} />);
|
|
43
|
+
expect(screen.getByText('Nav').parentElement).toHaveClass(styles.compassNav);
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
test(`Renders profile with ${styles.compassProfile} class`, () => {
|
|
47
|
+
render(<CompassHeader profile={<div>Profile</div>} />);
|
|
48
|
+
expect(screen.getByText('Profile').parentElement).toHaveClass(styles.compassProfile);
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
test('Matches the snapshot', () => {
|
|
52
|
+
const { asFragment } = render(
|
|
53
|
+
<CompassHeader logo={<div>Logo</div>} nav={<div>Nav</div>} profile={<div>Profile</div>} />
|
|
54
|
+
);
|
|
55
|
+
expect(asFragment()).toMatchSnapshot();
|
|
56
|
+
});
|