@activecollab/components 2.0.44 → 2.0.46

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.
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBox.js","names":["_react","_interopRequireWildcard","require","_reactRemoveScroll","_classnames","_interopRequireDefault","_Styles","_helpers","_ConditionWrapper","_useIsFirstRender","_useOnClickOutside","_useForkRef","_Autocomplete","_Autocomplete2","_Avatar","_Checkbox","_Chip","_IconButton","_InputAdornment","_Styles2","_SpinnerLoader","_MultiAvatar","_Popper","_RadioButton","_OptionContent","_Trigger","_Typography","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ComboBox","_ref","options","selected","loading","loadingText","onChange","placeholder","handleEmptyAction","disabled","size","invalid","type","renderChip","forceCloseMenu","renderOption","limitChips","hiddenNumberText","inPortal","inputWrapperClassName","scrollWrapper","onClose","onClear","onDeselect","prop","selectedName","useMemo","value","map","v","find","q","id","name","setValue","useState","focused","setFocused","handleOnChange","useCallback","target","childNode","useRef","elementRef","handleRef","useForkRef","wrapperRef","chipWrapper","comboBoxRef","open","setOpen","isFirstRender","useIsFirstRender","useOnClickOutside","current","contains","handleOnKeyDown","key","stopPropagation","useEffect","focus","blur","emptyAction","handleChange","selectedValue","onOpen","handleRenderOption","option","props","createElement","Fragment","OptionContent","imageUrl","image","color","textColor","Checkbox","RadioButton","handleDeselect","handleMouseDown","preventDefault","handleBlur","renderChipAdornment","index","avatarProps","leftAdornment","_StyledAvatar","_extends2","url","$_css","$_css2","undefined","Array","isArray","includes","newSelected","filter","item","showOnClose","Chip","className","label","backgroundColor","chipColor","variant","autoSize","length","startAdornment","elements","total","forEach","isGrouped","isOptionGroup","push","groupedOptions","o","_index","hidden","splice","_StyledTypography","optionItem","child","avatarSize","MultiAvatar","Avatar","showXIcon","hasSelected","_StyledStyledInputWrapper","$disabled","$size","$invalid","ref","classNames","onClick","click","$_css3","$_css4","$_css5","StyledChipWrapper","$autoSize","$open","StyledInput","onBlur","onFocus","onKeyDown","$loading","style","display","flex","alignSelf","width","SpinnerLoader","_StyledTrigger","onMouseDown","StyledComboBoxCloseSmallIcon","StyledComboBoxCollapseExpandSingleIcon","StyledComboBoxInput","wrapperClick","wrapRef","endAdornment","InputAdornment","disablePointerEvents","IconButton","ConditionalWrapper","condition","wrap","children","Portal","Popper","anchorEl","placement","zIndex","clientWidth","strategy","RemoveScroll","noIsolation","allowPinchZoom","StyledComboBoxList","$width","Autocomplete","inputEl","exports","displayName","_styledComponents","withConfig","componentId","p","Typography","StyledInputWrapper","Trigger"],"sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\nimport { RemoveScroll } from \"react-remove-scroll\";\n\nimport classNames from \"classnames\";\nimport tw from \"twin.macro\";\n\nimport {\n StyledComboBoxCloseSmallIcon,\n StyledComboBoxCollapseExpandSingleIcon,\n StyledComboBoxInput,\n StyledComboBoxList,\n StyledChipWrapper,\n} from \"./Styles\";\nimport { Portal } from \"../../helpers\";\nimport { ConditionalWrapper } from \"../../helpers/ConditionWrapper/ConditionWrapper\";\nimport { useIsFirstRender } from \"../../hooks/useIsFirstRender\";\nimport { useOnClickOutside } from \"../../hooks/useOnClickOutside\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Autocomplete } from \"../Autocomplete\";\nimport {\n IAutocompleteProps,\n isOptionGroup,\n} from \"../Autocomplete/Autocomplete\";\nimport { Avatar, AvatarProps } from \"../Avatar\";\nimport { Checkbox } from \"../Checkbox\";\nimport { Chip } from \"../Chip\";\nimport { IconButton } from \"../IconButton\";\nimport { InputAdornment } from \"../Input/InputAdornment\";\nimport { StyledInput, StyledInputWrapper } from \"../Input/Styles\";\nimport { InputSize } from \"../Input/types\";\nimport { SpinnerLoader } from \"../Loaders/Spinner/SpinnerLoader\";\nimport { MultiAvatar } from \"../MultiAvatar\";\nimport { Popper } from \"../Popper\";\nimport { RadioButton } from \"../RadioButton\";\nimport { IOptionGroupProps, IOptionItemProps } from \"../Select\";\nimport { OptionContent } from \"../Select/OptionContent/OptionContent\";\nimport { Trigger } from \"../Trigger\";\nimport { Typography } from \"../Typography/Typography\";\n\nexport interface IComboBoxProps\n extends Omit<\n IAutocompleteProps,\n \"handleChange\" | \"inputEl\" | \"clearInputOnSelect\"\n > {\n /** Set combobox in to loading state */\n loading?: boolean;\n /** Text to display while in loading state */\n loadingText?: string;\n /** onChange callback */\n onChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** disable Input element */\n disabled?: boolean;\n /** Combobox size */\n size?: InputSize;\n /** Invalid state */\n invalid?: boolean;\n /** Render Chip */\n renderChip?: <T extends IOptionItemProps>(\n item: T,\n key?: string | number\n ) => JSX.Element;\n /** Close menu on change */\n forceCloseMenu?: boolean;\n /** Limit chips */\n limitChips?: number;\n /** Hidden number text */\n hiddenNumberText?: (hidden: number) => string;\n /** Render Autocomplete in <Portal> */\n inPortal?: boolean;\n /** inputWrapperClassName */\n inputWrapperClassName?: string;\n /** scrollWrapper */\n scrollWrapper?: boolean;\n /** onClose (f) will be called when Popper close */\n onClose?: () => void;\n /** onClear (f) will be called when user clear input on X icon*/\n onClear?: () => void;\n onDeselect?: () => void;\n}\n\nexport const ComboBox: FC<IComboBoxProps> = ({\n options = [],\n selected,\n loading = false,\n loadingText,\n onChange,\n placeholder,\n handleEmptyAction,\n disabled = false,\n size = \"regular\",\n invalid = false,\n type = \"single\",\n renderChip,\n forceCloseMenu = type === \"single\",\n renderOption,\n limitChips = 2,\n hiddenNumberText,\n inPortal = false,\n inputWrapperClassName,\n scrollWrapper,\n onClose,\n onClear,\n onDeselect,\n ...prop\n}) => {\n const selectedName = useMemo(() => {\n let value = \"\";\n if (!selected) {\n return value;\n }\n options.map((v) => {\n if ((v as IOptionGroupProps)?.options) {\n return (v as IOptionGroupProps).options.find((q) => {\n if (q.id === selected) {\n value = q.name;\n return;\n }\n });\n } else {\n if (v.id === selected) {\n value = v.name;\n return;\n }\n }\n });\n return value;\n }, [options, selected]);\n const [value, setValue] = useState(selectedName);\n const [focused, setFocused] = useState<boolean>(false);\n const handleOnChange = useCallback((e) => setValue(e.target.value), []);\n const childNode = useRef<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(childNode, elementRef);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const chipWrapper = useRef<HTMLDivElement>(null);\n const comboBoxRef = useRef<HTMLDivElement | null>(null);\n\n const [open, setOpen] = useState(false);\n const isFirstRender = useIsFirstRender();\n\n useOnClickOutside(wrapperRef, (e) => {\n if (e.target && comboBoxRef.current?.contains(e.target as Node)) {\n return;\n }\n setOpen(false);\n });\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Escape\" && open) {\n setOpen(false);\n setValue(selectedName);\n e.stopPropagation();\n }\n\n if (e.key === \"Enter\" && type === \"multiple\") {\n setValue(\"\");\n }\n\n if (e.key === \"Enter\" && !open && focused) {\n setOpen(true);\n }\n },\n [focused, open, selectedName, type]\n );\n\n useEffect(() => {\n open && childNode?.current?.focus();\n !open && childNode?.current?.blur();\n }, [childNode, open]);\n\n useEffect(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n useEffect(() => {\n if (!open && !isFirstRender && !focused) {\n if (typeof onClose === \"function\") {\n onClose();\n }\n }\n }, [focused, isFirstRender, onClose, open]);\n\n const emptyAction = useCallback(\n (v) => {\n handleEmptyAction?.(v);\n setOpen(false);\n },\n [handleEmptyAction]\n );\n\n const handleChange = useCallback(\n (selectedValue) => {\n if (selectedValue !== selected && typeof onChange === \"function\") {\n onChange(selectedValue);\n }\n if (forceCloseMenu) {\n setOpen(false);\n }\n },\n [forceCloseMenu, onChange, selected]\n );\n\n const onOpen = useCallback(() => {\n if (!disabled) {\n setOpen(true);\n }\n }, [disabled]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n if (type === \"multiple\") {\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <Checkbox {...props} />\n </>\n );\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <RadioButton {...props} />\n </>\n );\n },\n [type, renderOption]\n );\n\n const handleDeselect = useCallback(\n (e) => {\n e.stopPropagation();\n if (typeof onDeselect === \"function\") {\n onDeselect();\n } else if (type === \"multiple\") {\n onChange?.([]);\n } else {\n onChange?.(\"\");\n }\n\n onClear?.();\n setOpen(false);\n },\n [type, onChange, onClear, onDeselect]\n );\n\n const handleMouseDown = useCallback((e) => {\n e.preventDefault();\n }, []);\n\n const handleBlur = useCallback(() => {\n setValue(selectedName);\n setFocused(!focused);\n }, [focused, selectedName]);\n\n const renderChipAdornment = useCallback(\n (option, index) => {\n if (typeof renderChip === \"function\") {\n return renderChip(option, index);\n }\n const avatarProps: Partial<AvatarProps> = {\n size: 18,\n };\n switch (size) {\n case \"big\":\n avatarProps.size = 22;\n break;\n case \"small\":\n avatarProps.size = 14;\n break;\n }\n const leftAdornment = option.image ? (\n <Avatar\n css={`\n ${tw`tw-my-0.5`}\n ${tw`tw-mr-0.5`}\n `}\n url={option.image}\n {...avatarProps}\n />\n ) : undefined;\n\n const onClose = (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (Array.isArray(selected) && selected.includes(option.id)) {\n if (typeof onChange === \"function\") {\n const newSelected = selected.filter((item) => item !== option.id);\n onChange(newSelected);\n }\n }\n };\n\n let showOnClose = true;\n if (disabled) {\n showOnClose = false;\n }\n if (option.color) {\n showOnClose = false;\n }\n\n return (\n <Chip\n className=\"c-combo-box-chip\"\n leftAdornment={leftAdornment}\n label={option.name}\n key={index}\n backgroundColor={option.color}\n color={option.chipColor}\n onClose={showOnClose ? onClose : undefined}\n size={size}\n variant=\"Caption 1\"\n />\n );\n },\n [disabled, onChange, renderChip, selected, size]\n );\n\n const autoSize = useMemo(() => {\n if (\n type === \"multiple\" &&\n open &&\n Array.isArray(selected) &&\n selected.length > 1\n ) {\n return \"auto\";\n }\n return size;\n }, [open, selected, size, type]);\n\n const startAdornment = useMemo(() => {\n if (type === \"multiple\" && Array.isArray(selected) && selected.length > 0) {\n const elements: JSX.Element[] = [];\n let total = 0;\n options.forEach((option, index) => {\n const isGrouped = isOptionGroup(option);\n if (selected.includes(option.id) && !isGrouped) {\n total = total + 1;\n elements.push(renderChipAdornment(option, index));\n } else if (isGrouped) {\n const groupedOptions = option.options.filter((o) =>\n selected.includes(o.id)\n );\n total = total + groupedOptions.length;\n if (groupedOptions.length > 0) {\n groupedOptions.forEach((o, _index) => {\n elements.push(renderChipAdornment(o, `${index}_${_index}`));\n });\n }\n }\n });\n let hidden = 0;\n if (!open && limitChips > 0 && elements.length > limitChips) {\n hidden = elements.splice(\n limitChips,\n elements.length - limitChips\n ).length;\n }\n\n return (\n <Fragment>\n {elements}\n {hidden > 0 && (\n <Typography\n variant={\n size === \"small\"\n ? \"Caption 1\"\n : size === \"regular\"\n ? \"Body 2\"\n : \"Body 1\"\n }\n css={`\n display: flex;\n flex-shrink: 0;\n align-items: center;\n `}\n >\n {typeof hiddenNumberText === \"function\"\n ? hiddenNumberText(hidden)\n : `+${hidden}`}\n </Typography>\n )}\n </Fragment>\n );\n }\n if (type === \"single\" && selected) {\n let optionItem;\n options.forEach((option) => {\n if (isOptionGroup(option)) {\n optionItem = option.options.find((child) => child.id === selected);\n } else if (!optionItem && option.id === selected) {\n optionItem = option;\n }\n });\n if (optionItem && optionItem.image) {\n const avatarSize = size === \"big\" ? 22 : size === \"regular\" ? 18 : 14;\n if (Array.isArray(optionItem.image)) {\n return <MultiAvatar url={optionItem.image} size={avatarSize} />;\n }\n return <Avatar url={optionItem.image} size={avatarSize} />;\n }\n }\n\n return undefined;\n }, [\n type,\n selected,\n options,\n open,\n limitChips,\n hiddenNumberText,\n renderChipAdornment,\n size,\n ]);\n\n const showXIcon =\n Array.isArray(selected) && type === \"multiple\" && selected.length > 0;\n\n const hasSelected =\n type === \"multiple\" && Array.isArray(selected) && selected.length > 0;\n\n return (\n <div className=\"c-combo-box\">\n {type === \"multiple\" ? (\n <>\n <StyledInputWrapper\n $disabled={disabled}\n $size={size}\n $invalid={invalid}\n ref={comboBoxRef}\n css={`\n display: flex;\n justify-content: space-between;\n flex: 1;\n height: ${autoSize === \"auto\" ? \"auto\" : undefined};\n overflow-y: ${autoSize === \"auto\" && scrollWrapper\n ? \"scroll\"\n : undefined};\n max-height: ${autoSize === \"auto\" && scrollWrapper\n ? \"80px\"\n : undefined};\n `}\n className={classNames(\n \"c-combo-box-input-wrapper\",\n inputWrapperClassName\n )}\n onClick={() => {\n elementRef.current?.click();\n }}\n >\n <StyledChipWrapper\n $autoSize={autoSize}\n $open={open}\n ref={chipWrapper}\n >\n {startAdornment}\n <StyledInput\n className=\"c-combo-box-input\"\n onBlur={handleBlur}\n onFocus={() => {\n setFocused(!focused);\n }}\n onClick={onOpen}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={!hasSelected ? placeholder : undefined}\n disabled={disabled}\n $size={size}\n $loading={loading}\n style={{\n display: \"flex\",\n flex: 1,\n alignSelf: \"center\",\n width: autoSize === \"auto\" ? \"auto\" : \"100%\",\n }}\n />\n </StyledChipWrapper>\n {!disabled && (\n <>\n {loading ? (\n <SpinnerLoader />\n ) : (\n <>\n {showXIcon && (\n <Trigger\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n data-testid=\"deselect-all\"\n css={`\n display: flex;\n justify-content: center;\n `}\n >\n <StyledComboBoxCloseSmallIcon />\n </Trigger>\n )}\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n </>\n )}\n </>\n )}\n </StyledInputWrapper>\n </>\n ) : (\n <StyledComboBoxInput\n className={classNames(\"c-combo-box-input\", inputWrapperClassName)}\n onBlur={handleBlur}\n wrapperClick={onOpen}\n onFocus={() => {\n setFocused(!focused);\n }}\n onClick={onOpen}\n wrapRef={comboBoxRef}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={placeholder}\n disabled={disabled}\n size={size}\n invalid={invalid}\n $loading={loading}\n startAdornment={startAdornment}\n endAdornment={\n !disabled ? (\n <InputAdornment disablePointerEvents={disabled}>\n {loading ? (\n <SpinnerLoader />\n ) : selected ? (\n <IconButton\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n variant=\"text gray\"\n size=\"small\"\n >\n <StyledComboBoxCloseSmallIcon />\n </IconButton>\n ) : null}\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n </InputAdornment>\n ) : null\n }\n />\n )}\n\n {!disabled ? (\n <ConditionalWrapper\n condition={inPortal}\n wrap={(children) => <Portal>{children}</Portal>}\n >\n <Popper\n anchorEl={comboBoxRef.current}\n open={open}\n placement=\"bottom\"\n style={{\n zIndex: 10,\n width: comboBoxRef.current?.clientWidth,\n }}\n ref={wrapperRef}\n strategy=\"fixed\"\n >\n <RemoveScroll noIsolation allowPinchZoom>\n <StyledComboBoxList $width={comboBoxRef.current?.clientWidth}>\n <Autocomplete\n {...prop}\n inputEl={childNode}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n type={type}\n handleEmptyAction={emptyAction}\n />\n </StyledComboBoxList>\n </RemoveScroll>\n </Popper>\n </ConditionalWrapper>\n ) : null}\n </div>\n );\n};\n\nComboBox.displayName = \"ComboBox\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"ComboBox.js","names":["_react","_interopRequireWildcard","require","_reactRemoveScroll","_classnames","_interopRequireDefault","_Styles","_helpers","_ConditionWrapper","_useIsFirstRender","_useOnClickOutside","_useForkRef","_Autocomplete","_Autocomplete2","_Avatar","_Checkbox","_Chip","_IconButton","_InputAdornment","_Styles2","_SpinnerLoader","_MultiAvatar","_Popper","_RadioButton","_OptionContent","_Trigger","_Typography","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ComboBox","_ref","options","selected","loading","loadingText","onChange","placeholder","handleEmptyAction","disabled","size","invalid","type","renderChip","forceCloseMenu","renderOption","limitChips","hiddenNumberText","inPortal","inputWrapperClassName","scrollWrapper","onClose","onClear","onDeselect","defaultValue","prop","selectedName","useMemo","value","map","v","find","q","id","name","setValue","useState","focused","setFocused","handleOnChange","useCallback","target","childNode","useRef","elementRef","handleRef","useForkRef","wrapperRef","chipWrapper","comboBoxRef","open","setOpen","isFirstRender","useIsFirstRender","useOnClickOutside","current","contains","handleOnKeyDown","key","stopPropagation","useEffect","focus","blur","emptyAction","handleChange","selectedValue","onOpen","handleRenderOption","option","props","createElement","Fragment","OptionContent","imageUrl","image","color","textColor","Checkbox","RadioButton","handleDeselect","handleMouseDown","preventDefault","handleBlur","renderChipAdornment","index","avatarProps","leftAdornment","_StyledAvatar","_extends2","url","$_css","$_css2","undefined","Array","isArray","includes","newSelected","filter","item","showOnClose","Chip","className","label","backgroundColor","chipColor","variant","autoSize","length","startAdornment","elements","total","forEach","isGrouped","isOptionGroup","push","groupedOptions","o","_index","hidden","splice","_StyledTypography","optionItem","child","avatarSize","MultiAvatar","Avatar","showXIcon","hasSelected","showMenu","Boolean","Number","_StyledStyledInputWrapper","$disabled","$size","$invalid","ref","classNames","onClick","click","$_css3","$_css4","$_css5","StyledChipWrapper","$autoSize","$open","StyledInput","onBlur","onFocus","onKeyDown","$loading","style","display","flex","alignSelf","width","SpinnerLoader","_StyledTrigger","onMouseDown","StyledComboBoxCloseSmallIcon","StyledComboBoxCollapseExpandSingleIcon","StyledComboBoxInput","wrapperClick","wrapRef","endAdornment","InputAdornment","disablePointerEvents","IconButton","ConditionalWrapper","condition","wrap","children","Portal","Popper","anchorEl","placement","zIndex","clientWidth","strategy","RemoveScroll","noIsolation","allowPinchZoom","StyledComboBoxList","$width","$hide","Autocomplete","inputEl","exports","displayName","_styledComponents","withConfig","componentId","p","Typography","StyledInputWrapper","Trigger"],"sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\nimport { RemoveScroll } from \"react-remove-scroll\";\n\nimport classNames from \"classnames\";\nimport tw from \"twin.macro\";\n\nimport {\n StyledComboBoxCloseSmallIcon,\n StyledComboBoxCollapseExpandSingleIcon,\n StyledComboBoxInput,\n StyledComboBoxList,\n StyledChipWrapper,\n} from \"./Styles\";\nimport { Portal } from \"../../helpers\";\nimport { ConditionalWrapper } from \"../../helpers/ConditionWrapper/ConditionWrapper\";\nimport { useIsFirstRender } from \"../../hooks/useIsFirstRender\";\nimport { useOnClickOutside } from \"../../hooks/useOnClickOutside\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Autocomplete } from \"../Autocomplete\";\nimport {\n IAutocompleteProps,\n isOptionGroup,\n} from \"../Autocomplete/Autocomplete\";\nimport { Avatar, AvatarProps } from \"../Avatar\";\nimport { Checkbox } from \"../Checkbox\";\nimport { Chip } from \"../Chip\";\nimport { IconButton } from \"../IconButton\";\nimport { InputAdornment } from \"../Input/InputAdornment\";\nimport { StyledInput, StyledInputWrapper } from \"../Input/Styles\";\nimport { InputSize } from \"../Input/types\";\nimport { SpinnerLoader } from \"../Loaders/Spinner/SpinnerLoader\";\nimport { MultiAvatar } from \"../MultiAvatar\";\nimport { Popper } from \"../Popper\";\nimport { RadioButton } from \"../RadioButton\";\nimport { IOptionGroupProps, IOptionItemProps } from \"../Select\";\nimport { OptionContent } from \"../Select/OptionContent/OptionContent\";\nimport { Trigger } from \"../Trigger\";\nimport { Typography } from \"../Typography/Typography\";\n\nexport interface IComboBoxProps\n extends Omit<\n IAutocompleteProps,\n \"handleChange\" | \"inputEl\" | \"clearInputOnSelect\"\n > {\n /** Set combobox in to loading state */\n loading?: boolean;\n /** Text to display while in loading state */\n loadingText?: string;\n /** onChange callback */\n onChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** disable Input element */\n disabled?: boolean;\n /** Combobox size */\n size?: InputSize;\n /** Invalid state */\n invalid?: boolean;\n /** Render Chip */\n renderChip?: <T extends IOptionItemProps>(\n item: T,\n key?: string | number\n ) => JSX.Element;\n /** Close menu on change */\n forceCloseMenu?: boolean;\n /** Limit chips */\n limitChips?: number;\n /** Hidden number text */\n hiddenNumberText?: (hidden: number) => string;\n /** Render Autocomplete in <Portal> */\n inPortal?: boolean;\n /** inputWrapperClassName */\n inputWrapperClassName?: string;\n /** scrollWrapper */\n scrollWrapper?: boolean;\n /** onClose (f) will be called when Popper close */\n onClose?: () => void;\n /** onClear (f) will be called when user clear input on X icon*/\n onClear?: () => void;\n onDeselect?: () => void;\n}\n\nexport const ComboBox: FC<IComboBoxProps> = ({\n options = [],\n selected,\n loading = false,\n loadingText,\n onChange,\n placeholder,\n handleEmptyAction,\n disabled = false,\n size = \"regular\",\n invalid = false,\n type = \"single\",\n renderChip,\n forceCloseMenu = type === \"single\",\n renderOption,\n limitChips = 2,\n hiddenNumberText,\n inPortal = false,\n inputWrapperClassName,\n scrollWrapper,\n onClose,\n onClear,\n onDeselect,\n defaultValue,\n ...prop\n}) => {\n const selectedName = useMemo(() => {\n let value = \"\";\n if (!selected) {\n return value;\n }\n options.map((v) => {\n if ((v as IOptionGroupProps)?.options) {\n return (v as IOptionGroupProps).options.find((q) => {\n if (q.id === selected) {\n value = q.name;\n return;\n }\n });\n } else {\n if (v.id === selected) {\n value = v.name;\n return;\n }\n }\n });\n return value;\n }, [options, selected]);\n const [value, setValue] = useState(selectedName);\n const [focused, setFocused] = useState<boolean>(false);\n const handleOnChange = useCallback((e) => setValue(e.target.value), []);\n const childNode = useRef<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(childNode, elementRef);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const chipWrapper = useRef<HTMLDivElement>(null);\n const comboBoxRef = useRef<HTMLDivElement | null>(null);\n\n const [open, setOpen] = useState(false);\n const isFirstRender = useIsFirstRender();\n\n useOnClickOutside(wrapperRef, (e) => {\n if (e.target && comboBoxRef.current?.contains(e.target as Node)) {\n return;\n }\n setOpen(false);\n });\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Escape\" && open) {\n setOpen(false);\n setValue(selectedName);\n e.stopPropagation();\n }\n\n if (e.key === \"Enter\" && type === \"multiple\") {\n setValue(\"\");\n }\n\n if (e.key === \"Enter\" && !open && focused) {\n setOpen(true);\n }\n },\n [focused, open, selectedName, type]\n );\n\n useEffect(() => {\n open && childNode?.current?.focus();\n !open && childNode?.current?.blur();\n }, [childNode, open]);\n\n useEffect(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n useEffect(() => {\n if (!open && !isFirstRender && !focused) {\n if (typeof onClose === \"function\") {\n onClose();\n }\n }\n }, [focused, isFirstRender, onClose, open]);\n\n const emptyAction = useCallback(\n (v) => {\n handleEmptyAction?.(v);\n setOpen(false);\n },\n [handleEmptyAction]\n );\n\n const handleChange = useCallback(\n (selectedValue) => {\n if (selectedValue !== selected && typeof onChange === \"function\") {\n onChange(selectedValue);\n }\n if (forceCloseMenu) {\n setOpen(false);\n }\n },\n [forceCloseMenu, onChange, selected]\n );\n\n const onOpen = useCallback(() => {\n if (!disabled) {\n setOpen(true);\n }\n }, [disabled]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n if (type === \"multiple\") {\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <Checkbox {...props} />\n </>\n );\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <RadioButton {...props} />\n </>\n );\n },\n [type, renderOption]\n );\n\n const handleDeselect = useCallback(\n (e) => {\n e.stopPropagation();\n if (typeof onDeselect === \"function\") {\n onDeselect();\n } else if (type === \"multiple\") {\n onChange?.([]);\n } else {\n onChange?.(\"\");\n }\n\n onClear?.();\n setOpen(false);\n },\n [type, onChange, onClear, onDeselect]\n );\n\n const handleMouseDown = useCallback((e) => {\n e.preventDefault();\n }, []);\n\n const handleBlur = useCallback(() => {\n setValue(selectedName);\n setFocused(!focused);\n }, [focused, selectedName]);\n\n const renderChipAdornment = useCallback(\n (option, index) => {\n if (typeof renderChip === \"function\") {\n return renderChip(option, index);\n }\n const avatarProps: Partial<AvatarProps> = {\n size: 18,\n };\n switch (size) {\n case \"big\":\n avatarProps.size = 22;\n break;\n case \"small\":\n avatarProps.size = 14;\n break;\n }\n const leftAdornment = option.image ? (\n <Avatar\n css={`\n ${tw`tw-my-0.5`}\n ${tw`tw-mr-0.5`}\n `}\n url={option.image}\n {...avatarProps}\n />\n ) : undefined;\n\n const onClose = (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (Array.isArray(selected) && selected.includes(option.id)) {\n if (typeof onChange === \"function\") {\n const newSelected = selected.filter((item) => item !== option.id);\n onChange(newSelected);\n }\n }\n };\n\n let showOnClose = true;\n if (disabled) {\n showOnClose = false;\n }\n if (option.color) {\n showOnClose = false;\n }\n\n return (\n <Chip\n className=\"c-combo-box-chip\"\n leftAdornment={leftAdornment}\n label={option.name}\n key={index}\n backgroundColor={option.color}\n color={option.chipColor}\n onClose={showOnClose ? onClose : undefined}\n size={size}\n variant=\"Caption 1\"\n />\n );\n },\n [disabled, onChange, renderChip, selected, size]\n );\n\n const autoSize = useMemo(() => {\n if (\n type === \"multiple\" &&\n open &&\n Array.isArray(selected) &&\n selected.length > 1\n ) {\n return \"auto\";\n }\n return size;\n }, [open, selected, size, type]);\n\n const startAdornment = useMemo(() => {\n if (type === \"multiple\" && Array.isArray(selected) && selected.length > 0) {\n const elements: JSX.Element[] = [];\n let total = 0;\n options.forEach((option, index) => {\n const isGrouped = isOptionGroup(option);\n if (selected.includes(option.id) && !isGrouped) {\n total = total + 1;\n elements.push(renderChipAdornment(option, index));\n } else if (isGrouped) {\n const groupedOptions = option.options.filter((o) =>\n selected.includes(o.id)\n );\n total = total + groupedOptions.length;\n if (groupedOptions.length > 0) {\n groupedOptions.forEach((o, _index) => {\n elements.push(renderChipAdornment(o, `${index}_${_index}`));\n });\n }\n }\n });\n let hidden = 0;\n if (!open && limitChips > 0 && elements.length > limitChips) {\n hidden = elements.splice(\n limitChips,\n elements.length - limitChips\n ).length;\n }\n\n return (\n <Fragment>\n {elements}\n {hidden > 0 && (\n <Typography\n variant={\n size === \"small\"\n ? \"Caption 1\"\n : size === \"regular\"\n ? \"Body 2\"\n : \"Body 1\"\n }\n css={`\n display: flex;\n flex-shrink: 0;\n align-items: center;\n `}\n >\n {typeof hiddenNumberText === \"function\"\n ? hiddenNumberText(hidden)\n : `+${hidden}`}\n </Typography>\n )}\n </Fragment>\n );\n }\n if (type === \"single\" && selected) {\n let optionItem;\n options.forEach((option) => {\n if (isOptionGroup(option)) {\n optionItem = option.options.find((child) => child.id === selected);\n } else if (!optionItem && option.id === selected) {\n optionItem = option;\n }\n });\n if (optionItem && optionItem.image) {\n const avatarSize = size === \"big\" ? 22 : size === \"regular\" ? 18 : 14;\n if (Array.isArray(optionItem.image)) {\n return <MultiAvatar url={optionItem.image} size={avatarSize} />;\n }\n return <Avatar url={optionItem.image} size={avatarSize} />;\n }\n }\n\n return undefined;\n }, [\n type,\n selected,\n options,\n open,\n limitChips,\n hiddenNumberText,\n renderChipAdornment,\n size,\n ]);\n\n const showXIcon =\n Array.isArray(selected) && type === \"multiple\" && selected.length > 0;\n\n const hasSelected =\n type === \"multiple\" && Array.isArray(selected) && selected.length > 0;\n\n const showMenu = useMemo(\n () => Boolean(options.length || defaultValue || Number(value.length) > 0),\n [defaultValue, options.length, value]\n );\n\n return (\n <div className=\"c-combo-box\">\n {type === \"multiple\" ? (\n <>\n <StyledInputWrapper\n $disabled={disabled}\n $size={size}\n $invalid={invalid}\n ref={comboBoxRef}\n css={`\n display: flex;\n justify-content: space-between;\n flex: 1;\n height: ${autoSize === \"auto\" ? \"auto\" : undefined};\n overflow-y: ${autoSize === \"auto\" && scrollWrapper\n ? \"scroll\"\n : undefined};\n max-height: ${autoSize === \"auto\" && scrollWrapper\n ? \"80px\"\n : undefined};\n `}\n className={classNames(\n \"c-combo-box-input-wrapper\",\n inputWrapperClassName\n )}\n onClick={() => {\n elementRef.current?.click();\n }}\n >\n <StyledChipWrapper\n $autoSize={autoSize}\n $open={open}\n ref={chipWrapper}\n >\n {startAdornment}\n <StyledInput\n className=\"c-combo-box-input\"\n onBlur={handleBlur}\n onFocus={() => {\n setFocused(!focused);\n }}\n onClick={onOpen}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={!hasSelected ? placeholder : undefined}\n disabled={disabled}\n $size={size}\n $loading={loading}\n style={{\n display: \"flex\",\n flex: 1,\n alignSelf: \"center\",\n width: autoSize === \"auto\" ? \"auto\" : \"100%\",\n }}\n />\n </StyledChipWrapper>\n {!disabled && (\n <>\n {loading ? (\n <SpinnerLoader />\n ) : (\n <>\n {showXIcon && (\n <Trigger\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n data-testid=\"deselect-all\"\n css={`\n display: flex;\n justify-content: center;\n `}\n >\n <StyledComboBoxCloseSmallIcon />\n </Trigger>\n )}\n {showMenu && (\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n )}\n </>\n )}\n </>\n )}\n </StyledInputWrapper>\n </>\n ) : (\n <StyledComboBoxInput\n className={classNames(\"c-combo-box-input\", inputWrapperClassName)}\n onBlur={handleBlur}\n wrapperClick={onOpen}\n onFocus={() => {\n setFocused(!focused);\n onOpen();\n }}\n onClick={onOpen}\n wrapRef={comboBoxRef}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={placeholder}\n disabled={disabled}\n size={size}\n invalid={invalid}\n $loading={loading}\n startAdornment={startAdornment}\n endAdornment={\n !disabled ? (\n <InputAdornment disablePointerEvents={disabled}>\n {loading ? (\n <SpinnerLoader />\n ) : selected ? (\n <IconButton\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n variant=\"text gray\"\n size=\"small\"\n >\n <StyledComboBoxCloseSmallIcon />\n </IconButton>\n ) : null}\n {showMenu && (\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n )}\n </InputAdornment>\n ) : null\n }\n />\n )}\n {!disabled ? (\n <ConditionalWrapper\n condition={inPortal}\n wrap={(children) => <Portal>{children}</Portal>}\n >\n <Popper\n anchorEl={comboBoxRef.current}\n open={open}\n placement=\"bottom\"\n style={{\n zIndex: 10,\n width: comboBoxRef.current?.clientWidth,\n }}\n ref={wrapperRef}\n strategy=\"fixed\"\n >\n <RemoveScroll noIsolation allowPinchZoom>\n <StyledComboBoxList\n $width={comboBoxRef.current?.clientWidth}\n $hide={!showMenu}\n >\n <Autocomplete\n {...prop}\n inputEl={childNode}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n type={type}\n defaultValue={defaultValue}\n handleEmptyAction={emptyAction}\n />\n </StyledComboBoxList>\n </RemoveScroll>\n </Popper>\n </ConditionalWrapper>\n ) : null}\n </div>\n );\n};\n\nComboBox.displayName = \"ComboBox\";\n"],"mappings":"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"}
@@ -8,6 +8,7 @@ export declare const StyledComboBoxCollapseExpandSingleIcon: import("styled-comp
8
8
  export declare const StyledComboBoxCloseSmallIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<Omit<import("react").SVGProps<SVGSVGElement>, "ref"> & import("react").RefAttributes<SVGSVGElement>>, any, {}, never>;
9
9
  export declare const StyledComboBoxList: import("styled-components").StyledComponent<"div", any, {
10
10
  $width?: number | undefined;
11
+ $hide: boolean;
11
12
  }, never>;
12
13
  export declare const StyledChipWrapper: import("styled-components").StyledComponent<"div", any, {
13
14
  $autoSize: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../../src/components/ComboBox/Styles.ts"],"names":[],"mappings":";AAOA,eAAO,MAAM,mBAAmB;;SAI/B,CAAC;AASF,eAAO,MAAM,sCAAsC;;SAYlD,CAAC;AAKF,eAAO,MAAM,4BAA4B,6MAWxC,CAAC;AAIF,eAAO,MAAM,kBAAkB;;SAQ9B,CAAC;AAIF,eAAO,MAAM,iBAAiB;eACjB,MAAM;;SAqBlB,CAAC"}
1
+ {"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../../src/components/ComboBox/Styles.ts"],"names":[],"mappings":";AAOA,eAAO,MAAM,mBAAmB;;SAI/B,CAAC;AASF,eAAO,MAAM,sCAAsC;;SAYlD,CAAC;AAKF,eAAO,MAAM,4BAA4B,6MAWxC,CAAC;AAIF,eAAO,MAAM,kBAAkB;;WAEtB,OAAO;SAef,CAAC;AAIF,eAAO,MAAM,iBAAiB;eACjB,MAAM;;SAqBlB,CAAC"}
@@ -29,7 +29,12 @@ StyledComboBoxCloseSmallIcon.displayName = "StyledComboBoxCloseSmallIcon";
29
29
  const StyledComboBoxList = exports.StyledComboBoxList = _styledComponents.default.div.withConfig({
30
30
  displayName: "Styles__StyledComboBoxList",
31
31
  componentId: "sc-5qvkpb-3"
32
- })(["min-width:260px;background-color:var(--page-paper-main);border-radius:8px;border:1px solid var(--border-primary);box-shadow:var(--shadow-tertiary);margin:8px 0;width:", ";"], props => `${props.$width}px`);
32
+ })(["min-width:260px;background-color:var(--page-paper-main);border-radius:8px;border:1px solid var(--border-primary);box-shadow:var(--shadow-tertiary);margin:8px 0;width:", ";", ""], props => `${props.$width}px`, _ref => {
33
+ let {
34
+ $hide
35
+ } = _ref;
36
+ return $hide === true && (0, _styledComponents.css)(["display:none;"]);
37
+ });
33
38
  StyledComboBoxList.displayName = "StyledComboBoxList";
