@redneckz/wildless-cms-uni-blocks 0.14.584 → 0.14.586

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 (379) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +114 -20
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
  5. package/bundle/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
  6. package/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +9 -0
  7. package/bundle/hooks/useBranchesByRegions.d.ts +1 -1
  8. package/bundle/ui-kit/FormField/Fields/ArmyIdFlgField.d.ts +2 -0
  9. package/bundle/ui-kit/FormField/Fields/ChildrenField.d.ts +2 -0
  10. package/bundle/ui-kit/FormField/Fields/ConscriptionField.d.ts +2 -0
  11. package/bundle/ui-kit/FormField/Fields/DependentsField.d.ts +2 -0
  12. package/bundle/ui-kit/FormField/Fields/ExpensesField.d.ts +2 -0
  13. package/bundle/ui-kit/FormField/Fields/FamilyMembersField.d.ts +2 -0
  14. package/bundle/ui-kit/FormField/Fields/FamilyStatusField.d.ts +2 -0
  15. package/bundle/ui-kit/FormField/Fields/SnilsField.d.ts +2 -0
  16. package/bundle/ui-kit/FormField/Fields/TotalIncomeField.d.ts +2 -0
  17. package/bundle/ui-kit/FormField/validators.d.ts +2 -0
  18. package/bundle/ui-kit/Input/InputSnilsControl.d.ts +2 -0
  19. package/bundle/ui-kit/SnilsInput/SnilsInput.d.ts +2 -0
  20. package/bundle/ui-kit/SnilsInput/normalizeSnils.d.ts +1 -0
  21. package/dist/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
  22. package/dist/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
  23. package/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +9 -0
  24. package/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  25. package/dist/hooks/useBranchesByRegions.d.ts +1 -1
  26. package/dist/hooks/useBranchesByRegions.js +3 -2
  27. package/dist/hooks/useBranchesByRegions.js.map +1 -1
  28. package/dist/ui-kit/FormField/Fields/AddressBranchField.js +1 -1
  29. package/dist/ui-kit/FormField/Fields/AddressBranchField.js.map +1 -1
  30. package/dist/ui-kit/FormField/Fields/AmountWorkersField.js +1 -1
  31. package/dist/ui-kit/FormField/Fields/AmountWorkersField.js.map +1 -1
  32. package/dist/ui-kit/FormField/Fields/ArmyIdFlgField.d.ts +2 -0
  33. package/dist/ui-kit/FormField/Fields/ArmyIdFlgField.js +9 -0
  34. package/dist/ui-kit/FormField/Fields/ArmyIdFlgField.js.map +1 -0
  35. package/dist/ui-kit/FormField/Fields/ChildrenField.d.ts +2 -0
  36. package/dist/ui-kit/FormField/Fields/ChildrenField.js +9 -0
  37. package/dist/ui-kit/FormField/Fields/ChildrenField.js.map +1 -0
  38. package/dist/ui-kit/FormField/Fields/ConscriptionField.d.ts +2 -0
  39. package/dist/ui-kit/FormField/Fields/ConscriptionField.js +11 -0
  40. package/dist/ui-kit/FormField/Fields/ConscriptionField.js.map +1 -0
  41. package/dist/ui-kit/FormField/Fields/DependentsField.d.ts +2 -0
  42. package/dist/ui-kit/FormField/Fields/DependentsField.js +9 -0
  43. package/dist/ui-kit/FormField/Fields/DependentsField.js.map +1 -0
  44. package/dist/ui-kit/FormField/Fields/EducationField.js +1 -1
  45. package/dist/ui-kit/FormField/Fields/EducationField.js.map +1 -1
  46. package/dist/ui-kit/FormField/Fields/EmployerActivitiesField.js +1 -1
  47. package/dist/ui-kit/FormField/Fields/EmployerActivitiesField.js.map +1 -1
  48. package/dist/ui-kit/FormField/Fields/EmployerOrganizationField.js +1 -1
  49. package/dist/ui-kit/FormField/Fields/EmployerOrganizationField.js.map +1 -1
  50. package/dist/ui-kit/FormField/Fields/EmploymentField.js +1 -1
  51. package/dist/ui-kit/FormField/Fields/EmploymentField.js.map +1 -1
  52. package/dist/ui-kit/FormField/Fields/ExpensesField.d.ts +2 -0
  53. package/dist/ui-kit/FormField/Fields/ExpensesField.js +9 -0
  54. package/dist/ui-kit/FormField/Fields/ExpensesField.js.map +1 -0
  55. package/dist/ui-kit/FormField/Fields/FamilyMembersField.d.ts +2 -0
  56. package/dist/ui-kit/FormField/Fields/FamilyMembersField.js +9 -0
  57. package/dist/ui-kit/FormField/Fields/FamilyMembersField.js.map +1 -0
  58. package/dist/ui-kit/FormField/Fields/FamilyStatusField.d.ts +2 -0
  59. package/dist/ui-kit/FormField/Fields/FamilyStatusField.js +11 -0
  60. package/dist/ui-kit/FormField/Fields/FamilyStatusField.js.map +1 -0
  61. package/dist/ui-kit/FormField/Fields/HousingField.js +1 -1
  62. package/dist/ui-kit/FormField/Fields/HousingField.js.map +1 -1
  63. package/dist/ui-kit/FormField/Fields/OrganizationField.js +1 -1
  64. package/dist/ui-kit/FormField/Fields/OrganizationField.js.map +1 -1
  65. package/dist/ui-kit/FormField/Fields/PositionOrganizationField.js +1 -1
  66. package/dist/ui-kit/FormField/Fields/PositionOrganizationField.js.map +1 -1
  67. package/dist/ui-kit/FormField/Fields/RegionPremiumField.js +1 -1
  68. package/dist/ui-kit/FormField/Fields/RegionPremiumField.js.map +1 -1
  69. package/dist/ui-kit/FormField/Fields/SnilsField.d.ts +2 -0
  70. package/dist/ui-kit/FormField/Fields/SnilsField.js +9 -0
  71. package/dist/ui-kit/FormField/Fields/SnilsField.js.map +1 -0
  72. package/dist/ui-kit/FormField/Fields/TotalIncomeField.d.ts +2 -0
  73. package/dist/ui-kit/FormField/Fields/TotalIncomeField.js +9 -0
  74. package/dist/ui-kit/FormField/Fields/TotalIncomeField.js.map +1 -0
  75. package/dist/ui-kit/FormField/getField.js +18 -0
  76. package/dist/ui-kit/FormField/getField.js.map +1 -1
  77. package/dist/ui-kit/FormField/getObjectValidator.js +9 -0
  78. package/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  79. package/dist/ui-kit/FormField/validators.d.ts +2 -0
  80. package/dist/ui-kit/FormField/validators.js +21 -1
  81. package/dist/ui-kit/FormField/validators.js.map +1 -1
  82. package/dist/ui-kit/Input/InputSnilsControl.d.ts +2 -0
  83. package/dist/ui-kit/Input/InputSnilsControl.js +9 -0
  84. package/dist/ui-kit/Input/InputSnilsControl.js.map +1 -0
  85. package/dist/ui-kit/SnilsInput/SnilsInput.d.ts +2 -0
  86. package/dist/ui-kit/SnilsInput/SnilsInput.js +17 -0
  87. package/dist/ui-kit/SnilsInput/SnilsInput.js.map +1 -0
  88. package/dist/ui-kit/SnilsInput/normalizeSnils.d.ts +1 -0
  89. package/dist/ui-kit/SnilsInput/normalizeSnils.js +23 -0
  90. package/dist/ui-kit/SnilsInput/normalizeSnils.js.map +1 -0
  91. package/lib/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
  92. package/lib/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
  93. package/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +9 -0
  94. package/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  95. package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +1 -1
  96. package/lib/hooks/useBranchesByRegions.d.ts +1 -1
  97. package/lib/hooks/useBranchesByRegions.js +3 -2
  98. package/lib/hooks/useBranchesByRegions.js.map +1 -1
  99. package/lib/ui-kit/FormField/Fields/AddressBranchField.js +1 -1
  100. package/lib/ui-kit/FormField/Fields/AddressBranchField.js.map +1 -1
  101. package/lib/ui-kit/FormField/Fields/AmountWorkersField.js +1 -1
  102. package/lib/ui-kit/FormField/Fields/AmountWorkersField.js.map +1 -1
  103. package/lib/ui-kit/FormField/Fields/ArmyIdFlgField.d.ts +2 -0
  104. package/lib/ui-kit/FormField/Fields/ArmyIdFlgField.js +7 -0
  105. package/lib/ui-kit/FormField/Fields/ArmyIdFlgField.js.map +1 -0
  106. package/lib/ui-kit/FormField/Fields/ChildrenField.d.ts +2 -0
  107. package/lib/ui-kit/FormField/Fields/ChildrenField.js +7 -0
  108. package/lib/ui-kit/FormField/Fields/ChildrenField.js.map +1 -0
  109. package/lib/ui-kit/FormField/Fields/ConscriptionField.d.ts +2 -0
  110. package/lib/ui-kit/FormField/Fields/ConscriptionField.js +9 -0
  111. package/lib/ui-kit/FormField/Fields/ConscriptionField.js.map +1 -0
  112. package/lib/ui-kit/FormField/Fields/DependentsField.d.ts +2 -0
  113. package/lib/ui-kit/FormField/Fields/DependentsField.js +7 -0
  114. package/lib/ui-kit/FormField/Fields/DependentsField.js.map +1 -0
  115. package/lib/ui-kit/FormField/Fields/EducationField.js +1 -1
  116. package/lib/ui-kit/FormField/Fields/EducationField.js.map +1 -1
  117. package/lib/ui-kit/FormField/Fields/EmployerActivitiesField.js +1 -1
  118. package/lib/ui-kit/FormField/Fields/EmployerActivitiesField.js.map +1 -1
  119. package/lib/ui-kit/FormField/Fields/EmployerOrganizationField.js +1 -1
  120. package/lib/ui-kit/FormField/Fields/EmployerOrganizationField.js.map +1 -1
  121. package/lib/ui-kit/FormField/Fields/EmploymentField.js +1 -1
  122. package/lib/ui-kit/FormField/Fields/EmploymentField.js.map +1 -1
  123. package/lib/ui-kit/FormField/Fields/ExpensesField.d.ts +2 -0
  124. package/lib/ui-kit/FormField/Fields/ExpensesField.js +7 -0
  125. package/lib/ui-kit/FormField/Fields/ExpensesField.js.map +1 -0
  126. package/lib/ui-kit/FormField/Fields/FamilyMembersField.d.ts +2 -0
  127. package/lib/ui-kit/FormField/Fields/FamilyMembersField.js +7 -0
  128. package/lib/ui-kit/FormField/Fields/FamilyMembersField.js.map +1 -0
  129. package/lib/ui-kit/FormField/Fields/FamilyStatusField.d.ts +2 -0
  130. package/lib/ui-kit/FormField/Fields/FamilyStatusField.js +9 -0
  131. package/lib/ui-kit/FormField/Fields/FamilyStatusField.js.map +1 -0
  132. package/lib/ui-kit/FormField/Fields/HousingField.js +1 -1
  133. package/lib/ui-kit/FormField/Fields/HousingField.js.map +1 -1
  134. package/lib/ui-kit/FormField/Fields/OrganizationField.js +1 -1
  135. package/lib/ui-kit/FormField/Fields/OrganizationField.js.map +1 -1
  136. package/lib/ui-kit/FormField/Fields/PositionOrganizationField.js +1 -1
  137. package/lib/ui-kit/FormField/Fields/PositionOrganizationField.js.map +1 -1
  138. package/lib/ui-kit/FormField/Fields/RegionPremiumField.js +1 -1
  139. package/lib/ui-kit/FormField/Fields/RegionPremiumField.js.map +1 -1
  140. package/lib/ui-kit/FormField/Fields/SnilsField.d.ts +2 -0
  141. package/lib/ui-kit/FormField/Fields/SnilsField.js +7 -0
  142. package/lib/ui-kit/FormField/Fields/SnilsField.js.map +1 -0
  143. package/lib/ui-kit/FormField/Fields/TotalIncomeField.d.ts +2 -0
  144. package/lib/ui-kit/FormField/Fields/TotalIncomeField.js +7 -0
  145. package/lib/ui-kit/FormField/Fields/TotalIncomeField.js.map +1 -0
  146. package/lib/ui-kit/FormField/getField.js +18 -0
  147. package/lib/ui-kit/FormField/getField.js.map +1 -1
  148. package/lib/ui-kit/FormField/getObjectValidator.js +10 -1
  149. package/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  150. package/lib/ui-kit/FormField/validators.d.ts +2 -0
  151. package/lib/ui-kit/FormField/validators.js +19 -0
  152. package/lib/ui-kit/FormField/validators.js.map +1 -1
  153. package/lib/ui-kit/Input/InputSnilsControl.d.ts +2 -0
  154. package/lib/ui-kit/Input/InputSnilsControl.js +7 -0
  155. package/lib/ui-kit/Input/InputSnilsControl.js.map +1 -0
  156. package/lib/ui-kit/SnilsInput/SnilsInput.d.ts +2 -0
  157. package/lib/ui-kit/SnilsInput/SnilsInput.js +15 -0
  158. package/lib/ui-kit/SnilsInput/SnilsInput.js.map +1 -0
  159. package/lib/ui-kit/SnilsInput/normalizeSnils.d.ts +1 -0
  160. package/lib/ui-kit/SnilsInput/normalizeSnils.js +20 -0
  161. package/lib/ui-kit/SnilsInput/normalizeSnils.js.map +1 -0
  162. package/mobile/bundle/bundle.umd.js +114 -20
  163. package/mobile/bundle/bundle.umd.min.js +1 -1
  164. package/mobile/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
  165. package/mobile/bundle/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
  166. package/mobile/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +9 -0
  167. package/mobile/bundle/hooks/useBranchesByRegions.d.ts +1 -1
  168. package/mobile/bundle/ui-kit/FormField/Fields/ArmyIdFlgField.d.ts +2 -0
  169. package/mobile/bundle/ui-kit/FormField/Fields/ChildrenField.d.ts +2 -0
  170. package/mobile/bundle/ui-kit/FormField/Fields/ConscriptionField.d.ts +2 -0
  171. package/mobile/bundle/ui-kit/FormField/Fields/DependentsField.d.ts +2 -0
  172. package/mobile/bundle/ui-kit/FormField/Fields/ExpensesField.d.ts +2 -0
  173. package/mobile/bundle/ui-kit/FormField/Fields/FamilyMembersField.d.ts +2 -0
  174. package/mobile/bundle/ui-kit/FormField/Fields/FamilyStatusField.d.ts +2 -0
  175. package/mobile/bundle/ui-kit/FormField/Fields/SnilsField.d.ts +2 -0
  176. package/mobile/bundle/ui-kit/FormField/Fields/TotalIncomeField.d.ts +2 -0
  177. package/mobile/bundle/ui-kit/FormField/validators.d.ts +2 -0
  178. package/mobile/bundle/ui-kit/Input/InputSnilsControl.d.ts +2 -0
  179. package/mobile/bundle/ui-kit/SnilsInput/SnilsInput.d.ts +2 -0
  180. package/mobile/bundle/ui-kit/SnilsInput/normalizeSnils.d.ts +1 -0
  181. package/mobile/dist/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
  182. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
  183. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +9 -0
  184. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  185. package/mobile/dist/hooks/useBranchesByRegions.d.ts +1 -1
  186. package/mobile/dist/hooks/useBranchesByRegions.js +3 -2
  187. package/mobile/dist/hooks/useBranchesByRegions.js.map +1 -1
  188. package/mobile/dist/ui-kit/FormField/Fields/AddressBranchField.js +1 -1
  189. package/mobile/dist/ui-kit/FormField/Fields/AddressBranchField.js.map +1 -1
  190. package/mobile/dist/ui-kit/FormField/Fields/AmountWorkersField.js +1 -1
  191. package/mobile/dist/ui-kit/FormField/Fields/AmountWorkersField.js.map +1 -1
  192. package/mobile/dist/ui-kit/FormField/Fields/ArmyIdFlgField.d.ts +2 -0
  193. package/mobile/dist/ui-kit/FormField/Fields/ArmyIdFlgField.js +9 -0
  194. package/mobile/dist/ui-kit/FormField/Fields/ArmyIdFlgField.js.map +1 -0
  195. package/mobile/dist/ui-kit/FormField/Fields/ChildrenField.d.ts +2 -0
  196. package/mobile/dist/ui-kit/FormField/Fields/ChildrenField.js +9 -0
  197. package/mobile/dist/ui-kit/FormField/Fields/ChildrenField.js.map +1 -0
  198. package/mobile/dist/ui-kit/FormField/Fields/ConscriptionField.d.ts +2 -0
  199. package/mobile/dist/ui-kit/FormField/Fields/ConscriptionField.js +11 -0
  200. package/mobile/dist/ui-kit/FormField/Fields/ConscriptionField.js.map +1 -0
  201. package/mobile/dist/ui-kit/FormField/Fields/DependentsField.d.ts +2 -0
  202. package/mobile/dist/ui-kit/FormField/Fields/DependentsField.js +9 -0
  203. package/mobile/dist/ui-kit/FormField/Fields/DependentsField.js.map +1 -0
  204. package/mobile/dist/ui-kit/FormField/Fields/EducationField.js +1 -1
  205. package/mobile/dist/ui-kit/FormField/Fields/EducationField.js.map +1 -1
  206. package/mobile/dist/ui-kit/FormField/Fields/EmployerActivitiesField.js +1 -1
  207. package/mobile/dist/ui-kit/FormField/Fields/EmployerActivitiesField.js.map +1 -1
  208. package/mobile/dist/ui-kit/FormField/Fields/EmployerOrganizationField.js +1 -1
  209. package/mobile/dist/ui-kit/FormField/Fields/EmployerOrganizationField.js.map +1 -1
  210. package/mobile/dist/ui-kit/FormField/Fields/EmploymentField.js +1 -1
  211. package/mobile/dist/ui-kit/FormField/Fields/EmploymentField.js.map +1 -1
  212. package/mobile/dist/ui-kit/FormField/Fields/ExpensesField.d.ts +2 -0
  213. package/mobile/dist/ui-kit/FormField/Fields/ExpensesField.js +9 -0
  214. package/mobile/dist/ui-kit/FormField/Fields/ExpensesField.js.map +1 -0
  215. package/mobile/dist/ui-kit/FormField/Fields/FamilyMembersField.d.ts +2 -0
  216. package/mobile/dist/ui-kit/FormField/Fields/FamilyMembersField.js +9 -0
  217. package/mobile/dist/ui-kit/FormField/Fields/FamilyMembersField.js.map +1 -0
  218. package/mobile/dist/ui-kit/FormField/Fields/FamilyStatusField.d.ts +2 -0
  219. package/mobile/dist/ui-kit/FormField/Fields/FamilyStatusField.js +11 -0
  220. package/mobile/dist/ui-kit/FormField/Fields/FamilyStatusField.js.map +1 -0
  221. package/mobile/dist/ui-kit/FormField/Fields/HousingField.js +1 -1
  222. package/mobile/dist/ui-kit/FormField/Fields/HousingField.js.map +1 -1
  223. package/mobile/dist/ui-kit/FormField/Fields/OrganizationField.js +1 -1
  224. package/mobile/dist/ui-kit/FormField/Fields/OrganizationField.js.map +1 -1
  225. package/mobile/dist/ui-kit/FormField/Fields/PositionOrganizationField.js +1 -1
  226. package/mobile/dist/ui-kit/FormField/Fields/PositionOrganizationField.js.map +1 -1
  227. package/mobile/dist/ui-kit/FormField/Fields/RegionPremiumField.js +1 -1
  228. package/mobile/dist/ui-kit/FormField/Fields/RegionPremiumField.js.map +1 -1
  229. package/mobile/dist/ui-kit/FormField/Fields/SnilsField.d.ts +2 -0
  230. package/mobile/dist/ui-kit/FormField/Fields/SnilsField.js +9 -0
  231. package/mobile/dist/ui-kit/FormField/Fields/SnilsField.js.map +1 -0
  232. package/mobile/dist/ui-kit/FormField/Fields/TotalIncomeField.d.ts +2 -0
  233. package/mobile/dist/ui-kit/FormField/Fields/TotalIncomeField.js +9 -0
  234. package/mobile/dist/ui-kit/FormField/Fields/TotalIncomeField.js.map +1 -0
  235. package/mobile/dist/ui-kit/FormField/getField.js +18 -0
  236. package/mobile/dist/ui-kit/FormField/getField.js.map +1 -1
  237. package/mobile/dist/ui-kit/FormField/getObjectValidator.js +9 -0
  238. package/mobile/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  239. package/mobile/dist/ui-kit/FormField/validators.d.ts +2 -0
  240. package/mobile/dist/ui-kit/FormField/validators.js +21 -1
  241. package/mobile/dist/ui-kit/FormField/validators.js.map +1 -1
  242. package/mobile/dist/ui-kit/Input/InputSnilsControl.d.ts +2 -0
  243. package/mobile/dist/ui-kit/Input/InputSnilsControl.js +9 -0
  244. package/mobile/dist/ui-kit/Input/InputSnilsControl.js.map +1 -0
  245. package/mobile/dist/ui-kit/SnilsInput/SnilsInput.d.ts +2 -0
  246. package/mobile/dist/ui-kit/SnilsInput/SnilsInput.js +17 -0
  247. package/mobile/dist/ui-kit/SnilsInput/SnilsInput.js.map +1 -0
  248. package/mobile/dist/ui-kit/SnilsInput/normalizeSnils.d.ts +1 -0
  249. package/mobile/dist/ui-kit/SnilsInput/normalizeSnils.js +23 -0
  250. package/mobile/dist/ui-kit/SnilsInput/normalizeSnils.js.map +1 -0
  251. package/mobile/lib/components/ApplicationForm/ApplicationFormContent.d.ts +2 -2
  252. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +2 -2
  253. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +9 -0
  254. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  255. package/mobile/lib/hooks/useBranchesByRegions.d.ts +1 -1
  256. package/mobile/lib/hooks/useBranchesByRegions.js +3 -2
  257. package/mobile/lib/hooks/useBranchesByRegions.js.map +1 -1
  258. package/mobile/lib/ui-kit/FormField/Fields/AddressBranchField.js +1 -1
  259. package/mobile/lib/ui-kit/FormField/Fields/AddressBranchField.js.map +1 -1
  260. package/mobile/lib/ui-kit/FormField/Fields/AmountWorkersField.js +1 -1
  261. package/mobile/lib/ui-kit/FormField/Fields/AmountWorkersField.js.map +1 -1
  262. package/mobile/lib/ui-kit/FormField/Fields/ArmyIdFlgField.d.ts +2 -0
  263. package/mobile/lib/ui-kit/FormField/Fields/ArmyIdFlgField.js +7 -0
  264. package/mobile/lib/ui-kit/FormField/Fields/ArmyIdFlgField.js.map +1 -0
  265. package/mobile/lib/ui-kit/FormField/Fields/ChildrenField.d.ts +2 -0
  266. package/mobile/lib/ui-kit/FormField/Fields/ChildrenField.js +7 -0
  267. package/mobile/lib/ui-kit/FormField/Fields/ChildrenField.js.map +1 -0
  268. package/mobile/lib/ui-kit/FormField/Fields/ConscriptionField.d.ts +2 -0
  269. package/mobile/lib/ui-kit/FormField/Fields/ConscriptionField.js +9 -0
  270. package/mobile/lib/ui-kit/FormField/Fields/ConscriptionField.js.map +1 -0
  271. package/mobile/lib/ui-kit/FormField/Fields/DependentsField.d.ts +2 -0
  272. package/mobile/lib/ui-kit/FormField/Fields/DependentsField.js +7 -0
  273. package/mobile/lib/ui-kit/FormField/Fields/DependentsField.js.map +1 -0
  274. package/mobile/lib/ui-kit/FormField/Fields/EducationField.js +1 -1
  275. package/mobile/lib/ui-kit/FormField/Fields/EducationField.js.map +1 -1
  276. package/mobile/lib/ui-kit/FormField/Fields/EmployerActivitiesField.js +1 -1
  277. package/mobile/lib/ui-kit/FormField/Fields/EmployerActivitiesField.js.map +1 -1
  278. package/mobile/lib/ui-kit/FormField/Fields/EmployerOrganizationField.js +1 -1
  279. package/mobile/lib/ui-kit/FormField/Fields/EmployerOrganizationField.js.map +1 -1
  280. package/mobile/lib/ui-kit/FormField/Fields/EmploymentField.js +1 -1
  281. package/mobile/lib/ui-kit/FormField/Fields/EmploymentField.js.map +1 -1
  282. package/mobile/lib/ui-kit/FormField/Fields/ExpensesField.d.ts +2 -0
  283. package/mobile/lib/ui-kit/FormField/Fields/ExpensesField.js +7 -0
  284. package/mobile/lib/ui-kit/FormField/Fields/ExpensesField.js.map +1 -0
  285. package/mobile/lib/ui-kit/FormField/Fields/FamilyMembersField.d.ts +2 -0
  286. package/mobile/lib/ui-kit/FormField/Fields/FamilyMembersField.js +7 -0
  287. package/mobile/lib/ui-kit/FormField/Fields/FamilyMembersField.js.map +1 -0
  288. package/mobile/lib/ui-kit/FormField/Fields/FamilyStatusField.d.ts +2 -0
  289. package/mobile/lib/ui-kit/FormField/Fields/FamilyStatusField.js +9 -0
  290. package/mobile/lib/ui-kit/FormField/Fields/FamilyStatusField.js.map +1 -0
  291. package/mobile/lib/ui-kit/FormField/Fields/HousingField.js +1 -1
  292. package/mobile/lib/ui-kit/FormField/Fields/HousingField.js.map +1 -1
  293. package/mobile/lib/ui-kit/FormField/Fields/OrganizationField.js +1 -1
  294. package/mobile/lib/ui-kit/FormField/Fields/OrganizationField.js.map +1 -1
  295. package/mobile/lib/ui-kit/FormField/Fields/PositionOrganizationField.js +1 -1
  296. package/mobile/lib/ui-kit/FormField/Fields/PositionOrganizationField.js.map +1 -1
  297. package/mobile/lib/ui-kit/FormField/Fields/RegionPremiumField.js +1 -1
  298. package/mobile/lib/ui-kit/FormField/Fields/RegionPremiumField.js.map +1 -1
  299. package/mobile/lib/ui-kit/FormField/Fields/SnilsField.d.ts +2 -0
  300. package/mobile/lib/ui-kit/FormField/Fields/SnilsField.js +7 -0
  301. package/mobile/lib/ui-kit/FormField/Fields/SnilsField.js.map +1 -0
  302. package/mobile/lib/ui-kit/FormField/Fields/TotalIncomeField.d.ts +2 -0
  303. package/mobile/lib/ui-kit/FormField/Fields/TotalIncomeField.js +7 -0
  304. package/mobile/lib/ui-kit/FormField/Fields/TotalIncomeField.js.map +1 -0
  305. package/mobile/lib/ui-kit/FormField/getField.js +18 -0
  306. package/mobile/lib/ui-kit/FormField/getField.js.map +1 -1
  307. package/mobile/lib/ui-kit/FormField/getObjectValidator.js +10 -1
  308. package/mobile/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  309. package/mobile/lib/ui-kit/FormField/validators.d.ts +2 -0
  310. package/mobile/lib/ui-kit/FormField/validators.js +19 -0
  311. package/mobile/lib/ui-kit/FormField/validators.js.map +1 -1
  312. package/mobile/lib/ui-kit/Input/InputSnilsControl.d.ts +2 -0
  313. package/mobile/lib/ui-kit/Input/InputSnilsControl.js +7 -0
  314. package/mobile/lib/ui-kit/Input/InputSnilsControl.js.map +1 -0
  315. package/mobile/lib/ui-kit/SnilsInput/SnilsInput.d.ts +2 -0
  316. package/mobile/lib/ui-kit/SnilsInput/SnilsInput.js +15 -0
  317. package/mobile/lib/ui-kit/SnilsInput/SnilsInput.js.map +1 -0
  318. package/mobile/lib/ui-kit/SnilsInput/normalizeSnils.d.ts +1 -0
  319. package/mobile/lib/ui-kit/SnilsInput/normalizeSnils.js +20 -0
  320. package/mobile/lib/ui-kit/SnilsInput/normalizeSnils.js.map +1 -0
  321. package/mobile/src/components/ApplicationForm/ApplicationFormContent.ts +11 -2
  322. package/mobile/src/components/ApplicationLeadForm/ApplicationLeadFormContent.ts +11 -2
  323. package/mobile/src/components/ApplicationLeadForm/getInitialFormState.tsx +9 -0
  324. package/mobile/src/hooks/useBranchesByRegions.ts +6 -2
  325. package/mobile/src/ui-kit/FormField/Fields/AddressBranchField.tsx +1 -1
  326. package/mobile/src/ui-kit/FormField/Fields/AmountWorkersField.tsx +1 -1
  327. package/mobile/src/ui-kit/FormField/Fields/ArmyIdFlgField.tsx +12 -0
  328. package/mobile/src/ui-kit/FormField/Fields/ChildrenField.tsx +15 -0
  329. package/mobile/src/ui-kit/FormField/Fields/ConscriptionField.tsx +18 -0
  330. package/mobile/src/ui-kit/FormField/Fields/DependentsField.tsx +15 -0
  331. package/mobile/src/ui-kit/FormField/Fields/EducationField.tsx +1 -1
  332. package/mobile/src/ui-kit/FormField/Fields/EmployerActivitiesField.tsx +1 -1
  333. package/mobile/src/ui-kit/FormField/Fields/EmployerOrganizationField.tsx +1 -1
  334. package/mobile/src/ui-kit/FormField/Fields/EmploymentField.tsx +1 -1
  335. package/mobile/src/ui-kit/FormField/Fields/ExpensesField.tsx +15 -0
  336. package/mobile/src/ui-kit/FormField/Fields/FamilyMembersField.tsx +15 -0
  337. package/mobile/src/ui-kit/FormField/Fields/FamilyStatusField.tsx +18 -0
  338. package/mobile/src/ui-kit/FormField/Fields/HousingField.tsx +1 -1
  339. package/mobile/src/ui-kit/FormField/Fields/OrganizationField.tsx +1 -1
  340. package/mobile/src/ui-kit/FormField/Fields/PositionOrganizationField.tsx +1 -1
  341. package/mobile/src/ui-kit/FormField/Fields/RegionPremiumField.tsx +1 -1
  342. package/mobile/src/ui-kit/FormField/Fields/SnilsField.tsx +13 -0
  343. package/mobile/src/ui-kit/FormField/Fields/TotalIncomeField.tsx +15 -0
  344. package/mobile/src/ui-kit/FormField/getField.tsx +19 -0
  345. package/mobile/src/ui-kit/FormField/getObjectValidator.tsx +11 -0
  346. package/mobile/src/ui-kit/FormField/validators.ts +25 -0
  347. package/mobile/src/ui-kit/Input/InputSnilsControl.tsx +22 -0
  348. package/mobile/src/ui-kit/SnilsInput/SnilsInput.tsx +28 -0
  349. package/mobile/src/ui-kit/SnilsInput/normalizeSnils.ts +29 -0
  350. package/package.json +2 -2
  351. package/src/components/ApplicationForm/ApplicationFormContent.ts +11 -2
  352. package/src/components/ApplicationLeadForm/ApplicationLeadFormContent.ts +11 -2
  353. package/src/components/ApplicationLeadForm/getInitialFormState.tsx +9 -0
  354. package/src/hooks/useBranchesByRegions.ts +6 -2
  355. package/src/ui-kit/FormField/Fields/AddressBranchField.tsx +1 -1
  356. package/src/ui-kit/FormField/Fields/AmountWorkersField.tsx +1 -1
  357. package/src/ui-kit/FormField/Fields/ArmyIdFlgField.tsx +12 -0
  358. package/src/ui-kit/FormField/Fields/ChildrenField.tsx +15 -0
  359. package/src/ui-kit/FormField/Fields/ConscriptionField.tsx +18 -0
  360. package/src/ui-kit/FormField/Fields/DependentsField.tsx +15 -0
  361. package/src/ui-kit/FormField/Fields/EducationField.tsx +1 -1
  362. package/src/ui-kit/FormField/Fields/EmployerActivitiesField.tsx +1 -1
  363. package/src/ui-kit/FormField/Fields/EmployerOrganizationField.tsx +1 -1
  364. package/src/ui-kit/FormField/Fields/EmploymentField.tsx +1 -1
  365. package/src/ui-kit/FormField/Fields/ExpensesField.tsx +15 -0
  366. package/src/ui-kit/FormField/Fields/FamilyMembersField.tsx +15 -0
  367. package/src/ui-kit/FormField/Fields/FamilyStatusField.tsx +18 -0
  368. package/src/ui-kit/FormField/Fields/HousingField.tsx +1 -1
  369. package/src/ui-kit/FormField/Fields/OrganizationField.tsx +1 -1
  370. package/src/ui-kit/FormField/Fields/PositionOrganizationField.tsx +1 -1
  371. package/src/ui-kit/FormField/Fields/RegionPremiumField.tsx +1 -1
  372. package/src/ui-kit/FormField/Fields/SnilsField.tsx +13 -0
  373. package/src/ui-kit/FormField/Fields/TotalIncomeField.tsx +15 -0
  374. package/src/ui-kit/FormField/getField.tsx +19 -0
  375. package/src/ui-kit/FormField/getObjectValidator.tsx +11 -0
  376. package/src/ui-kit/FormField/validators.ts +25 -0
  377. package/src/ui-kit/Input/InputSnilsControl.tsx +22 -0
  378. package/src/ui-kit/SnilsInput/SnilsInput.tsx +28 -0
  379. package/src/ui-kit/SnilsInput/normalizeSnils.ts +29 -0
