@patternfly/react-core 6.4.1-prerelease.9 → 6.5.0-prerelease.2
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 +14 -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/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/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/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/Tabs/Tabs.d.ts +2 -0
- package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/esm/components/Tabs/Tabs.js +3 -2
- package/dist/esm/components/Tabs/Tabs.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/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/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/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/Tabs/Tabs.d.ts +2 -0
- package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/js/components/Tabs/Tabs.js +3 -2
- package/dist/js/components/Tabs/Tabs.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 +51 -0
- package/dist/styles/base.css +51 -0
- package/dist/umd/assets/{output-CJfbZNQh.css → output-DxVGusJA.css} +21025 -20701
- package/dist/umd/react-core.min.js +2 -2
- 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/Compass/Compass.tsx +107 -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 +104 -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 +38 -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/Drawer/Drawer.tsx +4 -0
- package/src/components/Drawer/__tests__/Drawer.test.tsx +26 -1
- 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/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/Tabs/Tabs.tsx +5 -0
- package/src/components/index.ts +1 -0
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
+
|
|
3
|
+
exports[`Matches the snapshot with basic layout 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<div
|
|
6
|
+
class="pf-v6-c-compass"
|
|
7
|
+
>
|
|
8
|
+
<div
|
|
9
|
+
class="pf-v6-c-compass__header pf-m-expanded"
|
|
10
|
+
>
|
|
11
|
+
<div>
|
|
12
|
+
Header
|
|
13
|
+
</div>
|
|
14
|
+
</div>
|
|
15
|
+
<div
|
|
16
|
+
class="pf-v6-c-compass__sidebar pf-m-start pf-m-expanded"
|
|
17
|
+
>
|
|
18
|
+
<div>
|
|
19
|
+
Sidebar start
|
|
20
|
+
</div>
|
|
21
|
+
</div>
|
|
22
|
+
<div
|
|
23
|
+
class="pf-v6-c-compass__main"
|
|
24
|
+
>
|
|
25
|
+
<div>
|
|
26
|
+
Main content
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
<div
|
|
30
|
+
class="pf-v6-c-compass__sidebar pf-m-end pf-m-expanded"
|
|
31
|
+
>
|
|
32
|
+
<div>
|
|
33
|
+
Sidebar end
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
<div
|
|
37
|
+
class="pf-v6-c-compass__footer pf-m-expanded"
|
|
38
|
+
>
|
|
39
|
+
<div>
|
|
40
|
+
Footer
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
</div>
|
|
44
|
+
</DocumentFragment>
|
|
45
|
+
`;
|
|
46
|
+
|
|
47
|
+
exports[`Matches the snapshot with drawer 1`] = `
|
|
48
|
+
<DocumentFragment>
|
|
49
|
+
<div
|
|
50
|
+
class="pf-v6-c-drawer pf-m-expanded"
|
|
51
|
+
>
|
|
52
|
+
<div
|
|
53
|
+
class="pf-v6-c-drawer__main"
|
|
54
|
+
>
|
|
55
|
+
<div
|
|
56
|
+
class="pf-v6-c-drawer__content"
|
|
57
|
+
>
|
|
58
|
+
<div
|
|
59
|
+
class="pf-v6-c-compass"
|
|
60
|
+
>
|
|
61
|
+
<div
|
|
62
|
+
class="pf-v6-c-compass__header pf-m-expanded"
|
|
63
|
+
>
|
|
64
|
+
<div>
|
|
65
|
+
Header
|
|
66
|
+
</div>
|
|
67
|
+
</div>
|
|
68
|
+
<div
|
|
69
|
+
class="pf-v6-c-compass__sidebar pf-m-start pf-m-expanded"
|
|
70
|
+
>
|
|
71
|
+
<div>
|
|
72
|
+
Sidebar start
|
|
73
|
+
</div>
|
|
74
|
+
</div>
|
|
75
|
+
<div
|
|
76
|
+
class="pf-v6-c-compass__main"
|
|
77
|
+
>
|
|
78
|
+
<div>
|
|
79
|
+
Main content
|
|
80
|
+
</div>
|
|
81
|
+
</div>
|
|
82
|
+
<div
|
|
83
|
+
class="pf-v6-c-compass__sidebar pf-m-end pf-m-expanded"
|
|
84
|
+
>
|
|
85
|
+
<div>
|
|
86
|
+
Sidebar end
|
|
87
|
+
</div>
|
|
88
|
+
</div>
|
|
89
|
+
<div
|
|
90
|
+
class="pf-v6-c-compass__footer pf-m-expanded"
|
|
91
|
+
>
|
|
92
|
+
<div>
|
|
93
|
+
Footer
|
|
94
|
+
</div>
|
|
95
|
+
</div>
|
|
96
|
+
</div>
|
|
97
|
+
</div>
|
|
98
|
+
<div>
|
|
99
|
+
Drawer content
|
|
100
|
+
</div>
|
|
101
|
+
</div>
|
|
102
|
+
</div>
|
|
103
|
+
</DocumentFragment>
|
|
104
|
+
`;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
+
|
|
3
|
+
exports[`Matches the snapshot with drawer 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<div
|
|
6
|
+
class="pf-v6-c-drawer pf-m-expanded"
|
|
7
|
+
>
|
|
8
|
+
<div
|
|
9
|
+
class="pf-v6-c-drawer__main"
|
|
10
|
+
>
|
|
11
|
+
<div
|
|
12
|
+
class="pf-v6-c-drawer__content"
|
|
13
|
+
>
|
|
14
|
+
<div
|
|
15
|
+
class="pf-v6-c-compass__content"
|
|
16
|
+
>
|
|
17
|
+
<div>
|
|
18
|
+
Test content
|
|
19
|
+
</div>
|
|
20
|
+
</div>
|
|
21
|
+
</div>
|
|
22
|
+
<div>
|
|
23
|
+
Drawer content
|
|
24
|
+
</div>
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
27
|
+
</DocumentFragment>
|
|
28
|
+
`;
|
|
29
|
+
|
|
30
|
+
exports[`Matches the snapshot without drawer 1`] = `
|
|
31
|
+
<DocumentFragment>
|
|
32
|
+
<div
|
|
33
|
+
class="pf-v6-c-compass__content"
|
|
34
|
+
>
|
|
35
|
+
<div>
|
|
36
|
+
Test content
|
|
37
|
+
</div>
|
|
38
|
+
</div>
|
|
39
|
+
</DocumentFragment>
|
|
40
|
+
`;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
+
|
|
3
|
+
exports[`Matches the snapshot 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<div
|
|
6
|
+
class="pf-v6-c-compass__logo"
|
|
7
|
+
>
|
|
8
|
+
<div>
|
|
9
|
+
Logo
|
|
10
|
+
</div>
|
|
11
|
+
</div>
|
|
12
|
+
<div
|
|
13
|
+
class="pf-v6-c-compass__nav"
|
|
14
|
+
>
|
|
15
|
+
<div>
|
|
16
|
+
Nav
|
|
17
|
+
</div>
|
|
18
|
+
</div>
|
|
19
|
+
<div
|
|
20
|
+
class="pf-v6-c-compass__profile"
|
|
21
|
+
>
|
|
22
|
+
<div>
|
|
23
|
+
Profile
|
|
24
|
+
</div>
|
|
25
|
+
</div>
|
|
26
|
+
</DocumentFragment>
|
|
27
|
+
`;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
+
|
|
3
|
+
exports[`Matches the snapshot 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<div
|
|
6
|
+
class="pf-v6-c-compass__panel pf-v6-c-compass__hero"
|
|
7
|
+
style="--pf-v6-c-compass__hero--BackgroundImage--light: url(light.jpg); --pf-v6-c-compass__hero--BackgroundImage--dark: url(dark.jpg); --pf-v6-c-compass__hero--gradient--stop-1--light: #ff0000; --pf-v6-c-compass__hero--gradient--stop-2--light: #00ff00; --pf-v6-c-compass__hero--gradient--stop-3--light: #0000ff; --pf-v6-c-compass__hero--gradient--stop-1--dark: #000000; --pf-v6-c-compass__hero--gradient--stop-2--dark: #ffffff; --pf-v6-c-compass__hero--gradient--stop-3--dark: #808080;"
|
|
8
|
+
>
|
|
9
|
+
<div
|
|
10
|
+
class="pf-v6-c-compass__hero-body"
|
|
11
|
+
>
|
|
12
|
+
<div>
|
|
13
|
+
Hero content
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
</div>
|
|
17
|
+
</DocumentFragment>
|
|
18
|
+
`;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
+
|
|
3
|
+
exports[`Matches the snapshot with both title and toolbar 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<div
|
|
6
|
+
class="pf-v6-c-compass__main-header"
|
|
7
|
+
>
|
|
8
|
+
<div
|
|
9
|
+
class="pf-v6-c-compass__panel"
|
|
10
|
+
>
|
|
11
|
+
<div
|
|
12
|
+
class="pf-v6-l-flex pf-m-align-items-center"
|
|
13
|
+
>
|
|
14
|
+
<div
|
|
15
|
+
class="pf-m-grow"
|
|
16
|
+
>
|
|
17
|
+
<div>
|
|
18
|
+
Title
|
|
19
|
+
</div>
|
|
20
|
+
</div>
|
|
21
|
+
<div
|
|
22
|
+
class=""
|
|
23
|
+
>
|
|
24
|
+
<div>
|
|
25
|
+
Toolbar
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
31
|
+
</DocumentFragment>
|
|
32
|
+
`;
|
|
33
|
+
|
|
34
|
+
exports[`Matches the snapshot with children 1`] = `
|
|
35
|
+
<DocumentFragment>
|
|
36
|
+
<div
|
|
37
|
+
class="pf-v6-c-compass__main-header"
|
|
38
|
+
>
|
|
39
|
+
Custom children content
|
|
40
|
+
</div>
|
|
41
|
+
</DocumentFragment>
|
|
42
|
+
`;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
+
|
|
3
|
+
exports[`Matches the snapshot with all modifiers 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<div
|
|
6
|
+
class="pf-v6-c-compass__panel pf-m-pill pf-m-no-border pf-m-no-padding pf-v6-m-thinking pf-m-full-height pf-m-scrollable"
|
|
7
|
+
>
|
|
8
|
+
<div>
|
|
9
|
+
Panel with all modifiers
|
|
10
|
+
</div>
|
|
11
|
+
</div>
|
|
12
|
+
</DocumentFragment>
|
|
13
|
+
`;
|
|
14
|
+
|
|
15
|
+
exports[`Matches the snapshot with no modifiers 1`] = `
|
|
16
|
+
<DocumentFragment>
|
|
17
|
+
<div
|
|
18
|
+
class="pf-v6-c-compass__panel"
|
|
19
|
+
>
|
|
20
|
+
<div>
|
|
21
|
+
Basic panel
|
|
22
|
+
</div>
|
|
23
|
+
</div>
|
|
24
|
+
</DocumentFragment>
|
|
25
|
+
`;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: Compass
|
|
3
|
+
cssPrefix: pf-v6-c-compass
|
|
4
|
+
section: components
|
|
5
|
+
beta: true
|
|
6
|
+
propComponents: ['Compass', 'CompassHeader', 'CompassContent', 'CompassHero', 'CompassMainHeader', 'CompassPanel']
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
import './compass.css';
|
|
10
|
+
import { useRef, useState } from 'react';
|
|
11
|
+
import PlayIcon from '@patternfly/react-icons/dist/esm/icons/play-icon';
|
|
12
|
+
import OutlinedPlusSquare from '@patternfly/react-icons/dist/esm/icons/outlined-plus-square-icon';
|
|
13
|
+
import OutlinedCopy from '@patternfly/react-icons/dist/esm/icons/outlined-copy-icon';
|
|
14
|
+
import OutlinedQuestionCircleIcon from '@patternfly/react-icons/dist/esm/icons/outlined-question-circle-icon';
|
|
15
|
+
|
|
16
|
+
## Examples
|
|
17
|
+
|
|
18
|
+
### Basic
|
|
19
|
+
|
|
20
|
+
In a basic compass layout, content can be passed to the following props to populate areas of the page:
|
|
21
|
+
|
|
22
|
+
- `header`: content rendered in the top of the page. This will typically be a `CompassHeader` component to break the header into 3 areas consisting of a logo or brand, middle navigation, and profile.
|
|
23
|
+
- `sidebarStart`: content rendered in the left side or start side of the page
|
|
24
|
+
- `main`: content rendered in the center of the page. This will typically consist of a `CompassMainHeader` or `CompassHero`, along with a `CompassContent` filled with one or more `CompassPanel` components.
|
|
25
|
+
- `sidebarEnd`: content rendered in the right side or end side of the page
|
|
26
|
+
- `footer`: content rendered in the bottom of the page
|
|
27
|
+
|
|
28
|
+
The background image of the `Compass` and `CompassHero` may be customized by using their respective `backgroundSrcLight` and `backgroundSrcDark` props. The `CompassHero` also allows customization of a color gradient across its container by using the `gradientLight` and `gradientDark` props.
|
|
29
|
+
|
|
30
|
+
```ts file="CompassBasic.tsx"
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### Demo
|
|
35
|
+
|
|
36
|
+
```ts isFullscreen file="CompassDemo.tsx"
|
|
37
|
+
|
|
38
|
+
```
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Compass, CompassHeader, CompassHero, CompassContent, CompassMainHeader } from '@patternfly/react-core';
|
|
2
|
+
import './compass.css';
|
|
3
|
+
|
|
4
|
+
export const CompassBasic: React.FunctionComponent = () => {
|
|
5
|
+
const headerContent = <CompassHeader logo={<div>Logo</div>} nav={<div>Nav</div>} profile={<div>Profile</div>} />;
|
|
6
|
+
const sidebarStartContent = <div>Sidebar start</div>;
|
|
7
|
+
// TODO: simplify mainContent to only a div string
|
|
8
|
+
const mainContent = (
|
|
9
|
+
<>
|
|
10
|
+
<CompassHero>
|
|
11
|
+
<div>Hero</div>
|
|
12
|
+
</CompassHero>
|
|
13
|
+
<CompassContent>
|
|
14
|
+
<CompassMainHeader>
|
|
15
|
+
<div>Content title</div>
|
|
16
|
+
</CompassMainHeader>
|
|
17
|
+
<div>Content</div>
|
|
18
|
+
</CompassContent>
|
|
19
|
+
</>
|
|
20
|
+
);
|
|
21
|
+
const sidebarEndContent = <div>Sidebar end</div>;
|
|
22
|
+
const footerContent = <div>Footer</div>;
|
|
23
|
+
|
|
24
|
+
return (
|
|
25
|
+
<Compass
|
|
26
|
+
header={headerContent}
|
|
27
|
+
sidebarStart={sidebarStartContent}
|
|
28
|
+
main={mainContent}
|
|
29
|
+
sidebarEnd={sidebarEndContent}
|
|
30
|
+
footer={footerContent}
|
|
31
|
+
/>
|
|
32
|
+
);
|
|
33
|
+
};
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import { useRef, useState } from 'react';
|
|
2
|
+
import {
|
|
3
|
+
Compass,
|
|
4
|
+
CompassHeader,
|
|
5
|
+
CompassHero,
|
|
6
|
+
CompassContent,
|
|
7
|
+
CompassMainHeader,
|
|
8
|
+
CompassPanel,
|
|
9
|
+
CompassMessageBar,
|
|
10
|
+
Tabs,
|
|
11
|
+
TabsComponent,
|
|
12
|
+
Tab,
|
|
13
|
+
TabContent,
|
|
14
|
+
TabTitleText,
|
|
15
|
+
ActionList,
|
|
16
|
+
ActionListGroup,
|
|
17
|
+
ActionListItem,
|
|
18
|
+
Button,
|
|
19
|
+
Title,
|
|
20
|
+
Tooltip
|
|
21
|
+
} from '@patternfly/react-core';
|
|
22
|
+
import PlayIcon from '@patternfly/react-icons/dist/esm/icons/play-icon';
|
|
23
|
+
import OutlinedPlusSquare from '@patternfly/react-icons/dist/esm/icons/outlined-plus-square-icon';
|
|
24
|
+
import OutlinedCopy from '@patternfly/react-icons/dist/esm/icons/outlined-copy-icon';
|
|
25
|
+
import OutlinedQuestionCircleIcon from '@patternfly/react-icons/dist/esm/icons/outlined-question-circle-icon';
|
|
26
|
+
|
|
27
|
+
export const CompassBasic: React.FunctionComponent = () => {
|
|
28
|
+
const [activeTab, setActiveTab] = useState<number>(0);
|
|
29
|
+
const [activeSubtab, setActiveSubtab] = useState<number>(0);
|
|
30
|
+
const subTabsRef = useRef<HTMLDivElement>(null);
|
|
31
|
+
|
|
32
|
+
const navContent = (
|
|
33
|
+
<>
|
|
34
|
+
<CompassPanel isPill hasNoPadding>
|
|
35
|
+
<Tabs
|
|
36
|
+
activeKey={activeTab}
|
|
37
|
+
isNav
|
|
38
|
+
onSelect={(_event, tabIndex) => setActiveTab(tabIndex as number)}
|
|
39
|
+
component={TabsComponent.nav}
|
|
40
|
+
aria-label="Compass navigation tabs"
|
|
41
|
+
inset={{ default: 'insetXl' }}
|
|
42
|
+
>
|
|
43
|
+
<Tab
|
|
44
|
+
tabContentId="subtabs"
|
|
45
|
+
tabContentRef={subTabsRef}
|
|
46
|
+
eventKey={0}
|
|
47
|
+
title={<TabTitleText>Tab 1</TabTitleText>}
|
|
48
|
+
aria-label="Compass tab with subtabs"
|
|
49
|
+
/>
|
|
50
|
+
<Tab eventKey={1} title={<TabTitleText>Tab 2</TabTitleText>} />
|
|
51
|
+
<Tab eventKey={2} title={<TabTitleText>Tab 3</TabTitleText>} />
|
|
52
|
+
<Tab eventKey={3} title={<TabTitleText>Disabled Tab 4</TabTitleText>} isDisabled />
|
|
53
|
+
</Tabs>
|
|
54
|
+
</CompassPanel>
|
|
55
|
+
<CompassPanel isPill hasNoPadding>
|
|
56
|
+
<TabContent id="subtabs" ref={subTabsRef}>
|
|
57
|
+
<Tabs
|
|
58
|
+
activeKey={activeSubtab}
|
|
59
|
+
isSubtab
|
|
60
|
+
isNav
|
|
61
|
+
onSelect={(_event, tabIndex) => setActiveSubtab(tabIndex as number)}
|
|
62
|
+
aria-label="Compass navigation subtabs"
|
|
63
|
+
inset={{ default: 'insetXl' }}
|
|
64
|
+
>
|
|
65
|
+
<Tab
|
|
66
|
+
tabContentId="subtab-1"
|
|
67
|
+
eventKey={0}
|
|
68
|
+
title={
|
|
69
|
+
<TabTitleText>
|
|
70
|
+
<div id="subtab-1">Subtab 1</div>
|
|
71
|
+
</TabTitleText>
|
|
72
|
+
}
|
|
73
|
+
/>
|
|
74
|
+
<Tab eventKey={1} title={<TabTitleText>Subtab 2</TabTitleText>} />
|
|
75
|
+
<Tab eventKey={2} title={<TabTitleText>Disabled Subtab 3</TabTitleText>} isDisabled />
|
|
76
|
+
</Tabs>
|
|
77
|
+
</TabContent>
|
|
78
|
+
</CompassPanel>
|
|
79
|
+
</>
|
|
80
|
+
);
|
|
81
|
+
|
|
82
|
+
const sidebarContent = (
|
|
83
|
+
<CompassPanel isPill>
|
|
84
|
+
<ActionList isIconList className="pf-m-vertical" /* isVertical */>
|
|
85
|
+
<ActionListGroup>
|
|
86
|
+
<ActionListItem>
|
|
87
|
+
<Tooltip content="Play">
|
|
88
|
+
<Button variant="plain" icon={<PlayIcon />} aria-label="Play" />
|
|
89
|
+
</Tooltip>
|
|
90
|
+
</ActionListItem>
|
|
91
|
+
<ActionListItem>
|
|
92
|
+
<Tooltip content="Add">
|
|
93
|
+
<Button variant="plain" icon={<OutlinedPlusSquare />} aria-label="Add" />
|
|
94
|
+
</Tooltip>
|
|
95
|
+
</ActionListItem>
|
|
96
|
+
</ActionListGroup>
|
|
97
|
+
<ActionListItem>
|
|
98
|
+
<Tooltip content="Copy">
|
|
99
|
+
<Button variant="plain" icon={<OutlinedCopy />} aria-label="Copy" />
|
|
100
|
+
</Tooltip>
|
|
101
|
+
</ActionListItem>
|
|
102
|
+
<ActionListGroup>
|
|
103
|
+
<ActionListItem>
|
|
104
|
+
<Tooltip content="Help">
|
|
105
|
+
<Button variant="plain" icon={<OutlinedQuestionCircleIcon />} aria-label="Help" />
|
|
106
|
+
</Tooltip>
|
|
107
|
+
</ActionListItem>
|
|
108
|
+
<ActionListItem>
|
|
109
|
+
<Tooltip content="Second copy">
|
|
110
|
+
<Button variant="plain" icon={<OutlinedCopy />} aria-label="Copy2" />
|
|
111
|
+
</Tooltip>
|
|
112
|
+
</ActionListItem>
|
|
113
|
+
</ActionListGroup>
|
|
114
|
+
</ActionList>
|
|
115
|
+
</CompassPanel>
|
|
116
|
+
);
|
|
117
|
+
|
|
118
|
+
const headerContent = <CompassHeader logo={<div>logo</div>} nav={navContent} profile={<div>Profile</div>} />;
|
|
119
|
+
const sidebarStartContent = sidebarContent;
|
|
120
|
+
const mainContent = (
|
|
121
|
+
<>
|
|
122
|
+
<CompassHero gradientDark={{ stop1: '#000', stop2: '#1b0d33', stop3: '#3d2785' }}>
|
|
123
|
+
<div>Hero</div>
|
|
124
|
+
</CompassHero>
|
|
125
|
+
<CompassMainHeader title={<Title headingLevel="h1">Content title</Title>} />
|
|
126
|
+
<CompassContent>
|
|
127
|
+
<CompassPanel>Content</CompassPanel>
|
|
128
|
+
</CompassContent>
|
|
129
|
+
</>
|
|
130
|
+
);
|
|
131
|
+
const sidebarEndContent = sidebarContent;
|
|
132
|
+
const footerContent = (
|
|
133
|
+
<CompassMessageBar>
|
|
134
|
+
<CompassPanel isPill hasNoPadding>
|
|
135
|
+
Message bar
|
|
136
|
+
</CompassPanel>
|
|
137
|
+
</CompassMessageBar>
|
|
138
|
+
);
|
|
139
|
+
|
|
140
|
+
return (
|
|
141
|
+
<Compass
|
|
142
|
+
header={headerContent}
|
|
143
|
+
sidebarStart={sidebarStartContent}
|
|
144
|
+
main={mainContent}
|
|
145
|
+
sidebarEnd={sidebarEndContent}
|
|
146
|
+
footer={footerContent}
|
|
147
|
+
backgroundSrcDark="/assets/images/pf-background.svg"
|
|
148
|
+
backgroundSrcLight="/assets/images/pf-background.svg"
|
|
149
|
+
/>
|
|
150
|
+
);
|
|
151
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#ws-react-c-compass-basic [class*="pf-v6-c-compass"] {
|
|
2
|
+
position: relative;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
#ws-react-c-compass-basic [class*="pf-v6-c-compass"]::after {
|
|
6
|
+
content: "";
|
|
7
|
+
position: absolute;
|
|
8
|
+
inset: 0;
|
|
9
|
+
border: var(--pf-t--global--border--width--regular) dashed var(--pf-t--global--border--color--default);
|
|
10
|
+
pointer-events: none;
|
|
11
|
+
}
|
|
@@ -17,6 +17,8 @@ export interface DrawerProps extends React.HTMLProps<HTMLDivElement> {
|
|
|
17
17
|
isExpanded?: boolean;
|
|
18
18
|
/** Indicates if the content element and panel element are displayed side by side. */
|
|
19
19
|
isInline?: boolean;
|
|
20
|
+
/** @beta Indicates if the drawer will have pill styles */
|
|
21
|
+
isPill?: boolean;
|
|
20
22
|
/** Indicates if the drawer will always show both content and panel. */
|
|
21
23
|
isStatic?: boolean;
|
|
22
24
|
/** Position of the drawer panel. left and right are deprecated, use start and end instead. */
|
|
@@ -50,6 +52,7 @@ export const Drawer: React.FunctionComponent<DrawerProps> = ({
|
|
|
50
52
|
children,
|
|
51
53
|
isExpanded = false,
|
|
52
54
|
isInline = false,
|
|
55
|
+
isPill = false,
|
|
53
56
|
isStatic = false,
|
|
54
57
|
position = 'end',
|
|
55
58
|
onExpand = () => {},
|
|
@@ -65,6 +68,7 @@ export const Drawer: React.FunctionComponent<DrawerProps> = ({
|
|
|
65
68
|
styles.drawer,
|
|
66
69
|
isExpanded && styles.modifiers.expanded,
|
|
67
70
|
isInline && styles.modifiers.inline,
|
|
71
|
+
isPill && styles.modifiers.pill,
|
|
68
72
|
isStatic && styles.modifiers.static,
|
|
69
73
|
(position === 'left' || position === 'start') && styles.modifiers.panelLeft,
|
|
70
74
|
position === 'bottom' && styles.modifiers.panelBottom,
|
|
@@ -10,9 +10,10 @@ import {
|
|
|
10
10
|
DrawerPanelContent,
|
|
11
11
|
DrawerColorVariant
|
|
12
12
|
} from '../';
|
|
13
|
-
import { render } from '@testing-library/react';
|
|
13
|
+
import { screen, render } from '@testing-library/react';
|
|
14
14
|
import userEvent from '@testing-library/user-event';
|
|
15
15
|
import { KeyTypes } from '../../../helpers';
|
|
16
|
+
import styles from '@patternfly/react-styles/css/components/Drawer/drawer';
|
|
16
17
|
|
|
17
18
|
jest.mock('../../../helpers/GenerateId/GenerateId');
|
|
18
19
|
|
|
@@ -162,3 +163,27 @@ test('Resizeable DrawerPanelContent can be wrapped in a context without causing
|
|
|
162
163
|
|
|
163
164
|
expect(consoleError).not.toHaveBeenCalled();
|
|
164
165
|
});
|
|
166
|
+
|
|
167
|
+
test(`Renders with ${styles.modifiers.pill} class when specified`, () => {
|
|
168
|
+
const panelContent = (
|
|
169
|
+
<DrawerPanelContent>
|
|
170
|
+
<DrawerHead>
|
|
171
|
+
<span>drawer-panel</span>
|
|
172
|
+
<DrawerActions>
|
|
173
|
+
<DrawerCloseButton />
|
|
174
|
+
</DrawerActions>
|
|
175
|
+
</DrawerHead>
|
|
176
|
+
<DrawerPanelBody>drawer-panel</DrawerPanelBody>
|
|
177
|
+
</DrawerPanelContent>
|
|
178
|
+
);
|
|
179
|
+
|
|
180
|
+
render(
|
|
181
|
+
<Drawer data-testid="drawer" isExpanded={true} position="left" isPill>
|
|
182
|
+
<DrawerContent panelContent={panelContent}>
|
|
183
|
+
<DrawerContentBody>Drawer content text</DrawerContentBody>
|
|
184
|
+
</DrawerContent>
|
|
185
|
+
</Drawer>
|
|
186
|
+
);
|
|
187
|
+
|
|
188
|
+
expect(screen.getByTestId('drawer')).toHaveClass(styles.modifiers.pill);
|
|
189
|
+
});
|
|
@@ -17,6 +17,7 @@ propComponents:
|
|
|
17
17
|
]
|
|
18
18
|
section: components
|
|
19
19
|
---
|
|
20
|
+
|
|
20
21
|
import { Fragment, useRef, useState } from 'react';
|
|
21
22
|
import accessibility from '@patternfly/react-styles/css/utilities/Accessibility/accessibility';
|
|
22
23
|
|
|
@@ -143,3 +144,15 @@ To customize which element receives focus when the drawer panel expands, use the
|
|
|
143
144
|
```ts file="./DrawerFocusTrap.tsx"
|
|
144
145
|
|
|
145
146
|
```
|
|
147
|
+
|
|
148
|
+
### Pill
|
|
149
|
+
|
|
150
|
+
```ts file="./DrawerBasicPill.tsx"
|
|
151
|
+
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
### Pill inline
|
|
155
|
+
|
|
156
|
+
```ts file="./DrawerPillInline.tsx"
|
|
157
|
+
|
|
158
|
+
```
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { Fragment, useRef, useState } from 'react';
|
|
2
|
+
import {
|
|
3
|
+
Drawer,
|
|
4
|
+
DrawerPanelContent,
|
|
5
|
+
DrawerContent,
|
|
6
|
+
DrawerContentBody,
|
|
7
|
+
DrawerHead,
|
|
8
|
+
DrawerActions,
|
|
9
|
+
DrawerCloseButton,
|
|
10
|
+
Button
|
|
11
|
+
} from '@patternfly/react-core';
|
|
12
|
+
|
|
13
|
+
export const DrawerBasicPill: React.FunctionComponent = () => {
|
|
14
|
+
const [isExpanded, setIsExpanded] = useState(false);
|
|
15
|
+
const drawerRef = useRef<HTMLDivElement>(undefined);
|
|
16
|
+
|
|
17
|
+
const onExpand = () => {
|
|
18
|
+
drawerRef.current && drawerRef.current.focus();
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const onClick = () => {
|
|
22
|
+
setIsExpanded(!isExpanded);
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
const onCloseClick = () => {
|
|
26
|
+
setIsExpanded(false);
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
const panelContent = (
|
|
30
|
+
<DrawerPanelContent>
|
|
31
|
+
<DrawerHead>
|
|
32
|
+
<span tabIndex={isExpanded ? 0 : -1} ref={drawerRef}>
|
|
33
|
+
Drawer panel header
|
|
34
|
+
</span>
|
|
35
|
+
<DrawerActions>
|
|
36
|
+
<DrawerCloseButton onClick={onCloseClick} />
|
|
37
|
+
</DrawerActions>
|
|
38
|
+
</DrawerHead>
|
|
39
|
+
</DrawerPanelContent>
|
|
40
|
+
);
|
|
41
|
+
|
|
42
|
+
const drawerContent =
|
|
43
|
+
'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus pretium est a porttitor vehicula. Quisque vel commodo urna. Morbi mattis rutrum ante, id vehicula ex accumsan ut. Morbi viverra, eros vel porttitor facilisis, eros purus aliquet erat,nec lobortis felis elit pulvinar sem. Vivamus vulputate, risus eget commodo eleifend, eros nibh porta quam, vitae lacinia leo libero at magna. Maecenas aliquam sagittis orci, et posuere nisi ultrices sit amet. Aliquam ex odio, malesuada sed posuere quis, pellentesque at mauris. Phasellus venenatis massa ex, eget pulvinar libero auctor pretium. Aliquam erat volutpat. Duis euismod justo in quam ullamcorper, in commodo massa vulputate.';
|
|
44
|
+
|
|
45
|
+
return (
|
|
46
|
+
<Fragment>
|
|
47
|
+
<Button aria-expanded={isExpanded} onClick={onClick}>
|
|
48
|
+
Toggle drawer
|
|
49
|
+
</Button>
|
|
50
|
+
<Drawer isExpanded={isExpanded} isPill onExpand={onExpand}>
|
|
51
|
+
<DrawerContent panelContent={panelContent}>
|
|
52
|
+
<DrawerContentBody>{drawerContent}</DrawerContentBody>
|
|
53
|
+
</DrawerContent>
|
|
54
|
+
</Drawer>
|
|
55
|
+
</Fragment>
|
|
56
|
+
);
|
|
57
|
+
};
|