34
39
  const StyledChipWrapper = exports.StyledChipWrapper = _styledComponents.default.div.withConfig({
35
40
  displayName: "Styles__StyledChipWrapper",
@@ -40,24 +45,24 @@ const StyledChipWrapper = exports.StyledChipWrapper = _styledComponents.default.
40
45
  "gap": "0.25rem"
41
46
  }, {
42
47
  "flex": "1 1 0%"
43
- }, _ref => {
48
+ }, _ref2 => {
44
49
  let {
45
50
  $open
46
- } = _ref;
51
+ } = _ref2;
47
52
  return $open ? "auto" : "hidden";
48
- }, _ref2 => {
53
+ }, _ref3 => {
49
54
  let {
50
55
  $autoSize
51
- } = _ref2;
56
+ } = _ref3;
52
57
  return $autoSize === "auto" && (0, _styledComponents.css)(["", ";", ";"], {
53
58
  "flexWrap": "wrap"
54
59
  }, {
55
60
  "width": "100%"
56
61
  });
57
- }, _ref3 => {
62
+ }, _ref4 => {
58
63
  let {
59
64
  $autoSize
60
- } = _ref3;
65
+ } = _ref4;
61
66
  return $autoSize !== "auto" && (0, _styledComponents.css)(["align-items:center;"]);