@@ -0,0 +1,15 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { InputControl } from '../../Input/InputControl';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { validatorObj } from '../getObjectValidator';
5
+ import { getValidation } from '../getValidation';
6
+
7
+ export const ChildrenField = JSX<CustomFieldProps>(({ field, input }) => (
8
+ <InputControl
9
+ label="Количество детей до 18 лет"
10
+ placeholder="Введите значение"
11
+ type="number"
12
+ {...getValidation(field('children'), validatorObj.children, input?.required)}
13
+ {...input}
14
+ />
15
+ ));
@@ -0,0 +1,18 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { useLeadFormData } from '../../../hooks/useLeadFormData';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { SelectField } from '../SelectField';
5
+
6
+ export const ConscriptionField = JSX<CustomFieldProps>(({ field, input }) => {
7
+ const { data: conscription } = useLeadFormData('MILITARY_STATUS');
8
+
9
+ return (
10
+ <SelectField
11
+ field={field}
12
+ source={conscription}
13
+ label="Статус военнообязанного"
14
+ fieldName="conscription"
15
+ input={input}
16
+ />
17
+ );
18
+ });
@@ -0,0 +1,15 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { InputControl } from '../../Input/InputControl';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { validatorObj } from '../getObjectValidator';
5
+ import { getValidation } from '../getValidation';
6
+
7
+ export const DependentsField = JSX<CustomFieldProps>(({ field, input }) => (
8
+ <InputControl
9
+ label="Количество иждивенцев"
10
+ placeholder="За исключение детей до 18 лет"
11
+ type="number"
12
+ {...getValidation(field('dependents'), validatorObj.dependents, input?.required)}
13
+ {...input}
14
+ />
15
+ ));
@@ -9,7 +9,7 @@ export const EducationField = JSX<CustomFieldProps>(({ field, input }) => {
9
9
  return (
10
10
  <SelectField
11
11
  field={field}
12
- source={education || []}
12
+ source={education}
13
13
  label="Образование"
14
14
  fieldName="education"
15
15
  input={input}
@@ -9,7 +9,7 @@ export const EmployerActivitiesField = JSX<CustomFieldProps>(({ field, input })
9
9
  return (
10
10
  <SelectField
11
11
  field={field}
12
- source={employerActivities || []}
12
+ source={employerActivities}
13
13
  label="Вид деятельности организации-работодателя"
14
14
  fieldName="employerActivities"
15
15
  input={input}
@@ -9,7 +9,7 @@ export const EmployerOrganizationField = JSX<CustomFieldProps>(({ field, input }
9
9
  return (
10
10
  <SelectField
11
11
  field={field}
12
- source={employerOrganization || []}
12
+ source={employerOrganization}
13
13
  label="Вид организации работодателя"
14
14
  fieldName="employerOrganization"
15
15
  input={input}
@@ -9,7 +9,7 @@ export const EmploymentField = JSX<CustomFieldProps>(({ field, input }) => {
9
9
  return (
10
10
  <SelectField
11
11
  field={field}
12
- source={employment || []}
12
+ source={employment}
13
13
  label="Информация о трудоустройстве"
14
14
  fieldName="employment"
15
15
  input={input}
@@ -0,0 +1,15 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { InputControl } from '../../Input/InputControl';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { validatorObj } from '../getObjectValidator';
5
+ import { getValidation } from '../getValidation';
6
+
7
+ export const ExpensesField = JSX<CustomFieldProps>(({ field, input }) => (
8
+ <InputControl
9
+ label="Обязательные расходы в месяц"
10
+ placeholder="Введите значение"
11
+ type="number"
12
+ {...getValidation(field('expenses'), validatorObj.expenses, input?.required)}
13
+ {...input}
14
+ />
15
+ ));
@@ -0,0 +1,15 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { InputControl } from '../../Input/InputControl';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { validatorObj } from '../getObjectValidator';
5
+ import { getValidation } from '../getValidation';
6
+
7
+ export const FamilyMembersField = JSX<CustomFieldProps>(({ field, input }) => (
8
+ <InputControl
9
+ label="Количество членов семьи"
10
+ placeholder="Введите значение"
11
+ type="number"
12
+ {...getValidation(field('familyMembers'), validatorObj.familyMembers, input?.required)}
13
+ {...input}
14
+ />
15
+ ));
@@ -0,0 +1,18 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { useLeadFormData } from '../../../hooks/useLeadFormData';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { SelectField } from '../SelectField';
5
+
6
+ export const FamilyStatusField = JSX<CustomFieldProps>(({ field, input }) => {
7
+ const { data: familyStatus } = useLeadFormData('MARITAL_STATUS');
8
+
9
+ return (
10
+ <SelectField
11
+ field={field}
12
+ source={familyStatus}
13
+ label="Семейное положение"
14
+ fieldName="familyStatus"
15
+ input={input}
16
+ />
17
+ );
18
+ });
@@ -9,7 +9,7 @@ export const HousingField = JSX<CustomFieldProps>(({ field, input }) => {
9
9
  return (
10
10
  <SelectField
11
11
  field={field}
12
- source={housing || []}
12
+ source={housing}
13
13
  label="Тип жилья"
14
14
  fieldName="housing"
15
15
  input={input}
@@ -9,7 +9,7 @@ export const OrganizationField = JSX<CustomFieldProps>(({ field, input }) => {
9
9
  return (
10
10
  <SelectField
11
11
  field={field}
12
- source={organization || []}
12
+ source={organization}
13
13
  label="Тип организации"
14
14
  fieldName="organization"
15
15
  input={input}
@@ -9,7 +9,7 @@ export const PositionOrganizationField = JSX<CustomFieldProps>(({ field, input }
9
9
  return (
10
10
  <SelectField
11
11
  field={field}
12
- source={positionOrganization || []}
12
+ source={positionOrganization}
13
13
  label="Должность в организации"
14
14
  fieldName="positionOrganization"
15
15
  input={input}
@@ -8,7 +8,7 @@ import { validatorObj } from '../getObjectValidator';
8
8
  import { getValidation } from '../getValidation';
9
9
 
10
10
  export const RegionPremiumField = JSX<CustomFieldProps>(({ field, input }) => {
11
- const branchByRegions = useBranchesByRegions();
11
+ const branchByRegions = useBranchesByRegions(true);
12
12
  const regions = useMemo(
13
13
  () =>
14
14
  branchByRegions?.map(({ region }) => ({
@@ -0,0 +1,13 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { InputSnilsControl } from '../../Input/InputSnilsControl';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { validatorObj } from '../getObjectValidator';
5
+ import { getValidation } from '../getValidation';
6
+
7
+ export const SnilsField = JSX<CustomFieldProps>(({ field, input }) => (
8
+ <InputSnilsControl
9
+ label="СНИЛС"
10
+ {...getValidation(field('snils'), validatorObj.snils, input?.required)}
11
+ {...input}
12
+ />
13
+ ));
@@ -0,0 +1,15 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { InputControl } from '../../Input/InputControl';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { validatorObj } from '../getObjectValidator';
5
+ import { getValidation } from '../getValidation';
6
+
7
+ export const TotalIncomeField = JSX<CustomFieldProps>(({ field, input }) => (
8
+ <InputControl
9
+ label="Совокупный официальный доход в месяц после вычета налогов (зарплата, премии)"
10
+ placeholder="Введите значение"
11
+ type="number"
12
+ {...getValidation(field('totalIncome'), validatorObj.totalIncome, input?.required)}
13
+ {...input}
14
+ />
15
+ ));
@@ -1,3 +1,4 @@
1
+ /* eslint-disable max-lines */
1
2
  import { type FieldDef } from '../../components/ApplicationForm/ApplicationFormContent';
2
3
  import { getRegionUrl } from '../../components/ApplicationForm/getRegionUrl';
3
4
  import { type FormFieldRegisterer } from '../../hooks/useForm';
@@ -8,24 +9,31 @@ import { AddressBranchField } from './Fields/AddressBranchField';
8
9
  import { AmountField } from './Fields/AmountField';
9
10
  import { AmountWorkersField } from './Fields/AmountWorkersField';
10
11
  import { AnnualRevenueField } from './Fields/AnnualRevenueField';
12
+ import { ArmyIdFlgField } from './Fields/ArmyIdFlgField';
11
13
  import { BankEmpoleeField } from './Fields/BankEmpoleeField';
12
14
  import { BeginDateField } from './Fields/BeginDateField';
13
15
  import { BirthdayField } from './Fields/BirthdayField';
16
+ import { ChildrenField } from './Fields/ChildrenField';
14
17
  import { CollectionCountField } from './Fields/CollectionCountField';
15
18
  import { CommentField } from './Fields/CommentField';
19
+ import { ConscriptionField } from './Fields/ConscriptionField';
16
20
  import { ConsentAssignmentField } from './Fields/ConsentAssignmentField';
17
21
  import { ConsentCollectionField } from './Fields/ConsentCollectionField';
18
22
  import { ConsentInformField } from './Fields/ConsentInformField';
19
23
  import { ConsentPhotoFlg } from './Fields/ConsentPhotoField';
20
24
  import { ConsentProviderField } from './Fields/ConsentProviderField';
21
25
  import { ConsentToReceiveMaterialsField } from './Fields/ConsentToReceiveMaterialsField';
26
+ import { DependentsField } from './Fields/DependentsField';
22
27
  import { DesiredMeetingDateField } from './Fields/DesiredMeetingDateField';
23
28
  import { EducationField } from './Fields/EducationField';
24
29
  import { EmailField } from './Fields/EmailField';
25
30
  import { EmployerActivitiesField } from './Fields/EmployerActivitiesField';
26
31
  import { EmployerOrganizationField } from './Fields/EmployerOrganizationField';
27
32
  import { EmploymentField } from './Fields/EmploymentField';
33
+ import { ExpensesField } from './Fields/ExpensesField';
28
34
  import { Experience5YearsField } from './Fields/Experience5YearsField';
35
+ import { FamilyMembersField } from './Fields/FamilyMembersField';
36
+ import { FamilyStatusField } from './Fields/FamilyStatusField';
29
37
  import { FeedbackMethodField } from './Fields/FeedbackMethodField';
30
38
  import { FullAddressField } from './Fields/FullAddressField';
31
39
  import { FullNameField } from './Fields/FullNameField';
@@ -52,8 +60,10 @@ import { RegionField } from './Fields/RegionField';
52
60
  import { RegionPremiumField } from './Fields/RegionPremiumField';
53
61
  import { SecondaryPhoneField } from './Fields/SecondaryPhoneField';
54
62
  import { ServiceDirectionField } from './Fields/ServiceDirectionField';
63
+ import { SnilsField } from './Fields/SnilsField';
55
64
  import { SurnameField } from './Fields/SurnameField';
56
65
  import { TermField } from './Fields/TermField';
66
+ import { TotalIncomeField } from './Fields/TotalIncomeField';
57
67
  import { UltraPremiumField } from './Fields/UltraPremiumField';
58
68
  import { VedField } from './Fields/VedField';
59
69
  import { isRenderField } from './isRenderField';
@@ -130,6 +140,15 @@ export const getField =
130
140
  employerActivities: <EmployerActivitiesField field={field} input={input} />,
131
141
  employerOrganization: <EmployerOrganizationField field={field} input={input} />,
132
142
  positionOrganization: <PositionOrganizationField field={field} input={input} />,
143
+ familyStatus: <FamilyStatusField field={field} input={input} />,
144
+ children: <ChildrenField field={field} input={input} />,
145
+ familyMembers: <FamilyMembersField field={field} input={input} />,
146
+ dependents: <DependentsField field={field} input={input} />,
147
+ totalIncome: <TotalIncomeField field={field} input={input} />,
148
+ expenses: <ExpensesField field={field} input={input} />,
149
+ snils: <SnilsField field={field} input={input} />,
150
+ conscription: <ConscriptionField field={field} input={input} />,
151
+ armyIdFlg: <ArmyIdFlgField field={field} input={input} />,
133
152
  };
134
153
 
135
154
  return isRenderField({ input, field }) ? (
@@ -6,8 +6,10 @@ import {
6
6
  defaultSelectValidator,
7
7
  defaultValidator,
8
8
  innValidator,
9
+ lengthStringValidator,
9
10
  nameValidator,
10
11
  phoneValidator,
12
+ snilsValidator,
11
13
  } from './validators';
12
14
 
13
15
  export const validatorObj: Record<string, Validator> = {
@@ -58,6 +60,15 @@ export const validatorObj: Record<string, Validator> = {
58
60
  consentAssignmentClaimsFlg: agreementValidator,
59
61
  consentCollectionFlg: agreementValidator,
60
62
  consentInformFlg: agreementValidator,
63
+ familyStatus: defaultValidator,
64
+ children: lengthStringValidator(2),
65
+ familyMembers: lengthStringValidator(2),
66
+ dependents: lengthStringValidator(2),
67
+ totalIncome: lengthStringValidator(19),
68
+ expenses: lengthStringValidator(10),
69
+ snils: snilsValidator,
70
+ conscription: defaultValidator,
71
+ armyIdFlg: agreementValidator,
61
72
  };
62
73
 
63
74
  export const getObjectValidator = (inputs: FieldDef[]): Record<string, Validator> => {
@@ -10,6 +10,9 @@ export const defaultSelectValidator = validator((_) => _?.key && _?.key !== '')(
10
10
 
11
11
  export const nameValidator = validator((_) => typeof _ === 'string' && _.length > 1)(ERROR_MESSAGE);
12
12
 
13
+ export const lengthStringValidator = (maxLength: number) =>
14
+ validator((_) => typeof _ === 'string' && _.length >= 1 && _.length <= maxLength)(ERROR_MESSAGE);
15
+
13
16
  export const innValidator = validator(
14
17
  (_) => typeof _ === 'string' && (_.length === 10 || _.length === 12),
15
18
  )(ERROR_MESSAGE);
@@ -21,3 +24,25 @@ export const phoneValidator = pattern(
21
24
  export const agreementValidator = validator((_) => typeof _ === 'boolean' && _)(
22
25
  'Согласие обязательно',
23
26
  );
27
+
28
+ const snilsValidate = (snils: string) => {
29
+ const snl = String(snils).replace(/[^0-9]+/g, '');
30
+ if (snl.length === 11) {
31
+ let checksum = 0;
32
+ for (let i = 0; i < 9; i++) {
33
+ checksum += parseInt(snl.charAt(i)) * (9 - i);
34
+ }
35
+ if (checksum > 101) {
36
+ checksum = checksum % 101;
37
+ }
38
+ if (checksum === 100 || checksum === 101) {
39
+ checksum = 0;
40
+ }
41
+
42
+ return checksum === parseInt(snl.substr(9));
43
+ }
44
+
45
+ return false;
46
+ };
47
+
48
+ export const snilsValidator = validator(snilsValidate)(ERROR_MESSAGE);
@@ -0,0 +1,22 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { style } from '../../utils/style';
3
+ import { SnilsInput } from '../SnilsInput/SnilsInput';
4
+ import { type InputProps } from './InputProps';
5
+ import { renderErrorText } from './renderErrorText';
6
+
7
+ export const InputSnilsControl = JSX<InputProps>(
8
+ ({ className, label, value, error, onChange, onBlur, ...rest }) => (
9
+ <div className={style('shrink-0 w-full', className)}>
10
+ <SnilsInput
11
+ aria-label={label}
12
+ label={rest?.errors ? `${label}*` : label}
13
+ valid={Boolean(!error)}
14
+ value={value}
15
+ onChange={onChange}
16
+ onBlur={onBlur}
17
+ placeholder="___-___-___ __"
18
+ />
19
+ {renderErrorText(error)}
20
+ </div>
21
+ ),
22
+ );
@@ -0,0 +1,28 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { useCallback } from '@redneckz/uni-jsx/lib/hooks';
3
+ import { Input } from '../Input/Input';
4
+ import { type InputProps } from '../Input/InputProps';
5
+ import { normalizeSnils } from './normalizeSnils';
6
+
7
+ export const SnilsInput = JSX<InputProps>(({ children, onChange, ...inputProps }) => {
8
+ const handleChange = useCallback(
9
+ (v: string) => onChange && onChange(normalizeSnils(v)),
10
+ [onChange],
11
+ );
12
+ const handleBlur = useCallback((v: string) => {
13
+ if (v === '___-___-___ __') {
14
+ onChange && onChange('');
15
+ }
16
+ }, []);
17
+
18
+ return (
19
+ <Input
20
+ {...inputProps}
21
+ onChange={handleChange}
22
+ onFocus={(ev) => handleChange((ev?.target as HTMLInputElement)?.value || '')}
23
+ onBlur={(ev) => handleBlur((ev?.target as HTMLInputElement)?.value || '')}
24
+ >
25
+ {children}
26
+ </Input>
27
+ );
28
+ });
@@ -0,0 +1,29 @@
1
+ const isPlaceholder = (_: string) => _ === '_';
2
+ const isDigit = (_: string) => /\d/.test(_);
3
+ const isWildcard = (_: string) => isPlaceholder(_) || isDigit(_);
4
+
5
+ const snilsPattern = [...'___-___-___ __'];
6
+
7
+ const firstPlaceholderIndex = snilsPattern.findIndex(isPlaceholder);
8
+ const snilsWildcardIndicies = snilsPattern.map((_, i) =>
9
+ isWildcard(_) ? snilsPattern.slice(0, i).filter(isWildcard).length : -1,
10
+ );
11
+
12
+ export function normalizeSnils(snils: string): string {
13
+ const snilsNumbers = snils.replace(/\D/g, '');
14
+ const applyPlaceholder = (_: string, i: number) =>
15
+ isDigit(_) ? _ : snilsNumbers.charAt(snilsWildcardIndicies[i]) || _;
16
+
17
+ const result = snilsPattern.map(applyPlaceholder);
18
+ const resultLength = snilsWildcardIndicies.indexOf(snilsNumbers.length - 1) + 1;
19
+
20
+ const isCursorStart = snilsNumbers.length === 0;
21
+
22
+ if (!isCursorStart) {
23
+ return (
24
+ resultLength ? result.slice(0, Math.max(firstPlaceholderIndex, resultLength)) : result
25
+ ).join('');
26
+ } else {
27
+ return '';
28
+ }
29
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redneckz/wildless-cms-uni-blocks",
3
- "version": "0.14.584",
3
+ "version": "0.14.586",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "author": "ЦК",
@@ -210,7 +210,7 @@
210
210
  "path": "lib/common.css"
211
211
  },
212
212
  {
213
- "limit": "73 kB",
213
+ "limit": "74 kB",
214
214
  "path": "bundle/bundle.umd.min.js"
215
215
  }
216
216
  ],
@@ -17,7 +17,7 @@ export type SubmitButtonProps = TextProps & {
17
17
  /**
18
18
  * @title Название поля ввода
19
19
  * @required
20
- * @enumNames ["Фамилия", "Имя", "Отчество", "Email", "Телефон", "ФИО", "ИНН", "Комментарий", "Регион", "Регион выездной сервис", "Адрес", "Тип формы", "День рождения", "Клиент банка", "Согласие на получение материалов", "Тип эквайринга", "Онлайн касса", "POS-терминал", "Направление обслуживания", "Ультра/Премиум", "Тип обратной связи", "Способ получения ответа", "Банковский служащий", "Дата и время обращения", "Дополнительный телефон", "ВЭД", "Срок (месяцев)", "Сумма ₽", "Годовой доход", "Количество объектов инкассации", "День встречи", "Продукт", "Комментарий партнёров", "Согласие на обработку", "Образование", "Тип жилья", "Информация о трудоустройстве", "Тип организации", "Количество работающих в организации", "Вид деятельности работодателя", "Вид организации работодателя", "Должность в организации"]
20
+ * @enumNames ["Фамилия", "Имя", "Отчество", "Образование", "Тип жилья", "Информация о трудоустройстве", "Тип организации", "Количество работающих в организации", "Вид деятельности работодателя", "Вид организации работодателя", "Должность в организации", "Email", "Телефон", "ФИО", "ИНН", "ОПФ", "Наименование организации", "Общий стаж", "Стаж на последнем рабочем месте", "Стаж", "Количество мест работы", "Дата начала работы на текущем месте", "Адрес работодателя", "Комментарий", "Регион", "Регион выездной сервис", "Адрес", "Тип формы", "День рождения", "Клиент банка", "Согласие на получение материалов", "Тип эквайринга", "Онлайн касса", "POS-терминал", "Направление обслуживания", "Ультра/Премиум", "Тип обратной связи", "Способ получения ответа", "Банковский служащий", "Дата и время обращения", "Дополнительный телефон", "ВЭД", "Срок (месяцев)", "Сумма ₽", "Годовой доход", "Количество объектов инкассации", "День встречи", "Продукт", "Комментарий партнёров", "Согласие на обработку", "Семейное положение", "Количество иждивенцев", "Количество членов семьи", "Количество детей до 18 лет", "Совокупный официальный доход в месяц после вычета налогов (зарплата, премии)", "Статус военнообязанного", "Обязательные расходы в месяц", "Наличие военного билета", "Обязательные расходы в месяц"]
21
21
  */
22
22
  export type NameFieldDef =
23
23
  | 'surname'
@@ -75,7 +75,16 @@ export type NameFieldDef =
75
75
  | 'experience5Years'
76
76
  | 'jobsNumber'
77
77
  | 'beginDate'
78
- | 'fullAddress';
78
+ | 'fullAddress'
79
+ | 'familyStatus'
80
+ | 'children'
81
+ | 'familyMembers'
82
+ | 'dependents'
83
+ | 'totalIncome'
84
+ | 'expenses'
85
+ | 'snils'
86
+ | 'conscription'
87
+ | 'armyIdFlg';
79
88
 
80
89
  export type ConditionFieldProps = {
81
90
  /** @title Условия отображения полей формы */
@@ -18,7 +18,7 @@ export type SubmitButtonProps = TextProps & {
18
18
  /**
19
19
  * @title Название поля ввода
20
20
  * @required
21
- * @enumNames ["Фамилия", "Имя", "Отчество", "Образование", "Тип жилья", "Информация о трудоустройстве", "Тип организации", "Количество работающих в организации", "Вид деятельности работодателя", "Вид организации работодателя", "Должность в организации", "Email", "Телефон", "ФИО", "ИНН", "ОПФ", "Наименование организации", "Общий стаж", "Стаж на последнем рабочем месте", "Стаж", "Количество мест работы", "Дата начала работы на текущем месте", "Адрес работодателя", "Комментарий", "Регион", "Регион выездной сервис", "Адрес", "Тип формы", "День рождения", "Клиент банка", "Согласие на получение материалов", "Тип эквайринга", "Онлайн касса", "POS-терминал", "Направление обслуживания", "Ультра/Премиум", "Тип обратной связи", "Способ получения ответа", "Банковский служащий", "Дата и время обращения", "Дополнительный телефон", "ВЭД", "Срок (месяцев)", "Сумма ₽", "Годовой доход", "Количество объектов инкассации", "День встречи", "Продукт", "Комментарий партнёров", "Согласие на обработку"]
21
+ * @enumNames ["Фамилия", "Имя", "Отчество", "Образование", "Тип жилья", "Информация о трудоустройстве", "Тип организации", "Количество работающих в организации", "Вид деятельности работодателя", "Вид организации работодателя", "Должность в организации", "Email", "Телефон", "ФИО", "ИНН", "ОПФ", "Наименование организации", "Общий стаж", "Стаж на последнем рабочем месте", "Стаж", "Количество мест работы", "Дата начала работы на текущем месте", "Адрес работодателя", "Комментарий", "Регион", "Регион выездной сервис", "Адрес", "Тип формы", "День рождения", "Клиент банка", "Согласие на получение материалов", "Тип эквайринга", "Онлайн касса", "POS-терминал", "Направление обслуживания", "Ультра/Премиум", "Тип обратной связи", "Способ получения ответа", "Банковский служащий", "Дата и время обращения", "Дополнительный телефон", "ВЭД", "Срок (месяцев)", "Сумма ₽", "Годовой доход", "Количество объектов инкассации", "День встречи", "Продукт", "Комментарий партнёров", "Согласие на обработку", "Семейное положение", "Количество иждивенцев", "Количество членов семьи", "Количество детей до 18 лет", "Совокупный официальный доход в месяц после вычета налогов (зарплата, премии)", "Статус военнообязанного", "Обязательные расходы в месяц", "Наличие военного билета", "Обязательные расходы в месяц"]
22
22
  */
23
23
  export type NameFieldDef =
24
24
  | 'surname'
@@ -76,7 +76,16 @@ export type NameFieldDef =
76
76
  | 'consentPhotoFlg'
77
77
  | 'consentPfrFlg'
78
78
  | 'consentProviderFlg'
79
- | 'processPersonalDataLeadFlg';
79
+ | 'processPersonalDataLeadFlg'
80
+ | 'familyStatus'
81
+ | 'children'
82
+ | 'familyMembers'
83
+ | 'dependents'
84
+ | 'totalIncome'
85
+ | 'expenses'
86
+ | 'snils'
87
+ | 'conscription'
88
+ | 'armyIdFlg';
80
89
 
81
90
  export type ConditionFieldProps = {
82
91
  /** @title Условия отображения полей формы */
@@ -65,6 +65,15 @@ export interface FormState {
65
65
  consentCollectionFlg?: boolean;
66
66
  consentInformFlg?: boolean;
67
67
  consentToReceiveMaterials?: boolean;
68
+ familyStatus?: string;
69
+ children?: number;
70
+ familyMembers?: number;
71
+ dependents?: number;
72
+ totalIncome?: number;
73
+ expenses?: number;
74
+ snils?: string;
75
+ conscription?: string;
76
+ armyIdFlg?: boolean;
68
77
  }
69
78
 
70
79
  const initialFormState = {
@@ -2,6 +2,7 @@ import { useAsyncData } from '@redneckz/uni-jsx/lib/hooks/useAsyncData';
2
2
  import { fetchJSONUnsafe, type FetchJSONUnsafeType } from '../utils/fetchJSON';
3
3
 
4
4
  const REGIONS_URL = '/api/v1/branchesByRegions';
5
+ const PREMIUM_REGIONS_URL = '/api/v1/premiumBranchesByRegions';
5
6
 
6
7
  export interface Region {
7
8
  region: string;
@@ -11,8 +12,11 @@ export interface Region {
11
12
  }[];
12
13
  }
13
14
 
14
- export function useBranchesByRegions(): Region[] {
15
- const { data } = useAsyncData(REGIONS_URL, fetchJSONUnsafe as FetchJSONUnsafeType<Region[]>);
15
+ export function useBranchesByRegions(isPremium = false): Region[] {
16
+ const { data } = useAsyncData(
17
+ isPremium ? PREMIUM_REGIONS_URL : REGIONS_URL,
18
+ fetchJSONUnsafe as FetchJSONUnsafeType<Region[]>,
19
+ );
16
20
 
17
21
  return Array.isArray(data) ? data : [];
18
22
  }
@@ -16,7 +16,7 @@ export const AddressBranchField = JSX<RegionFieldProps>(({ field, input, isPremi
16
16
  const regionKey = fieldRegion?.value?.key as string;
17
17
  const regionText = fieldRegion?.value?.text as string;
18
18
  const addressBranch = isPremium
19
- ? useBranchesByRegions()?.find((_) => _?.region === regionText)?.branches
19
+ ? useBranchesByRegions(isPremium)?.find((_) => _?.region === regionText)?.branches
20
20
  : useBranches(regionKey)?.filter((branch) => branch?.address);
21
21
  useEffect(() => {
22
22
  if (fieldRegion?.value?.key !== '') {
@@ -9,7 +9,7 @@ export const AmountWorkersField = JSX<CustomFieldProps>(({ field, input }) => {
9
9
  return (
10
10
  <SelectField
11
11
  field={field}
12
- source={amountWorkers || []}
12
+ source={amountWorkers}
13
13
  label="Количество работающих в организации"
14
14
  fieldName="amountWorkers"
15
15
  input={input}
@@ -0,0 +1,12 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { CheckboxWithError } from '../../Checkbox/CheckboxWithError';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { validatorObj } from '../getObjectValidator';
5
+ import { getValidation } from '../getValidation';
6
+
7
+ export const ArmyIdFlgField = JSX<CustomFieldProps>(({ field }) => (
8
+ <CheckboxWithError
9
+ text="Наличие военного билета"
10
+ {...getValidation(field('armyIdFlg'), validatorObj.armyIdFlg)}
11
+ />
12
+ ));
@@ -0,0 +1,15 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { InputControl } from '../../Input/InputControl';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { validatorObj } from '../getObjectValidator';
5
+ import { getValidation } from '../getValidation';
6
+
7
+ export const ChildrenField = JSX<CustomFieldProps>(({ field, input }) => (
8
+ <InputControl
9
+ label="Количество детей до 18 лет"
10
+ placeholder="Введите значение"
11
+ type="number"
12
+ {...getValidation(field('children'), validatorObj.children, input?.required)}
13
+ {...input}
14
+ />
15
+ ));
@@ -0,0 +1,18 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { useLeadFormData } from '../../../hooks/useLeadFormData';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { SelectField } from '../SelectField';
5
+
6
+ export const ConscriptionField = JSX<CustomFieldProps>(({ field, input }) => {
7
+ const { data: conscription } = useLeadFormData('MILITARY_STATUS');
8
+
9
+ return (
10
+ <SelectField
11
+ field={field}
12
+ source={conscription}
13
+ label="Статус военнообязанного"
14
+ fieldName="conscription"
15
+ input={input}
16
+ />
17
+ );
18
+ });
@@ -0,0 +1,15 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { InputControl } from '../../Input/InputControl';
3
+ import { type CustomFieldProps } from '../CustomFieldProps';
4
+ import { validatorObj } from '../getObjectValidator';
5
+ import { getValidation } from '../getValidation';
6
+
7
+ export const DependentsField = JSX<CustomFieldProps>(({ field, input }) => (
8
+ <InputControl
9
+ label="Количество иждивенцев"
10
+ placeholder="За исключение детей до 18 лет"
11
+ type="number"
12
+ {...getValidation(field('dependents'), validatorObj.dependents, input?.required)}
13
+ {...input}
14
+ />
15
+ ));