@dspworkplace/ui 2.1.3 → 2.1.5

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/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/Theme.js","../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js","../src/Form/index.js","../node_modules/@babel/runtime/helpers/extends.js","../node_modules/@babel/runtime/helpers/defineProperty.js","../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/nonIterableRest.js","../node_modules/@babel/runtime/helpers/slicedToArray.js","../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/objectWithoutProperties.js","../src/Common/input.js","../src/Input/mask.js","../src/Input/index.js","../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/iterableToArray.js","../node_modules/@babel/runtime/helpers/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/toConsumableArray.js","../src/Icons/index.js","../src/Common/tooltip.js","../src/Common/MergeRefs.js","../src/Texts/index.js","../src/Input/select.js","../src/Spacer/index.js","../src/Input/boxes.js","../src/Input/password.js","../src/Input/textarea.js","../src/Input/tag.js","../src/Common/ColorHelper.js","../src/Input/color.js","../node_modules/@babel/runtime/node_modules/regenerator-runtime/runtime.js","../node_modules/@babel/runtime/regenerator/index.js","../node_modules/@babel/runtime/helpers/asyncToGenerator.js","../src/Buttons/index.js","../src/Input/uploader.js","../src/Toggle/index.js","../src/Input/time.js","../src/Buttons/dropdown.js","../src/Buttons/group.js","../src/Buttons/Icons.js","../src/Alerts/index.js"],"sourcesContent":["const defaultRadius = '4px'\n\nconst colors = {\n primary: '#F7931E',\n secondary: '#0071BC',\n action: '#9DDDF4',\n neutrals: {\n black: '#000000',\n gray: '#333333',\n medium: '#707070',\n silver: '#CCCCCC',\n white: '#FFFFFF'\n },\n warnings: {\n border: '#e7a73b',\n text: '#9c6505',\n shadow: '#FAE0B5',\n bg: '#FEF8F0'\n },\n success: {\n border: '#00BDA5',\n text: '#007d6c',\n shadow: '#7FDED2',\n bg: '#E5F8F6'\n },\n error: {\n border: '#F2545B',\n text: '#bd4248',\n shadow: '#F8A9AD',\n bg: '#FDEDEE'\n },\n info: {\n border: '#7C98B6',\n text: '#11598b',\n shadow: '#CBD6E2',\n bg: '#EAF0F6'\n },\n extra: {\n blueishWhite: '#fafbfc',\n whiteSmoke: '#F5F5F5',\n gray93: '#FAFAFA'\n }\n}\n\nconst font = {\n big: {size: '20px', lineHeight: '20px'},\n medium: {size: '14px', lineHeight: '16px'},\n small: {size: '12px', lineHeight: '16px'},\n extraSmall: {size: '10px', lineHeight: '12px'},\n tiny: {size: '8px', lineHeight: '12px'},\n main: '\"Huninn\", sans-serif',\n body: \"-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif\"\n}\n\nconst form = {\n input: {\n radius: defaultRadius,\n padding: '12px 8px'\n },\n button: {\n primary: {bg: colors.primary, hover: '#C46B04 '},\n secondary: {bg: colors.secondary, hover: '#00538A'}\n\n }\n}\n\nconst theme = {colors, form, font, defaultRadius}\n\nexport default theme\n","function _taggedTemplateLiteral(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n\n return Object.freeze(Object.defineProperties(strings, {\n raw: {\n value: Object.freeze(raw)\n }\n }));\n}\n\nmodule.exports = _taggedTemplateLiteral;","import React from 'react';\nimport styled from 'styled-components';\n\nconst Form = styled.form`\n display:flex;\n flex-wrap:wrap;\n flex:1;\n justifyContent:center;\n width:${props => props.width ? props.width : '100%'}\n \n \n >.formAligner {\n margin:0 10px 20px 10px;\n } \n \n`;\n\nexport default Form;\n","function _extends() {\n module.exports = _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nmodule.exports = _extends;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles;","function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit;","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray;","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest;","var arrayWithHoles = require(\"./arrayWithHoles\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableRest = require(\"./nonIterableRest\");\n\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutPropertiesLoose;","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose\");\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutProperties;","import React from 'react'\nimport styled from 'styled-components'\nimport Theme from '../Theme'\n\nconst handleSize = sizeType => {\n switch (sizeType) {\n case 'extraSmall':\n return '80px'\n case 'small':\n return '140px'\n case 'big':\n return '460px'\n default:\n return '300px'\n }\n}\n\nconst Frag = styled.div`\n display:inline-block;\n vertical-align: top;\n`\n\nconst Label = styled.label`\n font-size:${Theme.font.medium.size};\n line-height: ${Theme.font.medium.lineHeight};\n font-weight:normal;\n font-family:\"Huninn\", sans-serif;\n display:block;\n padding-bottom:4px;\n color: ${Theme.colors.neutrals.medium};\n\n >.requiredField {\n color:${Theme.colors.error.text};\n }\n\n`\n\nconst borderDefault = `\n border-width:1px;\n border-style:solid;\n`\nconst InputBase = styled.input`\n background:${Theme.colors.neutrals.white};\n border-color:${Theme.colors.neutrals.silver};\n border-width:1px;\n border-style:solid;\n border-radius:${Theme.form.input.radius};\n font-size:${Theme.font.small.size};\n line-height:${Theme.font.small.lineHeight};\n height:40px;\n padding:${Theme.form.input.padding};\n color:${Theme.colors.neutrals.gray};\n width:${({size}) => handleSize(size)};\n\n &:disabled {\n background: ${Theme.colors.extra.whiteSmoke};\n ${borderDefault};\n border-color: ${Theme.colors.neutrals.silver};\n color: ${Theme.colors.neutrals.medium};\n }\n\n &:disabled::placeholder {\n color:#eee;\n }\n\n &:hover {\n ${borderDefault} ;\n }\n\n &:active {\n ${borderDefault};\n }\n\n &:focus {\n ${borderDefault}\n box-shadow:0px 0px 6px ${Theme.colors.action}\n border-color:${Theme.colors.secondary}\n }\n\n &::placeholder {\n color:${Theme.colors.neutrals.silver};\n font-size:${Theme.font.small};\n font-family:initial;\n }\n\n`\n\nconst SpanHelp = styled.span`\n font-size:${Theme.font.small.size};\n line-height: ${Theme.font.small.lineHeight};\n font-weight:normal;\n font-family: ${Theme.font.main};\n display:block;\n color: ${Theme.colors.info.text};\n margin-top:4px;\n`\n\nconst SpanError = styled(SpanHelp)`\n color:${Theme.colors.error.text}\n`\n\nconst RequiredText = () => <span className='requiredField'>*</span>\n\nconst SelectUi = styled.div`\n width:${({size}) => handleSize(size)};\n height:40px;\n background:white;\n border-radius:${Theme.defaultRadius};\n border:1px solid ${Theme.colors.neutrals.silver};\n cursor:pointer;\n position:relative;\n box-sizing:border-box;\n padding:12px 8px;\n display:flex;\n align-items:center;\n justify-content:space-between;\n\n &.open {\n border-color:${Theme.colors.secondary};\n box-shadow:0 0 6px ${Theme.colors.action};\n }\n\n &.error {\n border-color:${Theme.colors.error.border};\n }\n\n &.error.open {\n border-color:${Theme.colors.error.border};\n box-shadow:0 0 6px ${Theme.colors.error.shadow};\n }\n\n &.valid {\n border-color:${Theme.colors.success.border};\n }\n\n &.valid.open {\n border-color:${Theme.colors.success.border};\n box-shadow:0 0 6px ${Theme.colors.success.shadow};\n }\n`\n\nconst Value = styled.span`\n color:${props => props.option ? '#707070' : Theme.colors.neutrals.gray};\n font-size:14px;\n white-space: nowrap;\n overflow:hidden;\n ${props => props.option && `\n display:inline-block;\n flex:1;\n `}\n\n >span {\n color:#707070;\n }\n`\n\nconst Options = styled.ul`\n padding:0;\n margin:4px 0 0 0;\n background:white;\n border:1px solid ${Theme.colors.neutrals.silver};\n box-shadow:0 0 6px ${Theme.colors.neutrals.silver};\n border-radius:${Theme.defaultRadius};\n list-style:none;\n width:auto;\n display:inline-block;\n position: absolute;\n top: 107%;\n left: -1px;\n z-index:10;\n\n ${props => props.isChild && `\n position:absolute;\n left:100%;\n margin-left:6px;\n top:-4px;\n\n &::before {\n content: \" \";\n height: 100%;\n width: 6px;\n background: transparent;\n display: block;\n position: absolute;\n left: -7px;\n }\n `}\n\n\n li {\n font-size:${Theme.font.small.size};\n color:#707070;\n height:32px;\n cursor:pointer;\n padding:0px 4px 0 8px;\n position:relative;\n display:flex;\n justify-content:space-between;\n align-items:center;\n\n >ul {\n display:none;\n }\n\n\n &:hover,\n &.selected {\n background:${Theme.colors.info.bg};\n\n >ul {\n display:inline-block;\n }\n }\n\n &.alone {\n border-top:1px solid ${Theme.colors.neutrals.silver};\n }\n\n }\n`\n\nconst OptionGroup = styled.div`\n color:#707070;\n font-size:12px;\n padding:8px;\n font-weight:bold;\n cursor:default;\n white-space: nowrap;\n`\n\nexport {\n Frag,\n Label, SpanError, SpanHelp, RequiredText,\n InputBase, SelectUi, Value, Options, OptionGroup\n}\n","\n\nexport const phone = value => {\n\n return value\n .replace(/\\D/g,'')\n .replace(/(\\d{3})(\\d)/,'$1-$2')\n .replace(/(\\d{3})(\\d)/,'$1-$2')\n .replace(/(\\d{4})\\d+?$/,'$1');\n}\n\nexport const time = value => {\n value = value.trim();\n\n if ( value[0] === '1' )\n value = value.replace( /^(1[012])(\\d{1,2})/, '$1:$2' );\n else\n value = value.replace( /^([1-9])(\\d{1,2})/, '$1:$2' );\n\n value = value.replace( /^(\\d{1,2}):?([0-5][0-9]) ?(am|pm)$/, '$1:$2 $3' );\n\n return value;\n};\n","import React, {forwardRef, useState} from 'react'\nimport styled from 'styled-components'\nimport Theme from '../Theme'\nimport Check from '../assets/Check.svg'\nimport Invalid from '../assets/Invalid.svg'\nimport Ex from '../assets/Ex.svg'\n\nimport {Label, RequiredText, SpanHelp, SpanError} from '../Common/input'\n\nimport {phone, time} from './mask'\n\nconst borderDefault = `\n border-width:1px;\n border-style:solid;\n`\n\nconst handleSize = sizeType => {\n switch (sizeType) {\n case 'extraSmall':\n return '80px'\n case 'small':\n return '140px'\n case 'big':\n return '460px'\n default:\n return '100%'\n }\n}\n\nconst handlerColor = typeColor => {\n switch (typeColor) {\n case 'error':\n return Theme.colors.error.text\n case 'valid':\n return Theme.colors.success.text\n default:\n return null\n }\n}\n\nconst handleMask = type => {\n switch (type) {\n case 'phone':\n return phone\n case 'time':\n return time\n default:\n return null\n }\n}\n\nconst InputBase = styled.input`\n background: ${Theme.colors.neutrals.white};\n border-color: ${Theme.colors.neutrals.silver};\n border-width: 1px;\n border-style: solid;\n border-radius: ${Theme.form.input.radius};\n font-size: ${Theme.font.medium.size};\n line-height: ${Theme.font.medium.lineHeight};\n height: 40px;\n padding: ${Theme.form.input.padding};\n color: ${Theme.colors.neutrals.gray};\n width: ${({size}) => handleSize(size)};\n\n &.hasChildren {\n padding-right: 40px;\n }\n\n &.hasChildren.childrenLeft {\n padding-right: ${Theme.form.input.padding};\n padding-left: 40px;\n }\n\n &:disabled {\n background: ${Theme.colors.extra.whiteSmoke};\n ${borderDefault};\n border-color: ${Theme.colors.neutrals.silver};\n color: ${Theme.colors.neutrals.medium};\n }\n\n &:disabled::placeholder {\n color: #eee;\n }\n\n &:hover {\n border-width: 1px;\n border-style: solid;\n border-color: ${Theme.colors.secondary};\n border-color: ${props => handlerColor(props.validation)};\n }\n\n &:active {\n ${borderDefault};\n border-color: ${props => handlerColor(props.validation)};\n }\n\n &:focus {\n ${borderDefault};\n box-shadow: 0px 0px 6px ${Theme.colors.action};\n border-color: ${Theme.colors.secondary};\n }\n\n &::placeholder {\n color: ${Theme.colors.neutrals.silver};\n font-size: ${Theme.font.small};\n }\n\n &:read-only {\n background: ${Theme.colors.info.bg};\n border-color: ${Theme.colors.neutrals.silver};\n color: #707070;\n }\n`\n\nconst Frag = styled.div`\n width:${({size}) => handleSize(size)}\n display:inline-block;\n vertical-align:top;\n\n svg path {\n fill: ${Theme.colors.secondary};\n }\n`\n\nconst Input = forwardRef(\n ({\n name,\n label,\n help,\n invalid,\n valid,\n error,\n mask,\n iconAction,\n children,\n onChange,\n ...props\n }, ref) => {\n const [inputValue, setInputValue] = useState('')\n\n let validationType = null\n let useIcon = false\n\n if (invalid) {\n useIcon = <span className='requiredField'>*</span>\n validationType = 'error'\n }\n\n if (props.Required) useIcon = <RequiredText />\n\n if (error) {\n validationType = 'error'\n }\n\n if (valid) {\n useIcon = (<img src={Check} />)\n validationType = 'valid'\n }\n\n let maskFunction = null\n if (mask) { maskFunction = handleMask(mask) }\n\n const handleChange = (e) => {\n if (onChange) { onChange(e) }\n if (maskFunction) { e.target.value = maskFunction(e.target.value) }\n }\n\n return (\n <Frag size={props.size} className='formAligner'>\n {label && !useIcon && <Label htmlFor={name}>{label}</Label>}\n {label && useIcon && <Label htmlFor={name}>{label} {useIcon}</Label>}\n <div style={{position: 'relative'}}>\n {children && React.cloneElement(React.Children.only(children), {\n size: children.props.size || '24px',\n style: {\n ...children.props.style,\n position: 'absolute',\n top: children.props.top || '8px',\n right: '8px',\n cursor: 'pointer',\n left: (children.props.left && '8px')\n }\n })\n }\n <InputBase\n name={name}\n id={name}\n className={[children && 'hasChildren', children && children.props.left && 'childrenLeft']}\n {...props}\n validation={validationType}\n ref={ref}\n onChange={handleChange}\n />\n\n {iconAction && iconAction}\n </div>\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n </Frag>\n )\n })\n\nexport {InputBase, Frag, handleSize}\n\nexport default Input\n","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\n\nmodule.exports = _arrayWithoutHoles;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableSpread;","var arrayWithoutHoles = require(\"./arrayWithoutHoles\");\n\nvar iterableToArray = require(\"./iterableToArray\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;","import React from 'react'\nimport styled from 'styled-components'\n\nimport {ReactComponent as Activity} from '../assets/icons/activity.svg'\nimport {ReactComponent as Advance} from '../assets/icons/advance.svg'\nimport {ReactComponent as AlertCircle} from '../assets/icons/alert-circle.svg'\nimport {ReactComponent as Amazon} from '../assets/icons/amazon.svg'\nimport {ReactComponent as Android} from '../assets/icons/android.svg'\nimport {ReactComponent as Apple} from '../assets/icons/apple.svg'\nimport {ReactComponent as Archive} from '../assets/icons/archive.svg'\nimport {ReactComponent as ArrowDown} from '../assets/icons/arrow-down.svg'\nimport {ReactComponent as ArrowDownv2} from '../assets/icons/arrow-downV2.svg'\nimport {ReactComponent as ArrowLeft} from '../assets/icons/arrow-left.svg'\nimport {ReactComponent as ArrowRight} from '../assets/icons/arrow-right.svg'\nimport {ReactComponent as ArrowRightLong} from '../assets/icons/arrow-right-long.svg'\nimport {ReactComponent as ArrowRightV2} from '../assets/icons/arrow-rightV2.svg'\nimport {ReactComponent as ArrowUp} from '../assets/icons/arrow-up.svg'\nimport {ReactComponent as ArrowUpV2} from '../assets/icons/arrow-upV2.svg'\nimport {ReactComponent as Avatar} from '../assets/icons/avatar.svg'\nimport {ReactComponent as BackHome} from '../assets/icons/back-home.svg'\nimport {ReactComponent as Balance} from '../assets/icons/balance.svg'\nimport {ReactComponent as Banknote} from '../assets/icons/banknote.svg'\nimport {ReactComponent as Battery} from '../assets/icons/battery.svg'\nimport {ReactComponent as Briefcase} from '../assets/icons/briefcase.svg'\nimport {ReactComponent as Broom} from '../assets/icons/broom.svg'\nimport {ReactComponent as Bucket} from '../assets/icons/bucket.svg'\nimport {ReactComponent as Bug} from '../assets/icons/bug.svg'\nimport {ReactComponent as BuildingV2} from '../assets/icons/buildingV2.svg'\nimport {ReactComponent as Calendar} from '../assets/icons/calendar.svg'\nimport {ReactComponent as CalendarActivity} from '../assets/icons/calendar-activity.svg'\nimport {ReactComponent as CalendarV2} from '../assets/icons/calendarV2.svg'\nimport {ReactComponent as CallV2} from '../assets/icons/callV2.svg'\nimport {ReactComponent as CameraSwitch} from '../assets/icons/camera-switch.svg'\nimport {ReactComponent as CameraV2} from '../assets/icons/cameraV2.svg'\nimport {ReactComponent as Card} from '../assets/icons/cards.svg'\nimport {ReactComponent as ChartSquare} from '../assets/icons/chart-square.svg'\nimport {ReactComponent as Chat} from '../assets/icons/chat.svg'\nimport {ReactComponent as ChatFilled} from '../assets/icons/chat-filled.svg'\nimport {ReactComponent as ChatV2} from '../assets/icons/chatV2.svg'\nimport {ReactComponent as Check} from '../assets/icons/check.svg'\nimport {ReactComponent as CheckCircleFilled} from '../assets/icons/check-circle-filled.svg'\nimport {ReactComponent as CheckDouble} from '../assets/icons/check-double.svg'\nimport {ReactComponent as CheckV2} from '../assets/icons/checkV2.svg'\nimport {ReactComponent as CheckCircle} from '../assets/icons/check-circle.svg'\nimport {ReactComponent as CheckCompletedV2} from '../assets/icons/checkCompletedV2.svg'\nimport {ReactComponent as CheckListV2} from '../assets/icons/checkListV2.svg'\nimport {ReactComponent as CheckNarrow} from '../assets/icons/check-narrow.svg'\nimport {ReactComponent as CheckSquare} from '../assets/icons/check-square.svg'\nimport {ReactComponent as Circle} from '../assets/icons/circle.svg'\nimport {ReactComponent as Clapperboard} from '../assets/icons/clapperboard.svg'\nimport {ReactComponent as Clipboard} from '../assets/icons/clipboard.svg'\nimport {ReactComponent as ClipboardList} from '../assets/icons/clipboard-list.svg'\nimport {ReactComponent as Clock} from '../assets/icons/clock.svg'\nimport {ReactComponent as ClockV2} from '../assets/icons/clockV2.svg'\nimport {ReactComponent as Cog} from '../assets/icons/cog.svg'\nimport {ReactComponent as Contract} from '../assets/icons/contract.svg'\nimport {ReactComponent as Copy} from '../assets/icons/copy.svg'\nimport {ReactComponent as CopyV2} from '../assets/icons/copyV2.svg'\nimport {ReactComponent as CreditCard} from '../assets/icons/credit-card.svg'\nimport {ReactComponent as CreditCardV2} from '../assets/icons/credit-cardV2.svg'\nimport {ReactComponent as Crown} from '../assets/icons/crown.svg'\nimport {ReactComponent as Dashboard} from '../assets/icons/dashboard.svg'\nimport {ReactComponent as Document} from '../assets/icons/document.svg'\nimport {ReactComponent as DocumentAdd} from '../assets/icons/document-add.svg'\nimport {ReactComponent as DocumentEdit} from '../assets/icons/document-edit.svg'\nimport {ReactComponent as Dollar} from '../assets/icons/dollar.svg'\nimport {ReactComponent as DollarV2} from '../assets/icons/dollarV2.svg'\nimport {ReactComponent as Download} from '../assets/icons/download.svg'\nimport {ReactComponent as DownloadV2} from '../assets/icons/downloadV2.svg'\nimport {ReactComponent as DspwNetwork} from '../assets/icons/dspw-network.svg'\nimport {ReactComponent as Emoji} from '../assets/icons/emoji.svg'\nimport {ReactComponent as Fullscreen} from '../assets/icons/fullscreen.svg'\nimport {ReactComponent as GripVertical} from '../assets/icons/grip-vertical.svg'\nimport {ReactComponent as Edit} from '../assets/icons/pencil.svg'\nimport {ReactComponent as EditV2} from '../assets/icons/pencilV2.svg'\nimport {ReactComponent as EllipsisVertical} from '../assets/icons/ellipsis-vertical.svg'\nimport {ReactComponent as Empty} from '../assets/icons/empty.svg'\nimport {ReactComponent as Expand} from '../assets/icons/expand.svg'\nimport {ReactComponent as ExpandV2} from '../assets/icons/expandV2.svg'\nimport {ReactComponent as ExportChat} from '../assets/icons/export-chat.svg'\nimport {ReactComponent as ExportFile} from '../assets/icons/export-file.svg'\nimport {ReactComponent as Eye} from '../assets/icons/eye.svg'\nimport {ReactComponent as EyeV2} from '../assets/icons/eyeV2.svg'\nimport {ReactComponent as EyeCrossed} from '../assets/icons/eye-crossed.svg'\nimport {ReactComponent as Feather} from '../assets/icons/feather.svg'\nimport {ReactComponent as FileCheck} from '../assets/icons/file-check.svg'\nimport {ReactComponent as FileText} from '../assets/icons/file-text.svg'\nimport {ReactComponent as Filter} from '../assets/icons/filter.svg'\nimport {ReactComponent as FilterV2} from '../assets/icons/filterV2.svg'\nimport {ReactComponent as Flag} from '../assets/icons/flag.svg'\nimport {ReactComponent as FlashlightOff} from '../assets/icons/flashlight-off.svg'\nimport {ReactComponent as FlashlightOn} from '../assets/icons/flashlight-on.svg'\nimport {ReactComponent as FlexIn} from '../assets/icons/flex-in.svg'\nimport {ReactComponent as FlexOut} from '../assets/icons/flex-out.svg'\nimport {ReactComponent as FolderV2} from '../assets/icons/folderV2.svg'\nimport {ReactComponent as Fuel} from '../assets/icons/fuel.svg'\nimport {ReactComponent as Gauge} from '../assets/icons/gauge.svg'\nimport {ReactComponent as GeoferenceIn} from '../assets/icons/geofence-in.svg'\nimport {ReactComponent as GeoferenceOut} from '../assets/icons/geofence-out.svg'\nimport {ReactComponent as GraduationHat} from '../assets/icons/graduation-hat.svg'\nimport {ReactComponent as Group} from '../assets/icons/group.svg'\nimport {ReactComponent as GroupFilled} from '../assets/icons/group-filled.svg'\nimport {ReactComponent as HandMoney} from '../assets/icons/hand-money.svg'\nimport {ReactComponent as Headset} from '../assets/icons/headset.svg'\nimport {ReactComponent as Heart} from '../assets/icons/heart.svg'\nimport {ReactComponent as HelpCircle} from '../assets/icons/help-circle.svg'\nimport {ReactComponent as Image} from '../assets/icons/image.svg'\nimport {ReactComponent as ImageV2} from '../assets/icons/imageV2.svg'\nimport {ReactComponent as Impersonate} from '../assets/icons/impersonate.svg'\nimport {ReactComponent as Info} from '../assets/icons/info-circle.svg'\nimport {ReactComponent as InfoCircleV2} from '../assets/icons/info-circleV2.svg'\nimport {ReactComponent as Invoice} from '../assets/icons/invoice.svg'\nimport {ReactComponent as LayerV2} from '../assets/icons/layerV2.svg'\nimport {ReactComponent as Layers} from '../assets/icons/layers.svg'\nimport {ReactComponent as LeftArrow} from '../assets/icons/left-arrow.svg'\nimport {ReactComponent as Lightning} from '../assets/icons/lightning.svg'\nimport {ReactComponent as Line} from '../assets/icons/line.svg'\nimport {ReactComponent as LinkV2} from '../assets/icons/linkV2.svg'\nimport {ReactComponent as List} from '../assets/icons/list.svg'\nimport {ReactComponent as Locker} from '../assets/icons/locker.svg'\nimport {ReactComponent as Loadout} from '../assets/icons/loadout.svg'\nimport {ReactComponent as Lunch} from '../assets/icons/lunch.svg'\nimport {ReactComponent as LunchIn} from '../assets/icons/lunch-in.svg'\nimport {ReactComponent as LunchOut} from '../assets/icons/lunch-out.svg'\nimport {ReactComponent as Mail} from '../assets/icons/mail.svg'\nimport {ReactComponent as Maintenance} from '../assets/icons/maintenance.svg'\nimport {ReactComponent as MaintenanceV2} from '../assets/icons/maintenanceV2.svg'\nimport {ReactComponent as Marker} from '../assets/icons/marker.svg'\nimport {ReactComponent as MapPin} from '../assets/icons/map-pin.svg'\nimport {ReactComponent as Maximize} from '../assets/icons/maximize.svg'\nimport {ReactComponent as Megaphone} from '../assets/icons/megaphone.svg'\nimport {ReactComponent as Menu} from '../assets/icons/menu.svg'\nimport {ReactComponent as Move} from '../assets/icons/move.svg'\nimport {ReactComponent as Mute} from '../assets/icons/mute.svg'\nimport {ReactComponent as NotAllowed} from '../assets/icons/not-allowed.svg'\nimport {ReactComponent as Notes} from '../assets/icons/notes.svg'\nimport {ReactComponent as NotificationV2} from '../assets/icons/notificationV2.svg'\nimport {ReactComponent as Package} from '../assets/icons/package.svg'\nimport {ReactComponent as PackageBack} from '../assets/icons/package-back.svg'\nimport {ReactComponent as PackageCheck} from '../assets/icons/package-check.svg'\nimport {ReactComponent as PackageTimes} from '../assets/icons/package-times.svg'\nimport {ReactComponent as Parking} from '../assets/icons/parking.svg'\nimport {ReactComponent as ParkingGeoIn} from '../assets/icons/parking-geofence-in.svg'\nimport {ReactComponent as ParkingGeoOut} from '../assets/icons/parking-geofence-out.svg'\nimport {ReactComponent as Pause} from '../assets/icons/pause.svg'\nimport {ReactComponent as Person} from '../assets/icons/person.svg'\nimport {ReactComponent as PersonLock} from '../assets/icons/person-lock.svg'\nimport {ReactComponent as Persons} from '../assets/icons/persons.svg'\nimport {ReactComponent as Phone} from '../assets/icons/phone.svg'\nimport {ReactComponent as Pin} from '../assets/icons/pin.svg'\nimport {ReactComponent as Play} from '../assets/icons/play.svg'\nimport {ReactComponent as PlayV2} from '../assets/icons/playV2.svg'\nimport {ReactComponent as Plus} from '../assets/icons/plus.svg'\nimport {ReactComponent as PlusCircle} from '../assets/icons/plus-circle.svg'\nimport {ReactComponent as PlusV2} from '../assets/icons/plusV2.svg'\nimport {ReactComponent as Printer} from '../assets/icons/printer.svg'\nimport {ReactComponent as PrivacyV2} from '../assets/icons/privacyV2.svg'\nimport {ReactComponent as ProfileV2} from '../assets/icons/profileV2.svg'\nimport {ReactComponent as PunchIn} from '../assets/icons/punch-in.svg'\nimport {ReactComponent as PunchOut} from '../assets/icons/punch-out.svg'\nimport {ReactComponent as Radius} from '../assets/icons/radius.svg'\nimport {ReactComponent as Record} from '../assets/icons/record.svg'\nimport {ReactComponent as RecordStop} from '../assets/icons/record-stop.svg'\nimport {ReactComponent as Refresh} from '../assets/icons/refresh.svg'\nimport {ReactComponent as Replace} from '../assets/icons/replace.svg'\nimport {ReactComponent as Rts} from '../assets/icons/rts.svg'\nimport {ReactComponent as ScanV2} from '../assets/icons/scanV2.svg'\nimport {ReactComponent as Search} from '../assets/icons/search.svg'\nimport {ReactComponent as SearchV2} from '../assets/icons/searchV2.svg'\nimport {ReactComponent as SecureV2} from '../assets/icons/secureV2.svg'\nimport {ReactComponent as Segment} from '../assets/icons/segment.svg'\nimport {ReactComponent as Send} from '../assets/icons/send.svg'\nimport {ReactComponent as SendFilled} from '../assets/icons/send-filled.svg'\nimport {ReactComponent as Settings} from '../assets/icons/settings.svg'\nimport {ReactComponent as SettingV2} from '../assets/icons/settingV2.svg'\nimport {ReactComponent as ShareV2} from '../assets/icons/shareV2.svg'\nimport {ReactComponent as SignoutV2} from '../assets/icons/signoutV2.svg'\nimport {ReactComponent as Skill} from '../assets/icons/skills.svg'\nimport {ReactComponent as SoundOff} from '../assets/icons/sound-off.svg'\nimport {ReactComponent as SoundOn} from '../assets/icons/sound-on.svg'\nimport {ReactComponent as Star} from '../assets/icons/star.svg'\nimport {ReactComponent as Sticker} from '../assets/icons/sticker.svg'\nimport {ReactComponent as Swear} from '../assets/icons/swear.svg'\nimport {ReactComponent as Target} from '../assets/icons/target.svg'\nimport {ReactComponent as TimeLine} from '../assets/icons/timeline.svg'\nimport {ReactComponent as TimelineV2} from '../assets/icons/timelineV2.svg'\nimport {ReactComponent as Times} from '../assets/icons/times.svg'\nimport {ReactComponent as TimesCircleV2} from '../assets/icons/timesCircleV2.svg'\nimport {ReactComponent as TimesNarrow} from '../assets/icons/times-narrow.svg'\nimport {ReactComponent as TimesV2} from '../assets/icons/timesV2.svg'\nimport {ReactComponent as Trash} from '../assets/icons/trash.svg'\nimport {ReactComponent as TrendDown} from '../assets/icons/trend-down.svg'\nimport {ReactComponent as TrendingUpV2} from '../assets/icons/trendingUpV2.svg'\nimport {ReactComponent as TrendUp} from '../assets/icons/trend-up.svg'\nimport {ReactComponent as Truck} from '../assets/icons/truck.svg'\nimport {ReactComponent as TruckV2} from '../assets/icons/truckV2.svg'\nimport {ReactComponent as Trophy} from '../assets/icons/trophy.svg'\nimport {ReactComponent as Unarchive} from '../assets/icons/unarchive.svg'\nimport {ReactComponent as Unpin} from '../assets/icons/unpin.svg'\nimport {ReactComponent as Upload} from '../assets/icons/upload.svg'\nimport {ReactComponent as UploadV2} from '../assets/icons/uploadV2.svg'\nimport {ReactComponent as VehicleOil} from '../assets/icons/vehicle-oil.svg'\nimport {ReactComponent as VehicleV2} from '../assets/icons/vehicleV2.svg'\nimport {ReactComponent as Video} from '../assets/icons/video.svg'\nimport {ReactComponent as Volume} from '../assets/icons/volume.svg'\nimport {ReactComponent as Warning} from '../assets/icons/warning.svg'\nimport {ReactComponent as WarningV2} from '../assets/icons/warningV2.svg'\nimport {ReactComponent as Wave} from '../assets/icons/wave.svg'\n\nconst Wrapper = (Element) => {\n const Svg = styled(Element)`\n width: ${props => props.size ? props.size : '40px'}\n height: ${props => props.size ? props.size : '40px'}\n ${props => props.strokeColor && `stroke: ${props.strokeColor} !important;`}\n\n ${props => props.onClick && `\n cursor: pointer;\n `}\n\n path {\n fill:${props => props.color ? props.color + ' !important' : 'currentColor'};\n ${props => props.strokeColor && `stroke: ${props.strokeColor} !important;`}\n }\n\n circle {\n ${props => props.strokeColor && `stroke: ${props.strokeColor} !important;`}\n }\n `\n return Svg\n}\n\nconst Icons = {\n Activity,\n Advance,\n AlertCircle,\n Amazon,\n Android,\n Apple,\n Archive,\n ArrowDown,\n ArrowDownv2,\n ArrowLeft,\n ArrowRight,\n ArrowRightLong,\n ArrowRightV2,\n ArrowUp,\n ArrowUpV2,\n Avatar,\n BackHome,\n Balance,\n Banknote,\n Battery,\n Briefcase,\n Broom,\n Bucket,\n Bug,\n BuildingV2,\n Calendar,\n CalendarActivity,\n CalendarV2,\n CallV2,\n CameraSwitch,\n CameraV2,\n Card,\n ChartSquare,\n Chat,\n ChatFilled,\n ChatV2,\n Check,\n CheckCircleFilled,\n CheckDouble,\n CheckV2,\n CheckCircle,\n CheckCompletedV2,\n CheckListV2,\n CheckNarrow,\n CheckSquare,\n Circle,\n Clapperboard,\n Clock,\n ClockV2,\n Clipboard,\n ClipboardList,\n Cog,\n Contract,\n Copy,\n CopyV2,\n CreditCard,\n CreditCardV2,\n Crown,\n Dashboard,\n Document,\n DocumentAdd,\n DocumentEdit,\n Dollar,\n DollarV2,\n Download,\n DownloadV2,\n DspwNetwork,\n Edit,\n EditV2,\n EllipsisVertical,\n Emoji,\n Empty,\n Expand,\n ExpandV2,\n ExportChat,\n ExportFile,\n Eye,\n EyeV2,\n EyeCrossed,\n Feather,\n FileCheck,\n FileText,\n Filter,\n FilterV2,\n Flag,\n FlashlightOff,\n FlashlightOn,\n FlexIn,\n FlexOut,\n FolderV2,\n Fuel,\n Fullscreen,\n Gauge,\n GeoferenceIn,\n GeoferenceOut,\n GraduationHat,\n GripVertical,\n Group,\n GroupFilled,\n HandMoney,\n Headset,\n Heart,\n HelpCircle,\n Image,\n ImageV2,\n Impersonate,\n Info,\n InfoCircleV2,\n Invoice,\n Layers,\n LayerV2,\n LeftArrow,\n Lightning,\n Line,\n LinkV2,\n List,\n Locker,\n Loadout,\n Lunch,\n LunchIn,\n LunchOut,\n Mail,\n Maintenance,\n MaintenanceV2,\n Marker,\n MapPin,\n Maximize,\n Megaphone,\n Menu,\n Move,\n Mute,\n NotAllowed,\n Notes,\n NotificationV2,\n Package,\n PackageBack,\n PackageCheck,\n PackageTimes,\n Parking,\n ParkingGeoIn,\n ParkingGeoOut,\n Pause,\n Person,\n PersonLock,\n Persons,\n Phone,\n Pin,\n Play,\n PlayV2,\n Plus,\n PlusCircle,\n PlusV2,\n Printer,\n PrivacyV2,\n ProfileV2,\n PunchIn,\n PunchOut,\n Radius,\n Record,\n RecordStop,\n Refresh,\n Replace,\n Rts,\n ScanV2,\n Search,\n SearchV2,\n SecureV2,\n Segment,\n Send,\n SendFilled,\n Settings,\n SettingV2,\n ShareV2,\n SignoutV2,\n Skill,\n SoundOff,\n SoundOn,\n Star,\n Sticker,\n Swear,\n Target,\n TimeLine,\n TimelineV2,\n Times,\n TimesCircleV2,\n TimesNarrow,\n TimesV2,\n Trash,\n TrendDown,\n TrendingUpV2,\n TrendUp,\n Truck,\n TruckV2,\n Trophy,\n Unarchive,\n Unpin,\n Upload,\n UploadV2,\n VehicleOil,\n VehicleV2,\n Video,\n Volume,\n Warning,\n WarningV2,\n Wave\n}\nlet Items = Object.keys(Icons).sort((a, b) => a.localeCompare(b))\n\nItems.forEach(key => {\n Icons[key] = Wrapper(Icons[key])\n})\n\nexport default Icons\n","import React from 'react';\nimport styled from 'styled-components';\nimport Theme from '../Theme'\n\nconst Help = styled.span`\n height:14px;\n width:14px;\n border-radius: 100%;\n background: ${Theme.colors.info.bg}; \n border: 1px solid ${Theme.colors.info.border};\n color:${Theme.colors.info.text};\n font-family:\"Huninn\", sans-serif;\n display: inline-block;\n font-size: 10px;\n text-align:center;\n font-weight:bold;\n position:relative;\n top:-2px;\n left:5px;\n \n >div {\n display:none;\n background:white;\n padding:7px;\n position:absolute;\n top:-40px;\n left:-4px;\n white-space: nowrap;\n font-weight:300;\n color:#707070; \n box-shadow:0 0 6px #ccc;\n \n &::before {\n content: \" \";\n width: 0;\n height: 0;\n border-left: 5px solid transparent;\n border-right: 5px solid transparent;\n border-top: 5px solid white;\n position: absolute;\n bottom: -5px;\n }\n }\n \n &:hover {\n div {\n display:inline-block;\n } \n }\n`;\n\n\nconst App = ({text}) => {\n return(\n <Help>\n <span>?</span>\n <div>{text}</div>\n </Help>\n );\n}\n\nexport default App;\n","const mergeRefs = refs => {\n return value => {\n refs.forEach(ref => {\n if (typeof ref === 'function') {\n ref(value)\n } else if (ref != null) {\n ref.current = value\n }\n })\n }\n};\n\nexport default mergeRefs;\n","import styled from 'styled-components'\nimport Theme from '../Theme'\n\nconst Title = styled.h1`\n font-family: \"Huninn\", sans-serif;\n font-weight: bold;\n font-size: 36px;\n line-height: 40px;\n color: ${Theme.colors.info.text};\n`\n\nconst SubTitle = styled.h3`\n font-family: \"Huninn\", sans-serif;\n font-weight: bold;\n font-size: 24px;\n line-height: 28px;\n color: ${Theme.colors.info.text};\n`\n\nconst ThirdTitle = styled(SubTitle)`\n font-size: 16px;\n line-height: 20px;\n`\n\nconst Text = styled.p`\n font-size: 14px;\n line-height: 16px;\n color: ${Theme.colors.neutrals.gray};\n\n ${({subtle}) => subtle && `\n color:${Theme.colors.neutrals.medium};\n `}\n}\n`\n\nconst Emphasis = styled.span`\n font-family: ${Theme.font.main};\n`\n\nexport {Title, SubTitle, ThirdTitle, Text, Emphasis}\n","import React, {forwardRef, Fragment, useCallback, useEffect, useRef, useState} from 'react'\nimport {createPortal} from 'react-dom'\nimport styled from 'styled-components'\nimport {supercomplete, useCombobox} from '@szhsin/react-autocomplete'\nimport {usePopper} from 'react-popper'\nimport Icon from '../Icons/index'\nimport Theme from '../Theme'\nimport Ex from '../assets/Ex.svg'\nimport Check from '../assets/Check.svg'\nimport Help from '../Common/tooltip'\nimport {Label, RequiredText, SpanHelp, SpanError} from '../Common/input'\nimport mergeRefs from '../Common/MergeRefs'\nimport {Text} from '../Texts/index'\n\nconst Frag = styled.div`\n display: inline-block;\n vertical-align: top;\n ${({fullWidth}) => fullWidth && 'width: 100%;'}\n`\n\nconst handleSize = sizeType => {\n switch (sizeType) {\n case 'extraSmall':\n return '80px'\n case 'small':\n return '140px'\n case 'big':\n return '460px'\n default:\n return '100%'\n }\n}\n\nconst SelectUi = styled.div`\n width: ${({size}) => handleSize(size)};\n height: 40px;\n background: white;\n border-radius: ${Theme.defaultRadius};\n border: 1px solid ${Theme.colors.neutrals.silver};\n cursor: pointer;\n position: relative;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n &:hover {\n border-color: ${Theme.colors.info.border};\n }\n\n &.open {\n border-color: ${Theme.colors.secondary};\n box-shadow: 0 0 6px ${Theme.colors.action};\n }\n\n &.error {\n border-color: ${Theme.colors.error.border};\n }\n\n &.error.open {\n border-color: ${Theme.colors.error.border};\n box-shadow: 0 0 6px ${Theme.colors.error.shadow};\n }\n\n &.valid {\n border-color: ${Theme.colors.success.border};\n }\n\n &.valid.open {\n border-color: ${Theme.colors.success.border};\n box-shadow: 0 0 6px ${Theme.colors.success.shadow};\n }\n\n &[disabled] {\n cursor: not-allowed;\n background: ${Theme.colors.extra.whiteSmoke};\n border-color: ${Theme.colors.neutrals.silver};\n color: ${Theme.colors.neutrals.medium};\n }\n\n &[disabled] input::placeholder {\n color: #eee;\n }\n`\n\nconst Value = styled(Text).attrs(props => ({\n as: 'span'\n}))`\n white-space: nowrap;\n overflow: hidden;\n color: ${Theme.colors.neutrals.medium};\n\n ${props => props.option && `\n display:inline-block;\n flex:1;\n `}\n > span {\n color: #707070;\n }\n`\n\nconst maxOptions = 3\nconst optionsSize = 32\n\nconst Options = styled.ul`\n padding: 0;\n margin: 4px 0;\n background: white;\n border: 1px solid ${Theme.colors.neutrals.silver};\n box-shadow: 0 0 6px ${Theme.colors.neutrals.silver};\n border-radius: ${Theme.defaultRadius};\n list-style: none;\n width: auto;\n display: inline-block;\n position: absolute;\n top: 100%;\n ${props => props.openTo === 'top' && `\n top:unset;\n bottom: 100%;\n `}\n left: -1px;\n z-index: 10;\n\n ${props => !props.hasChildren && `\n max-height: ${props.visibleOptionsQty ? props.visibleOptionsQty * optionsSize : maxOptions * optionsSize}px;\n overflow-x:hidden;\n overflow-y:scroll;\n `}\n ${props => props.isChild && `\n position:absolute;\n left:100%;\n margin-left:4px;\n top:-4px;\n `}\n li {\n font-size: ${Theme.font.small.size};\n color: #707070;\n height: 32px;\n cursor: pointer;\n padding: 0px 4px 0 8px;\n position: relative;\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n > ul {\n display: none;\n }\n\n &::before {\n content: \" \";\n height: 100%;\n width: 6px;\n background: transparent;\n display: block;\n position: absolute;\n right: -7px;\n }\n\n\n &:hover,\n &.active {\n background: ${Theme.colors.info.bg};\n\n > ul {\n display: inline-block;\n }\n }\n\n &.alone {\n border-top: 1px solid ${Theme.colors.neutrals.silver};\n }\n\n }\n`\n\nconst optionsSizeCustom = 42\nconst OptionsPeople = styled(Options)`\n max-height: ${props => props.visibleOptionsQty ? props.visibleOptionsQty * optionsSize : optionsSizeCustom * optionsSize}px;\n overflow-y: scroll;\n\n > li {\n padding-right: 8px;\n height: auto;\n min-height: 32px;\n justify-content: flex-start;\n }\n`\n\nconst SelectHidden = styled.select`\n position: absolute;\n height: 1px;\n width: 1px;\n z-index: -1;\n opacity: 0;\n`\n\nconst PhotoCover = styled.div`\n height: 22px;\n width: 22px;\n overflow: hidden;\n border-radius: 100%;\n border: 1px solid #516F90;\n background: #EAF0F6;\n margin-right: 5px;\n display: flex;\n justify-content: center;\n align-items: center;\n\n > svg {\n margin-top: 2px;\n }\n\n > img {\n width: 25px;\n height: 25px;\n object-fit: cover;\n object-position: center;\n }\n`\n\nconst CustomCheckBox = styled.div`\n background: ${Theme.colors.neutrals.white};\n border-radius: ${Theme.defaultRadius};\n border: 1px solid ${Theme.colors.neutrals.silver};\n height: 16px;\n width: 16px;\n border-radius: ${Theme.defaultRadius};\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-right: 9px;\n\n &:focus {\n border-color: ${Theme.colors.secondary};\n box-shadow: 0 0 6px ${Theme.colors.action};\n }\n\n`\n\nconst OptionGroup = styled.div`\n color: #707070;\n font-size: 12px;\n padding: 8px;\n font-weight: bold;\n cursor: default;\n white-space: nowrap;\n`\n\nconst ColorOption = styled.span`\n height: 24px;\n width: 24px;\n box-sizing: border-box;\n margin-right: 5px;\n border-radius: 100%;\n border: 2px solid white;\n background: ${props => props.color ? props.color : 'black'}\n z-index: ${props => props.index > 0 ? 10 - props.index : 10};\n margin-left: ${props => props.index > 0 ? '-19px' : '0'}\n margin-top: 8px;\n margin-bottom: 8px;\n display: inline-block;\n`\n\nconst getSelected = (options, defaultValue) => {\n let selected\n options.some((item) => (\n selected = (item.selected) || (item.value == defaultValue) ? item : getSelected(item.options ? item.options : [], defaultValue))\n )\n return selected\n}\n\nconst SearchInput = styled.input`\n flex: 1;\n min-width: 0;\n border: 0;\n outline: 0;\n padding: 0;\n background: transparent;\n cursor: inherit;\n font-family: inherit;\n font-size: ${Theme.font.medium.size};\n line-height: ${Theme.font.medium.lineHeight};\n color: ${Theme.colors.neutrals.gray};\n padding-left: 8px;\n\n\n &::placeholder {\n color: ${props => props.hasSelection ? Theme.colors.neutrals.gray : Theme.colors.neutrals.medium};\n opacity: 1;\n }\n`\n\nconst ToggleButton = styled.button`\n border: 0;\n padding-right: 8px;\n background: transparent;\n cursor: inherit;\n display: flex;\n align-items: center;\n height: 100%;\n`\n\nconst isOption = item => item.value !== undefined && item.value !== null\n\nconst flattenOptions = (options, depth = 0) => (options || []).reduce(\n (rows, item) => rows.concat({item, depth}, flattenOptions(item.options, depth + 1)),\n []\n)\n\n// option names can be React elements, typing and inline completion need their text\nconst optionText = node => {\n if (node === undefined || node === null || typeof node === 'boolean') return ''\n if (typeof node === 'string' || typeof node === 'number') return node.toString()\n if (Array.isArray(node)) return node.map(optionText).join('')\n return node.props ? optionText(node.props.children) : ''\n}\n\n// rendered in document.body so overflow on any ancestor cannot clip it; popper flips and shifts it to stay in the viewport\n// eslint-disable-next-line react/prop-types\nconst FloatingOptions = forwardRef(({anchor, openTo, style, ...props}, ref) => {\n const [list, setList] = useState(null)\n const listRef = useCallback(mergeRefs([setList, ref]), [ref])\n const {styles, attributes, update} = usePopper(anchor, list, {\n strategy: 'fixed',\n placement: openTo === 'top' ? 'top-start' : 'bottom-start',\n modifiers: [{name: 'offset', options: {offset: [0, 4]}}]\n })\n\n // popper repositions only on scroll and resize; follow size changes of the anchor and the list\n useEffect(() => {\n if (!anchor || !list || !update) return\n const observer = new window.ResizeObserver(() => update())\n observer.observe(anchor)\n observer.observe(list)\n return () => observer.disconnect()\n }, [anchor, list, update])\n\n return createPortal(\n <Options\n ref={listRef}\n style={{...style, ...styles.popper, margin: 0, zIndex: 1000000}}\n {...attributes.popper}\n {...props}\n />,\n document.body\n )\n})\n\n// eslint-disable-next-line react/prop-types\nconst AutocompleteSelect = ({\n options,\n selectedOpt,\n setSelected,\n onChange,\n onSelect,\n placeholder,\n error,\n valid,\n noOptions,\n visibleOptionsQty,\n openTo,\n startOpen,\n resetCallback,\n ...props\n}) => {\n const [search, setSearch] = useState()\n const [anchor, setAnchor] = useState(null)\n\n const rows = flattenOptions(options)\n const selectable = rows.filter(row => isOption(row.item)).map(row => row.item)\n const filterItems = text => text\n ? selectable.filter(item => optionText(item.name).toLowerCase().startsWith(text.toLowerCase()))\n : selectable\n const items = filterItems(search)\n const hasSelection = selectedOpt.value.length > 0\n const selectedText = optionText(selectedOpt.desc)\n\n const {getInputProps, getToggleProps, getListProps, getItemProps, open, setOpen, focusIndex} = useCombobox({\n items,\n value: search || '',\n onChange: setSearch,\n selected: selectable.find(item => item.value.toString() === selectedOpt.value),\n onSelectChange: item => {\n if (!item) return\n if (onSelect) onSelect(item)\n setSelected({value: item.value.toString(), desc: item.name})\n if (onChange) onChange(item)\n },\n isEqual: (a, b) => a === b || (!!a && !!b && a.value == b.value),\n getItemValue: item => optionText(item.name),\n disabled: props.disabled,\n feature: supercomplete({\n onRequestItem: ({value}, res) => {\n const matches = filterItems(value)\n if (matches.length > 0) res({index: 0, item: matches[0]})\n },\n select: true,\n deselectOnClear: false\n })\n })\n\n useEffect(() => {\n if (startOpen) setOpen(true)\n }, [])\n\n let index = -1\n\n return (\n <SelectUi\n ref={setAnchor}\n className={[open && 'open', error && 'error', valid && 'valid'].filter(Boolean).join(' ')}\n {...props}\n title={selectedText}\n >\n <SearchInput\n placeholder={hasSelection ? selectedText : placeholder}\n hasSelection={hasSelection}\n {...getInputProps()}\n />\n <ToggleButton {...getToggleProps()}>\n {open ? <Icon.ArrowUp size='15px' color={Theme.colors.info.border} />\n : <Icon.ArrowDown size='15px' color={Theme.colors.info.border} />}\n </ToggleButton>\n {open &&\n <FloatingOptions anchor={anchor} visibleOptionsQty={visibleOptionsQty} openTo={openTo} {...getListProps()}>\n {items.length === 0 && <li style={{paddingRight: '8px'}}>{noOptions || 'No data found'}</li>}\n {(search ? items.map(item => ({item, depth: 0})) : rows).map(({item, depth}, key) => {\n if (!isOption(item)) {\n return <OptionGroup key={key}\n style={{paddingLeft: 8 + depth * 16}}>{item.name}</OptionGroup>\n }\n index++\n return (\n <li\n key={key}\n className={item.divider ? 'alone' : ''}\n style={{\n paddingLeft: 8 + depth * 16,\n background: focusIndex === index ? Theme.colors.info.bg : undefined\n }}\n {...getItemProps({item, index})}\n >\n <Value option style={{marginRight: 4}}>{item.name}</Value>\n </li>\n )\n })}\n </FloatingOptions>\n }\n </SelectUi>\n )\n}\n\nconst summarizeSelection = names => {\n if (names.length <= 2) return names.join(', ')\n const others = names.length - 2\n return `${names[0]}, ${names[1]} and ${others} other${others > 1 ? 's' : ''}`\n}\n\n// eslint-disable-next-line react/prop-types\nconst MultiAutocompleteSelect = ({\n options,\n selectedValues,\n onToggle,\n placeholder,\n error,\n valid,\n noOptions,\n visibleOptionsQty,\n openTo,\n startOpen,\n ...props\n}) => {\n const [search, setSearch] = useState('')\n const [open, setOpen] = useState(startOpen)\n const [anchor, setAnchor] = useState(null)\n const nodeRef = useRef()\n const listRef = useRef()\n const setNode = useCallback(mergeRefs([nodeRef, setAnchor]), [])\n\n useEffect(() => {\n const closeOnOutsideClick = e => {\n const inList = listRef.current && listRef.current.contains(e.target)\n if (nodeRef.current && !nodeRef.current.contains(e.target) && !inList) {\n setOpen(false)\n setSearch('')\n }\n }\n document.addEventListener('mousedown', closeOnOutsideClick)\n return () => document.removeEventListener('mousedown', closeOnOutsideClick)\n }, [])\n\n const rows = flattenOptions(options)\n const selectable = rows.filter(row => isOption(row.item)).map(row => row.item)\n const items = search\n ? selectable.filter(item => optionText(item.name).toLowerCase().startsWith(search.toLowerCase()))\n : selectable\n const summary = summarizeSelection(\n selectable.filter(item => selectedValues.includes(item.value.toString())).map(item => optionText(item.name))\n )\n\n return (\n <SelectUi\n ref={setNode}\n className={[open && 'open', error && 'error', valid && 'valid'].filter(Boolean).join(' ')}\n {...props}\n title={summary}\n onClick={() => !props.disabled && setOpen(true)}\n >\n <SearchInput\n value={search}\n placeholder={summary || placeholder}\n hasSelection={summary.length > 0}\n disabled={props.disabled}\n onChange={e => {\n setSearch(e.target.value)\n setOpen(true)\n }}\n onKeyDown={e => {\n if (e.key === 'Escape') {\n setOpen(false)\n setSearch('')\n }\n }}\n />\n <ToggleButton\n type='button'\n tabIndex={-1}\n onClick={e => {\n e.stopPropagation()\n if (!props.disabled) setOpen(!open)\n }}\n >\n {open ? <Icon.ArrowUp size='15px' color={Theme.colors.info.border} />\n : <Icon.ArrowDown size='15px' color={Theme.colors.info.border} />}\n </ToggleButton>\n {open &&\n <FloatingOptions anchor={anchor} visibleOptionsQty={visibleOptionsQty} openTo={openTo} ref={listRef}>\n {items.length === 0 && <li style={{paddingRight: '8px'}}>{noOptions || 'No data found'}</li>}\n {(search ? items.map(item => ({item, depth: 0})) : rows).map(({item, depth}, key) => {\n if (!isOption(item)) {\n return <OptionGroup key={key}\n style={{paddingLeft: 8 + depth * 16}}>{item.name}</OptionGroup>\n }\n return (\n <li\n key={key}\n style={{paddingLeft: 8 + depth * 16, justifyContent: 'flex-start'}}\n onMouseDown={e => e.preventDefault()}\n onClick={e => {\n e.stopPropagation()\n onToggle(item)\n }}\n >\n <CustomCheckBox>\n {selectedValues.includes(item.value.toString()) && <Icon.Check size='17px' />}\n </CustomCheckBox>\n <Value option style={{marginRight: 4}}>{item.name}</Value>\n </li>\n )\n })}\n </FloatingOptions>\n }\n </SelectUi>\n )\n}\n\nconst MultiDropdown = forwardRef(({\n name,\n label,\n help,\n error,\n valid,\n options,\n placeholder,\n onChange,\n defaultValue,\n visibleOptionsQty,\n openTo,\n startOpen = false,\n resetCallback,\n ...props\n}, ref) => {\n const [selectedValues, setSelectedValues] = useState([])\n const valueRef = useRef()\n\n const selectable = flattenOptions(options).filter(row => isOption(row.item)).map(row => row.item)\n\n if (resetCallback) {\n resetCallback(() => setSelectedValues([]))\n }\n\n const hasDefaultValue = defaultValue !== undefined && defaultValue !== null && defaultValue !== ''\n const defaults = (Array.isArray(defaultValue) ? defaultValue\n : hasDefaultValue ? [defaultValue]\n : selectable.filter(item => item.selected).map(item => item.value)\n ).map(String)\n const defaultsKey = defaults.join('\\u0000')\n\n useEffect(() => {\n setSelectedValues(defaults)\n }, [defaultsKey])\n\n useEffect(() => {\n if (!valueRef.current) return\n Array.from(valueRef.current.options).forEach(opt => {\n opt.selected = selectedValues.includes(opt.value)\n })\n valueRef.current.dispatchEvent(new Event('blur'))\n }, [selectedValues, options])\n\n const toggle = item => {\n const value = item.value.toString()\n const next = selectedValues.includes(value)\n ? selectedValues.filter(v => v !== value)\n : [...selectedValues, value]\n setSelectedValues(next)\n if (onChange) onChange(selectable.filter(opt => next.includes(opt.value.toString())))\n }\n\n let useIcon = false\n\n if (props.Required) useIcon = <RequiredText />\n\n if (valid) {\n useIcon = (<img src={Check} />)\n }\n\n return (\n <Frag fullWidth={!props.size}>\n {label && !useIcon && <Label htmlFor={name}>{label}</Label>}\n {label && useIcon && <Label htmlFor={name}>{label} {useIcon}</Label>}\n <MultiAutocompleteSelect\n options={options}\n selectedValues={selectedValues}\n onToggle={toggle}\n placeholder={placeholder}\n error={error}\n valid={valid}\n visibleOptionsQty={visibleOptionsQty}\n openTo={openTo}\n startOpen={startOpen}\n {...props}\n />\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n <SelectHidden\n name={name}\n multiple\n ref={mergeRefs([valueRef, ref])}\n tabIndex={-1}\n disabled={props.disabled}\n >\n {selectable.map((item, k) =>\n <option value={item.value} key={k}>{optionText(item.name)}</option>\n )}\n </SelectHidden>\n </Frag>\n )\n})\n\nconst SingleDropdown = forwardRef(({\n name,\n label,\n help,\n error,\n valid,\n options,\n placeholder,\n onChange,\n defaultValue,\n visibleOptionsQty,\n openTo,\n startOpen = false,\n ...props\n}, ref) => {\n let defaultSelected = {value: '', desc: ''}\n\n const [selectedOpt, setSelected] = useState(defaultSelected)\n\n const valueRef = useRef()\n\n const reset = () => {\n setSelected(defaultSelected)\n }\n\n if (props.resetCallback) {\n props.resetCallback(reset)\n }\n\n const setDefaultValues = useCallback(() => {\n const hasDefault = getSelected(options, defaultValue)\n\n if (hasDefault && hasDefault.value) {\n defaultSelected = {value: hasDefault.value.toString(), desc: hasDefault.name}\n setSelected(defaultSelected)\n } else {\n if (!valueRef.current.value) {\n return\n }\n\n let selected = getSelected(options, valueRef.current.value)\n if (selected && selected.value && selected.value !== selectedOpt.value) {\n setSelected({value: selected.value.toString(), desc: selected.name})\n }\n }\n })\n\n useEffect(() => {\n // if(defaultValue){\n if (options) setDefaultValues()\n // }\n }, [options, defaultValue])\n\n useEffect(() => {\n valueRef.current.value = selectedOpt.value\n valueRef.current.dispatchEvent(new Event('blur'))\n }, [selectedOpt])\n\n let useIcon = false\n\n if (props.Required) useIcon = <RequiredText />\n\n if (valid) {\n useIcon = (<img src={Check} />)\n }\n\n return (\n <Frag fullWidth={!props.size}>\n {label && !useIcon && <Label htmlFor={name}>{label}</Label>}\n {label && useIcon && <Label htmlFor={name}>{label} {useIcon}</Label>}\n <AutocompleteSelect\n options={options}\n selectedOpt={selectedOpt}\n setSelected={setSelected}\n onChange={onChange}\n placeholder={placeholder}\n error={error}\n valid={valid}\n visibleOptionsQty={visibleOptionsQty}\n openTo={openTo}\n startOpen={startOpen}\n {...props}\n />\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n <input name={name} type='hidden' ref={mergeRefs([valueRef, ref])} disabled={props.disabled} />\n </Frag>\n )\n})\n\nconst Dropdown = forwardRef(({multiple, ...props}, ref) => multiple\n ? <MultiDropdown ref={ref} {...props} />\n : <SingleDropdown ref={ref} {...props} />\n)\n\n// eslint-disable-next-line react/prop-types\nexport const BoxOptions = ({\n options,\n isChild,\n setSelected,\n onChange,\n noOptions,\n selectedOpt,\n setOpen,\n onSelect,\n visibleOptionsQty,\n openTo\n}) => {\n if (!options) {\n return (<Options>\n <li style={{paddingRight: '8px'}}>{noOptions || 'No data found'}</li>\n </Options>)\n }\n\n const optionsRef = useRef()\n\n const handleClick = (item, e) => {\n e.stopPropagation()\n setOpen(false)\n if (onSelect) onSelect(item)\n if (selectedOpt === item.value) return false\n setSelected({value: item.value.toString(), desc: item.name})\n if (onChange) onChange(item)\n }\n\n const hasChildren = options.some(el => el.options)\n\n useEffect(() => {\n if (optionsRef.current) {\n const optionsBounds = optionsRef.current.getBoundingClientRect()\n if (optionsBounds.right > window.innerWidth) {\n optionsRef.current.style.left = 'unset'\n optionsRef.current.style.right = '0px'\n }\n }\n }, [])\n\n return (\n <Options isChild={isChild} visibleOptionsQty={visibleOptionsQty} hasChildren={hasChildren} openTo={openTo}\n ref={optionsRef}>\n {options.map((item, key) => (\n <Fragment key={key}>\n {item.value !== undefined && item.value !== null\n ? <li value={item.value} key={key} className={item.divider ? 'alone' : ''} onClick={(e) => {\n handleClick(item, e)\n }}>\n <Value\n option\n style={{marginRight: 4}}\n >\n {item.name}\n </Value>\n {item.options && <Icon.ArrowRight size='15px' color='#7C98B6' />}\n {item.options && <BoxOptions options={item.options} isChild={true} setSelected={setSelected}\n onChange={onChange} selectedOpt={selectedOpt} setOpen={setOpen}\n visibleOptionsQty={visibleOptionsQty} />}\n </li>\n : <OptionGroup>{item.name}</OptionGroup>\n }\n </Fragment>\n ))}\n </Options>\n )\n}\n\nconst CustomDropdown = forwardRef(({\n name,\n label,\n help,\n error,\n valid,\n options,\n placeholder,\n defaultValue,\n multiple,\n type,\n tooltip,\n onChange,\n visibleOptionsQty,\n openTo,\n ...props\n}, ref) => {\n const [open, setOpen] = useState(false)\n const [selectedOpt, setSelected] = useState([])\n\n const nodeSelect = useRef()\n const valueRef = useRef()\n\n const handlOpenSelect = e => {\n if (props.disabled) {\n return\n }\n\n if (multiple) {\n if (e.target.classList.contains('1010list-option')) {\n return\n }\n }\n\n setOpen(!open)\n }\n\n const reset = () => {\n setSelected([])\n }\n\n if (props.resetCallback) {\n props.resetCallback(reset)\n }\n\n const handleClick = e => {\n if (nodeSelect.current.contains(e.target)) {\n return\n }\n\n setOpen(false)\n }\n\n useEffect(() => {\n document.addEventListener('mousedown', handleClick)\n\n return () => {\n document.removeEventListener('mousedown', handleClick)\n }\n }, [])\n\n const setDefaultValues = useCallback(() => {\n let defaults\n\n if (valueRef.current && valueRef.current.value) {\n if (multiple) {\n defaultValue = Array.from(valueRef.current.children)\n .filter(opt => opt.selected == true)\n .map(opt => opt.value)\n } else {\n defaultValue = defaultValue || valueRef.current.value\n }\n }\n\n if (options) {\n defaults = options.map((item, key) => {\n if (item.selected) return key\n }).filter(e => e != null)\n }\n\n if (defaultValue) {\n defaults = options.map((item, key) => {\n if (multiple) {\n if (defaultValue.indexOf(item.value) >= 0) return key\n } else {\n if (item.value == defaultValue) return key\n }\n }).filter(e => e != null)\n }\n\n if (defaults.length) {\n if (multiple) {\n if (selectedOpt.length !== defaults.length ||\n !selectedOpt.every((value, index) => value === defaults[index])) {\n setSelected(defaults)\n }\n } else {\n if (selectedOpt[0] !== defaults[0]) {\n setSelected([defaults[0]])\n }\n }\n }\n\n // const hasDefault = getSelected(options,defaultValue);\n //\n // if(hasDefault && hasDefault.value){\n // defaultSelected = {value:hasDefault.value.toString(),desc:hasDefault.name};\n // setSelected(defaultSelected);\n // } else {\n // if ( !valueRef.current.value )\n // return;\n //\n // let selected = getSelected(options,valueRef.current.value);\n // if ( selected && selected.value )\n // setSelected({ value: selected.value.toString(), desc: selected.name });\n // }\n })\n\n useEffect(() => {\n // if(defaultValue){\n if (options) setDefaultValues()\n // }\n }, [options, defaultValue])\n\n useEffect(() => {\n if (valueRef.current) {\n if (multiple) {\n Array.from(valueRef.current.children)\n .map((opt, k) => opt.selected = selectedOpt.indexOf(k) !== -1)\n } else if (options[selectedOpt]) {\n valueRef.current.value = options[selectedOpt].value\n }\n }\n\n valueRef.current.dispatchEvent(new Event('blur'))\n }, [selectedOpt])\n\n let useIcon = false\n\n if (props.Required) useIcon = <RequiredText />\n\n if (valid) {\n useIcon = (<img src={Check} />)\n }\n\n return (\n <Frag fullWidth={!props.size}>\n {label && !useIcon && <Label htmlFor={name}>{label} {tooltip && <Help text={tooltip} />}</Label>}\n {label && useIcon && <Label htmlFor={name}>{label} {useIcon} {tooltip && <Help text={tooltip} />}</Label>}\n <SelectUi onClick={handlOpenSelect} ref={nodeSelect}\n className={[open && 'open', error && 'error', valid && 'valid']} {...props}>\n <Value style={{display: 'inline-flex', alignItems: 'center', overflow: 'hidden'}}>\n {\n selectedOpt.length > 0\n ? <SelectValueRender options={options} selectedOpt={selectedOpt} type={type}\n noOptions={props.noOptions} />\n : <span>{placeholder}</span>\n }\n </Value>\n {open ? <Icon.ArrowUp size='15px' color={Theme.colors.info.border} />\n : <Icon.ArrowDown size='15px' color={Theme.colors.info.border} />}\n {open &&\n <SelectOption\n options={options}\n setSelected={setSelected}\n selectedOpt={selectedOpt}\n multiple={multiple}\n type={type}\n onChange={onChange}\n noOptions={props.noOptions}\n visibleOptionsQty={visibleOptionsQty}\n openTo={openTo}\n />\n }\n </SelectUi>\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n\n {multiple\n ? <SelectHidden\n name={name}\n multiple\n ref={mergeRefs([valueRef, ref])}\n tabIndex={-1}\n >\n {options && options.map((opt, k) =>\n <option value={opt.value} key={k}>{opt.name}</option>\n )}\n </SelectHidden>\n : <input\n name={name}\n type='hidden'\n ref={mergeRefs([valueRef, ref])}\n />\n }\n\n </Frag>\n )\n})\n\nconst HandleState = (index, setSelected, selectedOpt, multiple, onChange, options) => {\n const key = selectedOpt.includes(index)\n\n let ret\n\n if (key && multiple) {\n selectedOpt.splice(selectedOpt.indexOf(index), 1)\n ret = [...selectedOpt]\n } else {\n if (multiple) {\n let newSelected = Object.assign([], selectedOpt)\n newSelected.push(index)\n ret = newSelected\n } else {\n ret = [index]\n }\n }\n\n if (!multiple && ret.toString() === selectedOpt.toString()) {\n return\n }\n\n const stateMap = options.filter((opt, index) => ret.indexOf(index) !== -1).map(opt => opt.value)\n\n if (typeof onChange === 'function') {\n onChange(multiple ? stateMap : stateMap[0])\n }\n\n setSelected(ret)\n}\n\nconst SelectOption = ({\n options,\n setSelected,\n selectedOpt,\n multiple,\n type,\n onChange,\n noOptions,\n visibleOptionsQty,\n openTo\n}) => {\n if (!options) {\n return (<OptionsPeople>\n <li>{noOptions || 'No data found'}</li>\n </OptionsPeople>)\n }\n return (\n <OptionsPeople visibleOptionsQty={visibleOptionsQty} openTo={openTo}>\n {options.map((item, key) => (\n <Fragment key={key}>\n {item.value !== undefined && item.value !== null\n ? <li value={item.value} className='1010list-option' onClick={() => {\n HandleState(key, setSelected, selectedOpt, multiple, onChange, options)\n }}>\n {multiple && <CustomCheckBox className='1010list-option'>{selectedOpt.includes(key) &&\n <Icon.Check size='17px' />}</CustomCheckBox>}\n {type == 'color' ? <ColorOption color={item.color} className='1010list-option' /> : null}\n {type == 'people' ? <PhotoComponent profile={item.profile} /> : null}\n <Value className='1010list-option'>{item.name}</Value>\n </li>\n : <OptionGroup className='1010list-option'>{item.name}</OptionGroup>\n }\n </Fragment>\n ))}\n </OptionsPeople>\n )\n}\n\nconst PhotoComponent = ({profile, index}) => {\n let customStyle = {position: 'relative', display: 'inline-flex', zIndex: 10}\n\n if (index > 0) {\n customStyle.marginLeft = '-19px'\n customStyle.zIndex -= index\n }\n return (\n <PhotoCover style={customStyle} className='1010list-option'>\n {profile && profile != undefined ? <img src={profile} className='1010list-option' />\n : <Icon.Person className='1010list-option' size='20px' />}\n </PhotoCover>\n )\n}\n\nconst SelectValueRender = ({options, selectedOpt, type, noOptions}) => {\n if (!options) {\n return (\n <Fragment>\n <div style={{display: 'flex'}} />\n <Value>\n {noOptions || 'No Data'}\n </Value>\n </Fragment>\n )\n }\n let Pictures = []\n let Names = []\n\n if (selectedOpt.length > 0 && selectedOpt[0] != undefined) {\n let seq = 0\n selectedOpt.map((key) => {\n if (seq < 3) {\n if (type === 'color') {\n Pictures.push(<ColorOption key={key} index={seq} color={options[key].color} />)\n } else if (type === 'people') {\n Pictures.push(<PhotoComponent key={key} index={seq} profile={options[key].profile} />)\n }\n if (seq == 2) {\n let total = selectedOpt.length - 2\n const plural = (total > 1 ? 's' : '')\n\n if (Names[0].length > 8) {\n let new_desc = Names[0].split(' ')\n if (new_desc[0].length > 8) {\n Names.splice(1, 1)\n ++total\n } else {\n Names[0] = new_desc[0]\n }\n }\n\n Names.push(total + ' other' + plural)\n } else {\n let desc = options[key].name\n if (seq == 1) {\n // let new_desc = desc.split(' ');\n // desc = new_desc[0];\n }\n Names.push(desc)\n }\n }\n ++seq\n })\n }\n\n return (\n <Fragment>\n <div style={{display: 'flex'}}>{Pictures}</div>\n <Value>\n {\n (Names.length > 2) ? Names.join(', ').replace(/,(?=[^,]*$)/, ' and ') : Names.join(', ')\n }\n </Value>\n </Fragment>\n )\n}\n\nexport {CustomDropdown, FloatingOptions, Value, OptionGroup}\n\nexport default Dropdown\n","import React from 'react';\nimport styled from 'styled-components';\n\nconst solveSpace = (type=0) => {\n if(!Number.isInteger(type)){\n return '0';\n }\n if(type < 1){\n return '0';\n }\n return type*4;\n}\n\nconst BaseSpace = styled.div`\n padding-top:${props => solveSpace(props.top)}px;\n padding-left:${props => solveSpace(props.left)}px;\n padding-right:${props => solveSpace(props.right)}px;\n padding-bottom:${props => solveSpace(props.bottom)}px;\n display:${props => props.inline ? 'inline-block' : 'block'}\n`;\n\nconst Spacer = ({all,...props}) => {\n\n if(all){\n props.top = all;\n props.left = all;\n props.right = all;\n props.bottom = all;\n }\n return (<BaseSpace {...props} />)\n}\n\nexport default Spacer;\n","import React, {forwardRef} from 'react'\nimport styled from 'styled-components'\n\nimport Theme from '../Theme'\nimport Icon from '../Icons'\nimport Spacer from '../Spacer'\nimport Ex from '../assets/Ex.svg'\nimport Check from '../assets/Check.svg'\n\nimport {RequiredText, SpanError} from '../Common/input'\nimport {Text} from '../Texts'\n\nconst HiddenCheckbox = styled.input.attrs({type:'checkbox'})`\n display: none;\n`;\n\nconst HiddenRadioBox = styled.input.attrs({type:'radio'})`\n display: none;\n`;\n\n\nconst CheckboxContainer = styled.label`\n display: inline-flex;\n align-items: center;\n cursor: pointer;\n justify-content: center;\n cursor:pointer;\n\n &:focus {\n outline:none;\n }\n `;\n\nconst CustomCheckBox = styled.div`\n background: ${Theme.colors.neutrals.white};\n border-radius: ${Theme.defaultRadius};\n border:1px solid ${Theme.colors.neutrals.silver};\n height:${props => props.radio ? '17px' : '16px'};\n width:${props => props.radio ? '17px' : '16px'};\n border-radius:${props => props.radio ? '17px' : '2px'};\n display: inline-flex;\n justify-content: center;\n align-items: center;\n box-sizing:border-box;\n\n svg {\n display:none;\n }\n\n ${HiddenCheckbox}:focus + &, ${HiddenRadioBox}:focus + & {\n border-color:${Theme.colors.secondary};\n box-shadow:0 0 6px ${Theme.colors.action};\n }\n\n ${HiddenCheckbox}:disabled + &, ${HiddenRadioBox}:disabled + & {\n background:${Theme.colors.neutrals.silver};\n border-color:#707070;\n opacity:0.5;\n cursor:default;\n }\n\n ${HiddenCheckbox}:checked + &, ${HiddenRadioBox}:checked + & {\n svg {\n display:block;\n }\n }\n`;\n\nconst Title = styled.h5`\n font-family:\"Huninn\", sans-serif;\n font-weight:normal;\n font-size:16px;\n color: #707070;\n\n >.requiredField {\n color:${Theme.colors.error.text};\n }\n`;\n\nconst Label = styled.span`\n display:inline-block;\n font-size:14px;\n color:#707070;\n margin-left:8px;\n`;\n\nconst NoOptions = styled(Text)`\n color: ${Theme.colors.neutrals.silver};\n`;\n\nconst CheckboxBase = forwardRef(({name, checked=false,disabled,title,label,error,preventClass,...props},ref) => {\n return(\n <div style={{display:'inline-block'}} className={preventClass ? preventClass : ''}>\n {title && <Title>{title}</Title>}\n <CheckboxContainer className={preventClass ? preventClass : ''}>\n <HiddenCheckbox ref={ref} disabled={disabled} name={name} id={`${name}.${props.value}`} {...props} onChange={()=>{}} defaultChecked={checked} />\n <CustomCheckBox className={preventClass ? preventClass : ''}>\n <Icon.Check size='16px' className={preventClass ? preventClass : ''} />\n </CustomCheckBox>\n <Label className={preventClass ? preventClass : ''}>{label}</Label>\n </CheckboxContainer>\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n </div>\n );\n});\n\n\nconst CheckBox = forwardRef(({name,title,options = [],values,error,...props},ref) => {\n\n // if(!options || !options[0] || options[0] == undefined) {\n // return (<div>Provide an valid array</div>);\n // }\n\n return (\n <div style={{verticalAlign:'middle'}} className='formAligner'>\n {title && <Title>{title} {props.Required && <RequiredText />}</Title>}\n {\n options.map((item,index) => {\n let checked = false;\n\n if(props.defaultValues && props.defaultValues.includes(item.value)) checked = true;\n\n return (\n <Spacer key={index} right={3} style={{display: 'inline-block'}} >\n <CheckboxBase\n key={index}\n name={name}\n value={item.value}\n label={item.label}\n {...props}\n ref={ref}\n checked={checked}\n />\n </Spacer>\n )\n })\n }\n {!options || !options.length && <NoOptions>No options available</NoOptions>}\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n </div>\n );\n\n});\n\n\nconst RadioBoxBase = forwardRef(({name,title,label,error,checked=false, ...props},ref) => {\n return(\n <div style={{display:'inline-block'}}>\n {title && <Title>{title} </Title>}\n <CheckboxContainer>\n <HiddenRadioBox ref={ref} name={name} id={`${name}.${props.value}`} defaultChecked={checked} {...props} />\n <CustomCheckBox radio={true}>\n <Icon.Check size='17px' />\n </CustomCheckBox>\n <Label>{label}</Label>\n </CheckboxContainer>\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n </div>\n );\n});\n\nconst RadioBox = forwardRef(({name,title,options = [],values,error,valid,checked,inline=true,...props},ref) => {\n\n // if(!options || !options[0] || options[0] == undefined) {\n // return (<div>Provide an valid array</div>);\n // }\n\n\n return (\n <div style={{verticalAlign:'middle'}} className='formAligner'>\n {title && <Title>{title} {valid && <img src={Check} />} {props.Required && <RequiredText />}</Title> }\n {!inline && title && <Spacer bottom={1} />}\n {\n options.map((item,index) => {\n let checked = false;\n\n if(props.default && props.default == item.value) checked = true;\n\n return (\n <Spacer key={index} right={3} style={{display: (inline ? 'inline-block' : 'block') }} >\n <RadioBoxBase\n key={index}\n name={name}\n label={item.label}\n value={item.value}\n checked={checked}\n {...props}\n ref={ref}\n />\n </Spacer>\n )\n })\n }\n {!options || !options.length && <NoOptions>No options available</NoOptions>}\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n </div>\n );\n\n});\n\nexport {CheckboxBase};\n\nexport {CheckBox, RadioBox}\n","import React, {useState, forwardRef} from 'react';\n\nimport Icon from '../Icons';\n\nimport Input from './index';\n\n\nconst Password = forwardRef(({...props},ref) => {\n const [visible, setVisible] = useState(false);\n\n const ImgStyle = {position:'absolute',top:'8px',right:'8px',height:'25px',cursor:'pointer'}\n\n\n let eyeImg = (<Icon.Eye style={ImgStyle} size='25px' color='#7C98B6' onClick={() => {setVisible(true)}} />);\n let type = 'password';\n if(visible){\n eyeImg = (<Icon.EyeCrossed style={ImgStyle} size='25px' color='#7C98B6' onClick={() => {setVisible(false)}} />);\n type = 'text';\n }\n\n return (\n <div style={{position:'relative',display:'inline-block',verticalAlign:'middle'}} className='formAligner'>\n <Input {...props} type={type} iconAction={eyeImg} ref={ref} />\n </div>\n )\n})\n\nexport default Password;\n","import React, {forwardRef} from 'react'\nimport styled from 'styled-components'\nimport Check from '../assets/Check.svg'\nimport Ex from '../assets/Ex.svg'\n\nimport {Label, RequiredText, SpanHelp, SpanError} from '../Common/input'\n\nimport {InputBase, Frag} from './index'\n\nconst TextAreaBase = styled(InputBase).attrs({as: 'textarea'})`\n display: block;\n height: auto;\n min-height: 80px;\n resize: vertical;\n font-family: inherit;\n`\n\nconst Textarea = forwardRef(\n ({\n name,\n label,\n help,\n invalid,\n valid,\n error,\n rows = 4,\n ...props\n }, ref) => {\n let validationType = null\n let useIcon = false\n\n if (invalid) {\n useIcon = <span className='requiredField'>*</span>\n validationType = 'error'\n }\n\n if (props.Required) useIcon = <RequiredText />\n\n if (error) {\n validationType = 'error'\n }\n\n if (valid) {\n useIcon = (<img src={Check} />)\n validationType = 'valid'\n }\n\n return (\n <Frag size={props.size} className='formAligner'>\n {label && !useIcon && <Label htmlFor={name}>{label}</Label>}\n {label && useIcon && <Label htmlFor={name}>{label} {useIcon}</Label>}\n <TextAreaBase\n name={name}\n id={name}\n rows={rows}\n {...props}\n validation={validationType}\n ref={ref}\n />\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n </Frag>\n )\n })\n\nexport default Textarea\n","import React,{useState, useRef, useEffect,forwardRef} from 'react';\nimport styled from 'styled-components';\nimport Theme from '../Theme';\nimport {Label, InputBase, RequiredText, SpanHelp, SpanError} from '../Common/input'\nimport Icon from '../Icons';\nimport Ex from '../assets/Ex.svg'\nimport Help from '../Common/tooltip'\nimport mergeRefs from '../Common/MergeRefs';\nimport {handleSize} from './index';\nimport {FloatingOptions, Value, OptionGroup} from './select';\n\nconst Frag = styled.div`\n display:inline-block;\n vertical-align: top;\n ${({size}) => handleSize(size) === '100%' && 'width:100%;'}\n`;\n\nconst Select = styled(InputBase)`\n background:${Theme.colors.neutrals.white};\n box-sizing:border-box;\n cursor:pointer;\n position:relative;\n box-sizing: border-box;\n padding:0;\n\n height:auto;\n min-height:40px;\n width:${({size}) => handleSize(size)};\n\n\n &:hover {\n border-color:${Theme.colors.info.border};\n }\n\n &.open,\n &:focus-within {\n border-color:${Theme.colors.secondary};\n box-shadow:0 0 6px ${Theme.colors.action};\n }\n\n &.error {\n border-color:${Theme.colors.error.border};\n }\n\n &.error.open,\n &.error:focus-within {\n box-shadow:0 0 6px ${Theme.colors.error.shadow};\n }\n\n &.valid {\n border-color:${Theme.colors.success.border};\n }\n\n &.valid.open,\n &.valid:focus-within {\n box-shadow:0 0 6px ${Theme.colors.success.shadow};\n }\n`;\n\nconst maxOptions = 5;\n\nconst TagsValues = styled.ul`\n list-style:none;\n padding:0 5px 3px;\n margin:0;\n display:flex;\n flex-wrap: wrap;\n\n &.small {\n max-width:140px;\n\n >li:not(.input) {\n white-space: pre-wrap;\n }\n }\n\n >li:not(.input) {\n border:1px solid #7C98B6;\n color:#516F90;\n background:#EAF0F6;\n padding:5px;\n margin-right:5px;\n border-radius:${Theme.defaultRadius};\n font-size:12px;\n font-weight:500;\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n white-space: nowrap;\n\n\n >svg {\n padding-left:8px;\n padding-right:3px;\n }\n\n }\n\n >li {\n margin-top:5px;\n input {\n display: inline-block;\n height: 30px;\n width:100%;\n min-width:80px;\n color:#333;\n font-size:14px;\n\n &::placeholder {\n color:#ccc;\n }\n }\n\n &.input {\n flex:1;\n }\n\n\n }\n`;\n\nconst SelectHidden = styled.select`\n position: absolute;\n height: 1px;\n width: 1px;\n z-index: -1;\n opacity: 0;\n`;\n\nconst Tag = forwardRef(({\n name = '',\n options,\n error,\n valid,\n help,\n label,\n tooltip,\n canCreate,\n size,\n onChange,\n placeholder,\n visibleOptionsQty,\n openTo,\n ...props\n},ref) => {\n\n if( !options || !options[0] )\n options = [];\n\n const randId = Math.random() * new Date().getTime();\n const safeName = ('tag' + name + randId.toString()).replace(/\\W/gi, '');\n\n const [search, setSearch] = useState('');\n const [open, setOpen] = useState(!!props.autoFocus);\n const [newOptions, setNewOption] = useState([]);\n const [defaultOptions, setDefaultOptions] = useState( options );\n const [selectedOpt, setSelected] = useState([]);\n\n\n const containerRef = useRef();\n const searchRef = useRef();\n const valueRef = useRef();\n const optionsRef = useRef();\n const [anchor, setAnchor] = useState(null);\n\n\n const isSelected = (value) => selectedOpt.some(key => key == value);\n\n let filter = React.useMemo(() => {\n return options.map((item,key)=>{\n if(isSelected(key))\n return null;\n\n if(item.name.toLowerCase().indexOf(search.toLowerCase()) === -1)\n return null;\n\n return key;\n }).filter(e => e != null);\n }, [options, selectedOpt, search]);\n\n\n if ( JSON.stringify(options) !== JSON.stringify(defaultOptions) )\n setDefaultOptions(options);\n\n options = defaultOptions.concat(newOptions);\n\n let timer;\n const handleChange = e => {\n clearTimeout(timer);\n const s = e.target.value;\n timer = setTimeout(() => setSearch(s), 150);\n }\n\n const handleSelect = (key) => {\n let selected = props.singleOption ? [key] : [...selectedOpt,key];\n\n setSelected( selected );\n\n searchRef.current.value = '';\n setSearch('');\n\n if ( typeof onChange === 'function' ) {\n let values = options.filter( (opt, k) => selected.indexOf( k ) !== -1 );\n onChange( values );\n }\n };\n\n const handleRemove = (index) => {\n if( !selectedOpt.length )\n return;\n\n selectedOpt.splice(selectedOpt.indexOf(index),1);\n let selected = [...selectedOpt];\n setSelected(selected);\n setTimeout(()=>{\n searchRef.current.focus();\n });\n\n if ( typeof onChange === 'function' ) {\n let values = options.filter( (opt, k) => selected.indexOf( k ) !== -1 );\n onChange( values );\n }\n }\n\n const handleClick = e => {\n let elm = e.target;\n\n if (containerRef.current.contains(elm) || optionsRef.current?.contains(elm))\n return;\n\n setOpen(false);\n };\n\n const handleFocus = e => {\n if (e.target.value)\n handleChange(e);\n\n setOpen(true);\n }\n\n const handleBlur = e => {\n if (document.activeElement !== document.body && !containerRef.current.contains(document.activeElement))\n setOpen(false);\n }\n\n const handleKey = e =>{\n let key = e.key.toLowerCase();\n\n switch ( key ) {\n case 'escape':\n setOpen(false);\n return;\n\n case 'backspace':\n return !searchRef.current.value.length && selectedOpt.length && handleRemove(selectedOpt[selectedOpt.length-1]);\n\n case 'arrowup':\n case 'arrowdown':\n if ( !open )\n setOpen(true);\n\n let list = document.querySelectorAll( `#${safeName}-options li[value]` );\n\n if ( !list || !list.length )\n return;\n\n let arr = Array.from(list);\n let activeIndex = arr.findIndex(elm => elm.classList.contains('active') );\n\n if ( activeIndex < 0 )\n return arr[ key === 'arrowdown' ? 0 : arr.length - 1 ].classList.add( 'active' );\n\n let active = arr[activeIndex];\n active.classList.remove( 'active' );\n\n let toBeActive = ( key === 'arrowdown' )\n ? ( arr[activeIndex + 1] )\n ? arr[activeIndex + 1]\n : arr[0]\n : ( arr[activeIndex - 1] )\n ? arr[activeIndex - 1]\n : arr[arr.length - 1]\n ;\n\n toBeActive.classList.add('active');\n toBeActive.scrollIntoView( { block: 'center' } );\n\n case 'arrowright':\n case 'arrowleft':\n return;\n\n case 'tab':\n if (!!!searchRef.current.value)\n return setTimeout(()=>!containerRef.current.contains(document.activeElement) && setOpen(false), 5);\n\n case 'enter':\n let option = document.querySelector( `#${safeName}-options .active` );\n if ( option ) {\n e.preventDefault();\n option.click();\n setTimeout(() => searchRef.current.focus(), 10 );\n }\n return;\n\n default:\n setOpen(true);\n return;\n }\n }\n\n const addNewOption = (newObj) => {\n newObj = {\n ...newObj,\n value: newObj.name,\n new: true\n };\n\n setNewOption([...newOptions,newObj]);\n options.push(newObj);\n\n handleSelect(options.length - 1);\n }\n\n useEffect(()=>{\n\n let selected = options.map(function (item, key) {\n if (item.selected) return key;\n }).filter(function (e) {\n return e != null;\n });\n\n if (props.defaultValues && options.length > 0) {\n props.defaultValues.map( v => {\n let i = options.findIndex( item => item.value.toString() === v.toString() );\n if ( i !== -1 )\n selected.push( i );\n });\n }\n\n if ( valueRef.current && valueRef.current.value ) {\n let fromHookFrom = Array.from( valueRef.current.children )\n .map( ( opt, k ) => opt.selected == true ? k : false )\n .filter( v => v !== false );\n\n selected = selected.concat( fromHookFrom );\n }\n\n setSelected( selected );\n\n },[defaultOptions]);\n\n useEffect(()=>{\n if ( !valueRef.current )\n return;\n\n Array.from(valueRef.current.children)\n .map((opt, k) => opt.selected = selectedOpt.indexOf(k) !== -1);\n valueRef.current.dispatchEvent(new Event('blur'));\n }, [selectedOpt]);\n\n useEffect(() => {\n document.addEventListener(\"mousedown\", handleClick);\n\n return () => {\n document.removeEventListener(\"mousedown\", handleClick);\n };\n }, []);\n\n // integrate hook-form reset\n useEffect(()=>{\n const keys = Array.from(valueRef.current.children)\n .map((opt, k) => opt.selected ? k : false)\n .filter(k => k !== false);\n\n if ( selectedOpt.length !== keys.length\n || !selectedOpt.every((value, index) => value === keys[index]) ) {\n setSelected(keys);\n }\n });\n\n return(\n <Frag ref={containerRef} size={size}>\n {label && <Label htmlFor={name}>{label} {tooltip && <Help text={tooltip}/>} {props.Required && <RequiredText />}</Label>}\n <Select as='div' ref={setAnchor} size={size} className={[open && 'open', error && 'error', valid && 'valid', 'tagEventPrevent']} onClick={()=>{searchRef.current.focus()}}>\n <TagsValues className={size}>\n {selectedOpt.map((key)=> {\n if(options[key]) { return (<li key={key}>{options[key].name} <Icon.TimesNarrow size='8px' color='#516F90' onClick={() => {handleRemove(key)}}/></li>)}\n })}\n <li className='input'>\n <input\n type='text'\n placeholder={placeholder}\n ref={searchRef}\n onChange={handleChange}\n onKeyDown={handleKey}\n autoFocus={!!props.autoFocus}\n onFocus={handleFocus}\n onBlur={handleBlur}\n />\n </li>\n </TagsValues>\n {open &&\n <TagOptions\n anchor={anchor}\n listRef={optionsRef}\n name={safeName}\n filter={filter}\n handleSelect={handleSelect}\n options={options}\n searchRef={searchRef}\n addNewOption={addNewOption}\n canCreate={canCreate}\n visibleOptionsQty={visibleOptionsQty}\n openTo={openTo}\n />\n }\n </Select>\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n <SelectHidden name={name} multiple ref={mergeRefs([valueRef, ref])} tabIndex={-1}>\n {options.map((opt, key)=>(\n <option value={opt.value} key={key}>{opt.name}</option>\n ))}\n </SelectHidden>\n </Frag>\n );\n})\n\nconst TagOptions = ({anchor,listRef,name,filter,handleSelect,options,searchRef,addNewOption,canCreate,visibleOptionsQty,openTo}) => {\n let CreateOption;\n let underscored;\n if(searchRef.current && searchRef.current.value.length > 0){\n if ( canCreate && !options.find(opt => opt.name === searchRef.current.value))\n CreateOption = (<li className='active' onClick={()=>{addNewOption({name:searchRef.current?.value})}} value={searchRef.current.value}><Value option>Create option \"<u className='tagEventPrevent'>{searchRef.current.value}</u>\"</Value></li>);\n\n const searchToUnderscore = searchRef.current ? searchRef.current.value.replaceAll('(','\\\\(').replaceAll(')','\\\\)') : '';\n underscored = new RegExp('('+searchToUnderscore+')','giu');\n }\n\n let noDataOption = '';\n if (!options.length || (filter.filter(i => options[i].value !== undefined).length < 1 && !CreateOption)) {\n let msg = searchRef.current && searchRef.current.value.length < 1\n ? 'No options left'\n : 'No match for ';\n noDataOption = (\n <li className='tagEventPrevent' style={{paddingRight: '8px'}}>\n <span>{msg} <u>{searchRef.current?.value}</u></span>\n </li>\n );\n }\n\n return (\n <FloatingOptions ref={listRef} anchor={anchor} id={`${name}-options`} visibleOptionsQty={visibleOptionsQty || maxOptions} openTo={openTo}>\n {\n options.length > 0 ? filter.map((key, index)=> {\n if (options[key].value === undefined)\n return !noDataOption ? (\n <OptionGroup\n key={key}\n className='tagEventPrevent'\n >\n {options[key].name}\n </OptionGroup>\n ) : null;\n else\n return(\n <li\n className={`tagEventPrevent ${index === 0 ? 'active' : ''}`}\n value={options[key].value}\n key={key}\n onClick={() => {\n handleSelect(key)\n }}>\n <Value option style={{marginRight: 4}}>\n {underscored\n ? options[key].name.split(underscored).map((part, i) => i % 2 ? <u key={i}>{part}</u> : part)\n : options[key].name}\n </Value>\n </li>\n );\n }) : null\n }\n {CreateOption}\n {noDataOption}\n </FloatingOptions>\n );\n}\n\n\nexport default Tag;\n","const hexToRgb =(hex) => {\n const shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\n hex = hex.replace(shorthandRegex, function(m, r, g, b) {\n return r + r + g + g + b + b;\n });\n\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16)\n } : null;\n}\n\nconst luminance = ({r, g, b}) => {\n const a = [r, g, b].map(function (v) {\n v /= 255;\n return v <= 0.03928\n ? v / 12.92\n : Math.pow( (v + 0.055) / 1.055, 2.4 );\n });\n return a[0] * 0.2126 + a[1] * 0.7152 + a[2] * 0.0722;\n}\n\n\nconst calculateContrast = (background='#0000000',text='#fffffff') => {\n\n const color1luminance = luminance(hexToRgb(background));\n const color2luminance = luminance(hexToRgb(text));\n\n const ratio = color1luminance > color2luminance\n ? ((color2luminance + 0.05) / (color1luminance + 0.05))\n : ((color1luminance + 0.05) / (color2luminance + 0.05));\n\n return ratio < (1/4.5);\n}\n\nexport default calculateContrast;\n","import React, {useState, forwardRef, useEffect} from 'react'\nimport styled from 'styled-components'\nimport {Label, SpanHelp, SpanError} from '../Common/input'\nimport Help from '../Common/tooltip'\nimport Icon from '../Icons'\nimport Ex from '../assets/Ex.svg'\n\nimport Theme from '../Theme'\n\nimport calculateContrast from '../Common/ColorHelper'\n\nconst Frag = styled.div`\n display:inline-block;\n vertical-align: top;\n`\n\nconst Field = styled.div`\n position:relative;\n`\n\nconst WraperBucket = styled.div`\n height:40px;\n width:40px;\n //padding: 4px;\n border-radius: ${Theme.defaultRadius};\n border-color: ${Theme.colors.neutrals.silver};\n border-width: 1px;\n border-style: solid;\n cursor:pointer;\n display:flex;\n justify-content:center;\n align-items:center;\n box-sizing:border-box;\n\n &.hover,\n &:focus {\n box-shadow:0px 0px 6px ${Theme.colors.action};\n border:1px solid ${Theme.colors.secondary};\n outline:none;\n }\n`\n\nconst ColorIndicator = styled.div`\n background-color: ${({background}) => background};\n border-radius: ${Theme.defaultRadius};\n flex-grow: 1;\n width: stretch;\n height: stretch;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 4px;\n`\n\nconst ColorBox = styled.ul`\n background:#fff;\n border-radius:${Theme.defaultRadius};\n padding:5px;\n list-style:none;\n margin:0;\n display: grid;\n grid-template-columns: 24px 24px 24px 24px 24px 24px 24px 24px;\n position:absolute;\n left:48px;\n top:0;\n z-index:10;\n box-shadow: 0px 3px 6px ${Theme.colors.neutrals.gray}19;\n\n > li {\n width:24px;\n height:24px;\n cursor:pointer;\n position: relative;\n\n &.selected {\n z-index: 1;\n box-shadow: 0 0 0 2px ${Theme.colors.secondary};\n border-radius: ${Theme.defaultRadius};\n }\n\n &:hover {\n z-index: 2;\n box-shadow: 0 0 0 2px ${Theme.colors.neutrals.gray};\n border-radius: ${Theme.defaultRadius};\n }\n }\n`\n\nconst SelectHidden = styled.select`\n position: absolute;\n height: 1px;\n width: 1px;\n z-index: -1;\n opacity: 0;\n`\n\nconst InputColor = forwardRef(({name, tooltip, value, help, error, label, ...props}, ref) => {\n const [open, setOpen] = useState(false)\n\n const colors = [\n '#7C98B6', '#00A4BD', '#00BDA5', '#F5C26B', '#F2545B', '#f03063', '#BD37A4', '#7B87D4',\n '#516F90', '#0091AE', '#00A38D', '#DBAE60', '#D94C53', '#cc2957', '#853E78', '#5A65B0',\n '#CBD6E2', '#7FD1DE', '#7FDED2', '#FAE0B5', '#F8A9AD', '#f59fb7', '#E3AFD9', '#B4BBE8',\n '#EAF0F6', '#E5F5F8', '#E5F8F6', '#FEF8F0', '#FDEDEE', '#fce3eb', '#F7E4F4', '#F0F1FA'\n ]\n\n let defaultState = []\n\n if (value) {\n const isBlack = calculateContrast(value, '#333333')\n const textColor = (isBlack) ? '#333333' : '#ffffff'\n defaultState = [colors.filter(color => color == value), textColor]\n }\n\n const [selectedColor, setSelectedColor] = useState(defaultState)\n\n useEffect(() => {\n document.addEventListener('mousedown', handleClick)\n return () => {\n document.removeEventListener('mousedown', handleClick)\n }\n }, [])\n\n const handleClick = e => {\n if (e.target.classList.contains('colorEventPrevent')) { return }\n\n setOpen(false)\n }\n\n const handleSelect = color => {\n const isBlack = calculateContrast(color, '#333333')\n const textColor = (isBlack) ? '#333333' : '#ffffff'\n setSelectedColor([color, textColor])\n setOpen(false)\n }\n\n return (\n <Frag>\n {label && <Label htmlFor={name}>{label} {tooltip && <Help text={tooltip} />}</Label>}\n <Field>\n <WraperBucket tabIndex={1} onClick={() => setOpen(!open)} className={['colorEventPrevent', open && 'hover']}>\n <ColorIndicator background={selectedColor[0] && selectedColor[0]}>\n <Icon.Bucket size='28px' className='colorEventPrevent' color={selectedColor[1] ? selectedColor[1] : '#333'} />\n </ColorIndicator>\n </WraperBucket>\n {open &&\n <ColorBox className='colorEventPrevent'>\n {colors.map((item, key) => (\n <li\n key={key}\n className={'colorEventPrevent' + (item === selectedColor[0] ? ' selected' : '')}\n style={{background: item}}\n onClick={() => handleSelect(item)}\n />\n ))}\n </ColorBox>\n }\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n\n <SelectHidden name={name} multiple ref={ref} value={selectedColor} onChange={() => {}}>\n {selectedColor.map((item, key) => (\n <option value={item} key={key} />\n ))}\n </SelectHidden>\n </Field>\n </Frag>\n\n )\n})\n\nexport default InputColor\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] =\n GeneratorFunction.displayName = \"GeneratorFunction\";\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n prototype[method] = function(arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n Gp[toStringTagSymbol] = \"Generator\";\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","module.exports = require(\"regenerator-runtime\");\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nmodule.exports = _asyncToGenerator;","import React, {forwardRef} from 'react'\nimport styled from 'styled-components'\nimport Theme from '../Theme'\n\nconst defaultShadow = (color) => {\n return `0px 0px 6px ${color}`\n}\n\nconst Base = styled.button`\n font-family: ${Theme.font.main};\n font-weight:bold;\n border-radius:${Theme.defaultRadius};\n cursor:pointer;\n display:inline-flex;\n background:${Theme.colors.info.bg}\n color:${Theme.colors.secondary}\n height:40px;\n line-height:40px;\n padding:0 16px;\n font-size: ${Theme.font.medium.size};\n align-items: center;\n gap: 4px;\n white-space: nowrap;\n justify-content: center;\n text-align: center;\n\n > * {\n border-color: ${Theme.colors.info.shadow};\n }\n\n svg path {\n fill: currentColor;\n }\n\n &:hover,\n &.hover {\n background:${Theme.colors.info.shadow};\n }\n\n &:focus,\n &.focus {\n background:${Theme.colors.info.bg};\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n }\n\n &:active,\n &.active {\n background:${Theme.colors.info.shadow};\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n }\n\n &.selected {\n outline: 1px solid ${Theme.colors.secondary};\n position: relative;\n z-index: 1;\n }\n\n &[disabled] {\n opacity: .5;\n cursor: not-allowed;\n }\n`\n\nconst Primary = `\n background:${Theme.form.button.primary.bg};\n color:${Theme.colors.neutrals.white};\n\n > * {\n border-color: ${Theme.colors.neutrals.white};\n }\n\n svg path {\n fill: ${Theme.colors.neutrals.white};\n }\n\n &:hover,\n &.hover {\n background:${Theme.form.button.primary.hover}\n }\n\n &:focus,\n &.focus {\n background:${Theme.form.button.primary.bg};\n box-shadow:${defaultShadow(Theme.form.button.primary.bg)};\n }\n\n &:active,\n &.active {\n background:${Theme.form.button.primary.hover}\n box-shadow:${defaultShadow(Theme.form.button.primary.bg)};\n }\n\n &.selected {\n border: 1px solid ${Theme.colors.neutrals.white};\n }\n`\n\nconst Secondary = `\n background:${Theme.form.button.secondary.bg};\n color:${Theme.colors.neutrals.white};\n\n > * {\n border-color: ${Theme.colors.neutrals.white};\n }\n\n svg path {\n fill: ${Theme.colors.neutrals.white};\n }\n\n &:hover {\n background:${Theme.form.button.secondary.hover}\n }\n\n &:focus {\n background:${Theme.form.button.secondary.bg};\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n }\n\n &:active,\n &.active {\n background:${Theme.form.button.secondary.hover}\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n }\n\n &.selected {\n border: 1px solid ${Theme.colors.neutrals.white};\n }\n`\n\nconst Cancel = `\n background:transparent;\n color:${Theme.form.button.secondary.bg};\n\n > * {\n border-color: ${Theme.colors.info.shadow};\n }\n\n svg path {\n fill: ${Theme.colors.secondary};\n }\n\n &:hover {\n background:transparent;\n text-decoration:underline;\n }\n\n &:focus {\n background:${Theme.colors.neutrals.white};\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n }\n\n &:active,\n &.active {\n background:${Theme.colors.neutrals.white};\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n text-decoration:underline;\n }\n\n &.selected {\n border: 1px solid ${Theme.form.button.secondary.bg};\n }\n`\n\nconst Delete = `\n background:${Theme.colors.neutrals.white};\n color:${Theme.colors.error.text};\n border:1px solid ${Theme.colors.error.bg};\n\n > * {\n border-color: ${Theme.colors.error.shadow};\n }\n\n svg path {\n fill: ${Theme.colors.error.text};\n }\n\n &:hover {\n border-color:${Theme.colors.error.border};\n background:${Theme.colors.error.bg};\n }\n\n &:focus {\n background:${Theme.colors.neutrals.white};\n border-color:${Theme.colors.error.border};\n box-shadow:${defaultShadow(Theme.colors.error.shadow)};\n }\n\n &:active,\n &.active {\n background:${Theme.colors.error.bg};\n border-color:${Theme.colors.error.border};\n box-shadow:${defaultShadow(Theme.colors.error.shadow)};\n }\n\n &.selected {\n border: 1px solid ${Theme.colors.error.border};\n }\n`\n\nconst Small = `\n height:28px;\n line-height:28px;\n font-size:${Theme.font.small.size};\n padding:0 12px;\n`\n\nconst Big = `\n height:60px;\n line-height:60px;\n font-size:${Theme.font.big.size};\n padding:0 20px;\n`\n\nconst Exportedd = styled(Base)`\n ${props => props.typeStyle === 'primary' && Primary}\n ${props => props.typeStyle === 'secondary' && Secondary}\n ${props => props.typeStyle === 'cancel' && Cancel}\n ${props => props.typeStyle === 'delete' && Delete}\n ${props => props.size === 'small' && Small}\n ${props => props.size === 'big' && Big}\n`\n\nconst Exported = ({size, type, children, Type, ...props}) => {\n return (\n <Exportedd\n type={\n Type || (type === 'cancel'\n ? 'button'\n : undefined)\n }\n size={size}\n typeStyle={type}\n children={children}\n {...props}\n />\n )\n}\n\nexport default Exported\nexport {Base, Primary, Secondary, Cancel, Delete, Big, Small}\n","import React, {forwardRef, useEffect, useRef, useState} from 'react'\nimport styled from 'styled-components'\nimport {InputBase, Label, SpanError, SpanHelp} from '../Common/input'\nimport Icon from '../Icons'\nimport Help from '../Common/tooltip'\nimport Theme from '../Theme'\nimport {Text} from '../Texts'\nimport Ex from '../assets/Ex.svg'\nimport mergeRefs from '../Common/MergeRefs'\nimport Button from '../Buttons';\n\nconst Frag = styled.div`\n display:inline-block;\n vertical-align: top;\n`;\n\nconst Wrapper = styled.label`\n position:relative;\n cursor:pointer;\n\n &:hover {\n .inputFile {\n background:${Theme.colors.info.bg};;\n }\n }\n\n &:focus {\n outline:none;\n }\n\n &:focus-within {\n .inputFile {\n border:1px solid ${Theme.colors.secondary};\n box-shadow: 0px 0px 6px ${Theme.colors.action};\n }\n\n .InputFileProfile {\n border:1px solid ${Theme.colors.secondary};\n }\n }\n\n &.active {\n .inputFile {\n border:1px solid ${Theme.colors.success.border};\n box-shadow: none;\n }\n\n .InputFileProfile {\n border:1px solid ${Theme.colors.success.border};\n }\n }\n\n &.error {\n .inputFile {\n border:1px solid ${Theme.colors.error.border};\n box-shadow: none;\n }\n\n .InputFileProfile {\n border:1px solid ${Theme.colors.error.border};\n }\n }\n`;\n\nconst Input = styled(InputBase)`\n box-sizing:border-box;\n background:#FAFAFA;\n width:140px;\n border-radius: 20px 2px 2px 20px;\n border:1px solid transparent;\n\n &:hover {\n border:none;\n }\n\n >span {\n text-align: center;\n display: block;\n margin-left: 32px;\n color:#707070;\n font-size:14px;\n font-weight:400;\n\n text-overflow: ellipsis;\n height: 16px;\n white-space: nowrap;\n overflow: hidden;\n }\n`;\n\nconst Profile = styled.div`\n height:38px;\n width:38px;\n border-radius:38px;\n background:#FAFAFA;\n border:1px solid ${Theme.colors.neutrals.silver};\n position:absolute;\n z-index:1;\n top:0;\n display: flex;\n justify-content: center;\n align-items: flex-end;\n\n img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: 38px;\n }\n`;\n\nconst HiddenInput = styled.input`\n width: 0.1px;\n height: 0.1px;\n opacity: 0;\n overflow: hidden;\n position: absolute;\n z-index: -1;\n`;\n\nconst Uploader = forwardRef(({name,label,tooltip,help,error, placeholder,...props},ref) => {\n const [picture, setPicture] = useState('');\n const acceptedTypes = ['image/jpeg','image/png'];\n\n placeholder = placeholder || <Icon.Person color={Theme.colors.neutrals.silver} size='34px' />;\n\n const handleFile = e => {\n const file = (e.target.files ? e.target.files[0] : null);\n if(file){\n if(acceptedTypes.some(v=>v==file.type)){\n setPicture(file)\n }else{\n setPicture(false)\n e.target.value = '';\n }\n }\n }\n\n const Check = <Icon.Check color={Theme.colors.success.border} size='17px' style={{position:'relative',top:'3px'}} />\n\n return (\n <Frag>\n {label && <Label htmlFor={name}>{label} {picture.type && Check} {tooltip && <Help text={tooltip}/>}</Label>}\n <Wrapper className={[picture.type && 'active', picture === false && 'error', error && 'error']}>\n <Profile className='InputFileProfile'>\n {picture == false || picture.length < 1 ? placeholder : <img src={URL.createObjectURL(picture)} /> }\n </Profile>\n <Input as='div' className='inputFile'>\n {!picture || !picture.length ? (\n <span>Select file</span>\n ) : (\n <span>{picture.name}</span>\n )}\n </Input>\n <HiddenInput type='file' name={name} ref={ref} onFocus={()=>{}} onChange={handleFile} accept=\".jpg,.jpeg,.JPG,.JPEG,.png,.PNG\" />\n </Wrapper>\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n {picture === false && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> Only images are accepted</SpanError>}\n </Frag>\n );\n})\n\nexport default Uploader;\n\n\nconst imageToBase64 = file => {\n const reader = new FileReader();\n\n return new Promise(resolve => {\n reader.onload = ev => resolve({\n type: 'image',\n src: ev.target.result\n });\n reader.readAsDataURL(file);\n });\n}\n\nconst documentFile = file => {\n return new Promise(resolve => resolve({\n type: 'doc',\n src: <><Icon.Document/><Text>{file.name}</Text></>\n }));\n}\n\nconst genericFile = file => {\n return new Promise(resolve => resolve({\n type: 'file',\n src: <><Icon.Document/><Text>{file.name}</Text></>\n }));\n}\n\nconst processFileList = async fileList => {\n const promises = Array.from(fileList).map(file => {\n if (file.type.match('image/'))\n return imageToBase64(file);\n\n if (['text/csv'].includes(file.type))\n return documentFile(file);\n\n return genericFile(file);\n });\n\n return await Promise.all(promises);\n}\n\nconst DropUploaderList = styled.div`\n display: inline-flex;\n`;\n\nconst DropUploaderPreview = styled.div`\n box-sizing: border-box;\n width: 92px;\n height: 92px;\n padding: 4px;\n border-radius: ${Theme.defaultRadius};\n border: 1px solid ${Theme.colors.neutrals.silver};\n background-color: ${Theme.colors.extra.whiteSmoke};\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n font-size: ${Theme.font.extraSmall.size};\n font-family: ${Theme.font.main};\n color: ${Theme.colors.neutrals.silver};\n text-align: center;\n word-break: break-word;\n overflow: hidden;\n\n &::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 0;\n background-size: cover;\n background-position: center;\n background-image: url(${props => typeof props.preview === 'string' && props.preview});\n }\n\n + div,\n + label {\n margin-left: 8px;\n }\n\n button {\n position: absolute;\n z-index: 1;\n top: 4px;\n right: 4px;\n padding: 4px;\n height: auto;\n line-height: 0;\n }\n\n label& {\n cursor: pointer;\n border-style: dashed;\n\n &:hover,\n &.highlight {\n background-color: ${Theme.colors.info.bg};\n }\n\n &:active, {\n &.highlight {\n border-color: ${Theme.colors.secondary};\n box-shadow: 0 0 6px ${Theme.colors.secondary};\n }\n }\n`;\n\nexport const DropUploader = forwardRef(({\n name,\n label,\n multiple = true,\n accept = '*',\n ...props\n}, ref) => {\n\n let [files, setFiles] = useState([]);\n const inputRef = useRef();\n const dropRef = useRef();\n\n const handleFileChanges = async () => {\n const inputs = await processFileList(inputRef.current.files);\n setFiles(inputs);\n }\n\n const handleDrop = e => {\n inputRef.current.files = e.dataTransfer.files;\n handleFileChanges();\n }\n\n const dropFile = k => {\n let nFiles = Array.from(inputRef.current.files);\n const deleted = nFiles.splice(k, 1);\n inputRef.current.files = FileListItem(nFiles);\n handleFileChanges()\n if(props.onDelete) props.onDelete(k,deleted);\n }\n\n const expand = file => {\n let w = window.open(file.src, '_blank', `width=${window.outerWidth * .9},height=${window.outerHeight * .9},scrollbars=1`);\n\n if (!file.src.match(/^http/i)) {\n w.document.write(`\n <img src=\"${file.src}\"/>\n `);\n }\n };\n\n const download = async file => {\n let blob = await fetch(file.src).then(res => res.blob(), rej => false);\n\n if (!blob)\n return window.open(file.src);\n\n const anchor = document.createElement('a');\n anchor.href = window.URL.createObjectURL(blob);\n anchor.download = file.src.split('/').pop();\n anchor.click();\n }\n\n const addHighlight = e => dropRef.current.classList.add('highlight');\n const removeHighlight = e => dropRef.current.classList.remove('highlight');\n\n const preventDefaults = e => {\n e.preventDefault();\n e.stopPropagation();\n }\n\n const addListeners = () => {\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach(e => {\n dropRef.current.addEventListener(e, preventDefaults, false);\n });\n\n ['dragenter', 'dragover'].forEach(e => {\n dropRef.current.addEventListener(e, addHighlight, false);\n });\n\n ['dragleave', 'drop'].forEach(e => {\n dropRef.current.addEventListener(e, removeHighlight, false);\n });\n\n dropRef.current.addEventListener('drop', handleDrop);\n }\n\n function FileListItem(a) {\n a = [].slice.call(Array.isArray(a) ? a : arguments)\n for (var c, b = c = a.length, d = !0; b-- && d;) d = a[b] instanceof File\n if (!d) throw new TypeError(\"expected argument to FileList is File or array of File objects\")\n for (b = (new ClipboardEvent(\"\")).clipboardData || new DataTransfer; c--;) b.items.add(a[c])\n return b.files\n }\n\n const removeListeners = node => {\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach(e => {\n node.removeEventListener(e, preventDefaults);\n node.removeEventListener(e, addHighlight);\n node.removeEventListener(e, removeHighlight);\n node.removeEventListener(e, handleDrop);\n });\n }\n\n useEffect(() => {\n const node = dropRef.current;\n addListeners();\n\n return () => removeListeners(node);\n }, [dropRef.current]);\n\n // display placeholder\n if (Array.isArray(props.placeholder)) {\n let validPlaceholder = props.placeholder.filter(f => {\n return typeof f.type === 'string'\n && typeof f.src === 'string';\n })\n\n files = validPlaceholder.concat(files);\n }\n\n return (\n <Frag>\n {label && <Label>{label}</Label>}\n <HiddenInput\n type={'file'}\n name={name}\n id={`drop-uploader-${name}`}\n ref={mergeRefs([inputRef, ref])}\n accept={accept}\n multiple={multiple}\n onChange={handleFileChanges}\n onFocus={addHighlight}\n onBlur={removeHighlight}\n />\n <DropUploaderList>\n {files.map((file, k) =>\n <DropUploaderPreview\n key={k}\n preview={file.src}\n >\n\n <Button type='delete' Type='button' onClick={()=>dropFile(k)} style={{top:'unset',bottom:'4px'}}>\n <Icon.Times size='16px' color={Theme.colors.error.text}/>\n </Button>\n {file.type === 'image' && (\n <Button Type='button' onClick={()=>expand(file)}>\n <Icon.Expand size='16px'/>\n </Button>\n )}\n {file.type !== 'image' && typeof file.src === 'string' && (\n <>\n <Button Type='button' title={`Download ${file.src}`} onClick={()=>download(file)}>\n <Icon.Download size='16px'/>\n </Button>\n <Icon.Document/>\n <Text>{file.src.split('/').pop().substr(-20, 20)}</Text>\n </>\n )}\n {file.type !== 'image' && typeof file.src !== 'string' && file.src}\n </DropUploaderPreview>\n )}\n <DropUploaderPreview\n as={'label'}\n htmlFor={`drop-uploader-${name}`}\n ref={dropRef}\n >\n <span>Drop or select</span>\n <Icon.Upload color={Theme.colors.neutrals.silver} size='24px'/>\n <span>to upload</span>\n </DropUploaderPreview>\n </DropUploaderList>\n </Frag>\n )\n});\n","import React, {forwardRef, useEffect, useState} from 'react'\nimport styled from 'styled-components'\nimport {Label, SpanHelp} from '../Common/input'\nimport Help from '../Common/tooltip'\nimport Theme from '../Theme'\n\nconst Frag = styled.div`\n display:inline-block;\n vertical-align: top;\n`\n\nconst CheckBoxWrapper = styled.div`\n position: relative;\n display: flex;\n align-items: center;\n ${props => props.hasLabel && 'height: 40px;'}\n\n &:focus {\n outline: none;\n }\n`\n\nconst CheckBoxLabel = styled.label`\n width: 36px;\n height: 20px;\n border-radius: 100px;\n background: ${Theme.colors.neutrals.white};\n cursor: pointer;\n border: 1px solid ${Theme.colors.info.border};\n box-sizing: border-box;\n transition: 0.2s;\n flex-shrink: 0;\n\n &:focus {\n box-shadow: 0px 0px 6px ${Theme.colors.action};\n border: 1px solid ${Theme.colors.secondary};\n outline: none;\n }\n\n &::after {\n content: \"\";\n display: block;\n border-radius: 100%;\n width: 12px;\n height: 12px;\n margin: 3px;\n background: ${Theme.colors.info.border};\n transition: 0.2s;\n }\n`\n\nconst CheckBox = styled.input`\n width: 0;\n height: 0;\n margin: 0;\n visibility: hidden;\n pointer-events: none;\n\n &:checked + ${CheckBoxLabel} {\n background: ${Theme.colors.info.text};\n border: 1px solid ${Theme.colors.info.border};\n\n &::after {\n background:${Theme.colors.neutrals.white};\n margin-left: 19px;\n }\n }\n`\n\nconst ToggleLabel = styled.label`\n display: inline-block;\n color: ${Theme.colors.neutrals.medium};\n font-size: ${Theme.font.medium.size};\n line-height: ${Theme.font.medium.lineHeight};\n font-weight: normal;\n font-family: \"Huninn\", sans-serif;\n vertical-align: top;\n padding-left: 8px;\n outline: none;\n cursor: pointer;\n`\n\nconst Toggle = forwardRef(({\n name,\n label,\n tooltip,\n help,\n offText,\n onText,\n singleText,\n on = false,\n onChange,\n ...props\n}, ref) => {\n const [value, setValue] = useState(on)\n\n let textOn, textOff\n\n if (onText) textOn = onText\n if (offText) textOff = offText\n\n if (singleText) {\n textOff = singleText\n textOn = singleText\n }\n\n useEffect(() => {\n setValue(on)\n }, [on])\n\n const range = Math.floor(Math.random() * 2000)\n\n const handleChange = e => {\n setValue(e.target.checked)\n if (onChange) onChange(e)\n }\n\n const id = `${name}_${range}`\n\n return (\n <Frag>\n {label && <Label htmlFor={id}>{label} {tooltip && <Help text={tooltip} />}</Label>}\n <CheckBoxWrapper hasLabel={!!label}>\n <CheckBox\n name={name}\n id={id}\n type='checkbox'\n textOn={textOn}\n ref={ref}\n checked={value && true}\n onChange={handleChange}\n />\n <CheckBoxLabel\n tabIndex={1}\n htmlFor={id}\n // big={big}\n />\n <ToggleLabel htmlFor={id} tabIndex={-1}>\n {singleText || (value\n ? textOn\n : textOff)\n }\n </ToggleLabel>\n </CheckBoxWrapper>\n {help && <SpanHelp>{help}</SpanHelp>}\n </Frag>\n )\n})\n\nexport default Toggle\n","import React, {useState, forwardRef, useRef, useEffect} from 'react'\nimport styled from 'styled-components';\nimport Icon from '../Icons/index';\nimport Theme from '../Theme'\nimport Input from './index';\nimport {Frag, Options, OptionGroup} from '../Common/input'\nimport mergeRefs from '../Common/MergeRefs';\n\n\nconst padZero = n => n < 10 ? '0' + n : n;\n\nconst pattern = /^(1[012]|[1-9]):([0-5][0-9]) ?(am|pm)$/i;\n\nDate.prototype.stdTimezoneOffset = function() {\n const jan = new Date(this.getFullYear(), 0, 1);\n const jul = new Date(this.getFullYear(), 6, 1);\n return Math.max(jan.getTimezoneOffset(), jul.getTimezoneOffset());\n}\n\nDate.prototype.dst = function() {\n return this.getTimezoneOffset() < this.stdTimezoneOffset();\n}\n\nconst today = new Date();\n// UTC conversion\nlet offset = today.getTimezoneOffset();\n/*if(!today.dst()){\n if(offset > 0){\n offset -= 60;\n }else{\n offset += 60;\n }\n}*/\nconst offsetHours = Math.floor( offset / 60 );\nconst offsetMinutes = offset % 60;\nconst toUTC = ({hours, minutes}) => {\n let m = minutes + offsetMinutes;\n if ( m < 0 )\n m += 60;\n\n let h = hours + offsetHours;\n h = h > 23\n ? h - 24\n : h < 0\n ? 24 + h\n : h;\n\n return `${padZero(h)}:${padZero(m)}`;\n}\n\nconst fromUTC = ({hours, minutes}) => {\n let m = minutes - offsetMinutes;\n if ( m >= 60 )\n m -= 60;\n\n let h = hours - offsetHours;\n h = h < 0\n ? 24 + h\n : h > 23\n ? h - 24\n : h;\n\n return {\n hours: h,\n minutes: m\n };\n};\n\nconst fromFormat = str => {\n let matches = str.match( pattern );\n\n if ( matches === null )\n return null;\n\n let [input, hours, minutes, period] = matches;\n\n return {\n hours: parseInt(hours),\n minutes: parseInt(minutes),\n period: period\n };\n};\n\nconst toFormat = ({hours, minutes, period}) => {\n if ( !hours && !minutes && !period )\n return '';\n\n if ( hours === 0 && minutes === 0 && period === 'am' )\n hours = 12;\n\n minutes = minutes === ''\n ? minutes\n : minutes < 10\n ? '0' + minutes : minutes;\n\n return hours + ':' + minutes + ' ' + period;\n};\n\nconst fromValue = str => {\n let matches = str.match( /^(\\d{1,2}):(\\d{1,2})$/ );\n\n if ( matches === null )\n return null;\n\n let {hours, minutes} = fromUTC({\n hours: parseInt(matches[1]),\n minutes: parseInt(matches[2])\n });\n\n let period = 'am';\n\n if ( hours >= 12 ) {\n hours -= 12;\n period = 'pm';\n }\n\n if ( hours === 0 )\n hours = 12;\n\n return {\n hours: hours,\n minutes: minutes,\n period: period\n };\n};\n\nconst toValue = ({hours, minutes, period}) => {\n if ( !hours && !minutes && !period )\n return '';\n\n let nw = hours;\n nw = period === 'pm'\n ? nw + 12\n : nw;\n\n if ( nw === 12 && period === 'am' ) {\n nw = 0;\n }\n\n if ( nw === 24 )\n nw = 12;\n\n return toUTC({\n hours: nw,\n minutes: minutes\n });\n};\n\nconst fromMilliseconds = milliseconds => {\n let period = 'am';\n\n let hours = Math.floor( milliseconds / 3600 / 1000 );\n\n let fraction = milliseconds / 3600 / 1000 - hours;\n let minutes = Math.floor( fraction * 60 );\n\n if ( hours >= 12 ) {\n hours -= 12;\n period = 'pm';\n }\n\n if ( hours === 0 )\n hours = 12;\n\n return {\n hours: hours,\n minutes: minutes,\n period: period\n }\n};\n\nconst TimePickerOptionsStyle = styled.div`\n position: relative;\n\n ${Options} {\n left: 0;\n top: -21px;\n height: 192px;\n overflow: auto;\n\n li {\n padding-right: 8px;\n }\n }\n\n ${OptionGroup} {\n font-size: ${Theme.font.extraSmall.size};\n line-height: ${Theme.font.extraSmall.lineHeight};\n position: sticky;\n top: 0;\n z-index: 1;\n background: ${Theme.colors.neutrals.white};\n\n &:hover {\n background: ${Theme.colors.neutrals.white};\n }\n }\n`;\n\nconst TimePickerOptions = ({time, setTime}) => {\n const optionsRef = useRef();\n\n const hours = []\n for (let i = 1; i <= 12; i++)\n hours.push(\n <li\n key={i}\n onClick={()=>handleSelect('hours', i)}\n className={time.hours === i ? 'selected' : ''}\n >{i}</li>\n )\n\n const minutes = []\n for (let i = 0; i <= 59; i++)\n minutes.push(\n <li\n key={i}\n onClick={()=>handleSelect('minutes', i)}\n className={time.minutes === i ? 'selected' : ''}\n >{i < 10 ? '0'+i : i}</li>\n )\n\n const handleSelect = (what, value) => {\n let newTime = { ...time };\n newTime[what] = value;\n setTime(newTime);\n };\n\n\n useEffect(()=>{\n optionsRef.current\n .querySelectorAll( '.selected' )\n .forEach( li => li.scrollIntoView( { block: 'center' } ) )\n }, [ time ]);\n\n return (\n <TimePickerOptionsStyle ref={optionsRef}>\n <Options>\n <OptionGroup as='li'>Hour</OptionGroup>\n {hours}\n </Options>\n <Options style={{left: 45}}>\n <OptionGroup as='li'>Minutes</OptionGroup>\n {minutes}\n </Options>\n <Options style={{left: 108}}>\n <OptionGroup as='li'>&nbsp;</OptionGroup>\n <li\n onClick={()=>handleSelect('period', 'am')}\n className={time.period === 'am' ? 'selected' : ''}\n >am</li>\n <li\n onClick={()=>handleSelect('period', 'pm')}\n className={time.period === 'pm' ? 'selected' : ''}\n >pm</li>\n </Options>\n </TimePickerOptionsStyle>\n )\n};\n\nconst TimePicker = forwardRef(({\n name,\n label,\n size,\n placeholder,\n valid,\n error,\n onChange,\n Required,\n defaultValue,\n milliseconds,\n ...props\n }, ref) => {\n\n const [open, setOpen] = useState( false );\n const containerRef = useRef();\n\n const [time, setTime] = useState( {\n hours: '',\n minutes: '',\n period: ''\n });\n const valueRef = useRef();\n const displayRef = useRef();\n\n\n const maybeClose = evt => {\n if ( !open )\n return;\n\n if ( !containerRef.current.contains( evt.target ) )\n setOpen( false );\n };\n\n const handleFocus = evt => {\n setOpen( true );\n };\n\n const handleKeyDown = evt => {\n let key = evt.key.toLowerCase();\n\n switch (key) {\n case 'tab':\n evt.persist();\n setTimeout(()=>{\n evt.target = document.activeElement;\n maybeClose( evt );\n }, 100)\n break;\n }\n };\n\n const handleChange = evt => {\n let v = displayRef.current.value;\n\n if ( !pattern.test( v ) ) {\n valueRef.current.value = '';\n return;\n }\n\n let [input, hours, minutes, period] = v.match( /^(1[012]|[0-9]):([0-5][0-9]) ?(am|pm)/i );\n\n setTime({\n hours: parseInt( hours ),\n minutes: parseInt( minutes ),\n period: period\n });\n };\n\n const sendChange = () => {\n // if ( !pattern.test( displayRef.current.value ) ) {\n // valueRef.current.value = '';\n // return;\n // }\n\n valueRef.current.value = toValue( time );\n\n if ( typeof onChange === 'function' )\n onChange( toValue( time ) );\n };\n\n\n // set events to show or hide dropdown\n useEffect(()=>{\n document.addEventListener( 'click', maybeClose );\n\n return () => document.removeEventListener( 'click', maybeClose );\n }, [ open ]);\n\n // set default value\n let realDefaultValue;\n useEffect(()=>{\n if ( valueRef.current && valueRef.current.value )\n realDefaultValue = fromValue(valueRef.current.value);\n else if ( defaultValue )\n realDefaultValue = fromValue(defaultValue);\n else if ( milliseconds )\n realDefaultValue = fromMilliseconds(milliseconds);\n\n if ( realDefaultValue )\n setTime( realDefaultValue );\n }, []);\n\n // send change events\n useEffect(()=>{\n let {hours, minutes, period} = time;\n\n if ( !hours && !minutes && !period ) {\n } else {\n sendChange();\n }\n }, [ time ]);\n\n // update display format\n useEffect(()=>{\n let display = '';\n let newTime = fromValue(valueRef.current.value);\n\n if ( newTime ) {\n if ( toValue(time) !== toValue(newTime) )\n setTime( newTime )\n\n let format = toFormat(newTime);\n if ( format ) {\n display = format;\n }\n } else if (displayRef.current.value && fromFormat(displayRef.current.value)) {\n display = displayRef.current.value;\n valueRef.current.value = toValue(fromFormat(display));\n }\n\n displayRef.current.value = display;\n });\n\n\n return(\n <Frag ref={containerRef}>\n <Input\n label={label}\n help={'hh:mm am/pm'}\n size={size}\n placeholder={placeholder}\n valid={valid}\n error={error}\n Required={Required}\n ref={displayRef}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n autoComplete='off'\n mask='time'\n {...props}\n >\n <Icon.Clock size='20px' top='10px' color={Theme.colors.secondary} style={{pointerEvents: 'none'}}/>\n </Input>\n <input type=\"hidden\" name={name} ref={mergeRefs([valueRef, ref])}/>\n {open && <TimePickerOptions time={time} setTime={setTime}/>}\n </Frag>\n );\n});\n\nexport default TimePicker;\n","import React, {useState, useEffect, useRef, Fragment} from 'react'\nimport styled from 'styled-components';\nimport Button, {Base, Primary, Secondary, Delete, Cancel, Small, Big} from './index.js';\nimport Icon from '../Icons';\nimport Spacer from '../Spacer';\nimport {BoxOptions} from '../Input/select'\n\nconst Container = styled(Base).attrs(props => ({\n as: 'div',\n}))`\n display: inline-flex;\n align-items: stretch;\n padding: 0;\n\n ${props => props.type === 'primary' && Primary}\n ${props => props.type === 'secondary' && Secondary}\n ${props => props.type === 'cancel' && Cancel}\n ${props => props.type === 'delete' && Delete}\n ${props => props.size === 'small' && Small}\n ${props => props.size === 'big' && Big}\n\n ${props => props.divider && `\n ${ArrowContainer} {\n border-left-width: 1px;\n border-left-style: dashed;\n }\n `}\n`;\n\nconst ArrowContainer = styled.div`\n display:inline-flex;\n align-items:center;\n justify-contents:center;\n padding:0 8px;\n`;\n\nconst Dropdown = ({children, options, text, type,size, divider = true, openTo,visibleOptionsQty}) => {\n const [open,setOpen] = useState(false);\n const popupRef = useRef();\n\n const handleContainerClick = e => {\n if ( !children )\n setOpen(true);\n };\n\n const handleArrowClick = e => {\n if ( children )\n setOpen(true);\n };\n\n const handleClickOutside = (e) => {\n if (popupRef.current && !popupRef.current.contains(e.target)) {\n setOpen(false);\n }\n }\n\n useEffect(() => {\n document.addEventListener(\"mousedown\", handleClickOutside,false);\n\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside,false);\n };\n }, []);\n\n type = children\n ? children.props.type\n : type;\n\n return (\n <div ref={popupRef} style={{position: 'relative', display: 'inline-flex'}}>\n <Container type={type} size={size} divider={divider} onClick={handleContainerClick}>\n {children || <Spacer left={4}>{text}</Spacer>}\n <ArrowContainer onClick={handleArrowClick}>\n {open ? <Icon.ArrowUp size='16px'/> : <Icon.ArrowDown size='16px'/>}\n </ArrowContainer>\n </Container>\n <div className={'options-container'}>\n {open && options &&\n <BoxOptions\n openTo={openTo}\n visibleOptionsQty={visibleOptionsQty}\n options={options.map(opt => ({\n name: opt.text,\n value: opt.text,\n fn: opt.fn\n }))}\n setOpen={setOpen}\n setSelected={()=>{}}\n onSelect={opt => opt.fn()}\n />\n }\n </div>\n </div>\n )\n}\n\nexport default Dropdown;\n","import React from 'react'\nimport styled from 'styled-components'\nimport Theme from '../Theme'\n\nconst BtnGroup = styled.div`\n display: inline-flex;\n flex-wrap: nowrap;\n border: 1px solid ${Theme.colors.neutrals.silver};\n border-radius: ${Theme.defaultRadius};\n\n > *:not(.selected) {\n border-radius: 0;\n\n &:first-child {\n border-top-left-radius: ${Theme.defaultRadius};\n border-bottom-left-radius: ${Theme.defaultRadius};\n }\n\n &:last-child {\n border-top-right-radius: ${Theme.defaultRadius};\n border-bottom-right-radius: ${Theme.defaultRadius};\n }\n }\n`\n\nconst ButtonGroup = ({children, ...props}) => {\n const generateClassName = btnProps => {\n let cn = btnProps.className || ''\n let track = btnProps.track\n\n if (props.active === track) { cn += ' selected ' }\n\n return cn\n }\n\n return (\n <BtnGroup>\n {children.map((btn, k) =>\n btn.type({\n ...props,\n ...btn.props,\n key: k,\n className: generateClassName(btn.props)\n })\n )}\n </BtnGroup>\n )\n}\n\nexport default ButtonGroup\n","import React, {useRef, Children, useEffect,useState} from 'react'\nimport styled, {keyframes} from 'styled-components'\n\nconst listAnimation = keyframes`\n 0% {\n opacity:0;\n visibility: hidden;\n transform: scale(0.6) translateY(-8px);\n }\n\n 100% {\n visibility: visible;\n opacity:1;\n }\n`\n\nconst POSITION_LIST = '100%'\nconst POSITION_LIST_DISTANCE = '10%'\n\nconst generateAnimationDelay = (n, direction) => {\n let style = ''\n if (['left','top'].includes(direction)) {\n let delayNumber = 1\n for (let i = n; i >= 1; --i) {\n style += `\n > :nth-child(${i}) {\n animation-delay: ${delayNumber * 90}ms;\n }\n `\n delayNumber++\n }\n } else {\n for (let i = 1; i <= n; ++i) {\n style += `\n > :nth-child(${i}) {\n animation-delay: ${i * 90}ms;\n }\n `\n }\n }\n\n return style\n}\n\nconst ListContent = styled.div`\n position:absolute;\n height:${props => ['left','right'].includes(props.direction) ? '100%' : 'fit-content'};\n padding:2px;\n white-space: nowrap;\n align-items:center;\n gap: ${props => props.spaceBetween}\n display:flex;\n visibility: hidden;\n\n ${props => generateAnimationDelay(props.childrenQuantity,props.direction)}\n\n ${props => (props.direction === 'right' || props.direction === 'auto') && `\n flex-direction:row;\n top:0;\n bottom:0;\n left:${POSITION_LIST};\n padding-left:${POSITION_LIST_DISTANCE};\n `}\n\n ${props => props.direction === 'left' && `\n flex-direction:row;\n top:0;\n bottom:0;\n right:${POSITION_LIST};\n padding-right:${POSITION_LIST_DISTANCE};\n `}\n\n ${props => props.direction === 'top' && `\n flex-direction:column;\n justify-content:end;\n bottom:${POSITION_LIST};\n right:0;\n left:0;\n padding-top:${POSITION_LIST_DISTANCE};\n `}\n\n ${props => props.direction === 'bottom' && `\n flex-direction:column;\n justify-content:start;\n top:${POSITION_LIST};\n bottom:0;\n right:0;\n left:0;\n padding-top:${POSITION_LIST_DISTANCE};\n `}\n`\n\nconst PreviewContent = styled.div`\n cursor:pointer;\n background:white;\n border-radius:100%;\n padding:8px;\n display:flex;\n justify-content:center;\n border:1px solid rgb(204, 204, 204);\n`\n\nconst Container = styled.div`\n position:relative;\n\n &:hover > ${ListContent} {\n visibility: visible;\n }\n\n &:hover > ${ListContent} > * {\n animation-name: ${listAnimation};\n animation-duration: 200ms;\n animation-fill-mode: backwards;\n animation-timing-function: ease-in-out;\n }\n`\n\nconst ButtonIcon = ({children, event = 'Hover'}) => {\n if (children.length > 2) {\n throw 'This component only accepts a Button.Preview and Button.List component'\n }\n\n const [Preview, List] = children\n if (Preview.type.name !== 'ButtonPreview') {\n throw `The first component should be ButtonIcon.Preview, but got ${Preview.type.name}`\n }\n\n if (List.type.name !== 'ButtonList') {\n throw `The first component should be ButtonIcon.List, but got ${Preview.type.name}`\n }\n\n return (\n <Container>\n {Preview}\n {List}\n </Container>\n )\n}\n\nconst ButtonPreview = ({children}) => {\n const previewRef = useRef()\n return <PreviewContent ref={previewRef}>{children}</PreviewContent>\n}\nButtonIcon.Preview = ButtonPreview\n\nconst DIRECTIONS = ['bottom', 'left', 'right', 'top', 'auto']\nconst ButtonList = ({children, direction, spaceBetween}) => {\n const [dir, setDir] = useState(direction);\n\n if (!DIRECTIONS.includes(dir)) {\n throw `Invalid direction argument on component ButtonIcon.List, expect ${DIRECTIONS.join(', ')}`\n }\n if(['left','top'].includes(dir)) {\n children = Children.toArray(children).reverse()\n }\n\n const contentRef = useRef();\n useEffect(() => {\n if(!contentRef?.current) return\n\n if(dir !== 'auto') return\n\n const bounds = contentRef.current.getBoundingClientRect();\n const windowWidth = window.innerWidth;\n const windowHeight = window.innerHeight;\n\n\n if(bounds.right > windowWidth ){\n setDir('left')\n return\n }else{\n return\n }\n\n if(bounds.left < 0 ){\n setDir('bottom')\n return\n }\n\n if(bounds.bottom > windowHeight){\n setDir('top')\n return\n }\n },[contentRef])\n\n return (\n <ListContent\n ref={contentRef}\n direction={dir}\n spaceBetween={spaceBetween}\n childrenQuantity={children.length}\n >\n {children}\n </ListContent>\n )\n}\nButtonList.defaultProps = {\n direction: 'auto',\n spaceBetween: '8px'\n}\n\nButtonIcon.List = ButtonList\n\nexport default ButtonIcon\n","import React, {useState} from 'react'\nimport styled from 'styled-components'\nimport Theme from '../Theme'\nimport Icon from '../Icons'\n\nconst Div = styled.div`\n padding: 7px;\n border-radius: ${Theme.defaultRadius};\n border-width:1px;\n border-style:solid;\n display:flex;\n align-items:center;\n position:relative;\n\n ${props => props.useClose && `\n padding-right: 32px;\n `}\n\n svg {\n margin-right: 8px;\n display: block;\n }\n`\n\nconst Title = styled.h5`\n font-family: ${Theme.font.main};\n font-weight: normal;\n font-size: ${Theme.font.medium.size};\n line-height: ${Theme.font.big.lineHeight};\n`\n\nconst Content = styled.p`\n font-size: ${Theme.font.extraSmall.size};\n line-height: ${Theme.font.small.lineHeight};\n`\n\nconst SmallContent = styled(Content)`\n font-size: ${Theme.font.small.size};\n line-height: ${Theme.font.small.lineHeight};\n`\n\nconst Close = styled.button.attrs(props => ({\n type: 'button'\n}))`\n border: none;\n background: none;\n padding: 0;\n position: absolute;\n top: 7px;\n right: 7px;\n cursor: pointer;\n\n svg {\n margin: 0;\n }\n`\n\nconst solveContent = (size, title, content) => {\n const isSmall = size === 'small'\n\n if (isSmall) {\n return (\n <Title>\n <SmallContent>{title}</SmallContent>\n </Title>\n )\n }\n\n return (\n <div>\n <Title>{title}</Title>\n <Content>{content}</Content>\n </div>\n )\n}\n\nconst Alert = (props, type, Symbol) => {\n const {title, content, useIcon, useClose, size = 40} = props\n\n const [isOpen, setOpen] = useState(true)\n if (!isOpen) {\n return null\n }\n\n const typeStyle = {\n background: Theme.colors[type].bg,\n borderColor: Theme.colors[type].border,\n color: Theme.colors[type].text\n }\n\n let addPadding = (type === 'error' || type === 'success') && size !== 'small'\n\n return (\n <Div {...props} style={typeStyle}>\n {useIcon && (\n <div style={{\n padding: addPadding ? 6 : 0\n }}>\n {React.createElement(\n Symbol,\n {\n size: size === 'small' ? '16px' : addPadding ? size - 12 + 'px' : size + 'px',\n color: typeStyle.color\n }\n )}\n </div>\n )}\n {solveContent(size, title, content, useClose)}\n {useClose && <Close onClick={() => setOpen(false)}><Icon.Times size='16px' color={typeStyle.color} /></Close>}\n </Div>\n )\n}\n\nconst AlertError = (props) => {\n const typeAlert = 'error'\n const Symbol = Icon.TimesNarrow\n return Alert(props, typeAlert, Symbol)\n}\n\nconst AlertInfo = (props) => {\n const typeAlert = 'info'\n const Symbol = Icon.Info\n return Alert(props, typeAlert, Symbol)\n}\n\nconst AlertWarning = (props) => {\n const typeAlert = 'warnings'\n const Symbol = Icon.Warning\n return Alert(props, typeAlert, Symbol)\n}\n\nconst AlertSuccess = (props) => {\n const typeAlert = 'success'\n const Symbol = Icon.CheckNarrow\n return Alert(props, typeAlert, Symbol)\n}\n\nexport default {\n Success: AlertSuccess,\n Info: AlertInfo,\n Warning: AlertWarning,\n Error: AlertError\n}\n"],"names":["defaultRadius","colors","primary","secondary","action","neutrals","black","gray","medium","silver","white","warnings","border","text","shadow","bg","success","error","info","extra","blueishWhite","whiteSmoke","gray93","font","big","size","lineHeight","small","extraSmall","tiny","main","body","form","input","radius","padding","button","hover","theme","Form","styled","props","width","handleSize","sizeType","Frag","div","Label","label","Theme","borderDefault","InputBase","SpanHelp","span","SpanError","RequiredText","React","SelectUi","Value","option","Options","ul","isChild","OptionGroup","phone","value","replace","time","trim","handlerColor","typeColor","handleMask","type","validation","Input","forwardRef","ref","name","help","invalid","valid","mask","iconAction","children","onChange","useState","inputValue","setInputValue","validationType","useIcon","Required","Check","maskFunction","handleChange","e","target","position","cloneElement","Children","only","style","top","right","cursor","left","Ex","marginRight","Wrapper","Element","Svg","strokeColor","onClick","color","Icons","Activity","Advance","AlertCircle","Amazon","Android","Apple","Archive","ArrowDown","ArrowDownv2","ArrowLeft","ArrowRight","ArrowRightLong","ArrowRightV2","ArrowUp","ArrowUpV2","Avatar","BackHome","Balance","Banknote","Battery","Briefcase","Broom","Bucket","Bug","BuildingV2","Calendar","CalendarActivity","CalendarV2","CallV2","CameraSwitch","CameraV2","Card","ChartSquare","Chat","ChatFilled","ChatV2","CheckCircleFilled","CheckDouble","CheckV2","CheckCircle","CheckCompletedV2","CheckListV2","CheckNarrow","CheckSquare","Circle","Clapperboard","Clock","ClockV2","Clipboard","ClipboardList","Cog","Contract","Copy","CopyV2","CreditCard","CreditCardV2","Crown","Dashboard","Document","DocumentAdd","DocumentEdit","Dollar","DollarV2","Download","DownloadV2","DspwNetwork","Edit","EditV2","EllipsisVertical","Emoji","Empty","Expand","ExpandV2","ExportChat","ExportFile","Eye","EyeV2","EyeCrossed","Feather","FileCheck","FileText","Filter","FilterV2","Flag","FlashlightOff","FlashlightOn","FlexIn","FlexOut","FolderV2","Fuel","Fullscreen","Gauge","GeoferenceIn","GeoferenceOut","GraduationHat","GripVertical","Group","GroupFilled","HandMoney","Headset","Heart","HelpCircle","Image","ImageV2","Impersonate","Info","InfoCircleV2","Invoice","Layers","LayerV2","LeftArrow","Lightning","Line","LinkV2","List","Locker","Loadout","Lunch","LunchIn","LunchOut","Mail","Maintenance","MaintenanceV2","Marker","MapPin","Maximize","Megaphone","Menu","Move","Mute","NotAllowed","Notes","NotificationV2","Package","PackageBack","PackageCheck","PackageTimes","Parking","ParkingGeoIn","ParkingGeoOut","Pause","Person","PersonLock","Persons","Phone","Pin","Play","PlayV2","Plus","PlusCircle","PlusV2","Printer","PrivacyV2","ProfileV2","PunchIn","PunchOut","Radius","Record","RecordStop","Refresh","Replace","Rts","ScanV2","Search","SearchV2","SecureV2","Segment","Send","SendFilled","Settings","SettingV2","ShareV2","SignoutV2","Skill","SoundOff","SoundOn","Star","Sticker","Swear","Target","TimeLine","TimelineV2","Times","TimesCircleV2","TimesNarrow","TimesV2","Trash","TrendDown","TrendingUpV2","TrendUp","Truck","TruckV2","Trophy","Unarchive","Unpin","Upload","UploadV2","VehicleOil","VehicleV2","Video","Volume","Warning","WarningV2","Wave","Items","Object","keys","sort","a","b","localeCompare","forEach","key","Help","App","mergeRefs","refs","current","Title","h1","SubTitle","h3","ThirdTitle","Text","p","subtle","Emphasis","fullWidth","attrs","as","maxOptions","optionsSize","openTo","hasChildren","visibleOptionsQty","optionsSizeCustom","OptionsPeople","SelectHidden","select","PhotoCover","CustomCheckBox","ColorOption","index","getSelected","options","defaultValue","selected","some","item","SearchInput","hasSelection","ToggleButton","isOption","undefined","flattenOptions","depth","reduce","rows","concat","optionText","node","toString","Array","isArray","map","join","FloatingOptions","anchor","list","setList","listRef","useCallback","usePopper","strategy","placement","modifiers","offset","styles","attributes","update","useEffect","observer","window","ResizeObserver","observe","disconnect","createPortal","popper","margin","zIndex","document","AutocompleteSelect","selectedOpt","setSelected","onSelect","placeholder","noOptions","startOpen","resetCallback","search","setSearch","setAnchor","selectable","filter","row","filterItems","toLowerCase","startsWith","items","length","selectedText","desc","useCombobox","find","onSelectChange","isEqual","getItemValue","disabled","feature","supercomplete","onRequestItem","res","matches","deselectOnClear","getInputProps","getToggleProps","getListProps","getItemProps","open","setOpen","focusIndex","Boolean","Icon","paddingRight","paddingLeft","divider","background","summarizeSelection","names","others","MultiAutocompleteSelect","selectedValues","onToggle","nodeRef","useRef","setNode","closeOnOutsideClick","inList","contains","addEventListener","removeEventListener","summary","includes","stopPropagation","justifyContent","preventDefault","MultiDropdown","setSelectedValues","valueRef","hasDefaultValue","defaults","String","defaultsKey","from","opt","dispatchEvent","Event","toggle","next","v","k","SingleDropdown","defaultSelected","reset","setDefaultValues","hasDefault","Dropdown","multiple","BoxOptions","optionsRef","handleClick","el","optionsBounds","getBoundingClientRect","innerWidth","Fragment","CustomDropdown","tooltip","nodeSelect","handlOpenSelect","classList","indexOf","every","display","alignItems","overflow","HandleState","ret","splice","newSelected","assign","push","stateMap","SelectOption","profile","PhotoComponent","customStyle","marginLeft","SelectValueRender","Pictures","Names","seq","total","plural","new_desc","split","solveSpace","Number","isInteger","BaseSpace","bottom","inline","Spacer","all","HiddenCheckbox","HiddenRadioBox","CheckboxContainer","radio","h5","NoOptions","CheckboxBase","checked","title","preventClass","CheckBox","values","verticalAlign","defaultValues","RadioBoxBase","RadioBox","Password","visible","setVisible","ImgStyle","height","eyeImg","TextAreaBase","Textarea","Select","TagsValues","Tag","canCreate","randId","Math","random","Date","getTime","safeName","autoFocus","newOptions","setNewOption","defaultOptions","setDefaultOptions","containerRef","searchRef","isSelected","useMemo","JSON","stringify","timer","clearTimeout","s","setTimeout","handleSelect","singleOption","handleRemove","focus","elm","handleFocus","handleBlur","activeElement","handleKey","querySelectorAll","arr","activeIndex","findIndex","add","active","remove","toBeActive","scrollIntoView","block","querySelector","click","addNewOption","newObj","i","fromHookFrom","TagOptions","CreateOption","underscored","searchToUnderscore","replaceAll","RegExp","noDataOption","msg","part","hexToRgb","hex","shorthandRegex","m","r","g","result","exec","parseInt","luminance","pow","calculateContrast","color1luminance","color2luminance","ratio","Field","WraperBucket","ColorIndicator","ColorBox","InputColor","defaultState","isBlack","textColor","selectedColor","setSelectedColor","require$$0","defaultShadow","Base","Primary","Secondary","Cancel","Delete","Small","Big","Exportedd","typeStyle","Exported","Type","Profile","HiddenInput","Uploader","picture","setPicture","acceptedTypes","handleFile","file","files","URL","createObjectURL","imageToBase64","reader","FileReader","Promise","resolve","onload","ev","src","readAsDataURL","documentFile","genericFile","processFileList","fileList","promises","match","DropUploaderList","DropUploaderPreview","preview","DropUploader","accept","setFiles","inputRef","dropRef","handleFileChanges","inputs","handleDrop","dataTransfer","dropFile","nFiles","deleted","FileListItem","onDelete","expand","w","outerWidth","outerHeight","write","download","fetch","then","blob","rej","createElement","href","pop","addHighlight","removeHighlight","preventDefaults","addListeners","slice","call","arguments","c","d","File","TypeError","ClipboardEvent","clipboardData","DataTransfer","removeListeners","validPlaceholder","f","Button","substr","CheckBoxWrapper","hasLabel","CheckBoxLabel","ToggleLabel","Toggle","offText","onText","singleText","on","setValue","textOn","textOff","range","floor","id","padZero","n","pattern","prototype","stdTimezoneOffset","jan","getFullYear","jul","max","getTimezoneOffset","dst","today","offsetHours","offsetMinutes","toUTC","hours","minutes","h","fromUTC","fromFormat","str","period","toFormat","fromValue","toValue","nw","fromMilliseconds","milliseconds","fraction","TimePickerOptionsStyle","TimePickerOptions","setTime","what","newTime","li","TimePicker","displayRef","maybeClose","evt","handleKeyDown","persist","test","sendChange","realDefaultValue","format","pointerEvents","Container","ArrowContainer","popupRef","handleContainerClick","handleArrowClick","handleClickOutside","fn","BtnGroup","ButtonGroup","generateClassName","btnProps","cn","className","track","btn","listAnimation","keyframes","POSITION_LIST","POSITION_LIST_DISTANCE","generateAnimationDelay","direction","delayNumber","ListContent","spaceBetween","childrenQuantity","PreviewContent","ButtonIcon","event","Preview","ButtonPreview","previewRef","DIRECTIONS","ButtonList","dir","setDir","toArray","reverse","contentRef","bounds","windowWidth","windowHeight","innerHeight","defaultProps","Div","useClose","Content","SmallContent","Close","solveContent","content","isSmall","Alert","Symbol","isOpen","borderColor","addPadding","AlertError","typeAlert","AlertInfo","AlertWarning","AlertSuccess","Success","Error"],"mappings":";;;;;;;;;;;;;;AAAA,IAAMA,aAAa,GAAG,KAAtB;AAEA,IAAMC,MAAM,GAAG;EACbC,OAAO,EAAE,SADI;EAEbC,SAAS,EAAE,SAFE;EAGbC,MAAM,EAAE,SAHK;EAIbC,QAAQ,EAAE;IACRC,KAAK,EAAE,SADC;IAERC,IAAI,EAAE,SAFE;IAGRC,MAAM,EAAE,SAHA;IAIRC,MAAM,EAAE,SAJA;IAKRC,KAAK,EAAE;GATI;EAWbC,QAAQ,EAAE;IACRC,MAAM,EAAE,SADA;IAERC,IAAI,EAAE,SAFE;IAGRC,MAAM,EAAE,SAHA;IAIRC,EAAE,EAAE;GAfO;EAiBbC,OAAO,EAAE;IACPJ,MAAM,EAAE,SADD;IAEPC,IAAI,EAAE,SAFC;IAGPC,MAAM,EAAE,SAHD;IAIPC,EAAE,EAAE;GArBO;EAuBbE,KAAK,EAAE;IACLL,MAAM,EAAE,SADH;IAELC,IAAI,EAAE,SAFD;IAGLC,MAAM,EAAE,SAHH;IAILC,EAAE,EAAE;GA3BO;EA6BbG,IAAI,EAAE;IACJN,MAAM,EAAE,SADJ;IAEJC,IAAI,EAAE,SAFF;IAGJC,MAAM,EAAE,SAHJ;IAIJC,EAAE,EAAE;GAjCO;EAmCbI,KAAK,EAAE;IACLC,YAAY,EAAE,SADT;IAELC,UAAU,EAAE,SAFP;IAGLC,MAAM,EAAE;;CAtCZ;AA0CA,IAAMC,IAAI,GAAG;EACXC,GAAG,EAAE;IAACC,IAAI,EAAE,MAAP;IAAeC,UAAU,EAAE;GADrB;EAEXlB,MAAM,EAAE;IAACiB,IAAI,EAAE,MAAP;IAAeC,UAAU,EAAE;GAFxB;EAGXC,KAAK,EAAE;IAACF,IAAI,EAAE,MAAP;IAAeC,UAAU,EAAE;GAHvB;EAIXE,UAAU,EAAE;IAACH,IAAI,EAAE,MAAP;IAAeC,UAAU,EAAE;GAJ5B;EAKXG,IAAI,EAAE;IAACJ,IAAI,EAAE,KAAP;IAAcC,UAAU,EAAE;GALrB;EAMXI,IAAI,EAAE,sBANK;EAOXC,IAAI,EAAE;CAPR;AAUA,IAAMC,IAAI,GAAG;EACXC,KAAK,EAAE;IACLC,MAAM,EAAElC,aADH;IAELmC,OAAO,EAAE;GAHA;EAKXC,MAAM,EAAE;IACNlC,OAAO,EAAE;MAACa,EAAE,EAAEd,MAAM,CAACC,OAAZ;MAAqBmC,KAAK,EAAE;KAD/B;IAENlC,SAAS,EAAE;MAACY,EAAE,EAAEd,MAAM,CAACE,SAAZ;MAAuBkC,KAAK,EAAE;;;CAP7C;AAYA,IAAMC,KAAK,GAAG;EAACrC,MAAM,EAANA,MAAD;EAAS+B,IAAI,EAAJA,IAAT;EAAeT,IAAI,EAAJA,IAAf;EAAqBvB,aAAa,EAAbA;CAAnC;;AClEA,SAAS,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE;EAC5C,IAAI,CAAC,GAAG,EAAE;IACR,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;GACxB;;EAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE;IACpD,GAAG,EAAE;MACH,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;KAC1B;GACF,CAAC,CAAC,CAAC;CACL;;AAED,yBAAc,GAAG,sBAAsB;;;;;;;;;;;ACTvC,IAAMuC,IAAI,GAAGC,eAAM,CAACR,IAAV,oBAKA,UAAAS,KAAK;SAAIA,KAAK,CAACC,KAAN,GAAcD,KAAK,CAACC,KAApB,GAA4B,MAAhC;CALL,CAAV;;;;;;;ACHA,SAAS,QAAQ,GAAG;EAClB,cAAc,GAAG,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,MAAM,EAAE;IAC7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;MACzC,IAAI,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;;MAE1B,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE;QACtB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE;UACrD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;SAC3B;OACF;KACF;;IAED,OAAO,MAAM,CAAC;GACf,CAAC;;EAEF,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;CACxC;;AAED,cAAc,GAAG,QAAQ;;;AClBzB,SAAS,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE;EACxC,IAAI,GAAG,IAAI,GAAG,EAAE;IACd,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE;MAC9B,KAAK,EAAE,KAAK;MACZ,UAAU,EAAE,IAAI;MAChB,YAAY,EAAE,IAAI;MAClB,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;GACJ,MAAM;IACL,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;GAClB;;EAED,OAAO,GAAG,CAAC;CACZ;;AAED,kBAAc,GAAG,eAAe;;ACfhC,SAAS,eAAe,CAAC,GAAG,EAAE;EAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC;CACpC;;AAED,kBAAc,GAAG,eAAe;;ACJhC,SAAS,qBAAqB,CAAC,GAAG,EAAE,CAAC,EAAE;EACrC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,EAAE,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO;EAC/E,IAAI,IAAI,GAAG,EAAE,CAAC;EACd,IAAI,EAAE,GAAG,IAAI,CAAC;EACd,IAAI,EAAE,GAAG,KAAK,CAAC;EACf,IAAI,EAAE,GAAG,SAAS,CAAC;;EAEnB,IAAI;IACF,KAAK,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE;MAClF,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;;MAEpB,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM;KACnC;GACF,CAAC,OAAO,GAAG,EAAE;IACZ,EAAE,GAAG,IAAI,CAAC;IACV,EAAE,GAAG,GAAG,CAAC;GACV,SAAS;IACR,IAAI;MACF,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;KACjD,SAAS;MACR,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC;KAClB;GACF;;EAED,OAAO,IAAI,CAAC;CACb;;AAED,wBAAc,GAAG,qBAAqB;;AC3BtC,SAAS,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE;EACnC,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;;EAEtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;IACnD,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;GAClB;;EAED,OAAO,IAAI,CAAC;CACb;;AAED,oBAAc,GAAG,iBAAiB;;ACRlC,SAAS,2BAA2B,CAAC,CAAC,EAAE,MAAM,EAAE;EAC9C,IAAI,CAAC,CAAC,EAAE,OAAO;EACf,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,OAAO,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;EAC9D,IAAI,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;EACvD,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;EAC5D,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,KAAK,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;EACrD,IAAI,CAAC,KAAK,WAAW,IAAI,0CAA0C,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;CACjH;;AAED,8BAAc,GAAG,2BAA2B;;ACX5C,SAAS,gBAAgB,GAAG;EAC1B,MAAM,IAAI,SAAS,CAAC,2IAA2I,CAAC,CAAC;CAClK;;AAED,mBAAc,GAAG,gBAAgB;;ACIjC,SAAS,cAAc,CAAC,GAAG,EAAE,CAAC,EAAE;EAC9B,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,oBAAoB,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,0BAA0B,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,eAAe,EAAE,CAAC;CACvH;;AAED,iBAAc,GAAG,cAAc;;ACZ/B,SAAS,6BAA6B,CAAC,MAAM,EAAE,QAAQ,EAAE;EACvD,IAAI,MAAM,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;EAC9B,IAAI,MAAM,GAAG,EAAE,CAAC;EAChB,IAAI,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;EACrC,IAAI,GAAG,EAAE,CAAC,CAAC;;EAEX,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;IACtC,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS;IACzC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;GAC3B;;EAED,OAAO,MAAM,CAAC;CACf;;AAED,gCAAc,GAAG,6BAA6B;;ACb9C,SAAS,wBAAwB,CAAC,MAAM,EAAE,QAAQ,EAAE;EAClD,IAAI,MAAM,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC;EAC9B,IAAI,MAAM,GAAG,4BAA4B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;EAC5D,IAAI,GAAG,EAAE,CAAC,CAAC;;EAEX,IAAI,MAAM,CAAC,qBAAqB,EAAE;IAChC,IAAI,gBAAgB,GAAG,MAAM,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;;IAE5D,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;MAC5C,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;MAC1B,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS;MACzC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,SAAS;MACvE,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;KAC3B;GACF;;EAED,OAAO,MAAM,CAAC;CACf;;AAED,2BAAc,GAAG,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACjBzC,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAAAC,QAAQ,EAAI;UACrBA,QAAR;SACO,YAAL;aACS,MAAP;;SACG,OAAL;aACS,OAAP;;SACG,KAAL;aACS,OAAP;;;aAEO,OAAP;;CATN;;AAaA,IAAMC,IAAI,GAAGL,eAAM,CAACM,GAAV,qBAAV;AAKA,IAAMC,KAAK,GAAGP,eAAM,CAACQ,KAAV,qBACGC,KAAK,CAAC1B,IAAN,CAAWf,MAAX,CAAkBiB,IADrB,EAEQwB,KAAK,CAAC1B,IAAN,CAAWf,MAAX,CAAkBkB,UAF1B,EAOAuB,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBG,MAPtB,EAUCyC,KAAK,CAAChD,MAAN,CAAagB,KAAb,CAAmBJ,IAVpB,CAAX;AAeA,IAAMqC,aAAa,uDAAnB;AAIA,IAAMC,SAAS,GAAGX,eAAM,CAACP,KAAV,qBACEgB,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBK,KADxB,EAEIuC,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MAF1B,EAKKwC,KAAK,CAACjB,IAAN,CAAWC,KAAX,CAAiBC,MALtB,EAMCe,KAAK,CAAC1B,IAAN,CAAWI,KAAX,CAAiBF,IANlB,EAOGwB,KAAK,CAAC1B,IAAN,CAAWI,KAAX,CAAiBD,UAPpB,EASDuB,KAAK,CAACjB,IAAN,CAAWC,KAAX,CAAiBE,OAThB,EAUHc,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBE,IAVnB,EAWH;MAAEkB,IAAF,QAAEA,IAAF;SAAYkB,UAAU,CAAClB,IAAD,CAAtB;CAXG,EAcOwB,KAAK,CAAChD,MAAN,CAAakB,KAAb,CAAmBE,UAd1B,EAeL6B,aAfK,EAgBSD,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MAhB/B,EAiBEwC,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBG,MAjBxB,EAyBP0C,aAzBO,EA6BPA,aA7BO,EAiCTA,aAjCS,EAkCcD,KAAK,CAAChD,MAAN,CAAaG,MAlC3B,EAmCI6C,KAAK,CAAChD,MAAN,CAAaE,SAnCjB,EAuCD8C,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MAvCrB,EAwCGwC,KAAK,CAAC1B,IAAN,CAAWI,KAxCd,CAAf;AA8CA,IAAMyB,QAAQ,GAAGZ,eAAM,CAACa,IAAV,qBACAJ,KAAK,CAAC1B,IAAN,CAAWI,KAAX,CAAiBF,IADjB,EAEGwB,KAAK,CAAC1B,IAAN,CAAWI,KAAX,CAAiBD,UAFpB,EAIGuB,KAAK,CAAC1B,IAAN,CAAWO,IAJd,EAMHmB,KAAK,CAAChD,MAAN,CAAaiB,IAAb,CAAkBL,IANf,CAAd;AAUA,IAAMyC,SAAS,GAAGd,eAAM,CAACY,QAAD,CAAT,qBACLH,KAAK,CAAChD,MAAN,CAAagB,KAAb,CAAmBJ,IADd,CAAf;;AAIA,IAAM0C,YAAY,GAAG,SAAfA,YAAe;sBAAMC;IAAM,SAAS,EAAC;SAAtB;CAArB;;AAEA,IAAMC,QAAQ,GAAGjB,eAAM,CAACM,GAAV,qBACJ;MAAErB,IAAF,SAAEA,IAAF;SAAYkB,UAAU,CAAClB,IAAD,CAAtB;CADI,EAIIwB,KAAK,CAACjD,aAJV,EAKOiD,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MAL7B,EAeOwC,KAAK,CAAChD,MAAN,CAAaE,SAfpB,EAgBa8C,KAAK,CAAChD,MAAN,CAAaG,MAhB1B,EAoBK6C,KAAK,CAAChD,MAAN,CAAagB,KAAb,CAAmBL,MApBxB,EAwBKqC,KAAK,CAAChD,MAAN,CAAagB,KAAb,CAAmBL,MAxBxB,EAyBWqC,KAAK,CAAChD,MAAN,CAAagB,KAAb,CAAmBH,MAzB9B,EA6BKmC,KAAK,CAAChD,MAAN,CAAae,OAAb,CAAqBJ,MA7B1B,EAiCKqC,KAAK,CAAChD,MAAN,CAAae,OAAb,CAAqBJ,MAjC1B,EAkCWqC,KAAK,CAAChD,MAAN,CAAae,OAAb,CAAqBF,MAlChC,CAAd;AAsCA,IAAM4C,KAAK,GAAGlB,eAAM,CAACa,IAAV,qBACD,UAAAZ,KAAK;SAAIA,KAAK,CAACkB,MAAN,GAAe,SAAf,GAA2BV,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBE,IAArD;CADJ,EAKP,UAAAkC,KAAK;SAAIA,KAAK,CAACkB,MAAN,kDAAJ;CALE,CAAX;AAeA,IAAMC,OAAO,GAAGpB,eAAM,CAACqB,EAAV,qBAIQZ,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MAJ9B,EAKUwC,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MALhC,EAMKwC,KAAK,CAACjD,aANX,EAeT,UAAAyC,KAAK;SAAIA,KAAK,CAACqB,OAAN,mSAAJ;CAfI,EAkCGb,KAAK,CAAC1B,IAAN,CAAWI,KAAX,CAAiBF,IAlCpB,EAmDMwB,KAAK,CAAChD,MAAN,CAAaiB,IAAb,CAAkBH,EAnDxB,EA2DgBkC,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MA3DtC,CAAb;AAiEA,IAAMsD,WAAW,GAAGvB,eAAM,CAACM,GAAV,oBAAjB;;AC3NO,IAAMkB,KAAK,GAAG,SAARA,KAAQ,CAAAC,KAAK,EAAI;SAErBA,KAAK,CACTC,OADI,CACI,KADJ,EACU,EADV,EAEJA,OAFI,CAEI,aAFJ,EAEkB,OAFlB,EAGJA,OAHI,CAGI,aAHJ,EAGkB,OAHlB,EAIJA,OAJI,CAII,cAJJ,EAImB,IAJnB,CAAP;CAFK;AASP,AAAO,IAAMC,IAAI,GAAG,SAAPA,IAAO,CAAAF,KAAK,EAAI;EACzBA,KAAK,GAAGA,KAAK,CAACG,IAAN,EAAR;MAEKH,KAAK,CAAC,CAAD,CAAL,KAAa,GAAlB,EACIA,KAAK,GAAGA,KAAK,CAACC,OAAN,CAAe,oBAAf,EAAqC,OAArC,CAAR,CADJ,KAGID,KAAK,GAAGA,KAAK,CAACC,OAAN,CAAe,mBAAf,EAAoC,OAApC,CAAR;EAEJD,KAAK,GAAGA,KAAK,CAACC,OAAN,CAAe,oCAAf,EAAqD,UAArD,CAAR;SAEOD,KAAP;CAVG;;;;;;;;;;;;;;;;;;;;;;;;;ACAP,IAAMf,eAAa,uDAAnB;;AAKA,IAAMP,YAAU,GAAG,SAAbA,UAAa,CAAAC,QAAQ,EAAI;UACrBA,QAAR;SACO,YAAL;aACS,MAAP;;SACG,OAAL;aACS,OAAP;;SACG,KAAL;aACS,OAAP;;;aAEO,MAAP;;CATN;;AAaA,IAAMyB,YAAY,GAAG,SAAfA,YAAe,CAAAC,SAAS,EAAI;UACxBA,SAAR;SACO,OAAL;aACSrB,KAAK,CAAChD,MAAN,CAAagB,KAAb,CAAmBJ,IAA1B;;SACG,OAAL;aACSoC,KAAK,CAAChD,MAAN,CAAae,OAAb,CAAqBH,IAA5B;;;aAEO,IAAP;;CAPN;;AAWA,IAAM0D,UAAU,GAAG,SAAbA,UAAa,CAAAC,IAAI,EAAI;UACjBA,IAAR;SACO,OAAL;aACSR,KAAP;;SACG,MAAL;aACSG,IAAP;;;aAEO,IAAP;;CAPN;;AAWA,IAAMhB,WAAS,GAAGX,eAAM,CAACP,KAAV,sBACGgB,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBK,KADzB,EAEKuC,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MAF3B,EAKMwC,KAAK,CAACjB,IAAN,CAAWC,KAAX,CAAiBC,MALvB,EAMEe,KAAK,CAAC1B,IAAN,CAAWf,MAAX,CAAkBiB,IANpB,EAOIwB,KAAK,CAAC1B,IAAN,CAAWf,MAAX,CAAkBkB,UAPtB,EASAuB,KAAK,CAACjB,IAAN,CAAWC,KAAX,CAAiBE,OATjB,EAUFc,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBE,IAVpB,EAWF;MAAEkB,IAAF,QAAEA,IAAF;SAAYkB,YAAU,CAAClB,IAAD,CAAtB;CAXE,EAkBUwB,KAAK,CAACjB,IAAN,CAAWC,KAAX,CAAiBE,OAlB3B,EAuBOc,KAAK,CAAChD,MAAN,CAAakB,KAAb,CAAmBE,UAvB1B,EAwBL6B,eAxBK,EAyBSD,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MAzB/B,EA0BEwC,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBG,MA1BxB,EAoCSyC,KAAK,CAAChD,MAAN,CAAaE,SApCtB,EAqCS,UAAAsC,KAAK;SAAI4B,YAAY,CAAC5B,KAAK,CAACgC,UAAP,CAAhB;CArCd,EAyCLvB,eAzCK,EA0CS,UAAAT,KAAK;SAAI4B,YAAY,CAAC5B,KAAK,CAACgC,UAAP,CAAhB;CA1Cd,EA8CLvB,eA9CK,EA+CmBD,KAAK,CAAChD,MAAN,CAAaG,MA/ChC,EAgDS6C,KAAK,CAAChD,MAAN,CAAaE,SAhDtB,EAoDE8C,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MApDxB,EAqDMwC,KAAK,CAAC1B,IAAN,CAAWI,KArDjB,EAyDOsB,KAAK,CAAChD,MAAN,CAAaiB,IAAb,CAAkBH,EAzDzB,EA0DSkC,KAAK,CAAChD,MAAN,CAAaI,QAAb,CAAsBI,MA1D/B,CAAf;AA+DA,IAAMoC,MAAI,GAAGL,eAAM,CAACM,GAAV,uBACA;MAAErB,IAAF,SAAEA,IAAF;SAAYkB,YAAU,CAAClB,IAAD,CAAtB;CADA,EAMEwB,KAAK,CAAChD,MAAN,CAAaE,SANf,CAAV;AAUA,IAAMuE,KAAK,gBAAGC,gBAAU,CACtB,iBAYGC,GAZH,EAYW;MAXTC,IAWS,SAXTA,IAWS;MAVT7B,KAUS,SAVTA,KAUS;MATT8B,IASS,SATTA,IASS;MARTC,OAQS,SARTA,OAQS;MAPTC,KAOS,SAPTA,KAOS;MANT/D,KAMS,SANTA,KAMS;MALTgE,IAKS,SALTA,IAKS;MAJTC,UAIS,SAJTA,UAIS;MAHTC,QAGS,SAHTA,QAGS;MAFTC,QAES,SAFTA,QAES;MADN3C,KACM;;kBAC2B4C,cAAQ,CAAC,EAAD,CADnC;;MACFC,UADE;MACUC,aADV;;MAGLC,cAAc,GAAG,IAArB;MACIC,OAAO,GAAG,KAAd;;MAEIV,OAAJ,EAAa;IACXU,OAAO,gBAAGjC;MAAM,SAAS,EAAC;WAA1B;IACAgC,cAAc,GAAG,OAAjB;;;MAGE/C,KAAK,CAACiD,QAAV,EAAoBD,OAAO,gBAAGjC,6BAAC,YAAD,OAAV;;MAEhBvC,KAAJ,EAAW;IACTuE,cAAc,GAAG,OAAjB;;;MAGER,KAAJ,EAAW;IACTS,OAAO,gBAAIjC;MAAK,GAAG,EAAEmC;MAArB;IACAH,cAAc,GAAG,OAAjB;;;MAGEI,YAAY,GAAG,IAAnB;;MACIX,IAAJ,EAAU;IAAEW,YAAY,GAAGrB,UAAU,CAACU,IAAD,CAAzB;;;MAENY,YAAY,GAAG,SAAfA,YAAe,CAACC,CAAD,EAAO;QACtBV,QAAJ,EAAc;MAAEA,QAAQ,CAACU,CAAD,CAAR;;;QACZF,YAAJ,EAAkB;MAAEE,CAAC,CAACC,MAAF,CAAS9B,KAAT,GAAiB2B,YAAY,CAACE,CAAC,CAACC,MAAF,CAAS9B,KAAV,CAA7B;;GAFtB;;sBAMET,6BAACX,MAAD;IAAM,IAAI,EAAEJ,KAAK,CAAChB,IAAlB;IAAwB,SAAS,EAAC;KAC/BuB,KAAK,IAAI,CAACyC,OAAV,iBAAqBjC,6BAAC,KAAD;IAAO,OAAO,EAAEqB;KAAO7B,KAAvB,CADxB,EAEGA,KAAK,IAAIyC,OAAT,iBAAoBjC,6BAAC,KAAD;IAAO,OAAO,EAAEqB;KAAO7B,KAAvB,OAA+ByC,OAA/B,CAFvB,eAGEjC;IAAK,KAAK,EAAE;MAACwC,QAAQ,EAAE;;KACpBb,QAAQ,iBAAI3B,cAAK,CAACyC,YAAN,CAAmBzC,cAAK,CAAC0C,QAAN,CAAeC,IAAf,CAAoBhB,QAApB,CAAnB,EAAkD;IAC7D1D,IAAI,EAAE0D,QAAQ,CAAC1C,KAAT,CAAehB,IAAf,IAAuB,MADgC;IAE7D2E,KAAK,kCACAjB,QAAQ,CAAC1C,KAAT,CAAe2D,KADf;MAEHJ,QAAQ,EAAE,UAFP;MAGHK,GAAG,EAAElB,QAAQ,CAAC1C,KAAT,CAAe4D,GAAf,IAAsB,KAHxB;MAIHC,KAAK,EAAE,KAJJ;MAKHC,MAAM,EAAE,SALL;MAMHC,IAAI,EAAGrB,QAAQ,CAAC1C,KAAT,CAAe+D,IAAf,IAAuB;;GARrB,CADf,eAaEhD,6BAACL,WAAD;IACE,IAAI,EAAE0B,IADR;IAEE,EAAE,EAAEA,IAFN;IAGE,SAAS,EAAE,CAACM,QAAQ,IAAI,aAAb,EAA4BA,QAAQ,IAAIA,QAAQ,CAAC1C,KAAT,CAAe+D,IAA3B,IAAmC,cAA/D;KACP/D,KAJN;IAKE,UAAU,EAAE+C,cALd;IAME,GAAG,EAAEZ,GANP;IAOE,QAAQ,EAAEiB;KApBd,EAuBGX,UAAU,IAAIA,UAvBjB,CAHF,EA4BGJ,IAAI,iBAAItB,6BAAC,QAAD,QAAWsB,IAAX,CA5BX,EA6BG7D,KAAK,iBAAIuC,6BAAC,SAAD,qBAAWA;IAAK,GAAG,EAAEiD,EAAV;IAAc,KAAK,EAAE;MAACC,WAAW,EAAE;;IAA9C,OAA0DzF,KAA1D,CA7BZ,CADF;CA3CoB,CAAxB;;AC1HA,SAAS,kBAAkB,CAAC,GAAG,EAAE;EAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC;CACtD;;AAED,qBAAc,GAAG,kBAAkB;;ACNnC,SAAS,gBAAgB,CAAC,IAAI,EAAE;EAC9B,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;CAC/F;;AAED,mBAAc,GAAG,gBAAgB;;ACJjC,SAAS,kBAAkB,GAAG;EAC5B,MAAM,IAAI,SAAS,CAAC,sIAAsI,CAAC,CAAC;CAC7J;;AAED,qBAAc,GAAG,kBAAkB;;ACInC,SAAS,kBAAkB,CAAC,GAAG,EAAE;EAC/B,OAAO,iBAAiB,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,0BAA0B,CAAC,GAAG,CAAC,IAAI,iBAAiB,EAAE,CAAC;CACjH;;AAED,qBAAc,GAAG,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"index.js","sources":["../src/Theme.js","../node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js","../src/Form/index.js","../node_modules/@babel/runtime/helpers/extends.js","../node_modules/@babel/runtime/helpers/defineProperty.js","../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/nonIterableRest.js","../node_modules/@babel/runtime/helpers/slicedToArray.js","../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/objectWithoutProperties.js","../src/Common/input.js","../src/Input/mask.js","../src/Input/index.js","../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/iterableToArray.js","../node_modules/@babel/runtime/helpers/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/toConsumableArray.js","../src/Icons/index.js","../src/Common/tooltip.js","../src/Common/MergeRefs.js","../src/Texts/index.js","../src/Input/select.js","../src/Spacer/index.js","../src/Input/boxes.js","../src/Input/password.js","../src/Input/textarea.js","../src/Input/tag.js","../src/Common/ColorHelper.js","../src/Input/color.js","../node_modules/@babel/runtime/node_modules/regenerator-runtime/runtime.js","../node_modules/@babel/runtime/regenerator/index.js","../node_modules/@babel/runtime/helpers/asyncToGenerator.js","../src/Buttons/index.js","../src/Input/uploader.js","../src/Toggle/index.js","../src/Input/time.js","../src/Buttons/dropdown.js","../src/Buttons/group.js","../src/Buttons/Icons.js","../src/Alerts/index.js"],"sourcesContent":["const defaultRadius = '4px'\n\nconst colors = {\n primary: '#F7931E',\n secondary: '#0071BC',\n action: '#9DDDF4',\n neutrals: {\n black: '#000000',\n gray: '#333333',\n medium: '#707070',\n silver: '#CCCCCC',\n white: '#FFFFFF'\n },\n warnings: {\n border: '#e7a73b',\n text: '#9c6505',\n shadow: '#FAE0B5',\n bg: '#FEF8F0'\n },\n success: {\n border: '#00BDA5',\n text: '#007d6c',\n shadow: '#7FDED2',\n bg: '#E5F8F6'\n },\n error: {\n border: '#F2545B',\n text: '#bd4248',\n shadow: '#F8A9AD',\n bg: '#FDEDEE'\n },\n info: {\n border: '#7C98B6',\n text: '#11598b',\n shadow: '#CBD6E2',\n bg: '#EAF0F6'\n },\n extra: {\n blueishWhite: '#fafbfc',\n whiteSmoke: '#F5F5F5',\n gray93: '#FAFAFA'\n }\n}\n\nconst font = {\n big: {size: '20px', lineHeight: '20px'},\n medium: {size: '14px', lineHeight: '16px'},\n small: {size: '12px', lineHeight: '16px'},\n extraSmall: {size: '10px', lineHeight: '12px'},\n tiny: {size: '8px', lineHeight: '12px'},\n main: '\"Huninn\", sans-serif',\n body: \"-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif\"\n}\n\nconst form = {\n input: {\n radius: defaultRadius,\n padding: '12px 8px'\n },\n button: {\n primary: {bg: colors.primary, hover: '#C46B04 '},\n secondary: {bg: colors.secondary, hover: '#00538A'}\n\n }\n}\n\nconst theme = {colors, form, font, defaultRadius}\n\nexport default theme\n","function _taggedTemplateLiteral(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n\n return Object.freeze(Object.defineProperties(strings, {\n raw: {\n value: Object.freeze(raw)\n }\n }));\n}\n\nmodule.exports = _taggedTemplateLiteral;","import React from 'react';\nimport styled from 'styled-components';\n\nconst Form = styled.form`\n display:flex;\n flex-wrap:wrap;\n flex:1;\n justifyContent:center;\n width:${props => props.width ? props.width : '100%'}\n \n \n >.formAligner {\n margin:0 10px 20px 10px;\n } \n \n`;\n\nexport default Form;\n","function _extends() {\n module.exports = _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nmodule.exports = _extends;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles;","function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit;","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray;","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest;","var arrayWithHoles = require(\"./arrayWithHoles\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableRest = require(\"./nonIterableRest\");\n\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutPropertiesLoose;","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose\");\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutProperties;","import React from 'react'\nimport styled from 'styled-components'\nimport Theme from '../Theme'\n\nconst handleSize = sizeType => {\n switch (sizeType) {\n case 'extraSmall':\n return '80px'\n case 'small':\n return '140px'\n case 'big':\n return '460px'\n default:\n return '300px'\n }\n}\n\nconst Frag = styled.div`\n display:inline-block;\n vertical-align: top;\n`\n\nconst Label = styled.label`\n font-size:${Theme.font.medium.size};\n line-height: ${Theme.font.medium.lineHeight};\n font-weight:normal;\n font-family:\"Huninn\", sans-serif;\n display:block;\n padding-bottom:4px;\n color: ${Theme.colors.neutrals.medium};\n\n >.requiredField {\n color:${Theme.colors.error.text};\n }\n\n`\n\nconst borderDefault = `\n border-width:1px;\n border-style:solid;\n`\nconst InputBase = styled.input`\n background:${Theme.colors.neutrals.white};\n border-color:${Theme.colors.neutrals.silver};\n border-width:1px;\n border-style:solid;\n border-radius:${Theme.form.input.radius};\n font-size:${Theme.font.small.size};\n line-height:${Theme.font.small.lineHeight};\n height:40px;\n padding:${Theme.form.input.padding};\n color:${Theme.colors.neutrals.gray};\n width:${({size}) => handleSize(size)};\n\n &:disabled {\n background: ${Theme.colors.extra.whiteSmoke};\n ${borderDefault};\n border-color: ${Theme.colors.neutrals.silver};\n color: ${Theme.colors.neutrals.medium};\n }\n\n &:disabled::placeholder {\n color:#eee;\n }\n\n &:hover {\n ${borderDefault} ;\n }\n\n &:active {\n ${borderDefault};\n }\n\n &:focus {\n ${borderDefault}\n box-shadow:0px 0px 6px ${Theme.colors.action}\n border-color:${Theme.colors.secondary}\n }\n\n &::placeholder {\n color:${Theme.colors.neutrals.silver};\n font-size:${Theme.font.small};\n font-family:initial;\n }\n\n`\n\nconst SpanHelp = styled.span`\n font-size:${Theme.font.small.size};\n line-height: ${Theme.font.small.lineHeight};\n font-weight:normal;\n font-family: ${Theme.font.main};\n display:block;\n color: ${Theme.colors.info.text};\n margin-top:4px;\n`\n\nconst SpanError = styled(SpanHelp)`\n color:${Theme.colors.error.text}\n`\n\nconst RequiredText = () => <span className='requiredField'>*</span>\n\nconst SelectUi = styled.div`\n width:${({size}) => handleSize(size)};\n height:40px;\n background:white;\n border-radius:${Theme.defaultRadius};\n border:1px solid ${Theme.colors.neutrals.silver};\n cursor:pointer;\n position:relative;\n box-sizing:border-box;\n padding:12px 8px;\n display:flex;\n align-items:center;\n justify-content:space-between;\n\n &.open {\n border-color:${Theme.colors.secondary};\n box-shadow:0 0 6px ${Theme.colors.action};\n }\n\n &.error {\n border-color:${Theme.colors.error.border};\n }\n\n &.error.open {\n border-color:${Theme.colors.error.border};\n box-shadow:0 0 6px ${Theme.colors.error.shadow};\n }\n\n &.valid {\n border-color:${Theme.colors.success.border};\n }\n\n &.valid.open {\n border-color:${Theme.colors.success.border};\n box-shadow:0 0 6px ${Theme.colors.success.shadow};\n }\n`\n\nconst Value = styled.span`\n color:${props => props.option ? '#707070' : Theme.colors.neutrals.gray};\n font-size:14px;\n white-space: nowrap;\n overflow:hidden;\n ${props => props.option && `\n display:inline-block;\n flex:1;\n `}\n\n >span {\n color:#707070;\n }\n`\n\nconst Options = styled.ul`\n padding:0;\n margin:4px 0 0 0;\n background:white;\n border:1px solid ${Theme.colors.neutrals.silver};\n box-shadow:0 0 6px ${Theme.colors.neutrals.silver};\n border-radius:${Theme.defaultRadius};\n list-style:none;\n width:auto;\n display:inline-block;\n position: absolute;\n top: 107%;\n left: -1px;\n z-index:10;\n\n ${props => props.isChild && `\n position:absolute;\n left:100%;\n margin-left:6px;\n top:-4px;\n\n &::before {\n content: \" \";\n height: 100%;\n width: 6px;\n background: transparent;\n display: block;\n position: absolute;\n left: -7px;\n }\n `}\n\n\n li {\n font-size:${Theme.font.small.size};\n color:#707070;\n height:32px;\n cursor:pointer;\n padding:0px 4px 0 8px;\n position:relative;\n display:flex;\n justify-content:space-between;\n align-items:center;\n\n >ul {\n display:none;\n }\n\n\n &:hover,\n &.selected {\n background:${Theme.colors.info.bg};\n\n >ul {\n display:inline-block;\n }\n }\n\n &.alone {\n border-top:1px solid ${Theme.colors.neutrals.silver};\n }\n\n }\n`\n\nconst OptionGroup = styled.div`\n color:#707070;\n font-size:12px;\n padding:8px;\n font-weight:bold;\n cursor:default;\n white-space: nowrap;\n`\n\nexport {\n Frag,\n Label, SpanError, SpanHelp, RequiredText,\n InputBase, SelectUi, Value, Options, OptionGroup\n}\n","\n\nexport const phone = value => {\n\n return value\n .replace(/\\D/g,'')\n .replace(/(\\d{3})(\\d)/,'$1-$2')\n .replace(/(\\d{3})(\\d)/,'$1-$2')\n .replace(/(\\d{4})\\d+?$/,'$1');\n}\n\nexport const time = value => {\n value = value.trim();\n\n if ( value[0] === '1' )\n value = value.replace( /^(1[012])(\\d{1,2})/, '$1:$2' );\n else\n value = value.replace( /^([1-9])(\\d{1,2})/, '$1:$2' );\n\n value = value.replace( /^(\\d{1,2}):?([0-5][0-9]) ?(am|pm)$/, '$1:$2 $3' );\n\n return value;\n};\n","import React, {forwardRef, useState} from 'react'\nimport styled from 'styled-components'\nimport Theme from '../Theme'\nimport Check from '../assets/Check.svg'\nimport Invalid from '../assets/Invalid.svg'\nimport Ex from '../assets/Ex.svg'\n\nimport {Label, RequiredText, SpanHelp, SpanError} from '../Common/input'\n\nimport {phone, time} from './mask'\n\nconst borderDefault = `\n border-width:1px;\n border-style:solid;\n`\n\nconst handleSize = sizeType => {\n switch (sizeType) {\n case 'extraSmall':\n return '80px'\n case 'small':\n return '140px'\n case 'big':\n return '460px'\n default:\n return '100%'\n }\n}\n\nconst handlerColor = typeColor => {\n switch (typeColor) {\n case 'error':\n return Theme.colors.error.text\n case 'valid':\n return Theme.colors.success.text\n default:\n return null\n }\n}\n\nconst handleMask = type => {\n switch (type) {\n case 'phone':\n return phone\n case 'time':\n return time\n default:\n return null\n }\n}\n\nconst InputBase = styled.input`\n background: ${Theme.colors.neutrals.white};\n border-color: ${Theme.colors.neutrals.silver};\n border-width: 1px;\n border-style: solid;\n border-radius: ${Theme.form.input.radius};\n font-size: ${Theme.font.medium.size};\n line-height: ${Theme.font.medium.lineHeight};\n height: 40px;\n padding: ${Theme.form.input.padding};\n color: ${Theme.colors.neutrals.gray};\n width: ${({size}) => handleSize(size)};\n\n &.hasChildren {\n padding-right: 40px;\n }\n\n &.hasChildren.childrenLeft {\n padding-right: ${Theme.form.input.padding};\n padding-left: 40px;\n }\n\n &:disabled {\n background: ${Theme.colors.extra.whiteSmoke};\n ${borderDefault};\n border-color: ${Theme.colors.neutrals.silver};\n color: ${Theme.colors.neutrals.medium};\n }\n\n &:disabled::placeholder {\n color: #eee;\n }\n\n &:hover {\n border-width: 1px;\n border-style: solid;\n border-color: ${Theme.colors.secondary};\n border-color: ${props => handlerColor(props.validation)};\n }\n\n &:active {\n ${borderDefault};\n border-color: ${props => handlerColor(props.validation)};\n }\n\n &:focus {\n ${borderDefault};\n box-shadow: 0px 0px 6px ${Theme.colors.action};\n border-color: ${Theme.colors.secondary};\n }\n\n &::placeholder {\n color: ${Theme.colors.neutrals.silver};\n font-size: ${Theme.font.small};\n }\n\n &:read-only {\n background: ${Theme.colors.info.bg};\n border-color: ${Theme.colors.neutrals.silver};\n color: #707070;\n }\n`\n\nconst Frag = styled.div`\n width:${({size}) => handleSize(size)}\n display:inline-block;\n vertical-align:top;\n\n svg path {\n fill: ${Theme.colors.secondary};\n }\n`\n\nconst Input = forwardRef(\n ({\n name,\n label,\n help,\n invalid,\n valid,\n error,\n mask,\n iconAction,\n children,\n onChange,\n ...props\n }, ref) => {\n const [inputValue, setInputValue] = useState('')\n\n let validationType = null\n let useIcon = false\n\n if (invalid) {\n useIcon = <span className='requiredField'>*</span>\n validationType = 'error'\n }\n\n if (props.Required) useIcon = <RequiredText />\n\n if (error) {\n validationType = 'error'\n }\n\n if (valid) {\n useIcon = (<img src={Check} />)\n validationType = 'valid'\n }\n\n let maskFunction = null\n if (mask) { maskFunction = handleMask(mask) }\n\n const handleChange = (e) => {\n if (onChange) { onChange(e) }\n if (maskFunction) { e.target.value = maskFunction(e.target.value) }\n }\n\n return (\n <Frag size={props.size} className='formAligner'>\n {label && !useIcon && <Label htmlFor={name}>{label}</Label>}\n {label && useIcon && <Label htmlFor={name}>{label} {useIcon}</Label>}\n <div style={{position: 'relative'}}>\n {children && React.cloneElement(React.Children.only(children), {\n size: children.props.size || '24px',\n style: {\n ...children.props.style,\n position: 'absolute',\n top: children.props.top || '8px',\n right: '8px',\n cursor: 'pointer',\n left: (children.props.left && '8px')\n }\n })\n }\n <InputBase\n name={name}\n id={name}\n className={[children && 'hasChildren', children && children.props.left && 'childrenLeft']}\n {...props}\n validation={validationType}\n ref={ref}\n onChange={handleChange}\n />\n\n {iconAction && iconAction}\n </div>\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n </Frag>\n )\n })\n\nexport {InputBase, Frag, handleSize}\n\nexport default Input\n","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\n\nmodule.exports = _arrayWithoutHoles;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableSpread;","var arrayWithoutHoles = require(\"./arrayWithoutHoles\");\n\nvar iterableToArray = require(\"./iterableToArray\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;","import React from 'react'\nimport styled from 'styled-components'\n\nimport {ReactComponent as Activity} from '../assets/icons/activity.svg'\nimport {ReactComponent as Advance} from '../assets/icons/advance.svg'\nimport {ReactComponent as AlertCircle} from '../assets/icons/alert-circle.svg'\nimport {ReactComponent as Amazon} from '../assets/icons/amazon.svg'\nimport {ReactComponent as Android} from '../assets/icons/android.svg'\nimport {ReactComponent as Apple} from '../assets/icons/apple.svg'\nimport {ReactComponent as Archive} from '../assets/icons/archive.svg'\nimport {ReactComponent as ArrowDown} from '../assets/icons/arrow-down.svg'\nimport {ReactComponent as ArrowDownv2} from '../assets/icons/arrow-downV2.svg'\nimport {ReactComponent as ArrowLeft} from '../assets/icons/arrow-left.svg'\nimport {ReactComponent as ArrowRight} from '../assets/icons/arrow-right.svg'\nimport {ReactComponent as ArrowRightLong} from '../assets/icons/arrow-right-long.svg'\nimport {ReactComponent as ArrowRightV2} from '../assets/icons/arrow-rightV2.svg'\nimport {ReactComponent as ArrowUp} from '../assets/icons/arrow-up.svg'\nimport {ReactComponent as ArrowUpV2} from '../assets/icons/arrow-upV2.svg'\nimport {ReactComponent as Avatar} from '../assets/icons/avatar.svg'\nimport {ReactComponent as BackHome} from '../assets/icons/back-home.svg'\nimport {ReactComponent as Balance} from '../assets/icons/balance.svg'\nimport {ReactComponent as Banknote} from '../assets/icons/banknote.svg'\nimport {ReactComponent as Battery} from '../assets/icons/battery.svg'\nimport {ReactComponent as Briefcase} from '../assets/icons/briefcase.svg'\nimport {ReactComponent as Broom} from '../assets/icons/broom.svg'\nimport {ReactComponent as Bucket} from '../assets/icons/bucket.svg'\nimport {ReactComponent as Bug} from '../assets/icons/bug.svg'\nimport {ReactComponent as BuildingV2} from '../assets/icons/buildingV2.svg'\nimport {ReactComponent as Calendar} from '../assets/icons/calendar.svg'\nimport {ReactComponent as CalendarActivity} from '../assets/icons/calendar-activity.svg'\nimport {ReactComponent as CalendarV2} from '../assets/icons/calendarV2.svg'\nimport {ReactComponent as CallV2} from '../assets/icons/callV2.svg'\nimport {ReactComponent as CameraSwitch} from '../assets/icons/camera-switch.svg'\nimport {ReactComponent as CameraV2} from '../assets/icons/cameraV2.svg'\nimport {ReactComponent as Card} from '../assets/icons/cards.svg'\nimport {ReactComponent as ChartSquare} from '../assets/icons/chart-square.svg'\nimport {ReactComponent as Chat} from '../assets/icons/chat.svg'\nimport {ReactComponent as ChatFilled} from '../assets/icons/chat-filled.svg'\nimport {ReactComponent as ChatV2} from '../assets/icons/chatV2.svg'\nimport {ReactComponent as Check} from '../assets/icons/check.svg'\nimport {ReactComponent as CheckCircleFilled} from '../assets/icons/check-circle-filled.svg'\nimport {ReactComponent as CheckDouble} from '../assets/icons/check-double.svg'\nimport {ReactComponent as CheckV2} from '../assets/icons/checkV2.svg'\nimport {ReactComponent as CheckCircle} from '../assets/icons/check-circle.svg'\nimport {ReactComponent as CheckCompletedV2} from '../assets/icons/checkCompletedV2.svg'\nimport {ReactComponent as CheckListV2} from '../assets/icons/checkListV2.svg'\nimport {ReactComponent as CheckNarrow} from '../assets/icons/check-narrow.svg'\nimport {ReactComponent as CheckSquare} from '../assets/icons/check-square.svg'\nimport {ReactComponent as Circle} from '../assets/icons/circle.svg'\nimport {ReactComponent as Clapperboard} from '../assets/icons/clapperboard.svg'\nimport {ReactComponent as Clipboard} from '../assets/icons/clipboard.svg'\nimport {ReactComponent as ClipboardList} from '../assets/icons/clipboard-list.svg'\nimport {ReactComponent as Clock} from '../assets/icons/clock.svg'\nimport {ReactComponent as ClockV2} from '../assets/icons/clockV2.svg'\nimport {ReactComponent as Cog} from '../assets/icons/cog.svg'\nimport {ReactComponent as Contract} from '../assets/icons/contract.svg'\nimport {ReactComponent as Copy} from '../assets/icons/copy.svg'\nimport {ReactComponent as CopyV2} from '../assets/icons/copyV2.svg'\nimport {ReactComponent as CreditCard} from '../assets/icons/credit-card.svg'\nimport {ReactComponent as CreditCardV2} from '../assets/icons/credit-cardV2.svg'\nimport {ReactComponent as Crown} from '../assets/icons/crown.svg'\nimport {ReactComponent as Dashboard} from '../assets/icons/dashboard.svg'\nimport {ReactComponent as Document} from '../assets/icons/document.svg'\nimport {ReactComponent as DocumentAdd} from '../assets/icons/document-add.svg'\nimport {ReactComponent as DocumentEdit} from '../assets/icons/document-edit.svg'\nimport {ReactComponent as Dollar} from '../assets/icons/dollar.svg'\nimport {ReactComponent as DollarV2} from '../assets/icons/dollarV2.svg'\nimport {ReactComponent as Download} from '../assets/icons/download.svg'\nimport {ReactComponent as DownloadV2} from '../assets/icons/downloadV2.svg'\nimport {ReactComponent as DspwNetwork} from '../assets/icons/dspw-network.svg'\nimport {ReactComponent as Emoji} from '../assets/icons/emoji.svg'\nimport {ReactComponent as Fullscreen} from '../assets/icons/fullscreen.svg'\nimport {ReactComponent as GripVertical} from '../assets/icons/grip-vertical.svg'\nimport {ReactComponent as Edit} from '../assets/icons/pencil.svg'\nimport {ReactComponent as EditV2} from '../assets/icons/pencilV2.svg'\nimport {ReactComponent as EllipsisVertical} from '../assets/icons/ellipsis-vertical.svg'\nimport {ReactComponent as Empty} from '../assets/icons/empty.svg'\nimport {ReactComponent as Expand} from '../assets/icons/expand.svg'\nimport {ReactComponent as ExpandV2} from '../assets/icons/expandV2.svg'\nimport {ReactComponent as ExportChat} from '../assets/icons/export-chat.svg'\nimport {ReactComponent as ExportFile} from '../assets/icons/export-file.svg'\nimport {ReactComponent as Eye} from '../assets/icons/eye.svg'\nimport {ReactComponent as EyeV2} from '../assets/icons/eyeV2.svg'\nimport {ReactComponent as EyeCrossed} from '../assets/icons/eye-crossed.svg'\nimport {ReactComponent as Feather} from '../assets/icons/feather.svg'\nimport {ReactComponent as FileCheck} from '../assets/icons/file-check.svg'\nimport {ReactComponent as FileText} from '../assets/icons/file-text.svg'\nimport {ReactComponent as Filter} from '../assets/icons/filter.svg'\nimport {ReactComponent as FilterV2} from '../assets/icons/filterV2.svg'\nimport {ReactComponent as Flag} from '../assets/icons/flag.svg'\nimport {ReactComponent as FlashlightOff} from '../assets/icons/flashlight-off.svg'\nimport {ReactComponent as FlashlightOn} from '../assets/icons/flashlight-on.svg'\nimport {ReactComponent as FlexIn} from '../assets/icons/flex-in.svg'\nimport {ReactComponent as FlexOut} from '../assets/icons/flex-out.svg'\nimport {ReactComponent as FolderV2} from '../assets/icons/folderV2.svg'\nimport {ReactComponent as Fuel} from '../assets/icons/fuel.svg'\nimport {ReactComponent as Gauge} from '../assets/icons/gauge.svg'\nimport {ReactComponent as GeoferenceIn} from '../assets/icons/geofence-in.svg'\nimport {ReactComponent as GeoferenceOut} from '../assets/icons/geofence-out.svg'\nimport {ReactComponent as GraduationHat} from '../assets/icons/graduation-hat.svg'\nimport {ReactComponent as Group} from '../assets/icons/group.svg'\nimport {ReactComponent as GroupFilled} from '../assets/icons/group-filled.svg'\nimport {ReactComponent as HandMoney} from '../assets/icons/hand-money.svg'\nimport {ReactComponent as Headset} from '../assets/icons/headset.svg'\nimport {ReactComponent as Heart} from '../assets/icons/heart.svg'\nimport {ReactComponent as HelpCircle} from '../assets/icons/help-circle.svg'\nimport {ReactComponent as Image} from '../assets/icons/image.svg'\nimport {ReactComponent as ImageV2} from '../assets/icons/imageV2.svg'\nimport {ReactComponent as Impersonate} from '../assets/icons/impersonate.svg'\nimport {ReactComponent as Info} from '../assets/icons/info-circle.svg'\nimport {ReactComponent as InfoCircleV2} from '../assets/icons/info-circleV2.svg'\nimport {ReactComponent as Invoice} from '../assets/icons/invoice.svg'\nimport {ReactComponent as LayerV2} from '../assets/icons/layerV2.svg'\nimport {ReactComponent as Layers} from '../assets/icons/layers.svg'\nimport {ReactComponent as LeftArrow} from '../assets/icons/left-arrow.svg'\nimport {ReactComponent as Lightning} from '../assets/icons/lightning.svg'\nimport {ReactComponent as Line} from '../assets/icons/line.svg'\nimport {ReactComponent as LinkV2} from '../assets/icons/linkV2.svg'\nimport {ReactComponent as List} from '../assets/icons/list.svg'\nimport {ReactComponent as Locker} from '../assets/icons/locker.svg'\nimport {ReactComponent as Loadout} from '../assets/icons/loadout.svg'\nimport {ReactComponent as Lunch} from '../assets/icons/lunch.svg'\nimport {ReactComponent as LunchIn} from '../assets/icons/lunch-in.svg'\nimport {ReactComponent as LunchOut} from '../assets/icons/lunch-out.svg'\nimport {ReactComponent as Mail} from '../assets/icons/mail.svg'\nimport {ReactComponent as Maintenance} from '../assets/icons/maintenance.svg'\nimport {ReactComponent as MaintenanceV2} from '../assets/icons/maintenanceV2.svg'\nimport {ReactComponent as Marker} from '../assets/icons/marker.svg'\nimport {ReactComponent as MapPin} from '../assets/icons/map-pin.svg'\nimport {ReactComponent as Maximize} from '../assets/icons/maximize.svg'\nimport {ReactComponent as Megaphone} from '../assets/icons/megaphone.svg'\nimport {ReactComponent as Menu} from '../assets/icons/menu.svg'\nimport {ReactComponent as Move} from '../assets/icons/move.svg'\nimport {ReactComponent as Mute} from '../assets/icons/mute.svg'\nimport {ReactComponent as NotAllowed} from '../assets/icons/not-allowed.svg'\nimport {ReactComponent as Notes} from '../assets/icons/notes.svg'\nimport {ReactComponent as NotificationV2} from '../assets/icons/notificationV2.svg'\nimport {ReactComponent as Package} from '../assets/icons/package.svg'\nimport {ReactComponent as PackageBack} from '../assets/icons/package-back.svg'\nimport {ReactComponent as PackageCheck} from '../assets/icons/package-check.svg'\nimport {ReactComponent as PackageTimes} from '../assets/icons/package-times.svg'\nimport {ReactComponent as Parking} from '../assets/icons/parking.svg'\nimport {ReactComponent as ParkingGeoIn} from '../assets/icons/parking-geofence-in.svg'\nimport {ReactComponent as ParkingGeoOut} from '../assets/icons/parking-geofence-out.svg'\nimport {ReactComponent as Pause} from '../assets/icons/pause.svg'\nimport {ReactComponent as Person} from '../assets/icons/person.svg'\nimport {ReactComponent as PersonLock} from '../assets/icons/person-lock.svg'\nimport {ReactComponent as Persons} from '../assets/icons/persons.svg'\nimport {ReactComponent as Phone} from '../assets/icons/phone.svg'\nimport {ReactComponent as Pin} from '../assets/icons/pin.svg'\nimport {ReactComponent as Play} from '../assets/icons/play.svg'\nimport {ReactComponent as PlayV2} from '../assets/icons/playV2.svg'\nimport {ReactComponent as Plus} from '../assets/icons/plus.svg'\nimport {ReactComponent as PlusCircle} from '../assets/icons/plus-circle.svg'\nimport {ReactComponent as PlusV2} from '../assets/icons/plusV2.svg'\nimport {ReactComponent as Printer} from '../assets/icons/printer.svg'\nimport {ReactComponent as PrivacyV2} from '../assets/icons/privacyV2.svg'\nimport {ReactComponent as ProfileV2} from '../assets/icons/profileV2.svg'\nimport {ReactComponent as PunchIn} from '../assets/icons/punch-in.svg'\nimport {ReactComponent as PunchOut} from '../assets/icons/punch-out.svg'\nimport {ReactComponent as Radius} from '../assets/icons/radius.svg'\nimport {ReactComponent as Record} from '../assets/icons/record.svg'\nimport {ReactComponent as RecordStop} from '../assets/icons/record-stop.svg'\nimport {ReactComponent as Refresh} from '../assets/icons/refresh.svg'\nimport {ReactComponent as Replace} from '../assets/icons/replace.svg'\nimport {ReactComponent as Rts} from '../assets/icons/rts.svg'\nimport {ReactComponent as ScanV2} from '../assets/icons/scanV2.svg'\nimport {ReactComponent as Search} from '../assets/icons/search.svg'\nimport {ReactComponent as SearchV2} from '../assets/icons/searchV2.svg'\nimport {ReactComponent as SecureV2} from '../assets/icons/secureV2.svg'\nimport {ReactComponent as Segment} from '../assets/icons/segment.svg'\nimport {ReactComponent as Send} from '../assets/icons/send.svg'\nimport {ReactComponent as SendFilled} from '../assets/icons/send-filled.svg'\nimport {ReactComponent as Settings} from '../assets/icons/settings.svg'\nimport {ReactComponent as SettingV2} from '../assets/icons/settingV2.svg'\nimport {ReactComponent as ShareV2} from '../assets/icons/shareV2.svg'\nimport {ReactComponent as SignoutV2} from '../assets/icons/signoutV2.svg'\nimport {ReactComponent as Skill} from '../assets/icons/skills.svg'\nimport {ReactComponent as SoundOff} from '../assets/icons/sound-off.svg'\nimport {ReactComponent as SoundOn} from '../assets/icons/sound-on.svg'\nimport {ReactComponent as Star} from '../assets/icons/star.svg'\nimport {ReactComponent as Sticker} from '../assets/icons/sticker.svg'\nimport {ReactComponent as Swear} from '../assets/icons/swear.svg'\nimport {ReactComponent as Target} from '../assets/icons/target.svg'\nimport {ReactComponent as TimeLine} from '../assets/icons/timeline.svg'\nimport {ReactComponent as TimelineV2} from '../assets/icons/timelineV2.svg'\nimport {ReactComponent as Times} from '../assets/icons/times.svg'\nimport {ReactComponent as TimesCircleV2} from '../assets/icons/timesCircleV2.svg'\nimport {ReactComponent as TimesNarrow} from '../assets/icons/times-narrow.svg'\nimport {ReactComponent as TimesV2} from '../assets/icons/timesV2.svg'\nimport {ReactComponent as Trash} from '../assets/icons/trash.svg'\nimport {ReactComponent as TrendDown} from '../assets/icons/trend-down.svg'\nimport {ReactComponent as TrendingUpV2} from '../assets/icons/trendingUpV2.svg'\nimport {ReactComponent as TrendUp} from '../assets/icons/trend-up.svg'\nimport {ReactComponent as Truck} from '../assets/icons/truck.svg'\nimport {ReactComponent as TruckV2} from '../assets/icons/truckV2.svg'\nimport {ReactComponent as Trophy} from '../assets/icons/trophy.svg'\nimport {ReactComponent as Unarchive} from '../assets/icons/unarchive.svg'\nimport {ReactComponent as Unpin} from '../assets/icons/unpin.svg'\nimport {ReactComponent as Upload} from '../assets/icons/upload.svg'\nimport {ReactComponent as UploadV2} from '../assets/icons/uploadV2.svg'\nimport {ReactComponent as VehicleOil} from '../assets/icons/vehicle-oil.svg'\nimport {ReactComponent as VehicleV2} from '../assets/icons/vehicleV2.svg'\nimport {ReactComponent as Video} from '../assets/icons/video.svg'\nimport {ReactComponent as Volume} from '../assets/icons/volume.svg'\nimport {ReactComponent as Warning} from '../assets/icons/warning.svg'\nimport {ReactComponent as WarningV2} from '../assets/icons/warningV2.svg'\nimport {ReactComponent as Wave} from '../assets/icons/wave.svg'\n\nconst Wrapper = (Element) => {\n const Svg = styled(Element)`\n width: ${props => props.size ? props.size : '40px'}\n height: ${props => props.size ? props.size : '40px'}\n ${props => props.strokeColor && `stroke: ${props.strokeColor} !important;`}\n\n ${props => props.onClick && `\n cursor: pointer;\n `}\n\n path {\n fill:${props => props.color ? props.color + ' !important' : 'currentColor'};\n ${props => props.strokeColor && `stroke: ${props.strokeColor} !important;`}\n }\n\n circle {\n ${props => props.strokeColor && `stroke: ${props.strokeColor} !important;`}\n }\n `\n return Svg\n}\n\nconst Icons = {\n Activity,\n Advance,\n AlertCircle,\n Amazon,\n Android,\n Apple,\n Archive,\n ArrowDown,\n ArrowDownv2,\n ArrowLeft,\n ArrowRight,\n ArrowRightLong,\n ArrowRightV2,\n ArrowUp,\n ArrowUpV2,\n Avatar,\n BackHome,\n Balance,\n Banknote,\n Battery,\n Briefcase,\n Broom,\n Bucket,\n Bug,\n BuildingV2,\n Calendar,\n CalendarActivity,\n CalendarV2,\n CallV2,\n CameraSwitch,\n CameraV2,\n Card,\n ChartSquare,\n Chat,\n ChatFilled,\n ChatV2,\n Check,\n CheckCircleFilled,\n CheckDouble,\n CheckV2,\n CheckCircle,\n CheckCompletedV2,\n CheckListV2,\n CheckNarrow,\n CheckSquare,\n Circle,\n Clapperboard,\n Clock,\n ClockV2,\n Clipboard,\n ClipboardList,\n Cog,\n Contract,\n Copy,\n CopyV2,\n CreditCard,\n CreditCardV2,\n Crown,\n Dashboard,\n Document,\n DocumentAdd,\n DocumentEdit,\n Dollar,\n DollarV2,\n Download,\n DownloadV2,\n DspwNetwork,\n Edit,\n EditV2,\n EllipsisVertical,\n Emoji,\n Empty,\n Expand,\n ExpandV2,\n ExportChat,\n ExportFile,\n Eye,\n EyeV2,\n EyeCrossed,\n Feather,\n FileCheck,\n FileText,\n Filter,\n FilterV2,\n Flag,\n FlashlightOff,\n FlashlightOn,\n FlexIn,\n FlexOut,\n FolderV2,\n Fuel,\n Fullscreen,\n Gauge,\n GeoferenceIn,\n GeoferenceOut,\n GraduationHat,\n GripVertical,\n Group,\n GroupFilled,\n HandMoney,\n Headset,\n Heart,\n HelpCircle,\n Image,\n ImageV2,\n Impersonate,\n Info,\n InfoCircleV2,\n Invoice,\n Layers,\n LayerV2,\n LeftArrow,\n Lightning,\n Line,\n LinkV2,\n List,\n Locker,\n Loadout,\n Lunch,\n LunchIn,\n LunchOut,\n Mail,\n Maintenance,\n MaintenanceV2,\n Marker,\n MapPin,\n Maximize,\n Megaphone,\n Menu,\n Move,\n Mute,\n NotAllowed,\n Notes,\n NotificationV2,\n Package,\n PackageBack,\n PackageCheck,\n PackageTimes,\n Parking,\n ParkingGeoIn,\n ParkingGeoOut,\n Pause,\n Person,\n PersonLock,\n Persons,\n Phone,\n Pin,\n Play,\n PlayV2,\n Plus,\n PlusCircle,\n PlusV2,\n Printer,\n PrivacyV2,\n ProfileV2,\n PunchIn,\n PunchOut,\n Radius,\n Record,\n RecordStop,\n Refresh,\n Replace,\n Rts,\n ScanV2,\n Search,\n SearchV2,\n SecureV2,\n Segment,\n Send,\n SendFilled,\n Settings,\n SettingV2,\n ShareV2,\n SignoutV2,\n Skill,\n SoundOff,\n SoundOn,\n Star,\n Sticker,\n Swear,\n Target,\n TimeLine,\n TimelineV2,\n Times,\n TimesCircleV2,\n TimesNarrow,\n TimesV2,\n Trash,\n TrendDown,\n TrendingUpV2,\n TrendUp,\n Truck,\n TruckV2,\n Trophy,\n Unarchive,\n Unpin,\n Upload,\n UploadV2,\n VehicleOil,\n VehicleV2,\n Video,\n Volume,\n Warning,\n WarningV2,\n Wave\n}\nlet Items = Object.keys(Icons).sort((a, b) => a.localeCompare(b))\n\nItems.forEach(key => {\n Icons[key] = Wrapper(Icons[key])\n})\n\nexport default Icons\n","import React from 'react';\nimport styled from 'styled-components';\nimport Theme from '../Theme'\n\nconst Help = styled.span`\n height:14px;\n width:14px;\n border-radius: 100%;\n background: ${Theme.colors.info.bg}; \n border: 1px solid ${Theme.colors.info.border};\n color:${Theme.colors.info.text};\n font-family:\"Huninn\", sans-serif;\n display: inline-block;\n font-size: 10px;\n text-align:center;\n font-weight:bold;\n position:relative;\n top:-2px;\n left:5px;\n \n >div {\n display:none;\n background:white;\n padding:7px;\n position:absolute;\n top:-40px;\n left:-4px;\n white-space: nowrap;\n font-weight:300;\n color:#707070; \n box-shadow:0 0 6px #ccc;\n \n &::before {\n content: \" \";\n width: 0;\n height: 0;\n border-left: 5px solid transparent;\n border-right: 5px solid transparent;\n border-top: 5px solid white;\n position: absolute;\n bottom: -5px;\n }\n }\n \n &:hover {\n div {\n display:inline-block;\n } \n }\n`;\n\n\nconst App = ({text}) => {\n return(\n <Help>\n <span>?</span>\n <div>{text}</div>\n </Help>\n );\n}\n\nexport default App;\n","const mergeRefs = refs => {\n return value => {\n refs.forEach(ref => {\n if (typeof ref === 'function') {\n ref(value)\n } else if (ref != null) {\n ref.current = value\n }\n })\n }\n};\n\nexport default mergeRefs;\n","import styled from 'styled-components'\nimport Theme from '../Theme'\n\nconst Title = styled.h1`\n font-family: \"Huninn\", sans-serif;\n font-weight: bold;\n font-size: 36px;\n line-height: 40px;\n color: ${Theme.colors.info.text};\n`\n\nconst SubTitle = styled.h3`\n font-family: \"Huninn\", sans-serif;\n font-weight: bold;\n font-size: 24px;\n line-height: 28px;\n color: ${Theme.colors.info.text};\n`\n\nconst ThirdTitle = styled(SubTitle)`\n font-size: 16px;\n line-height: 20px;\n`\n\nconst Text = styled.p`\n font-size: 14px;\n line-height: 16px;\n color: ${Theme.colors.neutrals.gray};\n\n ${({subtle}) => subtle && `\n color:${Theme.colors.neutrals.medium};\n `}\n}\n`\n\nconst Emphasis = styled.span`\n font-family: ${Theme.font.main};\n`\n\nexport {Title, SubTitle, ThirdTitle, Text, Emphasis}\n","import React, {forwardRef, Fragment, useCallback, useEffect, useRef, useState} from 'react'\nimport {createPortal} from 'react-dom'\nimport styled from 'styled-components'\nimport {supercomplete, useCombobox} from '@szhsin/react-autocomplete'\nimport {usePopper} from 'react-popper'\nimport Icon from '../Icons/index'\nimport Theme from '../Theme'\nimport Ex from '../assets/Ex.svg'\nimport Check from '../assets/Check.svg'\nimport Help from '../Common/tooltip'\nimport {Label, RequiredText, SpanHelp, SpanError} from '../Common/input'\nimport mergeRefs from '../Common/MergeRefs'\nimport {Text} from '../Texts/index'\n\nconst Frag = styled.div`\n display: inline-block;\n vertical-align: top;\n ${({fullWidth}) => fullWidth && 'width: 100%;'}\n`\n\nconst handleSize = sizeType => {\n switch (sizeType) {\n case 'extraSmall':\n return '80px'\n case 'small':\n return '140px'\n case 'big':\n return '460px'\n default:\n return '100%'\n }\n}\n\nconst SelectUi = styled.div`\n width: ${({size}) => handleSize(size)};\n height: 40px;\n background: white;\n border-radius: ${Theme.defaultRadius};\n border: 1px solid ${Theme.colors.neutrals.silver};\n cursor: pointer;\n position: relative;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n &:hover {\n border-color: ${Theme.colors.info.border};\n }\n\n &.open {\n border-color: ${Theme.colors.secondary};\n box-shadow: 0 0 6px ${Theme.colors.action};\n }\n\n &.error {\n border-color: ${Theme.colors.error.border};\n }\n\n &.error.open {\n border-color: ${Theme.colors.error.border};\n box-shadow: 0 0 6px ${Theme.colors.error.shadow};\n }\n\n &.valid {\n border-color: ${Theme.colors.success.border};\n }\n\n &.valid.open {\n border-color: ${Theme.colors.success.border};\n box-shadow: 0 0 6px ${Theme.colors.success.shadow};\n }\n\n &[disabled] {\n cursor: not-allowed;\n background: ${Theme.colors.extra.whiteSmoke};\n border-color: ${Theme.colors.neutrals.silver};\n color: ${Theme.colors.neutrals.medium};\n }\n\n &[disabled] input::placeholder {\n color: #eee;\n }\n`\n\nconst Value = styled(Text).attrs(props => ({\n as: 'span'\n}))`\n white-space: nowrap;\n overflow: hidden;\n color: ${Theme.colors.neutrals.medium};\n\n ${props => props.option && `\n display:inline-block;\n flex:1;\n `}\n > span {\n color: #707070;\n }\n`\n\nconst maxOptions = 3\nconst optionsSize = 32\n\nconst Options = styled.ul`\n padding: 0;\n margin: 4px 0;\n background: white;\n border: 1px solid ${Theme.colors.neutrals.silver};\n box-shadow: 0 0 6px ${Theme.colors.neutrals.silver};\n border-radius: ${Theme.defaultRadius};\n list-style: none;\n width: auto;\n display: inline-block;\n position: absolute;\n top: 100%;\n ${props => props.openTo === 'top' && `\n top:unset;\n bottom: 100%;\n `}\n left: -1px;\n z-index: 10;\n\n ${props => !props.hasChildren && `\n max-height: ${props.visibleOptionsQty ? props.visibleOptionsQty * optionsSize : maxOptions * optionsSize}px;\n overflow-x:hidden;\n overflow-y:scroll;\n `}\n ${props => props.isChild && `\n position:absolute;\n left:100%;\n margin-left:4px;\n top:-4px;\n `}\n li {\n font-size: ${Theme.font.small.size};\n color: #707070;\n height: 32px;\n cursor: pointer;\n padding: 0px 4px 0 8px;\n position: relative;\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n > ul {\n display: none;\n }\n\n &::before {\n content: \" \";\n height: 100%;\n width: 6px;\n background: transparent;\n display: block;\n position: absolute;\n right: -7px;\n }\n\n\n &:hover,\n &.active {\n background: ${Theme.colors.info.bg};\n\n > ul {\n display: inline-block;\n }\n }\n\n &.alone {\n border-top: 1px solid ${Theme.colors.neutrals.silver};\n }\n\n }\n`\n\nconst optionsSizeCustom = 42\nconst OptionsPeople = styled(Options)`\n max-height: ${props => props.visibleOptionsQty ? props.visibleOptionsQty * optionsSize : optionsSizeCustom * optionsSize}px;\n overflow-y: scroll;\n\n > li {\n padding-right: 8px;\n height: auto;\n min-height: 32px;\n justify-content: flex-start;\n }\n`\n\nconst SelectHidden = styled.select`\n position: absolute;\n height: 1px;\n width: 1px;\n z-index: -1;\n opacity: 0;\n`\n\nconst PhotoCover = styled.div`\n height: 22px;\n width: 22px;\n overflow: hidden;\n border-radius: 100%;\n border: 1px solid #516F90;\n background: #EAF0F6;\n margin-right: 5px;\n display: flex;\n justify-content: center;\n align-items: center;\n\n > svg {\n margin-top: 2px;\n }\n\n > img {\n width: 25px;\n height: 25px;\n object-fit: cover;\n object-position: center;\n }\n`\n\nconst CustomCheckBox = styled.div`\n background: ${Theme.colors.neutrals.white};\n border-radius: ${Theme.defaultRadius};\n border: 1px solid ${Theme.colors.neutrals.silver};\n height: 16px;\n width: 16px;\n border-radius: ${Theme.defaultRadius};\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-right: 9px;\n\n &:focus {\n border-color: ${Theme.colors.secondary};\n box-shadow: 0 0 6px ${Theme.colors.action};\n }\n\n`\n\nconst OptionGroup = styled.div`\n color: #707070;\n font-size: 12px;\n padding: 8px;\n font-weight: bold;\n cursor: default;\n white-space: nowrap;\n`\n\nconst ColorOption = styled.span`\n height: 16px;\n width: 16px;\n box-sizing: border-box;\n border-radius: 100%;\n border: 2px solid white;\n background: ${props => props.color ? props.color : 'black'};\n z-index: ${props => props.index > 0 ? 10 - props.index : 10};\n margin-left: ${props => props.index > 0 ? '-19px' : '0'}\n margin-right: 8px;\n margin-top: 8px;\n margin-bottom: 8px;\n display: inline-block;\n`\n\nconst Swatches = styled.span`\n display: flex;\n isolation: isolate;\n padding-left: 8px;\n`\n\nconst renderSwatches = colors => colors.length > 0 && (\n <Swatches>\n {colors.slice(0, 3).map((color, index) => <ColorOption key={index} index={index} color={color} />)}\n </Swatches>\n)\n\nconst getSelected = (options, defaultValue) => {\n let selected\n options.some((item) => (\n selected = (item.selected) || (item.value == defaultValue) ? item : getSelected(item.options ? item.options : [], defaultValue))\n )\n return selected\n}\n\nconst SearchInput = styled.input`\n flex: 1;\n min-width: 0;\n border: 0;\n outline: 0;\n padding: 0;\n background: transparent;\n cursor: inherit;\n font-family: inherit;\n font-size: ${Theme.font.medium.size};\n line-height: ${Theme.font.medium.lineHeight};\n color: ${Theme.colors.neutrals.gray};\n padding-left: ${({hasSwatch}) => hasSwatch ? 0 : '8px'};\n\n\n &::placeholder {\n color: ${props => props.hasSelection ? Theme.colors.neutrals.gray : Theme.colors.neutrals.medium};\n opacity: 1;\n }\n`\n\nconst ToggleButton = styled.button`\n border: 0;\n padding-right: 8px;\n background: transparent;\n cursor: inherit;\n display: flex;\n align-items: center;\n height: 100%;\n`\n\nconst isOption = item => item.value !== undefined && item.value !== null\n\nconst scrollIntoView = element => element && element.scrollIntoView({block: 'nearest'})\n\nconst flattenOptions = (options, depth = 0) => (options || []).reduce(\n (rows, item) => rows.concat({item, depth}, flattenOptions(item.options, depth + 1)),\n []\n)\n\n// option names can be React elements, typing and inline completion need their text\nconst optionText = node => {\n if (node === undefined || node === null || typeof node === 'boolean') return ''\n if (typeof node === 'string' || typeof node === 'number') return node.toString()\n if (Array.isArray(node)) return node.map(optionText).join('')\n return node.props ? optionText(node.props.children) : ''\n}\n\nconst matchOptions = (items, text) => {\n if (!text) return items\n const query = text.toLowerCase()\n return items\n .map(item => ({item, at: optionText(item.name).toLowerCase().indexOf(query)}))\n .filter(match => match.at >= 0)\n .sort((a, b) => (a.at > 0) - (b.at > 0))\n .map(match => match.item)\n}\n\n// rendered in document.body so overflow on any ancestor cannot clip it; popper flips and shifts it to stay in the viewport\n// eslint-disable-next-line react/prop-types\nconst FloatingOptions = forwardRef(({anchor, openTo, style, ...props}, ref) => {\n const [list, setList] = useState(null)\n const listRef = useCallback(mergeRefs([setList, ref]), [ref])\n const {styles, attributes, update} = usePopper(anchor, list, {\n strategy: 'fixed',\n placement: openTo === 'top' ? 'top-start' : 'bottom-start',\n modifiers: [{name: 'offset', options: {offset: [0, 4]}}]\n })\n\n // popper repositions only on scroll and resize; follow size changes of the anchor and the list\n useEffect(() => {\n if (!anchor || !list || !update) return\n const observer = new window.ResizeObserver(() => update())\n observer.observe(anchor)\n observer.observe(list)\n return () => observer.disconnect()\n }, [anchor, list, update])\n\n return createPortal(\n <Options\n ref={listRef}\n style={{...style, ...styles.popper, margin: 0, zIndex: 1000000}}\n {...attributes.popper}\n {...props}\n />,\n document.body\n )\n})\n\n// eslint-disable-next-line react/prop-types\nconst AutocompleteSelect = ({\n options,\n selectedOpt,\n setSelected,\n onChange,\n onSelect,\n placeholder,\n error,\n valid,\n noOptions,\n visibleOptionsQty,\n openTo,\n startOpen,\n resetCallback,\n ...props\n}) => {\n const [search, setSearch] = useState()\n const [anchor, setAnchor] = useState(null)\n\n const rows = flattenOptions(options)\n const selectable = rows.filter(row => isOption(row.item)).map(row => row.item)\n const items = matchOptions(selectable, search)\n const hasSelection = selectedOpt.value.length > 0\n const selectedText = optionText(selectedOpt.desc)\n const selectedItem = selectable.find(item => item.value.toString() === selectedOpt.value)\n\n const {getInputProps, getToggleProps, getListProps, getItemProps, open, setOpen, focusIndex} = useCombobox({\n items,\n value: search || '',\n onChange: setSearch,\n selected: selectedItem,\n onSelectChange: item => {\n if (!item) return\n if (onSelect) onSelect(item)\n setSelected({value: item.value.toString(), desc: item.name})\n if (onChange) onChange(item)\n },\n isEqual: (a, b) => a === b || (!!a && !!b && a.value == b.value),\n getItemValue: item => optionText(item.name),\n disabled: props.disabled,\n feature: supercomplete({\n onRequestItem: ({value}, res) => {\n const [first] = matchOptions(selectable, value)\n if (first && optionText(first.name).toLowerCase().startsWith(value.toLowerCase())) res({index: 0, item: first})\n },\n select: true,\n deselectOnClear: false\n })\n })\n\n useEffect(() => {\n if (startOpen) setOpen(true)\n }, [])\n\n const inputProps = getInputProps()\n const shownText = inputProps.value.toLowerCase()\n const shownItem = shownText\n ? [items[focusIndex], ...selectable].find(item => item && optionText(item.name).toLowerCase() === shownText)\n : selectedItem\n const swatchColors = shownItem && shownItem.color ? [shownItem.color] : []\n\n let index = -1\n\n return (\n <SelectUi\n ref={setAnchor}\n className={[open && 'open', error && 'error', valid && 'valid'].filter(Boolean).join(' ')}\n {...props}\n title={selectedText}\n >\n {renderSwatches(swatchColors)}\n <SearchInput\n placeholder={hasSelection ? selectedText : placeholder}\n hasSelection={hasSelection}\n hasSwatch={swatchColors.length > 0}\n {...inputProps}\n />\n <ToggleButton {...getToggleProps()}>\n {open ? <Icon.ArrowUp size='15px' color={Theme.colors.info.border} />\n : <Icon.ArrowDown size='15px' color={Theme.colors.info.border} />}\n </ToggleButton>\n {open &&\n <FloatingOptions anchor={anchor} visibleOptionsQty={visibleOptionsQty} openTo={openTo} {...getListProps()}>\n {items.length === 0 && <li style={{paddingRight: '8px'}}>{noOptions || 'No data found'}</li>}\n {(search ? items.map(item => ({item, depth: 0})) : rows).map(({item, depth}, key) => {\n if (!isOption(item)) {\n return <OptionGroup key={key}\n style={{paddingLeft: 8 + depth * 16}}>{item.name}</OptionGroup>\n }\n index++\n return (\n <li\n key={key}\n className={item.divider ? 'alone' : ''}\n style={{\n paddingLeft: 8 + depth * 16,\n // overrides li:hover, so a resting mouse does not keep a second row lit\n background: focusIndex === index ? Theme.colors.info.bg : 'transparent'\n }}\n {...getItemProps({item, index})}\n >\n {item.color && <ColorOption color={item.color} />}\n <Value option style={{marginRight: 4}}>{item.name}</Value>\n </li>\n )\n })}\n </FloatingOptions>\n }\n </SelectUi>\n )\n}\n\nconst summarizeSelection = names => {\n if (names.length <= 2) return names.join(', ')\n const others = names.length - 2\n return `${names[0]}, ${names[1]} and ${others} other${others > 1 ? 's' : ''}`\n}\n\n// eslint-disable-next-line react/prop-types\nconst MultiAutocompleteSelect = ({\n options,\n selectedValues,\n onToggle,\n placeholder,\n error,\n valid,\n noOptions,\n visibleOptionsQty,\n openTo,\n startOpen,\n ...props\n}) => {\n const [search, setSearch] = useState('')\n const [open, setOpen] = useState(startOpen)\n const [focusIndex, setFocusIndex] = useState(-1)\n const [anchor, setAnchor] = useState(null)\n const nodeRef = useRef()\n const listRef = useRef()\n const setNode = useCallback(mergeRefs([nodeRef, setAnchor]), [])\n\n const close = () => {\n setOpen(false)\n setSearch('')\n setFocusIndex(-1)\n }\n\n useEffect(() => {\n const closeOnOutsideClick = e => {\n const inList = listRef.current && listRef.current.contains(e.target)\n if (nodeRef.current && !nodeRef.current.contains(e.target) && !inList) close()\n }\n document.addEventListener('mousedown', closeOnOutsideClick)\n return () => document.removeEventListener('mousedown', closeOnOutsideClick)\n }, [])\n\n const rows = flattenOptions(options)\n const selectable = rows.filter(row => isOption(row.item)).map(row => row.item)\n const items = matchOptions(selectable, search)\n const selectedItems = selectable.filter(item => selectedValues.includes(item.value.toString()))\n const summary = summarizeSelection(selectedItems.map(item => optionText(item.name)))\n const selectedColors = search ? [] : selectedItems.filter(item => item.color).map(item => item.color)\n\n let index = -1\n\n return (\n <SelectUi\n ref={setNode}\n className={[open && 'open', error && 'error', valid && 'valid'].filter(Boolean).join(' ')}\n {...props}\n title={summary}\n onClick={() => !props.disabled && setOpen(true)}\n >\n {renderSwatches(selectedColors)}\n <SearchInput\n value={search}\n placeholder={summary || placeholder}\n hasSelection={summary.length > 0}\n hasSwatch={selectedColors.length > 0}\n disabled={props.disabled}\n onChange={e => {\n setSearch(e.target.value)\n setOpen(true)\n setFocusIndex(-1)\n }}\n onKeyDown={e => {\n switch (e.key) {\n case 'ArrowDown':\n case 'ArrowUp': {\n e.preventDefault()\n const last = items.length - 1\n if (!open) setOpen(true)\n else if (e.key === 'ArrowDown') setFocusIndex(focusIndex >= last ? 0 : focusIndex + 1)\n else setFocusIndex(focusIndex <= 0 ? last : focusIndex - 1)\n break\n }\n case 'Enter':\n if (open && items[focusIndex]) {\n e.preventDefault()\n onToggle(items[focusIndex])\n }\n break\n case 'Escape':\n close()\n }\n }}\n />\n <ToggleButton\n type='button'\n tabIndex={-1}\n onClick={e => {\n e.stopPropagation()\n if (props.disabled) return\n setOpen(!open)\n setFocusIndex(-1)\n }}\n >\n {open ? <Icon.ArrowUp size='15px' color={Theme.colors.info.border} />\n : <Icon.ArrowDown size='15px' color={Theme.colors.info.border} />}\n </ToggleButton>\n {open &&\n <FloatingOptions anchor={anchor} visibleOptionsQty={visibleOptionsQty} openTo={openTo} ref={listRef}>\n {items.length === 0 && <li style={{paddingRight: '8px'}}>{noOptions || 'No data found'}</li>}\n {(search ? items.map(item => ({item, depth: 0})) : rows).map(({item, depth}, key) => {\n if (!isOption(item)) {\n return <OptionGroup key={key}\n style={{paddingLeft: 8 + depth * 16}}>{item.name}</OptionGroup>\n }\n const itemIndex = ++index\n return (\n <li\n key={key}\n ref={itemIndex === focusIndex ? scrollIntoView : undefined}\n style={{\n paddingLeft: 8 + depth * 16,\n justifyContent: 'flex-start',\n // overrides li:hover, so a resting mouse does not keep a second row lit\n background: itemIndex === focusIndex ? Theme.colors.info.bg : 'transparent'\n }}\n onPointerMove={() => setFocusIndex(itemIndex)}\n onMouseDown={e => e.preventDefault()}\n onClick={e => {\n e.stopPropagation()\n onToggle(item)\n }}\n >\n <CustomCheckBox>\n {selectedValues.includes(item.value.toString()) && <Icon.Check size='17px' />}\n </CustomCheckBox>\n {item.color && <ColorOption color={item.color} />}\n <Value option style={{marginRight: 4}}>{item.name}</Value>\n </li>\n )\n })}\n </FloatingOptions>\n }\n </SelectUi>\n )\n}\n\nconst MultiDropdown = forwardRef(({\n name,\n label,\n help,\n error,\n valid,\n options,\n placeholder,\n onChange,\n defaultValue,\n visibleOptionsQty,\n openTo,\n startOpen = false,\n resetCallback,\n ...props\n}, ref) => {\n const [selectedValues, setSelectedValues] = useState([])\n const valueRef = useRef()\n\n const selectable = flattenOptions(options).filter(row => isOption(row.item)).map(row => row.item)\n\n if (resetCallback) {\n resetCallback(() => setSelectedValues([]))\n }\n\n const hasDefaultValue = defaultValue !== undefined && defaultValue !== null && defaultValue !== ''\n const defaults = (Array.isArray(defaultValue) ? defaultValue\n : hasDefaultValue ? [defaultValue]\n : selectable.filter(item => item.selected).map(item => item.value)\n ).map(String)\n const defaultsKey = defaults.join('\\u0000')\n\n useEffect(() => {\n setSelectedValues(defaults)\n }, [defaultsKey])\n\n useEffect(() => {\n if (!valueRef.current) return\n Array.from(valueRef.current.options).forEach(opt => {\n opt.selected = selectedValues.includes(opt.value)\n })\n valueRef.current.dispatchEvent(new Event('blur'))\n }, [selectedValues, options])\n\n const toggle = item => {\n const value = item.value.toString()\n const next = selectedValues.includes(value)\n ? selectedValues.filter(v => v !== value)\n : [...selectedValues, value]\n setSelectedValues(next)\n if (onChange) onChange(selectable.filter(opt => next.includes(opt.value.toString())))\n }\n\n let useIcon = false\n\n if (props.Required) useIcon = <RequiredText />\n\n if (valid) {\n useIcon = (<img src={Check} />)\n }\n\n return (\n <Frag fullWidth={!props.size}>\n {label && !useIcon && <Label htmlFor={name}>{label}</Label>}\n {label && useIcon && <Label htmlFor={name}>{label} {useIcon}</Label>}\n <MultiAutocompleteSelect\n options={options}\n selectedValues={selectedValues}\n onToggle={toggle}\n placeholder={placeholder}\n error={error}\n valid={valid}\n visibleOptionsQty={visibleOptionsQty}\n openTo={openTo}\n startOpen={startOpen}\n {...props}\n />\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n <SelectHidden\n name={name}\n multiple\n ref={mergeRefs([valueRef, ref])}\n tabIndex={-1}\n disabled={props.disabled}\n >\n {selectable.map((item, k) =>\n <option value={item.value} key={k}>{optionText(item.name)}</option>\n )}\n </SelectHidden>\n </Frag>\n )\n})\n\nconst SingleDropdown = forwardRef(({\n name,\n label,\n help,\n error,\n valid,\n options,\n placeholder,\n onChange,\n defaultValue,\n visibleOptionsQty,\n openTo,\n startOpen = false,\n ...props\n}, ref) => {\n let defaultSelected = {value: '', desc: ''}\n\n const [selectedOpt, setSelected] = useState(defaultSelected)\n\n const valueRef = useRef()\n\n const reset = () => {\n setSelected(defaultSelected)\n }\n\n if (props.resetCallback) {\n props.resetCallback(reset)\n }\n\n const setDefaultValues = useCallback(() => {\n const hasDefault = getSelected(options, defaultValue)\n\n if (hasDefault && hasDefault.value) {\n defaultSelected = {value: hasDefault.value.toString(), desc: hasDefault.name}\n setSelected(defaultSelected)\n } else {\n if (!valueRef.current.value) {\n return\n }\n\n let selected = getSelected(options, valueRef.current.value)\n if (selected && selected.value && selected.value !== selectedOpt.value) {\n setSelected({value: selected.value.toString(), desc: selected.name})\n }\n }\n })\n\n useEffect(() => {\n // if(defaultValue){\n if (options) setDefaultValues()\n // }\n }, [options, defaultValue])\n\n useEffect(() => {\n valueRef.current.value = selectedOpt.value\n valueRef.current.dispatchEvent(new Event('blur'))\n }, [selectedOpt])\n\n let useIcon = false\n\n if (props.Required) useIcon = <RequiredText />\n\n if (valid) {\n useIcon = (<img src={Check} />)\n }\n\n return (\n <Frag fullWidth={!props.size}>\n {label && !useIcon && <Label htmlFor={name}>{label}</Label>}\n {label && useIcon && <Label htmlFor={name}>{label} {useIcon}</Label>}\n <AutocompleteSelect\n options={options}\n selectedOpt={selectedOpt}\n setSelected={setSelected}\n onChange={onChange}\n placeholder={placeholder}\n error={error}\n valid={valid}\n visibleOptionsQty={visibleOptionsQty}\n openTo={openTo}\n startOpen={startOpen}\n {...props}\n />\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n <input name={name} type='hidden' ref={mergeRefs([valueRef, ref])} disabled={props.disabled} />\n </Frag>\n )\n})\n\nconst Dropdown = forwardRef(({multiple, ...props}, ref) => multiple\n ? <MultiDropdown ref={ref} {...props} />\n : <SingleDropdown ref={ref} {...props} />\n)\n\n// eslint-disable-next-line react/prop-types\nexport const BoxOptions = ({\n options,\n isChild,\n setSelected,\n onChange,\n noOptions,\n selectedOpt,\n setOpen,\n onSelect,\n visibleOptionsQty,\n openTo\n}) => {\n if (!options) {\n return (<Options>\n <li style={{paddingRight: '8px'}}>{noOptions || 'No data found'}</li>\n </Options>)\n }\n\n const optionsRef = useRef()\n\n const handleClick = (item, e) => {\n e.stopPropagation()\n setOpen(false)\n if (onSelect) onSelect(item)\n if (selectedOpt === item.value) return false\n setSelected({value: item.value.toString(), desc: item.name})\n if (onChange) onChange(item)\n }\n\n const hasChildren = options.some(el => el.options)\n\n useEffect(() => {\n if (optionsRef.current) {\n const optionsBounds = optionsRef.current.getBoundingClientRect()\n if (optionsBounds.right > window.innerWidth) {\n optionsRef.current.style.left = 'unset'\n optionsRef.current.style.right = '0px'\n }\n }\n }, [])\n\n return (\n <Options isChild={isChild} visibleOptionsQty={visibleOptionsQty} hasChildren={hasChildren} openTo={openTo}\n ref={optionsRef}>\n {options.map((item, key) => (\n <Fragment key={key}>\n {item.value !== undefined && item.value !== null\n ? <li value={item.value} key={key} className={item.divider ? 'alone' : ''} onClick={(e) => {\n handleClick(item, e)\n }}>\n <Value\n option\n style={{marginRight: 4}}\n >\n {item.name}\n </Value>\n {item.options && <Icon.ArrowRight size='15px' color='#7C98B6' />}\n {item.options && <BoxOptions options={item.options} isChild={true} setSelected={setSelected}\n onChange={onChange} selectedOpt={selectedOpt} setOpen={setOpen}\n visibleOptionsQty={visibleOptionsQty} />}\n </li>\n : <OptionGroup>{item.name}</OptionGroup>\n }\n </Fragment>\n ))}\n </Options>\n )\n}\n\nconst CustomDropdown = forwardRef(({\n name,\n label,\n help,\n error,\n valid,\n options,\n placeholder,\n defaultValue,\n multiple,\n type,\n tooltip,\n onChange,\n visibleOptionsQty,\n openTo,\n ...props\n}, ref) => {\n const [open, setOpen] = useState(false)\n const [selectedOpt, setSelected] = useState([])\n\n const nodeSelect = useRef()\n const valueRef = useRef()\n\n const handlOpenSelect = e => {\n if (props.disabled) {\n return\n }\n\n if (multiple) {\n if (e.target.classList.contains('1010list-option')) {\n return\n }\n }\n\n setOpen(!open)\n }\n\n const reset = () => {\n setSelected([])\n }\n\n if (props.resetCallback) {\n props.resetCallback(reset)\n }\n\n const handleClick = e => {\n if (nodeSelect.current.contains(e.target)) {\n return\n }\n\n setOpen(false)\n }\n\n useEffect(() => {\n document.addEventListener('mousedown', handleClick)\n\n return () => {\n document.removeEventListener('mousedown', handleClick)\n }\n }, [])\n\n const setDefaultValues = useCallback(() => {\n let defaults\n\n if (valueRef.current && valueRef.current.value) {\n if (multiple) {\n defaultValue = Array.from(valueRef.current.children)\n .filter(opt => opt.selected == true)\n .map(opt => opt.value)\n } else {\n defaultValue = defaultValue || valueRef.current.value\n }\n }\n\n if (options) {\n defaults = options.map((item, key) => {\n if (item.selected) return key\n }).filter(e => e != null)\n }\n\n if (defaultValue) {\n defaults = options.map((item, key) => {\n if (multiple) {\n if (defaultValue.indexOf(item.value) >= 0) return key\n } else {\n if (item.value == defaultValue) return key\n }\n }).filter(e => e != null)\n }\n\n if (defaults.length) {\n if (multiple) {\n if (selectedOpt.length !== defaults.length ||\n !selectedOpt.every((value, index) => value === defaults[index])) {\n setSelected(defaults)\n }\n } else {\n if (selectedOpt[0] !== defaults[0]) {\n setSelected([defaults[0]])\n }\n }\n }\n\n // const hasDefault = getSelected(options,defaultValue);\n //\n // if(hasDefault && hasDefault.value){\n // defaultSelected = {value:hasDefault.value.toString(),desc:hasDefault.name};\n // setSelected(defaultSelected);\n // } else {\n // if ( !valueRef.current.value )\n // return;\n //\n // let selected = getSelected(options,valueRef.current.value);\n // if ( selected && selected.value )\n // setSelected({ value: selected.value.toString(), desc: selected.name });\n // }\n })\n\n useEffect(() => {\n // if(defaultValue){\n if (options) setDefaultValues()\n // }\n }, [options, defaultValue])\n\n useEffect(() => {\n if (valueRef.current) {\n if (multiple) {\n Array.from(valueRef.current.children)\n .map((opt, k) => opt.selected = selectedOpt.indexOf(k) !== -1)\n } else if (options[selectedOpt]) {\n valueRef.current.value = options[selectedOpt].value\n }\n }\n\n valueRef.current.dispatchEvent(new Event('blur'))\n }, [selectedOpt])\n\n let useIcon = false\n\n if (props.Required) useIcon = <RequiredText />\n\n if (valid) {\n useIcon = (<img src={Check} />)\n }\n\n return (\n <Frag fullWidth={!props.size}>\n {label && !useIcon && <Label htmlFor={name}>{label} {tooltip && <Help text={tooltip} />}</Label>}\n {label && useIcon && <Label htmlFor={name}>{label} {useIcon} {tooltip && <Help text={tooltip} />}</Label>}\n <SelectUi onClick={handlOpenSelect} ref={nodeSelect}\n className={[open && 'open', error && 'error', valid && 'valid']} {...props}>\n <Value style={{display: 'inline-flex', alignItems: 'center', overflow: 'hidden'}}>\n {\n selectedOpt.length > 0\n ? <SelectValueRender options={options} selectedOpt={selectedOpt} type={type}\n noOptions={props.noOptions} />\n : <span>{placeholder}</span>\n }\n </Value>\n {open ? <Icon.ArrowUp size='15px' color={Theme.colors.info.border} />\n : <Icon.ArrowDown size='15px' color={Theme.colors.info.border} />}\n {open &&\n <SelectOption\n options={options}\n setSelected={setSelected}\n selectedOpt={selectedOpt}\n multiple={multiple}\n type={type}\n onChange={onChange}\n noOptions={props.noOptions}\n visibleOptionsQty={visibleOptionsQty}\n openTo={openTo}\n />\n }\n </SelectUi>\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n\n {multiple\n ? <SelectHidden\n name={name}\n multiple\n ref={mergeRefs([valueRef, ref])}\n tabIndex={-1}\n >\n {options && options.map((opt, k) =>\n <option value={opt.value} key={k}>{opt.name}</option>\n )}\n </SelectHidden>\n : <input\n name={name}\n type='hidden'\n ref={mergeRefs([valueRef, ref])}\n />\n }\n\n </Frag>\n )\n})\n\nconst HandleState = (index, setSelected, selectedOpt, multiple, onChange, options) => {\n const key = selectedOpt.includes(index)\n\n let ret\n\n if (key && multiple) {\n selectedOpt.splice(selectedOpt.indexOf(index), 1)\n ret = [...selectedOpt]\n } else {\n if (multiple) {\n let newSelected = Object.assign([], selectedOpt)\n newSelected.push(index)\n ret = newSelected\n } else {\n ret = [index]\n }\n }\n\n if (!multiple && ret.toString() === selectedOpt.toString()) {\n return\n }\n\n const stateMap = options.filter((opt, index) => ret.indexOf(index) !== -1).map(opt => opt.value)\n\n if (typeof onChange === 'function') {\n onChange(multiple ? stateMap : stateMap[0])\n }\n\n setSelected(ret)\n}\n\nconst SelectOption = ({\n options,\n setSelected,\n selectedOpt,\n multiple,\n type,\n onChange,\n noOptions,\n visibleOptionsQty,\n openTo\n}) => {\n if (!options) {\n return (<OptionsPeople>\n <li>{noOptions || 'No data found'}</li>\n </OptionsPeople>)\n }\n return (\n <OptionsPeople visibleOptionsQty={visibleOptionsQty} openTo={openTo}>\n {options.map((item, key) => (\n <Fragment key={key}>\n {item.value !== undefined && item.value !== null\n ? <li value={item.value} className='1010list-option' onClick={() => {\n HandleState(key, setSelected, selectedOpt, multiple, onChange, options)\n }}>\n {multiple && <CustomCheckBox className='1010list-option'>{selectedOpt.includes(key) &&\n <Icon.Check size='17px' />}</CustomCheckBox>}\n {type == 'color' ? <ColorOption color={item.color} className='1010list-option' /> : null}\n {type == 'people' ? <PhotoComponent profile={item.profile} /> : null}\n <Value className='1010list-option'>{item.name}</Value>\n </li>\n : <OptionGroup className='1010list-option'>{item.name}</OptionGroup>\n }\n </Fragment>\n ))}\n </OptionsPeople>\n )\n}\n\nconst PhotoComponent = ({profile, index}) => {\n let customStyle = {position: 'relative', display: 'inline-flex', zIndex: 10}\n\n if (index > 0) {\n customStyle.marginLeft = '-19px'\n customStyle.zIndex -= index\n }\n return (\n <PhotoCover style={customStyle} className='1010list-option'>\n {profile && profile != undefined ? <img src={profile} className='1010list-option' />\n : <Icon.Person className='1010list-option' size='20px' />}\n </PhotoCover>\n )\n}\n\nconst SelectValueRender = ({options, selectedOpt, type, noOptions}) => {\n if (!options) {\n return (\n <Fragment>\n <div style={{display: 'flex'}} />\n <Value>\n {noOptions || 'No Data'}\n </Value>\n </Fragment>\n )\n }\n let Pictures = []\n let Names = []\n\n if (selectedOpt.length > 0 && selectedOpt[0] != undefined) {\n let seq = 0\n selectedOpt.map((key) => {\n if (seq < 3) {\n if (type === 'color') {\n Pictures.push(<ColorOption key={key} index={seq} color={options[key].color} />)\n } else if (type === 'people') {\n Pictures.push(<PhotoComponent key={key} index={seq} profile={options[key].profile} />)\n }\n if (seq == 2) {\n let total = selectedOpt.length - 2\n const plural = (total > 1 ? 's' : '')\n\n if (Names[0].length > 8) {\n let new_desc = Names[0].split(' ')\n if (new_desc[0].length > 8) {\n Names.splice(1, 1)\n ++total\n } else {\n Names[0] = new_desc[0]\n }\n }\n\n Names.push(total + ' other' + plural)\n } else {\n let desc = options[key].name\n if (seq == 1) {\n // let new_desc = desc.split(' ');\n // desc = new_desc[0];\n }\n Names.push(desc)\n }\n }\n ++seq\n })\n }\n\n return (\n <Fragment>\n <div style={{display: 'flex'}}>{Pictures}</div>\n <Value>\n {\n (Names.length > 2) ? Names.join(', ').replace(/,(?=[^,]*$)/, ' and ') : Names.join(', ')\n }\n </Value>\n </Fragment>\n )\n}\n\nexport {CustomDropdown, FloatingOptions, Value, OptionGroup}\n\nexport default Dropdown\n","import React from 'react';\nimport styled from 'styled-components';\n\nconst solveSpace = (type=0) => {\n if(!Number.isInteger(type)){\n return '0';\n }\n if(type < 1){\n return '0';\n }\n return type*4;\n}\n\nconst BaseSpace = styled.div`\n padding-top:${props => solveSpace(props.top)}px;\n padding-left:${props => solveSpace(props.left)}px;\n padding-right:${props => solveSpace(props.right)}px;\n padding-bottom:${props => solveSpace(props.bottom)}px;\n display:${props => props.inline ? 'inline-block' : 'block'}\n`;\n\nconst Spacer = ({all,...props}) => {\n\n if(all){\n props.top = all;\n props.left = all;\n props.right = all;\n props.bottom = all;\n }\n return (<BaseSpace {...props} />)\n}\n\nexport default Spacer;\n","import React, {forwardRef} from 'react'\nimport styled from 'styled-components'\n\nimport Theme from '../Theme'\nimport Icon from '../Icons'\nimport Spacer from '../Spacer'\nimport Ex from '../assets/Ex.svg'\nimport Check from '../assets/Check.svg'\n\nimport {RequiredText, SpanError} from '../Common/input'\nimport {Text} from '../Texts'\n\nconst HiddenCheckbox = styled.input.attrs({type:'checkbox'})`\n display: none;\n`;\n\nconst HiddenRadioBox = styled.input.attrs({type:'radio'})`\n display: none;\n`;\n\n\nconst CheckboxContainer = styled.label`\n display: inline-flex;\n align-items: center;\n cursor: pointer;\n justify-content: center;\n cursor:pointer;\n\n &:focus {\n outline:none;\n }\n `;\n\nconst CustomCheckBox = styled.div`\n background: ${Theme.colors.neutrals.white};\n border-radius: ${Theme.defaultRadius};\n border:1px solid ${Theme.colors.neutrals.silver};\n height:${props => props.radio ? '17px' : '16px'};\n width:${props => props.radio ? '17px' : '16px'};\n border-radius:${props => props.radio ? '17px' : '2px'};\n display: inline-flex;\n justify-content: center;\n align-items: center;\n box-sizing:border-box;\n\n svg {\n display:none;\n }\n\n ${HiddenCheckbox}:focus + &, ${HiddenRadioBox}:focus + & {\n border-color:${Theme.colors.secondary};\n box-shadow:0 0 6px ${Theme.colors.action};\n }\n\n ${HiddenCheckbox}:disabled + &, ${HiddenRadioBox}:disabled + & {\n background:${Theme.colors.neutrals.silver};\n border-color:#707070;\n opacity:0.5;\n cursor:default;\n }\n\n ${HiddenCheckbox}:checked + &, ${HiddenRadioBox}:checked + & {\n svg {\n display:block;\n }\n }\n`;\n\nconst Title = styled.h5`\n font-family:\"Huninn\", sans-serif;\n font-weight:normal;\n font-size:16px;\n color: #707070;\n\n >.requiredField {\n color:${Theme.colors.error.text};\n }\n`;\n\nconst Label = styled.span`\n display:inline-block;\n font-size:14px;\n color:#707070;\n margin-left:8px;\n`;\n\nconst NoOptions = styled(Text)`\n color: ${Theme.colors.neutrals.silver};\n`;\n\nconst CheckboxBase = forwardRef(({name, checked=false,disabled,title,label,error,preventClass,...props},ref) => {\n return(\n <div style={{display:'inline-block'}} className={preventClass ? preventClass : ''}>\n {title && <Title>{title}</Title>}\n <CheckboxContainer className={preventClass ? preventClass : ''}>\n <HiddenCheckbox ref={ref} disabled={disabled} name={name} id={`${name}.${props.value}`} {...props} onChange={()=>{}} defaultChecked={checked} />\n <CustomCheckBox className={preventClass ? preventClass : ''}>\n <Icon.Check size='16px' className={preventClass ? preventClass : ''} />\n </CustomCheckBox>\n <Label className={preventClass ? preventClass : ''}>{label}</Label>\n </CheckboxContainer>\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n </div>\n );\n});\n\n\nconst CheckBox = forwardRef(({name,title,options = [],values,error,...props},ref) => {\n\n // if(!options || !options[0] || options[0] == undefined) {\n // return (<div>Provide an valid array</div>);\n // }\n\n return (\n <div style={{verticalAlign:'middle'}} className='formAligner'>\n {title && <Title>{title} {props.Required && <RequiredText />}</Title>}\n {\n options.map((item,index) => {\n let checked = false;\n\n if(props.defaultValues && props.defaultValues.includes(item.value)) checked = true;\n\n return (\n <Spacer key={index} right={3} style={{display: 'inline-block'}} >\n <CheckboxBase\n key={index}\n name={name}\n value={item.value}\n label={item.label}\n {...props}\n ref={ref}\n checked={checked}\n />\n </Spacer>\n )\n })\n }\n {!options || !options.length && <NoOptions>No options available</NoOptions>}\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n </div>\n );\n\n});\n\n\nconst RadioBoxBase = forwardRef(({name,title,label,error,checked=false, ...props},ref) => {\n return(\n <div style={{display:'inline-block'}}>\n {title && <Title>{title} </Title>}\n <CheckboxContainer>\n <HiddenRadioBox ref={ref} name={name} id={`${name}.${props.value}`} defaultChecked={checked} {...props} />\n <CustomCheckBox radio={true}>\n <Icon.Check size='17px' />\n </CustomCheckBox>\n <Label>{label}</Label>\n </CheckboxContainer>\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n </div>\n );\n});\n\nconst RadioBox = forwardRef(({name,title,options = [],values,error,valid,checked,inline=true,...props},ref) => {\n\n // if(!options || !options[0] || options[0] == undefined) {\n // return (<div>Provide an valid array</div>);\n // }\n\n\n return (\n <div style={{verticalAlign:'middle'}} className='formAligner'>\n {title && <Title>{title} {valid && <img src={Check} />} {props.Required && <RequiredText />}</Title> }\n {!inline && title && <Spacer bottom={1} />}\n {\n options.map((item,index) => {\n let checked = false;\n\n if(props.default && props.default == item.value) checked = true;\n\n return (\n <Spacer key={index} right={3} style={{display: (inline ? 'inline-block' : 'block') }} >\n <RadioBoxBase\n key={index}\n name={name}\n label={item.label}\n value={item.value}\n checked={checked}\n {...props}\n ref={ref}\n />\n </Spacer>\n )\n })\n }\n {!options || !options.length && <NoOptions>No options available</NoOptions>}\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n </div>\n );\n\n});\n\nexport {CheckboxBase};\n\nexport {CheckBox, RadioBox}\n","import React, {useState, forwardRef} from 'react';\n\nimport Icon from '../Icons';\n\nimport Input from './index';\n\n\nconst Password = forwardRef(({...props},ref) => {\n const [visible, setVisible] = useState(false);\n\n const ImgStyle = {position:'absolute',top:'8px',right:'8px',height:'25px',cursor:'pointer'}\n\n\n let eyeImg = (<Icon.Eye style={ImgStyle} size='25px' color='#7C98B6' onClick={() => {setVisible(true)}} />);\n let type = 'password';\n if(visible){\n eyeImg = (<Icon.EyeCrossed style={ImgStyle} size='25px' color='#7C98B6' onClick={() => {setVisible(false)}} />);\n type = 'text';\n }\n\n return (\n <div style={{position:'relative',display:'inline-block',verticalAlign:'middle'}} className='formAligner'>\n <Input {...props} type={type} iconAction={eyeImg} ref={ref} />\n </div>\n )\n})\n\nexport default Password;\n","import React, {forwardRef} from 'react'\nimport styled from 'styled-components'\nimport Check from '../assets/Check.svg'\nimport Ex from '../assets/Ex.svg'\n\nimport {Label, RequiredText, SpanHelp, SpanError} from '../Common/input'\n\nimport {InputBase, Frag} from './index'\n\nconst TextAreaBase = styled(InputBase).attrs({as: 'textarea'})`\n display: block;\n height: auto;\n min-height: 80px;\n resize: vertical;\n font-family: inherit;\n`\n\nconst Textarea = forwardRef(\n ({\n name,\n label,\n help,\n invalid,\n valid,\n error,\n rows = 4,\n ...props\n }, ref) => {\n let validationType = null\n let useIcon = false\n\n if (invalid) {\n useIcon = <span className='requiredField'>*</span>\n validationType = 'error'\n }\n\n if (props.Required) useIcon = <RequiredText />\n\n if (error) {\n validationType = 'error'\n }\n\n if (valid) {\n useIcon = (<img src={Check} />)\n validationType = 'valid'\n }\n\n return (\n <Frag size={props.size} className='formAligner'>\n {label && !useIcon && <Label htmlFor={name}>{label}</Label>}\n {label && useIcon && <Label htmlFor={name}>{label} {useIcon}</Label>}\n <TextAreaBase\n name={name}\n id={name}\n rows={rows}\n {...props}\n validation={validationType}\n ref={ref}\n />\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n </Frag>\n )\n })\n\nexport default Textarea\n","import React,{useState, useRef, useEffect,forwardRef} from 'react';\nimport styled from 'styled-components';\nimport Theme from '../Theme';\nimport {Label, InputBase, RequiredText, SpanHelp, SpanError} from '../Common/input'\nimport Icon from '../Icons';\nimport Ex from '../assets/Ex.svg'\nimport Help from '../Common/tooltip'\nimport mergeRefs from '../Common/MergeRefs';\nimport {handleSize} from './index';\nimport {FloatingOptions, Value, OptionGroup} from './select';\n\nconst Frag = styled.div`\n display:inline-block;\n vertical-align: top;\n ${({size}) => handleSize(size) === '100%' && 'width:100%;'}\n`;\n\nconst Select = styled(InputBase)`\n background:${Theme.colors.neutrals.white};\n box-sizing:border-box;\n cursor:pointer;\n position:relative;\n box-sizing: border-box;\n padding:0;\n\n height:auto;\n min-height:40px;\n width:${({size}) => handleSize(size)};\n\n\n &:hover {\n border-color:${Theme.colors.info.border};\n }\n\n &.open,\n &:focus-within {\n border-color:${Theme.colors.secondary};\n box-shadow:0 0 6px ${Theme.colors.action};\n }\n\n &.error {\n border-color:${Theme.colors.error.border};\n }\n\n &.error.open,\n &.error:focus-within {\n box-shadow:0 0 6px ${Theme.colors.error.shadow};\n }\n\n &.valid {\n border-color:${Theme.colors.success.border};\n }\n\n &.valid.open,\n &.valid:focus-within {\n box-shadow:0 0 6px ${Theme.colors.success.shadow};\n }\n`;\n\nconst maxOptions = 5;\n\nconst TagsValues = styled.ul`\n list-style:none;\n padding:0 5px 3px;\n margin:0;\n display:flex;\n flex-wrap: wrap;\n\n &.small {\n max-width:140px;\n\n >li:not(.input) {\n white-space: pre-wrap;\n }\n }\n\n >li:not(.input) {\n border:1px solid #7C98B6;\n color:#516F90;\n background:#EAF0F6;\n padding:5px;\n margin-right:5px;\n border-radius:${Theme.defaultRadius};\n font-size:12px;\n font-weight:500;\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n white-space: nowrap;\n\n\n >svg {\n padding-left:8px;\n padding-right:3px;\n }\n\n }\n\n >li {\n margin-top:5px;\n input {\n display: inline-block;\n height: 30px;\n width:100%;\n min-width:80px;\n color:#333;\n font-size:14px;\n\n &::placeholder {\n color:#ccc;\n }\n }\n\n &.input {\n flex:1;\n }\n\n\n }\n`;\n\nconst SelectHidden = styled.select`\n position: absolute;\n height: 1px;\n width: 1px;\n z-index: -1;\n opacity: 0;\n`;\n\nconst Tag = forwardRef(({\n name = '',\n options,\n error,\n valid,\n help,\n label,\n tooltip,\n canCreate,\n size,\n onChange,\n placeholder,\n visibleOptionsQty,\n openTo,\n ...props\n},ref) => {\n\n if( !options || !options[0] )\n options = [];\n\n const randId = Math.random() * new Date().getTime();\n const safeName = ('tag' + name + randId.toString()).replace(/\\W/gi, '');\n\n const [search, setSearch] = useState('');\n const [open, setOpen] = useState(!!props.autoFocus);\n const [newOptions, setNewOption] = useState([]);\n const [defaultOptions, setDefaultOptions] = useState( options );\n const [selectedOpt, setSelected] = useState([]);\n\n\n const containerRef = useRef();\n const searchRef = useRef();\n const valueRef = useRef();\n const optionsRef = useRef();\n const [anchor, setAnchor] = useState(null);\n\n\n const isSelected = (value) => selectedOpt.some(key => key == value);\n\n let filter = React.useMemo(() => {\n return options.map((item,key)=>{\n if(isSelected(key))\n return null;\n\n if(item.name.toLowerCase().indexOf(search.toLowerCase()) === -1)\n return null;\n\n return key;\n }).filter(e => e != null);\n }, [options, selectedOpt, search]);\n\n\n if ( JSON.stringify(options) !== JSON.stringify(defaultOptions) )\n setDefaultOptions(options);\n\n options = defaultOptions.concat(newOptions);\n\n let timer;\n const handleChange = e => {\n clearTimeout(timer);\n const s = e.target.value;\n timer = setTimeout(() => setSearch(s), 150);\n }\n\n const handleSelect = (key) => {\n let selected = props.singleOption ? [key] : [...selectedOpt,key];\n\n setSelected( selected );\n\n searchRef.current.value = '';\n setSearch('');\n\n if ( typeof onChange === 'function' ) {\n let values = options.filter( (opt, k) => selected.indexOf( k ) !== -1 );\n onChange( values );\n }\n };\n\n const handleRemove = (index) => {\n if( !selectedOpt.length )\n return;\n\n selectedOpt.splice(selectedOpt.indexOf(index),1);\n let selected = [...selectedOpt];\n setSelected(selected);\n setTimeout(()=>{\n searchRef.current.focus();\n });\n\n if ( typeof onChange === 'function' ) {\n let values = options.filter( (opt, k) => selected.indexOf( k ) !== -1 );\n onChange( values );\n }\n }\n\n const handleClick = e => {\n let elm = e.target;\n\n if (containerRef.current.contains(elm) || optionsRef.current?.contains(elm))\n return;\n\n setOpen(false);\n };\n\n const handleFocus = e => {\n if (e.target.value)\n handleChange(e);\n\n setOpen(true);\n }\n\n const handleBlur = e => {\n if (document.activeElement !== document.body && !containerRef.current.contains(document.activeElement))\n setOpen(false);\n }\n\n const handleKey = e =>{\n let key = e.key.toLowerCase();\n\n switch ( key ) {\n case 'escape':\n setOpen(false);\n return;\n\n case 'backspace':\n return !searchRef.current.value.length && selectedOpt.length && handleRemove(selectedOpt[selectedOpt.length-1]);\n\n case 'arrowup':\n case 'arrowdown':\n if ( !open )\n setOpen(true);\n\n let list = document.querySelectorAll( `#${safeName}-options li[value]` );\n\n if ( !list || !list.length )\n return;\n\n let arr = Array.from(list);\n let activeIndex = arr.findIndex(elm => elm.classList.contains('active') );\n\n if ( activeIndex < 0 )\n return arr[ key === 'arrowdown' ? 0 : arr.length - 1 ].classList.add( 'active' );\n\n let active = arr[activeIndex];\n active.classList.remove( 'active' );\n\n let toBeActive = ( key === 'arrowdown' )\n ? ( arr[activeIndex + 1] )\n ? arr[activeIndex + 1]\n : arr[0]\n : ( arr[activeIndex - 1] )\n ? arr[activeIndex - 1]\n : arr[arr.length - 1]\n ;\n\n toBeActive.classList.add('active');\n toBeActive.scrollIntoView( { block: 'center' } );\n\n case 'arrowright':\n case 'arrowleft':\n return;\n\n case 'tab':\n if (!!!searchRef.current.value)\n return setTimeout(()=>!containerRef.current.contains(document.activeElement) && setOpen(false), 5);\n\n case 'enter':\n let option = document.querySelector( `#${safeName}-options .active` );\n if ( option ) {\n e.preventDefault();\n option.click();\n setTimeout(() => searchRef.current.focus(), 10 );\n }\n return;\n\n default:\n setOpen(true);\n return;\n }\n }\n\n const addNewOption = (newObj) => {\n newObj = {\n ...newObj,\n value: newObj.name,\n new: true\n };\n\n setNewOption([...newOptions,newObj]);\n options.push(newObj);\n\n handleSelect(options.length - 1);\n }\n\n useEffect(()=>{\n\n let selected = options.map(function (item, key) {\n if (item.selected) return key;\n }).filter(function (e) {\n return e != null;\n });\n\n if (props.defaultValues && options.length > 0) {\n props.defaultValues.map( v => {\n let i = options.findIndex( item => item.value.toString() === v.toString() );\n if ( i !== -1 )\n selected.push( i );\n });\n }\n\n if ( valueRef.current && valueRef.current.value ) {\n let fromHookFrom = Array.from( valueRef.current.children )\n .map( ( opt, k ) => opt.selected == true ? k : false )\n .filter( v => v !== false );\n\n selected = selected.concat( fromHookFrom );\n }\n\n setSelected( selected );\n\n },[defaultOptions]);\n\n useEffect(()=>{\n if ( !valueRef.current )\n return;\n\n Array.from(valueRef.current.children)\n .map((opt, k) => opt.selected = selectedOpt.indexOf(k) !== -1);\n valueRef.current.dispatchEvent(new Event('blur'));\n }, [selectedOpt]);\n\n useEffect(() => {\n document.addEventListener(\"mousedown\", handleClick);\n\n return () => {\n document.removeEventListener(\"mousedown\", handleClick);\n };\n }, []);\n\n // integrate hook-form reset\n useEffect(()=>{\n const keys = Array.from(valueRef.current.children)\n .map((opt, k) => opt.selected ? k : false)\n .filter(k => k !== false);\n\n if ( selectedOpt.length !== keys.length\n || !selectedOpt.every((value, index) => value === keys[index]) ) {\n setSelected(keys);\n }\n });\n\n return(\n <Frag ref={containerRef} size={size}>\n {label && <Label htmlFor={name}>{label} {tooltip && <Help text={tooltip}/>} {props.Required && <RequiredText />}</Label>}\n <Select as='div' ref={setAnchor} size={size} className={[open && 'open', error && 'error', valid && 'valid', 'tagEventPrevent']} onClick={()=>{searchRef.current.focus()}}>\n <TagsValues className={size}>\n {selectedOpt.map((key)=> {\n if(options[key]) { return (<li key={key}>{options[key].name} <Icon.TimesNarrow size='8px' color='#516F90' onClick={() => {handleRemove(key)}}/></li>)}\n })}\n <li className='input'>\n <input\n type='text'\n placeholder={placeholder}\n ref={searchRef}\n onChange={handleChange}\n onKeyDown={handleKey}\n autoFocus={!!props.autoFocus}\n onFocus={handleFocus}\n onBlur={handleBlur}\n />\n </li>\n </TagsValues>\n {open &&\n <TagOptions\n anchor={anchor}\n listRef={optionsRef}\n name={safeName}\n filter={filter}\n handleSelect={handleSelect}\n options={options}\n searchRef={searchRef}\n addNewOption={addNewOption}\n canCreate={canCreate}\n visibleOptionsQty={visibleOptionsQty}\n openTo={openTo}\n />\n }\n </Select>\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n <SelectHidden name={name} multiple ref={mergeRefs([valueRef, ref])} tabIndex={-1}>\n {options.map((opt, key)=>(\n <option value={opt.value} key={key}>{opt.name}</option>\n ))}\n </SelectHidden>\n </Frag>\n );\n})\n\nconst TagOptions = ({anchor,listRef,name,filter,handleSelect,options,searchRef,addNewOption,canCreate,visibleOptionsQty,openTo}) => {\n let CreateOption;\n let underscored;\n if(searchRef.current && searchRef.current.value.length > 0){\n if ( canCreate && !options.find(opt => opt.name === searchRef.current.value))\n CreateOption = (<li className='active' onClick={()=>{addNewOption({name:searchRef.current?.value})}} value={searchRef.current.value}><Value option>Create option \"<u className='tagEventPrevent'>{searchRef.current.value}</u>\"</Value></li>);\n\n const searchToUnderscore = searchRef.current ? searchRef.current.value.replaceAll('(','\\\\(').replaceAll(')','\\\\)') : '';\n underscored = new RegExp('('+searchToUnderscore+')','giu');\n }\n\n let noDataOption = '';\n if (!options.length || (filter.filter(i => options[i].value !== undefined).length < 1 && !CreateOption)) {\n let msg = searchRef.current && searchRef.current.value.length < 1\n ? 'No options left'\n : 'No match for ';\n noDataOption = (\n <li className='tagEventPrevent' style={{paddingRight: '8px'}}>\n <span>{msg} <u>{searchRef.current?.value}</u></span>\n </li>\n );\n }\n\n return (\n <FloatingOptions ref={listRef} anchor={anchor} id={`${name}-options`} visibleOptionsQty={visibleOptionsQty || maxOptions} openTo={openTo}>\n {\n options.length > 0 ? filter.map((key, index)=> {\n if (options[key].value === undefined)\n return !noDataOption ? (\n <OptionGroup\n key={key}\n className='tagEventPrevent'\n >\n {options[key].name}\n </OptionGroup>\n ) : null;\n else\n return(\n <li\n className={`tagEventPrevent ${index === 0 ? 'active' : ''}`}\n value={options[key].value}\n key={key}\n onClick={() => {\n handleSelect(key)\n }}>\n <Value option style={{marginRight: 4}}>\n {underscored\n ? options[key].name.split(underscored).map((part, i) => i % 2 ? <u key={i}>{part}</u> : part)\n : options[key].name}\n </Value>\n </li>\n );\n }) : null\n }\n {CreateOption}\n {noDataOption}\n </FloatingOptions>\n );\n}\n\n\nexport default Tag;\n","const hexToRgb =(hex) => {\n const shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\n hex = hex.replace(shorthandRegex, function(m, r, g, b) {\n return r + r + g + g + b + b;\n });\n\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16)\n } : null;\n}\n\nconst luminance = ({r, g, b}) => {\n const a = [r, g, b].map(function (v) {\n v /= 255;\n return v <= 0.03928\n ? v / 12.92\n : Math.pow( (v + 0.055) / 1.055, 2.4 );\n });\n return a[0] * 0.2126 + a[1] * 0.7152 + a[2] * 0.0722;\n}\n\n\nconst calculateContrast = (background='#0000000',text='#fffffff') => {\n\n const color1luminance = luminance(hexToRgb(background));\n const color2luminance = luminance(hexToRgb(text));\n\n const ratio = color1luminance > color2luminance\n ? ((color2luminance + 0.05) / (color1luminance + 0.05))\n : ((color1luminance + 0.05) / (color2luminance + 0.05));\n\n return ratio < (1/4.5);\n}\n\nexport default calculateContrast;\n","import React, {useState, forwardRef, useEffect} from 'react'\nimport styled from 'styled-components'\nimport {Label, SpanHelp, SpanError} from '../Common/input'\nimport Help from '../Common/tooltip'\nimport Icon from '../Icons'\nimport Ex from '../assets/Ex.svg'\n\nimport Theme from '../Theme'\n\nimport calculateContrast from '../Common/ColorHelper'\n\nconst Frag = styled.div`\n display:inline-block;\n vertical-align: top;\n`\n\nconst Field = styled.div`\n position:relative;\n`\n\nconst WraperBucket = styled.div`\n height:40px;\n width:40px;\n //padding: 4px;\n border-radius: ${Theme.defaultRadius};\n border-color: ${Theme.colors.neutrals.silver};\n border-width: 1px;\n border-style: solid;\n cursor:pointer;\n display:flex;\n justify-content:center;\n align-items:center;\n box-sizing:border-box;\n\n &.hover,\n &:focus {\n box-shadow:0px 0px 6px ${Theme.colors.action};\n border:1px solid ${Theme.colors.secondary};\n outline:none;\n }\n`\n\nconst ColorIndicator = styled.div`\n background-color: ${({background}) => background};\n border-radius: ${Theme.defaultRadius};\n flex-grow: 1;\n width: stretch;\n height: stretch;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 4px;\n`\n\nconst ColorBox = styled.ul`\n background:#fff;\n border-radius:${Theme.defaultRadius};\n padding:5px;\n list-style:none;\n margin:0;\n display: grid;\n grid-template-columns: 24px 24px 24px 24px 24px 24px 24px 24px;\n position:absolute;\n left:48px;\n top:0;\n z-index:10;\n box-shadow: 0px 3px 6px ${Theme.colors.neutrals.gray}19;\n\n > li {\n width:24px;\n height:24px;\n cursor:pointer;\n position: relative;\n\n &.selected {\n z-index: 1;\n box-shadow: 0 0 0 2px ${Theme.colors.secondary};\n border-radius: ${Theme.defaultRadius};\n }\n\n &:hover {\n z-index: 2;\n box-shadow: 0 0 0 2px ${Theme.colors.neutrals.gray};\n border-radius: ${Theme.defaultRadius};\n }\n }\n`\n\nconst SelectHidden = styled.select`\n position: absolute;\n height: 1px;\n width: 1px;\n z-index: -1;\n opacity: 0;\n`\n\nconst InputColor = forwardRef(({name, tooltip, value, help, error, label, ...props}, ref) => {\n const [open, setOpen] = useState(false)\n\n const colors = [\n '#7C98B6', '#00A4BD', '#00BDA5', '#F5C26B', '#F2545B', '#f03063', '#BD37A4', '#7B87D4',\n '#516F90', '#0091AE', '#00A38D', '#DBAE60', '#D94C53', '#cc2957', '#853E78', '#5A65B0',\n '#CBD6E2', '#7FD1DE', '#7FDED2', '#FAE0B5', '#F8A9AD', '#f59fb7', '#E3AFD9', '#B4BBE8',\n '#EAF0F6', '#E5F5F8', '#E5F8F6', '#FEF8F0', '#FDEDEE', '#fce3eb', '#F7E4F4', '#F0F1FA'\n ]\n\n let defaultState = []\n\n if (value) {\n const isBlack = calculateContrast(value, '#333333')\n const textColor = (isBlack) ? '#333333' : '#ffffff'\n defaultState = [colors.filter(color => color == value), textColor]\n }\n\n const [selectedColor, setSelectedColor] = useState(defaultState)\n\n useEffect(() => {\n document.addEventListener('mousedown', handleClick)\n return () => {\n document.removeEventListener('mousedown', handleClick)\n }\n }, [])\n\n const handleClick = e => {\n if (e.target.classList.contains('colorEventPrevent')) { return }\n\n setOpen(false)\n }\n\n const handleSelect = color => {\n const isBlack = calculateContrast(color, '#333333')\n const textColor = (isBlack) ? '#333333' : '#ffffff'\n setSelectedColor([color, textColor])\n setOpen(false)\n }\n\n return (\n <Frag>\n {label && <Label htmlFor={name}>{label} {tooltip && <Help text={tooltip} />}</Label>}\n <Field>\n <WraperBucket tabIndex={1} onClick={() => setOpen(!open)} className={['colorEventPrevent', open && 'hover']}>\n <ColorIndicator background={selectedColor[0] && selectedColor[0]}>\n <Icon.Bucket size='28px' className='colorEventPrevent' color={selectedColor[1] ? selectedColor[1] : '#333'} />\n </ColorIndicator>\n </WraperBucket>\n {open &&\n <ColorBox className='colorEventPrevent'>\n {colors.map((item, key) => (\n <li\n key={key}\n className={'colorEventPrevent' + (item === selectedColor[0] ? ' selected' : '')}\n style={{background: item}}\n onClick={() => handleSelect(item)}\n />\n ))}\n </ColorBox>\n }\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight: '6px'}} /> {error}</SpanError>}\n\n <SelectHidden name={name} multiple ref={ref} value={selectedColor} onChange={() => {}}>\n {selectedColor.map((item, key) => (\n <option value={item} key={key} />\n ))}\n </SelectHidden>\n </Field>\n </Frag>\n\n )\n})\n\nexport default InputColor\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] =\n GeneratorFunction.displayName = \"GeneratorFunction\";\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n prototype[method] = function(arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n Gp[toStringTagSymbol] = \"Generator\";\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","module.exports = require(\"regenerator-runtime\");\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nmodule.exports = _asyncToGenerator;","import React, {forwardRef} from 'react'\nimport styled from 'styled-components'\nimport Theme from '../Theme'\n\nconst defaultShadow = (color) => {\n return `0px 0px 6px ${color}`\n}\n\nconst Base = styled.button`\n font-family: ${Theme.font.main};\n font-weight:bold;\n border-radius:${Theme.defaultRadius};\n cursor:pointer;\n display:inline-flex;\n background:${Theme.colors.info.bg}\n color:${Theme.colors.secondary}\n height:40px;\n line-height:40px;\n padding:0 16px;\n font-size: ${Theme.font.medium.size};\n align-items: center;\n gap: 4px;\n white-space: nowrap;\n justify-content: center;\n text-align: center;\n\n > * {\n border-color: ${Theme.colors.info.shadow};\n }\n\n svg path {\n fill: currentColor;\n }\n\n &:hover,\n &.hover {\n background:${Theme.colors.info.shadow};\n }\n\n &:focus,\n &.focus {\n background:${Theme.colors.info.bg};\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n }\n\n &:active,\n &.active {\n background:${Theme.colors.info.shadow};\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n }\n\n &.selected {\n outline: 1px solid ${Theme.colors.secondary};\n position: relative;\n z-index: 1;\n }\n\n &[disabled] {\n opacity: .5;\n cursor: not-allowed;\n }\n`\n\nconst Primary = `\n background:${Theme.form.button.primary.bg};\n color:${Theme.colors.neutrals.white};\n\n > * {\n border-color: ${Theme.colors.neutrals.white};\n }\n\n svg path {\n fill: ${Theme.colors.neutrals.white};\n }\n\n &:hover,\n &.hover {\n background:${Theme.form.button.primary.hover}\n }\n\n &:focus,\n &.focus {\n background:${Theme.form.button.primary.bg};\n box-shadow:${defaultShadow(Theme.form.button.primary.bg)};\n }\n\n &:active,\n &.active {\n background:${Theme.form.button.primary.hover}\n box-shadow:${defaultShadow(Theme.form.button.primary.bg)};\n }\n\n &.selected {\n border: 1px solid ${Theme.colors.neutrals.white};\n }\n`\n\nconst Secondary = `\n background:${Theme.form.button.secondary.bg};\n color:${Theme.colors.neutrals.white};\n\n > * {\n border-color: ${Theme.colors.neutrals.white};\n }\n\n svg path {\n fill: ${Theme.colors.neutrals.white};\n }\n\n &:hover {\n background:${Theme.form.button.secondary.hover}\n }\n\n &:focus {\n background:${Theme.form.button.secondary.bg};\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n }\n\n &:active,\n &.active {\n background:${Theme.form.button.secondary.hover}\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n }\n\n &.selected {\n border: 1px solid ${Theme.colors.neutrals.white};\n }\n`\n\nconst Cancel = `\n background:transparent;\n color:${Theme.form.button.secondary.bg};\n\n > * {\n border-color: ${Theme.colors.info.shadow};\n }\n\n svg path {\n fill: ${Theme.colors.secondary};\n }\n\n &:hover {\n background:transparent;\n text-decoration:underline;\n }\n\n &:focus {\n background:${Theme.colors.neutrals.white};\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n }\n\n &:active,\n &.active {\n background:${Theme.colors.neutrals.white};\n box-shadow:${defaultShadow(Theme.form.button.secondary.bg)};\n text-decoration:underline;\n }\n\n &.selected {\n border: 1px solid ${Theme.form.button.secondary.bg};\n }\n`\n\nconst Delete = `\n background:${Theme.colors.neutrals.white};\n color:${Theme.colors.error.text};\n border:1px solid ${Theme.colors.error.bg};\n\n > * {\n border-color: ${Theme.colors.error.shadow};\n }\n\n svg path {\n fill: ${Theme.colors.error.text};\n }\n\n &:hover {\n border-color:${Theme.colors.error.border};\n background:${Theme.colors.error.bg};\n }\n\n &:focus {\n background:${Theme.colors.neutrals.white};\n border-color:${Theme.colors.error.border};\n box-shadow:${defaultShadow(Theme.colors.error.shadow)};\n }\n\n &:active,\n &.active {\n background:${Theme.colors.error.bg};\n border-color:${Theme.colors.error.border};\n box-shadow:${defaultShadow(Theme.colors.error.shadow)};\n }\n\n &.selected {\n border: 1px solid ${Theme.colors.error.border};\n }\n`\n\nconst Small = `\n height:28px;\n line-height:28px;\n font-size:${Theme.font.small.size};\n padding:0 12px;\n`\n\nconst Big = `\n height:60px;\n line-height:60px;\n font-size:${Theme.font.big.size};\n padding:0 20px;\n`\n\nconst Exportedd = styled(Base)`\n ${props => props.typeStyle === 'primary' && Primary}\n ${props => props.typeStyle === 'secondary' && Secondary}\n ${props => props.typeStyle === 'cancel' && Cancel}\n ${props => props.typeStyle === 'delete' && Delete}\n ${props => props.size === 'small' && Small}\n ${props => props.size === 'big' && Big}\n`\n\nconst Exported = ({size, type, children, Type, ...props}) => {\n return (\n <Exportedd\n type={\n Type || (type === 'cancel'\n ? 'button'\n : undefined)\n }\n size={size}\n typeStyle={type}\n children={children}\n {...props}\n />\n )\n}\n\nexport default Exported\nexport {Base, Primary, Secondary, Cancel, Delete, Big, Small}\n","import React, {forwardRef, useEffect, useRef, useState} from 'react'\nimport styled from 'styled-components'\nimport {InputBase, Label, SpanError, SpanHelp} from '../Common/input'\nimport Icon from '../Icons'\nimport Help from '../Common/tooltip'\nimport Theme from '../Theme'\nimport {Text} from '../Texts'\nimport Ex from '../assets/Ex.svg'\nimport mergeRefs from '../Common/MergeRefs'\nimport Button from '../Buttons';\n\nconst Frag = styled.div`\n display:inline-block;\n vertical-align: top;\n`;\n\nconst Wrapper = styled.label`\n position:relative;\n cursor:pointer;\n\n &:hover {\n .inputFile {\n background:${Theme.colors.info.bg};;\n }\n }\n\n &:focus {\n outline:none;\n }\n\n &:focus-within {\n .inputFile {\n border:1px solid ${Theme.colors.secondary};\n box-shadow: 0px 0px 6px ${Theme.colors.action};\n }\n\n .InputFileProfile {\n border:1px solid ${Theme.colors.secondary};\n }\n }\n\n &.active {\n .inputFile {\n border:1px solid ${Theme.colors.success.border};\n box-shadow: none;\n }\n\n .InputFileProfile {\n border:1px solid ${Theme.colors.success.border};\n }\n }\n\n &.error {\n .inputFile {\n border:1px solid ${Theme.colors.error.border};\n box-shadow: none;\n }\n\n .InputFileProfile {\n border:1px solid ${Theme.colors.error.border};\n }\n }\n`;\n\nconst Input = styled(InputBase)`\n box-sizing:border-box;\n background:#FAFAFA;\n width:140px;\n border-radius: 20px 2px 2px 20px;\n border:1px solid transparent;\n\n &:hover {\n border:none;\n }\n\n >span {\n text-align: center;\n display: block;\n margin-left: 32px;\n color:#707070;\n font-size:14px;\n font-weight:400;\n\n text-overflow: ellipsis;\n height: 16px;\n white-space: nowrap;\n overflow: hidden;\n }\n`;\n\nconst Profile = styled.div`\n height:38px;\n width:38px;\n border-radius:38px;\n background:#FAFAFA;\n border:1px solid ${Theme.colors.neutrals.silver};\n position:absolute;\n z-index:1;\n top:0;\n display: flex;\n justify-content: center;\n align-items: flex-end;\n\n img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n border-radius: 38px;\n }\n`;\n\nconst HiddenInput = styled.input`\n width: 0.1px;\n height: 0.1px;\n opacity: 0;\n overflow: hidden;\n position: absolute;\n z-index: -1;\n`;\n\nconst Uploader = forwardRef(({name,label,tooltip,help,error, placeholder,...props},ref) => {\n const [picture, setPicture] = useState('');\n const acceptedTypes = ['image/jpeg','image/png'];\n\n placeholder = placeholder || <Icon.Person color={Theme.colors.neutrals.silver} size='34px' />;\n\n const handleFile = e => {\n const file = (e.target.files ? e.target.files[0] : null);\n if(file){\n if(acceptedTypes.some(v=>v==file.type)){\n setPicture(file)\n }else{\n setPicture(false)\n e.target.value = '';\n }\n }\n }\n\n const Check = <Icon.Check color={Theme.colors.success.border} size='17px' style={{position:'relative',top:'3px'}} />\n\n return (\n <Frag>\n {label && <Label htmlFor={name}>{label} {picture.type && Check} {tooltip && <Help text={tooltip}/>}</Label>}\n <Wrapper className={[picture.type && 'active', picture === false && 'error', error && 'error']}>\n <Profile className='InputFileProfile'>\n {picture == false || picture.length < 1 ? placeholder : <img src={URL.createObjectURL(picture)} /> }\n </Profile>\n <Input as='div' className='inputFile'>\n {!picture || !picture.length ? (\n <span>Select file</span>\n ) : (\n <span>{picture.name}</span>\n )}\n </Input>\n <HiddenInput type='file' name={name} ref={ref} onFocus={()=>{}} onChange={handleFile} accept=\".jpg,.jpeg,.JPG,.JPEG,.png,.PNG\" />\n </Wrapper>\n {help && <SpanHelp>{help}</SpanHelp>}\n {error && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> {error}</SpanError>}\n {picture === false && <SpanError><img src={Ex} style={{marginRight:'6px'}} /> Only images are accepted</SpanError>}\n </Frag>\n );\n})\n\nexport default Uploader;\n\n\nconst imageToBase64 = file => {\n const reader = new FileReader();\n\n return new Promise(resolve => {\n reader.onload = ev => resolve({\n type: 'image',\n src: ev.target.result\n });\n reader.readAsDataURL(file);\n });\n}\n\nconst documentFile = file => {\n return new Promise(resolve => resolve({\n type: 'doc',\n src: <><Icon.Document/><Text>{file.name}</Text></>\n }));\n}\n\nconst genericFile = file => {\n return new Promise(resolve => resolve({\n type: 'file',\n src: <><Icon.Document/><Text>{file.name}</Text></>\n }));\n}\n\nconst processFileList = async fileList => {\n const promises = Array.from(fileList).map(file => {\n if (file.type.match('image/'))\n return imageToBase64(file);\n\n if (['text/csv'].includes(file.type))\n return documentFile(file);\n\n return genericFile(file);\n });\n\n return await Promise.all(promises);\n}\n\nconst DropUploaderList = styled.div`\n display: inline-flex;\n`;\n\nconst DropUploaderPreview = styled.div`\n box-sizing: border-box;\n width: 92px;\n height: 92px;\n padding: 4px;\n border-radius: ${Theme.defaultRadius};\n border: 1px solid ${Theme.colors.neutrals.silver};\n background-color: ${Theme.colors.extra.whiteSmoke};\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-direction: column;\n font-size: ${Theme.font.extraSmall.size};\n font-family: ${Theme.font.main};\n color: ${Theme.colors.neutrals.silver};\n text-align: center;\n word-break: break-word;\n overflow: hidden;\n\n &::before {\n content: \"\";\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 0;\n background-size: cover;\n background-position: center;\n background-image: url(${props => typeof props.preview === 'string' && props.preview});\n }\n\n + div,\n + label {\n margin-left: 8px;\n }\n\n button {\n position: absolute;\n z-index: 1;\n top: 4px;\n right: 4px;\n padding: 4px;\n height: auto;\n line-height: 0;\n }\n\n label& {\n cursor: pointer;\n border-style: dashed;\n\n &:hover,\n &.highlight {\n background-color: ${Theme.colors.info.bg};\n }\n\n &:active, {\n &.highlight {\n border-color: ${Theme.colors.secondary};\n box-shadow: 0 0 6px ${Theme.colors.secondary};\n }\n }\n`;\n\nexport const DropUploader = forwardRef(({\n name,\n label,\n multiple = true,\n accept = '*',\n ...props\n}, ref) => {\n\n let [files, setFiles] = useState([]);\n const inputRef = useRef();\n const dropRef = useRef();\n\n const handleFileChanges = async () => {\n const inputs = await processFileList(inputRef.current.files);\n setFiles(inputs);\n }\n\n const handleDrop = e => {\n inputRef.current.files = e.dataTransfer.files;\n handleFileChanges();\n }\n\n const dropFile = k => {\n let nFiles = Array.from(inputRef.current.files);\n const deleted = nFiles.splice(k, 1);\n inputRef.current.files = FileListItem(nFiles);\n handleFileChanges()\n if(props.onDelete) props.onDelete(k,deleted);\n }\n\n const expand = file => {\n let w = window.open(file.src, '_blank', `width=${window.outerWidth * .9},height=${window.outerHeight * .9},scrollbars=1`);\n\n if (!file.src.match(/^http/i)) {\n w.document.write(`\n <img src=\"${file.src}\"/>\n `);\n }\n };\n\n const download = async file => {\n let blob = await fetch(file.src).then(res => res.blob(), rej => false);\n\n if (!blob)\n return window.open(file.src);\n\n const anchor = document.createElement('a');\n anchor.href = window.URL.createObjectURL(blob);\n anchor.download = file.src.split('/').pop();\n anchor.click();\n }\n\n const addHighlight = e => dropRef.current.classList.add('highlight');\n const removeHighlight = e => dropRef.current.classList.remove('highlight');\n\n const preventDefaults = e => {\n e.preventDefault();\n e.stopPropagation();\n }\n\n const addListeners = () => {\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach(e => {\n dropRef.current.addEventListener(e, preventDefaults, false);\n });\n\n ['dragenter', 'dragover'].forEach(e => {\n dropRef.current.addEventListener(e, addHighlight, false);\n });\n\n ['dragleave', 'drop'].forEach(e => {\n dropRef.current.addEventListener(e, removeHighlight, false);\n });\n\n dropRef.current.addEventListener('drop', handleDrop);\n }\n\n function FileListItem(a) {\n a = [].slice.call(Array.isArray(a) ? a : arguments)\n for (var c, b = c = a.length, d = !0; b-- && d;) d = a[b] instanceof File\n if (!d) throw new TypeError(\"expected argument to FileList is File or array of File objects\")\n for (b = (new ClipboardEvent(\"\")).clipboardData || new DataTransfer; c--;) b.items.add(a[c])\n return b.files\n }\n\n const removeListeners = node => {\n ['dragenter', 'dragover', 'dragleave', 'drop'].forEach(e => {\n node.removeEventListener(e, preventDefaults);\n node.removeEventListener(e, addHighlight);\n node.removeEventListener(e, removeHighlight);\n node.removeEventListener(e, handleDrop);\n });\n }\n\n useEffect(() => {\n const node = dropRef.current;\n addListeners();\n\n return () => removeListeners(node);\n }, [dropRef.current]);\n\n // display placeholder\n if (Array.isArray(props.placeholder)) {\n let validPlaceholder = props.placeholder.filter(f => {\n return typeof f.type === 'string'\n && typeof f.src === 'string';\n })\n\n files = validPlaceholder.concat(files);\n }\n\n return (\n <Frag>\n {label && <Label>{label}</Label>}\n <HiddenInput\n type={'file'}\n name={name}\n id={`drop-uploader-${name}`}\n ref={mergeRefs([inputRef, ref])}\n accept={accept}\n multiple={multiple}\n onChange={handleFileChanges}\n onFocus={addHighlight}\n onBlur={removeHighlight}\n />\n <DropUploaderList>\n {files.map((file, k) =>\n <DropUploaderPreview\n key={k}\n preview={file.src}\n >\n\n <Button type='delete' Type='button' onClick={()=>dropFile(k)} style={{top:'unset',bottom:'4px'}}>\n <Icon.Times size='16px' color={Theme.colors.error.text}/>\n </Button>\n {file.type === 'image' && (\n <Button Type='button' onClick={()=>expand(file)}>\n <Icon.Expand size='16px'/>\n </Button>\n )}\n {file.type !== 'image' && typeof file.src === 'string' && (\n <>\n <Button Type='button' title={`Download ${file.src}`} onClick={()=>download(file)}>\n <Icon.Download size='16px'/>\n </Button>\n <Icon.Document/>\n <Text>{file.src.split('/').pop().substr(-20, 20)}</Text>\n </>\n )}\n {file.type !== 'image' && typeof file.src !== 'string' && file.src}\n </DropUploaderPreview>\n )}\n <DropUploaderPreview\n as={'label'}\n htmlFor={`drop-uploader-${name}`}\n ref={dropRef}\n >\n <span>Drop or select</span>\n <Icon.Upload color={Theme.colors.neutrals.silver} size='24px'/>\n <span>to upload</span>\n </DropUploaderPreview>\n </DropUploaderList>\n </Frag>\n )\n});\n","import React, {forwardRef, useEffect, useState} from 'react'\nimport styled from 'styled-components'\nimport {Label, SpanHelp} from '../Common/input'\nimport Help from '../Common/tooltip'\nimport Theme from '../Theme'\n\nconst Frag = styled.div`\n display:inline-block;\n vertical-align: top;\n`\n\nconst CheckBoxWrapper = styled.div`\n position: relative;\n display: flex;\n align-items: center;\n ${props => props.hasLabel && 'height: 40px;'}\n\n &:focus {\n outline: none;\n }\n`\n\nconst CheckBoxLabel = styled.label`\n width: 36px;\n height: 20px;\n border-radius: 100px;\n background: ${Theme.colors.neutrals.white};\n cursor: pointer;\n border: 1px solid ${Theme.colors.info.border};\n box-sizing: border-box;\n transition: 0.2s;\n flex-shrink: 0;\n\n &:focus {\n box-shadow: 0px 0px 6px ${Theme.colors.action};\n border: 1px solid ${Theme.colors.secondary};\n outline: none;\n }\n\n &::after {\n content: \"\";\n display: block;\n border-radius: 100%;\n width: 12px;\n height: 12px;\n margin: 3px;\n background: ${Theme.colors.info.border};\n transition: 0.2s;\n }\n`\n\nconst CheckBox = styled.input`\n width: 0;\n height: 0;\n margin: 0;\n visibility: hidden;\n pointer-events: none;\n\n &:checked + ${CheckBoxLabel} {\n background: ${Theme.colors.info.text};\n border: 1px solid ${Theme.colors.info.border};\n\n &::after {\n background:${Theme.colors.neutrals.white};\n margin-left: 19px;\n }\n }\n`\n\nconst ToggleLabel = styled.label`\n display: inline-block;\n color: ${Theme.colors.neutrals.medium};\n font-size: ${Theme.font.medium.size};\n line-height: ${Theme.font.medium.lineHeight};\n font-weight: normal;\n font-family: \"Huninn\", sans-serif;\n vertical-align: top;\n padding-left: 8px;\n outline: none;\n cursor: pointer;\n`\n\nconst Toggle = forwardRef(({\n name,\n label,\n tooltip,\n help,\n offText,\n onText,\n singleText,\n on = false,\n onChange,\n ...props\n}, ref) => {\n const [value, setValue] = useState(on)\n\n let textOn, textOff\n\n if (onText) textOn = onText\n if (offText) textOff = offText\n\n if (singleText) {\n textOff = singleText\n textOn = singleText\n }\n\n useEffect(() => {\n setValue(on)\n }, [on])\n\n const range = Math.floor(Math.random() * 2000)\n\n const handleChange = e => {\n setValue(e.target.checked)\n if (onChange) onChange(e)\n }\n\n const id = `${name}_${range}`\n\n return (\n <Frag>\n {label && <Label htmlFor={id}>{label} {tooltip && <Help text={tooltip} />}</Label>}\n <CheckBoxWrapper hasLabel={!!label}>\n <CheckBox\n name={name}\n id={id}\n type='checkbox'\n textOn={textOn}\n ref={ref}\n checked={value && true}\n onChange={handleChange}\n />\n <CheckBoxLabel\n tabIndex={1}\n htmlFor={id}\n // big={big}\n />\n <ToggleLabel htmlFor={id} tabIndex={-1}>\n {singleText || (value\n ? textOn\n : textOff)\n }\n </ToggleLabel>\n </CheckBoxWrapper>\n {help && <SpanHelp>{help}</SpanHelp>}\n </Frag>\n )\n})\n\nexport default Toggle\n","import React, {useState, forwardRef, useRef, useEffect} from 'react'\nimport styled from 'styled-components';\nimport Icon from '../Icons/index';\nimport Theme from '../Theme'\nimport Input from './index';\nimport {Frag, Options, OptionGroup} from '../Common/input'\nimport mergeRefs from '../Common/MergeRefs';\n\n\nconst padZero = n => n < 10 ? '0' + n : n;\n\nconst pattern = /^(1[012]|[1-9]):([0-5][0-9]) ?(am|pm)$/i;\n\nDate.prototype.stdTimezoneOffset = function() {\n const jan = new Date(this.getFullYear(), 0, 1);\n const jul = new Date(this.getFullYear(), 6, 1);\n return Math.max(jan.getTimezoneOffset(), jul.getTimezoneOffset());\n}\n\nDate.prototype.dst = function() {\n return this.getTimezoneOffset() < this.stdTimezoneOffset();\n}\n\nconst today = new Date();\n// UTC conversion\nlet offset = today.getTimezoneOffset();\n/*if(!today.dst()){\n if(offset > 0){\n offset -= 60;\n }else{\n offset += 60;\n }\n}*/\nconst offsetHours = Math.floor( offset / 60 );\nconst offsetMinutes = offset % 60;\nconst toUTC = ({hours, minutes}) => {\n let m = minutes + offsetMinutes;\n if ( m < 0 )\n m += 60;\n\n let h = hours + offsetHours;\n h = h > 23\n ? h - 24\n : h < 0\n ? 24 + h\n : h;\n\n return `${padZero(h)}:${padZero(m)}`;\n}\n\nconst fromUTC = ({hours, minutes}) => {\n let m = minutes - offsetMinutes;\n if ( m >= 60 )\n m -= 60;\n\n let h = hours - offsetHours;\n h = h < 0\n ? 24 + h\n : h > 23\n ? h - 24\n : h;\n\n return {\n hours: h,\n minutes: m\n };\n};\n\nconst fromFormat = str => {\n let matches = str.match( pattern );\n\n if ( matches === null )\n return null;\n\n let [input, hours, minutes, period] = matches;\n\n return {\n hours: parseInt(hours),\n minutes: parseInt(minutes),\n period: period\n };\n};\n\nconst toFormat = ({hours, minutes, period}) => {\n if ( !hours && !minutes && !period )\n return '';\n\n if ( hours === 0 && minutes === 0 && period === 'am' )\n hours = 12;\n\n minutes = minutes === ''\n ? minutes\n : minutes < 10\n ? '0' + minutes : minutes;\n\n return hours + ':' + minutes + ' ' + period;\n};\n\nconst fromValue = str => {\n let matches = str.match( /^(\\d{1,2}):(\\d{1,2})$/ );\n\n if ( matches === null )\n return null;\n\n let {hours, minutes} = fromUTC({\n hours: parseInt(matches[1]),\n minutes: parseInt(matches[2])\n });\n\n let period = 'am';\n\n if ( hours >= 12 ) {\n hours -= 12;\n period = 'pm';\n }\n\n if ( hours === 0 )\n hours = 12;\n\n return {\n hours: hours,\n minutes: minutes,\n period: period\n };\n};\n\nconst toValue = ({hours, minutes, period}) => {\n if ( !hours && !minutes && !period )\n return '';\n\n let nw = hours;\n nw = period === 'pm'\n ? nw + 12\n : nw;\n\n if ( nw === 12 && period === 'am' ) {\n nw = 0;\n }\n\n if ( nw === 24 )\n nw = 12;\n\n return toUTC({\n hours: nw,\n minutes: minutes\n });\n};\n\nconst fromMilliseconds = milliseconds => {\n let period = 'am';\n\n let hours = Math.floor( milliseconds / 3600 / 1000 );\n\n let fraction = milliseconds / 3600 / 1000 - hours;\n let minutes = Math.floor( fraction * 60 );\n\n if ( hours >= 12 ) {\n hours -= 12;\n period = 'pm';\n }\n\n if ( hours === 0 )\n hours = 12;\n\n return {\n hours: hours,\n minutes: minutes,\n period: period\n }\n};\n\nconst TimePickerOptionsStyle = styled.div`\n position: relative;\n\n ${Options} {\n left: 0;\n top: -21px;\n height: 192px;\n overflow: auto;\n\n li {\n padding-right: 8px;\n }\n }\n\n ${OptionGroup} {\n font-size: ${Theme.font.extraSmall.size};\n line-height: ${Theme.font.extraSmall.lineHeight};\n position: sticky;\n top: 0;\n z-index: 1;\n background: ${Theme.colors.neutrals.white};\n\n &:hover {\n background: ${Theme.colors.neutrals.white};\n }\n }\n`;\n\nconst TimePickerOptions = ({time, setTime}) => {\n const optionsRef = useRef();\n\n const hours = []\n for (let i = 1; i <= 12; i++)\n hours.push(\n <li\n key={i}\n onClick={()=>handleSelect('hours', i)}\n className={time.hours === i ? 'selected' : ''}\n >{i}</li>\n )\n\n const minutes = []\n for (let i = 0; i <= 59; i++)\n minutes.push(\n <li\n key={i}\n onClick={()=>handleSelect('minutes', i)}\n className={time.minutes === i ? 'selected' : ''}\n >{i < 10 ? '0'+i : i}</li>\n )\n\n const handleSelect = (what, value) => {\n let newTime = { ...time };\n newTime[what] = value;\n setTime(newTime);\n };\n\n\n useEffect(()=>{\n optionsRef.current\n .querySelectorAll( '.selected' )\n .forEach( li => li.scrollIntoView( { block: 'center' } ) )\n }, [ time ]);\n\n return (\n <TimePickerOptionsStyle ref={optionsRef}>\n <Options>\n <OptionGroup as='li'>Hour</OptionGroup>\n {hours}\n </Options>\n <Options style={{left: 45}}>\n <OptionGroup as='li'>Minutes</OptionGroup>\n {minutes}\n </Options>\n <Options style={{left: 108}}>\n <OptionGroup as='li'>&nbsp;</OptionGroup>\n <li\n onClick={()=>handleSelect('period', 'am')}\n className={time.period === 'am' ? 'selected' : ''}\n >am</li>\n <li\n onClick={()=>handleSelect('period', 'pm')}\n className={time.period === 'pm' ? 'selected' : ''}\n >pm</li>\n </Options>\n </TimePickerOptionsStyle>\n )\n};\n\nconst TimePicker = forwardRef(({\n name,\n label,\n size,\n placeholder,\n valid,\n error,\n onChange,\n Required,\n defaultValue,\n milliseconds,\n ...props\n }, ref) => {\n\n const [open, setOpen] = useState( false );\n const containerRef = useRef();\n\n const [time, setTime] = useState( {\n hours: '',\n minutes: '',\n period: ''\n });\n const valueRef = useRef();\n const displayRef = useRef();\n\n\n const maybeClose = evt => {\n if ( !open )\n return;\n\n if ( !containerRef.current.contains( evt.target ) )\n setOpen( false );\n };\n\n const handleFocus = evt => {\n setOpen( true );\n };\n\n const handleKeyDown = evt => {\n let key = evt.key.toLowerCase();\n\n switch (key) {\n case 'tab':\n evt.persist();\n setTimeout(()=>{\n evt.target = document.activeElement;\n maybeClose( evt );\n }, 100)\n break;\n }\n };\n\n const handleChange = evt => {\n let v = displayRef.current.value;\n\n if ( !pattern.test( v ) ) {\n valueRef.current.value = '';\n return;\n }\n\n let [input, hours, minutes, period] = v.match( /^(1[012]|[0-9]):([0-5][0-9]) ?(am|pm)/i );\n\n setTime({\n hours: parseInt( hours ),\n minutes: parseInt( minutes ),\n period: period\n });\n };\n\n const sendChange = () => {\n // if ( !pattern.test( displayRef.current.value ) ) {\n // valueRef.current.value = '';\n // return;\n // }\n\n valueRef.current.value = toValue( time );\n\n if ( typeof onChange === 'function' )\n onChange( toValue( time ) );\n };\n\n\n // set events to show or hide dropdown\n useEffect(()=>{\n document.addEventListener( 'click', maybeClose );\n\n return () => document.removeEventListener( 'click', maybeClose );\n }, [ open ]);\n\n // set default value\n let realDefaultValue;\n useEffect(()=>{\n if ( valueRef.current && valueRef.current.value )\n realDefaultValue = fromValue(valueRef.current.value);\n else if ( defaultValue )\n realDefaultValue = fromValue(defaultValue);\n else if ( milliseconds )\n realDefaultValue = fromMilliseconds(milliseconds);\n\n if ( realDefaultValue )\n setTime( realDefaultValue );\n }, []);\n\n // send change events\n useEffect(()=>{\n let {hours, minutes, period} = time;\n\n if ( !hours && !minutes && !period ) {\n } else {\n sendChange();\n }\n }, [ time ]);\n\n // update display format\n useEffect(()=>{\n let display = '';\n let newTime = fromValue(valueRef.current.value);\n\n if ( newTime ) {\n if ( toValue(time) !== toValue(newTime) )\n setTime( newTime )\n\n let format = toFormat(newTime);\n if ( format ) {\n display = format;\n }\n } else if (displayRef.current.value && fromFormat(displayRef.current.value)) {\n display = displayRef.current.value;\n valueRef.current.value = toValue(fromFormat(display));\n }\n\n displayRef.current.value = display;\n });\n\n\n return(\n <Frag ref={containerRef}>\n <Input\n label={label}\n help={'hh:mm am/pm'}\n size={size}\n placeholder={placeholder}\n valid={valid}\n error={error}\n Required={Required}\n ref={displayRef}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onChange={handleChange}\n autoComplete='off'\n mask='time'\n {...props}\n >\n <Icon.Clock size='20px' top='10px' color={Theme.colors.secondary} style={{pointerEvents: 'none'}}/>\n </Input>\n <input type=\"hidden\" name={name} ref={mergeRefs([valueRef, ref])}/>\n {open && <TimePickerOptions time={time} setTime={setTime}/>}\n </Frag>\n );\n});\n\nexport default TimePicker;\n","import React, {useState, useEffect, useRef, Fragment} from 'react'\nimport styled from 'styled-components';\nimport Button, {Base, Primary, Secondary, Delete, Cancel, Small, Big} from './index.js';\nimport Icon from '../Icons';\nimport Spacer from '../Spacer';\nimport {BoxOptions} from '../Input/select'\n\nconst Container = styled(Base).attrs(props => ({\n as: 'div',\n}))`\n display: inline-flex;\n align-items: stretch;\n padding: 0;\n\n ${props => props.type === 'primary' && Primary}\n ${props => props.type === 'secondary' && Secondary}\n ${props => props.type === 'cancel' && Cancel}\n ${props => props.type === 'delete' && Delete}\n ${props => props.size === 'small' && Small}\n ${props => props.size === 'big' && Big}\n\n ${props => props.divider && `\n ${ArrowContainer} {\n border-left-width: 1px;\n border-left-style: dashed;\n }\n `}\n`;\n\nconst ArrowContainer = styled.div`\n display:inline-flex;\n align-items:center;\n justify-contents:center;\n padding:0 8px;\n`;\n\nconst Dropdown = ({children, options, text, type,size, divider = true, openTo,visibleOptionsQty}) => {\n const [open,setOpen] = useState(false);\n const popupRef = useRef();\n\n const handleContainerClick = e => {\n if ( !children )\n setOpen(true);\n };\n\n const handleArrowClick = e => {\n if ( children )\n setOpen(true);\n };\n\n const handleClickOutside = (e) => {\n if (popupRef.current && !popupRef.current.contains(e.target)) {\n setOpen(false);\n }\n }\n\n useEffect(() => {\n document.addEventListener(\"mousedown\", handleClickOutside,false);\n\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside,false);\n };\n }, []);\n\n type = children\n ? children.props.type\n : type;\n\n return (\n <div ref={popupRef} style={{position: 'relative', display: 'inline-flex'}}>\n <Container type={type} size={size} divider={divider} onClick={handleContainerClick}>\n {children || <Spacer left={4}>{text}</Spacer>}\n <ArrowContainer onClick={handleArrowClick}>\n {open ? <Icon.ArrowUp size='16px'/> : <Icon.ArrowDown size='16px'/>}\n </ArrowContainer>\n </Container>\n <div className={'options-container'}>\n {open && options &&\n <BoxOptions\n openTo={openTo}\n visibleOptionsQty={visibleOptionsQty}\n options={options.map(opt => ({\n name: opt.text,\n value: opt.text,\n fn: opt.fn\n }))}\n setOpen={setOpen}\n setSelected={()=>{}}\n onSelect={opt => opt.fn()}\n />\n }\n </div>\n </div>\n )\n}\n\nexport default Dropdown;\n","import React from 'react'\nimport styled from 'styled-components'\nimport Theme from '../Theme'\n\nconst BtnGroup = styled.div`\n display: inline-flex;\n flex-wrap: nowrap;\n border: 1px solid ${Theme.colors.neutrals.silver};\n border-radius: ${Theme.defaultRadius};\n\n > *:not(.selected) {\n border-radius: 0;\n\n &:first-child {\n border-top-left-radius: ${Theme.defaultRadius};\n border-bottom-left-radius: ${Theme.defaultRadius};\n }\n\n &:last-child {\n border-top-right-radius: ${Theme.defaultRadius};\n border-bottom-right-radius: ${Theme.defaultRadius};\n }\n }\n`\n\nconst ButtonGroup = ({children, ...props}) => {\n const generateClassName = btnProps => {\n let cn = btnProps.className || ''\n let track = btnProps.track\n\n if (props.active === track) { cn += ' selected ' }\n\n return cn\n }\n\n return (\n <BtnGroup>\n {children.map((btn, k) =>\n btn.type({\n ...props,\n ...btn.props,\n key: k,\n className: generateClassName(btn.props)\n })\n )}\n </BtnGroup>\n )\n}\n\nexport default ButtonGroup\n","import React, {useRef, Children, useEffect,useState} from 'react'\nimport styled, {keyframes} from 'styled-components'\n\nconst listAnimation = keyframes`\n 0% {\n opacity:0;\n visibility: hidden;\n transform: scale(0.6) translateY(-8px);\n }\n\n 100% {\n visibility: visible;\n opacity:1;\n }\n`\n\nconst POSITION_LIST = '100%'\nconst POSITION_LIST_DISTANCE = '10%'\n\nconst generateAnimationDelay = (n, direction) => {\n let style = ''\n if (['left','top'].includes(direction)) {\n let delayNumber = 1\n for (let i = n; i >= 1; --i) {\n style += `\n > :nth-child(${i}) {\n animation-delay: ${delayNumber * 90}ms;\n }\n `\n delayNumber++\n }\n } else {\n for (let i = 1; i <= n; ++i) {\n style += `\n > :nth-child(${i}) {\n animation-delay: ${i * 90}ms;\n }\n `\n }\n }\n\n return style\n}\n\nconst ListContent = styled.div`\n position:absolute;\n height:${props => ['left','right'].includes(props.direction) ? '100%' : 'fit-content'};\n padding:2px;\n white-space: nowrap;\n align-items:center;\n gap: ${props => props.spaceBetween}\n display:flex;\n visibility: hidden;\n\n ${props => generateAnimationDelay(props.childrenQuantity,props.direction)}\n\n ${props => (props.direction === 'right' || props.direction === 'auto') && `\n flex-direction:row;\n top:0;\n bottom:0;\n left:${POSITION_LIST};\n padding-left:${POSITION_LIST_DISTANCE};\n `}\n\n ${props => props.direction === 'left' && `\n flex-direction:row;\n top:0;\n bottom:0;\n right:${POSITION_LIST};\n padding-right:${POSITION_LIST_DISTANCE};\n `}\n\n ${props => props.direction === 'top' && `\n flex-direction:column;\n justify-content:end;\n bottom:${POSITION_LIST};\n right:0;\n left:0;\n padding-top:${POSITION_LIST_DISTANCE};\n `}\n\n ${props => props.direction === 'bottom' && `\n flex-direction:column;\n justify-content:start;\n top:${POSITION_LIST};\n bottom:0;\n right:0;\n left:0;\n padding-top:${POSITION_LIST_DISTANCE};\n `}\n`\n\nconst PreviewContent = styled.div`\n cursor:pointer;\n background:white;\n border-radius:100%;\n padding:8px;\n display:flex;\n justify-content:center;\n border:1px solid rgb(204, 204, 204);\n`\n\nconst Container = styled.div`\n position:relative;\n\n &:hover > ${ListContent} {\n visibility: visible;\n }\n\n &:hover > ${ListContent} > * {\n animation-name: ${listAnimation};\n animation-duration: 200ms;\n animation-fill-mode: backwards;\n animation-timing-function: ease-in-out;\n }\n`\n\nconst ButtonIcon = ({children, event = 'Hover'}) => {\n if (children.length > 2) {\n throw 'This component only accepts a Button.Preview and Button.List component'\n }\n\n const [Preview, List] = children\n if (Preview.type.name !== 'ButtonPreview') {\n throw `The first component should be ButtonIcon.Preview, but got ${Preview.type.name}`\n }\n\n if (List.type.name !== 'ButtonList') {\n throw `The first component should be ButtonIcon.List, but got ${Preview.type.name}`\n }\n\n return (\n <Container>\n {Preview}\n {List}\n </Container>\n )\n}\n\nconst ButtonPreview = ({children}) => {\n const previewRef = useRef()\n return <PreviewContent ref={previewRef}>{children}</PreviewContent>\n}\nButtonIcon.Preview = ButtonPreview\n\nconst DIRECTIONS = ['bottom', 'left', 'right', 'top', 'auto']\nconst ButtonList = ({children, direction, spaceBetween}) => {\n const [dir, setDir] = useState(direction);\n\n if (!DIRECTIONS.includes(dir)) {\n throw `Invalid direction argument on component ButtonIcon.List, expect ${DIRECTIONS.join(', ')}`\n }\n if(['left','top'].includes(dir)) {\n children = Children.toArray(children).reverse()\n }\n\n const contentRef = useRef();\n useEffect(() => {\n if(!contentRef?.current) return\n\n if(dir !== 'auto') return\n\n const bounds = contentRef.current.getBoundingClientRect();\n const windowWidth = window.innerWidth;\n const windowHeight = window.innerHeight;\n\n\n if(bounds.right > windowWidth ){\n setDir('left')\n return\n }else{\n return\n }\n\n if(bounds.left < 0 ){\n setDir('bottom')\n return\n }\n\n if(bounds.bottom > windowHeight){\n setDir('top')\n return\n }\n },[contentRef])\n\n return (\n <ListContent\n ref={contentRef}\n direction={dir}\n spaceBetween={spaceBetween}\n childrenQuantity={children.length}\n >\n {children}\n </ListContent>\n )\n}\nButtonList.defaultProps = {\n direction: 'auto',\n spaceBetween: '8px'\n}\n\nButtonIcon.List = ButtonList\n\nexport default ButtonIcon\n","import React, {useState} from 'react'\nimport styled from 'styled-components'\nimport Theme from '../Theme'\nimport Icon from '../Icons'\n\nconst Div = styled.div`\n padding: 7px;\n border-radius: ${Theme.defaultRadius};\n border-width:1px;\n border-style:solid;\n display:flex;\n align-items:center;\n position:relative;\n\n ${props => props.useClose && `\n padding-right: 32px;\n `}\n\n svg {\n margin-right: 8px;\n display: block;\n }\n`\n\nconst Title = styled.h5`\n font-family: ${Theme.font.main};\n font-weight: normal;\n font-size: ${Theme.font.medium.size};\n line-height: ${Theme.font.big.lineHeight};\n`\n\nconst Content = styled.p`\n font-size: ${Theme.font.extraSmall.size};\n line-height: ${Theme.font.small.lineHeight};\n`\n\nconst SmallContent = styled(Content)`\n font-size: ${Theme.font.small.size};\n line-height: ${Theme.font.small.lineHeight};\n`\n\nconst Close = styled.button.attrs(props => ({\n type: 'button'\n}))`\n border: none;\n background: none;\n padding: 0;\n position: absolute;\n top: 7px;\n right: 7px;\n cursor: pointer;\n\n svg {\n margin: 0;\n }\n`\n\nconst solveContent = (size, title, content) => {\n const isSmall = size === 'small'\n\n if (isSmall) {\n return (\n <Title>\n <SmallContent>{title}</SmallContent>\n </Title>\n )\n }\n\n return (\n <div>\n <Title>{title}</Title>\n <Content>{content}</Content>\n </div>\n )\n}\n\nconst Alert = (props, type, Symbol) => {\n const {title, content, useIcon, useClose, size = 40} = props\n\n const [isOpen, setOpen] = useState(true)\n if (!isOpen) {\n return null\n }\n\n const typeStyle = {\n background: Theme.colors[type].bg,\n borderColor: Theme.colors[type].border,\n color: Theme.colors[type].text\n }\n\n let addPadding = (type === 'error' || type === 'success') && size !== 'small'\n\n return (\n <Div {...props} style={typeStyle}>\n {useIcon && (\n <div style={{\n padding: addPadding ? 6 : 0\n }}>\n {React.createElement(\n Symbol,\n {\n size: size === 'small' ? '16px' : addPadding ? size - 12 + 'px' : size + 'px',\n color: typeStyle.color\n }\n )}\n </div>\n )}\n {solveContent(size, title, content, useClose)}\n {useClose && <Close onClick={() => setOpen(false)}><Icon.Times size='16px' color={typeStyle.color} /></Close>}\n </Div>\n )\n}\n\nconst AlertError = (props) => {\n const typeAlert = 'error'\n const Symbol = Icon.TimesNarrow\n return Alert(props, typeAlert, Symbol)\n}\n\nconst AlertInfo = (props) => {\n const typeAlert = 'info'\n const Symbol = Icon.Info\n return Alert(props, typeAlert, Symbol)\n}\n\nconst AlertWarning = (props) => {\n const typeAlert = 'warnings'\n const Symbol = Icon.Warning\n return Alert(props, typeAlert, Symbol)\n}\n\nconst AlertSuccess = (props) => {\n const typeAlert = 'success'\n const Symbol = Icon.CheckNarrow\n return Alert(props, typeAlert, Symbol)\n}\n\nexport default {\n Success: AlertSuccess,\n Info: AlertInfo,\n Warning: AlertWarning,\n Error: AlertError\n}\n"],"names":["defaultRadius","colors","primary","secondary","action","neutrals","black","gray","medium","silver","white","warnings","border","text","shadow","bg","success","error","info","extra","blueishWhite","whiteSmoke","gray93","font","big","size","lineHeight","small","extraSmall","tiny","main","body","form","input","radius","padding","button","hover","theme","Form","styled","props","width","handleSize","sizeType","Frag","div","Label","label","Theme","borderDefault","InputBase","SpanHelp","span","SpanError","RequiredText","React","SelectUi","Value","option","Options","ul","isChild","OptionGroup","phone","value","replace","time","trim","handlerColor","typeColor","handleMask","type","validation","Input","forwardRef","ref","name","help","invalid","valid","mask","iconAction","children","onChange","useState","inputValue","setInputValue","validationType","useIcon","Required","Check","maskFunction","handleChange","e","target","position","cloneElement","Children","only","style","top","right","cursor","left","Ex","marginRight","Wrapper","Element","Svg","strokeColor","onClick","color","Icons","Activity","Advance","AlertCircle","Amazon","Android","Apple","Archive","ArrowDown","ArrowDownv2","ArrowLeft","ArrowRight","ArrowRightLong","ArrowRightV2","ArrowUp","ArrowUpV2","Avatar","BackHome","Balance","Banknote","Battery","Briefcase","Broom","Bucket","Bug","BuildingV2","Calendar","CalendarActivity","CalendarV2","CallV2","CameraSwitch","CameraV2","Card","ChartSquare","Chat","ChatFilled","ChatV2","CheckCircleFilled","CheckDouble","CheckV2","CheckCircle","CheckCompletedV2","CheckListV2","CheckNarrow","CheckSquare","Circle","Clapperboard","Clock","ClockV2","Clipboard","ClipboardList","Cog","Contract","Copy","CopyV2","CreditCard","CreditCardV2","Crown","Dashboard","Document","DocumentAdd","DocumentEdit","Dollar","DollarV2","Download","DownloadV2","DspwNetwork","Edit","EditV2","EllipsisVertical","Emoji","Empty","Expand","ExpandV2","ExportChat","ExportFile","Eye","EyeV2","EyeCrossed","Feather","FileCheck","FileText","Filter","FilterV2","Flag","FlashlightOff","FlashlightOn","FlexIn","FlexOut","FolderV2","Fuel","Fullscreen","Gauge","GeoferenceIn","GeoferenceOut","GraduationHat","GripVertical","Group","GroupFilled","HandMoney","Headset","Heart","HelpCircle","Image","ImageV2","Impersonate","Info","InfoCircleV2","Invoice","Layers","LayerV2","LeftArrow","Lightning","Line","LinkV2","List","Locker","Loadout","Lunch","LunchIn","LunchOut","Mail","Maintenance","MaintenanceV2","Marker","MapPin","Maximize","Megaphone","Menu","Move","Mute","NotAllowed","Notes","NotificationV2","Package","PackageBack","PackageCheck","PackageTimes","Parking","ParkingGeoIn","ParkingGeoOut","Pause","Person","PersonLock","Persons","Phone","Pin","Play","PlayV2","Plus","PlusCircle","PlusV2","Printer","PrivacyV2","ProfileV2","PunchIn","PunchOut","Radius","Record","RecordStop","Refresh","Replace","Rts","ScanV2","Search","SearchV2","SecureV2","Segment","Send","SendFilled","Settings","SettingV2","ShareV2","SignoutV2","Skill","SoundOff","SoundOn","Star","Sticker","Swear","Target","TimeLine","TimelineV2","Times","TimesCircleV2","TimesNarrow","TimesV2","Trash","TrendDown","TrendingUpV2","TrendUp","Truck","TruckV2","Trophy","Unarchive","Unpin","Upload","UploadV2","VehicleOil","VehicleV2","Video","Volume","Warning","WarningV2","Wave","Items","Object","keys","sort","a","b","localeCompare","forEach","key","Help","App","mergeRefs","refs","current","Title","h1","SubTitle","h3","ThirdTitle","Text","p","subtle","Emphasis","fullWidth","attrs","as","maxOptions","optionsSize","openTo","hasChildren","visibleOptionsQty","optionsSizeCustom","OptionsPeople","SelectHidden","select","PhotoCover","CustomCheckBox","ColorOption","index","Swatches","renderSwatches","length","slice","map","getSelected","options","defaultValue","selected","some","item","SearchInput","hasSwatch","hasSelection","ToggleButton","isOption","undefined","scrollIntoView","element","block","flattenOptions","depth","reduce","rows","concat","optionText","node","toString","Array","isArray","join","matchOptions","items","query","toLowerCase","at","indexOf","filter","match","FloatingOptions","anchor","list","setList","listRef","useCallback","usePopper","strategy","placement","modifiers","offset","styles","attributes","update","useEffect","observer","window","ResizeObserver","observe","disconnect","createPortal","popper","margin","zIndex","document","AutocompleteSelect","selectedOpt","setSelected","onSelect","placeholder","noOptions","startOpen","resetCallback","search","setSearch","setAnchor","selectable","row","selectedText","desc","selectedItem","find","useCombobox","onSelectChange","isEqual","getItemValue","disabled","feature","supercomplete","onRequestItem","res","first","startsWith","deselectOnClear","getInputProps","getToggleProps","getListProps","getItemProps","open","setOpen","focusIndex","inputProps","shownText","shownItem","swatchColors","Boolean","Icon","paddingRight","paddingLeft","divider","background","summarizeSelection","names","others","MultiAutocompleteSelect","selectedValues","onToggle","setFocusIndex","nodeRef","useRef","setNode","close","closeOnOutsideClick","inList","contains","addEventListener","removeEventListener","selectedItems","includes","summary","selectedColors","preventDefault","last","stopPropagation","itemIndex","justifyContent","MultiDropdown","setSelectedValues","valueRef","hasDefaultValue","defaults","String","defaultsKey","from","opt","dispatchEvent","Event","toggle","next","v","k","SingleDropdown","defaultSelected","reset","setDefaultValues","hasDefault","Dropdown","multiple","BoxOptions","optionsRef","handleClick","el","optionsBounds","getBoundingClientRect","innerWidth","Fragment","CustomDropdown","tooltip","nodeSelect","handlOpenSelect","classList","every","display","alignItems","overflow","HandleState","ret","splice","newSelected","assign","push","stateMap","SelectOption","profile","PhotoComponent","customStyle","marginLeft","SelectValueRender","Pictures","Names","seq","total","plural","new_desc","split","solveSpace","Number","isInteger","BaseSpace","bottom","inline","Spacer","all","HiddenCheckbox","HiddenRadioBox","CheckboxContainer","radio","h5","NoOptions","CheckboxBase","checked","title","preventClass","CheckBox","values","verticalAlign","defaultValues","RadioBoxBase","RadioBox","Password","visible","setVisible","ImgStyle","height","eyeImg","TextAreaBase","Textarea","Select","TagsValues","Tag","canCreate","randId","Math","random","Date","getTime","safeName","autoFocus","newOptions","setNewOption","defaultOptions","setDefaultOptions","containerRef","searchRef","isSelected","useMemo","JSON","stringify","timer","clearTimeout","s","setTimeout","handleSelect","singleOption","handleRemove","focus","elm","handleFocus","handleBlur","activeElement","handleKey","querySelectorAll","arr","activeIndex","findIndex","add","active","remove","toBeActive","querySelector","click","addNewOption","newObj","i","fromHookFrom","TagOptions","CreateOption","underscored","searchToUnderscore","replaceAll","RegExp","noDataOption","msg","part","hexToRgb","hex","shorthandRegex","m","r","g","result","exec","parseInt","luminance","pow","calculateContrast","color1luminance","color2luminance","ratio","Field","WraperBucket","ColorIndicator","ColorBox","InputColor","defaultState","isBlack","textColor","selectedColor","setSelectedColor","require$$0","defaultShadow","Base","Primary","Secondary","Cancel","Delete","Small","Big","Exportedd","typeStyle","Exported","Type","Profile","HiddenInput","Uploader","picture","setPicture","acceptedTypes","handleFile","file","files","URL","createObjectURL","imageToBase64","reader","FileReader","Promise","resolve","onload","ev","src","readAsDataURL","documentFile","genericFile","processFileList","fileList","promises","DropUploaderList","DropUploaderPreview","preview","DropUploader","accept","setFiles","inputRef","dropRef","handleFileChanges","inputs","handleDrop","dataTransfer","dropFile","nFiles","deleted","FileListItem","onDelete","expand","w","outerWidth","outerHeight","write","download","fetch","then","blob","rej","createElement","href","pop","addHighlight","removeHighlight","preventDefaults","addListeners","call","arguments","c","d","File","TypeError","ClipboardEvent","clipboardData","DataTransfer","removeListeners","validPlaceholder","f","Button","substr","CheckBoxWrapper","hasLabel","CheckBoxLabel","ToggleLabel","Toggle","offText","onText","singleText","on","setValue","textOn","textOff","range","floor","id","padZero","n","pattern","prototype","stdTimezoneOffset","jan","getFullYear","jul","max","getTimezoneOffset","dst","today","offsetHours","offsetMinutes","toUTC","hours","minutes","h","fromUTC","fromFormat","str","matches","period","toFormat","fromValue","toValue","nw","fromMilliseconds","milliseconds","fraction","TimePickerOptionsStyle","TimePickerOptions","setTime","what","newTime","li","TimePicker","displayRef","maybeClose","evt","handleKeyDown","persist","test","sendChange","realDefaultValue","format","pointerEvents","Container","ArrowContainer","popupRef","handleContainerClick","handleArrowClick","handleClickOutside","fn","BtnGroup","ButtonGroup","generateClassName","btnProps","cn","className","track","btn","listAnimation","keyframes","POSITION_LIST","POSITION_LIST_DISTANCE","generateAnimationDelay","direction","delayNumber","ListContent","spaceBetween","childrenQuantity","PreviewContent","ButtonIcon","event","Preview","ButtonPreview","previewRef","DIRECTIONS","ButtonList","dir","setDir","toArray","reverse","contentRef","bounds","windowWidth","windowHeight","innerHeight","defaultProps","Div","useClose","Content","SmallContent","Close","solveContent","content","isSmall","Alert","Symbol","isOpen","borderColor","addPadding","AlertError","typeAlert","AlertInfo","AlertWarning","AlertSuccess","Success","Error"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}