@redneckz/wildless-cms-uni-blocks 0.14.876 → 0.14.877

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 (289) hide show
  1. package/bundle/api/LeadServiceAPI.d.ts +4 -0
  2. package/bundle/blocks.schema.json +1 -1
  3. package/bundle/bundle.umd.js +187 -91
  4. package/bundle/bundle.umd.min.js +1 -1
  5. package/bundle/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  6. package/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  7. package/bundle/hooks/useInn.d.ts +7 -0
  8. package/bundle/model/FormTypeFieldDef.d.ts +1 -1
  9. package/bundle/retail/components/Fields/SelectField.d.ts +1 -0
  10. package/bundle/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  11. package/bundle/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  12. package/bundle/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  13. package/bundle/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  14. package/bundle/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  15. package/bundle/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  16. package/bundle/ui-kit/FormField/validators.d.ts +8 -1
  17. package/bundle/ui-kit/Select/Option.d.ts +6 -0
  18. package/bundle/ui-kit/Select/Select.d.ts +2 -0
  19. package/bundle/ui-kit/Select/SelectPopup.d.ts +1 -0
  20. package/bundle/ui-kit/Select/useSelectPopup.d.ts +2 -1
  21. package/dist/api/LeadServiceAPI.d.ts +4 -0
  22. package/dist/api/LeadServiceAPI.js +13 -6
  23. package/dist/api/LeadServiceAPI.js.map +1 -1
  24. package/dist/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  25. package/dist/components/ApplicationForm/ApplicationForm.js +4 -3
  26. package/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
  27. package/dist/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  28. package/dist/components/ApplicationForm/ApplicationFormContent.js +0 -2
  29. package/dist/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
  30. package/dist/hooks/useInn.d.ts +7 -0
  31. package/dist/hooks/useInn.js +11 -0
  32. package/dist/hooks/useInn.js.map +1 -0
  33. package/dist/model/FormTypeFieldDef.d.ts +1 -1
  34. package/dist/retail/components/Fields/SelectField.d.ts +1 -0
  35. package/dist/retail/components/Fields/SelectField.js.map +1 -1
  36. package/dist/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  37. package/dist/ui-kit/FormField/Fields/CompanyNameByInnField.js +17 -0
  38. package/dist/ui-kit/FormField/Fields/CompanyNameByInnField.js.map +1 -0
  39. package/dist/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  40. package/{mobile/dist/ui-kit/FormField/Fields/RegionPremiumField.js → dist/ui-kit/FormField/Fields/FullRegionField.js} +5 -4
  41. package/dist/ui-kit/FormField/Fields/FullRegionField.js.map +1 -0
  42. package/dist/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  43. package/dist/ui-kit/FormField/Fields/InnDadataField.js +29 -0
  44. package/dist/ui-kit/FormField/Fields/InnDadataField.js.map +1 -0
  45. package/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  46. package/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.js +19 -0
  47. package/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.js.map +1 -0
  48. package/dist/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  49. package/dist/ui-kit/FormField/getField.js +12 -2
  50. package/dist/ui-kit/FormField/getField.js.map +1 -1
  51. package/dist/ui-kit/FormField/getObjectValidator.js +3 -0
  52. package/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  53. package/dist/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  54. package/dist/ui-kit/FormField/inputColumnStyle.js +1 -1
  55. package/dist/ui-kit/FormField/inputColumnStyle.js.map +1 -1
  56. package/dist/ui-kit/FormField/validators.d.ts +8 -1
  57. package/dist/ui-kit/FormField/validators.js +5 -2
  58. package/dist/ui-kit/FormField/validators.js.map +1 -1
  59. package/dist/ui-kit/Select/Option.d.ts +6 -0
  60. package/dist/ui-kit/Select/Select.d.ts +2 -0
  61. package/dist/ui-kit/Select/Select.js +27 -5
  62. package/dist/ui-kit/Select/Select.js.map +1 -1
  63. package/dist/ui-kit/Select/SelectPopup.d.ts +1 -0
  64. package/dist/ui-kit/Select/SelectPopup.js +4 -2
  65. package/dist/ui-kit/Select/SelectPopup.js.map +1 -1
  66. package/dist/ui-kit/Select/useSelectPopup.d.ts +2 -1
  67. package/dist/ui-kit/Select/useSelectPopup.js +3 -2
  68. package/dist/ui-kit/Select/useSelectPopup.js.map +1 -1
  69. package/lib/api/LeadServiceAPI.d.ts +4 -0
  70. package/lib/api/LeadServiceAPI.js +13 -6
  71. package/lib/api/LeadServiceAPI.js.map +1 -1
  72. package/lib/common.css +1 -1
  73. package/lib/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  74. package/lib/components/ApplicationForm/ApplicationForm.fixture.d.ts +1 -0
  75. package/lib/components/ApplicationForm/ApplicationForm.fixture.mobile.d.ts +1 -0
  76. package/lib/components/ApplicationForm/ApplicationForm.js +4 -3
  77. package/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
  78. package/lib/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  79. package/lib/components/ApplicationForm/ApplicationFormContent.js +0 -2
  80. package/lib/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
  81. package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +1 -1
  82. package/lib/hooks/useInn.d.ts +7 -0
  83. package/lib/hooks/useInn.js +8 -0
  84. package/lib/hooks/useInn.js.map +1 -0
  85. package/lib/model/FormTypeFieldDef.d.ts +1 -1
  86. package/lib/retail/components/Fields/SelectField.d.ts +1 -0
  87. package/lib/retail/components/Fields/SelectField.js.map +1 -1
  88. package/lib/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  89. package/lib/ui-kit/FormField/Fields/CompanyNameByInnField.js +15 -0
  90. package/lib/ui-kit/FormField/Fields/CompanyNameByInnField.js.map +1 -0
  91. package/lib/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  92. package/lib/ui-kit/FormField/Fields/{RegionPremiumField.js → FullRegionField.js} +4 -3
  93. package/lib/ui-kit/FormField/Fields/FullRegionField.js.map +1 -0
  94. package/lib/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  95. package/lib/ui-kit/FormField/Fields/InnDadataField.js +27 -0
  96. package/lib/ui-kit/FormField/Fields/InnDadataField.js.map +1 -0
  97. package/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  98. package/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.js +17 -0
  99. package/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.js.map +1 -0
  100. package/lib/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  101. package/lib/ui-kit/FormField/getField.js +12 -2
  102. package/lib/ui-kit/FormField/getField.js.map +1 -1
  103. package/lib/ui-kit/FormField/getObjectValidator.js +4 -1
  104. package/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  105. package/lib/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  106. package/lib/ui-kit/FormField/inputColumnStyle.js +1 -1
  107. package/lib/ui-kit/FormField/inputColumnStyle.js.map +1 -1
  108. package/lib/ui-kit/FormField/validators.d.ts +8 -1
  109. package/lib/ui-kit/FormField/validators.js +3 -1
  110. package/lib/ui-kit/FormField/validators.js.map +1 -1
  111. package/lib/ui-kit/Select/Option.d.ts +6 -0
  112. package/lib/ui-kit/Select/Select.d.ts +2 -0
  113. package/lib/ui-kit/Select/Select.js +28 -6
  114. package/lib/ui-kit/Select/Select.js.map +1 -1
  115. package/lib/ui-kit/Select/SelectPopup.d.ts +1 -0
  116. package/lib/ui-kit/Select/SelectPopup.js +4 -2
  117. package/lib/ui-kit/Select/SelectPopup.js.map +1 -1
  118. package/lib/ui-kit/Select/useSelectPopup.d.ts +2 -1
  119. package/lib/ui-kit/Select/useSelectPopup.js +3 -2
  120. package/lib/ui-kit/Select/useSelectPopup.js.map +1 -1
  121. package/mobile/bundle/api/LeadServiceAPI.d.ts +4 -0
  122. package/mobile/bundle/bundle.umd.js +187 -91
  123. package/mobile/bundle/bundle.umd.min.js +1 -1
  124. package/mobile/bundle/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  125. package/mobile/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  126. package/mobile/bundle/hooks/useInn.d.ts +7 -0
  127. package/mobile/bundle/model/FormTypeFieldDef.d.ts +1 -1
  128. package/mobile/bundle/retail/components/Fields/SelectField.d.ts +1 -0
  129. package/mobile/bundle/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  130. package/mobile/bundle/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  131. package/mobile/bundle/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  132. package/mobile/bundle/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  133. package/mobile/bundle/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  134. package/mobile/bundle/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  135. package/mobile/bundle/ui-kit/FormField/validators.d.ts +8 -1
  136. package/mobile/bundle/ui-kit/Select/Option.d.ts +6 -0
  137. package/mobile/bundle/ui-kit/Select/Select.d.ts +2 -0
  138. package/mobile/bundle/ui-kit/Select/SelectPopup.d.ts +1 -0
  139. package/mobile/bundle/ui-kit/Select/useSelectPopup.d.ts +2 -1
  140. package/mobile/dist/api/LeadServiceAPI.d.ts +4 -0
  141. package/mobile/dist/api/LeadServiceAPI.js +13 -6
  142. package/mobile/dist/api/LeadServiceAPI.js.map +1 -1
  143. package/mobile/dist/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  144. package/mobile/dist/components/ApplicationForm/ApplicationForm.js +4 -3
  145. package/mobile/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
  146. package/mobile/dist/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  147. package/mobile/dist/components/ApplicationForm/ApplicationFormContent.js +0 -2
  148. package/mobile/dist/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
  149. package/mobile/dist/hooks/useInn.d.ts +7 -0
  150. package/mobile/dist/hooks/useInn.js +11 -0
  151. package/mobile/dist/hooks/useInn.js.map +1 -0
  152. package/mobile/dist/model/FormTypeFieldDef.d.ts +1 -1
  153. package/mobile/dist/retail/components/Fields/SelectField.d.ts +1 -0
  154. package/mobile/dist/retail/components/Fields/SelectField.js.map +1 -1
  155. package/mobile/dist/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  156. package/mobile/dist/ui-kit/FormField/Fields/CompanyNameByInnField.js +17 -0
  157. package/mobile/dist/ui-kit/FormField/Fields/CompanyNameByInnField.js.map +1 -0
  158. package/mobile/dist/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  159. package/{dist/ui-kit/FormField/Fields/RegionPremiumField.js → mobile/dist/ui-kit/FormField/Fields/FullRegionField.js} +5 -4
  160. package/mobile/dist/ui-kit/FormField/Fields/FullRegionField.js.map +1 -0
  161. package/mobile/dist/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  162. package/mobile/dist/ui-kit/FormField/Fields/InnDadataField.js +29 -0
  163. package/mobile/dist/ui-kit/FormField/Fields/InnDadataField.js.map +1 -0
  164. package/mobile/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  165. package/mobile/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.js +19 -0
  166. package/mobile/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.js.map +1 -0
  167. package/mobile/dist/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  168. package/mobile/dist/ui-kit/FormField/getField.js +12 -2
  169. package/mobile/dist/ui-kit/FormField/getField.js.map +1 -1
  170. package/mobile/dist/ui-kit/FormField/getObjectValidator.js +3 -0
  171. package/mobile/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  172. package/mobile/dist/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  173. package/mobile/dist/ui-kit/FormField/inputColumnStyle.js +1 -1
  174. package/mobile/dist/ui-kit/FormField/inputColumnStyle.js.map +1 -1
  175. package/mobile/dist/ui-kit/FormField/validators.d.ts +8 -1
  176. package/mobile/dist/ui-kit/FormField/validators.js +5 -2
  177. package/mobile/dist/ui-kit/FormField/validators.js.map +1 -1
  178. package/mobile/dist/ui-kit/Select/Option.d.ts +6 -0
  179. package/mobile/dist/ui-kit/Select/Select.d.ts +2 -0
  180. package/mobile/dist/ui-kit/Select/Select.js +27 -5
  181. package/mobile/dist/ui-kit/Select/Select.js.map +1 -1
  182. package/mobile/dist/ui-kit/Select/SelectPopup.d.ts +1 -0
  183. package/mobile/dist/ui-kit/Select/SelectPopup.js +4 -2
  184. package/mobile/dist/ui-kit/Select/SelectPopup.js.map +1 -1
  185. package/mobile/dist/ui-kit/Select/useSelectPopup.d.ts +2 -1
  186. package/mobile/dist/ui-kit/Select/useSelectPopup.js +3 -2
  187. package/mobile/dist/ui-kit/Select/useSelectPopup.js.map +1 -1
  188. package/mobile/lib/api/LeadServiceAPI.d.ts +4 -0
  189. package/mobile/lib/api/LeadServiceAPI.js +13 -6
  190. package/mobile/lib/api/LeadServiceAPI.js.map +1 -1
  191. package/mobile/lib/common.css +1 -1
  192. package/mobile/lib/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  193. package/mobile/lib/components/ApplicationForm/ApplicationForm.js +4 -3
  194. package/mobile/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
  195. package/mobile/lib/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  196. package/mobile/lib/components/ApplicationForm/ApplicationFormContent.js +0 -2
  197. package/mobile/lib/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
  198. package/mobile/lib/hooks/useInn.d.ts +7 -0
  199. package/mobile/lib/hooks/useInn.js +8 -0
  200. package/mobile/lib/hooks/useInn.js.map +1 -0
  201. package/mobile/lib/model/FormTypeFieldDef.d.ts +1 -1
  202. package/mobile/lib/retail/components/Fields/SelectField.d.ts +1 -0
  203. package/mobile/lib/retail/components/Fields/SelectField.js.map +1 -1
  204. package/mobile/lib/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  205. package/mobile/lib/ui-kit/FormField/Fields/CompanyNameByInnField.js +15 -0
  206. package/mobile/lib/ui-kit/FormField/Fields/CompanyNameByInnField.js.map +1 -0
  207. package/mobile/lib/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  208. package/mobile/lib/ui-kit/FormField/Fields/{RegionPremiumField.js → FullRegionField.js} +4 -3
  209. package/mobile/lib/ui-kit/FormField/Fields/FullRegionField.js.map +1 -0
  210. package/mobile/lib/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  211. package/mobile/lib/ui-kit/FormField/Fields/InnDadataField.js +27 -0
  212. package/mobile/lib/ui-kit/FormField/Fields/InnDadataField.js.map +1 -0
  213. package/mobile/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  214. package/mobile/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.js +17 -0
  215. package/mobile/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.js.map +1 -0
  216. package/mobile/lib/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  217. package/mobile/lib/ui-kit/FormField/getField.js +12 -2
  218. package/mobile/lib/ui-kit/FormField/getField.js.map +1 -1
  219. package/mobile/lib/ui-kit/FormField/getObjectValidator.js +4 -1
  220. package/mobile/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  221. package/mobile/lib/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  222. package/mobile/lib/ui-kit/FormField/inputColumnStyle.js +1 -1
  223. package/mobile/lib/ui-kit/FormField/inputColumnStyle.js.map +1 -1
  224. package/mobile/lib/ui-kit/FormField/validators.d.ts +8 -1
  225. package/mobile/lib/ui-kit/FormField/validators.js +3 -1
  226. package/mobile/lib/ui-kit/FormField/validators.js.map +1 -1
  227. package/mobile/lib/ui-kit/Select/Option.d.ts +6 -0
  228. package/mobile/lib/ui-kit/Select/Select.d.ts +2 -0
  229. package/mobile/lib/ui-kit/Select/Select.js +28 -6
  230. package/mobile/lib/ui-kit/Select/Select.js.map +1 -1
  231. package/mobile/lib/ui-kit/Select/SelectPopup.d.ts +1 -0
  232. package/mobile/lib/ui-kit/Select/SelectPopup.js +4 -2
  233. package/mobile/lib/ui-kit/Select/SelectPopup.js.map +1 -1
  234. package/mobile/lib/ui-kit/Select/useSelectPopup.d.ts +2 -1
  235. package/mobile/lib/ui-kit/Select/useSelectPopup.js +3 -2
  236. package/mobile/lib/ui-kit/Select/useSelectPopup.js.map +1 -1
  237. package/mobile/src/api/LeadServiceAPI.ts +28 -3
  238. package/mobile/src/components/ApplicationForm/ApplicationForm.example.json +84 -0
  239. package/mobile/src/components/ApplicationForm/ApplicationForm.tsx +29 -14
  240. package/mobile/src/components/ApplicationForm/ApplicationFormContent.ts +6 -4
  241. package/mobile/src/hooks/useInn.ts +16 -0
  242. package/mobile/src/model/FormTypeFieldDef.ts +2 -1
  243. package/mobile/src/retail/components/Fields/SelectField.tsx +1 -0
  244. package/mobile/src/ui-kit/FormField/Fields/CompanyNameByInnField.tsx +24 -0
  245. package/mobile/src/ui-kit/FormField/Fields/{RegionPremiumField.tsx → FullRegionField.tsx} +7 -2
  246. package/mobile/src/ui-kit/FormField/Fields/InnDadataField.tsx +47 -0
  247. package/mobile/src/ui-kit/FormField/Fields/PartnerSymbolCodeField.tsx +47 -0
  248. package/mobile/src/ui-kit/FormField/NameFieldDef.ts +5 -1
  249. package/mobile/src/ui-kit/FormField/getField.tsx +15 -2
  250. package/mobile/src/ui-kit/FormField/getObjectValidator.tsx +4 -0
  251. package/mobile/src/ui-kit/FormField/inputColumnStyle.tsx +1 -1
  252. package/mobile/src/ui-kit/FormField/validators.ts +13 -1
  253. package/mobile/src/ui-kit/Select/Option.ts +6 -0
  254. package/mobile/src/ui-kit/Select/Select.tsx +71 -17
  255. package/mobile/src/ui-kit/Select/SelectPopup.tsx +20 -2
  256. package/mobile/src/ui-kit/Select/useSelectPopup.tsx +4 -0
  257. package/package.json +2 -2
  258. package/src/api/LeadServiceAPI.ts +28 -3
  259. package/src/components/ApplicationForm/ApplicationForm.example.json +84 -0
  260. package/src/components/ApplicationForm/ApplicationForm.fixture.mobile.tsx +47 -0
  261. package/src/components/ApplicationForm/ApplicationForm.fixture.tsx +47 -0
  262. package/src/components/ApplicationForm/ApplicationForm.tsx +29 -14
  263. package/src/components/ApplicationForm/ApplicationFormContent.ts +6 -4
  264. package/src/hooks/useInn.ts +16 -0
  265. package/src/model/FormTypeFieldDef.ts +2 -1
  266. package/src/retail/components/Fields/SelectField.tsx +1 -0
  267. package/src/ui-kit/FormField/Fields/CompanyNameByInnField.tsx +24 -0
  268. package/src/ui-kit/FormField/Fields/{RegionPremiumField.tsx → FullRegionField.tsx} +7 -2
  269. package/src/ui-kit/FormField/Fields/InnDadataField.tsx +47 -0
  270. package/src/ui-kit/FormField/Fields/PartnerSymbolCodeField.tsx +47 -0
  271. package/src/ui-kit/FormField/NameFieldDef.ts +5 -1
  272. package/src/ui-kit/FormField/getField.tsx +15 -2
  273. package/src/ui-kit/FormField/getObjectValidator.tsx +4 -0
  274. package/src/ui-kit/FormField/inputColumnStyle.tsx +1 -1
  275. package/src/ui-kit/FormField/validators.ts +13 -1
  276. package/src/ui-kit/Select/Option.ts +6 -0
  277. package/src/ui-kit/Select/Select.tsx +71 -17
  278. package/src/ui-kit/Select/SelectPopup.tsx +20 -2
  279. package/src/ui-kit/Select/useSelectPopup.tsx +4 -0
  280. package/bundle/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  281. package/dist/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  282. package/dist/ui-kit/FormField/Fields/RegionPremiumField.js.map +0 -1
  283. package/lib/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  284. package/lib/ui-kit/FormField/Fields/RegionPremiumField.js.map +0 -1
  285. package/mobile/bundle/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  286. package/mobile/dist/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  287. package/mobile/dist/ui-kit/FormField/Fields/RegionPremiumField.js.map +0 -1
  288. package/mobile/lib/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  289. package/mobile/lib/ui-kit/FormField/Fields/RegionPremiumField.js.map +0 -1