62
67
  });
63
68
  StyledChipWrapper.displayName = "StyledChipWrapper";
@@ -1 +1 @@
1
- {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireWildcard","require","_collection","_Input","_Styles","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","StyledComboBoxInput","exports","styled","Input","withConfig","displayName","componentId","StyledIconDefaults","css","StyledComboBoxCollapseExpandSingleIcon","CollapseExpandSingleIcon","props","$open","StyledComboBoxCloseSmallIcon","CloseSmallIcon","StyledInputWrapper","StyledComboBoxList","div","$width","StyledChipWrapper","_ref","_ref2","$autoSize","_ref3"],"sources":["../../../../src/components/ComboBox/Styles.ts"],"sourcesContent":["import styled, { css } from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { CollapseExpandSingleIcon, CloseSmallIcon } from \"../Icons/collection\";\nimport { Input } from \"../Input\";\nimport { StyledInputWrapper } from \"../Input/Styles\";\n\nexport const StyledComboBoxInput = styled(Input)<{ $loading?: boolean }>`\n overflow: hidden;\n text-overflow: ellipsis;\n width: 100%;\n`;\n\nStyledComboBoxInput.displayName = \"StyledComboBoxInput\";\n\nconst StyledIconDefaults = css`\n flex-shrink: 0;\n cursor: pointer;\n`;\n\nexport const StyledComboBoxCollapseExpandSingleIcon = styled(\n CollapseExpandSingleIcon\n)<{ $open?: boolean }>`\n ${StyledIconDefaults};\n color: var(--color-theme-600);\n transform: rotate(180deg);\n\n ${(props) =>\n props.$open &&\n css`\n transform: rotate(0deg);\n `}\n`;\n\nStyledComboBoxCollapseExpandSingleIcon.displayName =\n \"StyledComboBoxCollapseExpandSingleIcon\";\n\nexport const StyledComboBoxCloseSmallIcon = styled(CloseSmallIcon)`\n ${StyledIconDefaults};\n opacity: 0;\n transition-property: all;\n transition-duration: 0.2s;\n transition-delay: 0.5s;\n\n ${StyledComboBoxInput}:hover, ${StyledInputWrapper}:hover & {\n opacity: 1;\n transition-delay: 0s;\n }\n`;\n\nStyledComboBoxCloseSmallIcon.displayName = \"StyledComboBoxCloseSmallIcon\";\n\nexport const StyledComboBoxList = styled.div<{ $width?: number }>`\n min-width: 260px;\n background-color: var(--page-paper-main);\n border-radius: 8px;\n border: 1px solid var(--border-primary);\n box-shadow: var(--shadow-tertiary);\n margin: 8px 0;\n width: ${(props) => `${props.$width}px`};\n`;\n\nStyledComboBoxList.displayName = \"StyledComboBoxList\";\n\nexport const StyledChipWrapper = styled.div<{\n $autoSize: string;\n $open?: boolean;\n}>`\n ${tw`tw-flex`};\n ${tw`tw-gap-1`};\n ${tw`tw-flex-1`};\n\n overflow: ${({ $open }) => ($open ? \"auto\" : \"hidden\")};\n\n ${({ $autoSize }) =>\n $autoSize === \"auto\" &&\n css`\n ${tw`tw-flex-wrap`};\n ${tw`tw-w-full`};\n `}\n\n ${({ $autoSize }) =>\n $autoSize !== \"auto\" &&\n css`\n align-items: center;\n `}\n`;\nStyledChipWrapper.displayName = \"StyledChipWrapper\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireWildcard","require","_collection","_Input","_Styles","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","StyledComboBoxInput","exports","styled","Input","withConfig","displayName","componentId","StyledIconDefaults","css","StyledComboBoxCollapseExpandSingleIcon","CollapseExpandSingleIcon","props","$open","StyledComboBoxCloseSmallIcon","CloseSmallIcon","StyledInputWrapper","StyledComboBoxList","div","$width","_ref","$hide","StyledChipWrapper","_ref2","_ref3","$autoSize","_ref4"],"sources":["../../../../src/components/ComboBox/Styles.ts"],"sourcesContent":["import styled, { css } from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { CollapseExpandSingleIcon, CloseSmallIcon } from \"../Icons/collection\";\nimport { Input } from \"../Input\";\nimport { StyledInputWrapper } from \"../Input/Styles\";\n\nexport const StyledComboBoxInput = styled(Input)<{ $loading?: boolean }>`\n overflow: hidden;\n text-overflow: ellipsis;\n width: 100%;\n`;\n\nStyledComboBoxInput.displayName = \"StyledComboBoxInput\";\n\nconst StyledIconDefaults = css`\n flex-shrink: 0;\n cursor: pointer;\n`;\n\nexport const StyledComboBoxCollapseExpandSingleIcon = styled(\n CollapseExpandSingleIcon\n)<{ $open?: boolean }>`\n ${StyledIconDefaults};\n color: var(--color-theme-600);\n transform: rotate(180deg);\n\n ${(props) =>\n props.$open &&\n css`\n transform: rotate(0deg);\n `}\n`;\n\nStyledComboBoxCollapseExpandSingleIcon.displayName =\n \"StyledComboBoxCollapseExpandSingleIcon\";\n\nexport const StyledComboBoxCloseSmallIcon = styled(CloseSmallIcon)`\n ${StyledIconDefaults};\n opacity: 0;\n transition-property: all;\n transition-duration: 0.2s;\n transition-delay: 0.5s;\n\n ${StyledComboBoxInput}:hover, ${StyledInputWrapper}:hover & {\n opacity: 1;\n transition-delay: 0s;\n }\n`;\n\nStyledComboBoxCloseSmallIcon.displayName = \"StyledComboBoxCloseSmallIcon\";\n\nexport const StyledComboBoxList = styled.div<{\n $width?: number;\n $hide: boolean;\n}>`\n min-width: 260px;\n background-color: var(--page-paper-main);\n border-radius: 8px;\n border: 1px solid var(--border-primary);\n box-shadow: var(--shadow-tertiary);\n margin: 8px 0;\n width: ${(props) => `${props.$width}px`};\n\n ${({ $hide }) =>\n $hide === true &&\n css`\n display: none;\n `}\n`;\n\nStyledComboBoxList.displayName = \"StyledComboBoxList\";\n\nexport const StyledChipWrapper = styled.div<{\n $autoSize: string;\n $open?: boolean;\n}>`\n ${tw`tw-flex`};\n ${tw`tw-gap-1`};\n ${tw`tw-flex-1`};\n\n overflow: ${({ $open }) => ($open ? \"auto\" : \"hidden\")};\n\n ${({ $autoSize }) =>\n $autoSize === \"auto\" &&\n css`\n ${tw`tw-flex-wrap`};\n ${tw`tw-w-full`};\n `}\n\n ${({ $autoSize }) =>\n $autoSize !== \"auto\" &&\n css`\n align-items: center;\n `}\n`;\nStyledChipWrapper.displayName = \"StyledChipWrapper\";\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,uBAAA,CAAAC,OAAA;AAGA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAAqD,SAAAI,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAE9C,MAAMY,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAAE,yBAAM,EAACC,YAAK,CAAC,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,0DAI/C;AAEDN,mBAAmB,CAACK,WAAW,GAAG,qBAAqB;AAEvD,MAAME,kBAAkB,OAAGC,qBAAG,oCAG7B;AAEM,MAAMC,sCAAsC,GAAAR,OAAA,CAAAQ,sCAAA,GAAG,IAAAP,yBAAM,EAC1DQ,oCACF,CAAC,CAAAN,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,wEACGC,kBAAkB,EAIjBI,KAAK,IACNA,KAAK,CAACC,KAAK,QACXJ,qBAAG,8BAEF,CACJ;AAEDC,sCAAsC,CAACJ,WAAW,GAChD,wCAAwC;AAEnC,MAAMQ,4BAA4B,GAAAZ,OAAA,CAAAY,4BAAA,GAAG,IAAAX,yBAAM,EAACY,0BAAc,CAAC,CAAAV,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,sJAC9DC,kBAAkB,EAMlBP,mBAAmB,EAAWe,0BAAkB,CAInD;AAEDF,4BAA4B,CAACR,WAAW,GAAG,8BAA8B;AAElE,MAAMW,kBAAkB,GAAAf,OAAA,CAAAe,kBAAA,GAAGd,yBAAM,CAACe,GAAG,CAAAb,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,wLAUhCK,KAAK,IAAM,GAAEA,KAAK,CAACO,MAAO,IAAG,EAErCC,IAAA;EAAA,IAAC;IAAEC;EAAM,CAAC,GAAAD,IAAA;EAAA,OACVC,KAAK,KAAK,IAAI,QACdZ,qBAAG,oBAEF;AAAA,EACJ;AAEDQ,kBAAkB,CAACX,WAAW,GAAG,oBAAoB;AAE9C,MAAMgB,iBAAiB,GAAApB,OAAA,CAAAoB,iBAAA,GAAGnB,yBAAM,CAACe,GAAG,CAAAb,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,+CAIrC;EAAA;AAAQ,CAAC,EACT;EAAA;AAAS,CAAC,EACV;EAAA;AAAU,CAAC,EAEHgB,KAAA;EAAA,IAAC;IAAEV;EAAM,CAAC,GAAAU,KAAA;EAAA,OAAMV,KAAK,GAAG,MAAM,GAAG,QAAQ;AAAA,CAAC,EAEpDW,KAAA;EAAA,IAAC;IAAEC;EAAU,CAAC,GAAAD,KAAA;EAAA,OACdC,SAAS,KAAK,MAAM,QACpBhB,qBAAG,kBACG;IAAA;EAAa,CAAC,EACd;IAAA;EAAU,CAAC,CAChB;AAAA,GAEDiB,KAAA;EAAA,IAAC;IAAED;EAAU,CAAC,GAAAC,KAAA;EAAA,OACdD,SAAS,KAAK,MAAM,QACpBhB,qBAAG,0BAEF;AAAA,EACJ;AACDa,iBAAiB,CAAChB,WAAW,GAAG,mBAAmB"}
package/dist/index.js CHANGED
@@ -15708,8 +15708,11 @@
15708
15708
  var StyledComboBoxList = styled__default["default"].div.withConfig({
15709
15709
  displayName: "Styles__StyledComboBoxList",
15710
15710
  componentId: "sc-5qvkpb-3"
15711
- })(["min-width:260px;background-color:var(--page-paper-main);border-radius:8px;border:1px solid var(--border-primary);box-shadow:var(--shadow-tertiary);margin:8px 0;width:", ";"], function (props) {
15711
+ })(["min-width:260px;background-color:var(--page-paper-main);border-radius:8px;border:1px solid var(--border-primary);box-shadow:var(--shadow-tertiary);margin:8px 0;width:", ";", ""], function (props) {
15712
15712
  return `${props.$width}px`;
15713
+ }, function (_ref) {
15714
+ var $hide = _ref.$hide;
15715
+ return $hide === true && styled.css(["display:none;"]);
15713
15716
  });
