@dspworkplace/ui 2.1.2 → 2.1.4
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.es.js +172 -134
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +172 -134
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
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\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'> </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":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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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: 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 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 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 const selectedItem = selectable.find(item => item.value.toString() === selectedOpt.value)\n const selectedColors = !search && selectedItem && selectedItem.color ? [selectedItem.color] : []\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 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 {renderSwatches(selectedColors)}\n <SearchInput\n placeholder={hasSelection ? selectedText : placeholder}\n hasSelection={hasSelection}\n hasSwatch={selectedColors.length > 0}\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 {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 [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 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 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 }}\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 {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'> </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","flattenOptions","depth","reduce","rows","concat","optionText","node","toString","Array","isArray","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","selectedText","desc","selectedItem","find","selectedColors","useCombobox","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","selectedItems","includes","summary","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","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":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
|