@@ -1006,7 +1006,7 @@
1006
1006
 
1007
1007
  function LeadServiceAPI() {
1008
1008
  async function send(body, isIndividualType = false) {
1009
- const { typeForm, region, phone = '', email, birthday, desiredMeetingDate, inn, addressBranch, secondaryPhone = '', bankEmpolee, applicationDate, serviceDirection, ...staticBody } = body;
1009
+ const { typeForm, region, phone = '', email, birthday, desiredMeetingDate, inn, innDadata, fullRegion, addressBranch, secondaryPhone = '', bankEmpolee, applicationDate, serviceDirection, partnerSymbolCode, companyNameByInn, ...staticBody } = body;
1010
1010
  const isNaturalPerson = isIndividualType && serviceDirection !== 'Юридическое лицо / ИП';
1011
1011
  const url = `${API_BASE_URI$1}${isNaturalPerson ? '/lead' : '/sendcorporatelead'}`;
1012
1012
  const submitBody = {
@@ -1024,6 +1024,7 @@
1024
1024
  applicationDate,
1025
1025
  ...getSecondaryPhone(secondaryPhone),
1026
1026
  }),
1027
+ ...formatPFForm(typeForm, { innDadata, fullRegion, partnerSymbolCode, companyNameByInn }),
1027
1028
  ...staticBody,
1028
1029
  };