15714
15717
  StyledComboBoxList.displayName = "StyledComboBoxList";
15715
15718
  var StyledChipWrapper = styled__default["default"].div.withConfig({
@@ -15721,18 +15724,18 @@
15721
15724
  "gap": "0.25rem"
15722
15725
  }, {
15723
15726
  "flex": "1 1 0%"
15724
- }, function (_ref) {
15725
- var $open = _ref.$open;
15726
- return $open ? "auto" : "hidden";
15727
15727
  }, function (_ref2) {
15728
- var $autoSize = _ref2.$autoSize;
15728
+ var $open = _ref2.$open;
15729
+ return $open ? "auto" : "hidden";
15730
+ }, function (_ref3) {
15731
+ var $autoSize = _ref3.$autoSize;
15729
15732
  return $autoSize === "auto" && styled.css(["", ";", ";"], {
15730
15733
  "flexWrap": "wrap"
15731
15734
  }, {
15732
15735
  "width": "100%"
15733
15736
  });
15734
- }, function (_ref3) {
15735
- var $autoSize = _ref3.$autoSize;
15737
+ }, function (_ref4) {
15738
+ var $autoSize = _ref4.$autoSize;
15736
15739
  return $autoSize !== "auto" && styled.css(["align-items:center;"]);
15737
15740
  });
