@redneckz/wildless-cms-uni-blocks 0.14.989 → 0.14.990

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 (633) hide show
  1. package/bundle/api/LeadServiceAPI.d.ts +8 -2
  2. package/bundle/api/getSubmitBody.d.ts +201 -97
  3. package/bundle/api/sendFile.d.ts +16 -0
  4. package/bundle/blocks.schema.json +1 -1
  5. package/bundle/bundle.umd.js +562 -50
  6. package/bundle/bundle.umd.min.js +1 -1
  7. package/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +8 -2
  8. package/bundle/components/ApplicationForm/constants.d.ts +7 -0
  9. package/bundle/components/ApplicationForm/handlers.d.ts +3 -2
  10. package/bundle/hooks/useDragAndDrop.d.ts +16 -0
  11. package/bundle/model/FormTypeFieldDef.d.ts +1 -1
  12. package/bundle/model/InputTypes.d.ts +1 -1
  13. package/bundle/ui-kit/FormField/CustomFieldProps.d.ts +1 -0
  14. package/bundle/ui-kit/FormField/Fields/AddressBranchField.d.ts +1 -2
  15. package/bundle/ui-kit/FormField/Fields/AverageGradeField.d.ts +2 -0
  16. package/bundle/ui-kit/FormField/Fields/FileIdField.d.ts +2 -0
  17. package/bundle/ui-kit/FormField/Fields/FileUpload.d.ts +2 -0
  18. package/bundle/ui-kit/FormField/Fields/InternshipEndDateField.d.ts +2 -0
  19. package/bundle/ui-kit/FormField/Fields/InternshipStartDateField.d.ts +2 -0
  20. package/bundle/ui-kit/FormField/Fields/SelectField.d.ts +6 -0
  21. package/bundle/ui-kit/FormField/Fields/TextField.d.ts +2 -0
  22. package/bundle/ui-kit/FormField/InputsMap.d.ts +62 -0
  23. package/bundle/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  24. package/bundle/ui-kit/FormField/constants.d.ts +3 -0
  25. package/bundle/ui-kit/FormField/validators.d.ts +1 -0
  26. package/bundle/ui-kit/Input/InputFile.d.ts +2 -0
  27. package/bundle/ui-kit/Input/InputFileControl.d.ts +2 -0
  28. package/bundle/ui-kit/Input/InputProps.d.ts +6 -1
  29. package/bundle/ui-kit/Input/checks/checkFIleExtension.d.ts +1 -0
  30. package/bundle/ui-kit/Input/checks/checkFileMimeType.d.ts +1 -0
  31. package/bundle/ui-kit/Input/checks/checkFileSignature.d.ts +3 -0
  32. package/bundle/ui-kit/Input/checks/checkFileSize.d.ts +1 -0
  33. package/bundle/ui-kit/Input/checks/getFileSignature.d.ts +1 -0
  34. package/bundle/ui-kit/Input/constants.d.ts +6 -0
  35. package/bundle/ui-kit/Input/renderFileInput.d.ts +12 -0
  36. package/bundle/ui-kit/Input/renderInfoText.d.ts +1 -0
  37. package/bundle/ui-kit/Input/styles.d.ts +2 -0
  38. package/bundle/ui-kit/Input/useVerifyFile.d.ts +17 -0
  39. package/bundle/ui-kit/PreventableEvent.d.ts +4 -0
  40. package/bundle/ui-kit/ProgressBar/ProgressBar.d.ts +1 -0
  41. package/bundle/utils/animateStepWithMinDuration.d.ts +8 -0
  42. package/bundle/utils/isDateValid.d.ts +4 -0
  43. package/dist/api/LeadServiceAPI.d.ts +8 -2
  44. package/dist/api/LeadServiceAPI.js +18 -8
  45. package/dist/api/LeadServiceAPI.js.map +1 -1
  46. package/dist/api/getSubmitBody.d.ts +201 -97
  47. package/dist/api/getSubmitBody.js +13 -6
  48. package/dist/api/getSubmitBody.js.map +1 -1
  49. package/dist/api/sendFile.d.ts +16 -0
  50. package/dist/api/sendFile.js +78 -0
  51. package/dist/api/sendFile.js.map +1 -0
  52. package/dist/components/ApplicationForm/ApplicationForm.js +5 -6
  53. package/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
  54. package/dist/components/ApplicationForm/ApplicationFormContent.d.ts +8 -2
  55. package/dist/components/ApplicationForm/constants.d.ts +7 -0
  56. package/dist/components/ApplicationForm/constants.js +29 -0
  57. package/dist/components/ApplicationForm/constants.js.map +1 -0
  58. package/dist/components/ApplicationForm/handlers.d.ts +3 -2
  59. package/dist/components/ApplicationForm/handlers.js +3 -3
  60. package/dist/components/ApplicationForm/handlers.js.map +1 -1
  61. package/dist/hooks/useDragAndDrop.d.ts +16 -0
  62. package/dist/hooks/useDragAndDrop.js +29 -0
  63. package/dist/hooks/useDragAndDrop.js.map +1 -0
  64. package/dist/model/FormTypeFieldDef.d.ts +1 -1
  65. package/dist/model/InputTypes.d.ts +1 -1
  66. package/dist/ui-kit/FormField/CustomFieldProps.d.ts +1 -0
  67. package/dist/ui-kit/FormField/Fields/AddressBranchField.d.ts +1 -2
  68. package/dist/ui-kit/FormField/Fields/AverageGradeField.d.ts +2 -0
  69. package/dist/ui-kit/FormField/Fields/AverageGradeField.js +9 -0
  70. package/dist/ui-kit/FormField/Fields/AverageGradeField.js.map +1 -0
  71. package/dist/ui-kit/FormField/Fields/BirthdayField.js +4 -1
  72. package/dist/ui-kit/FormField/Fields/BirthdayField.js.map +1 -1
  73. package/dist/ui-kit/FormField/Fields/CommentField.js +1 -1
  74. package/dist/ui-kit/FormField/Fields/CommentField.js.map +1 -1
  75. package/dist/ui-kit/FormField/Fields/FileIdField.d.ts +2 -0
  76. package/dist/ui-kit/FormField/Fields/FileIdField.js +7 -0
  77. package/dist/ui-kit/FormField/Fields/FileIdField.js.map +1 -0
  78. package/dist/ui-kit/FormField/Fields/FileUpload.d.ts +2 -0
  79. package/dist/ui-kit/FormField/Fields/FileUpload.js +14 -0
  80. package/dist/ui-kit/FormField/Fields/FileUpload.js.map +1 -0
  81. package/dist/ui-kit/FormField/Fields/InternshipEndDateField.d.ts +2 -0
  82. package/dist/ui-kit/FormField/Fields/InternshipEndDateField.js +23 -0
  83. package/dist/ui-kit/FormField/Fields/InternshipEndDateField.js.map +1 -0
  84. package/dist/ui-kit/FormField/Fields/InternshipStartDateField.d.ts +2 -0
  85. package/dist/ui-kit/FormField/Fields/InternshipStartDateField.js +23 -0
  86. package/dist/ui-kit/FormField/Fields/InternshipStartDateField.js.map +1 -0
  87. package/dist/ui-kit/FormField/Fields/SelectField.d.ts +6 -0
  88. package/dist/ui-kit/FormField/Fields/SelectField.js +7 -0
  89. package/dist/ui-kit/FormField/Fields/SelectField.js.map +1 -0
  90. package/dist/ui-kit/FormField/Fields/TextField.d.ts +2 -0
  91. package/dist/ui-kit/FormField/Fields/TextField.js +7 -0
  92. package/dist/ui-kit/FormField/Fields/TextField.js.map +1 -0
  93. package/dist/ui-kit/FormField/InputsMap.d.ts +62 -0
  94. package/dist/ui-kit/FormField/InputsMap.js +119 -0
  95. package/dist/ui-kit/FormField/InputsMap.js.map +1 -0
  96. package/dist/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  97. package/dist/ui-kit/FormField/constants.d.ts +3 -0
  98. package/dist/ui-kit/FormField/constants.js +27 -1
  99. package/dist/ui-kit/FormField/constants.js.map +1 -1
  100. package/dist/ui-kit/FormField/getField.js +2 -94
  101. package/dist/ui-kit/FormField/getField.js.map +1 -1
  102. package/dist/ui-kit/FormField/getObjectValidator.js +15 -1
  103. package/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  104. package/dist/ui-kit/FormField/validators.d.ts +1 -0
  105. package/dist/ui-kit/FormField/validators.js +4 -1
  106. package/dist/ui-kit/FormField/validators.js.map +1 -1
  107. package/dist/ui-kit/Input/Input.js +2 -2
  108. package/dist/ui-kit/Input/Input.js.map +1 -1
  109. package/dist/ui-kit/Input/InputFile.d.ts +2 -0
  110. package/dist/ui-kit/Input/InputFile.js +75 -0
  111. package/dist/ui-kit/Input/InputFile.js.map +1 -0
  112. package/dist/ui-kit/Input/InputFileControl.d.ts +2 -0
  113. package/dist/ui-kit/Input/InputFileControl.js +10 -0
  114. package/dist/ui-kit/Input/InputFileControl.js.map +1 -0
  115. package/dist/ui-kit/Input/InputProps.d.ts +6 -1
  116. package/dist/ui-kit/Input/checks/checkFIleExtension.d.ts +1 -0
  117. package/dist/ui-kit/Input/checks/checkFIleExtension.js +12 -0
  118. package/dist/ui-kit/Input/checks/checkFIleExtension.js.map +1 -0
  119. package/dist/ui-kit/Input/checks/checkFileMimeType.d.ts +1 -0
  120. package/dist/ui-kit/Input/checks/checkFileMimeType.js +20 -0
  121. package/dist/ui-kit/Input/checks/checkFileMimeType.js.map +1 -0
  122. package/dist/ui-kit/Input/checks/checkFileSignature.d.ts +3 -0
  123. package/dist/ui-kit/Input/checks/checkFileSignature.js +25 -0
  124. package/dist/ui-kit/Input/checks/checkFileSignature.js.map +1 -0
  125. package/dist/ui-kit/Input/checks/checkFileSize.d.ts +1 -0
  126. package/dist/ui-kit/Input/checks/checkFileSize.js +13 -0
  127. package/dist/ui-kit/Input/checks/checkFileSize.js.map +1 -0
  128. package/dist/ui-kit/Input/checks/getFileSignature.d.ts +1 -0
  129. package/dist/ui-kit/Input/checks/getFileSignature.js +19 -0
  130. package/dist/ui-kit/Input/checks/getFileSignature.js.map +1 -0
  131. package/dist/ui-kit/Input/constants.d.ts +6 -0
  132. package/dist/ui-kit/Input/constants.js +9 -0
  133. package/dist/ui-kit/Input/constants.js.map +1 -0
  134. package/dist/ui-kit/Input/renderFileInput.d.ts +12 -0
  135. package/dist/ui-kit/Input/renderFileInput.js +33 -0
  136. package/dist/ui-kit/Input/renderFileInput.js.map +1 -0
  137. package/dist/ui-kit/Input/renderInfoText.d.ts +1 -0
  138. package/dist/ui-kit/Input/renderInfoText.js +14 -0
  139. package/dist/ui-kit/Input/renderInfoText.js.map +1 -0
  140. package/dist/ui-kit/Input/styles.d.ts +2 -0
  141. package/dist/ui-kit/Input/styles.js +5 -0
  142. package/dist/ui-kit/Input/styles.js.map +1 -0
  143. package/dist/ui-kit/Input/useVerifyFile.d.ts +17 -0
  144. package/dist/ui-kit/Input/useVerifyFile.js +64 -0
  145. package/dist/ui-kit/Input/useVerifyFile.js.map +1 -0
  146. package/dist/ui-kit/PreventableEvent.d.ts +4 -0
  147. package/dist/ui-kit/ProgressBar/ProgressBar.d.ts +1 -0
  148. package/dist/ui-kit/ProgressBar/ProgressBar.js +1 -1
  149. package/dist/ui-kit/ProgressBar/ProgressBar.js.map +1 -1
  150. package/dist/utils/animateStepWithMinDuration.d.ts +8 -0
  151. package/dist/utils/animateStepWithMinDuration.js +26 -0
  152. package/dist/utils/animateStepWithMinDuration.js.map +1 -0
  153. package/dist/utils/isDateValid.d.ts +4 -0
  154. package/dist/utils/isDateValid.js +24 -0
  155. package/dist/utils/isDateValid.js.map +1 -0
  156. package/lib/api/LeadServiceAPI.d.ts +8 -2
  157. package/lib/api/LeadServiceAPI.js +18 -8
  158. package/lib/api/LeadServiceAPI.js.map +1 -1
  159. package/lib/api/getSubmitBody.d.ts +201 -97
  160. package/lib/api/getSubmitBody.js +13 -6
  161. package/lib/api/getSubmitBody.js.map +1 -1
  162. package/lib/api/sendFile.d.ts +16 -0
  163. package/lib/api/sendFile.js +75 -0
  164. package/lib/api/sendFile.js.map +1 -0
  165. package/lib/common.css +1 -1
  166. package/lib/components/ApplicationForm/ApplicationForm.fixture.d.ts +2 -0
  167. package/lib/components/ApplicationForm/ApplicationForm.js +5 -6
  168. package/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
  169. package/lib/components/ApplicationForm/ApplicationFormContent.d.ts +8 -2
  170. package/lib/components/ApplicationForm/constants.d.ts +7 -0
  171. package/lib/components/ApplicationForm/constants.js +27 -0
  172. package/lib/components/ApplicationForm/constants.js.map +1 -0
  173. package/lib/components/ApplicationForm/handlers.d.ts +3 -2
  174. package/lib/components/ApplicationForm/handlers.js +3 -3
  175. package/lib/components/ApplicationForm/handlers.js.map +1 -1
  176. package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +1 -1
  177. package/lib/hooks/useDragAndDrop.d.ts +16 -0
  178. package/lib/hooks/useDragAndDrop.js +26 -0
  179. package/lib/hooks/useDragAndDrop.js.map +1 -0
  180. package/lib/model/FormTypeFieldDef.d.ts +1 -1
  181. package/lib/model/InputTypes.d.ts +1 -1
  182. package/lib/ui-kit/FormField/CustomFieldProps.d.ts +1 -0
  183. package/lib/ui-kit/FormField/Fields/AddressBranchField.d.ts +1 -2
  184. package/lib/ui-kit/FormField/Fields/AverageGradeField.d.ts +2 -0
  185. package/lib/ui-kit/FormField/Fields/AverageGradeField.js +7 -0
  186. package/lib/ui-kit/FormField/Fields/AverageGradeField.js.map +1 -0
  187. package/lib/ui-kit/FormField/Fields/BirthdayField.js +4 -1
  188. package/lib/ui-kit/FormField/Fields/BirthdayField.js.map +1 -1
  189. package/lib/ui-kit/FormField/Fields/CommentField.js +1 -1
  190. package/lib/ui-kit/FormField/Fields/CommentField.js.map +1 -1
  191. package/lib/ui-kit/FormField/Fields/FileIdField.d.ts +2 -0
  192. package/lib/ui-kit/FormField/Fields/FileIdField.js +5 -0
  193. package/lib/ui-kit/FormField/Fields/FileIdField.js.map +1 -0
  194. package/lib/ui-kit/FormField/Fields/FileUpload.d.ts +2 -0
  195. package/lib/ui-kit/FormField/Fields/FileUpload.js +12 -0
  196. package/lib/ui-kit/FormField/Fields/FileUpload.js.map +1 -0
  197. package/lib/ui-kit/FormField/Fields/InternshipEndDateField.d.ts +2 -0
  198. package/lib/ui-kit/FormField/Fields/InternshipEndDateField.js +21 -0
  199. package/lib/ui-kit/FormField/Fields/InternshipEndDateField.js.map +1 -0
  200. package/lib/ui-kit/FormField/Fields/InternshipStartDateField.d.ts +2 -0
  201. package/lib/ui-kit/FormField/Fields/InternshipStartDateField.js +21 -0
  202. package/lib/ui-kit/FormField/Fields/InternshipStartDateField.js.map +1 -0
  203. package/lib/ui-kit/FormField/Fields/SelectField.d.ts +6 -0
  204. package/lib/ui-kit/FormField/Fields/SelectField.js +5 -0
  205. package/lib/ui-kit/FormField/Fields/SelectField.js.map +1 -0
  206. package/lib/ui-kit/FormField/Fields/TextField.d.ts +2 -0
  207. package/lib/ui-kit/FormField/Fields/TextField.js +5 -0
  208. package/lib/ui-kit/FormField/Fields/TextField.js.map +1 -0
  209. package/lib/ui-kit/FormField/InputsMap.d.ts +62 -0
  210. package/lib/ui-kit/FormField/InputsMap.js +117 -0
  211. package/lib/ui-kit/FormField/InputsMap.js.map +1 -0
  212. package/lib/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  213. package/lib/ui-kit/FormField/constants.d.ts +3 -0
  214. package/lib/ui-kit/FormField/constants.js +26 -0
  215. package/lib/ui-kit/FormField/constants.js.map +1 -1
  216. package/lib/ui-kit/FormField/getField.js +1 -93
  217. package/lib/ui-kit/FormField/getField.js.map +1 -1
  218. package/lib/ui-kit/FormField/getObjectValidator.js +16 -2
  219. package/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  220. package/lib/ui-kit/FormField/validators.d.ts +1 -0
  221. package/lib/ui-kit/FormField/validators.js +2 -0
  222. package/lib/ui-kit/FormField/validators.js.map +1 -1
  223. package/lib/ui-kit/Input/Input.js +1 -1
  224. package/lib/ui-kit/Input/Input.js.map +1 -1
  225. package/lib/ui-kit/Input/InputFile.d.ts +2 -0
  226. package/lib/ui-kit/Input/InputFile.js +73 -0
  227. package/lib/ui-kit/Input/InputFile.js.map +1 -0
  228. package/lib/ui-kit/Input/InputFileControl.d.ts +2 -0
  229. package/lib/ui-kit/Input/InputFileControl.js +8 -0
  230. package/lib/ui-kit/Input/InputFileControl.js.map +1 -0
  231. package/lib/ui-kit/Input/InputProps.d.ts +6 -1
  232. package/lib/ui-kit/Input/checks/checkFIleExtension.d.ts +1 -0
  233. package/lib/ui-kit/Input/checks/checkFIleExtension.js +9 -0
  234. package/lib/ui-kit/Input/checks/checkFIleExtension.js.map +1 -0
  235. package/lib/ui-kit/Input/checks/checkFileMimeType.d.ts +1 -0
  236. package/lib/ui-kit/Input/checks/checkFileMimeType.js +17 -0
  237. package/lib/ui-kit/Input/checks/checkFileMimeType.js.map +1 -0
  238. package/lib/ui-kit/Input/checks/checkFileSignature.d.ts +3 -0
  239. package/lib/ui-kit/Input/checks/checkFileSignature.js +22 -0
  240. package/lib/ui-kit/Input/checks/checkFileSignature.js.map +1 -0
  241. package/lib/ui-kit/Input/checks/checkFileSize.d.ts +1 -0
  242. package/lib/ui-kit/Input/checks/checkFileSize.js +10 -0
  243. package/lib/ui-kit/Input/checks/checkFileSize.js.map +1 -0
  244. package/lib/ui-kit/Input/checks/getFileSignature.d.ts +1 -0
  245. package/lib/ui-kit/Input/checks/getFileSignature.js +16 -0
  246. package/lib/ui-kit/Input/checks/getFileSignature.js.map +1 -0
  247. package/lib/ui-kit/Input/constants.d.ts +6 -0
  248. package/lib/ui-kit/Input/constants.js +7 -0
  249. package/lib/ui-kit/Input/constants.js.map +1 -0
  250. package/lib/ui-kit/Input/renderFileInput.d.ts +12 -0
  251. package/lib/ui-kit/Input/renderFileInput.js +30 -0
  252. package/lib/ui-kit/Input/renderFileInput.js.map +1 -0
  253. package/lib/ui-kit/Input/renderInfoText.d.ts +1 -0
  254. package/lib/ui-kit/Input/renderInfoText.js +11 -0
  255. package/lib/ui-kit/Input/renderInfoText.js.map +1 -0
  256. package/lib/ui-kit/Input/styles.d.ts +2 -0
  257. package/lib/ui-kit/Input/styles.js +3 -0
  258. package/lib/ui-kit/Input/styles.js.map +1 -0
  259. package/lib/ui-kit/Input/useVerifyFile.d.ts +17 -0
  260. package/lib/ui-kit/Input/useVerifyFile.js +61 -0
  261. package/lib/ui-kit/Input/useVerifyFile.js.map +1 -0
  262. package/lib/ui-kit/PreventableEvent.d.ts +4 -0
  263. package/lib/ui-kit/ProgressBar/ProgressBar.d.ts +1 -0
  264. package/lib/ui-kit/ProgressBar/ProgressBar.js +1 -1
  265. package/lib/ui-kit/ProgressBar/ProgressBar.js.map +1 -1
  266. package/lib/utils/animateStepWithMinDuration.d.ts +8 -0
  267. package/lib/utils/animateStepWithMinDuration.js +23 -0
  268. package/lib/utils/animateStepWithMinDuration.js.map +1 -0
  269. package/lib/utils/isDateValid.d.ts +4 -0
  270. package/lib/utils/isDateValid.js +21 -0
  271. package/lib/utils/isDateValid.js.map +1 -0
  272. package/mobile/bundle/api/LeadServiceAPI.d.ts +8 -2
  273. package/mobile/bundle/api/getSubmitBody.d.ts +201 -97
  274. package/mobile/bundle/api/sendFile.d.ts +16 -0
  275. package/mobile/bundle/bundle.umd.js +562 -50
  276. package/mobile/bundle/bundle.umd.min.js +1 -1
  277. package/mobile/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +8 -2
  278. package/mobile/bundle/components/ApplicationForm/constants.d.ts +7 -0
  279. package/mobile/bundle/components/ApplicationForm/handlers.d.ts +3 -2
  280. package/mobile/bundle/hooks/useDragAndDrop.d.ts +16 -0
  281. package/mobile/bundle/model/FormTypeFieldDef.d.ts +1 -1
  282. package/mobile/bundle/model/InputTypes.d.ts +1 -1
  283. package/mobile/bundle/ui-kit/FormField/CustomFieldProps.d.ts +1 -0
  284. package/mobile/bundle/ui-kit/FormField/Fields/AddressBranchField.d.ts +1 -2
  285. package/mobile/bundle/ui-kit/FormField/Fields/AverageGradeField.d.ts +2 -0
  286. package/mobile/bundle/ui-kit/FormField/Fields/FileIdField.d.ts +2 -0
  287. package/mobile/bundle/ui-kit/FormField/Fields/FileUpload.d.ts +2 -0
  288. package/mobile/bundle/ui-kit/FormField/Fields/InternshipEndDateField.d.ts +2 -0
  289. package/mobile/bundle/ui-kit/FormField/Fields/InternshipStartDateField.d.ts +2 -0
  290. package/mobile/bundle/ui-kit/FormField/Fields/SelectField.d.ts +6 -0
  291. package/mobile/bundle/ui-kit/FormField/Fields/TextField.d.ts +2 -0
  292. package/mobile/bundle/ui-kit/FormField/InputsMap.d.ts +62 -0
  293. package/mobile/bundle/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  294. package/mobile/bundle/ui-kit/FormField/constants.d.ts +3 -0
  295. package/mobile/bundle/ui-kit/FormField/validators.d.ts +1 -0
  296. package/mobile/bundle/ui-kit/Input/InputFile.d.ts +2 -0
  297. package/mobile/bundle/ui-kit/Input/InputFileControl.d.ts +2 -0
  298. package/mobile/bundle/ui-kit/Input/InputProps.d.ts +6 -1
  299. package/mobile/bundle/ui-kit/Input/checks/checkFIleExtension.d.ts +1 -0
  300. package/mobile/bundle/ui-kit/Input/checks/checkFileMimeType.d.ts +1 -0
  301. package/mobile/bundle/ui-kit/Input/checks/checkFileSignature.d.ts +3 -0
  302. package/mobile/bundle/ui-kit/Input/checks/checkFileSize.d.ts +1 -0
  303. package/mobile/bundle/ui-kit/Input/checks/getFileSignature.d.ts +1 -0
  304. package/mobile/bundle/ui-kit/Input/constants.d.ts +6 -0
  305. package/mobile/bundle/ui-kit/Input/renderFileInput.d.ts +12 -0
  306. package/mobile/bundle/ui-kit/Input/renderInfoText.d.ts +1 -0
  307. package/mobile/bundle/ui-kit/Input/styles.d.ts +2 -0
  308. package/mobile/bundle/ui-kit/Input/useVerifyFile.d.ts +17 -0
  309. package/mobile/bundle/ui-kit/PreventableEvent.d.ts +4 -0
  310. package/mobile/bundle/ui-kit/ProgressBar/ProgressBar.d.ts +1 -0
  311. package/mobile/bundle/utils/animateStepWithMinDuration.d.ts +8 -0
  312. package/mobile/bundle/utils/isDateValid.d.ts +4 -0
  313. package/mobile/dist/api/LeadServiceAPI.d.ts +8 -2
  314. package/mobile/dist/api/LeadServiceAPI.js +18 -8
  315. package/mobile/dist/api/LeadServiceAPI.js.map +1 -1
  316. package/mobile/dist/api/getSubmitBody.d.ts +201 -97
  317. package/mobile/dist/api/getSubmitBody.js +13 -6
  318. package/mobile/dist/api/getSubmitBody.js.map +1 -1
  319. package/mobile/dist/api/sendFile.d.ts +16 -0
  320. package/mobile/dist/api/sendFile.js +78 -0
  321. package/mobile/dist/api/sendFile.js.map +1 -0
  322. package/mobile/dist/components/ApplicationForm/ApplicationForm.js +5 -6
  323. package/mobile/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
  324. package/mobile/dist/components/ApplicationForm/ApplicationFormContent.d.ts +8 -2
  325. package/mobile/dist/components/ApplicationForm/constants.d.ts +7 -0
  326. package/mobile/dist/components/ApplicationForm/constants.js +29 -0
  327. package/mobile/dist/components/ApplicationForm/constants.js.map +1 -0
  328. package/mobile/dist/components/ApplicationForm/handlers.d.ts +3 -2
  329. package/mobile/dist/components/ApplicationForm/handlers.js +3 -3
  330. package/mobile/dist/components/ApplicationForm/handlers.js.map +1 -1
  331. package/mobile/dist/hooks/useDragAndDrop.d.ts +16 -0
  332. package/mobile/dist/hooks/useDragAndDrop.js +29 -0
  333. package/mobile/dist/hooks/useDragAndDrop.js.map +1 -0
  334. package/mobile/dist/model/FormTypeFieldDef.d.ts +1 -1
  335. package/mobile/dist/model/InputTypes.d.ts +1 -1
  336. package/mobile/dist/ui-kit/FormField/CustomFieldProps.d.ts +1 -0
  337. package/mobile/dist/ui-kit/FormField/Fields/AddressBranchField.d.ts +1 -2
  338. package/mobile/dist/ui-kit/FormField/Fields/AverageGradeField.d.ts +2 -0
  339. package/mobile/dist/ui-kit/FormField/Fields/AverageGradeField.js +9 -0
  340. package/mobile/dist/ui-kit/FormField/Fields/AverageGradeField.js.map +1 -0
  341. package/mobile/dist/ui-kit/FormField/Fields/BirthdayField.js +4 -1
  342. package/mobile/dist/ui-kit/FormField/Fields/BirthdayField.js.map +1 -1
  343. package/mobile/dist/ui-kit/FormField/Fields/CommentField.js +1 -1
  344. package/mobile/dist/ui-kit/FormField/Fields/CommentField.js.map +1 -1
  345. package/mobile/dist/ui-kit/FormField/Fields/FileIdField.d.ts +2 -0
  346. package/mobile/dist/ui-kit/FormField/Fields/FileIdField.js +7 -0
  347. package/mobile/dist/ui-kit/FormField/Fields/FileIdField.js.map +1 -0
  348. package/mobile/dist/ui-kit/FormField/Fields/FileUpload.d.ts +2 -0
  349. package/mobile/dist/ui-kit/FormField/Fields/FileUpload.js +14 -0
  350. package/mobile/dist/ui-kit/FormField/Fields/FileUpload.js.map +1 -0
  351. package/mobile/dist/ui-kit/FormField/Fields/InternshipEndDateField.d.ts +2 -0
  352. package/mobile/dist/ui-kit/FormField/Fields/InternshipEndDateField.js +23 -0
  353. package/mobile/dist/ui-kit/FormField/Fields/InternshipEndDateField.js.map +1 -0
  354. package/mobile/dist/ui-kit/FormField/Fields/InternshipStartDateField.d.ts +2 -0
  355. package/mobile/dist/ui-kit/FormField/Fields/InternshipStartDateField.js +23 -0
  356. package/mobile/dist/ui-kit/FormField/Fields/InternshipStartDateField.js.map +1 -0
  357. package/mobile/dist/ui-kit/FormField/Fields/SelectField.d.ts +6 -0
  358. package/mobile/dist/ui-kit/FormField/Fields/SelectField.js +7 -0
  359. package/mobile/dist/ui-kit/FormField/Fields/SelectField.js.map +1 -0
  360. package/mobile/dist/ui-kit/FormField/Fields/TextField.d.ts +2 -0
  361. package/mobile/dist/ui-kit/FormField/Fields/TextField.js +7 -0
  362. package/mobile/dist/ui-kit/FormField/Fields/TextField.js.map +1 -0
  363. package/mobile/dist/ui-kit/FormField/InputsMap.d.ts +62 -0
  364. package/mobile/dist/ui-kit/FormField/InputsMap.js +119 -0
  365. package/mobile/dist/ui-kit/FormField/InputsMap.js.map +1 -0
  366. package/mobile/dist/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  367. package/mobile/dist/ui-kit/FormField/constants.d.ts +3 -0
  368. package/mobile/dist/ui-kit/FormField/constants.js +27 -1
  369. package/mobile/dist/ui-kit/FormField/constants.js.map +1 -1
  370. package/mobile/dist/ui-kit/FormField/getField.js +2 -94
  371. package/mobile/dist/ui-kit/FormField/getField.js.map +1 -1
  372. package/mobile/dist/ui-kit/FormField/getObjectValidator.js +15 -1
  373. package/mobile/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  374. package/mobile/dist/ui-kit/FormField/validators.d.ts +1 -0
  375. package/mobile/dist/ui-kit/FormField/validators.js +4 -1
  376. package/mobile/dist/ui-kit/FormField/validators.js.map +1 -1
  377. package/mobile/dist/ui-kit/Input/Input.js +2 -2
  378. package/mobile/dist/ui-kit/Input/Input.js.map +1 -1
  379. package/mobile/dist/ui-kit/Input/InputFile.d.ts +2 -0
  380. package/mobile/dist/ui-kit/Input/InputFile.js +75 -0
  381. package/mobile/dist/ui-kit/Input/InputFile.js.map +1 -0
  382. package/mobile/dist/ui-kit/Input/InputFileControl.d.ts +2 -0
  383. package/mobile/dist/ui-kit/Input/InputFileControl.js +10 -0
  384. package/mobile/dist/ui-kit/Input/InputFileControl.js.map +1 -0
  385. package/mobile/dist/ui-kit/Input/InputProps.d.ts +6 -1
  386. package/mobile/dist/ui-kit/Input/checks/checkFIleExtension.d.ts +1 -0
  387. package/mobile/dist/ui-kit/Input/checks/checkFIleExtension.js +12 -0
  388. package/mobile/dist/ui-kit/Input/checks/checkFIleExtension.js.map +1 -0
  389. package/mobile/dist/ui-kit/Input/checks/checkFileMimeType.d.ts +1 -0
  390. package/mobile/dist/ui-kit/Input/checks/checkFileMimeType.js +20 -0
  391. package/mobile/dist/ui-kit/Input/checks/checkFileMimeType.js.map +1 -0
  392. package/mobile/dist/ui-kit/Input/checks/checkFileSignature.d.ts +3 -0
  393. package/mobile/dist/ui-kit/Input/checks/checkFileSignature.js +25 -0
  394. package/mobile/dist/ui-kit/Input/checks/checkFileSignature.js.map +1 -0
  395. package/mobile/dist/ui-kit/Input/checks/checkFileSize.d.ts +1 -0
  396. package/mobile/dist/ui-kit/Input/checks/checkFileSize.js +13 -0
  397. package/mobile/dist/ui-kit/Input/checks/checkFileSize.js.map +1 -0
  398. package/mobile/dist/ui-kit/Input/checks/getFileSignature.d.ts +1 -0
  399. package/mobile/dist/ui-kit/Input/checks/getFileSignature.js +19 -0
  400. package/mobile/dist/ui-kit/Input/checks/getFileSignature.js.map +1 -0
  401. package/mobile/dist/ui-kit/Input/constants.d.ts +6 -0
  402. package/mobile/dist/ui-kit/Input/constants.js +9 -0
  403. package/mobile/dist/ui-kit/Input/constants.js.map +1 -0
  404. package/mobile/dist/ui-kit/Input/renderFileInput.d.ts +12 -0
  405. package/mobile/dist/ui-kit/Input/renderFileInput.js +33 -0
  406. package/mobile/dist/ui-kit/Input/renderFileInput.js.map +1 -0
  407. package/mobile/dist/ui-kit/Input/renderInfoText.d.ts +1 -0
  408. package/mobile/dist/ui-kit/Input/renderInfoText.js +14 -0
  409. package/mobile/dist/ui-kit/Input/renderInfoText.js.map +1 -0
  410. package/mobile/dist/ui-kit/Input/styles.d.ts +2 -0
  411. package/mobile/dist/ui-kit/Input/styles.js +5 -0
  412. package/mobile/dist/ui-kit/Input/styles.js.map +1 -0
  413. package/mobile/dist/ui-kit/Input/useVerifyFile.d.ts +17 -0
  414. package/mobile/dist/ui-kit/Input/useVerifyFile.js +64 -0
  415. package/mobile/dist/ui-kit/Input/useVerifyFile.js.map +1 -0
  416. package/mobile/dist/ui-kit/PreventableEvent.d.ts +4 -0
  417. package/mobile/dist/ui-kit/ProgressBar/ProgressBar.d.ts +1 -0
  418. package/mobile/dist/ui-kit/ProgressBar/ProgressBar.js +1 -1
  419. package/mobile/dist/ui-kit/ProgressBar/ProgressBar.js.map +1 -1
  420. package/mobile/dist/utils/animateStepWithMinDuration.d.ts +8 -0
  421. package/mobile/dist/utils/animateStepWithMinDuration.js +26 -0
  422. package/mobile/dist/utils/animateStepWithMinDuration.js.map +1 -0
  423. package/mobile/dist/utils/isDateValid.d.ts +4 -0
  424. package/mobile/dist/utils/isDateValid.js +24 -0
  425. package/mobile/dist/utils/isDateValid.js.map +1 -0
  426. package/mobile/lib/api/LeadServiceAPI.d.ts +8 -2
  427. package/mobile/lib/api/LeadServiceAPI.js +18 -8
  428. package/mobile/lib/api/LeadServiceAPI.js.map +1 -1
  429. package/mobile/lib/api/getSubmitBody.d.ts +201 -97
  430. package/mobile/lib/api/getSubmitBody.js +13 -6
  431. package/mobile/lib/api/getSubmitBody.js.map +1 -1
  432. package/mobile/lib/api/sendFile.d.ts +16 -0
  433. package/mobile/lib/api/sendFile.js +75 -0
  434. package/mobile/lib/api/sendFile.js.map +1 -0
  435. package/mobile/lib/common.css +1 -1
  436. package/mobile/lib/components/ApplicationForm/ApplicationForm.js +5 -6
  437. package/mobile/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
  438. package/mobile/lib/components/ApplicationForm/ApplicationFormContent.d.ts +8 -2
  439. package/mobile/lib/components/ApplicationForm/constants.d.ts +7 -0
  440. package/mobile/lib/components/ApplicationForm/constants.js +27 -0
  441. package/mobile/lib/components/ApplicationForm/constants.js.map +1 -0
  442. package/mobile/lib/components/ApplicationForm/handlers.d.ts +3 -2
  443. package/mobile/lib/components/ApplicationForm/handlers.js +3 -3
  444. package/mobile/lib/components/ApplicationForm/handlers.js.map +1 -1
  445. package/mobile/lib/hooks/useDragAndDrop.d.ts +16 -0
  446. package/mobile/lib/hooks/useDragAndDrop.js +26 -0
  447. package/mobile/lib/hooks/useDragAndDrop.js.map +1 -0
  448. package/mobile/lib/model/FormTypeFieldDef.d.ts +1 -1
  449. package/mobile/lib/model/InputTypes.d.ts +1 -1
  450. package/mobile/lib/ui-kit/FormField/CustomFieldProps.d.ts +1 -0
  451. package/mobile/lib/ui-kit/FormField/Fields/AddressBranchField.d.ts +1 -2
  452. package/mobile/lib/ui-kit/FormField/Fields/AverageGradeField.d.ts +2 -0
  453. package/mobile/lib/ui-kit/FormField/Fields/AverageGradeField.js +7 -0
  454. package/mobile/lib/ui-kit/FormField/Fields/AverageGradeField.js.map +1 -0
  455. package/mobile/lib/ui-kit/FormField/Fields/BirthdayField.js +4 -1
  456. package/mobile/lib/ui-kit/FormField/Fields/BirthdayField.js.map +1 -1
  457. package/mobile/lib/ui-kit/FormField/Fields/CommentField.js +1 -1
  458. package/mobile/lib/ui-kit/FormField/Fields/CommentField.js.map +1 -1
  459. package/mobile/lib/ui-kit/FormField/Fields/FileIdField.d.ts +2 -0
  460. package/mobile/lib/ui-kit/FormField/Fields/FileIdField.js +5 -0
  461. package/mobile/lib/ui-kit/FormField/Fields/FileIdField.js.map +1 -0
  462. package/mobile/lib/ui-kit/FormField/Fields/FileUpload.d.ts +2 -0
  463. package/mobile/lib/ui-kit/FormField/Fields/FileUpload.js +12 -0
  464. package/mobile/lib/ui-kit/FormField/Fields/FileUpload.js.map +1 -0
  465. package/mobile/lib/ui-kit/FormField/Fields/InternshipEndDateField.d.ts +2 -0
  466. package/mobile/lib/ui-kit/FormField/Fields/InternshipEndDateField.js +21 -0
  467. package/mobile/lib/ui-kit/FormField/Fields/InternshipEndDateField.js.map +1 -0
  468. package/mobile/lib/ui-kit/FormField/Fields/InternshipStartDateField.d.ts +2 -0
  469. package/mobile/lib/ui-kit/FormField/Fields/InternshipStartDateField.js +21 -0
  470. package/mobile/lib/ui-kit/FormField/Fields/InternshipStartDateField.js.map +1 -0
  471. package/mobile/lib/ui-kit/FormField/Fields/SelectField.d.ts +6 -0
  472. package/mobile/lib/ui-kit/FormField/Fields/SelectField.js +5 -0
  473. package/mobile/lib/ui-kit/FormField/Fields/SelectField.js.map +1 -0
  474. package/mobile/lib/ui-kit/FormField/Fields/TextField.d.ts +2 -0
  475. package/mobile/lib/ui-kit/FormField/Fields/TextField.js +5 -0
  476. package/mobile/lib/ui-kit/FormField/Fields/TextField.js.map +1 -0
  477. package/mobile/lib/ui-kit/FormField/InputsMap.d.ts +62 -0
  478. package/mobile/lib/ui-kit/FormField/InputsMap.js +117 -0
  479. package/mobile/lib/ui-kit/FormField/InputsMap.js.map +1 -0
  480. package/mobile/lib/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  481. package/mobile/lib/ui-kit/FormField/constants.d.ts +3 -0
  482. package/mobile/lib/ui-kit/FormField/constants.js +26 -0
  483. package/mobile/lib/ui-kit/FormField/constants.js.map +1 -1
  484. package/mobile/lib/ui-kit/FormField/getField.js +1 -93
  485. package/mobile/lib/ui-kit/FormField/getField.js.map +1 -1
  486. package/mobile/lib/ui-kit/FormField/getObjectValidator.js +16 -2
  487. package/mobile/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  488. package/mobile/lib/ui-kit/FormField/validators.d.ts +1 -0
  489. package/mobile/lib/ui-kit/FormField/validators.js +2 -0
  490. package/mobile/lib/ui-kit/FormField/validators.js.map +1 -1
  491. package/mobile/lib/ui-kit/Input/Input.js +1 -1
  492. package/mobile/lib/ui-kit/Input/Input.js.map +1 -1
  493. package/mobile/lib/ui-kit/Input/InputFile.d.ts +2 -0
  494. package/mobile/lib/ui-kit/Input/InputFile.js +73 -0
  495. package/mobile/lib/ui-kit/Input/InputFile.js.map +1 -0
  496. package/mobile/lib/ui-kit/Input/InputFileControl.d.ts +2 -0
  497. package/mobile/lib/ui-kit/Input/InputFileControl.js +8 -0
  498. package/mobile/lib/ui-kit/Input/InputFileControl.js.map +1 -0
  499. package/mobile/lib/ui-kit/Input/InputProps.d.ts +6 -1
  500. package/mobile/lib/ui-kit/Input/checks/checkFIleExtension.d.ts +1 -0
  501. package/mobile/lib/ui-kit/Input/checks/checkFIleExtension.js +9 -0
  502. package/mobile/lib/ui-kit/Input/checks/checkFIleExtension.js.map +1 -0
  503. package/mobile/lib/ui-kit/Input/checks/checkFileMimeType.d.ts +1 -0
  504. package/mobile/lib/ui-kit/Input/checks/checkFileMimeType.js +17 -0
  505. package/mobile/lib/ui-kit/Input/checks/checkFileMimeType.js.map +1 -0
  506. package/mobile/lib/ui-kit/Input/checks/checkFileSignature.d.ts +3 -0
  507. package/mobile/lib/ui-kit/Input/checks/checkFileSignature.js +22 -0
  508. package/mobile/lib/ui-kit/Input/checks/checkFileSignature.js.map +1 -0
  509. package/mobile/lib/ui-kit/Input/checks/checkFileSize.d.ts +1 -0
  510. package/mobile/lib/ui-kit/Input/checks/checkFileSize.js +10 -0
  511. package/mobile/lib/ui-kit/Input/checks/checkFileSize.js.map +1 -0
  512. package/mobile/lib/ui-kit/Input/checks/getFileSignature.d.ts +1 -0
  513. package/mobile/lib/ui-kit/Input/checks/getFileSignature.js +16 -0
  514. package/mobile/lib/ui-kit/Input/checks/getFileSignature.js.map +1 -0
  515. package/mobile/lib/ui-kit/Input/constants.d.ts +6 -0
  516. package/mobile/lib/ui-kit/Input/constants.js +7 -0
  517. package/mobile/lib/ui-kit/Input/constants.js.map +1 -0
  518. package/mobile/lib/ui-kit/Input/renderFileInput.d.ts +12 -0
  519. package/mobile/lib/ui-kit/Input/renderFileInput.js +30 -0
  520. package/mobile/lib/ui-kit/Input/renderFileInput.js.map +1 -0
  521. package/mobile/lib/ui-kit/Input/renderInfoText.d.ts +1 -0
  522. package/mobile/lib/ui-kit/Input/renderInfoText.js +11 -0
  523. package/mobile/lib/ui-kit/Input/renderInfoText.js.map +1 -0
  524. package/mobile/lib/ui-kit/Input/styles.d.ts +2 -0
  525. package/mobile/lib/ui-kit/Input/styles.js +3 -0
  526. package/mobile/lib/ui-kit/Input/styles.js.map +1 -0
  527. package/mobile/lib/ui-kit/Input/useVerifyFile.d.ts +17 -0
  528. package/mobile/lib/ui-kit/Input/useVerifyFile.js +61 -0
  529. package/mobile/lib/ui-kit/Input/useVerifyFile.js.map +1 -0
  530. package/mobile/lib/ui-kit/PreventableEvent.d.ts +4 -0
  531. package/mobile/lib/ui-kit/ProgressBar/ProgressBar.d.ts +1 -0
  532. package/mobile/lib/ui-kit/ProgressBar/ProgressBar.js +1 -1
  533. package/mobile/lib/ui-kit/ProgressBar/ProgressBar.js.map +1 -1
  534. package/mobile/lib/utils/animateStepWithMinDuration.d.ts +8 -0
  535. package/mobile/lib/utils/animateStepWithMinDuration.js +23 -0
  536. package/mobile/lib/utils/animateStepWithMinDuration.js.map +1 -0
  537. package/mobile/lib/utils/isDateValid.d.ts +4 -0
  538. package/mobile/lib/utils/isDateValid.js +21 -0
  539. package/mobile/lib/utils/isDateValid.js.map +1 -0
  540. package/mobile/src/api/LeadServiceAPI.ts +29 -9
  541. package/mobile/src/api/getSubmitBody.ts +28 -7
  542. package/mobile/src/api/sendFile.ts +97 -0
  543. package/mobile/src/components/ApplicationForm/ApplicationForm.example.json +192 -0
  544. package/mobile/src/components/ApplicationForm/ApplicationForm.tsx +22 -16
  545. package/mobile/src/components/ApplicationForm/ApplicationFormContent.ts +16 -2
  546. package/mobile/src/components/ApplicationForm/constants.ts +33 -0
  547. package/mobile/src/components/ApplicationForm/handlers.ts +5 -3
  548. package/mobile/src/hooks/useDragAndDrop.ts +48 -0
  549. package/mobile/src/model/FormTypeFieldDef.ts +2 -1
  550. package/mobile/src/model/InputTypes.ts +1 -1
  551. package/mobile/src/ui-kit/FormField/CustomFieldProps.ts +1 -0
  552. package/mobile/src/ui-kit/FormField/Fields/AddressBranchField.tsx +1 -1
  553. package/mobile/src/ui-kit/FormField/Fields/AverageGradeField.tsx +14 -0
  554. package/mobile/src/ui-kit/FormField/Fields/BirthdayField.tsx +12 -7
  555. package/mobile/src/ui-kit/FormField/Fields/CommentField.tsx +1 -1
  556. package/mobile/src/ui-kit/FormField/Fields/FileIdField.tsx +7 -0
  557. package/mobile/src/ui-kit/FormField/Fields/FileUpload.tsx +22 -0
  558. package/mobile/src/ui-kit/FormField/Fields/InternshipEndDateField.tsx +38 -0
  559. package/mobile/src/ui-kit/FormField/Fields/InternshipStartDateField.tsx +38 -0
  560. package/mobile/src/ui-kit/FormField/Fields/SelectField.tsx +12 -0
  561. package/mobile/src/ui-kit/FormField/Fields/TextField.tsx +7 -0
  562. package/mobile/src/ui-kit/FormField/InputsMap.tsx +133 -0
  563. package/mobile/src/ui-kit/FormField/NameFieldDef.ts +17 -1
  564. package/mobile/src/ui-kit/FormField/constants.tsx +29 -0
  565. package/mobile/src/ui-kit/FormField/getField.tsx +1 -105
  566. package/mobile/src/ui-kit/FormField/getObjectValidator.tsx +16 -1
  567. package/mobile/src/ui-kit/FormField/validators.ts +4 -0
  568. package/mobile/src/ui-kit/Input/Input.tsx +1 -2
  569. package/mobile/src/ui-kit/Input/InputFile.tsx +132 -0
  570. package/mobile/src/ui-kit/Input/InputFileControl.tsx +22 -0
  571. package/mobile/src/ui-kit/Input/InputProps.ts +10 -1
  572. package/mobile/src/ui-kit/Input/checks/checkFIleExtension.ts +9 -0
  573. package/mobile/src/ui-kit/Input/checks/checkFileMimeType.ts +20 -0
  574. package/mobile/src/ui-kit/Input/checks/checkFileSignature.ts +30 -0
  575. package/mobile/src/ui-kit/Input/checks/checkFileSize.ts +10 -0
  576. package/mobile/src/ui-kit/Input/checks/getFileSignature.ts +16 -0
  577. package/mobile/src/ui-kit/Input/constants.ts +6 -0
  578. package/mobile/src/ui-kit/Input/renderFileInput.tsx +87 -0
  579. package/mobile/src/ui-kit/Input/renderInfoText.tsx +15 -0
  580. package/mobile/src/ui-kit/Input/styles.ts +2 -0
  581. package/mobile/src/ui-kit/Input/useVerifyFile.ts +100 -0
  582. package/mobile/src/ui-kit/PreventableEvent.ts +5 -0
  583. package/mobile/src/ui-kit/ProgressBar/ProgressBar.tsx +7 -2
  584. package/mobile/src/utils/animateStepWithMinDuration.ts +38 -0
  585. package/mobile/src/utils/isDateValid.ts +33 -0
  586. package/package.json +2 -2
  587. package/src/api/LeadServiceAPI.ts +29 -9
  588. package/src/api/getSubmitBody.ts +28 -7
  589. package/src/api/sendFile.ts +97 -0
  590. package/src/components/ApplicationForm/ApplicationForm.example.json +192 -0
  591. package/src/components/ApplicationForm/ApplicationForm.fixture.tsx +132 -0
  592. package/src/components/ApplicationForm/ApplicationForm.tsx +22 -16
  593. package/src/components/ApplicationForm/ApplicationFormContent.ts +16 -2
  594. package/src/components/ApplicationForm/constants.ts +33 -0
  595. package/src/components/ApplicationForm/handlers.ts +5 -3
  596. package/src/hooks/useDragAndDrop.ts +48 -0
  597. package/src/model/FormTypeFieldDef.ts +2 -1
  598. package/src/model/InputTypes.ts +1 -1
  599. package/src/ui-kit/FormField/CustomFieldProps.ts +1 -0
  600. package/src/ui-kit/FormField/Fields/AddressBranchField.tsx +1 -1
  601. package/src/ui-kit/FormField/Fields/AverageGradeField.tsx +14 -0
  602. package/src/ui-kit/FormField/Fields/BirthdayField.tsx +12 -7
  603. package/src/ui-kit/FormField/Fields/CommentField.tsx +1 -1
  604. package/src/ui-kit/FormField/Fields/FileIdField.tsx +7 -0
  605. package/src/ui-kit/FormField/Fields/FileUpload.tsx +22 -0
  606. package/src/ui-kit/FormField/Fields/InternshipEndDateField.tsx +38 -0
  607. package/src/ui-kit/FormField/Fields/InternshipStartDateField.tsx +38 -0
  608. package/src/ui-kit/FormField/Fields/SelectField.tsx +12 -0
  609. package/src/ui-kit/FormField/Fields/TextField.tsx +7 -0
  610. package/src/ui-kit/FormField/InputsMap.tsx +133 -0
  611. package/src/ui-kit/FormField/NameFieldDef.ts +17 -1
  612. package/src/ui-kit/FormField/constants.tsx +29 -0
  613. package/src/ui-kit/FormField/getField.tsx +1 -105
  614. package/src/ui-kit/FormField/getObjectValidator.tsx +16 -1
  615. package/src/ui-kit/FormField/validators.ts +4 -0
  616. package/src/ui-kit/Input/Input.tsx +1 -2
  617. package/src/ui-kit/Input/InputFile.tsx +132 -0
  618. package/src/ui-kit/Input/InputFileControl.tsx +22 -0
  619. package/src/ui-kit/Input/InputProps.ts +10 -1
  620. package/src/ui-kit/Input/checks/checkFIleExtension.ts +9 -0
  621. package/src/ui-kit/Input/checks/checkFileMimeType.ts +20 -0
  622. package/src/ui-kit/Input/checks/checkFileSignature.ts +30 -0
  623. package/src/ui-kit/Input/checks/checkFileSize.ts +10 -0
  624. package/src/ui-kit/Input/checks/getFileSignature.ts +16 -0
  625. package/src/ui-kit/Input/constants.ts +6 -0
  626. package/src/ui-kit/Input/renderFileInput.tsx +87 -0
  627. package/src/ui-kit/Input/renderInfoText.tsx +15 -0
  628. package/src/ui-kit/Input/styles.ts +2 -0
  629. package/src/ui-kit/Input/useVerifyFile.ts +100 -0
  630. package/src/ui-kit/PreventableEvent.ts +5 -0
  631. package/src/ui-kit/ProgressBar/ProgressBar.tsx +7 -2
  632. package/src/utils/animateStepWithMinDuration.ts +38 -0
  633. package/src/utils/isDateValid.ts +33 -0
