@activecollab/components 2.0.74 → 2.0.76

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 (41) hide show
  1. package/dist/cjs/components/Autocomplete/Autocomplete.js +6 -3
  2. package/dist/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  3. package/dist/cjs/components/Checkbox/Checkbox.js +29 -5
  4. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  5. package/dist/cjs/components/Checkbox/CheckboxIcon.js +4 -4
  6. package/dist/cjs/components/Checkbox/CheckboxIcon.js.map +1 -1
  7. package/dist/cjs/components/Checkbox/Styles.js +6 -6
  8. package/dist/cjs/components/Checkbox/Styles.js.map +1 -1
  9. package/dist/cjs/components/Select/Option/Option.js.map +1 -1
  10. package/dist/cjs/components/Select/OptionGroup/OptionGroup.js +11 -4
  11. package/dist/cjs/components/Select/OptionGroup/OptionGroup.js.map +1 -1
  12. package/dist/cjs/components/Select/Select.js +29 -4
  13. package/dist/cjs/components/Select/Select.js.map +1 -1
  14. package/dist/esm/components/Autocomplete/Autocomplete.d.ts +2 -0
  15. package/dist/esm/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  16. package/dist/esm/components/Autocomplete/Autocomplete.js +5 -3
  17. package/dist/esm/components/Autocomplete/Autocomplete.js.map +1 -1
  18. package/dist/esm/components/Checkbox/Checkbox.d.ts +4 -2
  19. package/dist/esm/components/Checkbox/Checkbox.d.ts.map +1 -1
  20. package/dist/esm/components/Checkbox/Checkbox.js +18 -4
  21. package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
  22. package/dist/esm/components/Checkbox/CheckboxIcon.d.ts +1 -1
  23. package/dist/esm/components/Checkbox/CheckboxIcon.js +3 -3
  24. package/dist/esm/components/Checkbox/CheckboxIcon.js.map +1 -1
  25. package/dist/esm/components/Checkbox/Styles.js +1 -1
  26. package/dist/esm/components/Checkbox/Styles.js.map +1 -1
  27. package/dist/esm/components/Select/Option/Option.d.ts +2 -0
  28. package/dist/esm/components/Select/Option/Option.d.ts.map +1 -1
  29. package/dist/esm/components/Select/Option/Option.js.map +1 -1
  30. package/dist/esm/components/Select/OptionGroup/OptionGroup.d.ts +2 -0
  31. package/dist/esm/components/Select/OptionGroup/OptionGroup.d.ts.map +1 -1
  32. package/dist/esm/components/Select/OptionGroup/OptionGroup.js +6 -2
  33. package/dist/esm/components/Select/OptionGroup/OptionGroup.js.map +1 -1
  34. package/dist/esm/components/Select/Select.d.ts.map +1 -1
  35. package/dist/esm/components/Select/Select.js +25 -4
  36. package/dist/esm/components/Select/Select.js.map +1 -1
  37. package/dist/index.js +79 -26
  38. package/dist/index.js.map +1 -1
  39. package/dist/index.min.js +1 -1
  40. package/dist/index.min.js.map +1 -1
  41. package/package.json +1 -1
@@ -58,7 +58,9 @@ var Autocomplete = exports.Autocomplete = function Autocomplete(_ref) {
58
58
  keepSameOptionsOrder = _ref$keepSameOptionsO === void 0 ? false : _ref$keepSameOptionsO,
59
59
  _ref$autoHeightMax = _ref.autoHeightMax,
60
60
  autoHeightMax = _ref$autoHeightMax === void 0 ? 340 : _ref$autoHeightMax,
61
- clearInputOnSelect = _ref.clearInputOnSelect;
61
+ clearInputOnSelect = _ref.clearInputOnSelect,
62
+ _ref$mixedOptions = _ref.mixedOptions,
63
+ mixedOptions = _ref$mixedOptions === void 0 ? [] : _ref$mixedOptions;
62
64
  var itemRef = (0, _react.useRef)(null);
63
65
  var listRef = (0, _react.useRef)(null);
64
66
  var selectedOptions = (0, _react.useMemo)(function () {
@@ -302,7 +304,8 @@ var Autocomplete = exports.Autocomplete = function Autocomplete(_ref) {
302
304
  renderOptions: handleRenderOption,
303
305
  type: type,
304
306
  onChange: handleChange,
305
- filter: filter
307
+ filter: filter,
308
+ mixedOptions: mixedOptions
306
309
  });
307
310
  }
308
311
  return /*#__PURE__*/_react.default.createElement(_Option.Option, {
@@ -325,7 +328,7 @@ var Autocomplete = exports.Autocomplete = function Autocomplete(_ref) {
325
328
  }
326
329
  })
327
330
  });
