kui-complex 0.0.79 → 0.0.82

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.
Files changed (433) hide show
  1. package/AutocompleteOption/cjs/index.js +50 -0
  2. package/AutocompleteOption/cjs/index.js.map +1 -0
  3. package/AutocompleteOption/cjs/package.json +9 -0
  4. package/AutocompleteOption/index.d.ts +7 -0
  5. package/AutocompleteOption/index.js +44 -0
  6. package/AutocompleteOption/index.js.map +1 -0
  7. package/AutocompleteOption/package.json +9 -0
  8. package/Avatar/cjs/index.js +92 -0
  9. package/Avatar/cjs/index.js.map +1 -0
  10. package/Avatar/cjs/package.json +9 -0
  11. package/Avatar/index.d.ts +12 -0
  12. package/Avatar/index.js +86 -0
  13. package/Avatar/index.js.map +1 -0
  14. package/Avatar/package.json +9 -0
  15. package/ButtonSelect/cjs/index.js +252 -0
  16. package/ButtonSelect/cjs/index.js.map +1 -0
  17. package/ButtonSelect/cjs/package.json +9 -0
  18. package/ButtonSelect/index.d.ts +24 -0
  19. package/ButtonSelect/index.js +228 -0
  20. package/ButtonSelect/index.js.map +1 -0
  21. package/ButtonSelect/package.json +9 -0
  22. package/ButtonTab/cjs/index.js +58 -0
  23. package/ButtonTab/cjs/index.js.map +1 -0
  24. package/ButtonTab/cjs/package.json +9 -0
  25. package/ButtonTab/index.d.ts +14 -0
  26. package/ButtonTab/index.js +51 -0
  27. package/ButtonTab/index.js.map +1 -0
  28. package/ButtonTab/package.json +9 -0
  29. package/ButtonsPanel/cjs/index.js +133 -0
  30. package/ButtonsPanel/cjs/index.js.map +1 -0
  31. package/ButtonsPanel/cjs/package.json +9 -0
  32. package/ButtonsPanel/index.d.ts +19 -0
  33. package/ButtonsPanel/index.js +108 -0
  34. package/ButtonsPanel/index.js.map +1 -0
  35. package/ButtonsPanel/package.json +9 -0
  36. package/CalendarHeaderWithSelect/cjs/index.js +287 -0
  37. package/CalendarHeaderWithSelect/cjs/index.js.map +1 -0
  38. package/CalendarHeaderWithSelect/cjs/package.json +10 -0
  39. package/CalendarHeaderWithSelect/index.d.ts +21 -0
  40. package/CalendarHeaderWithSelect/index.js +263 -0
  41. package/CalendarHeaderWithSelect/index.js.map +1 -0
  42. package/CalendarHeaderWithSelect/package.json +10 -0
  43. package/CalendarStandardContainer/cjs/index.js +63 -0
  44. package/CalendarStandardContainer/cjs/index.js.map +1 -0
  45. package/CalendarStandardContainer/cjs/package.json +9 -0
  46. package/CalendarStandardContainer/index.d.ts +13 -0
  47. package/CalendarStandardContainer/index.js +57 -0
  48. package/CalendarStandardContainer/index.js.map +1 -0
  49. package/CalendarStandardContainer/package.json +9 -0
  50. package/CalendarStandardHeader/cjs/index.js +57 -0
  51. package/CalendarStandardHeader/cjs/index.js.map +1 -0
  52. package/CalendarStandardHeader/cjs/package.json +10 -0
  53. package/CalendarStandardHeader/index.d.ts +13 -0
  54. package/CalendarStandardHeader/index.js +50 -0
  55. package/CalendarStandardHeader/index.js.map +1 -0
  56. package/CalendarStandardHeader/package.json +10 -0
  57. package/CheckboxGroupWithTitle/cjs/index.js +81 -0
  58. package/CheckboxGroupWithTitle/cjs/index.js.map +1 -0
  59. package/CheckboxGroupWithTitle/cjs/package.json +10 -0
  60. package/CheckboxGroupWithTitle/index.d.ts +15 -0
  61. package/CheckboxGroupWithTitle/index.js +75 -0
  62. package/CheckboxGroupWithTitle/index.js.map +1 -0
  63. package/CheckboxGroupWithTitle/package.json +10 -0
  64. package/CheckboxWithController/cjs/index.js +63 -0
  65. package/CheckboxWithController/cjs/index.js.map +1 -0
  66. package/CheckboxWithController/cjs/package.json +10 -0
  67. package/CheckboxWithController/index.d.ts +5 -0
  68. package/CheckboxWithController/index.js +61 -0
  69. package/CheckboxWithController/index.js.map +1 -0
  70. package/CheckboxWithController/package.json +10 -0
  71. package/DependentInput/cjs/index.js +81 -0
  72. package/DependentInput/cjs/index.js.map +1 -0
  73. package/DependentInput/cjs/package.json +10 -0
  74. package/DependentInput/index.d.ts +3 -0
  75. package/DependentInput/index.js +79 -0
  76. package/DependentInput/index.js.map +1 -0
  77. package/DependentInput/package.json +10 -0
  78. package/DesktopInputWithMonthPicker/cjs/index.js +102 -0
  79. package/DesktopInputWithMonthPicker/cjs/index.js.map +1 -0
  80. package/DesktopInputWithMonthPicker/cjs/package.json +11 -0
  81. package/DesktopInputWithMonthPicker/index.d.ts +5 -0
  82. package/DesktopInputWithMonthPicker/index.js +95 -0
  83. package/DesktopInputWithMonthPicker/index.js.map +1 -0
  84. package/DesktopInputWithMonthPicker/package.json +11 -0
  85. package/DesktopMenuPanel/cjs/index.js +102 -0
  86. package/DesktopMenuPanel/cjs/index.js.map +1 -0
  87. package/DesktopMenuPanel/cjs/package.json +10 -0
  88. package/DesktopMenuPanel/index.d.ts +18 -0
  89. package/DesktopMenuPanel/index.js +96 -0
  90. package/DesktopMenuPanel/index.js.map +1 -0
  91. package/DesktopMenuPanel/package.json +10 -0
  92. package/FileItem/cjs/index.js +164 -0
  93. package/FileItem/cjs/index.js.map +1 -0
  94. package/FileItem/cjs/package.json +10 -0
  95. package/FileItem/index.d.ts +46 -0
  96. package/FileItem/index.js +158 -0
  97. package/FileItem/index.js.map +1 -0
  98. package/FileItem/package.json +10 -0
  99. package/InputDropdown/cjs/index.js +116 -0
  100. package/InputDropdown/cjs/index.js.map +1 -0
  101. package/InputDropdown/cjs/package.json +9 -0
  102. package/InputDropdown/index.d.ts +13 -0
  103. package/InputDropdown/index.js +110 -0
  104. package/InputDropdown/index.js.map +1 -0
  105. package/InputDropdown/package.json +9 -0
  106. package/InputFile/cjs/index.js +279 -0
  107. package/InputFile/cjs/index.js.map +1 -0
  108. package/InputFile/cjs/package.json +11 -0
  109. package/InputFile/index.d.ts +22 -0
  110. package/InputFile/index.js +273 -0
  111. package/InputFile/index.js.map +1 -0
  112. package/InputFile/package.json +11 -0
  113. package/InputForDatepicker/cjs/index.js +73 -0
  114. package/InputForDatepicker/cjs/index.js.map +1 -0
  115. package/InputForDatepicker/cjs/package.json +9 -0
  116. package/InputForDatepicker/index.d.ts +5 -0
  117. package/InputForDatepicker/index.js +67 -0
  118. package/InputForDatepicker/index.js.map +1 -0
  119. package/InputForDatepicker/package.json +9 -0
  120. package/InputMultiSelect/cjs/index.js +282 -0
  121. package/InputMultiSelect/cjs/index.js.map +1 -0
  122. package/InputMultiSelect/cjs/package.json +10 -0
  123. package/InputMultiSelect/index.d.ts +24 -0
  124. package/InputMultiSelect/index.js +258 -0
  125. package/InputMultiSelect/index.js.map +1 -0
  126. package/InputMultiSelect/package.json +10 -0
  127. package/InputMultiSelectOption/cjs/index.js +60 -0
  128. package/InputMultiSelectOption/cjs/index.js.map +1 -0
  129. package/InputMultiSelectOption/cjs/package.json +9 -0
  130. package/InputMultiSelectOption/index.d.ts +14 -0
  131. package/InputMultiSelectOption/index.js +54 -0
  132. package/InputMultiSelectOption/index.js.map +1 -0
  133. package/InputMultiSelectOption/package.json +9 -0
  134. package/InputPassword/cjs/index.js +176 -0
  135. package/InputPassword/cjs/index.js.map +1 -0
  136. package/InputPassword/cjs/package.json +10 -0
  137. package/InputPassword/index.d.ts +13 -0
  138. package/InputPassword/index.js +170 -0
  139. package/InputPassword/index.js.map +1 -0
  140. package/InputPassword/package.json +10 -0
  141. package/InputPhoneWithForm/cjs/index.js +134 -0
  142. package/InputPhoneWithForm/cjs/index.js.map +1 -0
  143. package/InputPhoneWithForm/cjs/package.json +10 -0
  144. package/InputPhoneWithForm/index.d.ts +14 -0
  145. package/InputPhoneWithForm/index.js +113 -0
  146. package/InputPhoneWithForm/index.js.map +1 -0
  147. package/InputPhoneWithForm/package.json +10 -0
  148. package/InputSelect/cjs/index.js +244 -0
  149. package/InputSelect/cjs/index.js.map +1 -0
  150. package/InputSelect/cjs/package.json +9 -0
  151. package/InputSelect/index.d.ts +5 -0
  152. package/InputSelect/index.js +220 -0
  153. package/InputSelect/index.js.map +1 -0
  154. package/InputSelect/package.json +9 -0
  155. package/InputSelectBase/cjs/index.js +216 -0
  156. package/InputSelectBase/cjs/index.js.map +1 -0
  157. package/InputSelectBase/cjs/package.json +9 -0
  158. package/InputSelectBase/index.d.ts +25 -0
  159. package/InputSelectBase/index.js +192 -0
  160. package/InputSelectBase/index.js.map +1 -0
  161. package/InputSelectBase/package.json +9 -0
  162. package/InputSelectDropdown/cjs/index.js +135 -0
  163. package/InputSelectDropdown/cjs/index.js.map +1 -0
  164. package/InputSelectDropdown/cjs/package.json +9 -0
  165. package/InputSelectDropdown/index.d.ts +23 -0
  166. package/InputSelectDropdown/index.js +129 -0
  167. package/InputSelectDropdown/index.js.map +1 -0
  168. package/InputSelectDropdown/package.json +9 -0
  169. package/InputSelectOption/cjs/index.js +53 -0
  170. package/InputSelectOption/cjs/index.js.map +1 -0
  171. package/InputSelectOption/cjs/package.json +9 -0
  172. package/InputSelectOption/index.d.ts +14 -0
  173. package/InputSelectOption/index.js +47 -0
  174. package/InputSelectOption/index.js.map +1 -0
  175. package/InputSelectOption/package.json +9 -0
  176. package/InputSelectWithController/cjs/index.js +268 -0
  177. package/InputSelectWithController/cjs/index.js.map +1 -0
  178. package/InputSelectWithController/cjs/package.json +10 -0
  179. package/InputSelectWithController/index.d.ts +5 -0
  180. package/InputSelectWithController/index.js +244 -0
  181. package/InputSelectWithController/index.js.map +1 -0
  182. package/InputSelectWithController/package.json +10 -0
  183. package/InputTextAreaMobile/cjs/index.js +86 -0
  184. package/InputTextAreaMobile/cjs/index.js.map +1 -0
  185. package/InputTextAreaMobile/cjs/package.json +10 -0
  186. package/InputTextAreaMobile/index.d.ts +5 -0
  187. package/InputTextAreaMobile/index.js +80 -0
  188. package/InputTextAreaMobile/index.js.map +1 -0
  189. package/InputTextAreaMobile/package.json +10 -0
  190. package/InputWithAddressAutocomplete/cjs/index.js +280 -0
  191. package/InputWithAddressAutocomplete/cjs/index.js.map +1 -0
  192. package/InputWithAddressAutocomplete/cjs/package.json +11 -0
  193. package/InputWithAddressAutocomplete/index.d.ts +36 -0
  194. package/InputWithAddressAutocomplete/index.js +274 -0
  195. package/InputWithAddressAutocomplete/index.js.map +1 -0
  196. package/InputWithAddressAutocomplete/package.json +11 -0
  197. package/InputWithAutocomplete/cjs/index.js +310 -0
  198. package/InputWithAutocomplete/cjs/index.js.map +1 -0
  199. package/InputWithAutocomplete/cjs/package.json +10 -0
  200. package/InputWithAutocomplete/index.d.ts +27 -0
  201. package/InputWithAutocomplete/index.js +286 -0
  202. package/InputWithAutocomplete/index.js.map +1 -0
  203. package/InputWithAutocomplete/package.json +10 -0
  204. package/InputWithController/cjs/index.js +71 -0
  205. package/InputWithController/cjs/index.js.map +1 -0
  206. package/InputWithController/cjs/package.json +10 -0
  207. package/InputWithController/index.d.ts +13 -0
  208. package/InputWithController/index.js +69 -0
  209. package/InputWithController/index.js.map +1 -0
  210. package/InputWithController/package.json +10 -0
  211. package/InputWithDatePicker/cjs/index.js +424 -0
  212. package/InputWithDatePicker/cjs/index.js.map +1 -0
  213. package/InputWithDatePicker/cjs/package.json +13 -0
  214. package/InputWithDatePicker/index.d.ts +24 -0
  215. package/InputWithDatePicker/index.js +398 -0
  216. package/InputWithDatePicker/index.js.map +1 -0
  217. package/InputWithDatePicker/package.json +13 -0
  218. package/InputWithMask/cjs/index.js +69 -0
  219. package/InputWithMask/cjs/index.js.map +1 -0
  220. package/InputWithMask/cjs/package.json +10 -0
  221. package/InputWithMask/index.d.ts +13 -0
  222. package/InputWithMask/index.js +67 -0
  223. package/InputWithMask/index.js.map +1 -0
  224. package/InputWithMask/package.json +10 -0
  225. package/InputWithMonthPicker/cjs/index.js +195 -0
  226. package/InputWithMonthPicker/cjs/index.js.map +1 -0
  227. package/InputWithMonthPicker/cjs/package.json +12 -0
  228. package/InputWithMonthPicker/index.d.ts +5 -0
  229. package/InputWithMonthPicker/index.js +187 -0
  230. package/InputWithMonthPicker/index.js.map +1 -0
  231. package/InputWithMonthPicker/package.json +12 -0
  232. package/Link/cjs/index.js +97 -0
  233. package/Link/cjs/index.js.map +1 -0
  234. package/Link/cjs/package.json +10 -0
  235. package/Link/index.d.ts +13 -0
  236. package/Link/index.js +91 -0
  237. package/Link/index.js.map +1 -0
  238. package/Link/package.json +10 -0
  239. package/Loading/cjs/index.js +72 -0
  240. package/Loading/cjs/index.js.map +1 -0
  241. package/Loading/cjs/package.json +9 -0
  242. package/Loading/index.d.ts +7 -0
  243. package/Loading/index.js +66 -0
  244. package/Loading/index.js.map +1 -0
  245. package/Loading/package.json +9 -0
  246. package/MapWrapper/cjs/index.js +117 -0
  247. package/MapWrapper/cjs/index.js.map +1 -0
  248. package/MapWrapper/cjs/package.json +10 -0
  249. package/MapWrapper/index.d.ts +9 -0
  250. package/MapWrapper/index.js +111 -0
  251. package/MapWrapper/index.js.map +1 -0
  252. package/MapWrapper/package.json +10 -0
  253. package/MenuItem/cjs/index.js +83 -0
  254. package/MenuItem/cjs/index.js.map +1 -0
  255. package/MenuItem/cjs/package.json +10 -0
  256. package/MenuItem/index.d.ts +17 -0
  257. package/MenuItem/index.js +77 -0
  258. package/MenuItem/index.js.map +1 -0
  259. package/MenuItem/package.json +10 -0
  260. package/MenuPanel/cjs/index.js +194 -0
  261. package/MenuPanel/cjs/index.js.map +1 -0
  262. package/MenuPanel/cjs/package.json +13 -0
  263. package/MenuPanel/index.d.ts +18 -0
  264. package/MenuPanel/index.js +168 -0
  265. package/MenuPanel/index.js.map +1 -0
  266. package/MenuPanel/package.json +13 -0
  267. package/MobileInputWithMonthPicker/cjs/index.js +182 -0
  268. package/MobileInputWithMonthPicker/cjs/index.js.map +1 -0
  269. package/MobileInputWithMonthPicker/cjs/package.json +12 -0
  270. package/MobileInputWithMonthPicker/index.d.ts +5 -0
  271. package/MobileInputWithMonthPicker/index.js +174 -0
  272. package/MobileInputWithMonthPicker/index.js.map +1 -0
  273. package/MobileInputWithMonthPicker/package.json +12 -0
  274. package/MobileMenuPanel/cjs/index.js +113 -0
  275. package/MobileMenuPanel/cjs/index.js.map +1 -0
  276. package/MobileMenuPanel/cjs/package.json +11 -0
  277. package/MobileMenuPanel/index.d.ts +18 -0
  278. package/MobileMenuPanel/index.js +106 -0
  279. package/MobileMenuPanel/index.js.map +1 -0
  280. package/MobileMenuPanel/package.json +11 -0
  281. package/ModalFooter/cjs/index.js +66 -0
  282. package/ModalFooter/cjs/index.js.map +1 -0
  283. package/ModalFooter/cjs/package.json +9 -0
  284. package/ModalFooter/index.d.ts +9 -0
  285. package/ModalFooter/index.js +60 -0
  286. package/ModalFooter/index.js.map +1 -0
  287. package/ModalFooter/package.json +9 -0
  288. package/MonthPickerContainer/cjs/index.js +63 -0
  289. package/MonthPickerContainer/cjs/index.js.map +1 -0
  290. package/MonthPickerContainer/cjs/package.json +9 -0
  291. package/MonthPickerContainer/index.d.ts +12 -0
  292. package/MonthPickerContainer/index.js +57 -0
  293. package/MonthPickerContainer/index.js.map +1 -0
  294. package/MonthPickerContainer/package.json +9 -0
  295. package/MonthPickerHeader/cjs/index.js +53 -0
  296. package/MonthPickerHeader/cjs/index.js.map +1 -0
  297. package/MonthPickerHeader/cjs/package.json +9 -0
  298. package/MonthPickerHeader/index.d.ts +13 -0
  299. package/MonthPickerHeader/index.js +47 -0
  300. package/MonthPickerHeader/index.js.map +1 -0
  301. package/MonthPickerHeader/package.json +9 -0
  302. package/PassportStrengthBar/cjs/index.js +82 -0
  303. package/PassportStrengthBar/cjs/index.js.map +1 -0
  304. package/PassportStrengthBar/cjs/package.json +9 -0
  305. package/PassportStrengthBar/index.d.ts +13 -0
  306. package/PassportStrengthBar/index.js +76 -0
  307. package/PassportStrengthBar/index.js.map +1 -0
  308. package/PassportStrengthBar/package.json +9 -0
  309. package/Popper/cjs/index.js +227 -0
  310. package/Popper/cjs/index.js.map +1 -0
  311. package/Popper/cjs/package.json +10 -0
  312. package/Popper/index.d.ts +23 -0
  313. package/Popper/index.js +201 -0
  314. package/Popper/index.js.map +1 -0
  315. package/Popper/package.json +10 -0
  316. package/PopperBase/cjs/index.js +72 -0
  317. package/PopperBase/cjs/index.js.map +1 -0
  318. package/PopperBase/cjs/package.json +9 -0
  319. package/PopperBase/index.d.ts +21 -0
  320. package/PopperBase/index.js +65 -0
  321. package/PopperBase/index.js.map +1 -0
  322. package/PopperBase/package.json +9 -0
  323. package/PopperWithPortal/cjs/index.js +166 -0
  324. package/PopperWithPortal/cjs/index.js.map +1 -0
  325. package/PopperWithPortal/cjs/package.json +10 -0
  326. package/PopperWithPortal/index.d.ts +23 -0
  327. package/PopperWithPortal/index.js +140 -0
  328. package/PopperWithPortal/index.js.map +1 -0
  329. package/PopperWithPortal/package.json +10 -0
  330. package/RadioButtons/cjs/index.js +80 -0
  331. package/RadioButtons/cjs/index.js.map +1 -0
  332. package/RadioButtons/cjs/package.json +9 -0
  333. package/RadioButtons/index.d.ts +27 -0
  334. package/RadioButtons/index.js +78 -0
  335. package/RadioButtons/index.js.map +1 -0
  336. package/RadioButtons/package.json +9 -0
  337. package/RadioButtonsWithController/cjs/index.js +102 -0
  338. package/RadioButtonsWithController/cjs/index.js.map +1 -0
  339. package/RadioButtonsWithController/cjs/package.json +10 -0
  340. package/RadioButtonsWithController/index.d.ts +31 -0
  341. package/RadioButtonsWithController/index.js +100 -0
  342. package/RadioButtonsWithController/index.js.map +1 -0
  343. package/RadioButtonsWithController/package.json +10 -0
  344. package/RadioGroupWithLabel/cjs/index.js +149 -0
  345. package/RadioGroupWithLabel/cjs/index.js.map +1 -0
  346. package/RadioGroupWithLabel/cjs/package.json +10 -0
  347. package/RadioGroupWithLabel/index.d.ts +34 -0
  348. package/RadioGroupWithLabel/index.js +143 -0
  349. package/RadioGroupWithLabel/index.js.map +1 -0
  350. package/RadioGroupWithLabel/package.json +10 -0
  351. package/SelectMonth/cjs/index.js +265 -0
  352. package/SelectMonth/cjs/index.js.map +1 -0
  353. package/SelectMonth/cjs/package.json +9 -0
  354. package/SelectMonth/index.d.ts +26 -0
  355. package/SelectMonth/index.js +241 -0
  356. package/SelectMonth/index.js.map +1 -0
  357. package/SelectMonth/package.json +9 -0
  358. package/SelectYear/cjs/index.js +253 -0
  359. package/SelectYear/cjs/index.js.map +1 -0
  360. package/SelectYear/cjs/package.json +9 -0
  361. package/SelectYear/index.d.ts +27 -0
  362. package/SelectYear/index.js +229 -0
  363. package/SelectYear/index.js.map +1 -0
  364. package/SelectYear/package.json +9 -0
  365. package/StaticPopper/cjs/index.js +140 -0
  366. package/StaticPopper/cjs/index.js.map +1 -0
  367. package/StaticPopper/cjs/package.json +9 -0
  368. package/StaticPopper/index.d.ts +23 -0
  369. package/StaticPopper/index.js +133 -0
  370. package/StaticPopper/index.js.map +1 -0
  371. package/StaticPopper/package.json +9 -0
  372. package/Switch/cjs/index.js +55 -0
  373. package/Switch/cjs/index.js.map +1 -0
  374. package/Switch/cjs/package.json +10 -0
  375. package/Switch/index.d.ts +14 -0
  376. package/Switch/index.js +53 -0
  377. package/Switch/index.js.map +1 -0
  378. package/Switch/package.json +10 -0
  379. package/Table/cjs/index.js +47 -0
  380. package/Table/cjs/index.js.map +1 -0
  381. package/Table/cjs/package.json +9 -0
  382. package/Table/index.d.ts +5 -0
  383. package/Table/index.js +41 -0
  384. package/Table/index.js.map +1 -0
  385. package/Table/package.json +9 -0
  386. package/TableCell/cjs/index.js +33 -0
  387. package/TableCell/cjs/index.js.map +1 -0
  388. package/TableCell/cjs/package.json +6 -0
  389. package/TableCell/index.d.ts +10 -0
  390. package/TableCell/index.js +27 -0
  391. package/TableCell/index.js.map +1 -0
  392. package/TableCell/package.json +6 -0
  393. package/TableHeadCell/cjs/index.js +33 -0
  394. package/TableHeadCell/cjs/index.js.map +1 -0
  395. package/TableHeadCell/cjs/package.json +6 -0
  396. package/TableHeadCell/index.d.ts +10 -0
  397. package/TableHeadCell/index.js +27 -0
  398. package/TableHeadCell/index.js.map +1 -0
  399. package/TableHeadCell/package.json +6 -0
  400. package/TableRow/cjs/index.js +71 -0
  401. package/TableRow/cjs/index.js.map +1 -0
  402. package/TableRow/cjs/package.json +9 -0
  403. package/TableRow/index.d.ts +5 -0
  404. package/TableRow/index.js +50 -0
  405. package/TableRow/index.js.map +1 -0
  406. package/TableRow/package.json +9 -0
  407. package/TestForm/cjs/index.js +755 -0
  408. package/TestForm/cjs/index.js.map +1 -0
  409. package/TestForm/cjs/package.json +15 -0
  410. package/TestForm/index.d.ts +3 -0
  411. package/TestForm/index.js +727 -0
  412. package/TestForm/index.js.map +1 -0
  413. package/TestForm/package.json +15 -0
  414. package/Tooltip/cjs/index.js +257 -0
  415. package/Tooltip/cjs/index.js.map +1 -0
  416. package/Tooltip/cjs/package.json +10 -0
  417. package/Tooltip/index.d.ts +28 -0
  418. package/Tooltip/index.js +231 -0
  419. package/Tooltip/index.js.map +1 -0
  420. package/Tooltip/package.json +10 -0
  421. package/UndefinedAvatar/cjs/index.js +71 -0
  422. package/UndefinedAvatar/cjs/index.js.map +1 -0
  423. package/UndefinedAvatar/cjs/package.json +9 -0
  424. package/UndefinedAvatar/index.d.ts +8 -0
  425. package/UndefinedAvatar/index.js +65 -0
  426. package/UndefinedAvatar/index.js.map +1 -0
  427. package/UndefinedAvatar/package.json +9 -0
  428. package/cjs/index.js +1981 -0
  429. package/cjs/index.js.map +1 -0
  430. package/index.d.ts +492 -0
  431. package/index.js +1880 -0
  432. package/index.js.map +1 -0
  433. package/package.json +1 -4