15738
15741
  StyledChipWrapper.displayName = "StyledChipWrapper";
@@ -15867,7 +15870,7 @@
15867
15870
  });
15868
15871
  Chip.displayName = "Chip";
15869
15872
 
15870
- var _excluded$j = ["options", "selected", "loading", "loadingText", "onChange", "placeholder", "handleEmptyAction", "disabled", "size", "invalid", "type", "renderChip", "forceCloseMenu", "renderOption", "limitChips", "hiddenNumberText", "inPortal", "inputWrapperClassName", "scrollWrapper", "onClose", "onClear", "onDeselect"];
15873
+ var _excluded$j = ["options", "selected", "loading", "loadingText", "onChange", "placeholder", "handleEmptyAction", "disabled", "size", "invalid", "type", "renderChip", "forceCloseMenu", "renderOption", "limitChips", "hiddenNumberText", "inPortal", "inputWrapperClassName", "scrollWrapper", "onClose", "onClear", "onDeselect", "defaultValue"];
15871
15874
  var ComboBox = function ComboBox(_ref) {
15872
15875
  var _comboBoxRef$current2, _comboBoxRef$current3;
15873
15876
  var _ref$options = _ref.options,
@@ -15901,6 +15904,7 @@
15901
15904
  onClose = _ref.onClose,
15902
15905
  onClear = _ref.onClear,
15903
15906
  onDeselect = _ref.onDeselect,
15907
+ defaultValue = _ref.defaultValue,
15904
15908
  prop = _objectWithoutProperties(_ref, _excluded$j);
15905
15909
  var selectedName = React.useMemo(function () {
15906
15910
  var value = "";
@@ -16157,6 +16161,9 @@
16157
16161
  }, [type, selected, options, open, limitChips, hiddenNumberText, renderChipAdornment, size]);
16158
16162
  var showXIcon = Array.isArray(selected) && type === "multiple" && selected.length > 0;
16159
16163
  var hasSelected = type === "multiple" && Array.isArray(selected) && selected.length > 0;
16164
+ var showMenu = React.useMemo(function () {
16165
+ return Boolean(options.length || defaultValue || Number(value.length) > 0);
16166
+ }, [defaultValue, options.length, value]);
16160
16167
  return /*#__PURE__*/React__default["default"].createElement("div", {
16161
16168
  className: "c-combo-box"
16162
16169
  }, type === "multiple" ? /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(_StyledStyledInputWrapper, {
@@ -16201,7 +16208,7 @@
16201
16208
  onMouseDown: handleMouseDown,
16202
16209
  onClick: handleDeselect,
16203
16210
  "data-testid": "deselect-all"
16204
- }, /*#__PURE__*/React__default["default"].createElement(StyledComboBoxCloseSmallIcon, null)), /*#__PURE__*/React__default["default"].createElement(StyledComboBoxCollapseExpandSingleIcon, {
16211
+ }, /*#__PURE__*/React__default["default"].createElement(StyledComboBoxCloseSmallIcon, null)), showMenu && /*#__PURE__*/React__default["default"].createElement(StyledComboBoxCollapseExpandSingleIcon, {
16205
16212
  $open: open
16206
16213
  }))))) : /*#__PURE__*/React__default["default"].createElement(StyledComboBoxInput, {
16207
16214
  className: classNames__default["default"]("c-combo-box-input", inputWrapperClassName),
@@ -16209,6 +16216,7 @@
16209
16216
  wrapperClick: onOpen,
16210
16217
  onFocus: function onFocus() {
16211
16218
  setFocused(!focused);
16219
+ onOpen();
16212
16220
  },
16213
16221
  onClick: onOpen,
16214
16222
  wrapRef: comboBoxRef,
@@ -16229,7 +16237,7 @@
16229
16237
  onClick: handleDeselect,
16230
16238
  variant: "text gray",
16231
16239
  size: "small"
16232
- }, /*#__PURE__*/React__default["default"].createElement(StyledComboBoxCloseSmallIcon, null)) : null, /*#__PURE__*/React__default["default"].createElement(StyledComboBoxCollapseExpandSingleIcon, {
16240
+ }, /*#__PURE__*/React__default["default"].createElement(StyledComboBoxCloseSmallIcon, null)) : null, showMenu && /*#__PURE__*/React__default["default"].createElement(StyledComboBoxCollapseExpandSingleIcon, {
16233
16241
  $open: open
16234
16242
  })) : null