@@ -0,0 +1,10 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.InputFileControl = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const uni_jsx_1 = require("@redneckz/uni-jsx");
5
+ const getRequiredLabel_1 = require("../../utils/getRequiredLabel");
6
+ const InputFile_1 = require("./InputFile");
7
+ exports.InputFileControl = (0, uni_jsx_1.JSX)(({ label, value = '', error, type, inputRef, required, ...rest }) => {
8
+ return ((0, jsx_runtime_1.jsx)("div", { ref: inputRef, children: (0, jsx_runtime_1.jsx)(InputFile_1.InputFile, { type: type || 'file', "aria-label": label, label: (0, getRequiredLabel_1.getRequiredLabel)({ label, required }), valid: Boolean(!error), value: value, error: error, ...rest }) }));
9
+ });
10
+ //# sourceMappingURL=InputFileControl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputFileControl.js","sourceRoot":"","sources":["../../../src/ui-kit/Input/InputFileControl.tsx"],"names":[],"mappings":";;;AAAA,+CAAwC;AACxC,mEAAgE;AAChE,2CAAwC;AAG3B,QAAA,gBAAgB,GAAG,IAAA,aAAG,EACjC,CAAC,EAAE,KAAK,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IAClE,OAAO,CACL,gCAAK,GAAG,EAAE,QAAQ,YAChB,uBAAC,qBAAS,IACR,IAAI,EAAE,IAAI,IAAI,MAAM,gBACR,KAAK,EACjB,KAAK,EAAE,IAAA,mCAAgB,EAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAC5C,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,EACtB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,KACR,IAAI,GACR,GACE,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -2,7 +2,12 @@ import { type ControlProps } from '../../model/ControlProps';
2
2
  import { type DefaultControlType } from '../../model/DefaultControlType';
