@activecollab/components 2.0.279 → 2.0.281

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.
Files changed (32) hide show
  1. package/dist/cjs/components/ComboBox/ComboBox.js +30 -14
  2. package/dist/cjs/components/ComboBox/ComboBox.js.map +1 -1
  3. package/dist/cjs/components/Filter/Filter.js +45 -6
  4. package/dist/cjs/components/Filter/Filter.js.map +1 -1
  5. package/dist/cjs/components/Filter/InputSubmenu.js +59 -0
  6. package/dist/cjs/components/Filter/InputSubmenu.js.map +1 -0
  7. package/dist/cjs/components/Filter/StartMenu.js +3 -2
  8. package/dist/cjs/components/Filter/StartMenu.js.map +1 -1
  9. package/dist/cjs/components/Filter/Styles.js +28 -1
  10. package/dist/cjs/components/Filter/Styles.js.map +1 -1
  11. package/dist/esm/components/ComboBox/ComboBox.d.ts.map +1 -1
  12. package/dist/esm/components/ComboBox/ComboBox.js +30 -14
  13. package/dist/esm/components/ComboBox/ComboBox.js.map +1 -1
  14. package/dist/esm/components/Filter/Filter.d.ts +8 -0
  15. package/dist/esm/components/Filter/Filter.d.ts.map +1 -1
  16. package/dist/esm/components/Filter/Filter.js +40 -7
  17. package/dist/esm/components/Filter/Filter.js.map +1 -1
  18. package/dist/esm/components/Filter/InputSubmenu.d.ts +12 -0
  19. package/dist/esm/components/Filter/InputSubmenu.d.ts.map +1 -0
  20. package/dist/esm/components/Filter/InputSubmenu.js +43 -0
  21. package/dist/esm/components/Filter/InputSubmenu.js.map +1 -0
  22. package/dist/esm/components/Filter/StartMenu.js +3 -2
  23. package/dist/esm/components/Filter/StartMenu.js.map +1 -1
  24. package/dist/esm/components/Filter/Styles.d.ts +3 -0
  25. package/dist/esm/components/Filter/Styles.d.ts.map +1 -1
  26. package/dist/esm/components/Filter/Styles.js +27 -0
  27. package/dist/esm/components/Filter/Styles.js.map +1 -1
  28. package/dist/index.js +160 -36
  29. package/dist/index.js.map +1 -1
  30. package/dist/index.min.js +1 -1
  31. package/dist/index.min.js.map +1 -1
  32. package/package.json +1 -1
@@ -151,6 +151,9 @@ var ComboBox = exports.ComboBox = function ComboBox(_ref) {
151
151
  setOpen(false);
152
152
  });
153
153
  var handleOnKeyDown = (0, _react.useCallback)(function (e) {
154
+ if (e.key === "Tab" && open) {
155
+ setOpen(false);
156
+ }
154
157
  if (e.key === "Escape" && open) {
155
158
  setOpen(false);
156
159
  setValue(selectedName);
@@ -166,10 +169,10 @@ var ComboBox = exports.ComboBox = function ComboBox(_ref) {
166
169
  }
167
170
  }, [focused, onCancel, onOpen, open, selectedName, type]);
168
171
  (0, _react.useEffect)(function () {
169
- var _childNode$current, _childNode$current2;
170
- open && (childNode === null || childNode === void 0 || (_childNode$current = childNode.current) === null || _childNode$current === void 0 ? void 0 : _childNode$current.focus());
171
- !open && (childNode === null || childNode === void 0 || (_childNode$current2 = childNode.current) === null || _childNode$current2 === void 0 ? void 0 : _childNode$current2.blur());
172
- }, [childNode, open]);
172
+ if (!open && !isFirstRender) {
173
+ onClose === null || onClose === void 0 || onClose();
174
+ }
175
+ }, [open, onClose, isFirstRender]);
173
176
  (0, _react.useEffect)(function () {
174
177
  setValue(selectedName);
175
178
  }, [selectedName]);
