@propellerads/tags-input 5.0.1 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/style.d.ts CHANGED
@@ -1,45 +1,6 @@
1
+ import { StylesConfig } from 'react-select';
2
+ import { Option } from './types';
1
3
  declare const StyledTagsInput: import("styled-components").StyledComponent<"div", any, {}, never>;
2
4
  declare const TagsInputErrors: import("styled-components").StyledComponent<"div", any, {}, never>;
3
- declare const prepareStyles: (customActionColor: string) => {
4
- control: (styles: any, { isFocused, isDisabled }: {
5
- isFocused: any;
6
- isDisabled: any;
7
- }) => any;
8
- valueContainer: (styles: any) => any;
9
- placeholder: () => {
10
- color: string;
11
- fontWeight: number;
12
- paddingLeft: string;
13
- position: string;
14
- };
15
- clearIndicator: () => {
16
- color: string;
17
- display: string;
18
- marginRight: string;
19
- };
20
- dropdownIndicator: () => {
21
- display: string;
22
- };
23
- indicatorSeparator: () => {
24
- display: string;
25
- };
26
- multiValue: (styles: any, { data }: {
27
- data: any;
28
- }) => any;
29
- multiValueLabel: (styles: any) => any;
30
- multiValueRemove: (styles: any, { data }: {
31
- data: any;
32
- }) => any;
33
- menu: (styles: any) => any;
34
- menuList: (styles: any) => any;
35
- option: (styles: any, { isFocused }: {
36
- isFocused: any;
37
- }) => {
38
- backgroundColor: string | null;
39
- padding: string;
40
- fontSize: string;
41
- color: string;
42
- };
43
- input: (styles: any) => any;
44
- };
5
+ declare const prepareStyles: (customActionColor: string) => StylesConfig<Option, boolean>;
45
6
  export { prepareStyles, StyledTagsInput, TagsInputErrors };
@@ -9,9 +9,9 @@ var React__default = _interopDefault(React);
9
9
  var ReactSelect = require('react-select');
10
10
  var ReactSelect__default = _interopDefault(ReactSelect);
11
11
  var isFunction = _interopDefault(require('lodash.isfunction'));
12
- var ReactAsyncSelect = _interopDefault(require('react-select/lib/Async'));
12
+ var ReactAsyncSelect = _interopDefault(require('react-select/async'));
13
13
  var ErrorLabel = _interopDefault(require('@propellerads/error-label'));
14
- var CreatableSelect = _interopDefault(require('react-select/lib/Creatable'));
14
+ var CreatableSelect = _interopDefault(require('react-select/creatable'));
15
15
  var icon = require('@propellerads/icon');
16
16
  var styled = _interopDefault(require('styled-components'));
17
17
  var stylevariables = require('@propellerads/stylevariables');
