@amboss/design-system 4.2.5 → 4.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/components/Content/ContentBadge/ContentBadge.d.ts +12 -0
- package/build/cjs/components/Content/ContentBadge/ContentBadge.js +1 -0
- package/build/cjs/components/EntityList/BaseEntityList.d.ts +1 -1
- package/build/cjs/components/EntityList/BaseEntityList.js +1 -1
- package/build/cjs/components/EntityList/EntityListItem.d.ts +29 -2
- package/build/cjs/components/EntityList/EntityListItem.js +1 -1
- package/build/cjs/components/EntityList/types.d.ts +27 -2
- package/build/cjs/components/EntityTree/BaseEntityTree.d.ts +14 -1
- package/build/cjs/components/EntityTree/BaseEntityTree.js +1 -1
- package/build/cjs/components/EntityTree/EntityTreeItem.d.ts +29 -2
- package/build/cjs/components/EntityTree/EntityTreeItem.js +1 -1
- package/build/cjs/components/Form/Combobox/OptionsList.d.ts +7 -0
- package/build/cjs/components/Form/Combobox/OptionsList.js +1 -1
- package/build/cjs/components/Form/DatePicker/Calendar.js +1 -1
- package/build/cjs/components/Form/DatePicker/DatePickerPopover.js +1 -1
- package/build/cjs/components/Form/Select/Select.d.ts +1 -1
- package/build/cjs/components/Form/Select/Select.js +1 -1
- package/build/cjs/components/Form/Select/SelectWithCustomTrigger.d.ts +7 -1
- package/build/cjs/components/Form/Select/SelectWithCustomTrigger.js +1 -1
- package/build/cjs/components/Portal/Portal.js +1 -1
- package/build/cjs/components/Toggletip/BasePopover.d.ts +8 -1
- package/build/cjs/components/Toggletip/BasePopover.js +1 -1
- package/build/cjs/components/Tooltip/BaseTooltip.d.ts +2 -2
- package/build/cjs/components/Tooltip/BaseTooltip.js +1 -1
- package/build/cjs/components/Tooltip/TooltipContent.d.ts +26 -1
- package/build/cjs/components/Tooltip/TooltipContent.js +1 -1
- package/build/cjs/components/Tooltip/getSideTooltipStyle.d.ts +14 -0
- package/build/cjs/components/Tooltip/getSideTooltipStyle.js +1 -0
- package/build/cjs/components/Tooltip/utils.d.ts +7 -2
- package/build/cjs/components/Tooltip/utils.js +1 -1
- package/build/cjs/index.d.ts +1 -0
- package/build/cjs/index.js +1 -1
- package/build/cjs/web-tokens/_colors.json +24 -0
- package/build/cjs/web-tokens/assets/icons.json +1 -0
- package/build/cjs/web-tokens/assets/icons16.json +1 -0
- package/build/cjs/web-tokens/visualConfig.d.ts +29 -0
- package/build/cjs/web-tokens/visualConfig.js +1 -1
- package/build/esm/components/Content/ContentBadge/ContentBadge.d.ts +12 -0
- package/build/esm/components/Content/ContentBadge/ContentBadge.js +1 -0
- package/build/esm/components/EntityList/BaseEntityList.d.ts +1 -1
- package/build/esm/components/EntityList/BaseEntityList.js +1 -1
- package/build/esm/components/EntityList/EntityListItem.d.ts +29 -2
- package/build/esm/components/EntityList/EntityListItem.js +1 -1
- package/build/esm/components/EntityList/types.d.ts +27 -2
- package/build/esm/components/EntityTree/BaseEntityTree.d.ts +14 -1
- package/build/esm/components/EntityTree/BaseEntityTree.js +1 -1
- package/build/esm/components/EntityTree/EntityTreeItem.d.ts +29 -2
- package/build/esm/components/EntityTree/EntityTreeItem.js +1 -1
- package/build/esm/components/Form/Combobox/OptionsList.d.ts +7 -0
- package/build/esm/components/Form/Combobox/OptionsList.js +1 -1
- package/build/esm/components/Form/DatePicker/Calendar.js +1 -1
- package/build/esm/components/Form/DatePicker/DatePickerPopover.js +1 -1
- package/build/esm/components/Form/Select/Select.d.ts +1 -1
- package/build/esm/components/Form/Select/Select.js +1 -1
- package/build/esm/components/Form/Select/SelectWithCustomTrigger.d.ts +7 -1
- package/build/esm/components/Form/Select/SelectWithCustomTrigger.js +1 -1
- package/build/esm/components/Portal/Portal.js +1 -1
- package/build/esm/components/Toggletip/BasePopover.d.ts +8 -1
- package/build/esm/components/Toggletip/BasePopover.js +1 -1
- package/build/esm/components/Tooltip/BaseTooltip.d.ts +2 -2
- package/build/esm/components/Tooltip/BaseTooltip.js +1 -1
- package/build/esm/components/Tooltip/TooltipContent.d.ts +26 -1
- package/build/esm/components/Tooltip/TooltipContent.js +1 -1
- package/build/esm/components/Tooltip/getSideTooltipStyle.d.ts +14 -0
- package/build/esm/components/Tooltip/getSideTooltipStyle.js +1 -0
- package/build/esm/components/Tooltip/utils.d.ts +7 -2
- package/build/esm/components/Tooltip/utils.js +1 -1
- package/build/esm/index.d.ts +1 -0
- package/build/esm/index.js +1 -1
- package/build/esm/web-tokens/_colors.json +24 -0
- package/build/esm/web-tokens/assets/icons.json +1 -0
- package/build/esm/web-tokens/assets/icons16.json +1 -0
- package/build/esm/web-tokens/visualConfig.d.ts +29 -0
- package/build/esm/web-tokens/visualConfig.js +1 -1
- package/build/scss/_dark.scss +21 -0
- package/build/scss/_light.scss +21 -0
- package/build/scss/_variables.scss +21 -0
- package/package.json +8 -8
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export type ContentBadgeColor = "green" | "blue" | "orange" | "purple" | "red" | "gray";
|
|
3
|
+
export type ContentBadgeProps = {
|
|
4
|
+
/** Label rendered inside the badge. Uppercased by the component. */
|
|
5
|
+
text: string;
|
|
6
|
+
/** Decorative colour variant. Carries no meaning on its own, so keep the meaning in `text`. */
|
|
7
|
+
color?: ContentBadgeColor;
|
|
8
|
+
/** If true, the badge will not have any left margin. */
|
|
9
|
+
noLeadingSpace?: boolean;
|
|
10
|
+
"data-e2e-test-id"?: string;
|
|
11
|
+
} & React.HTMLAttributes<HTMLSpanElement>;
|
|
12
|
+
export declare function ContentBadge({ text, color, "data-e2e-test-id": dataE2eTestId, ...rest }: ContentBadgeProps): React.ReactElement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"ContentBadge",{enumerable:!0,get:function(){return ContentBadge}});const _interop_require_default=require("@swc/helpers/_/_interop_require_default"),_react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_styled=/*#__PURE__*/_interop_require_default._(require("@emotion/styled")),_ispropvalid=/*#__PURE__*/_interop_require_default._(require("@emotion/is-prop-valid")),_FontSizeOffsetContext=require("../ContentFontResizer/FontSizeOffsetContext"),_ContentTableContext=require("../ContentTable/ContentTableContext"),StyledBadge=(0,_styled.default)("span",{shouldForwardProp:prop=>(0,_ispropvalid.default)(prop)&&"color"!==prop,target:"egpyfcy0",label:"StyledBadge"})(({theme,color,fontSizeOffset,noLeadingSpace})=>{let{background,border,foreground}=theme.values.color.content.badge,fontSize=theme.variables.size.font.xxs,colorValue=color??"default";return{margin:`${theme.variables.size.spacing.zero} ${theme.variables.size.spacing.xxs}`,padding:`${theme.variables.size.spacing.xxxs} ${theme.variables.size.spacing.xxs}`,border:`1px solid ${border[colorValue]}`,borderRadius:theme.variables.size.borderRadius.xs,backgroundColor:background[colorValue],color:foreground[colorValue],fontFamily:theme.variables.fontFamily.lato,fontWeight:theme.variables.weight.bold,fontSize:0!==fontSizeOffset?`calc(${fontSize} + ${fontSizeOffset}px)`:fontSize,lineHeight:1,letterSpacing:theme.variables.size.letterSpacing.s,textTransform:"uppercase",whiteSpace:"nowrap",...noLeadingSpace&&{marginInlineStart:theme.variables.size.spacing.zero}}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvQ29udGVudC9Db250ZW50QmFkZ2UvQ29udGVudEJhZGdlLnRzeCIsInNvdXJjZXMiOlsic3JjL2NvbXBvbmVudHMvQ29udGVudC9Db250ZW50QmFkZ2UvQ29udGVudEJhZGdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlQ29udGV4dCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgaXNQcm9wVmFsaWQgZnJvbSBcIkBlbW90aW9uL2lzLXByb3AtdmFsaWRcIjtcbmltcG9ydCB7XG4gIEZvbnRTaXplT2Zmc2V0Q29udGV4dCxcbiAgdHlwZSBGb250U2l6ZU9mZnNldCxcbn0gZnJvbSBcIi4uL0NvbnRlbnRGb250UmVzaXplci9Gb250U2l6ZU9mZnNldENvbnRleHRcIjtcbmltcG9ydCB7IENvbnRlbnRUYWJsZUNvbnRleHQgfSBmcm9tIFwiLi4vQ29udGVudFRhYmxlL0NvbnRlbnRUYWJsZUNvbnRleHRcIjtcblxuZXhwb3J0IHR5cGUgQ29udGVudEJhZGdlQ29sb3IgPVxuICB8IFwiZ3JlZW5cIlxuICB8IFwiYmx1ZVwiXG4gIHwgXCJvcmFuZ2VcIlxuICB8IFwicHVycGxlXCJcbiAgfCBcInJlZFwiXG4gIHwgXCJncmF5XCI7XG5cbmV4cG9ydCB0eXBlIENvbnRlbnRCYWRnZVByb3BzID0ge1xuICAvKiogTGFiZWwgcmVuZGVyZWQgaW5zaWRlIHRoZSBiYWRnZS4gVXBwZXJjYXNlZCBieSB0aGUgY29tcG9uZW50LiAqL1xuICB0ZXh0OiBzdHJpbmc7XG4gIC8qKiBEZWNvcmF0aXZlIGNvbG91ciB2YXJpYW50LiBDYXJyaWVzIG5vIG1lYW5pbmcgb24gaXRzIG93biwgc28ga2VlcCB0aGUgbWVhbmluZyBpbiBgdGV4dGAuICovXG4gIGNvbG9yPzogQ29udGVudEJhZGdlQ29sb3I7XG4gIC8qKiBJZiB0cnVlLCB0aGUgYmFkZ2Ugd2lsbCBub3QgaGF2ZSBhbnkgbGVmdCBtYXJnaW4uICovXG4gIG5vTGVhZGluZ1NwYWNlPzogYm9vbGVhbjtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG59ICYgUmVhY3QuSFRNTEF0dHJpYnV0ZXM8SFRNTFNwYW5FbGVtZW50PjtcblxudHlwZSBTdHlsZWRCYWRnZVByb3BzID0ge1xuICBjb2xvcjogQ29udGVudEJhZGdlQ29sb3I7XG4gIGZvbnRTaXplT2Zmc2V0OiBGb250U2l6ZU9mZnNldDtcbn07XG5cbmNvbnN0IFN0eWxlZEJhZGdlID0gc3R5bGVkKFwic3BhblwiLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiAocHJvcCkgPT4gaXNQcm9wVmFsaWQocHJvcCkgJiYgcHJvcCAhPT0gXCJjb2xvclwiLFxufSk8U3R5bGVkQmFkZ2VQcm9wcyAmIHsgbm9MZWFkaW5nU3BhY2U/OiBib29sZWFuIH0+KFxuICAoeyB0aGVtZSwgY29sb3IsIGZvbnRTaXplT2Zmc2V0LCBub0xlYWRpbmdTcGFjZSB9KSA9PiB7XG4gICAgY29uc3QgeyBiYWNrZ3JvdW5kLCBib3JkZXIsIGZvcmVncm91bmQgfSA9IHRoZW1lLnZhbHVlcy5jb2xvci5jb250ZW50LmJhZGdlO1xuICAgIGNvbnN0IGZvbnRTaXplID0gdGhlbWUudmFyaWFibGVzLnNpemUuZm9udC54eHM7XG4gICAgY29uc3QgY29sb3JWYWx1ZSA9IGNvbG9yID8/IFwiZGVmYXVsdFwiO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIG1hcmdpbjogYCR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy56ZXJvfSAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzfWAsXG4gICAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnh4eHN9ICR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54eHN9YCxcbiAgICAgIGJvcmRlcjogYDFweCBzb2xpZCAke2JvcmRlcltjb2xvclZhbHVlXX1gLFxuICAgICAgYm9yZGVyUmFkaXVzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMueHMsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IGJhY2tncm91bmRbY29sb3JWYWx1ZV0sXG4gICAgICBjb2xvcjogZm9yZWdyb3VuZFtjb2xvclZhbHVlXSxcbiAgICAgIGZvbnRGYW1pbHk6IHRoZW1lLnZhcmlhYmxlcy5mb250RmFtaWx5LmxhdG8sXG4gICAgICBmb250V2VpZ2h0OiB0aGVtZS52YXJpYWJsZXMud2VpZ2h0LmJvbGQsXG4gICAgICBmb250U2l6ZTpcbiAgICAgICAgZm9udFNpemVPZmZzZXQgIT09IDBcbiAgICAgICAgICA/IGBjYWxjKCR7Zm9udFNpemV9ICsgJHtmb250U2l6ZU9mZnNldH1weClgXG4gICAgICAgICAgOiBmb250U2l6ZSxcbiAgICAgIGxpbmVIZWlnaHQ6IDEsXG4gICAgICBsZXR0ZXJTcGFjaW5nOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5sZXR0ZXJTcGFjaW5nLnMsXG4gICAgICB0ZXh0VHJhbnNmb3JtOiBcInVwcGVyY2FzZVwiIGFzIGNvbnN0LFxuICAgICAgd2hpdGVTcGFjZTogXCJub3dyYXBcIiBhcyBjb25zdCxcblxuICAgICAgLi4uKG5vTGVhZGluZ1NwYWNlICYmIHtcbiAgICAgICAgbWFyZ2luSW5saW5lU3RhcnQ6IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcuemVybyxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBDb250ZW50QmFkZ2Uoe1xuICB0ZXh0LFxuICBjb2xvcixcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG4gIC4uLnJlc3Rcbn06IENvbnRlbnRCYWRnZVByb3BzKTogUmVhY3QuUmVhY3RFbGVtZW50IHtcbiAgY29uc3QgZm9udFNpemVPZmZzZXQgPSB1c2VDb250ZXh0KEZvbnRTaXplT2Zmc2V0Q29udGV4dCk7XG4gIGNvbnN0IGNvbnRlbnRUYWJsZUNvbnRleHQgPSB1c2VDb250ZXh0KENvbnRlbnRUYWJsZUNvbnRleHQpO1xuICBjb25zdCB0YWJsZUZvbnRTaXplT2Zmc2V0ID0gY29udGVudFRhYmxlQ29udGV4dD8uZm9udFNpemVPZmZzZXQgPz8gMDtcblxuICByZXR1cm4gKFxuICAgIDxTdHlsZWRCYWRnZVxuICAgICAgZGF0YS1kcy1pZD1cIkNvbnRlbnRCYWRnZVwiXG4gICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgY29sb3I9e2NvbG9yfVxuICAgICAgZm9udFNpemVPZmZzZXQ9e2ZvbnRTaXplT2Zmc2V0ICsgdGFibGVGb250U2l6ZU9mZnNldH1cbiAgICAgIHsuLi5yZXN0fVxuICAgID5cbiAgICAgIHt0ZXh0fVxuICAgIDwvU3R5bGVkQmFkZ2U+XG4gICk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0NvQiJ9 */");function ContentBadge({text,color,"data-e2e-test-id":dataE2eTestId,...rest}){let fontSizeOffset=(0,_react.useContext)(_FontSizeOffsetContext.FontSizeOffsetContext),contentTableContext=(0,_react.useContext)(_ContentTableContext.ContentTableContext),tableFontSizeOffset=contentTableContext?.fontSizeOffset??0;return _react.default.createElement(StyledBadge,{"data-ds-id":"ContentBadge","data-e2e-test-id":dataE2eTestId,color:color,fontSizeOffset:fontSizeOffset+tableFontSizeOffset,...rest},text)}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { EntityListProps } from "./types";
|
|
3
|
-
export declare function BaseEntityList({ data, size, onClick, focusOnMount, isSelectable, selectedIds, onSelectionChange, onSelectionToggle, renderRightContent, getLeftIconProps, hideBorder, filterFn, isVirtualized, maxHeight, ariaAttributes: deprecatedAriaAttributes, slotProps, role: roleProp, truncateLabels, "data-e2e-test-id": dataE2eTestId, ...ariaAttributes }: EntityListProps): React.ReactElement;
|
|
3
|
+
export declare function BaseEntityList({ data, size, onClick, focusOnMount, isSelectable, selectedIds, onSelectionChange, onSelectionToggle, renderRightContent, renderItemWrapper, getLeftIconProps, hideBorder, filterFn, isVirtualized, maxHeight, ariaAttributes: deprecatedAriaAttributes, slotProps, role: roleProp, truncateLabels, "data-e2e-test-id": dataE2eTestId, ...ariaAttributes }: EntityListProps): React.ReactElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"BaseEntityList",{enumerable:!0,get:function(){return BaseEntityList}});const _react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_styledcomponents=require("./styled-components"),_useKeyboard=require("../../shared/useKeyboard"),_Icon=require("../Icon/Icon"),_EntityListItem=require("./EntityListItem"),_VirtualizedEntityList=require("./VirtualizedEntityList"),_useFocusByIndex=require("./useFocusByIndex"),_roles=require("./roles");function BaseEntityList({data,size="m",onClick,focusOnMount,isSelectable,selectedIds,onSelectionChange,onSelectionToggle,renderRightContent,getLeftIconProps,hideBorder,filterFn,isVirtualized,maxHeight,ariaAttributes:deprecatedAriaAttributes,slotProps,role:roleProp,truncateLabels=!1,"data-e2e-test-id":dataE2eTestId,...ariaAttributes}){let rootRole,{itemRole,...rootAriaProps}=(rootRole=roleProp??"list",isSelectable&&(rootRole="listbox"),{role:rootRole,itemRole:_roles.ROLE_TO_ITEM_ROLE[rootRole],"aria-multiselectable":"listbox"===rootRole&&!!isSelectable||void 0}),ariaLabelExpand=slotProps?.toggle?.["aria-label-expand"]??deprecatedAriaAttributes?.ariaLabelExpand,ariaLabelCollapse=slotProps?.toggle?.["aria-label-collapse"]??deprecatedAriaAttributes?.ariaLabelCollapse,dataShown=(0,_react.useMemo)(()=>data.length&&filterFn?data.filter(filterFn):data,[data,filterFn]),selectedIdsSet=(0,_react.useMemo)(()=>new Set(selectedIds),[selectedIds]),listRef=(0,_react.useRef)(null),focusableItems=(0,_react.useMemo)(()=>dataShown.map(item=>({id:item.id,isDisabled:!!item.isDisabled})),[dataShown]),initialActiveIndex=(0,_react.useMemo)(()=>{let index=dataShown.findIndex(item=>item.isActive);return -1!==index?index:0},[dataShown]),{moveFocus,focusItemAtIndex,focusedIndex:selectedIndex}=(0,_useFocusByIndex.useFocusByIndex)({containerRef:listRef,nodeSelector:"data-list-item",data:focusableItems,preventScroll:isVirtualized,initialIndex:initialActiveIndex});(0,_react.useEffect)(()=>{focusOnMount&&focusItemAtIndex(selectedIndex)},[]),(0,_useKeyboard.useKeyboard)({ArrowDown:()=>{moveFocus(1)},ArrowUp:()=>{moveFocus(-1)}},listRef,isSelectable||!!onClick);let handleOnClick=(0,_react.useCallback)(item=>{let{id}=item;if(isSelectable){let willBeSelected=!selectedIdsSet.has(id),newSelectedIdsSet=new Set(selectedIdsSet);willBeSelected?newSelectedIdsSet.add(id):newSelectedIdsSet.delete(id),onSelectionToggle?.(id,willBeSelected),onSelectionChange?.(Array.from(newSelectedIdsSet))}onClick?.(item)},[selectedIdsSet,onSelectionChange,onSelectionToggle,onClick,isSelectable]),renderEntityItem=index=>{let tabIndex,item=dataShown[index];if(!item)return null;let isLastItem=index===dataShown.length-1,isSelected=selectedIdsSet.has(item.id);if(isSelectable||onClick){let defaultTabIndex=0===index&&!selectedIndex;tabIndex=!item.isDisabled&&(index===selectedIndex||defaultTabIndex)?0:-1}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"BaseEntityList",{enumerable:!0,get:function(){return BaseEntityList}});const _react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_styledcomponents=require("./styled-components"),_useKeyboard=require("../../shared/useKeyboard"),_Icon=require("../Icon/Icon"),_EntityListItem=require("./EntityListItem"),_VirtualizedEntityList=require("./VirtualizedEntityList"),_useFocusByIndex=require("./useFocusByIndex"),_roles=require("./roles");function BaseEntityList({data,size="m",onClick,focusOnMount,isSelectable,selectedIds,onSelectionChange,onSelectionToggle,renderRightContent,renderItemWrapper,getLeftIconProps,hideBorder,filterFn,isVirtualized,maxHeight,ariaAttributes:deprecatedAriaAttributes,slotProps,role:roleProp,truncateLabels=!1,"data-e2e-test-id":dataE2eTestId,...ariaAttributes}){let rootRole,{itemRole,...rootAriaProps}=(rootRole=roleProp??"list",isSelectable&&(rootRole="listbox"),{role:rootRole,itemRole:_roles.ROLE_TO_ITEM_ROLE[rootRole],"aria-multiselectable":"listbox"===rootRole&&!!isSelectable||void 0}),ariaLabelExpand=slotProps?.toggle?.["aria-label-expand"]??deprecatedAriaAttributes?.ariaLabelExpand,ariaLabelCollapse=slotProps?.toggle?.["aria-label-collapse"]??deprecatedAriaAttributes?.ariaLabelCollapse,dataShown=(0,_react.useMemo)(()=>data.length&&filterFn?data.filter(filterFn):data,[data,filterFn]),selectedIdsSet=(0,_react.useMemo)(()=>new Set(selectedIds),[selectedIds]),listRef=(0,_react.useRef)(null),focusableItems=(0,_react.useMemo)(()=>dataShown.map(item=>({id:item.id,isDisabled:!!item.isDisabled})),[dataShown]),initialActiveIndex=(0,_react.useMemo)(()=>{let index=dataShown.findIndex(item=>item.isActive);return -1!==index?index:0},[dataShown]),{moveFocus,focusItemAtIndex,focusedIndex:selectedIndex}=(0,_useFocusByIndex.useFocusByIndex)({containerRef:listRef,nodeSelector:"data-list-item",data:focusableItems,preventScroll:isVirtualized,initialIndex:initialActiveIndex});(0,_react.useEffect)(()=>{focusOnMount&&focusItemAtIndex(selectedIndex)},[]),(0,_useKeyboard.useKeyboard)({ArrowDown:()=>{moveFocus(1)},ArrowUp:()=>{moveFocus(-1)}},listRef,isSelectable||!!onClick);let handleOnClick=(0,_react.useCallback)(item=>{let{id}=item;if(isSelectable){let willBeSelected=!selectedIdsSet.has(id),newSelectedIdsSet=new Set(selectedIdsSet);willBeSelected?newSelectedIdsSet.add(id):newSelectedIdsSet.delete(id),onSelectionToggle?.(id,willBeSelected),onSelectionChange?.(Array.from(newSelectedIdsSet))}onClick?.(item)},[selectedIdsSet,onSelectionChange,onSelectionToggle,onClick,isSelectable]),renderEntityItem=index=>{let tabIndex,item=dataShown[index];if(!item)return null;let isLastItem=index===dataShown.length-1,isSelected=selectedIdsSet.has(item.id);if(isSelectable||onClick){let defaultTabIndex=0===index&&!selectedIndex;tabIndex=!item.isDisabled&&(index===selectedIndex||defaultTabIndex)?0:-1}let itemElm=_react.default.createElement(_EntityListItem.EntityListItem,{"data-list-item":index,"aria-label":item["aria-label"]||item.label,size:size,hideBorder:hideBorder||isLastItem,isActive:item.isActive,isDisabled:item.isDisabled,isClickable:!!(onClick||selectedIds),isSelected:isSelectable?isSelected:void 0,role:itemRole,description:item.description,truncateLabel:truncateLabels,onSpaceEnterPress:()=>handleOnClick(item),tabIndex:tabIndex,ariaLabelExpand:ariaLabelExpand,ariaLabelCollapse:ariaLabelCollapse,onClick:e=>{e.target instanceof Element&&e.target.closest("label")||handleOnClick(item)},checkboxProps:isSelectable&&{name:"list-checkbox",size:"s",checked:isSelected,onChange:()=>handleOnClick(item)},renderLabel:()=>item.label,renderLeft:getLeftIconProps?({textSize})=>_react.default.createElement(_Icon.Icon,{...getLeftIconProps(item),size:textSize}):null,renderRight:renderRightProps=>renderRightContent?renderRightContent({...renderRightProps,...item}):void 0});return _react.default.createElement(_react.default.Fragment,{key:item.id},renderItemWrapper?renderItemWrapper({item,children:itemElm}):itemElm)};return _react.default.createElement("div",{ref:listRef},isVirtualized&&maxHeight?_react.default.createElement(_VirtualizedEntityList.VirtualizedEntityList,{id:dataE2eTestId,maxHeight:maxHeight,size:size,dataShown:dataShown,selectedIndex:selectedIndex,itemTemplate:renderEntityItem,"data-e2e-test-id":dataE2eTestId,...rootAriaProps,...ariaAttributes}):_react.default.createElement(_styledcomponents.StyledList,{size:size,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"EntityList",...rootAriaProps,...ariaAttributes},dataShown.map((_item,i)=>renderEntityItem(i))))}
|
|
@@ -1,3 +1,30 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
export declare const EntityListItem: React.ForwardRefExoticComponent<{
|
|
3
|
+
children?: React.ReactNode;
|
|
4
|
+
checkboxProps?: import("../..").CheckboxProps;
|
|
5
|
+
description?: string;
|
|
6
|
+
hideBorder?: boolean;
|
|
7
|
+
isActive?: boolean;
|
|
8
|
+
isClickable?: boolean;
|
|
9
|
+
isDisabled?: boolean;
|
|
10
|
+
lSpaceStep?: 0 | 1 | 2 | 3 | 4 | 5;
|
|
11
|
+
onClick?: (e: React.MouseEvent) => void;
|
|
12
|
+
onExpandClick?: (e: React.MouseEvent) => void;
|
|
13
|
+
renderLabel: (props: import("./types").TextSizeProps) => React.ReactNode;
|
|
14
|
+
renderLeft?: (props: import("./types").TextSizeProps) => React.ReactNode;
|
|
15
|
+
renderRight?: (props: import("./types").RenderRightProps) => React.ReactNode;
|
|
16
|
+
role?: import("./roles").ItemRole | "presentation";
|
|
17
|
+
size?: import("../../types").ListSize;
|
|
18
|
+
withWrapper?: (content: () => React.ReactNode) => React.ReactNode;
|
|
19
|
+
isExpanded?: boolean;
|
|
20
|
+
isDisabledExpand?: boolean;
|
|
21
|
+
tabIndex?: number;
|
|
22
|
+
onSpaceEnterPress?: (e: KeyboardEvent) => void;
|
|
23
|
+
ariaLabelExpand?: string;
|
|
24
|
+
ariaLabelCollapse?: string;
|
|
25
|
+
isSelected?: boolean;
|
|
26
|
+
truncateLabel?: boolean;
|
|
27
|
+
"aria-label": string;
|
|
28
|
+
"aria-level"?: number;
|
|
29
|
+
"data-list-item"?: number;
|
|
30
|
+
} & import("./types").EntityItemTriggerProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"EntityListItem",{enumerable:!0,get:function(){return EntityListItem}});const _react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_EntityItemBody=require("./EntityItemBody"),_useKeyboard=require("../../shared/useKeyboard"),_styledcomponents=require("./styled-components"),useButtonKeyboard=({ref:globalRef,isActive,onSpaceEnterPress})=>{let localRef=(0,_react.useRef)(null);return(0,_useKeyboard.useKeyboard)({"Space Enter":onSpaceEnterPress},localRef,isActive,!0),(0,_react.useImperativeHandle)(globalRef,()=>localRef.current),localRef},EntityListItem=_react.default.forwardRef(({checkboxProps,description,hideBorder,isActive,isClickable,isDisabled,onClick,renderLabel,renderLeft,renderRight,role,tabIndex,onSpaceEnterPress,size="m","aria-label":ariaLabel,"data-list-item":dataListItem,isSelected,truncateLabel},ref)=>{let handleOnClick=(0,_react.useCallback)(e=>{isClickable&&onClick&&onClick(e)},[onClick,isClickable]),buttonRef=useButtonKeyboard({ref,isActive:isClickable&&!isDisabled&&void 0!==tabIndex,onSpaceEnterPress}),supportsAriaSelected="menuitem"!==role,supportsAriaCurrent="option"!==role;return _react.default.createElement(_styledcomponents.StyledEntityListItemButton,{role:role,"aria-label":ariaLabel,"aria-selected":supportsAriaSelected?isSelected:void 0,"aria-current":supportsAriaCurrent&&isActive?isActive:void 0,"aria-disabled":isDisabled,size:size,tabIndex:tabIndex,ref:buttonRef,"data-list-item":dataListItem,"data-id":"list-item",onClick:handleOnClick,isClickable:isClickable,isActive:isActive,isDisabled:isDisabled},_react.default.createElement(_styledcomponents.StyledEntityListItemWrapper,{size:size,hideBorder:hideBorder||"xs"===size},_react.default.createElement(_EntityItemBody.EntityItemBody,{size:size,tabIndex:tabIndex,checkboxProps:checkboxProps,description:description,renderLabel:renderLabel,renderLeft:renderLeft,renderRight:renderRight,truncateLabel:truncateLabel})))});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"EntityListItem",{enumerable:!0,get:function(){return EntityListItem}});const _react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_EntityItemBody=require("./EntityItemBody"),_useKeyboard=require("../../shared/useKeyboard"),_styledcomponents=require("./styled-components"),isSelfEvent=e=>e.target===e.currentTarget,useButtonKeyboard=({ref:globalRef,isActive,onSpaceEnterPress})=>{let localRef=(0,_react.useRef)(null);return(0,_useKeyboard.useKeyboard)({"Space Enter":onSpaceEnterPress},localRef,isActive,!0),(0,_react.useImperativeHandle)(globalRef,()=>localRef.current),localRef},EntityListItem=_react.default.forwardRef(({checkboxProps,description,hideBorder,isActive,isClickable,isDisabled,onClick,renderLabel,renderLeft,renderRight,role,tabIndex,onSpaceEnterPress,size="m","aria-label":ariaLabel,"data-list-item":dataListItem,isSelected,truncateLabel,onPointerEnter,onPointerLeave,onFocus,onBlur,onKeyDown,"aria-describedby":ariaDescribedBy},ref)=>{let handleOnClick=(0,_react.useCallback)(e=>{isClickable&&onClick&&onClick(e)},[onClick,isClickable]),buttonRef=useButtonKeyboard({ref,isActive:isClickable&&!isDisabled&&void 0!==tabIndex,onSpaceEnterPress}),supportsAriaSelected="menuitem"!==role,supportsAriaCurrent="option"!==role;return _react.default.createElement(_styledcomponents.StyledEntityListItemButton,{role:role,"aria-label":ariaLabel,"aria-describedby":ariaDescribedBy,"aria-selected":supportsAriaSelected?isSelected:void 0,"aria-current":supportsAriaCurrent&&isActive?isActive:void 0,"aria-disabled":isDisabled,size:size,tabIndex:tabIndex,ref:buttonRef,"data-list-item":dataListItem,"data-id":"list-item",onClick:handleOnClick,onPointerEnter:onPointerEnter,onPointerLeave:onPointerLeave,onFocus:e=>{isSelfEvent(e)&&onFocus?.(e)},onBlur:e=>{isSelfEvent(e)&&onBlur?.(e)},onKeyDown:onKeyDown,isClickable:isClickable,isActive:isActive,isDisabled:isDisabled},_react.default.createElement(_styledcomponents.StyledEntityListItemWrapper,{size:size,hideBorder:hideBorder||"xs"===size},_react.default.createElement(_EntityItemBody.EntityItemBody,{size:size,tabIndex:tabIndex,checkboxProps:checkboxProps,description:description,renderLabel:renderLabel,renderLeft:renderLeft,renderRight:renderRight,truncateLabel:truncateLabel})))});
|
|
@@ -35,6 +35,26 @@ export type EntityListAriaAttributes = {
|
|
|
35
35
|
export type RenderRightProps = TextSizeProps & ActionSizeProps & {
|
|
36
36
|
tabIndex?: number;
|
|
37
37
|
};
|
|
38
|
+
/**
|
|
39
|
+
* Props an overlay component (e.g. `Tooltip`) injects into its trigger by cloning
|
|
40
|
+
* it. Forwarded to the row's root element, so a wrapped row triggers the overlay
|
|
41
|
+
* from anywhere on the row.
|
|
42
|
+
*/
|
|
43
|
+
export type EntityItemTriggerProps = {
|
|
44
|
+
onPointerEnter?: (e: React.PointerEvent) => void;
|
|
45
|
+
onPointerLeave?: (e: React.PointerEvent) => void;
|
|
46
|
+
onFocus?: (e: React.FocusEvent) => void;
|
|
47
|
+
onBlur?: (e: React.FocusEvent) => void;
|
|
48
|
+
onKeyDown?: (e: React.KeyboardEvent) => void;
|
|
49
|
+
/** Set by an overlay wrapper while its content is visible. */
|
|
50
|
+
"aria-describedby"?: string;
|
|
51
|
+
};
|
|
52
|
+
export type RenderItemWrapperProps = {
|
|
53
|
+
/** The data node this row was rendered from. */
|
|
54
|
+
item: ListNode;
|
|
55
|
+
/** The rendered row. Return it unchanged to leave this row unwrapped. */
|
|
56
|
+
children: React.ReactElement;
|
|
57
|
+
};
|
|
38
58
|
export type BaseEntityListProps = {
|
|
39
59
|
/**
|
|
40
60
|
* @param ListNode[].id
|
|
@@ -64,6 +84,12 @@ export type BaseEntityListProps = {
|
|
|
64
84
|
getLeftIconProps?: (props: ListNode) => Pick<IconProps, "name" | "color">;
|
|
65
85
|
/** Render content on the right side of the list item. */
|
|
66
86
|
renderRightContent?: (props: ListNodeProps & ActionSizeProps) => React.ReactNode;
|
|
87
|
+
/**
|
|
88
|
+
* Wraps each rendered row, so an overlay (e.g. `Tooltip`) can be composed around
|
|
89
|
+
* it from the outside. The overlay's trigger props land on the row's root element,
|
|
90
|
+
* so the whole row is the trigger. Return `children` unchanged to skip a row.
|
|
91
|
+
*/
|
|
92
|
+
renderItemWrapper?: (props: RenderItemWrapperProps) => React.ReactNode;
|
|
67
93
|
/** Hides the border around the list items. */
|
|
68
94
|
hideBorder?: boolean;
|
|
69
95
|
/**
|
|
@@ -140,7 +166,6 @@ export type EntityListItemProps = {
|
|
|
140
166
|
isDisabledExpand?: boolean;
|
|
141
167
|
tabIndex?: number;
|
|
142
168
|
onSpaceEnterPress?: (e: KeyboardEvent) => void;
|
|
143
|
-
onFocus?: (e: React.FocusEvent) => void;
|
|
144
169
|
/** @deprecated Use slotProps.toggle['aria-label-expand'] instead */
|
|
145
170
|
ariaLabelExpand?: string;
|
|
146
171
|
/** @deprecated Use slotProps.toggle['aria-label-collapse'] instead */
|
|
@@ -150,7 +175,7 @@ export type EntityListItemProps = {
|
|
|
150
175
|
"aria-label": string;
|
|
151
176
|
"aria-level"?: number;
|
|
152
177
|
"data-list-item"?: number;
|
|
153
|
-
};
|
|
178
|
+
} & EntityItemTriggerProps;
|
|
154
179
|
export type EntityListItemLabelProps = {
|
|
155
180
|
children: React.ReactNode;
|
|
156
181
|
size: TextSize;
|
|
@@ -9,6 +9,12 @@ export type TreeNodeWithUIState = TreeNode & {
|
|
|
9
9
|
};
|
|
10
10
|
type PartialEntityListItemProps = Pick<EntityListItemProps, "hideBorder" | "size" | "ariaLabelExpand" | "ariaLabelCollapse">;
|
|
11
11
|
type NodeClick = (node: Omit<TreeNode, "children">) => void;
|
|
12
|
+
export type RenderTreeItemWrapperProps = {
|
|
13
|
+
/** The tree node this row was rendered from. */
|
|
14
|
+
item: TreeNode;
|
|
15
|
+
/** The rendered row. Return it unchanged to leave this row unwrapped. */
|
|
16
|
+
children: React.ReactElement;
|
|
17
|
+
};
|
|
12
18
|
export type EntityTreeSlotProps = SlotProps<{
|
|
13
19
|
toggle: {
|
|
14
20
|
"aria-label-expand"?: string;
|
|
@@ -64,11 +70,18 @@ export type EntityTreeProps = {
|
|
|
64
70
|
chunkSize?: number;
|
|
65
71
|
/** If provided, the function is used to render an element in the trail of a node. */
|
|
66
72
|
renderRightContent?: (props: TreeNode & Parameters<EntityListItemProps["renderRight"]>[0]) => React.ReactNode;
|
|
73
|
+
/**
|
|
74
|
+
* Wraps each rendered row, so an overlay (e.g. `Tooltip`) can be composed around
|
|
75
|
+
* it from the outside. The wrapper is applied inside the `treeitem` element, so it
|
|
76
|
+
* covers only that row and never its nested subtree. Return `children` unchanged
|
|
77
|
+
* to skip a row.
|
|
78
|
+
*/
|
|
79
|
+
renderItemWrapper?: (props: RenderTreeItemWrapperProps) => React.ReactNode;
|
|
67
80
|
"data-e2e-test-id"?: string;
|
|
68
81
|
/** @deprecated Use aria-* props directly instead */
|
|
69
82
|
ariaAttributes?: EntityListAriaAttributes;
|
|
70
83
|
/** Props forwarded to internal sub-components */
|
|
71
84
|
slotProps?: EntityTreeSlotProps;
|
|
72
85
|
} & PartialEntityListItemProps & AriaAttributes;
|
|
73
|
-
export declare const BaseEntityTree: ({ ariaAttributes: deprecatedAriaAttributes, slotProps, data, selectedIds, onSelectionChange, onSelectionToggle, onNodeClick, expandedIds, onToggle, activeId, chunkSize, filterFn, onTreeChange, hideBorder, size, showItemsCount, showMoreButtonLabel, renderRightContent, "data-e2e-test-id": dataE2eTestId, ...ariaAttributes }: EntityTreeProps) => React.ReactElement;
|
|
86
|
+
export declare const BaseEntityTree: ({ ariaAttributes: deprecatedAriaAttributes, slotProps, data, selectedIds, onSelectionChange, onSelectionToggle, onNodeClick, expandedIds, onToggle, activeId, chunkSize, filterFn, onTreeChange, hideBorder, size, showItemsCount, showMoreButtonLabel, renderRightContent, renderItemWrapper, "data-e2e-test-id": dataE2eTestId, ...ariaAttributes }: EntityTreeProps) => React.ReactElement;
|
|
74
87
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"BaseEntityTree",{enumerable:!0,get:function(){return BaseEntityTree}});const _react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_Button=require("../Button/Button"),_Box=require("../Box/Box"),_styledcomponents=require("../EntityList/styled-components"),_EntityTreeItem=require("./EntityTreeItem"),_useKeyboard=require("../../shared/useKeyboard"),_useFocusByIndex=require("../EntityList/useFocusByIndex"),_Text=require("../Typography/Text/Text"),_tree=require("./tree"),flattenTree=(data,expandedIds,expadedAll)=>{let flattened=[];return data.forEach(node=>{flattened.push(node),(node.children.length>0&&expandedIds[node.id]||expadedAll)&&flattened.push(...flattenTree(node.children,expandedIds,expadedAll))}),flattened},getLastNodeOfList=({node,data,level,isParentsLastOfLvl})=>{let currentLastNodeOfLvl=node.id===data[data.length-1].id;return 0===level?currentLastNodeOfLvl:isParentsLastOfLvl&¤tLastNodeOfLvl},useTreeTruncation=({chunkSize,data,expandAll,nodeExpandedState})=>{let[maxNodesCount,setMaxNodesCount]=(0,_react.useState)(chunkSize),{result,hasMoreNodes}=(0,_react.useMemo)(()=>(0,_tree.trimDataByMaxSize)(data,nodeExpandedState,expandAll,maxNodesCount),[data,nodeExpandedState,expandAll,maxNodesCount]);return{handleIncreaseMaxNodeCount:(0,_react.useCallback)(()=>{setMaxNodesCount(prev=>prev+chunkSize)},[chunkSize]),result,hasMoreNodes}},Node=({isFirstNode,nodeChildrenMap,nodeCheckboxState,nodeExpandedState,handleSelectionChange,handleToggle,expandAll,onNodeClick,hideBorder,size,showItemsCount,renderRightContent,activeId,focusedNodeId,node,level,renderFn,isLastNodeOfList,ariaLabelExpand,ariaLabelCollapse,visibleNodeIndexMap})=>{let readOnly=null===nodeCheckboxState,hasChildren=node.children.length>0,expandedState=!!expandAll||!!nodeExpandedState[node.id],leafItems=(0,_tree.getLeafNodeIds)(nodeChildrenMap,node.id),totalItemsCount=leafItems.length,selectedItemsCount=nodeCheckboxState?leafItems.filter(leafId=>"checked"===nodeCheckboxState[leafId]).length:null,countLabel=nodeCheckboxState?`(${selectedItemsCount}/${totalItemsCount})`:`(${totalItemsCount})`,lastLeaf=!hasChildren&&!node.isFiltered,isExpanded=lastLeaf?void 0:expandedState,{children,...nodeDataWithoutChildren}=node,isFocused=focusedNodeId===node.id
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"BaseEntityTree",{enumerable:!0,get:function(){return BaseEntityTree}});const _react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_Button=require("../Button/Button"),_Box=require("../Box/Box"),_styledcomponents=require("../EntityList/styled-components"),_EntityTreeItem=require("./EntityTreeItem"),_useKeyboard=require("../../shared/useKeyboard"),_useFocusByIndex=require("../EntityList/useFocusByIndex"),_Text=require("../Typography/Text/Text"),_tree=require("./tree"),flattenTree=(data,expandedIds,expadedAll)=>{let flattened=[];return data.forEach(node=>{flattened.push(node),(node.children.length>0&&expandedIds[node.id]||expadedAll)&&flattened.push(...flattenTree(node.children,expandedIds,expadedAll))}),flattened},getLastNodeOfList=({node,data,level,isParentsLastOfLvl})=>{let currentLastNodeOfLvl=node.id===data[data.length-1].id;return 0===level?currentLastNodeOfLvl:isParentsLastOfLvl&¤tLastNodeOfLvl},useTreeTruncation=({chunkSize,data,expandAll,nodeExpandedState})=>{let[maxNodesCount,setMaxNodesCount]=(0,_react.useState)(chunkSize),{result,hasMoreNodes}=(0,_react.useMemo)(()=>(0,_tree.trimDataByMaxSize)(data,nodeExpandedState,expandAll,maxNodesCount),[data,nodeExpandedState,expandAll,maxNodesCount]);return{handleIncreaseMaxNodeCount:(0,_react.useCallback)(()=>{setMaxNodesCount(prev=>prev+chunkSize)},[chunkSize]),result,hasMoreNodes}},Node=({isFirstNode,nodeChildrenMap,nodeCheckboxState,nodeExpandedState,handleSelectionChange,handleToggle,expandAll,onNodeClick,hideBorder,size,showItemsCount,renderRightContent,renderItemWrapper,activeId,focusedNodeId,node,level,renderFn,isLastNodeOfList,ariaLabelExpand,ariaLabelCollapse,visibleNodeIndexMap})=>{let readOnly=null===nodeCheckboxState,hasChildren=node.children.length>0,expandedState=!!expandAll||!!nodeExpandedState[node.id],leafItems=(0,_tree.getLeafNodeIds)(nodeChildrenMap,node.id),totalItemsCount=leafItems.length,selectedItemsCount=nodeCheckboxState?leafItems.filter(leafId=>"checked"===nodeCheckboxState[leafId]).length:null,countLabel=nodeCheckboxState?`(${selectedItemsCount}/${totalItemsCount})`:`(${totalItemsCount})`,lastLeaf=!hasChildren&&!node.isFiltered,isExpanded=lastLeaf?void 0:expandedState,{children,...nodeDataWithoutChildren}=node,isFocused=focusedNodeId===node.id,treeItemElm=_react.default.createElement(_EntityTreeItem.EntityTreeItem,{"data-list-item":visibleNodeIndexMap[node.id],hideBorder:hideBorder||isLastNodeOfList&&(!isExpanded||node.isFiltered),tabIndex:isFocused||null===focusedNodeId&&isFirstNode?0:-1,size:size,lSpaceStep:level,onSpaceEnterPress:()=>{if(readOnly){handleToggle(node.id),onNodeClick?.(nodeDataWithoutChildren);return}handleSelectionChange(node.id)},description:node.description,renderLabel:({textSize})=>_react.default.createElement(_react.default.Fragment,null,node.label,showItemsCount&&!lastLeaf&&_react.default.createElement(_Text.Text,{as:"span",size:textSize,color:"tertiary"}," ",countLabel)),isActive:activeId===node.id,isExpanded:isExpanded,isDisabledExpand:expandAll,checkboxProps:!readOnly&&{size:"s",name:node.label,checked:nodeCheckboxState?.[node.id]==="checked",indeterminate:nodeCheckboxState?.[node.id]==="indeterminate",onChange:()=>handleSelectionChange(node.id)},onExpandClick:e=>{e.stopPropagation(),handleToggle(node.id)},isClickable:readOnly,onClick:()=>{handleToggle(node.id),onNodeClick?.(nodeDataWithoutChildren)},renderRight:renderRightContent?renderRightProps=>renderRightContent({...renderRightProps,...node}):void 0,ariaLabelExpand:ariaLabelExpand,ariaLabelCollapse:ariaLabelCollapse,"aria-label":node.label,"aria-level":level+1},hasChildren&&_react.default.createElement("div",{role:"group"},renderFn({data:children,level:level+1,renderFn,isParentsLastOfLvl:isLastNodeOfList})));return renderItemWrapper?renderItemWrapper({item:node,children:treeItemElm}):treeItemElm},makeRenderTreeBranches=renderTreeArgs=>({data,level,renderFn,isParentsLastOfLvl})=>data.map((node,i)=>{let isFirstNode=0===level&&0===i,isLastNodeOfList=getLastNodeOfList({node,data,level,isParentsLastOfLvl});return _react.default.createElement(Node,{key:node.id,level:level,node:node,isFirstNode:isFirstNode,renderFn:renderFn,isLastNodeOfList:isLastNodeOfList,...renderTreeArgs})}),BaseEntityTree=({ariaAttributes:deprecatedAriaAttributes,slotProps,data,selectedIds,onSelectionChange,onSelectionToggle,onNodeClick,expandedIds=[],onToggle,activeId,chunkSize=10,filterFn,onTreeChange,hideBorder=!1,size="m",showItemsCount=!0,showMoreButtonLabel,renderRightContent,renderItemWrapper,"data-e2e-test-id":dataE2eTestId,...ariaAttributes})=>{let nodeChildrenMap=Object.assign({},...data.map(tree=>(0,_tree.getNodeChildrenMap)(tree))),nodeCheckboxState=selectedIds?Object.assign({},...data.map(tree=>(0,_tree.getTreeCheckboxState)(nodeChildrenMap,tree.id,selectedIds))):null,nodeExpandedState=expandedIds.reduce((acc,id)=>(acc[id]=!0,acc),{}),visibleActiveNodeId=(0,_tree.getVisibleActiveNodeId)(nodeChildrenMap,nodeExpandedState,activeId),handleExpand=(0,_react.useCallback)(targetId=>{onToggle&&!expandedIds.includes(targetId)&&onToggle(expandedIds.concat([targetId]))},[expandedIds,onToggle]),handleCollapse=(0,_react.useCallback)(targetId=>{onToggle&&expandedIds.includes(targetId)&&onToggle(expandedIds.filter(id=>id!==targetId))},[expandedIds,onToggle]),handleToggle=(0,_react.useCallback)(targetId=>{expandedIds.includes(targetId)?handleCollapse(targetId):handleExpand(targetId)},[expandedIds,handleCollapse,handleExpand]),dataShown=filterFn?data.map(tree=>(0,_tree.filterTree)(tree,filterFn)).filter(Boolean):data;(0,_react.useEffect)(()=>{onTreeChange&&onTreeChange(dataShown.map(tree=>(0,_tree.mapTree)(tree,node=>({...node,checkedState:!!nodeCheckboxState&&nodeCheckboxState[node.id],isExpanded:!!nodeExpandedState[node.id]}))))},[dataShown,nodeCheckboxState,nodeExpandedState,onTreeChange]);let expandAll=!!filterFn,{hasMoreNodes,handleIncreaseMaxNodeCount,result}=useTreeTruncation({chunkSize,data:dataShown,nodeExpandedState,expandAll}),listRef=_react.default.useRef(null),visibleNodes=(0,_react.useMemo)(()=>flattenTree(result,nodeExpandedState,expandAll),[result,nodeExpandedState,expandAll]),visibleNodeIndexMap=(0,_react.useMemo)(()=>visibleNodes.reduce((acc,node,index)=>(acc[node.id]=index,acc),{}),[visibleNodes]),focusableNodes=(0,_react.useMemo)(()=>visibleNodes.map(node=>({id:node.id,isDisabled:!!node.isDisabled})),[visibleNodes]),{moveFocus,focusedIndex}=(0,_useFocusByIndex.useFocusByIndex)({containerRef:listRef,nodeSelector:"data-list-item",data:focusableNodes}),focusedNodeId=focusedIndex>=0?visibleNodes[focusedIndex]?.id??null:null;(0,_useKeyboard.useKeyboard)({ArrowDown:()=>{moveFocus(1)},ArrowUp:()=>{moveFocus(-1)},ArrowRight:()=>{!expandAll&&focusedNodeId&&nodeChildrenMap[focusedNodeId]?.length&&!nodeExpandedState[focusedNodeId]&&handleExpand(focusedNodeId)},ArrowLeft:()=>{!expandAll&&focusedNodeId&&nodeChildrenMap[focusedNodeId]?.length&&nodeExpandedState[focusedNodeId]&&handleCollapse(focusedNodeId)}},listRef,!!visibleNodes.length);let renderTreeBranches=makeRenderTreeBranches({nodeChildrenMap,nodeCheckboxState,nodeExpandedState,handleSelectionChange:targetId=>{if(onSelectionChange){let isSelected,updatedSelectedIds=[];if(0===nodeChildrenMap[targetId].length)isSelected=!selectedIds.includes(targetId),updatedSelectedIds=selectedIds.includes(targetId)?selectedIds.filter(id=>id!==targetId):selectedIds.concat([targetId]);else{let affectedLeafNodeIds=(0,_tree.getLeafNodeIds)(nodeChildrenMap,targetId),hasUncheckedChildren=affectedLeafNodeIds.some(leafId=>!selectedIds.includes(leafId));updatedSelectedIds=hasUncheckedChildren?selectedIds.concat(affectedLeafNodeIds.filter(id=>!selectedIds.includes(id))):selectedIds.filter(id=>!affectedLeafNodeIds.includes(id)),isSelected=hasUncheckedChildren}onSelectionToggle?.(targetId,isSelected),onSelectionChange(updatedSelectedIds)}},handleToggle,onNodeClick:node=>{onNodeClick?.(node)},expandAll,hideBorder,size,showItemsCount,renderRightContent,renderItemWrapper,activeId:visibleActiveNodeId,focusedNodeId,visibleNodeIndexMap,ariaLabelExpand:slotProps?.toggle?.["aria-label-expand"]??deprecatedAriaAttributes?.ariaLabelExpand,ariaLabelCollapse:slotProps?.toggle?.["aria-label-collapse"]??deprecatedAriaAttributes?.ariaLabelCollapse});return _react.default.createElement("div",null,_react.default.createElement(_styledcomponents.StyledList,{ref:listRef,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"EntityTree",size:size,...ariaAttributes,role:"tree","aria-multiselectable":!!nodeCheckboxState||void 0},renderTreeBranches({data:result,level:0,renderFn:renderTreeBranches})),hasMoreNodes&&_react.default.createElement(_styledcomponents.StyledShowMore,null,_react.default.createElement(_Box.Box,{alignText:"center",space:"xs"},_react.default.createElement(_Button.Button,{fullWidth:!0,size:"s",variant:"tertiary",onClick:handleIncreaseMaxNodeCount},showMoreButtonLabel))))};
|
|
@@ -1,3 +1,30 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
export declare const EntityTreeItem: React.ForwardRefExoticComponent<{
|
|
3
|
+
children?: React.ReactNode;
|
|
4
|
+
checkboxProps?: import("../..").CheckboxProps;
|
|
5
|
+
description?: string;
|
|
6
|
+
hideBorder?: boolean;
|
|
7
|
+
isActive?: boolean;
|
|
8
|
+
isClickable?: boolean;
|
|
9
|
+
isDisabled?: boolean;
|
|
10
|
+
lSpaceStep?: 0 | 1 | 2 | 3 | 4 | 5;
|
|
11
|
+
onClick?: (e: React.MouseEvent) => void;
|
|
12
|
+
onExpandClick?: (e: React.MouseEvent) => void;
|
|
13
|
+
renderLabel: (props: import("../EntityList/types").TextSizeProps) => React.ReactNode;
|
|
14
|
+
renderLeft?: (props: import("../EntityList/types").TextSizeProps) => React.ReactNode;
|
|
15
|
+
renderRight?: (props: import("../EntityList/types").RenderRightProps) => React.ReactNode;
|
|
16
|
+
role?: import("../EntityList/roles").ItemRole | "presentation";
|
|
17
|
+
size?: import("../../types").ListSize;
|
|
18
|
+
withWrapper?: (content: () => React.ReactNode) => React.ReactNode;
|
|
19
|
+
isExpanded?: boolean;
|
|
20
|
+
isDisabledExpand?: boolean;
|
|
21
|
+
tabIndex?: number;
|
|
22
|
+
onSpaceEnterPress?: (e: KeyboardEvent) => void;
|
|
23
|
+
ariaLabelExpand?: string;
|
|
24
|
+
ariaLabelCollapse?: string;
|
|
25
|
+
isSelected?: boolean;
|
|
26
|
+
truncateLabel?: boolean;
|
|
27
|
+
"aria-label": string;
|
|
28
|
+
"aria-level"?: number;
|
|
29
|
+
"data-list-item"?: number;
|
|
30
|
+
} & import("../EntityList/types").EntityItemTriggerProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"EntityTreeItem",{enumerable:!0,get:function(){return EntityTreeItem}});const _interop_require_default=require("@swc/helpers/_/_interop_require_default"),_react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_styled=/*#__PURE__*/_interop_require_default._(require("@emotion/styled")),_mediaQueries=require("../../shared/mediaQueries"),_EntityTreeItemExpandButton=require("./EntityTreeItemExpandButton"),_useKeyboard=require("../../shared/useKeyboard"),_mixins=require("../../shared/mixins"),_EntityItemBody=require("../EntityList/EntityItemBody"),_styledcomponents=require("../EntityList/styled-components"),StyledEntityTreeItemWrapper=(0,_styled.default)(_styledcomponents.StyledEntityListItemWrapper,{target:"e1n4xnc20",label:"StyledEntityTreeItemWrapper"})({paddingLeft:"0 !important"},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvRW50aXR5VHJlZS9FbnRpdHlUcmVlSXRlbS50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL0VudGl0eVRyZWUvRW50aXR5VHJlZUl0ZW0udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VDYWxsYmFjaywgdXNlUmVmIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyBFbnRpdHlUcmVlSXRlbUV4cGFuZEJ1dHRvbiB9IGZyb20gXCIuL0VudGl0eVRyZWVJdGVtRXhwYW5kQnV0dG9uXCI7XG5pbXBvcnQgeyB1c2VLZXlib2FyZCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlS2V5Ym9hcmRcIjtcbmltcG9ydCB7IGdldEZvY3VzU3R5bGVzIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9taXhpbnNcIjtcbmltcG9ydCB7IEVudGl0eUl0ZW1Cb2R5IH0gZnJvbSBcIi4uL0VudGl0eUxpc3QvRW50aXR5SXRlbUJvZHlcIjtcbmltcG9ydCB7XG4gIFN0eWxlZEVudGl0eUl0ZW0sXG4gIFN0eWxlZEVudGl0eUxpc3RJdGVtV3JhcHBlcixcbiAgU3R5bGVkRW50aXR5TGlzdEl0ZW1CdXR0b24sXG59IGZyb20gXCIuLi9FbnRpdHlMaXN0L3N0eWxlZC1jb21wb25lbnRzXCI7XG5pbXBvcnQgdHlwZSB7IEVudGl0eUxpc3RJdGVtUHJvcHMgfSBmcm9tIFwiLi4vRW50aXR5TGlzdC90eXBlc1wiO1xuXG5jb25zdCBTdHlsZWRFbnRpdHlUcmVlSXRlbVdyYXBwZXIgPSBzdHlsZWQoU3R5bGVkRW50aXR5TGlzdEl0ZW1XcmFwcGVyKSh7XG4gIHBhZGRpbmdMZWZ0OiBcIjAgIWltcG9ydGFudFwiLCAvLyBcImltcG9ydGFudFwiIGlzIG5lZWRlZCB0byBvdmVycmlkZSB0aGUgQG1lZGlhIHF1ZXJ5IG9mIE1RIGZ1bmN0aW9uXG59KTtcblxuY29uc3QgU3R5bGVkRW50aXR5VHJlZUl0ZW1Db250YWluZXIgPSBzdHlsZWQoU3R5bGVkRW50aXR5TGlzdEl0ZW1CdXR0b24pPHtcbiAgaGFzRXhwYW5kYWJsZUljb246IGJvb2xlYW47XG59PigoeyB0aGVtZSwgaGFzRXhwYW5kYWJsZUljb24sIGxTcGFjZVN0ZXAgfSkgPT4ge1xuICBjb25zdCBnZXRTaXplID0gKGJhc2VPZmZzZXQ6IHN0cmluZywgZGVlcGVzdE5vZGVPZmZzZXQ6IHN0cmluZykgPT5cbiAgICBgY2FsYygke2Jhc2VPZmZzZXR9ICogJHtsU3BhY2VTdGVwfSArICR7XG4gICAgICBoYXNFeHBhbmRhYmxlSWNvbiA/IFwiMHB4XCIgOiBkZWVwZXN0Tm9kZU9mZnNldFxuICAgIH0gKyAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzfSlgO1xuXG4gIHJldHVybiB7XG4gICAgLi4uZ2V0Rm9jdXNTdHlsZXMoeyBvZmZzZXQ6IC0yIH0pLFxuICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICBwYWRkaW5nTGVmdDogW1xuICAgICAgICAvLyA0MnB4IGFuZCA1NnB4IGFyZSBFeHBhbmQgYnV0dG9uIHdpZHRoICsgcGFkZGluZ1xuICAgICAgICAvLyBpdCdzIG5lZWRlZCBmb3IgYSBkZWVwZXN0IG5vZGUgd2l0aG91dCBleHBhbmRCdXR0b25cbiAgICAgICAgZ2V0U2l6ZSh0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm0sIFwiNDJweFwiKSxcbiAgICAgICAgZ2V0U2l6ZSh0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhsLCBcIjU2cHhcIiksXG4gICAgICBdLFxuICAgIH0pLFxuICB9O1xufSk7XG5cbmV4cG9ydCBjb25zdCBFbnRpdHlUcmVlSXRlbSA9ICh7XG4gIGNoZWNrYm94UHJvcHMsXG4gIGNoaWxkcmVuLFxuICBkZXNjcmlwdGlvbixcbiAgaGlkZUJvcmRlcixcbiAgaXNBY3RpdmUsXG4gIGlzQ2xpY2thYmxlLFxuICBpc0Rpc2FibGVkLFxuICBpc0Rpc2FibGVkRXhwYW5kLFxuICBpc0V4cGFuZGVkLFxuICBsU3BhY2VTdGVwLFxuICBvbkNsaWNrLFxuICBvbkV4cGFuZENsaWNrLFxuICBvblNwYWNlRW50ZXJQcmVzcyxcbiAgcmVuZGVyTGFiZWwsXG4gIHJlbmRlckxlZnQsXG4gIHJlbmRlclJpZ2h0LFxuICBzaXplID0gXCJtXCIsXG4gIHRhYkluZGV4LFxuICBhcmlhTGFiZWxFeHBhbmQsXG4gIGFyaWFMYWJlbENvbGxhcHNlLFxuICBcImFyaWEtbGV2ZWxcIjogYXJpYUxldmVsLFxuICBcImFyaWEtbGFiZWxcIjogYXJpYUxhYmVsLFxuICBcImRhdGEtbGlzdC1pdGVtXCI6IGRhdGFMaXN0SXRlbSxcbn06IEVudGl0eUxpc3RJdGVtUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQgPT4ge1xuICBjb25zdCBoYXNFeHBhbmRhYmxlSWNvbiA9IGlzRXhwYW5kZWQgIT09IHVuZGVmaW5lZDtcblxuICBjb25zdCBoYW5kbGVPbkNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgKGU6IFJlYWN0Lk1vdXNlRXZlbnQpID0+IHtcbiAgICAgIGlmIChvbkNsaWNrKSB7XG4gICAgICAgIG9uQ2xpY2soZSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25DbGlja11cbiAgKTtcblxuICBjb25zdCBidXR0b25SZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuXG4gIHVzZUtleWJvYXJkKFxuICAgIHtcbiAgICAgIFwiU3BhY2UgRW50ZXJcIjogb25TcGFjZUVudGVyUHJlc3MsXG4gICAgfSxcbiAgICBidXR0b25SZWYsXG4gICAgdGFiSW5kZXggPT09IDAgJiYgKGlzQ2xpY2thYmxlIHx8ICEhY2hlY2tib3hQcm9wcyksXG4gICAgdHJ1ZVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPFN0eWxlZEVudGl0eUl0ZW1cbiAgICAgIHJvbGU9XCJ0cmVlaXRlbVwiXG4gICAgICBhcmlhLWV4cGFuZGVkPXtoYXNFeHBhbmRhYmxlSWNvbiA/IGlzRXhwYW5kZWQgOiB1bmRlZmluZWR9XG4gICAgICBhcmlhLWNoZWNrZWQ9e2NoZWNrYm94UHJvcHM/LmNoZWNrZWR9XG4gICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWx9XG4gICAgICBhcmlhLWxldmVsPXthcmlhTGV2ZWx9XG4gICAgPlxuICAgICAgPFN0eWxlZEVudGl0eVRyZWVJdGVtQ29udGFpbmVyXG4gICAgICAgIGRhdGEtbGlzdC1pdGVtPXtkYXRhTGlzdEl0ZW19XG4gICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgIHJlZj17YnV0dG9uUmVmfVxuICAgICAgICBkYXRhLWlkPVwibGlzdC1pdGVtXCJcbiAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICByb2xlPVwicHJlc2VudGF0aW9uXCJcbiAgICAgICAgaXNBY3RpdmU9e2lzQWN0aXZlfVxuICAgICAgICBoYXNFeHBhbmRhYmxlSWNvbj17aGFzRXhwYW5kYWJsZUljb259XG4gICAgICAgIGxTcGFjZVN0ZXA9e2xTcGFjZVN0ZXB9XG4gICAgICAgIGlzRGlzYWJsZWQ9e2lzRGlzYWJsZWR9XG4gICAgICAgIG9uQ2xpY2s9e2hhbmRsZU9uQ2xpY2t9XG4gICAgICAgIGlzQ2xpY2thYmxlPXtpc0NsaWNrYWJsZX1cbiAgICAgID5cbiAgICAgICAge2hhc0V4cGFuZGFibGVJY29uICYmIChcbiAgICAgICAgICA8RW50aXR5VHJlZUl0ZW1FeHBhbmRCdXR0b25cbiAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgICBpc0Rpc2FibGVkPXtpc0Rpc2FibGVkRXhwYW5kIHx8IGlzRGlzYWJsZWR9XG4gICAgICAgICAgICBpc0V4cGFuZGVkPXtpc0V4cGFuZGVkfVxuICAgICAgICAgICAgb25DbGljaz17b25FeHBhbmRDbGlja31cbiAgICAgICAgICAgIGFyaWFMYWJlbEV4cGFuZD17YXJpYUxhYmVsRXhwYW5kfVxuICAgICAgICAgICAgYXJpYUxhYmVsQ29sbGFwc2U9e2FyaWFMYWJlbENvbGxhcHNlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIDxTdHlsZWRFbnRpdHlUcmVlSXRlbVdyYXBwZXJcbiAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgIGhpZGVCb3JkZXI9e2hpZGVCb3JkZXIgfHwgc2l6ZSA9PT0gXCJ4c1wifVxuICAgICAgICA+XG4gICAgICAgICAgPEVudGl0eUl0ZW1Cb2R5XG4gICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgZGVzY3JpcHRpb249e2Rlc2NyaXB0aW9ufVxuICAgICAgICAgICAgcmVuZGVyTGFiZWw9e3JlbmRlckxhYmVsfVxuICAgICAgICAgICAgcmVuZGVyTGVmdD17cmVuZGVyTGVmdH1cbiAgICAgICAgICAgIHJlbmRlclJpZ2h0PXtyZW5kZXJSaWdodH1cbiAgICAgICAgICAgIGNoZWNrYm94UHJvcHM9e2NoZWNrYm94UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9TdHlsZWRFbnRpdHlUcmVlSXRlbVdyYXBwZXI+XG4gICAgICA8L1N0eWxlZEVudGl0eVRyZWVJdGVtQ29udGFpbmVyPlxuICAgICAge2lzRXhwYW5kZWQgJiYgY2hpbGRyZW59XG4gICAgPC9TdHlsZWRFbnRpdHlJdGVtPlxuICApO1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjb0MifQ== */"),StyledEntityTreeItemContainer=(0,_styled.default)(_styledcomponents.StyledEntityListItemButton,{target:"e1n4xnc21",label:"StyledEntityTreeItemContainer"})(({theme,hasExpandableIcon,lSpaceStep})=>{let getSize=(baseOffset,deepestNodeOffset)=>`calc(${baseOffset} * ${lSpaceStep} + ${hasExpandableIcon?"0px":deepestNodeOffset} + ${theme.variables.size.spacing.xxs})`;return{...(0,_mixins.getFocusStyles)({offset:-2}),...(0,_mediaQueries.useResponsiveValue)({paddingLeft:[getSize(theme.variables.size.spacing.m,"42px"),getSize(theme.variables.size.spacing.xl,"56px")]})}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvRW50aXR5VHJlZS9FbnRpdHlUcmVlSXRlbS50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL0VudGl0eVRyZWUvRW50aXR5VHJlZUl0ZW0udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VDYWxsYmFjaywgdXNlUmVmIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyBFbnRpdHlUcmVlSXRlbUV4cGFuZEJ1dHRvbiB9IGZyb20gXCIuL0VudGl0eVRyZWVJdGVtRXhwYW5kQnV0dG9uXCI7XG5pbXBvcnQgeyB1c2VLZXlib2FyZCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlS2V5Ym9hcmRcIjtcbmltcG9ydCB7IGdldEZvY3VzU3R5bGVzIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9taXhpbnNcIjtcbmltcG9ydCB7IEVudGl0eUl0ZW1Cb2R5IH0gZnJvbSBcIi4uL0VudGl0eUxpc3QvRW50aXR5SXRlbUJvZHlcIjtcbmltcG9ydCB7XG4gIFN0eWxlZEVudGl0eUl0ZW0sXG4gIFN0eWxlZEVudGl0eUxpc3RJdGVtV3JhcHBlcixcbiAgU3R5bGVkRW50aXR5TGlzdEl0ZW1CdXR0b24sXG59IGZyb20gXCIuLi9FbnRpdHlMaXN0L3N0eWxlZC1jb21wb25lbnRzXCI7XG5pbXBvcnQgdHlwZSB7IEVudGl0eUxpc3RJdGVtUHJvcHMgfSBmcm9tIFwiLi4vRW50aXR5TGlzdC90eXBlc1wiO1xuXG5jb25zdCBTdHlsZWRFbnRpdHlUcmVlSXRlbVdyYXBwZXIgPSBzdHlsZWQoU3R5bGVkRW50aXR5TGlzdEl0ZW1XcmFwcGVyKSh7XG4gIHBhZGRpbmdMZWZ0OiBcIjAgIWltcG9ydGFudFwiLCAvLyBcImltcG9ydGFudFwiIGlzIG5lZWRlZCB0byBvdmVycmlkZSB0aGUgQG1lZGlhIHF1ZXJ5IG9mIE1RIGZ1bmN0aW9uXG59KTtcblxuY29uc3QgU3R5bGVkRW50aXR5VHJlZUl0ZW1Db250YWluZXIgPSBzdHlsZWQoU3R5bGVkRW50aXR5TGlzdEl0ZW1CdXR0b24pPHtcbiAgaGFzRXhwYW5kYWJsZUljb246IGJvb2xlYW47XG59PigoeyB0aGVtZSwgaGFzRXhwYW5kYWJsZUljb24sIGxTcGFjZVN0ZXAgfSkgPT4ge1xuICBjb25zdCBnZXRTaXplID0gKGJhc2VPZmZzZXQ6IHN0cmluZywgZGVlcGVzdE5vZGVPZmZzZXQ6IHN0cmluZykgPT5cbiAgICBgY2FsYygke2Jhc2VPZmZzZXR9ICogJHtsU3BhY2VTdGVwfSArICR7XG4gICAgICBoYXNFeHBhbmRhYmxlSWNvbiA/IFwiMHB4XCIgOiBkZWVwZXN0Tm9kZU9mZnNldFxuICAgIH0gKyAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzfSlgO1xuXG4gIHJldHVybiB7XG4gICAgLi4uZ2V0Rm9jdXNTdHlsZXMoeyBvZmZzZXQ6IC0yIH0pLFxuICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICBwYWRkaW5nTGVmdDogW1xuICAgICAgICAvLyA0MnB4IGFuZCA1NnB4IGFyZSBFeHBhbmQgYnV0dG9uIHdpZHRoICsgcGFkZGluZ1xuICAgICAgICAvLyBpdCdzIG5lZWRlZCBmb3IgYSBkZWVwZXN0IG5vZGUgd2l0aG91dCBleHBhbmRCdXR0b25cbiAgICAgICAgZ2V0U2l6ZSh0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm0sIFwiNDJweFwiKSxcbiAgICAgICAgZ2V0U2l6ZSh0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhsLCBcIjU2cHhcIiksXG4gICAgICBdLFxuICAgIH0pLFxuICB9O1xufSk7XG5cbmV4cG9ydCBjb25zdCBFbnRpdHlUcmVlSXRlbSA9ICh7XG4gIGNoZWNrYm94UHJvcHMsXG4gIGNoaWxkcmVuLFxuICBkZXNjcmlwdGlvbixcbiAgaGlkZUJvcmRlcixcbiAgaXNBY3RpdmUsXG4gIGlzQ2xpY2thYmxlLFxuICBpc0Rpc2FibGVkLFxuICBpc0Rpc2FibGVkRXhwYW5kLFxuICBpc0V4cGFuZGVkLFxuICBsU3BhY2VTdGVwLFxuICBvbkNsaWNrLFxuICBvbkV4cGFuZENsaWNrLFxuICBvblNwYWNlRW50ZXJQcmVzcyxcbiAgcmVuZGVyTGFiZWwsXG4gIHJlbmRlckxlZnQsXG4gIHJlbmRlclJpZ2h0LFxuICBzaXplID0gXCJtXCIsXG4gIHRhYkluZGV4LFxuICBhcmlhTGFiZWxFeHBhbmQsXG4gIGFyaWFMYWJlbENvbGxhcHNlLFxuICBcImFyaWEtbGV2ZWxcIjogYXJpYUxldmVsLFxuICBcImFyaWEtbGFiZWxcIjogYXJpYUxhYmVsLFxuICBcImRhdGEtbGlzdC1pdGVtXCI6IGRhdGFMaXN0SXRlbSxcbn06IEVudGl0eUxpc3RJdGVtUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQgPT4ge1xuICBjb25zdCBoYXNFeHBhbmRhYmxlSWNvbiA9IGlzRXhwYW5kZWQgIT09IHVuZGVmaW5lZDtcblxuICBjb25zdCBoYW5kbGVPbkNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgKGU6IFJlYWN0Lk1vdXNlRXZlbnQpID0+IHtcbiAgICAgIGlmIChvbkNsaWNrKSB7XG4gICAgICAgIG9uQ2xpY2soZSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25DbGlja11cbiAgKTtcblxuICBjb25zdCBidXR0b25SZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuXG4gIHVzZUtleWJvYXJkKFxuICAgIHtcbiAgICAgIFwiU3BhY2UgRW50ZXJcIjogb25TcGFjZUVudGVyUHJlc3MsXG4gICAgfSxcbiAgICBidXR0b25SZWYsXG4gICAgdGFiSW5kZXggPT09IDAgJiYgKGlzQ2xpY2thYmxlIHx8ICEhY2hlY2tib3hQcm9wcyksXG4gICAgdHJ1ZVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPFN0eWxlZEVudGl0eUl0ZW1cbiAgICAgIHJvbGU9XCJ0cmVlaXRlbVwiXG4gICAgICBhcmlhLWV4cGFuZGVkPXtoYXNFeHBhbmRhYmxlSWNvbiA/IGlzRXhwYW5kZWQgOiB1bmRlZmluZWR9XG4gICAgICBhcmlhLWNoZWNrZWQ9e2NoZWNrYm94UHJvcHM/LmNoZWNrZWR9XG4gICAgICBhcmlhLWxhYmVsPXthcmlhTGFiZWx9XG4gICAgICBhcmlhLWxldmVsPXthcmlhTGV2ZWx9XG4gICAgPlxuICAgICAgPFN0eWxlZEVudGl0eVRyZWVJdGVtQ29udGFpbmVyXG4gICAgICAgIGRhdGEtbGlzdC1pdGVtPXtkYXRhTGlzdEl0ZW19XG4gICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgIHJlZj17YnV0dG9uUmVmfVxuICAgICAgICBkYXRhLWlkPVwibGlzdC1pdGVtXCJcbiAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICByb2xlPVwicHJlc2VudGF0aW9uXCJcbiAgICAgICAgaXNBY3RpdmU9e2lzQWN0aXZlfVxuICAgICAgICBoYXNFeHBhbmRhYmxlSWNvbj17aGFzRXhwYW5kYWJsZUljb259XG4gICAgICAgIGxTcGFjZVN0ZXA9e2xTcGFjZVN0ZXB9XG4gICAgICAgIGlzRGlzYWJsZWQ9e2lzRGlzYWJsZWR9XG4gICAgICAgIG9uQ2xpY2s9e2hhbmRsZU9uQ2xpY2t9XG4gICAgICAgIGlzQ2xpY2thYmxlPXtpc0NsaWNrYWJsZX1cbiAgICAgID5cbiAgICAgICAge2hhc0V4cGFuZGFibGVJY29uICYmIChcbiAgICAgICAgICA8RW50aXR5VHJlZUl0ZW1FeHBhbmRCdXR0b25cbiAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgICBpc0Rpc2FibGVkPXtpc0Rpc2FibGVkRXhwYW5kIHx8IGlzRGlzYWJsZWR9XG4gICAgICAgICAgICBpc0V4cGFuZGVkPXtpc0V4cGFuZGVkfVxuICAgICAgICAgICAgb25DbGljaz17b25FeHBhbmRDbGlja31cbiAgICAgICAgICAgIGFyaWFMYWJlbEV4cGFuZD17YXJpYUxhYmVsRXhwYW5kfVxuICAgICAgICAgICAgYXJpYUxhYmVsQ29sbGFwc2U9e2FyaWFMYWJlbENvbGxhcHNlfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIDxTdHlsZWRFbnRpdHlUcmVlSXRlbVdyYXBwZXJcbiAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgIGhpZGVCb3JkZXI9e2hpZGVCb3JkZXIgfHwgc2l6ZSA9PT0gXCJ4c1wifVxuICAgICAgICA+XG4gICAgICAgICAgPEVudGl0eUl0ZW1Cb2R5XG4gICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgICAgICAgZGVzY3JpcHRpb249e2Rlc2NyaXB0aW9ufVxuICAgICAgICAgICAgcmVuZGVyTGFiZWw9e3JlbmRlckxhYmVsfVxuICAgICAgICAgICAgcmVuZGVyTGVmdD17cmVuZGVyTGVmdH1cbiAgICAgICAgICAgIHJlbmRlclJpZ2h0PXtyZW5kZXJSaWdodH1cbiAgICAgICAgICAgIGNoZWNrYm94UHJvcHM9e2NoZWNrYm94UHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9TdHlsZWRFbnRpdHlUcmVlSXRlbVdyYXBwZXI+XG4gICAgICA8L1N0eWxlZEVudGl0eVRyZWVJdGVtQ29udGFpbmVyPlxuICAgICAge2lzRXhwYW5kZWQgJiYgY2hpbGRyZW59XG4gICAgPC9TdHlsZWRFbnRpdHlJdGVtPlxuICApO1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrQnNDIn0= */"),EntityTreeItem=({checkboxProps,children,description,hideBorder,isActive,isClickable,isDisabled,isDisabledExpand,isExpanded,lSpaceStep,onClick,onExpandClick,onSpaceEnterPress,renderLabel,renderLeft,renderRight,size="m",tabIndex,ariaLabelExpand,ariaLabelCollapse,"aria-level":ariaLevel,"aria-label":ariaLabel,"data-list-item":dataListItem})=>{let hasExpandableIcon=void 0!==isExpanded,handleOnClick=(0,_react.useCallback)(e=>{onClick&&onClick(e)},[onClick]),buttonRef=(0,_react.useRef)(null);return(0,_useKeyboard.useKeyboard)({"Space Enter":onSpaceEnterPress},buttonRef,0===tabIndex&&(isClickable||!!checkboxProps),!0),_react.default.createElement(_styledcomponents.StyledEntityItem,{role:"treeitem","aria-expanded":hasExpandableIcon?isExpanded:void 0,"aria-checked":checkboxProps?.checked,"aria-label":ariaLabel,"aria-level":ariaLevel},_react.default.createElement(StyledEntityTreeItemContainer,{"data-list-item":dataListItem,size:size,ref:buttonRef,"data-id":"list-item",tabIndex:tabIndex,role:"presentation",isActive:isActive,hasExpandableIcon:hasExpandableIcon,lSpaceStep:lSpaceStep,isDisabled:isDisabled,onClick:handleOnClick,isClickable:isClickable},hasExpandableIcon&&_react.default.createElement(_EntityTreeItemExpandButton.EntityTreeItemExpandButton,{size:size,tabIndex:-1,isDisabled:isDisabledExpand||isDisabled,isExpanded:isExpanded,onClick:onExpandClick,ariaLabelExpand:ariaLabelExpand,ariaLabelCollapse:ariaLabelCollapse}),_react.default.createElement(StyledEntityTreeItemWrapper,{size:size,hideBorder:hideBorder||"xs"===size},_react.default.createElement(_EntityItemBody.EntityItemBody,{size:size,tabIndex:tabIndex,description:description,renderLabel:renderLabel,renderLeft:renderLeft,renderRight:renderRight,checkboxProps:checkboxProps}))),isExpanded&&children)};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"EntityTreeItem",{enumerable:!0,get:function(){return EntityTreeItem}});const _interop_require_default=require("@swc/helpers/_/_interop_require_default"),_react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_styled=/*#__PURE__*/_interop_require_default._(require("@emotion/styled")),_mediaQueries=require("../../shared/mediaQueries"),_EntityTreeItemExpandButton=require("./EntityTreeItemExpandButton"),_useKeyboard=require("../../shared/useKeyboard"),_mixins=require("../../shared/mixins"),_EntityItemBody=require("../EntityList/EntityItemBody"),_styledcomponents=require("../EntityList/styled-components"),isSelfEvent=e=>e.target===e.currentTarget,StyledEntityTreeItemWrapper=(0,_styled.default)(_styledcomponents.StyledEntityListItemWrapper,{target:"e18sww000",label:"StyledEntityTreeItemWrapper"})({paddingLeft:"0 !important"},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvRW50aXR5VHJlZS9FbnRpdHlUcmVlSXRlbS50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL0VudGl0eVRyZWUvRW50aXR5VHJlZUl0ZW0udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VDYWxsYmFjaywgdXNlSW1wZXJhdGl2ZUhhbmRsZSwgdXNlUmVmIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyBFbnRpdHlUcmVlSXRlbUV4cGFuZEJ1dHRvbiB9IGZyb20gXCIuL0VudGl0eVRyZWVJdGVtRXhwYW5kQnV0dG9uXCI7XG5pbXBvcnQgeyB1c2VLZXlib2FyZCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlS2V5Ym9hcmRcIjtcbmltcG9ydCB7IGdldEZvY3VzU3R5bGVzIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9taXhpbnNcIjtcbmltcG9ydCB7IEVudGl0eUl0ZW1Cb2R5IH0gZnJvbSBcIi4uL0VudGl0eUxpc3QvRW50aXR5SXRlbUJvZHlcIjtcbmltcG9ydCB7XG4gIFN0eWxlZEVudGl0eUl0ZW0sXG4gIFN0eWxlZEVudGl0eUxpc3RJdGVtV3JhcHBlcixcbiAgU3R5bGVkRW50aXR5TGlzdEl0ZW1CdXR0b24sXG59IGZyb20gXCIuLi9FbnRpdHlMaXN0L3N0eWxlZC1jb21wb25lbnRzXCI7XG5pbXBvcnQgdHlwZSB7IEVudGl0eUxpc3RJdGVtUHJvcHMgfSBmcm9tIFwiLi4vRW50aXR5TGlzdC90eXBlc1wiO1xuXG5jb25zdCBpc1NlbGZFdmVudCA9IChlOiBSZWFjdC5Gb2N1c0V2ZW50KSA9PiBlLnRhcmdldCA9PT0gZS5jdXJyZW50VGFyZ2V0O1xuXG5jb25zdCBTdHlsZWRFbnRpdHlUcmVlSXRlbVdyYXBwZXIgPSBzdHlsZWQoU3R5bGVkRW50aXR5TGlzdEl0ZW1XcmFwcGVyKSh7XG4gIHBhZGRpbmdMZWZ0OiBcIjAgIWltcG9ydGFudFwiLCAvLyBcImltcG9ydGFudFwiIGlzIG5lZWRlZCB0byBvdmVycmlkZSB0aGUgQG1lZGlhIHF1ZXJ5IG9mIE1RIGZ1bmN0aW9uXG59KTtcblxuY29uc3QgU3R5bGVkRW50aXR5VHJlZUl0ZW1Db250YWluZXIgPSBzdHlsZWQoU3R5bGVkRW50aXR5TGlzdEl0ZW1CdXR0b24pPHtcbiAgaGFzRXhwYW5kYWJsZUljb246IGJvb2xlYW47XG59PigoeyB0aGVtZSwgaGFzRXhwYW5kYWJsZUljb24sIGxTcGFjZVN0ZXAgfSkgPT4ge1xuICBjb25zdCBnZXRTaXplID0gKGJhc2VPZmZzZXQ6IHN0cmluZywgZGVlcGVzdE5vZGVPZmZzZXQ6IHN0cmluZykgPT5cbiAgICBgY2FsYygke2Jhc2VPZmZzZXR9ICogJHtsU3BhY2VTdGVwfSArICR7XG4gICAgICBoYXNFeHBhbmRhYmxlSWNvbiA/IFwiMHB4XCIgOiBkZWVwZXN0Tm9kZU9mZnNldFxuICAgIH0gKyAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzfSlgO1xuXG4gIHJldHVybiB7XG4gICAgLi4uZ2V0Rm9jdXNTdHlsZXMoeyBvZmZzZXQ6IC0yIH0pLFxuICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICBwYWRkaW5nTGVmdDogW1xuICAgICAgICAvLyA0MnB4IGFuZCA1NnB4IGFyZSBFeHBhbmQgYnV0dG9uIHdpZHRoICsgcGFkZGluZ1xuICAgICAgICAvLyBpdCdzIG5lZWRlZCBmb3IgYSBkZWVwZXN0IG5vZGUgd2l0aG91dCBleHBhbmRCdXR0b25cbiAgICAgICAgZ2V0U2l6ZSh0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm0sIFwiNDJweFwiKSxcbiAgICAgICAgZ2V0U2l6ZSh0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhsLCBcIjU2cHhcIiksXG4gICAgICBdLFxuICAgIH0pLFxuICB9O1xufSk7XG5cbmV4cG9ydCBjb25zdCBFbnRpdHlUcmVlSXRlbSA9IFJlYWN0LmZvcndhcmRSZWYoXG4gIChcbiAgICB7XG4gICAgICBjaGVja2JveFByb3BzLFxuICAgICAgY2hpbGRyZW4sXG4gICAgICBkZXNjcmlwdGlvbixcbiAgICAgIGhpZGVCb3JkZXIsXG4gICAgICBpc0FjdGl2ZSxcbiAgICAgIGlzQ2xpY2thYmxlLFxuICAgICAgaXNEaXNhYmxlZCxcbiAgICAgIGlzRGlzYWJsZWRFeHBhbmQsXG4gICAgICBpc0V4cGFuZGVkLFxuICAgICAgbFNwYWNlU3RlcCxcbiAgICAgIG9uQ2xpY2ssXG4gICAgICBvbkV4cGFuZENsaWNrLFxuICAgICAgb25TcGFjZUVudGVyUHJlc3MsXG4gICAgICByZW5kZXJMYWJlbCxcbiAgICAgIHJlbmRlckxlZnQsXG4gICAgICByZW5kZXJSaWdodCxcbiAgICAgIHNpemUgPSBcIm1cIixcbiAgICAgIHRhYkluZGV4LFxuICAgICAgYXJpYUxhYmVsRXhwYW5kLFxuICAgICAgYXJpYUxhYmVsQ29sbGFwc2UsXG4gICAgICBcImFyaWEtbGV2ZWxcIjogYXJpYUxldmVsLFxuICAgICAgXCJhcmlhLWxhYmVsXCI6IGFyaWFMYWJlbCxcbiAgICAgIFwiZGF0YS1saXN0LWl0ZW1cIjogZGF0YUxpc3RJdGVtLFxuICAgICAgb25Qb2ludGVyRW50ZXIsXG4gICAgICBvblBvaW50ZXJMZWF2ZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbktleURvd24sXG4gICAgICBcImFyaWEtZGVzY3JpYmVkYnlcIjogYXJpYURlc2NyaWJlZEJ5LFxuICAgIH06IEVudGl0eUxpc3RJdGVtUHJvcHMsXG4gICAgcmVmOiBSZWFjdC5SZWY8SFRNTERpdkVsZW1lbnQ+XG4gICk6IFJlYWN0LlJlYWN0RWxlbWVudCA9PiB7XG4gICAgY29uc3QgaGFzRXhwYW5kYWJsZUljb24gPSBpc0V4cGFuZGVkICE9PSB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCBoYW5kbGVPbkNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoZTogUmVhY3QuTW91c2VFdmVudCkgPT4ge1xuICAgICAgICBpZiAob25DbGljaykge1xuICAgICAgICAgIG9uQ2xpY2soZSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbb25DbGlja11cbiAgICApO1xuXG4gICAgY29uc3QgYnV0dG9uUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcblxuICAgIHVzZUtleWJvYXJkKFxuICAgICAge1xuICAgICAgICBcIlNwYWNlIEVudGVyXCI6IG9uU3BhY2VFbnRlclByZXNzLFxuICAgICAgfSxcbiAgICAgIGJ1dHRvblJlZixcbiAgICAgIHRhYkluZGV4ID09PSAwICYmIChpc0NsaWNrYWJsZSB8fCAhIWNoZWNrYm94UHJvcHMpLFxuICAgICAgdHJ1ZVxuICAgICk7XG5cbiAgICAvLyBQdWJsaXNoZXMgdGhlIHJvdyAtIG5vdCB0aGUgYHRyZWVpdGVtYCB0aGF0IGFsc28gaG9sZHMgdGhlIG5lc3RlZCBzdWJ0cmVlIC1cbiAgICAvLyBzbyBhbiBvdmVybGF5IHdyYXBwZXIgYW5jaG9ycyB0byB0aGUgcm93IGFsb25lLiBgYnV0dG9uUmVmYCBzdGF5cyBpbnRhY3QgZm9yXG4gICAgLy8gdGhlIGtleWJvYXJkIGhhbmRsaW5nIGFib3ZlLlxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiBidXR0b25SZWYuY3VycmVudCk7XG5cbiAgICAvLyBBbiBvdmVybGF5IG9uIHRoZSByb3cgZGVzY3JpYmVzIHRoZSByb3csIG5vdCB0aGUgZXhwYW5kIGJ1dHRvbiBvciBhIHRyYWlsaW5nXG4gICAgLy8gY29udHJvbCBpbnNpZGUgaXQsIGFuZCBmb2N1cyBldmVudHMgYnViYmxlLlxuICAgIGNvbnN0IGhhbmRsZUZvY3VzID0gKGU6IFJlYWN0LkZvY3VzRXZlbnQpID0+IHtcbiAgICAgIGlmIChpc1NlbGZFdmVudChlKSkgb25Gb2N1cz8uKGUpO1xuICAgIH07XG5cbiAgICBjb25zdCBoYW5kbGVCbHVyID0gKGU6IFJlYWN0LkZvY3VzRXZlbnQpID0+IHtcbiAgICAgIGlmIChpc1NlbGZFdmVudChlKSkgb25CbHVyPy4oZSk7XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICA8U3R5bGVkRW50aXR5SXRlbVxuICAgICAgICByb2xlPVwidHJlZWl0ZW1cIlxuICAgICAgICBhcmlhLWV4cGFuZGVkPXtoYXNFeHBhbmRhYmxlSWNvbiA/IGlzRXhwYW5kZWQgOiB1bmRlZmluZWR9XG4gICAgICAgIGFyaWEtY2hlY2tlZD17Y2hlY2tib3hQcm9wcz8uY2hlY2tlZH1cbiAgICAgICAgYXJpYS1sYWJlbD17YXJpYUxhYmVsfVxuICAgICAgICBhcmlhLWxldmVsPXthcmlhTGV2ZWx9XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRFbnRpdHlUcmVlSXRlbUNvbnRhaW5lclxuICAgICAgICAgIGRhdGEtbGlzdC1pdGVtPXtkYXRhTGlzdEl0ZW19XG4gICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICByZWY9e2J1dHRvblJlZn1cbiAgICAgICAgICBkYXRhLWlkPVwibGlzdC1pdGVtXCJcbiAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgcm9sZT1cInByZXNlbnRhdGlvblwiXG4gICAgICAgICAgaXNBY3RpdmU9e2lzQWN0aXZlfVxuICAgICAgICAgIGhhc0V4cGFuZGFibGVJY29uPXtoYXNFeHBhbmRhYmxlSWNvbn1cbiAgICAgICAgICBsU3BhY2VTdGVwPXtsU3BhY2VTdGVwfVxuICAgICAgICAgIGlzRGlzYWJsZWQ9e2lzRGlzYWJsZWR9XG4gICAgICAgICAgb25DbGljaz17aGFuZGxlT25DbGlja31cbiAgICAgICAgICBpc0NsaWNrYWJsZT17aXNDbGlja2FibGV9XG4gICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17YXJpYURlc2NyaWJlZEJ5fVxuICAgICAgICAgIC8vIEZvcndhcmRlZCBzbyBhbiBvdmVybGF5IHdyYXBwZXIgY2FuIHVzZSB0aGUgd2hvbGUgcm93IGFzIGl0cyB0cmlnZ2VyLlxuICAgICAgICAgIG9uUG9pbnRlckVudGVyPXtvblBvaW50ZXJFbnRlcn1cbiAgICAgICAgICBvblBvaW50ZXJMZWF2ZT17b25Qb2ludGVyTGVhdmV9XG4gICAgICAgICAgb25Gb2N1cz17aGFuZGxlRm9jdXN9XG4gICAgICAgICAgb25CbHVyPXtoYW5kbGVCbHVyfVxuICAgICAgICAgIG9uS2V5RG93bj17b25LZXlEb3dufVxuICAgICAgICA+XG4gICAgICAgICAge2hhc0V4cGFuZGFibGVJY29uICYmIChcbiAgICAgICAgICAgIDxFbnRpdHlUcmVlSXRlbUV4cGFuZEJ1dHRvblxuICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgICAgIGlzRGlzYWJsZWQ9e2lzRGlzYWJsZWRFeHBhbmQgfHwgaXNEaXNhYmxlZH1cbiAgICAgICAgICAgICAgaXNFeHBhbmRlZD17aXNFeHBhbmRlZH1cbiAgICAgICAgICAgICAgb25DbGljaz17b25FeHBhbmRDbGlja31cbiAgICAgICAgICAgICAgYXJpYUxhYmVsRXhwYW5kPXthcmlhTGFiZWxFeHBhbmR9XG4gICAgICAgICAgICAgIGFyaWFMYWJlbENvbGxhcHNlPXthcmlhTGFiZWxDb2xsYXBzZX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgICA8U3R5bGVkRW50aXR5VHJlZUl0ZW1XcmFwcGVyXG4gICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgaGlkZUJvcmRlcj17aGlkZUJvcmRlciB8fCBzaXplID09PSBcInhzXCJ9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPEVudGl0eUl0ZW1Cb2R5XG4gICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgIHRhYkluZGV4PXt0YWJJbmRleH1cbiAgICAgICAgICAgICAgZGVzY3JpcHRpb249e2Rlc2NyaXB0aW9ufVxuICAgICAgICAgICAgICByZW5kZXJMYWJlbD17cmVuZGVyTGFiZWx9XG4gICAgICAgICAgICAgIHJlbmRlckxlZnQ9e3JlbmRlckxlZnR9XG4gICAgICAgICAgICAgIHJlbmRlclJpZ2h0PXtyZW5kZXJSaWdodH1cbiAgICAgICAgICAgICAgY2hlY2tib3hQcm9wcz17Y2hlY2tib3hQcm9wc31cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9TdHlsZWRFbnRpdHlUcmVlSXRlbVdyYXBwZXI+XG4gICAgICAgIDwvU3R5bGVkRW50aXR5VHJlZUl0ZW1Db250YWluZXI+XG4gICAgICAgIHtpc0V4cGFuZGVkICYmIGNoaWxkcmVufVxuICAgICAgPC9TdHlsZWRFbnRpdHlJdGVtPlxuICAgICk7XG4gIH1cbik7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0JvQyJ9 */"),StyledEntityTreeItemContainer=(0,_styled.default)(_styledcomponents.StyledEntityListItemButton,{target:"e18sww001",label:"StyledEntityTreeItemContainer"})(({theme,hasExpandableIcon,lSpaceStep})=>{let getSize=(baseOffset,deepestNodeOffset)=>`calc(${baseOffset} * ${lSpaceStep} + ${hasExpandableIcon?"0px":deepestNodeOffset} + ${theme.variables.size.spacing.xxs})`;return{...(0,_mixins.getFocusStyles)({offset:-2}),...(0,_mediaQueries.useResponsiveValue)({paddingLeft:[getSize(theme.variables.size.spacing.m,"42px"),getSize(theme.variables.size.spacing.xl,"56px")]})}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvRW50aXR5VHJlZS9FbnRpdHlUcmVlSXRlbS50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL0VudGl0eVRyZWUvRW50aXR5VHJlZUl0ZW0udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VDYWxsYmFjaywgdXNlSW1wZXJhdGl2ZUhhbmRsZSwgdXNlUmVmIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IHVzZVJlc3BvbnNpdmVWYWx1ZSB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbWVkaWFRdWVyaWVzXCI7XG5pbXBvcnQgeyBFbnRpdHlUcmVlSXRlbUV4cGFuZEJ1dHRvbiB9IGZyb20gXCIuL0VudGl0eVRyZWVJdGVtRXhwYW5kQnV0dG9uXCI7XG5pbXBvcnQgeyB1c2VLZXlib2FyZCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlS2V5Ym9hcmRcIjtcbmltcG9ydCB7IGdldEZvY3VzU3R5bGVzIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9taXhpbnNcIjtcbmltcG9ydCB7IEVudGl0eUl0ZW1Cb2R5IH0gZnJvbSBcIi4uL0VudGl0eUxpc3QvRW50aXR5SXRlbUJvZHlcIjtcbmltcG9ydCB7XG4gIFN0eWxlZEVudGl0eUl0ZW0sXG4gIFN0eWxlZEVudGl0eUxpc3RJdGVtV3JhcHBlcixcbiAgU3R5bGVkRW50aXR5TGlzdEl0ZW1CdXR0b24sXG59IGZyb20gXCIuLi9FbnRpdHlMaXN0L3N0eWxlZC1jb21wb25lbnRzXCI7XG5pbXBvcnQgdHlwZSB7IEVudGl0eUxpc3RJdGVtUHJvcHMgfSBmcm9tIFwiLi4vRW50aXR5TGlzdC90eXBlc1wiO1xuXG5jb25zdCBpc1NlbGZFdmVudCA9IChlOiBSZWFjdC5Gb2N1c0V2ZW50KSA9PiBlLnRhcmdldCA9PT0gZS5jdXJyZW50VGFyZ2V0O1xuXG5jb25zdCBTdHlsZWRFbnRpdHlUcmVlSXRlbVdyYXBwZXIgPSBzdHlsZWQoU3R5bGVkRW50aXR5TGlzdEl0ZW1XcmFwcGVyKSh7XG4gIHBhZGRpbmdMZWZ0OiBcIjAgIWltcG9ydGFudFwiLCAvLyBcImltcG9ydGFudFwiIGlzIG5lZWRlZCB0byBvdmVycmlkZSB0aGUgQG1lZGlhIHF1ZXJ5IG9mIE1RIGZ1bmN0aW9uXG59KTtcblxuY29uc3QgU3R5bGVkRW50aXR5VHJlZUl0ZW1Db250YWluZXIgPSBzdHlsZWQoU3R5bGVkRW50aXR5TGlzdEl0ZW1CdXR0b24pPHtcbiAgaGFzRXhwYW5kYWJsZUljb246IGJvb2xlYW47XG59PigoeyB0aGVtZSwgaGFzRXhwYW5kYWJsZUljb24sIGxTcGFjZVN0ZXAgfSkgPT4ge1xuICBjb25zdCBnZXRTaXplID0gKGJhc2VPZmZzZXQ6IHN0cmluZywgZGVlcGVzdE5vZGVPZmZzZXQ6IHN0cmluZykgPT5cbiAgICBgY2FsYygke2Jhc2VPZmZzZXR9ICogJHtsU3BhY2VTdGVwfSArICR7XG4gICAgICBoYXNFeHBhbmRhYmxlSWNvbiA/IFwiMHB4XCIgOiBkZWVwZXN0Tm9kZU9mZnNldFxuICAgIH0gKyAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzfSlgO1xuXG4gIHJldHVybiB7XG4gICAgLi4uZ2V0Rm9jdXNTdHlsZXMoeyBvZmZzZXQ6IC0yIH0pLFxuICAgIC4uLnVzZVJlc3BvbnNpdmVWYWx1ZSh7XG4gICAgICBwYWRkaW5nTGVmdDogW1xuICAgICAgICAvLyA0MnB4IGFuZCA1NnB4IGFyZSBFeHBhbmQgYnV0dG9uIHdpZHRoICsgcGFkZGluZ1xuICAgICAgICAvLyBpdCdzIG5lZWRlZCBmb3IgYSBkZWVwZXN0IG5vZGUgd2l0aG91dCBleHBhbmRCdXR0b25cbiAgICAgICAgZ2V0U2l6ZSh0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLm0sIFwiNDJweFwiKSxcbiAgICAgICAgZ2V0U2l6ZSh0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhsLCBcIjU2cHhcIiksXG4gICAgICBdLFxuICAgIH0pLFxuICB9O1xufSk7XG5cbmV4cG9ydCBjb25zdCBFbnRpdHlUcmVlSXRlbSA9IFJlYWN0LmZvcndhcmRSZWYoXG4gIChcbiAgICB7XG4gICAgICBjaGVja2JveFByb3BzLFxuICAgICAgY2hpbGRyZW4sXG4gICAgICBkZXNjcmlwdGlvbixcbiAgICAgIGhpZGVCb3JkZXIsXG4gICAgICBpc0FjdGl2ZSxcbiAgICAgIGlzQ2xpY2thYmxlLFxuICAgICAgaXNEaXNhYmxlZCxcbiAgICAgIGlzRGlzYWJsZWRFeHBhbmQsXG4gICAgICBpc0V4cGFuZGVkLFxuICAgICAgbFNwYWNlU3RlcCxcbiAgICAgIG9uQ2xpY2ssXG4gICAgICBvbkV4cGFuZENsaWNrLFxuICAgICAgb25TcGFjZUVudGVyUHJlc3MsXG4gICAgICByZW5kZXJMYWJlbCxcbiAgICAgIHJlbmRlckxlZnQsXG4gICAgICByZW5kZXJSaWdodCxcbiAgICAgIHNpemUgPSBcIm1cIixcbiAgICAgIHRhYkluZGV4LFxuICAgICAgYXJpYUxhYmVsRXhwYW5kLFxuICAgICAgYXJpYUxhYmVsQ29sbGFwc2UsXG4gICAgICBcImFyaWEtbGV2ZWxcIjogYXJpYUxldmVsLFxuICAgICAgXCJhcmlhLWxhYmVsXCI6IGFyaWFMYWJlbCxcbiAgICAgIFwiZGF0YS1saXN0LWl0ZW1cIjogZGF0YUxpc3RJdGVtLFxuICAgICAgb25Qb2ludGVyRW50ZXIsXG4gICAgICBvblBvaW50ZXJMZWF2ZSxcbiAgICAgIG9uRm9jdXMsXG4gICAgICBvbkJsdXIsXG4gICAgICBvbktleURvd24sXG4gICAgICBcImFyaWEtZGVzY3JpYmVkYnlcIjogYXJpYURlc2NyaWJlZEJ5LFxuICAgIH06IEVudGl0eUxpc3RJdGVtUHJvcHMsXG4gICAgcmVmOiBSZWFjdC5SZWY8SFRNTERpdkVsZW1lbnQ+XG4gICk6IFJlYWN0LlJlYWN0RWxlbWVudCA9PiB7XG4gICAgY29uc3QgaGFzRXhwYW5kYWJsZUljb24gPSBpc0V4cGFuZGVkICE9PSB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCBoYW5kbGVPbkNsaWNrID0gdXNlQ2FsbGJhY2soXG4gICAgICAoZTogUmVhY3QuTW91c2VFdmVudCkgPT4ge1xuICAgICAgICBpZiAob25DbGljaykge1xuICAgICAgICAgIG9uQ2xpY2soZSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBbb25DbGlja11cbiAgICApO1xuXG4gICAgY29uc3QgYnV0dG9uUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcblxuICAgIHVzZUtleWJvYXJkKFxuICAgICAge1xuICAgICAgICBcIlNwYWNlIEVudGVyXCI6IG9uU3BhY2VFbnRlclByZXNzLFxuICAgICAgfSxcbiAgICAgIGJ1dHRvblJlZixcbiAgICAgIHRhYkluZGV4ID09PSAwICYmIChpc0NsaWNrYWJsZSB8fCAhIWNoZWNrYm94UHJvcHMpLFxuICAgICAgdHJ1ZVxuICAgICk7XG5cbiAgICAvLyBQdWJsaXNoZXMgdGhlIHJvdyAtIG5vdCB0aGUgYHRyZWVpdGVtYCB0aGF0IGFsc28gaG9sZHMgdGhlIG5lc3RlZCBzdWJ0cmVlIC1cbiAgICAvLyBzbyBhbiBvdmVybGF5IHdyYXBwZXIgYW5jaG9ycyB0byB0aGUgcm93IGFsb25lLiBgYnV0dG9uUmVmYCBzdGF5cyBpbnRhY3QgZm9yXG4gICAgLy8gdGhlIGtleWJvYXJkIGhhbmRsaW5nIGFib3ZlLlxuICAgIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiBidXR0b25SZWYuY3VycmVudCk7XG5cbiAgICAvLyBBbiBvdmVybGF5IG9uIHRoZSByb3cgZGVzY3JpYmVzIHRoZSByb3csIG5vdCB0aGUgZXhwYW5kIGJ1dHRvbiBvciBhIHRyYWlsaW5nXG4gICAgLy8gY29udHJvbCBpbnNpZGUgaXQsIGFuZCBmb2N1cyBldmVudHMgYnViYmxlLlxuICAgIGNvbnN0IGhhbmRsZUZvY3VzID0gKGU6IFJlYWN0LkZvY3VzRXZlbnQpID0+IHtcbiAgICAgIGlmIChpc1NlbGZFdmVudChlKSkgb25Gb2N1cz8uKGUpO1xuICAgIH07XG5cbiAgICBjb25zdCBoYW5kbGVCbHVyID0gKGU6IFJlYWN0LkZvY3VzRXZlbnQpID0+IHtcbiAgICAgIGlmIChpc1NlbGZFdmVudChlKSkgb25CbHVyPy4oZSk7XG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICA8U3R5bGVkRW50aXR5SXRlbVxuICAgICAgICByb2xlPVwidHJlZWl0ZW1cIlxuICAgICAgICBhcmlhLWV4cGFuZGVkPXtoYXNFeHBhbmRhYmxlSWNvbiA/IGlzRXhwYW5kZWQgOiB1bmRlZmluZWR9XG4gICAgICAgIGFyaWEtY2hlY2tlZD17Y2hlY2tib3hQcm9wcz8uY2hlY2tlZH1cbiAgICAgICAgYXJpYS1sYWJlbD17YXJpYUxhYmVsfVxuICAgICAgICBhcmlhLWxldmVsPXthcmlhTGV2ZWx9XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRFbnRpdHlUcmVlSXRlbUNvbnRhaW5lclxuICAgICAgICAgIGRhdGEtbGlzdC1pdGVtPXtkYXRhTGlzdEl0ZW19XG4gICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICByZWY9e2J1dHRvblJlZn1cbiAgICAgICAgICBkYXRhLWlkPVwibGlzdC1pdGVtXCJcbiAgICAgICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICAgICAgcm9sZT1cInByZXNlbnRhdGlvblwiXG4gICAgICAgICAgaXNBY3RpdmU9e2lzQWN0aXZlfVxuICAgICAgICAgIGhhc0V4cGFuZGFibGVJY29uPXtoYXNFeHBhbmRhYmxlSWNvbn1cbiAgICAgICAgICBsU3BhY2VTdGVwPXtsU3BhY2VTdGVwfVxuICAgICAgICAgIGlzRGlzYWJsZWQ9e2lzRGlzYWJsZWR9XG4gICAgICAgICAgb25DbGljaz17aGFuZGxlT25DbGlja31cbiAgICAgICAgICBpc0NsaWNrYWJsZT17aXNDbGlja2FibGV9XG4gICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17YXJpYURlc2NyaWJlZEJ5fVxuICAgICAgICAgIC8vIEZvcndhcmRlZCBzbyBhbiBvdmVybGF5IHdyYXBwZXIgY2FuIHVzZSB0aGUgd2hvbGUgcm93IGFzIGl0cyB0cmlnZ2VyLlxuICAgICAgICAgIG9uUG9pbnRlckVudGVyPXtvblBvaW50ZXJFbnRlcn1cbiAgICAgICAgICBvblBvaW50ZXJMZWF2ZT17b25Qb2ludGVyTGVhdmV9XG4gICAgICAgICAgb25Gb2N1cz17aGFuZGxlRm9jdXN9XG4gICAgICAgICAgb25CbHVyPXtoYW5kbGVCbHVyfVxuICAgICAgICAgIG9uS2V5RG93bj17b25LZXlEb3dufVxuICAgICAgICA+XG4gICAgICAgICAge2hhc0V4cGFuZGFibGVJY29uICYmIChcbiAgICAgICAgICAgIDxFbnRpdHlUcmVlSXRlbUV4cGFuZEJ1dHRvblxuICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgICAgIGlzRGlzYWJsZWQ9e2lzRGlzYWJsZWRFeHBhbmQgfHwgaXNEaXNhYmxlZH1cbiAgICAgICAgICAgICAgaXNFeHBhbmRlZD17aXNFeHBhbmRlZH1cbiAgICAgICAgICAgICAgb25DbGljaz17b25FeHBhbmRDbGlja31cbiAgICAgICAgICAgICAgYXJpYUxhYmVsRXhwYW5kPXthcmlhTGFiZWxFeHBhbmR9XG4gICAgICAgICAgICAgIGFyaWFMYWJlbENvbGxhcHNlPXthcmlhTGFiZWxDb2xsYXBzZX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgICA8U3R5bGVkRW50aXR5VHJlZUl0ZW1XcmFwcGVyXG4gICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgaGlkZUJvcmRlcj17aGlkZUJvcmRlciB8fCBzaXplID09PSBcInhzXCJ9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPEVudGl0eUl0ZW1Cb2R5XG4gICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgIHRhYkluZGV4PXt0YWJJbmRleH1cbiAgICAgICAgICAgICAgZGVzY3JpcHRpb249e2Rlc2NyaXB0aW9ufVxuICAgICAgICAgICAgICByZW5kZXJMYWJlbD17cmVuZGVyTGFiZWx9XG4gICAgICAgICAgICAgIHJlbmRlckxlZnQ9e3JlbmRlckxlZnR9XG4gICAgICAgICAgICAgIHJlbmRlclJpZ2h0PXtyZW5kZXJSaWdodH1cbiAgICAgICAgICAgICAgY2hlY2tib3hQcm9wcz17Y2hlY2tib3hQcm9wc31cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9TdHlsZWRFbnRpdHlUcmVlSXRlbVdyYXBwZXI+XG4gICAgICAgIDwvU3R5bGVkRW50aXR5VHJlZUl0ZW1Db250YWluZXI+XG4gICAgICAgIHtpc0V4cGFuZGVkICYmIGNoaWxkcmVufVxuICAgICAgPC9TdHlsZWRFbnRpdHlJdGVtPlxuICAgICk7XG4gIH1cbik7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0JzQyJ9 */"),EntityTreeItem=_react.default.forwardRef(({checkboxProps,children,description,hideBorder,isActive,isClickable,isDisabled,isDisabledExpand,isExpanded,lSpaceStep,onClick,onExpandClick,onSpaceEnterPress,renderLabel,renderLeft,renderRight,size="m",tabIndex,ariaLabelExpand,ariaLabelCollapse,"aria-level":ariaLevel,"aria-label":ariaLabel,"data-list-item":dataListItem,onPointerEnter,onPointerLeave,onFocus,onBlur,onKeyDown,"aria-describedby":ariaDescribedBy},ref)=>{let hasExpandableIcon=void 0!==isExpanded,handleOnClick=(0,_react.useCallback)(e=>{onClick&&onClick(e)},[onClick]),buttonRef=(0,_react.useRef)(null);return(0,_useKeyboard.useKeyboard)({"Space Enter":onSpaceEnterPress},buttonRef,0===tabIndex&&(isClickable||!!checkboxProps),!0),(0,_react.useImperativeHandle)(ref,()=>buttonRef.current),_react.default.createElement(_styledcomponents.StyledEntityItem,{role:"treeitem","aria-expanded":hasExpandableIcon?isExpanded:void 0,"aria-checked":checkboxProps?.checked,"aria-label":ariaLabel,"aria-level":ariaLevel},_react.default.createElement(StyledEntityTreeItemContainer,{"data-list-item":dataListItem,size:size,ref:buttonRef,"data-id":"list-item",tabIndex:tabIndex,role:"presentation",isActive:isActive,hasExpandableIcon:hasExpandableIcon,lSpaceStep:lSpaceStep,isDisabled:isDisabled,onClick:handleOnClick,isClickable:isClickable,"aria-describedby":ariaDescribedBy,onPointerEnter:onPointerEnter,onPointerLeave:onPointerLeave,onFocus:e=>{isSelfEvent(e)&&onFocus?.(e)},onBlur:e=>{isSelfEvent(e)&&onBlur?.(e)},onKeyDown:onKeyDown},hasExpandableIcon&&_react.default.createElement(_EntityTreeItemExpandButton.EntityTreeItemExpandButton,{size:size,tabIndex:-1,isDisabled:isDisabledExpand||isDisabled,isExpanded:isExpanded,onClick:onExpandClick,ariaLabelExpand:ariaLabelExpand,ariaLabelCollapse:ariaLabelCollapse}),_react.default.createElement(StyledEntityTreeItemWrapper,{size:size,hideBorder:hideBorder||"xs"===size},_react.default.createElement(_EntityItemBody.EntityItemBody,{size:size,tabIndex:tabIndex,description:description,renderLabel:renderLabel,renderLeft:renderLeft,renderRight:renderRight,checkboxProps:checkboxProps}))),isExpanded&&children)});
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import type { RefObject } from "react";
|
|
2
2
|
import React from "react";
|
|
3
3
|
import type { CommonSelectProps, SelectOption } from "./Combobox";
|
|
4
|
+
/**
|
|
5
|
+
* Matches any element inside the options list. The list renders in a portal,
|
|
6
|
+
* outside its consumer's DOM tree, so consumers with no ref to it (e.g. a
|
|
7
|
+
* popover deciding whether an "outside" click really is one) must match on
|
|
8
|
+
* these roles instead.
|
|
9
|
+
*/
|
|
10
|
+
export declare const OPTIONS_LIST_SELECTOR = "[role=\"listbox\"], [role=\"option\"]";
|
|
4
11
|
type OptionsListProps = {
|
|
5
12
|
isOpen: boolean;
|
|
6
13
|
isMultiSelect?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var target=exports,all={get OptionsList(){return OptionsList},get getOptionId(){return getOptionId},get getOptionsListId(){return getOptionsListId}};for(var name in all)Object.defineProperty(target,name,{enumerable:!0,get:Object.getOwnPropertyDescriptor(all,name).get});const _interop_require_default=require("@swc/helpers/_/_interop_require_default"),_react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_styled=/*#__PURE__*/_interop_require_default._(require("@emotion/styled")),_useKeyboard=require("../../../shared/useKeyboard"),_usePopupMenu=require("../../../shared/popupMenu/usePopupMenu"),_VirtualScrollList=require("../../VirtualScrollList/VirtualScrollList"),_Text=require("../../Typography/Text/Text"),_Box=require("../../Box/Box"),_Inline=require("../../Inline/Inline"),_Icon=require("../../Icon/Icon"),_StyledSelectComponents=require("./StyledSelectComponents"),_constants=require("./constants"),_Stack=require("../../Stack/Stack"),_Checkbox=require("../Checkbox/Checkbox"),_Portal=require("../../Portal/Portal"),_ScreenReaderText=require("../../Utilities/ScreenReaderText/ScreenReaderText");function getOptionId(selectName,optionValue){return`${selectName}Option${optionValue}`}function getOptionsListId(selectName){return`${selectName}OptionsList`}function scrollToItem(list,itemIndex){list[itemIndex]?.scrollIntoView?.({behavior:"smooth",block:"nearest"})}const CustomOption=(0,_styled.default)(_StyledSelectComponents.StyledOption,{target:"e11kl4dy0",label:"CustomOption"})(({theme})=>({paddingTop:0,paddingBottom:0,"& > div":{paddingTop:theme.variables.size.spacing.xs,paddingBottom:theme.variables.size.spacing.xs},"& > div *":{marginTop:0}}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvRm9ybS9Db21ib2JveC9PcHRpb25zTGlzdC50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL0Zvcm0vQ29tYm9ib3gvT3B0aW9uc0xpc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUmVmT2JqZWN0IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlUmVmLCB1c2VFZmZlY3QsIHVzZU1lbW8gfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsgdXNlS2V5Ym9hcmQgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZUtleWJvYXJkXCI7XG5pbXBvcnQgdHlwZSB7IENvbW1vblNlbGVjdFByb3BzLCBTZWxlY3RPcHRpb24gfSBmcm9tIFwiLi9Db21ib2JveFwiO1xuaW1wb3J0IHsgdXNlUG9wdXBNZW51IH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9wb3B1cE1lbnUvdXNlUG9wdXBNZW51XCI7XG5pbXBvcnQgeyBWaXJ0dWFsU2Nyb2xsTGlzdCB9IGZyb20gXCIuLi8uLi9WaXJ0dWFsU2Nyb2xsTGlzdC9WaXJ0dWFsU2Nyb2xsTGlzdFwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgQm94IH0gZnJvbSBcIi4uLy4uL0JveC9Cb3hcIjtcbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgeyBJY29uIH0gZnJvbSBcIi4uLy4uL0ljb24vSWNvblwiO1xuaW1wb3J0IHsgU3R5bGVkRHJvcGRvd24sIFN0eWxlZE9wdGlvbiB9IGZyb20gXCIuL1N0eWxlZFNlbGVjdENvbXBvbmVudHNcIjtcbmltcG9ydCB7IGRyb3Bkb3duQ29udGFpbmVyU3R5bGUgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBDaGVja2JveFJhdyB9IGZyb20gXCIuLi9DaGVja2JveC9DaGVja2JveFwiO1xuaW1wb3J0IHsgUG9ydGFsIH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IFNjcmVlblJlYWRlclRleHQgfSBmcm9tIFwiLi4vLi4vVXRpbGl0aWVzL1NjcmVlblJlYWRlclRleHQvU2NyZWVuUmVhZGVyVGV4dFwiO1xuXG50eXBlIE9wdGlvbnNMaXN0UHJvcHMgPSB7XG4gIGlzT3BlbjogYm9vbGVhbjtcbiAgaXNNdWx0aVNlbGVjdD86IGJvb2xlYW47XG4gIHRyaWdnZXJSZWY6IFJlZk9iamVjdDxIVE1MSW5wdXRFbGVtZW50PjtcbiAgdHJpZ2dlcldyYXBwZXJSZWY/OiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQ+O1xuICBvbkNsb3NlRHJvcGRvd246IChub1NlbGVjdD86IGJvb2xlYW4pID0+IHZvaWQ7XG4gIHNlbGVjdGVkSW5kZXg6IG51bWJlcjtcbiAgb25TZWxlY3RlZEluZGV4Q2hhbmdlOiAoaW5kZXg6IG51bWJlcikgPT4gdm9pZDtcbiAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0OiAoc2VsZWN0ZWRPcHRpb246IFNlbGVjdE9wdGlvbikgPT4gdm9pZDtcbiAgaXNWaXJ0dWFsaXplZD86IGJvb2xlYW47XG59ICYgUGFydGlhbDxDb21tb25TZWxlY3RQcm9wcz47XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHRpb25JZChzZWxlY3ROYW1lOiBzdHJpbmcsIG9wdGlvblZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYCR7c2VsZWN0TmFtZX1PcHRpb24ke29wdGlvblZhbHVlfWA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHRpb25zTGlzdElkKHNlbGVjdE5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBgJHtzZWxlY3ROYW1lfU9wdGlvbnNMaXN0YDtcbn1cblxuZnVuY3Rpb24gc2Nyb2xsVG9JdGVtKGxpc3Q6IEhUTUxEaXZFbGVtZW50W10sIGl0ZW1JbmRleDogbnVtYmVyKSB7XG4gIGxpc3RbaXRlbUluZGV4XT8uc2Nyb2xsSW50b1ZpZXc/Lih7XG4gICAgYmVoYXZpb3I6IFwic21vb3RoXCIsXG4gICAgYmxvY2s6IFwibmVhcmVzdFwiLFxuICB9KTtcbn1cblxuY29uc3QgQ3VzdG9tT3B0aW9uID0gc3R5bGVkKFN0eWxlZE9wdGlvbikoKHsgdGhlbWUgfSkgPT4gKHtcbiAgLy8gdGhpcyBpcyBuZWVkZWQgZm9yIHVzaW5nIHBhZGRpbmcgb2YgY2hlY2tib3hlcyBpbiBvcmRlciB0byB1c2UgaXRzIGhvdmVyIHN0YXRlXG4gIHBhZGRpbmdUb3A6IDAsXG4gIHBhZGRpbmdCb3R0b206IDAsXG4gIFwiJiA+IGRpdlwiOiB7XG4gICAgcGFkZGluZ1RvcDogdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54cyxcbiAgICBwYWRkaW5nQm90dG9tOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzLFxuICB9LFxuICBcIiYgPiBkaXYgKlwiOiB7XG4gICAgbWFyZ2luVG9wOiAwLFxuICB9LFxufSkpO1xuXG5jb25zdCBTdHlsZWRMaXN0Q29udGFpbmVyID0gc3R5bGVkLmRpdjxQaWNrPE9wdGlvbnNMaXN0UHJvcHMsIFwibWF4SGVpZ2h0XCI+PihcbiAgKHsgdGhlbWUsIG1heEhlaWdodCB9KSA9PiAoe1xuICAgIG1heEhlaWdodCxcbiAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgIG92ZXJmbG93OiBcImF1dG9cIixcbiAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnh4c30gMGAsXG4gIH0pXG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gT3B0aW9uc0xpc3Qoe1xuICBpc09wZW4sXG4gIGlzTXVsdGlTZWxlY3QgPSBmYWxzZSxcbiAgdmFsdWUsXG4gIGRpc2FibGVkLFxuICBvcHRpb25zLFxuICBwb3J0YWxDb250YWluZXIsXG4gIHRyaWdnZXJSZWYsXG4gIHRyaWdnZXJXcmFwcGVyUmVmLFxuICBtYXhIZWlnaHQsXG4gIGVtcHR5U3RhdGVNZXNzYWdlID0gXCJObyBvcHRpb25zIGF2YWlsYWJsZVwiLFxuICBzZWxlY3RlZEluZGV4LFxuICBvcHRpb25zTGlzdFdpZHRoLFxuICBpc1ZpcnR1YWxpemVkID0gdHJ1ZSxcbiAgbmFtZSxcbiAgb25DbG9zZURyb3Bkb3duLFxuICBvblNlbGVjdGVkSW5kZXhDaGFuZ2UsXG4gIGZvcmNlQ2hhbmdlRmFrZVNlbGVjdCxcbn06IE9wdGlvbnNMaXN0UHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBvcHRpb25zTGlzdFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgbGlzdENvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgbGlzdEl0ZW1zUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCByZWZGb3JQb3NpdGlvbmluZyA9IHRyaWdnZXJXcmFwcGVyUmVmIHx8IHRyaWdnZXJSZWY7XG4gIGNvbnN0IGFjdGl2ZUl0ZW1JbmRleCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIG9wdGlvbnMuZmluZEluZGV4KChvcHRpb24pID0+XG4gICAgICAgIGlzTXVsdGlTZWxlY3QgPyB2YWx1ZS5pbmNsdWRlcyhvcHRpb24udmFsdWUpIDogb3B0aW9uLnZhbHVlID09PSB2YWx1ZVxuICAgICAgKSxcbiAgICBbb3B0aW9ucywgaXNNdWx0aVNlbGVjdCwgdmFsdWVdXG4gICk7XG5cbiAgY29uc3QgeyBtZW51U3R5bGU6IG9wdGlvbnNMaXN0U3R5bGUsIGNhbGN1bGF0ZVN0eWxlIH0gPSB1c2VQb3B1cE1lbnUoe1xuICAgIHRyaWdnZXJSZWY6IHJlZkZvclBvc2l0aW9uaW5nLFxuICAgIG1lbnVSZWY6IG9wdGlvbnNMaXN0UmVmLFxuICAgIGlzT3BlbixcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoXG4gICAgICBpc09wZW4gJiZcbiAgICAgIGxpc3RDb250YWluZXJSZWYuY3VycmVudCAmJlxuICAgICAgIWlzVmlydHVhbGl6ZWQgJiZcbiAgICAgIG9wdGlvbnNMaXN0U3R5bGUudG9wXG4gICAgKSB7XG4gICAgICBjb25zdCBsaXN0RWxtID0gbGlzdENvbnRhaW5lclJlZi5jdXJyZW50O1xuICAgICAgLy8gZGV0ZXJtaW5lIG92ZXJmbG93XG4gICAgICBpZiAobGlzdEVsbS5jbGllbnRIZWlnaHQgPCBsaXN0RWxtLnNjcm9sbEhlaWdodCkge1xuICAgICAgICBsaXN0SXRlbXNSZWYuY3VycmVudCA9IGxpc3RFbG0ucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLWxpc3QtaXRlbV1cIik7XG4gICAgICAgIHNjcm9sbFRvSXRlbShsaXN0SXRlbXNSZWYuY3VycmVudCwgYWN0aXZlSXRlbUluZGV4KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgbGlzdEl0ZW1zUmVmLmN1cnJlbnQgPSBudWxsO1xuICAgIH1cbiAgfSwgW1xuICAgIGlzT3BlbixcbiAgICBpc1ZpcnR1YWxpemVkLFxuICAgIGxpc3RDb250YWluZXJSZWYsXG4gICAgb3B0aW9ucyxcbiAgICBtYXhIZWlnaHQsXG4gICAgb3B0aW9uc0xpc3RTdHlsZSxcbiAgICBhY3RpdmVJdGVtSW5kZXgsXG4gIF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGxpc3RJdGVtc1JlZi5jdXJyZW50KSB7XG4gICAgICBzY3JvbGxUb0l0ZW0obGlzdEl0ZW1zUmVmLmN1cnJlbnQsIHNlbGVjdGVkSW5kZXgpO1xuICAgIH1cbiAgfSwgW2xpc3RJdGVtc1JlZiwgc2VsZWN0ZWRJbmRleF0pO1xuXG4gIHVzZUtleWJvYXJkKFxuICAgIHtcbiAgICAgIEVzY2FwZTogKCkgPT4gb25DbG9zZURyb3Bkb3duKHRydWUpLFxuICAgICAgRW50ZXI6ICgpID0+IHtcbiAgICAgICAgY29uc3QgcHJlc2VsZWN0ZWRPcHRpb24gPSBvcHRpb25zW3NlbGVjdGVkSW5kZXhdO1xuXG4gICAgICAgIGlmICghcHJlc2VsZWN0ZWRPcHRpb24/LmRpc2FibGVkKSB7XG4gICAgICAgICAgaWYgKHByZXNlbGVjdGVkT3B0aW9uKSB7XG4gICAgICAgICAgICBmb3JjZUNoYW5nZUZha2VTZWxlY3QocHJlc2VsZWN0ZWRPcHRpb24pO1xuICAgICAgICAgICAgaWYgKCFpc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICAgIG9uQ2xvc2VEcm9wZG93bih0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKCFpc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICBvbkNsb3NlRHJvcGRvd24oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBBcnJvd1VwOiAoKSA9PiB7XG4gICAgICAgIGxldCBuZXdJbmRleCA9IHNlbGVjdGVkSW5kZXggPT09IC0xID8gYWN0aXZlSXRlbUluZGV4IDogc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgd2hpbGUgKG5ld0luZGV4ID4gMCkge1xuICAgICAgICAgIG5ld0luZGV4IC09IDE7XG4gICAgICAgICAgaWYgKCFvcHRpb25zW25ld0luZGV4XT8uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBPbmx5IHVwZGF0ZSB0aGUgc2VsZWN0aW9uIGlmIHRoZSBuZXcgaXRlbSBpcyBub3QgZGlzYWJsZWRcbiAgICAgICAgaWYgKCFvcHRpb25zW25ld0luZGV4XT8uZGlzYWJsZWQpIHtcbiAgICAgICAgICBvblNlbGVjdGVkSW5kZXhDaGFuZ2UobmV3SW5kZXgpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgQXJyb3dEb3duOiAoKSA9PiB7XG4gICAgICAgIGxldCBuZXdJbmRleCA9IHNlbGVjdGVkSW5kZXggPT09IC0xID8gYWN0aXZlSXRlbUluZGV4IDogc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgd2hpbGUgKG5ld0luZGV4IDwgb3B0aW9ucy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgbmV3SW5kZXggKz0gMTtcbiAgICAgICAgICBpZiAoIW9wdGlvbnNbbmV3SW5kZXhdPy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIE9ubHkgdXBkYXRlIHRoZSBzZWxlY3Rpb24gaWYgdGhlIG5ldyBpdGVtIGlzIG5vdCBkaXNhYmxlZFxuICAgICAgICBpZiAoIW9wdGlvbnNbbmV3SW5kZXhdPy5kaXNhYmxlZCkge1xuICAgICAgICAgIG9uU2VsZWN0ZWRJbmRleENoYW5nZShuZXdJbmRleCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSxcbiAgICB0cmlnZ2VyUmVmLFxuICAgIGlzT3BlbiAmJiAhZGlzYWJsZWRcbiAgKTtcblxuICBjb25zdCByZW5kZXJJdGVtID0gKGluZGV4OiBudW1iZXIpID0+IHtcbiAgICBjb25zdCBvcHRpb246IFNlbGVjdE9wdGlvbiA9IG9wdGlvbnNbaW5kZXhdO1xuICAgIC8vIEdlbmVyYXRlIHVuaXF1ZSBpZCBmb3IgdGhlIG9wdGlvblxuICAgIGNvbnN0IGlkID0gZ2V0T3B0aW9uSWQobmFtZSwgb3B0aW9uLnZhbHVlKTtcblxuICAgIGlmIChpc011bHRpU2VsZWN0KSB7XG4gICAgICBjb25zdCBpc0FjdGl2ZSA9IHZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSk7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxDdXN0b21PcHRpb25cbiAgICAgICAgICByb2xlPVwib3B0aW9uXCJcbiAgICAgICAgICBhcmlhLXNlbGVjdGVkPXtpc0FjdGl2ZX1cbiAgICAgICAgICBhcmlhLWRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgIGtleT17b3B0aW9uLnZhbHVlfVxuICAgICAgICAgIGFjdGl2ZT17aXNBY3RpdmV9XG4gICAgICAgICAgZGlzYWJsZWQ9e29wdGlvbi5kaXNhYmxlZH1cbiAgICAgICAgICBwcmVTZWxlY3RlZD17c2VsZWN0ZWRJbmRleCA9PT0gaW5kZXh9XG4gICAgICAgICAgZGF0YS1saXN0LWl0ZW1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFvcHRpb24uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0KG9wdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgICAvLyBzdG9wIGV2ZW50IHByb3BhZ2F0aW9uIHRvIG5vdCBjbG9zZSBtb2RhbCBvbiBzZWxlY3Rpb24gaWYgc2VsZWN0IGlzIHdpdGhpbiBhIE1vZGFsXG4gICAgICAgICAgb25DbGljaz17KGV2dCkgPT4gZXZ0LnN0b3BQcm9wYWdhdGlvbigpfVxuICAgICAgICA+XG4gICAgICAgICAgPENoZWNrYm94UmF3XG4gICAgICAgICAgICBuYW1lPVwiXCJcbiAgICAgICAgICAgIGRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgICAgICBjaGVja2VkPXtpc0FjdGl2ZX1cbiAgICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAgIGxhYmVsPXtvcHRpb24ubGFiZWx9XG4gICAgICAgICAgICBvbkNoYW5nZT17KCkgPT4gbnVsbH1cbiAgICAgICAgICAgIGxhYmVsSGludD17b3B0aW9uPy5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0N1c3RvbU9wdGlvbj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gZWxzZSByZW5kZXIgc2luZ2xlIHNlbGVjdCBpdGVtXG4gICAgY29uc3QgaXNBY3RpdmUgPSB2YWx1ZSA9PT0gb3B0aW9uLnZhbHVlO1xuICAgIGNvbnN0IG9wdGlvblRleHQgPSAoXG4gICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgIDxUZXh0IGNvbG9yPVwicHJpbWFyeVwiIHNpemU9XCJtXCI+XG4gICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgPC9UZXh0PlxuICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9uICYmIChcbiAgICAgICAgICA8VGV4dCBjb2xvcj1cInRlcnRpYXJ5XCIgc2l6ZT1cInNcIj5cbiAgICAgICAgICAgIHtvcHRpb24uZGVzY3JpcHRpb259XG4gICAgICAgICAgPC9UZXh0PlxuICAgICAgICApfVxuICAgICAgPC9TdGFjaz5cbiAgICApO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRPcHRpb25cbiAgICAgICAgcm9sZT1cIm9wdGlvblwiXG4gICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2lzQWN0aXZlfVxuICAgICAgICBhcmlhLWRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgIGlkPXtpZH1cbiAgICAgICAga2V5PXtvcHRpb24udmFsdWV9XG4gICAgICAgIGFjdGl2ZT17aXNBY3RpdmV9XG4gICAgICAgIGRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgIHByZVNlbGVjdGVkPXtzZWxlY3RlZEluZGV4ID09PSBpbmRleH1cbiAgICAgICAgZGF0YS1saXN0LWl0ZW1cbiAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICBpZiAoIW9wdGlvbi5kaXNhYmxlZCkge1xuICAgICAgICAgICAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0KG9wdGlvbik7XG4gICAgICAgICAgICBvbkNsb3NlRHJvcGRvd24odHJ1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7aXNBY3RpdmUgPyAoXG4gICAgICAgICAgPElubGluZSBub1dyYXAgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiPlxuICAgICAgICAgICAge29wdGlvblRleHR9XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgPEljb24gbmFtZT1cImNoZWNrXCIgc2l6ZT1cInNcIiBjb2xvcj1cImFjY2VudFwiIC8+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICBvcHRpb25UZXh0XG4gICAgICAgICl9XG4gICAgICA8L1N0eWxlZE9wdGlvbj5cbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGxpc3RTdHlsZSA9IHtcbiAgICAuLi5vcHRpb25zTGlzdFN0eWxlLFxuICAgIHdpZHRoOlxuICAgICAgb3B0aW9uc0xpc3RXaWR0aCB8fFxuICAgICAgcmVmRm9yUG9zaXRpb25pbmcuY3VycmVudD8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGgsXG4gIH07XG5cbiAgY29uc3QgbGlzdEVsbSA9IChcbiAgICA8U3R5bGVkRHJvcGRvd25cbiAgICAgIHN0eWxlPXtsaXN0U3R5bGV9XG4gICAgICByZWY9e29wdGlvbnNMaXN0UmVmfVxuICAgICAgLy8gdGhpcyBpcyB0byBwcmV2ZW50IGtub3duIGJ1ZyBvZiBDaHJvbWUgd2hlbiBlbGVtZW50XG4gICAgICAvLyBsb3NlcyBmb2N1cyBvbiBjbGljayBvbiB0aGUgc2Nyb2xsYmFyXG4gICAgICBvbk1vdXNlRG93bj17KGUpID0+IGUucHJldmVudERlZmF1bHQoKX1cbiAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9XCJvcHRpb25zTGlzdFwiXG4gICAgPlxuICAgICAge2lzVmlydHVhbGl6ZWQgPyAoXG4gICAgICAgIDxWaXJ0dWFsU2Nyb2xsTGlzdFxuICAgICAgICAgIGlkPXtnZXRPcHRpb25zTGlzdElkKG5hbWUpfVxuICAgICAgICAgIG1heEhlaWdodD17bWF4SGVpZ2h0fVxuICAgICAgICAgIGl0ZW1IZWlnaHQ9ezM2fVxuICAgICAgICAgIGl0ZW1BbW91bnQ9e29wdGlvbnMubGVuZ3RofVxuICAgICAgICAgIGVtcHR5U3RhdGU9eygpID0+IG51bGx9XG4gICAgICAgICAgY29udGFpbmVyU3R5bGU9e2Ryb3Bkb3duQ29udGFpbmVyU3R5bGV9XG4gICAgICAgICAgaXRlbUluVmlldz17c2VsZWN0ZWRJbmRleH1cbiAgICAgICAgICBpdGVtVGVtcGxhdGU9e3JlbmRlckl0ZW19XG4gICAgICAgICAgb25Db250ZW50SGVpZ2h0Q2hhbmdlPXtjYWxjdWxhdGVTdHlsZX1cbiAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgIC8+XG4gICAgICApIDogKFxuICAgICAgICA8U3R5bGVkTGlzdENvbnRhaW5lclxuICAgICAgICAgIG1heEhlaWdodD17bWF4SGVpZ2h0fVxuICAgICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgICAgICBpZD17Z2V0T3B0aW9uc0xpc3RJZChuYW1lKX1cbiAgICAgICAgICByZWY9e2xpc3RDb250YWluZXJSZWZ9XG4gICAgICAgID5cbiAgICAgICAgICB7b3B0aW9ucy5tYXAoKF9vcHRpb24sIGluZGV4KSA9PiByZW5kZXJJdGVtKGluZGV4KSl9XG4gICAgICAgIDwvU3R5bGVkTGlzdENvbnRhaW5lcj5cbiAgICAgICl9XG4gICAgPC9TdHlsZWREcm9wZG93bj5cbiAgKTtcblxuICBpZiAoIWlzT3Blbikge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgbGlzdFBvcnRhbCA9IG9wdGlvbnMubGVuZ3RoID8gKFxuICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PntsaXN0RWxtfTwvUG9ydGFsPlxuICApIDogbnVsbDtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8U2NyZWVuUmVhZGVyVGV4dCByb2xlPVwic3RhdHVzXCIgYXJpYS1saXZlPVwicG9saXRlXCI+XG4gICAgICAgIHshb3B0aW9ucy5sZW5ndGggPyBlbXB0eVN0YXRlTWVzc2FnZSA6IFwiXCJ9XG4gICAgICA8L1NjcmVlblJlYWRlclRleHQ+XG4gICAgICB7bGlzdFBvcnRhbH1cbiAgICA8Lz5cbiAgKTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2Q3FCIn0= */"),StyledListContainer=(0,_styled.default)("div",{target:"e11kl4dy1",label:"StyledListContainer"})(({theme,maxHeight})=>({maxHeight,boxSizing:"border-box",overflow:"auto",padding:`${theme.variables.size.spacing.xxs} 0`}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvRm9ybS9Db21ib2JveC9PcHRpb25zTGlzdC50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL0Zvcm0vQ29tYm9ib3gvT3B0aW9uc0xpc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUmVmT2JqZWN0IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlUmVmLCB1c2VFZmZlY3QsIHVzZU1lbW8gfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsgdXNlS2V5Ym9hcmQgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZUtleWJvYXJkXCI7XG5pbXBvcnQgdHlwZSB7IENvbW1vblNlbGVjdFByb3BzLCBTZWxlY3RPcHRpb24gfSBmcm9tIFwiLi9Db21ib2JveFwiO1xuaW1wb3J0IHsgdXNlUG9wdXBNZW51IH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9wb3B1cE1lbnUvdXNlUG9wdXBNZW51XCI7XG5pbXBvcnQgeyBWaXJ0dWFsU2Nyb2xsTGlzdCB9IGZyb20gXCIuLi8uLi9WaXJ0dWFsU2Nyb2xsTGlzdC9WaXJ0dWFsU2Nyb2xsTGlzdFwiO1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gXCIuLi8uLi9UeXBvZ3JhcGh5L1RleHQvVGV4dFwiO1xuaW1wb3J0IHsgQm94IH0gZnJvbSBcIi4uLy4uL0JveC9Cb3hcIjtcbmltcG9ydCB7IElubGluZSB9IGZyb20gXCIuLi8uLi9JbmxpbmUvSW5saW5lXCI7XG5pbXBvcnQgeyBJY29uIH0gZnJvbSBcIi4uLy4uL0ljb24vSWNvblwiO1xuaW1wb3J0IHsgU3R5bGVkRHJvcGRvd24sIFN0eWxlZE9wdGlvbiB9IGZyb20gXCIuL1N0eWxlZFNlbGVjdENvbXBvbmVudHNcIjtcbmltcG9ydCB7IGRyb3Bkb3duQ29udGFpbmVyU3R5bGUgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSBcIi4uLy4uL1N0YWNrL1N0YWNrXCI7XG5pbXBvcnQgeyBDaGVja2JveFJhdyB9IGZyb20gXCIuLi9DaGVja2JveC9DaGVja2JveFwiO1xuaW1wb3J0IHsgUG9ydGFsIH0gZnJvbSBcIi4uLy4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB7IFNjcmVlblJlYWRlclRleHQgfSBmcm9tIFwiLi4vLi4vVXRpbGl0aWVzL1NjcmVlblJlYWRlclRleHQvU2NyZWVuUmVhZGVyVGV4dFwiO1xuXG50eXBlIE9wdGlvbnNMaXN0UHJvcHMgPSB7XG4gIGlzT3BlbjogYm9vbGVhbjtcbiAgaXNNdWx0aVNlbGVjdD86IGJvb2xlYW47XG4gIHRyaWdnZXJSZWY6IFJlZk9iamVjdDxIVE1MSW5wdXRFbGVtZW50PjtcbiAgdHJpZ2dlcldyYXBwZXJSZWY/OiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQ+O1xuICBvbkNsb3NlRHJvcGRvd246IChub1NlbGVjdD86IGJvb2xlYW4pID0+IHZvaWQ7XG4gIHNlbGVjdGVkSW5kZXg6IG51bWJlcjtcbiAgb25TZWxlY3RlZEluZGV4Q2hhbmdlOiAoaW5kZXg6IG51bWJlcikgPT4gdm9pZDtcbiAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0OiAoc2VsZWN0ZWRPcHRpb246IFNlbGVjdE9wdGlvbikgPT4gdm9pZDtcbiAgaXNWaXJ0dWFsaXplZD86IGJvb2xlYW47XG59ICYgUGFydGlhbDxDb21tb25TZWxlY3RQcm9wcz47XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHRpb25JZChzZWxlY3ROYW1lOiBzdHJpbmcsIG9wdGlvblZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYCR7c2VsZWN0TmFtZX1PcHRpb24ke29wdGlvblZhbHVlfWA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHRpb25zTGlzdElkKHNlbGVjdE5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBgJHtzZWxlY3ROYW1lfU9wdGlvbnNMaXN0YDtcbn1cblxuZnVuY3Rpb24gc2Nyb2xsVG9JdGVtKGxpc3Q6IEhUTUxEaXZFbGVtZW50W10sIGl0ZW1JbmRleDogbnVtYmVyKSB7XG4gIGxpc3RbaXRlbUluZGV4XT8uc2Nyb2xsSW50b1ZpZXc/Lih7XG4gICAgYmVoYXZpb3I6IFwic21vb3RoXCIsXG4gICAgYmxvY2s6IFwibmVhcmVzdFwiLFxuICB9KTtcbn1cblxuY29uc3QgQ3VzdG9tT3B0aW9uID0gc3R5bGVkKFN0eWxlZE9wdGlvbikoKHsgdGhlbWUgfSkgPT4gKHtcbiAgLy8gdGhpcyBpcyBuZWVkZWQgZm9yIHVzaW5nIHBhZGRpbmcgb2YgY2hlY2tib3hlcyBpbiBvcmRlciB0byB1c2UgaXRzIGhvdmVyIHN0YXRlXG4gIHBhZGRpbmdUb3A6IDAsXG4gIHBhZGRpbmdCb3R0b206IDAsXG4gIFwiJiA+IGRpdlwiOiB7XG4gICAgcGFkZGluZ1RvcDogdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54cyxcbiAgICBwYWRkaW5nQm90dG9tOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzLFxuICB9LFxuICBcIiYgPiBkaXYgKlwiOiB7XG4gICAgbWFyZ2luVG9wOiAwLFxuICB9LFxufSkpO1xuXG5jb25zdCBTdHlsZWRMaXN0Q29udGFpbmVyID0gc3R5bGVkLmRpdjxQaWNrPE9wdGlvbnNMaXN0UHJvcHMsIFwibWF4SGVpZ2h0XCI+PihcbiAgKHsgdGhlbWUsIG1heEhlaWdodCB9KSA9PiAoe1xuICAgIG1heEhlaWdodCxcbiAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgIG92ZXJmbG93OiBcImF1dG9cIixcbiAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnh4c30gMGAsXG4gIH0pXG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gT3B0aW9uc0xpc3Qoe1xuICBpc09wZW4sXG4gIGlzTXVsdGlTZWxlY3QgPSBmYWxzZSxcbiAgdmFsdWUsXG4gIGRpc2FibGVkLFxuICBvcHRpb25zLFxuICBwb3J0YWxDb250YWluZXIsXG4gIHRyaWdnZXJSZWYsXG4gIHRyaWdnZXJXcmFwcGVyUmVmLFxuICBtYXhIZWlnaHQsXG4gIGVtcHR5U3RhdGVNZXNzYWdlID0gXCJObyBvcHRpb25zIGF2YWlsYWJsZVwiLFxuICBzZWxlY3RlZEluZGV4LFxuICBvcHRpb25zTGlzdFdpZHRoLFxuICBpc1ZpcnR1YWxpemVkID0gdHJ1ZSxcbiAgbmFtZSxcbiAgb25DbG9zZURyb3Bkb3duLFxuICBvblNlbGVjdGVkSW5kZXhDaGFuZ2UsXG4gIGZvcmNlQ2hhbmdlRmFrZVNlbGVjdCxcbn06IE9wdGlvbnNMaXN0UHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBvcHRpb25zTGlzdFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgbGlzdENvbnRhaW5lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgbGlzdEl0ZW1zUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCByZWZGb3JQb3NpdGlvbmluZyA9IHRyaWdnZXJXcmFwcGVyUmVmIHx8IHRyaWdnZXJSZWY7XG4gIGNvbnN0IGFjdGl2ZUl0ZW1JbmRleCA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIG9wdGlvbnMuZmluZEluZGV4KChvcHRpb24pID0+XG4gICAgICAgIGlzTXVsdGlTZWxlY3QgPyB2YWx1ZS5pbmNsdWRlcyhvcHRpb24udmFsdWUpIDogb3B0aW9uLnZhbHVlID09PSB2YWx1ZVxuICAgICAgKSxcbiAgICBbb3B0aW9ucywgaXNNdWx0aVNlbGVjdCwgdmFsdWVdXG4gICk7XG5cbiAgY29uc3QgeyBtZW51U3R5bGU6IG9wdGlvbnNMaXN0U3R5bGUsIGNhbGN1bGF0ZVN0eWxlIH0gPSB1c2VQb3B1cE1lbnUoe1xuICAgIHRyaWdnZXJSZWY6IHJlZkZvclBvc2l0aW9uaW5nLFxuICAgIG1lbnVSZWY6IG9wdGlvbnNMaXN0UmVmLFxuICAgIGlzT3BlbixcbiAgfSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoXG4gICAgICBpc09wZW4gJiZcbiAgICAgIGxpc3RDb250YWluZXJSZWYuY3VycmVudCAmJlxuICAgICAgIWlzVmlydHVhbGl6ZWQgJiZcbiAgICAgIG9wdGlvbnNMaXN0U3R5bGUudG9wXG4gICAgKSB7XG4gICAgICBjb25zdCBsaXN0RWxtID0gbGlzdENvbnRhaW5lclJlZi5jdXJyZW50O1xuICAgICAgLy8gZGV0ZXJtaW5lIG92ZXJmbG93XG4gICAgICBpZiAobGlzdEVsbS5jbGllbnRIZWlnaHQgPCBsaXN0RWxtLnNjcm9sbEhlaWdodCkge1xuICAgICAgICBsaXN0SXRlbXNSZWYuY3VycmVudCA9IGxpc3RFbG0ucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLWxpc3QtaXRlbV1cIik7XG4gICAgICAgIHNjcm9sbFRvSXRlbShsaXN0SXRlbXNSZWYuY3VycmVudCwgYWN0aXZlSXRlbUluZGV4KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgbGlzdEl0ZW1zUmVmLmN1cnJlbnQgPSBudWxsO1xuICAgIH1cbiAgfSwgW1xuICAgIGlzT3BlbixcbiAgICBpc1ZpcnR1YWxpemVkLFxuICAgIGxpc3RDb250YWluZXJSZWYsXG4gICAgb3B0aW9ucyxcbiAgICBtYXhIZWlnaHQsXG4gICAgb3B0aW9uc0xpc3RTdHlsZSxcbiAgICBhY3RpdmVJdGVtSW5kZXgsXG4gIF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGxpc3RJdGVtc1JlZi5jdXJyZW50KSB7XG4gICAgICBzY3JvbGxUb0l0ZW0obGlzdEl0ZW1zUmVmLmN1cnJlbnQsIHNlbGVjdGVkSW5kZXgpO1xuICAgIH1cbiAgfSwgW2xpc3RJdGVtc1JlZiwgc2VsZWN0ZWRJbmRleF0pO1xuXG4gIHVzZUtleWJvYXJkKFxuICAgIHtcbiAgICAgIEVzY2FwZTogKCkgPT4gb25DbG9zZURyb3Bkb3duKHRydWUpLFxuICAgICAgRW50ZXI6ICgpID0+IHtcbiAgICAgICAgY29uc3QgcHJlc2VsZWN0ZWRPcHRpb24gPSBvcHRpb25zW3NlbGVjdGVkSW5kZXhdO1xuXG4gICAgICAgIGlmICghcHJlc2VsZWN0ZWRPcHRpb24/LmRpc2FibGVkKSB7XG4gICAgICAgICAgaWYgKHByZXNlbGVjdGVkT3B0aW9uKSB7XG4gICAgICAgICAgICBmb3JjZUNoYW5nZUZha2VTZWxlY3QocHJlc2VsZWN0ZWRPcHRpb24pO1xuICAgICAgICAgICAgaWYgKCFpc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICAgIG9uQ2xvc2VEcm9wZG93bih0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKCFpc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICBvbkNsb3NlRHJvcGRvd24oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBBcnJvd1VwOiAoKSA9PiB7XG4gICAgICAgIGxldCBuZXdJbmRleCA9IHNlbGVjdGVkSW5kZXggPT09IC0xID8gYWN0aXZlSXRlbUluZGV4IDogc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgd2hpbGUgKG5ld0luZGV4ID4gMCkge1xuICAgICAgICAgIG5ld0luZGV4IC09IDE7XG4gICAgICAgICAgaWYgKCFvcHRpb25zW25ld0luZGV4XT8uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBPbmx5IHVwZGF0ZSB0aGUgc2VsZWN0aW9uIGlmIHRoZSBuZXcgaXRlbSBpcyBub3QgZGlzYWJsZWRcbiAgICAgICAgaWYgKCFvcHRpb25zW25ld0luZGV4XT8uZGlzYWJsZWQpIHtcbiAgICAgICAgICBvblNlbGVjdGVkSW5kZXhDaGFuZ2UobmV3SW5kZXgpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgQXJyb3dEb3duOiAoKSA9PiB7XG4gICAgICAgIGxldCBuZXdJbmRleCA9IHNlbGVjdGVkSW5kZXggPT09IC0xID8gYWN0aXZlSXRlbUluZGV4IDogc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgd2hpbGUgKG5ld0luZGV4IDwgb3B0aW9ucy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgbmV3SW5kZXggKz0gMTtcbiAgICAgICAgICBpZiAoIW9wdGlvbnNbbmV3SW5kZXhdPy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIE9ubHkgdXBkYXRlIHRoZSBzZWxlY3Rpb24gaWYgdGhlIG5ldyBpdGVtIGlzIG5vdCBkaXNhYmxlZFxuICAgICAgICBpZiAoIW9wdGlvbnNbbmV3SW5kZXhdPy5kaXNhYmxlZCkge1xuICAgICAgICAgIG9uU2VsZWN0ZWRJbmRleENoYW5nZShuZXdJbmRleCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSxcbiAgICB0cmlnZ2VyUmVmLFxuICAgIGlzT3BlbiAmJiAhZGlzYWJsZWRcbiAgKTtcblxuICBjb25zdCByZW5kZXJJdGVtID0gKGluZGV4OiBudW1iZXIpID0+IHtcbiAgICBjb25zdCBvcHRpb246IFNlbGVjdE9wdGlvbiA9IG9wdGlvbnNbaW5kZXhdO1xuICAgIC8vIEdlbmVyYXRlIHVuaXF1ZSBpZCBmb3IgdGhlIG9wdGlvblxuICAgIGNvbnN0IGlkID0gZ2V0T3B0aW9uSWQobmFtZSwgb3B0aW9uLnZhbHVlKTtcblxuICAgIGlmIChpc011bHRpU2VsZWN0KSB7XG4gICAgICBjb25zdCBpc0FjdGl2ZSA9IHZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSk7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxDdXN0b21PcHRpb25cbiAgICAgICAgICByb2xlPVwib3B0aW9uXCJcbiAgICAgICAgICBhcmlhLXNlbGVjdGVkPXtpc0FjdGl2ZX1cbiAgICAgICAgICBhcmlhLWRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgIGtleT17b3B0aW9uLnZhbHVlfVxuICAgICAgICAgIGFjdGl2ZT17aXNBY3RpdmV9XG4gICAgICAgICAgZGlzYWJsZWQ9e29wdGlvbi5kaXNhYmxlZH1cbiAgICAgICAgICBwcmVTZWxlY3RlZD17c2VsZWN0ZWRJbmRleCA9PT0gaW5kZXh9XG4gICAgICAgICAgZGF0YS1saXN0LWl0ZW1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFvcHRpb24uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0KG9wdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgICAvLyBzdG9wIGV2ZW50IHByb3BhZ2F0aW9uIHRvIG5vdCBjbG9zZSBtb2RhbCBvbiBzZWxlY3Rpb24gaWYgc2VsZWN0IGlzIHdpdGhpbiBhIE1vZGFsXG4gICAgICAgICAgb25DbGljaz17KGV2dCkgPT4gZXZ0LnN0b3BQcm9wYWdhdGlvbigpfVxuICAgICAgICA+XG4gICAgICAgICAgPENoZWNrYm94UmF3XG4gICAgICAgICAgICBuYW1lPVwiXCJcbiAgICAgICAgICAgIGRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgICAgICBjaGVja2VkPXtpc0FjdGl2ZX1cbiAgICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAgIGxhYmVsPXtvcHRpb24ubGFiZWx9XG4gICAgICAgICAgICBvbkNoYW5nZT17KCkgPT4gbnVsbH1cbiAgICAgICAgICAgIGxhYmVsSGludD17b3B0aW9uPy5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0N1c3RvbU9wdGlvbj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gZWxzZSByZW5kZXIgc2luZ2xlIHNlbGVjdCBpdGVtXG4gICAgY29uc3QgaXNBY3RpdmUgPSB2YWx1ZSA9PT0gb3B0aW9uLnZhbHVlO1xuICAgIGNvbnN0IG9wdGlvblRleHQgPSAoXG4gICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgIDxUZXh0IGNvbG9yPVwicHJpbWFyeVwiIHNpemU9XCJtXCI+XG4gICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgPC9UZXh0PlxuICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9uICYmIChcbiAgICAgICAgICA8VGV4dCBjb2xvcj1cInRlcnRpYXJ5XCIgc2l6ZT1cInNcIj5cbiAgICAgICAgICAgIHtvcHRpb24uZGVzY3JpcHRpb259XG4gICAgICAgICAgPC9UZXh0PlxuICAgICAgICApfVxuICAgICAgPC9TdGFjaz5cbiAgICApO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRPcHRpb25cbiAgICAgICAgcm9sZT1cIm9wdGlvblwiXG4gICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2lzQWN0aXZlfVxuICAgICAgICBhcmlhLWRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgIGlkPXtpZH1cbiAgICAgICAga2V5PXtvcHRpb24udmFsdWV9XG4gICAgICAgIGFjdGl2ZT17aXNBY3RpdmV9XG4gICAgICAgIGRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgIHByZVNlbGVjdGVkPXtzZWxlY3RlZEluZGV4ID09PSBpbmRleH1cbiAgICAgICAgZGF0YS1saXN0LWl0ZW1cbiAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICBpZiAoIW9wdGlvbi5kaXNhYmxlZCkge1xuICAgICAgICAgICAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0KG9wdGlvbik7XG4gICAgICAgICAgICBvbkNsb3NlRHJvcGRvd24odHJ1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7aXNBY3RpdmUgPyAoXG4gICAgICAgICAgPElubGluZSBub1dyYXAgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiPlxuICAgICAgICAgICAge29wdGlvblRleHR9XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgPEljb24gbmFtZT1cImNoZWNrXCIgc2l6ZT1cInNcIiBjb2xvcj1cImFjY2VudFwiIC8+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICBvcHRpb25UZXh0XG4gICAgICAgICl9XG4gICAgICA8L1N0eWxlZE9wdGlvbj5cbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGxpc3RTdHlsZSA9IHtcbiAgICAuLi5vcHRpb25zTGlzdFN0eWxlLFxuICAgIHdpZHRoOlxuICAgICAgb3B0aW9uc0xpc3RXaWR0aCB8fFxuICAgICAgcmVmRm9yUG9zaXRpb25pbmcuY3VycmVudD8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGgsXG4gIH07XG5cbiAgY29uc3QgbGlzdEVsbSA9IChcbiAgICA8U3R5bGVkRHJvcGRvd25cbiAgICAgIHN0eWxlPXtsaXN0U3R5bGV9XG4gICAgICByZWY9e29wdGlvbnNMaXN0UmVmfVxuICAgICAgLy8gdGhpcyBpcyB0byBwcmV2ZW50IGtub3duIGJ1ZyBvZiBDaHJvbWUgd2hlbiBlbGVtZW50XG4gICAgICAvLyBsb3NlcyBmb2N1cyBvbiBjbGljayBvbiB0aGUgc2Nyb2xsYmFyXG4gICAgICBvbk1vdXNlRG93bj17KGUpID0+IGUucHJldmVudERlZmF1bHQoKX1cbiAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9XCJvcHRpb25zTGlzdFwiXG4gICAgPlxuICAgICAge2lzVmlydHVhbGl6ZWQgPyAoXG4gICAgICAgIDxWaXJ0dWFsU2Nyb2xsTGlzdFxuICAgICAgICAgIGlkPXtnZXRPcHRpb25zTGlzdElkKG5hbWUpfVxuICAgICAgICAgIG1heEhlaWdodD17bWF4SGVpZ2h0fVxuICAgICAgICAgIGl0ZW1IZWlnaHQ9ezM2fVxuICAgICAgICAgIGl0ZW1BbW91bnQ9e29wdGlvbnMubGVuZ3RofVxuICAgICAgICAgIGVtcHR5U3RhdGU9eygpID0+IG51bGx9XG4gICAgICAgICAgY29udGFpbmVyU3R5bGU9e2Ryb3Bkb3duQ29udGFpbmVyU3R5bGV9XG4gICAgICAgICAgaXRlbUluVmlldz17c2VsZWN0ZWRJbmRleH1cbiAgICAgICAgICBpdGVtVGVtcGxhdGU9e3JlbmRlckl0ZW19XG4gICAgICAgICAgb25Db250ZW50SGVpZ2h0Q2hhbmdlPXtjYWxjdWxhdGVTdHlsZX1cbiAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgIC8+XG4gICAgICApIDogKFxuICAgICAgICA8U3R5bGVkTGlzdENvbnRhaW5lclxuICAgICAgICAgIG1heEhlaWdodD17bWF4SGVpZ2h0fVxuICAgICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgICAgICBpZD17Z2V0T3B0aW9uc0xpc3RJZChuYW1lKX1cbiAgICAgICAgICByZWY9e2xpc3RDb250YWluZXJSZWZ9XG4gICAgICAgID5cbiAgICAgICAgICB7b3B0aW9ucy5tYXAoKF9vcHRpb24sIGluZGV4KSA9PiByZW5kZXJJdGVtKGluZGV4KSl9XG4gICAgICAgIDwvU3R5bGVkTGlzdENvbnRhaW5lcj5cbiAgICAgICl9XG4gICAgPC9TdHlsZWREcm9wZG93bj5cbiAgKTtcblxuICBpZiAoIWlzT3Blbikge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgbGlzdFBvcnRhbCA9IG9wdGlvbnMubGVuZ3RoID8gKFxuICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PntsaXN0RWxtfTwvUG9ydGFsPlxuICApIDogbnVsbDtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8U2NyZWVuUmVhZGVyVGV4dCByb2xlPVwic3RhdHVzXCIgYXJpYS1saXZlPVwicG9saXRlXCI+XG4gICAgICAgIHshb3B0aW9ucy5sZW5ndGggPyBlbXB0eVN0YXRlTWVzc2FnZSA6IFwiXCJ9XG4gICAgICA8L1NjcmVlblJlYWRlclRleHQ+XG4gICAgICB7bGlzdFBvcnRhbH1cbiAgICA8Lz5cbiAgKTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEwRDRCIn0= */");function OptionsList({isOpen,isMultiSelect=!1,value,disabled,options,portalContainer,triggerRef,triggerWrapperRef,maxHeight,emptyStateMessage="No options available",selectedIndex,optionsListWidth,isVirtualized=!0,name,onCloseDropdown,onSelectedIndexChange,forceChangeFakeSelect}){let optionsListRef=(0,_react.useRef)(null),listContainerRef=(0,_react.useRef)(null),listItemsRef=(0,_react.useRef)(null),refForPositioning=triggerWrapperRef||triggerRef,activeItemIndex=(0,_react.useMemo)(()=>options.findIndex(option=>isMultiSelect?value.includes(option.value):option.value===value),[options,isMultiSelect,value]),{menuStyle:optionsListStyle,calculateStyle}=(0,_usePopupMenu.usePopupMenu)({triggerRef:refForPositioning,menuRef:optionsListRef,isOpen});(0,_react.useEffect)(()=>{if(isOpen&&listContainerRef.current&&!isVirtualized&&optionsListStyle.top){let listElm=listContainerRef.current;listElm.clientHeight<listElm.scrollHeight&&(listItemsRef.current=listElm.querySelectorAll("[data-list-item]"),scrollToItem(listItemsRef.current,activeItemIndex))}else listItemsRef.current=null},[isOpen,isVirtualized,listContainerRef,options,maxHeight,optionsListStyle,activeItemIndex]),(0,_react.useEffect)(()=>{listItemsRef.current&&scrollToItem(listItemsRef.current,selectedIndex)},[listItemsRef,selectedIndex]),(0,_useKeyboard.useKeyboard)({Escape:()=>onCloseDropdown(!0),Enter:()=>{let preselectedOption=options[selectedIndex];if(!preselectedOption?.disabled){if(preselectedOption){forceChangeFakeSelect(preselectedOption),isMultiSelect||onCloseDropdown(!0);return}isMultiSelect||onCloseDropdown()}},ArrowUp:()=>{let newIndex=-1===selectedIndex?activeItemIndex:selectedIndex;for(;newIndex>0&&(newIndex-=1,options[newIndex]?.disabled););options[newIndex]?.disabled||onSelectedIndexChange(newIndex)},ArrowDown:()=>{let newIndex=-1===selectedIndex?activeItemIndex:selectedIndex;for(;newIndex<options.length-1&&(newIndex+=1,options[newIndex]?.disabled););options[newIndex]?.disabled||onSelectedIndexChange(newIndex)}},triggerRef,isOpen&&!disabled);let renderItem=index=>{let option=options[index],id=getOptionId(name,option.value);if(isMultiSelect){let isActive=value.includes(option.value);return _react.default.createElement(CustomOption,{role:"option","aria-selected":isActive,"aria-disabled":option.disabled,id:id,key:option.value,active:isActive,disabled:option.disabled,preSelected:selectedIndex===index,"data-list-item":!0,onMouseDown:()=>{option.disabled||forceChangeFakeSelect(option)},onClick:evt=>evt.stopPropagation()},_react.default.createElement(_Checkbox.CheckboxRaw,{name:"",disabled:option.disabled,checked:isActive,size:"s",label:option.label,onChange:()=>null,labelHint:option?.description}))}let isActive=value===option.value,optionText=_react.default.createElement(_Stack.Stack,{space:"zero"},_react.default.createElement(_Text.Text,{color:"primary",size:"m"},option.label),option.description&&_react.default.createElement(_Text.Text,{color:"tertiary",size:"s"},option.description));return _react.default.createElement(_StyledSelectComponents.StyledOption,{role:"option","aria-selected":isActive,"aria-disabled":option.disabled,id:id,key:option.value,active:isActive,disabled:option.disabled,preSelected:selectedIndex===index,"data-list-item":!0,onMouseDown:()=>{option.disabled||(forceChangeFakeSelect(option),onCloseDropdown(!0))}},isActive?_react.default.createElement(_Inline.Inline,{noWrap:!0,alignItems:"spaceBetween"},optionText,_react.default.createElement(_Box.Box,{space:"zero",tSpace:"xxxs"},_react.default.createElement(_Icon.Icon,{name:"check",size:"s",color:"accent"}))):optionText)},listStyle={...optionsListStyle,width:optionsListWidth||refForPositioning.current?.getBoundingClientRect().width},listElm=_react.default.createElement(_StyledSelectComponents.StyledDropdown,{style:listStyle,ref:optionsListRef,onMouseDown:e=>e.preventDefault(),"data-e2e-test-id":"optionsList"},isVirtualized?_react.default.createElement(_VirtualScrollList.VirtualScrollList,{id:getOptionsListId(name),maxHeight:maxHeight,itemHeight:36,itemAmount:options.length,emptyState:()=>null,containerStyle:_constants.dropdownContainerStyle,itemInView:selectedIndex,itemTemplate:renderItem,onContentHeightChange:calculateStyle,role:"listbox"}):_react.default.createElement(StyledListContainer,{maxHeight:maxHeight,role:"listbox",id:getOptionsListId(name),ref:listContainerRef},options.map((_option,index)=>renderItem(index))));if(!isOpen)return null;let listPortal=options.length?_react.default.createElement(_Portal.Portal,{portalContainer:portalContainer},listElm):null;return _react.default.createElement(_react.default.Fragment,null,_react.default.createElement(_ScreenReaderText.ScreenReaderText,{role:"status","aria-live":"polite"},options.length?"":emptyStateMessage),listPortal)}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var target=exports,all={get OPTIONS_LIST_SELECTOR(){return OPTIONS_LIST_SELECTOR},get OptionsList(){return OptionsList},get getOptionId(){return getOptionId},get getOptionsListId(){return getOptionsListId}};for(var name in all)Object.defineProperty(target,name,{enumerable:!0,get:Object.getOwnPropertyDescriptor(all,name).get});const _interop_require_default=require("@swc/helpers/_/_interop_require_default"),_react=/*#__PURE__*/require("@swc/helpers/_/_interop_require_wildcard")._(require("react")),_react1=require("@emotion/react"),_styled=/*#__PURE__*/_interop_require_default._(require("@emotion/styled")),_useKeyboard=require("../../../shared/useKeyboard"),_useWindow=require("../../../shared/useWindow"),_usePopupMenu=require("../../../shared/popupMenu/usePopupMenu"),_VirtualScrollList=require("../../VirtualScrollList/VirtualScrollList"),_Text=require("../../Typography/Text/Text"),_Box=require("../../Box/Box"),_Inline=require("../../Inline/Inline"),_Icon=require("../../Icon/Icon"),_StyledSelectComponents=require("./StyledSelectComponents"),_constants=require("./constants"),_Stack=require("../../Stack/Stack"),_Checkbox=require("../Checkbox/Checkbox"),_Portal=require("../../Portal/Portal"),_ScreenReaderText=require("../../Utilities/ScreenReaderText/ScreenReaderText"),OPTIONS_LIST_SELECTOR='[role="listbox"], [role="option"]';function getOptionId(selectName,optionValue){return`${selectName}Option${optionValue}`}function getOptionsListId(selectName){return`${selectName}OptionsList`}const scrollToItem=({list,itemIndex,behavior})=>{list[itemIndex]?.scrollIntoView?.({behavior,block:"nearest"})},CustomOption=(0,_styled.default)(_StyledSelectComponents.StyledOption,{target:"eubbn5p0",label:"CustomOption"})(({theme})=>({paddingTop:0,paddingBottom:0,"& > div":{paddingTop:theme.variables.size.spacing.xs,paddingBottom:theme.variables.size.spacing.xs},"& > div *":{marginTop:0}}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvRm9ybS9Db21ib2JveC9PcHRpb25zTGlzdC50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL0Zvcm0vQ29tYm9ib3gvT3B0aW9uc0xpc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUmVmT2JqZWN0IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlUmVmLCB1c2VFZmZlY3QsIHVzZUxheW91dEVmZmVjdCwgdXNlTWVtbyB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgdXNlVGhlbWUgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsgdXNlS2V5Ym9hcmQgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZUtleWJvYXJkXCI7XG5pbXBvcnQgeyB1c2VXaW5kb3cgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZVdpbmRvd1wiO1xuaW1wb3J0IHR5cGUgeyBDb21tb25TZWxlY3RQcm9wcywgU2VsZWN0T3B0aW9uIH0gZnJvbSBcIi4vQ29tYm9ib3hcIjtcbmltcG9ydCB7IHVzZVBvcHVwTWVudSB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvcG9wdXBNZW51L3VzZVBvcHVwTWVudVwiO1xuaW1wb3J0IHsgVmlydHVhbFNjcm9sbExpc3QgfSBmcm9tIFwiLi4vLi4vVmlydHVhbFNjcm9sbExpc3QvVmlydHVhbFNjcm9sbExpc3RcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5pbXBvcnQgeyBJbmxpbmUgfSBmcm9tIFwiLi4vLi4vSW5saW5lL0lubGluZVwiO1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gXCIuLi8uLi9JY29uL0ljb25cIjtcbmltcG9ydCB7IFN0eWxlZERyb3Bkb3duLCBTdHlsZWRPcHRpb24gfSBmcm9tIFwiLi9TdHlsZWRTZWxlY3RDb21wb25lbnRzXCI7XG5pbXBvcnQgeyBkcm9wZG93bkNvbnRhaW5lclN0eWxlIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ2hlY2tib3hSYXcgfSBmcm9tIFwiLi4vQ2hlY2tib3gvQ2hlY2tib3hcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBTY3JlZW5SZWFkZXJUZXh0IH0gZnJvbSBcIi4uLy4uL1V0aWxpdGllcy9TY3JlZW5SZWFkZXJUZXh0L1NjcmVlblJlYWRlclRleHRcIjtcblxuLyoqXG4gKiBNYXRjaGVzIGFueSBlbGVtZW50IGluc2lkZSB0aGUgb3B0aW9ucyBsaXN0LiBUaGUgbGlzdCByZW5kZXJzIGluIGEgcG9ydGFsLFxuICogb3V0c2lkZSBpdHMgY29uc3VtZXIncyBET00gdHJlZSwgc28gY29uc3VtZXJzIHdpdGggbm8gcmVmIHRvIGl0IChlLmcuIGFcbiAqIHBvcG92ZXIgZGVjaWRpbmcgd2hldGhlciBhbiBcIm91dHNpZGVcIiBjbGljayByZWFsbHkgaXMgb25lKSBtdXN0IG1hdGNoIG9uXG4gKiB0aGVzZSByb2xlcyBpbnN0ZWFkLlxuICovXG5leHBvcnQgY29uc3QgT1BUSU9OU19MSVNUX1NFTEVDVE9SID0gJ1tyb2xlPVwibGlzdGJveFwiXSwgW3JvbGU9XCJvcHRpb25cIl0nO1xuXG50eXBlIE9wdGlvbnNMaXN0UHJvcHMgPSB7XG4gIGlzT3BlbjogYm9vbGVhbjtcbiAgaXNNdWx0aVNlbGVjdD86IGJvb2xlYW47XG4gIHRyaWdnZXJSZWY6IFJlZk9iamVjdDxIVE1MSW5wdXRFbGVtZW50PjtcbiAgdHJpZ2dlcldyYXBwZXJSZWY/OiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQ+O1xuICBvbkNsb3NlRHJvcGRvd246IChub1NlbGVjdD86IGJvb2xlYW4pID0+IHZvaWQ7XG4gIHNlbGVjdGVkSW5kZXg6IG51bWJlcjtcbiAgb25TZWxlY3RlZEluZGV4Q2hhbmdlOiAoaW5kZXg6IG51bWJlcikgPT4gdm9pZDtcbiAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0OiAoc2VsZWN0ZWRPcHRpb246IFNlbGVjdE9wdGlvbikgPT4gdm9pZDtcbiAgaXNWaXJ0dWFsaXplZD86IGJvb2xlYW47XG59ICYgUGFydGlhbDxDb21tb25TZWxlY3RQcm9wcz47XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHRpb25JZChzZWxlY3ROYW1lOiBzdHJpbmcsIG9wdGlvblZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYCR7c2VsZWN0TmFtZX1PcHRpb24ke29wdGlvblZhbHVlfWA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHRpb25zTGlzdElkKHNlbGVjdE5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBgJHtzZWxlY3ROYW1lfU9wdGlvbnNMaXN0YDtcbn1cblxudHlwZSBTY3JvbGxUb0l0ZW1QYXJhbXMgPSB7XG4gIGxpc3Q6IEhUTUxEaXZFbGVtZW50W107XG4gIGl0ZW1JbmRleDogbnVtYmVyO1xuICBiZWhhdmlvcjogU2Nyb2xsQmVoYXZpb3I7XG59O1xuXG5jb25zdCBzY3JvbGxUb0l0ZW0gPSAoeyBsaXN0LCBpdGVtSW5kZXgsIGJlaGF2aW9yIH06IFNjcm9sbFRvSXRlbVBhcmFtcykgPT4ge1xuICBsaXN0W2l0ZW1JbmRleF0/LnNjcm9sbEludG9WaWV3Py4oe1xuICAgIGJlaGF2aW9yLFxuICAgIGJsb2NrOiBcIm5lYXJlc3RcIixcbiAgfSk7XG59O1xuXG5jb25zdCBDdXN0b21PcHRpb24gPSBzdHlsZWQoU3R5bGVkT3B0aW9uKSgoeyB0aGVtZSB9KSA9PiAoe1xuICAvLyB0aGlzIGlzIG5lZWRlZCBmb3IgdXNpbmcgcGFkZGluZyBvZiBjaGVja2JveGVzIGluIG9yZGVyIHRvIHVzZSBpdHMgaG92ZXIgc3RhdGVcbiAgcGFkZGluZ1RvcDogMCxcbiAgcGFkZGluZ0JvdHRvbTogMCxcbiAgXCImID4gZGl2XCI6IHtcbiAgICBwYWRkaW5nVG9wOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzLFxuICAgIHBhZGRpbmdCb3R0b206IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHMsXG4gIH0sXG4gIFwiJiA+IGRpdiAqXCI6IHtcbiAgICBtYXJnaW5Ub3A6IDAsXG4gIH0sXG59KSk7XG5cbmNvbnN0IFN0eWxlZExpc3RDb250YWluZXIgPSBzdHlsZWQuZGl2PFBpY2s8T3B0aW9uc0xpc3RQcm9wcywgXCJtYXhIZWlnaHRcIj4+KFxuICAoeyB0aGVtZSwgbWF4SGVpZ2h0IH0pID0+ICh7XG4gICAgbWF4SGVpZ2h0LFxuICAgIGJveFNpemluZzogXCJib3JkZXItYm94XCIsXG4gICAgb3ZlcmZsb3c6IFwiYXV0b1wiLFxuICAgIHBhZGRpbmc6IGAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzfSAwYCxcbiAgfSlcbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBPcHRpb25zTGlzdCh7XG4gIGlzT3BlbixcbiAgaXNNdWx0aVNlbGVjdCA9IGZhbHNlLFxuICB2YWx1ZSxcbiAgZGlzYWJsZWQsXG4gIG9wdGlvbnMsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgdHJpZ2dlclJlZixcbiAgdHJpZ2dlcldyYXBwZXJSZWYsXG4gIG1heEhlaWdodCxcbiAgZW1wdHlTdGF0ZU1lc3NhZ2UgPSBcIk5vIG9wdGlvbnMgYXZhaWxhYmxlXCIsXG4gIHNlbGVjdGVkSW5kZXgsXG4gIG9wdGlvbnNMaXN0V2lkdGgsXG4gIGlzVmlydHVhbGl6ZWQgPSB0cnVlLFxuICBuYW1lLFxuICBvbkNsb3NlRHJvcGRvd24sXG4gIG9uU2VsZWN0ZWRJbmRleENoYW5nZSxcbiAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0LFxufTogT3B0aW9uc0xpc3RQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IG9wdGlvbnNMaXN0UmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBsaXN0Q29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBsaXN0SXRlbXNSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHJlZkZvclBvc2l0aW9uaW5nID0gdHJpZ2dlcldyYXBwZXJSZWYgfHwgdHJpZ2dlclJlZjtcbiAgY29uc3QgYWN0aXZlSXRlbUluZGV4ID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgb3B0aW9ucy5maW5kSW5kZXgoKG9wdGlvbikgPT5cbiAgICAgICAgaXNNdWx0aVNlbGVjdCA/IHZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSkgOiBvcHRpb24udmFsdWUgPT09IHZhbHVlXG4gICAgICApLFxuICAgIFtvcHRpb25zLCBpc011bHRpU2VsZWN0LCB2YWx1ZV1cbiAgKTtcblxuICBjb25zdCB7IG1lbnVTdHlsZTogb3B0aW9uc0xpc3RTdHlsZSwgY2FsY3VsYXRlU3R5bGUgfSA9IHVzZVBvcHVwTWVudSh7XG4gICAgdHJpZ2dlclJlZjogcmVmRm9yUG9zaXRpb25pbmcsXG4gICAgbWVudVJlZjogb3B0aW9uc0xpc3RSZWYsXG4gICAgaXNPcGVuLFxuICB9KTtcblxuICBjb25zdCB3aW4gPSB1c2VXaW5kb3coKTtcbiAgY29uc3QgeyB2YXJpYWJsZXMgfSA9IHVzZVRoZW1lKCk7XG4gIC8vIENvbnN0cmFpbiB0aGUgbGlzdCB0byB0aGUgc3BhY2UgYWN0dWFsbHkgYXZhaWxhYmxlIGJlbG93IGl0cyBjb21wdXRlZFxuICAvLyBwb3NpdGlvbiBzbyBpdCBuZXZlciBvdmVyZmxvd3MgdGhlIHZpZXdwb3J0LiBBbiBvdmVyZmxvd2luZyBsaXN0IG1ha2VzIHRoZVxuICAvLyBicm93c2VyIHNjcm9sbCB0aGUgcGFnZSB3aGVuIHRoZSBhY3RpdmUgb3B0aW9uIGlzIHJldmVhbGVkIG9uIG9wZW4sIHdoaWNoIGluXG4gIC8vIHR1cm4gY2FuIGhpZGUgdGhlIHN1cnJvdW5kaW5nIHBvcG92ZXIg4oCUIHNlZSB1c2VQb3B1cE1lbnUvVG9vbHRpcENvbnRlbnQuXG4gIGNvbnN0IGVmZmVjdGl2ZU1heEhlaWdodCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghd2luIHx8ICFvcHRpb25zTGlzdFN0eWxlLnRvcCkgcmV0dXJuIG1heEhlaWdodDtcbiAgICAvLyBHYXAga2VwdCBiZXR3ZWVuIHRoZSBsaXN0IGJvdHRvbSBhbmQgdGhlIHZpZXdwb3J0IGVkZ2Ugc28gYSBjYXBwZWQgbGlzdFxuICAgIC8vIG5ldmVyIHJlbmRlcnMgZmx1c2ggYWdhaW5zdCAob3IgcGFzdCkgdGhlIHNjcmVlbiBib3R0b20uXG4gICAgY29uc3QgbWVudVZpZXdwb3J0TWFyZ2luID0gcGFyc2VJbnQodmFyaWFibGVzLnNpemUuc3BhY2luZy54cywgMTApO1xuICAgIGNvbnN0IG1lbnVUb3BJblZpZXdwb3J0ID0gb3B0aW9uc0xpc3RTdHlsZS50b3AgLSAod2luLnNjcm9sbFkgPz8gMCk7XG4gICAgY29uc3Qgc3BhY2VCZWxvdyA9IHdpbi5pbm5lckhlaWdodCAtIG1lbnVUb3BJblZpZXdwb3J0IC0gbWVudVZpZXdwb3J0TWFyZ2luO1xuICAgIGlmICghTnVtYmVyLmlzRmluaXRlKHNwYWNlQmVsb3cpIHx8IHNwYWNlQmVsb3cgPD0gMCkgcmV0dXJuIG1heEhlaWdodDtcbiAgICByZXR1cm4gbWF4SGVpZ2h0ID8gTWF0aC5taW4obWF4SGVpZ2h0LCBzcGFjZUJlbG93KSA6IHNwYWNlQmVsb3c7XG4gIH0sIFttYXhIZWlnaHQsIG9wdGlvbnNMaXN0U3R5bGUsIHdpbiwgdmFyaWFibGVzXSk7XG5cbiAgLy8gTGF5b3V0IGVmZmVjdCArIGluc3RhbnQgYmVoYXZpb3Igc28gdGhlIGxpc3QgaXMgYWxyZWFkeSBwb3NpdGlvbmVkIG9uIHRoZVxuICAvLyBhY3RpdmUgb3B0aW9uIGF0IGZpcnN0IHBhaW50IGluc3RlYWQgb2YgdmlzaWJseSBzY3JvbGxpbmcgdG8gaXQgb24gb3Blbi5cbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBpZiAoXG4gICAgICBpc09wZW4gJiZcbiAgICAgIGxpc3RDb250YWluZXJSZWYuY3VycmVudCAmJlxuICAgICAgIWlzVmlydHVhbGl6ZWQgJiZcbiAgICAgIG9wdGlvbnNMaXN0U3R5bGUudG9wXG4gICAgKSB7XG4gICAgICBjb25zdCBsaXN0RWxtID0gbGlzdENvbnRhaW5lclJlZi5jdXJyZW50O1xuICAgICAgLy8gZGV0ZXJtaW5lIG92ZXJmbG93XG4gICAgICBpZiAobGlzdEVsbS5jbGllbnRIZWlnaHQgPCBsaXN0RWxtLnNjcm9sbEhlaWdodCkge1xuICAgICAgICBsaXN0SXRlbXNSZWYuY3VycmVudCA9IGxpc3RFbG0ucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLWxpc3QtaXRlbV1cIik7XG4gICAgICAgIHNjcm9sbFRvSXRlbSh7XG4gICAgICAgICAgbGlzdDogbGlzdEl0ZW1zUmVmLmN1cnJlbnQsXG4gICAgICAgICAgaXRlbUluZGV4OiBhY3RpdmVJdGVtSW5kZXgsXG4gICAgICAgICAgYmVoYXZpb3I6IFwiaW5zdGFudFwiLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgbGlzdEl0ZW1zUmVmLmN1cnJlbnQgPSBudWxsO1xuICAgIH1cbiAgfSwgW1xuICAgIGlzT3BlbixcbiAgICBpc1ZpcnR1YWxpemVkLFxuICAgIGxpc3RDb250YWluZXJSZWYsXG4gICAgb3B0aW9ucyxcbiAgICBtYXhIZWlnaHQsXG4gICAgb3B0aW9uc0xpc3RTdHlsZSxcbiAgICBhY3RpdmVJdGVtSW5kZXgsXG4gIF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGxpc3RJdGVtc1JlZi5jdXJyZW50KSB7XG4gICAgICBzY3JvbGxUb0l0ZW0oe1xuICAgICAgICBsaXN0OiBsaXN0SXRlbXNSZWYuY3VycmVudCxcbiAgICAgICAgaXRlbUluZGV4OiBzZWxlY3RlZEluZGV4LFxuICAgICAgICBiZWhhdmlvcjogXCJzbW9vdGhcIixcbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW2xpc3RJdGVtc1JlZiwgc2VsZWN0ZWRJbmRleF0pO1xuXG4gIHVzZUtleWJvYXJkKFxuICAgIHtcbiAgICAgIEVzY2FwZTogKCkgPT4gb25DbG9zZURyb3Bkb3duKHRydWUpLFxuICAgICAgRW50ZXI6ICgpID0+IHtcbiAgICAgICAgY29uc3QgcHJlc2VsZWN0ZWRPcHRpb24gPSBvcHRpb25zW3NlbGVjdGVkSW5kZXhdO1xuXG4gICAgICAgIGlmICghcHJlc2VsZWN0ZWRPcHRpb24/LmRpc2FibGVkKSB7XG4gICAgICAgICAgaWYgKHByZXNlbGVjdGVkT3B0aW9uKSB7XG4gICAgICAgICAgICBmb3JjZUNoYW5nZUZha2VTZWxlY3QocHJlc2VsZWN0ZWRPcHRpb24pO1xuICAgICAgICAgICAgaWYgKCFpc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICAgIG9uQ2xvc2VEcm9wZG93bih0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKCFpc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICBvbkNsb3NlRHJvcGRvd24oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBBcnJvd1VwOiAoKSA9PiB7XG4gICAgICAgIGxldCBuZXdJbmRleCA9IHNlbGVjdGVkSW5kZXggPT09IC0xID8gYWN0aXZlSXRlbUluZGV4IDogc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgd2hpbGUgKG5ld0luZGV4ID4gMCkge1xuICAgICAgICAgIG5ld0luZGV4IC09IDE7XG4gICAgICAgICAgaWYgKCFvcHRpb25zW25ld0luZGV4XT8uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBPbmx5IHVwZGF0ZSB0aGUgc2VsZWN0aW9uIGlmIHRoZSBuZXcgaXRlbSBpcyBub3QgZGlzYWJsZWRcbiAgICAgICAgaWYgKCFvcHRpb25zW25ld0luZGV4XT8uZGlzYWJsZWQpIHtcbiAgICAgICAgICBvblNlbGVjdGVkSW5kZXhDaGFuZ2UobmV3SW5kZXgpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgQXJyb3dEb3duOiAoKSA9PiB7XG4gICAgICAgIGxldCBuZXdJbmRleCA9IHNlbGVjdGVkSW5kZXggPT09IC0xID8gYWN0aXZlSXRlbUluZGV4IDogc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgd2hpbGUgKG5ld0luZGV4IDwgb3B0aW9ucy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgbmV3SW5kZXggKz0gMTtcbiAgICAgICAgICBpZiAoIW9wdGlvbnNbbmV3SW5kZXhdPy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIE9ubHkgdXBkYXRlIHRoZSBzZWxlY3Rpb24gaWYgdGhlIG5ldyBpdGVtIGlzIG5vdCBkaXNhYmxlZFxuICAgICAgICBpZiAoIW9wdGlvbnNbbmV3SW5kZXhdPy5kaXNhYmxlZCkge1xuICAgICAgICAgIG9uU2VsZWN0ZWRJbmRleENoYW5nZShuZXdJbmRleCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSxcbiAgICB0cmlnZ2VyUmVmLFxuICAgIGlzT3BlbiAmJiAhZGlzYWJsZWRcbiAgKTtcblxuICBjb25zdCByZW5kZXJJdGVtID0gKGluZGV4OiBudW1iZXIpID0+IHtcbiAgICBjb25zdCBvcHRpb246IFNlbGVjdE9wdGlvbiA9IG9wdGlvbnNbaW5kZXhdO1xuICAgIC8vIEdlbmVyYXRlIHVuaXF1ZSBpZCBmb3IgdGhlIG9wdGlvblxuICAgIGNvbnN0IGlkID0gZ2V0T3B0aW9uSWQobmFtZSwgb3B0aW9uLnZhbHVlKTtcblxuICAgIGlmIChpc011bHRpU2VsZWN0KSB7XG4gICAgICBjb25zdCBpc0FjdGl2ZSA9IHZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSk7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxDdXN0b21PcHRpb25cbiAgICAgICAgICByb2xlPVwib3B0aW9uXCJcbiAgICAgICAgICBhcmlhLXNlbGVjdGVkPXtpc0FjdGl2ZX1cbiAgICAgICAgICBhcmlhLWRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgIGtleT17b3B0aW9uLnZhbHVlfVxuICAgICAgICAgIGFjdGl2ZT17aXNBY3RpdmV9XG4gICAgICAgICAgZGlzYWJsZWQ9e29wdGlvbi5kaXNhYmxlZH1cbiAgICAgICAgICBwcmVTZWxlY3RlZD17c2VsZWN0ZWRJbmRleCA9PT0gaW5kZXh9XG4gICAgICAgICAgZGF0YS1saXN0LWl0ZW1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFvcHRpb24uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0KG9wdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgICAvLyBzdG9wIGV2ZW50IHByb3BhZ2F0aW9uIHRvIG5vdCBjbG9zZSBtb2RhbCBvbiBzZWxlY3Rpb24gaWYgc2VsZWN0IGlzIHdpdGhpbiBhIE1vZGFsXG4gICAgICAgICAgb25DbGljaz17KGV2dCkgPT4gZXZ0LnN0b3BQcm9wYWdhdGlvbigpfVxuICAgICAgICA+XG4gICAgICAgICAgPENoZWNrYm94UmF3XG4gICAgICAgICAgICBuYW1lPVwiXCJcbiAgICAgICAgICAgIGRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgICAgICBjaGVja2VkPXtpc0FjdGl2ZX1cbiAgICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAgIGxhYmVsPXtvcHRpb24ubGFiZWx9XG4gICAgICAgICAgICBvbkNoYW5nZT17KCkgPT4gbnVsbH1cbiAgICAgICAgICAgIGxhYmVsSGludD17b3B0aW9uPy5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0N1c3RvbU9wdGlvbj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gZWxzZSByZW5kZXIgc2luZ2xlIHNlbGVjdCBpdGVtXG4gICAgY29uc3QgaXNBY3RpdmUgPSB2YWx1ZSA9PT0gb3B0aW9uLnZhbHVlO1xuICAgIGNvbnN0IG9wdGlvblRleHQgPSAoXG4gICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgIDxUZXh0IGNvbG9yPVwicHJpbWFyeVwiIHNpemU9XCJtXCI+XG4gICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgPC9UZXh0PlxuICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9uICYmIChcbiAgICAgICAgICA8VGV4dCBjb2xvcj1cInRlcnRpYXJ5XCIgc2l6ZT1cInNcIj5cbiAgICAgICAgICAgIHtvcHRpb24uZGVzY3JpcHRpb259XG4gICAgICAgICAgPC9UZXh0PlxuICAgICAgICApfVxuICAgICAgPC9TdGFjaz5cbiAgICApO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRPcHRpb25cbiAgICAgICAgcm9sZT1cIm9wdGlvblwiXG4gICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2lzQWN0aXZlfVxuICAgICAgICBhcmlhLWRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgIGlkPXtpZH1cbiAgICAgICAga2V5PXtvcHRpb24udmFsdWV9XG4gICAgICAgIGFjdGl2ZT17aXNBY3RpdmV9XG4gICAgICAgIGRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgIHByZVNlbGVjdGVkPXtzZWxlY3RlZEluZGV4ID09PSBpbmRleH1cbiAgICAgICAgZGF0YS1saXN0LWl0ZW1cbiAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICBpZiAoIW9wdGlvbi5kaXNhYmxlZCkge1xuICAgICAgICAgICAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0KG9wdGlvbik7XG4gICAgICAgICAgICBvbkNsb3NlRHJvcGRvd24odHJ1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7aXNBY3RpdmUgPyAoXG4gICAgICAgICAgPElubGluZSBub1dyYXAgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiPlxuICAgICAgICAgICAge29wdGlvblRleHR9XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgPEljb24gbmFtZT1cImNoZWNrXCIgc2l6ZT1cInNcIiBjb2xvcj1cImFjY2VudFwiIC8+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICBvcHRpb25UZXh0XG4gICAgICAgICl9XG4gICAgICA8L1N0eWxlZE9wdGlvbj5cbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGxpc3RTdHlsZSA9IHtcbiAgICAuLi5vcHRpb25zTGlzdFN0eWxlLFxuICAgIHdpZHRoOlxuICAgICAgb3B0aW9uc0xpc3RXaWR0aCB8fFxuICAgICAgcmVmRm9yUG9zaXRpb25pbmcuY3VycmVudD8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGgsXG4gIH07XG5cbiAgY29uc3QgbGlzdEVsbSA9IChcbiAgICA8U3R5bGVkRHJvcGRvd25cbiAgICAgIHN0eWxlPXtsaXN0U3R5bGV9XG4gICAgICByZWY9e29wdGlvbnNMaXN0UmVmfVxuICAgICAgLy8gdGhpcyBpcyB0byBwcmV2ZW50IGtub3duIGJ1ZyBvZiBDaHJvbWUgd2hlbiBlbGVtZW50XG4gICAgICAvLyBsb3NlcyBmb2N1cyBvbiBjbGljayBvbiB0aGUgc2Nyb2xsYmFyXG4gICAgICBvbk1vdXNlRG93bj17KGUpID0+IGUucHJldmVudERlZmF1bHQoKX1cbiAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9XCJvcHRpb25zTGlzdFwiXG4gICAgPlxuICAgICAge2lzVmlydHVhbGl6ZWQgPyAoXG4gICAgICAgIDxWaXJ0dWFsU2Nyb2xsTGlzdFxuICAgICAgICAgIGlkPXtnZXRPcHRpb25zTGlzdElkKG5hbWUpfVxuICAgICAgICAgIG1heEhlaWdodD17ZWZmZWN0aXZlTWF4SGVpZ2h0fVxuICAgICAgICAgIGl0ZW1IZWlnaHQ9ezM2fVxuICAgICAgICAgIGl0ZW1BbW91bnQ9e29wdGlvbnMubGVuZ3RofVxuICAgICAgICAgIGVtcHR5U3RhdGU9eygpID0+IG51bGx9XG4gICAgICAgICAgY29udGFpbmVyU3R5bGU9e2Ryb3Bkb3duQ29udGFpbmVyU3R5bGV9XG4gICAgICAgICAgaXRlbUluVmlldz17c2VsZWN0ZWRJbmRleH1cbiAgICAgICAgICBpdGVtVGVtcGxhdGU9e3JlbmRlckl0ZW19XG4gICAgICAgICAgb25Db250ZW50SGVpZ2h0Q2hhbmdlPXtjYWxjdWxhdGVTdHlsZX1cbiAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgIC8+XG4gICAgICApIDogKFxuICAgICAgICA8U3R5bGVkTGlzdENvbnRhaW5lclxuICAgICAgICAgIG1heEhlaWdodD17ZWZmZWN0aXZlTWF4SGVpZ2h0fVxuICAgICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgICAgICBpZD17Z2V0T3B0aW9uc0xpc3RJZChuYW1lKX1cbiAgICAgICAgICByZWY9e2xpc3RDb250YWluZXJSZWZ9XG4gICAgICAgID5cbiAgICAgICAgICB7b3B0aW9ucy5tYXAoKF9vcHRpb24sIGluZGV4KSA9PiByZW5kZXJJdGVtKGluZGV4KSl9XG4gICAgICAgIDwvU3R5bGVkTGlzdENvbnRhaW5lcj5cbiAgICAgICl9XG4gICAgPC9TdHlsZWREcm9wZG93bj5cbiAgKTtcblxuICBpZiAoIWlzT3Blbikge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgbGlzdFBvcnRhbCA9IG9wdGlvbnMubGVuZ3RoID8gKFxuICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PntsaXN0RWxtfTwvUG9ydGFsPlxuICApIDogbnVsbDtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8U2NyZWVuUmVhZGVyVGV4dCByb2xlPVwic3RhdHVzXCIgYXJpYS1saXZlPVwicG9saXRlXCI+XG4gICAgICAgIHshb3B0aW9ucy5sZW5ndGggPyBlbXB0eVN0YXRlTWVzc2FnZSA6IFwiXCJ9XG4gICAgICA8L1NjcmVlblJlYWRlclRleHQ+XG4gICAgICB7bGlzdFBvcnRhbH1cbiAgICA8Lz5cbiAgKTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2RHFCIn0= */"),StyledListContainer=(0,_styled.default)("div",{target:"eubbn5p1",label:"StyledListContainer"})(({theme,maxHeight})=>({maxHeight,boxSizing:"border-box",overflow:"auto",padding:`${theme.variables.size.spacing.xxs} 0`}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvRm9ybS9Db21ib2JveC9PcHRpb25zTGlzdC50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL0Zvcm0vQ29tYm9ib3gvT3B0aW9uc0xpc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUmVmT2JqZWN0IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHsgdXNlUmVmLCB1c2VFZmZlY3QsIHVzZUxheW91dEVmZmVjdCwgdXNlTWVtbyB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgdXNlVGhlbWUgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsgdXNlS2V5Ym9hcmQgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZUtleWJvYXJkXCI7XG5pbXBvcnQgeyB1c2VXaW5kb3cgfSBmcm9tIFwiLi4vLi4vLi4vc2hhcmVkL3VzZVdpbmRvd1wiO1xuaW1wb3J0IHR5cGUgeyBDb21tb25TZWxlY3RQcm9wcywgU2VsZWN0T3B0aW9uIH0gZnJvbSBcIi4vQ29tYm9ib3hcIjtcbmltcG9ydCB7IHVzZVBvcHVwTWVudSB9IGZyb20gXCIuLi8uLi8uLi9zaGFyZWQvcG9wdXBNZW51L3VzZVBvcHVwTWVudVwiO1xuaW1wb3J0IHsgVmlydHVhbFNjcm9sbExpc3QgfSBmcm9tIFwiLi4vLi4vVmlydHVhbFNjcm9sbExpc3QvVmlydHVhbFNjcm9sbExpc3RcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vLi4vVHlwb2dyYXBoeS9UZXh0L1RleHRcIjtcbmltcG9ydCB7IEJveCB9IGZyb20gXCIuLi8uLi9Cb3gvQm94XCI7XG5pbXBvcnQgeyBJbmxpbmUgfSBmcm9tIFwiLi4vLi4vSW5saW5lL0lubGluZVwiO1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gXCIuLi8uLi9JY29uL0ljb25cIjtcbmltcG9ydCB7IFN0eWxlZERyb3Bkb3duLCBTdHlsZWRPcHRpb24gfSBmcm9tIFwiLi9TdHlsZWRTZWxlY3RDb21wb25lbnRzXCI7XG5pbXBvcnQgeyBkcm9wZG93bkNvbnRhaW5lclN0eWxlIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gXCIuLi8uLi9TdGFjay9TdGFja1wiO1xuaW1wb3J0IHsgQ2hlY2tib3hSYXcgfSBmcm9tIFwiLi4vQ2hlY2tib3gvQ2hlY2tib3hcIjtcbmltcG9ydCB7IFBvcnRhbCB9IGZyb20gXCIuLi8uLi9Qb3J0YWwvUG9ydGFsXCI7XG5pbXBvcnQgeyBTY3JlZW5SZWFkZXJUZXh0IH0gZnJvbSBcIi4uLy4uL1V0aWxpdGllcy9TY3JlZW5SZWFkZXJUZXh0L1NjcmVlblJlYWRlclRleHRcIjtcblxuLyoqXG4gKiBNYXRjaGVzIGFueSBlbGVtZW50IGluc2lkZSB0aGUgb3B0aW9ucyBsaXN0LiBUaGUgbGlzdCByZW5kZXJzIGluIGEgcG9ydGFsLFxuICogb3V0c2lkZSBpdHMgY29uc3VtZXIncyBET00gdHJlZSwgc28gY29uc3VtZXJzIHdpdGggbm8gcmVmIHRvIGl0IChlLmcuIGFcbiAqIHBvcG92ZXIgZGVjaWRpbmcgd2hldGhlciBhbiBcIm91dHNpZGVcIiBjbGljayByZWFsbHkgaXMgb25lKSBtdXN0IG1hdGNoIG9uXG4gKiB0aGVzZSByb2xlcyBpbnN0ZWFkLlxuICovXG5leHBvcnQgY29uc3QgT1BUSU9OU19MSVNUX1NFTEVDVE9SID0gJ1tyb2xlPVwibGlzdGJveFwiXSwgW3JvbGU9XCJvcHRpb25cIl0nO1xuXG50eXBlIE9wdGlvbnNMaXN0UHJvcHMgPSB7XG4gIGlzT3BlbjogYm9vbGVhbjtcbiAgaXNNdWx0aVNlbGVjdD86IGJvb2xlYW47XG4gIHRyaWdnZXJSZWY6IFJlZk9iamVjdDxIVE1MSW5wdXRFbGVtZW50PjtcbiAgdHJpZ2dlcldyYXBwZXJSZWY/OiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQ+O1xuICBvbkNsb3NlRHJvcGRvd246IChub1NlbGVjdD86IGJvb2xlYW4pID0+IHZvaWQ7XG4gIHNlbGVjdGVkSW5kZXg6IG51bWJlcjtcbiAgb25TZWxlY3RlZEluZGV4Q2hhbmdlOiAoaW5kZXg6IG51bWJlcikgPT4gdm9pZDtcbiAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0OiAoc2VsZWN0ZWRPcHRpb246IFNlbGVjdE9wdGlvbikgPT4gdm9pZDtcbiAgaXNWaXJ0dWFsaXplZD86IGJvb2xlYW47XG59ICYgUGFydGlhbDxDb21tb25TZWxlY3RQcm9wcz47XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHRpb25JZChzZWxlY3ROYW1lOiBzdHJpbmcsIG9wdGlvblZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gYCR7c2VsZWN0TmFtZX1PcHRpb24ke29wdGlvblZhbHVlfWA7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRPcHRpb25zTGlzdElkKHNlbGVjdE5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBgJHtzZWxlY3ROYW1lfU9wdGlvbnNMaXN0YDtcbn1cblxudHlwZSBTY3JvbGxUb0l0ZW1QYXJhbXMgPSB7XG4gIGxpc3Q6IEhUTUxEaXZFbGVtZW50W107XG4gIGl0ZW1JbmRleDogbnVtYmVyO1xuICBiZWhhdmlvcjogU2Nyb2xsQmVoYXZpb3I7XG59O1xuXG5jb25zdCBzY3JvbGxUb0l0ZW0gPSAoeyBsaXN0LCBpdGVtSW5kZXgsIGJlaGF2aW9yIH06IFNjcm9sbFRvSXRlbVBhcmFtcykgPT4ge1xuICBsaXN0W2l0ZW1JbmRleF0/LnNjcm9sbEludG9WaWV3Py4oe1xuICAgIGJlaGF2aW9yLFxuICAgIGJsb2NrOiBcIm5lYXJlc3RcIixcbiAgfSk7XG59O1xuXG5jb25zdCBDdXN0b21PcHRpb24gPSBzdHlsZWQoU3R5bGVkT3B0aW9uKSgoeyB0aGVtZSB9KSA9PiAoe1xuICAvLyB0aGlzIGlzIG5lZWRlZCBmb3IgdXNpbmcgcGFkZGluZyBvZiBjaGVja2JveGVzIGluIG9yZGVyIHRvIHVzZSBpdHMgaG92ZXIgc3RhdGVcbiAgcGFkZGluZ1RvcDogMCxcbiAgcGFkZGluZ0JvdHRvbTogMCxcbiAgXCImID4gZGl2XCI6IHtcbiAgICBwYWRkaW5nVG9wOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzLFxuICAgIHBhZGRpbmdCb3R0b206IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHMsXG4gIH0sXG4gIFwiJiA+IGRpdiAqXCI6IHtcbiAgICBtYXJnaW5Ub3A6IDAsXG4gIH0sXG59KSk7XG5cbmNvbnN0IFN0eWxlZExpc3RDb250YWluZXIgPSBzdHlsZWQuZGl2PFBpY2s8T3B0aW9uc0xpc3RQcm9wcywgXCJtYXhIZWlnaHRcIj4+KFxuICAoeyB0aGVtZSwgbWF4SGVpZ2h0IH0pID0+ICh7XG4gICAgbWF4SGVpZ2h0LFxuICAgIGJveFNpemluZzogXCJib3JkZXItYm94XCIsXG4gICAgb3ZlcmZsb3c6IFwiYXV0b1wiLFxuICAgIHBhZGRpbmc6IGAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzfSAwYCxcbiAgfSlcbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBPcHRpb25zTGlzdCh7XG4gIGlzT3BlbixcbiAgaXNNdWx0aVNlbGVjdCA9IGZhbHNlLFxuICB2YWx1ZSxcbiAgZGlzYWJsZWQsXG4gIG9wdGlvbnMsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgdHJpZ2dlclJlZixcbiAgdHJpZ2dlcldyYXBwZXJSZWYsXG4gIG1heEhlaWdodCxcbiAgZW1wdHlTdGF0ZU1lc3NhZ2UgPSBcIk5vIG9wdGlvbnMgYXZhaWxhYmxlXCIsXG4gIHNlbGVjdGVkSW5kZXgsXG4gIG9wdGlvbnNMaXN0V2lkdGgsXG4gIGlzVmlydHVhbGl6ZWQgPSB0cnVlLFxuICBuYW1lLFxuICBvbkNsb3NlRHJvcGRvd24sXG4gIG9uU2VsZWN0ZWRJbmRleENoYW5nZSxcbiAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0LFxufTogT3B0aW9uc0xpc3RQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IG9wdGlvbnNMaXN0UmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBsaXN0Q29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBsaXN0SXRlbXNSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHJlZkZvclBvc2l0aW9uaW5nID0gdHJpZ2dlcldyYXBwZXJSZWYgfHwgdHJpZ2dlclJlZjtcbiAgY29uc3QgYWN0aXZlSXRlbUluZGV4ID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgb3B0aW9ucy5maW5kSW5kZXgoKG9wdGlvbikgPT5cbiAgICAgICAgaXNNdWx0aVNlbGVjdCA/IHZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSkgOiBvcHRpb24udmFsdWUgPT09IHZhbHVlXG4gICAgICApLFxuICAgIFtvcHRpb25zLCBpc011bHRpU2VsZWN0LCB2YWx1ZV1cbiAgKTtcblxuICBjb25zdCB7IG1lbnVTdHlsZTogb3B0aW9uc0xpc3RTdHlsZSwgY2FsY3VsYXRlU3R5bGUgfSA9IHVzZVBvcHVwTWVudSh7XG4gICAgdHJpZ2dlclJlZjogcmVmRm9yUG9zaXRpb25pbmcsXG4gICAgbWVudVJlZjogb3B0aW9uc0xpc3RSZWYsXG4gICAgaXNPcGVuLFxuICB9KTtcblxuICBjb25zdCB3aW4gPSB1c2VXaW5kb3coKTtcbiAgY29uc3QgeyB2YXJpYWJsZXMgfSA9IHVzZVRoZW1lKCk7XG4gIC8vIENvbnN0cmFpbiB0aGUgbGlzdCB0byB0aGUgc3BhY2UgYWN0dWFsbHkgYXZhaWxhYmxlIGJlbG93IGl0cyBjb21wdXRlZFxuICAvLyBwb3NpdGlvbiBzbyBpdCBuZXZlciBvdmVyZmxvd3MgdGhlIHZpZXdwb3J0LiBBbiBvdmVyZmxvd2luZyBsaXN0IG1ha2VzIHRoZVxuICAvLyBicm93c2VyIHNjcm9sbCB0aGUgcGFnZSB3aGVuIHRoZSBhY3RpdmUgb3B0aW9uIGlzIHJldmVhbGVkIG9uIG9wZW4sIHdoaWNoIGluXG4gIC8vIHR1cm4gY2FuIGhpZGUgdGhlIHN1cnJvdW5kaW5nIHBvcG92ZXIg4oCUIHNlZSB1c2VQb3B1cE1lbnUvVG9vbHRpcENvbnRlbnQuXG4gIGNvbnN0IGVmZmVjdGl2ZU1heEhlaWdodCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghd2luIHx8ICFvcHRpb25zTGlzdFN0eWxlLnRvcCkgcmV0dXJuIG1heEhlaWdodDtcbiAgICAvLyBHYXAga2VwdCBiZXR3ZWVuIHRoZSBsaXN0IGJvdHRvbSBhbmQgdGhlIHZpZXdwb3J0IGVkZ2Ugc28gYSBjYXBwZWQgbGlzdFxuICAgIC8vIG5ldmVyIHJlbmRlcnMgZmx1c2ggYWdhaW5zdCAob3IgcGFzdCkgdGhlIHNjcmVlbiBib3R0b20uXG4gICAgY29uc3QgbWVudVZpZXdwb3J0TWFyZ2luID0gcGFyc2VJbnQodmFyaWFibGVzLnNpemUuc3BhY2luZy54cywgMTApO1xuICAgIGNvbnN0IG1lbnVUb3BJblZpZXdwb3J0ID0gb3B0aW9uc0xpc3RTdHlsZS50b3AgLSAod2luLnNjcm9sbFkgPz8gMCk7XG4gICAgY29uc3Qgc3BhY2VCZWxvdyA9IHdpbi5pbm5lckhlaWdodCAtIG1lbnVUb3BJblZpZXdwb3J0IC0gbWVudVZpZXdwb3J0TWFyZ2luO1xuICAgIGlmICghTnVtYmVyLmlzRmluaXRlKHNwYWNlQmVsb3cpIHx8IHNwYWNlQmVsb3cgPD0gMCkgcmV0dXJuIG1heEhlaWdodDtcbiAgICByZXR1cm4gbWF4SGVpZ2h0ID8gTWF0aC5taW4obWF4SGVpZ2h0LCBzcGFjZUJlbG93KSA6IHNwYWNlQmVsb3c7XG4gIH0sIFttYXhIZWlnaHQsIG9wdGlvbnNMaXN0U3R5bGUsIHdpbiwgdmFyaWFibGVzXSk7XG5cbiAgLy8gTGF5b3V0IGVmZmVjdCArIGluc3RhbnQgYmVoYXZpb3Igc28gdGhlIGxpc3QgaXMgYWxyZWFkeSBwb3NpdGlvbmVkIG9uIHRoZVxuICAvLyBhY3RpdmUgb3B0aW9uIGF0IGZpcnN0IHBhaW50IGluc3RlYWQgb2YgdmlzaWJseSBzY3JvbGxpbmcgdG8gaXQgb24gb3Blbi5cbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBpZiAoXG4gICAgICBpc09wZW4gJiZcbiAgICAgIGxpc3RDb250YWluZXJSZWYuY3VycmVudCAmJlxuICAgICAgIWlzVmlydHVhbGl6ZWQgJiZcbiAgICAgIG9wdGlvbnNMaXN0U3R5bGUudG9wXG4gICAgKSB7XG4gICAgICBjb25zdCBsaXN0RWxtID0gbGlzdENvbnRhaW5lclJlZi5jdXJyZW50O1xuICAgICAgLy8gZGV0ZXJtaW5lIG92ZXJmbG93XG4gICAgICBpZiAobGlzdEVsbS5jbGllbnRIZWlnaHQgPCBsaXN0RWxtLnNjcm9sbEhlaWdodCkge1xuICAgICAgICBsaXN0SXRlbXNSZWYuY3VycmVudCA9IGxpc3RFbG0ucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLWxpc3QtaXRlbV1cIik7XG4gICAgICAgIHNjcm9sbFRvSXRlbSh7XG4gICAgICAgICAgbGlzdDogbGlzdEl0ZW1zUmVmLmN1cnJlbnQsXG4gICAgICAgICAgaXRlbUluZGV4OiBhY3RpdmVJdGVtSW5kZXgsXG4gICAgICAgICAgYmVoYXZpb3I6IFwiaW5zdGFudFwiLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgbGlzdEl0ZW1zUmVmLmN1cnJlbnQgPSBudWxsO1xuICAgIH1cbiAgfSwgW1xuICAgIGlzT3BlbixcbiAgICBpc1ZpcnR1YWxpemVkLFxuICAgIGxpc3RDb250YWluZXJSZWYsXG4gICAgb3B0aW9ucyxcbiAgICBtYXhIZWlnaHQsXG4gICAgb3B0aW9uc0xpc3RTdHlsZSxcbiAgICBhY3RpdmVJdGVtSW5kZXgsXG4gIF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGxpc3RJdGVtc1JlZi5jdXJyZW50KSB7XG4gICAgICBzY3JvbGxUb0l0ZW0oe1xuICAgICAgICBsaXN0OiBsaXN0SXRlbXNSZWYuY3VycmVudCxcbiAgICAgICAgaXRlbUluZGV4OiBzZWxlY3RlZEluZGV4LFxuICAgICAgICBiZWhhdmlvcjogXCJzbW9vdGhcIixcbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW2xpc3RJdGVtc1JlZiwgc2VsZWN0ZWRJbmRleF0pO1xuXG4gIHVzZUtleWJvYXJkKFxuICAgIHtcbiAgICAgIEVzY2FwZTogKCkgPT4gb25DbG9zZURyb3Bkb3duKHRydWUpLFxuICAgICAgRW50ZXI6ICgpID0+IHtcbiAgICAgICAgY29uc3QgcHJlc2VsZWN0ZWRPcHRpb24gPSBvcHRpb25zW3NlbGVjdGVkSW5kZXhdO1xuXG4gICAgICAgIGlmICghcHJlc2VsZWN0ZWRPcHRpb24/LmRpc2FibGVkKSB7XG4gICAgICAgICAgaWYgKHByZXNlbGVjdGVkT3B0aW9uKSB7XG4gICAgICAgICAgICBmb3JjZUNoYW5nZUZha2VTZWxlY3QocHJlc2VsZWN0ZWRPcHRpb24pO1xuICAgICAgICAgICAgaWYgKCFpc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICAgIG9uQ2xvc2VEcm9wZG93bih0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKCFpc011bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICBvbkNsb3NlRHJvcGRvd24oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBBcnJvd1VwOiAoKSA9PiB7XG4gICAgICAgIGxldCBuZXdJbmRleCA9IHNlbGVjdGVkSW5kZXggPT09IC0xID8gYWN0aXZlSXRlbUluZGV4IDogc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgd2hpbGUgKG5ld0luZGV4ID4gMCkge1xuICAgICAgICAgIG5ld0luZGV4IC09IDE7XG4gICAgICAgICAgaWYgKCFvcHRpb25zW25ld0luZGV4XT8uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBPbmx5IHVwZGF0ZSB0aGUgc2VsZWN0aW9uIGlmIHRoZSBuZXcgaXRlbSBpcyBub3QgZGlzYWJsZWRcbiAgICAgICAgaWYgKCFvcHRpb25zW25ld0luZGV4XT8uZGlzYWJsZWQpIHtcbiAgICAgICAgICBvblNlbGVjdGVkSW5kZXhDaGFuZ2UobmV3SW5kZXgpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgQXJyb3dEb3duOiAoKSA9PiB7XG4gICAgICAgIGxldCBuZXdJbmRleCA9IHNlbGVjdGVkSW5kZXggPT09IC0xID8gYWN0aXZlSXRlbUluZGV4IDogc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgd2hpbGUgKG5ld0luZGV4IDwgb3B0aW9ucy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgbmV3SW5kZXggKz0gMTtcbiAgICAgICAgICBpZiAoIW9wdGlvbnNbbmV3SW5kZXhdPy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIE9ubHkgdXBkYXRlIHRoZSBzZWxlY3Rpb24gaWYgdGhlIG5ldyBpdGVtIGlzIG5vdCBkaXNhYmxlZFxuICAgICAgICBpZiAoIW9wdGlvbnNbbmV3SW5kZXhdPy5kaXNhYmxlZCkge1xuICAgICAgICAgIG9uU2VsZWN0ZWRJbmRleENoYW5nZShuZXdJbmRleCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSxcbiAgICB0cmlnZ2VyUmVmLFxuICAgIGlzT3BlbiAmJiAhZGlzYWJsZWRcbiAgKTtcblxuICBjb25zdCByZW5kZXJJdGVtID0gKGluZGV4OiBudW1iZXIpID0+IHtcbiAgICBjb25zdCBvcHRpb246IFNlbGVjdE9wdGlvbiA9IG9wdGlvbnNbaW5kZXhdO1xuICAgIC8vIEdlbmVyYXRlIHVuaXF1ZSBpZCBmb3IgdGhlIG9wdGlvblxuICAgIGNvbnN0IGlkID0gZ2V0T3B0aW9uSWQobmFtZSwgb3B0aW9uLnZhbHVlKTtcblxuICAgIGlmIChpc011bHRpU2VsZWN0KSB7XG4gICAgICBjb25zdCBpc0FjdGl2ZSA9IHZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSk7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxDdXN0b21PcHRpb25cbiAgICAgICAgICByb2xlPVwib3B0aW9uXCJcbiAgICAgICAgICBhcmlhLXNlbGVjdGVkPXtpc0FjdGl2ZX1cbiAgICAgICAgICBhcmlhLWRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgIGtleT17b3B0aW9uLnZhbHVlfVxuICAgICAgICAgIGFjdGl2ZT17aXNBY3RpdmV9XG4gICAgICAgICAgZGlzYWJsZWQ9e29wdGlvbi5kaXNhYmxlZH1cbiAgICAgICAgICBwcmVTZWxlY3RlZD17c2VsZWN0ZWRJbmRleCA9PT0gaW5kZXh9XG4gICAgICAgICAgZGF0YS1saXN0LWl0ZW1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFvcHRpb24uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0KG9wdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgICAvLyBzdG9wIGV2ZW50IHByb3BhZ2F0aW9uIHRvIG5vdCBjbG9zZSBtb2RhbCBvbiBzZWxlY3Rpb24gaWYgc2VsZWN0IGlzIHdpdGhpbiBhIE1vZGFsXG4gICAgICAgICAgb25DbGljaz17KGV2dCkgPT4gZXZ0LnN0b3BQcm9wYWdhdGlvbigpfVxuICAgICAgICA+XG4gICAgICAgICAgPENoZWNrYm94UmF3XG4gICAgICAgICAgICBuYW1lPVwiXCJcbiAgICAgICAgICAgIGRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgICAgICBjaGVja2VkPXtpc0FjdGl2ZX1cbiAgICAgICAgICAgIHNpemU9XCJzXCJcbiAgICAgICAgICAgIGxhYmVsPXtvcHRpb24ubGFiZWx9XG4gICAgICAgICAgICBvbkNoYW5nZT17KCkgPT4gbnVsbH1cbiAgICAgICAgICAgIGxhYmVsSGludD17b3B0aW9uPy5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0N1c3RvbU9wdGlvbj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gZWxzZSByZW5kZXIgc2luZ2xlIHNlbGVjdCBpdGVtXG4gICAgY29uc3QgaXNBY3RpdmUgPSB2YWx1ZSA9PT0gb3B0aW9uLnZhbHVlO1xuICAgIGNvbnN0IG9wdGlvblRleHQgPSAoXG4gICAgICA8U3RhY2sgc3BhY2U9XCJ6ZXJvXCI+XG4gICAgICAgIDxUZXh0IGNvbG9yPVwicHJpbWFyeVwiIHNpemU9XCJtXCI+XG4gICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgPC9UZXh0PlxuICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9uICYmIChcbiAgICAgICAgICA8VGV4dCBjb2xvcj1cInRlcnRpYXJ5XCIgc2l6ZT1cInNcIj5cbiAgICAgICAgICAgIHtvcHRpb24uZGVzY3JpcHRpb259XG4gICAgICAgICAgPC9UZXh0PlxuICAgICAgICApfVxuICAgICAgPC9TdGFjaz5cbiAgICApO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRPcHRpb25cbiAgICAgICAgcm9sZT1cIm9wdGlvblwiXG4gICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2lzQWN0aXZlfVxuICAgICAgICBhcmlhLWRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgIGlkPXtpZH1cbiAgICAgICAga2V5PXtvcHRpb24udmFsdWV9XG4gICAgICAgIGFjdGl2ZT17aXNBY3RpdmV9XG4gICAgICAgIGRpc2FibGVkPXtvcHRpb24uZGlzYWJsZWR9XG4gICAgICAgIHByZVNlbGVjdGVkPXtzZWxlY3RlZEluZGV4ID09PSBpbmRleH1cbiAgICAgICAgZGF0YS1saXN0LWl0ZW1cbiAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICBpZiAoIW9wdGlvbi5kaXNhYmxlZCkge1xuICAgICAgICAgICAgZm9yY2VDaGFuZ2VGYWtlU2VsZWN0KG9wdGlvbik7XG4gICAgICAgICAgICBvbkNsb3NlRHJvcGRvd24odHJ1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICB7aXNBY3RpdmUgPyAoXG4gICAgICAgICAgPElubGluZSBub1dyYXAgYWxpZ25JdGVtcz1cInNwYWNlQmV0d2VlblwiPlxuICAgICAgICAgICAge29wdGlvblRleHR9XG4gICAgICAgICAgICA8Qm94IHNwYWNlPVwiemVyb1wiIHRTcGFjZT1cInh4eHNcIj5cbiAgICAgICAgICAgICAgPEljb24gbmFtZT1cImNoZWNrXCIgc2l6ZT1cInNcIiBjb2xvcj1cImFjY2VudFwiIC8+XG4gICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICA8L0lubGluZT5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICBvcHRpb25UZXh0XG4gICAgICAgICl9XG4gICAgICA8L1N0eWxlZE9wdGlvbj5cbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGxpc3RTdHlsZSA9IHtcbiAgICAuLi5vcHRpb25zTGlzdFN0eWxlLFxuICAgIHdpZHRoOlxuICAgICAgb3B0aW9uc0xpc3RXaWR0aCB8fFxuICAgICAgcmVmRm9yUG9zaXRpb25pbmcuY3VycmVudD8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGgsXG4gIH07XG5cbiAgY29uc3QgbGlzdEVsbSA9IChcbiAgICA8U3R5bGVkRHJvcGRvd25cbiAgICAgIHN0eWxlPXtsaXN0U3R5bGV9XG4gICAgICByZWY9e29wdGlvbnNMaXN0UmVmfVxuICAgICAgLy8gdGhpcyBpcyB0byBwcmV2ZW50IGtub3duIGJ1ZyBvZiBDaHJvbWUgd2hlbiBlbGVtZW50XG4gICAgICAvLyBsb3NlcyBmb2N1cyBvbiBjbGljayBvbiB0aGUgc2Nyb2xsYmFyXG4gICAgICBvbk1vdXNlRG93bj17KGUpID0+IGUucHJldmVudERlZmF1bHQoKX1cbiAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9XCJvcHRpb25zTGlzdFwiXG4gICAgPlxuICAgICAge2lzVmlydHVhbGl6ZWQgPyAoXG4gICAgICAgIDxWaXJ0dWFsU2Nyb2xsTGlzdFxuICAgICAgICAgIGlkPXtnZXRPcHRpb25zTGlzdElkKG5hbWUpfVxuICAgICAgICAgIG1heEhlaWdodD17ZWZmZWN0aXZlTWF4SGVpZ2h0fVxuICAgICAgICAgIGl0ZW1IZWlnaHQ9ezM2fVxuICAgICAgICAgIGl0ZW1BbW91bnQ9e29wdGlvbnMubGVuZ3RofVxuICAgICAgICAgIGVtcHR5U3RhdGU9eygpID0+IG51bGx9XG4gICAgICAgICAgY29udGFpbmVyU3R5bGU9e2Ryb3Bkb3duQ29udGFpbmVyU3R5bGV9XG4gICAgICAgICAgaXRlbUluVmlldz17c2VsZWN0ZWRJbmRleH1cbiAgICAgICAgICBpdGVtVGVtcGxhdGU9e3JlbmRlckl0ZW19XG4gICAgICAgICAgb25Db250ZW50SGVpZ2h0Q2hhbmdlPXtjYWxjdWxhdGVTdHlsZX1cbiAgICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgIC8+XG4gICAgICApIDogKFxuICAgICAgICA8U3R5bGVkTGlzdENvbnRhaW5lclxuICAgICAgICAgIG1heEhlaWdodD17ZWZmZWN0aXZlTWF4SGVpZ2h0fVxuICAgICAgICAgIHJvbGU9XCJsaXN0Ym94XCJcbiAgICAgICAgICBpZD17Z2V0T3B0aW9uc0xpc3RJZChuYW1lKX1cbiAgICAgICAgICByZWY9e2xpc3RDb250YWluZXJSZWZ9XG4gICAgICAgID5cbiAgICAgICAgICB7b3B0aW9ucy5tYXAoKF9vcHRpb24sIGluZGV4KSA9PiByZW5kZXJJdGVtKGluZGV4KSl9XG4gICAgICAgIDwvU3R5bGVkTGlzdENvbnRhaW5lcj5cbiAgICAgICl9XG4gICAgPC9TdHlsZWREcm9wZG93bj5cbiAgKTtcblxuICBpZiAoIWlzT3Blbikge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgbGlzdFBvcnRhbCA9IG9wdGlvbnMubGVuZ3RoID8gKFxuICAgIDxQb3J0YWwgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9PntsaXN0RWxtfTwvUG9ydGFsPlxuICApIDogbnVsbDtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8U2NyZWVuUmVhZGVyVGV4dCByb2xlPVwic3RhdHVzXCIgYXJpYS1saXZlPVwicG9saXRlXCI+XG4gICAgICAgIHshb3B0aW9ucy5sZW5ndGggPyBlbXB0eVN0YXRlTWVzc2FnZSA6IFwiXCJ9XG4gICAgICA8L1NjcmVlblJlYWRlclRleHQ+XG4gICAgICB7bGlzdFBvcnRhbH1cbiAgICA8Lz5cbiAgKTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEwRTRCIn0= */");function OptionsList({isOpen,isMultiSelect=!1,value,disabled,options,portalContainer,triggerRef,triggerWrapperRef,maxHeight,emptyStateMessage="No options available",selectedIndex,optionsListWidth,isVirtualized=!0,name,onCloseDropdown,onSelectedIndexChange,forceChangeFakeSelect}){let optionsListRef=(0,_react.useRef)(null),listContainerRef=(0,_react.useRef)(null),listItemsRef=(0,_react.useRef)(null),refForPositioning=triggerWrapperRef||triggerRef,activeItemIndex=(0,_react.useMemo)(()=>options.findIndex(option=>isMultiSelect?value.includes(option.value):option.value===value),[options,isMultiSelect,value]),{menuStyle:optionsListStyle,calculateStyle}=(0,_usePopupMenu.usePopupMenu)({triggerRef:refForPositioning,menuRef:optionsListRef,isOpen}),win=(0,_useWindow.useWindow)(),{variables}=(0,_react1.useTheme)(),effectiveMaxHeight=(0,_react.useMemo)(()=>{if(!win||!optionsListStyle.top)return maxHeight;let menuViewportMargin=parseInt(variables.size.spacing.xs,10),menuTopInViewport=optionsListStyle.top-(win.scrollY??0),spaceBelow=win.innerHeight-menuTopInViewport-menuViewportMargin;return!Number.isFinite(spaceBelow)||spaceBelow<=0?maxHeight:maxHeight?Math.min(maxHeight,spaceBelow):spaceBelow},[maxHeight,optionsListStyle,win,variables]);(0,_react.useLayoutEffect)(()=>{if(isOpen&&listContainerRef.current&&!isVirtualized&&optionsListStyle.top){let listElm=listContainerRef.current;listElm.clientHeight<listElm.scrollHeight&&(listItemsRef.current=listElm.querySelectorAll("[data-list-item]"),scrollToItem({list:listItemsRef.current,itemIndex:activeItemIndex,behavior:"instant"}))}else listItemsRef.current=null},[isOpen,isVirtualized,listContainerRef,options,maxHeight,optionsListStyle,activeItemIndex]),(0,_react.useEffect)(()=>{listItemsRef.current&&scrollToItem({list:listItemsRef.current,itemIndex:selectedIndex,behavior:"smooth"})},[listItemsRef,selectedIndex]),(0,_useKeyboard.useKeyboard)({Escape:()=>onCloseDropdown(!0),Enter:()=>{let preselectedOption=options[selectedIndex];if(!preselectedOption?.disabled){if(preselectedOption){forceChangeFakeSelect(preselectedOption),isMultiSelect||onCloseDropdown(!0);return}isMultiSelect||onCloseDropdown()}},ArrowUp:()=>{let newIndex=-1===selectedIndex?activeItemIndex:selectedIndex;for(;newIndex>0&&(newIndex-=1,options[newIndex]?.disabled););options[newIndex]?.disabled||onSelectedIndexChange(newIndex)},ArrowDown:()=>{let newIndex=-1===selectedIndex?activeItemIndex:selectedIndex;for(;newIndex<options.length-1&&(newIndex+=1,options[newIndex]?.disabled););options[newIndex]?.disabled||onSelectedIndexChange(newIndex)}},triggerRef,isOpen&&!disabled);let renderItem=index=>{let option=options[index],id=getOptionId(name,option.value);if(isMultiSelect){let isActive=value.includes(option.value);return _react.default.createElement(CustomOption,{role:"option","aria-selected":isActive,"aria-disabled":option.disabled,id:id,key:option.value,active:isActive,disabled:option.disabled,preSelected:selectedIndex===index,"data-list-item":!0,onMouseDown:()=>{option.disabled||forceChangeFakeSelect(option)},onClick:evt=>evt.stopPropagation()},_react.default.createElement(_Checkbox.CheckboxRaw,{name:"",disabled:option.disabled,checked:isActive,size:"s",label:option.label,onChange:()=>null,labelHint:option?.description}))}let isActive=value===option.value,optionText=_react.default.createElement(_Stack.Stack,{space:"zero"},_react.default.createElement(_Text.Text,{color:"primary",size:"m"},option.label),option.description&&_react.default.createElement(_Text.Text,{color:"tertiary",size:"s"},option.description));return _react.default.createElement(_StyledSelectComponents.StyledOption,{role:"option","aria-selected":isActive,"aria-disabled":option.disabled,id:id,key:option.value,active:isActive,disabled:option.disabled,preSelected:selectedIndex===index,"data-list-item":!0,onMouseDown:()=>{option.disabled||(forceChangeFakeSelect(option),onCloseDropdown(!0))}},isActive?_react.default.createElement(_Inline.Inline,{noWrap:!0,alignItems:"spaceBetween"},optionText,_react.default.createElement(_Box.Box,{space:"zero",tSpace:"xxxs"},_react.default.createElement(_Icon.Icon,{name:"check",size:"s",color:"accent"}))):optionText)},listStyle={...optionsListStyle,width:optionsListWidth||refForPositioning.current?.getBoundingClientRect().width},listElm=_react.default.createElement(_StyledSelectComponents.StyledDropdown,{style:listStyle,ref:optionsListRef,onMouseDown:e=>e.preventDefault(),"data-e2e-test-id":"optionsList"},isVirtualized?_react.default.createElement(_VirtualScrollList.VirtualScrollList,{id:getOptionsListId(name),maxHeight:effectiveMaxHeight,itemHeight:36,itemAmount:options.length,emptyState:()=>null,containerStyle:_constants.dropdownContainerStyle,itemInView:selectedIndex,itemTemplate:renderItem,onContentHeightChange:calculateStyle,role:"listbox"}):_react.default.createElement(StyledListContainer,{maxHeight:effectiveMaxHeight,role:"listbox",id:getOptionsListId(name),ref:listContainerRef},options.map((_option,index)=>renderItem(index))));if(!isOpen)return null;let listPortal=options.length?_react.default.createElement(_Portal.Portal,{portalContainer:portalContainer},listElm):null;return _react.default.createElement(_react.default.Fragment,null,_react.default.createElement(_ScreenReaderText.ScreenReaderText,{role:"status","aria-live":"polite"},options.length?"":emptyStateMessage),listPortal)}
|