@hitachivantara/uikit-react-core 5.0.1 → 5.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/ActionsGeneric/ActionsGeneric.styles.cjs +8 -4
- package/dist/cjs/components/ActionsGeneric/ActionsGeneric.styles.cjs.map +1 -1
- package/dist/cjs/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.cjs +10 -6
- package/dist/cjs/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.cjs.map +1 -1
- package/dist/cjs/components/BaseDropdown/BaseDropdown.cjs +1 -0
- package/dist/cjs/components/BaseDropdown/BaseDropdown.cjs.map +1 -1
- package/dist/cjs/components/BaseDropdown/BaseDropdown.styles.cjs +22 -14
- package/dist/cjs/components/BaseDropdown/BaseDropdown.styles.cjs.map +1 -1
- package/dist/cjs/components/BreadCrumb/BreadCrumb.styles.cjs +9 -5
- package/dist/cjs/components/BreadCrumb/BreadCrumb.styles.cjs.map +1 -1
- package/dist/cjs/components/BreadCrumb/Page/Page.styles.cjs +8 -4
- package/dist/cjs/components/BreadCrumb/Page/Page.styles.cjs.map +1 -1
- package/dist/cjs/components/Dialog/Dialog.styles.cjs +9 -5
- package/dist/cjs/components/Dialog/Dialog.styles.cjs.map +1 -1
- package/dist/cjs/components/DropDownMenu/DropDownMenu.styles.cjs +9 -5
- package/dist/cjs/components/DropDownMenu/DropDownMenu.styles.cjs.map +1 -1
- package/dist/cjs/components/Dropdown/List/List.styles.cjs +4 -5
- package/dist/cjs/components/Dropdown/List/List.styles.cjs.map +1 -1
- package/dist/cjs/components/FileUploader/File/File.styles.cjs +16 -12
- package/dist/cjs/components/FileUploader/File/File.styles.cjs.map +1 -1
- package/dist/cjs/components/FileUploader/Preview/Preview.styles.cjs +9 -5
- package/dist/cjs/components/FileUploader/Preview/Preview.styles.cjs.map +1 -1
- package/dist/cjs/components/Header/Brand/Brand.styles.cjs +9 -5
- package/dist/cjs/components/Header/Brand/Brand.styles.cjs.map +1 -1
- package/dist/cjs/components/Table/Table.cjs +1 -1
- package/dist/cjs/components/Table/Table.cjs.map +1 -1
- package/dist/cjs/components/Table/TableBody/TableBody.cjs +1 -1
- package/dist/cjs/components/Table/TableBody/TableBody.cjs.map +1 -1
- package/dist/cjs/components/Table/TableCell/TableCell.cjs +1 -1
- package/dist/cjs/components/Table/TableCell/TableCell.cjs.map +1 -1
- package/dist/cjs/components/Table/TableContainer/TableContainer.cjs +1 -1
- package/dist/cjs/components/Table/TableContainer/TableContainer.cjs.map +1 -1
- package/dist/cjs/components/Table/TableHead/TableHead.cjs +1 -1
- package/dist/cjs/components/Table/TableHead/TableHead.cjs.map +1 -1
- package/dist/cjs/components/Table/TableHeader/TableHeader.cjs +2 -2
- package/dist/cjs/components/Table/TableHeader/TableHeader.cjs.map +1 -1
- package/dist/cjs/components/Table/TableHeader/TableHeader.styles.cjs +15 -8
- package/dist/cjs/components/Table/TableHeader/TableHeader.styles.cjs.map +1 -1
- package/dist/cjs/components/Table/TableRow/TableRow.cjs +1 -1
- package/dist/cjs/components/Table/TableRow/TableRow.cjs.map +1 -1
- package/dist/cjs/components/Table/hooks/useRowSelection.cjs.map +1 -1
- package/dist/cjs/components/Table/hooks/useSortBy.cjs.map +1 -1
- package/dist/cjs/components/Table/hooks/useTable.cjs +24 -20
- package/dist/cjs/components/Table/hooks/useTable.cjs.map +1 -1
- package/dist/cjs/components/Table/renderers/DateColumnCell/DateColumnCell.cjs.map +1 -1
- package/dist/cjs/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.cjs.map +1 -1
- package/dist/cjs/components/Table/renderers/ProgressColumnCell/ProgressColumnCell.cjs.map +1 -1
- package/dist/cjs/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.cjs.map +1 -1
- package/dist/cjs/components/Table/renderers/renderers.cjs +14 -12
- package/dist/cjs/components/Table/renderers/renderers.cjs.map +1 -1
- package/dist/cjs/components/Table/utils/fallbacks.cjs.map +1 -1
- package/dist/cjs/components/Tag/Tag.styles.cjs +9 -5
- package/dist/cjs/components/Tag/Tag.styles.cjs.map +1 -1
- package/dist/cjs/components/VerticalNavigation/Header/Header.styles.cjs +8 -4
- package/dist/cjs/components/VerticalNavigation/Header/Header.styles.cjs.map +1 -1
- package/dist/cjs/components/VerticalNavigation/TreeView/TreeViewItem.cjs +1 -1
- package/dist/cjs/components/VerticalNavigation/TreeView/TreeViewItem.cjs.map +1 -1
- package/dist/esm/components/ActionsGeneric/ActionsGeneric.styles.js +8 -4
- package/dist/esm/components/ActionsGeneric/ActionsGeneric.styles.js.map +1 -1
- package/dist/esm/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.js +10 -6
- package/dist/esm/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.js.map +1 -1
- package/dist/esm/components/BaseDropdown/BaseDropdown.js +1 -0
- package/dist/esm/components/BaseDropdown/BaseDropdown.js.map +1 -1
- package/dist/esm/components/BaseDropdown/BaseDropdown.styles.js +22 -14
- package/dist/esm/components/BaseDropdown/BaseDropdown.styles.js.map +1 -1
- package/dist/esm/components/BreadCrumb/BreadCrumb.styles.js +9 -5
- package/dist/esm/components/BreadCrumb/BreadCrumb.styles.js.map +1 -1
- package/dist/esm/components/BreadCrumb/Page/Page.styles.js +8 -4
- package/dist/esm/components/BreadCrumb/Page/Page.styles.js.map +1 -1
- package/dist/esm/components/Dialog/Dialog.styles.js +9 -5
- package/dist/esm/components/Dialog/Dialog.styles.js.map +1 -1
- package/dist/esm/components/DropDownMenu/DropDownMenu.styles.js +9 -5
- package/dist/esm/components/DropDownMenu/DropDownMenu.styles.js.map +1 -1
- package/dist/esm/components/Dropdown/List/List.styles.js +4 -5
- package/dist/esm/components/Dropdown/List/List.styles.js.map +1 -1
- package/dist/esm/components/FileUploader/File/File.styles.js +16 -12
- package/dist/esm/components/FileUploader/File/File.styles.js.map +1 -1
- package/dist/esm/components/FileUploader/Preview/Preview.styles.js +9 -5
- package/dist/esm/components/FileUploader/Preview/Preview.styles.js.map +1 -1
- package/dist/esm/components/Header/Brand/Brand.styles.js +9 -5
- package/dist/esm/components/Header/Brand/Brand.styles.js.map +1 -1
- package/dist/esm/components/Table/Table.js +1 -1
- package/dist/esm/components/Table/Table.js.map +1 -1
- package/dist/esm/components/Table/TableBody/TableBody.js +1 -1
- package/dist/esm/components/Table/TableBody/TableBody.js.map +1 -1
- package/dist/esm/components/Table/TableCell/TableCell.js +1 -1
- package/dist/esm/components/Table/TableCell/TableCell.js.map +1 -1
- package/dist/esm/components/Table/TableContainer/TableContainer.js +1 -1
- package/dist/esm/components/Table/TableContainer/TableContainer.js.map +1 -1
- package/dist/esm/components/Table/TableHead/TableHead.js +1 -1
- package/dist/esm/components/Table/TableHead/TableHead.js.map +1 -1
- package/dist/esm/components/Table/TableHeader/TableHeader.js +2 -2
- package/dist/esm/components/Table/TableHeader/TableHeader.js.map +1 -1
- package/dist/esm/components/Table/TableHeader/TableHeader.styles.js +15 -8
- package/dist/esm/components/Table/TableHeader/TableHeader.styles.js.map +1 -1
- package/dist/esm/components/Table/TableRow/TableRow.js +1 -1
- package/dist/esm/components/Table/TableRow/TableRow.js.map +1 -1
- package/dist/esm/components/Table/hooks/useRowSelection.js.map +1 -1
- package/dist/esm/components/Table/hooks/useSortBy.js.map +1 -1
- package/dist/esm/components/Table/hooks/useTable.js +24 -20
- package/dist/esm/components/Table/hooks/useTable.js.map +1 -1
- package/dist/esm/components/Table/renderers/DateColumnCell/DateColumnCell.js.map +1 -1
- package/dist/esm/components/Table/renderers/DropdownColumnCell/DropdownColumnCell.js.map +1 -1
- package/dist/esm/components/Table/renderers/ProgressColumnCell/ProgressColumnCell.js.map +1 -1
- package/dist/esm/components/Table/renderers/SwitchColumnCell/SwitchColumnCell.js.map +1 -1
- package/dist/esm/components/Table/renderers/renderers.js +15 -13
- package/dist/esm/components/Table/renderers/renderers.js.map +1 -1
- package/dist/esm/components/Table/utils/fallbacks.js.map +1 -1
- package/dist/esm/components/Tag/Tag.styles.js +9 -5
- package/dist/esm/components/Tag/Tag.styles.js.map +1 -1
- package/dist/esm/components/VerticalNavigation/Header/Header.styles.js +8 -4
- package/dist/esm/components/VerticalNavigation/Header/Header.styles.js.map +1 -1
- package/dist/esm/components/VerticalNavigation/TreeView/TreeViewItem.js +1 -1
- package/dist/esm/components/VerticalNavigation/TreeView/TreeViewItem.js.map +1 -1
- package/dist/types/index.d.ts +173 -258
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.styles.cjs","sources":["../../../../../src/components/VerticalNavigation/Header/Header.styles.tsx"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { HvButton, HvButtonProps } from \"~/components\";\nimport verticalNavigationHeaderClasses from \"./headerClasses\";\n\nexport const StyledHeader = styled(\"div\")({\n width: \"100%\",\n display: \"flex\",\n marginTop: \"12px\",\n alignItems: \"center\",\n\n [`&.${verticalNavigationHeaderClasses.minimized}`]: {\n justifyContent: \"center\",\n paddingRight: 0,\n },\n});\n\nexport const StyledCollapseButton = styled((props: HvButtonProps) =>
|
|
1
|
+
{"version":3,"file":"Header.styles.cjs","sources":["../../../../../src/components/VerticalNavigation/Header/Header.styles.tsx"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { HvButton, HvButtonProps } from \"~/components\";\nimport verticalNavigationHeaderClasses from \"./headerClasses\";\nimport { forwardRef, Ref } from \"react\";\n\nexport const StyledHeader = styled(\"div\")({\n width: \"100%\",\n display: \"flex\",\n marginTop: \"12px\",\n alignItems: \"center\",\n\n [`&.${verticalNavigationHeaderClasses.minimized}`]: {\n justifyContent: \"center\",\n paddingRight: 0,\n },\n});\n\nexport const StyledCollapseButton = styled(\n forwardRef((props: HvButtonProps, ref?: Ref<HTMLButtonElement>) => {\n return <HvButton {...props} ref={ref} />;\n })\n)({\n marginLeft: \"auto\",\n\n [`&.${verticalNavigationHeaderClasses.minimized}`]: {\n marginLeft: 0,\n },\n});\n"],"names":["StyledHeader","_styled","process","env","NODE_ENV","target","label","width","display","marginTop","alignItems","verticalNavigationHeaderClasses","minimized","justifyContent","paddingRight","StyledCollapseButton","forwardRef","props","ref","HvButton","marginLeft"],"mappings":";;;;;;;;;AAKO,MAAMA,eAAsBC,iCAAA,QAAA,OAAKC,QAAAC,IAAAC,aAAA,eAAA;AAAA,EAAAC,QAAA;AAAA,IAAA;AAAA,EAAAA,QAAA;AAAA,EAAAC,OAAA;AAAA,CAAA,EAAE;AAAA,EACxCC,OAAO;AAAA,EACPC,SAAS;AAAA,EACTC,WAAW;AAAA,EACXC,YAAY;AAAA,EAEZ,CAAE,KAAIC,sBAAgCC,WAAW,GAAG;AAAA,IAClDC,gBAAgB;AAAA,IAChBC,cAAc;AAAA,EAChB;AACF,GAACZ,QAAAC,IAAAC,aAAC,eAAA,KAAA,igDAAA;AAEK,MAAMW,uBAAuBd,iCAAAA,QAClCe,MAAAA,WAAW,CAACC,OAAsBC,QAAiC;AACjE,wCAAQC,OAAAA,UAAQ;AAAA,IAAA,GAAKF;AAAAA,IAAOC;AAAAA,EAAAA,CAAY;AAC1C,CAAC,GAAChB,QAAAC,IAAAC,aAAA,eAAA;AAAA,EAAAC,QAAA;AAAA,IAAA;AAAA,EAAAA,QAAA;AAAA,EAAAC,OAAA;AAAA,CAAA,EACF;AAAA,EACAc,YAAY;AAAA,EAEZ,CAAE,KAAIT,sBAAgCC,WAAW,GAAG;AAAA,IAClDQ,YAAY;AAAA,EACd;AACF,GAAClB,QAAAC,IAAAC,aAAC,eAAA,KAAA,igDAAA;;;"}
|
|
@@ -261,7 +261,7 @@ const HvVerticalNavigationTreeViewItem = React.forwardRef((props, ref) => {
|
|
|
261
261
|
}), [children, treeViewItemClasses.default.group, classes == null ? void 0 : classes.group, id, treeviewMode]);
|
|
262
262
|
return /* @__PURE__ */ jsxRuntime.jsxs(TreeViewItem_styles.StyledNode, {
|
|
263
263
|
ref: handleRef,
|
|
264
|
-
id,
|
|
264
|
+
id: id ?? void 0,
|
|
265
265
|
className: clsx__default.default((_a = treeViewItemClasses.default) == null ? void 0 : _a.node, classes == null ? void 0 : classes.node, className, disabled && clsx__default.default(treeViewItemClasses.default.disabled, classes == null ? void 0 : classes.disabled), expandable && clsx__default.default(treeViewItemClasses.default.expandable, classes == null ? void 0 : classes.expandable), expandable && !expanded && clsx__default.default(treeViewItemClasses.default.collapsed, classes == null ? void 0 : classes.collapsed), expandable && expanded && clsx__default.default(treeViewItemClasses.default.expanded, classes == null ? void 0 : classes.expanded), selectable && !disabled && clsx__default.default(treeViewItemClasses.default.selectable, classes == null ? void 0 : classes.selectable), !disabled && !selectable && clsx__default.default(treeViewItemClasses.default.unselectable, classes == null ? void 0 : classes.unselectable), !disabled && selectable && selected && clsx__default.default(treeViewItemClasses.default.selected, classes == null ? void 0 : classes.selected), !disabled && selectable && !selected && clsx__default.default(treeViewItemClasses.default.unselected, classes == null ? void 0 : classes.unselected), focused && clsx__default.default(treeViewItemClasses.default.focused, classes == null ? void 0 : classes.focused), !isOpen && collapsedMode == "simple" && clsx__default.default(treeViewItemClasses.default.hide, classes == null ? void 0 : classes.hide), !isOpen && collapsedMode == "icon" && isChildSelected && isChildSelected(nodeId) && clsx__default.default(treeViewItemClasses.default.selected, classes == null ? void 0 : classes.selected)),
|
|
266
266
|
"data-hasicon": icon != null ? true : void 0,
|
|
267
267
|
...mode === "treeview" && {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeViewItem.cjs","sources":["../../../../../src/components/VerticalNavigation/TreeView/TreeViewItem.tsx"],"sourcesContent":["import {\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport clsx from \"clsx\";\nimport { DropDownXS, DropUpXS } from \"@hitachivantara/uikit-react-icons\";\nimport { useForkRef } from \"~/hooks\";\nimport { setId } from \"~/utils\";\nimport treeViewItemClasses, {\n HvVerticalNavigationTreeViewItemClasses,\n} from \"./treeViewItemClasses\";\nimport { StyledContent, StyledGroup, StyledNode } from \"./TreeViewItem.styles\";\nimport { DescendantProvider, useDescendant } from \"./descendants\";\nimport {\n TreeViewControlContext,\n TreeViewStateContext,\n} from \"./TreeViewContext\";\nimport { HvAvatar } from \"~/components\";\nimport { VerticalNavigationContext } from \"../VerticalNavigationContext\";\n\nexport type HvVerticalNavigationTreeViewItemProps = {\n /**\n * Id to be applied to the root node.\n */\n id?: string;\n /**\n * Class names to be applied.\n */\n className?: string;\n /**\n * A Jss Object used to override or extend the styles applied to the Radio button.\n */\n classes?: HvVerticalNavigationTreeViewItemClasses;\n /**\n * Is the node disabled.\n */\n disabled?: boolean;\n /**\n * Can the node be selected.\n */\n selectable?: boolean;\n /**\n * The id of the node.\n */\n nodeId?: string;\n /**\n * The icon to display next to the node's label.\n */\n icon?: React.ReactNode;\n /**\n * The item label.\n */\n label?: React.ReactNode;\n /**\n * The url for the link.\n */\n href?: string;\n /**\n * The behavior when opening a link.\n */\n target?: string;\n /**\n * The node payload.\n */\n payload?: any;\n /**\n * @ignore\n */\n onClick?: any;\n /**\n * @ignore\n */\n onMouseDown?: any;\n /**\n * @ignore\n */\n onFocus?: any;\n /**\n * The content of the component.\n */\n children?: React.ReactNode;\n};\n\nconst preventSelection = (event, disabled) => {\n if (event.shiftKey || event.ctrlKey || event.metaKey || disabled) {\n // Prevent text selection\n event.preventDefault();\n }\n};\n\nexport const HvVerticalNavigationTreeViewItem = forwardRef(\n (props: HvVerticalNavigationTreeViewItemProps, ref) => {\n const {\n id: idProp,\n className,\n classes,\n\n disabled: disabledProp = false,\n\n selectable: selectableProp,\n\n nodeId,\n icon = null,\n label,\n href,\n target,\n payload,\n\n onClick,\n onMouseDown,\n onFocus,\n\n children,\n\n ...others\n } = props;\n\n const treeViewControlContext = useContext(TreeViewControlContext);\n const { isExpanded, isSelected, isFocused, isDisabled, isChildSelected } =\n useContext(TreeViewStateContext);\n\n const {\n treeId,\n mode,\n collapsible,\n toggleExpansion,\n multiSelect,\n selectNode,\n selectRange,\n disabledItemsFocusable,\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n focus,\n } = treeViewControlContext;\n\n const treeviewMode = mode === \"treeview\";\n\n let id: string | null = null;\n\n if (idProp != null) {\n id = idProp;\n } else if (treeId && nodeId) {\n id = `${treeId}-${nodeId}`;\n }\n\n const [treeitemElement, setTreeitemElement] = useState(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const handleRef = useForkRef(setTreeitemElement, ref);\n\n const descendant = useMemo(\n () => ({\n element: treeitemElement,\n id: nodeId,\n }),\n [nodeId, treeitemElement]\n );\n\n const { isOpen, collapsedMode } = useContext(VerticalNavigationContext);\n\n const { index, parentId, level } = useDescendant(descendant);\n\n const expandable = collapsible && Array.isArray(children);\n const expanded = isExpanded ? isExpanded(nodeId) : false;\n const focused = isFocused ? isFocused(nodeId) : false;\n const selected = isSelected ? isSelected(nodeId) : false;\n const disabled = isDisabled ? isDisabled(nodeId) : false;\n\n const selectable =\n selectableProp != null ? selectableProp : !collapsible || !expandable;\n\n useEffect(() => {\n // On the first render a node's index will be -1. We want to wait for the real index.\n if (registerNode && unregisterNode && index !== -1) {\n registerNode({\n id: nodeId,\n idAttribute: id,\n index,\n parentId,\n selectable,\n expandable,\n disabled: disabledProp,\n onFocus,\n payload,\n });\n\n return () => {\n unregisterNode(nodeId);\n };\n }\n\n return undefined;\n }, [\n registerNode,\n unregisterNode,\n parentId,\n index,\n nodeId,\n expandable,\n disabledProp,\n id,\n selectable,\n onFocus,\n payload,\n ]);\n\n useEffect(() => {\n if (\n mapFirstChar &&\n unMapFirstChar &&\n label &&\n contentRef.current?.textContent\n ) {\n mapFirstChar(\n nodeId,\n contentRef.current?.textContent.substring(0, 1).toLowerCase()\n );\n\n return () => {\n unMapFirstChar(nodeId);\n };\n }\n return undefined;\n }, [mapFirstChar, unMapFirstChar, nodeId, label]);\n\n let ariaSelected;\n if (multiSelect) {\n ariaSelected = selected;\n } else if (selected) {\n /* single-selection trees unset aria-selected on un-selected items.\n *\n * If the tree does not support multiple selection, aria-selected\n * is set to true for the selected node and it is not present on any other node in the tree.\n * Source: https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\n ariaSelected = true;\n }\n\n const handleFocus = useCallback(\n (event) => {\n // DOM focus stays on the tree which manages focus with aria-activedescendant\n if (event.target === event.currentTarget) {\n (event.target.ownerDocument || document)\n .getElementById(treeId)\n .focus({ preventScroll: true });\n }\n\n const unfocusable = !disabledItemsFocusable && disabled;\n if (\n !focused &&\n event.currentTarget === event.target &&\n !unfocusable &&\n focus\n ) {\n focus(event, nodeId);\n }\n },\n [disabled, disabledItemsFocusable, focus, focused, nodeId, treeId]\n );\n\n const handleExpansion = useCallback(\n (event) => {\n if (!disabled) {\n if (treeviewMode && !focused && focus) {\n focus(event, nodeId);\n }\n\n const multiple =\n multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n // If already expanded and trying to toggle selection don't close\n if (expandable && !(multiple && isExpanded && isExpanded(nodeId))) {\n if (toggleExpansion) toggleExpansion(event, nodeId);\n }\n }\n },\n [\n disabled,\n expandable,\n focus,\n focused,\n isExpanded,\n multiSelect,\n nodeId,\n toggleExpansion,\n treeviewMode,\n ]\n );\n\n const handleSelection = useCallback(\n (event) => {\n if (selectable && !disabled) {\n if (treeviewMode && !focused && focus) {\n focus(event, nodeId);\n }\n\n const multiple =\n multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n if (multiple) {\n if (event.shiftKey) {\n if (selectRange) return selectRange(event, { end: nodeId });\n } else {\n if (selectNode) return selectNode(event, nodeId, true);\n }\n } else {\n if (selectNode) return selectNode(event, nodeId);\n }\n } else {\n return false;\n }\n },\n [\n disabled,\n focus,\n focused,\n multiSelect,\n nodeId,\n selectNode,\n selectRange,\n selectable,\n treeviewMode,\n ]\n );\n\n const handleMouseDown = useCallback(\n (event) => {\n preventSelection(event, disabled);\n\n if (onMouseDown) {\n onMouseDown(event);\n }\n },\n [disabled, onMouseDown]\n );\n\n const handleClick = useCallback(\n (event) => {\n if (!disabled) {\n if (expandable) {\n handleExpansion(event);\n }\n\n if (selectable) {\n handleSelection(event);\n }\n }\n\n if (onClick) {\n onClick(event);\n }\n },\n [\n disabled,\n expandable,\n handleExpansion,\n handleSelection,\n onClick,\n selectable,\n ]\n );\n\n const handleKeyDown = useCallback(\n (event) => {\n let isEventHandled = false;\n const { key } = event;\n\n if (\n event.altKey ||\n event.ctrlKey ||\n event.metaKey ||\n event.currentTarget !== event.target\n ) {\n return;\n }\n if (contentRef.current === event.currentTarget) {\n if (key === \"Enter\" || key === \" \") {\n if (expandable) {\n isEventHandled = handleExpansion(event) as unknown as boolean;\n }\n\n if (selectable) {\n isEventHandled = handleSelection(event) as boolean;\n }\n }\n\n if (isEventHandled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n },\n [expandable, handleExpansion, handleSelection, selectable]\n );\n\n const renderedContent = useMemo(\n () => (\n <StyledContent\n id={setId(id, \"button\")}\n component={href ? \"a\" : \"div\"}\n href={href}\n target={target}\n ref={contentRef}\n className={clsx(\n treeViewItemClasses.content,\n classes?.content,\n href != null && clsx(treeViewItemClasses.link, classes?.link),\n !isOpen && clsx(treeViewItemClasses.minimized, classes?.minimized)\n )}\n variant={disabled ? \"placeholderText\" : \"body\"}\n onClick={handleClick}\n onMouseDown={handleMouseDown}\n style={{\n paddingLeft:\n (expandable || icon != null ? 0 : 10) +\n level * (collapsible ? 32 : 10),\n }}\n {...(treeviewMode\n ? {\n role: \"button\",\n tabIndex: -1,\n onFocus: handleFocus,\n }\n : {\n role: \"button\",\n tabIndex: selectable || expandable ? 0 : -1,\n onKeyDown: handleKeyDown,\n \"aria-current\": selectable && selected ? \"page\" : undefined,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-controls\": expandable ? setId(id, \"group\") : undefined,\n })}\n >\n {isOpen && expandable && (expanded ? <DropUpXS /> : <DropDownXS />)}\n {!icon &&\n level === 0 &&\n !isOpen &&\n collapsedMode === \"icon\" &&\n contentRef.current?.textContent ? (\n <HvAvatar\n variant=\"square\"\n size=\"xs\"\n backgroundColor=\"secondary_80\"\n style={{ fontSize: \"15px\" }}\n >\n {contentRef.current?.textContent.substring(0, 1)}\n </HvAvatar>\n ) : (\n icon\n )}\n {isOpen && label}\n </StyledContent>\n ),\n [\n id,\n href,\n target,\n classes?.content,\n treeViewItemClasses.content,\n classes?.link,\n treeViewItemClasses.link,\n classes?.minimized,\n treeViewItemClasses.minimized,\n disabled,\n handleClick,\n handleMouseDown,\n expandable,\n icon,\n level,\n collapsible,\n treeviewMode,\n handleFocus,\n selectable,\n handleKeyDown,\n selected,\n expanded,\n label,\n ]\n );\n\n const renderedChildren = useMemo(\n () =>\n children && (\n <StyledGroup\n id={setId(id, \"group\")}\n className={clsx(treeViewItemClasses.group, classes?.group)}\n role={treeviewMode ? \"group\" : undefined}\n >\n {children}\n </StyledGroup>\n ),\n [children, treeViewItemClasses.group, classes?.group, id, treeviewMode]\n );\n\n return (\n <StyledNode\n ref={handleRef}\n id={id as string}\n className={clsx(\n treeViewItemClasses?.node,\n classes?.node,\n className,\n disabled && clsx(treeViewItemClasses.disabled, classes?.disabled),\n expandable &&\n clsx(treeViewItemClasses.expandable, classes?.expandable),\n expandable &&\n !expanded &&\n clsx(treeViewItemClasses.collapsed, classes?.collapsed),\n expandable &&\n expanded &&\n clsx(treeViewItemClasses.expanded, classes?.expanded),\n selectable &&\n !disabled &&\n clsx(treeViewItemClasses.selectable, classes?.selectable),\n !disabled &&\n !selectable &&\n clsx(treeViewItemClasses.unselectable, classes?.unselectable),\n !disabled &&\n selectable &&\n selected &&\n clsx(treeViewItemClasses.selected, classes?.selected),\n !disabled &&\n selectable &&\n !selected &&\n clsx(treeViewItemClasses.unselected, classes?.unselected),\n focused && clsx(treeViewItemClasses.focused, classes?.focused),\n !isOpen &&\n collapsedMode == \"simple\" &&\n clsx(treeViewItemClasses.hide, classes?.hide),\n !isOpen &&\n collapsedMode == \"icon\" &&\n isChildSelected &&\n isChildSelected(nodeId) &&\n clsx(treeViewItemClasses.selected, classes?.selected)\n )}\n data-hasicon={icon != null ? true : undefined}\n {...(mode === \"treeview\" && {\n role: \"treeitem\",\n \"aria-selected\": ariaSelected,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-disabled\": disabled ? true : undefined,\n })}\n {...others}\n >\n {renderedContent}\n {isOpen && (\n <DescendantProvider id={nodeId} level={level + 1}>\n {renderedChildren}\n </DescendantProvider>\n )}\n </StyledNode>\n );\n }\n);\n"],"names":["preventSelection","event","disabled","shiftKey","ctrlKey","metaKey","preventDefault","HvVerticalNavigationTreeViewItem","forwardRef","props","ref","id","idProp","className","classes","disabledProp","selectable","selectableProp","nodeId","icon","label","href","target","payload","onClick","onMouseDown","onFocus","children","others","treeViewControlContext","useContext","TreeViewControlContext","isExpanded","isSelected","isFocused","isDisabled","isChildSelected","TreeViewStateContext","treeId","mode","collapsible","toggleExpansion","multiSelect","selectNode","selectRange","disabledItemsFocusable","registerNode","unregisterNode","mapFirstChar","unMapFirstChar","focus","treeviewMode","treeitemElement","setTreeitemElement","useState","contentRef","useRef","handleRef","useForkRef","descendant","useMemo","element","isOpen","collapsedMode","VerticalNavigationContext","index","parentId","level","useDescendant","expandable","Array","isArray","expanded","focused","selected","useEffect","idAttribute","undefined","current","textContent","substring","toLowerCase","ariaSelected","handleFocus","useCallback","currentTarget","ownerDocument","document","getElementById","preventScroll","unfocusable","handleExpansion","multiple","handleSelection","end","handleMouseDown","handleClick","handleKeyDown","isEventHandled","key","altKey","stopPropagation","renderedContent","_jsxs","StyledContent","setId","component","clsx","treeViewItemClasses","content","link","minimized","variant","style","paddingLeft","role","tabIndex","onKeyDown","DropUpXS","_jsx","DropDownXS","HvAvatar","size","backgroundColor","fontSize","renderedChildren","StyledGroup","group","StyledNode","node","collapsed","unselectable","unselected","hide","DescendantProvider"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TreeViewItem.cjs","sources":["../../../../../src/components/VerticalNavigation/TreeView/TreeViewItem.tsx"],"sourcesContent":["import {\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport clsx from \"clsx\";\nimport { DropDownXS, DropUpXS } from \"@hitachivantara/uikit-react-icons\";\nimport { useForkRef } from \"~/hooks\";\nimport { setId } from \"~/utils\";\nimport treeViewItemClasses, {\n HvVerticalNavigationTreeViewItemClasses,\n} from \"./treeViewItemClasses\";\nimport { StyledContent, StyledGroup, StyledNode } from \"./TreeViewItem.styles\";\nimport { DescendantProvider, useDescendant } from \"./descendants\";\nimport {\n TreeViewControlContext,\n TreeViewStateContext,\n} from \"./TreeViewContext\";\nimport { HvAvatar } from \"~/components\";\nimport { VerticalNavigationContext } from \"../VerticalNavigationContext\";\n\nexport type HvVerticalNavigationTreeViewItemProps = {\n /**\n * Id to be applied to the root node.\n */\n id?: string;\n /**\n * Class names to be applied.\n */\n className?: string;\n /**\n * A Jss Object used to override or extend the styles applied to the Radio button.\n */\n classes?: HvVerticalNavigationTreeViewItemClasses;\n /**\n * Is the node disabled.\n */\n disabled?: boolean;\n /**\n * Can the node be selected.\n */\n selectable?: boolean;\n /**\n * The id of the node.\n */\n nodeId?: string;\n /**\n * The icon to display next to the node's label.\n */\n icon?: React.ReactNode;\n /**\n * The item label.\n */\n label?: React.ReactNode;\n /**\n * The url for the link.\n */\n href?: string;\n /**\n * The behavior when opening a link.\n */\n target?: string;\n /**\n * The node payload.\n */\n payload?: any;\n /**\n * @ignore\n */\n onClick?: any;\n /**\n * @ignore\n */\n onMouseDown?: any;\n /**\n * @ignore\n */\n onFocus?: any;\n /**\n * The content of the component.\n */\n children?: React.ReactNode;\n};\n\nconst preventSelection = (event, disabled) => {\n if (event.shiftKey || event.ctrlKey || event.metaKey || disabled) {\n // Prevent text selection\n event.preventDefault();\n }\n};\n\nexport const HvVerticalNavigationTreeViewItem = forwardRef(\n (props: HvVerticalNavigationTreeViewItemProps, ref) => {\n const {\n id: idProp,\n className,\n classes,\n\n disabled: disabledProp = false,\n\n selectable: selectableProp,\n\n nodeId,\n icon = null,\n label,\n href,\n target,\n payload,\n\n onClick,\n onMouseDown,\n onFocus,\n\n children,\n\n ...others\n } = props;\n\n const treeViewControlContext = useContext(TreeViewControlContext);\n const { isExpanded, isSelected, isFocused, isDisabled, isChildSelected } =\n useContext(TreeViewStateContext);\n\n const {\n treeId,\n mode,\n collapsible,\n toggleExpansion,\n multiSelect,\n selectNode,\n selectRange,\n disabledItemsFocusable,\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n focus,\n } = treeViewControlContext;\n\n const treeviewMode = mode === \"treeview\";\n\n let id: string | null = null;\n\n if (idProp != null) {\n id = idProp;\n } else if (treeId && nodeId) {\n id = `${treeId}-${nodeId}`;\n }\n\n const [treeitemElement, setTreeitemElement] = useState(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const handleRef = useForkRef(setTreeitemElement, ref);\n\n const descendant = useMemo(\n () => ({\n element: treeitemElement,\n id: nodeId,\n }),\n [nodeId, treeitemElement]\n );\n\n const { isOpen, collapsedMode } = useContext(VerticalNavigationContext);\n\n const { index, parentId, level } = useDescendant(descendant);\n\n const expandable = collapsible && Array.isArray(children);\n const expanded = isExpanded ? isExpanded(nodeId) : false;\n const focused = isFocused ? isFocused(nodeId) : false;\n const selected = isSelected ? isSelected(nodeId) : false;\n const disabled = isDisabled ? isDisabled(nodeId) : false;\n\n const selectable =\n selectableProp != null ? selectableProp : !collapsible || !expandable;\n\n useEffect(() => {\n // On the first render a node's index will be -1. We want to wait for the real index.\n if (registerNode && unregisterNode && index !== -1) {\n registerNode({\n id: nodeId,\n idAttribute: id,\n index,\n parentId,\n selectable,\n expandable,\n disabled: disabledProp,\n onFocus,\n payload,\n });\n\n return () => {\n unregisterNode(nodeId);\n };\n }\n\n return undefined;\n }, [\n registerNode,\n unregisterNode,\n parentId,\n index,\n nodeId,\n expandable,\n disabledProp,\n id,\n selectable,\n onFocus,\n payload,\n ]);\n\n useEffect(() => {\n if (\n mapFirstChar &&\n unMapFirstChar &&\n label &&\n contentRef.current?.textContent\n ) {\n mapFirstChar(\n nodeId,\n contentRef.current?.textContent.substring(0, 1).toLowerCase()\n );\n\n return () => {\n unMapFirstChar(nodeId);\n };\n }\n return undefined;\n }, [mapFirstChar, unMapFirstChar, nodeId, label]);\n\n let ariaSelected;\n if (multiSelect) {\n ariaSelected = selected;\n } else if (selected) {\n /* single-selection trees unset aria-selected on un-selected items.\n *\n * If the tree does not support multiple selection, aria-selected\n * is set to true for the selected node and it is not present on any other node in the tree.\n * Source: https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\n ariaSelected = true;\n }\n\n const handleFocus = useCallback(\n (event) => {\n // DOM focus stays on the tree which manages focus with aria-activedescendant\n if (event.target === event.currentTarget) {\n (event.target.ownerDocument || document)\n .getElementById(treeId)\n .focus({ preventScroll: true });\n }\n\n const unfocusable = !disabledItemsFocusable && disabled;\n if (\n !focused &&\n event.currentTarget === event.target &&\n !unfocusable &&\n focus\n ) {\n focus(event, nodeId);\n }\n },\n [disabled, disabledItemsFocusable, focus, focused, nodeId, treeId]\n );\n\n const handleExpansion = useCallback(\n (event) => {\n if (!disabled) {\n if (treeviewMode && !focused && focus) {\n focus(event, nodeId);\n }\n\n const multiple =\n multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n // If already expanded and trying to toggle selection don't close\n if (expandable && !(multiple && isExpanded && isExpanded(nodeId))) {\n if (toggleExpansion) toggleExpansion(event, nodeId);\n }\n }\n },\n [\n disabled,\n expandable,\n focus,\n focused,\n isExpanded,\n multiSelect,\n nodeId,\n toggleExpansion,\n treeviewMode,\n ]\n );\n\n const handleSelection = useCallback(\n (event) => {\n if (selectable && !disabled) {\n if (treeviewMode && !focused && focus) {\n focus(event, nodeId);\n }\n\n const multiple =\n multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n if (multiple) {\n if (event.shiftKey) {\n if (selectRange) return selectRange(event, { end: nodeId });\n } else {\n if (selectNode) return selectNode(event, nodeId, true);\n }\n } else {\n if (selectNode) return selectNode(event, nodeId);\n }\n } else {\n return false;\n }\n },\n [\n disabled,\n focus,\n focused,\n multiSelect,\n nodeId,\n selectNode,\n selectRange,\n selectable,\n treeviewMode,\n ]\n );\n\n const handleMouseDown = useCallback(\n (event) => {\n preventSelection(event, disabled);\n\n if (onMouseDown) {\n onMouseDown(event);\n }\n },\n [disabled, onMouseDown]\n );\n\n const handleClick = useCallback(\n (event) => {\n if (!disabled) {\n if (expandable) {\n handleExpansion(event);\n }\n\n if (selectable) {\n handleSelection(event);\n }\n }\n\n if (onClick) {\n onClick(event);\n }\n },\n [\n disabled,\n expandable,\n handleExpansion,\n handleSelection,\n onClick,\n selectable,\n ]\n );\n\n const handleKeyDown = useCallback(\n (event) => {\n let isEventHandled = false;\n const { key } = event;\n\n if (\n event.altKey ||\n event.ctrlKey ||\n event.metaKey ||\n event.currentTarget !== event.target\n ) {\n return;\n }\n if (contentRef.current === event.currentTarget) {\n if (key === \"Enter\" || key === \" \") {\n if (expandable) {\n isEventHandled = handleExpansion(event) as unknown as boolean;\n }\n\n if (selectable) {\n isEventHandled = handleSelection(event) as boolean;\n }\n }\n\n if (isEventHandled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n },\n [expandable, handleExpansion, handleSelection, selectable]\n );\n\n const renderedContent = useMemo(\n () => (\n <StyledContent\n id={setId(id, \"button\")}\n component={href ? \"a\" : \"div\"}\n href={href}\n target={target}\n ref={contentRef}\n className={clsx(\n treeViewItemClasses.content,\n classes?.content,\n href != null && clsx(treeViewItemClasses.link, classes?.link),\n !isOpen && clsx(treeViewItemClasses.minimized, classes?.minimized)\n )}\n variant={disabled ? \"placeholderText\" : \"body\"}\n onClick={handleClick}\n onMouseDown={handleMouseDown}\n style={{\n paddingLeft:\n (expandable || icon != null ? 0 : 10) +\n level * (collapsible ? 32 : 10),\n }}\n {...(treeviewMode\n ? {\n role: \"button\",\n tabIndex: -1,\n onFocus: handleFocus,\n }\n : {\n role: \"button\",\n tabIndex: selectable || expandable ? 0 : -1,\n onKeyDown: handleKeyDown,\n \"aria-current\": selectable && selected ? \"page\" : undefined,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-controls\": expandable ? setId(id, \"group\") : undefined,\n })}\n >\n {isOpen && expandable && (expanded ? <DropUpXS /> : <DropDownXS />)}\n {!icon &&\n level === 0 &&\n !isOpen &&\n collapsedMode === \"icon\" &&\n contentRef.current?.textContent ? (\n <HvAvatar\n variant=\"square\"\n size=\"xs\"\n backgroundColor=\"secondary_80\"\n style={{ fontSize: \"15px\" }}\n >\n {contentRef.current?.textContent.substring(0, 1)}\n </HvAvatar>\n ) : (\n icon\n )}\n {isOpen && label}\n </StyledContent>\n ),\n [\n id,\n href,\n target,\n classes?.content,\n treeViewItemClasses.content,\n classes?.link,\n treeViewItemClasses.link,\n classes?.minimized,\n treeViewItemClasses.minimized,\n disabled,\n handleClick,\n handleMouseDown,\n expandable,\n icon,\n level,\n collapsible,\n treeviewMode,\n handleFocus,\n selectable,\n handleKeyDown,\n selected,\n expanded,\n label,\n ]\n );\n\n const renderedChildren = useMemo(\n () =>\n children && (\n <StyledGroup\n id={setId(id, \"group\")}\n className={clsx(treeViewItemClasses.group, classes?.group)}\n role={treeviewMode ? \"group\" : undefined}\n >\n {children}\n </StyledGroup>\n ),\n [children, treeViewItemClasses.group, classes?.group, id, treeviewMode]\n );\n\n return (\n <StyledNode\n ref={handleRef}\n id={id ?? undefined}\n className={clsx(\n treeViewItemClasses?.node,\n classes?.node,\n className,\n disabled && clsx(treeViewItemClasses.disabled, classes?.disabled),\n expandable &&\n clsx(treeViewItemClasses.expandable, classes?.expandable),\n expandable &&\n !expanded &&\n clsx(treeViewItemClasses.collapsed, classes?.collapsed),\n expandable &&\n expanded &&\n clsx(treeViewItemClasses.expanded, classes?.expanded),\n selectable &&\n !disabled &&\n clsx(treeViewItemClasses.selectable, classes?.selectable),\n !disabled &&\n !selectable &&\n clsx(treeViewItemClasses.unselectable, classes?.unselectable),\n !disabled &&\n selectable &&\n selected &&\n clsx(treeViewItemClasses.selected, classes?.selected),\n !disabled &&\n selectable &&\n !selected &&\n clsx(treeViewItemClasses.unselected, classes?.unselected),\n focused && clsx(treeViewItemClasses.focused, classes?.focused),\n !isOpen &&\n collapsedMode == \"simple\" &&\n clsx(treeViewItemClasses.hide, classes?.hide),\n !isOpen &&\n collapsedMode == \"icon\" &&\n isChildSelected &&\n isChildSelected(nodeId) &&\n clsx(treeViewItemClasses.selected, classes?.selected)\n )}\n data-hasicon={icon != null ? true : undefined}\n {...(mode === \"treeview\" && {\n role: \"treeitem\",\n \"aria-selected\": ariaSelected,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-disabled\": disabled ? true : undefined,\n })}\n {...others}\n >\n {renderedContent}\n {isOpen && (\n <DescendantProvider id={nodeId} level={level + 1}>\n {renderedChildren}\n </DescendantProvider>\n )}\n </StyledNode>\n );\n }\n);\n"],"names":["preventSelection","event","disabled","shiftKey","ctrlKey","metaKey","preventDefault","HvVerticalNavigationTreeViewItem","forwardRef","props","ref","id","idProp","className","classes","disabledProp","selectable","selectableProp","nodeId","icon","label","href","target","payload","onClick","onMouseDown","onFocus","children","others","treeViewControlContext","useContext","TreeViewControlContext","isExpanded","isSelected","isFocused","isDisabled","isChildSelected","TreeViewStateContext","treeId","mode","collapsible","toggleExpansion","multiSelect","selectNode","selectRange","disabledItemsFocusable","registerNode","unregisterNode","mapFirstChar","unMapFirstChar","focus","treeviewMode","treeitemElement","setTreeitemElement","useState","contentRef","useRef","handleRef","useForkRef","descendant","useMemo","element","isOpen","collapsedMode","VerticalNavigationContext","index","parentId","level","useDescendant","expandable","Array","isArray","expanded","focused","selected","useEffect","idAttribute","undefined","current","textContent","substring","toLowerCase","ariaSelected","handleFocus","useCallback","currentTarget","ownerDocument","document","getElementById","preventScroll","unfocusable","handleExpansion","multiple","handleSelection","end","handleMouseDown","handleClick","handleKeyDown","isEventHandled","key","altKey","stopPropagation","renderedContent","_jsxs","StyledContent","setId","component","clsx","treeViewItemClasses","content","link","minimized","variant","style","paddingLeft","role","tabIndex","onKeyDown","DropUpXS","_jsx","DropDownXS","HvAvatar","size","backgroundColor","fontSize","renderedChildren","StyledGroup","group","StyledNode","node","collapsed","unselectable","unselected","hide","DescendantProvider"],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import _styled from "@emotion/styled/base";
|
|
|
2
2
|
import { transientOptions } from "../../utils/transientOptions.js";
|
|
3
3
|
import { theme } from "@hitachivantara/uikit-styles";
|
|
4
4
|
import fade from "../../utils/hexToRgbA.js";
|
|
5
|
+
import { forwardRef } from "react";
|
|
5
6
|
import { jsx } from "@emotion/react/jsx-runtime";
|
|
6
7
|
import { HvButton } from "../Button/Button.js";
|
|
7
8
|
function _extends() {
|
|
@@ -31,9 +32,12 @@ const StyledRoot = /* @__PURE__ */ _styled("div", process.env.NODE_ENV === "prod
|
|
|
31
32
|
alignItems: "center",
|
|
32
33
|
float: "right"
|
|
33
34
|
}
|
|
34
|
-
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
35
|
-
const StyledButton = /* @__PURE__ */ _styled((props) =>
|
|
36
|
-
|
|
35
|
+
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvQWN0aW9uc0dlbmVyaWMvQWN0aW9uc0dlbmVyaWMuc3R5bGVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPMEIiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvaHYtdWlraXQtcmVhY3QvaHYtdWlraXQtcmVhY3QvcGFja2FnZXMvY29yZS9zcmMvY29tcG9uZW50cy9BY3Rpb25zR2VuZXJpYy9BY3Rpb25zR2VuZXJpYy5zdHlsZXMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBIdkJ1dHRvbiwgSHZCdXR0b25Qcm9wcyB9IGZyb20gXCJ+L2NvbXBvbmVudHNcIjtcbmltcG9ydCB7IHRyYW5zaWVudE9wdGlvbnMgfSBmcm9tIFwifi91dGlscy90cmFuc2llbnRPcHRpb25zXCI7XG5pbXBvcnQgeyB0aGVtZSB9IGZyb20gXCJAaGl0YWNoaXZhbnRhcmEvdWlraXQtc3R5bGVzXCI7XG5pbXBvcnQgZmFkZSBmcm9tIFwifi91dGlscy9oZXhUb1JnYkFcIjtcbmltcG9ydCB7IGZvcndhcmRSZWYsIFJlZiB9IGZyb20gXCJyZWFjdFwiO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUm9vdCA9IHN0eWxlZChcbiAgXCJkaXZcIixcbiAgdHJhbnNpZW50T3B0aW9uc1xuKSgoeyAkYWN0aW9uT3ZlcmZsb3cgfTogeyAkYWN0aW9uT3ZlcmZsb3c6IGJvb2xlYW4gfSkgPT4gKHtcbiAgLi4uKCRhY3Rpb25PdmVyZmxvdyAmJiB7XG4gICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbG9hdDogXCJyaWdodFwiLFxuICB9KSxcbn0pKTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZEJ1dHRvbiA9IHN0eWxlZChcbiAgZm9yd2FyZFJlZigocHJvcHM6IEh2QnV0dG9uUHJvcHMsIHJlZj86IFJlZjxIVE1MQnV0dG9uRWxlbWVudD4pID0+IHtcbiAgICByZXR1cm4gPEh2QnV0dG9uIHsuLi5wcm9wc30gcmVmPXtyZWZ9IC8+O1xuICB9KSxcbiAgdHJhbnNpZW50T3B0aW9uc1xuKSgoeyAkYmFzZUNvbG9yIH06IHsgJGJhc2VDb2xvcjogc3RyaW5nIH0pID0+ICh7XG4gIFwiJjpub3QoOmxhc3QtY2hpbGQpXCI6IHtcbiAgICBtYXJnaW5SaWdodDogdGhlbWUuc3BhY2UueHMsXG4gIH0sXG4gIFwiJjpob3ZlclwiOiB7XG4gICAgYmFja2dyb3VuZENvbG9yOiBmYWRlKCRiYXNlQ29sb3IsIDAuMyksXG4gIH0sXG59KSk7XG4iXX0= */");
|
|
36
|
+
const StyledButton = /* @__PURE__ */ _styled(forwardRef((props, ref) => {
|
|
37
|
+
return /* @__PURE__ */ jsx(HvButton, {
|
|
38
|
+
...props,
|
|
39
|
+
ref
|
|
40
|
+
});
|
|
37
41
|
}), process.env.NODE_ENV === "production" ? _extends({}, {
|
|
38
42
|
target: "e4fkrgz0"
|
|
39
43
|
}, transientOptions) : _extends({}, {
|
|
@@ -48,7 +52,7 @@ const StyledButton = /* @__PURE__ */ _styled((props) => /* @__PURE__ */ jsx(HvBu
|
|
|
48
52
|
"&:hover": {
|
|
49
53
|
backgroundColor: fade($baseColor, 0.3)
|
|
50
54
|
}
|
|
51
|
-
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
55
|
+
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvQWN0aW9uc0dlbmVyaWMvQWN0aW9uc0dlbmVyaWMuc3R5bGVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrQjRCIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvQWN0aW9uc0dlbmVyaWMvQWN0aW9uc0dlbmVyaWMuc3R5bGVzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsgSHZCdXR0b24sIEh2QnV0dG9uUHJvcHMgfSBmcm9tIFwifi9jb21wb25lbnRzXCI7XG5pbXBvcnQgeyB0cmFuc2llbnRPcHRpb25zIH0gZnJvbSBcIn4vdXRpbHMvdHJhbnNpZW50T3B0aW9uc1wiO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tIFwiQGhpdGFjaGl2YW50YXJhL3Vpa2l0LXN0eWxlc1wiO1xuaW1wb3J0IGZhZGUgZnJvbSBcIn4vdXRpbHMvaGV4VG9SZ2JBXCI7XG5pbXBvcnQgeyBmb3J3YXJkUmVmLCBSZWYgfSBmcm9tIFwicmVhY3RcIjtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZFJvb3QgPSBzdHlsZWQoXG4gIFwiZGl2XCIsXG4gIHRyYW5zaWVudE9wdGlvbnNcbikoKHsgJGFjdGlvbk92ZXJmbG93IH06IHsgJGFjdGlvbk92ZXJmbG93OiBib29sZWFuIH0pID0+ICh7XG4gIC4uLigkYWN0aW9uT3ZlcmZsb3cgJiYge1xuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgZmxvYXQ6IFwicmlnaHRcIixcbiAgfSksXG59KSk7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRCdXR0b24gPSBzdHlsZWQoXG4gIGZvcndhcmRSZWYoKHByb3BzOiBIdkJ1dHRvblByb3BzLCByZWY/OiBSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+KSA9PiB7XG4gICAgcmV0dXJuIDxIdkJ1dHRvbiB7Li4ucHJvcHN9IHJlZj17cmVmfSAvPjtcbiAgfSksXG4gIHRyYW5zaWVudE9wdGlvbnNcbikoKHsgJGJhc2VDb2xvciB9OiB7ICRiYXNlQ29sb3I6IHN0cmluZyB9KSA9PiAoe1xuICBcIiY6bm90KDpsYXN0LWNoaWxkKVwiOiB7XG4gICAgbWFyZ2luUmlnaHQ6IHRoZW1lLnNwYWNlLnhzLFxuICB9LFxuICBcIiY6aG92ZXJcIjoge1xuICAgIGJhY2tncm91bmRDb2xvcjogZmFkZSgkYmFzZUNvbG9yLCAwLjMpLFxuICB9LFxufSkpO1xuIl19 */");
|
|
52
56
|
export {
|
|
53
57
|
StyledButton,
|
|
54
58
|
StyledRoot
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionsGeneric.styles.js","sources":["../../../../src/components/ActionsGeneric/ActionsGeneric.styles.tsx"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { HvButton, HvButtonProps } from \"~/components\";\nimport { transientOptions } from \"~/utils/transientOptions\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport fade from \"~/utils/hexToRgbA\";\n\nexport const StyledRoot = styled(\n \"div\",\n transientOptions\n)(({ $actionOverflow }: { $actionOverflow: boolean }) => ({\n ...($actionOverflow && {\n display: \"flex\",\n alignItems: \"center\",\n float: \"right\",\n }),\n}));\n\nexport const StyledButton = styled(\n (props: HvButtonProps) => <HvButton {...props}
|
|
1
|
+
{"version":3,"file":"ActionsGeneric.styles.js","sources":["../../../../src/components/ActionsGeneric/ActionsGeneric.styles.tsx"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { HvButton, HvButtonProps } from \"~/components\";\nimport { transientOptions } from \"~/utils/transientOptions\";\nimport { theme } from \"@hitachivantara/uikit-styles\";\nimport fade from \"~/utils/hexToRgbA\";\nimport { forwardRef, Ref } from \"react\";\n\nexport const StyledRoot = styled(\n \"div\",\n transientOptions\n)(({ $actionOverflow }: { $actionOverflow: boolean }) => ({\n ...($actionOverflow && {\n display: \"flex\",\n alignItems: \"center\",\n float: \"right\",\n }),\n}));\n\nexport const StyledButton = styled(\n forwardRef((props: HvButtonProps, ref?: Ref<HTMLButtonElement>) => {\n return <HvButton {...props} ref={ref} />;\n }),\n transientOptions\n)(({ $baseColor }: { $baseColor: string }) => ({\n \"&:not(:last-child)\": {\n marginRight: theme.space.xs,\n },\n \"&:hover\": {\n backgroundColor: fade($baseColor, 0.3),\n },\n}));\n"],"names":["StyledRoot","process","env","NODE_ENV","_extends","target","transientOptions","label","$actionOverflow","display","alignItems","float","StyledButton","_styled","forwardRef","props","ref","HvButton","$baseColor","marginRight","theme","space","xs","backgroundColor","fade"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAOaA,MAAAA,qCACX,OAAKC,QAAAC,IAAAC,4BAAAC,SAAA,IAAA;AAAA,EAAAC,QAAA;AAAA,GACLC,gBAAgB,IAAAF,SAAA,IAAA;AAAA,EAAAC,QAAA;AAAA,EAAAE,OAAA;AAAA,GAAhBD,gBAAgB,CACjB,EAAC,CAAC;AAAA,EAAEE;AAA8C,OAAO;AAAA,EACxD,GAAIA,mBAAmB;AAAA,IACrBC,SAAS;AAAA,IACTC,YAAY;AAAA,IACZC,OAAO;AAAA,EACT;AACF,IAAEV,QAAAC,IAAAC,aAAC,eAAA,KAAA,itDAAA;AAEI,MAAMS,eAAeC,wBAC1BC,WAAW,CAACC,OAAsBC,QAAiC;AACjE,6BAAQC,UAAQ;AAAA,IAAA,GAAKF;AAAAA,IAAOC;AAAAA,EAAAA,CAAY;AAC1C,CAAC,GAACf,QAAAC,IAAAC,4BAAAC,SAAA,IAAA;AAAA,EAAAC,QAAA;AAAA,GACFC,gBAAgB,IAAAF,SAAA,IAAA;AAAA,EAAAC,QAAA;AAAA,EAAAE,OAAA;AAAA,GAAhBD,gBAAgB,CACjB,EAAC,CAAC;AAAA,EAAEY;AAAmC,OAAO;AAAA,EAC7C,sBAAsB;AAAA,IACpBC,aAAaC,MAAMC,MAAMC;AAAAA,EAC3B;AAAA,EACA,WAAW;AAAA,IACTC,iBAAiBC,KAAKN,YAAY,GAAG;AAAA,EACvC;AACF,IAAEjB,QAAAC,IAAAC,aAAC,eAAA,KAAA,itDAAA;"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import _styled from "@emotion/styled/base";
|
|
2
2
|
import { Close } from "@hitachivantara/uikit-react-icons";
|
|
3
|
+
import { forwardRef } from "react";
|
|
3
4
|
import fade from "../../../../utils/hexToRgbA.js";
|
|
4
5
|
import { transientOptions } from "../../../../utils/transientOptions.js";
|
|
5
6
|
import { jsx } from "@emotion/react/jsx-runtime";
|
|
@@ -33,11 +34,14 @@ const StyledActionContainer = /* @__PURE__ */ _styled("div", process.env.NODE_EN
|
|
|
33
34
|
} : {
|
|
34
35
|
name: "tinu7p",
|
|
35
36
|
styles: "display:flex;flex-direction:column;height:100%;justify-content:space-between",
|
|
36
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
37
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvQmFubmVyL0Jhbm5lckNvbnRlbnQvQWN0aW9uQ29udGFpbmVyL0FjdGlvbkNvbnRhaW5lci5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFxQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay9odi11aWtpdC1yZWFjdC9odi11aWtpdC1yZWFjdC9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL0Jhbm5lci9CYW5uZXJDb250ZW50L0FjdGlvbkNvbnRhaW5lci9BY3Rpb25Db250YWluZXIuc3R5bGVzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsgQ2xvc2UgfSBmcm9tIFwiQGhpdGFjaGl2YW50YXJhL3Vpa2l0LXJlYWN0LWljb25zXCI7XG5pbXBvcnQgeyBmb3J3YXJkUmVmLCBSZWYgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEh2QnV0dG9uLCBIdkJ1dHRvblByb3BzIH0gZnJvbSBcIn4vY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgb3V0bGluZVN0eWxlcyB9IGZyb20gXCJ+L3V0aWxzXCI7XG5pbXBvcnQgZmFkZSBmcm9tIFwifi91dGlscy9oZXhUb1JnYkFcIjtcbmltcG9ydCB7IHRyYW5zaWVudE9wdGlvbnMgfSBmcm9tIFwifi91dGlscy90cmFuc2llbnRPcHRpb25zXCI7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRBY3Rpb25Db250YWluZXIgPSBzdHlsZWQoXCJkaXZcIikoe1xuICBkaXNwbGF5OiBcImZsZXhcIixcbiAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgaGVpZ2h0OiBcIjEwMCVcIixcbiAganVzdGlmeUNvbnRlbnQ6IFwic3BhY2UtYmV0d2VlblwiLFxufSk7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRCdXR0b24gPSBzdHlsZWQoXG4gIGZvcndhcmRSZWYoKHByb3BzOiBIdkJ1dHRvblByb3BzLCByZWY/OiBSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+KSA9PiB7XG4gICAgcmV0dXJuIDxIdkJ1dHRvbiB7Li4ucHJvcHN9IHJlZj17cmVmfSAvPjtcbiAgfSksXG4gIHRyYW5zaWVudE9wdGlvbnNcbikoKHsgJGJhc2VDb2xvciB9OiB7ICRiYXNlQ29sb3I6IHN0cmluZyB9KSA9PiAoe1xuICBhbGlnblNlbGY6IFwiZmxleC1lbmRcIixcbiAgY3Vyc29yOiBcInBvaW50ZXJcIixcbiAgXCImOmhvdmVyXCI6IHtcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IGZhZGUoJGJhc2VDb2xvciwgMC4zKSxcbiAgfSxcbiAgXCImOmZvY3VzXCI6IHtcbiAgICAuLi5vdXRsaW5lU3R5bGVzLFxuICB9LFxufSkpO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQ2xvc2UgPSBzdHlsZWQoQ2xvc2UpKHtcbiAgd2lkdGg6IFwiMzJweFwiLFxuICBoZWlnaHQ6IFwiMzJweFwiLFxufSk7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRBY3Rpb25zSW5uZXJDb250YWluZXIgPSBzdHlsZWQoXCJkaXZcIikoe1xuICBmbGV4RGlyZWN0aW9uOiBcInJvd1wiLFxuICBtYXJnaW5Ub3A6IFwiOHB4XCIsIC8vIGF2b2lkIG92ZXJsYXAgd2l0aCBjbG9zZSBidXR0b24gb3V0bGluZSBmb2N1cyByaW5nXG59KTtcbiJdfQ== */",
|
|
37
38
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
38
39
|
});
|
|
39
|
-
const StyledButton = /* @__PURE__ */ _styled((props) =>
|
|
40
|
-
|
|
40
|
+
const StyledButton = /* @__PURE__ */ _styled(forwardRef((props, ref) => {
|
|
41
|
+
return /* @__PURE__ */ jsx(HvButton, {
|
|
42
|
+
...props,
|
|
43
|
+
ref
|
|
44
|
+
});
|
|
41
45
|
}), process.env.NODE_ENV === "production" ? _extends({}, {
|
|
42
46
|
target: "euz8sqk2"
|
|
43
47
|
}, transientOptions) : _extends({}, {
|
|
@@ -54,7 +58,7 @@ const StyledButton = /* @__PURE__ */ _styled((props) => /* @__PURE__ */ jsx(HvBu
|
|
|
54
58
|
"&:focus": {
|
|
55
59
|
...outlineStyles
|
|
56
60
|
}
|
|
57
|
-
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
61
|
+
}), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvQmFubmVyL0Jhbm5lckNvbnRlbnQvQWN0aW9uQ29udGFpbmVyL0FjdGlvbkNvbnRhaW5lci5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWU0QiIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay9odi11aWtpdC1yZWFjdC9odi11aWtpdC1yZWFjdC9wYWNrYWdlcy9jb3JlL3NyYy9jb21wb25lbnRzL0Jhbm5lci9CYW5uZXJDb250ZW50L0FjdGlvbkNvbnRhaW5lci9BY3Rpb25Db250YWluZXIuc3R5bGVzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsgQ2xvc2UgfSBmcm9tIFwiQGhpdGFjaGl2YW50YXJhL3Vpa2l0LXJlYWN0LWljb25zXCI7XG5pbXBvcnQgeyBmb3J3YXJkUmVmLCBSZWYgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEh2QnV0dG9uLCBIdkJ1dHRvblByb3BzIH0gZnJvbSBcIn4vY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgb3V0bGluZVN0eWxlcyB9IGZyb20gXCJ+L3V0aWxzXCI7XG5pbXBvcnQgZmFkZSBmcm9tIFwifi91dGlscy9oZXhUb1JnYkFcIjtcbmltcG9ydCB7IHRyYW5zaWVudE9wdGlvbnMgfSBmcm9tIFwifi91dGlscy90cmFuc2llbnRPcHRpb25zXCI7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRBY3Rpb25Db250YWluZXIgPSBzdHlsZWQoXCJkaXZcIikoe1xuICBkaXNwbGF5OiBcImZsZXhcIixcbiAgZmxleERpcmVjdGlvbjogXCJjb2x1bW5cIixcbiAgaGVpZ2h0OiBcIjEwMCVcIixcbiAganVzdGlmeUNvbnRlbnQ6IFwic3BhY2UtYmV0d2VlblwiLFxufSk7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRCdXR0b24gPSBzdHlsZWQoXG4gIGZvcndhcmRSZWYoKHByb3BzOiBIdkJ1dHRvblByb3BzLCByZWY/OiBSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+KSA9PiB7XG4gICAgcmV0dXJuIDxIdkJ1dHRvbiB7Li4ucHJvcHN9IHJlZj17cmVmfSAvPjtcbiAgfSksXG4gIHRyYW5zaWVudE9wdGlvbnNcbikoKHsgJGJhc2VDb2xvciB9OiB7ICRiYXNlQ29sb3I6IHN0cmluZyB9KSA9PiAoe1xuICBhbGlnblNlbGY6IFwiZmxleC1lbmRcIixcbiAgY3Vyc29yOiBcInBvaW50ZXJcIixcbiAgXCImOmhvdmVyXCI6IHtcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IGZhZGUoJGJhc2VDb2xvciwgMC4zKSxcbiAgfSxcbiAgXCImOmZvY3VzXCI6IHtcbiAgICAuLi5vdXRsaW5lU3R5bGVzLFxuICB9LFxufSkpO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQ2xvc2UgPSBzdHlsZWQoQ2xvc2UpKHtcbiAgd2lkdGg6IFwiMzJweFwiLFxuICBoZWlnaHQ6IFwiMzJweFwiLFxufSk7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRBY3Rpb25zSW5uZXJDb250YWluZXIgPSBzdHlsZWQoXCJkaXZcIikoe1xuICBmbGV4RGlyZWN0aW9uOiBcInJvd1wiLFxuICBtYXJnaW5Ub3A6IFwiOHB4XCIsIC8vIGF2b2lkIG92ZXJsYXAgd2l0aCBjbG9zZSBidXR0b24gb3V0bGluZSBmb2N1cyByaW5nXG59KTtcbiJdfQ== */");
|
|
58
62
|
const StyledClose = /* @__PURE__ */ _styled(Close, process.env.NODE_ENV === "production" ? {
|
|
59
63
|
target: "euz8sqk1"
|
|
60
64
|
} : {
|
|
@@ -66,7 +70,7 @@ const StyledClose = /* @__PURE__ */ _styled(Close, process.env.NODE_ENV === "pro
|
|
|
66
70
|
} : {
|
|
67
71
|
name: "68x97p",
|
|
68
72
|
styles: "width:32px;height:32px",
|
|
69
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
73
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvQmFubmVyL0Jhbm5lckNvbnRlbnQvQWN0aW9uQ29udGFpbmVyL0FjdGlvbkNvbnRhaW5lci5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStCMkIiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvaHYtdWlraXQtcmVhY3QvaHYtdWlraXQtcmVhY3QvcGFja2FnZXMvY29yZS9zcmMvY29tcG9uZW50cy9CYW5uZXIvQmFubmVyQ29udGVudC9BY3Rpb25Db250YWluZXIvQWN0aW9uQ29udGFpbmVyLnN0eWxlcy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IENsb3NlIH0gZnJvbSBcIkBoaXRhY2hpdmFudGFyYS91aWtpdC1yZWFjdC1pY29uc1wiO1xuaW1wb3J0IHsgZm9yd2FyZFJlZiwgUmVmIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBIdkJ1dHRvbiwgSHZCdXR0b25Qcm9wcyB9IGZyb20gXCJ+L2NvbXBvbmVudHNcIjtcbmltcG9ydCB7IG91dGxpbmVTdHlsZXMgfSBmcm9tIFwifi91dGlsc1wiO1xuaW1wb3J0IGZhZGUgZnJvbSBcIn4vdXRpbHMvaGV4VG9SZ2JBXCI7XG5pbXBvcnQgeyB0cmFuc2llbnRPcHRpb25zIH0gZnJvbSBcIn4vdXRpbHMvdHJhbnNpZW50T3B0aW9uc1wiO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQWN0aW9uQ29udGFpbmVyID0gc3R5bGVkKFwiZGl2XCIpKHtcbiAgZGlzcGxheTogXCJmbGV4XCIsXG4gIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gIGhlaWdodDogXCIxMDAlXCIsXG4gIGp1c3RpZnlDb250ZW50OiBcInNwYWNlLWJldHdlZW5cIixcbn0pO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKFxuICBmb3J3YXJkUmVmKChwcm9wczogSHZCdXR0b25Qcm9wcywgcmVmPzogUmVmPEhUTUxCdXR0b25FbGVtZW50PikgPT4ge1xuICAgIHJldHVybiA8SHZCdXR0b24gey4uLnByb3BzfSByZWY9e3JlZn0gLz47XG4gIH0pLFxuICB0cmFuc2llbnRPcHRpb25zXG4pKCh7ICRiYXNlQ29sb3IgfTogeyAkYmFzZUNvbG9yOiBzdHJpbmcgfSkgPT4gKHtcbiAgYWxpZ25TZWxmOiBcImZsZXgtZW5kXCIsXG4gIGN1cnNvcjogXCJwb2ludGVyXCIsXG4gIFwiJjpob3ZlclwiOiB7XG4gICAgYmFja2dyb3VuZENvbG9yOiBmYWRlKCRiYXNlQ29sb3IsIDAuMyksXG4gIH0sXG4gIFwiJjpmb2N1c1wiOiB7XG4gICAgLi4ub3V0bGluZVN0eWxlcyxcbiAgfSxcbn0pKTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZENsb3NlID0gc3R5bGVkKENsb3NlKSh7XG4gIHdpZHRoOiBcIjMycHhcIixcbiAgaGVpZ2h0OiBcIjMycHhcIixcbn0pO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQWN0aW9uc0lubmVyQ29udGFpbmVyID0gc3R5bGVkKFwiZGl2XCIpKHtcbiAgZmxleERpcmVjdGlvbjogXCJyb3dcIixcbiAgbWFyZ2luVG9wOiBcIjhweFwiLCAvLyBhdm9pZCBvdmVybGFwIHdpdGggY2xvc2UgYnV0dG9uIG91dGxpbmUgZm9jdXMgcmluZ1xufSk7XG4iXX0= */",
|
|
70
74
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
71
75
|
});
|
|
72
76
|
const StyledActionsInnerContainer = /* @__PURE__ */ _styled("div", process.env.NODE_ENV === "production" ? {
|
|
@@ -80,7 +84,7 @@ const StyledActionsInnerContainer = /* @__PURE__ */ _styled("div", process.env.N
|
|
|
80
84
|
} : {
|
|
81
85
|
name: "cb7jcz",
|
|
82
86
|
styles: "flex-direction:row;margin-top:8px",
|
|
83
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
87
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2h2LXVpa2l0LXJlYWN0L2h2LXVpa2l0LXJlYWN0L3BhY2thZ2VzL2NvcmUvc3JjL2NvbXBvbmVudHMvQmFubmVyL0Jhbm5lckNvbnRlbnQvQWN0aW9uQ29udGFpbmVyL0FjdGlvbkNvbnRhaW5lci5zdHlsZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9DMkMiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvaHYtdWlraXQtcmVhY3QvaHYtdWlraXQtcmVhY3QvcGFja2FnZXMvY29yZS9zcmMvY29tcG9uZW50cy9CYW5uZXIvQmFubmVyQ29udGVudC9BY3Rpb25Db250YWluZXIvQWN0aW9uQ29udGFpbmVyLnN0eWxlcy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IENsb3NlIH0gZnJvbSBcIkBoaXRhY2hpdmFudGFyYS91aWtpdC1yZWFjdC1pY29uc1wiO1xuaW1wb3J0IHsgZm9yd2FyZFJlZiwgUmVmIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBIdkJ1dHRvbiwgSHZCdXR0b25Qcm9wcyB9IGZyb20gXCJ+L2NvbXBvbmVudHNcIjtcbmltcG9ydCB7IG91dGxpbmVTdHlsZXMgfSBmcm9tIFwifi91dGlsc1wiO1xuaW1wb3J0IGZhZGUgZnJvbSBcIn4vdXRpbHMvaGV4VG9SZ2JBXCI7XG5pbXBvcnQgeyB0cmFuc2llbnRPcHRpb25zIH0gZnJvbSBcIn4vdXRpbHMvdHJhbnNpZW50T3B0aW9uc1wiO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQWN0aW9uQ29udGFpbmVyID0gc3R5bGVkKFwiZGl2XCIpKHtcbiAgZGlzcGxheTogXCJmbGV4XCIsXG4gIGZsZXhEaXJlY3Rpb246IFwiY29sdW1uXCIsXG4gIGhlaWdodDogXCIxMDAlXCIsXG4gIGp1c3RpZnlDb250ZW50OiBcInNwYWNlLWJldHdlZW5cIixcbn0pO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKFxuICBmb3J3YXJkUmVmKChwcm9wczogSHZCdXR0b25Qcm9wcywgcmVmPzogUmVmPEhUTUxCdXR0b25FbGVtZW50PikgPT4ge1xuICAgIHJldHVybiA8SHZCdXR0b24gey4uLnByb3BzfSByZWY9e3JlZn0gLz47XG4gIH0pLFxuICB0cmFuc2llbnRPcHRpb25zXG4pKCh7ICRiYXNlQ29sb3IgfTogeyAkYmFzZUNvbG9yOiBzdHJpbmcgfSkgPT4gKHtcbiAgYWxpZ25TZWxmOiBcImZsZXgtZW5kXCIsXG4gIGN1cnNvcjogXCJwb2ludGVyXCIsXG4gIFwiJjpob3ZlclwiOiB7XG4gICAgYmFja2dyb3VuZENvbG9yOiBmYWRlKCRiYXNlQ29sb3IsIDAuMyksXG4gIH0sXG4gIFwiJjpmb2N1c1wiOiB7XG4gICAgLi4ub3V0bGluZVN0eWxlcyxcbiAgfSxcbn0pKTtcblxuZXhwb3J0IGNvbnN0IFN0eWxlZENsb3NlID0gc3R5bGVkKENsb3NlKSh7XG4gIHdpZHRoOiBcIjMycHhcIixcbiAgaGVpZ2h0OiBcIjMycHhcIixcbn0pO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkQWN0aW9uc0lubmVyQ29udGFpbmVyID0gc3R5bGVkKFwiZGl2XCIpKHtcbiAgZmxleERpcmVjdGlvbjogXCJyb3dcIixcbiAgbWFyZ2luVG9wOiBcIjhweFwiLCAvLyBhdm9pZCBvdmVybGFwIHdpdGggY2xvc2UgYnV0dG9uIG91dGxpbmUgZm9jdXMgcmluZ1xufSk7XG4iXX0= */",
|
|
84
88
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
85
89
|
});
|
|
86
90
|
export {
|
package/dist/esm/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionContainer.styles.js","sources":["../../../../../../src/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.tsx"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { Close } from \"@hitachivantara/uikit-react-icons\";\nimport { HvButton, HvButtonProps } from \"~/components\";\nimport { outlineStyles } from \"~/utils\";\nimport fade from \"~/utils/hexToRgbA\";\nimport { transientOptions } from \"~/utils/transientOptions\";\n\nexport const StyledActionContainer = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"column\",\n height: \"100%\",\n justifyContent: \"space-between\",\n});\n\nexport const StyledButton = styled(\n (props: HvButtonProps) => <HvButton {...props}
|
|
1
|
+
{"version":3,"file":"ActionContainer.styles.js","sources":["../../../../../../src/components/Banner/BannerContent/ActionContainer/ActionContainer.styles.tsx"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { Close } from \"@hitachivantara/uikit-react-icons\";\nimport { forwardRef, Ref } from \"react\";\nimport { HvButton, HvButtonProps } from \"~/components\";\nimport { outlineStyles } from \"~/utils\";\nimport fade from \"~/utils/hexToRgbA\";\nimport { transientOptions } from \"~/utils/transientOptions\";\n\nexport const StyledActionContainer = styled(\"div\")({\n display: \"flex\",\n flexDirection: \"column\",\n height: \"100%\",\n justifyContent: \"space-between\",\n});\n\nexport const StyledButton = styled(\n forwardRef((props: HvButtonProps, ref?: Ref<HTMLButtonElement>) => {\n return <HvButton {...props} ref={ref} />;\n }),\n transientOptions\n)(({ $baseColor }: { $baseColor: string }) => ({\n alignSelf: \"flex-end\",\n cursor: \"pointer\",\n \"&:hover\": {\n backgroundColor: fade($baseColor, 0.3),\n },\n \"&:focus\": {\n ...outlineStyles,\n },\n}));\n\nexport const StyledClose = styled(Close)({\n width: \"32px\",\n height: \"32px\",\n});\n\nexport const StyledActionsInnerContainer = styled(\"div\")({\n flexDirection: \"row\",\n marginTop: \"8px\", // avoid overlap with close button outline focus ring\n});\n"],"names":["StyledActionContainer","process","env","NODE_ENV","target","label","name","styles","map","toString","_EMOTION_STRINGIFIED_CSS_ERROR__","StyledButton","_styled","forwardRef","props","ref","HvButton","_extends","transientOptions","$baseColor","alignSelf","cursor","backgroundColor","fade","outlineStyles","StyledClose","Close","StyledActionsInnerContainer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAQO,MAAMA,wBAA+B,wBAAA,OAAKC,QAAAC,IAAAC,aAAA,eAAA;AAAA,EAAAC,QAAA;AAAA,IAAA;AAAA,EAAAA,QAAA;AAAA,EAAAC,OAAA;AAAA,CAAA,EAACJ,QAAAC,IAAAC,aAAA,eAAA;AAAA,EAAAG,MAAA;AAAA,EAAAC,QAAA;AAAA,IAAA;AAAA,EAAAD,MAAA;AAAA,EAAAC,QAAA;AAAA,EAAAC,KAAA;AAAA,EAAAC,UAAAC;AAAA,CAKhD;AAEK,MAAMC,eAAeC,wBAC1BC,WAAW,CAACC,OAAsBC,QAAiC;AACjE,6BAAQC,UAAQ;AAAA,IAAA,GAAKF;AAAAA,IAAOC;AAAAA,EAAAA,CAAY;AAC1C,CAAC,GAACd,QAAAC,IAAAC,4BAAAc,SAAA,IAAA;AAAA,EAAAb,QAAA;AAAA,GACFc,gBAAgB,IAAAD,SAAA,IAAA;AAAA,EAAAb,QAAA;AAAA,EAAAC,OAAA;AAAA,GAAhBa,gBAAgB,CACjB,EAAC,CAAC;AAAA,EAAEC;AAAmC,OAAO;AAAA,EAC7CC,WAAW;AAAA,EACXC,QAAQ;AAAA,EACR,WAAW;AAAA,IACTC,iBAAiBC,KAAKJ,YAAY,GAAG;AAAA,EACvC;AAAA,EACA,WAAW;AAAA,IACT,GAAGK;AAAAA,EACL;AACF,IAAEvB,QAAAC,IAAAC,aAAC,eAAA,KAAA,ynEAAA;AAEI,MAAMsB,cAAqBC,wBAAAA,OAAKzB,QAAAC,IAAAC,aAAA,eAAA;AAAA,EAAAC,QAAA;AAAA,IAAA;AAAA,EAAAA,QAAA;AAAA,EAAAC,OAAA;AAAA,CAAA,EAACJ,QAAAC,IAAAC,aAAA,eAAA;AAAA,EAAAG,MAAA;AAAA,EAAAC,QAAA;AAAA,IAAA;AAAA,EAAAD,MAAA;AAAA,EAAAC,QAAA;AAAA,EAAAC,KAAA;AAAA,EAAAC,UAAAC;AAAA,CAGtC;AAEK,MAAMiB,8BAAqC,wBAAA,OAAK1B,QAAAC,IAAAC,aAAA,eAAA;AAAA,EAAAC,QAAA;AAAA,IAAA;AAAA,EAAAA,QAAA;AAAA,EAAAC,OAAA;AAAA,CAAA,EAACJ,QAAAC,IAAAC,aAAA,eAAA;AAAA,EAAAG,MAAA;AAAA,EAAAC,QAAA;AAAA,IAAA;AAAA,EAAAD,MAAA;AAAA,EAAAC,QAAA;AAAA,EAAAC,KAAA;AAAA,EAAAC,UAAAC;AAAA,CAGtD;"}
|
|
@@ -257,6 +257,7 @@ const HvBaseDropdown = ({
|
|
|
257
257
|
children: /* @__PURE__ */ jsx(StyledPanel, {
|
|
258
258
|
id: setId(elementId, "children-container"),
|
|
259
259
|
className: clsx(baseDropdownClasses.panel, classes == null ? void 0 : classes.panel),
|
|
260
|
+
$popperPlacement: popperPlacement.includes("top") ? "top" : "bottom",
|
|
260
261
|
children
|
|
261
262
|
})
|
|
262
263
|
}), popperPlacement.includes("top") && /* @__PURE__ */ jsx(StyledExtension, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseDropdown.js","sources":["../../../../src/components/BaseDropdown/BaseDropdown.tsx"],"sourcesContent":["import React, { useMemo, useState, useCallback } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport clsx from \"clsx\";\nimport BaseDropdownContext from \"./BaseDropdownContext\";\nimport {\n ClickAwayListener,\n PopperPlacementType,\n PopperProps,\n} from \"@mui/material\";\nimport { useControlled, useForkRef, useTheme, useUniqueId } from \"~/hooks\";\nimport { isKeypress, keyboardCodes, setId } from \"~/utils\";\nimport { getFirstAndLastFocus } from \"~/utils/focusableElementFinder\";\nimport { HvBaseProps } from \"~/types\";\nimport {\n StyledAnchor,\n StyledContainer,\n StyledDropDownXS,\n StyledDropUpXS,\n StyledExtension,\n StyledHeaderRoot,\n StyledPanel,\n StyledPlaceholder,\n StyledRoot,\n StyledSelection,\n} from \"./BaseDropdown.styles\";\nimport { usePopper } from \"react-popper\";\nimport { detectOverflow, ModifierArguments, Options } from \"@popperjs/core\";\nimport baseDropdownClasses, {\n HvBaseDropdownClasses,\n} from \"./baseDropdownClasses\";\n\nconst { Tab, Enter, Esc, Space, ArrowDown } = keyboardCodes;\n\nexport interface HvBaseDropdownProps\n extends HvBaseProps<HTMLDivElement, { placeholder }> {\n /**\n * The role of the element that triggers the popup.\n *\n * Defaults to \"combobox\" if `component` and the default\n * \"textbox\" header is used, undefined otherwise.\n */\n role?: string;\n /**\n * Header placeholder.\n */\n placeholder?: string | React.ReactNode;\n /**\n * If `true` the dropdown is disabled unable to be interacted, if `false` it is enabled.\n */\n disabled?: boolean;\n /**\n * If `true` the dropdown will be in read only mode, unable to be interacted.\n */\n readOnly?: boolean;\n /**\n * Disable the portal behavior.\n * The children stay within it's parent DOM hierarchy.\n */\n disablePortal?: boolean;\n /**\n * If `true` the dropdown width depends size of content if `false` the width depends on the header size.\n * Defaults to `false`.\n */\n variableWidth?: boolean;\n /**\n * If `true` the dropdown starts opened if `false` it starts closed.\n */\n expanded?: boolean;\n /**\n * When uncontrolled, defines the initial expanded state.\n */\n defaultExpanded?: boolean;\n /**\n * An object containing props to be wired to the popper component.\n */\n popperProps?: Partial<PopperProps>;\n /**\n * Placement of the dropdown.\n */\n placement?: \"left\" | \"right\";\n /**\n * Replacement for the header component.\n */\n component?: React.ReactNode;\n /**\n * Adornment to replace the default arrows.\n */\n adornment?: React.ReactNode;\n /**\n * When dropdown changes the expanded state.\n */\n onToggle?: (event: Event, open: boolean) => void;\n /**\n * When user click outside the open container.\n */\n onClickOutside?: (event: Event) => void;\n /**\n * Callback called when the dropdown is opened and ready,\n * commonly used to set focus to the content.\n */\n onContainerCreation?: (container: HTMLElement | null) => void;\n /**\n * Attributes applied to the dropdown header element.\n */\n dropdownHeaderProps?: React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n >;\n /**\n * Pass a ref to the dropdown header element.\n */\n dropdownHeaderRef?: React.Ref<any>;\n /**\n * A Jss Object used to override or extend the component styles applied.\n */\n classes?: HvBaseDropdownClasses;\n}\n\nexport const HvBaseDropdown = ({\n id,\n className,\n classes,\n children,\n role,\n placeholder,\n component,\n adornment,\n expanded,\n dropdownHeaderProps,\n defaultExpanded = false,\n disabled = false,\n readOnly = false,\n disablePortal = false,\n variableWidth = false,\n placement = \"right\",\n popperProps = {},\n dropdownHeaderRef: dropdownHeaderRefProp,\n onToggle,\n onClickOutside,\n onContainerCreation,\n ...others\n}: HvBaseDropdownProps) => {\n const { rootId } = useTheme();\n\n const [isOpen, setIsOpen] = useControlled(expanded, Boolean(defaultExpanded));\n\n const [referenceElement, setReferenceElement] = useState<HTMLElement | null>(\n null\n );\n const [popperElement, setPopperElement] = useState<HTMLElement | null>(null);\n const [popperMaxSize, setPopperMaxSize] = useState<{\n width?: number;\n height?: number;\n }>({});\n\n const handleDropdownHeaderRefProp = useForkRef(\n dropdownHeaderRefProp,\n dropdownHeaderProps?.ref\n );\n const handleDropdownHeaderRef = useForkRef(\n setReferenceElement,\n handleDropdownHeaderRefProp\n );\n\n const ariaRole = role || (component == null ? \"combobox\" : undefined);\n\n const elementId = useUniqueId(id, \"hvbasedropdown\");\n\n const bottom: PopperPlacementType =\n placement && `bottom-${placement === \"right\" ? \"start\" : \"end\"}`;\n\n const extensionWidth = referenceElement\n ? referenceElement?.offsetWidth\n : \"inherit\";\n\n const { modifiers: popperPropsModifiers = [], ...otherPopperProps } =\n popperProps;\n\n const onFirstUpdate = useCallback(() => {\n if (onContainerCreation) onContainerCreation(popperElement);\n }, [onContainerCreation, popperElement]);\n\n const widthCalculator = useCallback(\n ({ state }: ModifierArguments<Options>) => {\n state.styles.popper.width = `${state.rects.reference.width}px`;\n },\n []\n );\n\n const widthCalculatorEffect = useCallback(\n ({ state }: ModifierArguments<Options>) => {\n state.elements.popper.style.width = `${\n (state.elements.reference as any).offsetWidth\n }px`;\n },\n []\n );\n\n const applyMaxSizeCalculator = useCallback(\n ({ state }: ModifierArguments<Options>) => {\n // The `maxSize` modifier provides this data\n const { width, height } = state.modifiersData.maxSize;\n if (width !== popperMaxSize?.width || height !== popperMaxSize?.height) {\n setPopperMaxSize({ width, height });\n }\n\n state.styles.popper = {\n ...state.styles.popper,\n maxWidth: `${width}px`,\n maxHeight: `${height}px`,\n };\n },\n [popperMaxSize]\n );\n\n const maxSizeCalculator = useCallback(\n ({ state, name, options }: ModifierArguments<Options>) => {\n const overflow = detectOverflow(state, options);\n\n const x = state.modifiersData.preventOverflow?.x || 0;\n const y = state.modifiersData.preventOverflow?.y || 0;\n\n const popperWidth = state.rects.popper.width;\n const popperHeight = state.rects.popper.height;\n\n const basePlacement = state.placement.split(\"-\")[0];\n\n const widthProp = basePlacement === \"left\" ? \"left\" : \"right\";\n const heightProp = basePlacement === \"top\" ? \"top\" : \"bottom\";\n\n state.modifiersData[name] = {\n width: popperWidth - overflow[widthProp] - x,\n height: popperHeight - overflow[heightProp] - y,\n };\n },\n []\n );\n\n const modifiers: any = useMemo(\n () => [\n {\n name: \"variableWidth\",\n enabled: !variableWidth,\n phase: \"beforeWrite\",\n requires: [\"computeStyles\"],\n fn: widthCalculator,\n effect: widthCalculatorEffect,\n },\n {\n name: \"maxSize\",\n enabled: true,\n phase: \"main\",\n requiresIfExists: [\"offset\", \"preventOverflow\", \"flip\"],\n fn: maxSizeCalculator,\n },\n {\n name: \"applyMaxSize\",\n enabled: true,\n phase: \"beforeWrite\",\n requires: [\"maxSize\"],\n fn: applyMaxSizeCalculator,\n },\n ...popperPropsModifiers,\n ],\n [\n maxSizeCalculator,\n applyMaxSizeCalculator,\n popperPropsModifiers,\n variableWidth,\n widthCalculator,\n widthCalculatorEffect,\n ]\n );\n\n const { styles: popperStyles, attributes } = usePopper(\n referenceElement,\n popperElement,\n {\n placement: bottom,\n modifiers,\n onFirstUpdate,\n ...otherPopperProps,\n }\n );\n\n let popperPlacement = \"bottom\";\n if (attributes.popper) {\n popperPlacement = attributes.popper[\"data-popper-placement\"];\n }\n\n const handleToggle = useCallback(\n (event) => {\n if (event && !isKeypress(event, Tab)) {\n event.preventDefault();\n }\n\n // We are checking specifically for false because if \"isKeypress\" returns true or undefined it should continue\n const notControlKey = [Tab, Enter, Esc, ArrowDown, Space].every(\n (key) => isKeypress(event, key) === false\n );\n\n const ignoredCombinations =\n (isKeypress(event, Esc) && !isOpen) ||\n (isKeypress(event, ArrowDown) && isOpen) ||\n (isKeypress(event, Tab) && !isOpen);\n\n if (disabled || notControlKey || ignoredCombinations) return;\n\n const newOpen = !isOpen;\n\n /* If about to close focus on the header component. */\n const focusHeader = () => {\n if (!newOpen) {\n // Focus-ring won't be visible even if using the keyboard:\n // https://github.com/WICG/focus-visible/issues/88\n referenceElement?.focus({ preventScroll: true });\n }\n\n return newOpen;\n };\n setIsOpen(focusHeader());\n\n onToggle?.(event, newOpen);\n },\n [isOpen, disabled, setIsOpen, onToggle, referenceElement]\n );\n\n const headerComponent = (() => {\n if (component) {\n return React.cloneElement(component as React.ReactElement, {\n ref: handleDropdownHeaderRef,\n });\n }\n\n return (\n <StyledHeaderRoot\n id={setId(id, \"header\")}\n className={clsx(\n baseDropdownClasses.header,\n classes?.header,\n disabled &&\n clsx(baseDropdownClasses.headerDisabled, classes?.headerDisabled),\n readOnly &&\n clsx(baseDropdownClasses.headerReadOnly, classes?.headerReadOnly),\n isOpen && clsx(baseDropdownClasses.headerOpen, classes?.headerOpen),\n isOpen &&\n popperPlacement.includes(\"top\") &&\n clsx(baseDropdownClasses.headerOpenUp, classes?.headerOpenUp),\n isOpen &&\n popperPlacement.includes(\"bottom\") &&\n clsx(baseDropdownClasses.headerOpenDown, classes?.headerOpenDown)\n )}\n $disabled={disabled}\n $readOnly={readOnly}\n $opened={isOpen}\n $openedUp={isOpen && popperPlacement.includes(\"top\")}\n $openedDown={isOpen && popperPlacement.includes(\"bottom\")}\n role={ariaRole === \"combobox\" ? \"textbox\" : undefined}\n style={disabled || readOnly ? { pointerEvents: \"none\" } : undefined}\n aria-controls={\n isOpen ? setId(elementId, \"children-container\") : undefined\n }\n aria-label={others[\"aria-label\"] ?? undefined}\n aria-labelledby={others[\"aria-labelledby\"] ?? undefined}\n // Removes the element from the navigation sequence for keyboard focus if disabled\n tabIndex={disabled ? -1 : 0}\n ref={handleDropdownHeaderRef}\n {...dropdownHeaderProps}\n >\n <StyledSelection\n className={clsx(baseDropdownClasses.selection, classes?.selection)}\n >\n {placeholder && typeof placeholder === \"string\" ? (\n <StyledPlaceholder\n className={clsx(\n baseDropdownClasses.placeholder,\n classes?.placeholder,\n disabled &&\n clsx(\n baseDropdownClasses.selectionDisabled,\n classes?.selectionDisabled\n )\n )}\n $disabled={disabled}\n variant=\"body\"\n >\n {placeholder}\n </StyledPlaceholder>\n ) : (\n placeholder\n )}\n </StyledSelection>\n {adornment ||\n (isOpen ? (\n <StyledDropUpXS\n iconSize=\"XS\"\n className={clsx(baseDropdownClasses.arrow, classes?.arrow)}\n />\n ) : (\n <StyledDropDownXS\n iconSize=\"XS\"\n className={clsx(baseDropdownClasses.arrow, classes?.arrow)}\n $disabled={disabled}\n />\n ))}\n </StyledHeaderRoot>\n );\n })();\n\n const containerComponent = (() => {\n /**\n * Handle keyboard inside children container.\n */\n const handleContainerKeyDown = (event) => {\n if (isKeypress(event, Esc)) {\n handleToggle(event);\n }\n if (isKeypress(event, Tab) && !event.shiftKey) {\n const focusList = getFirstAndLastFocus(popperElement);\n if (document.activeElement === focusList?.last) {\n event.preventDefault();\n focusList?.first?.focus();\n }\n }\n };\n\n const handleOutside = (event) => {\n const isButtonClick = referenceElement?.contains(event.target);\n if (!isButtonClick) {\n onClickOutside?.(event);\n setIsOpen(false);\n onToggle?.(event, false);\n }\n };\n\n const container = (\n <StyledContainer\n role=\"tooltip\"\n ref={setPopperElement}\n className={clsx(baseDropdownClasses.container, classes?.container)}\n style={popperStyles.popper}\n {...attributes.popper}\n >\n <ClickAwayListener onClickAway={handleOutside}>\n <div onKeyDown={handleContainerKeyDown}>\n {popperPlacement.includes(\"bottom\") && (\n <StyledExtension\n style={{ width: extensionWidth }}\n className={clsx(\n baseDropdownClasses.inputExtensionOpen,\n classes?.inputExtensionOpen,\n popperPlacement.includes(\"end\") &&\n clsx(\n baseDropdownClasses.inputExtensionLeftPosition,\n classes?.inputExtensionLeftPosition\n )\n )}\n $leftPosition={popperPlacement.includes(\"end\")}\n $openShadow={false}\n $floatLeft={false}\n $floatRight={false}\n />\n )}\n <BaseDropdownContext.Provider value={popperMaxSize}>\n <StyledPanel\n id={setId(elementId, \"children-container\")}\n className={clsx(baseDropdownClasses.panel, classes?.panel)}\n >\n {children}\n </StyledPanel>\n </BaseDropdownContext.Provider>\n {popperPlacement.includes(\"top\") && (\n <StyledExtension\n style={{ width: extensionWidth }}\n className={clsx(\n baseDropdownClasses.inputExtensionOpen,\n classes?.inputExtensionOpen,\n baseDropdownClasses.inputExtensionOpenShadow,\n classes?.inputExtensionOpenShadow,\n popperPlacement.includes(\"end\") &&\n clsx(\n baseDropdownClasses.inputExtensionFloatRight,\n classes?.inputExtensionFloatRight\n ),\n popperPlacement.includes(\"start\") &&\n clsx(\n baseDropdownClasses.inputExtensionFloatLeft,\n classes?.inputExtensionFloatLeft\n )\n )}\n $leftPosition={false}\n $openShadow={true}\n $floatLeft={popperPlacement.includes(\"start\")}\n $floatRight={popperPlacement.includes(\"end\")}\n />\n )}\n </div>\n </ClickAwayListener>\n </StyledContainer>\n );\n\n if (disablePortal) return container;\n\n return createPortal(\n container,\n document.getElementById(rootId || \"\") || document.body\n );\n })();\n\n return (\n <StyledRoot className={clsx(baseDropdownClasses.root, classes?.root)}>\n <StyledAnchor\n id={id}\n role={ariaRole}\n aria-expanded={!!isOpen}\n aria-owns={isOpen ? setId(elementId, \"children-container\") : undefined}\n className={clsx(\n className,\n baseDropdownClasses.anchor,\n classes?.anchor,\n disabled &&\n clsx(baseDropdownClasses.rootDisabled, classes?.rootDisabled)\n )}\n $disabled={disabled}\n {...(!readOnly && {\n onKeyDown: handleToggle,\n onClick: handleToggle,\n })}\n // Removes the element from the navigation sequence for keyboard focus\n tabIndex={-1}\n {...others}\n >\n {headerComponent}\n </StyledAnchor>\n {isOpen && containerComponent}\n </StyledRoot>\n );\n};\n"],"names":["Tab","Enter","Esc","Space","ArrowDown","keyboardCodes","HvBaseDropdown","id","className","classes","children","role","placeholder","component","adornment","expanded","dropdownHeaderProps","defaultExpanded","disabled","readOnly","disablePortal","variableWidth","placement","popperProps","dropdownHeaderRef","dropdownHeaderRefProp","onToggle","onClickOutside","onContainerCreation","others","rootId","useTheme","isOpen","setIsOpen","useControlled","Boolean","referenceElement","setReferenceElement","useState","popperElement","setPopperElement","popperMaxSize","setPopperMaxSize","handleDropdownHeaderRefProp","useForkRef","ref","handleDropdownHeaderRef","ariaRole","undefined","elementId","useUniqueId","bottom","extensionWidth","offsetWidth","modifiers","popperPropsModifiers","otherPopperProps","onFirstUpdate","useCallback","widthCalculator","state","styles","popper","width","rects","reference","widthCalculatorEffect","elements","style","applyMaxSizeCalculator","height","modifiersData","maxSize","maxWidth","maxHeight","maxSizeCalculator","name","options","overflow","detectOverflow","x","preventOverflow","y","popperWidth","popperHeight","basePlacement","split","widthProp","heightProp","useMemo","enabled","phase","requires","fn","effect","requiresIfExists","popperStyles","attributes","usePopper","popperPlacement","handleToggle","event","isKeypress","preventDefault","notControlKey","every","key","ignoredCombinations","newOpen","focusHeader","focus","preventScroll","headerComponent","React","cloneElement","StyledHeaderRoot","setId","clsx","baseDropdownClasses","header","headerDisabled","headerReadOnly","headerOpen","includes","headerOpenUp","headerOpenDown","$disabled","$readOnly","$opened","$openedUp","$openedDown","pointerEvents","tabIndex","_jsx","StyledSelection","selection","StyledPlaceholder","selectionDisabled","variant","StyledDropUpXS","iconSize","arrow","StyledDropDownXS","containerComponent","handleContainerKeyDown","shiftKey","focusList","getFirstAndLastFocus","document","activeElement","last","first","handleOutside","isButtonClick","contains","target","container","StyledContainer","ClickAwayListener","onClickAway","onKeyDown","StyledExtension","inputExtensionOpen","inputExtensionLeftPosition","$leftPosition","$openShadow","$floatLeft","$floatRight","BaseDropdownContext","Provider","value","StyledPanel","panel","inputExtensionOpenShadow","inputExtensionFloatRight","inputExtensionFloatLeft","createPortal","getElementById","body","StyledRoot","root","StyledAnchor","anchor","rootDisabled","onClick"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseDropdown.js","sources":["../../../../src/components/BaseDropdown/BaseDropdown.tsx"],"sourcesContent":["import React, { useMemo, useState, useCallback } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport clsx from \"clsx\";\nimport BaseDropdownContext from \"./BaseDropdownContext\";\nimport {\n ClickAwayListener,\n PopperPlacementType,\n PopperProps,\n} from \"@mui/material\";\nimport { useControlled, useForkRef, useTheme, useUniqueId } from \"~/hooks\";\nimport { isKeypress, keyboardCodes, setId } from \"~/utils\";\nimport { getFirstAndLastFocus } from \"~/utils/focusableElementFinder\";\nimport { HvBaseProps } from \"~/types\";\nimport {\n StyledAnchor,\n StyledContainer,\n StyledDropDownXS,\n StyledDropUpXS,\n StyledExtension,\n StyledHeaderRoot,\n StyledPanel,\n StyledPlaceholder,\n StyledRoot,\n StyledSelection,\n} from \"./BaseDropdown.styles\";\nimport { usePopper } from \"react-popper\";\nimport { detectOverflow, ModifierArguments, Options } from \"@popperjs/core\";\nimport baseDropdownClasses, {\n HvBaseDropdownClasses,\n} from \"./baseDropdownClasses\";\n\nconst { Tab, Enter, Esc, Space, ArrowDown } = keyboardCodes;\n\nexport interface HvBaseDropdownProps\n extends HvBaseProps<HTMLDivElement, { placeholder }> {\n /**\n * The role of the element that triggers the popup.\n *\n * Defaults to \"combobox\" if `component` and the default\n * \"textbox\" header is used, undefined otherwise.\n */\n role?: string;\n /**\n * Header placeholder.\n */\n placeholder?: string | React.ReactNode;\n /**\n * If `true` the dropdown is disabled unable to be interacted, if `false` it is enabled.\n */\n disabled?: boolean;\n /**\n * If `true` the dropdown will be in read only mode, unable to be interacted.\n */\n readOnly?: boolean;\n /**\n * Disable the portal behavior.\n * The children stay within it's parent DOM hierarchy.\n */\n disablePortal?: boolean;\n /**\n * If `true` the dropdown width depends size of content if `false` the width depends on the header size.\n * Defaults to `false`.\n */\n variableWidth?: boolean;\n /**\n * If `true` the dropdown starts opened if `false` it starts closed.\n */\n expanded?: boolean;\n /**\n * When uncontrolled, defines the initial expanded state.\n */\n defaultExpanded?: boolean;\n /**\n * An object containing props to be wired to the popper component.\n */\n popperProps?: Partial<PopperProps>;\n /**\n * Placement of the dropdown.\n */\n placement?: \"left\" | \"right\";\n /**\n * Replacement for the header component.\n */\n component?: React.ReactNode;\n /**\n * Adornment to replace the default arrows.\n */\n adornment?: React.ReactNode;\n /**\n * When dropdown changes the expanded state.\n */\n onToggle?: (event: Event, open: boolean) => void;\n /**\n * When user click outside the open container.\n */\n onClickOutside?: (event: Event) => void;\n /**\n * Callback called when the dropdown is opened and ready,\n * commonly used to set focus to the content.\n */\n onContainerCreation?: (container: HTMLElement | null) => void;\n /**\n * Attributes applied to the dropdown header element.\n */\n dropdownHeaderProps?: React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n >;\n /**\n * Pass a ref to the dropdown header element.\n */\n dropdownHeaderRef?: React.Ref<any>;\n /**\n * A Jss Object used to override or extend the component styles applied.\n */\n classes?: HvBaseDropdownClasses;\n}\n\nexport const HvBaseDropdown = ({\n id,\n className,\n classes,\n children,\n role,\n placeholder,\n component,\n adornment,\n expanded,\n dropdownHeaderProps,\n defaultExpanded = false,\n disabled = false,\n readOnly = false,\n disablePortal = false,\n variableWidth = false,\n placement = \"right\",\n popperProps = {},\n dropdownHeaderRef: dropdownHeaderRefProp,\n onToggle,\n onClickOutside,\n onContainerCreation,\n ...others\n}: HvBaseDropdownProps) => {\n const { rootId } = useTheme();\n\n const [isOpen, setIsOpen] = useControlled(expanded, Boolean(defaultExpanded));\n\n const [referenceElement, setReferenceElement] = useState<HTMLElement | null>(\n null\n );\n const [popperElement, setPopperElement] = useState<HTMLElement | null>(null);\n const [popperMaxSize, setPopperMaxSize] = useState<{\n width?: number;\n height?: number;\n }>({});\n\n const handleDropdownHeaderRefProp = useForkRef(\n dropdownHeaderRefProp,\n dropdownHeaderProps?.ref\n );\n const handleDropdownHeaderRef = useForkRef(\n setReferenceElement,\n handleDropdownHeaderRefProp\n );\n\n const ariaRole = role || (component == null ? \"combobox\" : undefined);\n\n const elementId = useUniqueId(id, \"hvbasedropdown\");\n\n const bottom: PopperPlacementType =\n placement && `bottom-${placement === \"right\" ? \"start\" : \"end\"}`;\n\n const extensionWidth = referenceElement\n ? referenceElement?.offsetWidth\n : \"inherit\";\n\n const { modifiers: popperPropsModifiers = [], ...otherPopperProps } =\n popperProps;\n\n const onFirstUpdate = useCallback(() => {\n if (onContainerCreation) onContainerCreation(popperElement);\n }, [onContainerCreation, popperElement]);\n\n const widthCalculator = useCallback(\n ({ state }: ModifierArguments<Options>) => {\n state.styles.popper.width = `${state.rects.reference.width}px`;\n },\n []\n );\n\n const widthCalculatorEffect = useCallback(\n ({ state }: ModifierArguments<Options>) => {\n state.elements.popper.style.width = `${\n (state.elements.reference as any).offsetWidth\n }px`;\n },\n []\n );\n\n const applyMaxSizeCalculator = useCallback(\n ({ state }: ModifierArguments<Options>) => {\n // The `maxSize` modifier provides this data\n const { width, height } = state.modifiersData.maxSize;\n if (width !== popperMaxSize?.width || height !== popperMaxSize?.height) {\n setPopperMaxSize({ width, height });\n }\n\n state.styles.popper = {\n ...state.styles.popper,\n maxWidth: `${width}px`,\n maxHeight: `${height}px`,\n };\n },\n [popperMaxSize]\n );\n\n const maxSizeCalculator = useCallback(\n ({ state, name, options }: ModifierArguments<Options>) => {\n const overflow = detectOverflow(state, options);\n\n const x = state.modifiersData.preventOverflow?.x || 0;\n const y = state.modifiersData.preventOverflow?.y || 0;\n\n const popperWidth = state.rects.popper.width;\n const popperHeight = state.rects.popper.height;\n\n const basePlacement = state.placement.split(\"-\")[0];\n\n const widthProp = basePlacement === \"left\" ? \"left\" : \"right\";\n const heightProp = basePlacement === \"top\" ? \"top\" : \"bottom\";\n\n state.modifiersData[name] = {\n width: popperWidth - overflow[widthProp] - x,\n height: popperHeight - overflow[heightProp] - y,\n };\n },\n []\n );\n\n const modifiers: any = useMemo(\n () => [\n {\n name: \"variableWidth\",\n enabled: !variableWidth,\n phase: \"beforeWrite\",\n requires: [\"computeStyles\"],\n fn: widthCalculator,\n effect: widthCalculatorEffect,\n },\n {\n name: \"maxSize\",\n enabled: true,\n phase: \"main\",\n requiresIfExists: [\"offset\", \"preventOverflow\", \"flip\"],\n fn: maxSizeCalculator,\n },\n {\n name: \"applyMaxSize\",\n enabled: true,\n phase: \"beforeWrite\",\n requires: [\"maxSize\"],\n fn: applyMaxSizeCalculator,\n },\n ...popperPropsModifiers,\n ],\n [\n maxSizeCalculator,\n applyMaxSizeCalculator,\n popperPropsModifiers,\n variableWidth,\n widthCalculator,\n widthCalculatorEffect,\n ]\n );\n\n const { styles: popperStyles, attributes } = usePopper(\n referenceElement,\n popperElement,\n {\n placement: bottom,\n modifiers,\n onFirstUpdate,\n ...otherPopperProps,\n }\n );\n\n let popperPlacement = \"bottom\";\n if (attributes.popper) {\n popperPlacement = attributes.popper[\"data-popper-placement\"];\n }\n\n const handleToggle = useCallback(\n (event) => {\n if (event && !isKeypress(event, Tab)) {\n event.preventDefault();\n }\n\n // We are checking specifically for false because if \"isKeypress\" returns true or undefined it should continue\n const notControlKey = [Tab, Enter, Esc, ArrowDown, Space].every(\n (key) => isKeypress(event, key) === false\n );\n\n const ignoredCombinations =\n (isKeypress(event, Esc) && !isOpen) ||\n (isKeypress(event, ArrowDown) && isOpen) ||\n (isKeypress(event, Tab) && !isOpen);\n\n if (disabled || notControlKey || ignoredCombinations) return;\n\n const newOpen = !isOpen;\n\n /* If about to close focus on the header component. */\n const focusHeader = () => {\n if (!newOpen) {\n // Focus-ring won't be visible even if using the keyboard:\n // https://github.com/WICG/focus-visible/issues/88\n referenceElement?.focus({ preventScroll: true });\n }\n\n return newOpen;\n };\n setIsOpen(focusHeader());\n\n onToggle?.(event, newOpen);\n },\n [isOpen, disabled, setIsOpen, onToggle, referenceElement]\n );\n\n const headerComponent = (() => {\n if (component) {\n return React.cloneElement(component as React.ReactElement, {\n ref: handleDropdownHeaderRef,\n });\n }\n\n return (\n <StyledHeaderRoot\n id={setId(id, \"header\")}\n className={clsx(\n baseDropdownClasses.header,\n classes?.header,\n disabled &&\n clsx(baseDropdownClasses.headerDisabled, classes?.headerDisabled),\n readOnly &&\n clsx(baseDropdownClasses.headerReadOnly, classes?.headerReadOnly),\n isOpen && clsx(baseDropdownClasses.headerOpen, classes?.headerOpen),\n isOpen &&\n popperPlacement.includes(\"top\") &&\n clsx(baseDropdownClasses.headerOpenUp, classes?.headerOpenUp),\n isOpen &&\n popperPlacement.includes(\"bottom\") &&\n clsx(baseDropdownClasses.headerOpenDown, classes?.headerOpenDown)\n )}\n $disabled={disabled}\n $readOnly={readOnly}\n $opened={isOpen}\n $openedUp={isOpen && popperPlacement.includes(\"top\")}\n $openedDown={isOpen && popperPlacement.includes(\"bottom\")}\n role={ariaRole === \"combobox\" ? \"textbox\" : undefined}\n style={disabled || readOnly ? { pointerEvents: \"none\" } : undefined}\n aria-controls={\n isOpen ? setId(elementId, \"children-container\") : undefined\n }\n aria-label={others[\"aria-label\"] ?? undefined}\n aria-labelledby={others[\"aria-labelledby\"] ?? undefined}\n // Removes the element from the navigation sequence for keyboard focus if disabled\n tabIndex={disabled ? -1 : 0}\n ref={handleDropdownHeaderRef}\n {...dropdownHeaderProps}\n >\n <StyledSelection\n className={clsx(baseDropdownClasses.selection, classes?.selection)}\n >\n {placeholder && typeof placeholder === \"string\" ? (\n <StyledPlaceholder\n className={clsx(\n baseDropdownClasses.placeholder,\n classes?.placeholder,\n disabled &&\n clsx(\n baseDropdownClasses.selectionDisabled,\n classes?.selectionDisabled\n )\n )}\n $disabled={disabled}\n variant=\"body\"\n >\n {placeholder}\n </StyledPlaceholder>\n ) : (\n placeholder\n )}\n </StyledSelection>\n {adornment ||\n (isOpen ? (\n <StyledDropUpXS\n iconSize=\"XS\"\n className={clsx(baseDropdownClasses.arrow, classes?.arrow)}\n />\n ) : (\n <StyledDropDownXS\n iconSize=\"XS\"\n className={clsx(baseDropdownClasses.arrow, classes?.arrow)}\n $disabled={disabled}\n />\n ))}\n </StyledHeaderRoot>\n );\n })();\n\n const containerComponent = (() => {\n /**\n * Handle keyboard inside children container.\n */\n const handleContainerKeyDown = (event) => {\n if (isKeypress(event, Esc)) {\n handleToggle(event);\n }\n if (isKeypress(event, Tab) && !event.shiftKey) {\n const focusList = getFirstAndLastFocus(popperElement);\n if (document.activeElement === focusList?.last) {\n event.preventDefault();\n focusList?.first?.focus();\n }\n }\n };\n\n const handleOutside = (event) => {\n const isButtonClick = referenceElement?.contains(event.target);\n if (!isButtonClick) {\n onClickOutside?.(event);\n setIsOpen(false);\n onToggle?.(event, false);\n }\n };\n\n const container = (\n <StyledContainer\n role=\"tooltip\"\n ref={setPopperElement}\n className={clsx(baseDropdownClasses.container, classes?.container)}\n style={popperStyles.popper}\n {...attributes.popper}\n >\n <ClickAwayListener onClickAway={handleOutside}>\n <div onKeyDown={handleContainerKeyDown}>\n {popperPlacement.includes(\"bottom\") && (\n <StyledExtension\n style={{ width: extensionWidth }}\n className={clsx(\n baseDropdownClasses.inputExtensionOpen,\n classes?.inputExtensionOpen,\n popperPlacement.includes(\"end\") &&\n clsx(\n baseDropdownClasses.inputExtensionLeftPosition,\n classes?.inputExtensionLeftPosition\n )\n )}\n $leftPosition={popperPlacement.includes(\"end\")}\n $openShadow={false}\n $floatLeft={false}\n $floatRight={false}\n />\n )}\n <BaseDropdownContext.Provider value={popperMaxSize}>\n <StyledPanel\n id={setId(elementId, \"children-container\")}\n className={clsx(baseDropdownClasses.panel, classes?.panel)}\n $popperPlacement={\n popperPlacement.includes(\"top\") ? \"top\" : \"bottom\"\n }\n >\n {children}\n </StyledPanel>\n </BaseDropdownContext.Provider>\n {popperPlacement.includes(\"top\") && (\n <StyledExtension\n style={{ width: extensionWidth }}\n className={clsx(\n baseDropdownClasses.inputExtensionOpen,\n classes?.inputExtensionOpen,\n baseDropdownClasses.inputExtensionOpenShadow,\n classes?.inputExtensionOpenShadow,\n popperPlacement.includes(\"end\") &&\n clsx(\n baseDropdownClasses.inputExtensionFloatRight,\n classes?.inputExtensionFloatRight\n ),\n popperPlacement.includes(\"start\") &&\n clsx(\n baseDropdownClasses.inputExtensionFloatLeft,\n classes?.inputExtensionFloatLeft\n )\n )}\n $leftPosition={false}\n $openShadow={true}\n $floatLeft={popperPlacement.includes(\"start\")}\n $floatRight={popperPlacement.includes(\"end\")}\n />\n )}\n </div>\n </ClickAwayListener>\n </StyledContainer>\n );\n\n if (disablePortal) return container;\n\n return createPortal(\n container,\n document.getElementById(rootId || \"\") || document.body\n );\n })();\n\n return (\n <StyledRoot className={clsx(baseDropdownClasses.root, classes?.root)}>\n <StyledAnchor\n id={id}\n role={ariaRole}\n aria-expanded={!!isOpen}\n aria-owns={isOpen ? setId(elementId, \"children-container\") : undefined}\n className={clsx(\n className,\n baseDropdownClasses.anchor,\n classes?.anchor,\n disabled &&\n clsx(baseDropdownClasses.rootDisabled, classes?.rootDisabled)\n )}\n $disabled={disabled}\n {...(!readOnly && {\n onKeyDown: handleToggle,\n onClick: handleToggle,\n })}\n // Removes the element from the navigation sequence for keyboard focus\n tabIndex={-1}\n {...others}\n >\n {headerComponent}\n </StyledAnchor>\n {isOpen && containerComponent}\n </StyledRoot>\n );\n};\n"],"names":["Tab","Enter","Esc","Space","ArrowDown","keyboardCodes","HvBaseDropdown","id","className","classes","children","role","placeholder","component","adornment","expanded","dropdownHeaderProps","defaultExpanded","disabled","readOnly","disablePortal","variableWidth","placement","popperProps","dropdownHeaderRef","dropdownHeaderRefProp","onToggle","onClickOutside","onContainerCreation","others","rootId","useTheme","isOpen","setIsOpen","useControlled","Boolean","referenceElement","setReferenceElement","useState","popperElement","setPopperElement","popperMaxSize","setPopperMaxSize","handleDropdownHeaderRefProp","useForkRef","ref","handleDropdownHeaderRef","ariaRole","undefined","elementId","useUniqueId","bottom","extensionWidth","offsetWidth","modifiers","popperPropsModifiers","otherPopperProps","onFirstUpdate","useCallback","widthCalculator","state","styles","popper","width","rects","reference","widthCalculatorEffect","elements","style","applyMaxSizeCalculator","height","modifiersData","maxSize","maxWidth","maxHeight","maxSizeCalculator","name","options","overflow","detectOverflow","x","preventOverflow","y","popperWidth","popperHeight","basePlacement","split","widthProp","heightProp","useMemo","enabled","phase","requires","fn","effect","requiresIfExists","popperStyles","attributes","usePopper","popperPlacement","handleToggle","event","isKeypress","preventDefault","notControlKey","every","key","ignoredCombinations","newOpen","focusHeader","focus","preventScroll","headerComponent","React","cloneElement","StyledHeaderRoot","setId","clsx","baseDropdownClasses","header","headerDisabled","headerReadOnly","headerOpen","includes","headerOpenUp","headerOpenDown","$disabled","$readOnly","$opened","$openedUp","$openedDown","pointerEvents","tabIndex","_jsx","StyledSelection","selection","StyledPlaceholder","selectionDisabled","variant","StyledDropUpXS","iconSize","arrow","StyledDropDownXS","containerComponent","handleContainerKeyDown","shiftKey","focusList","getFirstAndLastFocus","document","activeElement","last","first","handleOutside","isButtonClick","contains","target","container","StyledContainer","ClickAwayListener","onClickAway","onKeyDown","StyledExtension","inputExtensionOpen","inputExtensionLeftPosition","$leftPosition","$openShadow","$floatLeft","$floatRight","BaseDropdownContext","Provider","value","StyledPanel","panel","$popperPlacement","inputExtensionOpenShadow","inputExtensionFloatRight","inputExtensionFloatLeft","createPortal","getElementById","body","StyledRoot","root","StyledAnchor","anchor","rootDisabled","onClick"],"mappings":";;;;;;;;;;;;;;;;;;AA+BA,MAAM;AAAA,EAAEA;AAAAA,EAAKC;AAAAA,EAAOC;AAAAA,EAAKC;AAAAA,EAAOC;AAAU,IAAIC;AAuFvC,MAAMC,iBAAiBA,CAAC;AAAA,EAC7BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC,kBAAkB;AAAA,EAClBC,WAAW;AAAA,EACXC,WAAW;AAAA,EACXC,gBAAgB;AAAA,EAChBC,gBAAgB;AAAA,EAChBC,YAAY;AAAA,EACZC,cAAc,CAAC;AAAA,EACfC,mBAAmBC;AAAAA,EACnBC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACA,GAAGC;AACgB,MAAM;AACnB,QAAA;AAAA,IAAEC;AAAAA,MAAWC,SAAU;AAEvB,QAAA,CAACC,QAAQC,SAAS,IAAIC,cAAcnB,UAAUoB,QAAQlB,eAAe,CAAC;AAE5E,QAAM,CAACmB,kBAAkBC,mBAAmB,IAAIC,SAC9C,IAAI;AAEN,QAAM,CAACC,eAAeC,gBAAgB,IAAIF,SAA6B,IAAI;AAC3E,QAAM,CAACG,eAAeC,gBAAgB,IAAIJ,SAGvC,CAAE,CAAA;AAEL,QAAMK,8BAA8BC,WAClCnB,uBACAT,2DAAqB6B,GAAG;AAEpBC,QAAAA,0BAA0BF,WAC9BP,qBACAM,2BAA2B;AAG7B,QAAMI,WAAWpC,SAASE,aAAa,OAAO,aAAamC;AAErDC,QAAAA,YAAYC,YAAY3C,IAAI,gBAAgB;AAElD,QAAM4C,SACJ7B,aAAc,UAASA,cAAc,UAAU,UAAU;AAErD8B,QAAAA,iBAAiBhB,mBACnBA,qDAAkBiB,cAClB;AAEE,QAAA;AAAA,IAAEC,WAAWC,uBAAuB,CAAE;AAAA,IAAE,GAAGC;AAAAA,EAC/CjC,IAAAA;AAEIkC,QAAAA,gBAAgBC,YAAY,MAAM;AAClC9B,QAAAA;AAAqBA,0BAAoBW,aAAa;AAAA,EAAA,GACzD,CAACX,qBAAqBW,aAAa,CAAC;AAEjCoB,QAAAA,kBAAkBD,YACtB,CAAC;AAAA,IAAEE;AAAAA,EAAAA,MAAwC;AACzCA,UAAMC,OAAOC,OAAOC,QAAS,GAAEH,MAAMI,MAAMC,UAAUF;AAAAA,EACvD,GACA,CAAE,CAAA;AAGEG,QAAAA,wBAAwBR,YAC5B,CAAC;AAAA,IAAEE;AAAAA,EAAAA,MAAwC;AACzCA,UAAMO,SAASL,OAAOM,MAAML,QAAS,GAClCH,MAAMO,SAASF,UAAkBZ;AAAAA,EAEtC,GACA,CAAE,CAAA;AAGEgB,QAAAA,yBAAyBX,YAC7B,CAAC;AAAA,IAAEE;AAAAA,EAAAA,MAAwC;AAEnC,UAAA;AAAA,MAAEG;AAAAA,MAAOO;AAAAA,IAAAA,IAAWV,MAAMW,cAAcC;AAC9C,QAAIT,WAAUtB,+CAAesB,UAASO,YAAW7B,+CAAe6B,SAAQ;AACrD,uBAAA;AAAA,QAAEP;AAAAA,QAAOO;AAAAA,MAAAA,CAAQ;AAAA,IACpC;AAEAV,UAAMC,OAAOC,SAAS;AAAA,MACpB,GAAGF,MAAMC,OAAOC;AAAAA,MAChBW,UAAW,GAAEV;AAAAA,MACbW,WAAY,GAAEJ;AAAAA,IAAAA;AAAAA,EAChB,GAEF,CAAC7B,aAAa,CAAC;AAGXkC,QAAAA,oBAAoBjB,YACxB,CAAC;AAAA,IAAEE;AAAAA,IAAOgB;AAAAA,IAAMC;AAAAA,EAAAA,MAA0C;;AAClDC,UAAAA,WAAWC,eAAenB,OAAOiB,OAAO;AAE9C,UAAMG,MAAIpB,WAAMW,cAAcU,oBAApBrB,mBAAqCoB,MAAK;AACpD,UAAME,MAAItB,WAAMW,cAAcU,oBAApBrB,mBAAqCsB,MAAK;AAE9CC,UAAAA,cAAcvB,MAAMI,MAAMF,OAAOC;AACjCqB,UAAAA,eAAexB,MAAMI,MAAMF,OAAOQ;AAExC,UAAMe,gBAAgBzB,MAAMtC,UAAUgE,MAAM,GAAG,EAAE,CAAC;AAE5CC,UAAAA,YAAYF,kBAAkB,SAAS,SAAS;AAChDG,UAAAA,aAAaH,kBAAkB,QAAQ,QAAQ;AAE/Cd,UAAAA,cAAcK,IAAI,IAAI;AAAA,MAC1Bb,OAAOoB,cAAcL,SAASS,SAAS,IAAIP;AAAAA,MAC3CV,QAAQc,eAAeN,SAASU,UAAU,IAAIN;AAAAA,IAAAA;AAAAA,EAElD,GACA,CAAE,CAAA;AAGE5B,QAAAA,YAAiBmC,QACrB,MAAM,CACJ;AAAA,IACEb,MAAM;AAAA,IACNc,SAAS,CAACrE;AAAAA,IACVsE,OAAO;AAAA,IACPC,UAAU,CAAC,eAAe;AAAA,IAC1BC,IAAIlC;AAAAA,IACJmC,QAAQ5B;AAAAA,EAAAA,GAEV;AAAA,IACEU,MAAM;AAAA,IACNc,SAAS;AAAA,IACTC,OAAO;AAAA,IACPI,kBAAkB,CAAC,UAAU,mBAAmB,MAAM;AAAA,IACtDF,IAAIlB;AAAAA,EAAAA,GAEN;AAAA,IACEC,MAAM;AAAA,IACNc,SAAS;AAAA,IACTC,OAAO;AAAA,IACPC,UAAU,CAAC,SAAS;AAAA,IACpBC,IAAIxB;AAAAA,EAAAA,GAEN,GAAGd,oBAAoB,GAEzB,CACEoB,mBACAN,wBACAd,sBACAlC,eACAsC,iBACAO,qBAAqB,CACtB;AAGG,QAAA;AAAA,IAAEL,QAAQmC;AAAAA,IAAcC;AAAAA,EAAAA,IAAeC,UAC3C9D,kBACAG,eACA;AAAA,IACEjB,WAAW6B;AAAAA,IACXG;AAAAA,IACAG;AAAAA,IACA,GAAGD;AAAAA,EAAAA,CACJ;AAGH,MAAI2C,kBAAkB;AACtB,MAAIF,WAAWnC,QAAQ;AACHmC,sBAAAA,WAAWnC,OAAO,uBAAuB;AAAA,EAC7D;AAEMsC,QAAAA,eAAe1C,YAClB2C,CAAU,UAAA;AACT,QAAIA,SAAS,CAACC,WAAWD,OAAOrG,GAAG,GAAG;AACpCqG,YAAME,eAAgB;AAAA,IACxB;AAGA,UAAMC,gBAAgB,CAACxG,KAAKC,OAAOC,KAAKE,WAAWD,KAAK,EAAEsG,MACvDC,CAAQJ,QAAAA,WAAWD,OAAOK,GAAG,MAAM,KAAK;AAG3C,UAAMC,sBACHL,WAAWD,OAAOnG,GAAG,KAAK,CAAC8B,UAC3BsE,WAAWD,OAAOjG,SAAS,KAAK4B,UAChCsE,WAAWD,OAAOrG,GAAG,KAAK,CAACgC;AAE9B,QAAId,YAAYsF,iBAAiBG;AAAqB;AAEtD,UAAMC,UAAU,CAAC5E;AAGjB,UAAM6E,cAAcA,MAAM;AACxB,UAAI,CAACD,SAAS;AAGZxE,6DAAkB0E,MAAM;AAAA,UAAEC,eAAe;AAAA,QAAA;AAAA,MAC3C;AAEOH,aAAAA;AAAAA,IAAAA;AAET3E,cAAU4E,aAAa;AAEvBnF,yCAAW2E,OAAOO;AAAAA,EAAO,GAE3B,CAAC5E,QAAQd,UAAUe,WAAWP,UAAUU,gBAAgB,CAAC;AAG3D,QAAM4E,mBAAmB,MAAM;AAC7B,QAAInG,WAAW;AACNoG,aAAAA,eAAMC,aAAarG,WAAiC;AAAA,QACzDgC,KAAKC;AAAAA,MAAAA,CACN;AAAA,IACH;AAEA,gCACGqE,kBAAgB;AAAA,MACf5G,IAAI6G,MAAM7G,IAAI,QAAQ;AAAA,MACtBC,WAAW6G,KACTC,oBAAoBC,QACpB9G,mCAAS8G,QACTrG,YACEmG,KAAKC,oBAAoBE,gBAAgB/G,mCAAS+G,cAAc,GAClErG,YACEkG,KAAKC,oBAAoBG,gBAAgBhH,mCAASgH,cAAc,GAClEzF,UAAUqF,KAAKC,oBAAoBI,YAAYjH,mCAASiH,UAAU,GAClE1F,UACEmE,gBAAgBwB,SAAS,KAAK,KAC9BN,KAAKC,oBAAoBM,cAAcnH,mCAASmH,YAAY,GAC9D5F,UACEmE,gBAAgBwB,SAAS,QAAQ,KACjCN,KAAKC,oBAAoBO,gBAAgBpH,mCAASoH,cAAc,CAAC;AAAA,MAErEC,WAAW5G;AAAAA,MACX6G,WAAW5G;AAAAA,MACX6G,SAAShG;AAAAA,MACTiG,WAAWjG,UAAUmE,gBAAgBwB,SAAS,KAAK;AAAA,MACnDO,aAAalG,UAAUmE,gBAAgBwB,SAAS,QAAQ;AAAA,MACxDhH,MAAMoC,aAAa,aAAa,YAAYC;AAAAA,MAC5CoB,OAAOlD,YAAYC,WAAW;AAAA,QAAEgH,eAAe;AAAA,MAAWnF,IAAAA;AAAAA,MAC1D,iBACEhB,SAASoF,MAAMnE,WAAW,oBAAoB,IAAID;AAAAA,MAEpD,cAAYnB,OAAO,YAAY,KAAKmB;AAAAA,MACpC,mBAAiBnB,OAAO,iBAAiB,KAAKmB;AAAAA,MAE9CoF,UAAUlH,WAAW,KAAK;AAAA,MAC1B2B,KAAKC;AAAAA,MAAwB,GACzB9B;AAAAA,MAAmBN,UAAA,CAEvB2H,oBAACC,iBAAe;AAAA,QACd9H,WAAW6G,KAAKC,oBAAoBiB,WAAW9H,mCAAS8H,SAAS;AAAA,QAAE7H,UAElEE,eAAe,OAAOA,gBAAgB,+BACpC4H,mBAAiB;AAAA,UAChBhI,WAAW6G,KACTC,oBAAoB1G,aACpBH,mCAASG,aACTM,YACEmG,KACEC,oBAAoBmB,mBACpBhI,mCAASgI,iBAAiB,CAC3B;AAAA,UAELX,WAAW5G;AAAAA,UACXwH,SAAQ;AAAA,UAAMhI,UAEbE;AAAAA,QAAW,CAAA,IAGdA;AAAAA,MACD,CAAA,GAEFE,cACEkB,6BACE2G,gBAAc;AAAA,QACbC,UAAS;AAAA,QACTpI,WAAW6G,KAAKC,oBAAoBuB,OAAOpI,mCAASoI,KAAK;AAAA,MAAA,CACzD,IAEFR,oBAACS,kBAAgB;AAAA,QACfF,UAAS;AAAA,QACTpI,WAAW6G,KAAKC,oBAAoBuB,OAAOpI,mCAASoI,KAAK;AAAA,QACzDf,WAAW5G;AAAAA,MAAS,CAAA,EAEtB;AAAA,IAAA,CACa;AAAA,EAAA;AAIvB,QAAM6H,sBAAsB,MAAM;AAIhC,UAAMC,yBAA0B3C,CAAU,UAAA;;AACpCC,UAAAA,WAAWD,OAAOnG,GAAG,GAAG;AAC1BkG,qBAAaC,KAAK;AAAA,MACpB;AACA,UAAIC,WAAWD,OAAOrG,GAAG,KAAK,CAACqG,MAAM4C,UAAU;AACvCC,cAAAA,YAAYC,qBAAqB5G,aAAa;AAChD6G,YAAAA,SAASC,mBAAkBH,uCAAWI,OAAM;AAC9CjD,gBAAME,eAAgB;AACtB2C,uDAAWK,UAAXL,mBAAkBpC;AAAAA,QACpB;AAAA,MACF;AAAA,IAAA;AAGF,UAAM0C,gBAAiBnD,CAAU,UAAA;AAC/B,YAAMoD,gBAAgBrH,qDAAkBsH,SAASrD,MAAMsD;AACvD,UAAI,CAACF,eAAe;AAClB9H,yDAAiB0E;AACjBpE,kBAAU,KAAK;AACfP,6CAAW2E,OAAO;AAAA,MACpB;AAAA,IAAA;AAGIuD,UAAAA,gCACHC,iBAAe;AAAA,MACdlJ,MAAK;AAAA,MACLkC,KAAKL;AAAAA,MACLhC,WAAW6G,KAAKC,oBAAoBsC,WAAWnJ,mCAASmJ,SAAS;AAAA,MACjExF,OAAO4B,aAAalC;AAAAA,MAAO,GACvBmC,WAAWnC;AAAAA,MAAMpD,8BAEpBoJ,mBAAiB;AAAA,QAACC,aAAaP;AAAAA,QAAc9I,+BAC5C,OAAA;AAAA,UAAKsJ,WAAWhB;AAAAA,UAAuBtI,UAAA,CACpCyF,gBAAgBwB,SAAS,QAAQ,yBAC/BsC,iBAAe;AAAA,YACd7F,OAAO;AAAA,cAAEL,OAAOX;AAAAA,YAAe;AAAA,YAC/B5C,WAAW6G,KACTC,oBAAoB4C,oBACpBzJ,mCAASyJ,oBACT/D,gBAAgBwB,SAAS,KAAK,KAC5BN,KACEC,oBAAoB6C,4BACpB1J,mCAAS0J,0BAA0B,CACpC;AAAA,YAELC,eAAejE,gBAAgBwB,SAAS,KAAK;AAAA,YAC7C0C,aAAa;AAAA,YACbC,YAAY;AAAA,YACZC,aAAa;AAAA,UAAA,CAAM,GAGtBC,oBAAAA,oBAAoBC,UAAQ;AAAA,YAACC,OAAOjI;AAAAA,YAAc/B,8BAChDiK,aAAW;AAAA,cACVpK,IAAI6G,MAAMnE,WAAW,oBAAoB;AAAA,cACzCzC,WAAW6G,KAAKC,oBAAoBsD,OAAOnK,mCAASmK,KAAK;AAAA,cACzDC,kBACE1E,gBAAgBwB,SAAS,KAAK,IAAI,QAAQ;AAAA,cAC3CjH;AAAAA,YAAAA,CAEQ;AAAA,UAAA,CAEkB,GAC9ByF,gBAAgBwB,SAAS,KAAK,yBAC5BsC,iBAAe;AAAA,YACd7F,OAAO;AAAA,cAAEL,OAAOX;AAAAA,YAAe;AAAA,YAC/B5C,WAAW6G,KACTC,oBAAoB4C,oBACpBzJ,mCAASyJ,oBACT5C,oBAAoBwD,0BACpBrK,mCAASqK,0BACT3E,gBAAgBwB,SAAS,KAAK,KAC5BN,KACEC,oBAAoByD,0BACpBtK,mCAASsK,wBAAwB,GAErC5E,gBAAgBwB,SAAS,OAAO,KAC9BN,KACEC,oBAAoB0D,yBACpBvK,mCAASuK,uBAAuB,CACjC;AAAA,YAELZ,eAAe;AAAA,YACfC,aAAa;AAAA,YACbC,YAAYnE,gBAAgBwB,SAAS,OAAO;AAAA,YAC5C4C,aAAapE,gBAAgBwB,SAAS,KAAK;AAAA,UAAA,CAE9C,CAAA;AAAA,QAAA,CAAA;AAAA,MAAA,CACG;AAAA,IAAA,CAGX;AAEGvG,QAAAA;AAAsBwI,aAAAA;AAEnBqB,WAAAA,aACLrB,WACAR,SAAS8B,eAAepJ,UAAU,EAAE,KAAKsH,SAAS+B,IAAI;AAAA,EAAA;AAI1D,8BACGC,YAAU;AAAA,IAAC5K,WAAW6G,KAAKC,oBAAoB+D,MAAM5K,mCAAS4K,IAAI;AAAA,IAAE3K,UAAA,CACnE2H,oBAACiD,cAAY;AAAA,MACX/K;AAAAA,MACAI,MAAMoC;AAAAA,MACN,iBAAe,CAAC,CAACf;AAAAA,MACjB,aAAWA,SAASoF,MAAMnE,WAAW,oBAAoB,IAAID;AAAAA,MAC7DxC,WAAW6G,KACT7G,WACA8G,oBAAoBiE,QACpB9K,mCAAS8K,QACTrK,YACEmG,KAAKC,oBAAoBkE,cAAc/K,mCAAS+K,YAAY,CAAC;AAAA,MAEjE1D,WAAW5G;AAAAA,MAAS,GACf,CAACC,YAAY;AAAA,QAChB6I,WAAW5D;AAAAA,QACXqF,SAASrF;AAAAA,MACX;AAAA;AAAA,MAEAgC,UAAU;AAAA,MAAG,GACTvG;AAAAA,MAAMnB,UAETsG;AAAAA,IAAAA,CACY,GACdhF,UAAU+G,kBAAkB;AAAA,EAAA,CAClB;AAEjB;"}
|