1029
1030
  try {
@@ -1054,11 +1055,17 @@
1054
1055
  const getEmail = (email, isNaturalPerson = true) => ({
1055
1056
  [isNaturalPerson ? 'email' : 'mail']: email,
1056
1057
  });
1057
- const getSecondaryPhone = (secondaryPhone = '') => {
1058
- return !secondaryPhone || secondaryPhone === '+7 ('
1059
- ? {}
1060
- : { secondaryPhoneNumber: formatPhone(secondaryPhone) };
1061
- };
1058
+ const getSecondaryPhone = (secondaryPhone = '') => !secondaryPhone || secondaryPhone === '+7 ('
1059
+ ? {}
1060
+ : { secondaryPhoneNumber: formatPhone(secondaryPhone) };
1061
+ const formatPFForm = (typeForm, data) => typeForm === 'PF'
1062
+ ? {
1063
+ inn: data?.innDadata,
1064
+ region: data?.fullRegion,
1065
+ partnerComments: data?.partnerSymbolCode,
1066
+ fullname: data?.companyNameByInn,
1067
+ }
1068
+ : {};
1062
1069
 
1063
1070
  const handleAspects = async ({ aspectsAttributes, aspects, ev }) => {
1064
1071
  for (const { aspectName, params } of aspectsAttributes ?? []) {
@@ -1249,6 +1256,22 @@
1249
1256
 
1250
1257
  const renderErrorText = (error) => (jsx("div", { className: "h-6", children: error ? (jsx(Text, { size: "text-xs", font: "font-light", color: "text-error", children: error })) : null }));
1251
1258
 
1259
+ const debounce = (fn, delay = 600) => {
1260
+ let timerId;
1261
+ const debouncedCallback = (...args) => {
1262
+ debouncedCallback.dispose();
1263
+ timerId = setTimeout(() => {
1264
+ fn(...args);
1265
+ }, delay);
1266
+ };
1267
+ debouncedCallback.dispose = () => {
1268
+ if (timerId) {
1269
+ clearTimeout(timerId);
1270
+ }
1271
+ };
1272
+ return debouncedCallback;
1273
+ };
1274
+
1252
1275
  const inputValidStyle = 'border border-solid outline-none border-gray hover:border-primary-hover active:border-primary-text focus:border-primary-text rounded';
1253
1276
 
1254
1277
  const getValidStyle = (valid) => (valid ? inputValidStyle : 'border-error');
@@ -1309,16 +1332,17 @@
1309
1332
  return options.filter((_) => _.text?.toLocaleLowerCase().includes(query?.trim().toLocaleLowerCase()));
1310
1333
  };
1311
1334
 
1312
- const SelectPopup = JSX(({ popupRef, options, value, query, onChange, iconVersion }) => options?.length ? (jsx("div", { className: "bg-white text-l max-h-64 overflow-y-auto overflow-x-hidden rounded-md shadow-2xl", role: "list", ref: popupRef, children: filterOptions(options, query).map((option) => (jsxs("div", { className: "flex px-m py-s cursor-pointer hover:bg-main-divider pr-5xl relative", role: "listitem", "aria-selected": option.key === value?.key, onClick: (e) => {
1335
+ const SelectPopup = JSX(({ popupRef, options, value, query, onChange, iconVersion, onChangeQuery }) => options?.length ? (jsx("div", { className: "bg-white text-l max-h-64 overflow-y-auto overflow-x-hidden rounded-md shadow-2xl", role: "list", ref: popupRef, children: filterOptions(options, query).map((option) => (jsxs("div", { className: "flex px-m py-s cursor-pointer hover:bg-main-divider pr-5xl relative", role: "listitem", "aria-selected": option.key === value?.key, onClick: (e) => {
1313
1336
  e.stopPropagation();
1314
1337
  if (onChange) {
1338
+ onChangeQuery?.('');
1315
1339
  onChange(option);
1316
1340
  }
1317
- }, children: [jsx("span", { className: "min-h-6", children: formatOption(option) }), jsx(Icon, { name: "DoneSimpleIcon", width: "16", height: "16", iconVersion: iconVersion, className: style('absolute right-4 pt-3xs', {
1341
+ }, children: [option?.innDaData ? (jsxs("span", { children: [jsx(Text, { size: "text-s", children: option?.innDaData?.companyName }), jsxs("div", { className: "space-x-2", children: [jsx(Text, { size: "text-s", font: "font-light", children: formatOption(option) }), jsx(Text, { size: "text-s", font: "font-light", children: option?.innDaData?.companyAddress })] })] })) : (jsx("span", { className: "min-h-6", children: formatOption(option) })), jsx(Icon, { name: "DoneSimpleIcon", width: "16", height: "16", iconVersion: iconVersion, className: style('absolute right-4 pt-3xs', {
1318
1342
  hidden: option.key !== value?.key,
1319
1343
  }) })] }, option.key))) })) : null);
1320
1344
 
1321
- function useSelectPopup({ isOpen, options, value, query, onChange, onClose, iconVersion, }) {
1345
+ function useSelectPopup({ isOpen, options, value, query, onChange, onClose, iconVersion, onChangeQuery, }) {
1322
1346
  const popup = usePopupManager();
1323
1347
  const close = useCallback(() => {
1324
1348
  popup.close();
@@ -1327,6 +1351,7 @@
1327
1351
  const handleChange = useCallback((option) => {
1328
1352
  close();
1329
1353
  onChange && onChange(option);
1354
+ onChangeQuery && onChangeQuery('');
1330
1355
  }, [close, onChange]);
1331
1356
  const inputRef = useRef(null);
1332
1357
  const popupRef = useOutsideClick(close);
@@ -1337,7 +1362,7 @@
1337
1362
  const inputElement = inputRef.current;
1338
1363
  const { top, left, width, height } = inputElement.getBoundingClientRect();
1339
1364
  popup.open({
1340
- popup: (jsx(SelectPopup, { popupRef: popupRef, options: options, value: value, query: query, onChange: handleChange, iconVersion: iconVersion })),
1365
+ popup: (jsx(SelectPopup, { popupRef: popupRef, options: options, value: value, query: query, onChange: handleChange, iconVersion: iconVersion, onChangeQuery: onChangeQuery })),
1341
1366
  top: top + window.scrollY + height,
1342
1367
  left,
1343
1368
  width,
@@ -1346,19 +1371,26 @@
1346
1371
  return inputRef;
1347
1372
  }
1348
1373
 
1349
- const Select = JSX(({ className, label, options = [], value, valid = true, isBorder = true, placeholder = '', isSearch = false, disabled = false, iconVersion = 'black', onChange, }) => {
1374
+ const Select = JSX(({ className, label, options = [], value, valid = true, isBorder = true, placeholder = '', isSearch = false, isManualInput = false, disabled = false, iconVersion = 'black', onChange, onSearchQuery, }) => {
1350
1375
  const [isOpen, { setFalse: close, setTrue: open }] = useBool();
1351
1376
  const [query, setQuery] = useState('');
1352
- const isDisabled = getDisabled(disabled, options.length);
1377
+ const isDisabled = getDisabled(disabled, options.length, isManualInput);
1378
+ const isIconHidden = getIconHidden(isManualInput, options);
1353
1379
  const hasOpen = isOpen && !isDisabled;
1380
+ const debouncedOnSearchQuery = useMemo(() => onSearchQuery && getDebouncedSearchQuery(onSearchQuery), [onSearchQuery]);
1354
1381
  const handleOpen = useCallback(() => {
1355
1382
  if (isDisabled) {
1356
1383
  return;
1357
1384
  }
1358
1385
  open();
1359
1386
  }, [isDisabled]);
1387
+ const handleChangeQuery = (newQuery) => {
1388
+ setQuery(newQuery);
1389
+ setOption(newQuery, onChange);
1390
+ debouncedOnSearchQuery && debouncedOnSearchQuery(newQuery);
1391
+ };
1360
1392
  const handleClose = useCallback(() => {
1361
- setQuery('');
1393
+ !isManualInput && setQuery('');
1362
1394
  close();
1363
1395
  }, []);
1364
1396
  const inputRef = useSelectPopup({
@@ -1369,12 +1401,26 @@
1369
1401
  onChange,
1370
1402
  onClose: handleClose,
1371
1403
  iconVersion,
1404
+ onChangeQuery: setQuery,
1372
1405
  });
1373
- return (jsxs("div", { className: style('space-y-xs', className), children: [renderLabel$1(label), jsxs("div", { className: style('relative', hasOpen ? 'z-20' : 'z-10'), ref: inputRef, children: [jsxs("div", { className: style('h-14 [&>*]:p-m pr-6 text-l flex items-center justify-between text-primary-text relative z-10 overflow-hidden', getStyle(isBorder, valid, isDisabled)), onClick: hasOpen ? handleClose : handleOpen, children: [jsx("p", { className: "line-clamp-2 text-ellipsis", children: formatOption(value) || placeholder }), renderIcon$1(hasOpen, iconVersion)] }), isSearch && hasOpen ? (jsx("div", { className: style('absolute top-0 w-full z-20'), children: jsx(Input, { type: "text", value: query, autoFocus: true, disabled: isDisabled, onChange: setQuery }) })) : null] })] }));
1406
+ return (jsxs("div", { className: style('space-y-xs', className), children: [renderLabel$1(label), jsxs("div", { className: style('relative', hasOpen ? 'z-20' : 'z-10'), ref: inputRef, children: [jsxs("div", { className: style('h-14 [&>*]:p-m pr-6 text-l flex items-center justify-between text-primary-text relative z-10 overflow-hidden', getStyle(isBorder, valid, isDisabled)), onClick: hasOpen ? handleClose : handleOpen, children: [jsx("p", { className: "line-clamp-2 text-ellipsis", children: useRenderOptionText({ isManualInput, query, value, placeholder }) }), isIconHidden ? '' : renderIcon$1(hasOpen, iconVersion)] }), isSearch && hasOpen ? renderSearchInput(query, isDisabled, handleChangeQuery) : null] })] }));
1374
1407
  });
1408
+ const useRenderOptionText = (data) => useMemo(() => {
1409
+ if (data.isManualInput && data.query) {
1410
+ return data.query;
1411
+ }
1412
+ return formatOption(data.value) || data.placeholder;
1413
+ }, [data.isManualInput, data.query, data.value, data.placeholder]);
1414
+ const renderSearchInput = (query, isDisabled, onChangeQuery) => (jsx("div", { className: style('absolute top-0 w-full z-20'), children: jsx(Input, { type: "text", value: query, autoFocus: true, disabled: isDisabled, onChange: (value) => onChangeQuery(value) }) }));
1375
1415
  const renderIcon$1 = (isOpen, iconVersion) => (jsx(Icon, { className: style('absolute right-0 flex self-center', { 'rotate-180': !isOpen }), iconVersion: iconVersion, name: "ArrowUpIcon", width: "16", height: "16" }));
1376
1416
  const getStyle = (isBorder, valid, disabled) => style(isBorder ? 'border rounded-md ' : '', isBorder && !disabled ? 'hover:border-primary-hover' : '', disabled ? 'bg-main-divider' : 'cursor-pointer ', valid ? 'border-gray' : 'border-error');
1377
- const getDisabled = (disabled, length) => disabled || length === 0;
1417
+ // TODO Нужен рефактор и декомпозиция компонента getDisabled, setOption, getIconHidden
1418
+ const getDisabled = (disabled, length, isManualInput) => disabled || (!isManualInput && length === 0);
1419
+ const setOption = (query, onChange) => {
1420
+ onChange && query.trim() !== '' && onChange({ key: query, text: query, innDaData: {} });
1421
+ };
1422
+ const getIconHidden = (isManualInput, options) => isManualInput && !options.length;
1423
+ const getDebouncedSearchQuery = (onSearchQuery) => debounce((searchValue) => onSearchQuery(searchValue), 300);
1378
1424
 
1379
1425
  const SelectControl = JSX(({ className = '', label, error, errors, ...rest }) => (jsxs("div", { className: className, children: [jsx(Select, { ...rest, valid: !error, label: getRequiredLabel({ label, errors }) }), renderErrorText(error)] })));
1380
1426
 
@@ -1911,6 +1957,17 @@
1911
1957
 
1912
1958
  const CommentField = JSX(({ field, input }) => (jsx(InputControl, { className: "col-span-2", ...field(input?.name ?? ''), placeholder: "\u0412\u0430\u0448\u0435 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0435", isTextarea: true })));
1913
1959
 
1960
+ const CompanyNameByInnField = JSX(({ field, input }) => {
1961
+ const fieldInn = field('innDadata');
1962
+ useEffect(() => {
1963
+ if (fieldInn?.value?.key !== '') {
1964
+ const companyName = fieldInn?.value?.innDaData?.companyName;
1965
+ companyName && field?.('companyNameByInn')?.onChange?.(companyName);
1966
+ }
1967
+ }, [fieldInn?.value]);
1968
+ return (jsx(InputControl, { maxLength: 60, label: "\u041F\u043E\u043B\u043D\u043E\u0435 \u043D\u0430\u0438\u043C\u0435\u043D\u043E\u0432\u0430\u043D\u0438\u0435", ...field(input?.name ?? ''), ...input }));
1969
+ });
1970
+
1914
1971
  const DesiredMeetingDateField = JSX(({ field, input }) => (jsx(DatePickerControl, { label: "\u0416\u0435\u043B\u0430\u0435\u043C\u0430\u044F \u0434\u0430\u0442\u0430 \u0432\u0441\u0442\u0440\u0435\u0447\u0438", ...field(input?.name ?? '') })));
1915
1972
 
1916
1973
  const EmailField$1 = JSX(({ field, input }) => {
@@ -1931,6 +1988,89 @@
1931
1988
 
1932
1989
  const FullNameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0424\u0418\u041E", ...field(input?.name ?? ''), ...input })));
1933
1990
 
1991
+ const FullRegionField = JSX(({ field, input, params }) => {
1992
+ const isPremium = params?.isPremium;
1993
+ const branchByRegions = useBranchesByRegions(isPremium);
1994
+ const regions = useMemo(() => branchByRegions?.map(({ region }) => ({
1995
+ key: region,
1996
+ text: region,
1997
+ })), [branchByRegions]);
1998
+ return (jsx(SelectControl, { label: "\u0420\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", options: regions, ...field(input?.name ?? '') }));
1999
+ });
2000
+
2001
+ function useAsyncEffect(effect, deps) {
2002
+ useEffect(() => {
2003
+ const free = effect();
2004
+ return () => {
2005
+ free.then((_) => {
2006
+ _ instanceof Function && _();
2007
+ });
2008
+ };
2009
+ }, deps);
2010
+ }
2011
+
2012
+ const DEFAULT_HINTS_COUNT = 10;
2013
+ const defaultResponseItemHandler = (item) => item?.value || '';
2014
+ const getResponseHandler = (itemHandler) => (response) => {
2015
+ const responseData = response?.suggestions || [];
2016
+ return responseData.map((item) => {
2017
+ const value = itemHandler(item);
2018
+ return {
2019
+ ...item,
2020
+ processedValue: value,
2021
+ };
2022
+ });
2023
+ };
2024
+ const getDaDataHints = (options) => {
2025
+ const { url, query, queryPrefix, requestData = {}, responseItemHandler = defaultResponseItemHandler, } = options;
2026
+ const responseHandler = getResponseHandler(responseItemHandler);
2027
+ const queryPrefixValue = queryPrefix ? `${queryPrefix}, ` : '';
2028
+ const combinedQuery = `${queryPrefixValue}${query}`;
2029
+ return globalThis
2030
+ ?.fetch?.(`/api/v1/suggestions/${url}`, {
2031
+ method: 'POST',
2032
+ mode: 'cors',
2033
+ headers: {
2034
+ 'Content-Type': 'application/json',
2035
+ },
2036
+ body: JSON.stringify({
2037
+ count: DEFAULT_HINTS_COUNT,
2038
+ ...requestData,
2039
+ query: combinedQuery,
2040
+ }),
2041
+ })
2042
+ .then((response) => response.json())
2043
+ .then(responseHandler);
2044
+ };
2045
+
2046
+ const INN_DADATA_URL = 'suggest/party';
2047
+ const useInn = async (searchQuery) => (await getDaDataHints({ url: INN_DADATA_URL, query: searchQuery })).map((_) => ({
2048
+ fullName: _?.value,
2049
+ address: _?.data?.address?.value,
2050
+ inn: _?.data?.inn,
2051
+ }));
2052
+
2053
+ const InnDadataField = JSX(({ field, input }) => {
2054
+ const [options, setOptions] = useState([]);
2055
+ const [searchQuery, setSearchQuery] = useState('');
2056
+ useAsyncEffect(async () => {
2057
+ const fieldInns = useInn(searchQuery);
2058
+ setOptions(await fieldInns);
2059
+ return options;
2060
+ }, [searchQuery]);
2061
+ const getOptions = useMemo(() => {
2062
+ return (options || []).map((item) => ({
2063
+ key: item?.inn ?? '',
2064
+ text: item?.inn,
2065
+ innDaData: {
2066
+ companyName: item?.fullName,
2067
+ companyAddress: item?.address,
2068
+ },
2069
+ }));
2070
+ }, [options]);
2071
+ return (jsx(SelectControl, { label: "\u0418\u041D\u041D", placeholder: "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0418\u041D\u041D", options: getOptions, ...field(input?.name ?? ''), isSearch: true, isManualInput: true, onSearchQuery: setSearchQuery }));
2072
+ });
2073
+
1934
2074
  const InnField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0418\u041D\u041D", isInteger: true, maxLength: 12, ...input, ...field(input?.name ?? '') })));
1935
2075
 
1936
2076
  const SVG = JSX(({ className, viewBox, fill = 'none', width, height, paths, ...commonOptions }) => {
@@ -2005,6 +2145,19 @@
2005
2145
 
2006
2146
  const PartnerCommentsField = JSX(({ field, input }) => (jsx(InputControl, { ...field(input?.name ?? ''), placeholder: "\u0423\u043A\u0430\u0436\u0438\u0442\u0435 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u0443\u044E\u0449\u0438\u0439 \u0432\u0430\u0441 \u0432\u043E\u043F\u0440\u043E\u0441", isTextarea: true, ...input })));
2007
2147
 
2148
+ const PartnerSymbolCodeField = UniBlock(({ field, input, source }) => {
2149
+ const agentsList = source?.agentsList;
2150
+ const { value: partnerCode } = field('partnerSymbolCode');
2151
+ const [symbolCodeError, setSymbolCodeError] = useState('');
2152
+ const isPartnerCodeExist = agentsList?.some((item) => item?.symbolCode === partnerCode);
2153
+ useEffect(() => {
2154
+ setSymbolCodeError(partnerCode && !isPartnerCodeExist
2155
+ ? 'ID партнера не найден. Обратитесь к своему менеджеру'
2156
+ : '');
2157
+ }, [partnerCode]);
2158
+ return (jsx(InputControl, { label: "\u0418\u0434\u0435\u043D\u0442\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 \u043F\u0430\u0440\u0442\u043D\u0435\u0440\u0430", isInteger: true, maxLength: 12, ...input, ...field(input?.name ?? ''), error: symbolCodeError || field('partnerSymbolCode')?.error }));
2159
+ });
2160
+
2008
2161
  const isPlaceholder = (_) => _ === '_';
2009
2162
  const isDigit = (_) => /\d/.test(_);
2010
2163
  const isWildcard = (_) => isPlaceholder(_) || isDigit(_);
@@ -2058,15 +2211,6 @@
2058
2211
  return (jsx(SelectControl, { label: input?.label || 'Филиал', placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0444\u0438\u043B\u0438\u0430\u043B", isSearch: true, options: useMemo(() => regions?.map(({ code = '', name = '' }) => ({ key: code, text: name })), [regions]), ...field(input?.name ?? '') }));
2059
2212
  });
2060
2213
 
2061
- const RegionPremiumField = JSX(({ field, input }) => {
2062
- const branchByRegions = useBranchesByRegions(true);
2063
- const regions = useMemo(() => branchByRegions?.map(({ region }) => ({
2064
- key: region,
2065
- text: region,
2066
- })), [branchByRegions]);
2067
- return (jsx(SelectControl, { label: "\u0420\u0435\u0433\u0438\u043E\u043D", placeholder: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0440\u0435\u0433\u0438\u043E\u043D", options: regions, ...field(input?.name ?? '') }));
2068
- });
2069
-
2070
2214
  const RepresentativeNameField = JSX(({ field, input }) => (jsx(InputControl, { label: "\u0424\u0418\u041E \u043F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u0435\u043B\u044F", ...input, ...field('representativeName') })));
2071
2215
 
2072
2216
  const withValidator = (props, validator) => {
@@ -2088,12 +2232,14 @@
2088
2232
  const defaultValidator = (errorMsg) => required(errorMsg ?? ERROR_MESSAGE$1);
2089
2233
  const defaultSelectValidator = (errorMsg) => validator((_) => _?.key && _?.key !== '')(errorMsg ?? ERROR_MESSAGE$1);
2090
2234
  const nameValidator = (errorMsg) => validator((_) => typeof _ === 'string' && _.length > 1 && isCyrillic(_))(errorMsg ?? ERROR_MESSAGE$1);
2091
- const innValidator = (errorMsg) => validator((_) => typeof _ === 'string' && (_.length === 10 || _.length === 12))(errorMsg);
2235
+ const innValidator = (errorMsg) => validator((_) => isValidInnLength(_))(errorMsg);
2236
+ const innDadataValidator = (errorMsg) => validator((_) => Boolean(_?.text) && isValidInnLength(_.text))(errorMsg);
2092
2237
  const phoneValidate = (email) => /^(\+7)?[\s-]?\(?[0-9]{3}\)?[\s-]?[0-9]{3}[\s-]?[0-9]{2}[\s-]?[0-9]{2}$/.test(email);
2093
2238
  const phoneValidator = (errorMsg) => validator(phoneValidate)(errorMsg);
2094
2239
  const agreementValidator = validator((_) => typeof _ === 'boolean' && _)('Согласие обязательно');
2095
2240
  const emailValidate = (email) => /^[^\s@]+@[^\s@]+\.[a-zA-Z]{2,4}$/.test(email);
2096
2241
  const emailValidator = (errorMsg) => validator((_) => emailValidate(_))(errorMsg);
2242
+ const isValidInnLength = (value) => typeof value === 'string' && (value.length === 10 || value.length === 12);
2097
2243
 
2098
2244
  const validatorObj$1 = {
2099
2245
  fullName: defaultValidator(),
@@ -2124,6 +2270,9 @@
2124
2270
  typeForm: defaultValidator(),
2125
2271
  consentToReceiveMaterials: agreementValidator,
2126
2272
  consentDataProcessing: agreementValidator,
2273
+ partnerSymbolCode: defaultValidator(),
2274
+ innDadata: innDadataValidator('Укажите ИНН'),
2275
+ companyNameByInn: defaultValidator(),
2127
2276
  };
2128
2277
  const getFormValidator = (fieldDefs, externalValidatorObj = {}) => {
2129
2278
  const requiredFields = fieldDefs.filter((_) => Boolean(_?.required && _?.name));
@@ -2219,6 +2368,9 @@
2219
2368
  const PRODUCT_REF = {
2220
2369
  $ref: '/wcms-resources/outservice-productlist.json',
2221
2370
  };
2371
+ const AGENTS_REF = {
2372
+ $ref: '/wcms-resources/agenty-dlya-rko.json',
2373
+ };
2222
2374
  const InputsMap$1 = {
2223
2375
  fullName: FullNameField,
2224
2376
  addressBranch: AddressBranchField,
@@ -2241,7 +2393,7 @@
2241
2393
  bankEmpolee: BankEmpoleeField,
2242
2394
  secondaryPhone: SecondaryPhoneField,
2243
2395
  applicationDate: ApplicationDateField,
2244
- region: (props) => getPremium(props?.params?.typeForm) ? (jsx(RegionPremiumField, { ...props })) : (jsx(RegionField, { ...props })),
2396
+ region: (props) => getPremium(props?.params?.typeForm) ? (jsx(FullRegionField, { ...props })) : (jsx(RegionField, { ...props })),
2245
2397
  consentToReceiveMaterials: ConsentToReceiveMaterialsField,
2246
2398
  sufferedFrom: SufferedFromField,
2247
2399
  situationDescription: SituationDescriptionField,
@@ -2255,6 +2407,10 @@
2255
2407
  email: EmailField$1,
2256
2408
  inn: InnField,
2257
2409
  comment: CommentField,
2410
+ fullRegion: FullRegionField,
2411
+ partnerSymbolCode: (props) => (jsx(PartnerSymbolCodeField, { ...props, source: AGENTS_REF })),
2412
+ innDadata: InnDadataField,
2413
+ companyNameByInn: CompanyNameByInnField,
2258
2414
  };
2259
2415
  const getField = (field, params, externalInputs = {}) => (input, i) => {
2260
2416
  const fieldsRegister = {
@@ -2265,7 +2421,7 @@
2265
2421
  return shouldRenderField({ input, field }) && Component ? (jsx("div", { children: jsx(Component, { field: field, input: input, params: params }) }, i)) : null;
2266
2422
  };
2267
2423
 
2268
- const inputColumnStyles = (column) => column === 2 ? '@xl:grid-cols-2' : '';
2424
+ const inputColumnStyles = (column) => column === 2 ? '@xl:grid-cols-2' : '@xl:grid-cols-1 gap-x-0';
2269
2425
 
2270
2426
  const renderTitle = (title) => title ? (jsx("div", { className: "@xl:text-center @xl:col-span-2 mb-m", children: jsx(Text, { size: "text-h6", children: title }) })) : null;
2271
2427
 
@@ -2415,7 +2571,7 @@
2415
2571
  const renderContacts = () => (jsxs("div", { className: "space-y-m", children: [jsx(Heading, { headingType: "h6", title: "\u0418\u043B\u0438 \u0441\u0432\u044F\u0436\u0438\u0442\u0435\u0441\u044C \u0441 \u043D\u0430\u043C\u0438 \u0443\u0434\u043E\u0431\u043D\u044B\u043C \u0441\u043F\u043E\u0441\u043E\u0431\u043E\u043C", className: "@xl:text-center" }), jsxs("div", { className: "flex sm:justify-center gap-xl", children: [jsxs("a", { className: "flex gap-s items-center text-primary-text no-underline", href: `tel:8 (800) 200-78-70`, "aria-label": "\u0442\u0435\u043B\u0435\u0444\u043E\u043D 8 (800) 200-78-70", children: [jsx(Img, { image: { icon: 'PhoneIcon' }, width: "24", height: "24" }), jsx("span", { children: "8 (800) 200-78-70" })] }), jsxs("a", { className: "flex gap-s items-center text-primary-text no-underline", "aria-label": "\u043F\u043E\u0447\u0442\u0430 ved@rshb.ru", href: `mailto:ved@rshb.ru`, children: [jsx(Img, { image: { icon: 'MailIcon' }, width: "24", height: "24" }), jsx("span", { children: "ved@rshb.ru" })] })] })] }));
2416
2572
 
2417
2573
  const API = LeadServiceAPI();
2418
- const ApplicationForm = JSX(({ className, title, typeForm = '', sections = [], button, link, endpoint, additionalParams, isContacts, data, ...rest }) => {
2574
+ const ApplicationForm = UniBlock(({ className, title, typeForm = '', sections = [], button, link, endpoint, additionalParams, isContacts, data, ...rest }) => {
2419
2575
  const inputs = useMemo(() => (sections?.flatMap((_) => _?.inputs) || []), [sections]);
2420
2576
  const initialFormState = useMemo(() => getInitialFormState$2(inputs, typeForm), [inputs, typeForm]);
2421
2577
  const formValidator = useMemo(() => getFormValidator(inputs), [inputs]);
@@ -2435,8 +2591,9 @@
2435
2591
  onSubmit: handleSubmit,
2436
2592
  });
2437
2593
  const fieldName = getConsentDataProcessing(inputs)?.name;
2438
- return (jsxs(ApplicationFormLayout, { className: style('container space-y-m', className), title: title, ...rest, children: [jsxs("form", { onSubmit: onSubmit, children: [sections.map((_, i) => (jsxs("div", { className: style(inputColumnStyles(_.columns), 'grid gap-x-m'), children: [renderTitle(_.title), (_?.inputs || [])?.map(getField(field, { typeForm }))] }, `section-${i}`))), renderAgreementSubmit(fieldName ? field('consentDataProcessing') : undefined, link, button)] }), isContacts ? renderContacts() : null] }));
2594
+ return (jsxs(ApplicationFormLayout, { className: style('container space-y-m', className), title: title, ...rest, children: [jsxs("form", { onSubmit: onSubmit, children: [renderSections(sections, field, { typeForm, additionalParams }), renderAgreementSubmit(fieldName ? field('consentDataProcessing') : undefined, link, button)] }), isContacts ? renderContacts() : null] }));
2439
2595
  });
2596
+ const renderSections = (sections, field, { typeForm, additionalParams }) => sections.map((_, i) => (jsxs("div", { className: style(inputColumnStyles(_.columns), 'grid gap-x-m'), children: [renderTitle(_.title), (_?.inputs || [])?.map(getField(field, { typeForm, ...additionalParams }))] }, `section-${i}`)));
2440
2597
 
2441
2598
  const NoConsentDialog = JSX(({ attempts, onClose = noop }) => {
2442
2599
  const navigator = locationNavigator();
@@ -2768,56 +2925,6 @@
2768
2925
  return (jsxs("div", { className: "flex gap-lg items-center rounded-md bg-main-gray p-4xl", children: [jsxs("div", { className: "flex flex-col justify-around w-full", children: [jsx("p", { className: "mb-m text-xl", children: "\u0417\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 \u0447\u0435\u0440\u0435\u0437 \u0413\u043E\u0441\u0443\u0441\u043B\u0443\u0433\u0438" }), jsxs("ul", { className: "list-disc list-inside mb-4xl", children: [jsx("li", { children: "\u0412\u0435\u0440\u043E\u044F\u0442\u043D\u043E\u0441\u0442\u044C \u043E\u0434\u043E\u0431\u0440\u0435\u043D\u0438\u044F \u0432\u044B\u0448\u0435" }), jsx("li", { children: "\u0411\u0435\u0437 \u0441\u043F\u0440\u0430\u0432\u043E\u043A \u043E \u0434\u043E\u0445\u043E\u0434\u0430\u0445 \u0438 \u0442\u0440\u0443\u0434\u043E\u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0435" }), jsx("li", { children: "\u0421 \u0437\u0430\u0449\u0438\u0442\u043E\u0439 \u0412\u0430\u0448\u0438\u0445 \u0434\u0430\u043D\u043D\u044B\u0445" })] }), jsx(Img, { className: "block mb-xl self-center @md:hidden", image: { icon: 'GosUslugiIcon', iconVersion: 'normal' }, height: "80", width: "80" }), jsx(Button, { type: "button", onClick: handleAuth, className: "w-full @md:w-fit", children: "\u0417\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C" })] }), jsx(Img, { className: "hidden @md:block", image: { icon: 'GosUslugiIcon', iconVersion: 'normal' }, height: "164" })] }));
2769
2926
  });
2770
2927
 
2771
- const debounce = (fn, delay = 600) => {
2772
- let timerId;
2773
- const debouncedCallback = (...args) => {
2774
- debouncedCallback.dispose();
2775
- timerId = setTimeout(() => {
2776
- fn(...args);
2777
- }, delay);
2778
- };
2779
- debouncedCallback.dispose = () => {
2780
- if (timerId) {
2781
- clearTimeout(timerId);
2782
- }
2783
- };
2784
- return debouncedCallback;
2785
- };
2786
-
2787
- const DEFAULT_HINTS_COUNT = 10;
2788
- const defaultResponseItemHandler = (item) => item?.value || '';
2789
- const getResponseHandler = (itemHandler) => (response) => {
2790
- const responseData = response?.suggestions || [];
2791
- return responseData.map((item) => {
2792
- const value = itemHandler(item);
2793
- return {
2794
- ...item,
2795
- processedValue: value,
2796
- };
2797
- });
2798
- };
2799
- const getDaDataHints = (options) => {
2800
- const { url, query, queryPrefix, requestData = {}, responseItemHandler = defaultResponseItemHandler, } = options;
2801
- const responseHandler = getResponseHandler(responseItemHandler);
2802
- const queryPrefixValue = queryPrefix ? `${queryPrefix}, ` : '';
2803
- const combinedQuery = `${queryPrefixValue}${query}`;
2804
- return globalThis
2805
- ?.fetch?.(`/api/v1/suggestions/${url}`, {
2806
- method: 'POST',
2807
- mode: 'cors',
2808
- headers: {
2809
- 'Content-Type': 'application/json',
2810
- },
2811
- body: JSON.stringify({
2812
- count: DEFAULT_HINTS_COUNT,
2813
- ...requestData,
2814
- query: combinedQuery,
2815
- }),
2816
- })
2817
- .then((response) => response.json())
2818
- .then(responseHandler);
2819
- };
2820
-
2821
2928
  const NAME_HINTS_LIST_OPTIONS = {
2822
2929
  url: 'suggest/fio',
2823
2930
  requestData: {
@@ -4789,17 +4896,6 @@
4789
4896
  return (jsx(DaDataInputControl, { label: "\u0414\u043E\u043B\u044F \u0443\u0447\u0430\u0441\u0442\u0438\u044F \u0432 \u0431\u0438\u0437\u043D\u0435\u0441\u0435", placeholder: "\u0432 %", isInteger: true, maxLength: 3, ...field(input?.name ?? ''), ...input, onChange: onChange }));
4790
4897
  });
4791
4898
 
4792
- function useAsyncEffect(effect, deps) {
4793
- useEffect(() => {
4794
- const free = effect();
4795
- return () => {
4796
- free.then((_) => {
4797
- _ instanceof Function && _();
4798
- });
4799
- };
4800
- }, deps);
4801
- }
4802
-
4803
4899
  const getPaymentSystems = async (creditProgramId) => {
4804
4900
  const data = await fetchRetailJSON('/public-data/creditProgramConditions', 'POST', {
4805
4901
  creditProgramId,
@@ -11211,7 +11307,7 @@
11211
11307
  slots: () => [HEADER_SLOT, FOOTER_SLOT, STICKY_FOOTER_SLOT],
11212
11308
  });
11213
11309
 
11214
- const packageVersion = "0.14.875";
11310
+ const packageVersion = "0.14.876";
11215
11311
 
11216
11312
  exports.Blocks = Blocks;
11217
11313
  exports.ContentPage = ContentPage;