@patternfly/react-core 6.7.0-prerelease.2 → 6.7.0-prerelease.4
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 +12 -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 -1
- package/dist/dynamic/components/Content/package.json +1 -1
- package/dist/dynamic/components/DataList/package.json +1 -1
- package/dist/dynamic/components/DatePicker/package.json +1 -1
- package/dist/dynamic/components/DescriptionList/package.json +1 -1
- package/dist/dynamic/components/Divider/package.json +1 -1
- package/dist/dynamic/components/Drawer/package.json +1 -1
- package/dist/dynamic/components/Dropdown/package.json +1 -1
- package/dist/dynamic/components/DualListSelector/package.json +1 -1
- package/dist/dynamic/components/EmptyState/package.json +1 -1
- package/dist/dynamic/components/ExpandableSection/package.json +1 -1
- package/dist/dynamic/components/FileUpload/package.json +1 -1
- package/dist/dynamic/components/Form/package.json +1 -1
- package/dist/dynamic/components/FormSelect/package.json +1 -1
- package/dist/dynamic/components/HelperText/package.json +1 -1
- package/dist/dynamic/components/Hero/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/SSRSafeIds/SSRSafeIds/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/inert/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/useSSRSafeId/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/esm/components/Button/Button.d.ts +1 -3
- 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 +3 -7
- package/dist/esm/components/Compass/Compass.d.ts.map +1 -1
- package/dist/esm/components/Compass/Compass.js +2 -2
- package/dist/esm/components/Compass/Compass.js.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggle.d.ts +0 -2
- package/dist/esm/components/MenuToggle/MenuToggle.d.ts.map +1 -1
- package/dist/esm/components/MenuToggle/MenuToggle.js +2 -3
- package/dist/esm/components/MenuToggle/MenuToggle.js.map +1 -1
- package/dist/esm/components/Nav/Nav.d.ts +1 -1
- package/dist/esm/components/Nav/Nav.d.ts.map +1 -1
- package/dist/esm/components/Nav/Nav.js +2 -2
- package/dist/esm/components/Nav/Nav.js.map +1 -1
- package/dist/esm/components/Page/Page.d.ts +3 -7
- package/dist/esm/components/Page/Page.d.ts.map +1 -1
- package/dist/esm/components/Page/Page.js +3 -4
- package/dist/esm/components/Page/Page.js.map +1 -1
- package/dist/esm/components/Toolbar/Toolbar.d.ts +11 -1
- package/dist/esm/components/Toolbar/Toolbar.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/Toolbar.js +60 -20
- package/dist/esm/components/Toolbar/Toolbar.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarItem.d.ts +1 -0
- package/dist/esm/components/Toolbar/ToolbarItem.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarItem.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarToggleGroup.d.ts +1 -1
- package/dist/esm/components/Toolbar/ToolbarToggleGroup.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarToggleGroup.js +9 -9
- package/dist/esm/components/Toolbar/ToolbarToggleGroup.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarUtils.d.ts +4 -0
- package/dist/esm/components/Toolbar/ToolbarUtils.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarUtils.js.map +1 -1
- package/dist/js/components/Button/Button.d.ts +1 -3
- 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 +3 -7
- package/dist/js/components/Compass/Compass.d.ts.map +1 -1
- package/dist/js/components/Compass/Compass.js +2 -2
- package/dist/js/components/Compass/Compass.js.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggle.d.ts +0 -2
- package/dist/js/components/MenuToggle/MenuToggle.d.ts.map +1 -1
- package/dist/js/components/MenuToggle/MenuToggle.js +2 -3
- package/dist/js/components/MenuToggle/MenuToggle.js.map +1 -1
- package/dist/js/components/Nav/Nav.d.ts +1 -1
- package/dist/js/components/Nav/Nav.d.ts.map +1 -1
- package/dist/js/components/Nav/Nav.js +2 -2
- package/dist/js/components/Nav/Nav.js.map +1 -1
- package/dist/js/components/Page/Page.d.ts +3 -7
- package/dist/js/components/Page/Page.d.ts.map +1 -1
- package/dist/js/components/Page/Page.js +3 -4
- package/dist/js/components/Page/Page.js.map +1 -1
- package/dist/js/components/Toolbar/Toolbar.d.ts +11 -1
- package/dist/js/components/Toolbar/Toolbar.d.ts.map +1 -1
- package/dist/js/components/Toolbar/Toolbar.js +59 -19
- package/dist/js/components/Toolbar/Toolbar.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarItem.d.ts +1 -0
- package/dist/js/components/Toolbar/ToolbarItem.d.ts.map +1 -1
- package/dist/js/components/Toolbar/ToolbarItem.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarToggleGroup.d.ts +1 -1
- package/dist/js/components/Toolbar/ToolbarToggleGroup.d.ts.map +1 -1
- package/dist/js/components/Toolbar/ToolbarToggleGroup.js +8 -8
- package/dist/js/components/Toolbar/ToolbarToggleGroup.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarUtils.d.ts +4 -0
- package/dist/js/components/Toolbar/ToolbarUtils.d.ts.map +1 -1
- package/dist/js/components/Toolbar/ToolbarUtils.js.map +1 -1
- package/dist/styles/base-no-reset.css +1 -1
- package/dist/styles/base.css +1 -1
- package/dist/umd/assets/{output-BPcxNyfB.css → output-DDYpZoPY.css} +19616 -19608
- 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/Button/Button.tsx +2 -5
- package/src/components/Button/__tests__/Button.test.tsx +8 -19
- package/src/components/Button/__tests__/__snapshots__/Button.test.tsx.snap +1 -1
- package/src/components/Compass/Compass.tsx +5 -11
- package/src/components/Compass/__tests__/Compass.test.tsx +3 -23
- package/src/components/MenuToggle/MenuToggle.tsx +0 -5
- package/src/components/MenuToggle/__tests__/MenuToggle.test.tsx +8 -19
- package/src/components/Nav/Nav.tsx +3 -3
- package/src/components/Nav/__tests__/Nav.test.tsx +8 -8
- package/src/components/Nav/examples/Nav.md +1 -1
- package/src/components/Page/Page.tsx +5 -12
- package/src/components/Page/__tests__/Page.test.tsx +4 -30
- package/src/components/Toolbar/Toolbar.tsx +120 -57
- package/src/components/Toolbar/ToolbarItem.tsx +1 -0
- package/src/components/Toolbar/ToolbarToggleGroup.tsx +10 -9
- package/src/components/Toolbar/ToolbarUtils.tsx +4 -0
- package/src/components/Toolbar/__tests__/Toolbar.test.tsx +38 -0
- package/src/components/Toolbar/__tests__/ToolbarToggleGroup.test.tsx +22 -1
- package/src/components/Toolbar/examples/Toolbar.md +16 -0
- package/src/components/Toolbar/examples/ToolbarContainerQuery.css +8 -0
- package/src/components/Toolbar/examples/ToolbarContainerQuery.tsx +35 -0
- package/src/demos/Compass/examples/CompassDockDemo.tsx +25 -43
- package/src/demos/Nav.md +3 -3
- package/src/demos/examples/Nav/NavDockedNav.tsx +25 -43
package/helpers/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@patternfly/react-core-helpers","main":"../dist/js/helpers/index.js","module":"../dist/esm/helpers/index.js","typings":"../dist/esm/helpers/index.d.ts","version":"6.7.0-prerelease.
|
|
1
|
+
{"name":"@patternfly/react-core-helpers","main":"../dist/js/helpers/index.js","module":"../dist/esm/helpers/index.js","typings":"../dist/esm/helpers/index.d.ts","version":"6.7.0-prerelease.3","private":true}
|
package/layouts/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@patternfly/react-core-layouts","main":"../dist/js/layouts/index.js","module":"../dist/esm/layouts/index.js","typings":"../dist/esm/layouts/index.d.ts","version":"6.7.0-prerelease.
|
|
1
|
+
{"name":"@patternfly/react-core-layouts","main":"../dist/js/layouts/index.js","module":"../dist/esm/layouts/index.js","typings":"../dist/esm/layouts/index.d.ts","version":"6.7.0-prerelease.3","private":true}
|
package/next/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@patternfly/react-core-next","main":"../dist/js/next/index.js","module":"../dist/esm/next/index.js","typings":"../dist/esm/next/index.d.ts","version":"6.7.0-prerelease.
|
|
1
|
+
{"name":"@patternfly/react-core-next","main":"../dist/js/next/index.js","module":"../dist/esm/next/index.js","typings":"../dist/esm/next/index.d.ts","version":"6.7.0-prerelease.3","private":true}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@patternfly/react-core",
|
|
3
|
-
"version": "6.7.0-prerelease.
|
|
3
|
+
"version": "6.7.0-prerelease.4",
|
|
4
4
|
"description": "This library provides a set of common React components for use with the PatternFly reference implementation.",
|
|
5
5
|
"main": "dist/js/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -46,15 +46,15 @@
|
|
|
46
46
|
"subpaths": "node ../../scripts/exportSubpaths.mjs --config subpaths.config.json"
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"@patternfly/react-icons": "^6.7.0-prerelease.
|
|
50
|
-
"@patternfly/react-styles": "^6.7.0-prerelease.
|
|
51
|
-
"@patternfly/react-tokens": "^6.7.0-prerelease.
|
|
49
|
+
"@patternfly/react-icons": "^6.7.0-prerelease.2",
|
|
50
|
+
"@patternfly/react-styles": "^6.7.0-prerelease.2",
|
|
51
|
+
"@patternfly/react-tokens": "^6.7.0-prerelease.3",
|
|
52
52
|
"focus-trap": "7.6.6",
|
|
53
53
|
"react-dropzone": "^14.3.5",
|
|
54
54
|
"tslib": "^2.8.1"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"@patternfly/patternfly": "6.
|
|
57
|
+
"@patternfly/patternfly": "6.7.0-prerelease.1",
|
|
58
58
|
"case-anything": "^3.1.2",
|
|
59
59
|
"css": "^3.0.0",
|
|
60
60
|
"fs-extra": "^11.3.3"
|
|
@@ -63,5 +63,5 @@
|
|
|
63
63
|
"react": "^17 || ^18 || ^19",
|
|
64
64
|
"react-dom": "^17 || ^18 || ^19"
|
|
65
65
|
},
|
|
66
|
-
"gitHead": "
|
|
66
|
+
"gitHead": "59fa2ced55ee25977627a4ee87024e65702eefa5"
|
|
67
67
|
}
|
|
@@ -99,7 +99,7 @@ export interface ButtonProps extends Omit<React.HTMLProps<HTMLButtonElement>, 'r
|
|
|
99
99
|
tabIndex?: number;
|
|
100
100
|
/** Adds danger styling to secondary or link button variants */
|
|
101
101
|
isDanger?: boolean;
|
|
102
|
-
/** Flag indicating whether content the button controls is expanded or not. Required when isHamburger is true. */
|
|
102
|
+
/** Flag indicating whether content the button controls is expanded or not. Required when isHamburger is true. Applies additional expanded styling when isDocked is true. */
|
|
103
103
|
isExpanded?: boolean;
|
|
104
104
|
/** Flag indicating the button is a settings button. This will override the icon property. */
|
|
105
105
|
isSettings?: boolean;
|
|
@@ -111,8 +111,6 @@ export interface ButtonProps extends Omit<React.HTMLProps<HTMLButtonElement>, 'r
|
|
|
111
111
|
isCircle?: boolean;
|
|
112
112
|
/** @beta Flag indicating the button is a docked variant button. For use in docked navigation. */
|
|
113
113
|
isDocked?: boolean;
|
|
114
|
-
/** @beta Flag indicating the docked button should display text. Only applies when isDocked is true. */
|
|
115
|
-
isTextExpanded?: boolean;
|
|
116
114
|
/** @hide Forwarded ref */
|
|
117
115
|
innerRef?: React.Ref<any>;
|
|
118
116
|
/** Adds count number to button */
|
|
@@ -139,7 +137,6 @@ const ButtonBase: React.FunctionComponent<ButtonProps> = ({
|
|
|
139
137
|
hamburgerVariant,
|
|
140
138
|
isCircle,
|
|
141
139
|
isDocked = false,
|
|
142
|
-
isTextExpanded = false,
|
|
143
140
|
spinnerAriaValueText,
|
|
144
141
|
spinnerAriaLabelledBy,
|
|
145
142
|
spinnerAriaLabel,
|
|
@@ -272,7 +269,7 @@ const ButtonBase: React.FunctionComponent<ButtonProps> = ({
|
|
|
272
269
|
size === ButtonSize.lg && styles.modifiers.displayLg,
|
|
273
270
|
isCircle && styles.modifiers.circle,
|
|
274
271
|
isDocked && styles.modifiers.docked,
|
|
275
|
-
isDocked &&
|
|
272
|
+
isDocked && isExpanded && styles.modifiers.expanded,
|
|
276
273
|
className
|
|
277
274
|
)}
|
|
278
275
|
disabled={isButtonElement ? isDisabled : null}
|
|
@@ -566,34 +566,23 @@ describe('Dock variant', () => {
|
|
|
566
566
|
expect(screen.getByRole('button')).not.toHaveClass(styles.modifiers.docked);
|
|
567
567
|
});
|
|
568
568
|
|
|
569
|
-
test(`Renders with class ${styles.modifiers.
|
|
569
|
+
test(`Renders with class ${styles.modifiers.expanded} when isExpanded = true and isDocked = true`, () => {
|
|
570
570
|
render(
|
|
571
|
-
<Button
|
|
571
|
+
<Button isExpanded isDocked>
|
|
572
572
|
Text Expanded Button
|
|
573
573
|
</Button>
|
|
574
574
|
);
|
|
575
|
-
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.
|
|
575
|
+
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.expanded);
|
|
576
576
|
});
|
|
577
577
|
|
|
578
|
-
test(`Does not render with class ${styles.modifiers.
|
|
578
|
+
test(`Does not render with class ${styles.modifiers.expanded} when isExpanded is not passed`, () => {
|
|
579
579
|
render(<Button>Button</Button>);
|
|
580
|
-
expect(screen.getByRole('button')).not.toHaveClass(styles.modifiers.
|
|
580
|
+
expect(screen.getByRole('button')).not.toHaveClass(styles.modifiers.expanded);
|
|
581
581
|
});
|
|
582
582
|
|
|
583
|
-
test(`Does not render with class ${styles.modifiers.
|
|
584
|
-
render(<Button
|
|
585
|
-
expect(screen.getByRole('button')).not.toHaveClass(styles.modifiers.
|
|
586
|
-
});
|
|
587
|
-
|
|
588
|
-
test(`Renders with both ${styles.modifiers.docked} and ${styles.modifiers.textExpanded} when both props are true`, () => {
|
|
589
|
-
render(
|
|
590
|
-
<Button isDocked isTextExpanded>
|
|
591
|
-
Dock Text Expanded Button
|
|
592
|
-
</Button>
|
|
593
|
-
);
|
|
594
|
-
const button = screen.getByRole('button');
|
|
595
|
-
expect(button).toHaveClass(styles.modifiers.docked);
|
|
596
|
-
expect(button).toHaveClass(styles.modifiers.textExpanded);
|
|
583
|
+
test(`Does not render with class ${styles.modifiers.expanded} when isExpanded = true but isDocked is not passed`, () => {
|
|
584
|
+
render(<Button isExpanded>Text Expanded Button</Button>);
|
|
585
|
+
expect(screen.getByRole('button')).not.toHaveClass(styles.modifiers.expanded);
|
|
597
586
|
});
|
|
598
587
|
});
|
|
599
588
|
|
|
@@ -5,7 +5,7 @@ exports[`Renders basic button 1`] = `
|
|
|
5
5
|
<button
|
|
6
6
|
aria-label="basic button"
|
|
7
7
|
class="pf-v6-c-button pf-m-primary"
|
|
8
|
-
data-ouia-component-id="OUIA-Generated-Button-primary-:
|
|
8
|
+
data-ouia-component-id="OUIA-Generated-Button-primary-:r35:"
|
|
9
9
|
data-ouia-component-type="PF6/Button"
|
|
10
10
|
data-ouia-safe="true"
|
|
11
11
|
type="button"
|
|
@@ -10,14 +10,10 @@ export interface CompassProps extends React.HTMLProps<HTMLDivElement> {
|
|
|
10
10
|
masthead?: React.ReactNode;
|
|
11
11
|
/** Content of the docked navigation area of the layout */
|
|
12
12
|
dock?: React.ReactNode;
|
|
13
|
-
/** @beta Flag indicating the docked nav is expanded
|
|
13
|
+
/** @beta Flag indicating the docked nav is expanded. Only applies when dock content is passed. */
|
|
14
14
|
isDockExpanded?: boolean;
|
|
15
|
-
/** @beta Flag indicating
|
|
16
|
-
|
|
17
|
-
/** @beta Flag indicating the docked nav should display text on desktop. Only applies when dock content is passed, and
|
|
18
|
-
* will handle toggling the visibility of the text in individual isDocked components.
|
|
19
|
-
*/
|
|
20
|
-
isDockTextExpanded?: boolean;
|
|
15
|
+
/** @beta Flag indicating the docked nav should expand as an overlay instead of the default inline. */
|
|
16
|
+
isDockOverlay?: boolean;
|
|
21
17
|
/** Content placed at the top of the compass layout */
|
|
22
18
|
header?: React.ReactNode;
|
|
23
19
|
/** Flag indicating if the header is expanded */
|
|
@@ -47,8 +43,7 @@ export const Compass: React.FunctionComponent<CompassProps> = ({
|
|
|
47
43
|
masthead,
|
|
48
44
|
dock,
|
|
49
45
|
isDockExpanded,
|
|
50
|
-
|
|
51
|
-
isDockTextExpanded,
|
|
46
|
+
isDockOverlay,
|
|
52
47
|
header,
|
|
53
48
|
isHeaderExpanded = true,
|
|
54
49
|
sidebarStart,
|
|
@@ -72,8 +67,7 @@ export const Compass: React.FunctionComponent<CompassProps> = ({
|
|
|
72
67
|
className={css(
|
|
73
68
|
`${styles.compass}__dock`,
|
|
74
69
|
isDockExpanded && styles.modifiers.expanded,
|
|
75
|
-
|
|
76
|
-
isDockTextExpanded && styles.modifiers.textExpanded
|
|
70
|
+
isDockOverlay && styles.modifiers.overlay
|
|
77
71
|
)}
|
|
78
72
|
>
|
|
79
73
|
{dock}
|
|
@@ -94,19 +94,9 @@ test('Renders footer without expanded class and with inert when isFooterExpanded
|
|
|
94
94
|
expect(footerElement).toHaveAttribute('inert');
|
|
95
95
|
});
|
|
96
96
|
|
|
97
|
-
test(`Renders with ${styles.modifiers.
|
|
98
|
-
render(<Compass dock={<div>Dock content</div>}
|
|
99
|
-
expect(screen.getByText('Dock content').parentElement).toHaveClass(styles.modifiers.
|
|
100
|
-
});
|
|
101
|
-
|
|
102
|
-
test(`Does not render with ${styles.modifiers.expandableExpanded} class when isDockExpandableExpanded is false`, () => {
|
|
103
|
-
render(<Compass dock={<div>Dock content</div>} isDockExpandableExpanded={false} />);
|
|
104
|
-
expect(screen.getByText('Dock content').parentElement).not.toHaveClass(styles.modifiers.expandableExpanded);
|
|
105
|
-
});
|
|
106
|
-
|
|
107
|
-
test(`Does not render with ${styles.modifiers.expandableExpanded} class by default`, () => {
|
|
108
|
-
render(<Compass dock={<div>Dock content</div>} />);
|
|
109
|
-
expect(screen.getByText('Dock content').parentElement).not.toHaveClass(styles.modifiers.expandableExpanded);
|
|
97
|
+
test(`Renders with ${styles.modifiers.overlay} class when isDockOverlay is true`, () => {
|
|
98
|
+
render(<Compass dock={<div>Dock content</div>} isDockOverlay />);
|
|
99
|
+
expect(screen.getByText('Dock content').parentElement).toHaveClass(styles.modifiers.overlay);
|
|
110
100
|
});
|
|
111
101
|
|
|
112
102
|
test('Renders with drawer when drawerContent is provided', () => {
|
|
@@ -194,13 +184,3 @@ test(`Renders dock without ${styles.modifiers.expanded} class when isDockExpande
|
|
|
194
184
|
render(<Compass dock="Dock content" isDockExpanded={false} />);
|
|
195
185
|
expect(screen.getByText('Dock content')).not.toHaveClass(styles.modifiers.expanded);
|
|
196
186
|
});
|
|
197
|
-
|
|
198
|
-
test(`Renders dock with ${styles.modifiers.textExpanded} class when isDockTextExpanded is true`, () => {
|
|
199
|
-
render(<Compass dock="Dock content" isDockTextExpanded />);
|
|
200
|
-
expect(screen.getByText('Dock content')).toHaveClass(styles.modifiers.textExpanded);
|
|
201
|
-
});
|
|
202
|
-
|
|
203
|
-
test(`Renders dock without ${styles.modifiers.textExpanded} class when isDockTextExpanded is false`, () => {
|
|
204
|
-
render(<Compass dock="Dock content" isDockTextExpanded={false} />);
|
|
205
|
-
expect(screen.getByText('Dock content')).not.toHaveClass(styles.modifiers.textExpanded);
|
|
206
|
-
});
|
|
@@ -55,8 +55,6 @@ export interface MenuToggleProps
|
|
|
55
55
|
isSettings?: boolean;
|
|
56
56
|
/** @beta Flag indicating the menu toggle is a docked variant. For use in docked navigation. */
|
|
57
57
|
isDocked?: boolean;
|
|
58
|
-
/** @beta Flag indicating the docked toggle should display text. Only applies when isDocked is true. */
|
|
59
|
-
isTextExpanded?: boolean;
|
|
60
58
|
/** Elements to display before the toggle button. When included, renders the menu toggle as a split button. */
|
|
61
59
|
splitButtonItems?: React.ReactNode[];
|
|
62
60
|
/** Variant styles of the menu toggle */
|
|
@@ -95,7 +93,6 @@ class MenuToggleBase extends Component<MenuToggleProps> {
|
|
|
95
93
|
isPlaceholder: false,
|
|
96
94
|
isCircle: false,
|
|
97
95
|
isDocked: false,
|
|
98
|
-
isTextExpanded: false,
|
|
99
96
|
size: 'default',
|
|
100
97
|
ouiaSafe: true,
|
|
101
98
|
'aria-haspopup': 'menu'
|
|
@@ -116,7 +113,6 @@ class MenuToggleBase extends Component<MenuToggleProps> {
|
|
|
116
113
|
isCircle,
|
|
117
114
|
isSettings,
|
|
118
115
|
isDocked,
|
|
119
|
-
isTextExpanded,
|
|
120
116
|
splitButtonItems,
|
|
121
117
|
variant,
|
|
122
118
|
status,
|
|
@@ -204,7 +200,6 @@ class MenuToggleBase extends Component<MenuToggleProps> {
|
|
|
204
200
|
isPlaceholder && styles.modifiers.placeholder,
|
|
205
201
|
isSettings && styles.modifiers.settings,
|
|
206
202
|
isDocked && styles.modifiers.docked,
|
|
207
|
-
isDocked && isTextExpanded && styles.modifiers.textExpanded,
|
|
208
203
|
size === MenuToggleSize.sm && styles.modifiers.small,
|
|
209
204
|
className
|
|
210
205
|
);
|
|
@@ -166,32 +166,21 @@ test(`Does not render with class ${styles.modifiers.docked} when isDocked is not
|
|
|
166
166
|
expect(screen.getByRole('button')).not.toHaveClass(styles.modifiers.docked);
|
|
167
167
|
});
|
|
168
168
|
|
|
169
|
-
test(`Renders with class ${styles.modifiers.
|
|
169
|
+
test(`Renders with class ${styles.modifiers.expanded} when isExpanded is passed and isDocked is passed`, () => {
|
|
170
170
|
render(
|
|
171
|
-
<MenuToggle
|
|
171
|
+
<MenuToggle isExpanded isDocked>
|
|
172
172
|
Text Expanded Toggle
|
|
173
173
|
</MenuToggle>
|
|
174
174
|
);
|
|
175
|
-
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.
|
|
175
|
+
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.expanded);
|
|
176
176
|
});
|
|
177
177
|
|
|
178
|
-
test(`Does not render with class ${styles.modifiers.
|
|
178
|
+
test(`Does not render with class ${styles.modifiers.expanded} when isExpanded is not passed`, () => {
|
|
179
179
|
render(<MenuToggle>Toggle</MenuToggle>);
|
|
180
|
-
expect(screen.getByRole('button')).not.toHaveClass(styles.modifiers.
|
|
180
|
+
expect(screen.getByRole('button')).not.toHaveClass(styles.modifiers.expanded);
|
|
181
181
|
});
|
|
182
182
|
|
|
183
|
-
test(`Does not render with class ${styles.modifiers.
|
|
184
|
-
render(<MenuToggle
|
|
185
|
-
expect(screen.getByRole('button')).
|
|
186
|
-
});
|
|
187
|
-
|
|
188
|
-
test(`Renders with both ${styles.modifiers.docked} and ${styles.modifiers.textExpanded} when both props are passed`, () => {
|
|
189
|
-
render(
|
|
190
|
-
<MenuToggle isDocked isTextExpanded>
|
|
191
|
-
Dock Text Expanded Toggle
|
|
192
|
-
</MenuToggle>
|
|
193
|
-
);
|
|
194
|
-
const button = screen.getByRole('button');
|
|
195
|
-
expect(button).toHaveClass(styles.modifiers.docked);
|
|
196
|
-
expect(button).toHaveClass(styles.modifiers.textExpanded);
|
|
183
|
+
test(`Does not render with class ${styles.modifiers.expanded} when isExpanded is passed but isDocked is not passed`, () => {
|
|
184
|
+
render(<MenuToggle isExpanded>Text Expanded Toggle</MenuToggle>);
|
|
185
|
+
expect(screen.getByRole('button')).toHaveClass(styles.modifiers.expanded);
|
|
197
186
|
});
|
|
@@ -40,7 +40,7 @@ export interface NavProps
|
|
|
40
40
|
/** The nav variant to use. Docked is in beta. */
|
|
41
41
|
variant?: 'default' | 'horizontal' | 'horizontal-subnav' | 'docked';
|
|
42
42
|
/** @beta Flag indicating the docked nav should display text. Only applies when variant is docked. */
|
|
43
|
-
|
|
43
|
+
isExpanded?: boolean;
|
|
44
44
|
/** Value to overwrite the randomly generated data-ouia-component-id.*/
|
|
45
45
|
ouiaId?: number | string;
|
|
46
46
|
/** Set the value of data-ouia-safe. Only set to true when the component is in a static state, i.e. no animations are occurring. At all other times, this value must be false. */
|
|
@@ -121,7 +121,7 @@ class Nav extends Component<NavProps, { isScrollable: boolean; flyoutRef: React.
|
|
|
121
121
|
ouiaId,
|
|
122
122
|
ouiaSafe,
|
|
123
123
|
variant,
|
|
124
|
-
|
|
124
|
+
isExpanded = false,
|
|
125
125
|
...props
|
|
126
126
|
} = this.props;
|
|
127
127
|
const isHorizontal = ['horizontal', 'horizontal-subnav'].includes(variant);
|
|
@@ -159,7 +159,7 @@ class Nav extends Component<NavProps, { isScrollable: boolean; flyoutRef: React.
|
|
|
159
159
|
isHorizontal && styles.modifiers.horizontal,
|
|
160
160
|
isDocked && styles.modifiers.docked,
|
|
161
161
|
variant === 'horizontal-subnav' && styles.modifiers.subnav,
|
|
162
|
-
isDocked &&
|
|
162
|
+
isDocked && isExpanded && styles.modifiers.expanded,
|
|
163
163
|
this.state.isScrollable && styles.modifiers.scrollable,
|
|
164
164
|
className
|
|
165
165
|
)}
|
|
@@ -275,9 +275,9 @@ describe('Nav', () => {
|
|
|
275
275
|
expect(screen.getByTestId('docked-nav')).toHaveClass(styles.modifiers.docked);
|
|
276
276
|
});
|
|
277
277
|
|
|
278
|
-
test(`Renders with ${styles.modifiers.
|
|
278
|
+
test(`Renders with ${styles.modifiers.expanded} class when isExpanded is true and variant is docked`, () => {
|
|
279
279
|
renderNav(
|
|
280
|
-
<Nav
|
|
280
|
+
<Nav isExpanded variant="docked" data-testid="expanded-nav">
|
|
281
281
|
<NavList>
|
|
282
282
|
{props.items.map((item) => (
|
|
283
283
|
<NavItem to={item.to} key={item.to}>
|
|
@@ -287,10 +287,10 @@ describe('Nav', () => {
|
|
|
287
287
|
</NavList>
|
|
288
288
|
</Nav>
|
|
289
289
|
);
|
|
290
|
-
expect(screen.getByTestId('
|
|
290
|
+
expect(screen.getByTestId('expanded-nav')).toHaveClass(styles.modifiers.expanded);
|
|
291
291
|
});
|
|
292
292
|
|
|
293
|
-
test(`Does not render with ${styles.modifiers.
|
|
293
|
+
test(`Does not render with ${styles.modifiers.expanded} class when isExpanded is not passed`, () => {
|
|
294
294
|
renderNav(
|
|
295
295
|
<Nav data-testid="nav">
|
|
296
296
|
<NavList>
|
|
@@ -302,12 +302,12 @@ describe('Nav', () => {
|
|
|
302
302
|
</NavList>
|
|
303
303
|
</Nav>
|
|
304
304
|
);
|
|
305
|
-
expect(screen.getByTestId('nav')).not.toHaveClass(styles.modifiers.
|
|
305
|
+
expect(screen.getByTestId('nav')).not.toHaveClass(styles.modifiers.expanded);
|
|
306
306
|
});
|
|
307
307
|
|
|
308
|
-
test(`Does not render with ${styles.modifiers.
|
|
308
|
+
test(`Does not render with ${styles.modifiers.expanded} class when isExpanded is true but variant is not docked`, () => {
|
|
309
309
|
renderNav(
|
|
310
|
-
<Nav
|
|
310
|
+
<Nav isExpanded data-testid="nav">
|
|
311
311
|
<NavList>
|
|
312
312
|
{props.items.map((item) => (
|
|
313
313
|
<NavItem to={item.to} key={item.to}>
|
|
@@ -317,6 +317,6 @@ describe('Nav', () => {
|
|
|
317
317
|
</NavList>
|
|
318
318
|
</Nav>
|
|
319
319
|
);
|
|
320
|
-
expect(screen.getByTestId('nav')).not.toHaveClass(styles.modifiers.
|
|
320
|
+
expect(screen.getByTestId('nav')).not.toHaveClass(styles.modifiers.expanded);
|
|
321
321
|
});
|
|
322
322
|
});
|
|
@@ -84,7 +84,7 @@ A flyout should be a `Menu` component. Press `space` or `right arrow` to open a
|
|
|
84
84
|
|
|
85
85
|
### Docked
|
|
86
86
|
|
|
87
|
-
The docked variant of `Navigation` displays only icons passed to child `NavItems` or `NavExpandable`. Text becomes visible when `
|
|
87
|
+
The docked variant of `Navigation` displays only icons passed to child `NavItems` or `NavExpandable`. Text becomes visible when `isDockExpanded` is applied to an outer page or compass dock.
|
|
88
88
|
|
|
89
89
|
`NavExpandable` items should include the `hasExpandableIcon` prop to indicate their expandable nature while in the collapsed state of the docked nav as the caret will not be rendered.
|
|
90
90
|
|
|
@@ -22,14 +22,10 @@ export interface PageProps extends React.HTMLProps<HTMLDivElement> {
|
|
|
22
22
|
className?: string;
|
|
23
23
|
/** @beta Indicates the layout variant */
|
|
24
24
|
variant?: 'default' | 'docked';
|
|
25
|
-
/** @beta Flag indicating the docked nav is expanded
|
|
25
|
+
/** @beta Flag indicating the docked nav is expanded. Only applies when variant is docked. */
|
|
26
26
|
isDockExpanded?: boolean;
|
|
27
|
-
/** @beta Flag indicating
|
|
28
|
-
|
|
29
|
-
/** @beta Flag indicating the docked nav should display text on desktop. Only applies when variant is docked, and
|
|
30
|
-
* will handle toggling the visibility of the text in individual isDocked components.
|
|
31
|
-
*/
|
|
32
|
-
isDockTextExpanded?: boolean;
|
|
27
|
+
/** @beta Flag indicating the docked nav should expand as an overlay instead of the default inline. */
|
|
28
|
+
isDockOverlay?: boolean;
|
|
33
29
|
/** The horizontal masthead content (e.g. <Masthead /> or <PageHeader />). PageHeader is an alternative to Masthead
|
|
34
30
|
* and should only be used to wrap custom header content. When using the docked variant, this content will only render at
|
|
35
31
|
* mobile viewports.
|
|
@@ -140,7 +136,6 @@ class Page extends Component<PageProps, PageState> {
|
|
|
140
136
|
defaultManagedSidebarIsOpen: true,
|
|
141
137
|
mainTabIndex: -1,
|
|
142
138
|
isNotificationDrawerExpanded: false,
|
|
143
|
-
isDockExpandableExpanded: false,
|
|
144
139
|
onNotificationDrawerExpand: () => null,
|
|
145
140
|
mainComponent: 'main',
|
|
146
141
|
getBreakpoint,
|
|
@@ -255,8 +250,7 @@ class Page extends Component<PageProps, PageState> {
|
|
|
255
250
|
children,
|
|
256
251
|
variant,
|
|
257
252
|
isDockExpanded = false,
|
|
258
|
-
|
|
259
|
-
isDockExpandableExpanded = false,
|
|
253
|
+
isDockOverlay = false,
|
|
260
254
|
masthead,
|
|
261
255
|
dockContent,
|
|
262
256
|
sidebar,
|
|
@@ -386,8 +380,7 @@ class Page extends Component<PageProps, PageState> {
|
|
|
386
380
|
className={css(
|
|
387
381
|
styles.pageDock,
|
|
388
382
|
isDockExpanded && styles.modifiers.expanded,
|
|
389
|
-
|
|
390
|
-
isDockTextExpanded && styles.modifiers.textExpanded
|
|
383
|
+
isDockOverlay && styles.modifiers.overlay
|
|
391
384
|
)}
|
|
392
385
|
>
|
|
393
386
|
<div className={css(styles.pageDockMain)}>{dockContent}</div>
|
|
@@ -446,13 +446,6 @@ describe('Page docked variant', () => {
|
|
|
446
446
|
expect(pageDock).not.toHaveClass(styles.modifiers.expanded);
|
|
447
447
|
});
|
|
448
448
|
|
|
449
|
-
test(`Does not render with ${styles.modifiers.textExpanded} by default when variant is docked`, () => {
|
|
450
|
-
render(<Page variant="docked" dockContent={<>Dock content</>} masthead={<>Masthead</>} data-testid="page"></Page>);
|
|
451
|
-
|
|
452
|
-
const pageDock = screen.getByText('Dock content').closest(`.${styles.pageDock}`);
|
|
453
|
-
expect(pageDock).not.toHaveClass(styles.modifiers.textExpanded);
|
|
454
|
-
});
|
|
455
|
-
|
|
456
449
|
test(`Renders with ${styles.modifiers.expanded} when isDockExpanded is true and variant is docked`, () => {
|
|
457
450
|
render(
|
|
458
451
|
<Page
|
|
@@ -468,11 +461,12 @@ describe('Page docked variant', () => {
|
|
|
468
461
|
expect(pageDock).toHaveClass(styles.modifiers.expanded);
|
|
469
462
|
});
|
|
470
463
|
|
|
471
|
-
test(`Renders with ${styles.modifiers.
|
|
464
|
+
test(`Renders with ${styles.modifiers.overlay} when isDockOverlay is true and variant is docked`, () => {
|
|
472
465
|
render(
|
|
473
466
|
<Page
|
|
474
467
|
variant="docked"
|
|
475
|
-
|
|
468
|
+
isDockExpanded
|
|
469
|
+
isDockOverlay
|
|
476
470
|
dockContent={<>Dock content</>}
|
|
477
471
|
masthead={<>Masthead</>}
|
|
478
472
|
data-testid="page"
|
|
@@ -480,27 +474,7 @@ describe('Page docked variant', () => {
|
|
|
480
474
|
);
|
|
481
475
|
|
|
482
476
|
const pageDock = screen.getByText('Dock content').closest(`.${styles.pageDock}`);
|
|
483
|
-
expect(pageDock).toHaveClass(styles.modifiers.
|
|
484
|
-
});
|
|
485
|
-
|
|
486
|
-
test(`Does not render with ${styles.modifiers.expandableExpanded} when by default and variant is docked`, () => {
|
|
487
|
-
render(<Page variant="docked" dockContent={<>Dock content</>} masthead={<>Masthead</>} data-testid="page"></Page>);
|
|
488
|
-
const pageDock = screen.getByText('Dock content').closest(`.${styles.pageDock}`);
|
|
489
|
-
expect(pageDock).not.toHaveClass(styles.modifiers.expandableExpanded);
|
|
490
|
-
});
|
|
491
|
-
|
|
492
|
-
test(`Renders with ${styles.modifiers.expandableExpanded} when isDockExpandableExpanded is true and variant is docked`, () => {
|
|
493
|
-
render(
|
|
494
|
-
<Page
|
|
495
|
-
variant="docked"
|
|
496
|
-
isDockExpandableExpanded
|
|
497
|
-
dockContent={<>Dock content</>}
|
|
498
|
-
masthead={<>Masthead</>}
|
|
499
|
-
data-testid="page"
|
|
500
|
-
></Page>
|
|
501
|
-
);
|
|
502
|
-
const pageDock = screen.getByText('Dock content').closest(`.${styles.pageDock}`);
|
|
503
|
-
expect(pageDock).toHaveClass(styles.modifiers.expandableExpanded);
|
|
477
|
+
expect(pageDock).toHaveClass(styles.modifiers.overlay);
|
|
504
478
|
});
|
|
505
479
|
|
|
506
480
|
test(`Renders with ${styles.pageDockMain} wrapper when variant is docked`, () => {
|