@@ -145,7 +145,7 @@ var prepareStyles = function prepareStyles(customActionColor) {
145
145
  option: function option(styles, _ref4) {
146
146
  var isFocused = _ref4.isFocused;
147
147
  return {
148
- backgroundColor: isFocused ? mainColor : null,
148
+ backgroundColor: isFocused ? mainColor : undefined,
149
149
  padding: '5px 10px',
150
150
  fontSize: '14px',
151
151
  color: isFocused ? stylevariables.white : stylevariables.black
@@ -252,7 +252,7 @@ var TagsInput = function TagsInput(props) {
252
252
  isAsync = _props$isAsync === void 0 ? false : _props$isAsync,
253
253
  _props$isErrorLabelVi = props.isErrorLabelVisible,
254
254
  isErrorLabelVisible = _props$isErrorLabelVi === void 0 ? false : _props$isErrorLabelVi,
255
- onChange = props.onChange,
255
+ _onChange = props.onChange,
256
256
  _props$onInputChange = props.onInputChange,
257
257
  onInputChange = _props$onInputChange === void 0 ? null : _props$onInputChange,
258
258
  _props$filterOption = props.filterOption,
@@ -286,18 +286,30 @@ var TagsInput = function TagsInput(props) {
286
286
  return null;
287
287
  } : _props$onCreateOption;
288
288
  var currentValue = value;
289
- var preparedStyled = _extends({}, prepareStyles(actionColor), customStyles, {
289
+ var baseStyles = prepareStyles(actionColor);
290
+ var preparedStyled = _extends({}, baseStyles, customStyles, {
290
291
  control: function control(base, state) {
291
- var styles = customStyles.control && isFunction(customStyles.control) ? customStyles.control(base, state) : {};
292
- return _extends({}, prepareStyles(actionColor).control(base, state), styles, {
293
- border: errors.length ? '1px solid #ed3030' : prepareStyles(actionColor).control(base, state).border,
292
+ var defaultControl = baseStyles.control ? baseStyles.control(base, state) : base;
293
+ var customControl = customStyles.control && isFunction(customStyles.control) ? customStyles.control(base, state) : {};
294
+ return _extends({}, defaultControl, customControl, {
295
+ border: errors.length ? '1px solid #ed3030' : defaultControl.border,
294
296
  minHeight: minHeightInput
295
297
  });
296
298
  }
297
299
  });
298
300
  var config = _extends({}, props, {
299
301
  id: elementId,
300
- onChange: onChange
302
+ onChange: function onChange(newValue) {
303
+ var normalizedValue = [];
304
+ if (Array.isArray(newValue)) {
305
+ normalizedValue = [].concat(newValue);
306
+ } else if (newValue && typeof newValue === 'object' && 'value' in newValue && 'label' in newValue) {
307
+ normalizedValue = [newValue];
308
+ }
309
+ _onChange(normalizedValue);
310
+ },
311
+ onInputChange: undefined,
312
+ filterOption: undefined
301
313
  }, onInputChange && {
302
314
  onInputChange: onInputChange
303
315
  }, filterOption && {
@@ -318,7 +330,7 @@ var TagsInput = function TagsInput(props) {
318
330
  var handleAsyncRequest = function handleAsyncRequest(newValue) {
319
331
  if (!newValue.length || newValue.length < 2) {
320
332
  setShowMinLenTip(true);
321
- return null;
333
+ return Promise.resolve([]);
322
334
  }
323
335
  if (showMinLenTip) {
324
336
  setShowMinLenTip(false);
@@ -337,7 +349,7 @@ var TagsInput = function TagsInput(props) {
337
349
  return acc;
338
350
  }, currentValue);
339
351
  if (pastedOptions.length !== 0) {
340
- onChange(newInputOptions);
352
+ _onChange(newInputOptions);
341
353
  setTimeout(function () {
342
354
  reactSelectElement.current.select.blur();
343
355
  }, 0);
@@ -1 +1 @@
1
- {"version":3,"file":"tags-input.cjs.development.js","sources":["../src/style.tsx","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport {lineHeight, actionColor, borderRadius, gray80, errorColor, black, white} from '@propellerads/stylevariables';\n\nconst StyledTagsInput = styled.div`\n position: relative;\n`;\n\nconst TagsInputErrors = styled.div`\n position: absolute;\n display: flex;\n flex-direction: row;\n right: 1px;\n top: 0;\n height: ${lineHeight}px;\n align-items: center;\n`;\n\nconst prepareStyles = (customActionColor: string) => {\n const mainColor = customActionColor || actionColor;\n return {\n control: (styles, {isFocused, isDisabled}) => ({\n ...styles,\n borderRadius,\n backgroundColor: isDisabled ? '#ededed' : '#fff',\n minHeight: `${lineHeight}px`,\n borderWidth: 1,\n boxShadow: 'none',\n borderColor: isFocused ? mainColor : gray80,\n }),\n valueContainer: (styles) => ({\n ...styles,\n overflow: 'hidden',\n padding: '2px 2px 4px 2px',\n justifyContent: 'flex-start',\n }),\n placeholder: () => ({\n color: '#c0c0c0',\n fontWeight: 100,\n paddingLeft: '4px',\n position: 'absolute',\n }),\n clearIndicator: () => ({\n color: '#c0c0c0',\n display: 'inline-flex',\n marginRight: '4px',\n }),\n dropdownIndicator: () => ({\n display: 'none',\n }),\n indicatorSeparator: () => ({\n display: 'none',\n }),\n multiValue: (styles, {data}) => ({\n ...styles,\n backgroundColor: data.isException ? errorColor : mainColor,\n color: white,\n borderRadius: `${borderRadius / 2}px`,\n height: '22px',\n display: 'flex',\n alignItems: 'center',\n margin: '2px 0 0 2px',\n }),\n multiValueLabel: (styles) => ({\n ...styles,\n color: white,\n padding: '0 0 0 5px',\n fontSize: '12px',\n borderRadius: 0,\n display: 'inline-flex',\n lineHeight: '1',\n }),\n multiValueRemove: (styles, {data}) => ({\n ...styles,\n padding: 0,\n margin: '0 4px 0 2px',\n backgroundColor: data.isException ? errorColor : mainColor,\n cursor: 'pointer',\n ':hover': {\n backgroundColor: data.isException ? errorColor : mainColor,\n color: 'white',\n },\n }),\n menu: (styles) => ({\n ...styles,\n margin: 0,\n borderRadius: 0,\n zIndex: 10,\n }),\n menuList: (styles) => ({\n ...styles,\n '::-webkit-scrollbar': {\n width: '7px',\n },\n '::-webkit-scrollbar-thumb': {\n borderRadius: '4px',\n backgroundColor: 'rgba(0, 0, 0, .5)',\n boxShadow: '0 0 1px rgba(255, 255, 255, .5)',\n },\n }),\n option: (styles, {isFocused}) => ({\n backgroundColor: isFocused ? mainColor : null,\n padding: '5px 10px',\n fontSize: '14px',\n color: isFocused ? white : black,\n }),\n input: (styles) => ({\n ...styles,\n height: '16px',\n }),\n };\n};\n\nexport {prepareStyles, StyledTagsInput, TagsInputErrors};\n","import React, {useRef, useState} from 'react';\nimport ReactSelect, {components as reactSelectComponents} from 'react-select';\nimport isFunction from 'lodash.isfunction';\nimport ReactAsyncSelect from 'react-select/lib/Async';\nimport ErrorLabel from '@propellerads/error-label';\nimport CreatableSelect from 'react-select/lib/Creatable';\nimport {Close, SIZE, COLOR} from '@propellerads/icon';\n\nimport {TagsInputProps} from './types';\nimport {prepareStyles, StyledTagsInput, TagsInputErrors} from './style';\n\n// regexps by priority\nconst REGEXPS = [/(?:\\b|\\B)\\n+\\b/, /(?:\\b|\\B),\\s\\b/, /(?:\\b|\\B),+\\b/];\n\ninterface SplitStringReturnValue {\n splits: string[];\n specialHandle: boolean;\n}\n\nfunction splitString(value: string): SplitStringReturnValue {\n let splits: string[] = [];\n\n let specialHandle = false;\n // eslint-disable-next-line no-restricted-syntax\n for (const regex of REGEXPS) {\n splits = value.split(regex);\n if (splits.length > 1) {\n break;\n }\n }\n\n // special case. Need handle in special way\n if (splits.length === 1) {\n splits = value.split(/\\b\\s+\\b/);\n specialHandle = splits.length > 1;\n }\n\n return {\n splits,\n specialHandle,\n };\n}\n\nfunction searchSuitableOptions(pastedValue, availableOptions, searchableKeys) {\n const {splits, specialHandle} = splitString(pastedValue);\n\n if (specialHandle) {\n let rawPastedString = splits.join(' ').toLowerCase();\n\n return availableOptions\n .sort((firstEl, secondEl) => {\n if (firstEl.label.length > secondEl.label.length) {\n return -1;\n }\n if (firstEl.label.length < secondEl.label.length) {\n return 1;\n }\n\n return 0;\n })\n .filter((option) =>\n searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const position = rawPastedString.search(optionValue);\n const condition = position !== -1;\n if (condition) {\n rawPastedString = rawPastedString.replace(optionValue, '');\n }\n\n return prevValue || condition;\n }, false),\n );\n }\n\n return splits\n .map((splitValue) =>\n availableOptions.find((option) => {\n const comparableValue = splitValue.trim().toLowerCase();\n\n return searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const condition = optionValue === comparableValue;\n\n return prevValue || condition;\n }, false);\n }),\n )\n .filter(Boolean);\n}\n\ninterface ClearIndicatorProps {\n // eslint-disable-next-line @typescript-eslint/ban-types\n getStyles: (clearIndicator: string, props: any) => {};\n innerProps: {\n ref: React.Ref<HTMLDivElement>;\n };\n elementId: string;\n}\n\nconst ClearIndicator = (props: ClearIndicatorProps) => {\n const {\n elementId,\n getStyles,\n innerProps: {ref, ...restInnerProps},\n } = props;\n\n return (\n <div {...restInnerProps} ref={ref} style={getStyles('clearIndicator', props)} id={`${elementId}-clear`}>\n <Close color={COLOR.GRAY_DARK} hoverColor={COLOR.BLACK} size={SIZE.MEDIUM_SMALL} />\n </div>\n );\n};\n\nconst TagsInput = (props: TagsInputProps) => {\n const reactSelectElement = useRef<any>(null);\n const [showMinLenTip, setShowMinLenTip] = useState(false);\n\n const {\n components = {},\n customStyles = {},\n elementId,\n errors = [],\n isAsync = false,\n isErrorLabelVisible = false,\n onChange,\n onInputChange = null,\n filterOption = null,\n options = [],\n promiseOptions = () => Promise.resolve(),\n searchableKeys = ['label'],\n value = [],\n actionColor = '',\n isClearable = true,\n isCreatable = false,\n isDisabled = false,\n isLoading = false,\n isRtl = false,\n isMulti = true,\n isSearchable = true,\n cacheOptions = false,\n placeholder = 'Start typing...',\n noOptionsMessage = () => 'No options...',\n loadingMessage = () => 'Loading...',\n minHeightInput = 36,\n createOptionPlaceholder = 'Create ',\n onCreateOption = () => null,\n } = props;\n\n const currentValue = value;\n\n const preparedStyled = {\n ...prepareStyles(actionColor),\n ...customStyles,\n control: (base, state) => {\n const styles = customStyles.control && isFunction(customStyles.control) ? customStyles.control(base, state) : {};\n\n return {\n ...prepareStyles(actionColor).control(base, state),\n ...styles,\n border: errors.length ? '1px solid #ed3030' : prepareStyles(actionColor).control(base, state).border,\n minHeight: minHeightInput,\n };\n },\n };\n\n const config = {\n ...props,\n id: elementId,\n onChange,\n ...(onInputChange && {onInputChange}),\n ...(filterOption && {filterOption}),\n styles: preparedStyled,\n loadingMessage: showMinLenTip ? () => 'Enter two or more characters' : loadingMessage,\n components: {\n ClearIndicator: (clearIndicatorProps) => <ClearIndicator {...clearIndicatorProps} elementId={elementId} />,\n ...components,\n },\n };\n\n const handleAsyncRequest = (newValue: any) => {\n if (!newValue.length || newValue.length < 2) {\n setShowMinLenTip(true);\n\n return null;\n }\n\n if (showMinLenTip) {\n setShowMinLenTip(false);\n }\n\n return promiseOptions(newValue);\n };\n\n const onPaste = (e) => {\n const pasteData = e.clipboardData.getData('text/plain');\n\n const pastedOptions = searchSuitableOptions(pasteData, options, searchableKeys);\n\n const newInputOptions = pastedOptions.reduce((acc, curVal) => {\n if (!acc.find((el) => el.value === curVal.value)) {\n acc.push(curVal);\n }\n\n return acc;\n }, currentValue);\n\n if (pastedOptions.length !== 0) {\n onChange(newInputOptions);\n setTimeout(() => {\n reactSelectElement.current.select.blur();\n }, 0);\n }\n };\n\n const regularSelect = isAsync ? (\n <ReactAsyncSelect {...config} loadOptions={(newValue) => handleAsyncRequest(newValue)} />\n ) : (\n <div onPaste={onPaste}>\n <ReactSelect {...config} ref={reactSelectElement} options={options} />\n </div>\n );\n\n const select = isCreatable ? (\n <CreatableSelect\n formatCreateLabel={(newValue) => `${createOptionPlaceholder}\"${newValue}\"`}\n isLoading={isLoading}\n onCreateOption={(newOption) => onCreateOption(newOption)}\n {...config}\n ref={reactSelectElement}\n options={options}\n />\n ) : (\n regularSelect\n );\n\n return (\n <StyledTagsInput>\n {select}\n {errors && errors.length > 0 && isErrorLabelVisible && (\n <TagsInputErrors>\n <ErrorLabel elementId={elementId} errors={errors} />\n </TagsInputErrors>\n )}\n </StyledTagsInput>\n );\n};\n\nexport {reactSelectComponents as components};\n\nexport default TagsInput;\n"],"names":["StyledTagsInput","styled","div","_templateObject","_taggedTemplateLiteralLoose","TagsInputErrors","_templateObject2","lineHeight","prepareStyles","customActionColor","mainColor","actionColor","control","styles","_ref","isFocused","isDisabled","_extends","borderRadius","backgroundColor","minHeight","borderWidth","boxShadow","borderColor","gray80","valueContainer","overflow","padding","justifyContent","placeholder","color","fontWeight","paddingLeft","position","clearIndicator","display","marginRight","dropdownIndicator","indicatorSeparator","multiValue","_ref2","data","isException","errorColor","white","height","alignItems","margin","multiValueLabel","fontSize","multiValueRemove","_ref3","cursor","menu","zIndex","menuList","width","option","_ref4","black","input","REGEXPS","splitString","value","splits","specialHandle","_i","_REGEXPS","length","regex","split","searchSuitableOptions","pastedValue","availableOptions","searchableKeys","_splitString","rawPastedString","join","toLowerCase","sort","firstEl","secondEl","label","filter","reduce","prevValue","currValue","optionValue","String","search","condition","replace","map","splitValue","find","comparableValue","trim","Boolean","ClearIndicator","props","elementId","getStyles","_props$innerProps","innerProps","ref","restInnerProps","_objectWithoutPropertiesLoose","_excluded","React","style","id","Close","COLOR","GRAY_DARK","hoverColor","BLACK","size","SIZE","MEDIUM_SMALL","TagsInput","reactSelectElement","useRef","_useState","useState","showMinLenTip","setShowMinLenTip","_props$components","components","_props$customStyles","customStyles","_props$errors","errors","_props$isAsync","isAsync","_props$isErrorLabelVi","isErrorLabelVisible","onChange","_props$onInputChange","onInputChange","_props$filterOption","filterOption","_props$options","options","_props$promiseOptions","promiseOptions","Promise","resolve","_props$searchableKeys","_props$value","_props$actionColor","_props$isClearable","_props$isCreatable","isCreatable","_props$isDisabled","_props$isLoading","isLoading","_props$isRtl","_props$loadingMessage","loadingMessage","_props$minHeightInput","minHeightInput","_props$createOptionPl","createOptionPlaceholder","_props$onCreateOption","onCreateOption","currentValue","preparedStyled","base","state","isFunction","border","config","clearIndicatorProps","handleAsyncRequest","newValue","onPaste","e","pasteData","clipboardData","getData","pastedOptions","newInputOptions","acc","curVal","el","push","setTimeout","current","select","blur","regularSelect","ReactAsyncSelect","loadOptions","ReactSelect","CreatableSelect","formatCreateLabel","newOption","ErrorLabel"],"mappings":"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"}
1
+ {"version":3,"file":"tags-input.cjs.development.js","sources":["../src/style.tsx","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport {lineHeight, actionColor, borderRadius, gray80, errorColor, black, white} from '@propellerads/stylevariables';\nimport {StylesConfig} from 'react-select';\nimport {Option} from './types';\n\nconst StyledTagsInput = styled.div`\n position: relative;\n`;\n\nconst TagsInputErrors = styled.div`\n position: absolute;\n display: flex;\n flex-direction: row;\n right: 1px;\n top: 0;\n height: ${lineHeight}px;\n align-items: center;\n`;\n\nconst prepareStyles = (customActionColor: string): StylesConfig<Option, boolean> => {\n const mainColor = customActionColor || actionColor;\n return {\n control: (styles, {isFocused, isDisabled}) => ({\n ...styles,\n borderRadius,\n backgroundColor: isDisabled ? '#ededed' : '#fff',\n minHeight: `${lineHeight}px`,\n borderWidth: 1,\n boxShadow: 'none',\n borderColor: isFocused ? mainColor : gray80,\n }),\n valueContainer: (styles) => ({\n ...styles,\n overflow: 'hidden',\n padding: '2px 2px 4px 2px',\n justifyContent: 'flex-start',\n }),\n placeholder: () => ({\n color: '#c0c0c0',\n fontWeight: 100,\n paddingLeft: '4px',\n position: 'absolute',\n }),\n clearIndicator: () => ({\n color: '#c0c0c0',\n display: 'inline-flex',\n marginRight: '4px',\n }),\n dropdownIndicator: () => ({\n display: 'none',\n }),\n indicatorSeparator: () => ({\n display: 'none',\n }),\n multiValue: (styles, {data}) => ({\n ...styles,\n backgroundColor: data.isException ? errorColor : mainColor,\n color: white,\n borderRadius: `${borderRadius / 2}px`,\n height: '22px',\n display: 'flex',\n alignItems: 'center',\n margin: '2px 0 0 2px',\n }),\n multiValueLabel: (styles) => ({\n ...styles,\n color: white,\n padding: '0 0 0 5px',\n fontSize: '12px',\n borderRadius: 0,\n display: 'inline-flex',\n lineHeight: '1',\n }),\n multiValueRemove: (styles, {data}) => ({\n ...styles,\n padding: 0,\n margin: '0 4px 0 2px',\n backgroundColor: data.isException ? errorColor : mainColor,\n cursor: 'pointer',\n ':hover': {\n backgroundColor: data.isException ? errorColor : mainColor,\n color: 'white',\n },\n }),\n menu: (styles) => ({\n ...styles,\n margin: 0,\n borderRadius: 0,\n zIndex: 10,\n }),\n menuList: (styles) => ({\n ...styles,\n '::-webkit-scrollbar': {\n width: '7px',\n },\n '::-webkit-scrollbar-thumb': {\n borderRadius: '4px',\n backgroundColor: 'rgba(0, 0, 0, .5)',\n boxShadow: '0 0 1px rgba(255, 255, 255, .5)',\n },\n }),\n option: (styles, {isFocused}) => ({\n backgroundColor: isFocused ? mainColor : undefined,\n padding: '5px 10px',\n fontSize: '14px',\n color: isFocused ? white : black,\n }),\n input: (styles) => ({\n ...styles,\n height: '16px',\n }),\n };\n};\n\nexport {prepareStyles, StyledTagsInput, TagsInputErrors};\n","import React, {useRef, useState} from 'react';\nimport ReactSelect, {OnChangeValue, components as reactSelectComponents} from 'react-select';\nimport isFunction from 'lodash.isfunction';\nimport ReactAsyncSelect from 'react-select/async';\nimport ErrorLabel from '@propellerads/error-label';\nimport CreatableSelect from 'react-select/creatable';\nimport {Close, SIZE, COLOR} from '@propellerads/icon';\n\nimport {Option, TagsInputProps} from './types';\nimport {prepareStyles, StyledTagsInput, TagsInputErrors} from './style';\n\n// regexps by priority\nconst REGEXPS = [/(?:\\b|\\B)\\n+\\b/, /(?:\\b|\\B),\\s\\b/, /(?:\\b|\\B),+\\b/];\n\ninterface SplitStringReturnValue {\n splits: string[];\n specialHandle: boolean;\n}\n\nfunction splitString(value: string): SplitStringReturnValue {\n let splits: string[] = [];\n\n let specialHandle = false;\n // eslint-disable-next-line no-restricted-syntax\n for (const regex of REGEXPS) {\n splits = value.split(regex);\n if (splits.length > 1) {\n break;\n }\n }\n\n // special case. Need handle in special way\n if (splits.length === 1) {\n splits = value.split(/\\b\\s+\\b/);\n specialHandle = splits.length > 1;\n }\n\n return {\n splits,\n specialHandle,\n };\n}\n\nfunction searchSuitableOptions(pastedValue, availableOptions, searchableKeys) {\n const {splits, specialHandle} = splitString(pastedValue);\n\n if (specialHandle) {\n let rawPastedString = splits.join(' ').toLowerCase();\n\n return availableOptions\n .sort((firstEl, secondEl) => {\n if (firstEl.label.length > secondEl.label.length) {\n return -1;\n }\n if (firstEl.label.length < secondEl.label.length) {\n return 1;\n }\n\n return 0;\n })\n .filter((option) =>\n searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const position = rawPastedString.search(optionValue);\n const condition = position !== -1;\n if (condition) {\n rawPastedString = rawPastedString.replace(optionValue, '');\n }\n\n return prevValue || condition;\n }, false),\n );\n }\n\n return splits\n .map((splitValue) =>\n availableOptions.find((option) => {\n const comparableValue = splitValue.trim().toLowerCase();\n\n return searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const condition = optionValue === comparableValue;\n\n return prevValue || condition;\n }, false);\n }),\n )\n .filter(Boolean);\n}\n\ninterface ClearIndicatorProps {\n // eslint-disable-next-line @typescript-eslint/ban-types\n getStyles: (clearIndicator: string, props: any) => {};\n innerProps: {\n ref: React.Ref<HTMLDivElement>;\n };\n elementId: string;\n}\n\nconst ClearIndicator = (props: ClearIndicatorProps) => {\n const {\n elementId,\n getStyles,\n innerProps: {ref, ...restInnerProps},\n } = props;\n\n return (\n <div {...restInnerProps} ref={ref} style={getStyles('clearIndicator', props)} id={`${elementId}-clear`}>\n <Close color={COLOR.GRAY_DARK} hoverColor={COLOR.BLACK} size={SIZE.MEDIUM_SMALL} />\n </div>\n );\n};\n\nconst TagsInput = (props: TagsInputProps) => {\n const reactSelectElement = useRef<any>(null);\n const [showMinLenTip, setShowMinLenTip] = useState(false);\n\n const {\n components = {},\n customStyles = {},\n elementId,\n errors = [],\n isAsync = false,\n isErrorLabelVisible = false,\n onChange,\n onInputChange = null,\n filterOption = null,\n options = [],\n promiseOptions = () => Promise.resolve(),\n searchableKeys = ['label'],\n value = [],\n actionColor = '',\n isClearable = true,\n isCreatable = false,\n isDisabled = false,\n isLoading = false,\n isRtl = false,\n isMulti = true,\n isSearchable = true,\n cacheOptions = false,\n placeholder = 'Start typing...',\n noOptionsMessage = () => 'No options...',\n loadingMessage = () => 'Loading...',\n minHeightInput = 36,\n createOptionPlaceholder = 'Create ',\n onCreateOption = () => null,\n } = props;\n\n const currentValue = value;\n\n const baseStyles = prepareStyles(actionColor);\n\n const preparedStyled = {\n ...baseStyles,\n ...customStyles,\n control: (base, state) => {\n const defaultControl = baseStyles.control ? baseStyles.control(base, state) : base;\n\n const customControl =\n customStyles.control && isFunction(customStyles.control) ? customStyles.control(base, state) : {};\n\n return {\n ...defaultControl,\n ...customControl,\n border: errors.length ? '1px solid #ed3030' : defaultControl.border,\n minHeight: minHeightInput,\n };\n },\n };\n\n const config = {\n ...props,\n id: elementId,\n onChange: (newValue: OnChangeValue<Option, boolean>) => {\n let normalizedValue: Option[] = [];\n if (Array.isArray(newValue)) {\n normalizedValue = [...newValue];\n } else if (newValue && typeof newValue === 'object' && 'value' in newValue && 'label' in newValue) {\n normalizedValue = [newValue];\n }\n onChange(normalizedValue);\n },\n onInputChange: undefined,\n filterOption: undefined,\n ...(onInputChange && {onInputChange}),\n ...(filterOption && {filterOption}),\n styles: preparedStyled,\n loadingMessage: showMinLenTip ? () => 'Enter two or more characters' : loadingMessage,\n components: {\n ClearIndicator: (clearIndicatorProps) => <ClearIndicator {...clearIndicatorProps} elementId={elementId} />,\n ...components,\n },\n };\n\n const handleAsyncRequest = (newValue: any) => {\n if (!newValue.length || newValue.length < 2) {\n setShowMinLenTip(true);\n\n return Promise.resolve([]);\n }\n\n if (showMinLenTip) {\n setShowMinLenTip(false);\n }\n\n return promiseOptions(newValue);\n };\n\n const onPaste = (e) => {\n const pasteData = e.clipboardData.getData('text/plain');\n\n const pastedOptions = searchSuitableOptions(pasteData, options, searchableKeys);\n\n const newInputOptions = pastedOptions.reduce((acc, curVal) => {\n if (!acc.find((el) => el.value === curVal.value)) {\n acc.push(curVal);\n }\n\n return acc;\n }, currentValue);\n\n if (pastedOptions.length !== 0) {\n onChange(newInputOptions);\n setTimeout(() => {\n reactSelectElement.current.select.blur();\n }, 0);\n }\n };\n\n const regularSelect = isAsync ? (\n <ReactAsyncSelect {...config} loadOptions={(newValue) => handleAsyncRequest(newValue)} />\n ) : (\n <div onPaste={onPaste}>\n <ReactSelect {...config} ref={reactSelectElement} options={options} />\n </div>\n );\n\n const select = isCreatable ? (\n <CreatableSelect\n formatCreateLabel={(newValue) => `${createOptionPlaceholder}\"${newValue}\"`}\n isLoading={isLoading}\n onCreateOption={(newOption) => onCreateOption(newOption)}\n {...config}\n ref={reactSelectElement}\n options={options}\n />\n ) : (\n regularSelect\n );\n\n return (\n <StyledTagsInput>\n {select}\n {errors && errors.length > 0 && isErrorLabelVisible && (\n <TagsInputErrors>\n <ErrorLabel elementId={elementId} errors={errors} />\n </TagsInputErrors>\n )}\n </StyledTagsInput>\n );\n};\n\nexport {reactSelectComponents as components};\n\nexport default TagsInput;\n"],"names":["StyledTagsInput","styled","div","_templateObject","_taggedTemplateLiteralLoose","TagsInputErrors","_templateObject2","lineHeight","prepareStyles","customActionColor","mainColor","actionColor","control","styles","_ref","isFocused","isDisabled","_extends","borderRadius","backgroundColor","minHeight","borderWidth","boxShadow","borderColor","gray80","valueContainer","overflow","padding","justifyContent","placeholder","color","fontWeight","paddingLeft","position","clearIndicator","display","marginRight","dropdownIndicator","indicatorSeparator","multiValue","_ref2","data","isException","errorColor","white","height","alignItems","margin","multiValueLabel","fontSize","multiValueRemove","_ref3","cursor","menu","zIndex","menuList","width","option","_ref4","undefined","black","input","REGEXPS","splitString","value","splits","specialHandle","_i","_REGEXPS","length","regex","split","searchSuitableOptions","pastedValue","availableOptions","searchableKeys","_splitString","rawPastedString","join","toLowerCase","sort","firstEl","secondEl","label","filter","reduce","prevValue","currValue","optionValue","String","search","condition","replace","map","splitValue","find","comparableValue","trim","Boolean","ClearIndicator","props","elementId","getStyles","_props$innerProps","innerProps","ref","restInnerProps","_objectWithoutPropertiesLoose","_excluded","React","style","id","Close","COLOR","GRAY_DARK","hoverColor","BLACK","size","SIZE","MEDIUM_SMALL","TagsInput","reactSelectElement","useRef","_useState","useState","showMinLenTip","setShowMinLenTip","_props$components","components","_props$customStyles","customStyles","_props$errors","errors","_props$isAsync","isAsync","_props$isErrorLabelVi","isErrorLabelVisible","onChange","_props$onInputChange","onInputChange","_props$filterOption","filterOption","_props$options","options","_props$promiseOptions","promiseOptions","Promise","resolve","_props$searchableKeys","_props$value","_props$actionColor","_props$isClearable","_props$isCreatable","isCreatable","_props$isDisabled","_props$isLoading","isLoading","_props$isRtl","_props$loadingMessage","loadingMessage","_props$minHeightInput","minHeightInput","_props$createOptionPl","createOptionPlaceholder","_props$onCreateOption","onCreateOption","currentValue","baseStyles","preparedStyled","base","state","defaultControl","customControl","isFunction","border","config","newValue","normalizedValue","Array","isArray","concat","clearIndicatorProps","handleAsyncRequest","onPaste","e","pasteData","clipboardData","getData","pastedOptions","newInputOptions","acc","curVal","el","push","setTimeout","current","select","blur","regularSelect","ReactAsyncSelect","loadOptions","ReactSelect","CreatableSelect","formatCreateLabel","newOption","ErrorLabel"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,eAAe,gBAAGC,MAAM,CAACC,GAAG,CAAAC,eAAA,KAAAA,eAAA,gBAAAC,2BAAA,iCAEjC;AAED,IAAMC,eAAe,gBAAGJ,MAAM,CAACC,GAAG,CAAAI,gBAAA,KAAAA,gBAAA,gBAAAF,2BAAA,iJAMtBG,yBAAU,CAErB;AAED,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,iBAAyB;EAC9C,IAAMC,SAAS,GAAGD,iBAAiB,IAAIE,0BAAW;EAClD,OAAO;IACLC,OAAO,EAAE,SAATA,OAAOA,CAAGC,MAAM,EAAAC,IAAA;MAAA,IAAGC,SAAS,GAAAD,IAAA,CAATC,SAAS;QAAEC,UAAU,GAAAF,IAAA,CAAVE,UAAU;MAAA,OAAAC,QAAA,KACnCJ,MAAM;QACTK,YAAY,EAAZA,2BAAY;QACZC,eAAe,EAAEH,UAAU,GAAG,SAAS,GAAG,MAAM;QAChDI,SAAS,EAAKb,yBAAU,OAAI;QAC5Bc,WAAW,EAAE,CAAC;QACdC,SAAS,EAAE,MAAM;QACjBC,WAAW,EAAER,SAAS,GAAGL,SAAS,GAAGc;;KACrC;IACFC,cAAc,EAAE,SAAhBA,cAAcA,CAAGZ,MAAM;MAAA,OAAAI,QAAA,KAClBJ,MAAM;QACTa,QAAQ,EAAE,QAAQ;QAClBC,OAAO,EAAE,iBAAiB;QAC1BC,cAAc,EAAE;;KAChB;IACFC,WAAW,EAAE,SAAbA,WAAWA;MAAA,OAAS;QAClBC,KAAK,EAAE,SAAS;QAChBC,UAAU,EAAE,GAAG;QACfC,WAAW,EAAE,KAAK;QAClBC,QAAQ,EAAE;OACX;KAAC;IACFC,cAAc,EAAE,SAAhBA,cAAcA;MAAA,OAAS;QACrBJ,KAAK,EAAE,SAAS;QAChBK,OAAO,EAAE,aAAa;QACtBC,WAAW,EAAE;OACd;KAAC;IACFC,iBAAiB,EAAE,SAAnBA,iBAAiBA;MAAA,OAAS;QACxBF,OAAO,EAAE;OACV;KAAC;IACFG,kBAAkB,EAAE,SAApBA,kBAAkBA;MAAA,OAAS;QACzBH,OAAO,EAAE;OACV;KAAC;IACFI,UAAU,EAAE,SAAZA,UAAUA,CAAG1B,MAAM,EAAA2B,KAAA;MAAA,IAAGC,IAAI,GAAAD,KAAA,CAAJC,IAAI;MAAA,OAAAxB,QAAA,KACrBJ,MAAM;QACTM,eAAe,EAAEsB,IAAI,CAACC,WAAW,GAAGC,yBAAU,GAAGjC,SAAS;QAC1DoB,KAAK,EAAEc,oBAAK;QACZ1B,YAAY,EAAKA,2BAAY,GAAG,CAAC,OAAI;QACrC2B,MAAM,EAAE,MAAM;QACdV,OAAO,EAAE,MAAM;QACfW,UAAU,EAAE,QAAQ;QACpBC,MAAM,EAAE;;KACR;IACFC,eAAe,EAAE,SAAjBA,eAAeA,CAAGnC,MAAM;MAAA,OAAAI,QAAA,KACnBJ,MAAM;QACTiB,KAAK,EAAEc,oBAAK;QACZjB,OAAO,EAAE,WAAW;QACpBsB,QAAQ,EAAE,MAAM;QAChB/B,YAAY,EAAE,CAAC;QACfiB,OAAO,EAAE,aAAa;QACtB5B,UAAU,EAAE;;KACZ;IACF2C,gBAAgB,EAAE,SAAlBA,gBAAgBA,CAAGrC,MAAM,EAAAsC,KAAA;MAAA,IAAGV,IAAI,GAAAU,KAAA,CAAJV,IAAI;MAAA,OAAAxB,QAAA,KAC3BJ,MAAM;QACTc,OAAO,EAAE,CAAC;QACVoB,MAAM,EAAE,aAAa;QACrB5B,eAAe,EAAEsB,IAAI,CAACC,WAAW,GAAGC,yBAAU,GAAGjC,SAAS;QAC1D0C,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE;UACRjC,eAAe,EAAEsB,IAAI,CAACC,WAAW,GAAGC,yBAAU,GAAGjC,SAAS;UAC1DoB,KAAK,EAAE;;;KAET;IACFuB,IAAI,EAAE,SAANA,IAAIA,CAAGxC,MAAM;MAAA,OAAAI,QAAA,KACRJ,MAAM;QACTkC,MAAM,EAAE,CAAC;QACT7B,YAAY,EAAE,CAAC;QACfoC,MAAM,EAAE;;KACR;IACFC,QAAQ,EAAE,SAAVA,QAAQA,CAAG1C,MAAM;MAAA,OAAAI,QAAA,KACZJ,MAAM;QACT,qBAAqB,EAAE;UACrB2C,KAAK,EAAE;SACR;QACD,2BAA2B,EAAE;UAC3BtC,YAAY,EAAE,KAAK;UACnBC,eAAe,EAAE,mBAAmB;UACpCG,SAAS,EAAE;;;KAEb;IACFmC,MAAM,EAAE,SAARA,MAAMA,CAAG5C,MAAM,EAAA6C,KAAA;MAAA,IAAG3C,SAAS,GAAA2C,KAAA,CAAT3C,SAAS;MAAA,OAAO;QAChCI,eAAe,EAAEJ,SAAS,GAAGL,SAAS,GAAGiD,SAAS;QAClDhC,OAAO,EAAE,UAAU;QACnBsB,QAAQ,EAAE,MAAM;QAChBnB,KAAK,EAAEf,SAAS,GAAG6B,oBAAK,GAAGgB;OAC5B;KAAC;IACFC,KAAK,EAAE,SAAPA,KAAKA,CAAGhD,MAAM;MAAA,OAAAI,QAAA,KACTJ,MAAM;QACTgC,MAAM,EAAE;;;GAEX;AACH,CAAC;;;AChHD,AAWA;AACA,IAAMiB,OAAO,GAAG,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,CAAC;AAOrE,SAASC,WAAWA,CAACC,KAAa;EAChC,IAAIC,MAAM,GAAa,EAAE;EAEzB,IAAIC,aAAa,GAAG,KAAK;;EAEzB,SAAAC,EAAA,MAAAC,QAAA,GAAoBN,OAAO,EAAAK,EAAA,GAAAC,QAAA,CAAAC,MAAA,EAAAF,EAAA,IAAE;IAAxB,IAAMG,KAAK,GAAAF,QAAA,CAAAD,EAAA;IACdF,MAAM,GAAGD,KAAK,CAACO,KAAK,CAACD,KAAK,CAAC;IAC3B,IAAIL,MAAM,CAACI,MAAM,GAAG,CAAC,EAAE;MACrB;;;;EAKJ,IAAIJ,MAAM,CAACI,MAAM,KAAK,CAAC,EAAE;IACvBJ,MAAM,GAAGD,KAAK,CAACO,KAAK,CAAC,SAAS,CAAC;IAC/BL,aAAa,GAAGD,MAAM,CAACI,MAAM,GAAG,CAAC;;EAGnC,OAAO;IACLJ,MAAM,EAANA,MAAM;IACNC,aAAa,EAAbA;GACD;AACH;AAEA,SAASM,qBAAqBA,CAACC,WAAW,EAAEC,gBAAgB,EAAEC,cAAc;EAC1E,IAAAC,YAAA,GAAgCb,WAAW,CAACU,WAAW,CAAC;IAAjDR,MAAM,GAAAW,YAAA,CAANX,MAAM;IAAEC,aAAa,GAAAU,YAAA,CAAbV,aAAa;EAE5B,IAAIA,aAAa,EAAE;IACjB,IAAIW,eAAe,GAAGZ,MAAM,CAACa,IAAI,CAAC,GAAG,CAAC,CAACC,WAAW,EAAE;IAEpD,OAAOL,gBAAgB,CACpBM,IAAI,CAAC,UAACC,OAAO,EAAEC,QAAQ;MACtB,IAAID,OAAO,CAACE,KAAK,CAACd,MAAM,GAAGa,QAAQ,CAACC,KAAK,CAACd,MAAM,EAAE;QAChD,OAAO,CAAC,CAAC;;MAEX,IAAIY,OAAO,CAACE,KAAK,CAACd,MAAM,GAAGa,QAAQ,CAACC,KAAK,CAACd,MAAM,EAAE;QAChD,OAAO,CAAC;;MAGV,OAAO,CAAC;KACT,CAAC,CACDe,MAAM,CAAC,UAAC3B,MAAM;MAAA,OACbkB,cAAc,CAACU,MAAM,CAAC,UAACC,SAAS,EAAEC,SAAS;QACzC,IAAMC,WAAW,GAAGC,MAAM,CAAChC,MAAM,CAAC8B,SAAS,CAAC,CAAC,CAACR,WAAW,EAAE;QAC3D,IAAM9C,QAAQ,GAAG4C,eAAe,CAACa,MAAM,CAACF,WAAW,CAAC;QACpD,IAAMG,SAAS,GAAG1D,QAAQ,KAAK,CAAC,CAAC;QACjC,IAAI0D,SAAS,EAAE;UACbd,eAAe,GAAGA,eAAe,CAACe,OAAO,CAACJ,WAAW,EAAE,EAAE,CAAC;;QAG5D,OAAOF,SAAS,IAAIK,SAAS;OAC9B,EAAE,KAAK,CAAC;MACV;;EAGL,OAAO1B,MAAM,CACV4B,GAAG,CAAC,UAACC,UAAU;IAAA,OACdpB,gBAAgB,CAACqB,IAAI,CAAC,UAACtC,MAAM;MAC3B,IAAMuC,eAAe,GAAGF,UAAU,CAACG,IAAI,EAAE,CAAClB,WAAW,EAAE;MAEvD,OAAOJ,cAAc,CAACU,MAAM,CAAC,UAACC,SAAS,EAAEC,SAAS;QAChD,IAAMC,WAAW,GAAGC,MAAM,CAAChC,MAAM,CAAC8B,SAAS,CAAC,CAAC,CAACR,WAAW,EAAE;QAC3D,IAAMY,SAAS,GAAGH,WAAW,KAAKQ,eAAe;QAEjD,OAAOV,SAAS,IAAIK,SAAS;OAC9B,EAAE,KAAK,CAAC;KACV,CAAC;IACH,CACAP,MAAM,CAACc,OAAO,CAAC;AACpB;AAWA,IAAMC,eAAc,GAAG,SAAjBA,cAAcA,CAAIC,KAA0B;EAChD,IACEC,SAAS,GAGPD,KAAK,CAHPC,SAAS;IACTC,SAAS,GAEPF,KAAK,CAFPE,SAAS;IAAAC,iBAAA,GAEPH,KAAK,CADPI,UAAU;IAAGC,GAAG,GAAAF,iBAAA,CAAHE,GAAG;IAAKC,cAAc,GAAAC,6BAAA,CAAAJ,iBAAA,EAAAK,SAAA;EAGrC,OACEC,sDAASH,cAAc;IAAED,GAAG,EAAEA,GAAG;IAAEK,KAAK,EAAER,SAAS,CAAC,gBAAgB,EAAEF,KAAK,CAAC;IAAEW,EAAE,EAAKV,SAAS;MAC5FQ,6BAACG,UAAK;IAAClF,KAAK,EAAEmF,UAAK,CAACC,SAAS;IAAEC,UAAU,EAAEF,UAAK,CAACG,KAAK;IAAEC,IAAI,EAAEC,SAAI,CAACC;IAAgB,CAC/E;AAEV,CAAC;AAED,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAIpB,KAAqB;EACtC,IAAMqB,kBAAkB,GAAGC,YAAM,CAAM,IAAI,CAAC;EAC5C,IAAAC,SAAA,GAA0CC,cAAQ,CAAC,KAAK,CAAC;IAAlDC,aAAa,GAAAF,SAAA;IAAEG,gBAAgB,GAAAH,SAAA;EAEtC,IAAAI,iBAAA,GA6BI3B,KAAK,CA5BP4B,UAAU;IAAVA,UAAU,GAAAD,iBAAA,cAAG,EAAE,GAAAA,iBAAA;IAAAE,mBAAA,GA4Bb7B,KAAK,CA3BP8B,YAAY;IAAZA,YAAY,GAAAD,mBAAA,cAAG,EAAE,GAAAA,mBAAA;IACjB5B,SAAS,GA0BPD,KAAK,CA1BPC,SAAS;IAAA8B,aAAA,GA0BP/B,KAAK,CAzBPgC,MAAM;IAANA,MAAM,GAAAD,aAAA,cAAG,EAAE,GAAAA,aAAA;IAAAE,cAAA,GAyBTjC,KAAK,CAxBPkC,OAAO;IAAPA,OAAO,GAAAD,cAAA,cAAG,KAAK,GAAAA,cAAA;IAAAE,qBAAA,GAwBbnC,KAAK,CAvBPoC,mBAAmB;IAAnBA,mBAAmB,GAAAD,qBAAA,cAAG,KAAK,GAAAA,qBAAA;IAC3BE,SAAQ,GAsBNrC,KAAK,CAtBPqC,QAAQ;IAAAC,oBAAA,GAsBNtC,KAAK,CArBPuC,aAAa;IAAbA,aAAa,GAAAD,oBAAA,cAAG,IAAI,GAAAA,oBAAA;IAAAE,mBAAA,GAqBlBxC,KAAK,CApBPyC,YAAY;IAAZA,YAAY,GAAAD,mBAAA,cAAG,IAAI,GAAAA,mBAAA;IAAAE,cAAA,GAoBjB1C,KAAK,CAnBP2C,OAAO;IAAPA,OAAO,GAAAD,cAAA,cAAG,EAAE,GAAAA,cAAA;IAAAE,qBAAA,GAmBV5C,KAAK,CAlBP6C,cAAc;IAAdA,cAAc,GAAAD,qBAAA,cAAG;MAAA,OAAME,OAAO,CAACC,OAAO,EAAE;QAAAH,qBAAA;IAAAI,qBAAA,GAkBtChD,KAAK,CAjBPzB,cAAc;IAAdA,cAAc,GAAAyE,qBAAA,cAAG,CAAC,OAAO,CAAC,GAAAA,qBAAA;IAAAC,YAAA,GAiBxBjD,KAAK,CAhBPpC,KAAK;IAALA,KAAK,GAAAqF,YAAA,cAAG,EAAE,GAAAA,YAAA;IAAAC,kBAAA,GAgBRlD,KAAK,CAfPzF,WAAW;IAAXA,WAAW,GAAA2I,kBAAA,cAAG,EAAE,GAAAA,kBAAA;IAAAC,AACEC,kBAAA,GAchBpD,KAAK,CAbPqD,WAAW;IAAXA,WAAW,GAAAD,kBAAA,cAAG,KAAK,GAAAA,kBAAA;IAAAE,AACDC,gBAAA,GAYhBvD,KAAK,CAXPwD,SAAS;IAATA,SAAS,GAAAD,gBAAA,cAAG,KAAK,GAAAA,gBAAA;IAAAE,AAMuBC,qBAAA,GAKtC1D,KAAK,CAJP2D,cAAc;IAAdA,cAAc,GAAAD,qBAAA,cAAG;MAAA,OAAM,YAAY;QAAAA,qBAAA;IAAAE,qBAAA,GAIjC5D,KAAK,CAHP6D,cAAc;IAAdA,cAAc,GAAAD,qBAAA,cAAG,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAGjB9D,KAAK,CAFP+D,uBAAuB;IAAvBA,uBAAuB,GAAAD,qBAAA,cAAG,SAAS,GAAAA,qBAAA;IAAAE,qBAAA,GAEjChE,KAAK,CADPiE,cAAc;IAAdA,eAAc,GAAAD,qBAAA,cAAG;MAAA,OAAM,IAAI;QAAAA,qBAAA;EAG7B,IAAME,YAAY,GAAGtG,KAAK;EAE1B,IAAMuG,UAAU,GAAG/J,aAAa,CAACG,WAAW,CAAC;EAE7C,IAAM6J,cAAc,GAAAvJ,QAAA,KACfsJ,UAAU,EACVrC,YAAY;IACftH,OAAO,EAAE,SAATA,OAAOA,CAAG6J,IAAI,EAAEC,KAAK;MACnB,IAAMC,cAAc,GAAGJ,UAAU,CAAC3J,OAAO,GAAG2J,UAAU,CAAC3J,OAAO,CAAC6J,IAAI,EAAEC,KAAK,CAAC,GAAGD,IAAI;MAElF,IAAMG,aAAa,GACjB1C,YAAY,CAACtH,OAAO,IAAIiK,UAAU,CAAC3C,YAAY,CAACtH,OAAO,CAAC,GAAGsH,YAAY,CAACtH,OAAO,CAAC6J,IAAI,EAAEC,KAAK,CAAC,GAAG,EAAE;MAEnG,OAAAzJ,QAAA,KACK0J,cAAc,EACdC,aAAa;QAChBE,MAAM,EAAE1C,MAAM,CAAC/D,MAAM,GAAG,mBAAmB,GAAGsG,cAAc,CAACG,MAAM;QACnE1J,SAAS,EAAE6I;;;IAGhB;EAED,IAAMc,MAAM,GAAA9J,QAAA,KACPmF,KAAK;IACRW,EAAE,EAAEV,SAAS;IACboC,QAAQ,EAAE,SAAVA,QAAQA,CAAGuC,QAAwC;MACjD,IAAIC,eAAe,GAAa,EAAE;MAClC,IAAIC,KAAK,CAACC,OAAO,CAACH,QAAQ,CAAC,EAAE;QAC3BC,eAAe,MAAAG,MAAA,CAAOJ,QAAQ,CAAC;OAChC,MAAM,IAAIA,QAAQ,IAAI,OAAOA,QAAQ,KAAK,QAAQ,IAAI,OAAO,IAAIA,QAAQ,IAAI,OAAO,IAAIA,QAAQ,EAAE;QACjGC,eAAe,GAAG,CAACD,QAAQ,CAAC;;MAE9BvC,SAAQ,CAACwC,eAAe,CAAC;KAC1B;IACDtC,aAAa,EAAEhF,SAAS;IACxBkF,YAAY,EAAElF;KACVgF,aAAa,IAAI;IAACA,aAAa,EAAbA;GAAc,EAChCE,YAAY,IAAI;IAACA,YAAY,EAAZA;GAAa;IAClChI,MAAM,EAAE2J,cAAc;IACtBT,cAAc,EAAElC,aAAa,GAAG;MAAA,OAAM,8BAA8B;QAAGkC,cAAc;IACrF/B,UAAU,EAAA/G,QAAA;MACRkF,cAAc,EAAE,SAAhBA,cAAcA,CAAGkF,mBAAmB;QAAA,OAAKxE,6BAACV,eAAc,oBAAKkF,mBAAmB;UAAEhF,SAAS,EAAEA;WAAa;;OACvG2B,UAAU;IAEhB;EAED,IAAMsD,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAIN,QAAa;IACvC,IAAI,CAACA,QAAQ,CAAC3G,MAAM,IAAI2G,QAAQ,CAAC3G,MAAM,GAAG,CAAC,EAAE;MAC3CyD,gBAAgB,CAAC,IAAI,CAAC;MAEtB,OAAOoB,OAAO,CAACC,OAAO,CAAC,EAAE,CAAC;;IAG5B,IAAItB,aAAa,EAAE;MACjBC,gBAAgB,CAAC,KAAK,CAAC;;IAGzB,OAAOmB,cAAc,CAAC+B,QAAQ,CAAC;GAChC;EAED,IAAMO,OAAO,GAAG,SAAVA,OAAOA,CAAIC,CAAC;IAChB,IAAMC,SAAS,GAAGD,CAAC,CAACE,aAAa,CAACC,OAAO,CAAC,YAAY,CAAC;IAEvD,IAAMC,aAAa,GAAGpH,qBAAqB,CAACiH,SAAS,EAAE1C,OAAO,EAAEpE,cAAc,CAAC;IAE/E,IAAMkH,eAAe,GAAGD,aAAa,CAACvG,MAAM,CAAC,UAACyG,GAAG,EAAEC,MAAM;MACvD,IAAI,CAACD,GAAG,CAAC/F,IAAI,CAAC,UAACiG,EAAE;QAAA,OAAKA,EAAE,CAAChI,KAAK,KAAK+H,MAAM,CAAC/H,KAAK;QAAC,EAAE;QAChD8H,GAAG,CAACG,IAAI,CAACF,MAAM,CAAC;;MAGlB,OAAOD,GAAG;KACX,EAAExB,YAAY,CAAC;IAEhB,IAAIsB,aAAa,CAACvH,MAAM,KAAK,CAAC,EAAE;MAC9BoE,SAAQ,CAACoD,eAAe,CAAC;MACzBK,UAAU,CAAC;QACTzE,kBAAkB,CAAC0E,OAAO,CAACC,MAAM,CAACC,IAAI,EAAE;OACzC,EAAE,CAAC,CAAC;;GAER;EAED,IAAMC,aAAa,GAAGhE,OAAO,GAC3BzB,6BAAC0F,gBAAgB,oBAAKxB,MAAM;IAAEyB,WAAW,EAAE,SAAbA,WAAWA,CAAGxB,QAAQ;MAAA,OAAKM,kBAAkB,CAACN,QAAQ,CAAC;;KAAI,GAEzFnE;IAAK0E,OAAO,EAAEA;KACZ1E,6BAAC4F,oBAAW,oBAAK1B,MAAM;IAAEtE,GAAG,EAAEgB,kBAAkB;IAAEsB,OAAO,EAAEA;KAAW,CAEzE;EAED,IAAMqD,MAAM,GAAG3C,WAAW,GACxB5C,6BAAC6F,eAAe;IACdC,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAG3B,QAAQ;MAAA,OAAQb,uBAAuB,UAAIa,QAAQ;KAAG;IAC1EpB,SAAS,EAAEA,SAAS;IACpBS,cAAc,EAAE,SAAhBA,cAAcA,CAAGuC,SAAS;MAAA,OAAKvC,eAAc,CAACuC,SAAS,CAAC;;KACpD7B,MAAM;IACVtE,GAAG,EAAEgB,kBAAkB;IACvBsB,OAAO,EAAEA;KACT,GAEFuD,aACD;EAED,OACEzF,6BAAC7G,eAAe,QACboM,MAAM,EACNhE,MAAM,IAAIA,MAAM,CAAC/D,MAAM,GAAG,CAAC,IAAImE,mBAAmB,IACjD3B,6BAACxG,eAAe,QACdwG,6BAACgG,UAAU;IAACxG,SAAS,EAAEA,SAAS;IAAE+B,MAAM,EAAEA;IAAU,CAEvD,CACe;AAEtB,CAAC;;;;;;;;;;"}
@@ -1,2 +1,2 @@
1
- "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var n,r,t=require("react"),o=e(t),i=require("react-select"),l=e(i),a=e(require("lodash.isfunction")),u=e(require("react-select/lib/Async")),c=e(require("@propellerads/error-label")),s=e(require("react-select/lib/Creatable")),d=require("@propellerads/icon"),p=e(require("styled-components")),f=require("@propellerads/stylevariables");function g(){return(g=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)({}).hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e}).apply(null,arguments)}function b(e,n){return n||(n=e.slice(0)),e.raw=n,e}var h=p.div(n||(n=b(["\n position: relative;\n"]))),v=p.div(r||(r=b(["\n position: absolute;\n display: flex;\n flex-direction: row;\n right: 1px;\n top: 0;\n height: ","px;\n align-items: center;\n"])),f.lineHeight),m=function(e){var n=e||f.actionColor;return{control:function(e,r){return g({},e,{borderRadius:f.borderRadius,backgroundColor:r.isDisabled?"#ededed":"#fff",minHeight:f.lineHeight+"px",borderWidth:1,boxShadow:"none",borderColor:r.isFocused?n:f.gray80})},valueContainer:function(e){return g({},e,{overflow:"hidden",padding:"2px 2px 4px 2px",justifyContent:"flex-start"})},placeholder:function(){return{color:"#c0c0c0",fontWeight:100,paddingLeft:"4px",position:"absolute"}},clearIndicator:function(){return{color:"#c0c0c0",display:"inline-flex",marginRight:"4px"}},dropdownIndicator:function(){return{display:"none"}},indicatorSeparator:function(){return{display:"none"}},multiValue:function(e,r){return g({},e,{backgroundColor:r.data.isException?f.errorColor:n,color:f.white,borderRadius:f.borderRadius/2+"px",height:"22px",display:"flex",alignItems:"center",margin:"2px 0 0 2px"})},multiValueLabel:function(e){return g({},e,{color:f.white,padding:"0 0 0 5px",fontSize:"12px",borderRadius:0,display:"inline-flex",lineHeight:"1"})},multiValueRemove:function(e,r){var t=r.data;return g({},e,{padding:0,margin:"0 4px 0 2px",backgroundColor:t.isException?f.errorColor:n,cursor:"pointer",":hover":{backgroundColor:t.isException?f.errorColor:n,color:"white"}})},menu:function(e){return g({},e,{margin:0,borderRadius:0,zIndex:10})},menuList:function(e){return g({},e,{"::-webkit-scrollbar":{width:"7px"},"::-webkit-scrollbar-thumb":{borderRadius:"4px",backgroundColor:"rgba(0, 0, 0, .5)",boxShadow:"0 0 1px rgba(255, 255, 255, .5)"}})},option:function(e,r){var t=r.isFocused;return{backgroundColor:t?n:null,padding:"5px 10px",fontSize:"14px",color:t?f.white:f.black}},input:function(e){return g({},e,{height:"16px"})}}},x=["ref"],C=[/(?:\b|\B)\n+\b/,/(?:\b|\B),\s\b/,/(?:\b|\B),+\b/],y=function(e){var n=e.elementId,r=e.getStyles,t=e.innerProps,i=t.ref,l=function(e,n){if(null==e)return{};var r={};for(var t in e)if({}.hasOwnProperty.call(e,t)){if(-1!==n.indexOf(t))continue;r[t]=e[t]}return r}(t,x);return o.createElement("div",Object.assign({},l,{ref:i,style:r("clearIndicator",e),id:n+"-clear"}),o.createElement(d.Close,{color:d.COLOR.GRAY_DARK,hoverColor:d.COLOR.BLACK,size:d.SIZE.MEDIUM_SMALL}))};Object.defineProperty(exports,"components",{enumerable:!0,get:function(){return i.components}}),exports.default=function(e){var n=t.useRef(null),r=t.useState(!1),i=r[0],d=r[1],p=e.components,f=void 0===p?{}:p,b=e.customStyles,x=void 0===b?{}:b,O=e.elementId,w=e.errors,E=void 0===w?[]:w,L=e.isAsync,I=void 0!==L&&L,R=e.isErrorLabelVisible,j=void 0!==R&&R,S=e.onChange,k=e.onInputChange,q=void 0===k?null:k,H=e.filterOption,P=void 0===H?null:H,A=e.options,M=void 0===A?[]:A,B=e.promiseOptions,D=void 0===B?function(){return Promise.resolve()}:B,z=e.searchableKeys,V=void 0===z?["label"]:z,_=e.value,K=e.actionColor,F=void 0===K?"":K,W=e.isCreatable,G=void 0!==W&&W,T=e.isLoading,U=void 0!==T&&T,Y=e.loadingMessage,Z=void 0===Y?function(){return"Loading..."}:Y,J=e.minHeightInput,N=void 0===J?36:J,Q=e.createOptionPlaceholder,X=void 0===Q?"Create ":Q,$=e.onCreateOption,ee=void 0===$?function(){return null}:$,ne=void 0===_?[]:_,re=g({},m(F),x,{control:function(e,n){var r=x.control&&a(x.control)?x.control(e,n):{};return g({},m(F).control(e,n),r,{border:E.length?"1px solid #ed3030":m(F).control(e,n).border,minHeight:N})}}),te=g({},e,{id:O,onChange:S},q&&{onInputChange:q},P&&{filterOption:P},{styles:re,loadingMessage:i?function(){return"Enter two or more characters"}:Z,components:g({ClearIndicator:function(e){return o.createElement(y,Object.assign({},e,{elementId:O}))}},f)}),oe=I?o.createElement(u,Object.assign({},te,{loadOptions:function(e){return function(e){return!e.length||e.length<2?(d(!0),null):(i&&d(!1),D(e))}(e)}})):o.createElement("div",{onPaste:function(e){var r=function(e,n,r){var t=function(e){for(var n=[],r=!1,t=0,o=C;t<o.length&&!((n=e.split(o[t])).length>1);t++);return 1===n.length&&(r=(n=e.split(/\b\s+\b/)).length>1),{splits:n,specialHandle:r}}(e),o=t.splits;if(t.specialHandle){var i=o.join(" ").toLowerCase();return n.sort((function(e,n){return e.label.length>n.label.length?-1:e.label.length<n.label.length?1:0})).filter((function(e){return r.reduce((function(n,r){var t=String(e[r]).toLowerCase(),o=-1!==i.search(t);return o&&(i=i.replace(t,"")),n||o}),!1)}))}return o.map((function(e){return n.find((function(n){var t=e.trim().toLowerCase();return r.reduce((function(e,r){var o=String(n[r]).toLowerCase();return e||o===t}),!1)}))})).filter(Boolean)}(e.clipboardData.getData("text/plain"),M,V),t=r.reduce((function(e,n){return e.find((function(e){return e.value===n.value}))||e.push(n),e}),ne);0!==r.length&&(S(t),setTimeout((function(){n.current.select.blur()}),0))}},o.createElement(l,Object.assign({},te,{ref:n,options:M}))),ie=G?o.createElement(s,Object.assign({formatCreateLabel:function(e){return X+'"'+e+'"'},isLoading:U,onCreateOption:function(e){return ee(e)}},te,{ref:n,options:M})):oe;return o.createElement(h,null,ie,E&&E.length>0&&j&&o.createElement(v,null,o.createElement(c,{elementId:O,errors:E})))};
1
+ "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var n,r,t=require("react"),o=e(t),i=require("react-select"),l=e(i),a=e(require("lodash.isfunction")),u=e(require("react-select/async")),c=e(require("@propellerads/error-label")),s=e(require("react-select/creatable")),d=require("@propellerads/icon"),p=e(require("styled-components")),f=require("@propellerads/stylevariables");function g(){return(g=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)({}).hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e}).apply(null,arguments)}function b(e,n){return n||(n=e.slice(0)),e.raw=n,e}var v=p.div(n||(n=b(["\n position: relative;\n"]))),h=p.div(r||(r=b(["\n position: absolute;\n display: flex;\n flex-direction: row;\n right: 1px;\n top: 0;\n height: ","px;\n align-items: center;\n"])),f.lineHeight),m=["ref"],x=[/(?:\b|\B)\n+\b/,/(?:\b|\B),\s\b/,/(?:\b|\B),+\b/],C=function(e){var n=e.elementId,r=e.getStyles,t=e.innerProps,i=t.ref,l=function(e,n){if(null==e)return{};var r={};for(var t in e)if({}.hasOwnProperty.call(e,t)){if(-1!==n.indexOf(t))continue;r[t]=e[t]}return r}(t,m);return o.createElement("div",Object.assign({},l,{ref:i,style:r("clearIndicator",e),id:n+"-clear"}),o.createElement(d.Close,{color:d.COLOR.GRAY_DARK,hoverColor:d.COLOR.BLACK,size:d.SIZE.MEDIUM_SMALL}))};Object.defineProperty(exports,"components",{enumerable:!0,get:function(){return i.components}}),exports.default=function(e){var n,r=t.useRef(null),i=t.useState(!1),d=i[0],p=i[1],b=e.components,m=void 0===b?{}:b,y=e.customStyles,O=void 0===y?{}:y,w=e.elementId,E=e.errors,L=void 0===E?[]:E,I=e.isAsync,R=void 0!==I&&I,j=e.isErrorLabelVisible,S=void 0!==j&&j,k=e.onChange,q=e.onInputChange,P=void 0===q?null:q,H=e.filterOption,A=void 0===H?null:H,M=e.options,B=void 0===M?[]:M,D=e.promiseOptions,z=void 0===D?function(){return Promise.resolve()}:D,V=e.searchableKeys,_=void 0===V?["label"]:V,K=e.value,F=e.actionColor,W=e.isCreatable,G=void 0!==W&&W,T=e.isLoading,U=void 0!==T&&T,Y=e.loadingMessage,Z=void 0===Y?function(){return"Loading..."}:Y,J=e.minHeightInput,N=void 0===J?36:J,Q=e.createOptionPlaceholder,X=void 0===Q?"Create ":Q,$=e.onCreateOption,ee=void 0===$?function(){return null}:$,ne=void 0===K?[]:K,re=(n=(void 0===F?"":F)||f.actionColor,{control:function(e,r){return g({},e,{borderRadius:f.borderRadius,backgroundColor:r.isDisabled?"#ededed":"#fff",minHeight:f.lineHeight+"px",borderWidth:1,boxShadow:"none",borderColor:r.isFocused?n:f.gray80})},valueContainer:function(e){return g({},e,{overflow:"hidden",padding:"2px 2px 4px 2px",justifyContent:"flex-start"})},placeholder:function(){return{color:"#c0c0c0",fontWeight:100,paddingLeft:"4px",position:"absolute"}},clearIndicator:function(){return{color:"#c0c0c0",display:"inline-flex",marginRight:"4px"}},dropdownIndicator:function(){return{display:"none"}},indicatorSeparator:function(){return{display:"none"}},multiValue:function(e,r){return g({},e,{backgroundColor:r.data.isException?f.errorColor:n,color:f.white,borderRadius:f.borderRadius/2+"px",height:"22px",display:"flex",alignItems:"center",margin:"2px 0 0 2px"})},multiValueLabel:function(e){return g({},e,{color:f.white,padding:"0 0 0 5px",fontSize:"12px",borderRadius:0,display:"inline-flex",lineHeight:"1"})},multiValueRemove:function(e,r){var t=r.data;return g({},e,{padding:0,margin:"0 4px 0 2px",backgroundColor:t.isException?f.errorColor:n,cursor:"pointer",":hover":{backgroundColor:t.isException?f.errorColor:n,color:"white"}})},menu:function(e){return g({},e,{margin:0,borderRadius:0,zIndex:10})},menuList:function(e){return g({},e,{"::-webkit-scrollbar":{width:"7px"},"::-webkit-scrollbar-thumb":{borderRadius:"4px",backgroundColor:"rgba(0, 0, 0, .5)",boxShadow:"0 0 1px rgba(255, 255, 255, .5)"}})},option:function(e,r){var t=r.isFocused;return{backgroundColor:t?n:void 0,padding:"5px 10px",fontSize:"14px",color:t?f.white:f.black}},input:function(e){return g({},e,{height:"16px"})}}),te=g({},re,O,{control:function(e,n){var r=re.control?re.control(e,n):e;return g({},r,O.control&&a(O.control)?O.control(e,n):{},{border:L.length?"1px solid #ed3030":r.border,minHeight:N})}}),oe=g({},e,{id:w,onChange:function(e){var n=[];Array.isArray(e)?n=[].concat(e):e&&"object"==typeof e&&"value"in e&&"label"in e&&(n=[e]),k(n)},onInputChange:void 0,filterOption:void 0},P&&{onInputChange:P},A&&{filterOption:A},{styles:te,loadingMessage:d?function(){return"Enter two or more characters"}:Z,components:g({ClearIndicator:function(e){return o.createElement(C,Object.assign({},e,{elementId:w}))}},m)}),ie=R?o.createElement(u,Object.assign({},oe,{loadOptions:function(e){return function(e){return!e.length||e.length<2?(p(!0),Promise.resolve([])):(d&&p(!1),z(e))}(e)}})):o.createElement("div",{onPaste:function(e){var n=function(e,n,r){var t=function(e){for(var n=[],r=!1,t=0,o=x;t<o.length&&!((n=e.split(o[t])).length>1);t++);return 1===n.length&&(r=(n=e.split(/\b\s+\b/)).length>1),{splits:n,specialHandle:r}}(e),o=t.splits;if(t.specialHandle){var i=o.join(" ").toLowerCase();return n.sort((function(e,n){return e.label.length>n.label.length?-1:e.label.length<n.label.length?1:0})).filter((function(e){return r.reduce((function(n,r){var t=String(e[r]).toLowerCase(),o=-1!==i.search(t);return o&&(i=i.replace(t,"")),n||o}),!1)}))}return o.map((function(e){return n.find((function(n){var t=e.trim().toLowerCase();return r.reduce((function(e,r){var o=String(n[r]).toLowerCase();return e||o===t}),!1)}))})).filter(Boolean)}(e.clipboardData.getData("text/plain"),B,_),t=n.reduce((function(e,n){return e.find((function(e){return e.value===n.value}))||e.push(n),e}),ne);0!==n.length&&(k(t),setTimeout((function(){r.current.select.blur()}),0))}},o.createElement(l,Object.assign({},oe,{ref:r,options:B}))),le=G?o.createElement(s,Object.assign({formatCreateLabel:function(e){return X+'"'+e+'"'},isLoading:U,onCreateOption:function(e){return ee(e)}},oe,{ref:r,options:B})):ie;return o.createElement(v,null,le,L&&L.length>0&&S&&o.createElement(h,null,o.createElement(c,{elementId:w,errors:L})))};
2
2
  //# sourceMappingURL=tags-input.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tags-input.cjs.production.min.js","sources":["../src/style.tsx","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport {lineHeight, actionColor, borderRadius, gray80, errorColor, black, white} from '@propellerads/stylevariables';\n\nconst StyledTagsInput = styled.div`\n position: relative;\n`;\n\nconst TagsInputErrors = styled.div`\n position: absolute;\n display: flex;\n flex-direction: row;\n right: 1px;\n top: 0;\n height: ${lineHeight}px;\n align-items: center;\n`;\n\nconst prepareStyles = (customActionColor: string) => {\n const mainColor = customActionColor || actionColor;\n return {\n control: (styles, {isFocused, isDisabled}) => ({\n ...styles,\n borderRadius,\n backgroundColor: isDisabled ? '#ededed' : '#fff',\n minHeight: `${lineHeight}px`,\n borderWidth: 1,\n boxShadow: 'none',\n borderColor: isFocused ? mainColor : gray80,\n }),\n valueContainer: (styles) => ({\n ...styles,\n overflow: 'hidden',\n padding: '2px 2px 4px 2px',\n justifyContent: 'flex-start',\n }),\n placeholder: () => ({\n color: '#c0c0c0',\n fontWeight: 100,\n paddingLeft: '4px',\n position: 'absolute',\n }),\n clearIndicator: () => ({\n color: '#c0c0c0',\n display: 'inline-flex',\n marginRight: '4px',\n }),\n dropdownIndicator: () => ({\n display: 'none',\n }),\n indicatorSeparator: () => ({\n display: 'none',\n }),\n multiValue: (styles, {data}) => ({\n ...styles,\n backgroundColor: data.isException ? errorColor : mainColor,\n color: white,\n borderRadius: `${borderRadius / 2}px`,\n height: '22px',\n display: 'flex',\n alignItems: 'center',\n margin: '2px 0 0 2px',\n }),\n multiValueLabel: (styles) => ({\n ...styles,\n color: white,\n padding: '0 0 0 5px',\n fontSize: '12px',\n borderRadius: 0,\n display: 'inline-flex',\n lineHeight: '1',\n }),\n multiValueRemove: (styles, {data}) => ({\n ...styles,\n padding: 0,\n margin: '0 4px 0 2px',\n backgroundColor: data.isException ? errorColor : mainColor,\n cursor: 'pointer',\n ':hover': {\n backgroundColor: data.isException ? errorColor : mainColor,\n color: 'white',\n },\n }),\n menu: (styles) => ({\n ...styles,\n margin: 0,\n borderRadius: 0,\n zIndex: 10,\n }),\n menuList: (styles) => ({\n ...styles,\n '::-webkit-scrollbar': {\n width: '7px',\n },\n '::-webkit-scrollbar-thumb': {\n borderRadius: '4px',\n backgroundColor: 'rgba(0, 0, 0, .5)',\n boxShadow: '0 0 1px rgba(255, 255, 255, .5)',\n },\n }),\n option: (styles, {isFocused}) => ({\n backgroundColor: isFocused ? mainColor : null,\n padding: '5px 10px',\n fontSize: '14px',\n color: isFocused ? white : black,\n }),\n input: (styles) => ({\n ...styles,\n height: '16px',\n }),\n };\n};\n\nexport {prepareStyles, StyledTagsInput, TagsInputErrors};\n","import React, {useRef, useState} from 'react';\nimport ReactSelect, {components as reactSelectComponents} from 'react-select';\nimport isFunction from 'lodash.isfunction';\nimport ReactAsyncSelect from 'react-select/lib/Async';\nimport ErrorLabel from '@propellerads/error-label';\nimport CreatableSelect from 'react-select/lib/Creatable';\nimport {Close, SIZE, COLOR} from '@propellerads/icon';\n\nimport {TagsInputProps} from './types';\nimport {prepareStyles, StyledTagsInput, TagsInputErrors} from './style';\n\n// regexps by priority\nconst REGEXPS = [/(?:\\b|\\B)\\n+\\b/, /(?:\\b|\\B),\\s\\b/, /(?:\\b|\\B),+\\b/];\n\ninterface SplitStringReturnValue {\n splits: string[];\n specialHandle: boolean;\n}\n\nfunction splitString(value: string): SplitStringReturnValue {\n let splits: string[] = [];\n\n let specialHandle = false;\n // eslint-disable-next-line no-restricted-syntax\n for (const regex of REGEXPS) {\n splits = value.split(regex);\n if (splits.length > 1) {\n break;\n }\n }\n\n // special case. Need handle in special way\n if (splits.length === 1) {\n splits = value.split(/\\b\\s+\\b/);\n specialHandle = splits.length > 1;\n }\n\n return {\n splits,\n specialHandle,\n };\n}\n\nfunction searchSuitableOptions(pastedValue, availableOptions, searchableKeys) {\n const {splits, specialHandle} = splitString(pastedValue);\n\n if (specialHandle) {\n let rawPastedString = splits.join(' ').toLowerCase();\n\n return availableOptions\n .sort((firstEl, secondEl) => {\n if (firstEl.label.length > secondEl.label.length) {\n return -1;\n }\n if (firstEl.label.length < secondEl.label.length) {\n return 1;\n }\n\n return 0;\n })\n .filter((option) =>\n searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const position = rawPastedString.search(optionValue);\n const condition = position !== -1;\n if (condition) {\n rawPastedString = rawPastedString.replace(optionValue, '');\n }\n\n return prevValue || condition;\n }, false),\n );\n }\n\n return splits\n .map((splitValue) =>\n availableOptions.find((option) => {\n const comparableValue = splitValue.trim().toLowerCase();\n\n return searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const condition = optionValue === comparableValue;\n\n return prevValue || condition;\n }, false);\n }),\n )\n .filter(Boolean);\n}\n\ninterface ClearIndicatorProps {\n // eslint-disable-next-line @typescript-eslint/ban-types\n getStyles: (clearIndicator: string, props: any) => {};\n innerProps: {\n ref: React.Ref<HTMLDivElement>;\n };\n elementId: string;\n}\n\nconst ClearIndicator = (props: ClearIndicatorProps) => {\n const {\n elementId,\n getStyles,\n innerProps: {ref, ...restInnerProps},\n } = props;\n\n return (\n <div {...restInnerProps} ref={ref} style={getStyles('clearIndicator', props)} id={`${elementId}-clear`}>\n <Close color={COLOR.GRAY_DARK} hoverColor={COLOR.BLACK} size={SIZE.MEDIUM_SMALL} />\n </div>\n );\n};\n\nconst TagsInput = (props: TagsInputProps) => {\n const reactSelectElement = useRef<any>(null);\n const [showMinLenTip, setShowMinLenTip] = useState(false);\n\n const {\n components = {},\n customStyles = {},\n elementId,\n errors = [],\n isAsync = false,\n isErrorLabelVisible = false,\n onChange,\n onInputChange = null,\n filterOption = null,\n options = [],\n promiseOptions = () => Promise.resolve(),\n searchableKeys = ['label'],\n value = [],\n actionColor = '',\n isClearable = true,\n isCreatable = false,\n isDisabled = false,\n isLoading = false,\n isRtl = false,\n isMulti = true,\n isSearchable = true,\n cacheOptions = false,\n placeholder = 'Start typing...',\n noOptionsMessage = () => 'No options...',\n loadingMessage = () => 'Loading...',\n minHeightInput = 36,\n createOptionPlaceholder = 'Create ',\n onCreateOption = () => null,\n } = props;\n\n const currentValue = value;\n\n const preparedStyled = {\n ...prepareStyles(actionColor),\n ...customStyles,\n control: (base, state) => {\n const styles = customStyles.control && isFunction(customStyles.control) ? customStyles.control(base, state) : {};\n\n return {\n ...prepareStyles(actionColor).control(base, state),\n ...styles,\n border: errors.length ? '1px solid #ed3030' : prepareStyles(actionColor).control(base, state).border,\n minHeight: minHeightInput,\n };\n },\n };\n\n const config = {\n ...props,\n id: elementId,\n onChange,\n ...(onInputChange && {onInputChange}),\n ...(filterOption && {filterOption}),\n styles: preparedStyled,\n loadingMessage: showMinLenTip ? () => 'Enter two or more characters' : loadingMessage,\n components: {\n ClearIndicator: (clearIndicatorProps) => <ClearIndicator {...clearIndicatorProps} elementId={elementId} />,\n ...components,\n },\n };\n\n const handleAsyncRequest = (newValue: any) => {\n if (!newValue.length || newValue.length < 2) {\n setShowMinLenTip(true);\n\n return null;\n }\n\n if (showMinLenTip) {\n setShowMinLenTip(false);\n }\n\n return promiseOptions(newValue);\n };\n\n const onPaste = (e) => {\n const pasteData = e.clipboardData.getData('text/plain');\n\n const pastedOptions = searchSuitableOptions(pasteData, options, searchableKeys);\n\n const newInputOptions = pastedOptions.reduce((acc, curVal) => {\n if (!acc.find((el) => el.value === curVal.value)) {\n acc.push(curVal);\n }\n\n return acc;\n }, currentValue);\n\n if (pastedOptions.length !== 0) {\n onChange(newInputOptions);\n setTimeout(() => {\n reactSelectElement.current.select.blur();\n }, 0);\n }\n };\n\n const regularSelect = isAsync ? (\n <ReactAsyncSelect {...config} loadOptions={(newValue) => handleAsyncRequest(newValue)} />\n ) : (\n <div onPaste={onPaste}>\n <ReactSelect {...config} ref={reactSelectElement} options={options} />\n </div>\n );\n\n const select = isCreatable ? (\n <CreatableSelect\n formatCreateLabel={(newValue) => `${createOptionPlaceholder}\"${newValue}\"`}\n isLoading={isLoading}\n onCreateOption={(newOption) => onCreateOption(newOption)}\n {...config}\n ref={reactSelectElement}\n options={options}\n />\n ) : (\n regularSelect\n );\n\n return (\n <StyledTagsInput>\n {select}\n {errors && errors.length > 0 && isErrorLabelVisible && (\n <TagsInputErrors>\n <ErrorLabel elementId={elementId} errors={errors} />\n </TagsInputErrors>\n )}\n </StyledTagsInput>\n );\n};\n\nexport {reactSelectComponents as components};\n\nexport default TagsInput;\n"],"names":["StyledTagsInput","styled","div","_templateObject","_taggedTemplateLiteralLoose","TagsInputErrors","_templateObject2","lineHeight","prepareStyles","customActionColor","mainColor","actionColor","control","styles","_ref","_extends","borderRadius","backgroundColor","isDisabled","minHeight","borderWidth","boxShadow","borderColor","isFocused","gray80","valueContainer","overflow","padding","justifyContent","placeholder","color","fontWeight","paddingLeft","position","clearIndicator","display","marginRight","dropdownIndicator","indicatorSeparator","multiValue","_ref2","data","isException","errorColor","white","height","alignItems","margin","multiValueLabel","fontSize","multiValueRemove","_ref3","cursor",":hover","menu","zIndex","menuList","::-webkit-scrollbar","width","::-webkit-scrollbar-thumb","option","_ref4","black","input","REGEXPS","ClearIndicator","props","elementId","getStyles","_props$innerProps","innerProps","ref","restInnerProps","_objectWithoutPropertiesLoose","_excluded","React","style","id","Close","COLOR","GRAY_DARK","hoverColor","BLACK","size","SIZE","MEDIUM_SMALL","reactSelectElement","useRef","_useState","useState","showMinLenTip","setShowMinLenTip","_props$components","components","_props$customStyles","customStyles","_props$errors","errors","_props$isAsync","isAsync","_props$isErrorLabelVi","isErrorLabelVisible","onChange","_props$onInputChange","onInputChange","_props$filterOption","filterOption","_props$options","options","_props$promiseOptions","promiseOptions","Promise","resolve","_props$searchableKeys","searchableKeys","_props$value","value","_props$actionColor","_props$isClearable","isCreatable","_props$isCreatable","_props$isDisabled","isLoading","_props$isLoading","_props$isRtl","loadingMessage","_props$loadingMessage","_props$minHeightInput","minHeightInput","_props$createOptionPl","createOptionPlaceholder","_props$onCreateOption","onCreateOption","currentValue","preparedStyled","base","state","isFunction","border","length","config","clearIndicatorProps","regularSelect","ReactAsyncSelect","loadOptions","newValue","handleAsyncRequest","onPaste","e","pastedOptions","pastedValue","availableOptions","_splitString","splits","specialHandle","_i","_REGEXPS","split","splitString","rawPastedString","join","toLowerCase","sort","firstEl","secondEl","label","filter","reduce","prevValue","currValue","optionValue","String","condition","search","replace","map","splitValue","find","comparableValue","trim","Boolean","searchSuitableOptions","clipboardData","getData","newInputOptions","acc","curVal","el","push","setTimeout","current","select","blur","ReactSelect","CreatableSelect","formatCreateLabel","newOption","ErrorLabel"],"mappings":"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"}
1
+ {"version":3,"file":"tags-input.cjs.production.min.js","sources":["../src/style.tsx","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport {lineHeight, actionColor, borderRadius, gray80, errorColor, black, white} from '@propellerads/stylevariables';\nimport {StylesConfig} from 'react-select';\nimport {Option} from './types';\n\nconst StyledTagsInput = styled.div`\n position: relative;\n`;\n\nconst TagsInputErrors = styled.div`\n position: absolute;\n display: flex;\n flex-direction: row;\n right: 1px;\n top: 0;\n height: ${lineHeight}px;\n align-items: center;\n`;\n\nconst prepareStyles = (customActionColor: string): StylesConfig<Option, boolean> => {\n const mainColor = customActionColor || actionColor;\n return {\n control: (styles, {isFocused, isDisabled}) => ({\n ...styles,\n borderRadius,\n backgroundColor: isDisabled ? '#ededed' : '#fff',\n minHeight: `${lineHeight}px`,\n borderWidth: 1,\n boxShadow: 'none',\n borderColor: isFocused ? mainColor : gray80,\n }),\n valueContainer: (styles) => ({\n ...styles,\n overflow: 'hidden',\n padding: '2px 2px 4px 2px',\n justifyContent: 'flex-start',\n }),\n placeholder: () => ({\n color: '#c0c0c0',\n fontWeight: 100,\n paddingLeft: '4px',\n position: 'absolute',\n }),\n clearIndicator: () => ({\n color: '#c0c0c0',\n display: 'inline-flex',\n marginRight: '4px',\n }),\n dropdownIndicator: () => ({\n display: 'none',\n }),\n indicatorSeparator: () => ({\n display: 'none',\n }),\n multiValue: (styles, {data}) => ({\n ...styles,\n backgroundColor: data.isException ? errorColor : mainColor,\n color: white,\n borderRadius: `${borderRadius / 2}px`,\n height: '22px',\n display: 'flex',\n alignItems: 'center',\n margin: '2px 0 0 2px',\n }),\n multiValueLabel: (styles) => ({\n ...styles,\n color: white,\n padding: '0 0 0 5px',\n fontSize: '12px',\n borderRadius: 0,\n display: 'inline-flex',\n lineHeight: '1',\n }),\n multiValueRemove: (styles, {data}) => ({\n ...styles,\n padding: 0,\n margin: '0 4px 0 2px',\n backgroundColor: data.isException ? errorColor : mainColor,\n cursor: 'pointer',\n ':hover': {\n backgroundColor: data.isException ? errorColor : mainColor,\n color: 'white',\n },\n }),\n menu: (styles) => ({\n ...styles,\n margin: 0,\n borderRadius: 0,\n zIndex: 10,\n }),\n menuList: (styles) => ({\n ...styles,\n '::-webkit-scrollbar': {\n width: '7px',\n },\n '::-webkit-scrollbar-thumb': {\n borderRadius: '4px',\n backgroundColor: 'rgba(0, 0, 0, .5)',\n boxShadow: '0 0 1px rgba(255, 255, 255, .5)',\n },\n }),\n option: (styles, {isFocused}) => ({\n backgroundColor: isFocused ? mainColor : undefined,\n padding: '5px 10px',\n fontSize: '14px',\n color: isFocused ? white : black,\n }),\n input: (styles) => ({\n ...styles,\n height: '16px',\n }),\n };\n};\n\nexport {prepareStyles, StyledTagsInput, TagsInputErrors};\n","import React, {useRef, useState} from 'react';\nimport ReactSelect, {OnChangeValue, components as reactSelectComponents} from 'react-select';\nimport isFunction from 'lodash.isfunction';\nimport ReactAsyncSelect from 'react-select/async';\nimport ErrorLabel from '@propellerads/error-label';\nimport CreatableSelect from 'react-select/creatable';\nimport {Close, SIZE, COLOR} from '@propellerads/icon';\n\nimport {Option, TagsInputProps} from './types';\nimport {prepareStyles, StyledTagsInput, TagsInputErrors} from './style';\n\n// regexps by priority\nconst REGEXPS = [/(?:\\b|\\B)\\n+\\b/, /(?:\\b|\\B),\\s\\b/, /(?:\\b|\\B),+\\b/];\n\ninterface SplitStringReturnValue {\n splits: string[];\n specialHandle: boolean;\n}\n\nfunction splitString(value: string): SplitStringReturnValue {\n let splits: string[] = [];\n\n let specialHandle = false;\n // eslint-disable-next-line no-restricted-syntax\n for (const regex of REGEXPS) {\n splits = value.split(regex);\n if (splits.length > 1) {\n break;\n }\n }\n\n // special case. Need handle in special way\n if (splits.length === 1) {\n splits = value.split(/\\b\\s+\\b/);\n specialHandle = splits.length > 1;\n }\n\n return {\n splits,\n specialHandle,\n };\n}\n\nfunction searchSuitableOptions(pastedValue, availableOptions, searchableKeys) {\n const {splits, specialHandle} = splitString(pastedValue);\n\n if (specialHandle) {\n let rawPastedString = splits.join(' ').toLowerCase();\n\n return availableOptions\n .sort((firstEl, secondEl) => {\n if (firstEl.label.length > secondEl.label.length) {\n return -1;\n }\n if (firstEl.label.length < secondEl.label.length) {\n return 1;\n }\n\n return 0;\n })\n .filter((option) =>\n searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const position = rawPastedString.search(optionValue);\n const condition = position !== -1;\n if (condition) {\n rawPastedString = rawPastedString.replace(optionValue, '');\n }\n\n return prevValue || condition;\n }, false),\n );\n }\n\n return splits\n .map((splitValue) =>\n availableOptions.find((option) => {\n const comparableValue = splitValue.trim().toLowerCase();\n\n return searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const condition = optionValue === comparableValue;\n\n return prevValue || condition;\n }, false);\n }),\n )\n .filter(Boolean);\n}\n\ninterface ClearIndicatorProps {\n // eslint-disable-next-line @typescript-eslint/ban-types\n getStyles: (clearIndicator: string, props: any) => {};\n innerProps: {\n ref: React.Ref<HTMLDivElement>;\n };\n elementId: string;\n}\n\nconst ClearIndicator = (props: ClearIndicatorProps) => {\n const {\n elementId,\n getStyles,\n innerProps: {ref, ...restInnerProps},\n } = props;\n\n return (\n <div {...restInnerProps} ref={ref} style={getStyles('clearIndicator', props)} id={`${elementId}-clear`}>\n <Close color={COLOR.GRAY_DARK} hoverColor={COLOR.BLACK} size={SIZE.MEDIUM_SMALL} />\n </div>\n );\n};\n\nconst TagsInput = (props: TagsInputProps) => {\n const reactSelectElement = useRef<any>(null);\n const [showMinLenTip, setShowMinLenTip] = useState(false);\n\n const {\n components = {},\n customStyles = {},\n elementId,\n errors = [],\n isAsync = false,\n isErrorLabelVisible = false,\n onChange,\n onInputChange = null,\n filterOption = null,\n options = [],\n promiseOptions = () => Promise.resolve(),\n searchableKeys = ['label'],\n value = [],\n actionColor = '',\n isClearable = true,\n isCreatable = false,\n isDisabled = false,\n isLoading = false,\n isRtl = false,\n isMulti = true,\n isSearchable = true,\n cacheOptions = false,\n placeholder = 'Start typing...',\n noOptionsMessage = () => 'No options...',\n loadingMessage = () => 'Loading...',\n minHeightInput = 36,\n createOptionPlaceholder = 'Create ',\n onCreateOption = () => null,\n } = props;\n\n const currentValue = value;\n\n const baseStyles = prepareStyles(actionColor);\n\n const preparedStyled = {\n ...baseStyles,\n ...customStyles,\n control: (base, state) => {\n const defaultControl = baseStyles.control ? baseStyles.control(base, state) : base;\n\n const customControl =\n customStyles.control && isFunction(customStyles.control) ? customStyles.control(base, state) : {};\n\n return {\n ...defaultControl,\n ...customControl,\n border: errors.length ? '1px solid #ed3030' : defaultControl.border,\n minHeight: minHeightInput,\n };\n },\n };\n\n const config = {\n ...props,\n id: elementId,\n onChange: (newValue: OnChangeValue<Option, boolean>) => {\n let normalizedValue: Option[] = [];\n if (Array.isArray(newValue)) {\n normalizedValue = [...newValue];\n } else if (newValue && typeof newValue === 'object' && 'value' in newValue && 'label' in newValue) {\n normalizedValue = [newValue];\n }\n onChange(normalizedValue);\n },\n onInputChange: undefined,\n filterOption: undefined,\n ...(onInputChange && {onInputChange}),\n ...(filterOption && {filterOption}),\n styles: preparedStyled,\n loadingMessage: showMinLenTip ? () => 'Enter two or more characters' : loadingMessage,\n components: {\n ClearIndicator: (clearIndicatorProps) => <ClearIndicator {...clearIndicatorProps} elementId={elementId} />,\n ...components,\n },\n };\n\n const handleAsyncRequest = (newValue: any) => {\n if (!newValue.length || newValue.length < 2) {\n setShowMinLenTip(true);\n\n return Promise.resolve([]);\n }\n\n if (showMinLenTip) {\n setShowMinLenTip(false);\n }\n\n return promiseOptions(newValue);\n };\n\n const onPaste = (e) => {\n const pasteData = e.clipboardData.getData('text/plain');\n\n const pastedOptions = searchSuitableOptions(pasteData, options, searchableKeys);\n\n const newInputOptions = pastedOptions.reduce((acc, curVal) => {\n if (!acc.find((el) => el.value === curVal.value)) {\n acc.push(curVal);\n }\n\n return acc;\n }, currentValue);\n\n if (pastedOptions.length !== 0) {\n onChange(newInputOptions);\n setTimeout(() => {\n reactSelectElement.current.select.blur();\n }, 0);\n }\n };\n\n const regularSelect = isAsync ? (\n <ReactAsyncSelect {...config} loadOptions={(newValue) => handleAsyncRequest(newValue)} />\n ) : (\n <div onPaste={onPaste}>\n <ReactSelect {...config} ref={reactSelectElement} options={options} />\n </div>\n );\n\n const select = isCreatable ? (\n <CreatableSelect\n formatCreateLabel={(newValue) => `${createOptionPlaceholder}\"${newValue}\"`}\n isLoading={isLoading}\n onCreateOption={(newOption) => onCreateOption(newOption)}\n {...config}\n ref={reactSelectElement}\n options={options}\n />\n ) : (\n regularSelect\n );\n\n return (\n <StyledTagsInput>\n {select}\n {errors && errors.length > 0 && isErrorLabelVisible && (\n <TagsInputErrors>\n <ErrorLabel elementId={elementId} errors={errors} />\n </TagsInputErrors>\n )}\n </StyledTagsInput>\n );\n};\n\nexport {reactSelectComponents as components};\n\nexport default TagsInput;\n"],"names":["StyledTagsInput","styled","div","_templateObject","_taggedTemplateLiteralLoose","TagsInputErrors","_templateObject2","lineHeight","REGEXPS","ClearIndicator","props","elementId","getStyles","_props$innerProps","innerProps","ref","restInnerProps","_objectWithoutPropertiesLoose","_excluded","React","style","id","Close","color","COLOR","GRAY_DARK","hoverColor","BLACK","size","SIZE","MEDIUM_SMALL","mainColor","reactSelectElement","useRef","_useState","useState","showMinLenTip","setShowMinLenTip","_props$components","components","_props$customStyles","customStyles","_props$errors","errors","_props$isAsync","isAsync","_props$isErrorLabelVi","isErrorLabelVisible","onChange","_props$onInputChange","onInputChange","_props$filterOption","filterOption","_props$options","options","_props$promiseOptions","promiseOptions","Promise","resolve","_props$searchableKeys","searchableKeys","_props$value","value","_props$actionColor","actionColor","_props$isClearable","isCreatable","_props$isCreatable","_props$isDisabled","isLoading","_props$isLoading","_props$isRtl","loadingMessage","_props$loadingMessage","_props$minHeightInput","minHeightInput","_props$createOptionPl","createOptionPlaceholder","_props$onCreateOption","onCreateOption","currentValue","baseStyles","control","styles","_ref","_extends","borderRadius","backgroundColor","isDisabled","minHeight","borderWidth","boxShadow","borderColor","isFocused","gray80","valueContainer","overflow","padding","justifyContent","placeholder","fontWeight","paddingLeft","position","clearIndicator","display","marginRight","dropdownIndicator","indicatorSeparator","multiValue","_ref2","data","isException","errorColor","white","height","alignItems","margin","multiValueLabel","fontSize","multiValueRemove","_ref3","cursor",":hover","menu","zIndex","menuList","::-webkit-scrollbar","width","::-webkit-scrollbar-thumb","option","_ref4","undefined","black","input","preparedStyled","base","state","defaultControl","isFunction","border","length","config","newValue","normalizedValue","Array","isArray","concat","clearIndicatorProps","regularSelect","ReactAsyncSelect","loadOptions","handleAsyncRequest","onPaste","e","pastedOptions","pastedValue","availableOptions","_splitString","splits","specialHandle","_i","_REGEXPS","split","splitString","rawPastedString","join","toLowerCase","sort","firstEl","secondEl","label","filter","reduce","prevValue","currValue","optionValue","String","condition","search","replace","map","splitValue","find","comparableValue","trim","Boolean","searchSuitableOptions","clipboardData","getData","newInputOptions","acc","curVal","el","push","setTimeout","current","select","blur","ReactSelect","CreatableSelect","formatCreateLabel","newOption","ErrorLabel"],"mappings":"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"}
@@ -2,12 +2,12 @@ import React, { useRef, useState } from 'react';
2
2
  import ReactSelect from 'react-select';
3
3
  export { components } from 'react-select';
4
4
  import isFunction from 'lodash.isfunction';
5
- import ReactAsyncSelect from 'react-select/lib/Async';
5
+ import ReactAsyncSelect from 'react-select/async';
6
6
  import ErrorLabel from '@propellerads/error-label';
7
- import CreatableSelect from 'react-select/lib/Creatable';
7
+ import CreatableSelect from 'react-select/creatable';
8
8
  import { Close, COLOR, SIZE } from '@propellerads/icon';
9
9
  import styled from 'styled-components';
10
- import { borderRadius, lineHeight, gray80, errorColor, white, black, actionColor } from '@propellerads/stylevariables';
10
+ import { lineHeight, borderRadius, gray80, errorColor, white, black, actionColor } from '@propellerads/stylevariables';
11
11
 
12
12
  function _extends() {
13
13
  return _extends = Object.assign ? Object.assign.bind() : function (n) {
@@ -138,7 +138,7 @@ var prepareStyles = function prepareStyles(customActionColor) {
138
138
  option: function option(styles, _ref4) {
139
139
  var isFocused = _ref4.isFocused;
140
140
  return {
141
- backgroundColor: isFocused ? mainColor : null,
141
+ backgroundColor: isFocused ? mainColor : undefined,
142
142
  padding: '5px 10px',
143
143
  fontSize: '14px',
144
144
  color: isFocused ? white : black
@@ -245,7 +245,7 @@ var TagsInput = function TagsInput(props) {
245
245
  isAsync = _props$isAsync === void 0 ? false : _props$isAsync,
246
246
  _props$isErrorLabelVi = props.isErrorLabelVisible,
247
247
  isErrorLabelVisible = _props$isErrorLabelVi === void 0 ? false : _props$isErrorLabelVi,
248
- onChange = props.onChange,
248
+ _onChange = props.onChange,
249
249
  _props$onInputChange = props.onInputChange,
250
250
  onInputChange = _props$onInputChange === void 0 ? null : _props$onInputChange,
251
251
  _props$filterOption = props.filterOption,
@@ -279,18 +279,30 @@ var TagsInput = function TagsInput(props) {
279
279
  return null;
280
280
  } : _props$onCreateOption;
281
281
  var currentValue = value;
282
- var preparedStyled = _extends({}, prepareStyles(actionColor), customStyles, {
282
+ var baseStyles = prepareStyles(actionColor);
283
+ var preparedStyled = _extends({}, baseStyles, customStyles, {
283
284
  control: function control(base, state) {
284
- var styles = customStyles.control && isFunction(customStyles.control) ? customStyles.control(base, state) : {};
285
- return _extends({}, prepareStyles(actionColor).control(base, state), styles, {
286
- border: errors.length ? '1px solid #ed3030' : prepareStyles(actionColor).control(base, state).border,
285
+ var defaultControl = baseStyles.control ? baseStyles.control(base, state) : base;
286
+ var customControl = customStyles.control && isFunction(customStyles.control) ? customStyles.control(base, state) : {};
287
+ return _extends({}, defaultControl, customControl, {
288
+ border: errors.length ? '1px solid #ed3030' : defaultControl.border,
287
289
  minHeight: minHeightInput
288
290
  });
289
291
  }
290
292
  });
291
293
  var config = _extends({}, props, {
292
294
  id: elementId,
293
- onChange: onChange
295
+ onChange: function onChange(newValue) {
296
+ var normalizedValue = [];
297
+ if (Array.isArray(newValue)) {
298
+ normalizedValue = [].concat(newValue);
299
+ } else if (newValue && typeof newValue === 'object' && 'value' in newValue && 'label' in newValue) {
300
+ normalizedValue = [newValue];
301
+ }
302
+ _onChange(normalizedValue);
303
+ },
304
+ onInputChange: undefined,
305
+ filterOption: undefined
294
306
  }, onInputChange && {
295
307
  onInputChange: onInputChange
296
308
  }, filterOption && {
@@ -311,7 +323,7 @@ var TagsInput = function TagsInput(props) {
311
323
  var handleAsyncRequest = function handleAsyncRequest(newValue) {
312
324
  if (!newValue.length || newValue.length < 2) {
313
325
  setShowMinLenTip(true);
314
- return null;
326
+ return Promise.resolve([]);
315
327
  }
316
328
  if (showMinLenTip) {
317
329
  setShowMinLenTip(false);
@@ -330,7 +342,7 @@ var TagsInput = function TagsInput(props) {
330
342
  return acc;
331
343
  }, currentValue);
332
344
  if (pastedOptions.length !== 0) {
333
- onChange(newInputOptions);
345
+ _onChange(newInputOptions);
334
346
  setTimeout(function () {
335
347
  reactSelectElement.current.select.blur();
336
348
  }, 0);
@@ -1 +1 @@
1
- {"version":3,"file":"tags-input.esm.js","sources":["../src/style.tsx","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport {lineHeight, actionColor, borderRadius, gray80, errorColor, black, white} from '@propellerads/stylevariables';\n\nconst StyledTagsInput = styled.div`\n position: relative;\n`;\n\nconst TagsInputErrors = styled.div`\n position: absolute;\n display: flex;\n flex-direction: row;\n right: 1px;\n top: 0;\n height: ${lineHeight}px;\n align-items: center;\n`;\n\nconst prepareStyles = (customActionColor: string) => {\n const mainColor = customActionColor || actionColor;\n return {\n control: (styles, {isFocused, isDisabled}) => ({\n ...styles,\n borderRadius,\n backgroundColor: isDisabled ? '#ededed' : '#fff',\n minHeight: `${lineHeight}px`,\n borderWidth: 1,\n boxShadow: 'none',\n borderColor: isFocused ? mainColor : gray80,\n }),\n valueContainer: (styles) => ({\n ...styles,\n overflow: 'hidden',\n padding: '2px 2px 4px 2px',\n justifyContent: 'flex-start',\n }),\n placeholder: () => ({\n color: '#c0c0c0',\n fontWeight: 100,\n paddingLeft: '4px',\n position: 'absolute',\n }),\n clearIndicator: () => ({\n color: '#c0c0c0',\n display: 'inline-flex',\n marginRight: '4px',\n }),\n dropdownIndicator: () => ({\n display: 'none',\n }),\n indicatorSeparator: () => ({\n display: 'none',\n }),\n multiValue: (styles, {data}) => ({\n ...styles,\n backgroundColor: data.isException ? errorColor : mainColor,\n color: white,\n borderRadius: `${borderRadius / 2}px`,\n height: '22px',\n display: 'flex',\n alignItems: 'center',\n margin: '2px 0 0 2px',\n }),\n multiValueLabel: (styles) => ({\n ...styles,\n color: white,\n padding: '0 0 0 5px',\n fontSize: '12px',\n borderRadius: 0,\n display: 'inline-flex',\n lineHeight: '1',\n }),\n multiValueRemove: (styles, {data}) => ({\n ...styles,\n padding: 0,\n margin: '0 4px 0 2px',\n backgroundColor: data.isException ? errorColor : mainColor,\n cursor: 'pointer',\n ':hover': {\n backgroundColor: data.isException ? errorColor : mainColor,\n color: 'white',\n },\n }),\n menu: (styles) => ({\n ...styles,\n margin: 0,\n borderRadius: 0,\n zIndex: 10,\n }),\n menuList: (styles) => ({\n ...styles,\n '::-webkit-scrollbar': {\n width: '7px',\n },\n '::-webkit-scrollbar-thumb': {\n borderRadius: '4px',\n backgroundColor: 'rgba(0, 0, 0, .5)',\n boxShadow: '0 0 1px rgba(255, 255, 255, .5)',\n },\n }),\n option: (styles, {isFocused}) => ({\n backgroundColor: isFocused ? mainColor : null,\n padding: '5px 10px',\n fontSize: '14px',\n color: isFocused ? white : black,\n }),\n input: (styles) => ({\n ...styles,\n height: '16px',\n }),\n };\n};\n\nexport {prepareStyles, StyledTagsInput, TagsInputErrors};\n","import React, {useRef, useState} from 'react';\nimport ReactSelect, {components as reactSelectComponents} from 'react-select';\nimport isFunction from 'lodash.isfunction';\nimport ReactAsyncSelect from 'react-select/lib/Async';\nimport ErrorLabel from '@propellerads/error-label';\nimport CreatableSelect from 'react-select/lib/Creatable';\nimport {Close, SIZE, COLOR} from '@propellerads/icon';\n\nimport {TagsInputProps} from './types';\nimport {prepareStyles, StyledTagsInput, TagsInputErrors} from './style';\n\n// regexps by priority\nconst REGEXPS = [/(?:\\b|\\B)\\n+\\b/, /(?:\\b|\\B),\\s\\b/, /(?:\\b|\\B),+\\b/];\n\ninterface SplitStringReturnValue {\n splits: string[];\n specialHandle: boolean;\n}\n\nfunction splitString(value: string): SplitStringReturnValue {\n let splits: string[] = [];\n\n let specialHandle = false;\n // eslint-disable-next-line no-restricted-syntax\n for (const regex of REGEXPS) {\n splits = value.split(regex);\n if (splits.length > 1) {\n break;\n }\n }\n\n // special case. Need handle in special way\n if (splits.length === 1) {\n splits = value.split(/\\b\\s+\\b/);\n specialHandle = splits.length > 1;\n }\n\n return {\n splits,\n specialHandle,\n };\n}\n\nfunction searchSuitableOptions(pastedValue, availableOptions, searchableKeys) {\n const {splits, specialHandle} = splitString(pastedValue);\n\n if (specialHandle) {\n let rawPastedString = splits.join(' ').toLowerCase();\n\n return availableOptions\n .sort((firstEl, secondEl) => {\n if (firstEl.label.length > secondEl.label.length) {\n return -1;\n }\n if (firstEl.label.length < secondEl.label.length) {\n return 1;\n }\n\n return 0;\n })\n .filter((option) =>\n searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const position = rawPastedString.search(optionValue);\n const condition = position !== -1;\n if (condition) {\n rawPastedString = rawPastedString.replace(optionValue, '');\n }\n\n return prevValue || condition;\n }, false),\n );\n }\n\n return splits\n .map((splitValue) =>\n availableOptions.find((option) => {\n const comparableValue = splitValue.trim().toLowerCase();\n\n return searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const condition = optionValue === comparableValue;\n\n return prevValue || condition;\n }, false);\n }),\n )\n .filter(Boolean);\n}\n\ninterface ClearIndicatorProps {\n // eslint-disable-next-line @typescript-eslint/ban-types\n getStyles: (clearIndicator: string, props: any) => {};\n innerProps: {\n ref: React.Ref<HTMLDivElement>;\n };\n elementId: string;\n}\n\nconst ClearIndicator = (props: ClearIndicatorProps) => {\n const {\n elementId,\n getStyles,\n innerProps: {ref, ...restInnerProps},\n } = props;\n\n return (\n <div {...restInnerProps} ref={ref} style={getStyles('clearIndicator', props)} id={`${elementId}-clear`}>\n <Close color={COLOR.GRAY_DARK} hoverColor={COLOR.BLACK} size={SIZE.MEDIUM_SMALL} />\n </div>\n );\n};\n\nconst TagsInput = (props: TagsInputProps) => {\n const reactSelectElement = useRef<any>(null);\n const [showMinLenTip, setShowMinLenTip] = useState(false);\n\n const {\n components = {},\n customStyles = {},\n elementId,\n errors = [],\n isAsync = false,\n isErrorLabelVisible = false,\n onChange,\n onInputChange = null,\n filterOption = null,\n options = [],\n promiseOptions = () => Promise.resolve(),\n searchableKeys = ['label'],\n value = [],\n actionColor = '',\n isClearable = true,\n isCreatable = false,\n isDisabled = false,\n isLoading = false,\n isRtl = false,\n isMulti = true,\n isSearchable = true,\n cacheOptions = false,\n placeholder = 'Start typing...',\n noOptionsMessage = () => 'No options...',\n loadingMessage = () => 'Loading...',\n minHeightInput = 36,\n createOptionPlaceholder = 'Create ',\n onCreateOption = () => null,\n } = props;\n\n const currentValue = value;\n\n const preparedStyled = {\n ...prepareStyles(actionColor),\n ...customStyles,\n control: (base, state) => {\n const styles = customStyles.control && isFunction(customStyles.control) ? customStyles.control(base, state) : {};\n\n return {\n ...prepareStyles(actionColor).control(base, state),\n ...styles,\n border: errors.length ? '1px solid #ed3030' : prepareStyles(actionColor).control(base, state).border,\n minHeight: minHeightInput,\n };\n },\n };\n\n const config = {\n ...props,\n id: elementId,\n onChange,\n ...(onInputChange && {onInputChange}),\n ...(filterOption && {filterOption}),\n styles: preparedStyled,\n loadingMessage: showMinLenTip ? () => 'Enter two or more characters' : loadingMessage,\n components: {\n ClearIndicator: (clearIndicatorProps) => <ClearIndicator {...clearIndicatorProps} elementId={elementId} />,\n ...components,\n },\n };\n\n const handleAsyncRequest = (newValue: any) => {\n if (!newValue.length || newValue.length < 2) {\n setShowMinLenTip(true);\n\n return null;\n }\n\n if (showMinLenTip) {\n setShowMinLenTip(false);\n }\n\n return promiseOptions(newValue);\n };\n\n const onPaste = (e) => {\n const pasteData = e.clipboardData.getData('text/plain');\n\n const pastedOptions = searchSuitableOptions(pasteData, options, searchableKeys);\n\n const newInputOptions = pastedOptions.reduce((acc, curVal) => {\n if (!acc.find((el) => el.value === curVal.value)) {\n acc.push(curVal);\n }\n\n return acc;\n }, currentValue);\n\n if (pastedOptions.length !== 0) {\n onChange(newInputOptions);\n setTimeout(() => {\n reactSelectElement.current.select.blur();\n }, 0);\n }\n };\n\n const regularSelect = isAsync ? (\n <ReactAsyncSelect {...config} loadOptions={(newValue) => handleAsyncRequest(newValue)} />\n ) : (\n <div onPaste={onPaste}>\n <ReactSelect {...config} ref={reactSelectElement} options={options} />\n </div>\n );\n\n const select = isCreatable ? (\n <CreatableSelect\n formatCreateLabel={(newValue) => `${createOptionPlaceholder}\"${newValue}\"`}\n isLoading={isLoading}\n onCreateOption={(newOption) => onCreateOption(newOption)}\n {...config}\n ref={reactSelectElement}\n options={options}\n />\n ) : (\n regularSelect\n );\n\n return (\n <StyledTagsInput>\n {select}\n {errors && errors.length > 0 && isErrorLabelVisible && (\n <TagsInputErrors>\n <ErrorLabel elementId={elementId} errors={errors} />\n </TagsInputErrors>\n )}\n </StyledTagsInput>\n );\n};\n\nexport {reactSelectComponents as components};\n\nexport default TagsInput;\n"],"names":["StyledTagsInput","styled","div","_templateObject","_taggedTemplateLiteralLoose","TagsInputErrors","_templateObject2","lineHeight","prepareStyles","customActionColor","mainColor","actionColor","control","styles","_ref","isFocused","isDisabled","_extends","borderRadius","backgroundColor","minHeight","borderWidth","boxShadow","borderColor","gray80","valueContainer","overflow","padding","justifyContent","placeholder","color","fontWeight","paddingLeft","position","clearIndicator","display","marginRight","dropdownIndicator","indicatorSeparator","multiValue","_ref2","data","isException","errorColor","white","height","alignItems","margin","multiValueLabel","fontSize","multiValueRemove","_ref3","cursor","menu","zIndex","menuList","width","option","_ref4","black","input","REGEXPS","splitString","value","splits","specialHandle","_i","_REGEXPS","length","regex","split","searchSuitableOptions","pastedValue","availableOptions","searchableKeys","_splitString","rawPastedString","join","toLowerCase","sort","firstEl","secondEl","label","filter","reduce","prevValue","currValue","optionValue","String","search","condition","replace","map","splitValue","find","comparableValue","trim","Boolean","ClearIndicator","props","elementId","getStyles","_props$innerProps","innerProps","ref","restInnerProps","_objectWithoutPropertiesLoose","_excluded","React","style","id","Close","COLOR","GRAY_DARK","hoverColor","BLACK","size","SIZE","MEDIUM_SMALL","TagsInput","reactSelectElement","useRef","_useState","useState","showMinLenTip","setShowMinLenTip","_props$components","components","_props$customStyles","customStyles","_props$errors","errors","_props$isAsync","isAsync","_props$isErrorLabelVi","isErrorLabelVisible","onChange","_props$onInputChange","onInputChange","_props$filterOption","filterOption","_props$options","options","_props$promiseOptions","promiseOptions","Promise","resolve","_props$searchableKeys","_props$value","_props$actionColor","_props$isClearable","_props$isCreatable","isCreatable","_props$isDisabled","_props$isLoading","isLoading","_props$isRtl","_props$loadingMessage","loadingMessage","_props$minHeightInput","minHeightInput","_props$createOptionPl","createOptionPlaceholder","_props$onCreateOption","onCreateOption","currentValue","preparedStyled","base","state","isFunction","border","config","clearIndicatorProps","handleAsyncRequest","newValue","onPaste","e","pasteData","clipboardData","getData","pastedOptions","newInputOptions","acc","curVal","el","push","setTimeout","current","select","blur","regularSelect","ReactAsyncSelect","loadOptions","ReactSelect","CreatableSelect","formatCreateLabel","newOption","ErrorLabel"],"mappings":"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"}
1
+ {"version":3,"file":"tags-input.esm.js","sources":["../src/style.tsx","../src/index.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport {lineHeight, actionColor, borderRadius, gray80, errorColor, black, white} from '@propellerads/stylevariables';\nimport {StylesConfig} from 'react-select';\nimport {Option} from './types';\n\nconst StyledTagsInput = styled.div`\n position: relative;\n`;\n\nconst TagsInputErrors = styled.div`\n position: absolute;\n display: flex;\n flex-direction: row;\n right: 1px;\n top: 0;\n height: ${lineHeight}px;\n align-items: center;\n`;\n\nconst prepareStyles = (customActionColor: string): StylesConfig<Option, boolean> => {\n const mainColor = customActionColor || actionColor;\n return {\n control: (styles, {isFocused, isDisabled}) => ({\n ...styles,\n borderRadius,\n backgroundColor: isDisabled ? '#ededed' : '#fff',\n minHeight: `${lineHeight}px`,\n borderWidth: 1,\n boxShadow: 'none',\n borderColor: isFocused ? mainColor : gray80,\n }),\n valueContainer: (styles) => ({\n ...styles,\n overflow: 'hidden',\n padding: '2px 2px 4px 2px',\n justifyContent: 'flex-start',\n }),\n placeholder: () => ({\n color: '#c0c0c0',\n fontWeight: 100,\n paddingLeft: '4px',\n position: 'absolute',\n }),\n clearIndicator: () => ({\n color: '#c0c0c0',\n display: 'inline-flex',\n marginRight: '4px',\n }),\n dropdownIndicator: () => ({\n display: 'none',\n }),\n indicatorSeparator: () => ({\n display: 'none',\n }),\n multiValue: (styles, {data}) => ({\n ...styles,\n backgroundColor: data.isException ? errorColor : mainColor,\n color: white,\n borderRadius: `${borderRadius / 2}px`,\n height: '22px',\n display: 'flex',\n alignItems: 'center',\n margin: '2px 0 0 2px',\n }),\n multiValueLabel: (styles) => ({\n ...styles,\n color: white,\n padding: '0 0 0 5px',\n fontSize: '12px',\n borderRadius: 0,\n display: 'inline-flex',\n lineHeight: '1',\n }),\n multiValueRemove: (styles, {data}) => ({\n ...styles,\n padding: 0,\n margin: '0 4px 0 2px',\n backgroundColor: data.isException ? errorColor : mainColor,\n cursor: 'pointer',\n ':hover': {\n backgroundColor: data.isException ? errorColor : mainColor,\n color: 'white',\n },\n }),\n menu: (styles) => ({\n ...styles,\n margin: 0,\n borderRadius: 0,\n zIndex: 10,\n }),\n menuList: (styles) => ({\n ...styles,\n '::-webkit-scrollbar': {\n width: '7px',\n },\n '::-webkit-scrollbar-thumb': {\n borderRadius: '4px',\n backgroundColor: 'rgba(0, 0, 0, .5)',\n boxShadow: '0 0 1px rgba(255, 255, 255, .5)',\n },\n }),\n option: (styles, {isFocused}) => ({\n backgroundColor: isFocused ? mainColor : undefined,\n padding: '5px 10px',\n fontSize: '14px',\n color: isFocused ? white : black,\n }),\n input: (styles) => ({\n ...styles,\n height: '16px',\n }),\n };\n};\n\nexport {prepareStyles, StyledTagsInput, TagsInputErrors};\n","import React, {useRef, useState} from 'react';\nimport ReactSelect, {OnChangeValue, components as reactSelectComponents} from 'react-select';\nimport isFunction from 'lodash.isfunction';\nimport ReactAsyncSelect from 'react-select/async';\nimport ErrorLabel from '@propellerads/error-label';\nimport CreatableSelect from 'react-select/creatable';\nimport {Close, SIZE, COLOR} from '@propellerads/icon';\n\nimport {Option, TagsInputProps} from './types';\nimport {prepareStyles, StyledTagsInput, TagsInputErrors} from './style';\n\n// regexps by priority\nconst REGEXPS = [/(?:\\b|\\B)\\n+\\b/, /(?:\\b|\\B),\\s\\b/, /(?:\\b|\\B),+\\b/];\n\ninterface SplitStringReturnValue {\n splits: string[];\n specialHandle: boolean;\n}\n\nfunction splitString(value: string): SplitStringReturnValue {\n let splits: string[] = [];\n\n let specialHandle = false;\n // eslint-disable-next-line no-restricted-syntax\n for (const regex of REGEXPS) {\n splits = value.split(regex);\n if (splits.length > 1) {\n break;\n }\n }\n\n // special case. Need handle in special way\n if (splits.length === 1) {\n splits = value.split(/\\b\\s+\\b/);\n specialHandle = splits.length > 1;\n }\n\n return {\n splits,\n specialHandle,\n };\n}\n\nfunction searchSuitableOptions(pastedValue, availableOptions, searchableKeys) {\n const {splits, specialHandle} = splitString(pastedValue);\n\n if (specialHandle) {\n let rawPastedString = splits.join(' ').toLowerCase();\n\n return availableOptions\n .sort((firstEl, secondEl) => {\n if (firstEl.label.length > secondEl.label.length) {\n return -1;\n }\n if (firstEl.label.length < secondEl.label.length) {\n return 1;\n }\n\n return 0;\n })\n .filter((option) =>\n searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const position = rawPastedString.search(optionValue);\n const condition = position !== -1;\n if (condition) {\n rawPastedString = rawPastedString.replace(optionValue, '');\n }\n\n return prevValue || condition;\n }, false),\n );\n }\n\n return splits\n .map((splitValue) =>\n availableOptions.find((option) => {\n const comparableValue = splitValue.trim().toLowerCase();\n\n return searchableKeys.reduce((prevValue, currValue) => {\n const optionValue = String(option[currValue]).toLowerCase();\n const condition = optionValue === comparableValue;\n\n return prevValue || condition;\n }, false);\n }),\n )\n .filter(Boolean);\n}\n\ninterface ClearIndicatorProps {\n // eslint-disable-next-line @typescript-eslint/ban-types\n getStyles: (clearIndicator: string, props: any) => {};\n innerProps: {\n ref: React.Ref<HTMLDivElement>;\n };\n elementId: string;\n}\n\nconst ClearIndicator = (props: ClearIndicatorProps) => {\n const {\n elementId,\n getStyles,\n innerProps: {ref, ...restInnerProps},\n } = props;\n\n return (\n <div {...restInnerProps} ref={ref} style={getStyles('clearIndicator', props)} id={`${elementId}-clear`}>\n <Close color={COLOR.GRAY_DARK} hoverColor={COLOR.BLACK} size={SIZE.MEDIUM_SMALL} />\n </div>\n );\n};\n\nconst TagsInput = (props: TagsInputProps) => {\n const reactSelectElement = useRef<any>(null);\n const [showMinLenTip, setShowMinLenTip] = useState(false);\n\n const {\n components = {},\n customStyles = {},\n elementId,\n errors = [],\n isAsync = false,\n isErrorLabelVisible = false,\n onChange,\n onInputChange = null,\n filterOption = null,\n options = [],\n promiseOptions = () => Promise.resolve(),\n searchableKeys = ['label'],\n value = [],\n actionColor = '',\n isClearable = true,\n isCreatable = false,\n isDisabled = false,\n isLoading = false,\n isRtl = false,\n isMulti = true,\n isSearchable = true,\n cacheOptions = false,\n placeholder = 'Start typing...',\n noOptionsMessage = () => 'No options...',\n loadingMessage = () => 'Loading...',\n minHeightInput = 36,\n createOptionPlaceholder = 'Create ',\n onCreateOption = () => null,\n } = props;\n\n const currentValue = value;\n\n const baseStyles = prepareStyles(actionColor);\n\n const preparedStyled = {\n ...baseStyles,\n ...customStyles,\n control: (base, state) => {\n const defaultControl = baseStyles.control ? baseStyles.control(base, state) : base;\n\n const customControl =\n customStyles.control && isFunction(customStyles.control) ? customStyles.control(base, state) : {};\n\n return {\n ...defaultControl,\n ...customControl,\n border: errors.length ? '1px solid #ed3030' : defaultControl.border,\n minHeight: minHeightInput,\n };\n },\n };\n\n const config = {\n ...props,\n id: elementId,\n onChange: (newValue: OnChangeValue<Option, boolean>) => {\n let normalizedValue: Option[] = [];\n if (Array.isArray(newValue)) {\n normalizedValue = [...newValue];\n } else if (newValue && typeof newValue === 'object' && 'value' in newValue && 'label' in newValue) {\n normalizedValue = [newValue];\n }\n onChange(normalizedValue);\n },\n onInputChange: undefined,\n filterOption: undefined,\n ...(onInputChange && {onInputChange}),\n ...(filterOption && {filterOption}),\n styles: preparedStyled,\n loadingMessage: showMinLenTip ? () => 'Enter two or more characters' : loadingMessage,\n components: {\n ClearIndicator: (clearIndicatorProps) => <ClearIndicator {...clearIndicatorProps} elementId={elementId} />,\n ...components,\n },\n };\n\n const handleAsyncRequest = (newValue: any) => {\n if (!newValue.length || newValue.length < 2) {\n setShowMinLenTip(true);\n\n return Promise.resolve([]);\n }\n\n if (showMinLenTip) {\n setShowMinLenTip(false);\n }\n\n return promiseOptions(newValue);\n };\n\n const onPaste = (e) => {\n const pasteData = e.clipboardData.getData('text/plain');\n\n const pastedOptions = searchSuitableOptions(pasteData, options, searchableKeys);\n\n const newInputOptions = pastedOptions.reduce((acc, curVal) => {\n if (!acc.find((el) => el.value === curVal.value)) {\n acc.push(curVal);\n }\n\n return acc;\n }, currentValue);\n\n if (pastedOptions.length !== 0) {\n onChange(newInputOptions);\n setTimeout(() => {\n reactSelectElement.current.select.blur();\n }, 0);\n }\n };\n\n const regularSelect = isAsync ? (\n <ReactAsyncSelect {...config} loadOptions={(newValue) => handleAsyncRequest(newValue)} />\n ) : (\n <div onPaste={onPaste}>\n <ReactSelect {...config} ref={reactSelectElement} options={options} />\n </div>\n );\n\n const select = isCreatable ? (\n <CreatableSelect\n formatCreateLabel={(newValue) => `${createOptionPlaceholder}\"${newValue}\"`}\n isLoading={isLoading}\n onCreateOption={(newOption) => onCreateOption(newOption)}\n {...config}\n ref={reactSelectElement}\n options={options}\n />\n ) : (\n regularSelect\n );\n\n return (\n <StyledTagsInput>\n {select}\n {errors && errors.length > 0 && isErrorLabelVisible && (\n <TagsInputErrors>\n <ErrorLabel elementId={elementId} errors={errors} />\n </TagsInputErrors>\n )}\n </StyledTagsInput>\n );\n};\n\nexport {reactSelectComponents as components};\n\nexport default TagsInput;\n"],"names":["StyledTagsInput","styled","div","_templateObject","_taggedTemplateLiteralLoose","TagsInputErrors","_templateObject2","lineHeight","prepareStyles","customActionColor","mainColor","actionColor","control","styles","_ref","isFocused","isDisabled","_extends","borderRadius","backgroundColor","minHeight","borderWidth","boxShadow","borderColor","gray80","valueContainer","overflow","padding","justifyContent","placeholder","color","fontWeight","paddingLeft","position","clearIndicator","display","marginRight","dropdownIndicator","indicatorSeparator","multiValue","_ref2","data","isException","errorColor","white","height","alignItems","margin","multiValueLabel","fontSize","multiValueRemove","_ref3","cursor","menu","zIndex","menuList","width","option","_ref4","undefined","black","input","REGEXPS","splitString","value","splits","specialHandle","_i","_REGEXPS","length","regex","split","searchSuitableOptions","pastedValue","availableOptions","searchableKeys","_splitString","rawPastedString","join","toLowerCase","sort","firstEl","secondEl","label","filter","reduce","prevValue","currValue","optionValue","String","search","condition","replace","map","splitValue","find","comparableValue","trim","Boolean","ClearIndicator","props","elementId","getStyles","_props$innerProps","innerProps","ref","restInnerProps","_objectWithoutPropertiesLoose","_excluded","React","style","id","Close","COLOR","GRAY_DARK","hoverColor","BLACK","size","SIZE","MEDIUM_SMALL","TagsInput","reactSelectElement","useRef","_useState","useState","showMinLenTip","setShowMinLenTip","_props$components","components","_props$customStyles","customStyles","_props$errors","errors","_props$isAsync","isAsync","_props$isErrorLabelVi","isErrorLabelVisible","onChange","_props$onInputChange","onInputChange","_props$filterOption","filterOption","_props$options","options","_props$promiseOptions","promiseOptions","Promise","resolve","_props$searchableKeys","_props$value","_props$actionColor","_props$isClearable","_props$isCreatable","isCreatable","_props$isDisabled","_props$isLoading","isLoading","_props$isRtl","_props$loadingMessage","loadingMessage","_props$minHeightInput","minHeightInput","_props$createOptionPl","createOptionPlaceholder","_props$onCreateOption","onCreateOption","currentValue","baseStyles","preparedStyled","base","state","defaultControl","customControl","isFunction","border","config","newValue","normalizedValue","Array","isArray","concat","clearIndicatorProps","handleAsyncRequest","onPaste","e","pasteData","clipboardData","getData","pastedOptions","newInputOptions","acc","curVal","el","push","setTimeout","current","select","blur","regularSelect","ReactAsyncSelect","loadOptions","ReactSelect","CreatableSelect","formatCreateLabel","newOption","ErrorLabel"],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -3,9 +3,10 @@ import { components as reactSelectComponents } from 'react-select';
3
3
  export declare type Option = {
4
4
  value: number | string;
5
5
  label: string;
6
+ isException?: boolean;
6
7
  };
7
8
  export interface TagsInputProps {
8
- components?: reactSelectComponents;
9
+ components?: typeof reactSelectComponents;
9
10
  customStyles?: {
10
11
  control?: (value?: any, value2?: any) => void;
11
12
  };
package/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "@propellerads/tags-input",
3
- "version": "5.0.1",
3
+ "version": "6.0.0",
4
4
  "main": "dist/index.js",
5
5
  "repository": "https://github.com/propellerads/ui-components",
6
6
  "author": "i.pasyuk@propellerads.net",
7
7
  "license": "MIT",
8
8
  "private": false,
9
9
  "dependencies": {
10
- "@propellerads/error-label": "^4.0.1",
10
+ "@propellerads/error-label": "^5.0.0",
11
11
  "@propellerads/icon": "^6.0.2",
12
- "@propellerads/stylevariables": "^2.0.1",
12
+ "@propellerads/stylevariables": "^2.0.2",
13
13
  "lodash.isfunction": "3.0.9",
14
- "react-select": "2.4.3"
14
+ "react-select": "5.10.2"
15
15
  },
16
16
  "typings": "dist/index.d.ts",
17
17
  "files": [