@patternfly/react-core 6.2.1 → 6.3.0-prerelease.1
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 +33 -7
- package/components/package.json +1 -1
- package/deprecated/package.json +1 -1
- package/dist/dynamic/components/AboutModal/package.json +1 -1
- package/dist/dynamic/components/Accordion/package.json +1 -1
- package/dist/dynamic/components/ActionList/package.json +1 -1
- package/dist/dynamic/components/Alert/package.json +1 -1
- package/dist/dynamic/components/Avatar/package.json +1 -1
- package/dist/dynamic/components/BackToTop/package.json +1 -1
- package/dist/dynamic/components/Backdrop/package.json +1 -1
- package/dist/dynamic/components/BackgroundImage/package.json +1 -1
- package/dist/dynamic/components/Badge/package.json +1 -1
- package/dist/dynamic/components/Banner/package.json +1 -1
- package/dist/dynamic/components/Brand/package.json +1 -1
- package/dist/dynamic/components/Breadcrumb/package.json +1 -1
- package/dist/dynamic/components/Button/package.json +1 -1
- package/dist/dynamic/components/CalendarMonth/package.json +1 -1
- package/dist/dynamic/components/Card/package.json +1 -1
- package/dist/dynamic/components/Checkbox/package.json +1 -1
- package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
- package/dist/dynamic/components/CodeBlock/package.json +1 -1
- package/dist/dynamic/components/Content/package.json +1 -1
- package/dist/dynamic/components/DataList/package.json +1 -1
- package/dist/dynamic/components/DatePicker/package.json +1 -1
- package/dist/dynamic/components/DescriptionList/package.json +1 -1
- package/dist/dynamic/components/Divider/package.json +1 -1
- package/dist/dynamic/components/Drawer/package.json +1 -1
- package/dist/dynamic/components/Dropdown/package.json +1 -1
- package/dist/dynamic/components/DualListSelector/package.json +1 -1
- package/dist/dynamic/components/EmptyState/package.json +1 -1
- package/dist/dynamic/components/ExpandableSection/package.json +1 -1
- package/dist/dynamic/components/FileUpload/package.json +1 -1
- package/dist/dynamic/components/Form/package.json +1 -1
- package/dist/dynamic/components/FormSelect/package.json +1 -1
- package/dist/dynamic/components/HelperText/package.json +1 -1
- package/dist/dynamic/components/Hint/package.json +1 -1
- package/dist/dynamic/components/Icon/package.json +1 -1
- package/dist/dynamic/components/InputGroup/package.json +1 -1
- package/dist/dynamic/components/JumpLinks/package.json +1 -1
- package/dist/dynamic/components/Label/package.json +1 -1
- package/dist/dynamic/components/List/package.json +1 -1
- package/dist/dynamic/components/LoginPage/package.json +1 -1
- package/dist/dynamic/components/Masthead/package.json +1 -1
- package/dist/dynamic/components/Menu/package.json +1 -1
- package/dist/dynamic/components/MenuToggle/package.json +1 -1
- package/dist/dynamic/components/Modal/package.json +1 -1
- package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
- package/dist/dynamic/components/Nav/package.json +1 -1
- package/dist/dynamic/components/NotificationBadge/package.json +1 -1
- package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
- package/dist/dynamic/components/NumberInput/package.json +1 -1
- package/dist/dynamic/components/OverflowMenu/package.json +1 -1
- package/dist/dynamic/components/Page/package.json +1 -1
- package/dist/dynamic/components/Pagination/package.json +1 -1
- package/dist/dynamic/components/Panel/package.json +1 -1
- package/dist/dynamic/components/Popover/package.json +1 -1
- package/dist/dynamic/components/Progress/package.json +1 -1
- package/dist/dynamic/components/ProgressStepper/package.json +1 -1
- package/dist/dynamic/components/Radio/package.json +1 -1
- package/dist/dynamic/components/SearchInput/package.json +1 -1
- package/dist/dynamic/components/Select/package.json +1 -1
- package/dist/dynamic/components/Sidebar/package.json +1 -1
- package/dist/dynamic/components/SimpleList/package.json +1 -1
- package/dist/dynamic/components/Skeleton/package.json +1 -1
- package/dist/dynamic/components/SkipToContent/package.json +1 -1
- package/dist/dynamic/components/Slider/package.json +1 -1
- package/dist/dynamic/components/Spinner/package.json +1 -1
- package/dist/dynamic/components/Switch/package.json +1 -1
- package/dist/dynamic/components/Tabs/package.json +1 -1
- package/dist/dynamic/components/TextArea/package.json +1 -1
- package/dist/dynamic/components/TextInput/package.json +1 -1
- package/dist/dynamic/components/TextInputGroup/package.json +1 -1
- package/dist/dynamic/components/TimePicker/package.json +1 -1
- package/dist/dynamic/components/Timestamp/package.json +1 -1
- package/dist/dynamic/components/Title/package.json +1 -1
- package/dist/dynamic/components/ToggleGroup/package.json +1 -1
- package/dist/dynamic/components/Toolbar/package.json +1 -1
- package/dist/dynamic/components/Tooltip/package.json +1 -1
- package/dist/dynamic/components/TreeView/package.json +1 -1
- package/dist/dynamic/components/Truncate/package.json +1 -1
- package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
- package/dist/dynamic/components/Wizard/package.json +1 -1
- package/dist/dynamic/deprecated/components/Chip/package.json +1 -1
- package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
- package/dist/dynamic/deprecated/components/DualListSelector/package.json +1 -1
- package/dist/dynamic/deprecated/components/Modal/package.json +1 -1
- package/dist/dynamic/deprecated/components/Tile/package.json +1 -1
- package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
- package/dist/dynamic/deprecated/components/package.json +1 -1
- package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
- package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
- package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
- package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
- package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
- package/dist/dynamic/helpers/constants/package.json +1 -1
- package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
- package/dist/dynamic/helpers/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/esm/components/Divider/Divider.d.ts +2 -0
- package/dist/esm/components/Divider/Divider.d.ts.map +1 -1
- package/dist/esm/components/Divider/Divider.js +2 -2
- package/dist/esm/components/Divider/Divider.js.map +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts +1 -1
- package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
- package/dist/esm/components/Form/FormFieldGroup.d.ts +1 -1
- package/dist/esm/components/Form/FormFieldGroup.d.ts.map +1 -1
- package/dist/esm/components/Form/FormFieldGroupExpandable.d.ts +1 -1
- package/dist/esm/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
- package/dist/esm/components/Form/InternalFormFieldGroup.d.ts +1 -1
- package/dist/esm/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
- package/dist/esm/components/List/List.d.ts.map +1 -1
- package/dist/esm/components/List/List.js +2 -2
- package/dist/esm/components/List/List.js.map +1 -1
- package/dist/esm/components/List/ListItem.d.ts +4 -2
- package/dist/esm/components/List/ListItem.d.ts.map +1 -1
- package/dist/esm/components/List/ListItem.js +2 -2
- package/dist/esm/components/List/ListItem.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/NavItemSeparator.d.ts.map +1 -1
- package/dist/esm/components/Nav/NavItemSeparator.js +2 -2
- package/dist/esm/components/Nav/NavItemSeparator.js.map +1 -1
- package/dist/esm/components/Progress/ProgressContainer.d.ts.map +1 -1
- package/dist/esm/components/Progress/ProgressContainer.js +12 -6
- package/dist/esm/components/Progress/ProgressContainer.js.map +1 -1
- package/dist/esm/components/Tabs/Tabs.d.ts +1 -1
- package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/esm/components/Tabs/Tabs.js.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarGroup.d.ts +1 -1
- package/dist/esm/components/Toolbar/ToolbarGroup.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarItem.d.ts.map +1 -1
- package/dist/esm/components/Toolbar/ToolbarItem.js +4 -3
- package/dist/esm/components/Toolbar/ToolbarItem.js.map +1 -1
- package/dist/esm/components/TreeView/TreeViewListItem.d.ts +2 -2
- package/dist/esm/components/TreeView/TreeViewListItem.d.ts.map +1 -1
- package/dist/esm/components/Truncate/Truncate.d.ts +11 -1
- package/dist/esm/components/Truncate/Truncate.d.ts.map +1 -1
- package/dist/esm/components/Truncate/Truncate.js +46 -10
- package/dist/esm/components/Truncate/Truncate.js.map +1 -1
- package/dist/esm/components/Wizard/WizardNavInternal.js.map +1 -1
- package/dist/js/components/Divider/Divider.d.ts +2 -0
- package/dist/js/components/Divider/Divider.d.ts.map +1 -1
- package/dist/js/components/Divider/Divider.js +2 -2
- package/dist/js/components/Divider/Divider.js.map +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSection.d.ts +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts +1 -1
- package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
- package/dist/js/components/Form/FormFieldGroup.d.ts +1 -1
- package/dist/js/components/Form/FormFieldGroup.d.ts.map +1 -1
- package/dist/js/components/Form/FormFieldGroupExpandable.d.ts +1 -1
- package/dist/js/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
- package/dist/js/components/Form/InternalFormFieldGroup.d.ts +1 -1
- package/dist/js/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
- package/dist/js/components/List/List.d.ts.map +1 -1
- package/dist/js/components/List/List.js +2 -2
- package/dist/js/components/List/List.js.map +1 -1
- package/dist/js/components/List/ListItem.d.ts +4 -2
- package/dist/js/components/List/ListItem.d.ts.map +1 -1
- package/dist/js/components/List/ListItem.js +2 -2
- package/dist/js/components/List/ListItem.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/NavItemSeparator.d.ts.map +1 -1
- package/dist/js/components/Nav/NavItemSeparator.js +2 -2
- package/dist/js/components/Nav/NavItemSeparator.js.map +1 -1
- package/dist/js/components/Progress/ProgressContainer.d.ts.map +1 -1
- package/dist/js/components/Progress/ProgressContainer.js +10 -4
- package/dist/js/components/Progress/ProgressContainer.js.map +1 -1
- package/dist/js/components/Tabs/Tabs.d.ts +1 -1
- package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/js/components/Tabs/Tabs.js.map +1 -1
- package/dist/js/components/Toolbar/ToolbarGroup.d.ts +1 -1
- package/dist/js/components/Toolbar/ToolbarGroup.d.ts.map +1 -1
- package/dist/js/components/Toolbar/ToolbarItem.d.ts.map +1 -1
- package/dist/js/components/Toolbar/ToolbarItem.js +4 -3
- package/dist/js/components/Toolbar/ToolbarItem.js.map +1 -1
- package/dist/js/components/TreeView/TreeViewListItem.d.ts +2 -2
- package/dist/js/components/TreeView/TreeViewListItem.d.ts.map +1 -1
- package/dist/js/components/Truncate/Truncate.d.ts +11 -1
- package/dist/js/components/Truncate/Truncate.d.ts.map +1 -1
- package/dist/js/components/Truncate/Truncate.js +45 -9
- package/dist/js/components/Truncate/Truncate.js.map +1 -1
- package/dist/js/components/Wizard/WizardNavInternal.js.map +1 -1
- package/dist/umd/assets/{output-C3Y87JYn.css → output-ZyJGbFvY.css} +18548 -18548
- package/dist/umd/react-core.min.js +1 -1
- package/helpers/package.json +1 -1
- package/layouts/package.json +1 -1
- package/next/package.json +1 -1
- package/package.json +8 -8
- package/src/components/Alert/examples/Alert.md +0 -3
- package/src/components/Card/examples/Card.md +4 -0
- package/src/components/Card/examples/CardHeaderWraps.tsx +26 -0
- package/src/components/CodeBlock/examples/CodeBlockBasic.tsx +1 -1
- package/src/components/CodeBlock/examples/CodeBlockExpandable.tsx +10 -3
- package/src/components/DescriptionList/examples/DescriptionListAutoFitBasic.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListAutoFitMinWidthModified.tsx +5 -1
- package/src/components/DescriptionList/examples/DescriptionListAutoFitMinWidthResponsive.tsx +5 -1
- package/src/components/DescriptionList/examples/DescriptionListBasic.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListColumnFill.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListCompact.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListCompactHorizontal.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListDefaultAutoColumn.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListDefaultInlineGrid.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListDefaultResponsiveColumns.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListDefaultThreeColLg.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListDefaultTwoCol.tsx +1 -0
- package/src/components/DescriptionList/examples/DescriptionListDisplaySizeAndCardHorizontalTermWidth.tsx +7 -1
- package/src/components/DescriptionList/examples/DescriptionListDisplaySizeAndCardThreeColumn.tsx +5 -1
- package/src/components/DescriptionList/examples/DescriptionListFluidHorizontal.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListHorizontal.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListHorizontalAutoColumn.tsx +6 -1
- package/src/components/DescriptionList/examples/DescriptionListHorizontalCustomTermWidth.tsx +1 -0
- package/src/components/DescriptionList/examples/DescriptionListHorizontalResponsiveColumns.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListHorizontalThreeColLg.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListHorizontalTwoCol.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListIconsOnTerms.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListResponsiveHoriVertGroup.tsx +1 -0
- package/src/components/DescriptionList/examples/DescriptionListWithCard.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListWithLargeDisplaySize.tsx +1 -1
- package/src/components/DescriptionList/examples/DescriptionListWithLargeDisplaySizeAndCard.tsx +5 -1
- package/src/components/DescriptionList/examples/DescriptionListWithTermHelpText.tsx +1 -1
- package/src/components/Divider/Divider.tsx +4 -1
- package/src/components/Divider/__tests__/Divider.test.tsx +10 -0
- package/src/components/DualListSelector/examples/DualListSelectorBasicSearch.tsx +1 -0
- package/src/components/DualListSelector/examples/DualListSelectorComplexOptionsActions.tsx +1 -0
- package/src/components/DualListSelector/examples/DualListSelectorTree.tsx +1 -0
- package/src/components/ExpandableSection/ExpandableSection.tsx +1 -1
- package/src/components/ExpandableSection/ExpandableSectionToggle.tsx +1 -1
- package/src/components/Form/FormFieldGroup.tsx +1 -1
- package/src/components/Form/FormFieldGroupExpandable.tsx +1 -1
- package/src/components/Form/InternalFormFieldGroup.tsx +1 -1
- package/src/components/List/List.tsx +3 -0
- package/src/components/List/ListItem.tsx +7 -4
- package/src/components/List/__tests__/List.test.tsx +97 -101
- package/src/components/List/__tests__/ListItem.test.tsx +51 -0
- package/src/components/List/__tests__/__snapshots__/List.test.tsx.snap +4 -261
- package/src/components/List/__tests__/__snapshots__/ListItem.test.tsx.snap +34 -0
- package/src/components/Nav/Nav.tsx +1 -1
- package/src/components/Nav/NavItemSeparator.tsx +2 -1
- package/src/components/Progress/ProgressContainer.tsx +23 -16
- package/src/components/Progress/examples/ProgressTitleOutsideOfProgressBar.tsx +1 -1
- package/src/components/SearchInput/examples/SearchInputAdvanced.tsx +1 -0
- package/src/components/SearchInput/examples/SearchInputBasic.tsx +1 -0
- package/src/components/SearchInput/examples/SearchInputFocusSearch.tsx +7 -1
- package/src/components/SearchInput/examples/SearchInputWithExpandable.tsx +1 -0
- package/src/components/SearchInput/examples/SearchInputWithNavigableOptions.tsx +1 -0
- package/src/components/SearchInput/examples/SearchInputWithResultCount.tsx +1 -0
- package/src/components/SearchInput/examples/SearchInputWithSubmitButton.tsx +1 -0
- package/src/components/Tabs/Tabs.tsx +3 -1
- package/src/components/Toolbar/ToolbarGroup.tsx +1 -1
- package/src/components/Toolbar/ToolbarItem.tsx +11 -1
- package/src/components/TreeView/TreeViewListItem.tsx +2 -2
- package/src/components/TreeView/__tests__/TreeView.test.tsx +26 -1
- package/src/components/TreeView/__tests__/TreeViewList.test.tsx +46 -0
- package/src/components/TreeView/__tests__/TreeViewListItem.test.tsx +278 -156
- package/src/components/TreeView/__tests__/TreeViewSearch.test.tsx +12 -1
- package/src/components/TreeView/__tests__/__snapshots__/TreeView.test.tsx.snap +9 -0
- package/src/components/Truncate/Truncate.tsx +118 -32
- package/src/components/Truncate/__tests__/Truncate.test.tsx +71 -3
- package/src/components/Truncate/__tests__/__snapshots__/Truncate.test.tsx.snap +54 -14
- package/src/components/Truncate/examples/Truncate.md +32 -36
- package/src/components/Truncate/examples/TruncateCustomTooltipPosition.tsx +10 -0
- package/src/components/Truncate/examples/TruncateDefault.tsx +7 -0
- package/src/components/Truncate/examples/TruncateMaxChars.tsx +27 -0
- package/src/components/Truncate/examples/TruncateMiddle.tsx +11 -0
- package/src/components/Truncate/examples/TruncateStart.tsx +7 -0
- package/src/components/Wizard/WizardNavInternal.tsx +1 -1
- package/src/components/Wizard/examples/WizardGetCurrentStep.tsx +1 -1
- package/src/demos/DescriptionList/examples/DescriptionListBasic.tsx +1 -1
- package/src/demos/DescriptionList/examples/DescriptionListInDrawer.tsx +1 -1
- package/src/demos/SearchInput/SearchInput.md +2 -0
- package/src/demos/examples/Card/CardDetails.tsx +2 -2
- package/src/demos/examples/Card/CardEventsView.tsx +1 -1
- package/src/demos/examples/Card/CardLogView.tsx +1 -1
- package/src/demos/examples/Card/CardStatusTabbed.tsx +3 -3
- package/src/components/List/__tests__/Generated/ListItem.test.tsx +0 -12
- package/src/components/List/__tests__/Generated/__snapshots__/ListItem.test.tsx.snap +0 -13
|
@@ -7,7 +7,13 @@ export const SearchInputFocusSearch: React.FunctionComponent = () => {
|
|
|
7
7
|
|
|
8
8
|
return (
|
|
9
9
|
<>
|
|
10
|
-
<SearchInput
|
|
10
|
+
<SearchInput
|
|
11
|
+
ref={ref}
|
|
12
|
+
value={value}
|
|
13
|
+
onChange={(_event, value) => setValue(value)}
|
|
14
|
+
onClear={() => setValue('')}
|
|
15
|
+
aria-label="Search focus using ref example"
|
|
16
|
+
/>
|
|
11
17
|
<Button onClick={() => ref.current && ref.current.focus()}>Focus on the search input</Button>
|
|
12
18
|
</>
|
|
13
19
|
);
|
|
@@ -29,6 +29,7 @@ export const SearchInputWithNavigableOptions: React.FunctionComponent = () => {
|
|
|
29
29
|
|
|
30
30
|
return (
|
|
31
31
|
<SearchInput
|
|
32
|
+
aria-label="Search match with navigable options example"
|
|
32
33
|
placeholder="Find by name"
|
|
33
34
|
value={value}
|
|
34
35
|
onChange={(_event, value) => onChange(value)}
|
|
@@ -31,7 +31,9 @@ export interface HorizontalOverflowObject {
|
|
|
31
31
|
type TabElement = React.ReactElement<TabProps, React.JSXElementConstructor<TabProps>>;
|
|
32
32
|
type TabsChild = TabElement | boolean | null | undefined;
|
|
33
33
|
|
|
34
|
-
export interface TabsProps
|
|
34
|
+
export interface TabsProps
|
|
35
|
+
extends Omit<React.HTMLProps<HTMLElement | HTMLDivElement>, 'onSelect' | 'onToggle'>,
|
|
36
|
+
OUIAProps {
|
|
35
37
|
/** Content rendered inside the tabs component. Only `Tab` components or expressions resulting in a falsy value are allowed here. */
|
|
36
38
|
children: TabsChild | TabsChild[];
|
|
37
39
|
/** Additional classes added to the tabs */
|
|
@@ -12,7 +12,7 @@ export enum ToolbarGroupVariant {
|
|
|
12
12
|
'label-group' = 'label-group'
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
export interface ToolbarGroupProps extends Omit<React.HTMLProps<HTMLDivElement>, 'ref'> {
|
|
15
|
+
export interface ToolbarGroupProps extends Omit<React.HTMLProps<HTMLDivElement>, 'ref' | 'onToggle'> {
|
|
16
16
|
/** Classes applied to root element of the data toolbar group */
|
|
17
17
|
className?: string;
|
|
18
18
|
/** A type modifier which modifies spacing specifically depending on the type of group */
|
|
@@ -185,10 +185,19 @@ export const ToolbarItem: React.FunctionComponent<ToolbarItemProps> = ({
|
|
|
185
185
|
children,
|
|
186
186
|
isAllExpanded,
|
|
187
187
|
isOverflowContainer,
|
|
188
|
+
role,
|
|
188
189
|
...props
|
|
189
190
|
}: ToolbarItemProps) => {
|
|
190
191
|
if (variant === ToolbarItemVariant.separator) {
|
|
191
|
-
|
|
192
|
+
const isDividerRoleValid = role === 'separator' || role === 'presentation';
|
|
193
|
+
return (
|
|
194
|
+
<Divider
|
|
195
|
+
className={css(className)}
|
|
196
|
+
orientation={{ default: 'vertical' }}
|
|
197
|
+
{...props}
|
|
198
|
+
{...(isDividerRoleValid && { role: role as 'separator' | 'presentation' })}
|
|
199
|
+
/>
|
|
200
|
+
);
|
|
192
201
|
}
|
|
193
202
|
|
|
194
203
|
return (
|
|
@@ -217,6 +226,7 @@ export const ToolbarItem: React.FunctionComponent<ToolbarItemProps> = ({
|
|
|
217
226
|
)}
|
|
218
227
|
{...(variant === 'label' && { 'aria-hidden': true })}
|
|
219
228
|
id={id}
|
|
229
|
+
role={role}
|
|
220
230
|
{...props}
|
|
221
231
|
>
|
|
222
232
|
{children}
|
|
@@ -50,11 +50,11 @@ export interface TreeViewListItemProps {
|
|
|
50
50
|
/** Internal content of a tree view item. */
|
|
51
51
|
name: React.ReactNode;
|
|
52
52
|
/** Callback for item checkbox selection. */
|
|
53
|
-
onCheck?: (event: React.ChangeEvent<HTMLInputElement>, item: TreeViewDataItem,
|
|
53
|
+
onCheck?: (event: React.ChangeEvent<HTMLInputElement>, item: TreeViewDataItem, parentItem: TreeViewDataItem) => void;
|
|
54
54
|
/** Callback for item selection. Note: calling event.preventDefault() will prevent the node
|
|
55
55
|
* from toggling.
|
|
56
56
|
*/
|
|
57
|
-
onSelect?: (event: React.MouseEvent, item: TreeViewDataItem,
|
|
57
|
+
onSelect?: (event: React.MouseEvent, item: TreeViewDataItem, parentItem: TreeViewDataItem) => void;
|
|
58
58
|
/** Callback for expanding a node with children. */
|
|
59
59
|
onExpand?: (event: React.MouseEvent, item: TreeViewDataItem, parentItem: TreeViewDataItem) => void;
|
|
60
60
|
/** Callback for collapsing a node with children. */
|
|
@@ -3,10 +3,20 @@ import userEvent from '@testing-library/user-event';
|
|
|
3
3
|
import { TreeView } from '../TreeView';
|
|
4
4
|
|
|
5
5
|
jest.mock('../TreeViewList', () => ({
|
|
6
|
-
TreeViewList: ({
|
|
6
|
+
TreeViewList: ({
|
|
7
|
+
children,
|
|
8
|
+
isNested,
|
|
9
|
+
toolbar,
|
|
10
|
+
'aria-label': ariaLabel,
|
|
11
|
+
'aria-labelledby': ariaLabelledBy,
|
|
12
|
+
isMultiSelectable
|
|
13
|
+
}) => (
|
|
7
14
|
<div data-testid="TreeViewList-mock">
|
|
8
15
|
<p>{`TreeViewList isNested: ${isNested}`}</p>
|
|
9
16
|
<p>{`TreeViewList toolbar: ${toolbar}`}</p>
|
|
17
|
+
<p>{`TreeViewList aria-label: ${ariaLabel}`}</p>
|
|
18
|
+
<p>{`TreeViewList aria-labelledBy: ${ariaLabelledBy}`}</p>
|
|
19
|
+
<p>{`TreeViewList isMultiSelectable: ${isMultiSelectable}`}</p>
|
|
10
20
|
<div data-testid="TreeViewList-children">{children}</div>
|
|
11
21
|
</div>
|
|
12
22
|
)
|
|
@@ -131,6 +141,21 @@ test('Passes toolbar to TreeViewList', () => {
|
|
|
131
141
|
|
|
132
142
|
expect(screen.getByText('TreeViewList toolbar: Toolbar content')).toBeVisible();
|
|
133
143
|
});
|
|
144
|
+
test('Passes aria-label to TreeViewList', () => {
|
|
145
|
+
render(<TreeView aria-label="Test aria-label" data={[basicData]} />);
|
|
146
|
+
|
|
147
|
+
expect(screen.getByText('TreeViewList aria-label: Test aria-label')).toBeVisible();
|
|
148
|
+
});
|
|
149
|
+
test('Passes aria-labelledby to TreeViewList', () => {
|
|
150
|
+
render(<TreeView aria-labelledby="test-aria-labelledby" data={[basicData]} />);
|
|
151
|
+
|
|
152
|
+
expect(screen.getByText('TreeViewList aria-labelledBy: test-aria-labelledby')).toBeVisible();
|
|
153
|
+
});
|
|
154
|
+
test('Passes isMultiSelectable to TreeViewList', () => {
|
|
155
|
+
render(<TreeView isMultiSelectable={true} data={[basicData]} />);
|
|
156
|
+
|
|
157
|
+
expect(screen.getByText('TreeViewList isMultiSelectable: true')).toBeVisible();
|
|
158
|
+
});
|
|
134
159
|
test('Passes data as children TreeViewList', () => {
|
|
135
160
|
render(<TreeView data={[basicData]} />);
|
|
136
161
|
|
|
@@ -32,9 +32,55 @@ test(`Renders toolbar content when toolbar prop is passed`, () => {
|
|
|
32
32
|
expect(screen.getByText('Toolbar content')).toBeInTheDocument();
|
|
33
33
|
});
|
|
34
34
|
|
|
35
|
+
test(`Renders Divider when toolbar prop is passed`, () => {
|
|
36
|
+
render(<TreeViewList toolbar="Toolbar content">Content</TreeViewList>);
|
|
37
|
+
|
|
38
|
+
expect(screen.getByRole('separator')).toBeInTheDocument();
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
test('Renders with aria-label when passed', () => {
|
|
42
|
+
render(<TreeViewList aria-label="Test aria-label">Content</TreeViewList>);
|
|
43
|
+
|
|
44
|
+
expect(screen.getByRole('tree')).toHaveAccessibleName('Test aria-label');
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
test('Renders with aria-labelledby when passed', () => {
|
|
48
|
+
render(
|
|
49
|
+
<>
|
|
50
|
+
<div id="label">Labeling content</div>
|
|
51
|
+
<TreeViewList aria-labelledby="label">Content</TreeViewList>
|
|
52
|
+
</>
|
|
53
|
+
);
|
|
54
|
+
|
|
55
|
+
expect(screen.getByRole('tree')).toHaveAccessibleName('Labeling content');
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
test('Renders with aria-multiselectable of false by default', () => {
|
|
59
|
+
render(<TreeViewList>Content</TreeViewList>);
|
|
60
|
+
|
|
61
|
+
expect(screen.getByRole('tree')).toHaveAttribute('aria-multiselectable', 'false');
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
test('Renders with aria-multiselectable of true when isMultiSelectable is true', () => {
|
|
65
|
+
render(<TreeViewList isMultiSelectable>Content</TreeViewList>);
|
|
66
|
+
|
|
67
|
+
expect(screen.getByRole('tree')).toHaveAttribute('aria-multiselectable', 'true');
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
test('Does not render with aria-multiselectable when isNested is true', () => {
|
|
71
|
+
render(
|
|
72
|
+
<TreeViewList isMultiSelectable isNested>
|
|
73
|
+
Content
|
|
74
|
+
</TreeViewList>
|
|
75
|
+
);
|
|
76
|
+
|
|
77
|
+
expect(screen.getByRole('group')).not.toHaveAttribute('aria-multiselectable');
|
|
78
|
+
});
|
|
79
|
+
|
|
35
80
|
test(`Does not render toolbar content when toolbar prop is not passed`, () => {
|
|
36
81
|
render(<TreeViewList>Content</TreeViewList>);
|
|
37
82
|
|
|
83
|
+
expect(screen.queryByRole('tree')?.previousElementSibling).not.toBeInTheDocument();
|
|
38
84
|
expect(screen.queryByRole('separator')).not.toBeInTheDocument();
|
|
39
85
|
});
|
|
40
86
|
|