@carbon/react 0.16.2 → 1.0.0-rc.0
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/README.md +1 -1
- package/es/_virtual/ResizeObserver.es.js +13 -0
- package/es/_virtual/_commonjsHelpers.js +29 -0
- package/es/_virtual/_rollupPluginBabelHelpers.js +354 -0
- package/es/{prefix.js → _virtual/index.js} +2 -2
- package/es/_virtual/rangePlugin.js +10 -0
- package/es/components/Accordion/Accordion.Skeleton.js +103 -0
- package/es/components/Accordion/Accordion.js +68 -0
- package/es/components/Accordion/AccordionItem.js +181 -0
- package/es/components/Accordion/index.js +9 -0
- package/es/components/AccordionItem/index.js +11 -0
- package/es/components/AspectRatio/AspectRatio.js +67 -0
- package/es/components/Breadcrumb/Breadcrumb.Skeleton.js +45 -0
- package/es/components/Breadcrumb/Breadcrumb.js +58 -0
- package/es/components/Breadcrumb/BreadcrumbItem.js +94 -0
- package/es/components/Button/Button.Skeleton.js +71 -0
- package/es/components/Button/Button.js +351 -0
- package/es/components/ButtonSet/ButtonSet.js +48 -0
- package/es/components/Checkbox/Checkbox.Skeleton.js +36 -0
- package/es/components/Checkbox/Checkbox.js +136 -0
- package/es/components/CodeSnippet/CodeSnippet.Skeleton.js +58 -0
- package/es/components/CodeSnippet/CodeSnippet.js +372 -0
- package/es/components/ComboBox/ComboBox.js +532 -0
- package/es/components/ComboBox/tools/filter.js +20 -0
- package/es/components/ComposedModal/ComposedModal.js +630 -0
- package/es/components/ComposedModal/index.js +19 -0
- package/es/components/ComposedModal/next/ComposedModal.js +223 -0
- package/es/components/ComposedModal/next/ModalFooter.js +213 -0
- package/es/components/ComposedModal/next/ModalHeader.js +127 -0
- package/es/components/ContentSwitcher/ContentSwitcher.js +185 -0
- package/es/components/ContextMenu/useContextMenu.js +57 -0
- package/es/components/Copy/Copy.js +124 -0
- package/es/components/CopyButton/CopyButton.js +67 -0
- package/es/components/DangerButton/DangerButton.js +20 -0
- package/es/components/DataTable/DataTable.js +638 -0
- package/es/components/DataTable/Table.js +90 -0
- package/es/components/DataTable/TableActionList.js +17 -0
- package/es/components/DataTable/TableBatchAction.js +45 -0
- package/es/components/DataTable/TableBatchActions.js +110 -0
- package/es/components/DataTable/TableBody.js +37 -0
- package/es/components/DataTable/TableCell.js +16 -0
- package/es/components/DataTable/TableContainer.js +66 -0
- package/es/components/DataTable/TableExpandHeader.js +86 -0
- package/es/components/DataTable/TableExpandRow.js +93 -0
- package/es/components/DataTable/TableExpandedRow.js +75 -0
- package/es/components/DataTable/TableHead.js +16 -0
- package/es/components/DataTable/TableHeader.js +187 -0
- package/es/components/DataTable/TableRow.js +41 -0
- package/es/components/DataTable/TableSelectAll.js +84 -0
- package/es/components/DataTable/TableSelectRow.js +97 -0
- package/es/components/DataTable/TableToolbar.js +48 -0
- package/es/components/DataTable/TableToolbarAction.js +31 -0
- package/es/components/DataTable/TableToolbarContent.js +17 -0
- package/es/components/DataTable/TableToolbarMenu.js +61 -0
- package/es/components/DataTable/TableToolbarSearch.js +242 -0
- package/es/components/DataTable/index.js +72 -0
- package/es/components/DataTable/state/getDerivedStateFromProps.js +52 -0
- package/es/components/DataTable/state/sortStates.js +19 -0
- package/es/components/DataTable/state/sorting.js +93 -0
- package/es/components/DataTable/tools/cells.js +21 -0
- package/es/components/DataTable/tools/denormalize.js +43 -0
- package/es/components/DataTable/tools/filter.js +42 -0
- package/es/components/DataTable/tools/instanceId.js +21 -0
- package/es/components/DataTable/tools/normalize.js +78 -0
- package/es/components/DataTable/tools/sorting.js +110 -0
- package/es/components/DataTableSkeleton/DataTableSkeleton.js +133 -0
- package/es/components/DatePicker/DatePicker.Skeleton.js +69 -0
- package/es/components/DatePicker/DatePicker.js +622 -0
- package/es/components/DatePicker/index.js +15 -0
- package/es/components/DatePicker/next/DatePicker.js +558 -0
- package/es/components/DatePicker/plugins/appendToPlugin.js +58 -0
- package/es/components/DatePicker/plugins/fixEventsPlugin.js +89 -0
- package/es/components/DatePicker/plugins/rangePlugin.js +51 -0
- package/es/components/DatePickerInput/DatePickerInput.js +271 -0
- package/es/components/DatePickerInput/index.js +15 -0
- package/es/components/DatePickerInput/next/DatePickerInput.js +269 -0
- package/es/components/Dropdown/Dropdown.Skeleton.js +55 -0
- package/es/components/Dropdown/Dropdown.js +327 -0
- package/es/components/ErrorBoundary/ErrorBoundary.js +96 -0
- package/es/components/ErrorBoundary/ErrorBoundaryContext.js +16 -0
- package/es/components/ExpandableSearch/ExpandableSearch.js +67 -0
- package/es/components/ExpandableSearch/index.js +9 -0
- package/es/components/FeatureFlags/index.js +169 -0
- package/es/components/FileUploader/FileUploader.Skeleton.js +43 -0
- package/es/components/FileUploader/FileUploader.js +284 -0
- package/es/components/FileUploader/FileUploaderButton.js +198 -0
- package/es/components/FileUploader/FileUploaderDropContainer.js +223 -0
- package/es/components/FileUploader/FileUploaderItem.js +130 -0
- package/es/components/FileUploader/Filename.js +82 -0
- package/es/components/FileUploader/index.js +14 -0
- package/es/components/FluidForm/FluidForm.js +46 -0
- package/es/components/FluidForm/FormContext.js +14 -0
- package/es/components/Form/Form.js +41 -0
- package/es/components/FormGroup/FormGroup.js +97 -0
- package/es/components/FormItem/FormItem.js +41 -0
- package/es/components/FormLabel/FormLabel.js +48 -0
- package/es/components/Grid/CSSGrid.js +139 -0
- package/es/components/Grid/Column.js +363 -0
- package/es/components/Grid/ColumnHang.js +51 -0
- package/es/components/Grid/FlexGrid.js +76 -0
- package/es/components/Grid/Grid.js +63 -0
- package/es/components/Grid/GridContext.js +60 -0
- package/es/components/Grid/Row.js +65 -0
- package/es/components/Heading/index.js +62 -0
- package/es/components/Icon/Icon.Skeleton.js +45 -0
- package/es/components/IconButton/index.js +89 -0
- package/es/components/InlineCheckbox/InlineCheckbox.js +122 -0
- package/es/components/InlineLoading/InlineLoading.js +118 -0
- package/es/components/Layer/LayerContext.js +12 -0
- package/es/components/Layer/index.js +62 -0
- package/es/components/Link/Link.js +95 -0
- package/es/components/ListBox/ListBox.js +129 -0
- package/es/components/ListBox/ListBoxField.js +62 -0
- package/es/components/ListBox/ListBoxMenu.js +56 -0
- package/es/components/ListBox/ListBoxMenuIcon.js +61 -0
- package/es/components/ListBox/ListBoxMenuItem.js +87 -0
- package/es/components/ListBox/ListBoxPropTypes.js +14 -0
- package/es/components/ListBox/ListBoxSelection.js +148 -0
- package/es/components/ListBox/index.js +20 -0
- package/es/components/ListBox/next/ListBoxSelection.js +155 -0
- package/es/components/ListBox/next/ListBoxTrigger.js +68 -0
- package/es/components/ListItem/ListItem.js +41 -0
- package/es/components/Loading/Loading.js +102 -0
- package/es/components/Menu/Menu.js +328 -0
- package/es/components/Menu/MenuDivider.js +19 -0
- package/es/components/Menu/MenuGroup.js +34 -0
- package/es/components/Menu/MenuItem.js +58 -0
- package/es/components/Menu/MenuOption.js +250 -0
- package/es/components/Menu/MenuRadioGroup.js +50 -0
- package/es/components/Menu/MenuRadioGroupOptions.js +64 -0
- package/es/components/Menu/MenuSelectableItem.js +57 -0
- package/es/components/Menu/_utils.js +177 -0
- package/es/components/Menu/index.js +25 -0
- package/es/components/Modal/Modal.js +343 -0
- package/es/components/Modal/index.js +15 -0
- package/es/components/Modal/next/Modal.js +277 -0
- package/es/components/ModalWrapper/ModalWrapper.js +164 -0
- package/es/components/MultiSelect/FilterableMultiSelect.js +576 -0
- package/es/components/MultiSelect/MultiSelect.js +468 -0
- package/es/components/MultiSelect/MultiSelectPropTypes.js +41 -0
- package/es/components/MultiSelect/index.js +23 -0
- package/es/components/MultiSelect/next/FilterableMultiSelect.js +532 -0
- package/es/components/MultiSelect/tools/itemToString.js +24 -0
- package/es/components/MultiSelect/tools/sorting.js +53 -0
- package/es/components/Notification/Notification.js +530 -0
- package/es/components/Notification/index.js +42 -0
- package/es/components/Notification/next/Notification.js +684 -0
- package/es/components/NumberInput/NumberInput.Skeleton.js +44 -0
- package/es/components/NumberInput/NumberInput.js +515 -0
- package/es/components/OrderedList/OrderedList.js +66 -0
- package/es/components/OverflowMenu/OverflowMenu.js +516 -0
- package/es/components/OverflowMenu/index.js +14 -0
- package/es/components/OverflowMenuItem/OverflowMenuItem.js +221 -0
- package/es/components/OverflowMenuItem/index.js +12 -0
- package/es/components/OverflowMenuV2/index.js +137 -0
- package/es/components/Pagination/Pagination.Skeleton.js +48 -0
- package/es/components/Pagination/Pagination.js +420 -0
- package/es/components/Pagination/experimental/PageSelector.js +81 -0
- package/es/components/Pagination/experimental/Pagination.js +281 -0
- package/es/components/Pagination/index.js +14 -0
- package/es/components/Pagination/next/Pagination.js +401 -0
- package/es/components/PaginationNav/PaginationNav.js +436 -0
- package/es/components/Popover/index.js +118 -0
- package/es/components/PrimaryButton/PrimaryButton.js +20 -0
- package/es/components/ProgressBar/ProgressBar.js +110 -0
- package/es/components/ProgressIndicator/ProgressIndicator.Skeleton.js +50 -0
- package/es/components/ProgressIndicator/ProgressIndicator.js +323 -0
- package/es/components/ProgressIndicator/index.js +15 -0
- package/es/components/ProgressIndicator/next/ProgressIndicator.js +117 -0
- package/es/components/RadioButton/RadioButton.Skeleton.js +37 -0
- package/es/components/RadioButton/RadioButton.js +172 -0
- package/es/components/RadioButton/index.js +15 -0
- package/es/components/RadioButton/next/RadioButton.js +128 -0
- package/es/components/RadioButtonGroup/RadioButtonGroup.js +190 -0
- package/es/components/RadioButtonGroup/index.js +15 -0
- package/es/components/RadioButtonGroup/next/RadioButtonGroup.js +141 -0
- package/es/components/RadioTile/RadioTile.js +147 -0
- package/es/components/Search/Search.Skeleton.js +50 -0
- package/es/components/Search/Search.js +289 -0
- package/es/components/Search/index.js +15 -0
- package/es/components/Search/next/Search.js +263 -0
- package/es/components/SearchFilterButton/SearchFilterButton.js +61 -0
- package/es/components/SearchLayoutButton/SearchLayoutButton.js +151 -0
- package/es/components/SecondaryButton/SecondaryButton.js +20 -0
- package/es/components/Select/Select.Skeleton.js +46 -0
- package/es/components/Select/Select.js +211 -0
- package/es/components/SelectItem/SelectItem.js +70 -0
- package/es/components/SelectItemGroup/SelectItemGroup.js +60 -0
- package/es/components/SkeletonIcon/SkeletonIcon.js +42 -0
- package/es/components/SkeletonPlaceholder/SkeletonPlaceholder.js +37 -0
- package/es/components/SkeletonText/SkeletonText.js +114 -0
- package/es/components/Slider/Slider.Skeleton.js +56 -0
- package/es/components/Slider/Slider.js +649 -0
- package/es/components/Slider/index.js +14 -0
- package/es/components/Stack/Stack.js +102 -0
- package/es/components/Stack/index.js +26 -0
- package/es/components/StructuredList/StructuredList.Skeleton.js +82 -0
- package/es/components/StructuredList/StructuredList.js +307 -0
- package/es/components/StructuredList/index.js +43 -0
- package/es/components/StructuredList/next/StructuredList.js +330 -0
- package/es/components/Switch/Switch.js +124 -0
- package/es/components/Tab/Tab.js +191 -0
- package/es/components/Tab/index.js +15 -0
- package/es/components/TabContent/TabContent.js +77 -0
- package/es/components/Tabs/Tabs.Skeleton.js +53 -0
- package/es/components/Tabs/Tabs.js +618 -0
- package/es/components/Tabs/index.js +19 -0
- package/es/components/Tabs/next/Tabs.Skeleton.js +53 -0
- package/es/components/Tabs/next/Tabs.js +648 -0
- package/es/components/Tabs/next/usePressable.js +145 -0
- package/es/components/Tag/Tag.Skeleton.js +40 -0
- package/es/components/Tag/Tag.js +146 -0
- package/es/components/Text/Text.js +98 -0
- package/es/components/Text/TextDirectionContext.js +12 -0
- package/es/components/Text/createTextComponent.js +33 -0
- package/es/components/Text/index.js +13 -0
- package/es/components/TextArea/TextArea.Skeleton.js +44 -0
- package/es/components/TextArea/TextArea.js +220 -0
- package/es/components/TextInput/ControlledPasswordInput.js +234 -0
- package/es/components/TextInput/PasswordInput.js +286 -0
- package/es/components/TextInput/TextInput.Skeleton.js +44 -0
- package/es/components/TextInput/TextInput.js +239 -0
- package/es/components/TextInput/index.js +20 -0
- package/es/components/TextInput/util.js +33 -0
- package/es/components/Theme/index.js +103 -0
- package/es/components/Tile/Tile.js +767 -0
- package/es/components/Tile/index.js +19 -0
- package/es/components/Tile/next/Tile.js +647 -0
- package/es/components/TileGroup/TileGroup.js +164 -0
- package/es/components/TimePicker/TimePicker.js +256 -0
- package/es/components/TimePicker/index.js +15 -0
- package/es/components/TimePicker/next/TimePicker.js +218 -0
- package/es/components/TimePickerSelect/TimePickerSelect.js +82 -0
- package/es/components/TimePickerSelect/index.js +15 -0
- package/es/components/TimePickerSelect/next/TimePickerSelect.js +77 -0
- package/es/components/Toggle/Toggle.Skeleton.js +74 -0
- package/es/components/Toggle/Toggle.js +120 -0
- package/es/components/Toggle/index.js +19 -0
- package/es/components/Toggle/next/Toggle.js +158 -0
- package/es/components/ToggleSmall/ToggleSmall.Skeleton.js +71 -0
- package/es/components/ToggleSmall/ToggleSmall.js +104 -0
- package/es/components/Toolbar/Toolbar.js +121 -0
- package/es/components/ToolbarSearch/ToolbarSearch.js +168 -0
- package/es/components/Tooltip/next/DefinitionTooltip.js +122 -0
- package/es/components/Tooltip/next/Tooltip.js +154 -0
- package/es/components/TooltipDefinition/TooltipDefinition.js +167 -0
- package/es/components/TooltipIcon/TooltipIcon.js +235 -0
- package/es/components/TreeView/TreeNode.js +325 -0
- package/es/components/TreeView/TreeView.js +252 -0
- package/es/components/TreeView/index.js +13 -0
- package/es/components/UIShell/Content.js +50 -0
- package/es/components/UIShell/Header.js +37 -0
- package/es/components/UIShell/HeaderContainer.js +44 -0
- package/es/components/UIShell/HeaderGlobalAction.js +87 -0
- package/es/components/UIShell/HeaderGlobalBar.js +20 -0
- package/es/components/UIShell/HeaderMenu.js +240 -0
- package/es/components/UIShell/HeaderMenuButton.js +69 -0
- package/es/components/UIShell/HeaderMenuItem.js +73 -0
- package/es/components/UIShell/HeaderName.js +62 -0
- package/es/components/UIShell/HeaderNavigation.js +100 -0
- package/es/components/UIShell/HeaderPanel.js +52 -0
- package/es/components/UIShell/HeaderSideNavItems.js +50 -0
- package/es/components/UIShell/Link.js +49 -0
- package/es/components/UIShell/SideNav.js +227 -0
- package/es/components/UIShell/SideNavDetails.js +46 -0
- package/es/components/UIShell/SideNavDivider.js +30 -0
- package/es/components/UIShell/SideNavFooter.js +78 -0
- package/es/components/UIShell/SideNavHeader.js +50 -0
- package/es/components/UIShell/SideNavIcon.js +49 -0
- package/es/components/UIShell/SideNavItem.js +47 -0
- package/es/components/UIShell/SideNavItems.js +56 -0
- package/es/components/UIShell/SideNavLink.js +74 -0
- package/es/components/UIShell/SideNavLinkText.js +41 -0
- package/es/components/UIShell/SideNavMenu.js +198 -0
- package/es/components/UIShell/SideNavMenuItem.js +57 -0
- package/es/components/UIShell/SideNavSwitcher.js +80 -0
- package/es/components/UIShell/SkipToContent.js +57 -0
- package/es/components/UIShell/Switcher.js +45 -0
- package/es/components/UIShell/SwitcherDivider.js +35 -0
- package/es/components/UIShell/SwitcherItem.js +62 -0
- package/es/components/UIShell/_utils.js +10 -0
- package/es/components/UIShell/index.js +17 -0
- package/es/components/UIShell/next/HeaderNavigation.js +52 -0
- package/es/components/UIShell/next/SideNavMenu.js +160 -0
- package/es/components/UnorderedList/UnorderedList.js +59 -0
- package/es/index.js +190 -2
- package/es/internal/ClickListener.js +101 -0
- package/es/internal/ComponentToggle.js +42 -0
- package/es/internal/FeatureFlags.js +52 -0
- package/es/internal/FloatingMenu.js +483 -0
- package/es/internal/OptimizedResize.js +65 -0
- package/es/internal/Selection.js +243 -0
- package/es/internal/createClassWrapper.js +31 -0
- package/es/internal/deprecateFieldOnObject.js +26 -0
- package/es/internal/environment.js +15 -0
- package/es/internal/focus/index.js +16 -0
- package/es/internal/keyboard/keys.js +65 -0
- package/es/internal/keyboard/match.js +82 -0
- package/es/internal/keyboard/navigation.js +61 -0
- package/es/internal/useControllableState.js +86 -0
- package/es/internal/useDelayedState.js +54 -0
- package/es/internal/useEffectOnce.js +31 -0
- package/es/internal/useId.js +59 -0
- package/es/internal/useIsomorphicEffect.js +13 -0
- package/es/internal/useMatchMedia.js +51 -0
- package/es/internal/useMergedRefs.js +31 -0
- package/es/internal/useNoInteractiveChildren.js +92 -0
- package/es/internal/useNormalizedInputProps.js +88 -0
- package/es/internal/usePrefix.js +15 -0
- package/es/internal/useSavedCallback.js +32 -0
- package/es/internal/warning.js +28 -0
- package/es/internal/wrapFocus.js +75 -0
- package/es/node_modules/flatpickr/dist/l10n/index.js +1423 -0
- package/es/node_modules/flatpickr/dist/plugins/rangePlugin.js +196 -0
- package/es/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +1112 -0
- package/es/node_modules/use-resize-observer/polyfilled.js +112 -0
- package/es/prop-types/AriaPropTypes.js +16 -0
- package/es/prop-types/deprecate.js +33 -0
- package/es/prop-types/isRequiredOneOf.js +47 -0
- package/es/prop-types/requiredIfGivenPropIsTruthy.js +29 -0
- package/es/prop-types/requiredIfValueExists.js +32 -0
- package/es/prop-types/types.js +10 -0
- package/es/tools/array.js +32 -0
- package/es/tools/createPropAdapter.js +63 -0
- package/es/tools/events.js +35 -0
- package/es/tools/mergeRefs.js +31 -0
- package/es/tools/setupGetInstanceId.js +19 -0
- package/es/tools/toggleClass.js +14 -0
- package/es/tools/uniqueId.js +15 -0
- package/es/tools/wrapComponent.js +42 -0
- package/icons/es/index.js +1 -1
- package/icons/lib/index.js +7 -1952
- package/lib/_virtual/ResizeObserver.es.js +17 -0
- package/lib/_virtual/_commonjsHelpers.js +35 -0
- package/lib/_virtual/_rollupPluginBabelHelpers.js +383 -0
- package/lib/{prefix.js → _virtual/index.js} +4 -2
- package/lib/_virtual/rangePlugin.js +14 -0
- package/lib/components/Accordion/Accordion.Skeleton.js +113 -0
- package/lib/components/Accordion/Accordion.js +97 -0
- package/lib/components/Accordion/AccordionItem.js +191 -0
- package/lib/components/Accordion/index.js +16 -0
- package/lib/components/AccordionItem/index.js +16 -0
- package/lib/components/AspectRatio/AspectRatio.js +77 -0
- package/lib/components/Breadcrumb/Breadcrumb.Skeleton.js +55 -0
- package/lib/components/Breadcrumb/Breadcrumb.js +68 -0
- package/lib/components/Breadcrumb/BreadcrumbItem.js +104 -0
- package/lib/components/Button/Button.Skeleton.js +100 -0
- package/lib/components/Button/Button.js +380 -0
- package/lib/components/ButtonSet/ButtonSet.js +58 -0
- package/lib/components/Checkbox/Checkbox.Skeleton.js +46 -0
- package/lib/components/Checkbox/Checkbox.js +146 -0
- package/lib/components/CodeSnippet/CodeSnippet.Skeleton.js +68 -0
- package/lib/components/CodeSnippet/CodeSnippet.js +383 -0
- package/lib/components/ComboBox/ComboBox.js +543 -0
- package/lib/components/ComboBox/tools/filter.js +24 -0
- package/lib/components/ComposedModal/ComposedModal.js +643 -0
- package/lib/components/ComposedModal/index.js +45 -0
- package/lib/components/ComposedModal/next/ComposedModal.js +234 -0
- package/lib/components/ComposedModal/next/ModalFooter.js +223 -0
- package/lib/components/ComposedModal/next/ModalHeader.js +137 -0
- package/lib/components/ContentSwitcher/ContentSwitcher.js +195 -0
- package/lib/components/ContextMenu/useContextMenu.js +61 -0
- package/lib/components/Copy/Copy.js +154 -0
- package/lib/components/CopyButton/CopyButton.js +77 -0
- package/lib/components/DangerButton/DangerButton.js +28 -0
- package/lib/components/DataTable/DataTable.js +667 -0
- package/lib/components/DataTable/Table.js +120 -0
- package/lib/components/DataTable/TableActionList.js +21 -0
- package/lib/components/DataTable/TableBatchAction.js +54 -0
- package/lib/components/DataTable/TableBatchActions.js +120 -0
- package/lib/components/DataTable/TableBody.js +46 -0
- package/lib/components/DataTable/TableCell.js +20 -0
- package/lib/components/DataTable/TableContainer.js +76 -0
- package/lib/components/DataTable/TableExpandHeader.js +96 -0
- package/lib/components/DataTable/TableExpandRow.js +103 -0
- package/lib/components/DataTable/TableExpandedRow.js +85 -0
- package/lib/components/DataTable/TableHead.js +20 -0
- package/lib/components/DataTable/TableHeader.js +197 -0
- package/lib/components/DataTable/TableRow.js +52 -0
- package/lib/components/DataTable/TableSelectAll.js +94 -0
- package/lib/components/DataTable/TableSelectRow.js +107 -0
- package/lib/components/DataTable/TableToolbar.js +77 -0
- package/lib/components/DataTable/TableToolbarAction.js +40 -0
- package/lib/components/DataTable/TableToolbarContent.js +21 -0
- package/lib/components/DataTable/TableToolbarMenu.js +71 -0
- package/lib/components/DataTable/TableToolbarSearch.js +252 -0
- package/lib/components/DataTable/index.js +76 -0
- package/lib/components/DataTable/state/getDerivedStateFromProps.js +56 -0
- package/lib/components/DataTable/state/sortStates.js +23 -0
- package/lib/components/DataTable/state/sorting.js +100 -0
- package/lib/components/DataTable/tools/cells.js +25 -0
- package/lib/components/DataTable/tools/denormalize.js +47 -0
- package/lib/components/DataTable/tools/filter.js +46 -0
- package/lib/components/DataTable/tools/instanceId.js +25 -0
- package/lib/components/DataTable/tools/normalize.js +82 -0
- package/lib/components/DataTable/tools/sorting.js +117 -0
- package/lib/components/DataTableSkeleton/DataTableSkeleton.js +143 -0
- package/lib/components/DatePicker/DatePicker.Skeleton.js +79 -0
- package/lib/components/DatePicker/DatePicker.js +633 -0
- package/lib/components/DatePicker/index.js +39 -0
- package/lib/components/DatePicker/next/DatePicker.js +569 -0
- package/lib/components/DatePicker/plugins/appendToPlugin.js +62 -0
- package/lib/components/DatePicker/plugins/fixEventsPlugin.js +93 -0
- package/lib/components/DatePicker/plugins/rangePlugin.js +55 -0
- package/lib/components/DatePickerInput/DatePickerInput.js +281 -0
- package/lib/components/DatePickerInput/index.js +39 -0
- package/lib/components/DatePickerInput/next/DatePickerInput.js +279 -0
- package/lib/components/Dropdown/Dropdown.Skeleton.js +65 -0
- package/lib/components/Dropdown/Dropdown.js +337 -0
- package/lib/components/ErrorBoundary/ErrorBoundary.js +105 -0
- package/lib/components/ErrorBoundary/ErrorBoundaryContext.js +20 -0
- package/lib/components/ExpandableSearch/ExpandableSearch.js +76 -0
- package/lib/components/ExpandableSearch/index.js +16 -0
- package/lib/components/FeatureFlags/index.js +181 -0
- package/lib/components/FileUploader/FileUploader.Skeleton.js +53 -0
- package/lib/components/FileUploader/FileUploader.js +313 -0
- package/lib/components/FileUploader/FileUploaderButton.js +227 -0
- package/lib/components/FileUploader/FileUploaderDropContainer.js +233 -0
- package/lib/components/FileUploader/FileUploaderItem.js +159 -0
- package/lib/components/FileUploader/Filename.js +91 -0
- package/lib/components/FileUploader/index.js +38 -0
- package/lib/components/FluidForm/FluidForm.js +56 -0
- package/lib/components/FluidForm/FormContext.js +18 -0
- package/lib/components/Form/Form.js +51 -0
- package/lib/components/FormGroup/FormGroup.js +107 -0
- package/lib/components/FormItem/FormItem.js +51 -0
- package/lib/components/FormLabel/FormLabel.js +77 -0
- package/lib/components/Grid/CSSGrid.js +149 -0
- package/lib/components/Grid/Column.js +392 -0
- package/lib/components/Grid/ColumnHang.js +61 -0
- package/lib/components/Grid/FlexGrid.js +86 -0
- package/lib/components/Grid/Grid.js +72 -0
- package/lib/components/Grid/GridContext.js +88 -0
- package/lib/components/Grid/Row.js +75 -0
- package/lib/components/Heading/index.js +72 -0
- package/lib/components/Icon/Icon.Skeleton.js +55 -0
- package/lib/components/IconButton/index.js +98 -0
- package/lib/components/InlineCheckbox/InlineCheckbox.js +131 -0
- package/lib/components/InlineLoading/InlineLoading.js +128 -0
- package/lib/components/Layer/LayerContext.js +20 -0
- package/lib/components/Layer/index.js +72 -0
- package/lib/components/Link/Link.js +105 -0
- package/lib/components/ListBox/ListBox.js +139 -0
- package/lib/components/ListBox/ListBoxField.js +71 -0
- package/lib/components/ListBox/ListBoxMenu.js +65 -0
- package/lib/components/ListBox/ListBoxMenuIcon.js +72 -0
- package/lib/components/ListBox/ListBoxMenuItem.js +97 -0
- package/lib/components/ListBox/ListBoxPropTypes.js +42 -0
- package/lib/components/ListBox/ListBoxSelection.js +159 -0
- package/lib/components/ListBox/index.js +25 -0
- package/lib/components/ListBox/next/ListBoxSelection.js +166 -0
- package/lib/components/ListBox/next/ListBoxTrigger.js +79 -0
- package/lib/components/ListItem/ListItem.js +51 -0
- package/lib/components/Loading/Loading.js +112 -0
- package/lib/components/Menu/Menu.js +339 -0
- package/lib/components/Menu/MenuDivider.js +27 -0
- package/lib/components/Menu/MenuGroup.js +43 -0
- package/lib/components/Menu/MenuItem.js +67 -0
- package/lib/components/Menu/MenuOption.js +260 -0
- package/lib/components/Menu/MenuRadioGroup.js +59 -0
- package/lib/components/Menu/MenuRadioGroupOptions.js +73 -0
- package/lib/components/Menu/MenuSelectableItem.js +66 -0
- package/lib/components/Menu/_utils.js +191 -0
- package/lib/components/Menu/index.js +30 -0
- package/lib/components/Modal/Modal.js +353 -0
- package/lib/components/Modal/index.js +39 -0
- package/lib/components/Modal/next/Modal.js +287 -0
- package/lib/components/ModalWrapper/ModalWrapper.js +173 -0
- package/lib/components/MultiSelect/FilterableMultiSelect.js +588 -0
- package/lib/components/MultiSelect/MultiSelect.js +480 -0
- package/lib/components/MultiSelect/MultiSelectPropTypes.js +49 -0
- package/lib/components/MultiSelect/index.js +47 -0
- package/lib/components/MultiSelect/next/FilterableMultiSelect.js +544 -0
- package/lib/components/MultiSelect/tools/itemToString.js +32 -0
- package/lib/components/MultiSelect/tools/sorting.js +58 -0
- package/lib/components/Notification/Notification.js +544 -0
- package/lib/components/Notification/index.js +51 -0
- package/lib/components/Notification/next/Notification.js +698 -0
- package/lib/components/NumberInput/NumberInput.Skeleton.js +54 -0
- package/lib/components/NumberInput/NumberInput.js +546 -0
- package/lib/components/OrderedList/OrderedList.js +76 -0
- package/lib/components/OverflowMenu/OverflowMenu.js +547 -0
- package/lib/components/OverflowMenu/index.js +38 -0
- package/lib/components/OverflowMenuItem/OverflowMenuItem.js +250 -0
- package/lib/components/OverflowMenuItem/index.js +16 -0
- package/lib/components/OverflowMenuV2/index.js +147 -0
- package/lib/components/Pagination/Pagination.Skeleton.js +58 -0
- package/lib/components/Pagination/Pagination.js +430 -0
- package/lib/components/Pagination/experimental/PageSelector.js +91 -0
- package/lib/components/Pagination/experimental/Pagination.js +310 -0
- package/lib/components/Pagination/index.js +38 -0
- package/lib/components/Pagination/next/Pagination.js +411 -0
- package/lib/components/PaginationNav/PaginationNav.js +465 -0
- package/lib/components/Popover/index.js +129 -0
- package/lib/components/PrimaryButton/PrimaryButton.js +28 -0
- package/lib/components/ProgressBar/ProgressBar.js +120 -0
- package/lib/components/ProgressIndicator/ProgressIndicator.Skeleton.js +60 -0
- package/lib/components/ProgressIndicator/ProgressIndicator.js +334 -0
- package/lib/components/ProgressIndicator/index.js +39 -0
- package/lib/components/ProgressIndicator/next/ProgressIndicator.js +127 -0
- package/lib/components/RadioButton/RadioButton.Skeleton.js +47 -0
- package/lib/components/RadioButton/RadioButton.js +183 -0
- package/lib/components/RadioButton/index.js +39 -0
- package/lib/components/RadioButton/next/RadioButton.js +138 -0
- package/lib/components/RadioButtonGroup/RadioButtonGroup.js +200 -0
- package/lib/components/RadioButtonGroup/index.js +39 -0
- package/lib/components/RadioButtonGroup/next/RadioButtonGroup.js +151 -0
- package/lib/components/RadioTile/RadioTile.js +157 -0
- package/lib/components/Search/Search.Skeleton.js +60 -0
- package/lib/components/Search/Search.js +299 -0
- package/lib/components/Search/index.js +39 -0
- package/lib/components/Search/next/Search.js +273 -0
- package/lib/components/SearchFilterButton/SearchFilterButton.js +70 -0
- package/lib/components/SearchLayoutButton/SearchLayoutButton.js +160 -0
- package/lib/components/SecondaryButton/SecondaryButton.js +28 -0
- package/lib/components/Select/Select.Skeleton.js +56 -0
- package/lib/components/Select/Select.js +240 -0
- package/lib/components/SelectItem/SelectItem.js +80 -0
- package/lib/components/SelectItemGroup/SelectItemGroup.js +89 -0
- package/lib/components/SkeletonIcon/SkeletonIcon.js +52 -0
- package/lib/components/SkeletonPlaceholder/SkeletonPlaceholder.js +47 -0
- package/lib/components/SkeletonText/SkeletonText.js +124 -0
- package/lib/components/Slider/Slider.Skeleton.js +66 -0
- package/lib/components/Slider/Slider.js +679 -0
- package/lib/components/Slider/index.js +38 -0
- package/lib/components/Stack/Stack.js +112 -0
- package/lib/components/Stack/index.js +35 -0
- package/lib/components/StructuredList/StructuredList.Skeleton.js +92 -0
- package/lib/components/StructuredList/StructuredList.js +322 -0
- package/lib/components/StructuredList/index.js +52 -0
- package/lib/components/StructuredList/next/StructuredList.js +345 -0
- package/lib/components/Switch/Switch.js +134 -0
- package/lib/components/Tab/Tab.js +220 -0
- package/lib/components/Tab/index.js +39 -0
- package/lib/components/TabContent/TabContent.js +87 -0
- package/lib/components/Tabs/Tabs.Skeleton.js +63 -0
- package/lib/components/Tabs/Tabs.js +629 -0
- package/lib/components/Tabs/index.js +47 -0
- package/lib/components/Tabs/next/Tabs.Skeleton.js +63 -0
- package/lib/components/Tabs/next/Tabs.js +664 -0
- package/lib/components/Tabs/next/usePressable.js +149 -0
- package/lib/components/Tag/Tag.Skeleton.js +50 -0
- package/lib/components/Tag/Tag.js +156 -0
- package/lib/components/Text/Text.js +107 -0
- package/lib/components/Text/TextDirectionContext.js +16 -0
- package/lib/components/Text/createTextComponent.js +41 -0
- package/lib/components/Text/index.js +17 -0
- package/lib/components/TextArea/TextArea.Skeleton.js +54 -0
- package/lib/components/TextArea/TextArea.js +230 -0
- package/lib/components/TextInput/ControlledPasswordInput.js +244 -0
- package/lib/components/TextInput/PasswordInput.js +315 -0
- package/lib/components/TextInput/TextInput.Skeleton.js +54 -0
- package/lib/components/TextInput/TextInput.js +268 -0
- package/lib/components/TextInput/index.js +25 -0
- package/lib/components/TextInput/util.js +37 -0
- package/lib/components/Theme/index.js +116 -0
- package/lib/components/Tile/Tile.js +782 -0
- package/lib/components/Tile/index.js +48 -0
- package/lib/components/Tile/next/Tile.js +662 -0
- package/lib/components/TileGroup/TileGroup.js +173 -0
- package/lib/components/TimePicker/TimePicker.js +266 -0
- package/lib/components/TimePicker/index.js +39 -0
- package/lib/components/TimePicker/next/TimePicker.js +228 -0
- package/lib/components/TimePickerSelect/TimePickerSelect.js +92 -0
- package/lib/components/TimePickerSelect/index.js +39 -0
- package/lib/components/TimePickerSelect/next/TimePickerSelect.js +87 -0
- package/lib/components/Toggle/Toggle.Skeleton.js +84 -0
- package/lib/components/Toggle/Toggle.js +130 -0
- package/lib/components/Toggle/index.js +23 -0
- package/lib/components/Toggle/next/Toggle.js +169 -0
- package/lib/components/ToggleSmall/ToggleSmall.Skeleton.js +81 -0
- package/lib/components/ToggleSmall/ToggleSmall.js +114 -0
- package/lib/components/Toolbar/Toolbar.js +135 -0
- package/lib/components/ToolbarSearch/ToolbarSearch.js +178 -0
- package/lib/components/Tooltip/next/DefinitionTooltip.js +132 -0
- package/lib/components/Tooltip/next/Tooltip.js +164 -0
- package/lib/components/TooltipDefinition/TooltipDefinition.js +178 -0
- package/lib/components/TooltipIcon/TooltipIcon.js +245 -0
- package/lib/components/TreeView/TreeNode.js +335 -0
- package/lib/components/TreeView/TreeView.js +281 -0
- package/lib/components/TreeView/index.js +18 -0
- package/lib/components/UIShell/Content.js +60 -0
- package/lib/components/UIShell/Header.js +47 -0
- package/lib/components/UIShell/HeaderContainer.js +53 -0
- package/lib/components/UIShell/HeaderGlobalAction.js +97 -0
- package/lib/components/UIShell/HeaderGlobalBar.js +24 -0
- package/lib/components/UIShell/HeaderMenu.js +250 -0
- package/lib/components/UIShell/HeaderMenuButton.js +79 -0
- package/lib/components/UIShell/HeaderMenuItem.js +83 -0
- package/lib/components/UIShell/HeaderName.js +72 -0
- package/lib/components/UIShell/HeaderNavigation.js +110 -0
- package/lib/components/UIShell/HeaderPanel.js +62 -0
- package/lib/components/UIShell/HeaderSideNavItems.js +60 -0
- package/lib/components/UIShell/Link.js +59 -0
- package/lib/components/UIShell/SideNav.js +237 -0
- package/lib/components/UIShell/SideNavDetails.js +56 -0
- package/lib/components/UIShell/SideNavDivider.js +40 -0
- package/lib/components/UIShell/SideNavFooter.js +88 -0
- package/lib/components/UIShell/SideNavHeader.js +60 -0
- package/lib/components/UIShell/SideNavIcon.js +59 -0
- package/lib/components/UIShell/SideNavItem.js +57 -0
- package/lib/components/UIShell/SideNavItems.js +66 -0
- package/lib/components/UIShell/SideNavLink.js +84 -0
- package/lib/components/UIShell/SideNavLinkText.js +51 -0
- package/lib/components/UIShell/SideNavMenu.js +209 -0
- package/lib/components/UIShell/SideNavMenuItem.js +67 -0
- package/lib/components/UIShell/SideNavSwitcher.js +90 -0
- package/lib/components/UIShell/SkipToContent.js +67 -0
- package/lib/components/UIShell/Switcher.js +55 -0
- package/lib/components/UIShell/SwitcherDivider.js +45 -0
- package/lib/components/UIShell/SwitcherItem.js +72 -0
- package/lib/components/UIShell/_utils.js +14 -0
- package/lib/components/UIShell/index.js +42 -0
- package/lib/components/UIShell/next/HeaderNavigation.js +62 -0
- package/lib/components/UIShell/next/SideNavMenu.js +170 -0
- package/lib/components/UnorderedList/UnorderedList.js +69 -0
- package/lib/index.js +409 -858
- package/lib/internal/ClickListener.js +110 -0
- package/lib/internal/ComponentToggle.js +50 -0
- package/lib/internal/FeatureFlags.js +56 -0
- package/lib/internal/FloatingMenu.js +498 -0
- package/lib/internal/OptimizedResize.js +73 -0
- package/lib/internal/Selection.js +254 -0
- package/lib/internal/createClassWrapper.js +39 -0
- package/lib/internal/deprecateFieldOnObject.js +30 -0
- package/lib/internal/environment.js +19 -0
- package/lib/internal/focus/index.js +20 -0
- package/lib/internal/keyboard/keys.js +79 -0
- package/lib/internal/keyboard/match.js +87 -0
- package/lib/internal/keyboard/navigation.js +69 -0
- package/lib/internal/useControllableState.js +90 -0
- package/lib/internal/useDelayedState.js +58 -0
- package/lib/internal/useEffectOnce.js +35 -0
- package/lib/internal/useId.js +64 -0
- package/lib/internal/useIsomorphicEffect.js +17 -0
- package/lib/internal/useMatchMedia.js +55 -0
- package/lib/internal/useMergedRefs.js +35 -0
- package/lib/internal/useNoInteractiveChildren.js +97 -0
- package/lib/internal/useNormalizedInputProps.js +96 -0
- package/lib/internal/usePrefix.js +24 -0
- package/lib/internal/useSavedCallback.js +36 -0
- package/lib/internal/warning.js +32 -0
- package/lib/internal/wrapFocus.js +84 -0
- package/lib/node_modules/flatpickr/dist/l10n/index.js +1427 -0
- package/lib/node_modules/flatpickr/dist/plugins/rangePlugin.js +200 -0
- package/lib/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +1116 -0
- package/lib/node_modules/use-resize-observer/polyfilled.js +120 -0
- package/lib/prop-types/AriaPropTypes.js +24 -0
- package/lib/prop-types/deprecate.js +37 -0
- package/lib/prop-types/isRequiredOneOf.js +51 -0
- package/lib/prop-types/requiredIfGivenPropIsTruthy.js +33 -0
- package/lib/prop-types/requiredIfValueExists.js +36 -0
- package/lib/prop-types/types.js +14 -0
- package/lib/tools/array.js +36 -0
- package/lib/tools/createPropAdapter.js +67 -0
- package/lib/tools/events.js +39 -0
- package/lib/tools/mergeRefs.js +35 -0
- package/lib/tools/setupGetInstanceId.js +23 -0
- package/lib/tools/toggleClass.js +18 -0
- package/lib/tools/uniqueId.js +19 -0
- package/lib/tools/wrapComponent.js +52 -0
- package/package.json +50 -20
- package/scss/grid/_css-grid.scss +9 -0
- package/scss/grid/{_config.scss → _mixins.scss} +1 -1
- package/icons/es/icon-helpers/es/index.js +0 -141
- package/icons/es/icons-react/next/index.esm.js +0 -14
- package/icons/lib/icon-helpers/es/index.js +0 -146
- package/icons/lib/icons-react/next/index.esm.js +0 -1973
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright IBM Corp. 2016, 2021
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { slicedToArray as _slicedToArray } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
|
+
import PropTypes from 'prop-types';
|
|
10
|
+
import React__default, { useState, useCallback } from 'react';
|
|
11
|
+
|
|
12
|
+
var HeaderContainer = function HeaderContainer(_ref) {
|
|
13
|
+
var isSideNavExpanded = _ref.isSideNavExpanded,
|
|
14
|
+
Children = _ref.render;
|
|
15
|
+
|
|
16
|
+
//state for expandable sidenav
|
|
17
|
+
var _useState = useState(isSideNavExpanded),
|
|
18
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
19
|
+
isSideNavExpandedState = _useState2[0],
|
|
20
|
+
setIsSideNavExpandedState = _useState2[1];
|
|
21
|
+
|
|
22
|
+
var handleHeaderMenuButtonClick = useCallback(function () {
|
|
23
|
+
setIsSideNavExpandedState(function (prevIsSideNavExpanded) {
|
|
24
|
+
return !prevIsSideNavExpanded;
|
|
25
|
+
});
|
|
26
|
+
}, [setIsSideNavExpandedState]);
|
|
27
|
+
return /*#__PURE__*/React__default.createElement(Children, {
|
|
28
|
+
isSideNavExpanded: isSideNavExpandedState,
|
|
29
|
+
onClickSideNavExpand: handleHeaderMenuButtonClick
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
HeaderContainer.propTypes = {
|
|
34
|
+
/**
|
|
35
|
+
* Optionally provide a custom class name that is applied to the underlying <header>
|
|
36
|
+
*/
|
|
37
|
+
isSideNavExpanded: PropTypes.bool
|
|
38
|
+
};
|
|
39
|
+
HeaderContainer.defaultProps = {
|
|
40
|
+
isSideNavExpanded: false
|
|
41
|
+
};
|
|
42
|
+
var HeaderContainer$1 = HeaderContainer;
|
|
43
|
+
|
|
44
|
+
export { HeaderContainer$1 as default };
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright IBM Corp. 2016, 2021
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { objectWithoutProperties as _objectWithoutProperties, defineProperty as _defineProperty, extends as _extends, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
|
+
import cx from 'classnames';
|
|
10
|
+
import React__default from 'react';
|
|
11
|
+
import PropTypes from 'prop-types';
|
|
12
|
+
import { AriaLabelPropType } from '../../prop-types/AriaPropTypes.js';
|
|
13
|
+
import Button from '../Button/Button.js';
|
|
14
|
+
import { usePrefix } from '../../internal/usePrefix.js';
|
|
15
|
+
|
|
16
|
+
var _excluded = ["aria-label", "aria-labelledby", "children", "className", "onClick", "isActive", "tooltipAlignment"];
|
|
17
|
+
/**
|
|
18
|
+
* HeaderGlobalAction is used as a part of the `HeaderGlobalBar`. It is
|
|
19
|
+
* essentially an Icon Button with an additional state to indicate whether it is
|
|
20
|
+
* "active". The active state comes from when a user clicks on the global action
|
|
21
|
+
* which should trigger a panel to appear.
|
|
22
|
+
*
|
|
23
|
+
* Note: children passed to this component should be an Icon.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
var HeaderGlobalAction = /*#__PURE__*/React__default.forwardRef(function HeaderGlobalAction(_ref, ref) {
|
|
27
|
+
var _cx;
|
|
28
|
+
|
|
29
|
+
var ariaLabel = _ref['aria-label'],
|
|
30
|
+
ariaLabelledBy = _ref['aria-labelledby'],
|
|
31
|
+
children = _ref.children,
|
|
32
|
+
customClassName = _ref.className,
|
|
33
|
+
onClick = _ref.onClick,
|
|
34
|
+
isActive = _ref.isActive,
|
|
35
|
+
tooltipAlignment = _ref.tooltipAlignment,
|
|
36
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
37
|
+
|
|
38
|
+
var prefix = usePrefix();
|
|
39
|
+
var className = cx((_cx = {}, _defineProperty(_cx, customClassName, !!customClassName), _defineProperty(_cx, "".concat(prefix, "--header__action"), true), _defineProperty(_cx, "".concat(prefix, "--header__action--active"), isActive), _cx));
|
|
40
|
+
var accessibilityLabel = {
|
|
41
|
+
'aria-label': ariaLabel,
|
|
42
|
+
'aria-labelledby': ariaLabelledBy
|
|
43
|
+
};
|
|
44
|
+
return /*#__PURE__*/React__default.createElement(Button, _extends({}, rest, accessibilityLabel, {
|
|
45
|
+
className: className,
|
|
46
|
+
onClick: onClick,
|
|
47
|
+
type: "button",
|
|
48
|
+
hasIconOnly: true,
|
|
49
|
+
iconDescription: ariaLabel,
|
|
50
|
+
tooltipPosition: "bottom",
|
|
51
|
+
tooltipAlignment: tooltipAlignment,
|
|
52
|
+
ref: ref
|
|
53
|
+
}), children);
|
|
54
|
+
});
|
|
55
|
+
HeaderGlobalAction.propTypes = _objectSpread2(_objectSpread2({}, AriaLabelPropType), {}, {
|
|
56
|
+
/**
|
|
57
|
+
* Provide a custom icon for this global action
|
|
58
|
+
*/
|
|
59
|
+
children: PropTypes.node.isRequired,
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Optionally provide a custom class name that is applied to the underlying
|
|
63
|
+
* button
|
|
64
|
+
*/
|
|
65
|
+
className: PropTypes.string,
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Specify whether the action is currently active
|
|
69
|
+
*/
|
|
70
|
+
isActive: PropTypes.bool,
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Optionally provide an onClick handler that is called when the underlying
|
|
74
|
+
* button fires it's onclick event
|
|
75
|
+
*/
|
|
76
|
+
onClick: PropTypes.func,
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Specify the alignment of the tooltip to the icon-only button.
|
|
80
|
+
* Can be one of: start, center, or end.
|
|
81
|
+
*/
|
|
82
|
+
tooltipAlignment: PropTypes.oneOf(['start', 'center', 'end'])
|
|
83
|
+
});
|
|
84
|
+
HeaderGlobalAction.displayName = 'HeaderGlobalAction';
|
|
85
|
+
var HeaderGlobalAction$1 = HeaderGlobalAction;
|
|
86
|
+
|
|
87
|
+
export { HeaderGlobalAction$1 as default };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright IBM Corp. 2016, 2021
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import wrapComponent from '../../tools/wrapComponent.js';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Generic container for `HeaderGlobalAction` components
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
var HeaderGlobalBar = wrapComponent({
|
|
15
|
+
name: 'HeaderGlobalBar',
|
|
16
|
+
className: "cds--header__global",
|
|
17
|
+
type: 'div'
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
export { HeaderGlobalBar as default };
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright IBM Corp. 2016, 2021
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { inherits as _inherits, createSuper as _createSuper, classCallCheck as _classCallCheck, defineProperty as _defineProperty, assertThisInitialized as _assertThisInitialized, createClass as _createClass, objectSpread2 as _objectSpread2, extends as _extends, objectWithoutProperties as _objectWithoutProperties } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
|
+
import { ChevronDown } from '@carbon/icons-react';
|
|
10
|
+
import cx from 'classnames';
|
|
11
|
+
import React__default from 'react';
|
|
12
|
+
import PropTypes from 'prop-types';
|
|
13
|
+
import { AriaLabelPropType } from '../../prop-types/AriaPropTypes.js';
|
|
14
|
+
import { PrefixContext } from '../../internal/usePrefix.js';
|
|
15
|
+
import { matches } from '../../internal/keyboard/match.js';
|
|
16
|
+
import { Enter, Space, Escape } from '../../internal/keyboard/keys.js';
|
|
17
|
+
|
|
18
|
+
var _excluded = ["isCurrentPage", "aria-label", "aria-labelledby", "className", "children", "renderMenuContent", "menuLinkName", "focusRef"];
|
|
19
|
+
/**
|
|
20
|
+
* `HeaderMenu` is used to render submenu's in the `Header`. Most often children
|
|
21
|
+
* will be a `HeaderMenuItem`. It handles certain keyboard events to help
|
|
22
|
+
* with managing focus. It also passes along refs to each child so that it can
|
|
23
|
+
* help manage focus state of its children.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
var HeaderMenu = /*#__PURE__*/function (_React$Component) {
|
|
27
|
+
_inherits(HeaderMenu, _React$Component);
|
|
28
|
+
|
|
29
|
+
var _super = _createSuper(HeaderMenu);
|
|
30
|
+
|
|
31
|
+
function HeaderMenu(props) {
|
|
32
|
+
var _this;
|
|
33
|
+
|
|
34
|
+
_classCallCheck(this, HeaderMenu);
|
|
35
|
+
|
|
36
|
+
_this = _super.call(this, props);
|
|
37
|
+
|
|
38
|
+
_defineProperty(_assertThisInitialized(_this), "_subMenus", /*#__PURE__*/React__default.createRef());
|
|
39
|
+
|
|
40
|
+
_defineProperty(_assertThisInitialized(_this), "handleOnClick", function (e) {
|
|
41
|
+
var subMenusNode = _this._subMenus.current;
|
|
42
|
+
|
|
43
|
+
if (!subMenusNode || !subMenusNode.contains(e.target)) {
|
|
44
|
+
e.preventDefault();
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
_this.setState(function (prevState) {
|
|
48
|
+
return {
|
|
49
|
+
expanded: !prevState.expanded
|
|
50
|
+
};
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
_defineProperty(_assertThisInitialized(_this), "handleOnKeyDown", function (event) {
|
|
55
|
+
// Handle enter or space key for toggling the expanded state of the menu.
|
|
56
|
+
if (matches(event, [Enter, Space])) {
|
|
57
|
+
event.stopPropagation();
|
|
58
|
+
event.preventDefault();
|
|
59
|
+
|
|
60
|
+
_this.setState(function (prevState) {
|
|
61
|
+
return {
|
|
62
|
+
expanded: !prevState.expanded
|
|
63
|
+
};
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
_defineProperty(_assertThisInitialized(_this), "handleOnBlur", function (event) {
|
|
71
|
+
// Rough guess for a blur event that is triggered outside of our menu or
|
|
72
|
+
// menubar context
|
|
73
|
+
var itemTriggeredBlur = _this.items.find(function (element) {
|
|
74
|
+
return element === event.relatedTarget;
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
if (event.relatedTarget && (event.relatedTarget.getAttribute('href') && event.relatedTarget.getAttribute('href') !== '#' || itemTriggeredBlur)) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
_this.setState({
|
|
82
|
+
expanded: false,
|
|
83
|
+
selectedIndex: null
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
_defineProperty(_assertThisInitialized(_this), "handleMenuButtonRef", function (node) {
|
|
88
|
+
if (_this.props.focusRef) {
|
|
89
|
+
_this.props.focusRef(node);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
_this.menuButtonRef = node;
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
_defineProperty(_assertThisInitialized(_this), "handleItemRef", function (index) {
|
|
96
|
+
return function (node) {
|
|
97
|
+
_this.items[index] = node;
|
|
98
|
+
};
|
|
99
|
+
});
|
|
100
|
+
|
|
101
|
+
_defineProperty(_assertThisInitialized(_this), "handleMenuClose", function (event) {
|
|
102
|
+
// Handle ESC keydown for closing the expanded menu.
|
|
103
|
+
if (matches(event, [Escape]) && _this.state.expanded) {
|
|
104
|
+
event.stopPropagation();
|
|
105
|
+
event.preventDefault();
|
|
106
|
+
|
|
107
|
+
_this.setState(function () {
|
|
108
|
+
return {
|
|
109
|
+
expanded: false,
|
|
110
|
+
selectedIndex: null
|
|
111
|
+
};
|
|
112
|
+
}); // Return focus to menu button when the user hits ESC.
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
_this.menuButtonRef.focus();
|
|
116
|
+
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
_defineProperty(_assertThisInitialized(_this), "_renderMenuItem", function (item, index) {
|
|
122
|
+
if ( /*#__PURE__*/React__default.isValidElement(item)) {
|
|
123
|
+
return /*#__PURE__*/React__default.cloneElement(item, {
|
|
124
|
+
ref: _this.handleItemRef(index)
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
|
|
129
|
+
_this.state = {
|
|
130
|
+
// Used to manage the expansion state of the menu
|
|
131
|
+
expanded: false,
|
|
132
|
+
// Refers to the menuitem that is currently focused
|
|
133
|
+
// Note: children should have `role="menuitem"` on node consuming ref
|
|
134
|
+
selectedIndex: null
|
|
135
|
+
};
|
|
136
|
+
_this.items = [];
|
|
137
|
+
return _this;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Toggle the expanded state of the menu on click.
|
|
141
|
+
*/
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
_createClass(HeaderMenu, [{
|
|
145
|
+
key: "render",
|
|
146
|
+
value: function render() {
|
|
147
|
+
var _cx;
|
|
148
|
+
|
|
149
|
+
var prefix = this.context;
|
|
150
|
+
|
|
151
|
+
var _this$props = this.props,
|
|
152
|
+
isCurrentPage = _this$props.isCurrentPage,
|
|
153
|
+
ariaLabel = _this$props['aria-label'],
|
|
154
|
+
ariaLabelledBy = _this$props['aria-labelledby'],
|
|
155
|
+
customClassName = _this$props.className,
|
|
156
|
+
children = _this$props.children,
|
|
157
|
+
MenuContent = _this$props.renderMenuContent,
|
|
158
|
+
menuLinkName = _this$props.menuLinkName;
|
|
159
|
+
_this$props.focusRef;
|
|
160
|
+
var rest = _objectWithoutProperties(_this$props, _excluded);
|
|
161
|
+
|
|
162
|
+
var accessibilityLabel = {
|
|
163
|
+
'aria-label': ariaLabel,
|
|
164
|
+
'aria-labelledby': ariaLabelledBy
|
|
165
|
+
};
|
|
166
|
+
var className = cx((_cx = {}, _defineProperty(_cx, "".concat(prefix, "--header__submenu"), true), _defineProperty(_cx, customClassName, true), _defineProperty(_cx, "".concat(prefix, "--header__submenu--current"), isCurrentPage), _cx)); // Notes on eslint comments and based on the examples in:
|
|
167
|
+
// https://www.w3.org/TR/wai-aria-practices/examples/menubar/menubar-1/menubar-1.html#
|
|
168
|
+
// - The focus is handled by the <a> menuitem, onMouseOver is for mouse
|
|
169
|
+
// users
|
|
170
|
+
// - aria-haspopup can definitely have the value "menu"
|
|
171
|
+
// - aria-expanded is on their example node with role="menuitem"
|
|
172
|
+
// - href can be set to javascript:void(0), ideally this will be a button
|
|
173
|
+
|
|
174
|
+
return /*#__PURE__*/React__default.createElement("li", _extends({}, rest, {
|
|
175
|
+
className: className,
|
|
176
|
+
onKeyDown: this.handleMenuClose,
|
|
177
|
+
onClick: this.handleOnClick,
|
|
178
|
+
onBlur: this.handleOnBlur
|
|
179
|
+
}), /*#__PURE__*/React__default.createElement("a", _extends({
|
|
180
|
+
// eslint-disable-line jsx-a11y/role-supports-aria-props,jsx-a11y/anchor-is-valid
|
|
181
|
+
"aria-haspopup": "menu" // eslint-disable-line jsx-a11y/aria-proptypes
|
|
182
|
+
,
|
|
183
|
+
"aria-expanded": this.state.expanded,
|
|
184
|
+
className: "".concat(prefix, "--header__menu-item ").concat(prefix, "--header__menu-title"),
|
|
185
|
+
href: "#",
|
|
186
|
+
onKeyDown: this.handleOnKeyDown,
|
|
187
|
+
ref: this.handleMenuButtonRef,
|
|
188
|
+
tabIndex: 0
|
|
189
|
+
}, accessibilityLabel), menuLinkName, MenuContent ? /*#__PURE__*/React__default.createElement(MenuContent, null) : /*#__PURE__*/React__default.createElement(ChevronDown, {
|
|
190
|
+
className: "".concat(this.context, "--header__menu-arrow")
|
|
191
|
+
})), /*#__PURE__*/React__default.createElement("ul", _extends({}, accessibilityLabel, {
|
|
192
|
+
ref: this._subMenus,
|
|
193
|
+
className: "".concat(prefix, "--header__menu")
|
|
194
|
+
}), React__default.Children.map(children, this._renderMenuItem)));
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* We capture the `ref` for each child inside of `this.items` to properly
|
|
198
|
+
* manage focus. In addition to this focus management, all items receive a
|
|
199
|
+
* `tabIndex: -1` so the user won't hit a large number of items in their tab
|
|
200
|
+
* sequence when they might not want to go through all the items.
|
|
201
|
+
*/
|
|
202
|
+
|
|
203
|
+
}]);
|
|
204
|
+
|
|
205
|
+
return HeaderMenu;
|
|
206
|
+
}(React__default.Component);
|
|
207
|
+
|
|
208
|
+
_defineProperty(HeaderMenu, "propTypes", _objectSpread2(_objectSpread2({}, AriaLabelPropType), {}, {
|
|
209
|
+
/**
|
|
210
|
+
* Provide a custom ref handler for the menu button
|
|
211
|
+
*/
|
|
212
|
+
focusRef: PropTypes.func,
|
|
213
|
+
|
|
214
|
+
/**
|
|
215
|
+
* Provide a label for the link text
|
|
216
|
+
*/
|
|
217
|
+
menuLinkName: PropTypes.string.isRequired,
|
|
218
|
+
|
|
219
|
+
/**
|
|
220
|
+
* Optional component to render instead of string
|
|
221
|
+
*/
|
|
222
|
+
renderMenuContent: PropTypes.func,
|
|
223
|
+
|
|
224
|
+
/**
|
|
225
|
+
* Optionally provide a tabIndex for the underlying menu button
|
|
226
|
+
*/
|
|
227
|
+
tabIndex: PropTypes.number
|
|
228
|
+
}));
|
|
229
|
+
|
|
230
|
+
_defineProperty(HeaderMenu, "contextType", PrefixContext);
|
|
231
|
+
|
|
232
|
+
var HeaderMenuForwardRef = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
|
|
233
|
+
return /*#__PURE__*/React__default.createElement(HeaderMenu, _extends({}, props, {
|
|
234
|
+
focusRef: ref
|
|
235
|
+
}));
|
|
236
|
+
});
|
|
237
|
+
HeaderMenuForwardRef.displayName = 'HeaderMenu';
|
|
238
|
+
var HeaderMenuForwardRef$1 = HeaderMenuForwardRef;
|
|
239
|
+
|
|
240
|
+
export { HeaderMenuForwardRef$1 as default };
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright IBM Corp. 2016, 2021
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { objectWithoutProperties as _objectWithoutProperties, defineProperty as _defineProperty, extends as _extends, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
|
+
import { Menu, Close } from '@carbon/icons-react';
|
|
10
|
+
import cx from 'classnames';
|
|
11
|
+
import React__default from 'react';
|
|
12
|
+
import PropTypes from 'prop-types';
|
|
13
|
+
import { AriaLabelPropType } from '../../prop-types/AriaPropTypes.js';
|
|
14
|
+
import { usePrefix } from '../../internal/usePrefix.js';
|
|
15
|
+
|
|
16
|
+
var _Menu, _Close;
|
|
17
|
+
|
|
18
|
+
var _excluded = ["aria-label", "aria-labelledby", "className", "renderMenuIcon", "renderCloseIcon", "onClick", "isActive", "isCollapsible"];
|
|
19
|
+
|
|
20
|
+
var HeaderMenuButton = function HeaderMenuButton(_ref) {
|
|
21
|
+
var _cx;
|
|
22
|
+
|
|
23
|
+
var ariaLabel = _ref['aria-label'],
|
|
24
|
+
ariaLabelledBy = _ref['aria-labelledby'],
|
|
25
|
+
customClassName = _ref.className,
|
|
26
|
+
renderMenuIcon = _ref.renderMenuIcon,
|
|
27
|
+
renderCloseIcon = _ref.renderCloseIcon,
|
|
28
|
+
onClick = _ref.onClick,
|
|
29
|
+
isActive = _ref.isActive,
|
|
30
|
+
isCollapsible = _ref.isCollapsible,
|
|
31
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
32
|
+
|
|
33
|
+
var prefix = usePrefix();
|
|
34
|
+
var className = cx((_cx = {}, _defineProperty(_cx, customClassName, !!customClassName), _defineProperty(_cx, "".concat(prefix, "--header__action"), true), _defineProperty(_cx, "".concat(prefix, "--header__menu-trigger"), true), _defineProperty(_cx, "".concat(prefix, "--header__action--active"), isActive), _defineProperty(_cx, "".concat(prefix, "--header__menu-toggle"), true), _defineProperty(_cx, "".concat(prefix, "--header__menu-toggle__hidden"), !isCollapsible), _cx));
|
|
35
|
+
var accessibilityLabel = {
|
|
36
|
+
'aria-label': ariaLabel,
|
|
37
|
+
'aria-labelledby': ariaLabelledBy
|
|
38
|
+
};
|
|
39
|
+
var menuIcon = renderMenuIcon ? renderMenuIcon : _Menu || (_Menu = /*#__PURE__*/React__default.createElement(Menu, {
|
|
40
|
+
size: 20
|
|
41
|
+
}));
|
|
42
|
+
var closeIcon = renderCloseIcon ? renderCloseIcon : _Close || (_Close = /*#__PURE__*/React__default.createElement(Close, {
|
|
43
|
+
size: 20
|
|
44
|
+
}));
|
|
45
|
+
return /*#__PURE__*/React__default.createElement("button", _extends({}, rest, accessibilityLabel, {
|
|
46
|
+
className: className,
|
|
47
|
+
title: ariaLabel,
|
|
48
|
+
type: "button",
|
|
49
|
+
onClick: onClick
|
|
50
|
+
}), isActive ? closeIcon : menuIcon);
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
HeaderMenuButton.propTypes = _objectSpread2(_objectSpread2({}, AriaLabelPropType), {}, {
|
|
54
|
+
/**
|
|
55
|
+
* Optionally provide a custom class name that is applied to the underlying
|
|
56
|
+
* button
|
|
57
|
+
*/
|
|
58
|
+
className: PropTypes.string,
|
|
59
|
+
isActive: PropTypes.bool,
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Optionally provide an onClick handler that is called when the underlying
|
|
63
|
+
* button fires it's onclick event
|
|
64
|
+
*/
|
|
65
|
+
onClick: PropTypes.func
|
|
66
|
+
});
|
|
67
|
+
var HeaderMenuButton$1 = HeaderMenuButton;
|
|
68
|
+
|
|
69
|
+
export { HeaderMenuButton$1 as default };
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright IBM Corp. 2016, 2021
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { objectWithoutProperties as _objectWithoutProperties, defineProperty as _defineProperty, extends as _extends, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
|
+
import PropTypes from 'prop-types';
|
|
10
|
+
import React__default from 'react';
|
|
11
|
+
import cx from 'classnames';
|
|
12
|
+
import Link, { LinkPropTypes } from './Link.js';
|
|
13
|
+
import { usePrefix } from '../../internal/usePrefix.js';
|
|
14
|
+
|
|
15
|
+
var _excluded = ["className", "isCurrentPage", "aria-current", "children", "role", "tabIndex"];
|
|
16
|
+
var HeaderMenuItem = /*#__PURE__*/React__default.forwardRef(function HeaderMenuItem(_ref, ref) {
|
|
17
|
+
var _cx;
|
|
18
|
+
|
|
19
|
+
var className = _ref.className,
|
|
20
|
+
isCurrentPage = _ref.isCurrentPage,
|
|
21
|
+
ariaCurrent = _ref['aria-current'],
|
|
22
|
+
children = _ref.children,
|
|
23
|
+
role = _ref.role,
|
|
24
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
25
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
|
|
26
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
27
|
+
|
|
28
|
+
var prefix = usePrefix();
|
|
29
|
+
var linkClassName = cx((_cx = {}, _defineProperty(_cx, "".concat(prefix, "--header__menu-item"), true), _defineProperty(_cx, "".concat(prefix, "--header__menu-item--current"), isCurrentPage && ariaCurrent !== 'page'), _cx));
|
|
30
|
+
return /*#__PURE__*/React__default.createElement("li", {
|
|
31
|
+
className: className,
|
|
32
|
+
role: role
|
|
33
|
+
}, /*#__PURE__*/React__default.createElement(Link, _extends({}, rest, {
|
|
34
|
+
"aria-current": ariaCurrent,
|
|
35
|
+
className: linkClassName,
|
|
36
|
+
ref: ref,
|
|
37
|
+
tabIndex: tabIndex
|
|
38
|
+
}), /*#__PURE__*/React__default.createElement("span", {
|
|
39
|
+
className: "".concat(prefix, "--text-truncate--end")
|
|
40
|
+
}, children)));
|
|
41
|
+
});
|
|
42
|
+
HeaderMenuItem.displayName = 'HeaderMenuItem';
|
|
43
|
+
HeaderMenuItem.propTypes = _objectSpread2(_objectSpread2({}, LinkPropTypes), {}, {
|
|
44
|
+
/**
|
|
45
|
+
* Pass in children that are either a string or can be read as a string by
|
|
46
|
+
* screen readers
|
|
47
|
+
*/
|
|
48
|
+
children: PropTypes.node.isRequired,
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Optionally provide a custom class to apply to the underlying `<li>` node
|
|
52
|
+
*/
|
|
53
|
+
className: PropTypes.string,
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Applies selected styles to the item if a user sets this to true and aria-current !== 'page'.
|
|
57
|
+
*/
|
|
58
|
+
isCurrentPage: PropTypes.bool,
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Optionally supply a role for the underlying `<li>` node. Useful for resetting
|
|
62
|
+
* `<ul>` semantics for menus.
|
|
63
|
+
*/
|
|
64
|
+
role: PropTypes.string,
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Specify the tab index of the Link
|
|
68
|
+
*/
|
|
69
|
+
tabIndex: PropTypes.number
|
|
70
|
+
});
|
|
71
|
+
var HeaderMenuItem$1 = HeaderMenuItem;
|
|
72
|
+
|
|
73
|
+
export { HeaderMenuItem$1 as default };
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright IBM Corp. 2016, 2021
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends, objectSpread2 as _objectSpread2 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
9
|
+
import cx from 'classnames';
|
|
10
|
+
import React__default from 'react';
|
|
11
|
+
import PropTypes from 'prop-types';
|
|
12
|
+
import Link, { LinkPropTypes } from './Link.js';
|
|
13
|
+
import { usePrefix } from '../../internal/usePrefix.js';
|
|
14
|
+
|
|
15
|
+
var _excluded = ["children", "className", "prefix", "href"];
|
|
16
|
+
|
|
17
|
+
var HeaderName = function HeaderName(_ref) {
|
|
18
|
+
var children = _ref.children,
|
|
19
|
+
customClassName = _ref.className,
|
|
20
|
+
prefix = _ref.prefix,
|
|
21
|
+
href = _ref.href,
|
|
22
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
23
|
+
|
|
24
|
+
var selectorPrefix = usePrefix();
|
|
25
|
+
var className = cx("".concat(selectorPrefix, "--header__name"), customClassName);
|
|
26
|
+
return /*#__PURE__*/React__default.createElement(Link, _extends({}, rest, {
|
|
27
|
+
className: className,
|
|
28
|
+
href: href
|
|
29
|
+
}), prefix && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("span", {
|
|
30
|
+
className: "".concat(selectorPrefix, "--header__name--prefix")
|
|
31
|
+
}, prefix), "\xA0"), children);
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
HeaderName.propTypes = _objectSpread2(_objectSpread2({}, LinkPropTypes), {}, {
|
|
35
|
+
/**
|
|
36
|
+
* Pass in children that are either a string or can be read as a string by
|
|
37
|
+
* screen readers
|
|
38
|
+
*/
|
|
39
|
+
children: PropTypes.node.isRequired,
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Optionally provide a custom class to apply to the underlying `<li>` node
|
|
43
|
+
*/
|
|
44
|
+
className: PropTypes.string,
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Provide an href for the name to link to
|
|
48
|
+
*/
|
|
49
|
+
href: PropTypes.string,
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Optionally specify a prefix to your header name. Useful for companies, for
|
|
53
|
+
* example: IBM [Product Name] versus solely [Product Name]
|
|
54
|
+
*/
|
|
55
|
+
prefix: PropTypes.string
|
|
56
|
+
});
|
|
57
|
+
HeaderName.defaultProps = {
|
|
58
|
+
prefix: 'IBM'
|
|
59
|
+
};
|
|
60
|
+
var HeaderName$1 = HeaderName;
|
|
61
|
+
|
|
62
|
+
export { HeaderName$1 as default };
|