328
- }, [handleClick, handleMouseEnter, hover.item, optionClassName, renderOption, filter, selectedOptions, handleHoverCallback, type, handleChange]);
331
+ }, [handleClick, handleMouseEnter, hover.item, optionClassName, renderOption, filter, selectedOptions, handleHoverCallback, type, handleChange, mixedOptions]);
329
332
  var handleOnMouseLeave = (0, _react.useCallback)(function () {
330
333
  setHover({
331
334
  item: undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"Autocomplete.js","names":["_react","_interopRequireWildcard","require","_reactCustomScrollbars","_HandleKeyboard","_Styles","_useHighlightText","_interopRequireDefault","_Option","_Styles2","_OptionGroup","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","return","isArray","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","_toPropertyKey","configurable","writable","_toPrimitive","String","toPrimitive","Number","isOptionGroup","item","options","undefined","Autocomplete","exports","_ref","type","_ref$options","inputEl","_ref$selected","selected","emptyValue","noResultText","_ref$renderOption","renderOption","option","defaultValue","_ref$sortDirection","sortDirection","handleChange","optionClassName","handleEmptyAction","disabledInternalSort","AutocompleteClassName","handleDefaultOptionChange","preselectDefaultValue","_ref$keepSameOptionsO","keepSameOptionsOrder","_ref$autoHeightMax","autoHeightMax","clearInputOnSelect","itemRef","useRef","listRef","selectedOptions","useMemo","handleSort","useCallback","opts","_opts$","isGrouped","map","group","sortedGroupOptions","sort","b","includes","id","sortList","_options$","sortedOptions","localeCompare","sortedList","_useState","useState","by","_useState2","hover","setHover","_useState3","_useState4","setFilter","handleEmpty","button","_inputEl$current","current","focus","onAddNewMouseEnter","showAddNew","trim","every","v","toLowerCase","renderAddNew","createElement","StyledAutocompleteNewItem","ref","onMouseDown","onMouseEnter","filterOptions","trimmedFilter","hovered","reduce","acc","groupedOption","filteredOptions","list","showDefaultOption","flatOptions","handleInputChange","target","handleHoverCallback","toggleSelected","result","_id","dispatchEvent","Event","bubbles","handleMouseEnter","handleClick","preventDefault","handleRenderOption","index","OptionGroup","checked","renderOptions","onChange","Option","onClick","className","highlightText","handleOnMouseLeave","handleScroll","itemOffset","getClientHeight","getScrollTop","scrollTop","useEffect","offsetTop","handleOnKeyDown","handleKeyboardMovement","inputRef","addEventListener","removeEventListener","isDefaultOptionSelected","showNoResult","renderNoResult","_StyledStyledOption","StyledAutocompleteScrollShadow","$isHidden","_ref2","onScroll","StyledAutocompleteBody","onMouseLeave","Scrollbars","autoHeight","displayName","_styledComponents","StyledOption","withConfig","componentId"],"sources":["../../../../src/components/Autocomplete/Autocomplete.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useMemo,\n useEffect,\n useRef,\n ReactNode,\n ReactElement,\n MutableRefObject,\n} from \"react\";\nimport { Scrollbars } from \"react-custom-scrollbars-2\";\n\nimport { handleKeyboardMovement } from \"./HandleKeyboard\";\nimport {\n StyledAutocompleteBody,\n StyledAutocompleteNewItem,\n StyledAutocompleteScrollShadow,\n} from \"./Styles\";\nimport highlightText from \"../../hooks/useHighlightText\";\nimport { IOptionItemProps, Option } from \"../Select/Option\";\nimport { StyledOption } from \"../Select/Option/Styles\";\nimport { IOptionGroupProps, OptionGroup } from \"../Select/OptionGroup\";\n\nexport function isOptionGroup(\n item: IOptionGroupProps | IOptionItemProps\n): item is IOptionGroupProps {\n return (item as IOptionGroupProps).options !== undefined;\n}\n\nexport interface IAutocompleteProps {\n /** Select type: single or multiple */\n type?: \"single\" | \"multiple\";\n /** List of options or group options */\n options?: (IOptionGroupProps | IOptionItemProps)[];\n /** Selected values */\n selected?: (string | number)[] | string | number;\n /** Input Element. */\n inputEl?: MutableRefObject<HTMLInputElement | null | undefined>;\n /** Text for empty value */\n emptyValue?: string;\n /** Text for No result */\n noResultText?: string;\n /** Render option */\n renderOption?: (\n option: Record<string, ReactNode>,\n data: Record<string, unknown>\n ) => string | ReactElement;\n /** Default value that renders on top of list */\n defaultValue?: string;\n /** Sort direction for labels */\n sortDirection?: \"asc\" | \"desc\";\n /** handleChange callback */\n handleChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** ClassName for single option */\n optionClassName?: string;\n /** handleEmptyAction */\n handleEmptyAction?: (e: string | number) => void;\n /** Disable sorting options */\n disabledInternalSort?: boolean;\n /** ClassName for Autocomplete component */\n AutocompleteClassName?: string;\n /** handleDefaultOptionChange callback */\n handleDefaultOptionChange?: () => void;\n /** Should default value be selected */\n preselectDefaultValue?: boolean;\n /** Should order stay the same after choosing an option */\n keepSameOptionsOrder?: boolean;\n /** Set max height property for scrollbars */\n autoHeightMax?: number;\n /** Clear input on select - works in single mode */\n clearInputOnSelect?: boolean;\n}\n\ninterface IHover {\n item: number | string | undefined | null;\n by: \"mouse\" | \"keyboard\" | undefined;\n}\n\nexport const Autocomplete: FC<IAutocompleteProps> = ({\n type,\n options = [],\n inputEl,\n selected = [],\n emptyValue,\n noResultText,\n renderOption = (option) => option?.name,\n defaultValue,\n sortDirection = \"asc\",\n handleChange,\n optionClassName,\n handleEmptyAction,\n disabledInternalSort,\n AutocompleteClassName,\n handleDefaultOptionChange,\n preselectDefaultValue,\n keepSameOptionsOrder = false,\n autoHeightMax = 340,\n clearInputOnSelect,\n}) => {\n const itemRef = useRef<HTMLLIElement>(null);\n const listRef = useRef<Scrollbars>(null);\n\n const selectedOptions = useMemo(() => {\n if (Array.isArray(selected)) {\n return selected;\n }\n return [selected];\n }, [selected]);\n\n const handleSort = useCallback((opts) => {\n if (keepSameOptionsOrder) {\n return opts;\n }\n\n const isGrouped = Array.isArray(opts[0]?.options);\n\n if (isGrouped) {\n return opts.map((group) => {\n const sortedGroupOptions = group.options.sort((a, b) => {\n if (\n selectedOptions.includes(b.id) &&\n !selectedOptions.includes(a.id)\n ) {\n return 1;\n }\n if (\n selectedOptions.includes(a.id) &&\n !selectedOptions.includes(b.id)\n ) {\n return -1;\n }\n return 0;\n });\n\n return {\n ...group,\n options: sortedGroupOptions,\n };\n });\n } else {\n return opts.sort((a, b) => {\n if (selectedOptions.includes(b.id) && !selectedOptions.includes(a.id)) {\n return 1;\n }\n if (selectedOptions.includes(a.id) && !selectedOptions.includes(b.id)) {\n return -1;\n }\n return 0;\n });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const sortList = useCallback(\n (options) => {\n if (disabledInternalSort) {\n return handleSort([...options]);\n }\n\n const isGrouped = Array.isArray(options[0]?.options);\n\n if (isGrouped) {\n const sortedOptions = options.map((group) => {\n const sortedGroupOptions = group.options.sort((a, b) =>\n sortDirection === \"asc\"\n ? a.name.localeCompare(b.name)\n : b.name.localeCompare(a.name)\n );\n\n return {\n ...group,\n options: handleSort(sortedGroupOptions),\n };\n });\n\n return handleSort(sortedOptions);\n } else {\n const sortedOptions = options.sort((a, b) =>\n sortDirection === \"asc\"\n ? a.name.localeCompare(b.name)\n : b.name.localeCompare(a.name)\n );\n\n return handleSort(sortedOptions);\n }\n },\n [sortDirection, disabledInternalSort, handleSort]\n );\n\n const sortedList = useMemo(() => sortList(options), [options, sortList]);\n\n const [hover, setHover] = useState<IHover>({\n item: undefined,\n by: undefined,\n });\n const [filter, setFilter] = useState(\"\");\n\n const handleEmpty = useCallback(\n (e) => {\n if (e && e.button !== 0) {\n return;\n }\n if (handleEmptyAction) {\n inputEl?.current?.focus();\n setFilter(\"\");\n handleEmptyAction(filter);\n }\n },\n [filter, handleEmptyAction, inputEl]\n );\n\n const onAddNewMouseEnter = useCallback(\n () => setHover({ item: \"addNew\", by: \"mouse\" }),\n []\n );\n\n const showAddNew = useMemo(() => {\n return !!(\n emptyValue &&\n filter.trim() &&\n options.every((option) => {\n if (isOptionGroup(option)) {\n return option.options.every(\n (v) => v.name.toLowerCase() !== filter.trim().toLowerCase()\n );\n }\n return option.name.toLowerCase() !== filter.trim().toLowerCase();\n })\n );\n }, [emptyValue, filter, options]);\n\n const renderAddNew = useMemo(() => {\n return (\n <StyledAutocompleteNewItem\n ref={hover.item === \"addNew\" ? itemRef : null}\n key=\"emptyValue\"\n hover={hover.item === \"addNew\"}\n onMouseDown={handleEmpty}\n onMouseEnter={onAddNewMouseEnter}\n >\n {emptyValue}\n </StyledAutocompleteNewItem>\n );\n }, [emptyValue, handleEmpty, hover, onAddNewMouseEnter]);\n\n const filterOptions = useCallback(\n (options, filter) => {\n const trimmedFilter = filter.trim();\n const isGrouped = options[0] && isOptionGroup(options[0]);\n if (isGrouped) {\n let hovered = false;\n return options.reduce((acc, groupedOption) => {\n const filteredOptions = groupedOption.options.filter((v) =>\n v.name.toLowerCase().includes(trimmedFilter.toLowerCase())\n );\n if (filteredOptions.length > 0) {\n if (!hovered && filter) {\n setHover({ item: filteredOptions[0].id, by: \"keyboard\" });\n }\n hovered = true;\n return [...acc, { ...groupedOption, options: filteredOptions }];\n }\n return [...acc];\n }, []);\n } else {\n const filteredOptions = options.filter((v) =>\n v.name.toLowerCase().includes(trimmedFilter.toLowerCase())\n );\n if (filter && filteredOptions.length > 0) {\n setHover({ item: filteredOptions[0].id, by: \"keyboard\" });\n }\n if (filteredOptions.length === 0 && emptyValue) {\n setHover({ item: \"addNew\", by: \"keyboard\" });\n }\n return filteredOptions;\n }\n },\n [emptyValue]\n );\n\n const list = useMemo(\n () => filterOptions(sortedList, filter),\n [filter, filterOptions, sortedList]\n );\n\n const showDefaultOption = useMemo(\n () => !!defaultValue && !filter,\n [defaultValue, filter]\n );\n\n const flatOptions = useMemo(() => {\n const options = list.reduce(\n (\n acc: (IOptionItemProps | IOptionGroupProps | [])[],\n option: IOptionItemProps | IOptionGroupProps\n ) => {\n if (!isOptionGroup(option)) {\n return [...acc, option];\n }\n return [...acc, ...option.options];\n },\n []\n );\n return filterOptions(options, filter);\n }, [filter, filterOptions, list]);\n\n const handleInputChange = useCallback((e) => {\n if (\n e.target &&\n !(e.key === \"ArrowDown\") &&\n !(e.key === \"ArrowUp\") &&\n !(e.key === \"Enter\")\n ) {\n setFilter(e.target.value);\n }\n }, []);\n\n const handleHoverCallback = useCallback(\n (e: number | string | undefined): void => {\n setHover({ item: e, by: \"mouse\" });\n },\n []\n );\n\n const toggleSelected = useCallback(\n (id) => {\n let result;\n\n if (id !== null) {\n if (type === \"multiple\") {\n if (selectedOptions.includes(id)) {\n result = selectedOptions.filter((_id) => _id !== id);\n } else {\n result = [...selectedOptions, id];\n }\n } else {\n result = id;\n }\n if (clearInputOnSelect && inputEl?.current) {\n inputEl.current.value = \"\";\n inputEl.current.dispatchEvent(new Event(\"change\", { bubbles: true }));\n }\n setFilter(\"\");\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n return;\n }\n }\n\n if (typeof handleChange === \"function\") {\n handleChange(result);\n }\n },\n [\n clearInputOnSelect,\n handleChange,\n handleDefaultOptionChange,\n inputEl,\n selectedOptions,\n type,\n ]\n );\n\n const handleMouseEnter = useCallback((e) => {\n if (e === undefined || e === null) {\n return setHover({ item: null, by: \"mouse\" });\n }\n setHover({ item: e, by: \"mouse\" });\n }, []);\n\n const handleClick = useCallback(\n (e) => {\n e.preventDefault();\n toggleSelected(hover.item);\n },\n [toggleSelected, hover]\n );\n\n const handleRenderOption = useCallback(\n (item: IOptionItemProps | IOptionGroupProps, index) => {\n if (isOptionGroup(item)) {\n return (\n <OptionGroup\n checked={selectedOptions}\n name={item.name}\n key={item.id}\n setHover={handleHoverCallback}\n id={item.id}\n hover={hover.item}\n options={item.options}\n renderOptions={handleRenderOption}\n type={type}\n onChange={handleChange}\n filter={filter}\n />\n );\n }\n return (\n <Option\n name={item.name}\n ref={itemRef}\n key={index}\n onMouseEnter={handleMouseEnter}\n onClick={handleClick}\n id={item.id}\n hover={item.id === hover.item}\n className={optionClassName}\n renderOption={renderOption(\n { ...item, name: highlightText(item.name, filter) },\n {\n id: `option_${item.id}`,\n checked: selectedOptions && selectedOptions.includes(item.id),\n hover: hover.item === item.id,\n onChange: () => null,\n }\n )}\n />\n );\n },\n [\n handleClick,\n handleMouseEnter,\n hover.item,\n optionClassName,\n renderOption,\n filter,\n selectedOptions,\n handleHoverCallback,\n type,\n handleChange,\n ]\n );\n\n const handleOnMouseLeave = useCallback(() => {\n setHover({ item: undefined, by: \"mouse\" });\n }, []);\n\n const handleScroll = useCallback((list: Scrollbars, itemOffset: number) => {\n if (list.getClientHeight() + list.getScrollTop() < itemOffset + 40) {\n return list.scrollTop(itemOffset - list.getClientHeight() + 30);\n }\n if (list.getScrollTop() > itemOffset) {\n return list.scrollTop(itemOffset);\n }\n }, []);\n\n useEffect(() => {\n if (hover.by === \"keyboard\" && hover.item !== undefined) {\n const item: HTMLLIElement | null = itemRef.current;\n const list = listRef.current;\n if (itemRef && item && list) {\n handleScroll(list, item.offsetTop);\n }\n }\n }, [handleScroll, hover]);\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n\n if (hover.item === undefined && filter === \"\") {\n return;\n }\n if (hover.item === \"addNew\") {\n handleEmpty(null);\n return;\n }\n if (hover.item === null && handleDefaultOptionChange) {\n handleDefaultOptionChange();\n return;\n }\n\n if (typeof hover.item !== \"undefined\" || hover.item !== null) {\n toggleSelected(hover.item);\n setFilter(\"\");\n }\n return;\n }\n setHover({\n item: handleKeyboardMovement(\n e,\n hover.item,\n flatOptions,\n showAddNew,\n showDefaultOption\n ),\n by: \"keyboard\",\n });\n },\n [\n filter,\n flatOptions,\n toggleSelected,\n handleDefaultOptionChange,\n handleEmpty,\n hover,\n showAddNew,\n showDefaultOption,\n ]\n );\n\n useEffect(() => {\n const inputRef = inputEl?.current;\n if (inputRef) {\n inputRef.addEventListener(\"input\", handleInputChange);\n inputRef.addEventListener(\"keydown\", handleOnKeyDown);\n }\n return () => {\n if (inputRef) {\n inputRef.removeEventListener(\"input\", handleInputChange);\n inputRef.removeEventListener(\"keydown\", handleOnKeyDown);\n }\n };\n }, [handleInputChange, handleOnKeyDown, inputEl]);\n\n const isDefaultOptionSelected = useCallback(() => {\n if (preselectDefaultValue) {\n return selectedOptions.length < 1 || selectedOptions[0] === \"\";\n } else {\n return (\n selectedOptions[0] === null ||\n selectedOptions.length === flatOptions.length\n );\n }\n }, [flatOptions.length, preselectDefaultValue, selectedOptions]);\n\n const showNoResult = useMemo(\n () =>\n noResultText &&\n !showAddNew &&\n list.length < 1 &&\n ((defaultValue && filter) || !defaultValue),\n [noResultText, showAddNew, list.length, defaultValue, filter]\n );\n\n const renderNoResult = useMemo(\n () => <StyledOption css=\"cursor: auto\">{noResultText}</StyledOption>,\n [noResultText]\n );\n\n return (\n <StyledAutocompleteScrollShadow\n className={AutocompleteClassName}\n $isHidden={\n !defaultValue && !emptyValue && !noResultText && list.length < 1\n }\n >\n {({ onScroll }) => (\n <StyledAutocompleteBody key=\"body\" onMouseLeave={handleOnMouseLeave}>\n <Scrollbars\n ref={listRef}\n key=\"scrollBar\"\n autoHeight\n autoHeightMax={autoHeightMax}\n onScroll={onScroll}\n >\n {defaultValue && !filter && (\n <Option\n name={defaultValue}\n ref={itemRef}\n hover={hover.item === null}\n onMouseEnter={handleMouseEnter}\n onClick={(e) => {\n e.preventDefault();\n toggleSelected(null);\n }}\n renderOption={renderOption(\n { name: defaultValue, id: null },\n {\n checked: isDefaultOptionSelected(),\n hover: hover.item === null,\n onChange: () => null,\n }\n )}\n />\n )}\n {list.map((item: IOptionItemProps, index) =>\n handleRenderOption(item, index)\n )}\n {showNoResult && renderNoResult}\n {showAddNew && renderAddNew}\n </Scrollbars>\n </StyledAutocompleteBody>\n )}\n </StyledAutocompleteScrollShadow>\n );\n};\n\nAutocomplete.displayName = \"Autocomplete\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"Autocomplete.js","names":["_react","_interopRequireWildcard","require","_reactCustomScrollbars","_HandleKeyboard","_Styles","_useHighlightText","_interopRequireDefault","_Option","_Styles2","_OptionGroup","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","length","arr2","l","Symbol","iterator","f","next","done","push","value","return","isArray","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","_toPropertyKey","configurable","writable","_toPrimitive","String","toPrimitive","Number","isOptionGroup","item","options","undefined","Autocomplete","exports","_ref","type","_ref$options","inputEl","_ref$selected","selected","emptyValue","noResultText","_ref$renderOption","renderOption","option","defaultValue","_ref$sortDirection","sortDirection","handleChange","optionClassName","handleEmptyAction","disabledInternalSort","AutocompleteClassName","handleDefaultOptionChange","preselectDefaultValue","_ref$keepSameOptionsO","keepSameOptionsOrder","_ref$autoHeightMax","autoHeightMax","clearInputOnSelect","_ref$mixedOptions","mixedOptions","itemRef","useRef","listRef","selectedOptions","useMemo","handleSort","useCallback","opts","_opts$","isGrouped","map","group","sortedGroupOptions","sort","b","includes","id","sortList","_options$","sortedOptions","localeCompare","sortedList","_useState","useState","by","_useState2","hover","setHover","_useState3","_useState4","setFilter","handleEmpty","button","_inputEl$current","current","focus","onAddNewMouseEnter","showAddNew","trim","every","v","toLowerCase","renderAddNew","createElement","StyledAutocompleteNewItem","ref","onMouseDown","onMouseEnter","filterOptions","trimmedFilter","hovered","reduce","acc","groupedOption","filteredOptions","list","showDefaultOption","flatOptions","handleInputChange","target","handleHoverCallback","toggleSelected","result","_id","dispatchEvent","Event","bubbles","handleMouseEnter","handleClick","preventDefault","handleRenderOption","index","OptionGroup","checked","renderOptions","onChange","Option","onClick","className","highlightText","handleOnMouseLeave","handleScroll","itemOffset","getClientHeight","getScrollTop","scrollTop","useEffect","offsetTop","handleOnKeyDown","handleKeyboardMovement","inputRef","addEventListener","removeEventListener","isDefaultOptionSelected","showNoResult","renderNoResult","_StyledStyledOption","StyledAutocompleteScrollShadow","$isHidden","_ref2","onScroll","StyledAutocompleteBody","onMouseLeave","Scrollbars","autoHeight","displayName","_styledComponents","StyledOption","withConfig","componentId"],"sources":["../../../../src/components/Autocomplete/Autocomplete.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useMemo,\n useEffect,\n useRef,\n ReactNode,\n ReactElement,\n MutableRefObject,\n} from \"react\";\nimport { Scrollbars } from \"react-custom-scrollbars-2\";\n\nimport { handleKeyboardMovement } from \"./HandleKeyboard\";\nimport {\n StyledAutocompleteBody,\n StyledAutocompleteNewItem,\n StyledAutocompleteScrollShadow,\n} from \"./Styles\";\nimport highlightText from \"../../hooks/useHighlightText\";\nimport { IOptionItemProps, Option } from \"../Select/Option\";\nimport { StyledOption } from \"../Select/Option/Styles\";\nimport { IOptionGroupProps, OptionGroup } from \"../Select/OptionGroup\";\n\nexport function isOptionGroup(\n item: IOptionGroupProps | IOptionItemProps\n): item is IOptionGroupProps {\n return (item as IOptionGroupProps).options !== undefined;\n}\n\nexport interface IAutocompleteProps {\n /** Select type: single or multiple */\n type?: \"single\" | \"multiple\";\n /** List of options or group options */\n options?: (IOptionGroupProps | IOptionItemProps)[];\n /** Selected values */\n selected?: (string | number)[] | string | number;\n /** Mixed options values */\n mixedOptions?: (string | number)[];\n /** Input Element. */\n inputEl?: MutableRefObject<HTMLInputElement | null | undefined>;\n /** Text for empty value */\n emptyValue?: string;\n /** Text for No result */\n noResultText?: string;\n /** Render option */\n renderOption?: (\n option: Record<string, ReactNode>,\n data: Record<string, unknown>\n ) => string | ReactElement;\n /** Default value that renders on top of list */\n defaultValue?: string;\n /** Sort direction for labels */\n sortDirection?: \"asc\" | \"desc\";\n /** handleChange callback */\n handleChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** ClassName for single option */\n optionClassName?: string;\n /** handleEmptyAction */\n handleEmptyAction?: (e: string | number) => void;\n /** Disable sorting options */\n disabledInternalSort?: boolean;\n /** ClassName for Autocomplete component */\n AutocompleteClassName?: string;\n /** handleDefaultOptionChange callback */\n handleDefaultOptionChange?: () => void;\n /** Should default value be selected */\n preselectDefaultValue?: boolean;\n /** Should order stay the same after choosing an option */\n keepSameOptionsOrder?: boolean;\n /** Set max height property for scrollbars */\n autoHeightMax?: number;\n /** Clear input on select - works in single mode */\n clearInputOnSelect?: boolean;\n}\n\ninterface IHover {\n item: number | string | undefined | null;\n by: \"mouse\" | \"keyboard\" | undefined;\n}\n\nexport const Autocomplete: FC<IAutocompleteProps> = ({\n type,\n options = [],\n inputEl,\n selected = [],\n emptyValue,\n noResultText,\n renderOption = (option) => option?.name,\n defaultValue,\n sortDirection = \"asc\",\n handleChange,\n optionClassName,\n handleEmptyAction,\n disabledInternalSort,\n AutocompleteClassName,\n handleDefaultOptionChange,\n preselectDefaultValue,\n keepSameOptionsOrder = false,\n autoHeightMax = 340,\n clearInputOnSelect,\n mixedOptions = [],\n}) => {\n const itemRef = useRef<HTMLLIElement>(null);\n const listRef = useRef<Scrollbars>(null);\n\n const selectedOptions = useMemo(() => {\n if (Array.isArray(selected)) {\n return selected;\n }\n return [selected];\n }, [selected]);\n\n const handleSort = useCallback((opts) => {\n if (keepSameOptionsOrder) {\n return opts;\n }\n\n const isGrouped = Array.isArray(opts[0]?.options);\n\n if (isGrouped) {\n return opts.map((group) => {\n const sortedGroupOptions = group.options.sort((a, b) => {\n if (\n selectedOptions.includes(b.id) &&\n !selectedOptions.includes(a.id)\n ) {\n return 1;\n }\n if (\n selectedOptions.includes(a.id) &&\n !selectedOptions.includes(b.id)\n ) {\n return -1;\n }\n return 0;\n });\n\n return {\n ...group,\n options: sortedGroupOptions,\n };\n });\n } else {\n return opts.sort((a, b) => {\n if (selectedOptions.includes(b.id) && !selectedOptions.includes(a.id)) {\n return 1;\n }\n if (selectedOptions.includes(a.id) && !selectedOptions.includes(b.id)) {\n return -1;\n }\n return 0;\n });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const sortList = useCallback(\n (options) => {\n if (disabledInternalSort) {\n return handleSort([...options]);\n }\n\n const isGrouped = Array.isArray(options[0]?.options);\n\n if (isGrouped) {\n const sortedOptions = options.map((group) => {\n const sortedGroupOptions = group.options.sort((a, b) =>\n sortDirection === \"asc\"\n ? a.name.localeCompare(b.name)\n : b.name.localeCompare(a.name)\n );\n\n return {\n ...group,\n options: handleSort(sortedGroupOptions),\n };\n });\n\n return handleSort(sortedOptions);\n } else {\n const sortedOptions = options.sort((a, b) =>\n sortDirection === \"asc\"\n ? a.name.localeCompare(b.name)\n : b.name.localeCompare(a.name)\n );\n\n return handleSort(sortedOptions);\n }\n },\n [sortDirection, disabledInternalSort, handleSort]\n );\n\n const sortedList = useMemo(() => sortList(options), [options, sortList]);\n\n const [hover, setHover] = useState<IHover>({\n item: undefined,\n by: undefined,\n });\n const [filter, setFilter] = useState(\"\");\n\n const handleEmpty = useCallback(\n (e) => {\n if (e && e.button !== 0) {\n return;\n }\n if (handleEmptyAction) {\n inputEl?.current?.focus();\n setFilter(\"\");\n handleEmptyAction(filter);\n }\n },\n [filter, handleEmptyAction, inputEl]\n );\n\n const onAddNewMouseEnter = useCallback(\n () => setHover({ item: \"addNew\", by: \"mouse\" }),\n []\n );\n\n const showAddNew = useMemo(() => {\n return !!(\n emptyValue &&\n filter.trim() &&\n options.every((option) => {\n if (isOptionGroup(option)) {\n return option.options.every(\n (v) => v.name.toLowerCase() !== filter.trim().toLowerCase()\n );\n }\n return option.name.toLowerCase() !== filter.trim().toLowerCase();\n })\n );\n }, [emptyValue, filter, options]);\n\n const renderAddNew = useMemo(() => {\n return (\n <StyledAutocompleteNewItem\n ref={hover.item === \"addNew\" ? itemRef : null}\n key=\"emptyValue\"\n hover={hover.item === \"addNew\"}\n onMouseDown={handleEmpty}\n onMouseEnter={onAddNewMouseEnter}\n >\n {emptyValue}\n </StyledAutocompleteNewItem>\n );\n }, [emptyValue, handleEmpty, hover, onAddNewMouseEnter]);\n\n const filterOptions = useCallback(\n (options, filter) => {\n const trimmedFilter = filter.trim();\n const isGrouped = options[0] && isOptionGroup(options[0]);\n if (isGrouped) {\n let hovered = false;\n return options.reduce((acc, groupedOption) => {\n const filteredOptions = groupedOption.options.filter((v) =>\n v.name.toLowerCase().includes(trimmedFilter.toLowerCase())\n );\n if (filteredOptions.length > 0) {\n if (!hovered && filter) {\n setHover({ item: filteredOptions[0].id, by: \"keyboard\" });\n }\n hovered = true;\n return [...acc, { ...groupedOption, options: filteredOptions }];\n }\n return [...acc];\n }, []);\n } else {\n const filteredOptions = options.filter((v) =>\n v.name.toLowerCase().includes(trimmedFilter.toLowerCase())\n );\n if (filter && filteredOptions.length > 0) {\n setHover({ item: filteredOptions[0].id, by: \"keyboard\" });\n }\n if (filteredOptions.length === 0 && emptyValue) {\n setHover({ item: \"addNew\", by: \"keyboard\" });\n }\n return filteredOptions;\n }\n },\n [emptyValue]\n );\n\n const list = useMemo(\n () => filterOptions(sortedList, filter),\n [filter, filterOptions, sortedList]\n );\n\n const showDefaultOption = useMemo(\n () => !!defaultValue && !filter,\n [defaultValue, filter]\n );\n\n const flatOptions = useMemo(() => {\n const options = list.reduce(\n (\n acc: (IOptionItemProps | IOptionGroupProps | [])[],\n option: IOptionItemProps | IOptionGroupProps\n ) => {\n if (!isOptionGroup(option)) {\n return [...acc, option];\n }\n return [...acc, ...option.options];\n },\n []\n );\n return filterOptions(options, filter);\n }, [filter, filterOptions, list]);\n\n const handleInputChange = useCallback((e) => {\n if (\n e.target &&\n !(e.key === \"ArrowDown\") &&\n !(e.key === \"ArrowUp\") &&\n !(e.key === \"Enter\")\n ) {\n setFilter(e.target.value);\n }\n }, []);\n\n const handleHoverCallback = useCallback(\n (e: number | string | undefined): void => {\n setHover({ item: e, by: \"mouse\" });\n },\n []\n );\n\n const toggleSelected = useCallback(\n (id) => {\n let result;\n\n if (id !== null) {\n if (type === \"multiple\") {\n if (selectedOptions.includes(id)) {\n result = selectedOptions.filter((_id) => _id !== id);\n } else {\n result = [...selectedOptions, id];\n }\n } else {\n result = id;\n }\n if (clearInputOnSelect && inputEl?.current) {\n inputEl.current.value = \"\";\n inputEl.current.dispatchEvent(new Event(\"change\", { bubbles: true }));\n }\n setFilter(\"\");\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n return;\n }\n }\n\n if (typeof handleChange === \"function\") {\n handleChange(result);\n }\n },\n [\n clearInputOnSelect,\n handleChange,\n handleDefaultOptionChange,\n inputEl,\n selectedOptions,\n type,\n ]\n );\n\n const handleMouseEnter = useCallback((e) => {\n if (e === undefined || e === null) {\n return setHover({ item: null, by: \"mouse\" });\n }\n setHover({ item: e, by: \"mouse\" });\n }, []);\n\n const handleClick = useCallback(\n (e) => {\n e.preventDefault();\n toggleSelected(hover.item);\n },\n [toggleSelected, hover]\n );\n\n const handleRenderOption = useCallback(\n (item: IOptionItemProps | IOptionGroupProps, index) => {\n if (isOptionGroup(item)) {\n return (\n <OptionGroup\n checked={selectedOptions}\n name={item.name}\n key={item.id}\n setHover={handleHoverCallback}\n id={item.id}\n hover={hover.item}\n options={item.options}\n renderOptions={handleRenderOption}\n type={type}\n onChange={handleChange}\n filter={filter}\n mixedOptions={mixedOptions}\n />\n );\n }\n return (\n <Option\n name={item.name}\n ref={itemRef}\n key={index}\n onMouseEnter={handleMouseEnter}\n onClick={handleClick}\n id={item.id}\n hover={item.id === hover.item}\n className={optionClassName}\n renderOption={renderOption(\n { ...item, name: highlightText(item.name, filter) },\n {\n id: `option_${item.id}`,\n checked: selectedOptions && selectedOptions.includes(item.id),\n hover: hover.item === item.id,\n onChange: () => null,\n }\n )}\n />\n );\n },\n [\n handleClick,\n handleMouseEnter,\n hover.item,\n optionClassName,\n renderOption,\n filter,\n selectedOptions,\n handleHoverCallback,\n type,\n handleChange,\n mixedOptions,\n ]\n );\n\n const handleOnMouseLeave = useCallback(() => {\n setHover({ item: undefined, by: \"mouse\" });\n }, []);\n\n const handleScroll = useCallback((list: Scrollbars, itemOffset: number) => {\n if (list.getClientHeight() + list.getScrollTop() < itemOffset + 40) {\n return list.scrollTop(itemOffset - list.getClientHeight() + 30);\n }\n if (list.getScrollTop() > itemOffset) {\n return list.scrollTop(itemOffset);\n }\n }, []);\n\n useEffect(() => {\n if (hover.by === \"keyboard\" && hover.item !== undefined) {\n const item: HTMLLIElement | null = itemRef.current;\n const list = listRef.current;\n if (itemRef && item && list) {\n handleScroll(list, item.offsetTop);\n }\n }\n }, [handleScroll, hover]);\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n\n if (hover.item === undefined && filter === \"\") {\n return;\n }\n if (hover.item === \"addNew\") {\n handleEmpty(null);\n return;\n }\n if (hover.item === null && handleDefaultOptionChange) {\n handleDefaultOptionChange();\n return;\n }\n\n if (typeof hover.item !== \"undefined\" || hover.item !== null) {\n toggleSelected(hover.item);\n setFilter(\"\");\n }\n return;\n }\n setHover({\n item: handleKeyboardMovement(\n e,\n hover.item,\n flatOptions,\n showAddNew,\n showDefaultOption\n ),\n by: \"keyboard\",\n });\n },\n [\n filter,\n flatOptions,\n toggleSelected,\n handleDefaultOptionChange,\n handleEmpty,\n hover,\n showAddNew,\n showDefaultOption,\n ]\n );\n\n useEffect(() => {\n const inputRef = inputEl?.current;\n if (inputRef) {\n inputRef.addEventListener(\"input\", handleInputChange);\n inputRef.addEventListener(\"keydown\", handleOnKeyDown);\n }\n return () => {\n if (inputRef) {\n inputRef.removeEventListener(\"input\", handleInputChange);\n inputRef.removeEventListener(\"keydown\", handleOnKeyDown);\n }\n };\n }, [handleInputChange, handleOnKeyDown, inputEl]);\n\n const isDefaultOptionSelected = useCallback(() => {\n if (preselectDefaultValue) {\n return selectedOptions.length < 1 || selectedOptions[0] === \"\";\n } else {\n return (\n selectedOptions[0] === null ||\n selectedOptions.length === flatOptions.length\n );\n }\n }, [flatOptions.length, preselectDefaultValue, selectedOptions]);\n\n const showNoResult = useMemo(\n () =>\n noResultText &&\n !showAddNew &&\n list.length < 1 &&\n ((defaultValue && filter) || !defaultValue),\n [noResultText, showAddNew, list.length, defaultValue, filter]\n );\n\n const renderNoResult = useMemo(\n () => <StyledOption css=\"cursor: auto\">{noResultText}</StyledOption>,\n [noResultText]\n );\n\n return (\n <StyledAutocompleteScrollShadow\n className={AutocompleteClassName}\n $isHidden={\n !defaultValue && !emptyValue && !noResultText && list.length < 1\n }\n >\n {({ onScroll }) => (\n <StyledAutocompleteBody key=\"body\" onMouseLeave={handleOnMouseLeave}>\n <Scrollbars\n ref={listRef}\n key=\"scrollBar\"\n autoHeight\n autoHeightMax={autoHeightMax}\n onScroll={onScroll}\n >\n {defaultValue && !filter && (\n <Option\n name={defaultValue}\n ref={itemRef}\n hover={hover.item === null}\n onMouseEnter={handleMouseEnter}\n onClick={(e) => {\n e.preventDefault();\n toggleSelected(null);\n }}\n renderOption={renderOption(\n { name: defaultValue, id: null },\n {\n checked: isDefaultOptionSelected(),\n hover: hover.item === null,\n onChange: () => null,\n }\n )}\n />\n )}\n {list.map((item: IOptionItemProps, index) =>\n handleRenderOption(item, index)\n )}\n {showNoResult && renderNoResult}\n {showAddNew && renderAddNew}\n </Scrollbars>\n </StyledAutocompleteBody>\n )}\n </StyledAutocompleteScrollShadow>\n );\n};\n\nAutocomplete.displayName = \"Autocomplete\";\n"],"mappings":"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"}
@@ -8,11 +8,17 @@ var _react = _interopRequireWildcard(require("react"));
8
8
  var _classnames = _interopRequireDefault(require("classnames"));
9
9
  var _CheckboxIcon = _interopRequireDefault(require("./CheckboxIcon"));
10
10
  var _Styles = require("./Styles");
11
- var _excluded = ["className", "hover", "id", "isIndeterminate"];
11
+ var _excluded = ["className", "hover", "id", "mixed", "onChange"];
12
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
13
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
14
14
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
15
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
16
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
17
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
18
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
19
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
20
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
21
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
16
22
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
17
23
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
18
24
  /**
@@ -23,8 +29,24 @@ var Checkbox = exports.Checkbox = /*#__PURE__*/(0, _react.forwardRef)(function (
23
29
  hover = _ref.hover,
24
30
  _ref$id = _ref.id,
25
31
  id = _ref$id === void 0 ? "checkbox" : _ref$id,
26
- isIndeterminate = _ref.isIndeterminate,
32
+ _ref$mixed = _ref.mixed,
33
+ mixed = _ref$mixed === void 0 ? false : _ref$mixed,
34
+ onChange = _ref.onChange,
27
35
  rest = _objectWithoutProperties(_ref, _excluded);
36
+ var _useState = (0, _react.useState)(mixed),
37
+ _useState2 = _slicedToArray(_useState, 2),
38
+ indeterminate = _useState2[0],
39
+ setIndeterminate = _useState2[1];
40
+ var handleChange = (0, _react.useCallback)(function (e) {
41
+ typeof onChange === "function" && onChange(e);
42
+ setIndeterminate(false);
43
+ }, [onChange]);
44
+ (0, _react.useEffect)(function () {
45
+ if (mixed !== indeterminate) {
46
+ setIndeterminate(mixed);
47
+ }
48
+ // eslint-disable-next-line react-hooks/exhaustive-deps
49
+ }, [mixed]);
28
50
  return /*#__PURE__*/_react.default.createElement(_Styles.StyledCheckbox, {
29
51
  className: (0, _classnames.default)("c-checkbox", {
30
52
  "c-checkbox__hover": hover,
@@ -32,21 +54,23 @@ var Checkbox = exports.Checkbox = /*#__PURE__*/(0, _react.forwardRef)(function (
32
54
  }, className),
33
55
  hover: hover,
34
56
  tabIndex: -1,
35
- isIndeterminate: isIndeterminate
57
+ mixed: indeterminate
36
58
  }, /*#__PURE__*/_react.default.createElement(_Styles.StyledInput, _extends({
37
59
  role: "checkbox",
38
60
  id: id,
39
61
  className: "c-checkbox--input",
40
62
  type: "checkbox",
41
63
  ref: ref
42
- }, rest)), /*#__PURE__*/_react.default.createElement(_Styles.StyledLabel, {
64
+ }, rest, {
65
+ onChange: handleChange
66
+ })), /*#__PURE__*/_react.default.createElement(_Styles.StyledLabel, {
43
67
  htmlFor: id,
44
68
  className: "c-checkbox--label"
45
69
  }, /*#__PURE__*/_react.default.createElement(_CheckboxIcon.default, {
46
70
  "data-testid": "checkbox-icon",
47
71
  height: 16,
48
72
  width: 16,
49
- isIndeterminate: isIndeterminate
73
+ mixed: indeterminate
50
74
  })));
51
75
  });
52
76
  Checkbox.displayName = "Checkbox";
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_CheckboxIcon","_Styles","_excluded","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Checkbox","exports","forwardRef","_ref","ref","className","hover","_ref$id","id","isIndeterminate","rest","createElement","StyledCheckbox","classnames","tabIndex","StyledInput","role","type","StyledLabel","htmlFor","height","width","displayName"],"sources":["../../../../src/components/Checkbox/Checkbox.tsx"],"sourcesContent":["import React, { forwardRef, Ref, InputHTMLAttributes } from \"react\";\n\nimport classnames from \"classnames\";\n\nimport CheckboxIcon from \"./CheckboxIcon\";\nimport { StyledCheckbox, StyledInput, StyledLabel } from \"./Styles\";\n\nexport interface CheckBoxProps extends InputHTMLAttributes<HTMLInputElement> {\n /** CSS classes */\n className?: string;\n /** Set hover style */\n hover?: boolean;\n /** Id of input and for of label */\n id?: string;\n /** mixed state */\n isIndeterminate?: boolean;\n}\n\n/**\n * Checkbox component\n */\nexport const Checkbox = forwardRef(\n (\n {\n className,\n hover,\n id = \"checkbox\",\n isIndeterminate,\n ...rest\n }: CheckBoxProps,\n ref: Ref<HTMLInputElement> | null | undefined\n ) => {\n return (\n <StyledCheckbox\n className={classnames(\n \"c-checkbox\",\n {\n \"c-checkbox__hover\": hover,\n \"c-checkbox__controlled\": typeof hover === \"boolean\",\n },\n className\n )}\n hover={hover}\n tabIndex={-1}\n isIndeterminate={isIndeterminate}\n >\n <StyledInput\n role=\"checkbox\"\n id={id}\n className=\"c-checkbox--input\"\n type=\"checkbox\"\n ref={ref}\n {...rest}\n />\n <StyledLabel htmlFor={id} className=\"c-checkbox--label\">\n <CheckboxIcon\n data-testid=\"checkbox-icon\"\n height={16}\n width={16}\n isIndeterminate={isIndeterminate}\n />\n </StyledLabel>\n </StyledCheckbox>\n );\n }\n);\n\nCheckbox.displayName = \"Checkbox\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"Checkbox.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_CheckboxIcon","_Styles","_excluded","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","Symbol","iterator","f","next","done","push","value","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Checkbox","exports","forwardRef","_ref","ref","className","hover","_ref$id","id","_ref$mixed","mixed","onChange","rest","_useState","useState","_useState2","indeterminate","setIndeterminate","handleChange","useCallback","useEffect","createElement","StyledCheckbox","classnames","tabIndex","StyledInput","role","type","StyledLabel","htmlFor","height","width","displayName"],"sources":["../../../../src/components/Checkbox/Checkbox.tsx"],"sourcesContent":["import React, {\n forwardRef,\n Ref,\n InputHTMLAttributes,\n useState,\n useCallback,\n useEffect,\n} from \"react\";\n\nimport classnames from \"classnames\";\n\nimport CheckboxIcon from \"./CheckboxIcon\";\nimport { StyledCheckbox, StyledInput, StyledLabel } from \"./Styles\";\n\nexport interface CheckBoxProps\n extends Omit<InputHTMLAttributes<HTMLInputElement>, \"onChange\"> {\n /** CSS classes */\n className?: string;\n /** Set hover style */\n hover?: boolean;\n /** Id of input and for of label */\n id?: string;\n /** mixed state */\n mixed?: boolean;\n /** On change callback */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n}\n\n/**\n * Checkbox component\n */\nexport const Checkbox = forwardRef(\n (\n {\n className,\n hover,\n id = \"checkbox\",\n mixed = false,\n onChange,\n ...rest\n }: CheckBoxProps,\n ref: Ref<HTMLInputElement> | null | undefined\n ) => {\n const [indeterminate, setIndeterminate] = useState(mixed);\n const handleChange = useCallback(\n (e) => {\n typeof onChange === \"function\" && onChange(e);\n setIndeterminate(false);\n },\n [onChange]\n );\n\n useEffect(() => {\n if (mixed !== indeterminate) {\n setIndeterminate(mixed);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [mixed]);\n\n return (\n <StyledCheckbox\n className={classnames(\n \"c-checkbox\",\n {\n \"c-checkbox__hover\": hover,\n \"c-checkbox__controlled\": typeof hover === \"boolean\",\n },\n className\n )}\n hover={hover}\n tabIndex={-1}\n mixed={indeterminate}\n >\n <StyledInput\n role=\"checkbox\"\n id={id}\n className=\"c-checkbox--input\"\n type=\"checkbox\"\n ref={ref}\n {...rest}\n onChange={handleChange}\n />\n <StyledLabel htmlFor={id} className=\"c-checkbox--label\">\n <CheckboxIcon\n data-testid=\"checkbox-icon\"\n height={16}\n width={16}\n mixed={indeterminate}\n />\n </StyledLabel>\n </StyledCheckbox>\n );\n }\n);\n\nCheckbox.displayName = \"Checkbox\";\n"],"mappings":"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"}
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
- var _excluded = ["isIndeterminate", "data-testid"];
8
+ var _excluded = ["mixed", "data-testid"];
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
11
11
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
@@ -30,7 +30,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
30
30
  * https://design.activecollab.com/docs/foundations/icons
31
31
  */
32
32
  var CheckboxIcon = /*#__PURE__*/_react.default.forwardRef(function (_ref, svgRef) {
33
- var isIndeterminate = _ref.isIndeterminate,
33
+ var mixed = _ref.mixed,
34
34
  testId = _ref["data-testid"],
35
35
  props = _objectWithoutProperties(_ref, _excluded);
36
36
  // const [animate, setAnimate] = useState(false);
@@ -42,9 +42,9 @@ var CheckboxIcon = /*#__PURE__*/_react.default.forwardRef(function (_ref, svgRef
42
42
  // } else {
43
43
  // mountRef.current = true;
44
44
  // }
45
- // }, [isIndeterminate]);
45
+ // }, [mixed]);
46
46
 
47
- if (isIndeterminate) {
47
+ if (mixed) {
48
48
  return /*#__PURE__*/_react.default.createElement("svg", {
49
49
  width: "16",
50
50
  height: "16",
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxIcon.js","names":["_react","_interopRequireDefault","require","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","CheckboxIcon","React","forwardRef","_ref","svgRef","isIndeterminate","testId","props","createElement","width","height","viewBox","fill","xmlns","fillRule","clipRule","d","x","y","rx","focusable","ref","stroke","strokeWidth","displayName","_default","exports"],"sources":["../../../../src/components/Checkbox/CheckboxIcon.tsx"],"sourcesContent":["import React from \"react\";\n\n/**\n * @component CheckboxIcon\n * @description\n *\n * The React Icon component is a visual element that displays an icon to represent a concept, object, or action.\n * The Icon component is\n * customizable, allowing for variations in size, color, and style to fit the needs of the application.\n *\n *\n * @example\n * return (\n * <CheckboxIcon className=\"mr-2\" showAdditionalIcon={true} />\n * )\n *\n * @see\n * https://system.activecollab.com/?path=/story/foundation-icons-icons--icons\n * @see\n * https://design.activecollab.com/docs/foundations/icons\n */\nconst CheckboxIcon = React.forwardRef(\n (\n {\n isIndeterminate,\n \"data-testid\": testId,\n ...props\n }: {\n isIndeterminate?: boolean;\n \"data-testid\"?: string;\n } & React.SVGProps<SVGSVGElement>,\n svgRef?: React.Ref<SVGSVGElement>\n ) => {\n // const [animate, setAnimate] = useState(false);\n // const mountRef = useRef(false);\n\n // useEffect(() => {\n // if (mountRef.current) {\n // setAnimate(true);\n // } else {\n // mountRef.current = true;\n // }\n // }, [isIndeterminate]);\n\n if (isIndeterminate) {\n return (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n data-testid={testId}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M14.2222 0C15.2041 0 16 0.795938 16 1.77778V14.2222C16 15.2041 15.2041 16 14.2222 16H1.77778C0.795938 16 0 15.2041 0 14.2222V1.77778C0 0.795938 0.795938 0 1.77778 0H14.2222Z\"\n fill=\"var(--color-secondary)\"\n />\n <rect\n x=\"3\"\n y=\"7\"\n width={10}\n height=\"2\"\n rx=\"1\"\n fill=\"var(--page-paper-main)\"\n ></rect>\n </svg>\n );\n }\n return (\n <svg\n width={16}\n height={16}\n viewBox=\"0 0 16 16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"var(--color-theme-600)\"\n focusable={false}\n ref={svgRef}\n {...props}\n data-testid={testId}\n >\n <g fillRule=\"evenodd\">\n <rect\n stroke=\"#8E8E8E\"\n x={0.5}\n y={0.5}\n width={15}\n height={15}\n rx={2}\n />\n <path\n stroke=\"#979797\"\n strokeWidth={2}\n d=\"M12.243 5l-5.657 5.657-2.829-2.829\"\n />\n </g>\n </svg>\n );\n }\n);\nCheckboxIcon.displayName = \"CheckboxIcon\";\nexport default CheckboxIcon;\n"],"mappings":"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"}
1
+ {"version":3,"file":"CheckboxIcon.js","names":["_react","_interopRequireDefault","require","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","CheckboxIcon","React","forwardRef","_ref","svgRef","mixed","testId","props","createElement","width","height","viewBox","fill","xmlns","fillRule","clipRule","d","x","y","rx","focusable","ref","stroke","strokeWidth","displayName","_default","exports"],"sources":["../../../../src/components/Checkbox/CheckboxIcon.tsx"],"sourcesContent":["import React from \"react\";\n\n/**\n * @component CheckboxIcon\n * @description\n *\n * The React Icon component is a visual element that displays an icon to represent a concept, object, or action.\n * The Icon component is\n * customizable, allowing for variations in size, color, and style to fit the needs of the application.\n *\n *\n * @example\n * return (\n * <CheckboxIcon className=\"mr-2\" showAdditionalIcon={true} />\n * )\n *\n * @see\n * https://system.activecollab.com/?path=/story/foundation-icons-icons--icons\n * @see\n * https://design.activecollab.com/docs/foundations/icons\n */\nconst CheckboxIcon = React.forwardRef(\n (\n {\n mixed,\n \"data-testid\": testId,\n ...props\n }: {\n mixed?: boolean;\n \"data-testid\"?: string;\n } & React.SVGProps<SVGSVGElement>,\n svgRef?: React.Ref<SVGSVGElement>\n ) => {\n // const [animate, setAnimate] = useState(false);\n // const mountRef = useRef(false);\n\n // useEffect(() => {\n // if (mountRef.current) {\n // setAnimate(true);\n // } else {\n // mountRef.current = true;\n // }\n // }, [mixed]);\n\n if (mixed) {\n return (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n data-testid={testId}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M14.2222 0C15.2041 0 16 0.795938 16 1.77778V14.2222C16 15.2041 15.2041 16 14.2222 16H1.77778C0.795938 16 0 15.2041 0 14.2222V1.77778C0 0.795938 0.795938 0 1.77778 0H14.2222Z\"\n fill=\"var(--color-secondary)\"\n />\n <rect\n x=\"3\"\n y=\"7\"\n width={10}\n height=\"2\"\n rx=\"1\"\n fill=\"var(--page-paper-main)\"\n ></rect>\n </svg>\n );\n }\n return (\n <svg\n width={16}\n height={16}\n viewBox=\"0 0 16 16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"var(--color-theme-600)\"\n focusable={false}\n ref={svgRef}\n {...props}\n data-testid={testId}\n >\n <g fillRule=\"evenodd\">\n <rect\n stroke=\"#8E8E8E\"\n x={0.5}\n y={0.5}\n width={15}\n height={15}\n rx={2}\n />\n <path\n stroke=\"#979797\"\n strokeWidth={2}\n d=\"M12.243 5l-5.657 5.657-2.829-2.829\"\n />\n </g>\n </svg>\n );\n }\n);\nCheckboxIcon.displayName = \"CheckboxIcon\";\nexport default CheckboxIcon;\n"],"mappings":"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"}
@@ -21,17 +21,17 @@ var StyledCheckbox = exports.StyledCheckbox = _styledComponents.default.div.with
21
21
  displayName: "Styles__StyledCheckbox",
22
22
  componentId: "sc-y7zymm-2"
23
23
  })(["height:16px;width:16px;position:relative;transition-duration:0.2s;border-radius:2px;path{transition-duration:0.2s;stroke:transparent;stroke-dashoffset:12;stroke-dasharray:12;}svg{cursor:pointer;border-radius:2px;fill:transparent;}rect{transition-duration:0.2s;", " ", "}", ":disabled ~ ", "{pointer-events:none;opacity:0.5;}", ":focus ~ ", "{rect{stroke:var(--color-secondary);stroke-width:3px;}}&:not(.c-checkbox__controlled) ", ":hover:not(:checked) ~ ", "{path{stroke:var(--color-secondary-500);stroke-dashoffset:24;}rect{stroke:var(--color-secondary);", " stroke-width:3px;}}", " ", ":checked ~ ", "{path{", "}rect{stroke:var(--color-secondary);stroke-width:19px;", "}}"], function (props) {
24
- return !props.isIndeterminate && (0, _styledComponents.css)(["stroke:var(--color-theme-500);"]);
24
+ return !props.mixed && (0, _styledComponents.css)(["stroke:var(--color-theme-500);"]);
25
25
  }, function (props) {
26
- return props.isIndeterminate && (0, _styledComponents.css)(["stroke:transparent;"]);
26
+ return props.mixed && (0, _styledComponents.css)(["stroke:transparent;"]);
27
27
  }, StyledInput, StyledLabel, StyledInput, StyledLabel, StyledInput, StyledLabel, function (props) {
28
- return props.isIndeterminate && (0, _styledComponents.css)(["stroke:transparent;"]);
28
+ return props.mixed && (0, _styledComponents.css)(["stroke:transparent;"]);
29
29
  }, function (props) {
30
- return props.hover && !props.isIndeterminate && (0, _styledComponents.css)(["", ":not(:checked) ~ ", "{path{stroke:var(--color-secondary-500);stroke-dashoffset:24;}rect{stroke:var(--color-secondary);stroke-width:3px;}}"], StyledInput, StyledLabel);
30
+ return props.hover && !props.mixed && (0, _styledComponents.css)(["", ":not(:checked) ~ ", "{path{stroke:var(--color-secondary-500);stroke-dashoffset:24;}rect{stroke:var(--color-secondary);stroke-width:3px;}}"], StyledInput, StyledLabel);
31
31
  }, StyledInput, StyledLabel, function (props) {
32
- return !props.isIndeterminate && (0, _styledComponents.css)(["stroke:var(--page-paper-main);stroke-dashoffset:24;"]);
32
+ return !props.mixed && (0, _styledComponents.css)(["stroke:var(--page-paper-main);stroke-dashoffset:24;"]);
33
33
  }, function (props) {
34
- return props.isIndeterminate && (0, _styledComponents.css)(["stroke:transparent;"]);
34
+ return props.mixed && (0, _styledComponents.css)(["stroke:transparent;"]);
35
35
  });
36
36
  StyledCheckbox.displayName = "StyledCheckbox";
37
37
  //# sourceMappingURL=Styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","StyledInput","exports","styled","input","withConfig","displayName","componentId","StyledLabel","label","StyledCheckbox","div","props","isIndeterminate","css","hover"],"sources":["../../../../src/components/Checkbox/Styles.ts"],"sourcesContent":["import styled, { css } from \"styled-components\";\n\nimport type { CheckBoxProps } from \"./Checkbox\";\n\nexport const StyledInput = styled.input`\n border: 0px;\n clip: rect(0px, 0px, 0px, 0px);\n cursor: pointer;\n height: 1px;\n margin: -1px;\n opacity: 0;\n overflow: hidden;\n padding: 0px;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n`;\nStyledInput.displayName = \"StyledInput\";\n\nexport const StyledLabel = styled.label``;\nStyledLabel.displayName = \"StyledLabel\";\n\nexport const StyledCheckbox = styled.div<Partial<CheckBoxProps>>`\n height: 16px;\n width: 16px;\n position: relative;\n transition-duration: 0.2s;\n border-radius: 2px;\n\n path {\n transition-duration: 0.2s;\n stroke: transparent;\n stroke-dashoffset: 12;\n stroke-dasharray: 12;\n }\n svg {\n cursor: pointer;\n border-radius: 2px;\n fill: transparent;\n }\n\n rect {\n transition-duration: 0.2s;\n\n ${(props) =>\n !props.isIndeterminate &&\n css`\n stroke: var(--color-theme-500);\n `}\n\n ${(props) =>\n props.isIndeterminate &&\n css`\n stroke: transparent;\n `}\n }\n\n ${StyledInput}:disabled ~ ${StyledLabel} {\n pointer-events: none;\n opacity: 0.5;\n }\n\n ${StyledInput}:focus ~ ${StyledLabel} {\n rect {\n stroke: var(--color-secondary);\n stroke-width: 3px;\n }\n }\n\n // prettier-ignore\n &:not(.c-checkbox__controlled) ${StyledInput}:hover:not(:checked) ~ ${StyledLabel} {\n path {\n stroke: var(--color-secondary-500);\n stroke-dashoffset: 24;\n }\n rect {\n stroke: var(--color-secondary);\n\n ${(props) =>\n props.isIndeterminate &&\n css`\n stroke: transparent;\n `}\n stroke-width: 3px;\n }\n }\n\n ${(props) =>\n props.hover &&\n !props.isIndeterminate &&\n css`\n ${StyledInput}:not(:checked) ~ ${StyledLabel} {\n path {\n stroke: var(--color-secondary-500);\n stroke-dashoffset: 24;\n }\n rect {\n stroke: var(--color-secondary);\n stroke-width: 3px;\n }\n }\n `}\n\n ${StyledInput}:checked ~ ${StyledLabel} {\n path {\n ${(props) =>\n !props.isIndeterminate &&\n css`\n stroke: var(--page-paper-main);\n stroke-dashoffset: 24;\n `}\n }\n rect {\n stroke: var(--color-secondary);\n stroke-width: 19px;\n\n ${(props) =>\n props.isIndeterminate &&\n css`\n stroke: transparent;\n `}\n }\n }\n`;\nStyledCheckbox.displayName = \"StyledCheckbox\";\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAgD,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,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;AAIzC,IAAMY,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAGE,yBAAM,CAACC,KAAK,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,yKAYtC;AACDN,WAAW,CAACK,WAAW,GAAG,aAAa;AAEhC,IAAME,WAAW,GAAAN,OAAA,CAAAM,WAAA,GAAGL,yBAAM,CAACM,KAAK,CAAAJ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,QAAE;AACzCC,WAAW,CAACF,WAAW,GAAG,aAAa;AAEhC,IAAMI,cAAc,GAAAR,OAAA,CAAAQ,cAAA,GAAGP,yBAAM,CAACQ,GAAG,CAAAN,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,0qBAsBlC,UAACK,KAAK;EAAA,OACN,CAACA,KAAK,CAACC,eAAe,QACtBC,qBAAG,qCAEF;AAAA,GAED,UAACF,KAAK;EAAA,OACNA,KAAK,CAACC,eAAe,QACrBC,qBAAG,0BAEF;AAAA,GAGHb,WAAW,EAAeO,WAAW,EAKrCP,WAAW,EAAYO,WAAW,EAQHP,WAAW,EAA0BO,WAAW,EAQ3E,UAACI,KAAK;EAAA,OACVA,KAAK,CAACC,eAAe,QACrBC,qBAAG,0BAEF;AAAA,GAKD,UAACF,KAAK;EAAA,OACNA,KAAK,CAACG,KAAK,IACX,CAACH,KAAK,CAACC,eAAe,QACtBC,qBAAG,qJACCb,WAAW,EAAoBO,WAAW,CAU7C;AAAA,GAEDP,WAAW,EAAcO,WAAW,EAEhC,UAACI,KAAK;EAAA,OACN,CAACA,KAAK,CAACC,eAAe,QACtBC,qBAAG,0DAGF;AAAA,GAMD,UAACF,KAAK;EAAA,OACNA,KAAK,CAACC,eAAe,QACrBC,qBAAG,0BAEF;AAAA,EAGR;AACDJ,cAAc,CAACJ,WAAW,GAAG,gBAAgB"}
1
+ {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","StyledInput","exports","styled","input","withConfig","displayName","componentId","StyledLabel","label","StyledCheckbox","div","props","mixed","css","hover"],"sources":["../../../../src/components/Checkbox/Styles.ts"],"sourcesContent":["import styled, { css } from \"styled-components\";\n\nimport type { CheckBoxProps } from \"./Checkbox\";\n\nexport const StyledInput = styled.input`\n border: 0px;\n clip: rect(0px, 0px, 0px, 0px);\n cursor: pointer;\n height: 1px;\n margin: -1px;\n opacity: 0;\n overflow: hidden;\n padding: 0px;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n`;\nStyledInput.displayName = \"StyledInput\";\n\nexport const StyledLabel = styled.label``;\nStyledLabel.displayName = \"StyledLabel\";\n\nexport const StyledCheckbox = styled.div<Partial<CheckBoxProps>>`\n height: 16px;\n width: 16px;\n position: relative;\n transition-duration: 0.2s;\n border-radius: 2px;\n\n path {\n transition-duration: 0.2s;\n stroke: transparent;\n stroke-dashoffset: 12;\n stroke-dasharray: 12;\n }\n svg {\n cursor: pointer;\n border-radius: 2px;\n fill: transparent;\n }\n\n rect {\n transition-duration: 0.2s;\n\n ${(props) =>\n !props.mixed &&\n css`\n stroke: var(--color-theme-500);\n `}\n\n ${(props) =>\n props.mixed &&\n css`\n stroke: transparent;\n `}\n }\n\n ${StyledInput}:disabled ~ ${StyledLabel} {\n pointer-events: none;\n opacity: 0.5;\n }\n\n ${StyledInput}:focus ~ ${StyledLabel} {\n rect {\n stroke: var(--color-secondary);\n stroke-width: 3px;\n }\n }\n\n // prettier-ignore\n &:not(.c-checkbox__controlled) ${StyledInput}:hover:not(:checked) ~ ${StyledLabel} {\n path {\n stroke: var(--color-secondary-500);\n stroke-dashoffset: 24;\n }\n rect {\n stroke: var(--color-secondary);\n\n ${(props) =>\n props.mixed &&\n css`\n stroke: transparent;\n `}\n stroke-width: 3px;\n }\n }\n\n ${(props) =>\n props.hover &&\n !props.mixed &&\n css`\n ${StyledInput}:not(:checked) ~ ${StyledLabel} {\n path {\n stroke: var(--color-secondary-500);\n stroke-dashoffset: 24;\n }\n rect {\n stroke: var(--color-secondary);\n stroke-width: 3px;\n }\n }\n `}\n\n ${StyledInput}:checked ~ ${StyledLabel} {\n path {\n ${(props) =>\n !props.mixed &&\n css`\n stroke: var(--page-paper-main);\n stroke-dashoffset: 24;\n `}\n }\n rect {\n stroke: var(--color-secondary);\n stroke-width: 19px;\n\n ${(props) =>\n props.mixed &&\n css`\n stroke: transparent;\n `}\n }\n }\n`;\nStyledCheckbox.displayName = \"StyledCheckbox\";\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAgD,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,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;AAIzC,IAAMY,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAGE,yBAAM,CAACC,KAAK,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,yKAYtC;AACDN,WAAW,CAACK,WAAW,GAAG,aAAa;AAEhC,IAAME,WAAW,GAAAN,OAAA,CAAAM,WAAA,GAAGL,yBAAM,CAACM,KAAK,CAAAJ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,QAAE;AACzCC,WAAW,CAACF,WAAW,GAAG,aAAa;AAEhC,IAAMI,cAAc,GAAAR,OAAA,CAAAQ,cAAA,GAAGP,yBAAM,CAACQ,GAAG,CAAAN,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,0qBAsBlC,UAACK,KAAK;EAAA,OACN,CAACA,KAAK,CAACC,KAAK,QACZC,qBAAG,qCAEF;AAAA,GAED,UAACF,KAAK;EAAA,OACNA,KAAK,CAACC,KAAK,QACXC,qBAAG,0BAEF;AAAA,GAGHb,WAAW,EAAeO,WAAW,EAKrCP,WAAW,EAAYO,WAAW,EAQHP,WAAW,EAA0BO,WAAW,EAQ3E,UAACI,KAAK;EAAA,OACVA,KAAK,CAACC,KAAK,QACXC,qBAAG,0BAEF;AAAA,GAKD,UAACF,KAAK;EAAA,OACNA,KAAK,CAACG,KAAK,IACX,CAACH,KAAK,CAACC,KAAK,QACZC,qBAAG,qJACCb,WAAW,EAAoBO,WAAW,CAU7C;AAAA,GAEDP,WAAW,EAAcO,WAAW,EAEhC,UAACI,KAAK;EAAA,OACN,CAACA,KAAK,CAACC,KAAK,QACZC,qBAAG,0DAGF;AAAA,GAMD,UAACF,KAAK;EAAA,OACNA,KAAK,CAACC,KAAK,QACXC,qBAAG,0BAEF;AAAA,EAGR;AACDJ,cAAc,CAACJ,WAAW,GAAG,gBAAgB"}
@@ -1 +1 @@
1
- {"version":3,"file":"Option.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","Option","exports","forwardRef","_ref","ref","id","name","hover","className","renderOption","onMouseEnter","_ref$onClick","onClick","handleOnMouseEnter","useCallback","createElement","StyledOption","title","classnames","displayName"],"sources":["../../../../../src/components/Select/Option/Option.tsx"],"sourcesContent":["import React, {\n forwardRef,\n MouseEventHandler,\n ReactNode,\n Ref,\n useCallback,\n} from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { StyledOption } from \"./Styles\";\n\nexport interface IOptionItemProps {\n /** Value of option */\n id: string | number;\n /** Label of option */\n name: string;\n /** Additional info right-side of name */\n additionalInfo?: string;\n /** image url for Avatar or MultiAvatar */\n image?: string | string[];\n /** Hex color for label */\n color?: string;\n /** Color for chip label */\n chipColor?: string;\n}\n\ninterface IAdditionalOptionItemProps {\n /** Value of option */\n id?: string | number;\n /** Label of option */\n name: string;\n /** Hovered state */\n hover?: boolean;\n /** Class name of option */\n className?: string;\n /** Render option function */\n renderOption?: ReactNode;\n /** On mouse enter callback */\n onMouseEnter?: (e: string | number | undefined) => void;\n /** On mouse click */\n onClick?: MouseEventHandler<HTMLLIElement>;\n}\n\nexport const Option = forwardRef(\n (\n {\n id,\n name,\n hover,\n className,\n renderOption,\n onMouseEnter,\n onClick = () => null,\n }: IAdditionalOptionItemProps,\n ref: Ref<HTMLLIElement>\n ) => {\n const handleOnMouseEnter = useCallback(() => {\n if (onMouseEnter) {\n onMouseEnter(id);\n }\n }, [onMouseEnter, id]);\n\n return (\n <StyledOption\n ref={hover ? ref : null}\n title={name}\n onMouseEnter={handleOnMouseEnter}\n className={classnames(\"c-option\", className)}\n hover={hover}\n onClick={onClick}\n >\n {renderOption ? renderOption : name}\n </StyledOption>\n );\n }\n);\n\nOption.displayName = \"Option\";\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAQA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,OAAA,GAAAH,OAAA;AAAwC,SAAAE,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAH,UAAA,SAAAG,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAF,OAAA,EAAAE,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAJ,CAAA,UAAAG,CAAA,CAAAE,GAAA,CAAAL,CAAA,OAAAM,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAZ,CAAA,oBAAAY,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAY,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAX,CAAA,EAAAY,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,IAAAZ,CAAA,CAAAY,CAAA,YAAAN,CAAA,CAAAR,OAAA,GAAAE,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAc,GAAA,CAAAjB,CAAA,EAAAM,CAAA,GAAAA,CAAA;AAkCjC,IAAMY,MAAM,GAAAC,OAAA,CAAAD,MAAA,gBAAG,IAAAE,iBAAU,EAC9B,UAAAC,IAAA,EAUEC,GAAuB,EACpB;EAAA,IATDC,EAAE,GAAAF,IAAA,CAAFE,EAAE;IACFC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IACJC,KAAK,GAAAJ,IAAA,CAALI,KAAK;IACLC,SAAS,GAAAL,IAAA,CAATK,SAAS;IACTC,YAAY,GAAAN,IAAA,CAAZM,YAAY;IACZC,YAAY,GAAAP,IAAA,CAAZO,YAAY;IAAAC,YAAA,GAAAR,IAAA,CACZS,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG;MAAA,OAAM,IAAI;IAAA,IAAAA,YAAA;EAItB,IAAME,kBAAkB,GAAG,IAAAC,kBAAW,EAAC,YAAM;IAC3C,IAAIJ,YAAY,EAAE;MAChBA,YAAY,CAACL,EAAE,CAAC;IAClB;EACF,CAAC,EAAE,CAACK,YAAY,EAAEL,EAAE,CAAC,CAAC;EAEtB,oBACEjC,MAAA,CAAAQ,OAAA,CAAAmC,aAAA,CAACtC,OAAA,CAAAuC,YAAY;IACXZ,GAAG,EAAEG,KAAK,GAAGH,GAAG,GAAG,IAAK;IACxBa,KAAK,EAAEX,IAAK;IACZI,YAAY,EAAEG,kBAAmB;IACjCL,SAAS,EAAE,IAAAU,mBAAU,EAAC,UAAU,EAAEV,SAAS,CAAE;IAC7CD,KAAK,EAAEA,KAAM;IACbK,OAAO,EAAEA;EAAQ,GAEhBH,YAAY,GAAGA,YAAY,GAAGH,IACnB,CAAC;AAEnB,CACF,CAAC;AAEDN,MAAM,CAACmB,WAAW,GAAG,QAAQ"}
1
+ {"version":3,"file":"Option.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","Option","exports","forwardRef","_ref","ref","id","name","hover","className","renderOption","onMouseEnter","_ref$onClick","onClick","handleOnMouseEnter","useCallback","createElement","StyledOption","title","classnames","displayName"],"sources":["../../../../../src/components/Select/Option/Option.tsx"],"sourcesContent":["import React, {\n forwardRef,\n MouseEventHandler,\n ReactNode,\n Ref,\n useCallback,\n} from \"react\";\n\nimport classnames from \"classnames\";\n\nimport { StyledOption } from \"./Styles\";\n\nexport interface IOptionItemProps {\n /** Value of option */\n id: string | number;\n /** Label of option */\n name: string;\n /** Additional info right-side of name */\n additionalInfo?: string;\n /** image url for Avatar or MultiAvatar */\n image?: string | string[];\n /** Hex color for label */\n color?: string;\n /** Color for chip label */\n chipColor?: string;\n /** Value of mixed */\n mixed?: boolean;\n}\n\ninterface IAdditionalOptionItemProps {\n /** Value of option */\n id?: string | number;\n /** Label of option */\n name: string;\n /** Hovered state */\n hover?: boolean;\n /** Class name of option */\n className?: string;\n /** Render option function */\n renderOption?: ReactNode;\n /** On mouse enter callback */\n onMouseEnter?: (e: string | number | undefined) => void;\n /** On mouse click */\n onClick?: MouseEventHandler<HTMLLIElement>;\n}\n\nexport const Option = forwardRef(\n (\n {\n id,\n name,\n hover,\n className,\n renderOption,\n onMouseEnter,\n onClick = () => null,\n }: IAdditionalOptionItemProps,\n ref: Ref<HTMLLIElement>\n ) => {\n const handleOnMouseEnter = useCallback(() => {\n if (onMouseEnter) {\n onMouseEnter(id);\n }\n }, [onMouseEnter, id]);\n\n return (\n <StyledOption\n ref={hover ? ref : null}\n title={name}\n onMouseEnter={handleOnMouseEnter}\n className={classnames(\"c-option\", className)}\n hover={hover}\n onClick={onClick}\n >\n {renderOption ? renderOption : name}\n </StyledOption>\n );\n }\n);\n\nOption.displayName = \"Option\";\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAQA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,OAAA,GAAAH,OAAA;AAAwC,SAAAE,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAH,UAAA,SAAAG,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAF,OAAA,EAAAE,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAJ,CAAA,UAAAG,CAAA,CAAAE,GAAA,CAAAL,CAAA,OAAAM,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAZ,CAAA,oBAAAY,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAY,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAX,CAAA,EAAAY,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,IAAAZ,CAAA,CAAAY,CAAA,YAAAN,CAAA,CAAAR,OAAA,GAAAE,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAc,GAAA,CAAAjB,CAAA,EAAAM,CAAA,GAAAA,CAAA;AAoCjC,IAAMY,MAAM,GAAAC,OAAA,CAAAD,MAAA,gBAAG,IAAAE,iBAAU,EAC9B,UAAAC,IAAA,EAUEC,GAAuB,EACpB;EAAA,IATDC,EAAE,GAAAF,IAAA,CAAFE,EAAE;IACFC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IACJC,KAAK,GAAAJ,IAAA,CAALI,KAAK;IACLC,SAAS,GAAAL,IAAA,CAATK,SAAS;IACTC,YAAY,GAAAN,IAAA,CAAZM,YAAY;IACZC,YAAY,GAAAP,IAAA,CAAZO,YAAY;IAAAC,YAAA,GAAAR,IAAA,CACZS,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG;MAAA,OAAM,IAAI;IAAA,IAAAA,YAAA;EAItB,IAAME,kBAAkB,GAAG,IAAAC,kBAAW,EAAC,YAAM;IAC3C,IAAIJ,YAAY,EAAE;MAChBA,YAAY,CAACL,EAAE,CAAC;IAClB;EACF,CAAC,EAAE,CAACK,YAAY,EAAEL,EAAE,CAAC,CAAC;EAEtB,oBACEjC,MAAA,CAAAQ,OAAA,CAAAmC,aAAA,CAACtC,OAAA,CAAAuC,YAAY;IACXZ,GAAG,EAAEG,KAAK,GAAGH,GAAG,GAAG,IAAK;IACxBa,KAAK,EAAEX,IAAK;IACZI,YAAY,EAAEG,kBAAmB;IACjCL,SAAS,EAAE,IAAAU,mBAAU,EAAC,UAAU,EAAEV,SAAS,CAAE;IAC7CD,KAAK,EAAEA,KAAM;IACbK,OAAO,EAAEA;EAAQ,GAEhBH,YAAY,GAAGA,YAAY,GAAGH,IACnB,CAAC;AAEnB,CACF,CAAC;AAEDN,MAAM,CAACmB,WAAW,GAAG,QAAQ"}
@@ -23,7 +23,9 @@ var OptionGroup = exports.OptionGroup = function OptionGroup(_ref) {
23
23
  onChange = _ref.onChange,
24
24
  setHover = _ref.setHover,
25
25
  renderOptions = _ref.renderOptions,
26
- optionGroupClassName = _ref.optionGroupClassName;
26
+ optionGroupClassName = _ref.optionGroupClassName,
27
+ _ref$mixedOptions = _ref.mixedOptions,
28
+ mixedOptions = _ref$mixedOptions === void 0 ? [] : _ref$mixedOptions;
27
29
  var list = (0, _react.useMemo)(function () {
28
30
  return filter ? options.filter(function (v) {
29
31
  return v.name.toLowerCase().includes(filter.trim().toLowerCase());
@@ -53,6 +55,13 @@ var OptionGroup = exports.OptionGroup = function OptionGroup(_ref) {
53
55
  return option.id;
54
56
  });
55
57
  }, [options]);
58
+ var isMixed = (0, _react.useMemo)(function () {
59
+ return (options.some(function (option) {
60
+ return checked.includes(option.id);
61
+ }) || mixedOptions.some(function (item) {
62
+ return allOptionValues.includes(item);
63
+ })) && !isAllOptionsChecked;
64
+ }, [allOptionValues, checked, isAllOptionsChecked, mixedOptions, options]);
56
65
  var handleClick = (0, _react.useCallback)(function (e) {
57
66
  e.stopPropagation();
58
67
  if (onChange) {
@@ -82,9 +91,7 @@ var OptionGroup = exports.OptionGroup = function OptionGroup(_ref) {
82
91
  }, name), type === "multiple" && /*#__PURE__*/_react.default.createElement(_Checkbox.Checkbox, {
83
92
  id: `${id}`,
84
93
  checked: isAllOptionsChecked,
85
- isIndeterminate: options.some(function (option) {
86
- return checked.includes(option.id);
87
- }) && !isAllOptionsChecked,
94
+ mixed: isMixed,
88
95
  onChange: handleClick,
89
96
  type: "checkbox"
90
97
  }))), /*#__PURE__*/_react.default.createElement(_List.List, null, list.map(function (item, index) {