16235
16243
  }), !disabled ? /*#__PURE__*/React__default["default"].createElement(ConditionalWrapper, {
@@ -16251,7 +16259,8 @@
16251
16259
  noIsolation: true,
16252
16260
  allowPinchZoom: true
16253
16261
  }, /*#__PURE__*/React__default["default"].createElement(StyledComboBoxList, {
16254
- $width: (_comboBoxRef$current3 = comboBoxRef.current) === null || _comboBoxRef$current3 === void 0 ? void 0 : _comboBoxRef$current3.clientWidth
16262
+ $width: (_comboBoxRef$current3 = comboBoxRef.current) === null || _comboBoxRef$current3 === void 0 ? void 0 : _comboBoxRef$current3.clientWidth,
16263
+ $hide: !showMenu
16255
16264
  }, /*#__PURE__*/React__default["default"].createElement(Autocomplete, _extends({}, prop, {
16256
16265
  inputEl: childNode,
16257
16266
  selected: selected,
@@ -16259,6 +16268,7 @@
16259
16268
  renderOption: handleRenderOption,
16260
16269
  options: options,
16261
16270
  type: type,
16271
+ defaultValue: defaultValue,
16262
16272
  handleEmptyAction: emptyAction
16263
16273
  })))))) : null);
16264
16274
  };