kui-complex 0.0.74 → 0.0.76

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