@activecollab/components 2.0.275 → 2.0.277

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.
@@ -89,6 +89,8 @@ var EditableText = exports.EditableText = /*#__PURE__*/(0, _react.forwardRef)(fu
89
89
  e.target.blur();
90
90
  }
91
91
  if (e.key === "Escape") {
92
+ e.preventDefault();
93
+ e.stopPropagation();
92
94
  escapeRef.current = true;
93
95
  e.target.blur();
94
96
  typeof onCancel === "function" && onCancel(e);
@@ -1 +1 @@
1
- {"version":3,"file":"EditableText.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_EditableContent","_Styles","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_extends","assign","bind","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","iterator","u","next","done","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","EditableText","exports","forwardRef","_ref","ref","onSave","onCancel","inputProps","allowEmptyString","_ref$multiline","multiline","_ref$variant","variant","weight","_ref$disabled","disabled","invalid","wrapRef","children","props","_useState","useState","_useState2","currentValue","setCurrentValue","_useState3","_useState4","prevValue","setPrevValue","escapeRef","useRef","intTextareaRef","useEffect","handleBlur","useCallback","current","target","trim","scrollLeft","handleFocus","textarea","setSelectionRange","handleKeyDown","key","blur","handleChange","createElement","StyledDiv","$multiline","StyledMultilineSpan","forwardedAs","$disabled","className","onClick","focus","replace","StyledTextareaSpan","onFocus","onBlur","onKeyDown","onChange","placeholder","classNames","rows","EditableContent","type","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport classNames from \"classnames\";\n\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport {\n StyledDiv,\n StyledMultilineSpan,\n StyledTextareaSpan,\n} from \"../EditableContent/Styles\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value?: string | null;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: (e) => void;\n /** If true, setting empty value will save it, instead of revert to previous value. */\n allowEmptyString?: boolean;\n /** If true, shows a textarea instead of input for multiline editing. */\n multiline?: boolean;\n /** Children content to display */\n children?: React.ReactNode;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n (\n {\n onSave,\n onCancel,\n value,\n inputProps,\n allowEmptyString,\n multiline = false,\n variant = \"Body 2\",\n weight,\n disabled = false,\n invalid,\n wrapRef,\n children,\n ...props\n },\n ref\n ) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n const intTextareaRef = useRef<HTMLTextAreaElement>(null);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n !allowEmptyString\n ? setCurrentValue(prevValue)\n : typeof onSave === \"function\" &&\n prevValue !== e.target.value &&\n onSave(e);\n }\n }\n // Reset scroll position for textarea\n if (multiline && intTextareaRef?.current) {\n intTextareaRef.current.scrollLeft = 0;\n }\n },\n [allowEmptyString, onSave, prevValue, multiline]\n );\n\n const handleFocus = useCallback(\n (e) => {\n if (multiline) {\n const textarea = e.target;\n const length = textarea.value.length;\n textarea.setSelectionRange(length, length);\n }\n },\n [multiline]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\" && !multiline) {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel(e);\n }\n },\n [onCancel, multiline]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n if (multiline) {\n return (\n <StyledDiv ref={ref || wrapRef} {...props} $multiline={multiline}>\n <StyledMultilineSpan\n variant={variant}\n forwardedAs=\"span\"\n weight={weight}\n $disabled={disabled}\n invalid={invalid}\n className=\"presentation\"\n onClick={() => {\n if (!disabled && intTextareaRef.current) {\n intTextareaRef.current.focus();\n }\n }}\n >\n {children\n ? children\n : String(currentValue || \"\").replace(/\\n/g, \" \")}\n </StyledMultilineSpan>\n <StyledTextareaSpan\n ref={intTextareaRef}\n forwardedAs=\"textarea\"\n variant={variant}\n weight={weight}\n value={currentValue ?? \"\"}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n disabled={disabled}\n invalid={invalid}\n data-form-type=\"other\"\n placeholder={inputProps?.placeholder}\n className={classNames(\"c-textarea\", inputProps?.className)}\n rows={3}\n {...inputProps}\n />\n </StyledDiv>\n );\n }\n\n return (\n <EditableContent\n {...props}\n variant={variant}\n weight={weight}\n disabled={disabled}\n invalid={invalid}\n wrapRef={wrapRef}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue ?? \"\",\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n >\n {children}\n </EditableContent>\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"EditableText.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_EditableContent","_Styles","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_extends","assign","bind","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","iterator","u","next","done","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","EditableText","exports","forwardRef","_ref","ref","onSave","onCancel","inputProps","allowEmptyString","_ref$multiline","multiline","_ref$variant","variant","weight","_ref$disabled","disabled","invalid","wrapRef","children","props","_useState","useState","_useState2","currentValue","setCurrentValue","_useState3","_useState4","prevValue","setPrevValue","escapeRef","useRef","intTextareaRef","useEffect","handleBlur","useCallback","current","target","trim","scrollLeft","handleFocus","textarea","setSelectionRange","handleKeyDown","key","blur","preventDefault","stopPropagation","handleChange","createElement","StyledDiv","$multiline","StyledMultilineSpan","forwardedAs","$disabled","className","onClick","focus","replace","StyledTextareaSpan","onFocus","onBlur","onKeyDown","onChange","placeholder","classNames","rows","EditableContent","type","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport classNames from \"classnames\";\n\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport {\n StyledDiv,\n StyledMultilineSpan,\n StyledTextareaSpan,\n} from \"../EditableContent/Styles\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value?: string | null;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: (e) => void;\n /** If true, setting empty value will save it, instead of revert to previous value. */\n allowEmptyString?: boolean;\n /** If true, shows a textarea instead of input for multiline editing. */\n multiline?: boolean;\n /** Children content to display */\n children?: React.ReactNode;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n (\n {\n onSave,\n onCancel,\n value,\n inputProps,\n allowEmptyString,\n multiline = false,\n variant = \"Body 2\",\n weight,\n disabled = false,\n invalid,\n wrapRef,\n children,\n ...props\n },\n ref\n ) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n const intTextareaRef = useRef<HTMLTextAreaElement>(null);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n !allowEmptyString\n ? setCurrentValue(prevValue)\n : typeof onSave === \"function\" &&\n prevValue !== e.target.value &&\n onSave(e);\n }\n }\n // Reset scroll position for textarea\n if (multiline && intTextareaRef?.current) {\n intTextareaRef.current.scrollLeft = 0;\n }\n },\n [allowEmptyString, onSave, prevValue, multiline]\n );\n\n const handleFocus = useCallback(\n (e) => {\n if (multiline) {\n const textarea = e.target;\n const length = textarea.value.length;\n textarea.setSelectionRange(length, length);\n }\n },\n [multiline]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\" && !multiline) {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel(e);\n }\n },\n [onCancel, multiline]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n if (multiline) {\n return (\n <StyledDiv ref={ref || wrapRef} {...props} $multiline={multiline}>\n <StyledMultilineSpan\n variant={variant}\n forwardedAs=\"span\"\n weight={weight}\n $disabled={disabled}\n invalid={invalid}\n className=\"presentation\"\n onClick={() => {\n if (!disabled && intTextareaRef.current) {\n intTextareaRef.current.focus();\n }\n }}\n >\n {children\n ? children\n : String(currentValue || \"\").replace(/\\n/g, \" \")}\n </StyledMultilineSpan>\n <StyledTextareaSpan\n ref={intTextareaRef}\n forwardedAs=\"textarea\"\n variant={variant}\n weight={weight}\n value={currentValue ?? \"\"}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n disabled={disabled}\n invalid={invalid}\n data-form-type=\"other\"\n placeholder={inputProps?.placeholder}\n className={classNames(\"c-textarea\", inputProps?.className)}\n rows={3}\n {...inputProps}\n />\n </StyledDiv>\n );\n }\n\n return (\n <EditableContent\n {...props}\n variant={variant}\n weight={weight}\n disabled={disabled}\n invalid={invalid}\n wrapRef={wrapRef}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue ?? \"\",\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n >\n {children}\n </EditableContent>\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":"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","ignoreList":[]}
@@ -69,7 +69,6 @@ var Select = exports.Select = function Select(_ref) {
69
69
  var elementRef = (0, _react.useRef)(null);
70
70
  var handleRef = (0, _useForkRef.default)(childNode, elementRef);
71
71
  var Tag = !target ? "div" : _Menu.Menu;
72
- var formRef = (0, _react.useRef)(null);
73
72
  var _useState = (0, _react.useState)(false),
74
73
  _useState2 = _slicedToArray(_useState, 2),
75
74
  open = _useState2[0],
@@ -159,12 +158,14 @@ var Select = exports.Select = function Select(_ref) {
159
158
  };
160
159
  }, [target, selectClassName, onClose, onOpen, mode, open, position]);