3
3
  import { type InputTypes } from '../../model/InputTypes';
4
4
  import { type PreventableEventWithTarget } from '../PreventableEvent';
5
- export interface InputProps<V = string> extends DefaultControlType, ControlProps<V> {
5
+ export declare type FileInputProps = {
6
+ extensions?: string[];
7
+ maxSizeMB?: number;
8
+ onFileChanged?: (value: string) => void;
9
+ };
10
+ export interface InputProps<V = string> extends DefaultControlType, ControlProps<V>, FileInputProps {
6
11
  id?: string;
7
12
  name?: string;
8
13
  type?: InputTypes;
@@ -0,0 +1 @@
1
+ export declare const checkFileExtension: (file: File, extensions?: string[]) => Promise<void>;
@@ -0,0 +1,12 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.checkFileExtension = void 0;
3
+ const constants_1 = require("../constants");
4
+ const checkFileExtension = async (file, extensions) => {
5
+ const fileExt = file.name.split('.')[1];
6
+ console.log(fileExt, extensions);
7
+ if (!extensions?.includes(fileExt)) {
8
+ throw new Error(constants_1.EXTENSIONS_ERROR_TEXT);
9
+ }
10
+ };
11
+ exports.checkFileExtension = checkFileExtension;
12
+ //# sourceMappingURL=checkFIleExtension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkFIleExtension.js","sourceRoot":"","sources":["../../../../src/ui-kit/Input/checks/checkFIleExtension.ts"],"names":[],"mappings":";;AAAA,4CAAqD;AAE9C,MAAM,kBAAkB,GAAG,KAAK,EAAE,IAAU,EAAE,UAAqB,EAAiB,EAAE;IAC3F,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACjC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE;QAClC,MAAM,IAAI,KAAK,CAAC,iCAAqB,CAAC,CAAC;KACxC;AACH,CAAC,CAAC;AANW,QAAA,kBAAkB,sBAM7B"}
@@ -0,0 +1 @@
1
+ export declare const checkFileMimeType: (file?: File, extensions?: string[]) => Promise<void>;
@@ -0,0 +1,20 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.checkFileMimeType = void 0;
3
+ const constants_1 = require("../constants");
4
+ const EXT_TO_MIME = {
5
+ pdf: 'application/pdf',
6
+ doc: 'application/msword',
7
+ docx: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
8
+ pptx: 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
9
+ };
10
+ const checkFileMimeType = async (file, extensions) => {
11
+ const fileMimeType = file?.type ?? '';
12
+ const expectedMimeTypes = (extensions || [])
13
+ .map((ext) => EXT_TO_MIME[ext])
14
+ .filter((mime) => mime !== undefined);
15
+ if (!expectedMimeTypes.includes(fileMimeType)) {
16
+ throw new Error(constants_1.EXTENSIONS_ERROR_TEXT);
17
+ }
18
+ };
19
+ exports.checkFileMimeType = checkFileMimeType;
20
+ //# sourceMappingURL=checkFileMimeType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkFileMimeType.js","sourceRoot":"","sources":["../../../../src/ui-kit/Input/checks/checkFileMimeType.ts"],"names":[],"mappings":";;AAAA,4CAAqD;AAErD,MAAM,WAAW,GAA2B;IAC1C,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,oBAAoB;IACzB,IAAI,EAAE,yEAAyE;IAC/E,IAAI,EAAE,2EAA2E;CAClF,CAAC;AAEK,MAAM,iBAAiB,GAAG,KAAK,EAAE,IAAW,EAAE,UAAqB,EAAiB,EAAE;IAC3F,MAAM,YAAY,GAAG,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;IAEtC,MAAM,iBAAiB,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC;SACzC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;SAC9B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAExC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;QAC7C,MAAM,IAAI,KAAK,CAAC,iCAAqB,CAAC,CAAC;KACxC;AACH,CAAC,CAAC;AAVW,QAAA,iBAAiB,qBAU5B"}
@@ -0,0 +1,3 @@
1
+ declare const SIGNATURES: Record<string, string>;
2
+ export declare const checkFileSignature: (file?: File, expectedTypes?: (keyof typeof SIGNATURES)[]) => Promise<void>;
3
+ export {};
@@ -0,0 +1,25 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.checkFileSignature = void 0;
3
+ const constants_1 = require("../constants");
4
+ const getFileSignature_1 = require("./getFileSignature");
5
+ const SIGNATURES = {
6
+ pdf: '25 50 44 46 2d',
7
+ docx: '50 4b 03 04',
8
+ pptx: '50 4b 03 04',
9
+ xlsx: '50 4b 03 04',
10
+ doc: 'D0 CF 11 E0 A1 B1 1A E1',
11
+ };
12
+ const checkFileSignature = async (file, expectedTypes) => {
13
+ const hexSignature = await (0, getFileSignature_1.getFileSignature)(file);
14
+ const isValid = (expectedTypes ?? []).some((type) => {
15
+ const expectedSignature = SIGNATURES[type]?.toLowerCase();
16
+ console.log(expectedSignature);
17
+ console.log(hexSignature);
18
+ return expectedSignature && hexSignature.startsWith(expectedSignature);
19
+ });
20
+ if (!isValid) {
21
+ throw new Error(constants_1.EXTENSIONS_ERROR_TEXT);
22
+ }
23
+ };
24
+ exports.checkFileSignature = checkFileSignature;
25
+ //# sourceMappingURL=checkFileSignature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkFileSignature.js","sourceRoot":"","sources":["../../../../src/ui-kit/Input/checks/checkFileSignature.ts"],"names":[],"mappings":";;AAAA,4CAAqD;AACrD,yDAAsD;AAEtD,MAAM,UAAU,GAA2B;IACzC,GAAG,EAAE,gBAAgB;IACrB,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE,aAAa;IACnB,GAAG,EAAE,yBAAyB;CAC/B,CAAC;AAEK,MAAM,kBAAkB,GAAG,KAAK,EACrC,IAAW,EACX,aAA2C,EAC5B,EAAE;IACjB,MAAM,YAAY,GAAG,MAAM,IAAA,mCAAgB,EAAC,IAAI,CAAC,CAAC;IAElD,MAAM,OAAO,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAClD,MAAM,iBAAiB,GAAG,UAAU,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;QAE1D,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAE1B,OAAO,iBAAiB,IAAI,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,iCAAqB,CAAC,CAAC;KACxC;AACH,CAAC,CAAC;AAlBW,QAAA,kBAAkB,sBAkB7B"}
@@ -0,0 +1 @@
1
+ export declare const checkFileSize: (file: File, maxSizeMB?: number) => Promise<void>;
@@ -0,0 +1,13 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.checkFileSize = void 0;
3
+ const constants_1 = require("../constants");
4
+ const checkFileSize = async (file, maxSizeMB) => {
5
+ if (maxSizeMB && file.size > maxSizeMB * 1024 * 1024) {
6
+ throw new Error(constants_1.MAX_SIZE_ERROR_TEXT);
7
+ }
8
+ if (file.size === 0) {
9
+ throw new Error(constants_1.EMPTY_FILE_ERROR_TEXT);
10
+ }
11
+ };
12
+ exports.checkFileSize = checkFileSize;
13
+ //# sourceMappingURL=checkFileSize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkFileSize.js","sourceRoot":"","sources":["../../../../src/ui-kit/Input/checks/checkFileSize.ts"],"names":[],"mappings":";;AAAA,4CAA0E;AAEnE,MAAM,aAAa,GAAG,KAAK,EAAE,IAAU,EAAE,SAAkB,EAAiB,EAAE;IACnF,IAAI,SAAS,IAAI,IAAI,CAAC,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,EAAE;QACpD,MAAM,IAAI,KAAK,CAAC,+BAAmB,CAAC,CAAC;KACtC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,iCAAqB,CAAC,CAAC;KACxC;AACH,CAAC,CAAC;AAPW,QAAA,aAAa,iBAOxB"}
@@ -0,0 +1 @@
1
+ export declare const getFileSignature: (file?: File) => Promise<string>;
@@ -0,0 +1,19 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.getFileSignature = void 0;
3
+ const getFileSignature = (file) => {
4
+ return new Promise((resolve, reject) => {
5
+ const reader = new FileReader();
6
+ reader.onload = () => {
7
+ const buffer = reader.result;
8
+ const bytes = new Uint8Array(buffer);
9
+ const hex = Array.from(bytes)
10
+ .map((b) => b.toString(16).padStart(2, '0'))
11
+ .join(' ');
12
+ resolve(hex);
13
+ };
14
+ reader.onerror = reject;
15
+ return file && reader.readAsArrayBuffer(file.slice(0, 8));
16
+ });
17
+ };
18
+ exports.getFileSignature = getFileSignature;
19
+ //# sourceMappingURL=getFileSignature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFileSignature.js","sourceRoot":"","sources":["../../../../src/ui-kit/Input/checks/getFileSignature.ts"],"names":[],"mappings":";;AAAO,MAAM,gBAAgB,GAAG,CAAC,IAAW,EAAmB,EAAE;IAC/D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAChC,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE;YACnB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAqB,CAAC;YAC5C,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;iBAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;iBAC3C,IAAI,CAAC,GAAG,CAAC,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,CAAC;QACf,CAAC,CAAC;QACF,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC;QAExB,OAAO,IAAI,IAAI,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAfW,QAAA,gBAAgB,oBAe3B"}
@@ -0,0 +1,6 @@
1
+ export declare const ACCEPTED_EXTENSIONS_TEXT = "\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043C\u044B\u0435 \u0444\u043E\u0440\u043C\u0430\u0442\u044B \u0444\u0430\u0439\u043B\u043E\u0432";
2
+ export declare const MAX_SIZE_TEXT = "\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u044B\u0439 \u0440\u0430\u0437\u043C\u0435\u0440 \u0444\u0430\u0439\u043B\u0430";
3
+ export declare const EMPTY_FILE_ERROR_TEXT = "\u041E\u0448\u0438\u0431\u043A\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438 \u0444\u0430\u0439\u043B\u0430. \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E \u0444\u0430\u0439\u043B \u043D\u0435 \u043F\u0443\u0441\u0442\u043E\u0439";
4
+ export declare const EXTENSIONS_ERROR_TEXT = "\u0424\u0430\u0439\u043B \u043D\u0435 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u043C \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u043C";
5
+ export declare const MAX_SIZE_ERROR_TEXT = "\u0424\u0430\u0439\u043B \u043F\u0440\u0435\u0432\u044B\u0448\u0430\u0435\u0442 \u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0439 \u0440\u0430\u0437\u043C\u0435\u0440";
6
+ export declare const DEFAULT_ERROR_TEXT = "\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0435 \u0444\u0430\u0439\u043B\u0430. \u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0444\u0430\u0439\u043B \u043F\u043E\u0437\u0434\u043D\u0435\u0435";
@@ -0,0 +1,9 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.DEFAULT_ERROR_TEXT = exports.MAX_SIZE_ERROR_TEXT = exports.EXTENSIONS_ERROR_TEXT = exports.EMPTY_FILE_ERROR_TEXT = exports.MAX_SIZE_TEXT = exports.ACCEPTED_EXTENSIONS_TEXT = void 0;
3
+ exports.ACCEPTED_EXTENSIONS_TEXT = 'Поддерживаемые форматы файлов';
4
+ exports.MAX_SIZE_TEXT = 'Максимальный размер файла';
5
+ exports.EMPTY_FILE_ERROR_TEXT = 'Ошибка загрузки файла. Убедитесь, что файл не пустой';
6
+ exports.EXTENSIONS_ERROR_TEXT = 'Файл не соответствует допустимым расширениям';
7
+ exports.MAX_SIZE_ERROR_TEXT = 'Файл превышает допустимый размер';
8
+ exports.DEFAULT_ERROR_TEXT = 'Ошибка при загрузке файла. Попробуйте загрузить файл позднее';
9
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/ui-kit/Input/constants.ts"],"names":[],"mappings":";;AAAa,QAAA,wBAAwB,GAAG,+BAA+B,CAAC;AAC3D,QAAA,aAAa,GAAG,2BAA2B,CAAC;AAC5C,QAAA,qBAAqB,GAAG,sDAAsD,CAAC;AAC/E,QAAA,qBAAqB,GAAG,8CAA8C,CAAC;AACvE,QAAA,mBAAmB,GAAG,kCAAkC,CAAC;AACzD,QAAA,kBAAkB,GAAG,8DAA8D,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { type ResponseData } from '../../api/sendFile';
2
+ import type { PreventableEvent } from '../PreventableEvent';
3
+ import type { InputProps } from './InputProps';
4
+ interface InputFileProps extends InputProps<File> {
5
+ key?: string;
6
+ uploadResponse?: ResponseData | null;
7
+ file?: File | null;
8
+ onReset?: (e: PreventableEvent) => void;
9
+ isCustomValid?: boolean;
10
+ }
11
+ export declare const renderFileInput: ({ label, inputRef, id, key, type, name, pattern, disabled, onChange, onFocus, onBlur, extensions, uploadResponse, file, }: InputFileProps) => any;
12
+ export {};
@@ -0,0 +1,33 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.renderFileInput = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const sendFile_1 = require("../../api/sendFile");
5
+ const noop_1 = require("../../utils/noop");
6
+ const style_1 = require("../../utils/style");
7
+ const Icon_1 = require("../Icon/Icon");
8
+ const renderLabel_1 = require("./renderLabel");
9
+ const ICON_PROPS = {
10
+ name: 'DocIcon',
11
+ iconVersion: 'black',
12
+ width: '24',
13
+ height: '24',
14
+ };
15
+ const renderFileInput = ({ label, inputRef, id, key, type, name, pattern, disabled, onChange = noop_1.noop, onFocus, onBlur, extensions, uploadResponse, file, }) => {
16
+ const ariaLabel = label ?? name ?? id;
17
+ return ((0, jsx_runtime_1.jsx)("div", { children: uploadResponse?.status === sendFile_1.SUCCESS_STATUS ? (renderFileName(file)) : ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center space-x-2", children: [(0, jsx_runtime_1.jsx)(Icon_1.Icon, { className: "inline-block", ...ICON_PROPS }), (0, renderLabel_1.renderLabel)(label), (0, jsx_runtime_1.jsx)("input", { ref: inputRef, className: (0, style_1.style)('h-14 hidden'), id: id, type: type, name: name || id, pattern: pattern, disabled: disabled, "aria-label": ariaLabel, onChange: (e) => {
18
+ e?.target?.files && onChange(e?.target?.files[0]);
19
+ }, onFocus: onFocus, onBlur: onBlur, accept: extensionsToAccept(extensions) }, key)] })) }));
20
+ };
21
+ exports.renderFileInput = renderFileInput;
22
+ const extensionsToAccept = (extensions = []) => {
23
+ return extensions
24
+ .map((ext) => {
25
+ const str = String(ext).trim();
26
+ return str.startsWith('.') ? str : '.' + str;
27
+ })
28
+ .map((ext) => ext.toLowerCase())
29
+ .filter((ext, index, arr) => arr.indexOf(ext) === index)
30
+ .join(', ');
31
+ };
32
+ const renderFileName = (file) => (0, jsx_runtime_1.jsx)("span", { children: file?.name });
33
+ //# sourceMappingURL=renderFileInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderFileInput.js","sourceRoot":"","sources":["../../../src/ui-kit/Input/renderFileInput.tsx"],"names":[],"mappings":";;;AAAA,iDAAuE;AAGvE,2CAAwC;AACxC,6CAA0C;AAC1C,uCAAoC;AAGpC,+CAA4C;AAE5C,MAAM,UAAU,GAAgF;IAC9F,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,OAAO;IACpB,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;CACb,CAAC;AAUK,MAAM,eAAe,GAAG,CAAC,EAC9B,KAAK,EACL,QAAQ,EACR,EAAE,EACF,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,QAAQ,GAAG,WAAI,EACf,OAAO,EACP,MAAM,EACN,UAAU,EACV,cAAc,EACd,IAAI,GACW,EAAE,EAAE;IACnB,MAAM,SAAS,GAAG,KAAK,IAAI,IAAI,IAAI,EAAE,CAAC;IAEtC,OAAO,CACL,0CACG,cAAc,EAAE,MAAM,KAAK,yBAAc,CAAC,CAAC,CAAC,CAC3C,cAAc,CAAC,IAAI,CAAC,CACrB,CAAC,CAAC,CAAC,CACF,iCAAK,SAAS,EAAC,6BAA6B,aAC1C,uBAAC,WAAI,IAAC,SAAS,EAAC,cAAc,KAAK,UAAU,GAAI,EAChD,IAAA,yBAAW,EAAC,KAAK,CAAC,EACnB,kCACE,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,IAAA,aAAK,EAAC,aAAa,CAAC,EAC/B,EAAE,EAAE,EAAE,EAEN,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,IAAI,EAAE,EAChB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,gBACN,SAAS,EACrB,QAAQ,EAAE,CAAC,CAAkC,EAAE,EAAE;wBAC/C,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBACpD,CAAC,EACD,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,UAAU,CAAC,IAXjC,GAAG,CAYR,IACE,CACP,GACG,CACP,CAAC;AACJ,CAAC,CAAC;AA/CW,QAAA,eAAe,mBA+C1B;AAEF,MAAM,kBAAkB,GAAG,CAAC,aAAuB,EAAE,EAAU,EAAE;IAC/D,OAAO,UAAU;SACd,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACX,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAE/B,OAAO,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC;IAC/C,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;SAC/B,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC;SACvD,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,IAA8B,EAAE,EAAE,CAAC,2CAAO,IAAI,EAAE,IAAI,GAAQ,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const renderInfoText: (extensions?: string[], maxSize?: number) => any;
@@ -0,0 +1,14 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.renderInfoText = void 0;
3
+ const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
+ const Text_1 = require("../Text/Text");
5
+ const constants_1 = require("./constants");
6
+ const renderInfoText = (extensions, maxSize) => {
7
+ const extensionsMessage = extensions
8
+ ? `${constants_1.ACCEPTED_EXTENSIONS_TEXT} - ${extensions.join(', ')}. `
9
+ : '';
10
+ const maxSizeMessage = maxSize ? `${constants_1.MAX_SIZE_TEXT} - ${maxSize}Мб.` : '';
11
+ return ((0, jsx_runtime_1.jsx)(Text_1.Text, { size: "text-xs", font: "font-light", color: "text-secondary-text", children: extensionsMessage + maxSizeMessage }));
12
+ };
13
+ exports.renderInfoText = renderInfoText;
14
+ //# sourceMappingURL=renderInfoText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderInfoText.js","sourceRoot":"","sources":["../../../src/ui-kit/Input/renderInfoText.tsx"],"names":[],"mappings":";;;AAAA,uCAAoC;AACpC,2CAAsE;AAE/D,MAAM,cAAc,GAAG,CAAC,UAAqB,EAAE,OAAgB,EAAE,EAAE;IACxE,MAAM,iBAAiB,GAAG,UAAU;QAClC,CAAC,CAAC,GAAG,oCAAwB,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QAC5D,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,yBAAa,MAAM,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAEzE,OAAO,CACL,uBAAC,WAAI,IAAC,IAAI,EAAC,SAAS,EAAC,IAAI,EAAC,YAAY,EAAC,KAAK,EAAC,qBAAqB,YAC/D,iBAAiB,GAAG,cAAc,GAC9B,CACR,CAAC;AACJ,CAAC,CAAC;AAXW,QAAA,cAAc,kBAWzB"}
@@ -0,0 +1,2 @@
1
+ export declare const defaultStyle = "w-full border rounded-md text-primary-text outline-none p-m";
2
+ export declare const borderStyle = "border-dashed";
@@ -0,0 +1,5 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.borderStyle = exports.defaultStyle = void 0;
3
+ exports.defaultStyle = 'w-full border rounded-md text-primary-text outline-none p-m';
4
+ exports.borderStyle = 'border-dashed';
5
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/ui-kit/Input/styles.ts"],"names":[],"mappings":";;AAAa,QAAA,YAAY,GAAG,6DAA6D,CAAC;AAC7E,QAAA,WAAW,GAAG,eAAe,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { type ResponseData } from '../../api/sendFile';
2
+ import { type FileInputProps } from './InputProps';
3
+ interface VerifyFileProps extends FileInputProps {
4
+ onUploadError?: (value: string) => void;
5
+ onFileSelected?: (value: File) => void;
6
+ onUploadResponse?: (value: ResponseData) => void;
7
+ }
8
+ export declare type VerifyFileParams = {
9
+ file: File;
10
+ onFileChanged?: (value: string) => void;
11
+ };
12
+ export declare const useVerifyFile: ({ onUploadError, onFileSelected, extensions, maxSizeMB, onUploadResponse, }: VerifyFileProps) => {
13
+ verifyFile: ({ file, onFileChanged }: VerifyFileParams) => Promise<void>;
14
+ isFileUploading: boolean;
15
+ progress: number;
16
+ };
17
+ export {};
@@ -0,0 +1,64 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.useVerifyFile = void 0;
3
+ const hooks_1 = require("@redneckz/uni-jsx/lib/hooks");
4
+ const sendFile_1 = require("../../api/sendFile");
5
+ const animateStepWithMinDuration_1 = require("../../utils/animateStepWithMinDuration");
6
+ const debounce_1 = require("../../utils/debounce");
7
+ const noop_1 = require("../../utils/noop");
8
+ const checkFIleExtension_1 = require("./checks/checkFIleExtension");
9
+ const checkFileMimeType_1 = require("./checks/checkFileMimeType");
10
+ const checkFileSignature_1 = require("./checks/checkFileSignature");
11
+ const checkFileSize_1 = require("./checks/checkFileSize");
12
+ const constants_1 = require("./constants");
13
+ const DEBOUNCE_DELAY = 500;
14
+ const useVerifyFile = ({ onUploadError = noop_1.noop, onFileSelected = noop_1.noop, extensions, maxSizeMB, onUploadResponse = noop_1.noop, }) => {
15
+ const [progress, setProgress] = (0, hooks_1.useState)(0);
16
+ const [isFileUploading, setIsFileUploading] = (0, hooks_1.useState)(false);
17
+ const debouncedOnFileUploaded = (0, hooks_1.useMemo)(() => (0, debounce_1.debounce)((isUploading) => setIsFileUploading(isUploading), DEBOUNCE_DELAY), [setIsFileUploading]);
18
+ const debouncedOnUploadError = (0, hooks_1.useMemo)(() => (0, debounce_1.debounce)((message) => onUploadError(message), DEBOUNCE_DELAY), [onUploadError]);
19
+ const debouncedOnUploadResponse = (0, hooks_1.useMemo)(() => (0, debounce_1.debounce)((response) => onUploadResponse(response), DEBOUNCE_DELAY), [onUploadResponse]);
20
+ const verifyFile = async ({ file, onFileChanged = noop_1.noop }) => {
21
+ onFileSelected(file);
22
+ setIsFileUploading(true);
23
+ const checks = [
24
+ () => (0, checkFIleExtension_1.checkFileExtension)(file, extensions),
25
+ () => (0, checkFileSize_1.checkFileSize)(file, maxSizeMB),
26
+ () => (0, checkFileSignature_1.checkFileSignature)(file, extensions),
27
+ () => (0, checkFileMimeType_1.checkFileMimeType)(file, extensions),
28
+ ];
29
+ const checkProgressStep = 50 / checks.length;
30
+ let currentProgress = 0;
31
+ try {
32
+ for (let i = 0; i < checks.length; i++) {
33
+ const checkPromise = checks[i];
34
+ await checkPromise();
35
+ const targetProgress = (i + 1) * checkProgressStep;
36
+ await (0, animateStepWithMinDuration_1.animateStepWithMinDuration)({
37
+ from: currentProgress,
38
+ to: targetProgress,
39
+ onUpdate: setProgress,
40
+ minDuration: 300,
41
+ });
42
+ currentProgress = targetProgress;
43
+ }
44
+ const response = await (0, sendFile_1.sendFile)({
45
+ file,
46
+ onProgress: setProgress,
47
+ });
48
+ debouncedOnUploadResponse(response);
49
+ onFileChanged(response?.fileId ?? '');
50
+ if (response?.status === sendFile_1.SUCCESS_STATUS) {
51
+ debouncedOnFileUploaded?.(false);
52
+ }
53
+ }
54
+ catch (e) {
55
+ const errorMessage = e instanceof Error ? e.message : constants_1.DEFAULT_ERROR_TEXT;
56
+ debouncedOnUploadError(errorMessage);
57
+ onFileChanged('');
58
+ }
59
+ debouncedOnFileUploaded?.(false);
60
+ };
61
+ return { verifyFile, isFileUploading, progress };
62
+ };
63
+ exports.useVerifyFile = useVerifyFile;
64
+ //# sourceMappingURL=useVerifyFile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useVerifyFile.js","sourceRoot":"","sources":["../../../src/ui-kit/Input/useVerifyFile.ts"],"names":[],"mappings":"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"}
@@ -5,3 +5,7 @@ export interface PreventableEvent {
5
5
  export declare type PreventableEventWithTarget = PreventableEvent & {
6
6
  target?: EventTarget | null;
7
7
  };
8
+ export declare type PreventableEventWithTargetFiles = PreventableEvent & {
9
+ target?: HTMLInputElement | null;
10
+ dataTransfer?: DataTransfer;
11
+ };
@@ -2,6 +2,7 @@ import type { DescriptionProps } from '../../model/HeadlineType';
2
2
  interface ProgressBarProps extends DescriptionProps {
3
3
  step?: number;
4
4
  showPercentage?: boolean;
5
+ isOnlyInteger?: boolean;
5
6
  }
6
7
  export declare const ProgressBar: import("@redneckz/uni-jsx").UNIComponent<ProgressBarProps, any, any>;
7
8
  export {};
@@ -3,5 +3,5 @@ exports.ProgressBar = void 0;
3
3
  const jsx_runtime_1 = require("@redneckz/uni-jsx/jsx-runtime");
4
4
  /* eslint-disable @typescript-eslint/no-unused-vars */
5
5
  const uni_jsx_1 = require("@redneckz/uni-jsx");
6
- exports.ProgressBar = (0, uni_jsx_1.JSX)(({ step = 10, description, showPercentage = true }) => ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("div", { className: "h-4 w-full bg-gray relative", children: (0, jsx_runtime_1.jsx)("div", { className: "h-4 bg-green", style: { width: `${step}%` } }) }), (0, jsx_runtime_1.jsxs)("div", { className: "relative", children: [showPercentage ? (0, jsx_runtime_1.jsxs)("div", { className: "absolute left-2/4 text-green", children: [step, "%"] }) : null, description ? (0, jsx_runtime_1.jsx)("div", { className: "text-right pr-m text-gray", children: description }) : null] })] })));
6
+ exports.ProgressBar = (0, uni_jsx_1.JSX)(({ step = 10, description, showPercentage = true, isOnlyInteger = false }) => ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("div", { className: "h-4 w-full bg-gray relative", children: (0, jsx_runtime_1.jsx)("div", { className: "h-4 bg-green", style: { width: `${step}%` } }) }), (0, jsx_runtime_1.jsxs)("div", { className: "relative", children: [showPercentage ? ((0, jsx_runtime_1.jsxs)("div", { className: "absolute left-2/4 text-green", children: [isOnlyInteger ? Math.round(step) : step, "%"] })) : null, description ? (0, jsx_runtime_1.jsx)("div", { className: "text-right pr-m text-gray", children: description }) : null] })] })));
7
7
  //# sourceMappingURL=ProgressBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressBar.js","sourceRoot":"","sources":["../../../src/ui-kit/ProgressBar/ProgressBar.tsx"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,+CAAwC;AAQ3B,QAAA,WAAW,GAAG,IAAA,aAAG,EAC5B,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,WAAW,EAAE,cAAc,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CACrD,4CACE,gCAAK,SAAS,EAAC,6BAA6B,YAC1C,gCAAK,SAAS,EAAC,cAAc,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,GAAG,EAAE,GAAI,GAC1D,EACN,iCAAK,SAAS,EAAC,UAAU,aACtB,cAAc,CAAC,CAAC,CAAC,iCAAK,SAAS,EAAC,8BAA8B,aAAE,IAAI,SAAQ,CAAC,CAAC,CAAC,IAAI,EACnF,WAAW,CAAC,CAAC,CAAC,gCAAK,SAAS,EAAC,2BAA2B,YAAE,WAAW,GAAO,CAAC,CAAC,CAAC,IAAI,IAChF,IACF,CACP,CACF,CAAC"}
