kui-complex 0.0.73 → 0.0.75

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