161
160
  var handleEmptyAction = (0, _react.useCallback)(function (value) {
162
- var _formRef$current;
163
161
  emptyAction(value);
164
162
  if (forceCloseMenu) {
165
163
  setOpen(false);
166
164
  }
167
- (_formRef$current = formRef.current) === null || _formRef$current === void 0 || _formRef$current.reset();
165
+ // Clear the search input without triggering form reset events
166
+ if (elementRef !== null && elementRef !== void 0 && elementRef.current) {
167
+ elementRef.current.value = "";
168
+ }
168
169
  }, [emptyAction, forceCloseMenu]);
169
170
  var handleDefaultOptionChangeCallback = (0, _react.useCallback)(function () {
170
171
  if (type === "multiple") {
@@ -211,9 +212,7 @@ var Select = exports.Select = function Select(_ref) {
211
212
  mixed: mixedOptions.current.includes(option.id)
212
213
  }, props)) : /*#__PURE__*/_react.default.createElement(_Styles.StyledRadioButton, props));
213
214
  }, [isAllOptionsChecked, renderOption, type, someOptionsChecked, selectedOptions]);
214
- return /*#__PURE__*/_react.default.createElement(Tag, props, /*#__PURE__*/_react.default.createElement("div", null, !disableSearch ? /*#__PURE__*/_react.default.createElement(_Styles.StyledSelectForm, {
215
- ref: formRef
216
- }, startAdornment ? /*#__PURE__*/_react.default.createElement(_Styles.StyledStartAdornment, null, startAdornment) : null, /*#__PURE__*/_react.default.createElement(_Styles.StyledSelectInput, {
215
+ return /*#__PURE__*/_react.default.createElement(Tag, props, /*#__PURE__*/_react.default.createElement("div", null, !disableSearch ? /*#__PURE__*/_react.default.createElement(_Styles.StyledSelectForm, null, startAdornment ? /*#__PURE__*/_react.default.createElement(_Styles.StyledStartAdornment, null, startAdornment) : null, /*#__PURE__*/_react.default.createElement(_Styles.StyledSelectInput, {
217
216
  ref: handleRef,
218
217
  placeholder: placeholder
219
218
  }), endAdornment ? /*#__PURE__*/_react.default.createElement(_Styles.StyledEndAdornment, null, endAdornment) : null) : null, /*#__PURE__*/_react.default.createElement(_Autocomplete.Autocomplete, _extends({}, prop, {
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_OptionContent","_Styles","_useForkRef","_Autocomplete","_Menu","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","Symbol","iterator","u","next","done","push","value","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","Select","exports","_ref","_ref$type","type","mode","target","options","_ref$selected","selected","_ref$mixed","mixed","_ref$position","position","_ref$onChange","onChange","placeholder","_ref$emptyAction","emptyAction","_ref$disableSearch","disableSearch","forceCloseMenu","selectClassName","_ref$keepSameOptionsO","keepSameOptionsOrder","onSelectOpen","onSelectClose","renderOption","handleDefaultOptionChange","_ref$preselectDefault","preselectDefaultValue","startAdornment","endAdornment","_ref$focusInput","focusInput","disableVirtualization","prop","console","warn","childNode","useRef","elementRef","handleRef","useForkRef","Tag","Menu","formRef","_useState","useState","_useState2","open","setOpen","selectedOptions","useMemo","selectOptions","allOptionValues","reduce","acc","option","isOptionGroup","id","allGroupOptions","map","mixedOptions","removeFromMixedOptions","useCallback","idsToRemove","current","filter","mixedOption","includes","isAllOptionsChecked","every","someOptionsChecked","some","useEffect","_childNode$current","focus","handleChange","selectedValue","undefined","onClose","onOpen","props","menuClassName","classNames","onPopperOpen","_elementRef$current","className","handleEmptyAction","_formRef$current","reset","handleDefaultOptionChangeCallback","handleRenderOption","createElement","Fragment","OptionContent","imageUrl","image","color","textColor","additionalInfo","StyledCheckbox","checked","StyledRadioButton","StyledSelectForm","ref","StyledStartAdornment","StyledSelectInput","StyledEndAdornment","Autocomplete","clearInputOnSelect","inputEl","displayName"],"sources":["../../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n ReactElement,\n useMemo,\n useEffect,\n useRef,\n Ref,\n ReactNode,\n} from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classNames from \"classnames\";\n\nimport { OptionContent } from \"./OptionContent/OptionContent\";\nimport {\n StyledSelectForm,\n StyledSelectInput,\n StyledCheckbox,\n StyledRadioButton,\n StyledStartAdornment,\n StyledEndAdornment,\n} from \"./Styles\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Autocomplete, isOptionGroup } from \"../Autocomplete\";\nimport { IAutocompleteProps } from \"../Autocomplete/Autocomplete\";\nimport { Menu } from \"../Menu/Menu\";\nimport { IOptionItemProps } from \"../Select/Option\";\nimport { IOptionGroupProps } from \"../Select/OptionGroup\";\n\nexport interface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\nexport interface ISelectProps\n extends Omit<\n IAutocompleteProps,\n | \"handleChange\"\n | \"inputEl\"\n | \"handleEmptyAction\"\n | \"clearInputOnSelect\"\n | \"mixedOptions\"\n > {\n /** Menu width mode */\n mode?: \"normal\" | \"wider\" | \"tiny\";\n /** Set select target element */\n target?: ElementWithRef<Element>;\n /** Set Select position */\n position?: Placement;\n /** onChange callback */\n onChange?: (e: (string | number)[] | string | number) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** Function that triggers when empty is clicked */\n emptyAction?: (e: string | undefined) => void;\n /** Removes input from Select */\n disableSearch?: boolean;\n /** Close menu on select */\n forceCloseMenu?: boolean;\n /** Set select classNames */\n selectClassName?: string;\n /** Callback called when the Select menu is opened */\n onSelectOpen?: () => void;\n /** Callback called when the Select menu is closed */\n onSelectClose?: () => void;\n /** Node element on the left side */\n startAdornment?: ReactNode;\n /** Node element on the right side */\n endAdornment?: ReactNode;\n /** Focus search input on inline select */\n focusInput?: boolean;\n /** Mixed options values */\n mixed?: (string | number)[];\n disableVirtualization?: boolean;\n}\n\nexport const Select: FC<ISelectProps> = ({\n type = \"single\",\n mode,\n target,\n options,\n selected = [],\n mixed = [],\n position = \"bottom-start\",\n onChange = () => null,\n placeholder,\n emptyAction = (): null => null,\n disableSearch = false,\n forceCloseMenu,\n selectClassName,\n keepSameOptionsOrder = false,\n onSelectOpen,\n onSelectClose,\n renderOption,\n handleDefaultOptionChange,\n preselectDefaultValue = type === \"single\",\n startAdornment,\n endAdornment,\n focusInput = false,\n disableVirtualization,\n ...prop\n}) => {\n if (disableSearch && (startAdornment || endAdornment)) {\n console.warn(\"Adornments are not visible when search bar is hidden\");\n }\n const childNode = useRef<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n\n const handleRef = useForkRef(childNode, elementRef);\n\n const Tag = !target ? \"div\" : Menu;\n const formRef = useRef<HTMLFormElement | null>(null);\n\n const [open, setOpen] = useState(false);\n\n const selectedOptions = useMemo(\n () => (selected instanceof Array ? selected : [selected]),\n [selected]\n );\n\n const selectOptions = useMemo(() => {\n if (!options) {\n return [];\n }\n return options;\n }, [options]);\n\n const allOptionValues = useMemo(() => {\n return selectOptions.reduce(\n (\n acc: (string | number)[],\n option: IOptionGroupProps | IOptionItemProps\n ) => {\n if (!isOptionGroup(option)) {\n return [...acc, option.id];\n }\n const allGroupOptions = option.options.map((option) => option.id);\n return [...acc, ...allGroupOptions];\n },\n []\n );\n }, [selectOptions]);\n\n const mixedOptions = useRef(type === \"multiple\" && mixed.length ? mixed : []);\n\n const removeFromMixedOptions = useCallback(\n (idsToRemove: (string | number)[]) => {\n mixedOptions.current = mixedOptions.current.filter(\n (mixedOption) => !idsToRemove.includes(mixedOption)\n );\n },\n []\n );\n\n const isAllOptionsChecked = useMemo(\n () => allOptionValues.every((option) => selectedOptions.includes(option)),\n [allOptionValues, selectedOptions]\n );\n\n const someOptionsChecked = useMemo(\n () => allOptionValues.some((option) => selectedOptions.includes(option)),\n [allOptionValues, selectedOptions]\n );\n\n useEffect(() => {\n if ((open && target) || (!target && focusInput)) {\n childNode?.current?.focus();\n }\n }, [focusInput, open, target]);\n\n const handleChange = useCallback(\n (selectedValue) => {\n if (forceCloseMenu) {\n if (typeof onSelectClose === \"function\") onSelectClose();\n setOpen(false);\n }\n if (\n selectedValue !== undefined &&\n selectedValue !== selected &&\n !(selectedValue instanceof Array && selectedValue.includes(undefined))\n ) {\n onChange(selectedValue);\n type === \"multiple\" &&\n mixedOptions.current.length &&\n removeFromMixedOptions(selectedValue);\n }\n },\n [\n forceCloseMenu,\n selected,\n onSelectClose,\n onChange,\n type,\n removeFromMixedOptions,\n ]\n );\n\n const onClose = useCallback(() => {\n setOpen(false);\n if (onSelectClose) {\n onSelectClose();\n }\n }, [onSelectClose]);\n\n const onOpen = useCallback(() => {\n setOpen(true);\n if (onSelectOpen) {\n onSelectOpen();\n }\n }, [onSelectOpen]);\n\n const props = useMemo(() => {\n if (target) {\n return {\n menuClassName: classNames(\"c-select\", selectClassName),\n onClose,\n onOpen,\n target,\n mode,\n open,\n position,\n onPopperOpen: () => elementRef?.current?.focus(),\n };\n }\n return { className: classNames(\"c-select\", selectClassName) };\n }, [target, selectClassName, onClose, onOpen, mode, open, position]);\n\n const handleEmptyAction = useCallback(\n (value) => {\n emptyAction(value);\n if (forceCloseMenu) {\n setOpen(false);\n }\n formRef.current?.reset();\n },\n [emptyAction, forceCloseMenu]\n );\n\n const handleDefaultOptionChangeCallback = useCallback(() => {\n if (type === \"multiple\") {\n if (selectedOptions.length === allOptionValues.length) {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange([]);\n }\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange(allOptionValues);\n }\n }\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange(\"\");\n }\n }\n if (forceCloseMenu) {\n setOpen(false);\n }\n }, [\n onChange,\n type,\n forceCloseMenu,\n selectedOptions.length,\n allOptionValues,\n handleDefaultOptionChange,\n ]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n additionalInfo={option.additionalInfo}\n />\n {option.id === null ? (\n type === \"multiple\" ? (\n <StyledCheckbox\n checked={isAllOptionsChecked}\n mixed={someOptionsChecked && !isAllOptionsChecked}\n {...props}\n />\n ) : (\n <StyledRadioButton\n checked={selectedOptions.length < 1 || !selectedOptions[0]}\n {...props}\n />\n )\n ) : type === \"multiple\" ? (\n <StyledCheckbox\n mixed={mixedOptions.current.includes(option.id)}\n {...props}\n />\n ) : (\n <StyledRadioButton {...props} />\n )}\n </>\n );\n },\n [\n isAllOptionsChecked,\n renderOption,\n type,\n someOptionsChecked,\n selectedOptions,\n ]\n );\n\n return (\n <Tag {...props}>\n <div>\n {!disableSearch ? (\n <StyledSelectForm ref={formRef}>\n {startAdornment ? (\n <StyledStartAdornment>{startAdornment}</StyledStartAdornment>\n ) : null}\n <StyledSelectInput ref={handleRef} placeholder={placeholder} />\n {endAdornment ? (\n <StyledEndAdornment>{endAdornment}</StyledEndAdornment>\n ) : null}\n </StyledSelectForm>\n ) : null}\n <Autocomplete\n {...prop}\n clearInputOnSelect\n inputEl={disableSearch ? undefined : childNode}\n handleEmptyAction={handleEmptyAction}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n mixedOptions={mixedOptions.current}\n handleDefaultOptionChange={handleDefaultOptionChangeCallback}\n type={type}\n preselectDefaultValue={preselectDefaultValue}\n keepSameOptionsOrder={keepSameOptionsOrder}\n disableVirtualization={disableVirtualization}\n />\n </div>\n </Tag>\n );\n};\n\nSelect.displayName = \"Select\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Select.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_OptionContent","_Styles","_useForkRef","_Autocomplete","_Menu","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","Symbol","iterator","u","next","done","push","value","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","Select","exports","_ref","_ref$type","type","mode","target","options","_ref$selected","selected","_ref$mixed","mixed","_ref$position","position","_ref$onChange","onChange","placeholder","_ref$emptyAction","emptyAction","_ref$disableSearch","disableSearch","forceCloseMenu","selectClassName","_ref$keepSameOptionsO","keepSameOptionsOrder","onSelectOpen","onSelectClose","renderOption","handleDefaultOptionChange","_ref$preselectDefault","preselectDefaultValue","startAdornment","endAdornment","_ref$focusInput","focusInput","disableVirtualization","prop","console","warn","childNode","useRef","elementRef","handleRef","useForkRef","Tag","Menu","_useState","useState","_useState2","open","setOpen","selectedOptions","useMemo","selectOptions","allOptionValues","reduce","acc","option","isOptionGroup","id","allGroupOptions","map","mixedOptions","removeFromMixedOptions","useCallback","idsToRemove","current","filter","mixedOption","includes","isAllOptionsChecked","every","someOptionsChecked","some","useEffect","_childNode$current","focus","handleChange","selectedValue","undefined","onClose","onOpen","props","menuClassName","classNames","onPopperOpen","_elementRef$current","className","handleEmptyAction","handleDefaultOptionChangeCallback","handleRenderOption","createElement","Fragment","OptionContent","imageUrl","image","color","textColor","additionalInfo","StyledCheckbox","checked","StyledRadioButton","StyledSelectForm","StyledStartAdornment","StyledSelectInput","ref","StyledEndAdornment","Autocomplete","clearInputOnSelect","inputEl","displayName"],"sources":["../../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n ReactElement,\n useMemo,\n useEffect,\n useRef,\n Ref,\n ReactNode,\n} from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classNames from \"classnames\";\n\nimport { OptionContent } from \"./OptionContent/OptionContent\";\nimport {\n StyledSelectForm,\n StyledSelectInput,\n StyledCheckbox,\n StyledRadioButton,\n StyledStartAdornment,\n StyledEndAdornment,\n} from \"./Styles\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Autocomplete, isOptionGroup } from \"../Autocomplete\";\nimport { IAutocompleteProps } from \"../Autocomplete/Autocomplete\";\nimport { Menu } from \"../Menu/Menu\";\nimport { IOptionItemProps } from \"../Select/Option\";\nimport { IOptionGroupProps } from \"../Select/OptionGroup\";\n\nexport interface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\nexport interface ISelectProps\n extends Omit<\n IAutocompleteProps,\n | \"handleChange\"\n | \"inputEl\"\n | \"handleEmptyAction\"\n | \"clearInputOnSelect\"\n | \"mixedOptions\"\n > {\n /** Menu width mode */\n mode?: \"normal\" | \"wider\" | \"tiny\";\n /** Set select target element */\n target?: ElementWithRef<Element>;\n /** Set Select position */\n position?: Placement;\n /** onChange callback */\n onChange?: (e: (string | number)[] | string | number) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** Function that triggers when empty is clicked */\n emptyAction?: (e: string | undefined) => void;\n /** Removes input from Select */\n disableSearch?: boolean;\n /** Close menu on select */\n forceCloseMenu?: boolean;\n /** Set select classNames */\n selectClassName?: string;\n /** Callback called when the Select menu is opened */\n onSelectOpen?: () => void;\n /** Callback called when the Select menu is closed */\n onSelectClose?: () => void;\n /** Node element on the left side */\n startAdornment?: ReactNode;\n /** Node element on the right side */\n endAdornment?: ReactNode;\n /** Focus search input on inline select */\n focusInput?: boolean;\n /** Mixed options values */\n mixed?: (string | number)[];\n disableVirtualization?: boolean;\n}\n\nexport const Select: FC<ISelectProps> = ({\n type = \"single\",\n mode,\n target,\n options,\n selected = [],\n mixed = [],\n position = \"bottom-start\",\n onChange = () => null,\n placeholder,\n emptyAction = (): null => null,\n disableSearch = false,\n forceCloseMenu,\n selectClassName,\n keepSameOptionsOrder = false,\n onSelectOpen,\n onSelectClose,\n renderOption,\n handleDefaultOptionChange,\n preselectDefaultValue = type === \"single\",\n startAdornment,\n endAdornment,\n focusInput = false,\n disableVirtualization,\n ...prop\n}) => {\n if (disableSearch && (startAdornment || endAdornment)) {\n console.warn(\"Adornments are not visible when search bar is hidden\");\n }\n const childNode = useRef<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n\n const handleRef = useForkRef(childNode, elementRef);\n\n const Tag = !target ? \"div\" : Menu;\n\n const [open, setOpen] = useState(false);\n\n const selectedOptions = useMemo(\n () => (selected instanceof Array ? selected : [selected]),\n [selected]\n );\n\n const selectOptions = useMemo(() => {\n if (!options) {\n return [];\n }\n return options;\n }, [options]);\n\n const allOptionValues = useMemo(() => {\n return selectOptions.reduce(\n (\n acc: (string | number)[],\n option: IOptionGroupProps | IOptionItemProps\n ) => {\n if (!isOptionGroup(option)) {\n return [...acc, option.id];\n }\n const allGroupOptions = option.options.map((option) => option.id);\n return [...acc, ...allGroupOptions];\n },\n []\n );\n }, [selectOptions]);\n\n const mixedOptions = useRef(type === \"multiple\" && mixed.length ? mixed : []);\n\n const removeFromMixedOptions = useCallback(\n (idsToRemove: (string | number)[]) => {\n mixedOptions.current = mixedOptions.current.filter(\n (mixedOption) => !idsToRemove.includes(mixedOption)\n );\n },\n []\n );\n\n const isAllOptionsChecked = useMemo(\n () => allOptionValues.every((option) => selectedOptions.includes(option)),\n [allOptionValues, selectedOptions]\n );\n\n const someOptionsChecked = useMemo(\n () => allOptionValues.some((option) => selectedOptions.includes(option)),\n [allOptionValues, selectedOptions]\n );\n\n useEffect(() => {\n if ((open && target) || (!target && focusInput)) {\n childNode?.current?.focus();\n }\n }, [focusInput, open, target]);\n\n const handleChange = useCallback(\n (selectedValue) => {\n if (forceCloseMenu) {\n if (typeof onSelectClose === \"function\") onSelectClose();\n setOpen(false);\n }\n if (\n selectedValue !== undefined &&\n selectedValue !== selected &&\n !(selectedValue instanceof Array && selectedValue.includes(undefined))\n ) {\n onChange(selectedValue);\n type === \"multiple\" &&\n mixedOptions.current.length &&\n removeFromMixedOptions(selectedValue);\n }\n },\n [\n forceCloseMenu,\n selected,\n onSelectClose,\n onChange,\n type,\n removeFromMixedOptions,\n ]\n );\n\n const onClose = useCallback(() => {\n setOpen(false);\n if (onSelectClose) {\n onSelectClose();\n }\n }, [onSelectClose]);\n\n const onOpen = useCallback(() => {\n setOpen(true);\n if (onSelectOpen) {\n onSelectOpen();\n }\n }, [onSelectOpen]);\n\n const props = useMemo(() => {\n if (target) {\n return {\n menuClassName: classNames(\"c-select\", selectClassName),\n onClose,\n onOpen,\n target,\n mode,\n open,\n position,\n onPopperOpen: () => elementRef?.current?.focus(),\n };\n }\n return { className: classNames(\"c-select\", selectClassName) };\n }, [target, selectClassName, onClose, onOpen, mode, open, position]);\n\n const handleEmptyAction = useCallback(\n (value) => {\n emptyAction(value);\n if (forceCloseMenu) {\n setOpen(false);\n }\n // Clear the search input without triggering form reset events\n if (elementRef?.current) {\n elementRef.current.value = \"\";\n }\n },\n [emptyAction, forceCloseMenu]\n );\n\n const handleDefaultOptionChangeCallback = useCallback(() => {\n if (type === \"multiple\") {\n if (selectedOptions.length === allOptionValues.length) {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange([]);\n }\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange(allOptionValues);\n }\n }\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange(\"\");\n }\n }\n if (forceCloseMenu) {\n setOpen(false);\n }\n }, [\n onChange,\n type,\n forceCloseMenu,\n selectedOptions.length,\n allOptionValues,\n handleDefaultOptionChange,\n ]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n additionalInfo={option.additionalInfo}\n />\n {option.id === null ? (\n type === \"multiple\" ? (\n <StyledCheckbox\n checked={isAllOptionsChecked}\n mixed={someOptionsChecked && !isAllOptionsChecked}\n {...props}\n />\n ) : (\n <StyledRadioButton\n checked={selectedOptions.length < 1 || !selectedOptions[0]}\n {...props}\n />\n )\n ) : type === \"multiple\" ? (\n <StyledCheckbox\n mixed={mixedOptions.current.includes(option.id)}\n {...props}\n />\n ) : (\n <StyledRadioButton {...props} />\n )}\n </>\n );\n },\n [\n isAllOptionsChecked,\n renderOption,\n type,\n someOptionsChecked,\n selectedOptions,\n ]\n );\n\n return (\n <Tag {...props}>\n <div>\n {!disableSearch ? (\n <StyledSelectForm>\n {startAdornment ? (\n <StyledStartAdornment>{startAdornment}</StyledStartAdornment>\n ) : null}\n <StyledSelectInput ref={handleRef} placeholder={placeholder} />\n {endAdornment ? (\n <StyledEndAdornment>{endAdornment}</StyledEndAdornment>\n ) : null}\n </StyledSelectForm>\n ) : null}\n <Autocomplete\n {...prop}\n clearInputOnSelect\n inputEl={disableSearch ? undefined : childNode}\n handleEmptyAction={handleEmptyAction}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n mixedOptions={mixedOptions.current}\n handleDefaultOptionChange={handleDefaultOptionChangeCallback}\n type={type}\n preselectDefaultValue={preselectDefaultValue}\n keepSameOptionsOrder={keepSameOptionsOrder}\n disableVirtualization={disableVirtualization}\n />\n </div>\n </Tag>\n );\n};\n\nSelect.displayName = \"Select\";\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"EditableText.d.ts","sourceRoot":"","sources":["../../../../src/components/EditableText/EditableText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,WAAW,EAMZ,MAAM,OAAO,CAAC;AAIf,OAAO,EAEL,wBAAwB,EACzB,MAAM,oCAAoC,CAAC;AAO5C,MAAM,WAAW,qBAAsB,SAAQ,wBAAwB;IACrE,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,gEAAgE;IAChE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,KAAK,IAAI,CAAC;IAC1E,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAA,KAAK,IAAI,CAAC;IACvB,sFAAsF;IACtF,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wEAAwE;IACxE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,eAAO,MAAM,YAAY,8FA2JxB,CAAC"}
1
+ {"version":3,"file":"EditableText.d.ts","sourceRoot":"","sources":["../../../../src/components/EditableText/EditableText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,WAAW,EAMZ,MAAM,OAAO,CAAC;AAIf,OAAO,EAEL,wBAAwB,EACzB,MAAM,oCAAoC,CAAC;AAO5C,MAAM,WAAW,qBAAsB,SAAQ,wBAAwB;IACrE,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,gEAAgE;IAChE,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,KAAK,IAAI,CAAC;IAC1E,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAA,KAAK,IAAI,CAAC;IACvB,sFAAsF;IACtF,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wEAAwE;IACxE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,eAAO,MAAM,YAAY,8FA6JxB,CAAC"}
@@ -62,6 +62,8 @@ export const EditableText = /*#__PURE__*/forwardRef((_ref, ref) => {
62
62
  e.target.blur();
63
63
  }
64
64
  if (e.key === "Escape") {
65
+ e.preventDefault();
66
+ e.stopPropagation();
65
67
  escapeRef.current = true;
66
68
  e.target.blur();
67
69
  typeof onCancel === "function" && onCancel(e);
@@ -1 +1 @@
1
- {"version":3,"file":"EditableText.js","names":["React","forwardRef","useCallback","useEffect","useRef","useState","classNames","EditableContent","StyledDiv","StyledMultilineSpan","StyledTextareaSpan","EditableText","_ref","ref","onSave","onCancel","value","inputProps","allowEmptyString","multiline","variant","weight","disabled","invalid","wrapRef","children","props","_objectWithoutPropertiesLoose","_excluded","currentValue","setCurrentValue","prevValue","setPrevValue","escapeRef","intTextareaRef","handleBlur","e","current","target","trim","length","scrollLeft","handleFocus","textarea","setSelectionRange","handleKeyDown","key","blur","handleChange","createElement","_extends","$multiline","forwardedAs","$disabled","className","onClick","focus","String","replace","onFocus","onBlur","onKeyDown","onChange","placeholder","rows","type","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport classNames from \"classnames\";\n\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport {\n StyledDiv,\n StyledMultilineSpan,\n StyledTextareaSpan,\n} from \"../EditableContent/Styles\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value?: string | null;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: (e) => void;\n /** If true, setting empty value will save it, instead of revert to previous value. */\n allowEmptyString?: boolean;\n /** If true, shows a textarea instead of input for multiline editing. */\n multiline?: boolean;\n /** Children content to display */\n children?: React.ReactNode;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n (\n {\n onSave,\n onCancel,\n value,\n inputProps,\n allowEmptyString,\n multiline = false,\n variant = \"Body 2\",\n weight,\n disabled = false,\n invalid,\n wrapRef,\n children,\n ...props\n },\n ref\n ) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n const intTextareaRef = useRef<HTMLTextAreaElement>(null);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n !allowEmptyString\n ? setCurrentValue(prevValue)\n : typeof onSave === \"function\" &&\n prevValue !== e.target.value &&\n onSave(e);\n }\n }\n // Reset scroll position for textarea\n if (multiline && intTextareaRef?.current) {\n intTextareaRef.current.scrollLeft = 0;\n }\n },\n [allowEmptyString, onSave, prevValue, multiline]\n );\n\n const handleFocus = useCallback(\n (e) => {\n if (multiline) {\n const textarea = e.target;\n const length = textarea.value.length;\n textarea.setSelectionRange(length, length);\n }\n },\n [multiline]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\" && !multiline) {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel(e);\n }\n },\n [onCancel, multiline]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n if (multiline) {\n return (\n <StyledDiv ref={ref || wrapRef} {...props} $multiline={multiline}>\n <StyledMultilineSpan\n variant={variant}\n forwardedAs=\"span\"\n weight={weight}\n $disabled={disabled}\n invalid={invalid}\n className=\"presentation\"\n onClick={() => {\n if (!disabled && intTextareaRef.current) {\n intTextareaRef.current.focus();\n }\n }}\n >\n {children\n ? children\n : String(currentValue || \"\").replace(/\\n/g, \" \")}\n </StyledMultilineSpan>\n <StyledTextareaSpan\n ref={intTextareaRef}\n forwardedAs=\"textarea\"\n variant={variant}\n weight={weight}\n value={currentValue ?? \"\"}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n disabled={disabled}\n invalid={invalid}\n data-form-type=\"other\"\n placeholder={inputProps?.placeholder}\n className={classNames(\"c-textarea\", inputProps?.className)}\n rows={3}\n {...inputProps}\n />\n </StyledDiv>\n );\n }\n\n return (\n <EditableContent\n {...props}\n variant={variant}\n weight={weight}\n disabled={disabled}\n invalid={invalid}\n wrapRef={wrapRef}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue ?? \"\",\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n >\n {children}\n </EditableContent>\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"EditableText.js","names":["React","forwardRef","useCallback","useEffect","useRef","useState","classNames","EditableContent","StyledDiv","StyledMultilineSpan","StyledTextareaSpan","EditableText","_ref","ref","onSave","onCancel","value","inputProps","allowEmptyString","multiline","variant","weight","disabled","invalid","wrapRef","children","props","_objectWithoutPropertiesLoose","_excluded","currentValue","setCurrentValue","prevValue","setPrevValue","escapeRef","intTextareaRef","handleBlur","e","current","target","trim","length","scrollLeft","handleFocus","textarea","setSelectionRange","handleKeyDown","key","blur","preventDefault","stopPropagation","handleChange","createElement","_extends","$multiline","forwardedAs","$disabled","className","onClick","focus","String","replace","onFocus","onBlur","onKeyDown","onChange","placeholder","rows","type","displayName"],"sources":["../../../../src/components/EditableText/EditableText.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n forwardRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\n\nimport classNames from \"classnames\";\n\nimport {\n EditableContent,\n EditableContentInterface,\n} from \"../EditableContent/EditableContent\";\nimport {\n StyledDiv,\n StyledMultilineSpan,\n StyledTextareaSpan,\n} from \"../EditableContent/Styles\";\n\nexport interface EditableTextInterface extends EditableContentInterface {\n /** Value to display. */\n value?: string | null;\n /** Optional callback called on enter, click outside and tab. */\n onSave?: (e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;\n /** Optional callback called on input reset. */\n onCancel?: (e) => void;\n /** If true, setting empty value will save it, instead of revert to previous value. */\n allowEmptyString?: boolean;\n /** If true, shows a textarea instead of input for multiline editing. */\n multiline?: boolean;\n /** Children content to display */\n children?: React.ReactNode;\n}\n\nexport const EditableText = forwardRef<HTMLDivElement, EditableTextInterface>(\n (\n {\n onSave,\n onCancel,\n value,\n inputProps,\n allowEmptyString,\n multiline = false,\n variant = \"Body 2\",\n weight,\n disabled = false,\n invalid,\n wrapRef,\n children,\n ...props\n },\n ref\n ) => {\n const [currentValue, setCurrentValue] = useState(value);\n const [prevValue, setPrevValue] = useState(value);\n const escapeRef = useRef(false);\n const intTextareaRef = useRef<HTMLTextAreaElement>(null);\n\n useEffect(() => {\n if (currentValue !== value) {\n setCurrentValue(value);\n setPrevValue(value);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [value]);\n\n const handleBlur = useCallback(\n (e) => {\n if (escapeRef.current) {\n setCurrentValue(prevValue);\n escapeRef.current = false;\n } else {\n if (\n e.target.value.trim().length > 0 &&\n prevValue !== e.target.value\n ) {\n setPrevValue(e.target.value);\n setCurrentValue(e.target.value);\n typeof onSave === \"function\" && onSave(e);\n } else {\n !allowEmptyString\n ? setCurrentValue(prevValue)\n : typeof onSave === \"function\" &&\n prevValue !== e.target.value &&\n onSave(e);\n }\n }\n // Reset scroll position for textarea\n if (multiline && intTextareaRef?.current) {\n intTextareaRef.current.scrollLeft = 0;\n }\n },\n [allowEmptyString, onSave, prevValue, multiline]\n );\n\n const handleFocus = useCallback(\n (e) => {\n if (multiline) {\n const textarea = e.target;\n const length = textarea.value.length;\n textarea.setSelectionRange(length, length);\n }\n },\n [multiline]\n );\n\n const handleKeyDown = useCallback(\n (e) => {\n if (e.key === \"Enter\" && !multiline) {\n e.target.blur();\n }\n if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n escapeRef.current = true;\n e.target.blur();\n typeof onCancel === \"function\" && onCancel(e);\n }\n },\n [onCancel, multiline]\n );\n\n const handleChange = useCallback((e) => {\n setCurrentValue(e.target.value);\n }, []);\n\n if (multiline) {\n return (\n <StyledDiv ref={ref || wrapRef} {...props} $multiline={multiline}>\n <StyledMultilineSpan\n variant={variant}\n forwardedAs=\"span\"\n weight={weight}\n $disabled={disabled}\n invalid={invalid}\n className=\"presentation\"\n onClick={() => {\n if (!disabled && intTextareaRef.current) {\n intTextareaRef.current.focus();\n }\n }}\n >\n {children\n ? children\n : String(currentValue || \"\").replace(/\\n/g, \" \")}\n </StyledMultilineSpan>\n <StyledTextareaSpan\n ref={intTextareaRef}\n forwardedAs=\"textarea\"\n variant={variant}\n weight={weight}\n value={currentValue ?? \"\"}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n disabled={disabled}\n invalid={invalid}\n data-form-type=\"other\"\n placeholder={inputProps?.placeholder}\n className={classNames(\"c-textarea\", inputProps?.className)}\n rows={3}\n {...inputProps}\n />\n </StyledDiv>\n );\n }\n\n return (\n <EditableContent\n {...props}\n variant={variant}\n weight={weight}\n disabled={disabled}\n invalid={invalid}\n wrapRef={wrapRef}\n ref={ref}\n inputProps={{\n ...inputProps,\n value: currentValue ?? \"\",\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n type: \"text\",\n className: classNames(\"c-input\", inputProps?.className),\n }}\n >\n {children}\n </EditableContent>\n );\n }\n);\n\nEditableText.displayName = \"EditableText\";\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../src/components/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,EAAE,EAGF,YAAY,EAIZ,GAAG,EACH,SAAS,EACV,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAc3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAKlE,MAAM,WAAW,cAAc,CAAC,CAAC,CAAE,SAAQ,YAAY;IACrD,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;CACd;AAED,MAAM,WAAW,YACf,SAAQ,IAAI,CACV,kBAAkB,EAChB,cAAc,GACd,SAAS,GACT,mBAAmB,GACnB,oBAAoB,GACpB,cAAc,CACjB;IACD,sBAAsB;IACtB,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IACnC,gCAAgC;IAChC,MAAM,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC9D,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;IAC9C,gCAAgC;IAChC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,4BAA4B;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,oCAAoC;IACpC,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,qCAAqC;IACrC,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,2BAA2B;IAC3B,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC5B,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC,YAAY,CAoRnC,CAAC"}
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../src/components/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,EAAE,EAGF,YAAY,EAIZ,GAAG,EACH,SAAS,EACV,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAc3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAKlE,MAAM,WAAW,cAAc,CAAC,CAAC,CAAE,SAAQ,YAAY;IACrD,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;CACd;AAED,MAAM,WAAW,YACf,SAAQ,IAAI,CACV,kBAAkB,EAChB,cAAc,GACd,SAAS,GACT,mBAAmB,GACnB,oBAAoB,GACpB,cAAc,CACjB;IACD,sBAAsB;IACtB,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IACnC,gCAAgC;IAChC,MAAM,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACjC,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC9D,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;IAC9C,gCAAgC;IAChC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,4BAA4B;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,oCAAoC;IACpC,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,qCAAqC;IACrC,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,2BAA2B;IAC3B,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC5B,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC,YAAY,CAsRnC,CAAC"}
@@ -42,7 +42,6 @@ export const Select = _ref => {
42
42
  const elementRef = useRef(null);
43
43
  const handleRef = useForkRef(childNode, elementRef);
44
44
  const Tag = !target ? "div" : Menu;
45
- const formRef = useRef(null);
46
45
  const [open, setOpen] = useState(false);
47
46
  const selectedOptions = useMemo(() => selected instanceof Array ? selected : [selected], [selected]);
48
47
  const selectOptions = useMemo(() => {
@@ -115,12 +114,14 @@ export const Select = _ref => {
115
114
  };
116
115
  }, [target, selectClassName, onClose, onOpen, mode, open, position]);
117
116
  const handleEmptyAction = useCallback(value => {
118
- var _formRef$current;
119
117
  emptyAction(value);
120
118
  if (forceCloseMenu) {
121
119
  setOpen(false);
122
120
  }
123
- (_formRef$current = formRef.current) == null || _formRef$current.reset();
121
+ // Clear the search input without triggering form reset events
122
+ if (elementRef != null && elementRef.current) {
123
+ elementRef.current.value = "";
124
+ }
124
125
  }, [emptyAction, forceCloseMenu]);
125
126
  const handleDefaultOptionChangeCallback = useCallback(() => {
126
127
  if (type === "multiple") {
@@ -167,9 +168,7 @@ export const Select = _ref => {
167
168
  mixed: mixedOptions.current.includes(option.id)
168
169
  }, props)) : /*#__PURE__*/React.createElement(StyledRadioButton, props));
169
170
  }, [isAllOptionsChecked, renderOption, type, someOptionsChecked, selectedOptions]);
170
- return /*#__PURE__*/React.createElement(Tag, props, /*#__PURE__*/React.createElement("div", null, !disableSearch ? /*#__PURE__*/React.createElement(StyledSelectForm, {
171
- ref: formRef
172
- }, startAdornment ? /*#__PURE__*/React.createElement(StyledStartAdornment, null, startAdornment) : null, /*#__PURE__*/React.createElement(StyledSelectInput, {
171
+ return /*#__PURE__*/React.createElement(Tag, props, /*#__PURE__*/React.createElement("div", null, !disableSearch ? /*#__PURE__*/React.createElement(StyledSelectForm, null, startAdornment ? /*#__PURE__*/React.createElement(StyledStartAdornment, null, startAdornment) : null, /*#__PURE__*/React.createElement(StyledSelectInput, {
173
172
  ref: handleRef,
174
173
  placeholder: placeholder
175
174
  }), endAdornment ? /*#__PURE__*/React.createElement(StyledEndAdornment, null, endAdornment) : null) : null, /*#__PURE__*/React.createElement(Autocomplete, _extends({}, prop, {
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","names":["React","useCallback","useState","useMemo","useEffect","useRef","classNames","OptionContent","StyledSelectForm","StyledSelectInput","StyledCheckbox","StyledRadioButton","StyledStartAdornment","StyledEndAdornment","useForkRef","Autocomplete","isOptionGroup","Menu","Select","_ref","type","mode","target","options","selected","mixed","position","onChange","placeholder","emptyAction","disableSearch","forceCloseMenu","selectClassName","keepSameOptionsOrder","onSelectOpen","onSelectClose","renderOption","handleDefaultOptionChange","preselectDefaultValue","startAdornment","endAdornment","focusInput","disableVirtualization","prop","_objectWithoutPropertiesLoose","_excluded","console","warn","childNode","elementRef","handleRef","Tag","formRef","open","setOpen","selectedOptions","Array","selectOptions","allOptionValues","reduce","acc","option","id","allGroupOptions","map","mixedOptions","length","removeFromMixedOptions","idsToRemove","current","filter","mixedOption","includes","isAllOptionsChecked","every","someOptionsChecked","some","_childNode$current","focus","handleChange","selectedValue","undefined","onClose","onOpen","props","menuClassName","onPopperOpen","_elementRef$current","className","handleEmptyAction","value","_formRef$current","reset","handleDefaultOptionChangeCallback","handleRenderOption","createElement","Fragment","imageUrl","image","color","textColor","name","additionalInfo","_extends","checked","ref","clearInputOnSelect","inputEl","displayName"],"sources":["../../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n ReactElement,\n useMemo,\n useEffect,\n useRef,\n Ref,\n ReactNode,\n} from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classNames from \"classnames\";\n\nimport { OptionContent } from \"./OptionContent/OptionContent\";\nimport {\n StyledSelectForm,\n StyledSelectInput,\n StyledCheckbox,\n StyledRadioButton,\n StyledStartAdornment,\n StyledEndAdornment,\n} from \"./Styles\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Autocomplete, isOptionGroup } from \"../Autocomplete\";\nimport { IAutocompleteProps } from \"../Autocomplete/Autocomplete\";\nimport { Menu } from \"../Menu/Menu\";\nimport { IOptionItemProps } from \"../Select/Option\";\nimport { IOptionGroupProps } from \"../Select/OptionGroup\";\n\nexport interface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\nexport interface ISelectProps\n extends Omit<\n IAutocompleteProps,\n | \"handleChange\"\n | \"inputEl\"\n | \"handleEmptyAction\"\n | \"clearInputOnSelect\"\n | \"mixedOptions\"\n > {\n /** Menu width mode */\n mode?: \"normal\" | \"wider\" | \"tiny\";\n /** Set select target element */\n target?: ElementWithRef<Element>;\n /** Set Select position */\n position?: Placement;\n /** onChange callback */\n onChange?: (e: (string | number)[] | string | number) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** Function that triggers when empty is clicked */\n emptyAction?: (e: string | undefined) => void;\n /** Removes input from Select */\n disableSearch?: boolean;\n /** Close menu on select */\n forceCloseMenu?: boolean;\n /** Set select classNames */\n selectClassName?: string;\n /** Callback called when the Select menu is opened */\n onSelectOpen?: () => void;\n /** Callback called when the Select menu is closed */\n onSelectClose?: () => void;\n /** Node element on the left side */\n startAdornment?: ReactNode;\n /** Node element on the right side */\n endAdornment?: ReactNode;\n /** Focus search input on inline select */\n focusInput?: boolean;\n /** Mixed options values */\n mixed?: (string | number)[];\n disableVirtualization?: boolean;\n}\n\nexport const Select: FC<ISelectProps> = ({\n type = \"single\",\n mode,\n target,\n options,\n selected = [],\n mixed = [],\n position = \"bottom-start\",\n onChange = () => null,\n placeholder,\n emptyAction = (): null => null,\n disableSearch = false,\n forceCloseMenu,\n selectClassName,\n keepSameOptionsOrder = false,\n onSelectOpen,\n onSelectClose,\n renderOption,\n handleDefaultOptionChange,\n preselectDefaultValue = type === \"single\",\n startAdornment,\n endAdornment,\n focusInput = false,\n disableVirtualization,\n ...prop\n}) => {\n if (disableSearch && (startAdornment || endAdornment)) {\n console.warn(\"Adornments are not visible when search bar is hidden\");\n }\n const childNode = useRef<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n\n const handleRef = useForkRef(childNode, elementRef);\n\n const Tag = !target ? \"div\" : Menu;\n const formRef = useRef<HTMLFormElement | null>(null);\n\n const [open, setOpen] = useState(false);\n\n const selectedOptions = useMemo(\n () => (selected instanceof Array ? selected : [selected]),\n [selected]\n );\n\n const selectOptions = useMemo(() => {\n if (!options) {\n return [];\n }\n return options;\n }, [options]);\n\n const allOptionValues = useMemo(() => {\n return selectOptions.reduce(\n (\n acc: (string | number)[],\n option: IOptionGroupProps | IOptionItemProps\n ) => {\n if (!isOptionGroup(option)) {\n return [...acc, option.id];\n }\n const allGroupOptions = option.options.map((option) => option.id);\n return [...acc, ...allGroupOptions];\n },\n []\n );\n }, [selectOptions]);\n\n const mixedOptions = useRef(type === \"multiple\" && mixed.length ? mixed : []);\n\n const removeFromMixedOptions = useCallback(\n (idsToRemove: (string | number)[]) => {\n mixedOptions.current = mixedOptions.current.filter(\n (mixedOption) => !idsToRemove.includes(mixedOption)\n );\n },\n []\n );\n\n const isAllOptionsChecked = useMemo(\n () => allOptionValues.every((option) => selectedOptions.includes(option)),\n [allOptionValues, selectedOptions]\n );\n\n const someOptionsChecked = useMemo(\n () => allOptionValues.some((option) => selectedOptions.includes(option)),\n [allOptionValues, selectedOptions]\n );\n\n useEffect(() => {\n if ((open && target) || (!target && focusInput)) {\n childNode?.current?.focus();\n }\n }, [focusInput, open, target]);\n\n const handleChange = useCallback(\n (selectedValue) => {\n if (forceCloseMenu) {\n if (typeof onSelectClose === \"function\") onSelectClose();\n setOpen(false);\n }\n if (\n selectedValue !== undefined &&\n selectedValue !== selected &&\n !(selectedValue instanceof Array && selectedValue.includes(undefined))\n ) {\n onChange(selectedValue);\n type === \"multiple\" &&\n mixedOptions.current.length &&\n removeFromMixedOptions(selectedValue);\n }\n },\n [\n forceCloseMenu,\n selected,\n onSelectClose,\n onChange,\n type,\n removeFromMixedOptions,\n ]\n );\n\n const onClose = useCallback(() => {\n setOpen(false);\n if (onSelectClose) {\n onSelectClose();\n }\n }, [onSelectClose]);\n\n const onOpen = useCallback(() => {\n setOpen(true);\n if (onSelectOpen) {\n onSelectOpen();\n }\n }, [onSelectOpen]);\n\n const props = useMemo(() => {\n if (target) {\n return {\n menuClassName: classNames(\"c-select\", selectClassName),\n onClose,\n onOpen,\n target,\n mode,\n open,\n position,\n onPopperOpen: () => elementRef?.current?.focus(),\n };\n }\n return { className: classNames(\"c-select\", selectClassName) };\n }, [target, selectClassName, onClose, onOpen, mode, open, position]);\n\n const handleEmptyAction = useCallback(\n (value) => {\n emptyAction(value);\n if (forceCloseMenu) {\n setOpen(false);\n }\n formRef.current?.reset();\n },\n [emptyAction, forceCloseMenu]\n );\n\n const handleDefaultOptionChangeCallback = useCallback(() => {\n if (type === \"multiple\") {\n if (selectedOptions.length === allOptionValues.length) {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange([]);\n }\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange(allOptionValues);\n }\n }\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange(\"\");\n }\n }\n if (forceCloseMenu) {\n setOpen(false);\n }\n }, [\n onChange,\n type,\n forceCloseMenu,\n selectedOptions.length,\n allOptionValues,\n handleDefaultOptionChange,\n ]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n additionalInfo={option.additionalInfo}\n />\n {option.id === null ? (\n type === \"multiple\" ? (\n <StyledCheckbox\n checked={isAllOptionsChecked}\n mixed={someOptionsChecked && !isAllOptionsChecked}\n {...props}\n />\n ) : (\n <StyledRadioButton\n checked={selectedOptions.length < 1 || !selectedOptions[0]}\n {...props}\n />\n )\n ) : type === \"multiple\" ? (\n <StyledCheckbox\n mixed={mixedOptions.current.includes(option.id)}\n {...props}\n />\n ) : (\n <StyledRadioButton {...props} />\n )}\n </>\n );\n },\n [\n isAllOptionsChecked,\n renderOption,\n type,\n someOptionsChecked,\n selectedOptions,\n ]\n );\n\n return (\n <Tag {...props}>\n <div>\n {!disableSearch ? (\n <StyledSelectForm ref={formRef}>\n {startAdornment ? (\n <StyledStartAdornment>{startAdornment}</StyledStartAdornment>\n ) : null}\n <StyledSelectInput ref={handleRef} placeholder={placeholder} />\n {endAdornment ? (\n <StyledEndAdornment>{endAdornment}</StyledEndAdornment>\n ) : null}\n </StyledSelectForm>\n ) : null}\n <Autocomplete\n {...prop}\n clearInputOnSelect\n inputEl={disableSearch ? undefined : childNode}\n handleEmptyAction={handleEmptyAction}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n mixedOptions={mixedOptions.current}\n handleDefaultOptionChange={handleDefaultOptionChangeCallback}\n type={type}\n preselectDefaultValue={preselectDefaultValue}\n keepSameOptionsOrder={keepSameOptionsOrder}\n disableVirtualization={disableVirtualization}\n />\n </div>\n </Tag>\n );\n};\n\nSelect.displayName = \"Select\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Select.js","names":["React","useCallback","useState","useMemo","useEffect","useRef","classNames","OptionContent","StyledSelectForm","StyledSelectInput","StyledCheckbox","StyledRadioButton","StyledStartAdornment","StyledEndAdornment","useForkRef","Autocomplete","isOptionGroup","Menu","Select","_ref","type","mode","target","options","selected","mixed","position","onChange","placeholder","emptyAction","disableSearch","forceCloseMenu","selectClassName","keepSameOptionsOrder","onSelectOpen","onSelectClose","renderOption","handleDefaultOptionChange","preselectDefaultValue","startAdornment","endAdornment","focusInput","disableVirtualization","prop","_objectWithoutPropertiesLoose","_excluded","console","warn","childNode","elementRef","handleRef","Tag","open","setOpen","selectedOptions","Array","selectOptions","allOptionValues","reduce","acc","option","id","allGroupOptions","map","mixedOptions","length","removeFromMixedOptions","idsToRemove","current","filter","mixedOption","includes","isAllOptionsChecked","every","someOptionsChecked","some","_childNode$current","focus","handleChange","selectedValue","undefined","onClose","onOpen","props","menuClassName","onPopperOpen","_elementRef$current","className","handleEmptyAction","value","handleDefaultOptionChangeCallback","handleRenderOption","createElement","Fragment","imageUrl","image","color","textColor","name","additionalInfo","_extends","checked","ref","clearInputOnSelect","inputEl","displayName"],"sources":["../../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n ReactElement,\n useMemo,\n useEffect,\n useRef,\n Ref,\n ReactNode,\n} from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classNames from \"classnames\";\n\nimport { OptionContent } from \"./OptionContent/OptionContent\";\nimport {\n StyledSelectForm,\n StyledSelectInput,\n StyledCheckbox,\n StyledRadioButton,\n StyledStartAdornment,\n StyledEndAdornment,\n} from \"./Styles\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Autocomplete, isOptionGroup } from \"../Autocomplete\";\nimport { IAutocompleteProps } from \"../Autocomplete/Autocomplete\";\nimport { Menu } from \"../Menu/Menu\";\nimport { IOptionItemProps } from \"../Select/Option\";\nimport { IOptionGroupProps } from \"../Select/OptionGroup\";\n\nexport interface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\nexport interface ISelectProps\n extends Omit<\n IAutocompleteProps,\n | \"handleChange\"\n | \"inputEl\"\n | \"handleEmptyAction\"\n | \"clearInputOnSelect\"\n | \"mixedOptions\"\n > {\n /** Menu width mode */\n mode?: \"normal\" | \"wider\" | \"tiny\";\n /** Set select target element */\n target?: ElementWithRef<Element>;\n /** Set Select position */\n position?: Placement;\n /** onChange callback */\n onChange?: (e: (string | number)[] | string | number) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** Function that triggers when empty is clicked */\n emptyAction?: (e: string | undefined) => void;\n /** Removes input from Select */\n disableSearch?: boolean;\n /** Close menu on select */\n forceCloseMenu?: boolean;\n /** Set select classNames */\n selectClassName?: string;\n /** Callback called when the Select menu is opened */\n onSelectOpen?: () => void;\n /** Callback called when the Select menu is closed */\n onSelectClose?: () => void;\n /** Node element on the left side */\n startAdornment?: ReactNode;\n /** Node element on the right side */\n endAdornment?: ReactNode;\n /** Focus search input on inline select */\n focusInput?: boolean;\n /** Mixed options values */\n mixed?: (string | number)[];\n disableVirtualization?: boolean;\n}\n\nexport const Select: FC<ISelectProps> = ({\n type = \"single\",\n mode,\n target,\n options,\n selected = [],\n mixed = [],\n position = \"bottom-start\",\n onChange = () => null,\n placeholder,\n emptyAction = (): null => null,\n disableSearch = false,\n forceCloseMenu,\n selectClassName,\n keepSameOptionsOrder = false,\n onSelectOpen,\n onSelectClose,\n renderOption,\n handleDefaultOptionChange,\n preselectDefaultValue = type === \"single\",\n startAdornment,\n endAdornment,\n focusInput = false,\n disableVirtualization,\n ...prop\n}) => {\n if (disableSearch && (startAdornment || endAdornment)) {\n console.warn(\"Adornments are not visible when search bar is hidden\");\n }\n const childNode = useRef<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n\n const handleRef = useForkRef(childNode, elementRef);\n\n const Tag = !target ? \"div\" : Menu;\n\n const [open, setOpen] = useState(false);\n\n const selectedOptions = useMemo(\n () => (selected instanceof Array ? selected : [selected]),\n [selected]\n );\n\n const selectOptions = useMemo(() => {\n if (!options) {\n return [];\n }\n return options;\n }, [options]);\n\n const allOptionValues = useMemo(() => {\n return selectOptions.reduce(\n (\n acc: (string | number)[],\n option: IOptionGroupProps | IOptionItemProps\n ) => {\n if (!isOptionGroup(option)) {\n return [...acc, option.id];\n }\n const allGroupOptions = option.options.map((option) => option.id);\n return [...acc, ...allGroupOptions];\n },\n []\n );\n }, [selectOptions]);\n\n const mixedOptions = useRef(type === \"multiple\" && mixed.length ? mixed : []);\n\n const removeFromMixedOptions = useCallback(\n (idsToRemove: (string | number)[]) => {\n mixedOptions.current = mixedOptions.current.filter(\n (mixedOption) => !idsToRemove.includes(mixedOption)\n );\n },\n []\n );\n\n const isAllOptionsChecked = useMemo(\n () => allOptionValues.every((option) => selectedOptions.includes(option)),\n [allOptionValues, selectedOptions]\n );\n\n const someOptionsChecked = useMemo(\n () => allOptionValues.some((option) => selectedOptions.includes(option)),\n [allOptionValues, selectedOptions]\n );\n\n useEffect(() => {\n if ((open && target) || (!target && focusInput)) {\n childNode?.current?.focus();\n }\n }, [focusInput, open, target]);\n\n const handleChange = useCallback(\n (selectedValue) => {\n if (forceCloseMenu) {\n if (typeof onSelectClose === \"function\") onSelectClose();\n setOpen(false);\n }\n if (\n selectedValue !== undefined &&\n selectedValue !== selected &&\n !(selectedValue instanceof Array && selectedValue.includes(undefined))\n ) {\n onChange(selectedValue);\n type === \"multiple\" &&\n mixedOptions.current.length &&\n removeFromMixedOptions(selectedValue);\n }\n },\n [\n forceCloseMenu,\n selected,\n onSelectClose,\n onChange,\n type,\n removeFromMixedOptions,\n ]\n );\n\n const onClose = useCallback(() => {\n setOpen(false);\n if (onSelectClose) {\n onSelectClose();\n }\n }, [onSelectClose]);\n\n const onOpen = useCallback(() => {\n setOpen(true);\n if (onSelectOpen) {\n onSelectOpen();\n }\n }, [onSelectOpen]);\n\n const props = useMemo(() => {\n if (target) {\n return {\n menuClassName: classNames(\"c-select\", selectClassName),\n onClose,\n onOpen,\n target,\n mode,\n open,\n position,\n onPopperOpen: () => elementRef?.current?.focus(),\n };\n }\n return { className: classNames(\"c-select\", selectClassName) };\n }, [target, selectClassName, onClose, onOpen, mode, open, position]);\n\n const handleEmptyAction = useCallback(\n (value) => {\n emptyAction(value);\n if (forceCloseMenu) {\n setOpen(false);\n }\n // Clear the search input without triggering form reset events\n if (elementRef?.current) {\n elementRef.current.value = \"\";\n }\n },\n [emptyAction, forceCloseMenu]\n );\n\n const handleDefaultOptionChangeCallback = useCallback(() => {\n if (type === \"multiple\") {\n if (selectedOptions.length === allOptionValues.length) {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange([]);\n }\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange(allOptionValues);\n }\n }\n } else {\n if (typeof handleDefaultOptionChange === \"function\") {\n handleDefaultOptionChange();\n } else {\n onChange(\"\");\n }\n }\n if (forceCloseMenu) {\n setOpen(false);\n }\n }, [\n onChange,\n type,\n forceCloseMenu,\n selectedOptions.length,\n allOptionValues,\n handleDefaultOptionChange,\n ]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n additionalInfo={option.additionalInfo}\n />\n {option.id === null ? (\n type === \"multiple\" ? (\n <StyledCheckbox\n checked={isAllOptionsChecked}\n mixed={someOptionsChecked && !isAllOptionsChecked}\n {...props}\n />\n ) : (\n <StyledRadioButton\n checked={selectedOptions.length < 1 || !selectedOptions[0]}\n {...props}\n />\n )\n ) : type === \"multiple\" ? (\n <StyledCheckbox\n mixed={mixedOptions.current.includes(option.id)}\n {...props}\n />\n ) : (\n <StyledRadioButton {...props} />\n )}\n </>\n );\n },\n [\n isAllOptionsChecked,\n renderOption,\n type,\n someOptionsChecked,\n selectedOptions,\n ]\n );\n\n return (\n <Tag {...props}>\n <div>\n {!disableSearch ? (\n <StyledSelectForm>\n {startAdornment ? (\n <StyledStartAdornment>{startAdornment}</StyledStartAdornment>\n ) : null}\n <StyledSelectInput ref={handleRef} placeholder={placeholder} />\n {endAdornment ? (\n <StyledEndAdornment>{endAdornment}</StyledEndAdornment>\n ) : null}\n </StyledSelectForm>\n ) : null}\n <Autocomplete\n {...prop}\n clearInputOnSelect\n inputEl={disableSearch ? undefined : childNode}\n handleEmptyAction={handleEmptyAction}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n mixedOptions={mixedOptions.current}\n handleDefaultOptionChange={handleDefaultOptionChangeCallback}\n type={type}\n preselectDefaultValue={preselectDefaultValue}\n keepSameOptionsOrder={keepSameOptionsOrder}\n disableVirtualization={disableVirtualization}\n />\n </div>\n </Tag>\n );\n};\n\nSelect.displayName = \"Select\";\n"],"mappings":"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","ignoreList":[]}
package/dist/index.js CHANGED
@@ -18121,7 +18121,6 @@
18121
18121
  var elementRef = React.useRef(null);
18122
18122
  var handleRef = useForkRef(childNode, elementRef);
18123
18123
  var Tag = !target ? "div" : Menu;
18124
- var formRef = React.useRef(null);
18125
18124
  var _useState = React.useState(false),
18126
18125
  _useState2 = _slicedToArray(_useState, 2),
18127
18126
  open = _useState2[0],
@@ -18211,12 +18210,14 @@
18211
18210
  };
18212
18211
  }, [target, selectClassName, onClose, onOpen, mode, open, position]);
18213
18212
  var handleEmptyAction = React.useCallback(function (value) {
18214
- var _formRef$current;
18215
18213
  emptyAction(value);
18216
18214
  if (forceCloseMenu) {
18217
18215
  setOpen(false);
18218
18216
  }
18219
- (_formRef$current = formRef.current) === null || _formRef$current === void 0 || _formRef$current.reset();
18217
+ // Clear the search input without triggering form reset events
18218
+ if (elementRef !== null && elementRef !== void 0 && elementRef.current) {
18219
+ elementRef.current.value = "";
18220
+ }
18220
18221
  }, [emptyAction, forceCloseMenu]);
18221
18222
  var handleDefaultOptionChangeCallback = React.useCallback(function () {
18222
18223
  if (type === "multiple") {
@@ -18263,9 +18264,7 @@
18263
18264
  mixed: mixedOptions.current.includes(option.id)
18264
18265
  }, props)) : /*#__PURE__*/React__default["default"].createElement(StyledRadioButton, props));
18265
18266
  }, [isAllOptionsChecked, renderOption, type, someOptionsChecked, selectedOptions]);
18266
- return /*#__PURE__*/React__default["default"].createElement(Tag, props, /*#__PURE__*/React__default["default"].createElement("div", null, !disableSearch ? /*#__PURE__*/React__default["default"].createElement(StyledSelectForm, {
18267
- ref: formRef
18268
- }, startAdornment ? /*#__PURE__*/React__default["default"].createElement(StyledStartAdornment, null, startAdornment) : null, /*#__PURE__*/React__default["default"].createElement(StyledSelectInput, {
18267
+ return /*#__PURE__*/React__default["default"].createElement(Tag, props, /*#__PURE__*/React__default["default"].createElement("div", null, !disableSearch ? /*#__PURE__*/React__default["default"].createElement(StyledSelectForm, null, startAdornment ? /*#__PURE__*/React__default["default"].createElement(StyledStartAdornment, null, startAdornment) : null, /*#__PURE__*/React__default["default"].createElement(StyledSelectInput, {
18269
18268
  ref: handleRef,
18270
18269
  placeholder: placeholder
18271
18270
  }), endAdornment ? /*#__PURE__*/React__default["default"].createElement(StyledEndAdornment, null, endAdornment) : null) : null, /*#__PURE__*/React__default["default"].createElement(Autocomplete, _extends({}, prop, {
@@ -22863,6 +22862,8 @@
22863
22862
  e.target.blur();
22864
22863
  }
22865
22864
  if (e.key === "Escape") {
22865
+ e.preventDefault();
22866
+ e.stopPropagation();
22866
22867
  escapeRef.current = true;
22867
22868
  e.target.blur();
22868
22869
  typeof onCancel === "function" && onCancel(e);