package/cjs/index.js ADDED
@@ -0,0 +1,1981 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('react-datepicker/dist/react-datepicker.css');
6
+ require('swiper/swiper-bundle.css');
7
+ var jsxRuntime$1 = require('@emotion/react/jsx-runtime');
8
+ var styled = require('@emotion/styled');
9
+ var react = require('@emotion/react');
10
+ var React = require('react');
11
+ var jsxRuntime = require('react/jsx-runtime');
12
+ var kuiBasic = require('kui-basic');
13
+ var classNames = require('classnames');
14
+ var luxon = require('luxon');
15
+ var kuiIcon = require('kui-icon');
16
+ var _ = require('lodash');
17
+ var DatePicker = require('react-datepicker');
18
+ var reactHookForm = require('react-hook-form');
19
+ var reactScroll = require('react-scroll');
20
+ var ru = require('date-fns/locale/ru');
21
+ var reactRouterDom = require('react-router-dom');
22
+ var reactRouter = require('react-router');
23
+ var Swiper = require('react-id-swiper');
24
+ var ReactDOM = require('react-dom');
25
+ var jsApiLoader = require('@googlemaps/js-api-loader');
26
+
27
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
28
+
29
+ function _interopNamespace(e) {
30
+ if (e && e.__esModule) return e;
31
+ var n = Object.create(null);
32
+ if (e) {
33
+ Object.keys(e).forEach(function (k) {
34
+ if (k !== 'default') {
35
+ var d = Object.getOwnPropertyDescriptor(e, k);
36
+ Object.defineProperty(n, k, d.get ? d : {
37
+ enumerable: true,
38
+ get: function () { return e[k]; }
39
+ });
40
+ }
41
+ });
42
+ }
43
+ n["default"] = e;
44
+ return Object.freeze(n);
45
+ }
46
+
47
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
48
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
49
+ var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
50
+ var ___default = /*#__PURE__*/_interopDefaultLegacy(_);
51
+ var DatePicker__default = /*#__PURE__*/_interopDefaultLegacy(DatePicker);
52
+ var ru__default = /*#__PURE__*/_interopDefaultLegacy(ru);
53
+ var Swiper__default = /*#__PURE__*/_interopDefaultLegacy(Swiper);
54
+ var ReactDOM__namespace = /*#__PURE__*/_interopNamespace(ReactDOM);
55
+
56
+ /******************************************************************************
57
+ Copyright (c) Microsoft Corporation.
58
+
59
+ Permission to use, copy, modify, and/or distribute this software for any
60
+ purpose with or without fee is hereby granted.
61
+
62
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
63
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
64
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
65
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
66
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
67
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
68
+ PERFORMANCE OF THIS SOFTWARE.
69
+ ***************************************************************************** */
70
+
71
+ var __assign = function() {
72
+ __assign = Object.assign || function __assign(t) {
73
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
74
+ s = arguments[i];
75
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
76
+ }
77
+ return t;
78
+ };
79
+ return __assign.apply(this, arguments);
80
+ };
81
+
82
+ function __rest(s, e) {
83
+ var t = {};
84
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
85
+ t[p] = s[p];
86
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
87
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
88
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
89
+ t[p[i]] = s[p[i]];
90
+ }
91
+ return t;
92
+ }
93
+
94
+ function __awaiter(thisArg, _arguments, P, generator) {
95
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
96
+ return new (P || (P = Promise))(function (resolve, reject) {
97
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
98
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
99
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
100
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
101
+ });
102
+ }
103
+
104
+ function __generator(thisArg, body) {
105
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
106
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
107
+ function verb(n) { return function (v) { return step([n, v]); }; }
108
+ function step(op) {
109
+ if (f) throw new TypeError("Generator is already executing.");
110
+ while (_) try {
111
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
112
+ if (y = 0, t) op = [op[0] & 2, t.value];
113
+ switch (op[0]) {
114
+ case 0: case 1: t = op; break;
115
+ case 4: _.label++; return { value: op[1], done: false };
116
+ case 5: _.label++; y = op[1]; op = [0]; continue;
117
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
118
+ default:
119
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
120
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
121
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
122
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
123
+ if (t[2]) _.ops.pop();
124
+ _.trys.pop(); continue;
125
+ }
126
+ op = body.call(thisArg, _);
127
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
128
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
129
+ }
130
+ }
131
+
132
+ function __spreadArray(to, from, pack) {
133
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
134
+ if (ar || !(i in from)) {
135
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
136
+ ar[i] = from[i];
137
+ }
138
+ }
139
+ return to.concat(ar || Array.prototype.slice.call(from));
140
+ }
141
+
142
+ function __makeTemplateObject(cooked, raw) {
143
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
144
+ return cooked;
145
+ }
146
+
147
+ var UndefinedAvatar = React.forwardRef(function (_a, ref) {
148
+ var label = _a.label, otherProps = __rest(_a, ["label"]);
149
+ if (!label) {
150
+ return jsxRuntime.jsx("div", {});
151
+ }
152
+ var formattedLabel = label
153
+ .split(" ")
154
+ .map(function (el) { return el[0]; })
155
+ .slice(0, 3)
156
+ .join("");
157
+ return (jsxRuntime.jsx(Wrapper$8, __assign({ "data-testid": "undefined_avatar", ref: ref }, { children: jsxRuntime.jsx(kuiBasic.Caption, __assign({ size: "xs", weight: 600, colorGroup: "brand", color: "main" }, otherProps, { children: formattedLabel })) })));
158
+ });
159
+ var Wrapper$8 = styled__default["default"].div(templateObject_1$H || (templateObject_1$H = __makeTemplateObject(["\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background-color: ", ";\n display: flex;\n justify-content: center;\n align-items: center;\n &,\n p {\n transition: all ease-out 0.3s;\n }\n @media (min-width: 900px) {\n &:hover {\n background-color: ", ";\n p {\n color: white;\n }\n }\n }\n"], ["\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background-color: ", ";\n display: flex;\n justify-content: center;\n align-items: center;\n &,\n p {\n transition: all ease-out 0.3s;\n }\n @media (min-width: 900px) {\n &:hover {\n background-color: ", ";\n p {\n color: white;\n }\n }\n }\n"])), kuiBasic.theme.palette.brand.light, kuiBasic.theme.palette.brand.main);
160
+ var templateObject_1$H;
161
+
162
+ var Avatar = React.forwardRef(function (props, ref) {
163
+ var size = props.size, fullName = props.fullName, imageUrl = props.imageUrl, otherProps = __rest(props, ["size", "fullName", "imageUrl"]);
164
+ return (jsxRuntime$1.jsx(Wrapper$7, __assign({ css: sizeStyles[size], ref: ref }, otherProps, { children: imageUrl ? (jsxRuntime$1.jsx(StyledImage, { "data-testid": "avatar_image", src: imageUrl, alt: "avatar" })) : (jsxRuntime$1.jsx(StyledUndefinedAvatar, { label: fullName, avatarSize: size })) })));
165
+ });
166
+ var Wrapper$7 = styled__default["default"].div(templateObject_1$G || (templateObject_1$G = __makeTemplateObject(["\n border-radius: 50%;\n overflow: hidden;\n cursor: pointer;\n"], ["\n border-radius: 50%;\n overflow: hidden;\n cursor: pointer;\n"])));
167
+ var StyledImage = styled__default["default"].img(templateObject_2$p || (templateObject_2$p = __makeTemplateObject(["\n width: 100%;\n height: 100%;\n border-radius: 50%;\n object-fit: cover;\n"], ["\n width: 100%;\n height: 100%;\n border-radius: 50%;\n object-fit: cover;\n"])));
168
+ var largeAvatarCSS = function (_a) {
169
+ var avatarSize = _a.avatarSize;
170
+ return avatarSize === "lg" && react.css(templateObject_3$c || (templateObject_3$c = __makeTemplateObject(["\n font-size: 32px;\n "], ["\n font-size: 32px;\n "])));
171
+ };
172
+ var StyledUndefinedAvatar = styled__default["default"](UndefinedAvatar, {
173
+ shouldForwardProp: function (prop) { return prop !== "size"; },
174
+ })(templateObject_4$6 || (templateObject_4$6 = __makeTemplateObject(["\n ", ";\n"], ["\n ", ";\n"])), largeAvatarCSS);
175
+ var sizeStyles = {
176
+ s: react.css(templateObject_5$4 || (templateObject_5$4 = __makeTemplateObject(["\n width: 40px;\n height: 40px;\n @media (max-width: 600px) {\n width: 32px;\n height: 32px;\n }\n "], ["\n width: 40px;\n height: 40px;\n @media (max-width: 600px) {\n width: 32px;\n height: 32px;\n }\n "]))),
177
+ lg: react.css(templateObject_6$1 || (templateObject_6$1 = __makeTemplateObject(["\n width: 80px;\n height: 80px;\n "], ["\n width: 80px;\n height: 80px;\n "]))),
178
+ };
179
+ var templateObject_1$G, templateObject_2$p, templateObject_3$c, templateObject_4$6, templateObject_5$4, templateObject_6$1;
180
+
181
+ var ButtonTab = React.forwardRef(function (_a, ref) {
182
+ var index = _a.index, onClick = _a.onClick, isActive = _a.isActive, label = _a.label;
183
+ var handleClick = function () {
184
+ onClick(index);
185
+ };
186
+ return (jsxRuntime$1.jsx(StyledButton$1, __assign({ variant: isActive ? "orange" : "white", captionWeight: isActive ? 600 : 400, onClick: handleClick, css: !isActive && inactiveStyles, size: "s", ref: ref, className: classNames__default["default"]("KUI-ButtonTab", isActive && "KUI-ButtonTab_active") }, { children: label })));
187
+ });
188
+ var StyledButton$1 = styled__default["default"](kuiBasic.Button)(templateObject_1$F || (templateObject_1$F = __makeTemplateObject(["\n margin-right: 24px;\n &:last-of-type {\n margin-right: 0;\n }\n"], ["\n margin-right: 24px;\n &:last-of-type {\n margin-right: 0;\n }\n"])));
189
+ var inactiveStyles = react.css(templateObject_2$o || (templateObject_2$o = __makeTemplateObject(["\n p {\n color: ", ";\n }\n"], ["\n p {\n color: ", ";\n }\n"])), kuiBasic.theme.palette.grey.seventy);
190
+ var templateObject_1$F, templateObject_2$o;
191
+
192
+ var updateQueryParams = function (newLink) {
193
+ var searchQuery = new URLSearchParams(window.location.search);
194
+ var hrefLinkParams = newLink.split(/\?|&/);
195
+ var hrefParams = Object.fromEntries(new URLSearchParams(hrefLinkParams.slice(1).join("&")).entries());
196
+ var searchParams = Object.fromEntries(searchQuery.entries());
197
+ var route = hrefLinkParams[0];
198
+ Object.keys(searchParams).forEach(function (key, index) {
199
+ if (key in hrefParams) {
200
+ searchParams[key] = hrefParams[key];
201
+ delete hrefParams[key];
202
+ }
203
+ if (key !== "id") {
204
+ route += "".concat(index === 0 ? "?" : "&").concat(key, "=").concat(searchParams[key]);
205
+ }
206
+ });
207
+ Object.keys(hrefParams).forEach(function (key) {
208
+ route += "&".concat(key, "=").concat(hrefParams[key]);
209
+ });
210
+ window.history.pushState({ route: route }, "", route);
211
+ };
212
+
213
+ var ButtonsPanel = React.forwardRef(function (_a, ref) {
214
+ var tabs = _a.tabs, tabPanels = _a.tabPanels, paths = _a.paths, activeTab = _a.activeTab, isSticky = _a.isSticky, onChange = _a.onChange, startComponent = _a.startComponent, endComponent = _a.endComponent, otherProps = __rest(_a, ["tabs", "tabPanels", "paths", "activeTab", "isSticky", "onChange", "startComponent", "endComponent"]);
215
+ var _b = React__namespace.useState(Number(activeTab)), value = _b[0], setValue = _b[1];
216
+ var handleChange = function (newValue) {
217
+ setValue(newValue);
218
+ if (paths && paths.length)
219
+ updateQueryParams(paths[newValue]);
220
+ if (onChange)
221
+ onChange(newValue);
222
+ };
223
+ React.useEffect(function () {
224
+ setValue(Number(activeTab));
225
+ }, [activeTab]);
226
+ return (jsxRuntime$1.jsxs(jsxRuntime$1.Fragment, { children: [jsxRuntime$1.jsx(StyledContainer$2, __assign({ css: isSticky && { position: "sticky" }, ref: ref }, otherProps, { children: jsxRuntime$1.jsxs(StyledWrapper$9, __assign({ className: "KUI-ButtonTabs" }, { children: [startComponent, tabs.map(function (item, index) { return (jsxRuntime$1.jsx(ButtonTab, { index: index, onClick: handleChange, isActive: index === value, label: item }, item)); }), endComponent] })) })), tabPanels.map(function (item, index) { return (jsxRuntime$1.jsx(Content, __assign({ role: "tabpanel", hidden: value !== index }, { children: value === index && jsxRuntime$1.jsx(jsxRuntime$1.Fragment, { children: item }) }), index)); })] }));
227
+ });
228
+ ButtonsPanel.defaultProps = {
229
+ isSticky: false,
230
+ };
231
+ var Content = styled__default["default"].div(templateObject_1$E || (templateObject_1$E = __makeTemplateObject(["\n height: 100%;\n"], ["\n height: 100%;\n"])));
232
+ var StyledContainer$2 = styled__default["default"].div(templateObject_2$n || (templateObject_2$n = __makeTemplateObject(["\n background: ", ";\n top: 80px;\n z-index: 4;\n padding-top: 16px;\n padding-bottom: 24px;\n @media (max-width: 1200px) {\n padding-bottom: 18px;\n }\n @media (max-width: 600px) {\n top: 48px;\n }\n"], ["\n background: ", ";\n top: 80px;\n z-index: 4;\n padding-top: 16px;\n padding-bottom: 24px;\n @media (max-width: 1200px) {\n padding-bottom: 18px;\n }\n @media (max-width: 600px) {\n top: 48px;\n }\n"])), kuiBasic.theme.palette.grey.zero);
233
+ var StyledWrapper$9 = styled__default["default"](kuiBasic.Container)(templateObject_3$b || (templateObject_3$b = __makeTemplateObject(["\n display: flex;\n align-items: center;\n"], ["\n display: flex;\n align-items: center;\n"])));
234
+ var templateObject_1$E, templateObject_2$n, templateObject_3$b;
235
+
236
+ var InputDropdown = React.forwardRef(function (props, ref) {
237
+ var isOpen = props.isOpen, handleClose = props.handleClose, buttonRef = props.buttonRef, children = props.children, endComponent = props.endComponent, otherProps = __rest(props, ["isOpen", "handleClose", "buttonRef", "children", "endComponent"]);
238
+ var _a = React.useState(false), isScrollable = _a[0], setIsScrollable = _a[1];
239
+ var dropdownRef = React.useRef(null);
240
+ var closePopUp = function (e) {
241
+ if (dropdownRef.current && buttonRef && buttonRef.current) {
242
+ if (!dropdownRef.current.contains(e.target) &&
243
+ !buttonRef.current.contains(e.target)) {
244
+ handleClose();
245
+ }
246
+ }
247
+ };
248
+ React.useEffect(function () {
249
+ document.addEventListener("click", closePopUp);
250
+ return function () {
251
+ document.removeEventListener("click", closePopUp);
252
+ };
253
+ });
254
+ React.useEffect(function () {
255
+ var _a;
256
+ if (buttonRef === null || buttonRef === void 0 ? void 0 : buttonRef.current) {
257
+ if (isOpen) {
258
+ buttonRef.current.style.zIndex = "4";
259
+ var scrollContainer = (_a = dropdownRef.current) === null || _a === void 0 ? void 0 : _a.children[0].children[0];
260
+ if (scrollContainer) {
261
+ var hasScroll = scrollContainer.scrollHeight > scrollContainer.clientHeight;
262
+ setIsScrollable(hasScroll);
263
+ }
264
+ }
265
+ else {
266
+ buttonRef.current.style.zIndex = "1";
267
+ }
268
+ }
269
+ }, [isOpen]);
270
+ if (!isOpen) {
271
+ return null;
272
+ }
273
+ var forwardedRef = function (elem) {
274
+ if (typeof ref === "function")
275
+ ref(elem);
276
+ else if (ref)
277
+ ref.current = elem;
278
+ dropdownRef.current = elem;
279
+ };
280
+ return (jsxRuntime.jsxs(StyledDropdown$2, __assign({ "data-testid": "input_dropdown", container: true, ref: forwardedRef, isOpen: isOpen }, otherProps, { children: [jsxRuntime.jsx(StyledWrapper$8, __assign({ isScrollable: isScrollable }, { children: jsxRuntime.jsx(ScrollingContainer, __assign({ isScrollable: isScrollable, className: "KUI-InputDropdown_scroll" }, { children: children })) })), endComponent] })));
281
+ });
282
+ var StyledDropdown$2 = styled__default["default"](kuiBasic.Grid)(templateObject_1$D || (templateObject_1$D = __makeTemplateObject(["\n width: 100%;\n display: ", ";\n position: absolute;\n background: ", ";\n z-index: 3;\n top: 50px;\n box-shadow: 0px 26px 34px 0px #0000001a;\n border-radius: 0 0 8px 8px;\n user-select: none;\n"], ["\n width: 100%;\n display: ", ";\n position: absolute;\n background: ", ";\n z-index: 3;\n top: 50px;\n box-shadow: 0px 26px 34px 0px #0000001a;\n border-radius: 0 0 8px 8px;\n user-select: none;\n"])), function (_a) {
283
+ var isOpen = _a.isOpen;
284
+ return (isOpen ? "flex" : "none");
285
+ }, kuiBasic.theme.palette.grey.zero);
286
+ var StyledWrapper$8 = styled__default["default"].div(templateObject_2$m || (templateObject_2$m = __makeTemplateObject(["\n width: 100%;\n box-sizing: border-box;\n padding: ", ";\n"], ["\n width: 100%;\n box-sizing: border-box;\n padding: ", ";\n"])), function (_a) {
287
+ var isScrollable = _a.isScrollable;
288
+ return isScrollable ? "14px 8px 8px 0" : "14px 0px 8px 0";
289
+ });
290
+ var ScrollingContainer = styled__default["default"].div(templateObject_3$a || (templateObject_3$a = __makeTemplateObject(["\n width: 100%;\n max-height: 389px;\n box-sizing: border-box;\n z-index: 3;\n overflow: auto;\n -ms-overflow-style: none;\n overflow-y: scroll;\n overflow-x: hidden;\n user-select: none;\n ::-webkit-scrollbar {\n width: ", ";\n position: absolute;\n right: 8px;\n }\n ::-webkit-scrollbar-track,\n ::-webkit-scrollbar-thumb {\n border-radius: 4px;\n transition: all ease-out 0.3s;\n }\n\n ::-webkit-resizer,\n ::-webkit-scrollbar-button,\n ::-webkit-scrollbar-corner {\n display: none;\n }\n ::-webkit-scrollbar-track {\n background: ", ";\n }\n\n ::-webkit-scrollbar-thumb {\n background: ", ";\n }\n"], ["\n width: 100%;\n max-height: 389px;\n box-sizing: border-box;\n z-index: 3;\n overflow: auto;\n -ms-overflow-style: none;\n overflow-y: scroll;\n overflow-x: hidden;\n user-select: none;\n ::-webkit-scrollbar {\n width: ", ";\n position: absolute;\n right: 8px;\n }\n ::-webkit-scrollbar-track,\n ::-webkit-scrollbar-thumb {\n border-radius: 4px;\n transition: all ease-out 0.3s;\n }\n\n ::-webkit-resizer,\n ::-webkit-scrollbar-button,\n ::-webkit-scrollbar-corner {\n display: none;\n }\n ::-webkit-scrollbar-track {\n background: ", ";\n }\n\n ::-webkit-scrollbar-thumb {\n background: ", ";\n }\n"])), function (_a) {
291
+ var isScrollable = _a.isScrollable;
292
+ return (isScrollable ? "4px" : "0px");
293
+ }, kuiBasic.theme.palette.grey.fifteenB, kuiBasic.theme.palette.grey.thirty);
294
+ var templateObject_1$D, templateObject_2$m, templateObject_3$a;
295
+
296
+ var InputSelectDropdown = React.forwardRef(function (_a, ref) {
297
+ var options = _a.options, inputRef = _a.inputRef, isOpenDropdown = _a.isOpenDropdown, handleCloseDropdown = _a.handleCloseDropdown, handleSelect = _a.handleSelect, selectedValue = _a.selectedValue, renderOption = _a.renderOption;
298
+ var handleClick = function (option) {
299
+ if (!option.disabled) {
300
+ handleSelect(option);
301
+ }
302
+ };
303
+ return (jsxRuntime.jsx(StyledDropdown$1, __assign({ buttonRef: inputRef, isOpen: isOpenDropdown, handleClose: handleCloseDropdown, ref: ref }, { children: options.map(function (option, key) { return (jsxRuntime.jsx(OptionWrapper, __assign({ disabled: option.disabled, onClick: function () { return handleClick(option); }, "data-value": "autocomplete_option_".concat(option.value), "data-testid": "autocomplete_option_".concat(key) }, { children: renderOption(option, selectedValue) }), option.label)); }) })));
304
+ });
305
+ var OptionWrapper = styled__default["default"].div(templateObject_1$C || (templateObject_1$C = __makeTemplateObject(["\n width: 100%;\n padding: 2px 0;\n cursor: ", ";\n p {\n color: ", ";\n }\n"], ["\n width: 100%;\n padding: 2px 0;\n cursor: ", ";\n p {\n color: ", ";\n }\n"])), function (_a) {
306
+ var disabled = _a.disabled;
307
+ return (disabled ? "auto" : "pointer");
308
+ }, function (_a) {
309
+ var disabled = _a.disabled;
310
+ return disabled ? kuiBasic.theme.palette.grey.fiftyP : kuiBasic.theme.palette.grey.seventy;
311
+ });
312
+ var StyledDropdown$1 = styled__default["default"](InputDropdown)(templateObject_2$l || (templateObject_2$l = __makeTemplateObject(["\n .KUI-InputDropdown_scroll {\n max-height: 142px;\n padding: 0 4px;\n }\n"], ["\n .KUI-InputDropdown_scroll {\n max-height: 142px;\n padding: 0 4px;\n }\n"])));
313
+ var templateObject_1$C, templateObject_2$l;
314
+
315
+ function setRef(ref, value) {
316
+ if (typeof ref === "function") {
317
+ ref(value);
318
+ }
319
+ else if (ref) {
320
+ ref.current = value;
321
+ }
322
+ }
323
+ function useForkRef() {
324
+ var refs = [];
325
+ for (var _i = 0; _i < arguments.length; _i++) {
326
+ refs[_i] = arguments[_i];
327
+ }
328
+ return React__namespace.useMemo(function () {
329
+ if (refs.every(function (ref) { return ref == null; })) {
330
+ return null;
331
+ }
332
+ return function (instance) {
333
+ refs.forEach(function (ref) {
334
+ setRef(ref, instance);
335
+ });
336
+ };
337
+ }, refs);
338
+ }
339
+
340
+ var InputSelectBase = React.forwardRef(function (_a, ref) {
341
+ var _b;
342
+ var options = _a.options, name = _a.name, disabled = _a.disabled, handleChange = _a.handleChange, iconProps = _a.iconProps, renderOption = _a.renderOption, selectedLabel = _a.selectedLabel, selectedValue = _a.selectedValue, error = _a.error, inputProps = __rest(_a, ["options", "name", "disabled", "handleChange", "iconProps", "renderOption", "selectedLabel", "selectedValue", "error"]);
343
+ var _c = React.useState(false), isDropdownOpen = _c[0], setIsDropdownOpen = _c[1];
344
+ var inputRef = React.useRef(null);
345
+ var forwardedRef = useForkRef(inputRef, ref);
346
+ var handleOpenDropdown = function () {
347
+ var _a, _b, _c, _d;
348
+ if ((_b = (_a = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.parentElement) {
349
+ (_d = (_c = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _c === void 0 ? void 0 : _c.parentElement) === null || _d === void 0 ? void 0 : _d.parentElement.focus();
350
+ }
351
+ setIsDropdownOpen(function (prev) { return !prev; });
352
+ };
353
+ var handleCloseDropdown = function () {
354
+ setIsDropdownOpen(false);
355
+ };
356
+ var handleSelect = function (option) {
357
+ if (handleChange)
358
+ handleChange(option);
359
+ handleCloseDropdown();
360
+ };
361
+ return (jsxRuntime$1.jsxs(Wrapper$6, { children: [jsxRuntime$1.jsx("input", { name: name, autoComplete: "off", hidden: true }), jsxRuntime$1.jsx(StyledInput$3, __assign({ onClick: handleOpenDropdown, ref: forwardedRef, disabled: disabled, readOnly: true, value: selectedLabel, message: error, isDropdownOpen: isDropdownOpen, isLabelShrink: Boolean(selectedValue) || selectedValue === 0 }, inputProps, { endIcon: !disabled && (jsxRuntime$1.jsx(kuiIcon.HalfArrowIcon, __assign({ width: 12, height: 13, css: [
362
+ { transition: "all linear .2s" },
363
+ isDropdownOpen && { transform: "rotate(180deg)" },
364
+ ] }, iconProps))) })), options.length > 0 && !disabled && (jsxRuntime$1.jsx(InputSelectDropdown, { options: options, inputRef: {
365
+ current: (_b = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _b === void 0 ? void 0 : _b.parentElement,
366
+ }, isOpenDropdown: isDropdownOpen, handleCloseDropdown: handleCloseDropdown, handleSelect: handleSelect, selectedValue: selectedValue, renderOption: renderOption }))] }));
367
+ });
368
+ var Wrapper$6 = styled__default["default"].div(templateObject_1$B || (templateObject_1$B = __makeTemplateObject(["\n position: relative;\n text-align: left;\n"], ["\n position: relative;\n text-align: left;\n"])));
369
+ var StyledInput$3 = styled__default["default"](kuiBasic.InputWithAdornments)(templateObject_2$k || (templateObject_2$k = __makeTemplateObject(["\n cursor: pointer;\n input,\n label {\n cursor: pointer !important;\n }\n .KUI-InputMessage {\n opacity: ", ";\n }\n"], ["\n cursor: pointer;\n input,\n label {\n cursor: pointer !important;\n }\n .KUI-InputMessage {\n opacity: ", ";\n }\n"])), function (_a) {
370
+ var isDropdownOpen = _a.isDropdownOpen;
371
+ return (isDropdownOpen ? 0 : 1);
372
+ });
373
+ var templateObject_1$B, templateObject_2$k;
374
+
375
+ function InputSelectOption(props) {
376
+ var option = props.option, selectedValue = props.selectedValue;
377
+ return (jsxRuntime.jsx(StyledOption$1, __assign({ selected: selectedValue === option.value }, { children: jsxRuntime.jsx(kuiBasic.Caption, __assign({ size: "sm", weight: 500 }, { children: option.label })) })));
378
+ }
379
+ var StyledOption$1 = styled__default["default"].div(templateObject_1$A || (templateObject_1$A = __makeTemplateObject(["\n padding: 8px;\n transition: all ease-out 0.3s;\n border-radius: 4px;\n background-color: ", ";\n &:hover {\n background-color: ", ";\n }\n"], ["\n padding: 8px;\n transition: all ease-out 0.3s;\n border-radius: 4px;\n background-color: ", ";\n &:hover {\n background-color: ", ";\n }\n"])), function (_a) {
380
+ var selected = _a.selected;
381
+ return selected ? kuiBasic.theme.palette.background.light1 : kuiBasic.theme.palette.grey.zero;
382
+ }, kuiBasic.theme.palette.background.light1);
383
+ var templateObject_1$A;
384
+
385
+ var InputSelect = React.forwardRef(function (_a, ref) {
386
+ var _b;
387
+ var options = _a.options, name = _a.name, handleChange = _a.handleChange; _a.form; var valueProp = _a.value, inputProps = __rest(_a, ["options", "name", "handleChange", "form", "value"]);
388
+ var _c = React.useState(valueProp), value = _c[0], setValue = _c[1];
389
+ var selectedLabel = (_b = options.find(function (option) { return String(option.value) === String(value); })) === null || _b === void 0 ? void 0 : _b.label;
390
+ var handleSelect = function (option) {
391
+ setValue(option.value);
392
+ if (handleChange) {
393
+ handleChange(option.value);
394
+ }
395
+ };
396
+ React.useEffect(function () {
397
+ if (typeof valueProp !== "undefined")
398
+ setValue(valueProp);
399
+ }, [valueProp]);
400
+ return (jsxRuntime.jsx(InputSelectBase, __assign({ options: options, handleChange: handleSelect, selectedLabel: selectedLabel, selectedValue: value, name: name, renderOption: function (option, selectedValue) { return (jsxRuntime.jsx(InputSelectOption, { option: option, selectedValue: selectedValue })); }, ref: ref }, inputProps)));
401
+ });
402
+
403
+ var checkDisabled$1 = function (year, min, max) {
404
+ return (min && year <= min) || (max && year >= max);
405
+ };
406
+ var SelectYear = React.forwardRef(function (_a, ref) {
407
+ var yearOptions = _a.yearOptions; _a.options; var min = _a.min, max = _a.max, props = __rest(_a, ["yearOptions", "options", "min", "max"]);
408
+ var formattedYearOptions = yearOptions.map(function (year) { return (__assign(__assign({}, year), { disabled: checkDisabled$1(Number(year.value), min, max) })); });
409
+ return (jsxRuntime.jsx(InputSelect, __assign({ ref: ref, label: "Year", options: formattedYearOptions }, props)));
410
+ });
411
+
412
+ var checkDisabled = function (month, min, max) { return (min && month <= min) || (max && month >= max); };
413
+ var monthValues = [
414
+ { value: 0, label: "January" },
415
+ { value: 1, label: "February" },
416
+ { value: 2, label: "March" },
417
+ { value: 3, label: "April" },
418
+ { value: 4, label: "May" },
419
+ { value: 5, label: "June" },
420
+ { value: 6, label: "July" },
421
+ { value: 7, label: "August" },
422
+ { value: 8, label: "September" },
423
+ { value: 9, label: "October" },
424
+ { value: 10, label: "November" },
425
+ { value: 11, label: "December" },
426
+ ];
427
+ var SelectMonth = React.forwardRef(function (props, ref) {
428
+ var min = props.min, max = props.max; props.options; var other = __rest(props, ["min", "max", "options"]);
429
+ var formattedMonths = monthValues.map(function (month) { return (__assign(__assign({}, month), { disabled: checkDisabled(month.value, min, max) })); });
430
+ return (jsxRuntime.jsx(InputSelect, __assign({ ref: ref, label: "Month", options: formattedMonths }, other)));
431
+ });
432
+
433
+ var CalendarHeaderWithSelect = React.forwardRef(function (_a, ref) {
434
+ var changeMonth = _a.changeMonth, changeYear = _a.changeYear, date = _a.date, yearOptions = _a.yearOptions, max = _a.max, min = _a.min;
435
+ var year = date.getFullYear();
436
+ var month = date.getMonth();
437
+ var currentYear = luxon.DateTime.now().year;
438
+ var minMonth = (min === null || min === void 0 ? void 0 : min.year) === currentYear ? min === null || min === void 0 ? void 0 : min.month : 0;
439
+ var maxMonth = (max === null || max === void 0 ? void 0 : max.year) === currentYear ? max === null || max === void 0 ? void 0 : max.month : 11;
440
+ return (jsxRuntime.jsx(Wrapper$5, __assign({ ref: ref }, { children: jsxRuntime.jsxs(kuiBasic.Grid, __assign({ container: true, spacing: 2 }, { children: [jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true, xs: 6 }, { children: jsxRuntime.jsx(SelectYear, { min: min === null || min === void 0 ? void 0 : min.year, max: max === null || max === void 0 ? void 0 : max.year, yearOptions: yearOptions, value: year, handleChange: changeYear }) })), jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true, xs: 6 }, { children: jsxRuntime.jsx(SelectMonth, { min: (Number(min === null || min === void 0 ? void 0 : min.year) >= currentYear && minMonth), max: (Number(max === null || max === void 0 ? void 0 : max.year) <= currentYear && maxMonth), value: month, handleChange: changeMonth }) }))] })) })));
441
+ });
442
+ var Wrapper$5 = styled__default["default"].div(templateObject_1$z || (templateObject_1$z = __makeTemplateObject(["\n margin-bottom: 24px;\n @media (max-width: 900px) {\n padding: 0 18px;\n margin-bottom: 20px;\n }\n"], ["\n margin-bottom: 24px;\n @media (max-width: 900px) {\n padding: 0 18px;\n margin-bottom: 20px;\n }\n"])));
443
+ var templateObject_1$z;
444
+
445
+ var CalendarStandardContainer = React.forwardRef(function (_a, ref) {
446
+ _a.arrowProps; _a.showPopperArrow; var props = __rest(_a, ["arrowProps", "showPopperArrow"]);
447
+ return jsxRuntime.jsx(DatePickerContainer, __assign({ ref: ref }, props));
448
+ });
449
+ var DatePickerContainer = styled__default["default"].div(templateObject_1$y || (templateObject_1$y = __makeTemplateObject(["\n padding: 0;\n border: none !important;\n border-radius: 0 !important;\n background: transparent !important;\n overflow: hidden;\n width: 100%;\n height: 100%;\n .react-datepicker__header {\n background-color: transparent !important;\n }\n .react-datepicker__month-container {\n width: 100%;\n height: 100%;\n }\n .react-datepicker__day-names {\n display: flex;\n justify-content: space-between;\n .react-datepicker__day-name {\n font-family: \"Inter\", sans-serif;\n font-weight: 600;\n font-size: 14px;\n color: ", ";\n text-transform: uppercase;\n margin: 0;\n width: 33px;\n line-height: normal;\n }\n }\n .react-datepicker__month {\n padding: 0;\n margin: 20px 0 0 !important;\n border: none;\n width: 100%;\n height: calc(100% - 85px);\n .react-datepicker__week {\n display: flex;\n justify-content: space-between;\n }\n }\n .react-datepicker__week {\n margin-bottom: 10px;\n &:last-of-type {\n margin-bottom: 0;\n }\n }\n .react-datepicker__day {\n width: 33px;\n height: 33px;\n user-select: none;\n border-radius: 50% !important;\n transition: background ease-out 0.3s;\n border: 1px solid transparent;\n margin: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n font-weight: 500;\n font-size: 16px;\n &:hover {\n background: ", ";\n }\n &:active {\n background: ", ";\n }\n }\n .react-datepicker__day--outside-month,\n .react-datepicker__day--disabled {\n color: #a6aebc;\n p {\n color: #a6aebc;\n }\n }\n .react-datepicker__day--keyboard-selected {\n background: transparent;\n color: inherit;\n }\n .react-datepicker__day--today {\n color: ", ";\n background-color: ", ";\n }\n .react-datepicker__day--selected {\n background: white;\n border: 1px solid #e1e4e8;\n color: ", ";\n p {\n color: ", ";\n }\n }\n .react-datepicker__day--selected.warning_day {\n border-color: ", ";\n background-color: ", ";\n color: ", ";\n }\n @media (max-width: 600px) {\n .react-datepicker__day {\n max-width: 48px;\n max-height: 48px;\n width: calc((100vw - (18px * 7)) / 7);\n height: calc((100vw - (18px * 7)) / 7);\n }\n .react-datepicker__day-names {\n .react-datepicker__day-name {\n max-width: 48px;\n width: calc((100vw - (18px * 7)) / 7);\n }\n }\n }\n @media (max-width: 350px) {\n .react-datepicker__day {\n width: calc((100vw - (6px * 7)) / 7);\n height: calc((100vw - (6px * 7)) / 7);\n }\n .react-datepicker__day-names {\n .react-datepicker__day-name {\n width: calc((100vw - (6px * 7)) / 7);\n }\n }\n }\n"], ["\n padding: 0;\n border: none !important;\n border-radius: 0 !important;\n background: transparent !important;\n overflow: hidden;\n width: 100%;\n height: 100%;\n .react-datepicker__header {\n background-color: transparent !important;\n }\n .react-datepicker__month-container {\n width: 100%;\n height: 100%;\n }\n .react-datepicker__day-names {\n display: flex;\n justify-content: space-between;\n .react-datepicker__day-name {\n font-family: \"Inter\", sans-serif;\n font-weight: 600;\n font-size: 14px;\n color: ", ";\n text-transform: uppercase;\n margin: 0;\n width: 33px;\n line-height: normal;\n }\n }\n .react-datepicker__month {\n padding: 0;\n margin: 20px 0 0 !important;\n border: none;\n width: 100%;\n height: calc(100% - 85px);\n .react-datepicker__week {\n display: flex;\n justify-content: space-between;\n }\n }\n .react-datepicker__week {\n margin-bottom: 10px;\n &:last-of-type {\n margin-bottom: 0;\n }\n }\n .react-datepicker__day {\n width: 33px;\n height: 33px;\n user-select: none;\n border-radius: 50% !important;\n transition: background ease-out 0.3s;\n border: 1px solid transparent;\n margin: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n font-weight: 500;\n font-size: 16px;\n &:hover {\n background: ", ";\n }\n &:active {\n background: ", ";\n }\n }\n .react-datepicker__day--outside-month,\n .react-datepicker__day--disabled {\n color: #a6aebc;\n p {\n color: #a6aebc;\n }\n }\n .react-datepicker__day--keyboard-selected {\n background: transparent;\n color: inherit;\n }\n .react-datepicker__day--today {\n color: ", ";\n background-color: ", ";\n }\n .react-datepicker__day--selected {\n background: white;\n border: 1px solid #e1e4e8;\n color: ", ";\n p {\n color: ", ";\n }\n }\n .react-datepicker__day--selected.warning_day {\n border-color: ", ";\n background-color: ", ";\n color: ", ";\n }\n @media (max-width: 600px) {\n .react-datepicker__day {\n max-width: 48px;\n max-height: 48px;\n width: calc((100vw - (18px * 7)) / 7);\n height: calc((100vw - (18px * 7)) / 7);\n }\n .react-datepicker__day-names {\n .react-datepicker__day-name {\n max-width: 48px;\n width: calc((100vw - (18px * 7)) / 7);\n }\n }\n }\n @media (max-width: 350px) {\n .react-datepicker__day {\n width: calc((100vw - (6px * 7)) / 7);\n height: calc((100vw - (6px * 7)) / 7);\n }\n .react-datepicker__day-names {\n .react-datepicker__day-name {\n width: calc((100vw - (6px * 7)) / 7);\n }\n }\n }\n"])), kuiBasic.theme.palette.grey.fiftyP, kuiBasic.theme.palette.background.light3, kuiBasic.theme.palette.background.light3, kuiBasic.theme.palette.brand.main, kuiBasic.theme.palette.brand.light, kuiBasic.theme.palette.brand.main, kuiBasic.theme.palette.brand.main, kuiBasic.theme.palette.grey.fifteenB, kuiBasic.theme.palette.red.seventy, kuiBasic.theme.palette.grey.zero);
450
+ var templateObject_1$y;
451
+
452
+ var CalendarStandardHeader = React.forwardRef(function (_a, ref) {
453
+ var decreaseMonth = _a.decreaseMonth, increaseMonth = _a.increaseMonth, nextMonthButtonDisabled = _a.nextMonthButtonDisabled, prevMonthButtonDisabled = _a.prevMonthButtonDisabled, date = _a.date;
454
+ var title = ___default["default"].capitalize(date.toLocaleString("ru", { month: "long", year: "numeric" })).slice(0, -3);
455
+ return (jsxRuntime.jsxs(HeaderWrapper, __assign({ container: true, alignItems: "center", justify: "space-between", ref: ref }, { children: [jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime.jsx(StyledHeading, __assign({ size: "h4" }, { children: title })) })), jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime.jsxs(kuiBasic.Grid, __assign({ container: true, spacing: 2 }, { children: [jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime.jsx(CircleButtonStyled, __assign({ isCircle: true, size: "xs", "data-testid": "prev_month_button", variant: "white", disabled: prevMonthButtonDisabled, onClick: decreaseMonth }, { children: jsxRuntime.jsx(kuiIcon.PrevArrowIcon, { width: 10, height: 10 }) })) })), jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime.jsx(CircleButtonStyled, __assign({ isCircle: true, size: "xs", variant: "white", disabled: nextMonthButtonDisabled, onClick: increaseMonth }, { children: jsxRuntime.jsx(kuiIcon.NextArrowIcon, { width: 10, height: 10 }) })) }))] })) }))] })));
456
+ });
457
+ var HeaderWrapper = styled__default["default"](kuiBasic.Grid)(templateObject_1$x || (templateObject_1$x = __makeTemplateObject(["\n padding: 0 6px 34px;\n @media (max-width: 600px) {\n h2 {\n font-size: 16px;\n }\n }\n"], ["\n padding: 0 6px 34px;\n @media (max-width: 600px) {\n h2 {\n font-size: 16px;\n }\n }\n"])));
458
+ var StyledHeading = styled__default["default"](kuiBasic.Heading)(templateObject_2$j || (templateObject_2$j = __makeTemplateObject(["\n @media (max-width: 600px) {\n font-weight: 700;\n }\n"], ["\n @media (max-width: 600px) {\n font-weight: 700;\n }\n"])));
459
+ var CircleButtonStyled = styled__default["default"](kuiBasic.Button)(templateObject_3$9 || (templateObject_3$9 = __makeTemplateObject(["\n border-color: transparent !important;\n &:disabled {\n background-color: white !important;\n }\n"], ["\n border-color: transparent !important;\n &:disabled {\n background-color: white !important;\n }\n"])));
460
+ var templateObject_1$x, templateObject_2$j, templateObject_3$9;
461
+
462
+ var InputForDatepicker = React.forwardRef(function (props, ref) {
463
+ var onClick = props.onClick, disabled = props.disabled, handleClick = props.handleClick, startIcon = props.startIcon, other = __rest(props, ["onClick", "disabled", "handleClick", "startIcon"]);
464
+ var handleIconClick = function () {
465
+ if (handleClick) {
466
+ handleClick();
467
+ }
468
+ else {
469
+ onClick();
470
+ }
471
+ };
472
+ var Icon = function () { return (jsxRuntime.jsx(IconWrapper, __assign({ disabled: disabled, onClick: handleIconClick }, { children: startIcon || jsxRuntime.jsx(kuiIcon.CalendarIcon, { width: 19, height: 21 }) }))); };
473
+ return (jsxRuntime.jsx(kuiBasic.InputWithMask, __assign({ disabled: disabled, endIcon: !startIcon && jsxRuntime.jsx(Icon, {}), startIcon: startIcon && jsxRuntime.jsx(Icon, {}) }, other, { ref: ref })));
474
+ });
475
+ var IconWrapper = styled__default["default"].div(templateObject_1$w || (templateObject_1$w = __makeTemplateObject(["\n display: flex;\n align-items: center;\n cursor: pointer;\n z-index: 1;\n"], ["\n display: flex;\n align-items: center;\n cursor: pointer;\n z-index: 1;\n"])));
476
+ var templateObject_1$w;
477
+
478
+ var MonthPickerContainer = React.forwardRef(function (_a, ref) {
479
+ _a.arrowProps; _a.showPopperArrow; var props = __rest(_a, ["arrowProps", "showPopperArrow"]);
480
+ return jsxRuntime.jsx(StyledContainer$1, __assign({ ref: ref }, props));
481
+ });
482
+ var StyledContainer$1 = styled__default["default"].div(templateObject_1$v || (templateObject_1$v = __makeTemplateObject(["\n box-shadow: 0px 26px 34px rgba(0, 0, 0, 0.1);\n border-radius: 12px !important;\n border: 1px solid ", " !important;\n background: #fff;\n overflow: hidden;\n z-index: 5;\n .react-datepicker-wrapper,\n .react-datepicker__input-container {\n display: block;\n width: 100%;\n }\n .react-datepicker__header,\n .react-datepicker__header:not(.react-datepicker__header--has-time-select) {\n padding: 0;\n border: none;\n background-color: #fff;\n }\n .react-datepicker__month {\n margin: 0px 8px 8px !important;\n border-radius: 12px;\n border: 1px solid ", ";\n width: 238px;\n height: 169px;\n display: flex;\n flex-direction: column;\n }\n .react-datepicker__month-text {\n margin: 4px !important;\n /*width: auto !important;*/\n width: calc(100% / 3) !important;\n position: relative;\n display: flex !important;\n justify-content: center;\n align-items: center;\n }\n\n .react-datepicker__month-wrapper {\n height: calc(100% / 4);\n display: flex;\n }\n\n .react-datepicker__month-text:after {\n content: \"\";\n display: block;\n height: calc(100% + 8px);\n width: 1px;\n position: absolute;\n top: -4px;\n right: -4px;\n background: ", ";\n }\n\n .react-datepicker__month-text:nth-child(3n):after {\n content: none;\n }\n\n .react-datepicker__month--selected,\n .react-datepicker__month-text--keyboard-selected {\n background-color: ", " !important;\n border-radius: 8px !important;\n color: white !important;\n }\n .react-datepicker__month-wrapper {\n border-bottom: 1px solid ", ";\n }\n\n .react-datepicker__month-wrapper:last-child {\n border-bottom: none;\n }\n\n @media (max-width: 600px) {\n .react-datepicker__month-container {\n width: 100%;\n height: 100%;\n }\n .react-datepicker__month {\n margin: 0px 16px 16px !important;\n height: calc(100% - 58px);\n text-align: center;\n width: auto;\n }\n .react-datepicker__month-text {\n margin: 8px !important;\n }\n .react-datepicker__month-text:after {\n height: calc(100% + 16px);\n top: -8px;\n right: -8px;\n }\n .react-datepicker__month-text:nth-child(3n):after {\n content: none;\n }\n }\n @media (max-width: 600px) {\n width: 100%;\n height: 262px;\n box-shadow: 0px 5px 16px rgba(0, 0, 0, 0.1);\n }\n"], ["\n box-shadow: 0px 26px 34px rgba(0, 0, 0, 0.1);\n border-radius: 12px !important;\n border: 1px solid ", " !important;\n background: #fff;\n overflow: hidden;\n z-index: 5;\n .react-datepicker-wrapper,\n .react-datepicker__input-container {\n display: block;\n width: 100%;\n }\n .react-datepicker__header,\n .react-datepicker__header:not(.react-datepicker__header--has-time-select) {\n padding: 0;\n border: none;\n background-color: #fff;\n }\n .react-datepicker__month {\n margin: 0px 8px 8px !important;\n border-radius: 12px;\n border: 1px solid ", ";\n width: 238px;\n height: 169px;\n display: flex;\n flex-direction: column;\n }\n .react-datepicker__month-text {\n margin: 4px !important;\n /*width: auto !important;*/\n width: calc(100% / 3) !important;\n position: relative;\n display: flex !important;\n justify-content: center;\n align-items: center;\n }\n\n .react-datepicker__month-wrapper {\n height: calc(100% / 4);\n display: flex;\n }\n\n .react-datepicker__month-text:after {\n content: \"\";\n display: block;\n height: calc(100% + 8px);\n width: 1px;\n position: absolute;\n top: -4px;\n right: -4px;\n background: ", ";\n }\n\n .react-datepicker__month-text:nth-child(3n):after {\n content: none;\n }\n\n .react-datepicker__month--selected,\n .react-datepicker__month-text--keyboard-selected {\n background-color: ", " !important;\n border-radius: 8px !important;\n color: white !important;\n }\n .react-datepicker__month-wrapper {\n border-bottom: 1px solid ", ";\n }\n\n .react-datepicker__month-wrapper:last-child {\n border-bottom: none;\n }\n\n @media (max-width: 600px) {\n .react-datepicker__month-container {\n width: 100%;\n height: 100%;\n }\n .react-datepicker__month {\n margin: 0px 16px 16px !important;\n height: calc(100% - 58px);\n text-align: center;\n width: auto;\n }\n .react-datepicker__month-text {\n margin: 8px !important;\n }\n .react-datepicker__month-text:after {\n height: calc(100% + 16px);\n top: -8px;\n right: -8px;\n }\n .react-datepicker__month-text:nth-child(3n):after {\n content: none;\n }\n }\n @media (max-width: 600px) {\n width: 100%;\n height: 262px;\n box-shadow: 0px 5px 16px rgba(0, 0, 0, 0.1);\n }\n"])), kuiBasic.theme.palette.background.light1, kuiBasic.theme.palette.grey.fifteenB, kuiBasic.theme.palette.grey.fifteenB, kuiBasic.theme.palette.brand.main, kuiBasic.theme.palette.grey.fifteenB);
483
+ var templateObject_1$v;
484
+
485
+ var MonthPickerHeader = React.forwardRef(function (_a, ref) {
486
+ var decreaseYear = _a.decreaseYear, increaseYear = _a.increaseYear, nextYearButtonDisabled = _a.nextYearButtonDisabled, prevYearButtonDisabled = _a.prevYearButtonDisabled, date = _a.date;
487
+ return (jsxRuntime.jsxs(StyledHeader, __assign({ container: true, alignItems: "center", justify: "space-between", ref: ref }, { children: [jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime.jsx(StyledIconButton, __assign({ disabled: prevYearButtonDisabled, onClick: decreaseYear }, { children: jsxRuntime.jsx(kuiIcon.ArrowBackIcon, { width: 14, height: 12 }) })) })), jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime.jsx(kuiBasic.Caption, __assign({ size: "sm", weight: 600 }, { children: date.getFullYear() })) })), jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime.jsx(StyledIconButton, __assign({ disabled: nextYearButtonDisabled, onClick: increaseYear }, { children: jsxRuntime.jsx(kuiIcon.ArrowNextIcon, { width: 14, height: 12 }) })) }))] })));
488
+ });
489
+ var StyledIconButton = styled__default["default"](kuiBasic.IconButton)(templateObject_1$u || (templateObject_1$u = __makeTemplateObject(["\n height: 36px;\n &:disabled {\n opacity: 0;\n }\n"], ["\n height: 36px;\n &:disabled {\n opacity: 0;\n }\n"])));
490
+ var StyledHeader = styled__default["default"](kuiBasic.Grid)(templateObject_2$i || (templateObject_2$i = __makeTemplateObject(["\n background: #fff;\n padding: 4px 16px;\n border-radius: 12px 12px 0 0;\n"], ["\n background: #fff;\n padding: 4px 16px;\n border-radius: 12px 12px 0 0;\n"])));
491
+ var templateObject_1$u, templateObject_2$i;
492
+
493
+ var DesktopInputWithMonthPicker = React.forwardRef(function (_a, ref) {
494
+ var name = _a.name, form = _a.form, disabled = _a.disabled, datePickerProps = _a.datePickerProps, otherProps = __rest(_a, ["name", "form", "disabled", "datePickerProps"]);
495
+ return (jsxRuntime.jsx(Wrapper$4, __assign({ ref: ref }, { children: jsxRuntime.jsx(reactHookForm.Controller, { name: name, control: form.control, render: function (_a) {
496
+ var _b;
497
+ var field = _a.field, fieldState = _a.fieldState;
498
+ return (jsxRuntime.jsx(DatePicker__default["default"], __assign({ selected: field.value, onChange: field.onChange, disabled: disabled, customInput: jsxRuntime.jsx(InputForDatepicker, __assign({ mask: "00.0000", name: name, disabled: disabled, message: (_b = fieldState.error) === null || _b === void 0 ? void 0 : _b.message }, otherProps)), showMonthYearPicker: true, dateFormat: "MM.yyyy", popperPlacement: "bottom-end", calendarContainer: MonthPickerContainer, renderCustomHeader: function (props) { return (jsxRuntime.jsx(MonthPickerHeader, __assign({}, props))); } }, datePickerProps)));
499
+ } }) })));
500
+ });
501
+ var Wrapper$4 = styled__default["default"].div(templateObject_1$t || (templateObject_1$t = __makeTemplateObject(["\n @media (max-width: 600px) {\n display: none;\n }\n"], ["\n @media (max-width: 600px) {\n display: none;\n }\n"])));
502
+ var templateObject_1$t;
503
+
504
+ var MenuItem = React.forwardRef(function (_a, ref) {
505
+ var tab = _a.tab, active = _a.active, index = _a.index, handleClick = _a.handleClick, offset = _a.offset, isScrolling = _a.isScrolling, setIsScrolling = _a.setIsScrolling;
506
+ var startScrolling = function () {
507
+ setIsScrolling(true);
508
+ };
509
+ var endScrolling = function () {
510
+ setIsScrolling(false);
511
+ };
512
+ var handleSelect = function () {
513
+ if (!isScrolling) {
514
+ handleClick(index);
515
+ }
516
+ };
517
+ React.useEffect(function () {
518
+ if (active === index) {
519
+ reactScroll.scroller.scrollTo(tab.label, { offset: offset });
520
+ }
521
+ reactScroll.Events.scrollEvent.register("begin", function (to, element) {
522
+ startScrolling();
523
+ if (element) {
524
+ handleClick(Number(element.dataset.index));
525
+ }
526
+ });
527
+ reactScroll.Events.scrollEvent.register("end", function (to, element) {
528
+ setTimeout(endScrolling);
529
+ });
530
+ return function () {
531
+ reactScroll.Events.scrollEvent.remove("begin");
532
+ reactScroll.Events.scrollEvent.remove("end");
533
+ };
534
+ }, []);
535
+ return (jsxRuntime$1.jsx(reactScroll.Link, __assign({ to: tab.label, spy: true, smooth: true, duration: 500, offset: offset, onSetActive: handleSelect }, { children: jsxRuntime$1.jsx(ButtonWrapper$2, __assign({ ref: ref }, { children: jsxRuntime$1.jsx(kuiBasic.Button, __assign({ variant: Number(active) === index ? "orange" : "transparentWithBorder", size: "xs", css: Number(active) !== index && disabledStyles }, { children: tab.label })) })) })));
536
+ });
537
+ var ButtonWrapper$2 = styled__default["default"].div(templateObject_1$s || (templateObject_1$s = __makeTemplateObject(["\n margin-right: 8px;\n width: max-content;\n max-width: 150px;\n @media (max-width: 900px) {\n max-width: unset;\n }\n"], ["\n margin-right: 8px;\n width: max-content;\n max-width: 150px;\n @media (max-width: 900px) {\n max-width: unset;\n }\n"])));
538
+ var disabledStyles = react.css(templateObject_2$h || (templateObject_2$h = __makeTemplateObject(["\n p {\n color: ", ";\n font-weight: 400;\n },\n"], ["\n p {\n color: ", ";\n font-weight: 400;\n },\n"])), kuiBasic.theme.palette.grey.seventy);
539
+ var templateObject_1$s, templateObject_2$h;
540
+
541
+ var DesktopMenuPanel = React.forwardRef(function (_a, ref) {
542
+ var tabs = _a.tabs, variant = _a.variant, other = __rest(_a, ["tabs", "variant"]);
543
+ return (jsxRuntime$1.jsx(Wrapper$3, __assign({ container: true, css: variant === "white" && { background: "white" }, ref: ref }, { children: tabs.map(function (tab, index) { return (jsxRuntime$1.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime$1.jsx(MenuItem, __assign({ tab: tab, index: index, offset: -121 }, other), tab.label) }), index)); }) })));
544
+ });
545
+ var Wrapper$3 = styled__default["default"](kuiBasic.Grid)(templateObject_1$r || (templateObject_1$r = __makeTemplateObject(["\n position: sticky;\n top: 49px;\n left: 0;\n z-index: 11;\n background-color: ", ";\n padding: 16px 16px 24px;\n @media (max-width: 900px) {\n justify-content: space-between;\n }\n @media (max-width: 765px) {\n display: none;\n }\n"], ["\n position: sticky;\n top: 49px;\n left: 0;\n z-index: 11;\n background-color: ", ";\n padding: 16px 16px 24px;\n @media (max-width: 900px) {\n justify-content: space-between;\n }\n @media (max-width: 765px) {\n display: none;\n }\n"])), kuiBasic.theme.palette.background.light1);
546
+ var templateObject_1$r;
547
+
548
+ var InputWithMask = React.forwardRef(function (_a, ref) {
549
+ var form = _a.form, name = _a.name, error = _a.error, inputProps = __rest(_a, ["form", "name", "error"]);
550
+ var handleChange = function (e, field) {
551
+ field.onChange(e);
552
+ if (inputProps.onChange) {
553
+ inputProps.onChange(e);
554
+ }
555
+ };
556
+ var getError = function (fieldState) {
557
+ var _a;
558
+ return typeof error !== "undefined" && String(error).length > 0
559
+ ? error
560
+ : (_a = fieldState.error) === null || _a === void 0 ? void 0 : _a.message;
561
+ };
562
+ return (jsxRuntime.jsx(reactHookForm.Controller, { control: form === null || form === void 0 ? void 0 : form.control, name: name, render: function (_a) {
563
+ var field = _a.field, fieldState = _a.fieldState;
564
+ return (jsxRuntime.jsx(kuiBasic.InputWithMask, __assign({ message: getError(fieldState) }, field, inputProps, { onChange: function (e) {
565
+ return handleChange(e, field);
566
+ }, inputRef: ref })));
567
+ } }));
568
+ });
569
+
570
+ var InputWithController = React.forwardRef(function (_a, ref) {
571
+ var form = _a.form, name = _a.name, error = _a.error, value = _a.value, type = _a.type, inputProps = __rest(_a, ["form", "name", "error", "value", "type"]);
572
+ var handleChange = function (e, field) {
573
+ var _a;
574
+ var newValue = type === "number" && !((_a = e.target.value) === null || _a === void 0 ? void 0 : _a.length) ? null : e.target.value;
575
+ field.onChange(__assign(__assign({}, e), { target: __assign(__assign({}, e.target), { value: newValue }) }));
576
+ if (inputProps.onChange) {
577
+ inputProps.onChange(e);
578
+ }
579
+ };
580
+ var getError = function (fieldState) {
581
+ var _a;
582
+ return typeof error !== "undefined" && String(error).length > 0
583
+ ? error
584
+ : (_a = fieldState.error) === null || _a === void 0 ? void 0 : _a.message;
585
+ };
586
+ return (jsxRuntime.jsx(reactHookForm.Controller, { control: form === null || form === void 0 ? void 0 : form.control, name: name, render: function (_a) {
587
+ var field = _a.field, fieldState = _a.fieldState;
588
+ return (jsxRuntime.jsx(kuiBasic.InputWithAdornments, __assign({ message: getError(fieldState) }, field, inputProps, { onChange: function (e) {
589
+ return handleChange(e, field);
590
+ }, type: type, value: value !== null && value !== void 0 ? value : field.value, inputRef: ref })));
591
+ } }));
592
+ });
593
+
594
+ var strengthCoefficients = {
595
+ weak: 0,
596
+ simple: 1,
597
+ medium: 2,
598
+ hard: 3,
599
+ };
600
+ var strengthColors = {
601
+ weak: kuiBasic.theme.palette.red.fiftyP,
602
+ simple: kuiBasic.theme.palette.brand.main,
603
+ medium: kuiBasic.theme.palette.blue.fiftyP,
604
+ hard: kuiBasic.theme.palette.green.fiftyP,
605
+ };
606
+ var strengthTexts = {
607
+ weak: "Очень простой",
608
+ simple: "Простой",
609
+ medium: "Средний",
610
+ hard: "Сложный",
611
+ };
612
+ var PassportStrengthBar = React.forwardRef(function (_a, ref) {
613
+ var strength = _a.strength;
614
+ var color = strength
615
+ ? strengthColors[strength]
616
+ : "";
617
+ var strengthKey = strength
618
+ ? strengthCoefficients[strength]
619
+ : -1;
620
+ return (jsxRuntime$1.jsxs(Wrapper$2, __assign({ "data-testid": "strength_bar", className: String(!strength && "hidden"), ref: ref }, { children: [jsxRuntime$1.jsx(ReliabilityLevelWrapper, { children: Object.keys(strengthCoefficients).map(function (item, key) { return (jsxRuntime$1.jsx(ReliabilityLevel, { children: jsxRuntime$1.jsx(StyledLinearProgress, { "data-testid": "progress_item_".concat(item), value: strengthKey >= key ? 100 : 0, color: color }) }, item)); }) }), jsxRuntime$1.jsx(kuiBasic.Caption, __assign({ "data-testid": "strength_bar_explanation", size: "s", css: { color: color } }, { children: strength && strengthTexts[strength] })), jsxRuntime$1.jsx(Description, __assign({ size: "s", color: "fiftyP" }, { children: "\u041F\u0430\u0440\u043E\u043B\u044C \u0434\u043E\u043B\u0436\u0435\u043D \u0441\u043E\u0441\u0442\u043E\u044F\u0442\u044C \u0438\u0437 10 \u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432, \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C \u0446\u0438\u0444\u0440\u044B, \u0431\u043E\u043B\u044C\u0448\u0438\u0435 \u0438 \u0441\u0442\u0440\u043E\u0447\u043D\u044B\u0435 \u043B\u0430\u0442\u0438\u043D\u0441\u043A\u0438\u0435 \u0431\u0443\u0432\u044B" }))] })));
621
+ });
622
+ var Wrapper$2 = styled__default["default"].div(templateObject_1$q || (templateObject_1$q = __makeTemplateObject(["\n margin-top: 16px;\n min-height: 86px;\n @media (max-width: 900px) {\n min-height: unset;\n }\n &.hidden {\n opacity: 0;\n @media (max-width: 900px) {\n display: none;\n }\n }\n"], ["\n margin-top: 16px;\n min-height: 86px;\n @media (max-width: 900px) {\n min-height: unset;\n }\n &.hidden {\n opacity: 0;\n @media (max-width: 900px) {\n display: none;\n }\n }\n"])));
623
+ var ReliabilityLevelWrapper = styled__default["default"].div(templateObject_2$g || (templateObject_2$g = __makeTemplateObject(["\n display: flex;\n margin-bottom: 8px;\n"], ["\n display: flex;\n margin-bottom: 8px;\n"])));
624
+ var ReliabilityLevel = styled__default["default"].div(templateObject_3$8 || (templateObject_3$8 = __makeTemplateObject(["\n width: calc(100% / 4);\n margin-right: 16px;\n &:last-of-type {\n margin-right: 0;\n }\n"], ["\n width: calc(100% / 4);\n margin-right: 16px;\n &:last-of-type {\n margin-right: 0;\n }\n"])));
625
+ var StyledLinearProgress = styled__default["default"](kuiBasic.LinearProgress)(templateObject_4$5 || (templateObject_4$5 = __makeTemplateObject(["\n height: 8px;\n border-radius: 8px;\n background-color: ", ";\n & .KUI-LinearProgress_bar {\n background-color: ", ";\n width: 102%;\n }\n"], ["\n height: 8px;\n border-radius: 8px;\n background-color: ", ";\n & .KUI-LinearProgress_bar {\n background-color: ", ";\n width: 102%;\n }\n"])), kuiBasic.theme.palette.grey.fifteenB, function (_a) {
626
+ var color = _a.color;
627
+ return color;
628
+ });
629
+ var Description = styled__default["default"](kuiBasic.Caption)(templateObject_5$3 || (templateObject_5$3 = __makeTemplateObject(["\n margin-top: 16px;\n @media (max-width: 900px) {\n margin-top: 8px;\n font-size: 12px;\n }\n"], ["\n margin-top: 16px;\n @media (max-width: 900px) {\n margin-top: 8px;\n font-size: 12px;\n }\n"])));
630
+ var templateObject_1$q, templateObject_2$g, templateObject_3$8, templateObject_4$5, templateObject_5$3;
631
+
632
+ var getFormValue = function (name, form) {
633
+ var names = name === null || name === void 0 ? void 0 : name.split(".");
634
+ var fieldValue = form === null || form === void 0 ? void 0 : form.control._formValues;
635
+ names === null || names === void 0 ? void 0 : names.forEach(function (field) {
636
+ if (fieldValue) {
637
+ fieldValue = fieldValue[field];
638
+ }
639
+ });
640
+ return fieldValue;
641
+ };
642
+ var getFormError = function (name, form) {
643
+ var names = name === null || name === void 0 ? void 0 : name.split(".");
644
+ var fieldError = form === null || form === void 0 ? void 0 : form.formState.errors;
645
+ names === null || names === void 0 ? void 0 : names.forEach(function (field) {
646
+ if (fieldError) {
647
+ // @ts-ignore
648
+ fieldError = fieldError[field];
649
+ }
650
+ });
651
+ return fieldError === null || fieldError === void 0 ? void 0 : fieldError.message;
652
+ };
653
+
654
+ var phoneRegExp = /^((\\+[1-9]{1,4}[ \\-]*)|(\\([0-9]{2,3}\\)[ \\-]*)|([0-9]{2,4})[ \\-]*)*?[0-9]{3,4}?[ \\-]*[0-9]{3,4}?$/;
655
+ var isValidWithMaskExp = /^[^_]+$/;
656
+ var dateRegExp = /(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)\d\d/;
657
+ var monthYearRegExp = /(0[1-9]|1[012])[- /.](19|20)\d\d/;
658
+ var emailRegExp = /^[-\w.]+@([A-z0-9][-A-z0-9]+\.)+[A-z]{2,4}$/;
659
+ var carNumberRegExp = /^([А-Яа-я]{1}[0-9]{3}[А-Яа-я]{2}\s{0,1}[0-9]{2,3})?$/;
660
+ var innRegExp = /^(([0-9]{12})|([0-9]{10}))?$/;
661
+ var corrAccountRegExp = /^(301[0-9]{17})?$/;
662
+ var accountRegExp = /^408([0-9]{17})?$/;
663
+ var bicRegExp = /^([0-9]{9})?$/;
664
+ var swiftRegExp = /^([A-Za-z]{6}\w{2}\d{0,3})?$/;
665
+ var simplePasswordRegExp = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%^&*]).{10,}$/;
666
+ var mediumPasswordRegExp = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%^&*]).{12,}$/;
667
+ var strongPasswordRegExp = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%^&*]).{14,}$/;
668
+
669
+ var InputPassword = React.forwardRef(function (props, ref) {
670
+ var _a = React.useState(false), showPassword = _a[0], setShowPassword = _a[1];
671
+ var _b = React.useState(null), strength = _b[0], setStrength = _b[1];
672
+ var handleShowChange = function () {
673
+ setShowPassword(function (prev) { return !prev; });
674
+ };
675
+ var checkPasswordStrength = function (value) {
676
+ if (value.length === 0) {
677
+ setStrength(null);
678
+ return;
679
+ }
680
+ if (strongPasswordRegExp.test(value)) {
681
+ setStrength("hard");
682
+ }
683
+ else if (mediumPasswordRegExp.test(value)) {
684
+ setStrength("medium");
685
+ }
686
+ else if (simplePasswordRegExp.test(value)) {
687
+ setStrength("simple");
688
+ }
689
+ else {
690
+ setStrength("weak");
691
+ }
692
+ };
693
+ var handleChange = function (e) {
694
+ var targetValue = e.target.value;
695
+ checkPasswordStrength(targetValue);
696
+ };
697
+ React.useEffect(function () {
698
+ var form = props.form, name = props.name;
699
+ var fieldValue = getFormValue(name, form);
700
+ if (typeof fieldValue === "string") {
701
+ checkPasswordStrength(fieldValue);
702
+ }
703
+ }, []);
704
+ return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(InputWithController, __assign({ type: showPassword ? "text" : "password", autoComplete: "new_password", onChange: handleChange, "data-testid": "input_password", ref: ref, endIcon: jsxRuntime.jsx(EyeIconWrapper, __assign({ "data-testid": "show_value_btn", onClick: handleShowChange }, { children: showPassword ? jsxRuntime.jsx(kuiIcon.ClosedEyeIcon, {}) : jsxRuntime.jsx(kuiIcon.OpenEyeIcon, {}) })) }, props)), jsxRuntime.jsx(PassportStrengthBar, { strength: strength })] }));
705
+ });
706
+ var EyeIconWrapper = styled__default["default"].div(templateObject_1$p || (templateObject_1$p = __makeTemplateObject(["\n height: 18px;\n display: flex;\n align-items: center;\n cursor: pointer;\n"], ["\n height: 18px;\n display: flex;\n align-items: center;\n cursor: pointer;\n"])));
707
+ var templateObject_1$p;
708
+
709
+ var InputTextAreaMobile = React.forwardRef(function (props) { return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(InputWrapper$1, { children: jsxRuntime.jsx(InputWithController, __assign({}, props)) }), jsxRuntime.jsx(TextAreaWrapper, { children: jsxRuntime.jsx(InputWithController, __assign({ isTextArea: true }, props)) })] })); });
710
+ var InputWrapper$1 = styled__default["default"].div(templateObject_1$o || (templateObject_1$o = __makeTemplateObject(["\n @media (max-width: 900px) {\n display: none;\n }\n"], ["\n @media (max-width: 900px) {\n display: none;\n }\n"])));
711
+ var TextAreaWrapper = styled__default["default"].div(templateObject_2$f || (templateObject_2$f = __makeTemplateObject(["\n @media (min-width: 901px) {\n display: none;\n }\n"], ["\n @media (min-width: 901px) {\n display: none;\n }\n"])));
712
+ var templateObject_1$o, templateObject_2$f;
713
+
714
+ var useToggle = function (isModalOpen) {
715
+ if (isModalOpen === void 0) { isModalOpen = false; }
716
+ var _a = React.useState(isModalOpen), isOpen = _a[0], setIsOpen = _a[1];
717
+ var handleClose = function () {
718
+ setIsOpen(false);
719
+ };
720
+ var handleOpen = function () {
721
+ setIsOpen(true);
722
+ };
723
+ return [isOpen, handleOpen, handleClose];
724
+ };
725
+
726
+ var ModalFooter = React.forwardRef(function (_a, ref) {
727
+ var label = _a.label, button = _a.button, otherProps = __rest(_a, ["label", "button"]);
728
+ return (jsxRuntime.jsxs(StyledFooter, __assign({ ref: ref }, { children: [jsxRuntime.jsx(kuiBasic.Divider, {}), jsxRuntime.jsx(ButtonWrapper$1, { children: button || (jsxRuntime.jsx(ButtonStyled, __assign({ fullWidth: true, size: "s", endIcon: jsxRuntime.jsx(kuiIcon.CheckIcon, {}) }, otherProps, { children: label }))) })] })));
729
+ });
730
+ var StyledFooter = styled__default["default"].div(templateObject_1$n || (templateObject_1$n = __makeTemplateObject(["\n background: ", ";\n border-radius: 0 0 12px 12px;\n z-index: 10;\n position: sticky;\n bottom: 0;\n left: 0;\n"], ["\n background: ", ";\n border-radius: 0 0 12px 12px;\n z-index: 10;\n position: sticky;\n bottom: 0;\n left: 0;\n"])), kuiBasic.theme.palette.grey.zero);
731
+ var ButtonWrapper$1 = styled__default["default"].div(templateObject_2$e || (templateObject_2$e = __makeTemplateObject(["\n display: flex;\n justify-content: flex-end;\n padding: 24px 40px;\n @media (max-width: 600px) {\n padding: 24px 16px;\n }\n"], ["\n display: flex;\n justify-content: flex-end;\n padding: 24px 40px;\n @media (max-width: 600px) {\n padding: 24px 16px;\n }\n"])));
732
+ var ButtonStyled = styled__default["default"](kuiBasic.Button)(templateObject_3$7 || (templateObject_3$7 = __makeTemplateObject(["\n @media (max-width: 600px) {\n width: 100%;\n }\n"], ["\n @media (max-width: 600px) {\n width: 100%;\n }\n"])));
733
+ var templateObject_1$n, templateObject_2$e, templateObject_3$7;
734
+
735
+ var generateYearRange = function (offsetFromCurrent, maxYearCount) {
736
+ if (!offsetFromCurrent || !maxYearCount)
737
+ return [];
738
+ var endYear = luxon.DateTime.now().year - offsetFromCurrent;
739
+ return ___default["default"].range(maxYearCount).map(function (elem) {
740
+ var fullYear = endYear - elem;
741
+ return {
742
+ value: fullYear,
743
+ label: fullYear,
744
+ };
745
+ });
746
+ };
747
+ var InputWithDatePicker = React.forwardRef(function (_a, ref) {
748
+ var _b;
749
+ var title = _a.title, description = _a.description, name = _a.name, form = _a.form, disabled = _a.disabled, yearParams = _a.yearParams, onChange = _a.onChange, max = _a.max, min = _a.min, footerLabel = _a.footerLabel, datePickerProps = _a.datePickerProps, alignTitle = _a.alignTitle, props = __rest(_a, ["title", "description", "name", "form", "disabled", "yearParams", "onChange", "max", "min", "footerLabel", "datePickerProps", "alignTitle"]);
750
+ var _c = reactHookForm.useController({
751
+ name: name,
752
+ control: form.control,
753
+ }), field = _c.field, fieldState = _c.fieldState;
754
+ var error = (_b = fieldState.error) === null || _b === void 0 ? void 0 : _b.message;
755
+ var formattedValue = field.value ? field.value.toFormat("dd.MM.yyyy") : "";
756
+ var formattedDate = field.value ? field.value.toJSDate() : null;
757
+ var _d = useToggle(), isModalOpen = _d[0], handleModalOpen = _d[1], handleModalClose = _d[2];
758
+ var _e = React.useState(formattedDate), date = _e[0], setDate = _e[1];
759
+ var _f = React.useState(formattedValue), value = _f[0], setValue = _f[1];
760
+ var yearList = generateYearRange(yearParams === null || yearParams === void 0 ? void 0 : yearParams.min, yearParams === null || yearParams === void 0 ? void 0 : yearParams.max);
761
+ React.useEffect(function () {
762
+ if (!isModalOpen) {
763
+ setDate(null);
764
+ }
765
+ else {
766
+ setDate(formattedDate);
767
+ }
768
+ }, [isModalOpen]);
769
+ var handleChange = function (e) {
770
+ var targetValue = e.target.value;
771
+ setValue(targetValue);
772
+ if (targetValue.length !== 0 && isValidWithMaskExp.test(targetValue)) {
773
+ var targetDate = luxon.DateTime.fromFormat(targetValue, "dd.MM.yyyy");
774
+ setDate(targetDate.toJSDate());
775
+ field === null || field === void 0 ? void 0 : field.onChange({ target: { value: targetDate, name: name }, type: "change" });
776
+ if (onChange) {
777
+ onChange(targetDate);
778
+ }
779
+ }
780
+ else {
781
+ setDate(null);
782
+ field === null || field === void 0 ? void 0 : field.onChange({ target: { value: null, name: name }, type: "change" });
783
+ if (onChange) {
784
+ onChange(null);
785
+ }
786
+ }
787
+ };
788
+ var acceptWithDateSelected = function () {
789
+ if (date) {
790
+ var dateObj = luxon.DateTime.fromJSDate(date);
791
+ setValue(dateObj.toFormat("dd.MM.yyyy"));
792
+ field === null || field === void 0 ? void 0 : field.onChange({ target: { value: dateObj, name: name }, type: "change" });
793
+ if (onChange) {
794
+ onChange(dateObj);
795
+ }
796
+ handleModalClose();
797
+ }
798
+ };
799
+ var handleDateChange = function (newDate) {
800
+ setDate(newDate);
801
+ };
802
+ var forwardedRef = useForkRef(ref, field.ref);
803
+ return (jsxRuntime$1.jsxs(jsxRuntime$1.Fragment, { children: [jsxRuntime$1.jsx(InputForDatepicker, __assign({ mask: "00.00.0000", name: name, handleClick: handleModalOpen, value: formattedValue || value, onChange: handleChange, disabled: disabled, message: error, ref: forwardedRef }, props)), jsxRuntime$1.jsxs(StyledModal, __assign({ title: title, description: description, isOpen: isModalOpen, handleClose: handleModalClose, alignTitle: alignTitle }, { children: [jsxRuntime$1.jsx(ContentWrapper$2, { children: jsxRuntime$1.jsx(DatePicker__default["default"], __assign({ inline: true, selected: date || formattedDate, onChange: handleDateChange, calendarContainer: StyledCalendarStandardContainer, renderCustomHeader: function (headProps) { return (jsxRuntime$1.jsx(CalendarHeaderWithSelect, __assign({ yearOptions: yearList, max: max, min: min }, headProps))); }, renderDayContents: function (day) { return (jsxRuntime$1.jsx(DayContent, { children: day })); }, maxDate: max === null || max === void 0 ? void 0 : max.toJSDate(), minDate: min === null || min === void 0 ? void 0 : min.toJSDate() }, datePickerProps)) }), jsxRuntime$1.jsx(ModalFooter, { fullWidth: true, disabled: !formattedDate && !date, onClick: acceptWithDateSelected, label: footerLabel })] }))] }));
804
+ });
805
+ InputWithDatePicker.defaultProps = {
806
+ title: "Дата рождения",
807
+ description: "Выберите год, месяц и число вашего рождения",
808
+ yearParams: { min: 18, max: 120 },
809
+ footerLabel: "Подтвердить",
810
+ alignTitle: "center",
811
+ };
812
+ var ContentWrapper$2 = styled__default["default"].div(templateObject_1$m || (templateObject_1$m = __makeTemplateObject(["\n padding: 0px 40px 24px;\n @media (max-width: 600px) {\n padding: 20px 0 0;\n }\n"], ["\n padding: 0px 40px 24px;\n @media (max-width: 600px) {\n padding: 20px 0 0;\n }\n"])));
813
+ var StyledCalendarStandardContainer = styled__default["default"](CalendarStandardContainer)(templateObject_2$d || (templateObject_2$d = __makeTemplateObject(["\n height: 410px;\n .react-datepicker__header {\n padding: 0 !important;\n }\n .react-datepicker__day-names {\n padding: 35px 22px 0;\n background-color: ", ";\n border-radius: 16px 16px 0 0;\n @media (max-width: 900px) {\n padding: 24px 16px 0;\n }\n }\n .react-datepicker__month {\n justify-content: space-between;\n height: calc(100% - 124px);\n background-color: ", ";\n border-radius: 0 0 16px 16px;\n padding: 20px 22px 24px;\n margin: 0 !important;\n box-sizing: border-box;\n @media (max-width: 900px) {\n padding: 20px 16px 24px;\n }\n }\n @media (max-width: 600px) {\n height: auto;\n margin-bottom: -4px;\n }\n"], ["\n height: 410px;\n .react-datepicker__header {\n padding: 0 !important;\n }\n .react-datepicker__day-names {\n padding: 35px 22px 0;\n background-color: ", ";\n border-radius: 16px 16px 0 0;\n @media (max-width: 900px) {\n padding: 24px 16px 0;\n }\n }\n .react-datepicker__month {\n justify-content: space-between;\n height: calc(100% - 124px);\n background-color: ", ";\n border-radius: 0 0 16px 16px;\n padding: 20px 22px 24px;\n margin: 0 !important;\n box-sizing: border-box;\n @media (max-width: 900px) {\n padding: 20px 16px 24px;\n }\n }\n @media (max-width: 600px) {\n height: auto;\n margin-bottom: -4px;\n }\n"])), kuiBasic.theme.palette.background.light1, kuiBasic.theme.palette.background.light1);
814
+ var DayContent = styled__default["default"].span(templateObject_3$6 || (templateObject_3$6 = __makeTemplateObject(["\n padding-top: 1px;\n font-family: Inter, sans-serif;\n @media (max-width: 600px) {\n font-weight: 400;\n }\n"], ["\n padding-top: 1px;\n font-family: Inter, sans-serif;\n @media (max-width: 600px) {\n font-weight: 400;\n }\n"])));
815
+ var StyledModal = styled__default["default"](kuiBasic.Modal)(templateObject_4$4 || (templateObject_4$4 = __makeTemplateObject(["\n .KUI-Modal_title {\n font-size: 24px;\n line-height: 32px;\n text-align: ", ";\n }\n .KUI-Modal_description {\n margin-bottom: 36px;\n }\n"], ["\n .KUI-Modal_title {\n font-size: 24px;\n line-height: 32px;\n text-align: ", ";\n }\n .KUI-Modal_description {\n margin-bottom: 36px;\n }\n"])), function (_a) {
816
+ var alignTitle = _a.alignTitle;
817
+ return alignTitle || "center";
818
+ });
819
+ var templateObject_1$m, templateObject_2$d, templateObject_3$6, templateObject_4$4;
820
+
821
+ var shortMonths = [
822
+ "ЯНВ",
823
+ "ФЕВ",
824
+ "МАРТ",
825
+ "АПР",
826
+ "МАЙ",
827
+ "ИЮНЬ",
828
+ "ИЮЛЬ",
829
+ "АВГ",
830
+ "СЕНТ",
831
+ "ОКТ",
832
+ "НОЯБ",
833
+ "ДЕК",
834
+ ];
835
+
836
+ var ruCustom = __assign(__assign({}, ru__default["default"]), { localize: {
837
+ month: function (n) { return shortMonths[n]; },
838
+ ordinalNumber: function () { return ""; },
839
+ era: function () { return ""; },
840
+ quarter: function () { return ""; },
841
+ dayPeriod: function () { return ""; },
842
+ day: function () { return ""; },
843
+ } });
844
+ var MobileInputWithMonthPicker = React.forwardRef(function (_a, ref) {
845
+ var _b;
846
+ var title = _a.title, name = _a.name, form = _a.form, disabled = _a.disabled, datePickerProps = _a.datePickerProps, props = __rest(_a, ["title", "name", "form", "disabled", "datePickerProps"]);
847
+ var _c = reactHookForm.useController({
848
+ name: name,
849
+ control: form.control,
850
+ }), field = _c.field, fieldState = _c.fieldState;
851
+ var error = (_b = fieldState.error) === null || _b === void 0 ? void 0 : _b.message;
852
+ var _d = useToggle(), isModalOpen = _d[0], handleModalOpen = _d[1], handleModalClose = _d[2];
853
+ var _e = React.useState(field.value
854
+ ? luxon.DateTime.fromJSDate(new Date(String(field.value))).toFormat("MM.yyyy")
855
+ : null), value = _e[0], setValue = _e[1];
856
+ var _f = React.useState(value ? luxon.DateTime.fromFormat(value, "MM.yyyy").toJSDate() : null), date = _f[0], setDate = _f[1];
857
+ var handleChange = function (e) {
858
+ var targetValue = e.target.value;
859
+ setValue(targetValue);
860
+ if (targetValue.length !== 0 && isValidWithMaskExp.test(targetValue)) {
861
+ var jsDate = luxon.DateTime.fromFormat(targetValue, "MM.yyyy").toJSDate();
862
+ setDate(jsDate);
863
+ field === null || field === void 0 ? void 0 : field.onChange({ target: { value: jsDate, name: name }, type: "change" });
864
+ }
865
+ else {
866
+ setDate(null);
867
+ field === null || field === void 0 ? void 0 : field.onChange({ target: { value: null, name: name }, type: "change" });
868
+ }
869
+ };
870
+ var acceptWithDateSelected = function () {
871
+ if (date) {
872
+ setValue(luxon.DateTime.fromJSDate(date).toFormat("MM.yyyy"));
873
+ }
874
+ else {
875
+ setValue("");
876
+ }
877
+ field === null || field === void 0 ? void 0 : field.onChange({ target: { value: date, name: name }, type: "change" });
878
+ handleModalClose();
879
+ };
880
+ return (jsxRuntime.jsxs(Wrapper$1, __assign({ ref: ref }, { children: [jsxRuntime.jsx(InputForDatepicker, __assign({ mask: "00.0000", name: name, handleCLick: handleModalOpen, value: value, onChange: handleChange, disabled: disabled, message: error, isLabelShrink: Boolean(field.value) }, props)), jsxRuntime.jsxs(kuiBasic.Modal, __assign({ title: title, isOpen: isModalOpen, handleClose: handleModalClose }, { children: [jsxRuntime.jsx(ContentWrapper$1, { children: jsxRuntime.jsx(DatePicker__default["default"], __assign({ inline: true, showMonthYearPicker: true, dateFormat: "MM.yyyy", selected: date, onChange: function (newDate) { return setDate(newDate); }, locale: ruCustom, calendarContainer: MonthPickerContainer, renderCustomHeader: function (headProps) { return (jsxRuntime.jsx(MonthPickerHeader, __assign({}, headProps))); } }, datePickerProps)) }), jsxRuntime.jsx(ModalFooter, { fullWidth: true, disabled: !date, onClick: acceptWithDateSelected, label: "\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C" })] }))] })));
881
+ });
882
+ var Wrapper$1 = styled__default["default"].div(templateObject_1$l || (templateObject_1$l = __makeTemplateObject(["\n @media (min-width: 601px) {\n display: none;\n }\n"], ["\n @media (min-width: 601px) {\n display: none;\n }\n"])));
883
+ var ContentWrapper$1 = styled__default["default"].div(templateObject_2$c || (templateObject_2$c = __makeTemplateObject(["\n @media (max-width: 600px) {\n padding: 16px 16px 8px;\n }\n"], ["\n @media (max-width: 600px) {\n padding: 16px 16px 8px;\n }\n"])));
884
+ var templateObject_1$l, templateObject_2$c;
885
+
886
+ var InputWithMonthPicker = function (props) { return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(DesktopInputWithMonthPicker, __assign({}, props)), jsxRuntime.jsx(MobileInputWithMonthPicker, __assign({}, props))] })); };
887
+
888
+ var MobileMenuPanel = React.forwardRef(function (_a, ref) {
889
+ var tabs = _a.tabs, handleClick = _a.handleClick, variant = _a.variant, other = __rest(_a, ["tabs", "handleClick", "variant"]);
890
+ var swiperRef = React.useRef(null);
891
+ var slideTo = function (index) {
892
+ setTimeout(function () {
893
+ var _a, _b;
894
+ (_b = (_a = swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper) === null || _b === void 0 ? void 0 : _b.slideTo(index);
895
+ }, 16);
896
+ handleClick(index);
897
+ };
898
+ return (jsxRuntime$1.jsx(Wrapper, __assign({ css: variant === "white" && { background: "white" }, ref: ref }, { children: jsxRuntime$1.jsx(Swiper__default["default"], __assign({ spaceBetween: 8, slidesPerView: "auto", slideToClickedSlide: true, ref: swiperRef }, { children: tabs.map(function (tab, index) { return (jsxRuntime$1.jsx(SlideWrapper, { children: jsxRuntime$1.jsx(MenuItem, __assign({ tab: tab, index: index, handleClick: slideTo, offset: -121 }, other), tab.label) }, index)); }) })) })));
899
+ });
900
+ var Wrapper = styled__default["default"].div(templateObject_1$k || (templateObject_1$k = __makeTemplateObject(["\n position: sticky;\n top: 49px;\n left: 0;\n z-index: 11;\n background: ", ";\n padding: 16px 0 24px;\n @media (min-width: 766px) {\n display: none;\n }\n"], ["\n position: sticky;\n top: 49px;\n left: 0;\n z-index: 11;\n background: ", ";\n padding: 16px 0 24px;\n @media (min-width: 766px) {\n display: none;\n }\n"])), kuiBasic.theme.palette.background.light1);
901
+ var SlideWrapper = styled__default["default"].div(templateObject_2$b || (templateObject_2$b = __makeTemplateObject(["\n width: max-content !important;\n &:first-of-type {\n padding-left: 16px;\n }\n"], ["\n width: max-content !important;\n &:first-of-type {\n padding-left: 16px;\n }\n"])));
902
+ var templateObject_1$k, templateObject_2$b;
903
+
904
+ var useWindowWidth = function (time) {
905
+ if (time === void 0) { time = 10; }
906
+ var _a = React.useState(0), width = _a[0], setWidth = _a[1];
907
+ React.useEffect(function () {
908
+ setWidth(window.innerWidth);
909
+ var handleResize = ___default["default"].debounce(function () {
910
+ setWidth(window.innerWidth);
911
+ }, time);
912
+ window.addEventListener("resize", handleResize);
913
+ return function () { return window.removeEventListener("resize", handleResize); };
914
+ }, []);
915
+ return width;
916
+ };
917
+
918
+ var MenuPanel = React.forwardRef(function (_a, ref) {
919
+ var tabs = _a.tabs, tabPanels = _a.tabPanels, paths = _a.paths, activeTab = _a.activeTab, variant = _a.variant;
920
+ var width = useWindowWidth();
921
+ var _b = React__namespace.useState(activeTab), value = _b[0], setValue = _b[1];
922
+ var _c = React__namespace.useState(false), isScrolling = _c[0], setIsScrolling = _c[1];
923
+ var navigate = reactRouterDom.useNavigate();
924
+ var location = reactRouter.useLocation();
925
+ var handleClick = function (index) {
926
+ if (paths[index]) {
927
+ setValue(index);
928
+ var pathName = location.pathname;
929
+ var currentLocation = "".concat(pathName).concat(location.search);
930
+ var newLocation = "".concat(pathName).concat(paths[index]);
931
+ if (currentLocation !== newLocation) {
932
+ navigate(newLocation, { replace: true });
933
+ }
934
+ }
935
+ };
936
+ React.useEffect(function () {
937
+ setValue(activeTab);
938
+ }, [activeTab]);
939
+ React.useEffect(function () {
940
+ if (typeof activeTab !== "number" && width < 901) {
941
+ reactScroll.animateScroll.scrollToTop();
942
+ }
943
+ }, []);
944
+ if (width === 0) {
945
+ return null;
946
+ }
947
+ return (jsxRuntime$1.jsxs("div", __assign({ ref: ref }, { children: [width > 765 ? (jsxRuntime$1.jsx(DesktopMenuPanel, { tabs: tabs, active: value, handleClick: handleClick, variant: variant, isScrolling: isScrolling, setIsScrolling: setIsScrolling })) : (jsxRuntime$1.jsx(MobileMenuPanel, { tabs: tabs, active: value, handleClick: handleClick, variant: variant, isScrolling: isScrolling, setIsScrolling: setIsScrolling })), tabPanels.map(function (item, index) { return (jsxRuntime$1.jsx("div", __assign({ css: index === tabPanels.length - 1 && fullHeightStyles }, { children: jsxRuntime$1.jsx(reactScroll.Element, __assign({ name: tabs[index].label, "data-index": index }, { children: item }), index) }), index)); })] })));
948
+ });
949
+ MenuPanel.defaultProps = {
950
+ variant: "grey",
951
+ };
952
+ var fullHeightStyles = react.css(templateObject_1$j || (templateObject_1$j = __makeTemplateObject(["\n height: calc(100vh - 121px);\n"], ["\n height: calc(100vh - 121px);\n"])));
953
+ var templateObject_1$j;
954
+
955
+ var Switch = React.forwardRef(function (_a, ref) {
956
+ var form = _a.form, name = _a.name, props = __rest(_a, ["form", "name"]);
957
+ return (jsxRuntime$1.jsx(reactHookForm.Controller, { control: form === null || form === void 0 ? void 0 : form.control, name: name, render: function (_a) {
958
+ var field = _a.field;
959
+ return (jsxRuntime$1.jsx(kuiBasic.Switch, __assign({ checked: Boolean(field.value), onChange: field.onChange, "data-testid": name, ref: ref, name: name }, props)));
960
+ } }));
961
+ });
962
+
963
+ var InputPhoneWithForm = React.forwardRef(function (props, ref) {
964
+ var _a;
965
+ var form = props.form, name = props.name, hiddenInputProps = props.hiddenInputProps, error = props.error, other = __rest(props, ["form", "name", "hiddenInputProps", "error"]);
966
+ var codeRegister = reactHookForm.useController({
967
+ control: form.control,
968
+ name: "".concat(name, ".phoneCode"),
969
+ defaultValue: "7",
970
+ });
971
+ var phoneRegister = reactHookForm.useController({
972
+ control: form.control,
973
+ name: "".concat(name, ".phoneNumber"),
974
+ });
975
+ var errorMessage = typeof error !== "undefined" && String(error).length > 0
976
+ ? error
977
+ : (_a = phoneRegister.fieldState.error) === null || _a === void 0 ? void 0 : _a.message;
978
+ var handleCountryChange = function (country) {
979
+ codeRegister.field.onChange({
980
+ target: { value: country.phoneCode, name: "".concat(name, ".phoneCode") },
981
+ type: "change",
982
+ });
983
+ };
984
+ var handleChange = function (e) {
985
+ phoneRegister.field.onChange(e);
986
+ if (!codeRegister.field.value) {
987
+ codeRegister.field.onChange({
988
+ target: { value: "7", name: "".concat(name, ".phoneCode") },
989
+ type: "change",
990
+ });
991
+ }
992
+ if (other.onChange) {
993
+ other.onChange(e);
994
+ }
995
+ };
996
+ var forwardedRef = useForkRef(ref, phoneRegister.field.ref);
997
+ return (jsxRuntime.jsx(kuiBasic.InputWithCountryDropdown, __assign({ message: errorMessage,
998
+ // @ts-ignore
999
+ hiddenInputProps: __assign(__assign({}, codeRegister.field), hiddenInputProps), onSelectCountry: handleCountryChange }, phoneRegister.field, other, { onChange: handleChange, ref: forwardedRef, autoComplete: "false" })));
1000
+ });
1001
+ InputPhoneWithForm.defaultProps = {
1002
+ name: "phone",
1003
+ };
1004
+
1005
+ var Table = React.forwardRef(function (props, ref) { return jsxRuntime.jsx(StyledTable, __assign({ cellSpacing: "0", ref: ref }, props)); });
1006
+ var StyledTable = styled__default["default"].table(templateObject_1$i || (templateObject_1$i = __makeTemplateObject(["\n width: 100%;\n border-spacing: 0;\n"], ["\n width: 100%;\n border-spacing: 0;\n"])));
1007
+ var templateObject_1$i;
1008
+
1009
+ var TableHeadCell = styled__default["default"].th(templateObject_1$h || (templateObject_1$h = __makeTemplateObject(["\n padding: 0;\n text-align: left;\n"], ["\n padding: 0;\n text-align: left;\n"])));
1010
+ var templateObject_1$h;
1011
+
1012
+ var TableCell = styled__default["default"].td(templateObject_1$g || (templateObject_1$g = __makeTemplateObject(["\n padding: 0;\n"], ["\n padding: 0;\n"])));
1013
+ var templateObject_1$g;
1014
+
1015
+ var TableRow = React.forwardRef(function (_a, ref) {
1016
+ var children = _a.children, other = __rest(_a, ["children"]);
1017
+ var childrenArr = React__namespace.Children.toArray(children);
1018
+ return (jsxRuntime.jsx("tr", __assign({ ref: ref }, { children: childrenArr.map(function (child) { return React__namespace.cloneElement(child, other); }) })));
1019
+ });
1020
+
1021
+ var placementsPositions = {
1022
+ bottomStart: {
1023
+ bottom: 1,
1024
+ offset: 0,
1025
+ },
1026
+ bottomMiddle: {
1027
+ bottom: 1,
1028
+ offset: 0.5,
1029
+ },
1030
+ bottomEnd: {
1031
+ bottom: 1,
1032
+ offset: 1,
1033
+ },
1034
+ topStart: {
1035
+ top: 1,
1036
+ offset: 0,
1037
+ },
1038
+ topMiddle: {
1039
+ top: 1,
1040
+ offset: 0.5,
1041
+ },
1042
+ topEnd: {
1043
+ top: 1,
1044
+ offset: 1,
1045
+ },
1046
+ };
1047
+
1048
+ var PopperBase = React.forwardRef(function (props, ref) {
1049
+ props.placement; var open = props.open, children = props.children, spacing = props.spacing, className = props.className, style = props.style, other = __rest(props, ["placement", "open", "children", "spacing", "className", "style"]);
1050
+ return (jsxRuntime.jsx(StyledPopperWrapper, __assign({ ref: ref, className: classNames__default["default"]("KUI-Popper", className), spacing: spacing, style: style }, { children: jsxRuntime.jsx(StyledPopper, __assign({ open: !!open }, other, { children: children })) })));
1051
+ });
1052
+ var StyledPopperWrapper = styled__default["default"].div(templateObject_1$f || (templateObject_1$f = __makeTemplateObject(["\n position: absolute;\n max-width: 215px;\n width: max-content;\n padding: ", ";\n z-index: 10;\n @media (max-width: ", "px) {\n position: fixed;\n bottom: 24px;\n top: auto !important;\n left: 16px !important;\n width: calc(100vw - 32px);\n max-width: unset;\n }\n"], ["\n position: absolute;\n max-width: 215px;\n width: max-content;\n padding: ", ";\n z-index: 10;\n @media (max-width: ", "px) {\n position: fixed;\n bottom: 24px;\n top: auto !important;\n left: 16px !important;\n width: calc(100vw - 32px);\n max-width: unset;\n }\n"])), function (_a) {
1053
+ var spacing = _a.spacing;
1054
+ return spacing || 0;
1055
+ }, kuiBasic.theme.breakpoints.xxs);
1056
+ var StyledPopper = styled__default["default"].div(templateObject_2$a || (templateObject_2$a = __makeTemplateObject(["\n padding: 16px;\n border-radius: 12px;\n background: white;\n box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.1);\n transition: opacity 0.3s ease-out;\n opacity: ", ";\n"], ["\n padding: 16px;\n border-radius: 12px;\n background: white;\n box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.1);\n transition: opacity 0.3s ease-out;\n opacity: ", ";\n"])), function (_a) {
1057
+ var open = _a.open;
1058
+ return (open ? 1 : 0);
1059
+ });
1060
+ var templateObject_1$f, templateObject_2$a;
1061
+
1062
+ var PopperWithPortal = React.forwardRef(function (props, ref) {
1063
+ var placement = props.placement, contentRef = props.contentRef, other = __rest(props, ["placement", "contentRef"]);
1064
+ var popperRef = React.useRef(null);
1065
+ var _a = React.useState(null), coords = _a[0], setCoords = _a[1];
1066
+ var _b = React.useState(null), size = _b[0], setSize = _b[1];
1067
+ React.useEffect(function () {
1068
+ if (contentRef.current && popperRef.current) {
1069
+ var popper = popperRef.current;
1070
+ var elemCoords = contentRef.current.getBoundingClientRect();
1071
+ var popperSize = {
1072
+ width: popper.clientWidth,
1073
+ height: popper.clientHeight,
1074
+ };
1075
+ setCoords(elemCoords);
1076
+ setSize(popperSize);
1077
+ }
1078
+ }, []);
1079
+ var position = {};
1080
+ if (coords && size) {
1081
+ var placementPositions =
1082
+ // @ts-ignore
1083
+ placementsPositions[placement !== null && placement !== void 0 ? placement : "bottomMiddle"];
1084
+ position = {
1085
+ top: Math.max(placementPositions.top
1086
+ ? coords.top - size.height
1087
+ : coords.top + coords.height, 0),
1088
+ left: Math.max(coords.left +
1089
+ coords.width * placementPositions.offset -
1090
+ size.width * placementPositions.offset, 0),
1091
+ };
1092
+ }
1093
+ var forwardedRef = function (elem) {
1094
+ if (ref) {
1095
+ // @ts-ignore
1096
+ ref.current = elem;
1097
+ }
1098
+ // @ts-ignore
1099
+ popperRef.current = elem;
1100
+ };
1101
+ // TODO подумать как реализовать правильное расположение подсказки под contentRef в зависимости от placement
1102
+ // Автоматом менять положение (верх-низ) в зависимости от того помещается или нет
1103
+ // Распожить стрелочку к контенту посередине контента
1104
+ return ReactDOM__namespace.createPortal(jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(react.Global, { styles: react.css(templateObject_1$e || (templateObject_1$e = __makeTemplateObject(["\n body {\n position: relative;\n }\n "], ["\n body {\n position: relative;\n }\n "]))) }), jsxRuntime.jsx(PopperBase, __assign({ ref: forwardedRef, style: position }, other))] }), document.body);
1105
+ });
1106
+ var templateObject_1$e;
1107
+
1108
+ var StaticPopper = React.forwardRef(function (props, ref) {
1109
+ var placement = props.placement, contentRef = props.contentRef, other = __rest(props, ["placement", "contentRef"]);
1110
+ var popperRef = React.useRef(null);
1111
+ var _a = React.useState(null), contentSize = _a[0], setContentSize = _a[1];
1112
+ var _b = React.useState(null), popperSize = _b[0], setPopperSize = _b[1];
1113
+ var position = {};
1114
+ React.useEffect(function () {
1115
+ if (contentRef.current && popperRef.current) {
1116
+ setContentSize({
1117
+ width: contentRef.current.clientWidth,
1118
+ height: contentRef.current.clientHeight,
1119
+ });
1120
+ setPopperSize({
1121
+ width: popperRef.current.clientWidth,
1122
+ height: popperRef.current.clientHeight,
1123
+ });
1124
+ }
1125
+ }, []);
1126
+ if (contentSize && popperSize) {
1127
+ var placementPositions =
1128
+ // @ts-ignore
1129
+ placementsPositions[placement !== null && placement !== void 0 ? placement : "bottomMiddle"];
1130
+ position = {
1131
+ top: placementPositions.top
1132
+ ? 0 - popperSize.height
1133
+ : 0 + contentSize.height,
1134
+ left: Math.max(contentSize.width * placementPositions.offset -
1135
+ popperSize.width * placementPositions.offset, 0),
1136
+ };
1137
+ }
1138
+ var forwardedRef = function (elem) {
1139
+ if (ref) {
1140
+ // @ts-ignore
1141
+ ref.current = elem;
1142
+ }
1143
+ // @ts-ignore
1144
+ popperRef.current = elem;
1145
+ };
1146
+ return jsxRuntime.jsx(PopperBase, __assign({ ref: forwardedRef, style: position }, other));
1147
+ });
1148
+
1149
+ var Popper = React.forwardRef(function (props, ref) {
1150
+ var contentRef = props.contentRef, other = __rest(props, ["contentRef"]);
1151
+ var _a = React.useState(true), isParentSticky = _a[0], setIsParentSticky = _a[1];
1152
+ React.useEffect(function () {
1153
+ function checkParentIsSticky() {
1154
+ var el = contentRef.current;
1155
+ while (el) {
1156
+ var position = window.getComputedStyle(el).position;
1157
+ if (position === "sticky" || position === "fixed")
1158
+ return true;
1159
+ el = el.parentElement;
1160
+ }
1161
+ return false;
1162
+ }
1163
+ var isSticky = checkParentIsSticky();
1164
+ setIsParentSticky(!!isSticky);
1165
+ }, [contentRef]);
1166
+ return isParentSticky ? (jsxRuntime.jsx(StaticPopper, __assign({ ref: ref, contentRef: contentRef }, other))) : (jsxRuntime.jsx(PopperWithPortal, __assign({ ref: ref, contentRef: contentRef }, other)));
1167
+ });
1168
+
1169
+ var Tooltip = React.forwardRef(function (props, ref) {
1170
+ var content = props.content, onOpen = props.onOpen, onClose = props.onClose, open = props.open, children = props.children, cursor = props.cursor, popper = __rest(props, ["content", "onOpen", "onClose", "open", "children", "cursor"]);
1171
+ var _a = React.useState(open), isOpen = _a[0], setOpen = _a[1];
1172
+ var elemRef = React.useRef(null);
1173
+ var handleOpen = function () {
1174
+ setOpen(true);
1175
+ if (onOpen) {
1176
+ onOpen();
1177
+ }
1178
+ };
1179
+ var handleClose = function () {
1180
+ setOpen(false);
1181
+ if (onClose) {
1182
+ onClose();
1183
+ }
1184
+ };
1185
+ React.useEffect(function () {
1186
+ setOpen(open);
1187
+ }, [open]);
1188
+ return (jsxRuntime.jsxs(StyledWrapper$7, __assign({ onMouseLeave: handleClose, ref: ref }, { children: [jsxRuntime.jsx(StyledContentWrapper, __assign({ onMouseEnter: handleOpen, onTouchEnd: handleOpen, ref: elemRef, cursor: cursor }, { children: jsxRuntime.jsx(StyledContent$1, { children: children }) })), jsxRuntime.jsx(Popper, __assign({ open: isOpen }, popper, { contentRef: elemRef }, { children: content }))] })));
1189
+ });
1190
+ var containerCSS = react.css(templateObject_1$d || (templateObject_1$d = __makeTemplateObject(["\n display: inline-flex;\n width: 100%;\n height: fit-content;\n"], ["\n display: inline-flex;\n width: 100%;\n height: fit-content;\n"])));
1191
+ var StyledWrapper$7 = styled__default["default"].div(templateObject_2$9 || (templateObject_2$9 = __makeTemplateObject(["\n ", ";\n position: relative;\n"], ["\n ", ";\n position: relative;\n"])), containerCSS);
1192
+ var StyledContentWrapper = styled__default["default"].div(templateObject_3$5 || (templateObject_3$5 = __makeTemplateObject(["\n ", ";\n cursor: ", ";\n"], ["\n ", ";\n cursor: ", ";\n"])), containerCSS, function (_a) {
1193
+ var cursor = _a.cursor;
1194
+ return cursor;
1195
+ });
1196
+ var StyledContent$1 = styled__default["default"].div(templateObject_4$3 || (templateObject_4$3 = __makeTemplateObject(["\n ", ";\n z-index: -1;\n"], ["\n ", ";\n z-index: -1;\n"])), containerCSS);
1197
+ var templateObject_1$d, templateObject_2$9, templateObject_3$5, templateObject_4$3;
1198
+
1199
+ var ButtonSelect = React.forwardRef(function (props, ref) {
1200
+ var _a;
1201
+ var options = props.options, otherProps = __rest(props, ["options"]);
1202
+ return (jsxRuntime.jsx(StyledInputSelect, __assign({ value: (_a = options === null || options === void 0 ? void 0 : options[0]) === null || _a === void 0 ? void 0 : _a.value, options: options, iconProps: { width: 9, height: 5 } }, otherProps, { ref: ref })));
1203
+ });
1204
+ var StyledInputSelect = styled__default["default"](InputSelect)(templateObject_1$c || (templateObject_1$c = __makeTemplateObject(["\n &.KUI-Input_container {\n height: 40px;\n width: fit-content;\n input {\n height: 40px;\n border-radius: 66px;\n padding: 0 12px;\n transform: none;\n font-size: 12px;\n line-height: 14px;\n margin: 0 !important;\n width: auto !important;\n }\n\n @media (max-width: ", "px) {\n height: 32px;\n input {\n height: 32px;\n }\n }\n }\n & + div {\n top: 22px;\n padding-top: 22px;\n }\n"], ["\n &.KUI-Input_container {\n height: 40px;\n width: fit-content;\n input {\n height: 40px;\n border-radius: 66px;\n padding: 0 12px;\n transform: none;\n font-size: 12px;\n line-height: 14px;\n margin: 0 !important;\n width: auto !important;\n }\n\n @media (max-width: ", "px) {\n height: 32px;\n input {\n height: 32px;\n }\n }\n }\n & + div {\n top: 22px;\n padding-top: 22px;\n }\n"])), kuiBasic.theme.breakpoints.xs);
1205
+ var templateObject_1$c;
1206
+
1207
+ var InputSelectWithController = React.forwardRef(function (_a, ref) {
1208
+ var _b, _c;
1209
+ var options = _a.options, name = _a.name, handleChange = _a.handleChange, form = _a.form, valueProp = _a.value, inputProps = __rest(_a, ["options", "name", "handleChange", "form", "value"]);
1210
+ var control = reactHookForm.useController({
1211
+ control: form.control,
1212
+ name: name,
1213
+ });
1214
+ var error = (_b = control.fieldState.error) === null || _b === void 0 ? void 0 : _b.message;
1215
+ var handleSelect = function (value) {
1216
+ var _a;
1217
+ if (handleChange) {
1218
+ handleChange(value);
1219
+ }
1220
+ if (form) {
1221
+ (_a = control.field) === null || _a === void 0 ? void 0 : _a.onChange({
1222
+ target: { value: value, name: name },
1223
+ type: "change",
1224
+ });
1225
+ }
1226
+ };
1227
+ return (jsxRuntime.jsx(InputSelect, __assign({ options: options, handleChange: handleSelect, error: error, name: name, value: valueProp || ((_c = control.field) === null || _c === void 0 ? void 0 : _c.value), ref: ref }, inputProps)));
1228
+ });
1229
+
1230
+ function InputMultiSelectOption(props) {
1231
+ var option = props.option, selectedValue = props.selectedValue;
1232
+ var selected = selectedValue.includes(option.value);
1233
+ return (jsxRuntime.jsx(StyledOption, __assign({ container: true, selected: selected }, { children: jsxRuntime.jsx(kuiBasic.Checkbox, { checked: selected, label: jsxRuntime.jsx(StyledCaption, __assign({ selected: selected, size: "sm", weight: 500 }, { children: option.label })) }) })));
1234
+ }
1235
+ var StyledOption = styled__default["default"](kuiBasic.Grid)(templateObject_1$b || (templateObject_1$b = __makeTemplateObject(["\n padding: 8px;\n transition: all ease-out 0.3s;\n border-radius: 4px;\n background-color: ", ";\n &:hover {\n background-color: ", ";\n p {\n color: ", " !important;\n }\n }\n"], ["\n padding: 8px;\n transition: all ease-out 0.3s;\n border-radius: 4px;\n background-color: ", ";\n &:hover {\n background-color: ", ";\n p {\n color: ", " !important;\n }\n }\n"])), function (_a) {
1236
+ var selected = _a.selected;
1237
+ return selected ? kuiBasic.theme.palette.background.light1 : kuiBasic.theme.palette.grey.zero;
1238
+ }, kuiBasic.theme.palette.background.light1, kuiBasic.theme.palette.grey.seventy);
1239
+ var StyledCaption = styled__default["default"](kuiBasic.Caption)(templateObject_2$8 || (templateObject_2$8 = __makeTemplateObject(["\n color: ", " !important;\n"], ["\n color: ", " !important;\n"])), function (_a) {
1240
+ var selected = _a.selected;
1241
+ return selected
1242
+ ? kuiBasic.theme.palette.grey.seventy
1243
+ : kuiBasic.theme.palette.grey.fiftyP;
1244
+ });
1245
+ var templateObject_1$b, templateObject_2$8;
1246
+
1247
+ function InputMultiSelect(_a) {
1248
+ var _b, _c;
1249
+ var options = _a.options, name = _a.name, handleChange = _a.handleChange, form = _a.form, valueProp = _a.value, inputProps = __rest(_a, ["options", "name", "handleChange", "form", "value"]);
1250
+ var control = form
1251
+ ? reactHookForm.useController({
1252
+ control: form.control,
1253
+ name: name,
1254
+ })
1255
+ : null;
1256
+ var _d = React.useState(valueProp || ((_b = control === null || control === void 0 ? void 0 : control.field) === null || _b === void 0 ? void 0 : _b.value) || []), value = _d[0], setValue = _d[1];
1257
+ var selectedLabel = options
1258
+ .filter(function (option) { return value.includes(option.value); })
1259
+ .map(function (option) { return option.label; })
1260
+ .join(", ");
1261
+ var error = (_c = control === null || control === void 0 ? void 0 : control.fieldState.error) === null || _c === void 0 ? void 0 : _c.message;
1262
+ React.useEffect(function () {
1263
+ var _a;
1264
+ if (form) {
1265
+ (_a = control === null || control === void 0 ? void 0 : control.field) === null || _a === void 0 ? void 0 : _a.onChange({
1266
+ target: { value: value, name: name },
1267
+ type: "change",
1268
+ });
1269
+ }
1270
+ }, [value]);
1271
+ var handleSelect = function (option) {
1272
+ if (value.includes(option.value)) {
1273
+ setValue(function (prev) { return prev.filter(function (elem) { return elem !== option.value; }); });
1274
+ }
1275
+ else {
1276
+ setValue(function (prev) { return __spreadArray(__spreadArray([], prev, true), [option.value], false); });
1277
+ }
1278
+ if (handleChange) {
1279
+ handleChange(option.value);
1280
+ }
1281
+ };
1282
+ return (jsxRuntime.jsx(InputSelectBase, __assign({ options: options, handleChange: handleSelect, error: error, selectedLabel: selectedLabel, selectedValue: value, name: name, isLabelShrink: !!selectedLabel, renderOption: function (option, selectedValue) { return (jsxRuntime.jsx(InputMultiSelectOption, { option: option, selectedValue: selectedValue })); } }, inputProps)));
1283
+ }
1284
+
1285
+ var RadioButtons = React.forwardRef(function (_a, ref) {
1286
+ var options = _a.options, disabled = _a.disabled, direction = _a.direction, defaultValue = _a.defaultValue, valueOfProps = _a.value, onChange = _a.onChange, isSquare = _a.isSquare, otherProps = __rest(_a, ["options", "disabled", "direction", "defaultValue", "value", "onChange", "isSquare"]);
1287
+ var _b = React.useState(defaultValue || valueOfProps || options[0].value), value = _b[0], setValue = _b[1];
1288
+ var handleChange = function (e) {
1289
+ var radioValue = e.target.value;
1290
+ setValue(radioValue);
1291
+ if (onChange) {
1292
+ onChange(e, radioValue);
1293
+ }
1294
+ };
1295
+ var handleClick = function (e) {
1296
+ var radioValue = e.target.value;
1297
+ if (String(value) === String(radioValue)) {
1298
+ setValue(null);
1299
+ if (onChange) {
1300
+ onChange(e, null);
1301
+ }
1302
+ }
1303
+ };
1304
+ React.useEffect(function () {
1305
+ if (valueOfProps) {
1306
+ setValue(valueOfProps);
1307
+ }
1308
+ }, [valueOfProps]);
1309
+ return (jsxRuntime.jsx(kuiBasic.Grid, __assign({ container: true, direction: direction, ref: ref }, { children: options.map(function (option) { return (jsxRuntime.jsx(kuiBasic.Radio, __assign({ value: option.value, label: option.label, disabled: Boolean(disabled), checked: String(value) === String(option.value), isSquare: isSquare, onClick: handleClick, onChange: handleChange }, otherProps), option.value)); }) })));
1310
+ });
1311
+ RadioButtons.defaultProps = {
1312
+ disabled: false,
1313
+ direction: "row",
1314
+ fullWidth: false,
1315
+ defaultValue: undefined,
1316
+ };
1317
+ RadioButtons.displayName = "RadioButtons";
1318
+
1319
+ function RadioButtonsWithController(_a) {
1320
+ var form = _a.form, name = _a.name, defaultValue = _a.defaultValue, otherProps = __rest(_a, ["form", "name", "defaultValue"]);
1321
+ var handleChange = function (e, value, field) {
1322
+ field.onChange({ target: { value: value, name: name }, type: "change" });
1323
+ if (otherProps.onChange) {
1324
+ otherProps.onChange(e, value);
1325
+ }
1326
+ };
1327
+ React.useEffect(function () {
1328
+ if (!form.getValues(name) && !defaultValue) {
1329
+ form.setValue(name, otherProps.options[0].value);
1330
+ }
1331
+ }, []);
1332
+ return (jsxRuntime.jsx(reactHookForm.Controller, { control: form.control, name: String(name), render: function (_a) {
1333
+ var field = _a.field;
1334
+ return (jsxRuntime.jsx(RadioButtons, __assign({}, otherProps, field, { defaultValue: defaultValue, onChange: function (e, value) {
1335
+ return handleChange(e, value, field);
1336
+ } })));
1337
+ } }));
1338
+ }
1339
+
1340
+ function RadioGroupWithLabel(props) {
1341
+ var _a;
1342
+ var title = props.title, className = props.className, direction = props.direction, form = props.form, name = props.name, otherProps = __rest(props, ["title", "className", "direction", "form", "name"]);
1343
+ var fieldState = reactHookForm.useController({
1344
+ control: form.control,
1345
+ name: name,
1346
+ }).fieldState;
1347
+ var errorMessage = (_a = fieldState.error) === null || _a === void 0 ? void 0 : _a.message;
1348
+ return (jsxRuntime.jsxs(StyledContainer, { children: [jsxRuntime.jsxs(StyledWrapper$6, __assign({ container: true, alignItems: direction === "vertical" ? "flex-start" : "center", justify: "space-between", direction: direction === "vertical" ? "column" : "row", hasError: !!errorMessage, className: className, withTitle: !!title }, { children: [title && (jsxRuntime.jsx(StyledTitle, __assign({ direction: direction, size: "xs", weight: 600 }, { children: title.toUpperCase() }))), jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true, xs: direction === "vertical" ? 12 : "auto" }, { children: jsxRuntime.jsx(RadioButtonsWithController, __assign({ form: form, name: name }, otherProps)) }))] })), errorMessage && jsxRuntime.jsx(kuiBasic.InputMessage, { variant: "error", msg: errorMessage })] }));
1349
+ }
1350
+ var StyledContainer = styled__default["default"].div(templateObject_1$a || (templateObject_1$a = __makeTemplateObject(["\n position: relative;\n"], ["\n position: relative;\n"])));
1351
+ var columnDirectionCSS = function (_a) {
1352
+ var hasError = _a.hasError;
1353
+ return react.css(templateObject_2$7 || (templateObject_2$7 = __makeTemplateObject(["\n padding: 12px 15px 15px;\n border-radius: ", ";\n"], ["\n padding: 12px 15px 15px;\n border-radius: ", ";\n"])), hasError ? "8px 8px 0 0" : "8px");
1354
+ };
1355
+ var rowDirectionCSS = function (_a) {
1356
+ var hasError = _a.hasError, withTitle = _a.withTitle;
1357
+ return react.css(templateObject_3$4 || (templateObject_3$4 = __makeTemplateObject(["\n padding: ", ";\n border-radius: ", ";\n"], ["\n padding: ", ";\n border-radius: ", ";\n"])), withTitle ? "3px 4px 3px 16px" : "3px", hasError ? "66px 66px 0 0" : "66px");
1358
+ };
1359
+ var StyledWrapper$6 = styled__default["default"](kuiBasic.Grid, {
1360
+ shouldForwardProp: function (prop) { return prop !== "hasError" && prop !== "withTitle"; },
1361
+ })(templateObject_4$2 || (templateObject_4$2 = __makeTemplateObject(["\n border: 1px solid\n ", ";\n ", ";\n"], ["\n border: 1px solid\n ", ";\n ", ";\n"])), function (_a) {
1362
+ var hasError = _a.hasError;
1363
+ return hasError ? kuiBasic.theme.palette.red.fiftyP : kuiBasic.theme.palette.grey.fifteenB;
1364
+ }, function (_a) {
1365
+ var direction = _a.direction, hasError = _a.hasError, withTitle = _a.withTitle;
1366
+ return direction === "column"
1367
+ ? columnDirectionCSS({ hasError: hasError })
1368
+ : rowDirectionCSS({ hasError: hasError, withTitle: withTitle });
1369
+ });
1370
+ var StyledTitle = styled__default["default"](kuiBasic.Caption)(templateObject_5$2 || (templateObject_5$2 = __makeTemplateObject(["\n margin-bottom: ", "px;\n"], ["\n margin-bottom: ", "px;\n"])), function (_a) {
1371
+ var direction = _a.direction;
1372
+ return (direction === "vertical" ? 8 : 0);
1373
+ });
1374
+ var templateObject_1$a, templateObject_2$7, templateObject_3$4, templateObject_4$2, templateObject_5$2;
1375
+
1376
+ var Loading = React.forwardRef(function (_a) {
1377
+ var height = _a.height, className = _a.className, otherProps = __rest(_a, ["height", "className"]);
1378
+ return (jsxRuntime.jsx(StyledWrapper$5, __assign({ container: true, alignItems: "center", justify: "center", className: className, height: height }, { children: jsxRuntime.jsx(StyledCircularProgress, __assign({}, otherProps)) })));
1379
+ });
1380
+ Loading.defaultProps = {
1381
+ height: "adaptive",
1382
+ };
1383
+ var StyledCircularProgress = styled__default["default"](kuiBasic.CircularProgress)(templateObject_1$9 || (templateObject_1$9 = __makeTemplateObject(["\n color: ", ";\n"], ["\n color: ", ";\n"])), kuiBasic.theme.palette.brand.main);
1384
+ var StyledWrapper$5 = styled__default["default"](kuiBasic.Grid, {
1385
+ shouldForwardProp: function (prop) { return prop !== "height"; },
1386
+ })(templateObject_2$6 || (templateObject_2$6 = __makeTemplateObject(["\n height: ", ";\n"], ["\n height: ", ";\n"])), function (_a) {
1387
+ var height = _a.height;
1388
+ return height;
1389
+ });
1390
+ var templateObject_1$9, templateObject_2$6;
1391
+
1392
+ function CreatingEntityFromDropdown(_a) {
1393
+ var creatingLabel = _a.creatingLabel, renderCreatingModal = _a.renderCreatingModal;
1394
+ var _b = useToggle(), isModalOpen = _b[0], handleModalOpen = _b[1], handleModalClose = _b[2];
1395
+ if (!creatingLabel || !renderCreatingModal) {
1396
+ return null;
1397
+ }
1398
+ var handleModalWrapperClick = function (e) { return e.stopPropagation(); };
1399
+ return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(StyledWrapper$4, __assign({ container: true, onClick: handleModalOpen, alignItems: "center" }, { children: [jsxRuntime.jsx(StyledPlusIcon, { width: 12, height: 12 }), jsxRuntime.jsx(kuiBasic.Caption, __assign({ color: "fiftyP", size: "xs", weight: 500 }, { children: creatingLabel }))] })), jsxRuntime.jsx(StyledModalWrapper, __assign({ onClick: handleModalWrapperClick }, { children: renderCreatingModal({
1400
+ isOpen: isModalOpen,
1401
+ handleClose: handleModalClose,
1402
+ }) }))] }));
1403
+ }
1404
+ var StyledWrapper$4 = styled__default["default"](kuiBasic.Grid)(templateObject_1$8 || (templateObject_1$8 = __makeTemplateObject(["\n width: 100%;\n position: sticky;\n bottom: 0;\n left: 0;\n border-radius: 0 0 12px 12px;\n border-top: 1px solid ", ";\n padding: 8px 19px;\n cursor: pointer;\n background: white;\n"], ["\n width: 100%;\n position: sticky;\n bottom: 0;\n left: 0;\n border-radius: 0 0 12px 12px;\n border-top: 1px solid ", ";\n padding: 8px 19px;\n cursor: pointer;\n background: white;\n"])), kuiBasic.theme.palette.grey.fifteenB);
1405
+ var StyledPlusIcon = styled__default["default"](kuiIcon.PlusIcon)(templateObject_2$5 || (templateObject_2$5 = __makeTemplateObject(["\n margin-right: 14px;\n path {\n fill: ", ";\n }\n"], ["\n margin-right: 14px;\n path {\n fill: ", ";\n }\n"])), kuiBasic.theme.palette.grey.fiftyP);
1406
+ var StyledModalWrapper = styled__default["default"].div(templateObject_3$3 || (templateObject_3$3 = __makeTemplateObject([""], [""])));
1407
+ var templateObject_1$8, templateObject_2$5, templateObject_3$3;
1408
+
1409
+ var AutocompleteOption$1 = function (props) {
1410
+ var option = props.option, renderOption = props.renderOption, handleSelect = props.handleSelect, index = props.index;
1411
+ var handleClick = function () {
1412
+ handleSelect(option);
1413
+ };
1414
+ return (jsxRuntime.jsx(StyledOptionWrapper, __assign({ item: true, xs: 12, onClick: handleClick, "data-testid": "autocomplete_option_".concat(index) }, { children: renderOption(option) })));
1415
+ };
1416
+ var StyledOptionWrapper = styled__default["default"](kuiBasic.Grid)(templateObject_1$7 || (templateObject_1$7 = __makeTemplateObject(["\n cursor: pointer;\n"], ["\n cursor: pointer;\n"])));
1417
+ var templateObject_1$7;
1418
+
1419
+ function AutocompleteDropdown(props) {
1420
+ var options = props.options, renderOption = props.renderOption, creatingLabel = props.creatingLabel, renderCreatingModal = props.renderCreatingModal;
1421
+ var inputRef = props.inputRef, isOpenDropdown = props.isOpenDropdown, isLoading = props.isLoading;
1422
+ var handleCloseDropdown = props.handleCloseDropdown, handleSelect = props.handleSelect, handleScrollEnd = props.handleScrollEnd;
1423
+ var handleScroll = function (e) {
1424
+ if (e.target.scrollHeight - (e.target.scrollTop + e.target.offsetHeight) <
1425
+ 100) {
1426
+ if (handleScrollEnd)
1427
+ handleScrollEnd();
1428
+ }
1429
+ };
1430
+ return (jsxRuntime.jsxs(StyledDropdown, __assign({ buttonRef: inputRef, isOpen: isOpenDropdown, handleClose: handleCloseDropdown, onScroll: handleScroll, endComponent: jsxRuntime.jsx(CreatingEntityFromDropdown, { creatingLabel: creatingLabel, renderCreatingModal: renderCreatingModal }) }, { children: [options.map(function (option, key) { return (jsxRuntime.jsx(AutocompleteOption$1, { option: option, renderOption: renderOption, handleSelect: handleSelect, index: key }, key)); }), isLoading && jsxRuntime.jsx(StyledLoading, { height: "auto" })] })));
1431
+ }
1432
+ var StyledDropdown = styled__default["default"](InputDropdown)(templateObject_1$6 || (templateObject_1$6 = __makeTemplateObject(["\n .KUI-InputDropdown_scroll {\n max-height: 142px;\n padding: 0 4px;\n }\n"], ["\n .KUI-InputDropdown_scroll {\n max-height: 142px;\n padding: 0 4px;\n }\n"])));
1433
+ var StyledLoading = styled__default["default"](Loading)(templateObject_2$4 || (templateObject_2$4 = __makeTemplateObject(["\n position: sticky;\n bottom: 30px;\n"], ["\n position: sticky;\n bottom: 30px;\n"])));
1434
+ var templateObject_1$6, templateObject_2$4;
1435
+
1436
+ function InputWithAutocomplete(_a) {
1437
+ var _b;
1438
+ var renderOption = _a.renderOption, options = _a.options, name = _a.name, hideName = _a.hideName, form = _a.form, isLoading = _a.isLoading, onSelectItem = _a.onSelectItem, handleScrollEnd = _a.handleScrollEnd, onSearchItem = _a.onSearchItem, isLabelLoading = _a.isLabelLoading, disabled = _a.disabled, creatingLabel = _a.creatingLabel, renderCreatingModal = _a.renderCreatingModal, endComponent = _a.endComponent, inputRefProps = _a.inputRef, inputProps = __rest(_a, ["renderOption", "options", "name", "hideName", "form", "isLoading", "onSelectItem", "handleScrollEnd", "onSearchItem", "isLabelLoading", "disabled", "creatingLabel", "renderCreatingModal", "endComponent", "inputRef"]);
1439
+ var _c = React.useState(false), isOpenDropdown = _c[0], setIsOpenDropDown = _c[1];
1440
+ var inputRef = React.useRef(null);
1441
+ if (hideName)
1442
+ form.register(hideName);
1443
+ var handleOpenDropdown = function () {
1444
+ setIsOpenDropDown(true);
1445
+ };
1446
+ var handleCloseDropdown = function () {
1447
+ setIsOpenDropDown(false);
1448
+ };
1449
+ var handleSelect = function (option) {
1450
+ var _a;
1451
+ onSelectItem(option);
1452
+ handleCloseDropdown();
1453
+ var error = (_a = form.getFieldState(name).error) === null || _a === void 0 ? void 0 : _a.message;
1454
+ if (error) {
1455
+ form.clearErrors(name);
1456
+ }
1457
+ };
1458
+ var handleSearch = function (e) {
1459
+ if (onSearchItem) {
1460
+ onSearchItem(e.target.value);
1461
+ form.setValue(hideName, null);
1462
+ }
1463
+ if (!e.target.value && hideName) {
1464
+ form.setValue(hideName, null);
1465
+ form.setValue(name, null);
1466
+ onSelectItem(null);
1467
+ }
1468
+ handleOpenDropdown();
1469
+ };
1470
+ var forwardRef = useForkRef(inputRef, inputRefProps);
1471
+ return (jsxRuntime$1.jsxs(StyledWrapper$3, { children: [isLabelLoading && (jsxRuntime$1.jsx(StyledLoadingWrapper, { children: jsxRuntime$1.jsx(Loading, { height: "100%" }) })), jsxRuntime$1.jsx(StyledInput$2, __assign({ form: form, onInput: handleSearch, onFocus: handleOpenDropdown, name: name, disabled: disabled, ref: forwardRef, isDropdownOpen: isOpenDropdown }, inputProps, { endIcon: !disabled && (jsxRuntime$1.jsxs(kuiBasic.Grid, __assign({ container: true, alignItems: "center" }, { children: [jsxRuntime$1.jsx(kuiBasic.Box, __assign({ mr: 2 }, { children: endComponent })), inputProps.endIcon ||
1472
+ (!disabled && (jsxRuntime$1.jsx(kuiIcon.HalfArrowIcon, { width: 12, height: 13, css: [
1473
+ { transition: "all linear .2s" },
1474
+ isOpenDropdown && { transform: "rotate(180deg)" },
1475
+ ] })))] }))) })), jsxRuntime$1.jsx(AutocompleteDropdown, { renderOption: renderOption, options: options, inputRef: {
1476
+ current: (_b = inputRef.current) === null || _b === void 0 ? void 0 : _b.parentElement,
1477
+ }, isOpenDropdown: isOpenDropdown, handleCloseDropdown: handleCloseDropdown, handleSelect: handleSelect, isLoading: isLoading, handleScrollEnd: handleScrollEnd, creatingLabel: creatingLabel, renderCreatingModal: renderCreatingModal })] }));
1478
+ }
1479
+ var StyledLoadingWrapper = styled__default["default"].div(templateObject_1$5 || (templateObject_1$5 = __makeTemplateObject(["\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n z-index: 1;\n"], ["\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n z-index: 1;\n"])));
1480
+ var StyledWrapper$3 = styled__default["default"].div(templateObject_2$3 || (templateObject_2$3 = __makeTemplateObject(["\n position: relative;\n"], ["\n position: relative;\n"])));
1481
+ var StyledInput$2 = styled__default["default"](InputWithController)(templateObject_3$2 || (templateObject_3$2 = __makeTemplateObject(["\n .KUI-InputMessage {\n opacity: ", ";\n }\n"], ["\n .KUI-InputMessage {\n opacity: ", ";\n }\n"])), function (_a) {
1482
+ var isDropdownOpen = _a.isDropdownOpen;
1483
+ return (isDropdownOpen ? 0 : 1);
1484
+ });
1485
+ var templateObject_1$5, templateObject_2$3, templateObject_3$2;
1486
+
1487
+ function AutocompleteOption(_a) {
1488
+ var label = _a.label;
1489
+ return (jsxRuntime.jsx(StyledWrapper$2, { children: jsxRuntime.jsx(kuiBasic.Caption, __assign({ size: "s", weight: 500 }, { children: label })) }));
1490
+ }
1491
+ var StyledWrapper$2 = styled__default["default"].div(templateObject_1$4 || (templateObject_1$4 = __makeTemplateObject(["\n padding: 8px;\n border-radius: 8px;\n cursor: pointer;\n &:hover {\n background: ", ";\n },\n"], ["\n padding: 8px;\n border-radius: 8px;\n cursor: pointer;\n &:hover {\n background: ", ";\n },\n"])), kuiBasic.theme.palette.background.light2);
1492
+ var templateObject_1$4;
1493
+
1494
+ function Link(props) {
1495
+ var href = props.href, withoutRoute = props.withoutRoute, stopPropagation = props.stopPropagation, openInNewWindow = props.openInNewWindow, other = __rest(props, ["href", "withoutRoute", "stopPropagation", "openInNewWindow"]);
1496
+ var navigate = reactRouterDom.useNavigate();
1497
+ var handleClick = function (e) {
1498
+ if (stopPropagation)
1499
+ e.stopPropagation();
1500
+ e.preventDefault();
1501
+ if (href) {
1502
+ if (withoutRoute)
1503
+ updateQueryParams(href);
1504
+ else if (openInNewWindow)
1505
+ window.open(href, "_blank");
1506
+ else
1507
+ navigate(href);
1508
+ }
1509
+ };
1510
+ return (jsxRuntime.jsx(StyledLink, __assign({ href: href || undefined, onClick: handleClick }, other)));
1511
+ }
1512
+ var StyledLink = styled__default["default"].a(templateObject_1$3 || (templateObject_1$3 = __makeTemplateObject(["\n text-decoration: none;\n color: inherit;\n max-width: 100%;\n width: 100%;\n"], ["\n text-decoration: none;\n color: inherit;\n max-width: 100%;\n width: 100%;\n"])));
1513
+ var templateObject_1$3;
1514
+
1515
+ function FileItem(_a) {
1516
+ var _b, _c;
1517
+ var file = _a.file, onDelete = _a.onDelete, onChange = _a.onChange, index = _a.index, selectedFile = _a.selectedFile, setSelectedFile = _a.setSelectedFile, limitTitle = _a.limitTitle, icon = _a.icon, subtitle = _a.subtitle, disabled = _a.disabled, error = _a.error, className = _a.className, otherProps = __rest(_a, ["file", "onDelete", "onChange", "index", "selectedFile", "setSelectedFile", "limitTitle", "icon", "subtitle", "disabled", "error", "className"]);
1518
+ var formattedFileName = String((_c = (file.title || file.name || ((_b = file.file) === null || _b === void 0 ? void 0 : _b.name))) === null || _c === void 0 ? void 0 : _c.replace(/\.[^/.]+$/, ""));
1519
+ var _d = React.useState(formattedFileName), title = _d[0], setTitle = _d[1];
1520
+ var _e = React.useState(false), isEditing = _e[0], setIsEditing = _e[1];
1521
+ var inputRef = React.useRef(null);
1522
+ React.useEffect(function () {
1523
+ var _a;
1524
+ if (isEditing) {
1525
+ (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
1526
+ }
1527
+ if (!isEditing && formattedFileName !== title && onChange) {
1528
+ onChange(title, index);
1529
+ }
1530
+ }, [isEditing]);
1531
+ var toggleEdit = function () {
1532
+ setIsEditing(function (prev) { return !prev; });
1533
+ };
1534
+ var handleBlur = function () {
1535
+ setIsEditing(false);
1536
+ };
1537
+ var handleChange = function (e) {
1538
+ setTitle(e.target.value);
1539
+ };
1540
+ var handleDelete = function () {
1541
+ var _a;
1542
+ if (onDelete) {
1543
+ onDelete((_a = file.index) !== null && _a !== void 0 ? _a : 1, Number(index));
1544
+ }
1545
+ };
1546
+ var handleClick = function () {
1547
+ if (setSelectedFile) {
1548
+ setSelectedFile(index !== null && index !== void 0 ? index : 1);
1549
+ }
1550
+ };
1551
+ return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(FileWrapper, __assign({ selected: (selectedFile !== null && selectedFile !== void 0 ? selectedFile : -1) === index, error: (limitTitle && title.length > limitTitle) || !!error, onClick: handleClick, disabled: !!disabled, className: "FileWrapper ".concat(className || "") }, otherProps, { children: [jsxRuntime.jsx(FileIconWrapper, __assign({ className: "FileIcon_wrapper" }, { children: icon || jsxRuntime.jsx(kuiIcon.FileIcon, {}) })), jsxRuntime.jsxs(ContentWrapper, __assign({ className: "FileContent_wrapper" }, { children: [jsxRuntime.jsxs(InputWrapper, { children: [jsxRuntime.jsx(Link, __assign({ href: file.url, openInNewWindow: true }, { children: jsxRuntime.jsx(InputPlaceholder, { children: title }) })), jsxRuntime.jsx(StyledInput$1, { "data-testid": "file_name", ref: inputRef, disabled: !isEditing, value: title, onChange: handleChange, onBlur: handleBlur, maxLength: 100 })] }), subtitle ||
1552
+ (String(file.size) && (jsxRuntime.jsxs(kuiBasic.Caption, __assign({ "data-testid": "file_size", size: "xs", color: "fiftyP" }, { children: [Number(file.size), " mb"] }))))] })), jsxRuntime.jsxs(ButtonWrapper, __assign({ className: "FileButtons_wrapper" }, { children: [!disabled && onChange && (jsxRuntime.jsx(kuiBasic.Button, __assign({ isCircle: true, "data-testid": "edit_file_name_btn", size: "xs", variant: "transparentLight", onClick: toggleEdit }, { children: isEditing ? jsxRuntime.jsx(kuiIcon.CheckIcon, {}) : jsxRuntime.jsx(kuiIcon.EditIcon, { width: 18, height: 18 }) }))), onDelete && !disabled && (jsxRuntime.jsx(kuiBasic.Button, __assign({ isCircle: true, "data-testid": "delete_file_btn", size: "xs", variant: "transparentLight", onClick: handleDelete }, { children: jsxRuntime.jsx(kuiIcon.TrashIcon, { width: 18, height: 18 }) })))] }))] })), ((limitTitle && title.length > limitTitle) || error) && (jsxRuntime.jsx(kuiBasic.Box, __assign({ mb: 1 }, { children: jsxRuntime.jsx(kuiBasic.Caption, __assign({ size: "xs", colorGroup: "red", weight: 500 }, { children: error ||
1553
+ "File upload error. The number of characters in the file name should not exceed 100" })) })))] }));
1554
+ }
1555
+ FileItem.defaultProps = {
1556
+ limitTitle: 100,
1557
+ };
1558
+ var errorCSS = function (_a) {
1559
+ var error = _a.error;
1560
+ return error && react.css(templateObject_1$2 || (templateObject_1$2 = __makeTemplateObject(["\n border-color: ", ";\n "], ["\n border-color: ", ";\n "])), kuiBasic.theme.palette.red.seventy);
1561
+ };
1562
+ var disabledCSS = function (_a) {
1563
+ var disabled = _a.disabled;
1564
+ return disabled && react.css(templateObject_2$2 || (templateObject_2$2 = __makeTemplateObject(["\n background: ", ";\n "], ["\n background: ", ";\n "])), kuiBasic.theme.palette.background.light1);
1565
+ };
1566
+ var FileWrapper = styled__default["default"].div(templateObject_3$1 || (templateObject_3$1 = __makeTemplateObject(["\n width: 100%;\n border-radius: 12px;\n padding: 10px 12px;\n border: 1px solid\n ", ";\n display: flex;\n margin-bottom: 8px;\n cursor: pointer;\n ", ";\n ", ";\n &:last-child {\n margin-bottom: 0;\n }\n"], ["\n width: 100%;\n border-radius: 12px;\n padding: 10px 12px;\n border: 1px solid\n ", ";\n display: flex;\n margin-bottom: 8px;\n cursor: pointer;\n ", ";\n ", ";\n &:last-child {\n margin-bottom: 0;\n }\n"])), function (_a) {
1567
+ var selected = _a.selected;
1568
+ return selected ? kuiBasic.theme.palette.brand.main : kuiBasic.theme.palette.grey.fifteenB;
1569
+ }, disabledCSS, errorCSS);
1570
+ var FileIconWrapper = styled__default["default"].div(templateObject_4$1 || (templateObject_4$1 = __makeTemplateObject(["\n margin-right: 16px;\n min-height: 32px;\n width: 32px;\n border-radius: 12px;\n background: ", ";\n display: flex;\n justify-content: center;\n align-items: center;\n align-self: flex-start;\n"], ["\n margin-right: 16px;\n min-height: 32px;\n width: 32px;\n border-radius: 12px;\n background: ", ";\n display: flex;\n justify-content: center;\n align-items: center;\n align-self: flex-start;\n"])), kuiBasic.theme.palette.brand.light);
1571
+ var ButtonWrapper = styled__default["default"].div(templateObject_5$1 || (templateObject_5$1 = __makeTemplateObject(["\n margin-left: auto;\n padding-left: 8px;\n display: flex;\n align-items: center;\n align-self: flex-start;\n svg {\n path {\n fill: ", ";\n }\n }\n"], ["\n margin-left: auto;\n padding-left: 8px;\n display: flex;\n align-items: center;\n align-self: flex-start;\n svg {\n path {\n fill: ", ";\n }\n }\n"])), kuiBasic.theme.palette.grey.thirty);
1572
+ var ContentWrapper = styled__default["default"].div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n width: calc(100% - 120px);\n min-height: 34px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n & > p {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n"], ["\n width: calc(100% - 120px);\n min-height: 34px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n & > p {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n"])));
1573
+ var StyledInput$1 = styled__default["default"].textarea(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n border: none;\n font-size: 14px;\n position: absolute;\n top: 0;\n left: 0;\n font-weight: 500;\n background: transparent;\n padding: 0;\n color: ", ";\n caret-color: ", ";\n height: -webkit-fill-available;\n overflow: hidden;\n resize: none;\n width: 100%;\n &:focus-visible {\n outline: none;\n }\n &:disabled {\n pointer-events: none;\n }\n"], ["\n border: none;\n font-size: 14px;\n position: absolute;\n top: 0;\n left: 0;\n font-weight: 500;\n background: transparent;\n padding: 0;\n color: ", ";\n caret-color: ", ";\n height: -webkit-fill-available;\n overflow: hidden;\n resize: none;\n width: 100%;\n &:focus-visible {\n outline: none;\n }\n &:disabled {\n pointer-events: none;\n }\n"])), kuiBasic.theme.palette.grey.seventy, kuiBasic.theme.palette.brand.main);
1574
+ var InputPlaceholder = styled__default["default"].span(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n font-size: 14px;\n font-weight: 500;\n word-break: break-word;\n max-width: 100%;\n color: transparent;\n min-height: 17px;\n display: inline-block;\n white-space: nowrap;\n"], ["\n font-size: 14px;\n font-weight: 500;\n word-break: break-word;\n max-width: 100%;\n color: transparent;\n min-height: 17px;\n display: inline-block;\n white-space: nowrap;\n"])));
1575
+ var InputWrapper = styled__default["default"].div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n position: relative;\n width: fit-content;\n max-width: 100%;\n height: auto;\n"], ["\n position: relative;\n width: fit-content;\n max-width: 100%;\n height: auto;\n"])));
1576
+ var templateObject_1$2, templateObject_2$2, templateObject_3$1, templateObject_4$1, templateObject_5$1, templateObject_6, templateObject_7, templateObject_8, templateObject_9;
1577
+
1578
+ var limitTitle = 100;
1579
+ var InputFile = React.forwardRef(function (props, ref) {
1580
+ var _a;
1581
+ var form = props.form, name = props.name, label = props.label, disabled = props.disabled, withEdit = props.withEdit, fileName = props.fileName, otherProps = __rest(props, ["form", "name", "label", "disabled", "withEdit", "fileName"]);
1582
+ var _b = React.useState(false), mounted = _b[0], setMounted = _b[1];
1583
+ var _c = React.useState(), file = _c[0], setFile = _c[1];
1584
+ var _d = React.useState(""), defaultFileURL = _d[0], setDefaultFileURL = _d[1];
1585
+ var inputRef = React.useRef(null);
1586
+ var _e = reactHookForm.useController({
1587
+ control: form.control,
1588
+ name: name,
1589
+ }), field = _e.field, fieldState = _e.fieldState;
1590
+ var formattedFile = file && "url" in file
1591
+ ? file
1592
+ : {
1593
+ file: file,
1594
+ url: file ? URL.createObjectURL(file) : defaultFileURL,
1595
+ size: file
1596
+ ? Math.round((file.size / (1024 * 1024)) * 100) / 100
1597
+ : null,
1598
+ name: fileName || (file === null || file === void 0 ? void 0 : file.name),
1599
+ };
1600
+ var error = (_a = fieldState.error) === null || _a === void 0 ? void 0 : _a.message;
1601
+ React.useEffect(function () {
1602
+ if (typeof field.value === "string") {
1603
+ setDefaultFileURL(field.value);
1604
+ }
1605
+ if (typeof field.value === "object") {
1606
+ setFile(field.value);
1607
+ }
1608
+ setMounted(true);
1609
+ }, []);
1610
+ React.useEffect(function () {
1611
+ var _a;
1612
+ var toBigTitle = Number((fileName === null || fileName === void 0 ? void 0 : fileName.length) || ((_a = file === null || file === void 0 ? void 0 : file.name) === null || _a === void 0 ? void 0 : _a.length)) > limitTitle;
1613
+ if (mounted && !defaultFileURL) {
1614
+ field.onChange({ target: { value: file, name: name }, type: "change" });
1615
+ }
1616
+ if (toBigTitle) {
1617
+ form.setError(name, {
1618
+ type: "custom",
1619
+ message: "The file name must be less than 100 characters",
1620
+ });
1621
+ }
1622
+ else {
1623
+ form.clearErrors(name);
1624
+ }
1625
+ }, [file]);
1626
+ var handleChange = function (e) {
1627
+ if (e.target.files && e.target.files[0]) {
1628
+ setFile(e.target.files[0]);
1629
+ }
1630
+ else {
1631
+ setFile(undefined);
1632
+ }
1633
+ };
1634
+ var handleClick = function () {
1635
+ if (inputRef.current) {
1636
+ inputRef.current.click();
1637
+ }
1638
+ };
1639
+ var handleDelete = function () {
1640
+ if (file && inputRef.current) {
1641
+ inputRef.current.value = "";
1642
+ }
1643
+ setFile(undefined);
1644
+ setDefaultFileURL("");
1645
+ field.onChange({ target: { value: null, name: name }, type: "change" });
1646
+ };
1647
+ var changeName = function (newName) {
1648
+ var currentFile = form.getValues(name);
1649
+ var extension = currentFile.name.split(".").pop();
1650
+ var newFileName = "".concat(newName, ".").concat(extension);
1651
+ var newFile;
1652
+ if ("filesStore" in currentFile) {
1653
+ currentFile.updateName(newName);
1654
+ newFile = currentFile;
1655
+ }
1656
+ else {
1657
+ newFile = new File([currentFile], newFileName, {
1658
+ type: currentFile.type,
1659
+ });
1660
+ }
1661
+ setFile(newFile);
1662
+ };
1663
+ var forwardedRef = function (elem) {
1664
+ if (ref) {
1665
+ // @ts-ignore
1666
+ // eslint-disable-next-line no-param-reassign
1667
+ ref.current = elem;
1668
+ }
1669
+ inputRef.current = elem;
1670
+ };
1671
+ return (jsxRuntime.jsxs(StyledWrapper$1, { children: [jsxRuntime.jsx(StyledInput, __assign({ type: "file", onInput: handleChange }, otherProps, { ref: forwardedRef })), file || defaultFileURL ? (jsxRuntime.jsx(FileItem, { file: formattedFile, onDelete: handleDelete, onChange: withEdit && changeName, error: error, disabled: disabled })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs(StyledLabel, __assign({ error: !!error, disabled: disabled, container: true, justify: "space-between", alignItems: "center" }, { children: [jsxRuntime.jsx(StyledContent, __assign({ item: true }, { children: jsxRuntime.jsx(kuiBasic.Caption, __assign({ size: "s", color: "fiftyP" }, { children: label })) })), jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime.jsx(StyledButton, __assign({ disabled: disabled, size: "s", onClick: handleClick }, { children: "Upload" })) }))] })), error && jsxRuntime.jsx(kuiBasic.InputMessage, { variant: "error", msg: error })] }))] }));
1672
+ });
1673
+ InputFile.defaultProps = {
1674
+ withEdit: true,
1675
+ };
1676
+ var StyledWrapper$1 = styled__default["default"].div(templateObject_1$1 || (templateObject_1$1 = __makeTemplateObject(["\n position: relative;\n"], ["\n position: relative;\n"])));
1677
+ var StyledLabel = styled__default["default"](kuiBasic.Grid)(templateObject_2$1 || (templateObject_2$1 = __makeTemplateObject(["\n border-radius: ", ";\n border: 1px solid\n ", ";\n background: ", ";\n height: 56px;\n padding: 0 8px 0 15px;\n"], ["\n border-radius: ", ";\n border: 1px solid\n ", ";\n background: ", ";\n height: 56px;\n padding: 0 8px 0 15px;\n"])), function (_a) {
1678
+ var error = _a.error;
1679
+ return (error ? "8px 8px 0 0" : "8px");
1680
+ }, function (_a) {
1681
+ var error = _a.error;
1682
+ return error ? kuiBasic.theme.palette.red.fiftyP : kuiBasic.theme.palette.grey.fifteenB;
1683
+ }, function (_a) {
1684
+ var disabled = _a.disabled;
1685
+ return disabled ? kuiBasic.theme.palette.background.light1 : kuiBasic.theme.palette.grey.zero;
1686
+ });
1687
+ var StyledInput = styled__default["default"].input(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: none;\n"], ["\n display: none;\n"])));
1688
+ var StyledContent = styled__default["default"](kuiBasic.Grid)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n max-width: calc(100% - 32px);\n"], ["\n max-width: calc(100% - 32px);\n"])));
1689
+ var StyledButton = styled__default["default"](kuiBasic.Button)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n border-radius: 12px;\n"], ["\n border-radius: 12px;\n"])));
1690
+ var templateObject_1$1, templateObject_2$1, templateObject_3, templateObject_4, templateObject_5;
1691
+
1692
+ var CheckboxWithController = React.forwardRef(function (props, ref) {
1693
+ var form = props.form, name = props.name, label = props.label, labelProps = props.labelProps, inputProps = __rest(props, ["form", "name", "label", "labelProps"]);
1694
+ var handleChange = function (e, field) {
1695
+ field.onChange(e);
1696
+ if (inputProps.onChange) {
1697
+ inputProps.onChange(e);
1698
+ }
1699
+ };
1700
+ return (jsxRuntime.jsx(reactHookForm.Controller, { control: form.control, name: String(name), render: function (_a) {
1701
+ var field = _a.field;
1702
+ return (jsxRuntime.jsx(kuiBasic.Checkbox, __assign({}, inputProps, field, { checked: field.value || "", onChange: function (e) {
1703
+ return handleChange(e, field);
1704
+ }, label: jsxRuntime.jsx(kuiBasic.Caption, __assign({}, labelProps, { children: label })) })));
1705
+ } }));
1706
+ });
1707
+
1708
+ function CheckboxGroupWithTitle(_a) {
1709
+ var title = _a.title, options = _a.options, form = _a.form; _a.name; var otherProps = __rest(_a, ["title", "options", "form", "name"]);
1710
+ return (jsxRuntime.jsxs(StyledWrapper, __assign({ container: true, alignItems: "center", justify: "space-between" }, { children: [jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime.jsx(kuiBasic.Caption, __assign({ size: "s", weight: 500, color: "fiftyP" }, { children: title })) })), jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true }, { children: jsxRuntime.jsx(kuiBasic.Grid, __assign({ container: true }, { children: options.map(function (option) { return (jsxRuntime.jsx(StyledCheckbox, __assign({ name: option.name, label: jsxRuntime.jsx(kuiBasic.Caption, __assign({ size: "s", color: "fiftyP", weight: 500 }, { children: option.label })), form: form, testId: option.name }, otherProps), option.name)); }) })) }))] })));
1711
+ }
1712
+ var StyledCheckbox = styled__default["default"](CheckboxWithController)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n &:not(:last-child) {\n margin-right: 22px;\n }\n"], ["\n &:not(:last-child) {\n margin-right: 22px;\n }\n"])));
1713
+ var StyledWrapper = styled__default["default"](kuiBasic.Grid)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n padding: 3px 16px;\n border: 1px solid ", ";\n border-radius: 66px;\n height: 40px;\n"], ["\n padding: 3px 16px;\n border: 1px solid ", ";\n border-radius: 66px;\n height: 40px;\n"])), kuiBasic.theme.palette.grey.fifteenB);
1714
+ var templateObject_1, templateObject_2;
1715
+
1716
+ var settings = {
1717
+ mapKey: "",
1718
+ };
1719
+ var observers = [];
1720
+ var getSettings = function () { return (__assign({}, settings)); };
1721
+ var setSettings = function (newSettings) {
1722
+ settings = __assign(__assign({}, settings), newSettings);
1723
+ observers.forEach(function (observer) { return observer(settings); });
1724
+ };
1725
+ var subscribeToSettings = function (observer) {
1726
+ observers.push(observer);
1727
+ };
1728
+ var unsubscribeFromSettings = function (observer) {
1729
+ var index = observers.indexOf(observer);
1730
+ if (index !== -1)
1731
+ observers.splice(index, 1);
1732
+ };
1733
+
1734
+ var render = function (status) {
1735
+ if (status === "LOADING")
1736
+ return jsxRuntime.jsx(Loading, { height: "100%" });
1737
+ if (status === "FAILURE")
1738
+ return jsxRuntime.jsx("h3", { children: status });
1739
+ return jsxRuntime.jsx("div", {});
1740
+ };
1741
+ function MapWrapper(_a) {
1742
+ var children = _a.children;
1743
+ var _b = React.useState(false), isUnMounted = _b[0], setIsUnMounted = _b[1];
1744
+ var _c = React.useState("LOADING"), status = _c[0], setStatus = _c[1];
1745
+ var _d = React.useState(getSettings().mapKey), mapKey = _d[0], setMapKey = _d[1];
1746
+ React.useEffect(function () {
1747
+ var handleChange = function (settings) {
1748
+ return setMapKey(settings.mapKey);
1749
+ };
1750
+ subscribeToSettings(handleChange);
1751
+ return function () {
1752
+ unsubscribeFromSettings(handleChange);
1753
+ };
1754
+ }, []);
1755
+ React.useEffect(function () {
1756
+ if (!isUnMounted && mapKey) {
1757
+ var loader = new jsApiLoader.Loader({
1758
+ apiKey: mapKey,
1759
+ libraries: ["places"],
1760
+ });
1761
+ var setStatusAndExecuteCallback_1 = function (newStatus) {
1762
+ setStatus(newStatus);
1763
+ };
1764
+ setStatusAndExecuteCallback_1("LOADING");
1765
+ loader.load().then(function () { return setStatusAndExecuteCallback_1("SUCCESS"); }, function () { return setStatusAndExecuteCallback_1("FAILURE"); });
1766
+ }
1767
+ return function () { return setIsUnMounted(true); };
1768
+ }, [mapKey]);
1769
+ if (!mapKey) {
1770
+ return jsxRuntime.jsx("h2", { children: "Add google key" });
1771
+ }
1772
+ if (status === "SUCCESS" && children)
1773
+ return jsxRuntime.jsx(jsxRuntime.Fragment, { children: children });
1774
+ render(status);
1775
+ return jsxRuntime.jsx(jsxRuntime.Fragment, {});
1776
+ }
1777
+
1778
+ var useAddressAutocomplete = function (form, name, handlePlaceSelectProp) {
1779
+ var _a = React.useState(null), place = _a[0], setPlace = _a[1];
1780
+ var inputRef = React.useRef(null);
1781
+ function handlePlaceSelect(newPlace) {
1782
+ var _a, _b, _c, _d, _e, _f, _g;
1783
+ return __awaiter(this, void 0, void 0, function () {
1784
+ var toCoords, lat, lng, street, houseNumber, zipCode, formattedAddress;
1785
+ return __generator(this, function (_h) {
1786
+ toCoords = ((_a = newPlace.geometry) === null || _a === void 0 ? void 0 : _a.location)
1787
+ ? {
1788
+ lat: newPlace.geometry.location.lat(),
1789
+ lng: newPlace.geometry.location.lng(),
1790
+ }
1791
+ : null;
1792
+ lat = toCoords === null || toCoords === void 0 ? void 0 : toCoords.lat;
1793
+ lng = toCoords === null || toCoords === void 0 ? void 0 : toCoords.lng;
1794
+ if (handlePlaceSelectProp) {
1795
+ handlePlaceSelectProp(lat && lng ? { lat: lat, lng: lng } : null, newPlace);
1796
+ }
1797
+ form === null || form === void 0 ? void 0 : form.setValue("".concat(name, ".location.lat"), lat, { shouldValidate: true });
1798
+ form === null || form === void 0 ? void 0 : form.setValue("".concat(name, ".location.lon"), lng, { shouldValidate: true });
1799
+ form.setValue("".concat(name, ".addressAutoComplete"), newPlace, {
1800
+ shouldValidate: true,
1801
+ });
1802
+ street = (_c = (_b = newPlace.address_components) === null || _b === void 0 ? void 0 : _b.find(function (elem) {
1803
+ return elem.types.includes("route");
1804
+ })) === null || _c === void 0 ? void 0 : _c.short_name;
1805
+ houseNumber = (_e = (_d = newPlace.address_components) === null || _d === void 0 ? void 0 : _d.find(function (elem) {
1806
+ return elem.types.includes("street_number");
1807
+ })) === null || _e === void 0 ? void 0 : _e.short_name;
1808
+ zipCode = (_g = (_f = newPlace.address_components) === null || _f === void 0 ? void 0 : _f.find(function (elem) {
1809
+ return elem.types.includes("postal_code");
1810
+ })) === null || _g === void 0 ? void 0 : _g.short_name;
1811
+ formattedAddress = newPlace.formatted_address;
1812
+ if (street && houseNumber) {
1813
+ formattedAddress = "".concat(street, ", ").concat(houseNumber);
1814
+ }
1815
+ form === null || form === void 0 ? void 0 : form.setValue("".concat(name, ".address"), formattedAddress, {
1816
+ shouldValidate: true,
1817
+ });
1818
+ form.setValue("zipCode", zipCode);
1819
+ setPlace(newPlace);
1820
+ return [2 /*return*/];
1821
+ });
1822
+ });
1823
+ }
1824
+ var addAutocomplete = function () {
1825
+ if (inputRef.current) {
1826
+ var autoComplete_1 = new window.google.maps.places.Autocomplete(inputRef.current);
1827
+ autoComplete_1.addListener("place_changed", function () {
1828
+ var newPlace = autoComplete_1.getPlace();
1829
+ handlePlaceSelect(newPlace);
1830
+ });
1831
+ }
1832
+ };
1833
+ var cleanLocation = function () {
1834
+ setPlace(null);
1835
+ form === null || form === void 0 ? void 0 : form.setValue("".concat(name, ".location.lat"), null, { shouldValidate: true });
1836
+ form === null || form === void 0 ? void 0 : form.setValue("".concat(name, ".location.lon"), null, { shouldValidate: true });
1837
+ form === null || form === void 0 ? void 0 : form.setValue("".concat(name, ".addressAutoComplete"), null, {
1838
+ shouldValidate: true,
1839
+ });
1840
+ form === null || form === void 0 ? void 0 : form.setValue("".concat(name, ".address"), "", { shouldValidate: true });
1841
+ };
1842
+ var checkMapLoaded = function () {
1843
+ if (!window.google || !inputRef.current) {
1844
+ setTimeout(checkMapLoaded, 1);
1845
+ }
1846
+ else
1847
+ addAutocomplete();
1848
+ };
1849
+ var setDefaultPlace = function () {
1850
+ var address = form.getValues("".concat(name, ".address"));
1851
+ var lat = form.getValues("".concat(name, ".location.lat"));
1852
+ var lng = form.getValues("".concat(name, ".location.lon"));
1853
+ var defaultPlace = {
1854
+ formatted_address: address,
1855
+ geometry: {
1856
+ location: { lat: lat, lng: lng },
1857
+ },
1858
+ };
1859
+ if (address && lat && lng)
1860
+ setPlace(defaultPlace);
1861
+ };
1862
+ React.useEffect(function () {
1863
+ checkMapLoaded();
1864
+ setDefaultPlace();
1865
+ }, []);
1866
+ return { inputRef: inputRef, handlePlaceSelect: handlePlaceSelect, place: place, cleanLocation: cleanLocation };
1867
+ };
1868
+
1869
+ function InputWithAddressAutocomplete(_a) {
1870
+ var form = _a.form, name = _a.name, handlePlaceSelect = _a.handlePlaceSelect, inputProps = __rest(_a, ["form", "name", "handlePlaceSelect"]);
1871
+ var inputRef = useAddressAutocomplete(form, name, handlePlaceSelect).inputRef;
1872
+ return (jsxRuntime.jsx(MapWrapper, { children: jsxRuntime.jsx(InputWithController, __assign({ name: "".concat(name, ".address"), form: form, ref: inputRef, placeholder: "" }, inputProps)) }));
1873
+ }
1874
+ InputWithAddressAutocomplete.defaultProps = {
1875
+ label: "Address",
1876
+ };
1877
+
1878
+ var DependentInput = function (props) {
1879
+ var dependentInputName = props.dependentInputName, form = props.form, disabled = props.disabled, Input = props.Input, other = __rest(props, ["dependentInputName", "form", "disabled", "Input"]);
1880
+ var dependentInputValue = reactHookForm.useWatch({
1881
+ control: form.control,
1882
+ name: dependentInputName,
1883
+ });
1884
+ var inputProps = __assign({ form: form, disabled: disabled || !dependentInputValue }, other);
1885
+ return Input ? (jsxRuntime.jsx(Input, __assign({}, inputProps))) : (jsxRuntime.jsx(InputWithController, __assign({}, inputProps)));
1886
+ };
1887
+
1888
+ var getVisibility = function (_a) {
1889
+ var landlord = _a.landlord, tenant = _a.tenant;
1890
+ if (landlord && tenant)
1891
+ return "everybody";
1892
+ if (landlord)
1893
+ return "landlord";
1894
+ if (tenant)
1895
+ return "tenant";
1896
+ return "nobody";
1897
+ };
1898
+ var getVisibilitySettings = function (visibility) {
1899
+ switch (visibility) {
1900
+ case "everybody":
1901
+ return { tenant: true, landlord: true };
1902
+ case "landlord":
1903
+ return { tenant: false, landlord: true };
1904
+ case "tenant":
1905
+ return { tenant: true, landlord: false };
1906
+ default:
1907
+ return { tenant: false, landlord: false };
1908
+ }
1909
+ };
1910
+
1911
+ exports.AutocompleteOption = AutocompleteOption;
1912
+ exports.Avatar = Avatar;
1913
+ exports.ButtonSelect = ButtonSelect;
1914
+ exports.ButtonTab = ButtonTab;
1915
+ exports.ButtonsPanel = ButtonsPanel;
1916
+ exports.CalendarHeaderWithSelect = CalendarHeaderWithSelect;
1917
+ exports.CalendarStandardContainer = CalendarStandardContainer;
1918
+ exports.CalendarStandardHeader = CalendarStandardHeader;
1919
+ exports.CheckboxGroupWithTitle = CheckboxGroupWithTitle;
1920
+ exports.CheckboxWithController = CheckboxWithController;
1921
+ exports.DependentInput = DependentInput;
1922
+ exports.DesktopInputWithMonthPicker = DesktopInputWithMonthPicker;
1923
+ exports.DesktopMenuPanel = DesktopMenuPanel;
1924
+ exports.InputDropdown = InputDropdown;
1925
+ exports.InputFile = InputFile;
1926
+ exports.InputForDatepicker = InputForDatepicker;
1927
+ exports.InputMultiSelect = InputMultiSelect;
1928
+ exports.InputPassword = InputPassword;
1929
+ exports.InputPhoneWithForm = InputPhoneWithForm;
1930
+ exports.InputSelect = InputSelect;
1931
+ exports.InputSelectDropdown = InputSelectDropdown;
1932
+ exports.InputSelectWithController = InputSelectWithController;
1933
+ exports.InputTextAreaMobile = InputTextAreaMobile;
1934
+ exports.InputWithAddressAutocomplete = InputWithAddressAutocomplete;
1935
+ exports.InputWithAutocomplete = InputWithAutocomplete;
1936
+ exports.InputWithController = InputWithController;
1937
+ exports.InputWithDatePicker = InputWithDatePicker;
1938
+ exports.InputWithMask = InputWithMask;
1939
+ exports.InputWithMonthPicker = InputWithMonthPicker;
1940
+ exports.Loading = Loading;
1941
+ exports.MapWrapper = MapWrapper;
1942
+ exports.MenuItem = MenuItem;
1943
+ exports.MenuPanel = MenuPanel;
1944
+ exports.MobileInputWithMonthPicker = MobileInputWithMonthPicker;
1945
+ exports.MobileMenuPanel = MobileMenuPanel;
1946
+ exports.MonthPickerContainer = MonthPickerContainer;
1947
+ exports.MonthPickerHeader = MonthPickerHeader;
1948
+ exports.PassportStrengthBar = PassportStrengthBar;
1949
+ exports.RadioButtons = RadioButtons;
1950
+ exports.RadioButtonsWithController = RadioButtonsWithController;
1951
+ exports.RadioGroupWithLabel = RadioGroupWithLabel;
1952
+ exports.SelectMonth = SelectMonth;
1953
+ exports.SelectYear = SelectYear;
1954
+ exports.Switch = Switch;
1955
+ exports.Table = Table;
1956
+ exports.TableCell = TableCell;
1957
+ exports.TableHeadCell = TableHeadCell;
1958
+ exports.TableRow = TableRow;
1959
+ exports.Tooltip = Tooltip;
1960
+ exports.UndefinedAvatar = UndefinedAvatar;
1961
+ exports.accountRegExp = accountRegExp;
1962
+ exports.bicRegExp = bicRegExp;
1963
+ exports.carNumberRegExp = carNumberRegExp;
1964
+ exports.corrAccountRegExp = corrAccountRegExp;
1965
+ exports.dateRegExp = dateRegExp;
1966
+ exports.emailRegExp = emailRegExp;
1967
+ exports.getFormError = getFormError;
1968
+ exports.getFormValue = getFormValue;
1969
+ exports.getVisibility = getVisibility;
1970
+ exports.getVisibilitySettings = getVisibilitySettings;
1971
+ exports.innRegExp = innRegExp;
1972
+ exports.isValidWithMaskExp = isValidWithMaskExp;
1973
+ exports.mediumPasswordRegExp = mediumPasswordRegExp;
1974
+ exports.monthYearRegExp = monthYearRegExp;
1975
+ exports.phoneRegExp = phoneRegExp;
1976
+ exports.setSettings = setSettings;
1977
+ exports.simplePasswordRegExp = simplePasswordRegExp;
1978
+ exports.strongPasswordRegExp = strongPasswordRegExp;
1979
+ exports.swiftRegExp = swiftRegExp;
1980
+ exports.useAddressAutocomplete = useAddressAutocomplete;
1981
+ //# sourceMappingURL=index.js.map