dt-shared-front 1.1.19 → 1.1.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://dt-shared-front/webpack/universalModuleDefinition","webpack://dt-shared-front/webpack/bootstrap","webpack://dt-shared-front/external \"react\"","webpack://dt-shared-front/external \"classnames\"","webpack://dt-shared-front/external \"tslib\"","webpack://dt-shared-front/external \"antd\"","webpack://dt-shared-front/./src/components/input/input.module.scss?d620","webpack://dt-shared-front/./src/components/text-area/text-area.module.scss?eae4","webpack://dt-shared-front/./src/components/slider/slider.module.scss?860e","webpack://dt-shared-front/./src/components/button/button.module.scss?1fd0","webpack://dt-shared-front/./src/components/link/link.module.scss?8dbb","webpack://dt-shared-front/./src/components/text/text.module.scss?cdc8","webpack://dt-shared-front/./src/components/heading/heading.module.scss?3287","webpack://dt-shared-front/external \"formik\"","webpack://dt-shared-front/./src/components/tag-button/tag-button.module.scss?b873","webpack://dt-shared-front/external \"antd/lib/date-picker/locale/ru_RU\"","webpack://dt-shared-front/./src/components/icon/icon.module.scss?74cb","webpack://dt-shared-front/./src/components/loader/loader.module.scss?4128","webpack://dt-shared-front/./src/components/counter/counter.module.scss?8950","webpack://dt-shared-front/./src/components/loader-line/loader-line.module.scss?4270","webpack://dt-shared-front/external \"swiper\"","webpack://dt-shared-front/external \"antd/lib/date-picker/generatePicker\"","webpack://dt-shared-front/external \"rc-picker/lib/generate/dateFns\"","webpack://dt-shared-front/external \"lodash.debounce\"","webpack://dt-shared-front/./src/components/auto-complete/auto-complete.module.scss?3ddc","webpack://dt-shared-front/./src/components/checkbox/checkbox.module.scss?cc3b","webpack://dt-shared-front/./src/components/select/select.module.scss?d303","webpack://dt-shared-front/./src/components/spoiler/spoiler.module.scss?afe8","webpack://dt-shared-front/./src/components/stacked-input/stacked-input.module.scss?6d4e","webpack://dt-shared-front/./src/components/tag-box/tag-box.module.scss?7456","webpack://dt-shared-front/./src/components/tooltip/tooltip.module.scss?2ed9","webpack://dt-shared-front/external \"react-media\"","webpack://dt-shared-front/./src/components/breadcrumbs/breadcrumbs.module.scss?58a4","webpack://dt-shared-front/./src/components/divider/divider.module.scss?0be2","webpack://dt-shared-front/./src/components/form-control/form-control.module.scss?7567","webpack://dt-shared-front/external \"swiper/react\"","webpack://dt-shared-front/./src/components/switch/switch.module.scss?e461","webpack://dt-shared-front/./src/components/text-spoiler/text-spoiler.module.scss?1908","webpack://dt-shared-front/external \"lodash\"","webpack://dt-shared-front/external \"inputmask\"","webpack://dt-shared-front/./src/components/dropdown/dropdown.module.scss?3660","webpack://dt-shared-front/./src/components/modal/modal.module.scss?1d96","webpack://dt-shared-front/external \"date-fns\"","webpack://dt-shared-front/external \"react-loading-skeleton\"","webpack://dt-shared-front/external \"react-dom\"","webpack://dt-shared-front/./src/components/upload/upload.module.scss","webpack://dt-shared-front/./src/components/icon/icon.tsx","webpack://dt-shared-front/./src/components/icon/icons/clear.svg","webpack://dt-shared-front/./src/components/icon/icons/select-arrow.svg","webpack://dt-shared-front/./src/components/icon/icons/button-loader.svg","webpack://dt-shared-front/./src/components/auto-complete/auto-complete.tsx","webpack://dt-shared-front/./src/components/button/button.tsx","webpack://dt-shared-front/./src/components/media/media.tsx","webpack://dt-shared-front/./src/components/icon/icons/breadcrubms-arrow.svg","webpack://dt-shared-front/./src/components/text/text.tsx","webpack://dt-shared-front/./src/components/link/link.tsx","webpack://dt-shared-front/./src/components/icon/icons/counter-minus.svg","webpack://dt-shared-front/./src/components/breadcrumbs/breadcrumbs.tsx","webpack://dt-shared-front/./src/components/checkbox/checkbox.tsx","webpack://dt-shared-front/./src/components/icon/icons/counter-plus.svg","webpack://dt-shared-front/./src/components/icon/icons/date-picker.svg","webpack://dt-shared-front/./src/components/counter/counter.tsx","webpack://dt-shared-front/./src/components/icon/icons/input-search.svg","webpack://dt-shared-front/./src/components/icon/icons/input-loader.svg","webpack://dt-shared-front/./src/components/input/input.tsx","webpack://dt-shared-front/./src/components/date-picker/date-picker.tsx","webpack://dt-shared-front/./src/components/divider/divider.tsx","webpack://dt-shared-front/./src/components/dropdown/dropdown.tsx","webpack://dt-shared-front/./src/components/form/form-focus-error.tsx","webpack://dt-shared-front/./src/components/form/form.tsx","webpack://dt-shared-front/./src/components/form-control/form-control.tsx","webpack://dt-shared-front/./src/components/heading/heading.tsx","webpack://dt-shared-front/./src/components/icon/icons/loader.svg","webpack://dt-shared-front/./src/components/icon/icons/modal-close.svg","webpack://dt-shared-front/./src/components/loader/loader.tsx","webpack://dt-shared-front/./src/components/loader-line/loader-line.tsx","webpack://dt-shared-front/./src/components/menu/menu.tsx","webpack://dt-shared-front/./src/components/modal/modal.tsx","webpack://dt-shared-front/./src/components/modal/modal.provider.tsx","webpack://dt-shared-front/./src/components/radio/radio.tsx","webpack://dt-shared-front/./src/components/range-picker/range-picker.tsx","webpack://dt-shared-front/./src/components/select/select.tsx","webpack://dt-shared-front/./src/components/selector/selector.tsx","webpack://dt-shared-front/./src/components/icon/icons/arrow-next.svg","webpack://dt-shared-front/./src/components/skeleton/skeleton.tsx","webpack://dt-shared-front/./src/components/icon/icons/arrow-prev.svg","webpack://dt-shared-front/./src/components/slider/slider.tsx","webpack://dt-shared-front/./src/components/icon/icons/spoiler-arrow.svg","webpack://dt-shared-front/./src/components/icon/icons/spoiler-arrow-active.svg","webpack://dt-shared-front/./src/components/spoiler/spoiler.tsx","webpack://dt-shared-front/./src/components/stacked-input/stacked-input.tsx","webpack://dt-shared-front/./src/components/switch/switch.tsx","webpack://dt-shared-front/./src/components/tag-box/tag-box.tsx","webpack://dt-shared-front/./src/components/tag-button/tag-button.tsx","webpack://dt-shared-front/./src/components/tag-button/tag-buttton-group.tsx","webpack://dt-shared-front/./src/components/utils/combine-ref.ts","webpack://dt-shared-front/./src/components/text-area/text-area.tsx","webpack://dt-shared-front/./src/components/tooltip/tooltip.utils.tsx","webpack://dt-shared-front/./src/components/text-spoiler/text-spoiler.tsx","webpack://dt-shared-front/./src/components/tooltip/tooltip.tsx","webpack://dt-shared-front/./src/components/upload/upload.tsx","webpack://dt-shared-front/./src/components/utils/apple-detect.ts","webpack://dt-shared-front/./src/components/utils/date-format.ts","webpack://dt-shared-front/./src/components/utils/date.ts","webpack://dt-shared-front/./src/components/utils/pluralize.ts","webpack://dt-shared-front/./src/components/utils/price-format.ts","webpack://dt-shared-front/./src/components/utils/text-sanitize.ts","webpack://dt-shared-front/./src/components/utils/time-left.ts","webpack://dt-shared-front/./src/index.ts"],"names":["root","factory","exports","module","define","amd","this","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","require","EIconSize","EIconVariant","_path","IconSvg","active","size","medium","variant","className","onClick","props","classNames","icon","clickable","_extends","assign","target","arguments","length","source","apply","width","height","viewBox","fill","xmlns","_path2","_defs","formatItemToOption","item","valueKey","labelKey","labels","includes","label","data","AutoComplete","onServerSearch","debounceTimeout","labelPlaceholder","onRenderOption","popupClassName","fetching","setFetching","serverOptions","setServerOptions","searchValue","setSearchValue","fetchRef","options","_options","Array","isArray","values","map","option","_onRenderOptions","hasLabel","optionText","onChange","_option","res","find","debounceFetcher","current","fetchId","then","newOptions","onSelect","notFoundContent","placeholder","onSearch","val","backfill","suffixIcon","autoComplete","error","stacked","clearIcon","EButtonSize","EButtonVariant","EButtonIconPosition","attributeType","attributeName","type","from","to","dur","repeatCount","id","x1","y1","x2","y2","gradientUnits","stopColor","offset","stopOpacity","Button","iconPosition","right","Icon","loading","disabled","children","button","withIcon","loaderClassNames","loader","iconClassNames","icon__only","_onClick","e","style","MEDIA_MATCHES","mobile","tablet","desktop","Media","renderDesktop","renderMobile","renderTablet","render","mounted","setMounted","defaultRender","matches","queries","MediaContext","MediaProvider","Provider","withMedia","Component","useMedia","Error","ETextSize","fillRule","clipRule","ELinkVariant","ELinkType","ELinkSize","Text","bold","addition","success","inverse","attention","through","tag","TextTag","text","textAddition","textBold","textSuccess","textAttention","textError","textThrough","textInverse","Link","link","href","dashed","rel","mainLink","linkBold","Breadcrumbs","paths","onReplace","media","onBack","reverse","path","isBack","breadcrumbs","index","breadcrumbsLink","title","isCurrent","UNIQ_COUNT","Checkbox","_value","_setValue","_onChange","currentTarget","checked","checkboxContainer","checkbox","htmlFor","Counter","setValue","count","newCount","counter","undefined","min","max","EInputVariant","EInputSize","EInputBorder","Input","ref","onFocus","onBlur","onClear","onPointerUp","required","showClear","outlined","border","normal","adaptive","debounceTime","beginSearch","NaN","mask","autofocus","_loading","_setLoading","_mask","_setMask","innerRef","setTimeout","focus","remove","inputMask","greedy","dispatchEvent","Event","bubbles","input","invalid","inputClassNames","clearClassNames","clear","labelClassNames","_onSearchDebounce","callback","prev","_onSearch","_onClear","_onKeyPress","onKeyPress","lang","locale","AntDatePicker","DatePicker","format","onRenderInput","_","showToday","inputRender","Divider","bordered","divider","Dropdown","dropdownRender","originNode","dropdown","FocusError","errors","isSubmitting","isValidating","keys","selector","errorElement","formRef","querySelector","Form","onChangeBlur","form","dirty","isValid","validateForm","onSubmit","handleSubmit","FormControl","component","field","meta","helpers","ctx","validationSchema","schemaDescription","describe","accessor","split","join","fields","tests","some","test","isRequiredField","touched","setError","args","setTouched","EHeadingLevel","Heading","level","h1","warning","centerText","HeadingTag","heading","textWarning","center","Loader","absolute","fixed","LoaderLine","loaderLine","bar","Menu","Modal","footer","sidebar","closable","open","setOpen","setData","_width","_setWidth","_title","_setTitle","_footer","_setFooter","_closable","_setClosable","full","_full","_setFull","footerFixed","_footerFixed","_setFooterFixed","handleCancel","handleOpen","close","setTitle","setFooter","setClosable","setWidth","setFooterFixed","setFull","maskClosable","destroyOnClose","afterClose","closeIcon","onCancel","maskTransitionName","transitionName","modal","modalContext","ModalProvider","modals","setModals","initialProps","Date","getTime","concat","useModal","Radio","position","nativeEvent","Group","RangePicker","disabledDate","isFromToday","pickerRef","Select","onServerSearchGroup","optionsGroup","setOptionsGroup","isEqual","group","Option","_onRenderGroup","OptGroup","onDropdownVisibleChange","_optionsGroup","select","Selector","Skeleton","filter","cx","cy","transform","x","y","filterUnits","colorInterpolationFilters","floodOpacity","result","stdDeviation","in2","use","Slider","items","slidesPerView","renderItem","viewItem","loop","asyncReady","showNavigation","navPosition","spaceBetween","autoplay","freeMode","showCounter","centeredSlides","classNamePrev","classNameNext","overflow","navigationPrevRef","navigationNextRef","setIndex","ready","setReady","slider","sliderAutoLoop","onSlideItem","indexItem","findItem","sliderContainer","buttonSlider","speed","preloadImages","loopedSlides","onSlideChange","sw","realIndex","delay","disableOnInteraction","navigation","nextEl","prevEl","onImagesReady","swiper","slideTo","onBeforeInit","params","lazy","checkInView","loadPrevNext","swiperSlide","swiperSlideAuto","sliderCounter","Spoiler","initialValue","opened","setOpened","spoiler","arrow","StackedInput","setKey","stacked_input","stacked_input__select","dropdownMatchSelectWidth","stacked_input__input","Switch","TagBox","v","maxTagCount","removeIcon","menuItemSelectedIcon","ETagButtonSize","ETagButtonVariant","TagButton","selected","TagButtonGroup","tagButtonGroup","onRenderLabel","useCombinedRefs","targetRef","refs","forEach","ETextAreaVariant","ETextAreaSize","ETextAreaBorder","observe","element","event","handler","addEventListener","deobserve","removeEventListener","TooltipPosition","TextArea","autoFocus","combineRef","resize","scrollHeight","delayedResize","window","init","textarea","textarea__disabled","TextSpoiler","isOpen","textSpoiler","openText","large","action","getScrollTopParent","clientHeight","parentElement","Tooltip","placement","refTooltip","refArrow","stylesTooltip","setStylesTooltip","stylesArrow","setStylesArrow","scrollElement","recalcPosition","elem","targetElement","child","getAttribute","slice","tooltipElement","getBoundingClientRect","top","left","tooltipWidth","tooltipHeight","leftPosition","bottom","offsetWidth","document","body","opacity","recalcStyles","tooltipProperties","recalcArrowStyles","onTouchStart","stopPropagation","onClose","el","onOpen","onOpenChange","tooltip","onMouseOver","onMouseLeave","Upload","onUpload","renderName","file","setFile","uid","status","url","thumbUrl","info","URL","createObjectURL","originFileObj","onUploadFile","Dragger","showUploadList","showRemoveIcon","maxCount","upload","customRequest","fileList","listType","accept","appleDetect","navigator","platform","userAgent","units","YYYY","year","YY","M","month","MM","MMM","MMMM","MMMMM","D","day","DD","weekday","dd","hh","hour","mm","minute","ss","second","getDate","replaceAll","dateFormat","utc","plural","userTimezoneOffset","getTimezoneOffset","dateUnits","dateItems","delimeters","Boolean","stringDate","unit","toLocaleTimeString","toLocaleDateString","toUpperCase","toLocaleString","replace","push","dateWithoutTimezone","date","dateWithTimezone","pluralize","plurals","priceFormat","price","Intl","NumberFormat","currency","minimumFractionDigits","formatToParts","Math","ceil","currencySign","cur","reduce","part","PREPOSITIONS","replacement","str","textSanitize","regex","RegExp","decorate","UNITS","timeLeftMinutes","time","timeLeft","floor"],"mappings":"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","file":"index.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"dt-shared-front\"] = factory();\n\telse\n\t\troot[\"dt-shared-front\"] = factory();\n})(this, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 44);\n","module.exports = require(\"react\");","module.exports = require(\"classnames\");","module.exports = require(\"tslib\");","module.exports = require(\"antd\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"input\":\"shared__input-module__input--5GrwX_1701197867081\",\"input__medium\":\"shared__input-module__input__medium--g-8te_1701197867081\",\"label\":\"shared__input-module__label--tNO2a_1701197867081\",\"input__action_medium\":\"shared__input-module__input__action_medium--hkQ1t_1701197867081\",\"input__actions_medium\":\"shared__input-module__input__actions_medium---YV3O_1701197867081\",\"input__pure\":\"shared__input-module__input__pure--NNC8N_1701197867081\",\"disabled\":\"shared__input-module__disabled--ABDAb_1701197867081\",\"invalid\":\"shared__input-module__invalid--e--FF_1701197867081\",\"input__outlined\":\"shared__input-module__input__outlined--p-xCA_1701197867081\",\"clear\":\"shared__input-module__clear--OvXQO_1701197867081\",\"clear__large\":\"shared__input-module__clear__large--sWuYu_1701197867081\",\"clear__medium\":\"shared__input-module__clear__medium--09aiH_1701197867081\",\"clear__action_medium\":\"shared__input-module__clear__action_medium--zfylI_1701197867081\",\"clear__outlined\":\"shared__input-module__clear__outlined--iICxm_1701197867081\",\"icon\":\"shared__input-module__icon--zr4sW_1701197867081\",\"icon__large\":\"shared__input-module__icon__large--89dxq_1701197867081\",\"icon__medium\":\"shared__input-module__icon__medium--GDtvJ_1701197867081\",\"icon__outlined\":\"shared__input-module__icon__outlined--dZgJq_1701197867081\",\"loader\":\"shared__input-module__loader--QYYkV_1701197867081\",\"loader__large\":\"shared__input-module__loader__large--Y9WB3_1701197867081\",\"loader__medium\":\"shared__input-module__loader__medium--QKgq8_1701197867081\",\"loader__outlined\":\"shared__input-module__loader__outlined--rHN8w_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"textarea\":\"shared__text-area-module__textarea--BYKqV_1701197867081\",\"textarea__small\":\"shared__text-area-module__textarea__small--vpKis_1701197867081\",\"textarea__medium\":\"shared__text-area-module__textarea__medium--YP0qD_1701197867081\",\"textarea__large\":\"shared__text-area-module__textarea__large--qWZJ2_1701197867081\",\"textarea__large_adaptive\":\"shared__text-area-module__textarea__large_adaptive--UFOvf_1701197867081\",\"textarea__action_medium\":\"shared__text-area-module__textarea__action_medium--xPwcQ_1701197867081\",\"textarea__action_large\":\"shared__text-area-module__textarea__action_large--6pU6m_1701197867081\",\"textarea__actions_medium\":\"shared__text-area-module__textarea__actions_medium--xk3HL_1701197867081\",\"textarea__actions_large\":\"shared__text-area-module__textarea__actions_large--QPCon_1701197867081\",\"textarea__border_circle\":\"shared__text-area-module__textarea__border_circle--QwRke_1701197867081\",\"textarea__outlined\":\"shared__text-area-module__textarea__outlined--ip5t1_1701197867081\",\"invalid\":\"shared__text-area-module__invalid--HHkEP_1701197867081\",\"textarea__filled\":\"shared__text-area-module__textarea__filled--khZXb_1701197867081\",\"clear\":\"shared__text-area-module__clear--cniAi_1701197867081\",\"clear__small\":\"shared__text-area-module__clear__small--kWg6N_1701197867081\",\"clear__medium\":\"shared__text-area-module__clear__medium--pN-Zj_1701197867081\",\"clear__large\":\"shared__text-area-module__clear__large---rhZv_1701197867081\",\"clear__action_small\":\"shared__text-area-module__clear__action_small--y2Mh9_1701197867081\",\"clear__action_medium\":\"shared__text-area-module__clear__action_medium--VB44P_1701197867081\",\"clear__action_large\":\"shared__text-area-module__clear__action_large--gD65G_1701197867081\",\"icon\":\"shared__text-area-module__icon--HqPRa_1701197867081\",\"icon__small\":\"shared__text-area-module__icon__small--yOGgx_1701197867081\",\"icon__medium\":\"shared__text-area-module__icon__medium--Lap9Z_1701197867081\",\"icon__large\":\"shared__text-area-module__icon__large--Bpk53_1701197867081\",\"loader\":\"shared__text-area-module__loader--zfGHC_1701197867081\",\"loader__large\":\"shared__text-area-module__loader__large--h-OCh_1701197867081\",\"loader__filled\":\"shared__text-area-module__loader__filled--zQ1yA_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"sliderContainer\":\"shared__slider-module__sliderContainer--KGFdN_1701197867081\",\"swiperSlide\":\"shared__slider-module__swiperSlide--es2Vl_1701197867081\",\"swiperSlideAuto\":\"shared__slider-module__swiperSlideAuto--Cwk8-_1701197867081\",\"sliderAutoLoop\":\"shared__slider-module__sliderAutoLoop--0OphC_1701197867081\",\"ready\":\"shared__slider-module__ready--H+y-p_1701197867081\",\"slider\":\"shared__slider-module__slider--UBNwU_1701197867081\",\"swiper-pagination-bullets\":\"shared__slider-module__swiper-pagination-bullets--PckKH_1701197867081\",\"swiperPaginationHidden\":\"shared__slider-module__swiperPaginationHidden--k4CIT_1701197867081\",\"buttonSlider\":\"shared__slider-module__buttonSlider---MRF3_1701197867081\",\"buttonSlider__hidden\":\"shared__slider-module__buttonSlider__hidden--BgKX-_1701197867081\",\"buttonSlider__prev\":\"shared__slider-module__buttonSlider__prev--X4kyB_1701197867081\",\"buttonSlider__prev_inset\":\"shared__slider-module__buttonSlider__prev_inset--3192S_1701197867081\",\"buttonSlider__next\":\"shared__slider-module__buttonSlider__next--JognR_1701197867081\",\"buttonSlider__next_inset\":\"shared__slider-module__buttonSlider__next_inset--HcKU3_1701197867081\",\"sliderCounter\":\"shared__slider-module__sliderCounter--ynG2f_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"button\":\"shared__button-module__button--X-qXA_1701197867081\",\"button__smallS\":\"shared__button-module__button__smallS--eulj7_1701197867081\",\"button__small\":\"shared__button-module__button__small--kA9VI_1701197867081\",\"withIcon\":\"shared__button-module__withIcon--J7ifR_1701197867081\",\"button__medium\":\"shared__button-module__button__medium--E71L1_1701197867081\",\"button__large\":\"shared__button-module__button__large--PG1dR_1701197867081\",\"button__default\":\"shared__button-module__button__default--mYOHn_1701197867081\",\"button__secondary\":\"shared__button-module__button__secondary--bPOB9_1701197867081\",\"button__icon_left\":\"shared__button-module__button__icon_left--EzgVg_1701197867081\",\"button__icon_right\":\"shared__button-module__button__icon_right--uPFlS_1701197867081\",\"loading\":\"shared__button-module__loading--IZ3gt_1701197867081\",\"icon\":\"shared__button-module__icon--Gso9o_1701197867081\",\"icon__smallS\":\"shared__button-module__icon__smallS--BQwBb_1701197867081\",\"icon__small\":\"shared__button-module__icon__small--SgRrC_1701197867081\",\"icon__medium\":\"shared__button-module__icon__medium--3L-IQ_1701197867081\",\"icon__large\":\"shared__button-module__icon__large--WSggm_1701197867081\",\"icon__default\":\"shared__button-module__icon__default--MzXx8_1701197867081\",\"icon__secondary\":\"shared__button-module__icon__secondary--n0RQn_1701197867081\",\"icon__only\":\"shared__button-module__icon__only--fpWXx_1701197867081\",\"loader\":\"shared__button-module__loader--v14UE_1701197867081\",\"loader__medium\":\"shared__button-module__loader__medium--7pr9v_1701197867081\",\"loader__large\":\"shared__button-module__loader__large--S4tzp_1701197867081\",\"loader__default\":\"shared__button-module__loader__default--5X5UT_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"link\":\"shared__link-module__link--NcxZW_1701197867081\",\"link__link\":\"shared__link-module__link__link--gUwQW_1701197867081\",\"link__action\":\"shared__link-module__link__action--USwiE_1701197867081\",\"link__href\":\"shared__link-module__link__href--uTZ+A_1701197867081\",\"addition\":\"shared__link-module__addition--3xkZd_1701197867081\",\"link__small\":\"shared__link-module__link__small--alNG-_1701197867081\",\"link__medium\":\"shared__link-module__link__medium--LJlDF_1701197867081\",\"link__large\":\"shared__link-module__link__large--2gcWq_1701197867081\",\"icon\":\"shared__link-module__icon--DUvf4_1701197867081\",\"icon__small\":\"shared__link-module__icon__small--Z11Nw_1701197867081\",\"icon__medium\":\"shared__link-module__icon__medium--rSXi1_1701197867081\",\"icon__large\":\"shared__link-module__icon__large--tIKI0_1701197867081\",\"icon__only\":\"shared__link-module__icon__only--nGgQ8_1701197867081\",\"linkBold\":\"shared__link-module__linkBold--E4KSC_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"text\":\"shared__text-module__text--L3+RG_1701197867081\",\"text__small\":\"shared__text-module__text__small--Rl3X5_1701197867081\",\"text__medium\":\"shared__text-module__text__medium--Znrxu_1701197867081\",\"text__large\":\"shared__text-module__text__large--oRnU3_1701197867081\",\"textAddition\":\"shared__text-module__textAddition--lz-qm_1701197867081\",\"textBold\":\"shared__text-module__textBold--56jgD_1701197867081\",\"textSuccess\":\"shared__text-module__textSuccess--H2yEM_1701197867081\",\"textError\":\"shared__text-module__textError--MvnkN_1701197867081\",\"textAttention\":\"shared__text-module__textAttention--VjWLj_1701197867081\",\"textThrough\":\"shared__text-module__textThrough--is3ha_1701197867081\",\"textInverse\":\"shared__text-module__textInverse--s78Gi_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"heading\":\"shared__heading-module__heading--8sR8x_1701197867081\",\"heading__h1\":\"shared__heading-module__heading__h1--R6zxl_1701197867081\",\"heading__h2\":\"shared__heading-module__heading__h2--R3bM8_1701197867081\",\"heading__h3\":\"shared__heading-module__heading__h3--XTX7i_1701197867081\",\"heading__h4\":\"shared__heading-module__heading__h4--iTCuq_1701197867081\",\"heading__h5\":\"shared__heading-module__heading__h5--WR5IM_1701197867081\",\"textAddition\":\"shared__heading-module__textAddition--AJUlA_1701197867081\",\"textAttention\":\"shared__heading-module__textAttention--t8+tt_1701197867081\",\"textBold\":\"shared__heading-module__textBold--n8fQX_1701197867081\",\"textInverse\":\"shared__heading-module__textInverse--S-jep_1701197867081\",\"textError\":\"shared__heading-module__textError--Bm1mE_1701197867081\",\"textSuccess\":\"shared__heading-module__textSuccess--Q3GD+_1701197867081\",\"textWarning\":\"shared__heading-module__textWarning--f-7yo_1701197867081\",\"centerText\":\"shared__heading-module__centerText--CM0Hq_1701197867081\"};","module.exports = require(\"formik\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"button\":\"shared__tag-button-module__button--Qv07L_1701197867081\",\"button__small\":\"shared__tag-button-module__button__small--VKA08_1701197867081\",\"button__medium\":\"shared__tag-button-module__button__medium--M0TM+_1701197867081\",\"button__large\":\"shared__tag-button-module__button__large--PobFJ_1701197867081\",\"button__default\":\"shared__tag-button-module__button__default--dpNJZ_1701197867081\",\"button__green\":\"shared__tag-button-module__button__green--7uieL_1701197867081\",\"selected\":\"shared__tag-button-module__selected--hP5R8_1701197867081\",\"button__secondary\":\"shared__tag-button-module__button__secondary--KiSTI_1701197867081\",\"button__tab\":\"shared__tag-button-module__button__tab--rVLma_1701197867081\",\"button__tumbler\":\"shared__tag-button-module__button__tumbler---2OQ2_1701197867081\",\"button__icons\":\"shared__tag-button-module__button__icons--rLBj8_1701197867081\",\"loading\":\"shared__tag-button-module__loading--emtZM_1701197867081\",\"icon\":\"shared__tag-button-module__icon--LtczE_1701197867081\",\"icon__small\":\"shared__tag-button-module__icon__small--2sXj9_1701197867081\",\"icon__medium\":\"shared__tag-button-module__icon__medium--WMllo_1701197867081\",\"icon__large\":\"shared__tag-button-module__icon__large--GhXfx_1701197867081\",\"icon__default\":\"shared__tag-button-module__icon__default--GYg6a_1701197867081\",\"shadow\":\"shared__tag-button-module__shadow---SujH_1701197867081\",\"tagButtonGroup\":\"shared__tag-button-module__tagButtonGroup--9aBd8_1701197867081\"};","module.exports = require(\"antd/lib/date-picker/locale/ru_RU\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"icon\":\"shared__icon-module__icon--Gnxeg_1701197867081\",\"icon__small\":\"shared__icon-module__icon__small--QBFuN_1701197867081\",\"icon__medium\":\"shared__icon-module__icon__medium--X-ly8_1701197867081\",\"icon__large\":\"shared__icon-module__icon__large--DzFuI_1701197867081\",\"icon__default\":\"shared__icon-module__icon__default--hQThA_1701197867081\",\"clickable\":\"shared__icon-module__clickable--3yjIa_1701197867081\",\"active\":\"shared__icon-module__active--HQWC5_1701197867081\",\"icon__light\":\"shared__icon-module__icon__light--7x2By_1701197867081\",\"icon__black\":\"shared__icon-module__icon__black--AVPMK_1701197867081\",\"icon__attention\":\"shared__icon-module__icon__attention--HiOeb_1701197867081\",\"icon__revert\":\"shared__icon-module__icon__revert--O4CPt_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"loader\":\"shared__loader-module__loader--ErOFa_1701197867081\",\"absolute\":\"shared__loader-module__absolute--nggvH_1701197867081\",\"fixed\":\"shared__loader-module__fixed--CUw3s_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"counter\":\"shared__counter-module__counter--po6fU_1701197867081\",\"button\":\"shared__counter-module__button--sOvjE_1701197867081\",\"value\":\"shared__counter-module__value--JD2xM_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"loaderLine\":\"shared__loader-line-module__loaderLine--EZc2J_1701197867081\",\"bar\":\"shared__loader-line-module__bar--uH4lA_1701197867081\",\"active\":\"shared__loader-line-module__active--0J8lF_1701197867081\",\"loader-animation\":\"shared__loader-line-module__loader-animation--cSq+I_1701197867081\",\"border\":\"shared__loader-line-module__border--OXwgu_1701197867081\"};","module.exports = require(\"swiper\");","module.exports = require(\"antd/lib/date-picker/generatePicker\");","module.exports = require(\"rc-picker/lib/generate/dateFns\");","module.exports = require(\"lodash.debounce\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"autoComplete\":\"shared__auto-complete-module__autoComplete--E+tq+_1701197867081\",\"hasLabel\":\"shared__auto-complete-module__hasLabel--t+Z8x_1701197867081\",\"disabled\":\"shared__auto-complete-module__disabled--3VMd2_1701197867081\",\"invalid\":\"shared__auto-complete-module__invalid--yHbC5_1701197867081\",\"optionText\":\"shared__auto-complete-module__optionText--saGcQ_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"checkbox\":\"shared__checkbox-module__checkbox--jOEle_1701197867081\",\"error\":\"shared__checkbox-module__error--xRaxv_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"select\":\"shared__select-module__select--cm-a3_1701197867081\",\"hasLabel\":\"shared__select-module__hasLabel--ZRS9W_1701197867081\",\"disabled\":\"shared__select-module__disabled--gfQp-_1701197867081\",\"invalid\":\"shared__select-module__invalid--rXHCJ_1701197867081\",\"optionText\":\"shared__select-module__optionText--7GphM_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"spoiler\":\"shared__spoiler-module__spoiler--siWfv_1701197867081\",\"title\":\"shared__spoiler-module__title--N0ID7_1701197867081\",\"arrow\":\"shared__spoiler-module__arrow--VISBf_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"stacked_input\":\"shared__stacked-input-module__stacked_input--gd2Dh_1701197867081\",\"stacked_input__select\":\"shared__stacked-input-module__stacked_input__select--ewS4D_1701197867081\",\"stacked_input__input\":\"shared__stacked-input-module__stacked_input__input--t1qul_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"select\":\"shared__tag-box-module__select--aZcmW_1701197867081\",\"hasLabel\":\"shared__tag-box-module__hasLabel--OkuEn_1701197867081\",\"disabled\":\"shared__tag-box-module__disabled--8Eb9x_1701197867081\",\"invalid\":\"shared__tag-box-module__invalid--D6cKK_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"tooltip\":\"shared__tooltip-module__tooltip--tS2G-_1701197867081\",\"arrow\":\"shared__tooltip-module__arrow--VbQb7_1701197867081\",\"left\":\"shared__tooltip-module__left--2nmo1_1701197867081\",\"right\":\"shared__tooltip-module__right--JgZSX_1701197867081\",\"top\":\"shared__tooltip-module__top--VsESz_1701197867081\",\"bottom\":\"shared__tooltip-module__bottom--2zx9D_1701197867081\"};","module.exports = require(\"react-media\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"breadcrumbs\":\"shared__breadcrumbs-module__breadcrumbs--LxNAe_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"bordered\":\"shared__divider-module__bordered--8qnHN_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"label\":\"shared__form-control-module__label--0QO0D_1701197867081\",\"error\":\"shared__form-control-module__error--FVB3Z_1701197867081\"};","module.exports = require(\"swiper/react\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"switch\":\"shared__switch-module__switch--EGB08_1701197867081\",\"active\":\"shared__switch-module__active--Mghyc_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"textSpoiler\":\"shared__text-spoiler-module__textSpoiler--xJkwo_1701197867081\",\"openText\":\"shared__text-spoiler-module__openText--osI1V_1701197867081\",\"expander\":\"shared__text-spoiler-module__expander--Y2VRc_1701197867081\",\"active\":\"shared__text-spoiler-module__active--+DkdZ_1701197867081\"};","module.exports = require(\"lodash\");","module.exports = require(\"inputmask\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dropdown\":\"shared__dropdown-module__dropdown--fuFze_1701197867081\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"footer\":\"shared__modal-module__footer--wpZLV_1701197867081\"};","module.exports = require(\"date-fns\");","module.exports = require(\"react-loading-skeleton\");","module.exports = require(\"react-dom\");","// extracted by mini-css-extract-plugin\nmodule.exports = {};","import React from 'react';\n\nimport cn from 'classnames';\nimport { useMemo } from 'react';\nimport { PropsWithChildren } from 'react';\n\nimport styles from './icon.module.scss';\n\nexport enum EIconSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\nexport enum EIconVariant {\n default = 'default',\n black = 'black',\n attention = 'attention',\n revert = 'revert',\n warning = 'warning',\n initial = 'initial',\n light = 'light'\n}\n\ninterface IIconProps {\n size?: keyof typeof EIconSize;\n variant?: keyof typeof EIconVariant;\n active?: boolean;\n icon: any;\n className?: string;\n onClick?: (e: any) => void;\n 'data-tooltip-target'?: boolean\n}\n\nexport const Icon = ({\n icon: IconSvg,\n active,\n size = EIconSize.medium,\n variant = EIconVariant.default,\n className,\n onClick,\n ...props\n}: PropsWithChildren<IIconProps>) => {\n const classNames = useMemo(\n () =>\n cn(className, styles.icon, styles[`icon__${size}`], styles[`icon__${variant}`], {\n [styles.active]: active,\n [styles.clickable]: !!onClick,\n }),\n [size, variant, active, className, onClick],\n );\n\n if (!IconSvg) {\n return null\n }\n\n return <IconSvg {...props} onClick={onClick} className={classNames} />;\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgClear(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 25 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.894 5.394a.857.857 0 011.212 0l5.394 5.393 5.394-5.393a.857.857 0 011.131-.071l.081.071a.857.857 0 010 1.212L13.713 12l5.393 5.394a.858.858 0 01.071 1.132l-.07.08a.857.857 0 01-1.213 0L12.5 13.213l-5.394 5.393a.857.857 0 01-1.131.072l-.081-.072a.857.857 0 010-1.212L11.287 12 5.894 6.606a.857.857 0 01-.071-1.131l.07-.08z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgClear;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSelectArrow(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 28 28\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.65 11.24a1 1 0 10-1.3 1.52l7 6a1 1 0 001.3 0l7-6a1 1 0 00-1.3-1.52L14 16.684 7.65 11.24z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgSelectArrow;","var _path, _path2, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgButtonLoader(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 20 20\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#button-loader_svg__paint0_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#button-loader_svg__paint1_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"button-loader_svg__paint0_linear\",\n x1: 14.5,\n y1: 5.5,\n x2: 16.5,\n y2: 10,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"button-loader_svg__paint1_linear\",\n x1: 10,\n y1: 16,\n x2: 17,\n y2: 9.5,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })))));\n}\n\nexport default SvgButtonLoader;","import React from 'react';\n\nimport { Icon } from \"@shared/icon\";\nimport { AutoComplete as AntdAutoComplete, AutoCompleteProps } from \"antd\";\nimport { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport ClearIcon from '../icon/icons/clear.svg';\nimport SelectArrowIcon from '../icon/icons/select-arrow.svg';\nimport classNames from \"classnames\";\nimport { debounce } from \"lodash\";\nimport styles from './auto-complete.module.scss';\n\nexport interface ISelectOption<T> {\n label: string;\n value: string | number | null | undefined;\n data?: T;\n}\n\nfunction formatItemToOption<T = any>(item: any, valueKey: string = 'value', labelKey: string = 'label', labels?: IAutoCompleteProps<T>['labels']) {\n if (['string', 'number', 'boolean'].includes(typeof item)) {\n return {\n label: labels ? labels[`${item}`] : item,\n value: item,\n data: item,\n } as ISelectOption<T>;\n }\n\n return {\n label: item[labelKey],\n value: item[valueKey],\n data: item,\n } as ISelectOption<T>;\n}\n\ntype IAutoCompleteProps<T> = Omit<AutoCompleteProps, 'options' | 'onChange'> & {\n options?: T[] | T;\n labels?: { [key: string]: string };\n error?: boolean;\n valueKey?: string;\n labelKey?: string;\n labelPlaceholder?: string;\n onServerSearch?: (val: string) => Promise<T[]>;\n onRenderOption?: (item: T) => React.ReactNode;\n onChange?: (option: T, options?: T[]) => void;\n debounceTimeout?: number;\n stacked?: boolean;\n popupClassName?: string;\n icon?: any;\n};\n\nexport function AutoComplete<T>({labels, labelKey, valueKey, onServerSearch, icon, debounceTimeout = 500, labelPlaceholder, onRenderOption, popupClassName, ...props}: IAutoCompleteProps<T>) {\n const [fetching, setFetching] = useState(false);\n const [serverOptions, setServerOptions] = useState<ISelectOption<T>[]>(null);\n const [searchValue, setSearchValue] = useState<string>('')\n const fetchRef = useRef(0);\n\n const options = useMemo(() => {\n let _options = null;\n if (Array.isArray(props.options)) {\n _options = props.options;\n }\n\n if (props.options) {\n _options = Object.values(props.options);\n }\n\n return _options?.map((option) => formatItemToOption(option, valueKey, labelKey, labels)) || null;\n }, [props.options, labels]);\n\n const _onRenderOptions = useCallback(\n (option: ISelectOption<T>) => {\n if (onRenderOption) {\n return {\n label: onRenderOption(option.data),\n value: option.label,\n data: option.data,\n key: option.value\n };\n }\n\n return {\n label: <div className={classNames({ [styles.hasLabel]: labelPlaceholder })}>\n {!!labelPlaceholder && <label>{labelPlaceholder}</label>}\n <div className={styles.optionText}>{option.label}</div>\n </div>,\n value: option.label,\n data: option.data,\n key: option.value\n };\n },\n [onRenderOption, labelPlaceholder]\n );\n\n const _options: any[] = useMemo(() => (serverOptions || options || []).map(_onRenderOptions), [\n onServerSearch,\n options,\n serverOptions,\n ]);\n\n const onChange = useCallback(\n (value: any, _option: any) => {\n setSearchValue(value);\n props.onChange && props.onChange(_option?.data, (serverOptions || options)?.map((i) => i.data));\n },\n [props.onChange, _options, serverOptions, options]\n );\n\n useEffect(() => {\n const res = props.value && _options?.find((option) => option.key === props.value[valueKey]);\n res && setSearchValue(res.value);\n }, [props.value]);\n\n const debounceFetcher = useMemo(() => {\n const loadOptions = (value: string) => {\n fetchRef.current += 1;\n const fetchId = fetchRef.current;\n setServerOptions([]);\n setFetching(true);\n\n onServerSearch && onServerSearch(value).then((newOptions) => {\n if (fetchId !== fetchRef.current) {\n return;\n }\n\n setServerOptions(newOptions?.map((option) => formatItemToOption(option, valueKey, labelKey)));\n setFetching(false);\n });\n };\n\n return debounce(loadOptions, debounceTimeout);\n }, [onServerSearch, debounceTimeout]);\n\n return <AntdAutoComplete\n value={searchValue}\n options={_options}\n onSelect={onChange}\n popupClassName={popupClassName}\n notFoundContent={null}\n placeholder={props.placeholder || labelPlaceholder}\n onSearch={(val) => {\n setSearchValue(val);\n debounceFetcher(val);\n }}\n backfill\n suffixIcon={<Icon icon={icon || SelectArrowIcon} />}\n className={classNames('ant-select-customize-input', props.className, styles.autoComplete, { 'select-error': props.error, 'select-stacked': props.stacked, 'select-loading': fetching })}\n clearIcon={<Icon icon={ClearIcon} />}\n ></AntdAutoComplete>\n}\n","import React, { PropsWithChildren, useMemo, MouseEvent, useCallback } from 'react';\nimport classnames from 'classnames';\nimport Loader from '../icon/icons/button-loader.svg';\n\nimport styles from './button.module.scss';\n\nexport enum EButtonSize {\n smallS = 'smallS',\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\nexport enum EButtonVariant {\n default = 'default',\n secondary = 'secondary',\n}\n\nexport enum EButtonIconPosition {\n left = 'left',\n right = 'right',\n}\n\ninterface IButtonProps {\n variant?: keyof typeof EButtonVariant;\n size?: keyof typeof EButtonSize;\n icon?: any;\n width?: string;\n iconPosition?: keyof typeof EButtonIconPosition;\n loading?: boolean;\n disabled?: boolean;\n className?: string;\n type?: 'button' | 'submit' | 'reset';\n onClick?: (e?: MouseEvent<HTMLButtonElement>) => void;\n}\n\nexport const Button = ({\n variant = EButtonVariant.default,\n size = EButtonSize.medium,\n iconPosition = EButtonIconPosition.right,\n width,\n icon: Icon,\n loading,\n disabled,\n children,\n className,\n onClick,\n type = 'button',\n}: PropsWithChildren<IButtonProps>) => {\n const classNames = useMemo(\n () =>\n classnames(\n styles.button,\n className,\n styles[`button__${variant}`],\n styles[`button__${size}`],\n styles[`button__icon_${iconPosition}`],\n {\n [styles.loading]: loading,\n [styles.withIcon]: Icon,\n }\n ),\n [variant, size, loading, Icon, disabled, className]\n );\n\n const loaderClassNames = useMemo(\n () => classnames(styles.loader, styles[`loader__${variant}`], styles[`loader__${size}`]),\n [variant, size]\n );\n\n const iconClassNames = useMemo(\n () =>\n classnames(styles.icon, styles[`icon__${variant}`], styles[`icon__${size}`], { [styles.icon__only]: !children }),\n [variant, size, children]\n );\n\n const _onClick = useCallback(\n (e?: MouseEvent<HTMLButtonElement>) => {\n if (disabled || loading) return;\n\n onClick && onClick(e);\n },\n [onClick, disabled, loading]\n );\n\n return (\n <button type={type} className={classNames} disabled={disabled} onClick={_onClick} style={{ width }}>\n {children}\n {Icon && <Icon className={iconClassNames} />}\n {loading && <Loader className={loaderClassNames} />}\n </button>\n );\n};\n","import React, {\n ComponentProps,\n createContext,\n PropsWithChildren,\n useCallback,\n useContext,\n useEffect,\n useState,\n} from 'react';\nimport ReactMedia from 'react-media';\n\ntype IMediaRender = () => any;\n\nconst MEDIA_MATCHES = {\n mobile: '(max-width: 767px)',\n tablet: '(max-width: 1023px) and (min-width: 768px)',\n desktop: '(min-width: 1024px)',\n};\n\nexport interface IMediaMatches {\n mobile: boolean;\n tablet: boolean;\n desktop: boolean;\n}\n\ninterface IMediaProps {\n renderMobile?: IMediaRender;\n renderTablet?: IMediaRender;\n renderDesktop?: IMediaRender;\n render?: (matches: IMediaMatches) => React.ReactNode;\n}\n\nexport const Media = ({ renderDesktop, renderMobile, renderTablet, render }: IMediaProps) => {\n const [mounted, setMounted] = useState(false);\n useEffect(() => {\n setMounted(true);\n }, []);\n\n const defaultRender = useCallback(\n (matches) => {\n if (matches.tablet && renderTablet) {\n return renderTablet && renderTablet();\n } else if (matches.mobile && renderMobile) {\n return renderMobile && renderMobile();\n } else if (matches.desktop && renderDesktop) {\n return renderDesktop && renderDesktop();\n }\n\n return null;\n },\n [renderTablet, renderMobile, renderMobile, render],\n );\n\n return <>{mounted && <ReactMedia queries={MEDIA_MATCHES}>{render || defaultRender}</ReactMedia>}</>;\n};\n\ninterface IMediaContext {\n mobile: boolean;\n tablet: boolean;\n desktop: boolean;\n}\n\nconst MediaContext = createContext<IMediaContext | null>(null);\n\nexport const MediaProvider = ({ children }: PropsWithChildren<{}>) => {\n return (\n <ReactMedia queries={MEDIA_MATCHES}>\n {(matches: IMediaMatches) => <MediaContext.Provider value={matches}>{children}</MediaContext.Provider>}\n </ReactMedia>\n );\n};\n\nexport declare type IReactComponent<P = any> =\n | React.ClassicComponentClass<P>\n | React.ComponentClass<P>\n | React.FunctionComponent<P>\n | React.ForwardRefExoticComponent<P>;\nexport function withMedia<T extends IReactComponent>(Component: T): T;\nexport function withMedia<T extends React.FunctionComponent<any>>(Component: T) {\n return (props: ComponentProps<typeof Component>) => (\n <MediaProvider>\n <Component {...props} />\n </MediaProvider>\n );\n}\n\nexport const useMedia = () => {\n const data = useContext(MediaContext);\n if (!data) {\n throw new Error('Не подключен MediaProvider');\n }\n\n return data;\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgBreadcrubmsArrow(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 13 8\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M9.172.464l3.182 3.182a.5.5 0 010 .708L9.172 7.536a.5.5 0 11-.708-.708L10.793 4.5H0v-1h10.793L8.464 1.172a.5.5 0 11.708-.708z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgBreadcrubmsArrow;","import React from 'react';\n\nimport { useMemo } from 'react';\nimport classnames from 'classnames';\n\nimport styles from './text.module.scss';\n\nexport enum ETextSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\ninterface ITextProps {\n size?: keyof typeof ETextSize;\n children?: any;\n bold?: boolean;\n addition?: boolean;\n attention?: boolean;\n success?: boolean;\n error?: boolean;\n className?: string;\n inverse?: boolean;\n style?: any;\n through?: boolean;\n tag?: 'p' | 'span' | 'div' | 'sub' | 'label';\n\n}\n\nexport const Text = ({\n children,\n size = ETextSize.medium,\n bold,\n addition,\n success,\n error,\n inverse,\n attention,\n className,\n style,\n through,\n tag = 'div',\n}: ITextProps) => {\n const TextTag = useMemo(() => tag as keyof JSX.IntrinsicElements, [tag]);\n\n const classNames = useMemo(\n () =>\n classnames(styles.text, className, styles[`text__${size}`], {\n [styles.textAddition]: addition,\n [styles.textBold]: bold,\n [styles.textSuccess]: success,\n [styles.textAttention]: attention,\n [styles.textError]: error,\n [styles.textThrough]: through,\n [styles.textInverse]: inverse,\n }),\n [size, className, addition, bold, success, attention, error, inverse],\n );\n\n\n return <TextTag style={style} className={classNames}>{children}</TextTag>;\n};\n","import React from 'react';\nimport { useMemo } from 'react';\nimport classnames from 'classnames';\n\nimport styles from './link.module.scss';\n\nexport enum ELinkVariant {\n link = 'link',\n href = 'href',\n action = 'action',\n}\n\nexport enum ELinkType {\n default = 'default',\n addition = 'addition',\n success = 'success',\n error = 'error',\n}\n\nexport enum ELinkSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\ninterface ILinkProps {\n size?: keyof typeof ELinkSize;\n icon?: any;\n variant?: keyof typeof ELinkVariant;\n children: any;\n href?: string;\n bold?: boolean;\n type?: keyof typeof ELinkType;\n dashed?: boolean;\n className?: string;\n target?: '_blank';\n onClick?: () => void;\n rel?: string;\n mainLink?: boolean;\n style?: any;\n}\n\nexport const Link = ({\n children,\n target,\n icon: Icon,\n variant = ELinkVariant.link,\n size = ELinkSize.medium,\n href,\n bold,\n className,\n type,\n dashed,\n onClick,\n rel,\n mainLink,\n style,\n}: ILinkProps) => {\n const classNames = useMemo(\n () =>\n classnames(styles.link, className, styles[`link__${variant}`], styles[`link__${size}`], styles[`link__${type}`], {\n [styles.linkBold]: bold,\n [styles.dashed]: dashed,\n }),\n [variant, className, dashed, type]\n );\n\n const iconClassNames = useMemo(\n () =>\n classnames(styles.icon, styles[`icon__${variant}`], styles[`icon__${size}`], { [styles.icon__only]: !children }),\n [variant, size, children]\n );\n\n if (variant === ELinkVariant.href) {\n return (\n <a className={classNames} target={target} rel={rel} href={href} style={style}>\n {children}\n </a>\n );\n }\n\n const link = useMemo(\n () =>\n variant === ELinkVariant.link && mainLink ? (\n <a className={classNames} target={target} href={href} rel={rel} style={style}>\n {children}\n </a>\n ) : variant === ELinkVariant.link ? (\n <a className={classNames} target={target} rel={rel} style={style}>\n {children}\n </a>\n ) : (\n <div className={classNames} onClick={onClick} style={style}>\n {children}\n {Icon && <Icon className={iconClassNames} />}\n </div>\n ),\n [variant, children, onClick]\n );\n\n return link;\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgCounterMinus(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 16 16\",\n fill: \"none\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.286 8c0-.316.255-.571.571-.571h10.286a.571.571 0 010 1.142H2.857A.571.571 0 012.286 8z\",\n fill: \"#212121\"\n })));\n}\n\nexport default SvgCounterMinus;","import React from 'react';\n\nimport { Button } from '@shared/button';\nimport { useMedia, withMedia } from '@shared/media';\nimport { Fragment, useCallback } from 'react';\n\nimport BreadcrumbsArrowIcon from '../icon/icons/breadcrubms-arrow.svg';\n\nimport styles from './breadcrumbs.module.scss';\nimport { Text } from '@shared/text';\nimport { Link } from '@shared/link';\n\nexport interface IBreadcrumbsPath {\n title: string;\n path: string;\n isBack?: boolean;\n isCurrent?: boolean;\n}\n\ninterface IBreadcrumbsProps {\n paths: IBreadcrumbsPath[];\n onReplace?: (path: string) => void;\n}\n\nexport const Breadcrumbs = withMedia(({ paths, onReplace }: IBreadcrumbsProps) => {\n const media = useMedia();\n\n const onBack = useCallback(() => {\n const backPath = paths.reverse().find((i) => i.path && i.isBack);\n if (backPath) {\n onReplace && onReplace(paths[paths.length - 1].path);\n } else {\n onReplace && onReplace('/');\n }\n }, [paths]);\n\n return media.mobile ? (\n <div>\n <Button size=\"small\" onClick={onBack}>\n Назад\n </Button>\n </div>\n ) : (\n <div className={styles.breadcrumbs}>\n {paths.map((item, index) => (\n <Fragment key={index}>\n {!!index && <BreadcrumbsArrowIcon />}\n <span key={index}>\n {item.path ? (\n <Link href={item.path}>\n <Text size=\"large\" className={styles.breadcrumbsLink}>{item.title}</Text>\n </Link>\n ) : (\n <Text size=\"large\" attention={item.isCurrent} bold={item.isCurrent}>{item.title}</Text>\n )}\n </span>\n </Fragment>\n ))}\n </div>\n );\n});\n","import React, { PropsWithChildren, useCallback, useEffect, useMemo, useState } from 'react';\nimport classnames from 'classnames';\nimport { ChangeEvent } from 'react';\nimport styles from './checkbox.module.scss';\n\nexport type ICheckboxProps = {\n disabled?: boolean;\n value?: boolean;\n error?: boolean;\n onChange?: (val: boolean) => void;\n small?: boolean;\n name?: string;\n};\n\nlet UNIQ_COUNT = 1;\n\nexport const Checkbox = ({ disabled = false, value = false, onChange = () => {}, children, error }: PropsWithChildren<ICheckboxProps>) => {\n const [_value, _setValue] = useState(value);\n\n useEffect(() => {\n value !== _value && _setValue(value);\n }, [value]);\n\n const _onChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n if (value === e.currentTarget.checked) {\n return;\n }\n _setValue(e.currentTarget.checked);\n onChange(e.currentTarget.checked);\n },\n [onChange, value],\n );\n\n const id = useMemo(() => `checkbox${UNIQ_COUNT++}`, []);\n\n return (\n <div className={styles.checkboxContainer}>\n <input\n name=\"name\"\n className={classnames(styles.checkbox, { [styles.error]: error })}\n type=\"checkbox\"\n disabled={disabled}\n id={id}\n checked={_value}\n onChange={_onChange}\n />\n <label htmlFor={id}>{children}</label>\n </div>\n );\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgCounterPlus(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 16 16\",\n fill: \"none\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 2.286c.316 0 .571.256.571.571V7.43h4.572a.571.571 0 010 1.142H8.57v4.572a.571.571 0 01-1.143 0V8.57h-4.57a.571.571 0 010-1.142h4.57V2.857c0-.315.256-.571.572-.571z\",\n fill: \"#fff\"\n })));\n}\n\nexport default SvgCounterPlus;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgDatePicker(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.286.857c.473 0 .857.384.857.857v.994c.72.115 1.186.3 1.654.55a4.673 4.673 0 011.944 1.944c.408.762.642 1.518.681 3.369h.006v6.265l-.004.523c-.035 1.902-.27 2.668-.683 3.439a4.673 4.673 0 01-1.944 1.944c-.838.448-1.669.687-3.961.687H9.164l-.523-.005c-1.902-.035-2.668-.27-3.439-.682a4.673 4.673 0 01-1.944-1.944c-.43-.805-.667-1.603-.686-3.694V8.57c.045-1.851.279-2.607.686-3.369a4.673 4.673 0 011.944-1.944c.469-.25.935-.435 1.655-.55v-.994a.857.857 0 011.714 0v.863c.186-.004.383-.006.593-.006h5.672c.21 0 .407.002.594.006l-.002-.863c0-.473.384-.857.858-.857zm3.427 9.429H4.286v4.792l.008.488c.033 1.292.17 1.85.476 2.423.288.54.701.953 1.24 1.241.64.342 1.264.472 2.912.483h6.156l.488-.007c1.292-.033 1.85-.17 2.423-.476.54-.288.952-.701 1.24-1.24.343-.64.473-1.264.484-2.912v-4.792zm-3.388 4.286c.371 0 .663.07.908.2.244.13.436.322.566.567.131.244.2.536.2.907v.08c0 .37-.069.662-.2.907-.13.244-.322.436-.566.567-.245.13-.537.2-.908.2h-.079c-.37 0-.663-.07-.907-.2a1.363 1.363 0 01-.567-.567c-.131-.245-.2-.537-.2-.908v-.079c0-.37.069-.663.2-.907.13-.245.322-.437.567-.567.244-.13.536-.2.907-.2h.079zM15.078 4.287H8.922l-.35.004v.852a.857.857 0 01-1.715 0V4.45c-.327.075-.585.18-.846.32A2.96 2.96 0 004.77 6.01c-.317.592-.452 1.17-.48 2.56h15.418l-.002-.137c-.034-1.292-.17-1.85-.476-2.423a2.959 2.959 0 00-1.241-1.24 3.287 3.287 0 00-.845-.32l-.001.692a.857.857 0 11-1.715 0l.002-.852c-.112-.002-.229-.004-.352-.004z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgDatePicker;","import React from 'react';\n\nimport { Button } from '@shared/button';\nimport { Text } from '@shared/text';\nimport { useCallback, useEffect, useState } from 'react';\n\nimport CounterMinusIcon from '../icon/icons/counter-minus.svg';\nimport CounterPlusIcon from '../icon/icons/counter-plus.svg';\n\nimport styles from './counter.module.scss';\n\ninterface ICounterProps {\n value?: number;\n max?: number;\n min?: number;\n onChange?: (count: number) => void;\n}\n\nexport const Counter = (props: ICounterProps) => {\n const [value, setValue] = useState(props.value || 0);\n\n const onChange = useCallback((e) => {\n setValue((count) => {\n const newCount = count + e;\n props.onChange && props.onChange(newCount);\n return newCount;\n });\n }, [props.onChange]);\n\n useEffect(() => {\n setValue(props.value);\n }, [props.value]);\n\n return (\n <div className={styles.counter}>\n <Button\n className={styles.button}\n icon={CounterMinusIcon}\n disabled={props.min != undefined && value <= props.min}\n onClick={onChange.bind(null, -1)}\n />\n <Text className={styles.value} size=\"large\">\n {value}\n </Text>\n <Button\n className={styles.button}\n icon={CounterPlusIcon}\n disabled={props.max != undefined && value >= props.max}\n onClick={onChange.bind(null, 1)}\n />\n </div>\n );\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgInputSearch(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.667 17.333a6.667 6.667 0 115.266-2.578l4.49 4.49-1.179 1.178-4.49-4.49a6.637 6.637 0 01-4.087 1.4zm5-6.666a5 5 0 11-10 0 5 5 0 0110 0z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgInputSearch;","var _path, _path2, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgInputLoader(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 20 20\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#input-loader_svg__paint0_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#input-loader_svg__paint1_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"input-loader_svg__paint0_linear\",\n x1: 14.5,\n y1: 5.5,\n x2: 16.5,\n y2: 10,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"input-loader_svg__paint1_linear\",\n x1: 10,\n y1: 16,\n x2: 17,\n y2: 9.5,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })))));\n}\n\nexport default SvgInputLoader;","import React, {\n InputHTMLAttributes,\n useMemo,\n ChangeEvent,\n forwardRef,\n KeyboardEvent,\n useEffect,\n useCallback,\n useState,\n useRef,\n useImperativeHandle,\n} from 'react';\nimport classnames from 'classnames';\nimport debounce from 'lodash.debounce';\n\nimport ClearIcon from '../icon/icons/clear.svg';\nimport InputSearchIcon from '../icon/icons/input-search.svg';\nimport InputLoaderIcon from '../icon/icons/input-loader.svg';\nimport Inputmask from 'inputmask';\n\nimport styles from './input.module.scss';\n\n\nexport enum EInputVariant {\n filled = 'filled',\n outlined = 'outlined',\n pure = 'pure',\n}\n\nexport enum EInputSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\nexport enum EInputBorder {\n circle = 'circle',\n normal = 'normal',\n}\n\nexport type IInputProps = {\n error?: boolean;\n icon?: any;\n value?: any;\n autofocus?: boolean;\n variant?: keyof typeof EInputVariant;\n size?: keyof typeof EInputSize;\n border?: keyof typeof EInputBorder;\n loading?: boolean;\n showClear?: boolean;\n adaptive?: boolean;\n className?: string;\n beginSearch?: number;\n debounceTime?: number;\n labelPlaceholder?: string;\n mask?: string;\n onClear?: (val?: string) => void;\n onPointerUp?: (e: any) => void;\n onChange?: (value: string, event: ChangeEvent<HTMLInputElement>) => void;\n onSearch?: ((val: string) => void) | ((val: string) => Promise<void>);\n} & Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'variant' | 'onChange'>;\n\nexport const Input = forwardRef<HTMLInputElement, IInputProps>(\n (\n {\n onChange,\n onFocus = () => {},\n onBlur = () => {},\n onClear,\n onSearch,\n onPointerUp,\n icon: Icon,\n name,\n required,\n disabled,\n value,\n type = 'text',\n placeholder,\n style,\n loading = false,\n showClear,\n error,\n labelPlaceholder,\n size = EInputSize.medium,\n variant = EInputVariant.outlined,\n border = EInputBorder.normal,\n adaptive,\n width,\n className,\n debounceTime = 500,\n beginSearch = NaN,\n mask,\n autofocus,\n ...props\n }: IInputProps,\n ref\n ) => {\n const [_value, _setValue] = useState<string | undefined>(value);\n const [_loading, _setLoading] = useState(loading);\n const [_mask, _setMask] = useState(null);\n\n const innerRef = useRef<HTMLInputElement>(null);\n\n useImperativeHandle(ref, () => innerRef.current);\n\n useEffect(() => {\n autofocus && setTimeout(() => {\n innerRef.current.focus();\n }, 500);\n }, [autofocus]);\n\n useEffect(() => _setValue(value), [value]);\n useEffect(() => _setLoading(loading), [loading]);\n useEffect(() => {\n if (!mask && _mask) {\n _mask.remove();\n _setMask(null);\n }\n\n if (!mask || !innerRef.current) {\n return;\n }\n\n if (!innerRef.current) {\n return;\n }\n const inputMask = new Inputmask({ mask, greedy: false });\n\n setTimeout(() => {\n _setMask(inputMask.mask(innerRef.current));\n innerRef.current.dispatchEvent(new Event('change', { bubbles: true }))\n })\n }, [mask, innerRef.current])\n\n const classNames = useMemo(\n () =>\n classnames(\n styles.input,\n className,\n styles[`input__${variant}`],\n styles[`input__${size}`],\n styles[`input__border_${border}`],\n {\n [styles[`input__${size}_adaptive`]]: adaptive,\n [styles[`input__action_${size}`]]: Icon || _loading || showClear || onSearch,\n [styles[`input__actions_${size}`]]: (Icon || _loading || onSearch) && showClear,\n [styles.disabled]: disabled,\n [styles.invalid]: error,\n }\n ),\n [variant, size, border, disabled, _loading, showClear, adaptive, className, error, onSearch]\n );\n\n const inputClassNames = useMemo(\n () =>\n classnames({\n [styles.invalid]: error,\n }),\n [error]\n );\n\n const clearClassNames = useMemo(\n () =>\n classnames(styles.clear, styles[`clear__${variant}`], styles[`clear__${size}`], {\n [styles[`clear__action_${size}`]]: Icon || _loading || onSearch,\n }),\n [variant, size, Icon, _loading, _value, onSearch]\n );\n\n const loaderClassNames = useMemo(\n () => classnames(styles.loader, styles[`loader__${variant}`], styles[`loader__${size}`]),\n [variant, size]\n );\n\n const iconClassNames = useMemo(() => classnames(styles.icon, styles[`icon__${variant}`], styles[`icon__${size}`]), [\n variant,\n size,\n ]);\n\n const labelClassNames = useMemo(() => classnames(styles.label), []);\n\n const _onSearchDebounce = useCallback(\n debounce((val, callback) => {\n _setValue((prev) => {\n if (prev !== val) {\n return;\n }\n\n (async () => {\n await callback(val);\n _setLoading(false);\n })();\n\n return val;\n });\n }, debounceTime),\n []\n );\n\n const _onChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n onSearch && _onSearch(e.currentTarget.value);\n _setValue(e.currentTarget.value);\n if (onChange) {\n onChange(e.currentTarget.value, e);\n }\n },\n [_onSearchDebounce, onSearch, onChange, beginSearch]\n );\n\n const _onSearch = useCallback(\n (val: string) => {\n _setLoading(true);\n\n _setValue(() => {\n if (!val) {\n onClear && onClear();\n _setLoading(false);\n } else if (val?.length >= beginSearch) {\n _onSearchDebounce(val, onSearch);\n } else {\n _setLoading(false);\n }\n\n return val;\n });\n },\n [_onSearchDebounce, onSearch, onClear, beginSearch]\n );\n\n const _onClear = useCallback(() => {\n _setValue(undefined);\n\n if (onClear) {\n onClear();\n }\n }, [onClear]);\n\n const _onKeyPress = useCallback(\n (e: KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter') {\n onSearch && onSearch(_value || '');\n }\n },\n [_value, onSearch]\n );\n\n return (\n <div\n className={classNames}\n style={{ width: width }}\n onPointerUp={onPointerUp}\n >\n {labelPlaceholder && _value && <div className={labelClassNames}>{labelPlaceholder}</div>}\n <input\n {...props}\n className={inputClassNames}\n ref={innerRef}\n name={name}\n disabled={disabled}\n placeholder={placeholder || labelPlaceholder}\n type={type}\n value={_value || ''}\n onChange={_onChange}\n onFocus={onFocus}\n onKeyPress={_onKeyPress}\n onBlur={onBlur}\n required={required}\n style={style}\n />\n {showClear && _value && <Icon icon={ClearIcon} className={clearClassNames} onClick={_onClear} />}\n {onSearch && !_loading && (\n <InputSearchIcon className={iconClassNames} onClick={onSearch.bind(null, _value || '')} />\n )}\n {Icon && !_loading && (\n <Icon className={iconClassNames} />\n )}\n {_loading && <InputLoaderIcon className={loaderClassNames} />}\n </div>\n );\n }\n);\n","import React, { ComponentProps, useCallback } from 'react';\nimport cn from 'classnames';\nimport DatePickerIcon from '../icon/icons/date-picker.svg';\nimport ClearIcon from '../icon/icons/clear.svg';\nimport { Icon } from '@shared/icon';\n\nimport generatePicker from 'antd/lib/date-picker/generatePicker';\nimport dateFnsGenerateConfig from 'rc-picker/lib/generate/dateFns';\nimport locale from 'antd/lib/date-picker/locale/ru_RU';\nimport { EInputSize, Input } from '@shared/input';\nlocale.lang.locale = 'ru';\n\nconst AntDatePicker = generatePicker<Date>(dateFnsGenerateConfig);\n\ntype IDatePickerProps = {\n error?: boolean;\n onClear?: (e: any) => void;\n onTouchStart?: (e: any) => void;\n format?: string;\n mask?: string;\n labelPlaceholder?: string;\n} & ComponentProps<typeof AntDatePicker>;\n\nexport const DatePicker = ({ error, onClear, format = 'DD.MM.YYYY', mask, labelPlaceholder, onClick, ...props }: IDatePickerProps) => {\n const onRenderInput = useCallback((props: React.InputHTMLAttributes<HTMLInputElement>) => {\n return <Input variant=\"pure\" mask={mask} error={error} labelPlaceholder={labelPlaceholder} onPointerUp={onClick} {...props} size={EInputSize.medium} onChange={(_, e) => props.onChange(e)} />;\n }, [onClick, error])\n\n return (\n // @ts-ignore\n <AntDatePicker\n {...props}\n locale={locale}\n suffixIcon={<Icon icon={DatePickerIcon} />}\n clearIcon={<div onClick={onClear}><Icon icon={ClearIcon} /></div>}\n className={cn(props.className, { 'date-picker-error': error })}\n placeholder={props.placeholder || labelPlaceholder}\n format={format}\n onClick={onClick}\n // @ts-ignore\n showToday={false}\n inputRender={onRenderInput}\n />\n );\n};\n","import React from 'react';\nimport classnames from 'classnames';\n\nimport styles from './divider.module.scss';\n\nexport type IDividerProps = {\n width?: string;\n height?: string;\n bordered?: boolean;\n overflow?: number;\n children?: JSX.Element;\n className?: string;\n};\n\nexport const Divider = ({ width, height, bordered, className}: IDividerProps) => {\n return (\n <div\n className={classnames(styles.divider, className, { [styles.bordered]: bordered })}\n style={{\n width,\n height,\n }}\n />\n );\n};\n","import React from 'react';\n\nimport { Dropdown as AntDropdown, DropDownProps as AntDropdownProps } from 'antd';\nimport { ReactNode, useCallback } from 'react';\n\nimport styles from './dropdown.module.scss';\n\ninterface IDropdownProps extends AntDropdownProps {}\n\nexport const Dropdown = (props: IDropdownProps) => {\n const dropdownRender = useCallback(\n (originNode: ReactNode) => {\n return props.dropdownRender ? (\n <div className={styles.dropdown}>{props.dropdownRender(originNode)}</div>\n ) : (\n originNode\n );\n },\n [props.dropdownRender],\n );\n\n return <AntDropdown {...props} dropdownRender={dropdownRender} />;\n};\n","import { useFormikContext } from \"formik\";\nimport { MutableRefObject, useEffect } from \"react\";\n\ninterface IFocusErrorProps {\n formRef: MutableRefObject<HTMLFormElement>;\n}\n\nexport const FocusError = (props: IFocusErrorProps) => {\n const { errors, isSubmitting, isValidating } = useFormikContext();\n\n useEffect(() => {\n if (isSubmitting && !isValidating) {\n let keys = Object.keys(errors);\n if (keys.length > 0) {\n const selector = `[name=${keys[0]}]`;\n const errorElement = props.formRef.current.querySelector(selector) as HTMLElement;\n if (errorElement) {\n errorElement.focus();\n }\n }\n }\n }, [errors, isSubmitting, isValidating]);\n\n return null;\n};\n","import React from 'react';\n\nimport { FormikContextType, FormikProvider } from \"formik\"\nimport { PropsWithChildren, useCallback, useRef } from \"react\"\nimport { FocusError } from \"./form-focus-error\";\n\ninterface IFormProps {\n form: FormikContextType<any>;\n className?: string;\n onBlur?: (values: any) => void;\n onChange?: (values: any) => void;\n onChangeBlur?: (values: any) => void;\n}\n\nexport const Form = (props: PropsWithChildren<IFormProps>) => {\n const ref = useRef<HTMLFormElement>();\n\n const onChangeBlur = useCallback(async () => {\n if (props.form.dirty && props.form.isValid) {\n const isValid = await props.form.validateForm();\n if (!Object.keys(isValid).length) {\n props.onChangeBlur && props.onChangeBlur(props.form.values);\n }\n }\n }, [props.form]);\n\n const onBlur = useCallback(() => {\n setTimeout(() => {\n props.onBlur && props.onBlur(props.form.values);\n onChangeBlur();\n });\n }, [props.onBlur, props.form]);\n\n const onChange = useCallback(() => {\n props.onChange && setTimeout(() => {\n props.onChange(props.form.values);\n });\n }, [props.onChange, props.form]);\n\n return <FormikProvider value={props.form}>\n <form ref={ref} className={props.className} onSubmit={props.form.handleSubmit} onBlur={onBlur} onChange={onChange}>\n {props.children}\n <FocusError formRef={ref} />\n </form>\n </FormikProvider>\n};\n","import React from 'react';\n\nimport { ComponentProps, ElementType, PropsWithChildren, useMemo } from \"react\"\nimport { getIn, useField, useFormikContext } from 'formik';\nimport { Text } from \"@shared/text\";\n\nimport styles from './form-control.module.scss';\n\ntype IFormControlProps<C extends ElementType> = {\n [key in keyof ComponentProps<C>]?: ComponentProps<C>[key]\n} & {\n name: string;\n label?: string;\n component?: C;\n onChange?: ComponentProps<C>['onChange'];\n};\n\nexport const isRequiredField = (validationSchema, name) => {\n if (!validationSchema) {\n return false;\n }\n const schemaDescription = validationSchema.describe()\n const accessor = name.split(\".\").join(\".fields.\")\n const field = getIn(schemaDescription.fields, accessor)\n if (!field) {\n return false\n }\n const isRequired = field.tests.some((test) => test.name === \"required\")\n return isRequired\n}\n\nexport function FormControl<T extends ElementType>({ name, label, component, onChange, ...props }: PropsWithChildren<IFormControlProps<T>>) {\n const [field, meta, helpers] = useField({ name, type: 'object' });\n const ctx = useFormikContext();\n const Component = component as any;\n\n const _onChange = (value: any, ...args) => {\n helpers.setValue(value);\n helpers.setError(undefined);\n\n setTimeout(() => {\n onChange && onChange(value, ...args);\n });\n\n helpers.setTouched(true, false);\n };\n\n const labelPlaceholder = useMemo(() => {\n if (props.labelPlaceholder && isRequiredField(ctx.validationSchema, name)) {\n return `${props.labelPlaceholder} *`\n }\n\n return props.labelPlaceholder;\n }, [props.labelPlaceholder, ctx.validationSchema]);\n\n return <div>\n {!!label && <Text className={styles.label} size=\"large\" addition>{label}</Text>}\n <Component {...field} {...props} label={label} labelPlaceholder={labelPlaceholder} error={meta.touched && meta.error} onChange={_onChange} />\n {meta.touched && meta.error && <Text className={styles.error} size=\"small\" error>{meta.error}</Text>}\n </div>\n}\n","import React from 'react';\n\nimport { useMemo } from 'react';\nimport classnames from 'classnames';\n\nimport styles from './heading.module.scss';\n\nexport enum EHeadingLevel {\n h1 = 1,\n h2,\n h3,\n h4,\n h5,\n}\n\ninterface IHeadingProps {\n level?: EHeadingLevel;\n children?: any;\n addition?: boolean;\n attention?: boolean;\n success?: boolean;\n warning?: boolean;\n inverse?: boolean;\n error?: boolean;\n className?: string;\n centerText?: boolean;\n}\n\nexport const Heading = ({\n children,\n level = EHeadingLevel.h1,\n addition,\n attention,\n warning,\n success,\n inverse,\n error,\n className,\n centerText,\n}: IHeadingProps) => {\n const HeadingTag = useMemo(() => `h${level}` as keyof JSX.IntrinsicElements, [level]);\n\n const classNames = useMemo(\n () =>\n classnames(\n styles.heading,\n styles[`heading__h${level}`],\n {\n [styles.textAddition]: addition,\n [styles.textAttention]: attention,\n [styles.textInverse]: inverse,\n [styles.textSuccess]: success,\n [styles.textError]: error,\n [styles.textWarning]: warning,\n [styles.center]: centerText,\n },\n className,\n ),\n [addition, inverse, error, className],\n );\n\n return <HeadingTag className={classNames}>{children}</HeadingTag>;\n};\n","var _path, _path2, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgLoader(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 20 20\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#loader_svg__paint0_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#loader_svg__paint1_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"loader_svg__paint0_linear\",\n x1: 14.5,\n y1: 5.5,\n x2: 16.5,\n y2: 10,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"loader_svg__paint1_linear\",\n x1: 10,\n y1: 16,\n x2: 17,\n y2: 9.5,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })))));\n}\n\nexport default SvgLoader;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgModalClose(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 28 28\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.293 6.293a1 1 0 011.414 0L14 12.585l6.293-6.292a1 1 0 011.32-.083l.094.083a1 1 0 010 1.414L15.415 14l6.292 6.293a1 1 0 01.083 1.32l-.083.094a1 1 0 01-1.414 0L14 15.415l-6.293 6.292a1 1 0 01-1.32.083l-.094-.083a1 1 0 010-1.414L12.585 14 6.293 7.707a1 1 0 01-.083-1.32l.083-.094z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgModalClose;","import React from 'react';\n\nimport LoaderIcon from '../icon/icons/loader.svg';\n\nimport styles from './loader.module.scss';\n\ninterface ILoaderProps {\n absolute?: boolean;\n fixed?: boolean;\n}\n\nexport const Loader = (props: ILoaderProps) => {\n if (props.absolute) {\n return <div className={styles.absolute}>\n <LoaderIcon className={styles.loader} />\n </div>\n }\n\n if (props.fixed) {\n return <div className={styles.fixed}>\n <LoaderIcon className={styles.loader} />\n </div>\n }\n\n return <LoaderIcon className={styles.loader} />;\n}\n","import React from 'react';\nimport classnames from 'classnames';\n\nimport styles from './loader-line.module.scss';\n\nexport type ILoaderLineProps = {\n active?: boolean;\n children?: JSX.Element;\n};\n\n\nexport const LoaderLine = ({ active }: ILoaderLineProps) => {\n return (\n <>\n <div className={classnames(styles.loaderLine, { [styles.active]: active })}>\n <div className={styles.border} />\n <div className={styles.bar} />\n </div>\n </>\n );\n};\n","import React, { PropsWithChildren } from 'react';\n\nimport { Menu as AntMenu, MenuProps as AntMenuProps } from 'antd';\n\ninterface IMenuProps extends AntMenuProps {}\n\nexport const Menu = (props: PropsWithChildren<IMenuProps>) => {\n // @ts-ignore\n return <AntMenu {...props} />;\n};\n","import React from 'react';\n\nimport { Heading } from '@shared/heading';\nimport { Icon } from '@shared/icon';\nimport { Modal as AntdModal } from 'antd';\nimport {\n ComponentProps,\n ElementType,\n forwardRef,\n MutableRefObject,\n PropsWithChildren,\n ReactNode,\n useCallback,\n useEffect,\n useState,\n} from 'react';\nimport ModalCloseIcon from './../icon/icons/modal-close.svg';\nimport classNames from 'classnames';\n\nimport styles from './modal.module.scss';\n\nexport type PropsWithModal<P, D = any> = P & {\n data: D;\n modal: IModalRef<D>;\n};\n\nexport interface IModalRef<D = any> {\n open: (data: D) => void;\n close: () => void;\n setTitle: (title: string | ReactNode) => void;\n setFooter: (node: ReactNode) => void;\n setClosable: (show: boolean) => void;\n setWidth: (width: string | number) => void;\n setFooterFixed: (value: boolean) => void;\n setFull: (value: boolean) => void;\n}\n\ntype IModalProps<C extends ElementType> = {\n [key in keyof ComponentProps<C>]?: ComponentProps<C>[key];\n} & {\n component?: any;\n title?: string;\n width?: number | string;\n footer?: ReactNode;\n sidebar?: boolean;\n footerFixed?: boolean;\n full?: boolean;\n};\n\nfunction _Modal<C extends ElementType>(\n { title, footer, width = 'max-content', closable = true, sidebar, component: Component, children, footerFixed, ...props }: PropsWithChildren<IModalProps<C>>,\n ref?: MutableRefObject<IModalRef>\n) {\n const [open, setOpen] = useState(false);\n const [data, setData] = useState<any>();\n const [_width, _setWidth] = useState<number | string>(width);\n const [_title, _setTitle] = useState<ReactNode>(title);\n const [_footer, _setFooter] = useState<ReactNode>(footer);\n const [_closable, _setClosable] = useState<boolean>(props.closable);\n const [_full, _setFull] = useState<boolean>(props.full);\n const [_footerFixed, _setFooterFixed] = useState<boolean>(props.footerFixed);\n\n const handleCancel = useCallback(() => {\n setOpen(false);\n }, []);\n\n const handleOpen = useCallback((data) => {\n setData(data);\n setOpen(true);\n }, []);\n\n useEffect(() => {\n if (!ref) {\n return;\n }\n\n ref.current = {\n open: handleOpen,\n close: handleCancel,\n setTitle: _setTitle,\n setFooter: _setFooter,\n setClosable: _setClosable,\n setWidth: _setWidth,\n setFooterFixed: _setFooterFixed,\n setFull: _setFull\n };\n }, [ref?.current]);\n\n return (\n <AntdModal\n open={open}\n closable={_closable}\n maskClosable={_closable}\n destroyOnClose={true}\n afterClose={() => {\n setData(null);\n setOpen(false);\n }}\n width={_width}\n closeIcon={<Icon size=\"large\" icon={ModalCloseIcon} />}\n onCancel={handleCancel}\n title={typeof _title === 'string' ? <Heading level={1}>{_title}</Heading> : _title}\n footer={_footer ? <div className={styles.footer}>{_footer}</div> : null}\n maskTransitionName=\"\"\n transitionName=\"\"\n className={classNames({ 'ant-modal-sidebar': sidebar, 'ant-modal-footer-fixed': _footerFixed, 'ant-modal-full': _full })}\n >\n {children}\n {!!Component && <Component {...props} data={data} modal={ref.current} />}\n </AntdModal>\n );\n}\n\nexport const Modal = forwardRef<IModalRef, IModalProps<any>>(_Modal);\n","import React from 'react';\n\nimport { createContext, createRef, PropsWithChildren, RefObject, useContext, useMemo, useState } from \"react\";\nimport { IModalRef, Modal } from \"./modal\";\n\ntype IModalContextPrivate = {\n create: (component: any, initialProps: any) => RefObject<IModalRef<any>>;\n};\n\ntype IModalObj = {\n ref: RefObject<IModalRef<any>>;\n id: number;\n component: any;\n initialProps: any[];\n}\n\nconst modalContext = createContext<IModalContextPrivate>(null);\n\nexport const ModalProvider = ({ children }: PropsWithChildren<any>) => {\n const [modals, setModals] = useState<IModalObj[]>([]);\n\n const value = useMemo(() => ({\n create: (component: any, initialProps: any) => {\n const ref = createRef<IModalRef>();\n const id = new Date().getTime();\n setModals(prev => prev.concat({ ref, id, component, initialProps }));\n\n return ref\n }\n }), []);\n\n return <modalContext.Provider value={value}>\n {children}\n {modals.map(modal => <Modal key={modal.id} ref={modal.ref} component={modal.component} {...modal.initialProps} />)}\n </modalContext.Provider>;\n};\n\nexport const useModal = (component: any, ...initialProps: any) => {\n const data = useContext(modalContext);\n\n const res = useMemo(() => data.create(component, initialProps || []), [component]);\n\n if (!data) {\n throw new Error('Не подключен ModalProvider');\n }\n\n return res;\n};\n\n","import React from 'react';\n\nimport { Text } from '@shared/text';\nimport { Radio as AntRadio, RadioChangeEvent, RadioGroupProps } from 'antd';\nimport { CheckboxValueType } from 'antd/lib/checkbox/Group';\nimport cn from 'classnames';\nimport { useCallback, useEffect, useMemo, useState } from 'react';\n\ninterface IRadioOption<T> {\n label: string;\n value: CheckboxValueType;\n data: T;\n}\n\ntype IRadioProps<T> = Omit<RadioGroupProps, 'options' | 'onChange' | 'value'> & {\n options: T[] | T;\n labels?: { [key: string]: string };\n valueKey?: string;\n labelKey?: string;\n value?: any;\n onChange?: (value: T, e?: MouseEvent) => void;\n position?: 'vertical' | 'horizontal';\n}\n\nfunction formatItemToOption<T = any>(item: any, valueKey: string, labelKey: string, labels: { [key: string]: string }) {\n if (['string', 'number', 'boolean'].includes(typeof item)) {\n return {\n label: labels ? labels[`${item}`] : item,\n value: item,\n data: item,\n } as IRadioOption<T>;\n }\n\n return {\n label: item[labelKey],\n value: item[valueKey],\n data: item,\n } as IRadioOption<T>;\n}\n\nexport function Radio<T = any>({ options, position = 'horizontal', valueKey, labelKey, labels, ...props }: IRadioProps<T>) {\n const [value, setValue] = useState<any>();\n\n const _options = useMemo(() => {\n let _options = null;\n if (Array.isArray(options)) {\n _options = options;\n }\n\n if (options) {\n _options = Object.values(options);\n }\n\n return _options?.map((option) => formatItemToOption(option, valueKey, labelKey, labels)) || null;\n }, [options, labels]);\n\n useEffect(() => {\n if (!options) {\n return;\n }\n\n const res = _options?.find((option) => (props.value && option.value === props.value[valueKey]) || option.value === props.value);\n setValue(res?.value);\n }, [props.value, _options]);\n\n const _onChange = useCallback((e: RadioChangeEvent) => {\n const value = _options.find(option => option.value === e.target.value);\n setValue(value.value);\n props.onChange && props.onChange(value?.data, e.nativeEvent);\n }, [props.onChange, _options]);\n\n\n return (\n <AntRadio.Group className={cn('ant-radio-group-customize', position)} {...props} onChange={_onChange} value={value}>\n {_options.map((option, index) => (\n <AntRadio className={cn('ant-radio-customize')} key={index} value={option.value}>\n <Text size=\"large\">{option.label}</Text>\n </AntRadio>\n ))}\n </AntRadio.Group>\n );\n}\n","import React, { ComponentProps, forwardRef, useCallback } from 'react';\n\nimport generatePicker from 'antd/lib/date-picker/generatePicker';\nimport dateFnsGenerateConfig from 'rc-picker/lib/generate/dateFns';\nimport { startOfDay } from 'date-fns';\nimport locale from 'antd/lib/date-picker/locale/ru_RU';\nlocale.lang.locale = 'ru';\n\nconst AntDatePicker = generatePicker<Date>(dateFnsGenerateConfig);\n\ntype IRangePickerProps = {\n isFromToday?: boolean;\n} & ComponentProps<typeof AntDatePicker.RangePicker>;\n\nexport const RangePicker = forwardRef((props: IRangePickerProps, ref) => {\n const disabledDate = useCallback(\n (current: Date) => {\n if (props.disabledDate && props.disabledDate(current)) {\n return true;\n }\n\n if (props.isFromToday) {\n return current && current.getTime() < startOfDay(new Date()).getTime();\n }\n\n return false;\n },\n [props.isFromToday, props.disabledDate],\n );\n\n // @ts-ignore\n return <AntDatePicker.RangePicker locale={locale} pickerRef={ref} {...props} disabledDate={disabledDate} />;\n});\n","import React from 'react';\n\nimport { Select as AntSelect, SelectProps } from 'antd';\nimport cn from 'classnames';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport debounce from 'lodash.debounce';\n\nimport SelectArrowIcon from '../icon/icons/select-arrow.svg';\nimport { Icon } from '@shared/icon';\nimport ClearIcon from '../icon/icons/clear.svg';\n\nimport styles from './select.module.scss';\nimport classNames from 'classnames';\n\nexport interface ISelectOption<T> {\n label: string;\n value: string | number | null | undefined;\n data?: T;\n}\n\ninterface ISelectOptionGroup<T> {\n label: string;\n options: ISelectOption<T>[];\n}\n\ninterface ISelectGroup<T> {\n label: string;\n options: T[];\n}\n\ntype ISelectProps<T> = Omit<SelectProps, 'options' | 'onChange'> & {\n options?: T[] | T;\n optionsGroup?: ISelectGroup<T>[];\n labels?: { [key: string]: string };\n error?: boolean;\n valueKey?: string;\n labelKey?: string;\n labelPlaceholder?: string;\n onServerSearch?: (val: string) => Promise<T[]>;\n onServerSearchGroup?: (val: string) => Promise<ISelectGroup<T>[]>;\n onRenderOption?: (item: T) => React.ReactNode;\n onChange?: (option: T, options?: T[]) => void;\n debounceTimeout?: number;\n stacked?: boolean;\n popupClassName?: string;\n suffixIcon?: any;\n};\n\nfunction formatItemToOption<T = any>(item: any, valueKey: string = 'value', labelKey: string = 'label', labels?: ISelectProps<T>['labels']) {\n if (['string', 'number', 'boolean'].includes(typeof item)) {\n return {\n label: labels ? labels[`${item}`] : item,\n value: item,\n data: item,\n } as ISelectOption<T>;\n }\n\n return {\n label: item[labelKey],\n value: item[valueKey],\n data: item,\n } as ISelectOption<T>;\n}\n\nexport function Select<T = any>({\n debounceTimeout = 500,\n onServerSearch,\n onServerSearchGroup,\n onRenderOption,\n valueKey,\n labelKey,\n labelPlaceholder,\n labels,\n popupClassName,\n suffixIcon = SelectArrowIcon,\n ...props\n}: ISelectProps<T>) {\n const [fetching, setFetching] = useState(false);\n const [serverOptions, setServerOptions] = useState<ISelectOption<T>[]>(null);\n const [optionsGroup, setOptionsGroup] = useState<ISelectOptionGroup<T>[]>(null);\n\n const [value, setValue] = useState<ISelectOption<T>>();\n const fetchRef = useRef(0);\n\n const isEqual = (option) => option.key === props.value || option.props.data === props.value || (props.value && (option.key === props.value[valueKey] || option.props.value === props.value[valueKey]));\n\n const options = useMemo(() => {\n let _options = null;\n if (Array.isArray(props.options)) {\n _options = props.options;\n }\n\n if (props.options) {\n _options = Object.values(props.options);\n }\n\n return _options?.map((option) => formatItemToOption(option, valueKey, labelKey, labels)) || null;\n }, [props.options, labels]);\n\n useEffect(() => {\n setOptionsGroup(props.optionsGroup?.map((group) => ({\n label: group.label,\n options: group.options.map((option) => formatItemToOption(option, valueKey, labelKey, labels))\n })));\n }, [props.optionsGroup]);\n\n const debounceFetcher = useMemo(() => {\n const loadOptions = (value: string) => {\n fetchRef.current += 1;\n const fetchId = fetchRef.current;\n setServerOptions([]);\n setOptionsGroup([]);\n setFetching(true);\n\n onServerSearch && onServerSearch(value).then((newOptions) => {\n if (fetchId !== fetchRef.current) {\n return;\n }\n\n setServerOptions(newOptions?.map((option) => formatItemToOption(option, valueKey, labelKey)));\n setFetching(false);\n });\n\n onServerSearchGroup && onServerSearchGroup(value).then((newOptions) => {\n if (fetchId !== fetchRef.current) {\n return;\n }\n\n setOptionsGroup(newOptions?.map((group) => ({\n label: group.label,\n options: group.options.map((option) => formatItemToOption(option, valueKey, labelKey, labels))\n })));\n setFetching(false);\n });\n };\n\n return debounce(loadOptions, debounceTimeout);\n }, [onServerSearch, onServerSearchGroup, debounceTimeout]);\n\n const _onRenderOptions = useCallback(\n (option: ISelectOption<T>, index: number) => {\n if (onRenderOption) {\n return <AntSelect.Option option={option} data={option.data} key={`${option.value}${index}`} label={option.label} value={option.value}>{onRenderOption(option.data)}</AntSelect.Option>;\n }\n\n return (\n <AntSelect.Option option={option} data={option.data} key={option.value} label={option.label} value={option.value}>\n <div className={classNames({ [styles.hasLabel]: labelPlaceholder })}>\n {!!labelPlaceholder && <label>{labelPlaceholder}</label>}\n <div className={styles.optionText}>{option.label}</div>\n </div>\n </AntSelect.Option>\n );\n },\n [onRenderOption, labelPlaceholder]\n );\n\n const _onRenderGroup = useCallback(\n (group: ISelectOptionGroup<T>) => {\n return <AntSelect.OptGroup label={group.label}>{group.options.map(_onRenderOptions)}</AntSelect.OptGroup>\n },\n []\n );\n\n const onDropdownVisibleChange = useCallback(\n (open: boolean) => {\n if (!open) {\n setServerOptions(null);\n return;\n }\n },\n [value]\n );\n\n const _options: any[] = useMemo(() => (serverOptions || options || []).map(_onRenderOptions), [\n onServerSearch,\n options,\n serverOptions,\n ]);\n\n const _optionsGroup: any[] = useMemo(() => optionsGroup?.map(_onRenderGroup) || null, [optionsGroup]);\n\n const onChange = useCallback(\n (value: any, _option: any) => {\n setValue(value);\n props.onChange && props.onChange(_option?.data, (serverOptions || options)?.map((i) => i.data));\n },\n [props.onChange, _options, serverOptions, options]\n );\n\n useEffect(() => {\n let res = props.value && _options?.find(isEqual);\n\n if (_optionsGroup?.length) {\n for (const group of _optionsGroup) {\n res = group.props.children.find(isEqual)\n if (res) break;\n }\n }\n\n setValue(res?.props.value);\n }, [props.value, _options, _optionsGroup]);\n\n return (\n <AntSelect\n {...props}\n value={value}\n options={undefined}\n onSearch={debounceFetcher}\n popupClassName={popupClassName}\n onDropdownVisibleChange={onDropdownVisibleChange}\n notFoundContent={null}\n loading={true}\n onChange={onChange}\n placeholder={props.placeholder || labelPlaceholder}\n clearIcon={<Icon icon={ClearIcon} />}\n className={cn('ant-select-customize-input', props.className, styles.select, { 'select-error': props.error, 'select-stacked': props.stacked, 'select-loading': fetching })}\n suffixIcon={suffixIcon ? <Icon icon={suffixIcon} /> : null}\n >\n {_optionsGroup?.length ? _optionsGroup : _options}\n </AntSelect>\n );\n}\n","import React from 'react';\n\nimport { Slider } from 'antd';\nimport { SliderRangeProps, SliderSingleProps } from 'antd/lib/slider';\nimport { useEffect, useState } from 'react';\n\ninterface ISelectorRangeProps extends SliderRangeProps {}\n\nexport const SelectorRange = (props: ISelectorRangeProps) => {\n const [value, setValue] = useState<[number, number]>(props.value);\n\n useEffect(() => {\n setValue(props.value);\n }, [props.value]);\n\n return <Slider {...props} value={value} onChange={setValue} />;\n};\n\ninterface ISelectorProps extends SliderSingleProps {}\n\nexport const Selector = (props: ISelectorProps) => {\n return <Slider {...props} />;\n};\n","var _g, _path, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgArrowNext(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 69 69\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#arrow-next_svg__filter0_d_878_2853)\"\n }, /*#__PURE__*/React.createElement(\"circle\", {\n cx: 34.844,\n cy: 34.592,\n r: 24,\n transform: \"rotate(-180 34.844 34.592)\",\n fill: \"#fff\"\n }))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M40.101 33.558l-6.15-6.504 1.382-1.462 8.51 9-8.51 9-1.383-1.462 6.151-6.505H25.844v-2.067H40.1z\",\n fill: \"#000\"\n })), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n id: \"arrow-next_svg__filter0_d_878_2853\",\n x: 0.844,\n y: 0.592,\n width: 68,\n height: 68,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n }, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n \"in\": \"SourceAlpha\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n }), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 5\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_878_2853\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n \"in\": \"SourceGraphic\",\n in2: \"effect1_dropShadow_878_2853\",\n result: \"shape\"\n })))));\n}\n\nexport default SvgArrowNext;","import React from 'react';\n\nimport RLSkeleton, { SkeletonProps } from 'react-loading-skeleton';\n\ntype ISkeletonProps = SkeletonProps;\n\nexport const Skeleton = (props: ISkeletonProps) => {\n return <RLSkeleton {...props} />\n}\n","var _g, _path, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgArrowPrev(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 69 69\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#arrow-prev_svg__filter0_d_878_2850)\"\n }, /*#__PURE__*/React.createElement(\"circle\", {\n cx: 34.844,\n cy: 34.592,\n r: 24,\n fill: \"#fff\"\n }))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M29.586 35.625l6.151 6.505-1.382 1.462-8.511-9 8.511-9 1.382 1.462-6.15 6.504h14.257v2.067H29.586z\",\n fill: \"#000\"\n })), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n id: \"arrow-prev_svg__filter0_d_878_2850\",\n x: 0.844,\n y: 0.592,\n width: 68,\n height: 68,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n }, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n \"in\": \"SourceAlpha\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n }), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 5\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_878_2850\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n \"in\": \"SourceGraphic\",\n in2: \"effect1_dropShadow_878_2850\",\n result: \"shape\"\n })))));\n}\n\nexport default SvgArrowPrev;","import React from 'react';\n\nimport { Swiper, SwiperSlide } from 'swiper/react';\nimport ArrowNext from '../icon/icons/arrow-next.svg';\nimport ArrowPrev from '../icon/icons/arrow-prev.svg';\nimport classnames from 'classnames';\nimport SwiperCore, { Navigation, Autoplay, Controller } from 'swiper';\nimport { useCallback, useMemo, useRef, useState } from 'react';\n\nimport styles from './slider.module.scss';\n\nSwiperCore.use([Navigation, Autoplay, Controller]);\n\ninterface ISliderProps {\n items: any[];\n slidesPerView: any;\n showNavigation?: boolean;\n navPosition?: 'inset' | '';\n renderItem: (item: any, index: number) => any;\n viewItem?: (item: any, index: number) => void;\n loop?: boolean;\n asyncReady?: boolean;\n spaceBetween?: number;\n autoplay?: boolean;\n freeMode?: boolean;\n showCounter?: boolean;\n centeredSlides?: boolean;\n className?: string;\n classNamePrev?: string;\n classNameNext?: string;\n overflow?: boolean;\n}\n\nexport const Slider = ({\n items,\n slidesPerView,\n renderItem,\n viewItem = () => {},\n loop,\n asyncReady,\n showNavigation,\n navPosition = '',\n spaceBetween = 24,\n autoplay = true,\n freeMode,\n showCounter,\n centeredSlides,\n className,\n classNamePrev,\n classNameNext,\n overflow,\n}: ISliderProps) => {\n const navigationPrevRef = useRef(null);\n const navigationNextRef = useRef(null);\n const [index, setIndex] = useState(0);\n const [ready, setReady] = useState(asyncReady);\n\n const classNames = useMemo(\n () =>\n classnames(styles.slider, className, { [styles.sliderAutoLoop]: loop && slidesPerView === 'auto', [styles.ready]: ready, overflow }),\n [loop, slidesPerView, ready, className],\n );\n\n const onSlideItem = useCallback((indexItem) => {\n const findItem = items.find((_, index) => index === indexItem);\n viewItem(findItem, indexItem);\n }, [viewItem])\n\n return (\n <>\n <div className={classnames(styles.sliderContainer, 'slider')}>\n <div\n ref={navigationPrevRef}\n className={classnames(\n styles.buttonSlider,\n styles[`buttonSlider__prev_${navPosition}`],\n styles[`buttonSlider__prev`],\n {\n [styles[`buttonSlider__hidden`]]: !showNavigation || items?.length <= slidesPerView,\n },\n classNamePrev,\n )}\n >\n <ArrowPrev />\n </div>\n <div\n ref={navigationNextRef}\n className={classnames(\n styles.buttonSlider,\n styles[`buttonSlider__next_${navPosition}`],\n styles[`buttonSlider__next`],\n {\n [styles[`buttonSlider__hidden`]]: !showNavigation || items?.length <= slidesPerView,\n },\n classNameNext,\n )}\n >\n <ArrowNext />\n </div>\n <Swiper\n loop={(loop && items?.length > slidesPerView) || (loop && slidesPerView === 'auto')}\n speed={1000}\n preloadImages={true}\n loopedSlides={loop && slidesPerView === 'auto' ? items.length : null}\n centeredSlides={centeredSlides}\n freeMode={freeMode}\n onSlideChange={(sw) => {\n setIndex(sw.realIndex + 1);\n onSlideItem(sw.realIndex);\n }}\n autoplay={\n autoplay\n ? {\n delay: 10000,\n disableOnInteraction: true,\n }\n : undefined\n }\n navigation={{\n nextEl: navigationNextRef.current,\n prevEl: navigationPrevRef.current,\n }}\n onImagesReady={(swiper) => {\n swiper.slideTo(0, 0);\n setReady(true);\n }}\n onBeforeInit={(swiper) => {\n if (typeof swiper.params.navigation === 'boolean') {\n return;\n }\n\n swiper.params.navigation.prevEl = navigationPrevRef.current;\n swiper.params.navigation.nextEl = navigationNextRef.current;\n }}\n lazy={{\n checkInView: true,\n loadPrevNext: true,\n }}\n slidesPerView={slidesPerView}\n spaceBetween={spaceBetween}\n className={classNames}\n >\n {items?.map((item, index) => {\n let key: any = index;\n if (typeof item === 'string') {\n key = item;\n }\n\n return (\n <SwiperSlide\n key={key}\n className={classnames(styles.swiperSlide, { [styles.swiperSlideAuto]: slidesPerView === 'auto' })}\n >\n {renderItem(item, index)}\n </SwiperSlide>\n );\n })}\n </Swiper>\n {showCounter && (\n <div className={styles.sliderCounter}>\n {index}/{items?.length}\n </div>\n )}\n </div>\n </>\n );\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSpoilerArrow(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 25 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.817 9.635A.857.857 0 105.7 10.937l6 5.142a.857.857 0 001.116 0l6-5.143A.857.857 0 1017.7 9.636L12.26 14.3 6.817 9.635z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgSpoilerArrow;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSpoilerArrowActive(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.558 16.08a.857.857 0 11-1.116-1.302l6-5.143a.857.857 0 011.116 0l6 5.143a.857.857 0 11-1.116 1.301L12 11.415l-5.442 4.664z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgSpoilerArrowActive;","import React from 'react';\n\nimport { PropsWithChildren, ReactNode, useCallback, useState } from 'react';\n\nimport { Icon } from '@shared/icon';\n\nimport SpoilerArrowIcon from '../icon/icons/spoiler-arrow.svg';\nimport SpoilerArrowActiveIcon from '../icon/icons/spoiler-arrow-active.svg';\n\nimport styles from './spoiler.module.scss';\n\ninterface ISpoilerProps {\n title: string | ReactNode;\n initialValue?: boolean;\n}\n\nexport const Spoiler = (props: PropsWithChildren<ISpoilerProps>) => {\n const [opened, setOpened] = useState(props.initialValue);\n\n const onChange = useCallback(() => {\n setOpened(prev => !prev);\n }, []);\n\n return (\n <div className={styles.spoiler}>\n <div className={styles.title} onClick={onChange.bind(null)}>\n {props.title}\n <Icon size=\"large\" variant=\"initial\" className={styles.arrow} icon={opened ? SpoilerArrowActiveIcon : SpoilerArrowIcon} />\n </div>\n {opened && props.children}\n </div>\n );\n};\n","import React from 'react';\n\nimport { Input, IInputProps } from '@shared/input';\nimport { Select } from '@shared/select';\nimport cn from 'classnames';\nimport { InputHTMLAttributes, ReactNode, useState } from 'react';\n\nimport styles from './stacked-input.module.scss';\n\nexport interface IStackedInputValue<T> {\n value: string;\n key: T;\n}\n\ntype IStackedInputProps<T> = {\n onChange: (val: string) => void;\n onSearch: (val: string) => void;\n onSelect: (key: T) => void;\n options: T[];\n option: T;\n className?: string;\n showClear?: boolean;\n placeholder?: string;\n labelPlaceholder?: string;\n mask?: IInputProps['mask'];\n value?: string\n onRenderOption?: (item: T) => ReactNode;\n} & Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'variant' | 'onChange'>;\n\nexport function StackedInput<T>({ onSelect, onRenderOption, options, option, ...props }: IStackedInputProps<T>) {\n const [key, setKey] = useState<T>(option || options[0]);\n\n const _onSelect = (key: T) => {\n setKey(key);\n onSelect(key);\n }\n\n return (\n <div className={cn(styles.stacked_input, props.className)}>\n <Select\n className={styles.stacked_input__select}\n size=\"large\"\n options={options}\n onChange={_onSelect}\n value={key}\n open={false}\n suffixIcon={null}\n\n onRenderOption={onRenderOption}\n dropdownMatchSelectWidth={false}\n stacked\n />\n <Input\n {...props}\n className={styles.stacked_input__input}\n labelPlaceholder={props.labelPlaceholder}\n mask={props.mask}\n showClear={props.showClear}\n placeholder={props.placeholder}\n />\n </div>\n );\n}\n","import React from 'react';\n\nimport { useCallback, useEffect, useState } from 'react';\n\nimport styles from './switch.module.scss';\nimport classNames from 'classnames';\nimport { Text } from '@shared/text';\n\ntype ISwitchProps = {\n value?: boolean;\n name?: string;\n title?: string;\n className?: string;\n onChange?: (value: boolean) => void;\n};\n\nexport const Switch = (props: ISwitchProps) => {\n const [value, setValue] = useState(props.value);\n\n useEffect(() => setValue(!!props.value), [props.value]);\n\n const onChange = useCallback(() => {\n setValue(!value);\n props.onChange && props.onChange(!value);\n }, [value, props.onChange]);\n\n return <div className={classNames(styles.switch, props.className, { [styles.active]: value })} onClick={onChange}>\n <div></div>\n <input name={props.name} type=\"checkbox\" checked={value} />\n {!!props.title && <Text size=\"large\">{props.title}</Text>}\n </div>\n}\n","import React from 'react';\n\nimport { Select as AntdSelect, SelectProps } from \"antd\";\nimport classNames from \"classnames\";\nimport { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { Icon } from '@shared/icon';\nimport ClearIcon from '../icon/icons/clear.svg';\n\nimport styles from './tag-box.module.scss';\n\nexport interface ITagBoxOption<T> {\n label: string;\n value: string | number | null | undefined;\n data?: T;\n}\n\nfunction formatItemToOption<T = any>(item: any, valueKey: string = 'value', labelKey: string = 'label', labels?: ITagBoxProps<T>['labels']) {\n if (['string', 'number', 'boolean'].includes(typeof item)) {\n return {\n label: labels ? labels[`${item}`] : item,\n value: item,\n data: item,\n } as ITagBoxOption<T>;\n }\n\n return {\n label: item[labelKey],\n value: item[valueKey],\n data: item,\n } as ITagBoxOption<T>;\n}\n\ntype ITagBoxProps<T> = Omit<SelectProps, 'options' | 'onChange'> & {\n options?: T[] | T;\n labels?: { [key: string]: string };\n error?: boolean;\n valueKey?: string;\n labelKey?: string;\n labelPlaceholder?: string;\n onChange?: (option: T[], options?: T[]) => void;\n onRenderOption?: (item: T) => React.ReactNode;\n popupClassName?: string;\n};\n\nexport function TagBox<T>({ labels, valueKey, labelKey, labelPlaceholder, onRenderOption, popupClassName, ...props }: ITagBoxProps<T>) {\n const [value, setValue] = useState<ITagBoxOption<T>[]>();\n\n const isEqual = (option) => props.value.some(v => v === option.key || v === option.props?.data || v === option.props.value || v[valueKey] === option.key || v[valueKey] === option.props.value);\n\n const options = useMemo(() => {\n let _options = null;\n if (Array.isArray(props.options)) {\n _options = props.options;\n }\n\n if (props.options) {\n _options = Object.values(props.options);\n }\n\n return _options?.map((option) => formatItemToOption(option, valueKey, labelKey, labels)) || [];\n }, [props.options, labels]);\n\n const _onRenderOptions = useCallback(\n (option: ITagBoxOption<T>, index: number) => {\n if (onRenderOption) {\n return <AntdSelect.Option option={option} data={option.data} key={`${option.value}${index}`} label={option.label} value={option.value}>{onRenderOption(option.data)}</AntdSelect.Option>;\n }\n\n return (\n <AntdSelect.Option option={option} data={option.data} key={option.value} label={option.label} value={option.value}>\n <div className={classNames({ [styles.hasLabel]: labelPlaceholder })}>\n {!!labelPlaceholder && <label>{labelPlaceholder}</label>}\n <div className={styles.optionText}>{option.label}</div>\n </div>\n </AntdSelect.Option>\n );\n },\n [onRenderOption, labelPlaceholder]\n );\n\n const _options: any[] = useMemo(() => (options || []).map(_onRenderOptions), [options]);\n\n const onChange = useCallback(\n (value: any, _option: any) => {\n setValue(value);\n props.onChange && props.onChange(_option?.map(i => i.data), options?.map((i) => i.data));\n },\n [props.onChange, _options, options]\n );\n\n useEffect(() => {\n let res = props.value && _options?.filter(isEqual);\n setValue(res?.map(i => i.props.value));\n }, [props.value, _options]);\n\n return (\n <AntdSelect\n {...props}\n mode=\"multiple\"\n value={value}\n options={undefined}\n popupClassName={popupClassName}\n notFoundContent={null}\n onChange={onChange}\n maxTagCount=\"responsive\"\n removeIcon={<Icon size=\"small\" icon={ClearIcon} />}\n menuItemSelectedIcon={null}\n placeholder={props.placeholder || labelPlaceholder}\n className={classNames('ant-tag-box-customize-input', props.className, styles.select, { 'select-error': props.error })}\n >\n {_options}\n </AntdSelect>\n );\n}\n","import React, { PropsWithChildren, useMemo, useCallback } from 'react';\nimport classnames from 'classnames';\n\nimport styles from './tag-button.module.scss';\n\nexport enum ETagButtonSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\nexport enum ETagButtonVariant {\n default = 'default',\n secondary = 'secondary',\n tumbler = 'tumbler',\n green = 'green',\n tab = 'tab',\n text = 'text',\n icons = 'icons',\n}\n\ninterface IButtonProps {\n variant?: keyof typeof ETagButtonVariant;\n size?: keyof typeof ETagButtonSize;\n icon?: any;\n disabled?: boolean;\n selected?: boolean;\n notChangeSelected?: boolean;\n shadow?: boolean;\n onClick: (e?: boolean) => void;\n}\n\nexport const TagButton = ({\n variant = ETagButtonVariant.default,\n size = ETagButtonSize.medium,\n disabled,\n selected,\n children,\n onClick,\n}: PropsWithChildren<IButtonProps>) => {\n const classNames = useMemo(\n () =>\n classnames(styles.button, styles[`button__${variant}`], styles[`button__${size}`], {\n [styles.selected]: selected,\n }),\n [variant, size, disabled, selected],\n );\n\n const _onClick = useCallback(() => {\n onClick();\n }, []);\n\n return (\n <div className={classNames} onClick={_onClick}>\n <span>{children}</span>\n </div>\n );\n};\n","import React from 'react';\n\nimport { useCallback, useEffect, useMemo, useState } from 'react';\nimport { ETagButtonSize, ETagButtonVariant, TagButton } from './tag-button';\n\nimport styles from './tag-button.module.scss';\nimport classNames from 'classnames';\n\ninterface ITagButtonGroupProps<T> {\n variant?: keyof typeof ETagButtonVariant;\n className?: string;\n labels?: { [key: string]: string };\n size?: keyof typeof ETagButtonSize;\n options: T[];\n onChange?: (value: T) => void;\n onRenderLabel?: (value: T) => void;\n value?: T;\n valueKey?: string;\n labelKey?: string;\n}\n\ninterface ITagOption<T> {\n label: string;\n value: string;\n data: T;\n}\n\nfunction formatItemToOption<T = any>(\n item: any,\n valueKey: string = 'value',\n labelKey: string = 'label',\n labels?: ITagButtonGroupProps<T>['labels']\n) {\n if (['string', 'number', 'boolean'].includes(typeof item)) {\n return {\n label: labels ? labels[`${item}`] : item,\n value: item,\n data: item,\n } as ITagOption<T>;\n }\n\n return {\n label: item[labelKey],\n value: item[valueKey],\n data: item,\n } as ITagOption<T>;\n}\n\nexport function TagButtonGroup<T>({\n labelKey = 'label',\n valueKey = 'value',\n labels,\n className,\n ...props\n}: ITagButtonGroupProps<T>) {\n const [value, setValue] = useState<ITagOption<T>>();\n\n const options = useMemo(() => {\n let _options = null;\n if (Array.isArray(props.options)) {\n _options = props.options;\n }\n\n if (props.options) {\n _options = Object.values(props.options);\n }\n\n return _options?.map((option) => formatItemToOption(option, valueKey, labelKey, labels)) || null;\n }, [props.options, labels]);\n\n const onChange = useCallback(\n (val: ITagOption<T>) => {\n const option = options?.find(\n (option) => option.value === val.value || option.data === val.value || option.value === val[valueKey]\n );\n setValue(option);\n props.onChange && props.onChange(option?.data);\n },\n [props.onChange]\n );\n\n useEffect(() => {\n const res =\n props.value &&\n options?.find(\n (option) =>\n option.value === props.value || option.data === props.value || option.value === props.value[valueKey]\n );\n\n setValue(res);\n }, [props.value, options]);\n\n return (\n <div className={classNames(styles.tagButtonGroup, className)}>\n {options.map((item) => (\n <TagButton\n key={item.value}\n variant={props.variant}\n size={props.size}\n selected={value === item}\n onClick={onChange.bind(null, item)}\n >\n {props.onRenderLabel ? props.onRenderLabel(item.data) : item.label}\n </TagButton>\n ))}\n </div>\n );\n}\n","import { useEffect, useRef } from 'react';\n\nexport function useCombinedRefs(...refs) {\n const targetRef = useRef();\n\n useEffect(() => {\n refs.forEach((ref) => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n}\n","import React, { useMemo, ChangeEvent, forwardRef, useRef, TextareaHTMLAttributes } from 'react';\nimport classnames from 'classnames';\nimport Loader from '../icon/icons/input-loader.svg';\nimport Clear from '../icon/icons/clear.svg';\n\nimport styles from './text-area.module.scss';\nimport { useState } from 'react';\nimport { useCallback } from 'react';\nimport { useEffect } from 'react';\nimport { useCombinedRefs } from '@shared/utils/combine-ref';\n\nconst observe = function (element, event, handler) {\n element.addEventListener(event, handler, false);\n};\n\nconst deobserve = function (element, event, handler) {\n element.removeEventListener(event, handler);\n};\n\nfunction init(text: HTMLTextAreaElement) {\n const resize = () => {\n text.style.height = 'auto';\n text.style.height = `${2 + text.scrollHeight}px`;\n };\n\n /* 0-timeout to get the already changed text */\n function delayedResize() {\n window.setTimeout(resize, 0);\n }\n\n observe(text, 'change', resize);\n observe(text, 'cut', delayedResize);\n observe(text, 'paste', delayedResize);\n observe(text, 'drop', delayedResize);\n observe(text, 'keydown', delayedResize);\n observe(text, 'input', resize);\n\n text.focus();\n // text.select();\n resize();\n\n return () => {\n deobserve(text, 'change', resize);\n deobserve(text, 'cut', delayedResize);\n deobserve(text, 'paste', delayedResize);\n deobserve(text, 'drop', delayedResize);\n deobserve(text, 'keydown', delayedResize);\n deobserve(text, 'input', resize);\n }\n}\n\nexport enum ETextAreaVariant {\n filled = 'filled',\n outlined = 'outlined',\n}\n\nexport enum ETextAreaSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\nexport enum ETextAreaBorder {\n circle = 'circle',\n normal = 'normal',\n}\n\ntype ITextAreaProps = {\n invalid?: boolean;\n icon?: any;\n variant?: keyof typeof ETextAreaVariant;\n size?: keyof typeof ETextAreaSize;\n border?: ETextAreaBorder;\n loading?: boolean;\n showClear?: boolean;\n adaptive?: boolean;\n placeholder?: string;\n onClear?: () => void;\n onSearch?: (e: any) => void;\n onChange?: (value: string, event?: ChangeEvent<HTMLTextAreaElement>) => void;\n} & Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'size' | 'variant' | 'onChange'>;\n\nexport const TextArea = forwardRef<HTMLTextAreaElement, ITextAreaProps>(\n (\n {\n onChange,\n onFocus = () => {},\n onBlur = () => {},\n onClear,\n onSearch,\n icon: Icon,\n name,\n required,\n disabled,\n value,\n placeholder,\n style,\n loading,\n showClear,\n invalid,\n autoFocus,\n size = ETextAreaSize.medium,\n variant = ETextAreaVariant.outlined,\n border = ETextAreaBorder.normal,\n adaptive,\n ...props\n }: ITextAreaProps,\n ref,\n ) => {\n const [_value, _setValue] = useState(value);\n\n const innerRef = useRef<HTMLTextAreaElement>();\n const combineRef: React.MutableRefObject<HTMLTextAreaElement> = useCombinedRefs(ref, innerRef);\n\n // useEffect(() => _setValue(value), [value]);\n\n useEffect(() => {\n if (autoFocus && combineRef.current) {\n combineRef.current.value = '';\n combineRef.current.value = `${value || ''}`;\n const unsubscribe = init(combineRef.current);\n\n return () => {\n unsubscribe();\n }\n }\n\n return () => {\n\n }\n }, [autoFocus, combineRef]);\n\n const classNames = useMemo(\n () =>\n classnames(\n styles.textarea,\n styles[`textarea__${variant}`],\n styles[`textarea__${size}`],\n styles[`textarea__border_${border}`],\n {\n [styles[`textarea__${size}_adaptive`]]: adaptive,\n [styles[`textarea__action_${size}`]]: Icon || loading || showClear,\n [styles[`textarea__actions_${size}`]]: (Icon || loading) && showClear,\n [styles.textarea__disabled]: disabled,\n },\n ),\n [variant, size, border, disabled, loading, showClear, adaptive],\n );\n\n const inputClassNames = useMemo(\n () =>\n classnames(props.className, {\n [styles.invalid]: invalid,\n }),\n [invalid, props.className],\n );\n\n const clearClassNames = useMemo(\n () =>\n classnames(styles.clear, styles[`clear__${variant}`], styles[`clear__${size}`], {\n [styles[`clear__action_${size}`]]: Icon || loading,\n }),\n [variant, size, Icon, loading],\n );\n\n const loaderClassNames = useMemo(\n () => classnames(styles.loader, styles[`loader__${variant}`], styles[`loader__${size}`]),\n [variant, size],\n );\n\n const iconClassNames = useMemo(() => classnames(styles.icon, styles[`icon__${variant}`], styles[`icon__${size}`]), [\n variant,\n size,\n ]);\n\n const _onChange = useCallback((e: ChangeEvent<HTMLTextAreaElement>) => {\n _setValue(e.target.value);\n if (onChange) {\n onChange(e.target.value, e);\n }\n }, []);\n\n const _onSearch = useCallback(\n () => {\n if (onSearch) {\n onSearch(_value);\n }\n },\n [onSearch],\n );\n\n const _onClear = useCallback(() => {\n _setValue(undefined);\n\n if (onClear) {\n onClear();\n }\n }, [onClear]);\n\n return (\n <div className={classNames}>\n <textarea\n {...props}\n className={inputClassNames}\n ref={combineRef}\n name={name}\n disabled={disabled}\n placeholder={placeholder}\n // value={_value || ''}\n onChange={_onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n required={required}\n style={style}\n />\n {showClear && _value && <Clear className={clearClassNames} onClick={_onClear} />}\n {Icon && !loading && <Icon className={iconClassNames} onClick={_onSearch} />}\n {loading && <Loader className={loaderClassNames} />}\n </div>\n );\n },\n);\n","import { CSSProperties } from \"react\";\n\nexport enum TooltipPosition {\n left = 'left',\n top = 'top',\n right = 'right',\n bottom = 'bottom',\n}\n\nexport const isCurrent = (e: Event, element: Element): any => {\n const find = (el: HTMLElement) => {\n if (el === element) {\n return el;\n }\n\n return el?.parentElement && find(el.parentElement);\n };\n\n if (find(e.target as HTMLElement)) {\n return true;\n }\n};\n\nexport const findTargetElement = (element: Element) => {\n let elem = element;\n\n const find = (child: Element) => {\n if (child.getAttribute('data-tooltip-target')) {\n elem = child;\n }\n\n if (child.children.length) {\n return Array.prototype.slice.call(child.children, 0).find(find);\n }\n };\n\n find(element);\n\n return elem;\n};\n\nexport const getScrollTopParent = (element: HTMLElement): HTMLElement | null => {\n if (element.scrollHeight > element.clientHeight) {\n return element;\n }\n\n if (element.parentElement) {\n return getScrollTopParent(element.parentElement);\n }\n\n return null;\n};\n\nexport const recalcArrowStyles = (\n targetElement: Element,\n tooltipProperties: CSSProperties,\n position: TooltipPosition\n): CSSProperties => {\n const { left, width } = targetElement.getBoundingClientRect();\n\n switch (position) {\n case TooltipPosition.top:\n return { left: left - (tooltipProperties.left as number) + (width / 2) };\n case TooltipPosition.bottom:\n return { left: left - (tooltipProperties.left as number) + (width / 2) };\n case TooltipPosition.left:\n return { };\n case TooltipPosition.right:\n return { };\n }\n};\n\nexport const recalcStyles = (\n targetElement: Element,\n tooltipElement: HTMLDivElement,\n position: TooltipPosition\n): CSSProperties => {\n const { top, left, width, height } = targetElement.getBoundingClientRect();\n const { width: tooltipWidth, height: tooltipHeight } = tooltipElement.getBoundingClientRect();\n\n let leftPosition = 0;\n if ([TooltipPosition.top, TooltipPosition.bottom].includes(position)) {\n leftPosition = left + width / 2 - tooltipWidth / 2;\n if (leftPosition + tooltipElement.offsetWidth > document.body.offsetWidth) {\n leftPosition -= leftPosition + tooltipElement.offsetWidth - document.body.offsetWidth;\n }\n }\n\n switch (position) {\n case TooltipPosition.top:\n return { top: top - tooltipHeight, left: leftPosition, opacity: 1 };\n case TooltipPosition.bottom:\n return { top: top + height + tooltipHeight, left: leftPosition, opacity: 1 };\n case TooltipPosition.left:\n return { top: top + height / 2 - tooltipHeight / 2, left: left - tooltipWidth, opacity: 1 };\n case TooltipPosition.right:\n return { top: top + height / 2 - tooltipHeight / 2, left: left + width, opacity: 1 };\n }\n};\n","import classnames from 'classnames';\nimport React, { PropsWithChildren, useMemo, useState } from 'react';\n\nimport styles from './text-spoiler.module.scss';\nimport { ELinkVariant, Link } from '@shared/link';\nimport { ELinkSize } from '@shared/link/link';\n\nexport const TextSpoiler = (props: PropsWithChildren<{}>) => {\n const [isOpen, setOpen] = useState(false);\n\n const classNames = useMemo(\n () =>\n classnames(styles.textSpoiler, {\n [styles.openText]: isOpen,\n }),\n [isOpen],\n );\n\n return (\n <div>\n <div className={classNames}>{props.children}</div>\n <Link bold size={ELinkSize.large} variant={ELinkVariant.action} onClick={() => setOpen(!isOpen)}>\n {isOpen ? 'Свернуть' : 'Читать далее'}\n </Link>\n </div>\n );\n};\n","import { createPortal } from 'react-dom';\nimport classNames from 'classnames';\nimport React, {\n CSSProperties,\n MouseEvent as ReactMouseEvent,\n PropsWithChildren,\n TouchEvent as ReactTouchEvent,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\n\nimport styles from './tooltip.module.scss';\nimport { useMedia } from '@shared/media';\nimport { TooltipPosition, findTargetElement, getScrollTopParent, isCurrent, recalcArrowStyles, recalcStyles } from './tooltip.utils';\n\ntype ITootipProps = {\n title: any;\n className?: string;\n onOpenChange?: (val: boolean) => void;\n placement?: keyof typeof TooltipPosition;\n trigger?: any;\n};\n\nexport const Tooltip = ({ placement = 'top', ...props }: PropsWithChildren<ITootipProps>) => {\n const media = useMedia();\n\n const ref = useRef<HTMLDivElement>(null);\n const refTooltip = useRef<HTMLDivElement>(null);\n const refArrow = useRef<HTMLDivElement>(null);\n\n const [opened, setOpened] = useState<boolean>(false);\n const [stylesTooltip, setStylesTooltip] = useState<CSSProperties>();\n const [stylesArrow, setStylesArrow] = useState<CSSProperties>();\n\n const scrollElement = useRef<HTMLElement>(null);\n\n const recalcPosition = useCallback(() => {\n if (!refTooltip.current || !ref.current) return;\n\n const targetElement = findTargetElement(ref.current);\n const res = recalcStyles(targetElement, refTooltip.current, placement as TooltipPosition);\n setStylesTooltip(res);\n setStylesArrow(recalcArrowStyles(targetElement, res, placement as TooltipPosition));\n }, []);\n\n useEffect(() => {\n return () => {\n setOpened(false);\n };\n }, []);\n\n useEffect(() => {\n recalcPosition();\n }, [props.title]);\n\n const onTouchStart = useCallback((e: ReactTouchEvent) => {\n e.stopPropagation();\n return;\n }, []);\n\n const onClose = useCallback((e?: Event | ReactMouseEvent) => {\n if (e instanceof Event && isCurrent(e, ref.current)) {\n return;\n }\n\n setOpened(false);\n setStylesTooltip(null);\n\n scrollElement.current && scrollElement.current.parentElement.removeEventListener('scroll', onClose);\n document.removeEventListener('scroll', onClose);\n document.body.removeEventListener('touchstart', onClose);\n document.body.removeEventListener('click', onClose);\n }, []);\n\n const onOpen = useCallback(\n (e: ReactMouseEvent) => {\n e.stopPropagation();\n if (opened) {\n media.mobile && onClose();\n return;\n }\n\n setOpened(true);\n props.onOpenChange && props.onOpenChange(true);\n\n setTimeout(() => {\n recalcPosition();\n\n const element = getScrollTopParent(ref.current);\n if (element) {\n scrollElement.current = element;\n element.parentElement.addEventListener('scroll', onClose);\n document.addEventListener('scroll', onClose);\n document.body.addEventListener('click', onClose);\n document.body.addEventListener('touchstart', onClose);\n }\n }, 0);\n },\n [props.onOpenChange, opened]\n );\n\n const title = useMemo(\n () => (\n <div ref={refTooltip} style={stylesTooltip} className={classNames(styles.tooltip, styles[placement])}>\n {props.title}\n <div ref={refArrow} style={stylesArrow} className={styles.arrow}></div>\n </div>\n ),\n [stylesTooltip, stylesArrow, props.title]\n );\n\n return (\n <div\n ref={ref}\n className={classNames(props.className)}\n onMouseOver={!media.mobile ? onOpen : null}\n onClick={media.mobile ? onOpen : null}\n onMouseLeave={!media.mobile ? onClose : null}\n onTouchStart={media.mobile ? onTouchStart : null}\n // onTouch={media.mobile ? onClose : null}\n >\n {props.children}\n {opened && props.title && createPortal(title, document.body)}\n </div>\n );\n\n // return <AntTooltip ref={ref} color=\"#212121\" {...props} overlayClassName=\"ant-tooltip-customize\" />;\n};\n","import React from 'react';\n\nimport { Text } from '@shared/text';\nimport { Upload as AntdUpload, UploadFile, UploadProps } from 'antd';\nimport { UploadChangeParam } from 'antd/lib/upload';\nimport { useCallback, useEffect, useState } from 'react';\n\nimport styles from './upload.module.scss';\n\ntype IUploadProps = UploadProps & {\n onUpload?: (file: File) => Promise<string>;\n onChange?: (link: string) => void;\n renderName?: (link: string) => string;\n path?: string;\n value: string;\n};\n\nexport const Upload = ({ onUpload, onChange, renderName, path = '', value, ...props }: IUploadProps) => {\n const [file, setFile] = useState<UploadFile[]>();\n\n useEffect(() => {\n setFile(value ? [\n {\n uid: '0',\n name: renderName ? renderName(value) : value,\n status: 'done',\n url: value,\n thumbUrl: value,\n },\n ] : undefined);\n }, [value]);\n\n const _onChange = useCallback((info: UploadChangeParam<UploadFile<any>>) => {\n const { file } = info;\n\n onChange && onChange(path ? `${path}${file.name}` : URL.createObjectURL(file.originFileObj as any));\n }, []);\n\n const onUploadFile = useCallback(async (file: File) => {\n let link = path ? `${path}${file.name}` : URL.createObjectURL(file);\n\n setFile([\n {\n uid: '0',\n name: file.name,\n status: 'uploading',\n url: link,\n thumbUrl: link,\n },\n ]);\n\n try {\n if (onUpload) {\n link = await onUpload(file);\n }\n\n setFile([\n {\n uid: '0',\n name: file.name,\n status: 'success',\n url: link,\n thumbUrl: link,\n },\n ]);\n } catch (e) {\n setFile([\n {\n uid: '0',\n name: file.name,\n status: 'error',\n url: link,\n thumbUrl: link,\n },\n ]);\n }\n\n return file.name;\n }, []);\n\n return (\n <AntdUpload.Dragger\n {...props}\n showUploadList={{ showRemoveIcon: false }}\n maxCount={1}\n className={styles.upload}\n action={onUploadFile}\n customRequest={() => {}}\n onChange={_onChange}\n fileList={file}\n listType=\"picture\"\n accept=\"image/png, image/jpeg\"\n >\n <Text bold>Выберите файл или перетащите сюда</Text>\n </AntdUpload.Dragger>\n );\n};\n","export const appleDetect = () => {\n try {\n return [\n 'iPad Simulator',\n 'iPhone Simulator',\n 'iPod Simulator',\n 'iPad',\n 'iPhone',\n 'iPod'\n ].includes(navigator.platform)\n // iPad on iOS 13 detection\n || (navigator.userAgent.includes(\"Mac\") && \"ontouchend\" in document)\n } catch (e) {\n return false;\n }\n}\n","const locale = 'ru-RU';\nconst units: { [key: string]: Intl.DateTimeFormatOptions } = {\n YYYY: {\n year: 'numeric',\n },\n YY: {\n year: '2-digit',\n },\n M: {\n month: 'numeric',\n },\n MM: {\n month: '2-digit',\n },\n MMM: {\n month: 'short',\n },\n MMMM: {\n month: 'long',\n },\n MMMMM: {\n month: 'long',\n },\n D: {\n day: 'numeric',\n },\n DD: {\n day: '2-digit',\n },\n d: {\n weekday: 'short',\n },\n dd: {\n weekday: 'long',\n },\n hh: {\n hour: '2-digit',\n },\n mm: {\n minute: '2-digit',\n },\n ss: {\n second: '2-digit',\n },\n};\n\ninterface IDateFormatOptions {\n plural?: boolean;\n utc?: boolean;\n}\n\nexport const getDate = (value: string = '') => {\n return new Date(value.replaceAll('_', 'Ё').split('.').reverse().join('/'));\n}\n\nexport const dateFormat = (value: any, format: string, { plural, utc }: IDateFormatOptions = { utc: true, plural: true }) => {\n let _value = new Date(value);\n\n if ((!value && value !== 0) || _value.getTime() !== _value.getTime()) {\n return null;\n }\n\n if (utc) {\n const userTimezoneOffset = _value.getTimezoneOffset() * 60000;\n _value = new Date(_value.getTime() + userTimezoneOffset);\n }\n\n const dateUnits = [];\n const dateItems = format.split(/\\, | \\- | |:|\\-|\\.|_/);\n const delimeters = format.split(/[DMYdhms]/).filter(Boolean);\n let stringDate = '';\n\n dateItems.forEach((item) => {\n let unit: string;\n\n if (/hh|mm|ss/.test(item)) {\n unit = _value.toLocaleTimeString(locale, units[item]);\n if (unit.length === 1) {\n unit = `0${unit}`;\n }\n } else if (plural && item === 'MMMM') {\n const options = Object.assign({ day: 'numeric' }, units[item]);\n unit = _value.toLocaleDateString(locale, options).split(' ')[1];\n } else if (item === 'MMM') {\n unit = _value.toLocaleDateString(locale, units[item]);\n unit = unit.slice(0, 3);\n } else if (item === 'MMMMM') {\n const options = Object.assign({ day: 'numeric' }, units[item]);\n unit = _value.toLocaleDateString(locale, options).split(' ')[1].toUpperCase();\n } else if (item === 'd') {\n unit = _value.toLocaleString(locale, units[item]);\n unit = unit.replace(/^./, (c) => c.toUpperCase());\n } else {\n unit = _value.toLocaleString(locale, units[item]);\n }\n\n // if (index === 0) {\n // unit = unit.toCapitalize();\n // }\n\n dateUnits.push(unit);\n });\n\n dateUnits.forEach((item, i) => {\n stringDate += item + (delimeters[i] ? delimeters[i] : '');\n });\n\n return stringDate;\n};\n","export const dateWithoutTimezone = (date: Date) => {\n return new Date(date.getTime() - date.getTimezoneOffset() * 60000)\n}\n\nexport const dateWithTimezone = (date: Date) => {\n return new Date(date.getTime() + date.getTimezoneOffset() * 60000)\n}\n","export const pluralize = (val: number, plurals: string[]): string => {\n if (val % 10 === 0 || (val % 10 > 4 && val % 10 < 10) || (val % 100 > 4 && val % 100 < 20)) {\n return plurals[2];\n }\n\n if (val % 10 > 1 && val % 10 < 5) {\n return plurals[1];\n }\n\n if (val % 10 === 1) {\n return plurals[0];\n }\n\n return '';\n};\n","export const priceFormat = (value: number | string) => {\n const price = Intl.NumberFormat('ru-RU', {\n currency: 'RUB',\n style: 'currency',\n minimumFractionDigits: 0,\n }).formatToParts(Math.ceil((+value || 0) / 100));\n\n const currencySign = price.find((cur) => cur.type === 'currency').value;\n\n return (\n price\n .map(({ type, value }) => {\n switch (type) {\n case 'currency':\n return null;\n default:\n return value;\n }\n })\n .filter(Boolean)\n .slice(0, -1)\n .reduce((val, part) => val + part, '') +\n ' ' +\n currencySign\n );\n};\n","const PREPOSITIONS = [\n 'в',\n 'во',\n 'без',\n 'до',\n 'из',\n 'к',\n 'ко',\n 'на',\n 'по',\n 'о',\n 'от',\n 'при',\n 'с',\n 'со',\n 'у',\n 'не',\n 'за',\n 'над',\n 'для',\n 'об',\n 'под',\n 'про',\n 'и',\n 'а',\n 'но',\n 'да',\n 'или',\n 'ли',\n 'бы',\n 'то',\n 'что',\n 'как',\n 'я',\n 'он',\n 'мы',\n 'они',\n 'ни',\n 'же',\n 'вы',\n 'им',\n '-',\n];\n\nconst ESCAPE = '&nbsp;';\nconst DASH = '&mdash;';\n\nconst replacement = (str) => str.slice(0, -1) + ESCAPE;\n\nconst decorate = (value: string) => {\n const regex = new RegExp(\n PREPOSITIONS.map((x) => {\n if (x === '-') {\n x = DASH;\n }\n return ' ' + x + ' ';\n }).join('|'),\n 'gi',\n );\n const formattedText = value.replace(regex, replacement);\n return formattedText;\n};\n\nexport const textSanitize = (value: string): string => {\n if (!value) {\n return value;\n }\n return decorate(value);\n};\n","const UNITS = [\n {\n label: 'ч',\n value: 60 * 60 * 1000,\n },\n {\n label: 'мин',\n value: 60 * 1000,\n },\n];\n\nexport const timeLeftMinutes = (time: number) => {\n return timeLeft(time * 1000 * 60);\n};\n\nexport const timeLeft = (time: number) => {\n let str = '';\n\n UNITS.forEach((unit) => {\n str += `${Math.floor(time / unit.value)} ${unit.label} `;\n time = time - Math.floor(time / unit.value) * unit.value;\n });\n\n return str;\n};\n","export { AutoComplete } from './components/auto-complete';\nexport { Breadcrumbs } from './components/breadcrumbs';\nexport { Button } from './components/button';\nexport { Checkbox } from './components/checkbox';\nexport { Counter } from './components/counter';\nexport { DatePicker } from './components/date-picker';\nexport { Divider } from './components/divider';\nexport { Dropdown } from './components/dropdown';\nexport { Form } from './components/form';\nexport { FormControl } from './components/form-control';\nexport { Heading } from './components/heading';\nexport { Icon } from './components/icon';\nexport { Input } from './components/input';\nexport { Link } from './components/link';\nexport { Loader } from './components/loader';\nexport { LoaderLine } from './components/loader-line';\nexport { MediaProvider, useMedia, withMedia, Media } from './components/media';\nexport type { IMediaMatches } from './components/media';\n\nexport { Menu } from './components/menu';\nexport { Modal, ModalProvider, useModal } from './components/modal';\nexport type { PropsWithModal } from './components/modal';\n\nexport { Radio } from './components/radio';\nexport { RangePicker } from './components/range-picker';\nexport { Select } from './components/select';\nexport { Selector } from './components/selector';\nexport { Skeleton } from './components/skeleton';\nexport { Slider } from './components/slider';\nexport { Spoiler } from './components/spoiler';\nexport { StackedInput } from './components/stacked-input';\nexport { Switch } from './components/switch';\nexport { TagBox } from './components/tag-box';\nexport { TagButton, TagButtonGroup } from './components/tag-button';\nexport { Text } from './components/text';\nexport { TextArea } from './components/text-area';\nexport { TextSpoiler } from './components/text-spoiler';\nexport { Tooltip } from './components/tooltip';\nexport { Upload } from './components/upload';\nexport * from './components/utils';\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://dt-shared-front/webpack/universalModuleDefinition","webpack://dt-shared-front/webpack/bootstrap","webpack://dt-shared-front/external \"react\"","webpack://dt-shared-front/external \"classnames\"","webpack://dt-shared-front/external \"tslib\"","webpack://dt-shared-front/external \"antd\"","webpack://dt-shared-front/./src/components/input/input.module.scss?e697","webpack://dt-shared-front/./src/components/text-area/text-area.module.scss?5343","webpack://dt-shared-front/./src/components/slider/slider.module.scss?8ab2","webpack://dt-shared-front/./src/components/button/button.module.scss?aeda","webpack://dt-shared-front/./src/components/link/link.module.scss?cc09","webpack://dt-shared-front/./src/components/text/text.module.scss?0257","webpack://dt-shared-front/./src/components/heading/heading.module.scss?0a5e","webpack://dt-shared-front/external \"formik\"","webpack://dt-shared-front/./src/components/tag-button/tag-button.module.scss?b7f8","webpack://dt-shared-front/external \"antd/lib/date-picker/locale/ru_RU\"","webpack://dt-shared-front/./src/components/icon/icon.module.scss?8f11","webpack://dt-shared-front/./src/components/loader/loader.module.scss?7566","webpack://dt-shared-front/./src/components/counter/counter.module.scss?3f07","webpack://dt-shared-front/./src/components/loader-line/loader-line.module.scss?ae46","webpack://dt-shared-front/external \"swiper\"","webpack://dt-shared-front/external \"antd/lib/date-picker/generatePicker\"","webpack://dt-shared-front/external \"rc-picker/lib/generate/dateFns\"","webpack://dt-shared-front/external \"lodash.debounce\"","webpack://dt-shared-front/./src/components/auto-complete/auto-complete.module.scss?04c4","webpack://dt-shared-front/./src/components/checkbox/checkbox.module.scss?92a4","webpack://dt-shared-front/./src/components/select/select.module.scss?5e45","webpack://dt-shared-front/./src/components/spoiler/spoiler.module.scss?1d68","webpack://dt-shared-front/./src/components/stacked-input/stacked-input.module.scss?3e48","webpack://dt-shared-front/./src/components/tag-box/tag-box.module.scss?b3cb","webpack://dt-shared-front/./src/components/tooltip/tooltip.module.scss?8ed1","webpack://dt-shared-front/external \"react-media\"","webpack://dt-shared-front/./src/components/breadcrumbs/breadcrumbs.module.scss?fc09","webpack://dt-shared-front/./src/components/divider/divider.module.scss?9fcb","webpack://dt-shared-front/./src/components/form-control/form-control.module.scss?7b4e","webpack://dt-shared-front/external \"swiper/react\"","webpack://dt-shared-front/./src/components/switch/switch.module.scss?59ab","webpack://dt-shared-front/./src/components/text-spoiler/text-spoiler.module.scss?71f3","webpack://dt-shared-front/external \"lodash\"","webpack://dt-shared-front/external \"inputmask\"","webpack://dt-shared-front/./src/components/dropdown/dropdown.module.scss?db17","webpack://dt-shared-front/./src/components/modal/modal.module.scss?6dbd","webpack://dt-shared-front/external \"date-fns\"","webpack://dt-shared-front/external \"react-loading-skeleton\"","webpack://dt-shared-front/external \"react-dom\"","webpack://dt-shared-front/./src/components/upload/upload.module.scss","webpack://dt-shared-front/./src/styles/main.scss?e39e","webpack://dt-shared-front/./src/components/icon/icon.tsx","webpack://dt-shared-front/./src/components/icon/icons/clear.svg","webpack://dt-shared-front/./src/components/icon/icons/select-arrow.svg","webpack://dt-shared-front/./src/components/icon/icons/button-loader.svg","webpack://dt-shared-front/./src/components/auto-complete/auto-complete.tsx","webpack://dt-shared-front/./src/components/button/button.tsx","webpack://dt-shared-front/./src/components/media/media.tsx","webpack://dt-shared-front/./src/components/icon/icons/breadcrubms-arrow.svg","webpack://dt-shared-front/./src/components/text/text.tsx","webpack://dt-shared-front/./src/components/link/link.tsx","webpack://dt-shared-front/./src/components/icon/icons/counter-minus.svg","webpack://dt-shared-front/./src/components/breadcrumbs/breadcrumbs.tsx","webpack://dt-shared-front/./src/components/checkbox/checkbox.tsx","webpack://dt-shared-front/./src/components/icon/icons/counter-plus.svg","webpack://dt-shared-front/./src/components/icon/icons/date-picker.svg","webpack://dt-shared-front/./src/components/counter/counter.tsx","webpack://dt-shared-front/./src/components/icon/icons/input-search.svg","webpack://dt-shared-front/./src/components/icon/icons/input-loader.svg","webpack://dt-shared-front/./src/components/input/input.tsx","webpack://dt-shared-front/./src/components/date-picker/date-picker.tsx","webpack://dt-shared-front/./src/components/divider/divider.tsx","webpack://dt-shared-front/./src/components/dropdown/dropdown.tsx","webpack://dt-shared-front/./src/components/form/form-focus-error.tsx","webpack://dt-shared-front/./src/components/form/form.tsx","webpack://dt-shared-front/./src/components/form-control/form-control.tsx","webpack://dt-shared-front/./src/components/heading/heading.tsx","webpack://dt-shared-front/./src/components/icon/icons/loader.svg","webpack://dt-shared-front/./src/components/icon/icons/modal-close.svg","webpack://dt-shared-front/./src/components/loader/loader.tsx","webpack://dt-shared-front/./src/components/loader-line/loader-line.tsx","webpack://dt-shared-front/./src/components/menu/menu.tsx","webpack://dt-shared-front/./src/components/modal/modal.tsx","webpack://dt-shared-front/./src/components/modal/modal.provider.tsx","webpack://dt-shared-front/./src/components/radio/radio.tsx","webpack://dt-shared-front/./src/components/range-picker/range-picker.tsx","webpack://dt-shared-front/./src/components/select/select.tsx","webpack://dt-shared-front/./src/components/selector/selector.tsx","webpack://dt-shared-front/./src/components/icon/icons/arrow-next.svg","webpack://dt-shared-front/./src/components/skeleton/skeleton.tsx","webpack://dt-shared-front/./src/components/icon/icons/arrow-prev.svg","webpack://dt-shared-front/./src/components/slider/slider.tsx","webpack://dt-shared-front/./src/components/icon/icons/spoiler-arrow.svg","webpack://dt-shared-front/./src/components/icon/icons/spoiler-arrow-active.svg","webpack://dt-shared-front/./src/components/spoiler/spoiler.tsx","webpack://dt-shared-front/./src/components/stacked-input/stacked-input.tsx","webpack://dt-shared-front/./src/components/switch/switch.tsx","webpack://dt-shared-front/./src/components/tag-box/tag-box.tsx","webpack://dt-shared-front/./src/components/tag-button/tag-button.tsx","webpack://dt-shared-front/./src/components/tag-button/tag-buttton-group.tsx","webpack://dt-shared-front/./src/components/utils/combine-ref.ts","webpack://dt-shared-front/./src/components/text-area/text-area.tsx","webpack://dt-shared-front/./src/components/tooltip/tooltip.utils.tsx","webpack://dt-shared-front/./src/components/text-spoiler/text-spoiler.tsx","webpack://dt-shared-front/./src/components/tooltip/tooltip.tsx","webpack://dt-shared-front/./src/components/upload/upload.tsx","webpack://dt-shared-front/./src/components/utils/apple-detect.ts","webpack://dt-shared-front/./src/components/utils/date-format.ts","webpack://dt-shared-front/./src/components/utils/date.ts","webpack://dt-shared-front/./src/components/utils/pluralize.ts","webpack://dt-shared-front/./src/components/utils/price-format.ts","webpack://dt-shared-front/./src/components/utils/text-sanitize.ts","webpack://dt-shared-front/./src/components/utils/time-left.ts","webpack://dt-shared-front/./src/index.ts"],"names":["root","factory","exports","module","define","amd","this","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","require","EIconSize","EIconVariant","_path","IconSvg","active","size","medium","variant","className","onClick","props","classNames","icon","clickable","_extends","assign","target","arguments","length","source","apply","width","height","viewBox","fill","xmlns","_path2","_defs","formatItemToOption","item","valueKey","labelKey","labels","includes","label","data","AutoComplete","onServerSearch","debounceTimeout","labelPlaceholder","onRenderOption","popupClassName","fetching","setFetching","serverOptions","setServerOptions","searchValue","setSearchValue","fetchRef","options","_options","Array","isArray","values","map","option","_onRenderOptions","hasLabel","optionText","onChange","_option","res","find","debounceFetcher","current","fetchId","then","newOptions","onSelect","notFoundContent","placeholder","onSearch","val","backfill","suffixIcon","autoComplete","error","stacked","clearIcon","EButtonSize","EButtonVariant","EButtonIconPosition","attributeType","attributeName","type","from","to","dur","repeatCount","id","x1","y1","x2","y2","gradientUnits","stopColor","offset","stopOpacity","Button","iconPosition","right","Icon","loading","disabled","children","button","withIcon","loaderClassNames","loader","iconClassNames","icon__only","_onClick","e","style","MEDIA_MATCHES","mobile","tablet","desktop","Media","renderDesktop","renderMobile","renderTablet","render","mounted","setMounted","defaultRender","matches","queries","MediaContext","MediaProvider","Provider","withMedia","Component","useMedia","Error","ETextSize","fillRule","clipRule","ELinkVariant","ELinkType","ELinkSize","Text","bold","addition","success","inverse","attention","through","tag","TextTag","text","textAddition","textBold","textSuccess","textAttention","textError","textThrough","textInverse","Link","link","href","dashed","rel","mainLink","linkBold","Breadcrumbs","paths","onReplace","media","onBack","reverse","path","isBack","breadcrumbs","index","breadcrumbsLink","title","isCurrent","UNIQ_COUNT","Checkbox","_value","_setValue","_onChange","currentTarget","checked","checkboxContainer","checkbox","htmlFor","Counter","setValue","count","newCount","counter","undefined","min","max","EInputVariant","EInputSize","EInputBorder","Input","ref","onFocus","onBlur","onClear","onPointerUp","required","showClear","outlined","border","normal","adaptive","debounceTime","beginSearch","NaN","mask","autofocus","_loading","_setLoading","_mask","_setMask","innerRef","setTimeout","focus","remove","inputMask","greedy","dispatchEvent","Event","bubbles","input","invalid","inputClassNames","clearClassNames","clear","labelClassNames","_onSearchDebounce","callback","prev","_onSearch","_onClear","_onKeyPress","onKeyPress","lang","locale","AntDatePicker","DatePicker","format","onRenderInput","_","showToday","inputRender","Divider","bordered","divider","Dropdown","dropdownRender","originNode","dropdown","FocusError","errors","isSubmitting","isValidating","keys","selector","errorElement","formRef","querySelector","Form","onChangeBlur","form","dirty","isValid","validateForm","onSubmit","handleSubmit","FormControl","component","field","meta","helpers","ctx","validationSchema","schemaDescription","describe","accessor","split","join","fields","tests","some","test","isRequiredField","touched","setError","args","setTouched","EHeadingLevel","Heading","level","h1","warning","centerText","HeadingTag","heading","textWarning","center","Loader","absolute","fixed","LoaderLine","loaderLine","bar","Menu","Modal","footer","sidebar","closable","open","setOpen","setData","_width","_setWidth","_title","_setTitle","_footer","_setFooter","_closable","_setClosable","full","_full","_setFull","footerFixed","_footerFixed","_setFooterFixed","handleCancel","handleOpen","close","setTitle","setFooter","setClosable","setWidth","setFooterFixed","setFull","maskClosable","destroyOnClose","afterClose","closeIcon","onCancel","maskTransitionName","transitionName","modal","modalContext","ModalProvider","modals","setModals","initialProps","Date","getTime","concat","useModal","Radio","position","nativeEvent","Group","RangePicker","disabledDate","isFromToday","pickerRef","Select","onServerSearchGroup","optionsGroup","setOptionsGroup","isEqual","group","Option","_onRenderGroup","OptGroup","onDropdownVisibleChange","_optionsGroup","select","Selector","Skeleton","filter","cx","cy","transform","x","y","filterUnits","colorInterpolationFilters","floodOpacity","result","stdDeviation","in2","use","Slider","items","slidesPerView","renderItem","viewItem","loop","asyncReady","showNavigation","navPosition","spaceBetween","autoplay","freeMode","showCounter","centeredSlides","classNamePrev","classNameNext","overflow","navigationPrevRef","navigationNextRef","setIndex","ready","setReady","slider","sliderAutoLoop","onSlideItem","indexItem","findItem","sliderContainer","buttonSlider","speed","preloadImages","loopedSlides","onSlideChange","sw","realIndex","delay","disableOnInteraction","navigation","nextEl","prevEl","onImagesReady","swiper","slideTo","onBeforeInit","params","lazy","checkInView","loadPrevNext","swiperSlide","swiperSlideAuto","sliderCounter","Spoiler","initialValue","opened","setOpened","spoiler","arrow","StackedInput","setKey","stacked_input","stacked_input__select","dropdownMatchSelectWidth","stacked_input__input","Switch","TagBox","v","maxTagCount","removeIcon","menuItemSelectedIcon","ETagButtonSize","ETagButtonVariant","TagButton","selected","TagButtonGroup","tagButtonGroup","onRenderLabel","useCombinedRefs","targetRef","refs","forEach","ETextAreaVariant","ETextAreaSize","ETextAreaBorder","observe","element","event","handler","addEventListener","deobserve","removeEventListener","TooltipPosition","TextArea","autoFocus","combineRef","resize","scrollHeight","delayedResize","window","init","textarea","textarea__disabled","TextSpoiler","isOpen","textSpoiler","openText","large","action","getScrollTopParent","clientHeight","parentElement","Tooltip","placement","refTooltip","refArrow","stylesTooltip","setStylesTooltip","stylesArrow","setStylesArrow","scrollElement","recalcPosition","elem","targetElement","child","getAttribute","slice","tooltipElement","getBoundingClientRect","top","left","tooltipWidth","tooltipHeight","leftPosition","bottom","offsetWidth","document","body","opacity","recalcStyles","tooltipProperties","recalcArrowStyles","onTouchStart","stopPropagation","onClose","el","onOpen","onOpenChange","tooltip","onMouseOver","onMouseLeave","Upload","onUpload","renderName","file","setFile","uid","status","url","thumbUrl","info","URL","createObjectURL","originFileObj","onUploadFile","Dragger","showUploadList","showRemoveIcon","maxCount","upload","customRequest","fileList","listType","accept","appleDetect","navigator","platform","userAgent","units","YYYY","year","YY","M","month","MM","MMM","MMMM","MMMMM","D","day","DD","weekday","dd","hh","hour","mm","minute","ss","second","getDate","replaceAll","dateFormat","utc","plural","userTimezoneOffset","getTimezoneOffset","dateUnits","dateItems","delimeters","Boolean","stringDate","unit","toLocaleTimeString","toLocaleDateString","toUpperCase","toLocaleString","replace","push","dateWithoutTimezone","date","dateWithTimezone","pluralize","plurals","priceFormat","price","Intl","NumberFormat","currency","minimumFractionDigits","formatToParts","Math","ceil","currencySign","cur","reduce","part","PREPOSITIONS","replacement","str","textSanitize","regex","RegExp","decorate","UNITS","timeLeftMinutes","time","timeLeft","floor"],"mappings":"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","file":"index.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"dt-shared-front\"] = factory();\n\telse\n\t\troot[\"dt-shared-front\"] = factory();\n})(this, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 44);\n","module.exports = require(\"react\");","module.exports = require(\"classnames\");","module.exports = require(\"tslib\");","module.exports = require(\"antd\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"input\":\"shared__input-module__input--5GrwX_1701198458128\",\"input__medium\":\"shared__input-module__input__medium--g-8te_1701198458128\",\"label\":\"shared__input-module__label--tNO2a_1701198458128\",\"input__action_medium\":\"shared__input-module__input__action_medium--hkQ1t_1701198458128\",\"input__actions_medium\":\"shared__input-module__input__actions_medium---YV3O_1701198458128\",\"input__pure\":\"shared__input-module__input__pure--NNC8N_1701198458128\",\"disabled\":\"shared__input-module__disabled--ABDAb_1701198458128\",\"invalid\":\"shared__input-module__invalid--e--FF_1701198458128\",\"input__outlined\":\"shared__input-module__input__outlined--p-xCA_1701198458128\",\"clear\":\"shared__input-module__clear--OvXQO_1701198458128\",\"clear__large\":\"shared__input-module__clear__large--sWuYu_1701198458128\",\"clear__medium\":\"shared__input-module__clear__medium--09aiH_1701198458128\",\"clear__action_medium\":\"shared__input-module__clear__action_medium--zfylI_1701198458128\",\"clear__outlined\":\"shared__input-module__clear__outlined--iICxm_1701198458128\",\"icon\":\"shared__input-module__icon--zr4sW_1701198458128\",\"icon__large\":\"shared__input-module__icon__large--89dxq_1701198458128\",\"icon__medium\":\"shared__input-module__icon__medium--GDtvJ_1701198458128\",\"icon__outlined\":\"shared__input-module__icon__outlined--dZgJq_1701198458128\",\"loader\":\"shared__input-module__loader--QYYkV_1701198458128\",\"loader__large\":\"shared__input-module__loader__large--Y9WB3_1701198458128\",\"loader__medium\":\"shared__input-module__loader__medium--QKgq8_1701198458128\",\"loader__outlined\":\"shared__input-module__loader__outlined--rHN8w_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"textarea\":\"shared__text-area-module__textarea--BYKqV_1701198458128\",\"textarea__small\":\"shared__text-area-module__textarea__small--vpKis_1701198458128\",\"textarea__medium\":\"shared__text-area-module__textarea__medium--YP0qD_1701198458128\",\"textarea__large\":\"shared__text-area-module__textarea__large--qWZJ2_1701198458128\",\"textarea__large_adaptive\":\"shared__text-area-module__textarea__large_adaptive--UFOvf_1701198458128\",\"textarea__action_medium\":\"shared__text-area-module__textarea__action_medium--xPwcQ_1701198458128\",\"textarea__action_large\":\"shared__text-area-module__textarea__action_large--6pU6m_1701198458128\",\"textarea__actions_medium\":\"shared__text-area-module__textarea__actions_medium--xk3HL_1701198458128\",\"textarea__actions_large\":\"shared__text-area-module__textarea__actions_large--QPCon_1701198458128\",\"textarea__border_circle\":\"shared__text-area-module__textarea__border_circle--QwRke_1701198458128\",\"textarea__outlined\":\"shared__text-area-module__textarea__outlined--ip5t1_1701198458128\",\"invalid\":\"shared__text-area-module__invalid--HHkEP_1701198458128\",\"textarea__filled\":\"shared__text-area-module__textarea__filled--khZXb_1701198458128\",\"clear\":\"shared__text-area-module__clear--cniAi_1701198458128\",\"clear__small\":\"shared__text-area-module__clear__small--kWg6N_1701198458128\",\"clear__medium\":\"shared__text-area-module__clear__medium--pN-Zj_1701198458128\",\"clear__large\":\"shared__text-area-module__clear__large---rhZv_1701198458128\",\"clear__action_small\":\"shared__text-area-module__clear__action_small--y2Mh9_1701198458128\",\"clear__action_medium\":\"shared__text-area-module__clear__action_medium--VB44P_1701198458128\",\"clear__action_large\":\"shared__text-area-module__clear__action_large--gD65G_1701198458128\",\"icon\":\"shared__text-area-module__icon--HqPRa_1701198458128\",\"icon__small\":\"shared__text-area-module__icon__small--yOGgx_1701198458128\",\"icon__medium\":\"shared__text-area-module__icon__medium--Lap9Z_1701198458128\",\"icon__large\":\"shared__text-area-module__icon__large--Bpk53_1701198458128\",\"loader\":\"shared__text-area-module__loader--zfGHC_1701198458128\",\"loader__large\":\"shared__text-area-module__loader__large--h-OCh_1701198458128\",\"loader__filled\":\"shared__text-area-module__loader__filled--zQ1yA_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"sliderContainer\":\"shared__slider-module__sliderContainer--KGFdN_1701198458128\",\"swiperSlide\":\"shared__slider-module__swiperSlide--es2Vl_1701198458128\",\"swiperSlideAuto\":\"shared__slider-module__swiperSlideAuto--Cwk8-_1701198458128\",\"sliderAutoLoop\":\"shared__slider-module__sliderAutoLoop--0OphC_1701198458128\",\"ready\":\"shared__slider-module__ready--H+y-p_1701198458128\",\"slider\":\"shared__slider-module__slider--UBNwU_1701198458128\",\"swiper-pagination-bullets\":\"shared__slider-module__swiper-pagination-bullets--PckKH_1701198458128\",\"swiperPaginationHidden\":\"shared__slider-module__swiperPaginationHidden--k4CIT_1701198458128\",\"buttonSlider\":\"shared__slider-module__buttonSlider---MRF3_1701198458128\",\"buttonSlider__hidden\":\"shared__slider-module__buttonSlider__hidden--BgKX-_1701198458128\",\"buttonSlider__prev\":\"shared__slider-module__buttonSlider__prev--X4kyB_1701198458128\",\"buttonSlider__prev_inset\":\"shared__slider-module__buttonSlider__prev_inset--3192S_1701198458128\",\"buttonSlider__next\":\"shared__slider-module__buttonSlider__next--JognR_1701198458128\",\"buttonSlider__next_inset\":\"shared__slider-module__buttonSlider__next_inset--HcKU3_1701198458128\",\"sliderCounter\":\"shared__slider-module__sliderCounter--ynG2f_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"button\":\"shared__button-module__button--X-qXA_1701198458128\",\"button__smallS\":\"shared__button-module__button__smallS--eulj7_1701198458128\",\"button__small\":\"shared__button-module__button__small--kA9VI_1701198458128\",\"withIcon\":\"shared__button-module__withIcon--J7ifR_1701198458128\",\"button__medium\":\"shared__button-module__button__medium--E71L1_1701198458128\",\"button__large\":\"shared__button-module__button__large--PG1dR_1701198458128\",\"button__default\":\"shared__button-module__button__default--mYOHn_1701198458128\",\"button__secondary\":\"shared__button-module__button__secondary--bPOB9_1701198458128\",\"button__icon_left\":\"shared__button-module__button__icon_left--EzgVg_1701198458128\",\"button__icon_right\":\"shared__button-module__button__icon_right--uPFlS_1701198458128\",\"loading\":\"shared__button-module__loading--IZ3gt_1701198458128\",\"icon\":\"shared__button-module__icon--Gso9o_1701198458128\",\"icon__smallS\":\"shared__button-module__icon__smallS--BQwBb_1701198458128\",\"icon__small\":\"shared__button-module__icon__small--SgRrC_1701198458128\",\"icon__medium\":\"shared__button-module__icon__medium--3L-IQ_1701198458128\",\"icon__large\":\"shared__button-module__icon__large--WSggm_1701198458128\",\"icon__default\":\"shared__button-module__icon__default--MzXx8_1701198458128\",\"icon__secondary\":\"shared__button-module__icon__secondary--n0RQn_1701198458128\",\"icon__only\":\"shared__button-module__icon__only--fpWXx_1701198458128\",\"loader\":\"shared__button-module__loader--v14UE_1701198458128\",\"loader__medium\":\"shared__button-module__loader__medium--7pr9v_1701198458128\",\"loader__large\":\"shared__button-module__loader__large--S4tzp_1701198458128\",\"loader__default\":\"shared__button-module__loader__default--5X5UT_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"link\":\"shared__link-module__link--NcxZW_1701198458128\",\"link__link\":\"shared__link-module__link__link--gUwQW_1701198458128\",\"link__action\":\"shared__link-module__link__action--USwiE_1701198458128\",\"link__href\":\"shared__link-module__link__href--uTZ+A_1701198458128\",\"addition\":\"shared__link-module__addition--3xkZd_1701198458128\",\"link__small\":\"shared__link-module__link__small--alNG-_1701198458128\",\"link__medium\":\"shared__link-module__link__medium--LJlDF_1701198458128\",\"link__large\":\"shared__link-module__link__large--2gcWq_1701198458128\",\"icon\":\"shared__link-module__icon--DUvf4_1701198458128\",\"icon__small\":\"shared__link-module__icon__small--Z11Nw_1701198458128\",\"icon__medium\":\"shared__link-module__icon__medium--rSXi1_1701198458128\",\"icon__large\":\"shared__link-module__icon__large--tIKI0_1701198458128\",\"icon__only\":\"shared__link-module__icon__only--nGgQ8_1701198458128\",\"linkBold\":\"shared__link-module__linkBold--E4KSC_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"text\":\"shared__text-module__text--L3+RG_1701198458128\",\"text__small\":\"shared__text-module__text__small--Rl3X5_1701198458128\",\"text__medium\":\"shared__text-module__text__medium--Znrxu_1701198458128\",\"text__large\":\"shared__text-module__text__large--oRnU3_1701198458128\",\"textAddition\":\"shared__text-module__textAddition--lz-qm_1701198458128\",\"textBold\":\"shared__text-module__textBold--56jgD_1701198458128\",\"textSuccess\":\"shared__text-module__textSuccess--H2yEM_1701198458128\",\"textError\":\"shared__text-module__textError--MvnkN_1701198458128\",\"textAttention\":\"shared__text-module__textAttention--VjWLj_1701198458128\",\"textThrough\":\"shared__text-module__textThrough--is3ha_1701198458128\",\"textInverse\":\"shared__text-module__textInverse--s78Gi_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"heading\":\"shared__heading-module__heading--8sR8x_1701198458128\",\"heading__h1\":\"shared__heading-module__heading__h1--R6zxl_1701198458128\",\"heading__h2\":\"shared__heading-module__heading__h2--R3bM8_1701198458128\",\"heading__h3\":\"shared__heading-module__heading__h3--XTX7i_1701198458128\",\"heading__h4\":\"shared__heading-module__heading__h4--iTCuq_1701198458128\",\"heading__h5\":\"shared__heading-module__heading__h5--WR5IM_1701198458128\",\"textAddition\":\"shared__heading-module__textAddition--AJUlA_1701198458128\",\"textAttention\":\"shared__heading-module__textAttention--t8+tt_1701198458128\",\"textBold\":\"shared__heading-module__textBold--n8fQX_1701198458128\",\"textInverse\":\"shared__heading-module__textInverse--S-jep_1701198458128\",\"textError\":\"shared__heading-module__textError--Bm1mE_1701198458128\",\"textSuccess\":\"shared__heading-module__textSuccess--Q3GD+_1701198458128\",\"textWarning\":\"shared__heading-module__textWarning--f-7yo_1701198458128\",\"centerText\":\"shared__heading-module__centerText--CM0Hq_1701198458128\"};","module.exports = require(\"formik\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"button\":\"shared__tag-button-module__button--Qv07L_1701198458128\",\"button__small\":\"shared__tag-button-module__button__small--VKA08_1701198458128\",\"button__medium\":\"shared__tag-button-module__button__medium--M0TM+_1701198458128\",\"button__large\":\"shared__tag-button-module__button__large--PobFJ_1701198458128\",\"button__default\":\"shared__tag-button-module__button__default--dpNJZ_1701198458128\",\"button__green\":\"shared__tag-button-module__button__green--7uieL_1701198458128\",\"selected\":\"shared__tag-button-module__selected--hP5R8_1701198458128\",\"button__secondary\":\"shared__tag-button-module__button__secondary--KiSTI_1701198458128\",\"button__tab\":\"shared__tag-button-module__button__tab--rVLma_1701198458128\",\"button__tumbler\":\"shared__tag-button-module__button__tumbler---2OQ2_1701198458128\",\"button__icons\":\"shared__tag-button-module__button__icons--rLBj8_1701198458128\",\"loading\":\"shared__tag-button-module__loading--emtZM_1701198458128\",\"icon\":\"shared__tag-button-module__icon--LtczE_1701198458128\",\"icon__small\":\"shared__tag-button-module__icon__small--2sXj9_1701198458128\",\"icon__medium\":\"shared__tag-button-module__icon__medium--WMllo_1701198458128\",\"icon__large\":\"shared__tag-button-module__icon__large--GhXfx_1701198458128\",\"icon__default\":\"shared__tag-button-module__icon__default--GYg6a_1701198458128\",\"shadow\":\"shared__tag-button-module__shadow---SujH_1701198458128\",\"tagButtonGroup\":\"shared__tag-button-module__tagButtonGroup--9aBd8_1701198458128\"};","module.exports = require(\"antd/lib/date-picker/locale/ru_RU\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"icon\":\"shared__icon-module__icon--Gnxeg_1701198458128\",\"icon__small\":\"shared__icon-module__icon__small--QBFuN_1701198458128\",\"icon__medium\":\"shared__icon-module__icon__medium--X-ly8_1701198458128\",\"icon__large\":\"shared__icon-module__icon__large--DzFuI_1701198458128\",\"icon__default\":\"shared__icon-module__icon__default--hQThA_1701198458128\",\"clickable\":\"shared__icon-module__clickable--3yjIa_1701198458128\",\"active\":\"shared__icon-module__active--HQWC5_1701198458128\",\"icon__light\":\"shared__icon-module__icon__light--7x2By_1701198458128\",\"icon__black\":\"shared__icon-module__icon__black--AVPMK_1701198458128\",\"icon__attention\":\"shared__icon-module__icon__attention--HiOeb_1701198458128\",\"icon__revert\":\"shared__icon-module__icon__revert--O4CPt_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"loader\":\"shared__loader-module__loader--ErOFa_1701198458128\",\"absolute\":\"shared__loader-module__absolute--nggvH_1701198458128\",\"fixed\":\"shared__loader-module__fixed--CUw3s_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"counter\":\"shared__counter-module__counter--po6fU_1701198458128\",\"button\":\"shared__counter-module__button--sOvjE_1701198458128\",\"value\":\"shared__counter-module__value--JD2xM_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"loaderLine\":\"shared__loader-line-module__loaderLine--EZc2J_1701198458128\",\"bar\":\"shared__loader-line-module__bar--uH4lA_1701198458128\",\"active\":\"shared__loader-line-module__active--0J8lF_1701198458128\",\"loader-animation\":\"shared__loader-line-module__loader-animation--cSq+I_1701198458128\",\"border\":\"shared__loader-line-module__border--OXwgu_1701198458128\"};","module.exports = require(\"swiper\");","module.exports = require(\"antd/lib/date-picker/generatePicker\");","module.exports = require(\"rc-picker/lib/generate/dateFns\");","module.exports = require(\"lodash.debounce\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"autoComplete\":\"shared__auto-complete-module__autoComplete--E+tq+_1701198458128\",\"hasLabel\":\"shared__auto-complete-module__hasLabel--t+Z8x_1701198458128\",\"disabled\":\"shared__auto-complete-module__disabled--3VMd2_1701198458128\",\"invalid\":\"shared__auto-complete-module__invalid--yHbC5_1701198458128\",\"optionText\":\"shared__auto-complete-module__optionText--saGcQ_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"checkbox\":\"shared__checkbox-module__checkbox--jOEle_1701198458128\",\"error\":\"shared__checkbox-module__error--xRaxv_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"select\":\"shared__select-module__select--cm-a3_1701198458128\",\"hasLabel\":\"shared__select-module__hasLabel--ZRS9W_1701198458128\",\"disabled\":\"shared__select-module__disabled--gfQp-_1701198458128\",\"invalid\":\"shared__select-module__invalid--rXHCJ_1701198458128\",\"optionText\":\"shared__select-module__optionText--7GphM_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"spoiler\":\"shared__spoiler-module__spoiler--siWfv_1701198458128\",\"title\":\"shared__spoiler-module__title--N0ID7_1701198458128\",\"arrow\":\"shared__spoiler-module__arrow--VISBf_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"stacked_input\":\"shared__stacked-input-module__stacked_input--gd2Dh_1701198458128\",\"stacked_input__select\":\"shared__stacked-input-module__stacked_input__select--ewS4D_1701198458128\",\"stacked_input__input\":\"shared__stacked-input-module__stacked_input__input--t1qul_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"select\":\"shared__tag-box-module__select--aZcmW_1701198458128\",\"hasLabel\":\"shared__tag-box-module__hasLabel--OkuEn_1701198458128\",\"disabled\":\"shared__tag-box-module__disabled--8Eb9x_1701198458128\",\"invalid\":\"shared__tag-box-module__invalid--D6cKK_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"tooltip\":\"shared__tooltip-module__tooltip--tS2G-_1701198458128\",\"arrow\":\"shared__tooltip-module__arrow--VbQb7_1701198458128\",\"left\":\"shared__tooltip-module__left--2nmo1_1701198458128\",\"right\":\"shared__tooltip-module__right--JgZSX_1701198458128\",\"top\":\"shared__tooltip-module__top--VsESz_1701198458128\",\"bottom\":\"shared__tooltip-module__bottom--2zx9D_1701198458128\"};","module.exports = require(\"react-media\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"breadcrumbs\":\"shared__breadcrumbs-module__breadcrumbs--LxNAe_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"bordered\":\"shared__divider-module__bordered--8qnHN_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"label\":\"shared__form-control-module__label--0QO0D_1701198458128\",\"error\":\"shared__form-control-module__error--FVB3Z_1701198458128\"};","module.exports = require(\"swiper/react\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"switch\":\"shared__switch-module__switch--EGB08_1701198458128\",\"active\":\"shared__switch-module__active--Mghyc_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"textSpoiler\":\"shared__text-spoiler-module__textSpoiler--xJkwo_1701198458128\",\"openText\":\"shared__text-spoiler-module__openText--osI1V_1701198458128\",\"expander\":\"shared__text-spoiler-module__expander--Y2VRc_1701198458128\",\"active\":\"shared__text-spoiler-module__active--+DkdZ_1701198458128\"};","module.exports = require(\"lodash\");","module.exports = require(\"inputmask\");","// extracted by mini-css-extract-plugin\nmodule.exports = {\"dropdown\":\"shared__dropdown-module__dropdown--fuFze_1701198458128\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"footer\":\"shared__modal-module__footer--wpZLV_1701198458128\"};","module.exports = require(\"date-fns\");","module.exports = require(\"react-loading-skeleton\");","module.exports = require(\"react-dom\");","// extracted by mini-css-extract-plugin\nmodule.exports = {};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"swiper-container\":\"swiper-container\",\"swiper-container-vertical\":\"swiper-container-vertical\",\"swiper-wrapper\":\"swiper-wrapper\",\"swiper-container-android\":\"swiper-container-android\",\"swiper-slide\":\"swiper-slide\",\"swiper-container-multirow\":\"swiper-container-multirow\",\"swiper-container-multirow-column\":\"swiper-container-multirow-column\",\"swiper-container-free-mode\":\"swiper-container-free-mode\",\"swiper-container-pointer-events\":\"swiper-container-pointer-events\",\"swiper-slide-invisible-blank\":\"swiper-slide-invisible-blank\",\"swiper-container-autoheight\":\"swiper-container-autoheight\",\"swiper-container-3d\":\"swiper-container-3d\",\"swiper-slide-shadow-left\":\"swiper-slide-shadow-left\",\"swiper-slide-shadow-right\":\"swiper-slide-shadow-right\",\"swiper-slide-shadow-top\":\"swiper-slide-shadow-top\",\"swiper-slide-shadow-bottom\":\"swiper-slide-shadow-bottom\",\"swiper-cube-shadow\":\"swiper-cube-shadow\",\"swiper-container-css-mode\":\"swiper-container-css-mode\",\"swiper-container-horizontal\":\"swiper-container-horizontal\",\"swiper-button-prev\":\"swiper-button-prev\",\"swiper-button-next\":\"swiper-button-next\",\"swiper-button-disabled\":\"swiper-button-disabled\",\"swiper-container-rtl\":\"swiper-container-rtl\",\"swiper-button-white\":\"swiper-button-white\",\"swiper-button-black\":\"swiper-button-black\",\"swiper-button-lock\":\"swiper-button-lock\",\"ant-collapse-header\":\"ant-collapse-header\",\"ant-collapse-content\":\"ant-collapse-content\",\"ant-collapse-content-box\":\"ant-collapse-content-box\",\"modal-no-padding\":\"modal-no-padding\",\"ant-modal-body\":\"ant-modal-body\",\"ant-modal-content\":\"ant-modal-content\",\"ant-select\":\"ant-select\",\"ant-select-customize-input\":\"ant-select-customize-input\",\"ant-select-selection-search-input\":\"ant-select-selection-search-input\",\"select-stacked\":\"select-stacked\",\"ant-select-arrow\":\"ant-select-arrow\",\"ant-select-clear\":\"ant-select-clear\",\"ant-select-selector\":\"ant-select-selector\",\"ant-select-selection-item\":\"ant-select-selection-item\",\"ant-select-selection-placeholder\":\"ant-select-selection-placeholder\",\"ant-select-selection-search\":\"ant-select-selection-search\",\"input-no-border\":\"input-no-border\",\"ant-select-open\":\"ant-select-open\",\"ant-select-disabled\":\"ant-select-disabled\",\"select-error\":\"select-error\",\"ant-tag-box-customize-input\":\"ant-tag-box-customize-input\",\"ant-select-selection-item-remove\":\"ant-select-selection-item-remove\",\"ant-select-selection-overflow\":\"ant-select-selection-overflow\",\"ant-select-multiple\":\"ant-select-multiple\",\"ant-select-focused\":\"ant-select-focused\",\"ant-select-dropdown\":\"ant-select-dropdown\",\"rc-virtual-list-holder-inner\":\"rc-virtual-list-holder-inner\",\"ant-select-item\":\"ant-select-item\",\"ant-select-item-option\":\"ant-select-item-option\",\"ant-select-item-option-active\":\"ant-select-item-option-active\",\"ant-select-item-option-disabled\":\"ant-select-item-option-disabled\",\"ant-select-item-option-selected\":\"ant-select-item-option-selected\",\"ant-radio-group-customize\":\"ant-radio-group-customize\",\"horizontal\":\"horizontal\",\"vertical\":\"vertical\",\"ant-radio-customize\":\"ant-radio-customize\",\"ant-radio-wrapper\":\"ant-radio-wrapper\",\"ant-radio\":\"ant-radio\",\"ant-radio-disabled\":\"ant-radio-disabled\",\"ant-radio-inner\":\"ant-radio-inner\",\"ant-radio-input\":\"ant-radio-input\",\"ant-radio-checked\":\"ant-radio-checked\",\"ant-picker-dropdown\":\"ant-picker-dropdown\",\"ant-picker-dropdown-range\":\"ant-picker-dropdown-range\",\"ant-picker\":\"ant-picker\",\"ant-picker-borderless\":\"ant-picker-borderless\",\"ant-picker-range-wrapper\":\"ant-picker-range-wrapper\",\"date-picker-error\":\"date-picker-error\",\"ant-picker-disabled\":\"ant-picker-disabled\",\"ant-picker-suffix\":\"ant-picker-suffix\",\"ant-picker-active-bar\":\"ant-picker-active-bar\",\"ant-picker-input\":\"ant-picker-input\",\"ant-picker-focused\":\"ant-picker-focused\",\"ant-picker-clear\":\"ant-picker-clear\",\"ant-picker-panel-container\":\"ant-picker-panel-container\",\"ant-picker-panel\":\"ant-picker-panel\",\"ant-picker-cell\":\"ant-picker-cell\",\"ant-picker-cell-inner\":\"ant-picker-cell-inner\",\"ant-picker-content\":\"ant-picker-content\",\"ant-picker-header\":\"ant-picker-header\",\"ant-picker-footer\":\"ant-picker-footer\",\"ant-picker-header-super-next-btn\":\"ant-picker-header-super-next-btn\",\"ant-picker-header-super-prev-btn\":\"ant-picker-header-super-prev-btn\",\"ant-picker-prev-icon\":\"ant-picker-prev-icon\",\"ant-picker-next-icon\":\"ant-picker-next-icon\",\"ant-picker-date-panel\":\"ant-picker-date-panel\",\"ant-picker-header-view\":\"ant-picker-header-view\",\"ant-picker-month-btn\":\"ant-picker-month-btn\",\"ant-picker-year-btn\":\"ant-picker-year-btn\",\"ant-picker-header-prev-btn\":\"ant-picker-header-prev-btn\",\"ant-picker-header-next-btn\":\"ant-picker-header-next-btn\",\"ant-picker-range\":\"ant-picker-range\",\"ant-picker-cell-in-view\":\"ant-picker-cell-in-view\",\"ant-picker-cell-selected\":\"ant-picker-cell-selected\",\"ant-picker-cell-range-start\":\"ant-picker-cell-range-start\",\"ant-picker-cell-range-end\":\"ant-picker-cell-range-end\",\"ant-picker-cell-range-hover-start\":\"ant-picker-cell-range-hover-start\",\"ant-picker-cell-in-range\":\"ant-picker-cell-in-range\",\"ant-picker-cell-range-hover-end\":\"ant-picker-cell-range-hover-end\",\"ant-picker-cell-range-start-single\":\"ant-picker-cell-range-start-single\",\"ant-picker-cell-range-end-near-hover\":\"ant-picker-cell-range-end-near-hover\",\"ant-picker-cell-range-start-near-hover\":\"ant-picker-cell-range-start-near-hover\",\"ant-picker-cell-range-end-single\":\"ant-picker-cell-range-end-single\",\"ant-picker-cell-range-hover\":\"ant-picker-cell-range-hover\",\"ant-picker-cell-end\":\"ant-picker-cell-end\",\"ant-picker-cell-range-hover-edge-end\":\"ant-picker-cell-range-hover-edge-end\",\"ant-picker-cell-range-hover-edge-end-near-range\":\"ant-picker-cell-range-hover-edge-end-near-range\",\"ant-picker-cell-start\":\"ant-picker-cell-start\",\"ant-picker-cell-range-hover-edge-start\":\"ant-picker-cell-range-hover-edge-start\",\"ant-picker-cell-range-hover-edge-start-near-range\":\"ant-picker-cell-range-hover-edge-start-near-range\",\"ant-picker-panels\":\"ant-picker-panels\",\"ant-picker-footer-extra\":\"ant-picker-footer-extra\",\"ant-tooltip-customize\":\"ant-tooltip-customize\",\"ant-tooltip-inner\":\"ant-tooltip-inner\",\"ant-slider-tooltip\":\"ant-slider-tooltip\",\"ant-tooltip-arrow-content\":\"ant-tooltip-arrow-content\",\"ant-slider\":\"ant-slider\",\"ant-slider-track\":\"ant-slider-track\",\"ant-slider-rail\":\"ant-slider-rail\",\"ant-slider-handle\":\"ant-slider-handle\",\"ant-tooltip-open\":\"ant-tooltip-open\",\"ant-modal-full\":\"ant-modal-full\",\"ant-modal-close\":\"ant-modal-close\",\"ant-modal-sidebar\":\"ant-modal-sidebar\",\"ant-modal-footer-fixed\":\"ant-modal-footer-fixed\",\"ant-modal-footer\":\"ant-modal-footer\",\"ant-modal-header\":\"ant-modal-header\",\"ant-modal-title\":\"ant-modal-title\",\"ant-modal-close-x\":\"ant-modal-close-x\",\"am-modal-wrap\":\"am-modal-wrap\",\"am-modal\":\"am-modal\",\"am-modal-body\":\"am-modal-body\",\"am-modal-content\":\"am-modal-content\",\"am-modal-close\":\"am-modal-close\",\"ant-modal-wrap\":\"ant-modal-wrap\",\"am-modal-header\":\"am-modal-header\",\"am-modal-title\":\"am-modal-title\",\"ant-upload\":\"ant-upload\",\"ant-upload-drag\":\"ant-upload-drag\",\"ant-upload-disabled\":\"ant-upload-disabled\",\"ant-upload-drag-hover\":\"ant-upload-drag-hover\",\"ant-upload-list-item-name\":\"ant-upload-list-item-name\",\"react-loading-skeleton\":\"react-loading-skeleton\",\"ant-dropdown-menu\":\"ant-dropdown-menu\",\"ant-dropdown-menu-item\":\"ant-dropdown-menu-item\",\"ant-dropdown-menu-submenu-title\":\"ant-dropdown-menu-submenu-title\",\"ant-dropdown-menu-item-selected\":\"ant-dropdown-menu-item-selected\",\"ant-dropdown-menu-submenu-title-selected\":\"ant-dropdown-menu-submenu-title-selected\",\"horizontal-scroll\":\"horizontal-scroll\"};","import React from 'react';\n\nimport cn from 'classnames';\nimport { useMemo } from 'react';\nimport { PropsWithChildren } from 'react';\n\nimport styles from './icon.module.scss';\n\nexport enum EIconSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\nexport enum EIconVariant {\n default = 'default',\n black = 'black',\n attention = 'attention',\n revert = 'revert',\n warning = 'warning',\n initial = 'initial',\n light = 'light'\n}\n\ninterface IIconProps {\n size?: keyof typeof EIconSize;\n variant?: keyof typeof EIconVariant;\n active?: boolean;\n icon: any;\n className?: string;\n onClick?: (e: any) => void;\n 'data-tooltip-target'?: boolean\n}\n\nexport const Icon = ({\n icon: IconSvg,\n active,\n size = EIconSize.medium,\n variant = EIconVariant.default,\n className,\n onClick,\n ...props\n}: PropsWithChildren<IIconProps>) => {\n const classNames = useMemo(\n () =>\n cn(className, styles.icon, styles[`icon__${size}`], styles[`icon__${variant}`], {\n [styles.active]: active,\n [styles.clickable]: !!onClick,\n }),\n [size, variant, active, className, onClick],\n );\n\n if (!IconSvg) {\n return null\n }\n\n return <IconSvg {...props} onClick={onClick} className={classNames} />;\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgClear(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 25 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.894 5.394a.857.857 0 011.212 0l5.394 5.393 5.394-5.393a.857.857 0 011.131-.071l.081.071a.857.857 0 010 1.212L13.713 12l5.393 5.394a.858.858 0 01.071 1.132l-.07.08a.857.857 0 01-1.213 0L12.5 13.213l-5.394 5.393a.857.857 0 01-1.131.072l-.081-.072a.857.857 0 010-1.212L11.287 12 5.894 6.606a.857.857 0 01-.071-1.131l.07-.08z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgClear;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSelectArrow(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 28 28\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.65 11.24a1 1 0 10-1.3 1.52l7 6a1 1 0 001.3 0l7-6a1 1 0 00-1.3-1.52L14 16.684 7.65 11.24z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgSelectArrow;","var _path, _path2, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgButtonLoader(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 20 20\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#button-loader_svg__paint0_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#button-loader_svg__paint1_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"button-loader_svg__paint0_linear\",\n x1: 14.5,\n y1: 5.5,\n x2: 16.5,\n y2: 10,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"button-loader_svg__paint1_linear\",\n x1: 10,\n y1: 16,\n x2: 17,\n y2: 9.5,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })))));\n}\n\nexport default SvgButtonLoader;","import React from 'react';\n\nimport { Icon } from \"@shared/icon\";\nimport { AutoComplete as AntdAutoComplete, AutoCompleteProps } from \"antd\";\nimport { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport ClearIcon from '../icon/icons/clear.svg';\nimport SelectArrowIcon from '../icon/icons/select-arrow.svg';\nimport classNames from \"classnames\";\nimport { debounce } from \"lodash\";\nimport styles from './auto-complete.module.scss';\n\nexport interface ISelectOption<T> {\n label: string;\n value: string | number | null | undefined;\n data?: T;\n}\n\nfunction formatItemToOption<T = any>(item: any, valueKey: string = 'value', labelKey: string = 'label', labels?: IAutoCompleteProps<T>['labels']) {\n if (['string', 'number', 'boolean'].includes(typeof item)) {\n return {\n label: labels ? labels[`${item}`] : item,\n value: item,\n data: item,\n } as ISelectOption<T>;\n }\n\n return {\n label: item[labelKey],\n value: item[valueKey],\n data: item,\n } as ISelectOption<T>;\n}\n\ntype IAutoCompleteProps<T> = Omit<AutoCompleteProps, 'options' | 'onChange'> & {\n options?: T[] | T;\n labels?: { [key: string]: string };\n error?: boolean;\n valueKey?: string;\n labelKey?: string;\n labelPlaceholder?: string;\n onServerSearch?: (val: string) => Promise<T[]>;\n onRenderOption?: (item: T) => React.ReactNode;\n onChange?: (option: T, options?: T[]) => void;\n debounceTimeout?: number;\n stacked?: boolean;\n popupClassName?: string;\n icon?: any;\n};\n\nexport function AutoComplete<T>({labels, labelKey, valueKey, onServerSearch, icon, debounceTimeout = 500, labelPlaceholder, onRenderOption, popupClassName, ...props}: IAutoCompleteProps<T>) {\n const [fetching, setFetching] = useState(false);\n const [serverOptions, setServerOptions] = useState<ISelectOption<T>[]>(null);\n const [searchValue, setSearchValue] = useState<string>('')\n const fetchRef = useRef(0);\n\n const options = useMemo(() => {\n let _options = null;\n if (Array.isArray(props.options)) {\n _options = props.options;\n }\n\n if (props.options) {\n _options = Object.values(props.options);\n }\n\n return _options?.map((option) => formatItemToOption(option, valueKey, labelKey, labels)) || null;\n }, [props.options, labels]);\n\n const _onRenderOptions = useCallback(\n (option: ISelectOption<T>) => {\n if (onRenderOption) {\n return {\n label: onRenderOption(option.data),\n value: option.label,\n data: option.data,\n key: option.value\n };\n }\n\n return {\n label: <div className={classNames({ [styles.hasLabel]: labelPlaceholder })}>\n {!!labelPlaceholder && <label>{labelPlaceholder}</label>}\n <div className={styles.optionText}>{option.label}</div>\n </div>,\n value: option.label,\n data: option.data,\n key: option.value\n };\n },\n [onRenderOption, labelPlaceholder]\n );\n\n const _options: any[] = useMemo(() => (serverOptions || options || []).map(_onRenderOptions), [\n onServerSearch,\n options,\n serverOptions,\n ]);\n\n const onChange = useCallback(\n (value: any, _option: any) => {\n setSearchValue(value);\n props.onChange && props.onChange(_option?.data, (serverOptions || options)?.map((i) => i.data));\n },\n [props.onChange, _options, serverOptions, options]\n );\n\n useEffect(() => {\n const res = props.value && _options?.find((option) => option.key === props.value[valueKey]);\n res && setSearchValue(res.value);\n }, [props.value]);\n\n const debounceFetcher = useMemo(() => {\n const loadOptions = (value: string) => {\n fetchRef.current += 1;\n const fetchId = fetchRef.current;\n setServerOptions([]);\n setFetching(true);\n\n onServerSearch && onServerSearch(value).then((newOptions) => {\n if (fetchId !== fetchRef.current) {\n return;\n }\n\n setServerOptions(newOptions?.map((option) => formatItemToOption(option, valueKey, labelKey)));\n setFetching(false);\n });\n };\n\n return debounce(loadOptions, debounceTimeout);\n }, [onServerSearch, debounceTimeout]);\n\n return <AntdAutoComplete\n value={searchValue}\n options={_options}\n onSelect={onChange}\n popupClassName={popupClassName}\n notFoundContent={null}\n placeholder={props.placeholder || labelPlaceholder}\n onSearch={(val) => {\n setSearchValue(val);\n debounceFetcher(val);\n }}\n backfill\n suffixIcon={<Icon icon={icon || SelectArrowIcon} />}\n className={classNames('ant-select-customize-input', props.className, styles.autoComplete, { 'select-error': props.error, 'select-stacked': props.stacked, 'select-loading': fetching })}\n clearIcon={<Icon icon={ClearIcon} />}\n ></AntdAutoComplete>\n}\n","import React, { PropsWithChildren, useMemo, MouseEvent, useCallback } from 'react';\nimport classnames from 'classnames';\nimport Loader from '../icon/icons/button-loader.svg';\n\nimport styles from './button.module.scss';\n\nexport enum EButtonSize {\n smallS = 'smallS',\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\nexport enum EButtonVariant {\n default = 'default',\n secondary = 'secondary',\n}\n\nexport enum EButtonIconPosition {\n left = 'left',\n right = 'right',\n}\n\ninterface IButtonProps {\n variant?: keyof typeof EButtonVariant;\n size?: keyof typeof EButtonSize;\n icon?: any;\n width?: string;\n iconPosition?: keyof typeof EButtonIconPosition;\n loading?: boolean;\n disabled?: boolean;\n className?: string;\n type?: 'button' | 'submit' | 'reset';\n onClick?: (e?: MouseEvent<HTMLButtonElement>) => void;\n}\n\nexport const Button = ({\n variant = EButtonVariant.default,\n size = EButtonSize.medium,\n iconPosition = EButtonIconPosition.right,\n width,\n icon: Icon,\n loading,\n disabled,\n children,\n className,\n onClick,\n type = 'button',\n}: PropsWithChildren<IButtonProps>) => {\n const classNames = useMemo(\n () =>\n classnames(\n styles.button,\n className,\n styles[`button__${variant}`],\n styles[`button__${size}`],\n styles[`button__icon_${iconPosition}`],\n {\n [styles.loading]: loading,\n [styles.withIcon]: Icon,\n }\n ),\n [variant, size, loading, Icon, disabled, className]\n );\n\n const loaderClassNames = useMemo(\n () => classnames(styles.loader, styles[`loader__${variant}`], styles[`loader__${size}`]),\n [variant, size]\n );\n\n const iconClassNames = useMemo(\n () =>\n classnames(styles.icon, styles[`icon__${variant}`], styles[`icon__${size}`], { [styles.icon__only]: !children }),\n [variant, size, children]\n );\n\n const _onClick = useCallback(\n (e?: MouseEvent<HTMLButtonElement>) => {\n if (disabled || loading) return;\n\n onClick && onClick(e);\n },\n [onClick, disabled, loading]\n );\n\n return (\n <button type={type} className={classNames} disabled={disabled} onClick={_onClick} style={{ width }}>\n {children}\n {Icon && <Icon className={iconClassNames} />}\n {loading && <Loader className={loaderClassNames} />}\n </button>\n );\n};\n","import React, {\n ComponentProps,\n createContext,\n PropsWithChildren,\n useCallback,\n useContext,\n useEffect,\n useState,\n} from 'react';\nimport ReactMedia from 'react-media';\n\ntype IMediaRender = () => any;\n\nconst MEDIA_MATCHES = {\n mobile: '(max-width: 767px)',\n tablet: '(max-width: 1023px) and (min-width: 768px)',\n desktop: '(min-width: 1024px)',\n};\n\nexport interface IMediaMatches {\n mobile: boolean;\n tablet: boolean;\n desktop: boolean;\n}\n\ninterface IMediaProps {\n renderMobile?: IMediaRender;\n renderTablet?: IMediaRender;\n renderDesktop?: IMediaRender;\n render?: (matches: IMediaMatches) => React.ReactNode;\n}\n\nexport const Media = ({ renderDesktop, renderMobile, renderTablet, render }: IMediaProps) => {\n const [mounted, setMounted] = useState(false);\n useEffect(() => {\n setMounted(true);\n }, []);\n\n const defaultRender = useCallback(\n (matches) => {\n if (matches.tablet && renderTablet) {\n return renderTablet && renderTablet();\n } else if (matches.mobile && renderMobile) {\n return renderMobile && renderMobile();\n } else if (matches.desktop && renderDesktop) {\n return renderDesktop && renderDesktop();\n }\n\n return null;\n },\n [renderTablet, renderMobile, renderMobile, render],\n );\n\n return <>{mounted && <ReactMedia queries={MEDIA_MATCHES}>{render || defaultRender}</ReactMedia>}</>;\n};\n\ninterface IMediaContext {\n mobile: boolean;\n tablet: boolean;\n desktop: boolean;\n}\n\nconst MediaContext = createContext<IMediaContext | null>(null);\n\nexport const MediaProvider = ({ children }: PropsWithChildren<{}>) => {\n return (\n <ReactMedia queries={MEDIA_MATCHES}>\n {(matches: IMediaMatches) => <MediaContext.Provider value={matches}>{children}</MediaContext.Provider>}\n </ReactMedia>\n );\n};\n\nexport declare type IReactComponent<P = any> =\n | React.ClassicComponentClass<P>\n | React.ComponentClass<P>\n | React.FunctionComponent<P>\n | React.ForwardRefExoticComponent<P>;\nexport function withMedia<T extends IReactComponent>(Component: T): T;\nexport function withMedia<T extends React.FunctionComponent<any>>(Component: T) {\n return (props: ComponentProps<typeof Component>) => (\n <MediaProvider>\n <Component {...props} />\n </MediaProvider>\n );\n}\n\nexport const useMedia = () => {\n const data = useContext(MediaContext);\n if (!data) {\n throw new Error('Не подключен MediaProvider');\n }\n\n return data;\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgBreadcrubmsArrow(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 13 8\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M9.172.464l3.182 3.182a.5.5 0 010 .708L9.172 7.536a.5.5 0 11-.708-.708L10.793 4.5H0v-1h10.793L8.464 1.172a.5.5 0 11.708-.708z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgBreadcrubmsArrow;","import React from 'react';\n\nimport { useMemo } from 'react';\nimport classnames from 'classnames';\n\nimport styles from './text.module.scss';\n\nexport enum ETextSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\ninterface ITextProps {\n size?: keyof typeof ETextSize;\n children?: any;\n bold?: boolean;\n addition?: boolean;\n attention?: boolean;\n success?: boolean;\n error?: boolean;\n className?: string;\n inverse?: boolean;\n style?: any;\n through?: boolean;\n tag?: 'p' | 'span' | 'div' | 'sub' | 'label';\n\n}\n\nexport const Text = ({\n children,\n size = ETextSize.medium,\n bold,\n addition,\n success,\n error,\n inverse,\n attention,\n className,\n style,\n through,\n tag = 'div',\n}: ITextProps) => {\n const TextTag = useMemo(() => tag as keyof JSX.IntrinsicElements, [tag]);\n\n const classNames = useMemo(\n () =>\n classnames(styles.text, className, styles[`text__${size}`], {\n [styles.textAddition]: addition,\n [styles.textBold]: bold,\n [styles.textSuccess]: success,\n [styles.textAttention]: attention,\n [styles.textError]: error,\n [styles.textThrough]: through,\n [styles.textInverse]: inverse,\n }),\n [size, className, addition, bold, success, attention, error, inverse],\n );\n\n\n return <TextTag style={style} className={classNames}>{children}</TextTag>;\n};\n","import React from 'react';\nimport { useMemo } from 'react';\nimport classnames from 'classnames';\n\nimport styles from './link.module.scss';\n\nexport enum ELinkVariant {\n link = 'link',\n href = 'href',\n action = 'action',\n}\n\nexport enum ELinkType {\n default = 'default',\n addition = 'addition',\n success = 'success',\n error = 'error',\n}\n\nexport enum ELinkSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\ninterface ILinkProps {\n size?: keyof typeof ELinkSize;\n icon?: any;\n variant?: keyof typeof ELinkVariant;\n children: any;\n href?: string;\n bold?: boolean;\n type?: keyof typeof ELinkType;\n dashed?: boolean;\n className?: string;\n target?: '_blank';\n onClick?: () => void;\n rel?: string;\n mainLink?: boolean;\n style?: any;\n}\n\nexport const Link = ({\n children,\n target,\n icon: Icon,\n variant = ELinkVariant.link,\n size = ELinkSize.medium,\n href,\n bold,\n className,\n type,\n dashed,\n onClick,\n rel,\n mainLink,\n style,\n}: ILinkProps) => {\n const classNames = useMemo(\n () =>\n classnames(styles.link, className, styles[`link__${variant}`], styles[`link__${size}`], styles[`link__${type}`], {\n [styles.linkBold]: bold,\n [styles.dashed]: dashed,\n }),\n [variant, className, dashed, type]\n );\n\n const iconClassNames = useMemo(\n () =>\n classnames(styles.icon, styles[`icon__${variant}`], styles[`icon__${size}`], { [styles.icon__only]: !children }),\n [variant, size, children]\n );\n\n if (variant === ELinkVariant.href) {\n return (\n <a className={classNames} target={target} rel={rel} href={href} style={style}>\n {children}\n </a>\n );\n }\n\n const link = useMemo(\n () =>\n variant === ELinkVariant.link && mainLink ? (\n <a className={classNames} target={target} href={href} rel={rel} style={style}>\n {children}\n </a>\n ) : variant === ELinkVariant.link ? (\n <a className={classNames} target={target} rel={rel} style={style}>\n {children}\n </a>\n ) : (\n <div className={classNames} onClick={onClick} style={style}>\n {children}\n {Icon && <Icon className={iconClassNames} />}\n </div>\n ),\n [variant, children, onClick]\n );\n\n return link;\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgCounterMinus(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 16 16\",\n fill: \"none\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.286 8c0-.316.255-.571.571-.571h10.286a.571.571 0 010 1.142H2.857A.571.571 0 012.286 8z\",\n fill: \"#212121\"\n })));\n}\n\nexport default SvgCounterMinus;","import React from 'react';\n\nimport { Button } from '@shared/button';\nimport { useMedia, withMedia } from '@shared/media';\nimport { Fragment, useCallback } from 'react';\n\nimport BreadcrumbsArrowIcon from '../icon/icons/breadcrubms-arrow.svg';\n\nimport styles from './breadcrumbs.module.scss';\nimport { Text } from '@shared/text';\nimport { Link } from '@shared/link';\n\nexport interface IBreadcrumbsPath {\n title: string;\n path: string;\n isBack?: boolean;\n isCurrent?: boolean;\n}\n\ninterface IBreadcrumbsProps {\n paths: IBreadcrumbsPath[];\n onReplace?: (path: string) => void;\n}\n\nexport const Breadcrumbs = withMedia(({ paths, onReplace }: IBreadcrumbsProps) => {\n const media = useMedia();\n\n const onBack = useCallback(() => {\n const backPath = paths.reverse().find((i) => i.path && i.isBack);\n if (backPath) {\n onReplace && onReplace(paths[paths.length - 1].path);\n } else {\n onReplace && onReplace('/');\n }\n }, [paths]);\n\n return media.mobile ? (\n <div>\n <Button size=\"small\" onClick={onBack}>\n Назад\n </Button>\n </div>\n ) : (\n <div className={styles.breadcrumbs}>\n {paths.map((item, index) => (\n <Fragment key={index}>\n {!!index && <BreadcrumbsArrowIcon />}\n <span key={index}>\n {item.path ? (\n <Link href={item.path}>\n <Text size=\"large\" className={styles.breadcrumbsLink}>{item.title}</Text>\n </Link>\n ) : (\n <Text size=\"large\" attention={item.isCurrent} bold={item.isCurrent}>{item.title}</Text>\n )}\n </span>\n </Fragment>\n ))}\n </div>\n );\n});\n","import React, { PropsWithChildren, useCallback, useEffect, useMemo, useState } from 'react';\nimport classnames from 'classnames';\nimport { ChangeEvent } from 'react';\nimport styles from './checkbox.module.scss';\n\nexport type ICheckboxProps = {\n disabled?: boolean;\n value?: boolean;\n error?: boolean;\n onChange?: (val: boolean) => void;\n small?: boolean;\n name?: string;\n};\n\nlet UNIQ_COUNT = 1;\n\nexport const Checkbox = ({ disabled = false, value = false, onChange = () => {}, children, error }: PropsWithChildren<ICheckboxProps>) => {\n const [_value, _setValue] = useState(value);\n\n useEffect(() => {\n value !== _value && _setValue(value);\n }, [value]);\n\n const _onChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n if (value === e.currentTarget.checked) {\n return;\n }\n _setValue(e.currentTarget.checked);\n onChange(e.currentTarget.checked);\n },\n [onChange, value],\n );\n\n const id = useMemo(() => `checkbox${UNIQ_COUNT++}`, []);\n\n return (\n <div className={styles.checkboxContainer}>\n <input\n name=\"name\"\n className={classnames(styles.checkbox, { [styles.error]: error })}\n type=\"checkbox\"\n disabled={disabled}\n id={id}\n checked={_value}\n onChange={_onChange}\n />\n <label htmlFor={id}>{children}</label>\n </div>\n );\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgCounterPlus(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 16 16\",\n fill: \"none\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 2.286c.316 0 .571.256.571.571V7.43h4.572a.571.571 0 010 1.142H8.57v4.572a.571.571 0 01-1.143 0V8.57h-4.57a.571.571 0 010-1.142h4.57V2.857c0-.315.256-.571.572-.571z\",\n fill: \"#fff\"\n })));\n}\n\nexport default SvgCounterPlus;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgDatePicker(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.286.857c.473 0 .857.384.857.857v.994c.72.115 1.186.3 1.654.55a4.673 4.673 0 011.944 1.944c.408.762.642 1.518.681 3.369h.006v6.265l-.004.523c-.035 1.902-.27 2.668-.683 3.439a4.673 4.673 0 01-1.944 1.944c-.838.448-1.669.687-3.961.687H9.164l-.523-.005c-1.902-.035-2.668-.27-3.439-.682a4.673 4.673 0 01-1.944-1.944c-.43-.805-.667-1.603-.686-3.694V8.57c.045-1.851.279-2.607.686-3.369a4.673 4.673 0 011.944-1.944c.469-.25.935-.435 1.655-.55v-.994a.857.857 0 011.714 0v.863c.186-.004.383-.006.593-.006h5.672c.21 0 .407.002.594.006l-.002-.863c0-.473.384-.857.858-.857zm3.427 9.429H4.286v4.792l.008.488c.033 1.292.17 1.85.476 2.423.288.54.701.953 1.24 1.241.64.342 1.264.472 2.912.483h6.156l.488-.007c1.292-.033 1.85-.17 2.423-.476.54-.288.952-.701 1.24-1.24.343-.64.473-1.264.484-2.912v-4.792zm-3.388 4.286c.371 0 .663.07.908.2.244.13.436.322.566.567.131.244.2.536.2.907v.08c0 .37-.069.662-.2.907-.13.244-.322.436-.566.567-.245.13-.537.2-.908.2h-.079c-.37 0-.663-.07-.907-.2a1.363 1.363 0 01-.567-.567c-.131-.245-.2-.537-.2-.908v-.079c0-.37.069-.663.2-.907.13-.245.322-.437.567-.567.244-.13.536-.2.907-.2h.079zM15.078 4.287H8.922l-.35.004v.852a.857.857 0 01-1.715 0V4.45c-.327.075-.585.18-.846.32A2.96 2.96 0 004.77 6.01c-.317.592-.452 1.17-.48 2.56h15.418l-.002-.137c-.034-1.292-.17-1.85-.476-2.423a2.959 2.959 0 00-1.241-1.24 3.287 3.287 0 00-.845-.32l-.001.692a.857.857 0 11-1.715 0l.002-.852c-.112-.002-.229-.004-.352-.004z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgDatePicker;","import React from 'react';\n\nimport { Button } from '@shared/button';\nimport { Text } from '@shared/text';\nimport { useCallback, useEffect, useState } from 'react';\n\nimport CounterMinusIcon from '../icon/icons/counter-minus.svg';\nimport CounterPlusIcon from '../icon/icons/counter-plus.svg';\n\nimport styles from './counter.module.scss';\n\ninterface ICounterProps {\n value?: number;\n max?: number;\n min?: number;\n onChange?: (count: number) => void;\n}\n\nexport const Counter = (props: ICounterProps) => {\n const [value, setValue] = useState(props.value || 0);\n\n const onChange = useCallback((e) => {\n setValue((count) => {\n const newCount = count + e;\n props.onChange && props.onChange(newCount);\n return newCount;\n });\n }, [props.onChange]);\n\n useEffect(() => {\n setValue(props.value);\n }, [props.value]);\n\n return (\n <div className={styles.counter}>\n <Button\n className={styles.button}\n icon={CounterMinusIcon}\n disabled={props.min != undefined && value <= props.min}\n onClick={onChange.bind(null, -1)}\n />\n <Text className={styles.value} size=\"large\">\n {value}\n </Text>\n <Button\n className={styles.button}\n icon={CounterPlusIcon}\n disabled={props.max != undefined && value >= props.max}\n onClick={onChange.bind(null, 1)}\n />\n </div>\n );\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgInputSearch(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.667 17.333a6.667 6.667 0 115.266-2.578l4.49 4.49-1.179 1.178-4.49-4.49a6.637 6.637 0 01-4.087 1.4zm5-6.666a5 5 0 11-10 0 5 5 0 0110 0z\",\n fill: \"currentColor\"\n })));\n}\n\nexport default SvgInputSearch;","var _path, _path2, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgInputLoader(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 20 20\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#input-loader_svg__paint0_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#input-loader_svg__paint1_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"input-loader_svg__paint0_linear\",\n x1: 14.5,\n y1: 5.5,\n x2: 16.5,\n y2: 10,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"input-loader_svg__paint1_linear\",\n x1: 10,\n y1: 16,\n x2: 17,\n y2: 9.5,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })))));\n}\n\nexport default SvgInputLoader;","import React, {\n InputHTMLAttributes,\n useMemo,\n ChangeEvent,\n forwardRef,\n KeyboardEvent,\n useEffect,\n useCallback,\n useState,\n useRef,\n useImperativeHandle,\n} from 'react';\nimport classnames from 'classnames';\nimport debounce from 'lodash.debounce';\n\nimport ClearIcon from '../icon/icons/clear.svg';\nimport InputSearchIcon from '../icon/icons/input-search.svg';\nimport InputLoaderIcon from '../icon/icons/input-loader.svg';\nimport Inputmask from 'inputmask';\n\nimport styles from './input.module.scss';\n\n\nexport enum EInputVariant {\n filled = 'filled',\n outlined = 'outlined',\n pure = 'pure',\n}\n\nexport enum EInputSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\nexport enum EInputBorder {\n circle = 'circle',\n normal = 'normal',\n}\n\nexport type IInputProps = {\n error?: boolean;\n icon?: any;\n value?: any;\n autofocus?: boolean;\n variant?: keyof typeof EInputVariant;\n size?: keyof typeof EInputSize;\n border?: keyof typeof EInputBorder;\n loading?: boolean;\n showClear?: boolean;\n adaptive?: boolean;\n className?: string;\n beginSearch?: number;\n debounceTime?: number;\n labelPlaceholder?: string;\n mask?: string;\n onClear?: (val?: string) => void;\n onPointerUp?: (e: any) => void;\n onChange?: (value: string, event: ChangeEvent<HTMLInputElement>) => void;\n onSearch?: ((val: string) => void) | ((val: string) => Promise<void>);\n} & Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'variant' | 'onChange'>;\n\nexport const Input = forwardRef<HTMLInputElement, IInputProps>(\n (\n {\n onChange,\n onFocus = () => {},\n onBlur = () => {},\n onClear,\n onSearch,\n onPointerUp,\n icon: Icon,\n name,\n required,\n disabled,\n value,\n type = 'text',\n placeholder,\n style,\n loading = false,\n showClear,\n error,\n labelPlaceholder,\n size = EInputSize.medium,\n variant = EInputVariant.outlined,\n border = EInputBorder.normal,\n adaptive,\n width,\n className,\n debounceTime = 500,\n beginSearch = NaN,\n mask,\n autofocus,\n ...props\n }: IInputProps,\n ref\n ) => {\n const [_value, _setValue] = useState<string | undefined>(value);\n const [_loading, _setLoading] = useState(loading);\n const [_mask, _setMask] = useState(null);\n\n const innerRef = useRef<HTMLInputElement>(null);\n\n useImperativeHandle(ref, () => innerRef.current);\n\n useEffect(() => {\n autofocus && setTimeout(() => {\n innerRef.current.focus();\n }, 500);\n }, [autofocus]);\n\n useEffect(() => _setValue(value), [value]);\n useEffect(() => _setLoading(loading), [loading]);\n useEffect(() => {\n if (!mask && _mask) {\n _mask.remove();\n _setMask(null);\n }\n\n if (!mask || !innerRef.current) {\n return;\n }\n\n if (!innerRef.current) {\n return;\n }\n const inputMask = new Inputmask({ mask, greedy: false });\n\n setTimeout(() => {\n _setMask(inputMask.mask(innerRef.current));\n innerRef.current.dispatchEvent(new Event('change', { bubbles: true }))\n })\n }, [mask, innerRef.current])\n\n const classNames = useMemo(\n () =>\n classnames(\n styles.input,\n className,\n styles[`input__${variant}`],\n styles[`input__${size}`],\n styles[`input__border_${border}`],\n {\n [styles[`input__${size}_adaptive`]]: adaptive,\n [styles[`input__action_${size}`]]: Icon || _loading || showClear || onSearch,\n [styles[`input__actions_${size}`]]: (Icon || _loading || onSearch) && showClear,\n [styles.disabled]: disabled,\n [styles.invalid]: error,\n }\n ),\n [variant, size, border, disabled, _loading, showClear, adaptive, className, error, onSearch]\n );\n\n const inputClassNames = useMemo(\n () =>\n classnames({\n [styles.invalid]: error,\n }),\n [error]\n );\n\n const clearClassNames = useMemo(\n () =>\n classnames(styles.clear, styles[`clear__${variant}`], styles[`clear__${size}`], {\n [styles[`clear__action_${size}`]]: Icon || _loading || onSearch,\n }),\n [variant, size, Icon, _loading, _value, onSearch]\n );\n\n const loaderClassNames = useMemo(\n () => classnames(styles.loader, styles[`loader__${variant}`], styles[`loader__${size}`]),\n [variant, size]\n );\n\n const iconClassNames = useMemo(() => classnames(styles.icon, styles[`icon__${variant}`], styles[`icon__${size}`]), [\n variant,\n size,\n ]);\n\n const labelClassNames = useMemo(() => classnames(styles.label), []);\n\n const _onSearchDebounce = useCallback(\n debounce((val, callback) => {\n _setValue((prev) => {\n if (prev !== val) {\n return;\n }\n\n (async () => {\n await callback(val);\n _setLoading(false);\n })();\n\n return val;\n });\n }, debounceTime),\n []\n );\n\n const _onChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n onSearch && _onSearch(e.currentTarget.value);\n _setValue(e.currentTarget.value);\n if (onChange) {\n onChange(e.currentTarget.value, e);\n }\n },\n [_onSearchDebounce, onSearch, onChange, beginSearch]\n );\n\n const _onSearch = useCallback(\n (val: string) => {\n _setLoading(true);\n\n _setValue(() => {\n if (!val) {\n onClear && onClear();\n _setLoading(false);\n } else if (val?.length >= beginSearch) {\n _onSearchDebounce(val, onSearch);\n } else {\n _setLoading(false);\n }\n\n return val;\n });\n },\n [_onSearchDebounce, onSearch, onClear, beginSearch]\n );\n\n const _onClear = useCallback(() => {\n _setValue(undefined);\n\n if (onClear) {\n onClear();\n }\n }, [onClear]);\n\n const _onKeyPress = useCallback(\n (e: KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter') {\n onSearch && onSearch(_value || '');\n }\n },\n [_value, onSearch]\n );\n\n return (\n <div\n className={classNames}\n style={{ width: width }}\n onPointerUp={onPointerUp}\n >\n {labelPlaceholder && _value && <div className={labelClassNames}>{labelPlaceholder}</div>}\n <input\n {...props}\n className={inputClassNames}\n ref={innerRef}\n name={name}\n disabled={disabled}\n placeholder={placeholder || labelPlaceholder}\n type={type}\n value={_value || ''}\n onChange={_onChange}\n onFocus={onFocus}\n onKeyPress={_onKeyPress}\n onBlur={onBlur}\n required={required}\n style={style}\n />\n {showClear && _value && <Icon icon={ClearIcon} className={clearClassNames} onClick={_onClear} />}\n {onSearch && !_loading && (\n <InputSearchIcon className={iconClassNames} onClick={onSearch.bind(null, _value || '')} />\n )}\n {Icon && !_loading && (\n <Icon className={iconClassNames} />\n )}\n {_loading && <InputLoaderIcon className={loaderClassNames} />}\n </div>\n );\n }\n);\n","import React, { ComponentProps, useCallback } from 'react';\nimport cn from 'classnames';\nimport DatePickerIcon from '../icon/icons/date-picker.svg';\nimport ClearIcon from '../icon/icons/clear.svg';\nimport { Icon } from '@shared/icon';\n\nimport generatePicker from 'antd/lib/date-picker/generatePicker';\nimport dateFnsGenerateConfig from 'rc-picker/lib/generate/dateFns';\nimport locale from 'antd/lib/date-picker/locale/ru_RU';\nimport { EInputSize, Input } from '@shared/input';\nlocale.lang.locale = 'ru';\n\nconst AntDatePicker = generatePicker<Date>(dateFnsGenerateConfig);\n\ntype IDatePickerProps = {\n error?: boolean;\n onClear?: (e: any) => void;\n onTouchStart?: (e: any) => void;\n format?: string;\n mask?: string;\n labelPlaceholder?: string;\n} & ComponentProps<typeof AntDatePicker>;\n\nexport const DatePicker = ({ error, onClear, format = 'DD.MM.YYYY', mask, labelPlaceholder, onClick, ...props }: IDatePickerProps) => {\n const onRenderInput = useCallback((props: React.InputHTMLAttributes<HTMLInputElement>) => {\n return <Input variant=\"pure\" mask={mask} error={error} labelPlaceholder={labelPlaceholder} onPointerUp={onClick} {...props} size={EInputSize.medium} onChange={(_, e) => props.onChange(e)} />;\n }, [onClick, error])\n\n return (\n // @ts-ignore\n <AntDatePicker\n {...props}\n locale={locale}\n suffixIcon={<Icon icon={DatePickerIcon} />}\n clearIcon={<div onClick={onClear}><Icon icon={ClearIcon} /></div>}\n className={cn(props.className, { 'date-picker-error': error })}\n placeholder={props.placeholder || labelPlaceholder}\n format={format}\n onClick={onClick}\n // @ts-ignore\n showToday={false}\n inputRender={onRenderInput}\n />\n );\n};\n","import React from 'react';\nimport classnames from 'classnames';\n\nimport styles from './divider.module.scss';\n\nexport type IDividerProps = {\n width?: string;\n height?: string;\n bordered?: boolean;\n overflow?: number;\n children?: JSX.Element;\n className?: string;\n};\n\nexport const Divider = ({ width, height, bordered, className}: IDividerProps) => {\n return (\n <div\n className={classnames(styles.divider, className, { [styles.bordered]: bordered })}\n style={{\n width,\n height,\n }}\n />\n );\n};\n","import React from 'react';\n\nimport { Dropdown as AntDropdown, DropDownProps as AntDropdownProps } from 'antd';\nimport { ReactNode, useCallback } from 'react';\n\nimport styles from './dropdown.module.scss';\n\ninterface IDropdownProps extends AntDropdownProps {}\n\nexport const Dropdown = (props: IDropdownProps) => {\n const dropdownRender = useCallback(\n (originNode: ReactNode) => {\n return props.dropdownRender ? (\n <div className={styles.dropdown}>{props.dropdownRender(originNode)}</div>\n ) : (\n originNode\n );\n },\n [props.dropdownRender],\n );\n\n return <AntDropdown {...props} dropdownRender={dropdownRender} />;\n};\n","import { useFormikContext } from \"formik\";\nimport { MutableRefObject, useEffect } from \"react\";\n\ninterface IFocusErrorProps {\n formRef: MutableRefObject<HTMLFormElement>;\n}\n\nexport const FocusError = (props: IFocusErrorProps) => {\n const { errors, isSubmitting, isValidating } = useFormikContext();\n\n useEffect(() => {\n if (isSubmitting && !isValidating) {\n let keys = Object.keys(errors);\n if (keys.length > 0) {\n const selector = `[name=${keys[0]}]`;\n const errorElement = props.formRef.current.querySelector(selector) as HTMLElement;\n if (errorElement) {\n errorElement.focus();\n }\n }\n }\n }, [errors, isSubmitting, isValidating]);\n\n return null;\n};\n","import React from 'react';\n\nimport { FormikContextType, FormikProvider } from \"formik\"\nimport { PropsWithChildren, useCallback, useRef } from \"react\"\nimport { FocusError } from \"./form-focus-error\";\n\ninterface IFormProps {\n form: FormikContextType<any>;\n className?: string;\n onBlur?: (values: any) => void;\n onChange?: (values: any) => void;\n onChangeBlur?: (values: any) => void;\n}\n\nexport const Form = (props: PropsWithChildren<IFormProps>) => {\n const ref = useRef<HTMLFormElement>();\n\n const onChangeBlur = useCallback(async () => {\n if (props.form.dirty && props.form.isValid) {\n const isValid = await props.form.validateForm();\n if (!Object.keys(isValid).length) {\n props.onChangeBlur && props.onChangeBlur(props.form.values);\n }\n }\n }, [props.form]);\n\n const onBlur = useCallback(() => {\n setTimeout(() => {\n props.onBlur && props.onBlur(props.form.values);\n onChangeBlur();\n });\n }, [props.onBlur, props.form]);\n\n const onChange = useCallback(() => {\n props.onChange && setTimeout(() => {\n props.onChange(props.form.values);\n });\n }, [props.onChange, props.form]);\n\n return <FormikProvider value={props.form}>\n <form ref={ref} className={props.className} onSubmit={props.form.handleSubmit} onBlur={onBlur} onChange={onChange}>\n {props.children}\n <FocusError formRef={ref} />\n </form>\n </FormikProvider>\n};\n","import React from 'react';\n\nimport { ComponentProps, ElementType, PropsWithChildren, useMemo } from \"react\"\nimport { getIn, useField, useFormikContext } from 'formik';\nimport { Text } from \"@shared/text\";\n\nimport styles from './form-control.module.scss';\n\ntype IFormControlProps<C extends ElementType> = {\n [key in keyof ComponentProps<C>]?: ComponentProps<C>[key]\n} & {\n name: string;\n label?: string;\n component?: C;\n onChange?: ComponentProps<C>['onChange'];\n};\n\nexport const isRequiredField = (validationSchema, name) => {\n if (!validationSchema) {\n return false;\n }\n const schemaDescription = validationSchema.describe()\n const accessor = name.split(\".\").join(\".fields.\")\n const field = getIn(schemaDescription.fields, accessor)\n if (!field) {\n return false\n }\n const isRequired = field.tests.some((test) => test.name === \"required\")\n return isRequired\n}\n\nexport function FormControl<T extends ElementType>({ name, label, component, onChange, ...props }: PropsWithChildren<IFormControlProps<T>>) {\n const [field, meta, helpers] = useField({ name, type: 'object' });\n const ctx = useFormikContext();\n const Component = component as any;\n\n const _onChange = (value: any, ...args) => {\n helpers.setValue(value);\n helpers.setError(undefined);\n\n setTimeout(() => {\n onChange && onChange(value, ...args);\n });\n\n helpers.setTouched(true, false);\n };\n\n const labelPlaceholder = useMemo(() => {\n if (props.labelPlaceholder && isRequiredField(ctx.validationSchema, name)) {\n return `${props.labelPlaceholder} *`\n }\n\n return props.labelPlaceholder;\n }, [props.labelPlaceholder, ctx.validationSchema]);\n\n return <div>\n {!!label && <Text className={styles.label} size=\"large\" addition>{label}</Text>}\n <Component {...field} {...props} label={label} labelPlaceholder={labelPlaceholder} error={meta.touched && meta.error} onChange={_onChange} />\n {meta.touched && meta.error && <Text className={styles.error} size=\"small\" error>{meta.error}</Text>}\n </div>\n}\n","import React from 'react';\n\nimport { useMemo } from 'react';\nimport classnames from 'classnames';\n\nimport styles from './heading.module.scss';\n\nexport enum EHeadingLevel {\n h1 = 1,\n h2,\n h3,\n h4,\n h5,\n}\n\ninterface IHeadingProps {\n level?: EHeadingLevel;\n children?: any;\n addition?: boolean;\n attention?: boolean;\n success?: boolean;\n warning?: boolean;\n inverse?: boolean;\n error?: boolean;\n className?: string;\n centerText?: boolean;\n}\n\nexport const Heading = ({\n children,\n level = EHeadingLevel.h1,\n addition,\n attention,\n warning,\n success,\n inverse,\n error,\n className,\n centerText,\n}: IHeadingProps) => {\n const HeadingTag = useMemo(() => `h${level}` as keyof JSX.IntrinsicElements, [level]);\n\n const classNames = useMemo(\n () =>\n classnames(\n styles.heading,\n styles[`heading__h${level}`],\n {\n [styles.textAddition]: addition,\n [styles.textAttention]: attention,\n [styles.textInverse]: inverse,\n [styles.textSuccess]: success,\n [styles.textError]: error,\n [styles.textWarning]: warning,\n [styles.center]: centerText,\n },\n className,\n ),\n [addition, inverse, error, className],\n );\n\n return <HeadingTag className={classNames}>{children}</HeadingTag>;\n};\n","var _path, _path2, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgLoader(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 20 20\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#loader_svg__paint0_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 10a7 7 0 11-2.706-5.528c.382.296.379.855.037 1.197-.342.342-.892.335-1.286.054A5.25 5.25 0 1015.25 10H17z\",\n fill: \"url(#loader_svg__paint1_linear)\"\n }, /*#__PURE__*/React.createElement(\"animateTransform\", {\n attributeType: \"xml\",\n attributeName: \"transform\",\n type: \"rotate\",\n from: \"0 10 10\",\n to: \"360 10 10\",\n dur: \"0.75s\",\n repeatCount: \"indefinite\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"loader_svg__paint0_linear\",\n x1: 14.5,\n y1: 5.5,\n x2: 16.5,\n y2: 10,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"loader_svg__paint1_linear\",\n x1: 10,\n y1: 16,\n x2: 17,\n y2: 9.5,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"currentColor\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"currentColor\",\n stopOpacity: 0\n })))));\n}\n\nexport default SvgLoader;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgModalClose(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 28 28\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.293 6.293a1 1 0 011.414 0L14 12.585l6.293-6.292a1 1 0 011.32-.083l.094.083a1 1 0 010 1.414L15.415 14l6.292 6.293a1 1 0 01.083 1.32l-.083.094a1 1 0 01-1.414 0L14 15.415l-6.293 6.292a1 1 0 01-1.32.083l-.094-.083a1 1 0 010-1.414L12.585 14 6.293 7.707a1 1 0 01-.083-1.32l.083-.094z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgModalClose;","import React from 'react';\n\nimport LoaderIcon from '../icon/icons/loader.svg';\n\nimport styles from './loader.module.scss';\n\ninterface ILoaderProps {\n absolute?: boolean;\n fixed?: boolean;\n}\n\nexport const Loader = (props: ILoaderProps) => {\n if (props.absolute) {\n return <div className={styles.absolute}>\n <LoaderIcon className={styles.loader} />\n </div>\n }\n\n if (props.fixed) {\n return <div className={styles.fixed}>\n <LoaderIcon className={styles.loader} />\n </div>\n }\n\n return <LoaderIcon className={styles.loader} />;\n}\n","import React from 'react';\nimport classnames from 'classnames';\n\nimport styles from './loader-line.module.scss';\n\nexport type ILoaderLineProps = {\n active?: boolean;\n children?: JSX.Element;\n};\n\n\nexport const LoaderLine = ({ active }: ILoaderLineProps) => {\n return (\n <>\n <div className={classnames(styles.loaderLine, { [styles.active]: active })}>\n <div className={styles.border} />\n <div className={styles.bar} />\n </div>\n </>\n );\n};\n","import React, { PropsWithChildren } from 'react';\n\nimport { Menu as AntMenu, MenuProps as AntMenuProps } from 'antd';\n\ninterface IMenuProps extends AntMenuProps {}\n\nexport const Menu = (props: PropsWithChildren<IMenuProps>) => {\n // @ts-ignore\n return <AntMenu {...props} />;\n};\n","import React from 'react';\n\nimport { Heading } from '@shared/heading';\nimport { Icon } from '@shared/icon';\nimport { Modal as AntdModal } from 'antd';\nimport {\n ComponentProps,\n ElementType,\n forwardRef,\n MutableRefObject,\n PropsWithChildren,\n ReactNode,\n useCallback,\n useEffect,\n useState,\n} from 'react';\nimport ModalCloseIcon from './../icon/icons/modal-close.svg';\nimport classNames from 'classnames';\n\nimport styles from './modal.module.scss';\n\nexport type PropsWithModal<P, D = any> = P & {\n data: D;\n modal: IModalRef<D>;\n};\n\nexport interface IModalRef<D = any> {\n open: (data: D) => void;\n close: () => void;\n setTitle: (title: string | ReactNode) => void;\n setFooter: (node: ReactNode) => void;\n setClosable: (show: boolean) => void;\n setWidth: (width: string | number) => void;\n setFooterFixed: (value: boolean) => void;\n setFull: (value: boolean) => void;\n}\n\ntype IModalProps<C extends ElementType> = {\n [key in keyof ComponentProps<C>]?: ComponentProps<C>[key];\n} & {\n component?: any;\n title?: string;\n width?: number | string;\n footer?: ReactNode;\n sidebar?: boolean;\n footerFixed?: boolean;\n full?: boolean;\n};\n\nfunction _Modal<C extends ElementType>(\n { title, footer, width = 'max-content', closable = true, sidebar, component: Component, children, footerFixed, ...props }: PropsWithChildren<IModalProps<C>>,\n ref?: MutableRefObject<IModalRef>\n) {\n const [open, setOpen] = useState(false);\n const [data, setData] = useState<any>();\n const [_width, _setWidth] = useState<number | string>(width);\n const [_title, _setTitle] = useState<ReactNode>(title);\n const [_footer, _setFooter] = useState<ReactNode>(footer);\n const [_closable, _setClosable] = useState<boolean>(props.closable);\n const [_full, _setFull] = useState<boolean>(props.full);\n const [_footerFixed, _setFooterFixed] = useState<boolean>(props.footerFixed);\n\n const handleCancel = useCallback(() => {\n setOpen(false);\n }, []);\n\n const handleOpen = useCallback((data) => {\n setData(data);\n setOpen(true);\n }, []);\n\n useEffect(() => {\n if (!ref) {\n return;\n }\n\n ref.current = {\n open: handleOpen,\n close: handleCancel,\n setTitle: _setTitle,\n setFooter: _setFooter,\n setClosable: _setClosable,\n setWidth: _setWidth,\n setFooterFixed: _setFooterFixed,\n setFull: _setFull\n };\n }, [ref?.current]);\n\n return (\n <AntdModal\n open={open}\n closable={_closable}\n maskClosable={_closable}\n destroyOnClose={true}\n afterClose={() => {\n setData(null);\n setOpen(false);\n }}\n width={_width}\n closeIcon={<Icon size=\"large\" icon={ModalCloseIcon} />}\n onCancel={handleCancel}\n title={typeof _title === 'string' ? <Heading level={1}>{_title}</Heading> : _title}\n footer={_footer ? <div className={styles.footer}>{_footer}</div> : null}\n maskTransitionName=\"\"\n transitionName=\"\"\n className={classNames({ 'ant-modal-sidebar': sidebar, 'ant-modal-footer-fixed': _footerFixed, 'ant-modal-full': _full })}\n >\n {children}\n {!!Component && <Component {...props} data={data} modal={ref.current} />}\n </AntdModal>\n );\n}\n\nexport const Modal = forwardRef<IModalRef, IModalProps<any>>(_Modal);\n","import React from 'react';\n\nimport { createContext, createRef, PropsWithChildren, RefObject, useContext, useMemo, useState } from \"react\";\nimport { IModalRef, Modal } from \"./modal\";\n\ntype IModalContextPrivate = {\n create: (component: any, initialProps: any) => RefObject<IModalRef<any>>;\n};\n\ntype IModalObj = {\n ref: RefObject<IModalRef<any>>;\n id: number;\n component: any;\n initialProps: any[];\n}\n\nconst modalContext = createContext<IModalContextPrivate>(null);\n\nexport const ModalProvider = ({ children }: PropsWithChildren<any>) => {\n const [modals, setModals] = useState<IModalObj[]>([]);\n\n const value = useMemo(() => ({\n create: (component: any, initialProps: any) => {\n const ref = createRef<IModalRef>();\n const id = new Date().getTime();\n setModals(prev => prev.concat({ ref, id, component, initialProps }));\n\n return ref\n }\n }), []);\n\n return <modalContext.Provider value={value}>\n {children}\n {modals.map(modal => <Modal key={modal.id} ref={modal.ref} component={modal.component} {...modal.initialProps} />)}\n </modalContext.Provider>;\n};\n\nexport const useModal = (component: any, ...initialProps: any) => {\n const data = useContext(modalContext);\n\n const res = useMemo(() => data.create(component, initialProps || []), [component]);\n\n if (!data) {\n throw new Error('Не подключен ModalProvider');\n }\n\n return res;\n};\n\n","import React from 'react';\n\nimport { Text } from '@shared/text';\nimport { Radio as AntRadio, RadioChangeEvent, RadioGroupProps } from 'antd';\nimport { CheckboxValueType } from 'antd/lib/checkbox/Group';\nimport cn from 'classnames';\nimport { useCallback, useEffect, useMemo, useState } from 'react';\n\ninterface IRadioOption<T> {\n label: string;\n value: CheckboxValueType;\n data: T;\n}\n\ntype IRadioProps<T> = Omit<RadioGroupProps, 'options' | 'onChange' | 'value'> & {\n options: T[] | T;\n labels?: { [key: string]: string };\n valueKey?: string;\n labelKey?: string;\n value?: any;\n onChange?: (value: T, e?: MouseEvent) => void;\n position?: 'vertical' | 'horizontal';\n}\n\nfunction formatItemToOption<T = any>(item: any, valueKey: string, labelKey: string, labels: { [key: string]: string }) {\n if (['string', 'number', 'boolean'].includes(typeof item)) {\n return {\n label: labels ? labels[`${item}`] : item,\n value: item,\n data: item,\n } as IRadioOption<T>;\n }\n\n return {\n label: item[labelKey],\n value: item[valueKey],\n data: item,\n } as IRadioOption<T>;\n}\n\nexport function Radio<T = any>({ options, position = 'horizontal', valueKey, labelKey, labels, ...props }: IRadioProps<T>) {\n const [value, setValue] = useState<any>();\n\n const _options = useMemo(() => {\n let _options = null;\n if (Array.isArray(options)) {\n _options = options;\n }\n\n if (options) {\n _options = Object.values(options);\n }\n\n return _options?.map((option) => formatItemToOption(option, valueKey, labelKey, labels)) || null;\n }, [options, labels]);\n\n useEffect(() => {\n if (!options) {\n return;\n }\n\n const res = _options?.find((option) => (props.value && option.value === props.value[valueKey]) || option.value === props.value);\n setValue(res?.value);\n }, [props.value, _options]);\n\n const _onChange = useCallback((e: RadioChangeEvent) => {\n const value = _options.find(option => option.value === e.target.value);\n setValue(value.value);\n props.onChange && props.onChange(value?.data, e.nativeEvent);\n }, [props.onChange, _options]);\n\n\n return (\n <AntRadio.Group className={cn('ant-radio-group-customize', position)} {...props} onChange={_onChange} value={value}>\n {_options.map((option, index) => (\n <AntRadio className={cn('ant-radio-customize')} key={index} value={option.value}>\n <Text size=\"large\">{option.label}</Text>\n </AntRadio>\n ))}\n </AntRadio.Group>\n );\n}\n","import React, { ComponentProps, forwardRef, useCallback } from 'react';\n\nimport generatePicker from 'antd/lib/date-picker/generatePicker';\nimport dateFnsGenerateConfig from 'rc-picker/lib/generate/dateFns';\nimport { startOfDay } from 'date-fns';\nimport locale from 'antd/lib/date-picker/locale/ru_RU';\nlocale.lang.locale = 'ru';\n\nconst AntDatePicker = generatePicker<Date>(dateFnsGenerateConfig);\n\ntype IRangePickerProps = {\n isFromToday?: boolean;\n} & ComponentProps<typeof AntDatePicker.RangePicker>;\n\nexport const RangePicker = forwardRef((props: IRangePickerProps, ref) => {\n const disabledDate = useCallback(\n (current: Date) => {\n if (props.disabledDate && props.disabledDate(current)) {\n return true;\n }\n\n if (props.isFromToday) {\n return current && current.getTime() < startOfDay(new Date()).getTime();\n }\n\n return false;\n },\n [props.isFromToday, props.disabledDate],\n );\n\n // @ts-ignore\n return <AntDatePicker.RangePicker locale={locale} pickerRef={ref} {...props} disabledDate={disabledDate} />;\n});\n","import React from 'react';\n\nimport { Select as AntSelect, SelectProps } from 'antd';\nimport cn from 'classnames';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport debounce from 'lodash.debounce';\n\nimport SelectArrowIcon from '../icon/icons/select-arrow.svg';\nimport { Icon } from '@shared/icon';\nimport ClearIcon from '../icon/icons/clear.svg';\n\nimport styles from './select.module.scss';\nimport classNames from 'classnames';\n\nexport interface ISelectOption<T> {\n label: string;\n value: string | number | null | undefined;\n data?: T;\n}\n\ninterface ISelectOptionGroup<T> {\n label: string;\n options: ISelectOption<T>[];\n}\n\ninterface ISelectGroup<T> {\n label: string;\n options: T[];\n}\n\ntype ISelectProps<T> = Omit<SelectProps, 'options' | 'onChange'> & {\n options?: T[] | T;\n optionsGroup?: ISelectGroup<T>[];\n labels?: { [key: string]: string };\n error?: boolean;\n valueKey?: string;\n labelKey?: string;\n labelPlaceholder?: string;\n onServerSearch?: (val: string) => Promise<T[]>;\n onServerSearchGroup?: (val: string) => Promise<ISelectGroup<T>[]>;\n onRenderOption?: (item: T) => React.ReactNode;\n onChange?: (option: T, options?: T[]) => void;\n debounceTimeout?: number;\n stacked?: boolean;\n popupClassName?: string;\n suffixIcon?: any;\n};\n\nfunction formatItemToOption<T = any>(item: any, valueKey: string = 'value', labelKey: string = 'label', labels?: ISelectProps<T>['labels']) {\n if (['string', 'number', 'boolean'].includes(typeof item)) {\n return {\n label: labels ? labels[`${item}`] : item,\n value: item,\n data: item,\n } as ISelectOption<T>;\n }\n\n return {\n label: item[labelKey],\n value: item[valueKey],\n data: item,\n } as ISelectOption<T>;\n}\n\nexport function Select<T = any>({\n debounceTimeout = 500,\n onServerSearch,\n onServerSearchGroup,\n onRenderOption,\n valueKey,\n labelKey,\n labelPlaceholder,\n labels,\n popupClassName,\n suffixIcon = SelectArrowIcon,\n ...props\n}: ISelectProps<T>) {\n const [fetching, setFetching] = useState(false);\n const [serverOptions, setServerOptions] = useState<ISelectOption<T>[]>(null);\n const [optionsGroup, setOptionsGroup] = useState<ISelectOptionGroup<T>[]>(null);\n\n const [value, setValue] = useState<ISelectOption<T>>();\n const fetchRef = useRef(0);\n\n const isEqual = (option) => option.key === props.value || option.props.data === props.value || (props.value && (option.key === props.value[valueKey] || option.props.value === props.value[valueKey]));\n\n const options = useMemo(() => {\n let _options = null;\n if (Array.isArray(props.options)) {\n _options = props.options;\n }\n\n if (props.options) {\n _options = Object.values(props.options);\n }\n\n return _options?.map((option) => formatItemToOption(option, valueKey, labelKey, labels)) || null;\n }, [props.options, labels]);\n\n useEffect(() => {\n setOptionsGroup(props.optionsGroup?.map((group) => ({\n label: group.label,\n options: group.options.map((option) => formatItemToOption(option, valueKey, labelKey, labels))\n })));\n }, [props.optionsGroup]);\n\n const debounceFetcher = useMemo(() => {\n const loadOptions = (value: string) => {\n fetchRef.current += 1;\n const fetchId = fetchRef.current;\n setServerOptions([]);\n setOptionsGroup([]);\n setFetching(true);\n\n onServerSearch && onServerSearch(value).then((newOptions) => {\n if (fetchId !== fetchRef.current) {\n return;\n }\n\n setServerOptions(newOptions?.map((option) => formatItemToOption(option, valueKey, labelKey)));\n setFetching(false);\n });\n\n onServerSearchGroup && onServerSearchGroup(value).then((newOptions) => {\n if (fetchId !== fetchRef.current) {\n return;\n }\n\n setOptionsGroup(newOptions?.map((group) => ({\n label: group.label,\n options: group.options.map((option) => formatItemToOption(option, valueKey, labelKey, labels))\n })));\n setFetching(false);\n });\n };\n\n return debounce(loadOptions, debounceTimeout);\n }, [onServerSearch, onServerSearchGroup, debounceTimeout]);\n\n const _onRenderOptions = useCallback(\n (option: ISelectOption<T>, index: number) => {\n if (onRenderOption) {\n return <AntSelect.Option option={option} data={option.data} key={`${option.value}${index}`} label={option.label} value={option.value}>{onRenderOption(option.data)}</AntSelect.Option>;\n }\n\n return (\n <AntSelect.Option option={option} data={option.data} key={option.value} label={option.label} value={option.value}>\n <div className={classNames({ [styles.hasLabel]: labelPlaceholder })}>\n {!!labelPlaceholder && <label>{labelPlaceholder}</label>}\n <div className={styles.optionText}>{option.label}</div>\n </div>\n </AntSelect.Option>\n );\n },\n [onRenderOption, labelPlaceholder]\n );\n\n const _onRenderGroup = useCallback(\n (group: ISelectOptionGroup<T>) => {\n return <AntSelect.OptGroup label={group.label}>{group.options.map(_onRenderOptions)}</AntSelect.OptGroup>\n },\n []\n );\n\n const onDropdownVisibleChange = useCallback(\n (open: boolean) => {\n if (!open) {\n setServerOptions(null);\n return;\n }\n },\n [value]\n );\n\n const _options: any[] = useMemo(() => (serverOptions || options || []).map(_onRenderOptions), [\n onServerSearch,\n options,\n serverOptions,\n ]);\n\n const _optionsGroup: any[] = useMemo(() => optionsGroup?.map(_onRenderGroup) || null, [optionsGroup]);\n\n const onChange = useCallback(\n (value: any, _option: any) => {\n setValue(value);\n props.onChange && props.onChange(_option?.data, (serverOptions || options)?.map((i) => i.data));\n },\n [props.onChange, _options, serverOptions, options]\n );\n\n useEffect(() => {\n let res = props.value && _options?.find(isEqual);\n\n if (_optionsGroup?.length) {\n for (const group of _optionsGroup) {\n res = group.props.children.find(isEqual)\n if (res) break;\n }\n }\n\n setValue(res?.props.value);\n }, [props.value, _options, _optionsGroup]);\n\n return (\n <AntSelect\n {...props}\n value={value}\n options={undefined}\n onSearch={debounceFetcher}\n popupClassName={popupClassName}\n onDropdownVisibleChange={onDropdownVisibleChange}\n notFoundContent={null}\n loading={true}\n onChange={onChange}\n placeholder={props.placeholder || labelPlaceholder}\n clearIcon={<Icon icon={ClearIcon} />}\n className={cn('ant-select-customize-input', props.className, styles.select, { 'select-error': props.error, 'select-stacked': props.stacked, 'select-loading': fetching })}\n suffixIcon={suffixIcon ? <Icon icon={suffixIcon} /> : null}\n >\n {_optionsGroup?.length ? _optionsGroup : _options}\n </AntSelect>\n );\n}\n","import React from 'react';\n\nimport { Slider } from 'antd';\nimport { SliderRangeProps, SliderSingleProps } from 'antd/lib/slider';\nimport { useEffect, useState } from 'react';\n\ninterface ISelectorRangeProps extends SliderRangeProps {}\n\nexport const SelectorRange = (props: ISelectorRangeProps) => {\n const [value, setValue] = useState<[number, number]>(props.value);\n\n useEffect(() => {\n setValue(props.value);\n }, [props.value]);\n\n return <Slider {...props} value={value} onChange={setValue} />;\n};\n\ninterface ISelectorProps extends SliderSingleProps {}\n\nexport const Selector = (props: ISelectorProps) => {\n return <Slider {...props} />;\n};\n","var _g, _path, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgArrowNext(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 69 69\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#arrow-next_svg__filter0_d_878_2853)\"\n }, /*#__PURE__*/React.createElement(\"circle\", {\n cx: 34.844,\n cy: 34.592,\n r: 24,\n transform: \"rotate(-180 34.844 34.592)\",\n fill: \"#fff\"\n }))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M40.101 33.558l-6.15-6.504 1.382-1.462 8.51 9-8.51 9-1.383-1.462 6.151-6.505H25.844v-2.067H40.1z\",\n fill: \"#000\"\n })), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n id: \"arrow-next_svg__filter0_d_878_2853\",\n x: 0.844,\n y: 0.592,\n width: 68,\n height: 68,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n }, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n \"in\": \"SourceAlpha\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n }), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 5\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_878_2853\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n \"in\": \"SourceGraphic\",\n in2: \"effect1_dropShadow_878_2853\",\n result: \"shape\"\n })))));\n}\n\nexport default SvgArrowNext;","import React from 'react';\n\nimport RLSkeleton, { SkeletonProps } from 'react-loading-skeleton';\n\ntype ISkeletonProps = SkeletonProps;\n\nexport const Skeleton = (props: ISkeletonProps) => {\n return <RLSkeleton {...props} />\n}\n","var _g, _path, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgArrowPrev(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 69 69\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n filter: \"url(#arrow-prev_svg__filter0_d_878_2850)\"\n }, /*#__PURE__*/React.createElement(\"circle\", {\n cx: 34.844,\n cy: 34.592,\n r: 24,\n fill: \"#fff\"\n }))), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M29.586 35.625l6.151 6.505-1.382 1.462-8.511-9 8.511-9 1.382 1.462-6.15 6.504h14.257v2.067H29.586z\",\n fill: \"#000\"\n })), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n id: \"arrow-prev_svg__filter0_d_878_2850\",\n x: 0.844,\n y: 0.592,\n width: 68,\n height: 68,\n filterUnits: \"userSpaceOnUse\",\n colorInterpolationFilters: \"sRGB\"\n }, /*#__PURE__*/React.createElement(\"feFlood\", {\n floodOpacity: 0,\n result: \"BackgroundImageFix\"\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n \"in\": \"SourceAlpha\",\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\",\n result: \"hardAlpha\"\n }), /*#__PURE__*/React.createElement(\"feOffset\", null), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 5\n }), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n in2: \"BackgroundImageFix\",\n result: \"effect1_dropShadow_878_2850\"\n }), /*#__PURE__*/React.createElement(\"feBlend\", {\n \"in\": \"SourceGraphic\",\n in2: \"effect1_dropShadow_878_2850\",\n result: \"shape\"\n })))));\n}\n\nexport default SvgArrowPrev;","import React from 'react';\n\nimport { Swiper, SwiperSlide } from 'swiper/react';\nimport ArrowNext from '../icon/icons/arrow-next.svg';\nimport ArrowPrev from '../icon/icons/arrow-prev.svg';\nimport classnames from 'classnames';\nimport SwiperCore, { Navigation, Autoplay, Controller } from 'swiper';\nimport { useCallback, useMemo, useRef, useState } from 'react';\n\nimport styles from './slider.module.scss';\n\nSwiperCore.use([Navigation, Autoplay, Controller]);\n\ninterface ISliderProps {\n items: any[];\n slidesPerView: any;\n showNavigation?: boolean;\n navPosition?: 'inset' | '';\n renderItem: (item: any, index: number) => any;\n viewItem?: (item: any, index: number) => void;\n loop?: boolean;\n asyncReady?: boolean;\n spaceBetween?: number;\n autoplay?: boolean;\n freeMode?: boolean;\n showCounter?: boolean;\n centeredSlides?: boolean;\n className?: string;\n classNamePrev?: string;\n classNameNext?: string;\n overflow?: boolean;\n}\n\nexport const Slider = ({\n items,\n slidesPerView,\n renderItem,\n viewItem = () => {},\n loop,\n asyncReady,\n showNavigation,\n navPosition = '',\n spaceBetween = 24,\n autoplay = true,\n freeMode,\n showCounter,\n centeredSlides,\n className,\n classNamePrev,\n classNameNext,\n overflow,\n}: ISliderProps) => {\n const navigationPrevRef = useRef(null);\n const navigationNextRef = useRef(null);\n const [index, setIndex] = useState(0);\n const [ready, setReady] = useState(asyncReady);\n\n const classNames = useMemo(\n () =>\n classnames(styles.slider, className, { [styles.sliderAutoLoop]: loop && slidesPerView === 'auto', [styles.ready]: ready, overflow }),\n [loop, slidesPerView, ready, className],\n );\n\n const onSlideItem = useCallback((indexItem) => {\n const findItem = items.find((_, index) => index === indexItem);\n viewItem(findItem, indexItem);\n }, [viewItem])\n\n return (\n <>\n <div className={classnames(styles.sliderContainer, 'slider')}>\n <div\n ref={navigationPrevRef}\n className={classnames(\n styles.buttonSlider,\n styles[`buttonSlider__prev_${navPosition}`],\n styles[`buttonSlider__prev`],\n {\n [styles[`buttonSlider__hidden`]]: !showNavigation || items?.length <= slidesPerView,\n },\n classNamePrev,\n )}\n >\n <ArrowPrev />\n </div>\n <div\n ref={navigationNextRef}\n className={classnames(\n styles.buttonSlider,\n styles[`buttonSlider__next_${navPosition}`],\n styles[`buttonSlider__next`],\n {\n [styles[`buttonSlider__hidden`]]: !showNavigation || items?.length <= slidesPerView,\n },\n classNameNext,\n )}\n >\n <ArrowNext />\n </div>\n <Swiper\n loop={(loop && items?.length > slidesPerView) || (loop && slidesPerView === 'auto')}\n speed={1000}\n preloadImages={true}\n loopedSlides={loop && slidesPerView === 'auto' ? items.length : null}\n centeredSlides={centeredSlides}\n freeMode={freeMode}\n onSlideChange={(sw) => {\n setIndex(sw.realIndex + 1);\n onSlideItem(sw.realIndex);\n }}\n autoplay={\n autoplay\n ? {\n delay: 10000,\n disableOnInteraction: true,\n }\n : undefined\n }\n navigation={{\n nextEl: navigationNextRef.current,\n prevEl: navigationPrevRef.current,\n }}\n onImagesReady={(swiper) => {\n swiper.slideTo(0, 0);\n setReady(true);\n }}\n onBeforeInit={(swiper) => {\n if (typeof swiper.params.navigation === 'boolean') {\n return;\n }\n\n swiper.params.navigation.prevEl = navigationPrevRef.current;\n swiper.params.navigation.nextEl = navigationNextRef.current;\n }}\n lazy={{\n checkInView: true,\n loadPrevNext: true,\n }}\n slidesPerView={slidesPerView}\n spaceBetween={spaceBetween}\n className={classNames}\n >\n {items?.map((item, index) => {\n let key: any = index;\n if (typeof item === 'string') {\n key = item;\n }\n\n return (\n <SwiperSlide\n key={key}\n className={classnames(styles.swiperSlide, { [styles.swiperSlideAuto]: slidesPerView === 'auto' })}\n >\n {renderItem(item, index)}\n </SwiperSlide>\n );\n })}\n </Swiper>\n {showCounter && (\n <div className={styles.sliderCounter}>\n {index}/{items?.length}\n </div>\n )}\n </div>\n </>\n );\n};\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSpoilerArrow(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 25 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.817 9.635A.857.857 0 105.7 10.937l6 5.142a.857.857 0 001.116 0l6-5.143A.857.857 0 1017.7 9.636L12.26 14.3 6.817 9.635z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgSpoilerArrow;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nfunction SvgSpoilerArrowActive(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.558 16.08a.857.857 0 11-1.116-1.302l6-5.143a.857.857 0 011.116 0l6 5.143a.857.857 0 11-1.116 1.301L12 11.415l-5.442 4.664z\",\n fill: \"#8B8B8B\"\n })));\n}\n\nexport default SvgSpoilerArrowActive;","import React from 'react';\n\nimport { PropsWithChildren, ReactNode, useCallback, useState } from 'react';\n\nimport { Icon } from '@shared/icon';\n\nimport SpoilerArrowIcon from '../icon/icons/spoiler-arrow.svg';\nimport SpoilerArrowActiveIcon from '../icon/icons/spoiler-arrow-active.svg';\n\nimport styles from './spoiler.module.scss';\n\ninterface ISpoilerProps {\n title: string | ReactNode;\n initialValue?: boolean;\n}\n\nexport const Spoiler = (props: PropsWithChildren<ISpoilerProps>) => {\n const [opened, setOpened] = useState(props.initialValue);\n\n const onChange = useCallback(() => {\n setOpened(prev => !prev);\n }, []);\n\n return (\n <div className={styles.spoiler}>\n <div className={styles.title} onClick={onChange.bind(null)}>\n {props.title}\n <Icon size=\"large\" variant=\"initial\" className={styles.arrow} icon={opened ? SpoilerArrowActiveIcon : SpoilerArrowIcon} />\n </div>\n {opened && props.children}\n </div>\n );\n};\n","import React from 'react';\n\nimport { Input, IInputProps } from '@shared/input';\nimport { Select } from '@shared/select';\nimport cn from 'classnames';\nimport { InputHTMLAttributes, ReactNode, useState } from 'react';\n\nimport styles from './stacked-input.module.scss';\n\nexport interface IStackedInputValue<T> {\n value: string;\n key: T;\n}\n\ntype IStackedInputProps<T> = {\n onChange: (val: string) => void;\n onSearch: (val: string) => void;\n onSelect: (key: T) => void;\n options: T[];\n option: T;\n className?: string;\n showClear?: boolean;\n placeholder?: string;\n labelPlaceholder?: string;\n mask?: IInputProps['mask'];\n value?: string\n onRenderOption?: (item: T) => ReactNode;\n} & Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'variant' | 'onChange'>;\n\nexport function StackedInput<T>({ onSelect, onRenderOption, options, option, ...props }: IStackedInputProps<T>) {\n const [key, setKey] = useState<T>(option || options[0]);\n\n const _onSelect = (key: T) => {\n setKey(key);\n onSelect(key);\n }\n\n return (\n <div className={cn(styles.stacked_input, props.className)}>\n <Select\n className={styles.stacked_input__select}\n size=\"large\"\n options={options}\n onChange={_onSelect}\n value={key}\n open={false}\n suffixIcon={null}\n\n onRenderOption={onRenderOption}\n dropdownMatchSelectWidth={false}\n stacked\n />\n <Input\n {...props}\n className={styles.stacked_input__input}\n labelPlaceholder={props.labelPlaceholder}\n mask={props.mask}\n showClear={props.showClear}\n placeholder={props.placeholder}\n />\n </div>\n );\n}\n","import React from 'react';\n\nimport { useCallback, useEffect, useState } from 'react';\n\nimport styles from './switch.module.scss';\nimport classNames from 'classnames';\nimport { Text } from '@shared/text';\n\ntype ISwitchProps = {\n value?: boolean;\n name?: string;\n title?: string;\n className?: string;\n onChange?: (value: boolean) => void;\n};\n\nexport const Switch = (props: ISwitchProps) => {\n const [value, setValue] = useState(props.value);\n\n useEffect(() => setValue(!!props.value), [props.value]);\n\n const onChange = useCallback(() => {\n setValue(!value);\n props.onChange && props.onChange(!value);\n }, [value, props.onChange]);\n\n return <div className={classNames(styles.switch, props.className, { [styles.active]: value })} onClick={onChange}>\n <div></div>\n <input name={props.name} type=\"checkbox\" checked={value} />\n {!!props.title && <Text size=\"large\">{props.title}</Text>}\n </div>\n}\n","import React from 'react';\n\nimport { Select as AntdSelect, SelectProps } from \"antd\";\nimport classNames from \"classnames\";\nimport { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { Icon } from '@shared/icon';\nimport ClearIcon from '../icon/icons/clear.svg';\n\nimport styles from './tag-box.module.scss';\n\nexport interface ITagBoxOption<T> {\n label: string;\n value: string | number | null | undefined;\n data?: T;\n}\n\nfunction formatItemToOption<T = any>(item: any, valueKey: string = 'value', labelKey: string = 'label', labels?: ITagBoxProps<T>['labels']) {\n if (['string', 'number', 'boolean'].includes(typeof item)) {\n return {\n label: labels ? labels[`${item}`] : item,\n value: item,\n data: item,\n } as ITagBoxOption<T>;\n }\n\n return {\n label: item[labelKey],\n value: item[valueKey],\n data: item,\n } as ITagBoxOption<T>;\n}\n\ntype ITagBoxProps<T> = Omit<SelectProps, 'options' | 'onChange'> & {\n options?: T[] | T;\n labels?: { [key: string]: string };\n error?: boolean;\n valueKey?: string;\n labelKey?: string;\n labelPlaceholder?: string;\n onChange?: (option: T[], options?: T[]) => void;\n onRenderOption?: (item: T) => React.ReactNode;\n popupClassName?: string;\n};\n\nexport function TagBox<T>({ labels, valueKey, labelKey, labelPlaceholder, onRenderOption, popupClassName, ...props }: ITagBoxProps<T>) {\n const [value, setValue] = useState<ITagBoxOption<T>[]>();\n\n const isEqual = (option) => props.value.some(v => v === option.key || v === option.props?.data || v === option.props.value || v[valueKey] === option.key || v[valueKey] === option.props.value);\n\n const options = useMemo(() => {\n let _options = null;\n if (Array.isArray(props.options)) {\n _options = props.options;\n }\n\n if (props.options) {\n _options = Object.values(props.options);\n }\n\n return _options?.map((option) => formatItemToOption(option, valueKey, labelKey, labels)) || [];\n }, [props.options, labels]);\n\n const _onRenderOptions = useCallback(\n (option: ITagBoxOption<T>, index: number) => {\n if (onRenderOption) {\n return <AntdSelect.Option option={option} data={option.data} key={`${option.value}${index}`} label={option.label} value={option.value}>{onRenderOption(option.data)}</AntdSelect.Option>;\n }\n\n return (\n <AntdSelect.Option option={option} data={option.data} key={option.value} label={option.label} value={option.value}>\n <div className={classNames({ [styles.hasLabel]: labelPlaceholder })}>\n {!!labelPlaceholder && <label>{labelPlaceholder}</label>}\n <div className={styles.optionText}>{option.label}</div>\n </div>\n </AntdSelect.Option>\n );\n },\n [onRenderOption, labelPlaceholder]\n );\n\n const _options: any[] = useMemo(() => (options || []).map(_onRenderOptions), [options]);\n\n const onChange = useCallback(\n (value: any, _option: any) => {\n setValue(value);\n props.onChange && props.onChange(_option?.map(i => i.data), options?.map((i) => i.data));\n },\n [props.onChange, _options, options]\n );\n\n useEffect(() => {\n let res = props.value && _options?.filter(isEqual);\n setValue(res?.map(i => i.props.value));\n }, [props.value, _options]);\n\n return (\n <AntdSelect\n {...props}\n mode=\"multiple\"\n value={value}\n options={undefined}\n popupClassName={popupClassName}\n notFoundContent={null}\n onChange={onChange}\n maxTagCount=\"responsive\"\n removeIcon={<Icon size=\"small\" icon={ClearIcon} />}\n menuItemSelectedIcon={null}\n placeholder={props.placeholder || labelPlaceholder}\n className={classNames('ant-tag-box-customize-input', props.className, styles.select, { 'select-error': props.error })}\n >\n {_options}\n </AntdSelect>\n );\n}\n","import React, { PropsWithChildren, useMemo, useCallback } from 'react';\nimport classnames from 'classnames';\n\nimport styles from './tag-button.module.scss';\n\nexport enum ETagButtonSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\nexport enum ETagButtonVariant {\n default = 'default',\n secondary = 'secondary',\n tumbler = 'tumbler',\n green = 'green',\n tab = 'tab',\n text = 'text',\n icons = 'icons',\n}\n\ninterface IButtonProps {\n variant?: keyof typeof ETagButtonVariant;\n size?: keyof typeof ETagButtonSize;\n icon?: any;\n disabled?: boolean;\n selected?: boolean;\n notChangeSelected?: boolean;\n shadow?: boolean;\n onClick: (e?: boolean) => void;\n}\n\nexport const TagButton = ({\n variant = ETagButtonVariant.default,\n size = ETagButtonSize.medium,\n disabled,\n selected,\n children,\n onClick,\n}: PropsWithChildren<IButtonProps>) => {\n const classNames = useMemo(\n () =>\n classnames(styles.button, styles[`button__${variant}`], styles[`button__${size}`], {\n [styles.selected]: selected,\n }),\n [variant, size, disabled, selected],\n );\n\n const _onClick = useCallback(() => {\n onClick();\n }, []);\n\n return (\n <div className={classNames} onClick={_onClick}>\n <span>{children}</span>\n </div>\n );\n};\n","import React from 'react';\n\nimport { useCallback, useEffect, useMemo, useState } from 'react';\nimport { ETagButtonSize, ETagButtonVariant, TagButton } from './tag-button';\n\nimport styles from './tag-button.module.scss';\nimport classNames from 'classnames';\n\ninterface ITagButtonGroupProps<T> {\n variant?: keyof typeof ETagButtonVariant;\n className?: string;\n labels?: { [key: string]: string };\n size?: keyof typeof ETagButtonSize;\n options: T[];\n onChange?: (value: T) => void;\n onRenderLabel?: (value: T) => void;\n value?: T;\n valueKey?: string;\n labelKey?: string;\n}\n\ninterface ITagOption<T> {\n label: string;\n value: string;\n data: T;\n}\n\nfunction formatItemToOption<T = any>(\n item: any,\n valueKey: string = 'value',\n labelKey: string = 'label',\n labels?: ITagButtonGroupProps<T>['labels']\n) {\n if (['string', 'number', 'boolean'].includes(typeof item)) {\n return {\n label: labels ? labels[`${item}`] : item,\n value: item,\n data: item,\n } as ITagOption<T>;\n }\n\n return {\n label: item[labelKey],\n value: item[valueKey],\n data: item,\n } as ITagOption<T>;\n}\n\nexport function TagButtonGroup<T>({\n labelKey = 'label',\n valueKey = 'value',\n labels,\n className,\n ...props\n}: ITagButtonGroupProps<T>) {\n const [value, setValue] = useState<ITagOption<T>>();\n\n const options = useMemo(() => {\n let _options = null;\n if (Array.isArray(props.options)) {\n _options = props.options;\n }\n\n if (props.options) {\n _options = Object.values(props.options);\n }\n\n return _options?.map((option) => formatItemToOption(option, valueKey, labelKey, labels)) || null;\n }, [props.options, labels]);\n\n const onChange = useCallback(\n (val: ITagOption<T>) => {\n const option = options?.find(\n (option) => option.value === val.value || option.data === val.value || option.value === val[valueKey]\n );\n setValue(option);\n props.onChange && props.onChange(option?.data);\n },\n [props.onChange]\n );\n\n useEffect(() => {\n const res =\n props.value &&\n options?.find(\n (option) =>\n option.value === props.value || option.data === props.value || option.value === props.value[valueKey]\n );\n\n setValue(res);\n }, [props.value, options]);\n\n return (\n <div className={classNames(styles.tagButtonGroup, className)}>\n {options.map((item) => (\n <TagButton\n key={item.value}\n variant={props.variant}\n size={props.size}\n selected={value === item}\n onClick={onChange.bind(null, item)}\n >\n {props.onRenderLabel ? props.onRenderLabel(item.data) : item.label}\n </TagButton>\n ))}\n </div>\n );\n}\n","import { useEffect, useRef } from 'react';\n\nexport function useCombinedRefs(...refs) {\n const targetRef = useRef();\n\n useEffect(() => {\n refs.forEach((ref) => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n}\n","import React, { useMemo, ChangeEvent, forwardRef, useRef, TextareaHTMLAttributes } from 'react';\nimport classnames from 'classnames';\nimport Loader from '../icon/icons/input-loader.svg';\nimport Clear from '../icon/icons/clear.svg';\n\nimport styles from './text-area.module.scss';\nimport { useState } from 'react';\nimport { useCallback } from 'react';\nimport { useEffect } from 'react';\nimport { useCombinedRefs } from '@shared/utils/combine-ref';\n\nconst observe = function (element, event, handler) {\n element.addEventListener(event, handler, false);\n};\n\nconst deobserve = function (element, event, handler) {\n element.removeEventListener(event, handler);\n};\n\nfunction init(text: HTMLTextAreaElement) {\n const resize = () => {\n text.style.height = 'auto';\n text.style.height = `${2 + text.scrollHeight}px`;\n };\n\n /* 0-timeout to get the already changed text */\n function delayedResize() {\n window.setTimeout(resize, 0);\n }\n\n observe(text, 'change', resize);\n observe(text, 'cut', delayedResize);\n observe(text, 'paste', delayedResize);\n observe(text, 'drop', delayedResize);\n observe(text, 'keydown', delayedResize);\n observe(text, 'input', resize);\n\n text.focus();\n // text.select();\n resize();\n\n return () => {\n deobserve(text, 'change', resize);\n deobserve(text, 'cut', delayedResize);\n deobserve(text, 'paste', delayedResize);\n deobserve(text, 'drop', delayedResize);\n deobserve(text, 'keydown', delayedResize);\n deobserve(text, 'input', resize);\n }\n}\n\nexport enum ETextAreaVariant {\n filled = 'filled',\n outlined = 'outlined',\n}\n\nexport enum ETextAreaSize {\n small = 'small',\n medium = 'medium',\n large = 'large',\n}\n\nexport enum ETextAreaBorder {\n circle = 'circle',\n normal = 'normal',\n}\n\ntype ITextAreaProps = {\n invalid?: boolean;\n icon?: any;\n variant?: keyof typeof ETextAreaVariant;\n size?: keyof typeof ETextAreaSize;\n border?: ETextAreaBorder;\n loading?: boolean;\n showClear?: boolean;\n adaptive?: boolean;\n placeholder?: string;\n onClear?: () => void;\n onSearch?: (e: any) => void;\n onChange?: (value: string, event?: ChangeEvent<HTMLTextAreaElement>) => void;\n} & Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'size' | 'variant' | 'onChange'>;\n\nexport const TextArea = forwardRef<HTMLTextAreaElement, ITextAreaProps>(\n (\n {\n onChange,\n onFocus = () => {},\n onBlur = () => {},\n onClear,\n onSearch,\n icon: Icon,\n name,\n required,\n disabled,\n value,\n placeholder,\n style,\n loading,\n showClear,\n invalid,\n autoFocus,\n size = ETextAreaSize.medium,\n variant = ETextAreaVariant.outlined,\n border = ETextAreaBorder.normal,\n adaptive,\n ...props\n }: ITextAreaProps,\n ref,\n ) => {\n const [_value, _setValue] = useState(value);\n\n const innerRef = useRef<HTMLTextAreaElement>();\n const combineRef: React.MutableRefObject<HTMLTextAreaElement> = useCombinedRefs(ref, innerRef);\n\n // useEffect(() => _setValue(value), [value]);\n\n useEffect(() => {\n if (autoFocus && combineRef.current) {\n combineRef.current.value = '';\n combineRef.current.value = `${value || ''}`;\n const unsubscribe = init(combineRef.current);\n\n return () => {\n unsubscribe();\n }\n }\n\n return () => {\n\n }\n }, [autoFocus, combineRef]);\n\n const classNames = useMemo(\n () =>\n classnames(\n styles.textarea,\n styles[`textarea__${variant}`],\n styles[`textarea__${size}`],\n styles[`textarea__border_${border}`],\n {\n [styles[`textarea__${size}_adaptive`]]: adaptive,\n [styles[`textarea__action_${size}`]]: Icon || loading || showClear,\n [styles[`textarea__actions_${size}`]]: (Icon || loading) && showClear,\n [styles.textarea__disabled]: disabled,\n },\n ),\n [variant, size, border, disabled, loading, showClear, adaptive],\n );\n\n const inputClassNames = useMemo(\n () =>\n classnames(props.className, {\n [styles.invalid]: invalid,\n }),\n [invalid, props.className],\n );\n\n const clearClassNames = useMemo(\n () =>\n classnames(styles.clear, styles[`clear__${variant}`], styles[`clear__${size}`], {\n [styles[`clear__action_${size}`]]: Icon || loading,\n }),\n [variant, size, Icon, loading],\n );\n\n const loaderClassNames = useMemo(\n () => classnames(styles.loader, styles[`loader__${variant}`], styles[`loader__${size}`]),\n [variant, size],\n );\n\n const iconClassNames = useMemo(() => classnames(styles.icon, styles[`icon__${variant}`], styles[`icon__${size}`]), [\n variant,\n size,\n ]);\n\n const _onChange = useCallback((e: ChangeEvent<HTMLTextAreaElement>) => {\n _setValue(e.target.value);\n if (onChange) {\n onChange(e.target.value, e);\n }\n }, []);\n\n const _onSearch = useCallback(\n () => {\n if (onSearch) {\n onSearch(_value);\n }\n },\n [onSearch],\n );\n\n const _onClear = useCallback(() => {\n _setValue(undefined);\n\n if (onClear) {\n onClear();\n }\n }, [onClear]);\n\n return (\n <div className={classNames}>\n <textarea\n {...props}\n className={inputClassNames}\n ref={combineRef}\n name={name}\n disabled={disabled}\n placeholder={placeholder}\n // value={_value || ''}\n onChange={_onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n required={required}\n style={style}\n />\n {showClear && _value && <Clear className={clearClassNames} onClick={_onClear} />}\n {Icon && !loading && <Icon className={iconClassNames} onClick={_onSearch} />}\n {loading && <Loader className={loaderClassNames} />}\n </div>\n );\n },\n);\n","import { CSSProperties } from \"react\";\n\nexport enum TooltipPosition {\n left = 'left',\n top = 'top',\n right = 'right',\n bottom = 'bottom',\n}\n\nexport const isCurrent = (e: Event, element: Element): any => {\n const find = (el: HTMLElement) => {\n if (el === element) {\n return el;\n }\n\n return el?.parentElement && find(el.parentElement);\n };\n\n if (find(e.target as HTMLElement)) {\n return true;\n }\n};\n\nexport const findTargetElement = (element: Element) => {\n let elem = element;\n\n const find = (child: Element) => {\n if (child.getAttribute('data-tooltip-target')) {\n elem = child;\n }\n\n if (child.children.length) {\n return Array.prototype.slice.call(child.children, 0).find(find);\n }\n };\n\n find(element);\n\n return elem;\n};\n\nexport const getScrollTopParent = (element: HTMLElement): HTMLElement | null => {\n if (element.scrollHeight > element.clientHeight) {\n return element;\n }\n\n if (element.parentElement) {\n return getScrollTopParent(element.parentElement);\n }\n\n return null;\n};\n\nexport const recalcArrowStyles = (\n targetElement: Element,\n tooltipProperties: CSSProperties,\n position: TooltipPosition\n): CSSProperties => {\n const { left, width } = targetElement.getBoundingClientRect();\n\n switch (position) {\n case TooltipPosition.top:\n return { left: left - (tooltipProperties.left as number) + (width / 2) };\n case TooltipPosition.bottom:\n return { left: left - (tooltipProperties.left as number) + (width / 2) };\n case TooltipPosition.left:\n return { };\n case TooltipPosition.right:\n return { };\n }\n};\n\nexport const recalcStyles = (\n targetElement: Element,\n tooltipElement: HTMLDivElement,\n position: TooltipPosition\n): CSSProperties => {\n const { top, left, width, height } = targetElement.getBoundingClientRect();\n const { width: tooltipWidth, height: tooltipHeight } = tooltipElement.getBoundingClientRect();\n\n let leftPosition = 0;\n if ([TooltipPosition.top, TooltipPosition.bottom].includes(position)) {\n leftPosition = left + width / 2 - tooltipWidth / 2;\n if (leftPosition + tooltipElement.offsetWidth > document.body.offsetWidth) {\n leftPosition -= leftPosition + tooltipElement.offsetWidth - document.body.offsetWidth;\n }\n }\n\n switch (position) {\n case TooltipPosition.top:\n return { top: top - tooltipHeight, left: leftPosition, opacity: 1 };\n case TooltipPosition.bottom:\n return { top: top + height + tooltipHeight, left: leftPosition, opacity: 1 };\n case TooltipPosition.left:\n return { top: top + height / 2 - tooltipHeight / 2, left: left - tooltipWidth, opacity: 1 };\n case TooltipPosition.right:\n return { top: top + height / 2 - tooltipHeight / 2, left: left + width, opacity: 1 };\n }\n};\n","import classnames from 'classnames';\nimport React, { PropsWithChildren, useMemo, useState } from 'react';\n\nimport styles from './text-spoiler.module.scss';\nimport { ELinkVariant, Link } from '@shared/link';\nimport { ELinkSize } from '@shared/link/link';\n\nexport const TextSpoiler = (props: PropsWithChildren<{}>) => {\n const [isOpen, setOpen] = useState(false);\n\n const classNames = useMemo(\n () =>\n classnames(styles.textSpoiler, {\n [styles.openText]: isOpen,\n }),\n [isOpen],\n );\n\n return (\n <div>\n <div className={classNames}>{props.children}</div>\n <Link bold size={ELinkSize.large} variant={ELinkVariant.action} onClick={() => setOpen(!isOpen)}>\n {isOpen ? 'Свернуть' : 'Читать далее'}\n </Link>\n </div>\n );\n};\n","import { createPortal } from 'react-dom';\nimport classNames from 'classnames';\nimport React, {\n CSSProperties,\n MouseEvent as ReactMouseEvent,\n PropsWithChildren,\n TouchEvent as ReactTouchEvent,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\n\nimport styles from './tooltip.module.scss';\nimport { useMedia } from '@shared/media';\nimport { TooltipPosition, findTargetElement, getScrollTopParent, isCurrent, recalcArrowStyles, recalcStyles } from './tooltip.utils';\n\ntype ITootipProps = {\n title: any;\n className?: string;\n onOpenChange?: (val: boolean) => void;\n placement?: keyof typeof TooltipPosition;\n trigger?: any;\n};\n\nexport const Tooltip = ({ placement = 'top', ...props }: PropsWithChildren<ITootipProps>) => {\n const media = useMedia();\n\n const ref = useRef<HTMLDivElement>(null);\n const refTooltip = useRef<HTMLDivElement>(null);\n const refArrow = useRef<HTMLDivElement>(null);\n\n const [opened, setOpened] = useState<boolean>(false);\n const [stylesTooltip, setStylesTooltip] = useState<CSSProperties>();\n const [stylesArrow, setStylesArrow] = useState<CSSProperties>();\n\n const scrollElement = useRef<HTMLElement>(null);\n\n const recalcPosition = useCallback(() => {\n if (!refTooltip.current || !ref.current) return;\n\n const targetElement = findTargetElement(ref.current);\n const res = recalcStyles(targetElement, refTooltip.current, placement as TooltipPosition);\n setStylesTooltip(res);\n setStylesArrow(recalcArrowStyles(targetElement, res, placement as TooltipPosition));\n }, []);\n\n useEffect(() => {\n return () => {\n setOpened(false);\n };\n }, []);\n\n useEffect(() => {\n recalcPosition();\n }, [props.title]);\n\n const onTouchStart = useCallback((e: ReactTouchEvent) => {\n e.stopPropagation();\n return;\n }, []);\n\n const onClose = useCallback((e?: Event | ReactMouseEvent) => {\n if (e instanceof Event && isCurrent(e, ref.current)) {\n return;\n }\n\n setOpened(false);\n setStylesTooltip(null);\n\n scrollElement.current && scrollElement.current.parentElement.removeEventListener('scroll', onClose);\n document.removeEventListener('scroll', onClose);\n document.body.removeEventListener('touchstart', onClose);\n document.body.removeEventListener('click', onClose);\n }, []);\n\n const onOpen = useCallback(\n (e: ReactMouseEvent) => {\n e.stopPropagation();\n if (opened) {\n media.mobile && onClose();\n return;\n }\n\n setOpened(true);\n props.onOpenChange && props.onOpenChange(true);\n\n setTimeout(() => {\n recalcPosition();\n\n const element = getScrollTopParent(ref.current);\n if (element) {\n scrollElement.current = element;\n element.parentElement.addEventListener('scroll', onClose);\n document.addEventListener('scroll', onClose);\n document.body.addEventListener('click', onClose);\n document.body.addEventListener('touchstart', onClose);\n }\n }, 0);\n },\n [props.onOpenChange, opened]\n );\n\n const title = useMemo(\n () => (\n <div ref={refTooltip} style={stylesTooltip} className={classNames(styles.tooltip, styles[placement])}>\n {props.title}\n <div ref={refArrow} style={stylesArrow} className={styles.arrow}></div>\n </div>\n ),\n [stylesTooltip, stylesArrow, props.title]\n );\n\n return (\n <div\n ref={ref}\n className={classNames(props.className)}\n onMouseOver={!media.mobile ? onOpen : null}\n onClick={media.mobile ? onOpen : null}\n onMouseLeave={!media.mobile ? onClose : null}\n onTouchStart={media.mobile ? onTouchStart : null}\n // onTouch={media.mobile ? onClose : null}\n >\n {props.children}\n {opened && props.title && createPortal(title, document.body)}\n </div>\n );\n\n // return <AntTooltip ref={ref} color=\"#212121\" {...props} overlayClassName=\"ant-tooltip-customize\" />;\n};\n","import React from 'react';\n\nimport { Text } from '@shared/text';\nimport { Upload as AntdUpload, UploadFile, UploadProps } from 'antd';\nimport { UploadChangeParam } from 'antd/lib/upload';\nimport { useCallback, useEffect, useState } from 'react';\n\nimport styles from './upload.module.scss';\n\ntype IUploadProps = UploadProps & {\n onUpload?: (file: File) => Promise<string>;\n onChange?: (link: string) => void;\n renderName?: (link: string) => string;\n path?: string;\n value: string;\n};\n\nexport const Upload = ({ onUpload, onChange, renderName, path = '', value, ...props }: IUploadProps) => {\n const [file, setFile] = useState<UploadFile[]>();\n\n useEffect(() => {\n setFile(value ? [\n {\n uid: '0',\n name: renderName ? renderName(value) : value,\n status: 'done',\n url: value,\n thumbUrl: value,\n },\n ] : undefined);\n }, [value]);\n\n const _onChange = useCallback((info: UploadChangeParam<UploadFile<any>>) => {\n const { file } = info;\n\n onChange && onChange(path ? `${path}${file.name}` : URL.createObjectURL(file.originFileObj as any));\n }, []);\n\n const onUploadFile = useCallback(async (file: File) => {\n let link = path ? `${path}${file.name}` : URL.createObjectURL(file);\n\n setFile([\n {\n uid: '0',\n name: file.name,\n status: 'uploading',\n url: link,\n thumbUrl: link,\n },\n ]);\n\n try {\n if (onUpload) {\n link = await onUpload(file);\n }\n\n setFile([\n {\n uid: '0',\n name: file.name,\n status: 'success',\n url: link,\n thumbUrl: link,\n },\n ]);\n } catch (e) {\n setFile([\n {\n uid: '0',\n name: file.name,\n status: 'error',\n url: link,\n thumbUrl: link,\n },\n ]);\n }\n\n return file.name;\n }, []);\n\n return (\n <AntdUpload.Dragger\n {...props}\n showUploadList={{ showRemoveIcon: false }}\n maxCount={1}\n className={styles.upload}\n action={onUploadFile}\n customRequest={() => {}}\n onChange={_onChange}\n fileList={file}\n listType=\"picture\"\n accept=\"image/png, image/jpeg\"\n >\n <Text bold>Выберите файл или перетащите сюда</Text>\n </AntdUpload.Dragger>\n );\n};\n","export const appleDetect = () => {\n try {\n return [\n 'iPad Simulator',\n 'iPhone Simulator',\n 'iPod Simulator',\n 'iPad',\n 'iPhone',\n 'iPod'\n ].includes(navigator.platform)\n // iPad on iOS 13 detection\n || (navigator.userAgent.includes(\"Mac\") && \"ontouchend\" in document)\n } catch (e) {\n return false;\n }\n}\n","const locale = 'ru-RU';\nconst units: { [key: string]: Intl.DateTimeFormatOptions } = {\n YYYY: {\n year: 'numeric',\n },\n YY: {\n year: '2-digit',\n },\n M: {\n month: 'numeric',\n },\n MM: {\n month: '2-digit',\n },\n MMM: {\n month: 'short',\n },\n MMMM: {\n month: 'long',\n },\n MMMMM: {\n month: 'long',\n },\n D: {\n day: 'numeric',\n },\n DD: {\n day: '2-digit',\n },\n d: {\n weekday: 'short',\n },\n dd: {\n weekday: 'long',\n },\n hh: {\n hour: '2-digit',\n },\n mm: {\n minute: '2-digit',\n },\n ss: {\n second: '2-digit',\n },\n};\n\ninterface IDateFormatOptions {\n plural?: boolean;\n utc?: boolean;\n}\n\nexport const getDate = (value: string = '') => {\n return new Date(value.replaceAll('_', 'Ё').split('.').reverse().join('/'));\n}\n\nexport const dateFormat = (value: any, format: string, { plural, utc }: IDateFormatOptions = { utc: true, plural: true }) => {\n let _value = new Date(value);\n\n if ((!value && value !== 0) || _value.getTime() !== _value.getTime()) {\n return null;\n }\n\n if (utc) {\n const userTimezoneOffset = _value.getTimezoneOffset() * 60000;\n _value = new Date(_value.getTime() + userTimezoneOffset);\n }\n\n const dateUnits = [];\n const dateItems = format.split(/\\, | \\- | |:|\\-|\\.|_/);\n const delimeters = format.split(/[DMYdhms]/).filter(Boolean);\n let stringDate = '';\n\n dateItems.forEach((item) => {\n let unit: string;\n\n if (/hh|mm|ss/.test(item)) {\n unit = _value.toLocaleTimeString(locale, units[item]);\n if (unit.length === 1) {\n unit = `0${unit}`;\n }\n } else if (plural && item === 'MMMM') {\n const options = Object.assign({ day: 'numeric' }, units[item]);\n unit = _value.toLocaleDateString(locale, options).split(' ')[1];\n } else if (item === 'MMM') {\n unit = _value.toLocaleDateString(locale, units[item]);\n unit = unit.slice(0, 3);\n } else if (item === 'MMMMM') {\n const options = Object.assign({ day: 'numeric' }, units[item]);\n unit = _value.toLocaleDateString(locale, options).split(' ')[1].toUpperCase();\n } else if (item === 'd') {\n unit = _value.toLocaleString(locale, units[item]);\n unit = unit.replace(/^./, (c) => c.toUpperCase());\n } else {\n unit = _value.toLocaleString(locale, units[item]);\n }\n\n // if (index === 0) {\n // unit = unit.toCapitalize();\n // }\n\n dateUnits.push(unit);\n });\n\n dateUnits.forEach((item, i) => {\n stringDate += item + (delimeters[i] ? delimeters[i] : '');\n });\n\n return stringDate;\n};\n","export const dateWithoutTimezone = (date: Date) => {\n return new Date(date.getTime() - date.getTimezoneOffset() * 60000)\n}\n\nexport const dateWithTimezone = (date: Date) => {\n return new Date(date.getTime() + date.getTimezoneOffset() * 60000)\n}\n","export const pluralize = (val: number, plurals: string[]): string => {\n if (val % 10 === 0 || (val % 10 > 4 && val % 10 < 10) || (val % 100 > 4 && val % 100 < 20)) {\n return plurals[2];\n }\n\n if (val % 10 > 1 && val % 10 < 5) {\n return plurals[1];\n }\n\n if (val % 10 === 1) {\n return plurals[0];\n }\n\n return '';\n};\n","export const priceFormat = (value: number | string) => {\n const price = Intl.NumberFormat('ru-RU', {\n currency: 'RUB',\n style: 'currency',\n minimumFractionDigits: 0,\n }).formatToParts(Math.ceil((+value || 0) / 100));\n\n const currencySign = price.find((cur) => cur.type === 'currency').value;\n\n return (\n price\n .map(({ type, value }) => {\n switch (type) {\n case 'currency':\n return null;\n default:\n return value;\n }\n })\n .filter(Boolean)\n .slice(0, -1)\n .reduce((val, part) => val + part, '') +\n ' ' +\n currencySign\n );\n};\n","const PREPOSITIONS = [\n 'в',\n 'во',\n 'без',\n 'до',\n 'из',\n 'к',\n 'ко',\n 'на',\n 'по',\n 'о',\n 'от',\n 'при',\n 'с',\n 'со',\n 'у',\n 'не',\n 'за',\n 'над',\n 'для',\n 'об',\n 'под',\n 'про',\n 'и',\n 'а',\n 'но',\n 'да',\n 'или',\n 'ли',\n 'бы',\n 'то',\n 'что',\n 'как',\n 'я',\n 'он',\n 'мы',\n 'они',\n 'ни',\n 'же',\n 'вы',\n 'им',\n '-',\n];\n\nconst ESCAPE = '&nbsp;';\nconst DASH = '&mdash;';\n\nconst replacement = (str) => str.slice(0, -1) + ESCAPE;\n\nconst decorate = (value: string) => {\n const regex = new RegExp(\n PREPOSITIONS.map((x) => {\n if (x === '-') {\n x = DASH;\n }\n return ' ' + x + ' ';\n }).join('|'),\n 'gi',\n );\n const formattedText = value.replace(regex, replacement);\n return formattedText;\n};\n\nexport const textSanitize = (value: string): string => {\n if (!value) {\n return value;\n }\n return decorate(value);\n};\n","const UNITS = [\n {\n label: 'ч',\n value: 60 * 60 * 1000,\n },\n {\n label: 'мин',\n value: 60 * 1000,\n },\n];\n\nexport const timeLeftMinutes = (time: number) => {\n return timeLeft(time * 1000 * 60);\n};\n\nexport const timeLeft = (time: number) => {\n let str = '';\n\n UNITS.forEach((unit) => {\n str += `${Math.floor(time / unit.value)} ${unit.label} `;\n time = time - Math.floor(time / unit.value) * unit.value;\n });\n\n return str;\n};\n","export { AutoComplete } from './components/auto-complete';\nexport { Breadcrumbs } from './components/breadcrumbs';\nexport { Button } from './components/button';\nexport { Checkbox } from './components/checkbox';\nexport { Counter } from './components/counter';\nexport { DatePicker } from './components/date-picker';\nexport { Divider } from './components/divider';\nexport { Dropdown } from './components/dropdown';\nexport { Form } from './components/form';\nexport { FormControl } from './components/form-control';\nexport { Heading } from './components/heading';\nexport { Icon } from './components/icon';\nexport { Input } from './components/input';\nexport { Link } from './components/link';\nexport { Loader } from './components/loader';\nexport { LoaderLine } from './components/loader-line';\nexport { MediaProvider, useMedia, withMedia, Media } from './components/media';\nexport type { IMediaMatches } from './components/media';\n\nexport { Menu } from './components/menu';\nexport { Modal, ModalProvider, useModal } from './components/modal';\nexport type { PropsWithModal } from './components/modal';\n\nexport { Radio } from './components/radio';\nexport { RangePicker } from './components/range-picker';\nexport { Select } from './components/select';\nexport { Selector } from './components/selector';\nexport { Skeleton } from './components/skeleton';\nexport { Slider } from './components/slider';\nexport { Spoiler } from './components/spoiler';\nexport { StackedInput } from './components/stacked-input';\nexport { Switch } from './components/switch';\nexport { TagBox } from './components/tag-box';\nexport { TagButton, TagButtonGroup } from './components/tag-button';\nexport { Text } from './components/text';\nexport { TextArea } from './components/text-area';\nexport { TextSpoiler } from './components/text-spoiler';\nexport { Tooltip } from './components/tooltip';\nexport { Upload } from './components/upload';\nexport * from './components/utils';\n"],"sourceRoot":""}