@@ -236,10 +239,14 @@ var ComboBox = exports.ComboBox = function ComboBox(_ref) {
236
239
  var handleMouseDown = (0, _react.useCallback)(function (e) {
237
240
  e.preventDefault();
238
241
  }, []);
239
- var handleBlur = (0, _react.useCallback)(function () {
242
+ var handleBlur = (0, _react.useCallback)(function (e) {
243
+ var _wrapperRef$current;
244
+ if (e.relatedTarget && (_wrapperRef$current = wrapperRef.current) !== null && _wrapperRef$current !== void 0 && _wrapperRef$current.contains(e.relatedTarget)) {
245
+ return;
246
+ }
240
247
  setValue(selectedName);
241
- setFocused(!focused);
242
- }, [focused, selectedName]);
248
+ setFocused(false);
249
+ }, [selectedName]);
243
250
  var renderChipAdornment = (0, _react.useCallback)(function (option, index) {
244
251
  if (typeof renderChip === "function") {
245
252
  return renderChip(option, index);
@@ -393,8 +400,12 @@ var ComboBox = exports.ComboBox = function ComboBox(_ref) {
393
400
  }, startAdornment, /*#__PURE__*/_react.default.createElement(_Styles2.StyledInput, {
394
401
  className: "c-combo-box-input",
395
402
  onBlur: handleBlur,
396
- onFocus: function onFocus() {
397
- setFocused(!focused);
403
+ onFocus: function onFocus(e) {
404
+ if (e.target.matches(":focus-visible")) {
405
+ setOpen(true);
406
+ onOpen === null || onOpen === void 0 || onOpen();
407
+ }
408
+ setFocused(true);
398
409
  },
399
410
  onClick: handleOpen,
400
411
  ref: handleRef,
@@ -415,7 +426,8 @@ var ComboBox = exports.ComboBox = function ComboBox(_ref) {
415
426
  })), !disabled && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, loading ? /*#__PURE__*/_react.default.createElement(_SpinnerLoader.SpinnerLoader, null) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, showXIcon && /*#__PURE__*/_react.default.createElement(_StyledTrigger, {
416
427
  onMouseDown: handleMouseDown,
417
428
  onClick: handleDeselect,
418
- "data-testid": "deselect-all"
429
+ "data-testid": "deselect-all",
430
+ tabIndex: -1
419
431
  }, /*#__PURE__*/_react.default.createElement(_Styles.StyledComboBoxCloseSmallIcon, null)), invalid && errorMessage && /*#__PURE__*/_react.default.createElement(_Tooltip.Tooltip, {
420
432
  title: errorMessage
421
433
  }, size === "regular" ? /*#__PURE__*/_react.default.createElement(_Styles.StyledInfoSmallIcon, null) : /*#__PURE__*/_react.default.createElement(_Styles.StyledInfoIcon, null)), showMenu && /*#__PURE__*/_react.default.createElement(_Styles.StyledComboBoxCollapseExpandSingleIcon, {
@@ -424,9 +436,12 @@ var ComboBox = exports.ComboBox = function ComboBox(_ref) {
424
436
  className: (0, _classnames.default)("c-combo-box-input", inputWrapperClassName),
425
437
  onBlur: handleBlur,
426
438
  wrapperClick: handleOpen,
427
- onFocus: function onFocus() {
428
- setFocused(!focused);
429
- handleOpen();
439
+ onFocus: function onFocus(e) {
440
+ if (e.target.matches(":focus-visible")) {
441
+ setOpen(true);
442
+ onOpen === null || onOpen === void 0 || onOpen();
443
+ }
444
+ setFocused(true);
430
445
  },
431
446
  onClick: handleOpen,
432
447
  mode: triggerMode,
@@ -447,7 +462,8 @@ var ComboBox = exports.ComboBox = function ComboBox(_ref) {
447
462
  onMouseDown: handleMouseDown,
448
463
  onClick: handleDeselect,
449
464
  variant: "text gray",
450
- size: "small"
465
+ size: "small",
466
+ tabIndex: -1
451
467
  }, /*#__PURE__*/_react.default.createElement(_Styles.StyledComboBoxCloseSmallIcon, null)) : null, invalid && errorMessage && /*#__PURE__*/_react.default.createElement(_Tooltip.Tooltip, {
452
468
  title: errorMessage
453
469
  }, size === "regular" ? /*#__PURE__*/_react.default.createElement(_Styles.StyledInfoSmallIcon, null) : /*#__PURE__*/_react.default.createElement(_Styles.StyledInfoIcon, null)), showMenu && /*#__PURE__*/_react.default.createElement(_Styles.StyledComboBoxCollapseExpandSingleIcon, {
@@ -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","_Tooltip","_Trigger","_Typography","_templateObject","_templateObject2","_templateObject3","_templateObject4","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_taggedTemplateLiteral","slice","freeze","defineProperties","raw","value","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","constructor","name","Array","from","test","l","Symbol","iterator","u","next","done","push","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","sizeMap","small","regular","big","biggest","ComboBox","exports","_ref","_comboBoxRef$current2","_comboBoxRef$current3","_ref$options","options","selected","_ref$loading","loading","loadingText","onChange","onInputChange","placeholder","handleEmptyAction","_ref$disabled","disabled","_ref$size","size","_ref$invalid","invalid","_ref$type","type","renderChip","_ref$forceCloseMenu","forceCloseMenu","renderOption","_ref$limitChips","limitChips","hiddenNumberText","_ref$inPortal","inPortal","inputWrapperClassName","scrollWrapper","onClose","onClear","onDeselect","defaultValue","_ref$open","open","defaultOpen","onOpen","triggerMode","noResultText","emptyValue","disableVirtualization","_ref$hideClearButton","hideClearButton","errorMessage","onCancel","prop","selectedName","useMemo","map","v","find","q","id","_useState","useState","_useState2","setValue","_useState3","_useState4","focused","setFocused","handleOnChange","useCallback","target","childNode","useRef","elementRef","handleRef","useForkRef","wrapperRef","chipWrapper","comboBoxRef","_useState5","_useState6","setOpen","isFirstRender","useIsFirstRender","useOnClickOutside","_comboBoxRef$current","current","contains","handleOnKeyDown","key","stopPropagation","useEffect","_childNode$current","_childNode$current2","focus","blur","emptyAction","handleChange","selectedValue","handleOpen","handleRenderOption","option","props","createElement","Fragment","OptionContent","imageUrl","image","color","textColor","Checkbox","RadioButton","handleDeselect","handleMouseDown","preventDefault","handleBlur","renderChipAdornment","index","avatarProps","startAdornment","_StyledAvatar","url","$_css","$_css2","undefined","includes","newSelected","filter","item","showOnClose","Chip","className","label","backgroundColor","chipColor","autoSize","elements","total","forEach","isGrouped","isOptionGroup","groupedOptions","_index","concat","hidden","splice","_StyledTypography","variant","optionItem","child","avatarSize","MultiAvatar","Avatar","showXIcon","hasSelected","showMenu","hasOptions","valueExists","isValueInOptions","some","_StyledStyledInputWrapper","$disabled","$size","$invalid","ref","$mode","classNames","onClick","_elementRef$current","click","$_css3","$_css4","_StyledStyledChipWrapper","$autoSize","$open","$_css5","StyledInput","onBlur","onFocus","onKeyDown","$loading","style","display","flex","alignSelf","width","SpinnerLoader","_StyledTrigger","onMouseDown","StyledComboBoxCloseSmallIcon","Tooltip","title","StyledInfoSmallIcon","StyledInfoIcon","StyledComboBoxCollapseExpandSingleIcon","StyledComboBoxInput","wrapperClick","mode","wrapRef","endAdornment","InputAdornment","disablePointerEvents","IconButton","ConditionalWrapper","condition","wrap","children","Portal","Popper","anchorEl","placement","zIndex","clientWidth","strategy","RemoveScroll","noIsolation","allowPinchZoom","StyledComboBoxList","$width","$hide","Autocomplete","inputEl","displayName","_styledComponents","p","Typography","StyledInputWrapper","StyledChipWrapper","Trigger","withConfig","componentId"],"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 StyledInfoIcon,\n StyledInfoSmallIcon,\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 { InputMode, 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 { Tooltip } from \"../Tooltip\";\nimport { Trigger } from \"../Trigger\";\nimport { Typography } from \"../Typography/Typography\";\n\nconst sizeMap = {\n small: 18,\n regular: 24,\n big: 30,\n biggest: 40,\n};\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 /** onInputChange callback */\n onInputChange?: (text: string) => 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 closes */\n onClose?: () => void;\n /** onOpen (f) will be called when Popper opens */\n onOpen?: () => void;\n /** onClear (f) will be called when user clear input on X icon*/\n onClear?: () => void;\n onCancel?: (value?: string) => void;\n onDeselect?: () => void;\n /** Open state */\n open?: boolean;\n /** Trigger mode */\n triggerMode?: InputMode;\n /** Hide clear button */\n hideClearButton?: boolean;\n /** Error message to display */\n errorMessage?: string;\n}\n\nexport const ComboBox: FC<IComboBoxProps> = ({\n options = [],\n selected,\n loading = false,\n loadingText,\n onChange,\n onInputChange,\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 open: defaultOpen = false,\n onOpen,\n triggerMode,\n noResultText,\n emptyValue,\n disableVirtualization,\n hideClearButton = false,\n errorMessage,\n onCancel,\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(\n (e) => {\n setValue(e.target.value);\n onInputChange?.(e.target.value);\n },\n [onInputChange]\n );\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(defaultOpen);\n const isFirstRender = useIsFirstRender();\n\n useOnClickOutside(wrapperRef, (e) => {\n if (e.target && comboBoxRef.current?.contains(e.target as Node)) {\n return;\n }\n onCancel?.(selectedName);\n setOpen(false);\n });\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Escape\" && open) {\n setOpen(false);\n setValue(selectedName);\n onCancel?.(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 onOpen?.();\n }\n },\n [focused, onCancel, onOpen, 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 !== defaultOpen) setOpen(defaultOpen);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [defaultOpen]);\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 handleOpen = useCallback(() => {\n if (!disabled) {\n setOpen(true);\n onOpen?.();\n }\n }, [disabled, onOpen]);\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 startAdornment = 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 startAdornment={startAdornment}\n label={option.name}\n key={index}\n backgroundColor={option.color}\n color={option.chipColor}\n onClose={showOnClose ? onClose : undefined}\n size={size}\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) &&\n type === \"multiple\" &&\n selected.length > 0 &&\n !hideClearButton;\n\n const hasSelected =\n type === \"multiple\" && Array.isArray(selected) && selected.length > 0;\n\n const showMenu = useMemo(() => {\n const hasOptions = options?.length > 0;\n\n const valueExists = (option: IOptionItemProps) =>\n (option.id.toString().includes(value) || option.name.includes(value)) &&\n !option?.hidden;\n\n const isValueInOptions = options?.some((option) =>\n isOptionGroup(option)\n ? option.options.some(valueExists)\n : valueExists(option)\n );\n return (\n (hasOptions && (!!defaultValue || !value)) ||\n (value &&\n (isValueInOptions ||\n (emptyValue && !!handleEmptyAction) ||\n noResultText))\n );\n }, [\n defaultValue,\n emptyValue,\n handleEmptyAction,\n noResultText,\n options,\n 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 $mode={triggerMode}\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 `}\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 css={`\n max-height: ${autoSize === \"auto\" && scrollWrapper\n ? sizeMap[size] * 3 + 8 + \"px\"\n : undefined};\n `}\n >\n {startAdornment}\n <StyledInput\n className=\"c-combo-box-input\"\n onBlur={handleBlur}\n onFocus={() => {\n setFocused(!focused);\n }}\n onClick={handleOpen}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={!hasSelected ? placeholder : undefined}\n $mode={triggerMode}\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 {invalid && errorMessage && (\n <Tooltip title={errorMessage}>\n {size === \"regular\" ? (\n <StyledInfoSmallIcon />\n ) : (\n <StyledInfoIcon />\n )}\n </Tooltip>\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={handleOpen}\n onFocus={() => {\n setFocused(!focused);\n handleOpen();\n }}\n onClick={handleOpen}\n mode={triggerMode}\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 && <SpinnerLoader />}\n {!loading && selected && !hideClearButton ? (\n <IconButton\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n variant=\"text gray\"\n size=\"small\"\n >\n <StyledComboBoxCloseSmallIcon />\n </IconButton>\n ) : null}\n {invalid && errorMessage && (\n <Tooltip title={errorMessage}>\n {size === \"regular\" ? (\n <StyledInfoSmallIcon />\n ) : (\n <StyledInfoIcon />\n )}\n </Tooltip>\n )}\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 className=\"c-combo-box--list\"\n $width={comboBoxRef.current?.clientWidth}\n $hide={!showMenu}\n >\n <Autocomplete\n {...prop}\n emptyValue={emptyValue}\n noResultText={noResultText}\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 disableVirtualization={disableVirtualization}\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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","ignoreList":[]}
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","_Tooltip","_Trigger","_Typography","_templateObject","_templateObject2","_templateObject3","_templateObject4","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_taggedTemplateLiteral","slice","freeze","defineProperties","raw","value","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","constructor","name","Array","from","test","l","Symbol","iterator","u","next","done","push","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","sizeMap","small","regular","big","biggest","ComboBox","exports","_ref","_comboBoxRef$current2","_comboBoxRef$current3","_ref$options","options","selected","_ref$loading","loading","loadingText","onChange","onInputChange","placeholder","handleEmptyAction","_ref$disabled","disabled","_ref$size","size","_ref$invalid","invalid","_ref$type","type","renderChip","_ref$forceCloseMenu","forceCloseMenu","renderOption","_ref$limitChips","limitChips","hiddenNumberText","_ref$inPortal","inPortal","inputWrapperClassName","scrollWrapper","onClose","onClear","onDeselect","defaultValue","_ref$open","open","defaultOpen","onOpen","triggerMode","noResultText","emptyValue","disableVirtualization","_ref$hideClearButton","hideClearButton","errorMessage","onCancel","prop","selectedName","useMemo","map","v","find","q","id","_useState","useState","_useState2","setValue","_useState3","_useState4","focused","setFocused","handleOnChange","useCallback","target","childNode","useRef","elementRef","handleRef","useForkRef","wrapperRef","chipWrapper","comboBoxRef","_useState5","_useState6","setOpen","isFirstRender","useIsFirstRender","useOnClickOutside","_comboBoxRef$current","current","contains","handleOnKeyDown","key","stopPropagation","useEffect","emptyAction","handleChange","selectedValue","handleOpen","handleRenderOption","option","props","createElement","Fragment","OptionContent","imageUrl","image","color","textColor","Checkbox","RadioButton","handleDeselect","handleMouseDown","preventDefault","handleBlur","_wrapperRef$current","relatedTarget","renderChipAdornment","index","avatarProps","startAdornment","_StyledAvatar","url","$_css","$_css2","undefined","includes","newSelected","filter","item","showOnClose","Chip","className","label","backgroundColor","chipColor","autoSize","elements","total","forEach","isGrouped","isOptionGroup","groupedOptions","_index","concat","hidden","splice","_StyledTypography","variant","optionItem","child","avatarSize","MultiAvatar","Avatar","showXIcon","hasSelected","showMenu","hasOptions","valueExists","isValueInOptions","some","_StyledStyledInputWrapper","$disabled","$size","$invalid","ref","$mode","classNames","onClick","_elementRef$current","click","$_css3","$_css4","_StyledStyledChipWrapper","$autoSize","$open","$_css5","StyledInput","onBlur","onFocus","matches","onKeyDown","$loading","style","display","flex","alignSelf","width","SpinnerLoader","_StyledTrigger","onMouseDown","tabIndex","StyledComboBoxCloseSmallIcon","Tooltip","title","StyledInfoSmallIcon","StyledInfoIcon","StyledComboBoxCollapseExpandSingleIcon","StyledComboBoxInput","wrapperClick","mode","wrapRef","endAdornment","InputAdornment","disablePointerEvents","IconButton","ConditionalWrapper","condition","wrap","children","Portal","Popper","anchorEl","placement","zIndex","clientWidth","strategy","RemoveScroll","noIsolation","allowPinchZoom","StyledComboBoxList","$width","$hide","Autocomplete","inputEl","displayName","_styledComponents","p","Typography","StyledInputWrapper","StyledChipWrapper","Trigger","withConfig","componentId"],"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 StyledInfoIcon,\n StyledInfoSmallIcon,\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 { InputMode, 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 { Tooltip } from \"../Tooltip\";\nimport { Trigger } from \"../Trigger\";\nimport { Typography } from \"../Typography/Typography\";\n\nconst sizeMap = {\n small: 18,\n regular: 24,\n big: 30,\n biggest: 40,\n};\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 /** onInputChange callback */\n onInputChange?: (text: string) => 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 closes */\n onClose?: () => void;\n /** onOpen (f) will be called when Popper opens */\n onOpen?: () => void;\n /** onClear (f) will be called when user clear input on X icon*/\n onClear?: () => void;\n onCancel?: (value?: string) => void;\n onDeselect?: () => void;\n /** Open state */\n open?: boolean;\n /** Trigger mode */\n triggerMode?: InputMode;\n /** Hide clear button */\n hideClearButton?: boolean;\n /** Error message to display */\n errorMessage?: string;\n}\n\nexport const ComboBox: FC<IComboBoxProps> = ({\n options = [],\n selected,\n loading = false,\n loadingText,\n onChange,\n onInputChange,\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 open: defaultOpen = false,\n onOpen,\n triggerMode,\n noResultText,\n emptyValue,\n disableVirtualization,\n hideClearButton = false,\n errorMessage,\n onCancel,\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(\n (e) => {\n setValue(e.target.value);\n onInputChange?.(e.target.value);\n },\n [onInputChange]\n );\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(defaultOpen);\n const isFirstRender = useIsFirstRender();\n\n useOnClickOutside(wrapperRef, (e) => {\n if (e.target && comboBoxRef.current?.contains(e.target as Node)) {\n return;\n }\n onCancel?.(selectedName);\n setOpen(false);\n });\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Tab\" && open) {\n setOpen(false);\n }\n\n if (e.key === \"Escape\" && open) {\n setOpen(false);\n setValue(selectedName);\n onCancel?.(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 onOpen?.();\n }\n },\n [focused, onCancel, onOpen, open, selectedName, type]\n );\n\n useEffect(() => {\n if (!open && !isFirstRender) {\n onClose?.();\n }\n }, [open, onClose, isFirstRender]);\n\n useEffect(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n useEffect(() => {\n if (open !== defaultOpen) setOpen(defaultOpen);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [defaultOpen]);\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 handleOpen = useCallback(() => {\n if (!disabled) {\n setOpen(true);\n onOpen?.();\n }\n }, [disabled, onOpen]);\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 (e) => {\n if (\n e.relatedTarget &&\n wrapperRef.current?.contains(e.relatedTarget as Node)\n ) {\n return;\n }\n setValue(selectedName);\n setFocused(false);\n },\n [selectedName]\n );\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 startAdornment = 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 startAdornment={startAdornment}\n label={option.name}\n key={index}\n backgroundColor={option.color}\n color={option.chipColor}\n onClose={showOnClose ? onClose : undefined}\n size={size}\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) &&\n type === \"multiple\" &&\n selected.length > 0 &&\n !hideClearButton;\n\n const hasSelected =\n type === \"multiple\" && Array.isArray(selected) && selected.length > 0;\n\n const showMenu = useMemo(() => {\n const hasOptions = options?.length > 0;\n\n const valueExists = (option: IOptionItemProps) =>\n (option.id.toString().includes(value) || option.name.includes(value)) &&\n !option?.hidden;\n\n const isValueInOptions = options?.some((option) =>\n isOptionGroup(option)\n ? option.options.some(valueExists)\n : valueExists(option)\n );\n return (\n (hasOptions && (!!defaultValue || !value)) ||\n (value &&\n (isValueInOptions ||\n (emptyValue && !!handleEmptyAction) ||\n noResultText))\n );\n }, [\n defaultValue,\n emptyValue,\n handleEmptyAction,\n noResultText,\n options,\n 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 $mode={triggerMode}\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 `}\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 css={`\n max-height: ${autoSize === \"auto\" && scrollWrapper\n ? sizeMap[size] * 3 + 8 + \"px\"\n : undefined};\n `}\n >\n {startAdornment}\n <StyledInput\n className=\"c-combo-box-input\"\n onBlur={handleBlur}\n onFocus={(e) => {\n if (e.target.matches(\":focus-visible\")) {\n setOpen(true);\n onOpen?.();\n }\n setFocused(true);\n }}\n onClick={handleOpen}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={!hasSelected ? placeholder : undefined}\n $mode={triggerMode}\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 tabIndex={-1}\n css={`\n display: flex;\n justify-content: center;\n `}\n >\n <StyledComboBoxCloseSmallIcon />\n </Trigger>\n )}\n {invalid && errorMessage && (\n <Tooltip title={errorMessage}>\n {size === \"regular\" ? (\n <StyledInfoSmallIcon />\n ) : (\n <StyledInfoIcon />\n )}\n </Tooltip>\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={handleOpen}\n onFocus={(e) => {\n if (e.target.matches(\":focus-visible\")) {\n setOpen(true);\n onOpen?.();\n }\n setFocused(true);\n }}\n onClick={handleOpen}\n mode={triggerMode}\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 && <SpinnerLoader />}\n {!loading && selected && !hideClearButton ? (\n <IconButton\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n variant=\"text gray\"\n size=\"small\"\n tabIndex={-1}\n >\n <StyledComboBoxCloseSmallIcon />\n </IconButton>\n ) : null}\n {invalid && errorMessage && (\n <Tooltip title={errorMessage}>\n {size === \"regular\" ? (\n <StyledInfoSmallIcon />\n ) : (\n <StyledInfoIcon />\n )}\n </Tooltip>\n )}\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 className=\"c-combo-box--list\"\n $width={comboBoxRef.current?.clientWidth}\n $hide={!showMenu}\n >\n <Autocomplete\n {...prop}\n emptyValue={emptyValue}\n noResultText={noResultText}\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 disableVirtualization={disableVirtualization}\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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","ignoreList":[]}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.Filter = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactFocusLock = require("react-focus-lock");
9
+ var _InputSubmenu = require("./InputSubmenu");
9
10
  var _StartMenu = require("./StartMenu");
10
11
  var _Styles = require("./Styles");
11
12
  var _Submenu = require("./Submenu");
@@ -14,7 +15,7 @@ var _CounterButton = require("../CounterButton");
14
15
  var _Icons = require("../Icons");
15
16
  var _Select = require("../Select");
16
17
  var _Transitions = require("../Transitions");
17
- var _excluded = ["id", "title", "submenu", "searchPlaceholder", "disableInternalSort", "isSingleSelect", "defaultValue"];
18
+ var _excluded = ["id", "title", "submenu", "searchPlaceholder", "disableInternalSort", "isSingleSelect", "defaultValue", "type", "inputPlaceholder", "saveLabel", "clearLabel"];
18
19
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
19
20
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
20
21
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
@@ -126,6 +127,27 @@ var Filter = exports.Filter = function Filter(_ref) {
126
127
  setFilter(newFilters);
127
128
  onChange(newFilters);
128
129
  }, [filter, menu, onChange]);
130
+ var handleInputSave = (0, _react.useCallback)(function (id, value) {
131
+ var newFilters = {};
132
+ if (value.trim()) {
133
+ newFilters = _objectSpread(_objectSpread({}, filter), {}, {
134
+ [id]: [value]
135
+ });
136
+ } else {
137
+ newFilters = _objectSpread({}, filter);
138
+ delete newFilters[id];
139
+ }
140
+ setFilter(newFilters);
141
+ onChange(newFilters);
142
+ setIndex();
143
+ }, [filter, onChange, setIndex]);
144
+ var handleInputClear = (0, _react.useCallback)(function (id) {
145
+ var newFilters = _objectSpread({}, filter);
146
+ delete newFilters[id];
147
+ setFilter(newFilters);
148
+ onChange(newFilters);
149
+ setIndex();
150
+ }, [filter, onChange, setIndex]);
129
151
  var count = (0, _react.useMemo)(function () {
130
152
  var c = 0;
131
153
  Object.values(filter).forEach(function (entry) {
@@ -142,7 +164,7 @@ var Filter = exports.Filter = function Filter(_ref) {
142
164
  }
143
165
  for (var entry of data) {
144
166
  var _entry$submenu;
145
- if (((_entry$submenu = entry.submenu) === null || _entry$submenu === void 0 ? void 0 : _entry$submenu.length) > 1) {
167
+ if (entry.type === "input" || ((_entry$submenu = entry.submenu) === null || _entry$submenu === void 0 ? void 0 : _entry$submenu.length) > 1) {
146
168
  return true;
147
169
  }
148
170
  }
@@ -188,7 +210,7 @@ var Filter = exports.Filter = function Filter(_ref) {
188
210
  shouldRenderSubmenus: shouldRenderSubmenus,
189
211
  emptyFilterText: emptyFilterText
190
212
  }, children))), shouldRenderSubmenus && data.map(function (_ref2, index) {
191
- var _filter$id;
213
+ var _filter$id$, _filter$id, _filter$id2;
192
214
  var id = _ref2.id,
193
215
  title = _ref2.title,
194
216
  submenu = _ref2.submenu,
@@ -196,6 +218,12 @@ var Filter = exports.Filter = function Filter(_ref) {
196
218
  disableInternalSort = _ref2.disableInternalSort,
197
219
  isSingleSelect = _ref2.isSingleSelect,
198
220
  defaultValue = _ref2.defaultValue,
221
+ _ref2$type = _ref2.type,
222
+ submenuType = _ref2$type === void 0 ? "select" : _ref2$type,
223
+ inputPlaceholder = _ref2.inputPlaceholder,
224
+ _ref2$saveLabel = _ref2.saveLabel,
225
+ saveLabel = _ref2$saveLabel === void 0 ? "Save" : _ref2$saveLabel,
226
+ clearLabel = _ref2.clearLabel,
199
227
  rest = _objectWithoutProperties(_ref2, _excluded);
200
228
  return /*#__PURE__*/_react.default.createElement(_Transitions.SlideLeftRightTransition, {
201
229
  key: "filter-submenu-".concat(index),
@@ -215,7 +243,18 @@ var Filter = exports.Filter = function Filter(_ref) {
215
243
  indexPage: menu === "index"
216
244
  }, /*#__PURE__*/_react.default.createElement(_reactFocusLock.MoveFocusInside, {
217
245
  disabled: enteredMenu !== id
218
- }, /*#__PURE__*/_react.default.createElement(_Select.Select, _extends({
246
+ }, submenuType === "input" ? /*#__PURE__*/_react.default.createElement(_InputSubmenu.InputSubmenu, {
247
+ value: (_filter$id$ = (_filter$id = filter[id]) === null || _filter$id === void 0 ? void 0 : _filter$id[0]) !== null && _filter$id$ !== void 0 ? _filter$id$ : "",
248
+ placeholder: inputPlaceholder,
249
+ saveLabel: saveLabel,
250
+ clearLabel: clearLabel,
251
+ onSave: function onSave(value) {
252
+ return handleInputSave(id, value);
253
+ },
254
+ onClear: function onClear() {
255
+ return handleInputClear(id);
256
+ }
257
+ }) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Select.Select, _extends({
219
258
  options: submenu,
220
259
  selected: filter[id],
221
260
  onChange: handleChange,
@@ -227,11 +266,11 @@ var Filter = exports.Filter = function Filter(_ref) {
227
266
  disableSearch: Boolean(submenu.length <= 7),
228
267
  disabledInternalSort: disableInternalSort,
229
268
  defaultValue: defaultValue
230
- }, rest)), (_filter$id = filter[id]) !== null && _filter$id !== void 0 && _filter$id.length ? /*#__PURE__*/_react.default.createElement(_Styles.StyledMenuFooter, null, /*#__PURE__*/_react.default.createElement(_Button.Button, {
269
+ }, rest)), (_filter$id2 = filter[id]) !== null && _filter$id2 !== void 0 && _filter$id2.length ? /*#__PURE__*/_react.default.createElement(_Styles.StyledMenuFooter, null, /*#__PURE__*/_react.default.createElement(_Button.Button, {
231
270
  variant: "text colored",
232
271
  size: "small",
233
272
  onClick: handleReset
234
- }, resetLabel)) : null)));
273
+ }, resetLabel)) : null))));
235
274
  }))));
236
275
  };
237
276
  //# sourceMappingURL=Filter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Filter.js","names":["_react","_interopRequireWildcard","require","_reactFocusLock","_StartMenu","_Styles","_Submenu","_Button","_CounterButton","_Icons","_Select","_Transitions","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","iterator","u","next","done","return","isArray","Filter","exports","_ref","data","_ref$selected","selected","label","clearAllText","_ref$resetLabel","resetLabel","onChange","_ref$width","width","noResultText","emptyFilterText","children","_ref$icon","icon","createElement","FilterIcon","_ref$position","position","_ref$disabled","disabled","className","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","menu","setMenu","_useState5","_useState6","isLeft","setIsLeft","_useState7","_useState8","height","setHeight","_useState9","_useState0","enteredMenu","setEnteredMenu","_useState1","_useState10","setFilter","useEffect","handleOpen","useCallback","handleClose","handleHeight","element","_element$offsetHeight","offsetHeight","handleItemClick","setIndex","handleChange","selectedArray","newFilters","handleClearAll","event","stopPropagation","handleReset","count","useMemo","c","values","entry","shouldRenderSubmenus","_entry$submenu","submenu","StyledMenu","onOpen","onClose","target","CounterButton","active","counter","tooltipText","onClearAll","labelClassName","ResizeTransition","in","style","SlideLeftRightTransition","direction","onEnter","onEntered","MoveFocusInside","StartMenu","onHeightChange","onItemClick","map","_ref2","index","_filter$id","id","title","searchPlaceholder","disableInternalSort","isSingleSelect","defaultValue","rest","key","concat","Submenu","onBack","indexPage","Select","options","type","autoHeightMax","placeholder","keepSameOptionsOrder","Boolean","disableSearch","disabledInternalSort","StyledMenuFooter","Button","variant","size","onClick"],"sources":["../../../../src/components/Filter/Filter.tsx"],"sourcesContent":["import React, {\n FC,\n ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useState,\n PropsWithChildren,\n} from \"react\";\nimport { MoveFocusInside } from \"react-focus-lock\";\n\nimport { Placement } from \"@popperjs/core\";\n\nimport { StartMenu } from \"./StartMenu\";\nimport { StyledMenu, StyledMenuFooter } from \"./Styles\";\nimport { Submenu } from \"./Submenu\";\nimport { Button } from \"../Button\";\nimport { CounterButton } from \"../CounterButton\";\nimport { FilterIcon } from \"../Icons\";\nimport { IOptionGroupProps, IOptionItemProps, Select } from \"../Select\";\nimport { ResizeTransition, SlideLeftRightTransition } from \"../Transitions\";\n\nexport type DataType = {\n id: number | string;\n title: string;\n searchPlaceholder?: string;\n disableInternalSort?: boolean;\n submenu: Array<IOptionGroupProps | IOptionItemProps>;\n isSingleSelect?: boolean;\n defaultValue?: string;\n emptyValue?: string;\n emptyAction?: (e: string | undefined) => void;\n};\n\nexport type SelectedType = {\n [key: number | string]: Array<string>;\n};\n\nexport interface FilterProps {\n /** Data rendered in submenus */\n data: Array<DataType>;\n /** Selected data inside submenus */\n selected?: SelectedType;\n /** Main filter label */\n label: string;\n /** Filter width */\n width?: number;\n /** Text displayed for the tooltip of clear all button */\n clearAllText: string;\n /** Handler for changes on the filter */\n onChange: (selected: SelectedType) => void;\n /** Label for reset button inside submenu */\n resetLabel?: string;\n /** Text to show when search results are empty */\n noResultText: string;\n /** Text to show when there are no submenus to display */\n emptyFilterText?: string;\n /** Position of the dropped menu. */\n position?: Placement;\n /** Icon of the trigger element. */\n icon?: ReactElement;\n /** Disabled state of the trigger. */\n disabled?: boolean;\n /** Applies passed classes for label text */\n className?: string;\n}\n\nexport const Filter: FC<PropsWithChildren<FilterProps>> = ({\n data,\n selected = {},\n label,\n clearAllText,\n resetLabel = \"Reset\",\n onChange,\n width = 260,\n noResultText,\n emptyFilterText,\n children,\n icon = <FilterIcon />,\n position = \"bottom-end\",\n disabled = false,\n className,\n}) => {\n const [open, setOpen] = useState(false);\n const [menu, setMenu] = useState<number | string>(\"index\");\n const [isLeft, setIsLeft] = useState(true);\n const [height, setHeight] = useState(0);\n const [enteredMenu, setEnteredMenu] = useState<number | string>(\"index\");\n const [filter, setFilter] = useState<SelectedType>(() => selected);\n\n useEffect(() => {\n if (Object.keys(selected).length > 0 || Object.keys(filter).length > 0) {\n setFilter(selected);\n }\n }, [selected, filter]);\n\n const handleOpen = useCallback(() => {\n setOpen(true);\n }, []);\n\n const handleClose = useCallback(() => {\n setOpen(false);\n setMenu(\"index\");\n setHeight(0);\n }, []);\n\n const handleHeight = useCallback((element) => {\n setHeight(element?.offsetHeight ?? 0);\n }, []);\n\n const handleItemClick = useCallback((value) => {\n setMenu(value);\n setIsLeft(true);\n }, []);\n\n const setIndex = useCallback(() => {\n setMenu(\"index\");\n setIsLeft(false);\n }, []);\n\n const handleChange = useCallback(\n (selectedArray) => {\n let newFilters = {};\n if (selectedArray.length) {\n newFilters = {\n ...filter,\n [menu]: selectedArray,\n };\n } else {\n newFilters = { ...filter };\n delete newFilters[menu];\n }\n setFilter(newFilters);\n onChange(newFilters);\n },\n [filter, menu, onChange]\n );\n\n const handleClearAll = useCallback(\n (event) => {\n event.stopPropagation();\n setFilter({});\n onChange({});\n },\n [onChange]\n );\n\n const handleReset = useCallback(() => {\n const newFilters = { ...filter };\n delete newFilters[menu];\n setFilter(newFilters);\n onChange(newFilters);\n }, [filter, menu, onChange]);\n\n const count = useMemo(() => {\n let c = 0;\n\n Object.values(filter).forEach((entry) => {\n if (typeof entry === \"string\") {\n return (c += 1);\n }\n\n return (c += entry.length);\n });\n return c;\n }, [filter]);\n\n const shouldRenderSubmenus = useMemo(() => {\n if (data.length === 0) {\n return false;\n }\n\n for (const entry of data) {\n if (entry.submenu?.length > 1) {\n return true;\n }\n }\n\n return false;\n }, [data]);\n\n return (\n <StyledMenu\n open={open}\n onOpen={handleOpen}\n onClose={handleClose}\n position={position}\n target={\n <CounterButton\n active={open}\n label={label}\n icon={icon}\n counter={count}\n tooltipText={clearAllText}\n onClearAll={handleClearAll}\n disabled={disabled}\n labelClassName={className}\n />\n }\n >\n <ResizeTransition in>\n <div style={{ height, width }}>\n <SlideLeftRightTransition\n in={menu === \"index\"}\n direction={isLeft ? \"left\" : \"right\"}\n onEnter={handleHeight}\n onEntered={() => setEnteredMenu(\"index\")}\n >\n <MoveFocusInside>\n <StartMenu\n data={data}\n selected={filter}\n style={{ width }}\n onHeightChange={setHeight}\n onItemClick={handleItemClick}\n shouldRenderSubmenus={shouldRenderSubmenus}\n emptyFilterText={emptyFilterText}\n >\n {children}\n </StartMenu>\n </MoveFocusInside>\n </SlideLeftRightTransition>\n {shouldRenderSubmenus &&\n data.map(\n (\n {\n id,\n title,\n submenu,\n searchPlaceholder,\n disableInternalSort,\n isSingleSelect,\n defaultValue,\n ...rest\n }: DataType,\n index: number\n ) => (\n <SlideLeftRightTransition\n key={`filter-submenu-${index}`}\n in={menu === id}\n direction={isLeft ? \"left\" : \"right\"}\n onEnter={handleHeight}\n onEntered={() => setEnteredMenu(id)}\n >\n <Submenu\n title={title}\n onBack={setIndex}\n onHeightChange={setHeight}\n style={{ width }}\n indexPage={menu === \"index\"}\n >\n <MoveFocusInside disabled={enteredMenu !== id}>\n <Select\n options={submenu}\n selected={filter[id]}\n onChange={handleChange}\n type={isSingleSelect ? \"single\" : \"multiple\"}\n autoHeightMax={255}\n placeholder={searchPlaceholder}\n noResultText={noResultText}\n keepSameOptionsOrder={Boolean(submenu.length <= 7)}\n disableSearch={Boolean(submenu.length <= 7)}\n disabledInternalSort={disableInternalSort}\n defaultValue={defaultValue}\n {...rest}\n />\n {filter[id]?.length ? (\n <StyledMenuFooter>\n <Button\n variant=\"text colored\"\n size=\"small\"\n onClick={handleReset}\n >\n {resetLabel}\n </Button>\n </StyledMenuFooter>\n ) : null}\n </MoveFocusInside>\n </Submenu>\n </SlideLeftRightTransition>\n )\n )}\n </div>\n </ResizeTransition>\n </StyledMenu>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Filter.js","names":["_react","_interopRequireWildcard","require","_reactFocusLock","_InputSubmenu","_StartMenu","_Styles","_Submenu","_Button","_CounterButton","_Icons","_Select","_Transitions","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","iterator","u","next","done","return","isArray","Filter","exports","_ref","data","_ref$selected","selected","label","clearAllText","_ref$resetLabel","resetLabel","onChange","_ref$width","width","noResultText","emptyFilterText","children","_ref$icon","icon","createElement","FilterIcon","_ref$position","position","_ref$disabled","disabled","className","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","menu","setMenu","_useState5","_useState6","isLeft","setIsLeft","_useState7","_useState8","height","setHeight","_useState9","_useState0","enteredMenu","setEnteredMenu","_useState1","_useState10","setFilter","useEffect","handleOpen","useCallback","handleClose","handleHeight","element","_element$offsetHeight","offsetHeight","handleItemClick","setIndex","handleChange","selectedArray","newFilters","handleClearAll","event","stopPropagation","handleReset","handleInputSave","id","trim","handleInputClear","count","useMemo","c","values","entry","shouldRenderSubmenus","_entry$submenu","type","submenu","StyledMenu","onOpen","onClose","target","CounterButton","active","counter","tooltipText","onClearAll","labelClassName","ResizeTransition","in","style","SlideLeftRightTransition","direction","onEnter","onEntered","MoveFocusInside","StartMenu","onHeightChange","onItemClick","map","_ref2","index","_filter$id$","_filter$id","_filter$id2","title","searchPlaceholder","disableInternalSort","isSingleSelect","defaultValue","_ref2$type","submenuType","inputPlaceholder","_ref2$saveLabel","saveLabel","clearLabel","rest","key","concat","Submenu","onBack","indexPage","InputSubmenu","placeholder","onSave","onClear","Fragment","Select","options","autoHeightMax","keepSameOptionsOrder","Boolean","disableSearch","disabledInternalSort","StyledMenuFooter","Button","variant","size","onClick"],"sources":["../../../../src/components/Filter/Filter.tsx"],"sourcesContent":["import React, {\n FC,\n ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useState,\n PropsWithChildren,\n} from \"react\";\nimport { MoveFocusInside } from \"react-focus-lock\";\n\nimport { Placement } from \"@popperjs/core\";\n\nimport { InputSubmenu } from \"./InputSubmenu\";\nimport { StartMenu } from \"./StartMenu\";\nimport { StyledMenu, StyledMenuFooter } from \"./Styles\";\nimport { Submenu } from \"./Submenu\";\nimport { Button } from \"../Button\";\nimport { CounterButton } from \"../CounterButton\";\nimport { FilterIcon } from \"../Icons\";\nimport { IOptionGroupProps, IOptionItemProps, Select } from \"../Select\";\nimport { ResizeTransition, SlideLeftRightTransition } from \"../Transitions\";\n\nexport type DataType = {\n id: number | string;\n title: string;\n searchPlaceholder?: string;\n disableInternalSort?: boolean;\n submenu: Array<IOptionGroupProps | IOptionItemProps>;\n isSingleSelect?: boolean;\n defaultValue?: string;\n emptyValue?: string;\n emptyAction?: (e: string | undefined) => void;\n /** Type of submenu - 'select' renders options list, 'input' renders an input field with save button */\n type?: \"select\" | \"input\";\n /** Placeholder text for input field (only used when type='input') */\n inputPlaceholder?: string;\n /** Label for the save button (only used when type='input') */\n saveLabel?: string;\n /** Label for the clear button (only used when type='input') */\n clearLabel?: string;\n};\n\nexport type SelectedType = {\n [key: number | string]: Array<string>;\n};\n\nexport interface FilterProps {\n /** Data rendered in submenus */\n data: Array<DataType>;\n /** Selected data inside submenus */\n selected?: SelectedType;\n /** Main filter label */\n label: string;\n /** Filter width */\n width?: number;\n /** Text displayed for the tooltip of clear all button */\n clearAllText: string;\n /** Handler for changes on the filter */\n onChange: (selected: SelectedType) => void;\n /** Label for reset button inside submenu */\n resetLabel?: string;\n /** Text to show when search results are empty */\n noResultText: string;\n /** Text to show when there are no submenus to display */\n emptyFilterText?: string;\n /** Position of the dropped menu. */\n position?: Placement;\n /** Icon of the trigger element. */\n icon?: ReactElement;\n /** Disabled state of the trigger. */\n disabled?: boolean;\n /** Applies passed classes for label text */\n className?: string;\n}\n\nexport const Filter: FC<PropsWithChildren<FilterProps>> = ({\n data,\n selected = {},\n label,\n clearAllText,\n resetLabel = \"Reset\",\n onChange,\n width = 260,\n noResultText,\n emptyFilterText,\n children,\n icon = <FilterIcon />,\n position = \"bottom-end\",\n disabled = false,\n className,\n}) => {\n const [open, setOpen] = useState(false);\n const [menu, setMenu] = useState<number | string>(\"index\");\n const [isLeft, setIsLeft] = useState(true);\n const [height, setHeight] = useState(0);\n const [enteredMenu, setEnteredMenu] = useState<number | string>(\"index\");\n const [filter, setFilter] = useState<SelectedType>(() => selected);\n\n useEffect(() => {\n if (Object.keys(selected).length > 0 || Object.keys(filter).length > 0) {\n setFilter(selected);\n }\n }, [selected, filter]);\n\n const handleOpen = useCallback(() => {\n setOpen(true);\n }, []);\n\n const handleClose = useCallback(() => {\n setOpen(false);\n setMenu(\"index\");\n setHeight(0);\n }, []);\n\n const handleHeight = useCallback((element) => {\n setHeight(element?.offsetHeight ?? 0);\n }, []);\n\n const handleItemClick = useCallback((value) => {\n setMenu(value);\n setIsLeft(true);\n }, []);\n\n const setIndex = useCallback(() => {\n setMenu(\"index\");\n setIsLeft(false);\n }, []);\n\n const handleChange = useCallback(\n (selectedArray) => {\n let newFilters = {};\n if (selectedArray.length) {\n newFilters = {\n ...filter,\n [menu]: selectedArray,\n };\n } else {\n newFilters = { ...filter };\n delete newFilters[menu];\n }\n setFilter(newFilters);\n onChange(newFilters);\n },\n [filter, menu, onChange]\n );\n\n const handleClearAll = useCallback(\n (event) => {\n event.stopPropagation();\n setFilter({});\n onChange({});\n },\n [onChange]\n );\n\n const handleReset = useCallback(() => {\n const newFilters = { ...filter };\n delete newFilters[menu];\n setFilter(newFilters);\n onChange(newFilters);\n }, [filter, menu, onChange]);\n\n const handleInputSave = useCallback(\n (id: number | string, value: string) => {\n let newFilters = {};\n if (value.trim()) {\n newFilters = {\n ...filter,\n [id]: [value],\n };\n } else {\n newFilters = { ...filter };\n delete newFilters[id];\n }\n setFilter(newFilters);\n onChange(newFilters);\n setIndex();\n },\n [filter, onChange, setIndex]\n );\n\n const handleInputClear = useCallback(\n (id: number | string) => {\n const newFilters = { ...filter };\n delete newFilters[id];\n setFilter(newFilters);\n onChange(newFilters);\n setIndex();\n },\n [filter, onChange, setIndex]\n );\n\n const count = useMemo(() => {\n let c = 0;\n\n Object.values(filter).forEach((entry) => {\n if (typeof entry === \"string\") {\n return (c += 1);\n }\n\n return (c += entry.length);\n });\n return c;\n }, [filter]);\n\n const shouldRenderSubmenus = useMemo(() => {\n if (data.length === 0) {\n return false;\n }\n\n for (const entry of data) {\n if (entry.type === \"input\" || entry.submenu?.length > 1) {\n return true;\n }\n }\n\n return false;\n }, [data]);\n\n return (\n <StyledMenu\n open={open}\n onOpen={handleOpen}\n onClose={handleClose}\n position={position}\n target={\n <CounterButton\n active={open}\n label={label}\n icon={icon}\n counter={count}\n tooltipText={clearAllText}\n onClearAll={handleClearAll}\n disabled={disabled}\n labelClassName={className}\n />\n }\n >\n <ResizeTransition in>\n <div style={{ height, width }}>\n <SlideLeftRightTransition\n in={menu === \"index\"}\n direction={isLeft ? \"left\" : \"right\"}\n onEnter={handleHeight}\n onEntered={() => setEnteredMenu(\"index\")}\n >\n <MoveFocusInside>\n <StartMenu\n data={data}\n selected={filter}\n style={{ width }}\n onHeightChange={setHeight}\n onItemClick={handleItemClick}\n shouldRenderSubmenus={shouldRenderSubmenus}\n emptyFilterText={emptyFilterText}\n >\n {children}\n </StartMenu>\n </MoveFocusInside>\n </SlideLeftRightTransition>\n {shouldRenderSubmenus &&\n data.map(\n (\n {\n id,\n title,\n submenu,\n searchPlaceholder,\n disableInternalSort,\n isSingleSelect,\n defaultValue,\n type: submenuType = \"select\",\n inputPlaceholder,\n saveLabel = \"Save\",\n clearLabel,\n ...rest\n }: DataType,\n index: number\n ) => (\n <SlideLeftRightTransition\n key={`filter-submenu-${index}`}\n in={menu === id}\n direction={isLeft ? \"left\" : \"right\"}\n onEnter={handleHeight}\n onEntered={() => setEnteredMenu(id)}\n >\n <Submenu\n title={title}\n onBack={setIndex}\n onHeightChange={setHeight}\n style={{ width }}\n indexPage={menu === \"index\"}\n >\n <MoveFocusInside disabled={enteredMenu !== id}>\n {submenuType === \"input\" ? (\n <InputSubmenu\n value={filter[id]?.[0] ?? \"\"}\n placeholder={inputPlaceholder}\n saveLabel={saveLabel}\n clearLabel={clearLabel}\n onSave={(value) => handleInputSave(id, value)}\n onClear={() => handleInputClear(id)}\n />\n ) : (\n <>\n <Select\n options={submenu}\n selected={filter[id]}\n onChange={handleChange}\n type={isSingleSelect ? \"single\" : \"multiple\"}\n autoHeightMax={255}\n placeholder={searchPlaceholder}\n noResultText={noResultText}\n keepSameOptionsOrder={Boolean(submenu.length <= 7)}\n disableSearch={Boolean(submenu.length <= 7)}\n disabledInternalSort={disableInternalSort}\n defaultValue={defaultValue}\n {...rest}\n />\n {filter[id]?.length ? (\n <StyledMenuFooter>\n <Button\n variant=\"text colored\"\n size=\"small\"\n onClick={handleReset}\n >\n {resetLabel}\n </Button>\n </StyledMenuFooter>\n ) : null}\n </>\n )}\n </MoveFocusInside>\n </Submenu>\n </SlideLeftRightTransition>\n )\n )}\n </div>\n </ResizeTransition>\n </StyledMenu>\n );\n};\n"],"mappings":"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","ignoreList":[]}