1
+ {"version":3,"file":"ProgressBar.js","sourceRoot":"","sources":["../../../src/ui-kit/ProgressBar/ProgressBar.tsx"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,+CAAwC;AAS3B,QAAA,WAAW,GAAG,IAAA,aAAG,EAC5B,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,WAAW,EAAE,cAAc,GAAG,IAAI,EAAE,aAAa,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CAC5E,4CACE,gCAAK,SAAS,EAAC,6BAA6B,YAC1C,gCAAK,SAAS,EAAC,cAAc,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,GAAG,EAAE,GAAI,GAC1D,EACN,iCAAK,SAAS,EAAC,UAAU,aACtB,cAAc,CAAC,CAAC,CAAC,CAChB,iCAAK,SAAS,EAAC,8BAA8B,aAC1C,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,SACpC,CACP,CAAC,CAAC,CAAC,IAAI,EACP,WAAW,CAAC,CAAC,CAAC,gCAAK,SAAS,EAAC,2BAA2B,YAAE,WAAW,GAAO,CAAC,CAAC,CAAC,IAAI,IAChF,IACF,CACP,CACF,CAAC"}
@@ -0,0 +1,8 @@
1
+ interface AnimateProgressProps {
2
+ from: number;
3
+ to: number;
4
+ onUpdate: (value: number) => void;
5
+ minDuration: number;
6
+ }
7
+ export declare const animateStepWithMinDuration: ({ from, to, onUpdate, minDuration, }: AnimateProgressProps) => Promise<void>;
8
+ export {};
@@ -0,0 +1,26 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.animateStepWithMinDuration = void 0;
3
+ const noop_1 = require("./noop");
4
+ const animateStepWithMinDuration = ({ from, to, onUpdate = noop_1.noop, minDuration = 300, }) => {
5
+ return new Promise((resolve) => {
6
+ const startTime = performance.now();
7
+ const animate = () => {
8
+ const currentTime = performance.now();
9
+ const elapsed = currentTime - startTime;
10
+ const animationProgress = Math.min(elapsed / minDuration, 1);
11
+ const easeProgress = 1 - Math.pow(1 - animationProgress, 3);
12
+ const value = from + (to - from) * easeProgress;
13
+ onUpdate(value);
14
+ if (animationProgress < 1) {
15
+ requestAnimationFrame(animate);
16
+ }
17
+ else {
18
+ onUpdate(to);
19
+ resolve();
20
+ }
21
+ };
22
+ requestAnimationFrame(animate);
23
+ });
24
+ };
25
+ exports.animateStepWithMinDuration = animateStepWithMinDuration;
26
+ //# sourceMappingURL=animateStepWithMinDuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"animateStepWithMinDuration.js","sourceRoot":"","sources":["../../src/utils/animateStepWithMinDuration.ts"],"names":[],"mappings":";;AAAA,iCAA8B;AASvB,MAAM,0BAA0B,GAAG,CAAC,EACzC,IAAI,EACJ,EAAE,EACF,QAAQ,GAAG,WAAI,EACf,WAAW,GAAG,GAAG,GACI,EAAiB,EAAE;IACxC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAEpC,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,WAAW,GAAG,SAAS,CAAC;YACxC,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC;YAC7D,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAC5D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,YAAY,CAAC;YAEhD,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEhB,IAAI,iBAAiB,GAAG,CAAC,EAAE;gBACzB,qBAAqB,CAAC,OAAO,CAAC,CAAC;aAChC;iBAAM;gBACL,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACb,OAAO,EAAE,CAAC;aACX;QACH,CAAC,CAAC;QAEF,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AA5BW,QAAA,0BAA0B,8BA4BrC"}
@@ -0,0 +1,4 @@
1
+ export declare const isDateValid: (value: Date, limits: {
2
+ minLimit?: Date;
3
+ maxLimit?: Date;
4
+ }) => boolean;
@@ -0,0 +1,24 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.isDateValid = void 0;
3
+ const isDateValid = (value, limits) => {
4
+ if (!value || isNaN(value.getTime())) {
5
+ return false;
6
+ }
7
+ const { minLimit, maxLimit } = limits;
8
+ const time = value.getTime();
9
+ return isValidMin(time, minLimit) && isValidMax(time, maxLimit);
10
+ };
11
+ exports.isDateValid = isDateValid;
12
+ const isValidMin = (time, minLimit) => {
13
+ if (!minLimit || isNaN(minLimit.getTime())) {
14
+ return true;
15
+ }
16
+ return time > minLimit.getTime();
17
+ };
18
+ const isValidMax = (time, maxLimit) => {
19
+ if (!maxLimit || isNaN(maxLimit.getTime())) {
20
+ return true;
21
+ }
22
+ return time < maxLimit.getTime();
23
+ };
24
+ //# sourceMappingURL=isDateValid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isDateValid.js","sourceRoot":"","sources":["../../src/utils/isDateValid.ts"],"names":[],"mappings":";;AAAO,MAAM,WAAW,GAAG,CACzB,KAAW,EACX,MAGC,EACQ,EAAE;IACX,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE;QACpC,OAAO,KAAK,CAAC;KACd;IAED,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAEtC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;IAE7B,OAAO,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAClE,CAAC,CAAC;AAhBW,QAAA,WAAW,eAgBtB;AAEF,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,QAAsB,EAAW,EAAE;IACnE,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE;QAC1C,OAAO,IAAI,CAAC;KACb;IAED,OAAO,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,QAAsB,EAAW,EAAE;IACnE,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE;QAC1C,OAAO,IAAI,CAAC;KACb;IAED,OAAO,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;AACnC,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { type JSONRecord, type JSONScalar } from '@redneckz/json-op';
2
+ import { type EndpointType } from '../components/ApplicationForm/ApplicationFormContent';
2
3
  import { type Router } from '../external/useRouter';
3
4
  export declare type LeadRequest = Record<string, JSONRecord | JSONScalar | null> & {
4
5
  typeForm?: string;
@@ -28,10 +29,15 @@ declare type CheckCodeResponse = {
28
29
  declare type PhoneOnly = {
29
30
  phone?: string;
30
31
  };
32
+ export declare type sendProps = {
33
+ body: LeadRequest;
34
+ router: Router;
35
+ endpoint?: EndpointType;
36
+ };
31
37
  export declare function LeadServiceAPI(): {
32
- send: (body: LeadRequest, router: Router, isIndividualType?: boolean) => Promise<any>;
38
+ send: ({ body, router, endpoint }: sendProps) => Promise<any>;
33
39
  sendCode: ({ phone }: PhoneOnly) => Promise<string | null>;
34
40
  checkCode: ({ reqId, code, body }: CheckCodeProps) => Promise<CheckCodeResponse>;
35
- sendPhoneCallRequest: (body: LeadRequest, isNaturalPerson?: boolean) => Promise<any>;
41
+ sendPhoneCallRequest: (body: LeadRequest, endpoint?: EndpointType) => Promise<any>;
36
42
  };
37
43
  export {};
@@ -2,11 +2,14 @@ import { getUserTimezoneOffset } from '../utils/getTimezone.js';
2
2
  import { API_BASE_URI } from './apiBaseUrl.js';
3
3
  import { getPhoneBody, getSubmitBody } from './getSubmitBody.js';
4
4
  export function LeadServiceAPI() {
5
- async function send(body, router, isIndividualType = false) {
6
- const { serviceDirection } = body;
7
- const isNaturalPerson = isIndividualType && serviceDirection !== 'Юридическое лицо / ИП';
8
- const url = `${API_BASE_URI}${isNaturalPerson ? '/lead' : '/sendcorporatelead'}`;
9
- const submitBody = getSubmitBody(body, isNaturalPerson, router);
5
+ async function send({ body, router, endpoint }) {
6
+ const calculatedEndpoint = endpoint && getEndpoint(endpoint, body);
7
+ const url = `${API_BASE_URI}/${calculatedEndpoint}`;
8
+ const submitBody = getSubmitBody({
9
+ body,
10
+ endpoint,
11
+ router,
12
+ });
10
13
  try {
11
14
  const response = await LeadServiceFetch(url, submitBody);
12
15
  if (!response?.ok) {
@@ -37,7 +40,7 @@ export function LeadServiceAPI() {
37
40
  const submitBody = {
38
41
  requestId: reqId,
39
42
  confimationCode: code,
40
- leadRequest: getSubmitBody(body, false),
43
+ leadRequest: getSubmitBody({ body }),
41
44
  };
42
45
  try {
43
46
  const response = await LeadServiceFetch(`${API_BASE_URI}/confirmCorporateLead`, submitBody);
@@ -47,9 +50,9 @@ export function LeadServiceAPI() {
47
50
  return null;
48
51
  }
49
52
  }
50
- async function sendPhoneCallRequest(body, isNaturalPerson = false) {
53
+ async function sendPhoneCallRequest(body, endpoint) {
51
54
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
52
- const submitBody = getSubmitBody(body, isNaturalPerson);
55
+ const submitBody = getSubmitBody({ body, endpoint });
53
56
  const formatSubmitBody = getFormatCallbackSubmitBody(submitBody);
54
57
  try {
55
58
  const response = await LeadServiceFetch(`${API_BASE_URI}/callback`, formatSubmitBody);
@@ -84,4 +87,11 @@ const getFormatCallbackSubmitBody = (submitBody) => {
84
87
  clientTimezone: getUserTimezoneOffset(),
85
88
  };
86
89
  };
90
+ const getEndpoint = (endpoint, body) => {
91
+ const { serviceDirection } = body;
92
+ if (endpoint === 'lead' && serviceDirection !== 'Юридическое лицо / ИП') {
93
+ return 'lead';
94
+ }
95
+ return endpoint;
96
+ };
87
97
  //# sourceMappingURL=LeadServiceAPI.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LeadServiceAPI.js","sourceRoot":"","sources":["../../src/api/LeadServiceAPI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LeadServiceAPI.js","sourceRoot":"","sources":["../../src/api/LeadServiceAPI.ts"],"names":[],"mappings":"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"}