@redneckz/wildless-cms-uni-blocks 0.14.875 → 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 (399) 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 +264 -136
  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/components/Header/DropdownButton.d.ts +2 -0
  8. package/bundle/components/Header/DropdownMenu.d.ts +5 -2
  9. package/bundle/components/Header/HeaderMoreMenuItem.d.ts +9 -0
  10. package/bundle/components/Header/HeaderSubMenuItem.d.ts +3 -0
  11. package/bundle/components/Header/useDropdownSubMenu.d.ts +11 -0
  12. package/bundle/data/NavigationData.d.ts +1 -0
  13. package/bundle/hooks/useInn.d.ts +7 -0
  14. package/bundle/model/FormTypeFieldDef.d.ts +1 -1
  15. package/bundle/retail/components/Fields/SelectField.d.ts +1 -0
  16. package/bundle/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  17. package/bundle/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  18. package/bundle/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  19. package/bundle/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  20. package/bundle/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  21. package/bundle/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  22. package/bundle/ui-kit/FormField/validators.d.ts +8 -1
  23. package/bundle/ui-kit/Select/Option.d.ts +6 -0
  24. package/bundle/ui-kit/Select/Select.d.ts +2 -0
  25. package/bundle/ui-kit/Select/SelectPopup.d.ts +1 -0
  26. package/bundle/ui-kit/Select/useSelectPopup.d.ts +2 -1
  27. package/dist/api/LeadServiceAPI.d.ts +4 -0
  28. package/dist/api/LeadServiceAPI.js +13 -6
  29. package/dist/api/LeadServiceAPI.js.map +1 -1
  30. package/dist/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  31. package/dist/components/ApplicationForm/ApplicationForm.js +4 -3
  32. package/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
  33. package/dist/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  34. package/dist/components/ApplicationForm/ApplicationFormContent.js +0 -2
  35. package/dist/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
  36. package/dist/components/Header/DropdownButton.d.ts +2 -0
  37. package/dist/components/Header/DropdownButton.js +11 -0
  38. package/dist/components/Header/DropdownButton.js.map +1 -0
  39. package/dist/components/Header/DropdownMenu.d.ts +5 -2
  40. package/dist/components/Header/DropdownMenu.js +2 -36
  41. package/dist/components/Header/DropdownMenu.js.map +1 -1
  42. package/dist/components/Header/HeaderMoreMenuItem.d.ts +9 -0
  43. package/dist/components/Header/HeaderMoreMenuItem.js +27 -0
  44. package/dist/components/Header/HeaderMoreMenuItem.js.map +1 -0
  45. package/dist/components/Header/HeaderSubMenu.js +2 -2
  46. package/dist/components/Header/HeaderSubMenu.js.map +1 -1
  47. package/dist/components/Header/HeaderSubMenuItem.d.ts +3 -0
  48. package/dist/components/Header/HeaderSubMenuItem.js +19 -2
  49. package/dist/components/Header/HeaderSubMenuItem.js.map +1 -1
  50. package/dist/components/Header/HeaderTopMenu.js +2 -2
  51. package/dist/components/Header/HeaderTopMenu.js.map +1 -1
  52. package/dist/components/Header/useDropdownSubMenu.d.ts +11 -0
  53. package/dist/components/Header/useDropdownSubMenu.js +37 -0
  54. package/dist/components/Header/useDropdownSubMenu.js.map +1 -0
  55. package/dist/data/NavigationData.d.ts +1 -0
  56. package/dist/hooks/useInn.d.ts +7 -0
  57. package/dist/hooks/useInn.js +11 -0
  58. package/dist/hooks/useInn.js.map +1 -0
  59. package/dist/model/FormTypeFieldDef.d.ts +1 -1
  60. package/dist/retail/components/Fields/SelectField.d.ts +1 -0
  61. package/dist/retail/components/Fields/SelectField.js.map +1 -1
  62. package/dist/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  63. package/dist/ui-kit/FormField/Fields/CompanyNameByInnField.js +17 -0
  64. package/dist/ui-kit/FormField/Fields/CompanyNameByInnField.js.map +1 -0
  65. package/dist/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  66. package/{mobile/dist/ui-kit/FormField/Fields/RegionPremiumField.js → dist/ui-kit/FormField/Fields/FullRegionField.js} +5 -4
  67. package/dist/ui-kit/FormField/Fields/FullRegionField.js.map +1 -0
  68. package/dist/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  69. package/dist/ui-kit/FormField/Fields/InnDadataField.js +29 -0
  70. package/dist/ui-kit/FormField/Fields/InnDadataField.js.map +1 -0
  71. package/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  72. package/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.js +19 -0
  73. package/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.js.map +1 -0
  74. package/dist/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  75. package/dist/ui-kit/FormField/getField.js +12 -2
  76. package/dist/ui-kit/FormField/getField.js.map +1 -1
  77. package/dist/ui-kit/FormField/getObjectValidator.js +3 -0
  78. package/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  79. package/dist/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  80. package/dist/ui-kit/FormField/inputColumnStyle.js +1 -1
  81. package/dist/ui-kit/FormField/inputColumnStyle.js.map +1 -1
  82. package/dist/ui-kit/FormField/validators.d.ts +8 -1
  83. package/dist/ui-kit/FormField/validators.js +5 -2
  84. package/dist/ui-kit/FormField/validators.js.map +1 -1
  85. package/dist/ui-kit/Select/Option.d.ts +6 -0
  86. package/dist/ui-kit/Select/Select.d.ts +2 -0
  87. package/dist/ui-kit/Select/Select.js +27 -5
  88. package/dist/ui-kit/Select/Select.js.map +1 -1
  89. package/dist/ui-kit/Select/SelectPopup.d.ts +1 -0
  90. package/dist/ui-kit/Select/SelectPopup.js +4 -2
  91. package/dist/ui-kit/Select/SelectPopup.js.map +1 -1
  92. package/dist/ui-kit/Select/useSelectPopup.d.ts +2 -1
  93. package/dist/ui-kit/Select/useSelectPopup.js +3 -2
  94. package/dist/ui-kit/Select/useSelectPopup.js.map +1 -1
  95. package/lib/api/LeadServiceAPI.d.ts +4 -0
  96. package/lib/api/LeadServiceAPI.js +13 -6
  97. package/lib/api/LeadServiceAPI.js.map +1 -1
  98. package/lib/common.css +1 -1
  99. package/lib/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  100. package/lib/components/ApplicationForm/ApplicationForm.fixture.d.ts +1 -0
  101. package/lib/components/ApplicationForm/ApplicationForm.fixture.mobile.d.ts +1 -0
  102. package/lib/components/ApplicationForm/ApplicationForm.js +4 -3
  103. package/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
  104. package/lib/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  105. package/lib/components/ApplicationForm/ApplicationFormContent.js +0 -2
  106. package/lib/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
  107. package/lib/components/Header/DropdownButton.d.ts +2 -0
  108. package/lib/components/Header/DropdownButton.js +9 -0
  109. package/lib/components/Header/DropdownButton.js.map +1 -0
  110. package/lib/components/Header/DropdownMenu.d.ts +5 -2
  111. package/lib/components/Header/DropdownMenu.js +2 -37
  112. package/lib/components/Header/DropdownMenu.js.map +1 -1
  113. package/lib/components/Header/HeaderMoreMenuItem.d.ts +9 -0
  114. package/lib/components/Header/HeaderMoreMenuItem.js +25 -0
  115. package/lib/components/Header/HeaderMoreMenuItem.js.map +1 -0
  116. package/lib/components/Header/HeaderSubMenu.js +2 -2
  117. package/lib/components/Header/HeaderSubMenu.js.map +1 -1
  118. package/lib/components/Header/HeaderSubMenuItem.d.ts +3 -0
  119. package/lib/components/Header/HeaderSubMenuItem.js +20 -3
  120. package/lib/components/Header/HeaderSubMenuItem.js.map +1 -1
  121. package/lib/components/Header/HeaderTopMenu.js +2 -2
  122. package/lib/components/Header/HeaderTopMenu.js.map +1 -1
  123. package/lib/components/Header/useDropdownSubMenu.d.ts +11 -0
  124. package/lib/components/Header/useDropdownSubMenu.js +34 -0
  125. package/lib/components/Header/useDropdownSubMenu.js.map +1 -0
  126. package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +1 -1
  127. package/lib/data/NavigationData.d.ts +1 -0
  128. package/lib/hooks/useInn.d.ts +7 -0
  129. package/lib/hooks/useInn.js +8 -0
  130. package/lib/hooks/useInn.js.map +1 -0
  131. package/lib/model/FormTypeFieldDef.d.ts +1 -1
  132. package/lib/retail/components/Fields/SelectField.d.ts +1 -0
  133. package/lib/retail/components/Fields/SelectField.js.map +1 -1
  134. package/lib/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  135. package/lib/ui-kit/FormField/Fields/CompanyNameByInnField.js +15 -0
  136. package/lib/ui-kit/FormField/Fields/CompanyNameByInnField.js.map +1 -0
  137. package/lib/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  138. package/lib/ui-kit/FormField/Fields/{RegionPremiumField.js → FullRegionField.js} +4 -3
  139. package/lib/ui-kit/FormField/Fields/FullRegionField.js.map +1 -0
  140. package/lib/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  141. package/lib/ui-kit/FormField/Fields/InnDadataField.js +27 -0
  142. package/lib/ui-kit/FormField/Fields/InnDadataField.js.map +1 -0
  143. package/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  144. package/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.js +17 -0
  145. package/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.js.map +1 -0
  146. package/lib/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  147. package/lib/ui-kit/FormField/getField.js +12 -2
  148. package/lib/ui-kit/FormField/getField.js.map +1 -1
  149. package/lib/ui-kit/FormField/getObjectValidator.js +4 -1
  150. package/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  151. package/lib/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  152. package/lib/ui-kit/FormField/inputColumnStyle.js +1 -1
  153. package/lib/ui-kit/FormField/inputColumnStyle.js.map +1 -1
  154. package/lib/ui-kit/FormField/validators.d.ts +8 -1
  155. package/lib/ui-kit/FormField/validators.js +3 -1
  156. package/lib/ui-kit/FormField/validators.js.map +1 -1
  157. package/lib/ui-kit/Select/Option.d.ts +6 -0
  158. package/lib/ui-kit/Select/Select.d.ts +2 -0
  159. package/lib/ui-kit/Select/Select.js +28 -6
  160. package/lib/ui-kit/Select/Select.js.map +1 -1
  161. package/lib/ui-kit/Select/SelectPopup.d.ts +1 -0
  162. package/lib/ui-kit/Select/SelectPopup.js +4 -2
  163. package/lib/ui-kit/Select/SelectPopup.js.map +1 -1
  164. package/lib/ui-kit/Select/useSelectPopup.d.ts +2 -1
  165. package/lib/ui-kit/Select/useSelectPopup.js +3 -2
  166. package/lib/ui-kit/Select/useSelectPopup.js.map +1 -1
  167. package/mobile/bundle/api/LeadServiceAPI.d.ts +4 -0
  168. package/mobile/bundle/bundle.umd.js +187 -91
  169. package/mobile/bundle/bundle.umd.min.js +1 -1
  170. package/mobile/bundle/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  171. package/mobile/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  172. package/mobile/bundle/components/Header/DropdownButton.d.ts +2 -0
  173. package/mobile/bundle/components/Header/DropdownMenu.d.ts +5 -2
  174. package/mobile/bundle/components/Header/HeaderMoreMenuItem.d.ts +9 -0
  175. package/mobile/bundle/components/Header/HeaderSubMenuItem.d.ts +3 -0
  176. package/mobile/bundle/components/Header/useDropdownSubMenu.d.ts +11 -0
  177. package/mobile/bundle/data/NavigationData.d.ts +1 -0
  178. package/mobile/bundle/hooks/useInn.d.ts +7 -0
  179. package/mobile/bundle/model/FormTypeFieldDef.d.ts +1 -1
  180. package/mobile/bundle/retail/components/Fields/SelectField.d.ts +1 -0
  181. package/mobile/bundle/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  182. package/mobile/bundle/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  183. package/mobile/bundle/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  184. package/mobile/bundle/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  185. package/mobile/bundle/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  186. package/mobile/bundle/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  187. package/mobile/bundle/ui-kit/FormField/validators.d.ts +8 -1
  188. package/mobile/bundle/ui-kit/Select/Option.d.ts +6 -0
  189. package/mobile/bundle/ui-kit/Select/Select.d.ts +2 -0
  190. package/mobile/bundle/ui-kit/Select/SelectPopup.d.ts +1 -0
  191. package/mobile/bundle/ui-kit/Select/useSelectPopup.d.ts +2 -1
  192. package/mobile/dist/api/LeadServiceAPI.d.ts +4 -0
  193. package/mobile/dist/api/LeadServiceAPI.js +13 -6
  194. package/mobile/dist/api/LeadServiceAPI.js.map +1 -1
  195. package/mobile/dist/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  196. package/mobile/dist/components/ApplicationForm/ApplicationForm.js +4 -3
  197. package/mobile/dist/components/ApplicationForm/ApplicationForm.js.map +1 -1
  198. package/mobile/dist/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  199. package/mobile/dist/components/ApplicationForm/ApplicationFormContent.js +0 -2
  200. package/mobile/dist/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
  201. package/mobile/dist/components/Header/DropdownButton.d.ts +2 -0
  202. package/mobile/dist/components/Header/DropdownButton.js +11 -0
  203. package/mobile/dist/components/Header/DropdownButton.js.map +1 -0
  204. package/mobile/dist/components/Header/DropdownMenu.d.ts +5 -2
  205. package/mobile/dist/components/Header/DropdownMenu.js +2 -36
  206. package/mobile/dist/components/Header/DropdownMenu.js.map +1 -1
  207. package/mobile/dist/components/Header/HeaderMoreMenuItem.d.ts +9 -0
  208. package/mobile/dist/components/Header/HeaderMoreMenuItem.js +27 -0
  209. package/mobile/dist/components/Header/HeaderMoreMenuItem.js.map +1 -0
  210. package/mobile/dist/components/Header/HeaderSubMenu.js +2 -2
  211. package/mobile/dist/components/Header/HeaderSubMenu.js.map +1 -1
  212. package/mobile/dist/components/Header/HeaderSubMenuItem.d.ts +3 -0
  213. package/mobile/dist/components/Header/HeaderSubMenuItem.js +19 -2
  214. package/mobile/dist/components/Header/HeaderSubMenuItem.js.map +1 -1
  215. package/mobile/dist/components/Header/HeaderTopMenu.js +2 -2
  216. package/mobile/dist/components/Header/HeaderTopMenu.js.map +1 -1
  217. package/mobile/dist/components/Header/useDropdownSubMenu.d.ts +11 -0
  218. package/mobile/dist/components/Header/useDropdownSubMenu.js +37 -0
  219. package/mobile/dist/components/Header/useDropdownSubMenu.js.map +1 -0
  220. package/mobile/dist/data/NavigationData.d.ts +1 -0
  221. package/mobile/dist/hooks/useInn.d.ts +7 -0
  222. package/mobile/dist/hooks/useInn.js +11 -0
  223. package/mobile/dist/hooks/useInn.js.map +1 -0
  224. package/mobile/dist/model/FormTypeFieldDef.d.ts +1 -1
  225. package/mobile/dist/retail/components/Fields/SelectField.d.ts +1 -0
  226. package/mobile/dist/retail/components/Fields/SelectField.js.map +1 -1
  227. package/mobile/dist/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  228. package/mobile/dist/ui-kit/FormField/Fields/CompanyNameByInnField.js +17 -0
  229. package/mobile/dist/ui-kit/FormField/Fields/CompanyNameByInnField.js.map +1 -0
  230. package/mobile/dist/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  231. package/{dist/ui-kit/FormField/Fields/RegionPremiumField.js → mobile/dist/ui-kit/FormField/Fields/FullRegionField.js} +5 -4
  232. package/mobile/dist/ui-kit/FormField/Fields/FullRegionField.js.map +1 -0
  233. package/mobile/dist/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  234. package/mobile/dist/ui-kit/FormField/Fields/InnDadataField.js +29 -0
  235. package/mobile/dist/ui-kit/FormField/Fields/InnDadataField.js.map +1 -0
  236. package/mobile/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  237. package/mobile/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.js +19 -0
  238. package/mobile/dist/ui-kit/FormField/Fields/PartnerSymbolCodeField.js.map +1 -0
  239. package/mobile/dist/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  240. package/mobile/dist/ui-kit/FormField/getField.js +12 -2
  241. package/mobile/dist/ui-kit/FormField/getField.js.map +1 -1
  242. package/mobile/dist/ui-kit/FormField/getObjectValidator.js +3 -0
  243. package/mobile/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  244. package/mobile/dist/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  245. package/mobile/dist/ui-kit/FormField/inputColumnStyle.js +1 -1
  246. package/mobile/dist/ui-kit/FormField/inputColumnStyle.js.map +1 -1
  247. package/mobile/dist/ui-kit/FormField/validators.d.ts +8 -1
  248. package/mobile/dist/ui-kit/FormField/validators.js +5 -2
  249. package/mobile/dist/ui-kit/FormField/validators.js.map +1 -1
  250. package/mobile/dist/ui-kit/Select/Option.d.ts +6 -0
  251. package/mobile/dist/ui-kit/Select/Select.d.ts +2 -0
  252. package/mobile/dist/ui-kit/Select/Select.js +27 -5
  253. package/mobile/dist/ui-kit/Select/Select.js.map +1 -1
  254. package/mobile/dist/ui-kit/Select/SelectPopup.d.ts +1 -0
  255. package/mobile/dist/ui-kit/Select/SelectPopup.js +4 -2
  256. package/mobile/dist/ui-kit/Select/SelectPopup.js.map +1 -1
  257. package/mobile/dist/ui-kit/Select/useSelectPopup.d.ts +2 -1
  258. package/mobile/dist/ui-kit/Select/useSelectPopup.js +3 -2
  259. package/mobile/dist/ui-kit/Select/useSelectPopup.js.map +1 -1
  260. package/mobile/lib/api/LeadServiceAPI.d.ts +4 -0
  261. package/mobile/lib/api/LeadServiceAPI.js +13 -6
  262. package/mobile/lib/api/LeadServiceAPI.js.map +1 -1
  263. package/mobile/lib/common.css +1 -1
  264. package/mobile/lib/components/ApplicationForm/ApplicationForm.d.ts +2 -3
  265. package/mobile/lib/components/ApplicationForm/ApplicationForm.js +4 -3
  266. package/mobile/lib/components/ApplicationForm/ApplicationForm.js.map +1 -1
  267. package/mobile/lib/components/ApplicationForm/ApplicationFormContent.d.ts +5 -1
  268. package/mobile/lib/components/ApplicationForm/ApplicationFormContent.js +0 -2
  269. package/mobile/lib/components/ApplicationForm/ApplicationFormContent.js.map +1 -1
  270. package/mobile/lib/components/Header/DropdownButton.d.ts +2 -0
  271. package/mobile/lib/components/Header/DropdownButton.js +9 -0
  272. package/mobile/lib/components/Header/DropdownButton.js.map +1 -0
  273. package/mobile/lib/components/Header/DropdownMenu.d.ts +5 -2
  274. package/mobile/lib/components/Header/DropdownMenu.js +2 -37
  275. package/mobile/lib/components/Header/DropdownMenu.js.map +1 -1
  276. package/mobile/lib/components/Header/HeaderMoreMenuItem.d.ts +9 -0
  277. package/mobile/lib/components/Header/HeaderMoreMenuItem.js +25 -0
  278. package/mobile/lib/components/Header/HeaderMoreMenuItem.js.map +1 -0
  279. package/mobile/lib/components/Header/HeaderSubMenu.js +2 -2
  280. package/mobile/lib/components/Header/HeaderSubMenu.js.map +1 -1
  281. package/mobile/lib/components/Header/HeaderSubMenuItem.d.ts +3 -0
  282. package/mobile/lib/components/Header/HeaderSubMenuItem.js +20 -3
  283. package/mobile/lib/components/Header/HeaderSubMenuItem.js.map +1 -1
  284. package/mobile/lib/components/Header/HeaderTopMenu.js +2 -2
  285. package/mobile/lib/components/Header/HeaderTopMenu.js.map +1 -1
  286. package/mobile/lib/components/Header/useDropdownSubMenu.d.ts +11 -0
  287. package/mobile/lib/components/Header/useDropdownSubMenu.js +34 -0
  288. package/mobile/lib/components/Header/useDropdownSubMenu.js.map +1 -0
  289. package/mobile/lib/data/NavigationData.d.ts +1 -0
  290. package/mobile/lib/hooks/useInn.d.ts +7 -0
  291. package/mobile/lib/hooks/useInn.js +8 -0
  292. package/mobile/lib/hooks/useInn.js.map +1 -0
  293. package/mobile/lib/model/FormTypeFieldDef.d.ts +1 -1
  294. package/mobile/lib/retail/components/Fields/SelectField.d.ts +1 -0
  295. package/mobile/lib/retail/components/Fields/SelectField.js.map +1 -1
  296. package/mobile/lib/ui-kit/FormField/Fields/CompanyNameByInnField.d.ts +2 -0
  297. package/mobile/lib/ui-kit/FormField/Fields/CompanyNameByInnField.js +15 -0
  298. package/mobile/lib/ui-kit/FormField/Fields/CompanyNameByInnField.js.map +1 -0
  299. package/mobile/lib/ui-kit/FormField/Fields/FullRegionField.d.ts +5 -0
  300. package/mobile/lib/ui-kit/FormField/Fields/{RegionPremiumField.js → FullRegionField.js} +4 -3
  301. package/mobile/lib/ui-kit/FormField/Fields/FullRegionField.js.map +1 -0
  302. package/mobile/lib/ui-kit/FormField/Fields/InnDadataField.d.ts +2 -0
  303. package/mobile/lib/ui-kit/FormField/Fields/InnDadataField.js +27 -0
  304. package/mobile/lib/ui-kit/FormField/Fields/InnDadataField.js.map +1 -0
  305. package/mobile/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.d.ts +15 -0
  306. package/mobile/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.js +17 -0
  307. package/mobile/lib/ui-kit/FormField/Fields/PartnerSymbolCodeField.js.map +1 -0
  308. package/mobile/lib/ui-kit/FormField/NameFieldDef.d.ts +1 -1
  309. package/mobile/lib/ui-kit/FormField/getField.js +12 -2
  310. package/mobile/lib/ui-kit/FormField/getField.js.map +1 -1
  311. package/mobile/lib/ui-kit/FormField/getObjectValidator.js +4 -1
  312. package/mobile/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  313. package/mobile/lib/ui-kit/FormField/inputColumnStyle.d.ts +1 -1
  314. package/mobile/lib/ui-kit/FormField/inputColumnStyle.js +1 -1
  315. package/mobile/lib/ui-kit/FormField/inputColumnStyle.js.map +1 -1
  316. package/mobile/lib/ui-kit/FormField/validators.d.ts +8 -1
  317. package/mobile/lib/ui-kit/FormField/validators.js +3 -1
  318. package/mobile/lib/ui-kit/FormField/validators.js.map +1 -1
  319. package/mobile/lib/ui-kit/Select/Option.d.ts +6 -0
  320. package/mobile/lib/ui-kit/Select/Select.d.ts +2 -0
  321. package/mobile/lib/ui-kit/Select/Select.js +28 -6
  322. package/mobile/lib/ui-kit/Select/Select.js.map +1 -1
  323. package/mobile/lib/ui-kit/Select/SelectPopup.d.ts +1 -0
  324. package/mobile/lib/ui-kit/Select/SelectPopup.js +4 -2
  325. package/mobile/lib/ui-kit/Select/SelectPopup.js.map +1 -1
  326. package/mobile/lib/ui-kit/Select/useSelectPopup.d.ts +2 -1
  327. package/mobile/lib/ui-kit/Select/useSelectPopup.js +3 -2
  328. package/mobile/lib/ui-kit/Select/useSelectPopup.js.map +1 -1
  329. package/mobile/src/api/LeadServiceAPI.ts +28 -3
  330. package/mobile/src/components/ApplicationForm/ApplicationForm.example.json +84 -0
  331. package/mobile/src/components/ApplicationForm/ApplicationForm.tsx +29 -14
  332. package/mobile/src/components/ApplicationForm/ApplicationFormContent.ts +6 -4
  333. package/mobile/src/components/Header/DropdownButton.tsx +26 -0
  334. package/mobile/src/components/Header/DropdownMenu.tsx +15 -85
  335. package/mobile/src/components/Header/HeaderMoreMenuItem.tsx +60 -0
  336. package/mobile/src/components/Header/HeaderSubMenu.tsx +3 -2
  337. package/mobile/src/components/Header/HeaderSubMenuItem.tsx +31 -5
  338. package/mobile/src/components/Header/HeaderTopMenu.tsx +3 -3
  339. package/mobile/src/components/Header/useDropdownSubMenu.tsx +48 -0
  340. package/mobile/src/data/NavigationData.ts +1 -0
  341. package/mobile/src/hooks/useInn.ts +16 -0
  342. package/mobile/src/model/FormTypeFieldDef.ts +2 -1
  343. package/mobile/src/retail/components/Fields/SelectField.tsx +1 -0
  344. package/mobile/src/ui-kit/FormField/Fields/CompanyNameByInnField.tsx +24 -0
  345. package/mobile/src/ui-kit/FormField/Fields/{RegionPremiumField.tsx → FullRegionField.tsx} +7 -2
  346. package/mobile/src/ui-kit/FormField/Fields/InnDadataField.tsx +47 -0
  347. package/mobile/src/ui-kit/FormField/Fields/PartnerSymbolCodeField.tsx +47 -0
  348. package/mobile/src/ui-kit/FormField/NameFieldDef.ts +5 -1
  349. package/mobile/src/ui-kit/FormField/getField.tsx +15 -2
  350. package/mobile/src/ui-kit/FormField/getObjectValidator.tsx +4 -0
  351. package/mobile/src/ui-kit/FormField/inputColumnStyle.tsx +1 -1
  352. package/mobile/src/ui-kit/FormField/validators.ts +13 -1
  353. package/mobile/src/ui-kit/Select/Option.ts +6 -0
  354. package/mobile/src/ui-kit/Select/Select.tsx +71 -17
  355. package/mobile/src/ui-kit/Select/SelectPopup.tsx +20 -2
  356. package/mobile/src/ui-kit/Select/useSelectPopup.tsx +4 -0
  357. package/package.json +2 -2
  358. package/src/api/LeadServiceAPI.ts +28 -3
  359. package/src/components/ApplicationForm/ApplicationForm.example.json +84 -0
  360. package/src/components/ApplicationForm/ApplicationForm.fixture.mobile.tsx +47 -0
  361. package/src/components/ApplicationForm/ApplicationForm.fixture.tsx +47 -0
  362. package/src/components/ApplicationForm/ApplicationForm.tsx +29 -14
  363. package/src/components/ApplicationForm/ApplicationFormContent.ts +6 -4
  364. package/src/components/Header/DropdownButton.tsx +26 -0
  365. package/src/components/Header/DropdownMenu.tsx +15 -85
  366. package/src/components/Header/Header.fixture.tsx +4 -0
  367. package/src/components/Header/HeaderMoreMenuItem.tsx +60 -0
  368. package/src/components/Header/HeaderSubMenu.tsx +3 -2
  369. package/src/components/Header/HeaderSubMenuItem.tsx +31 -5
  370. package/src/components/Header/HeaderTopMenu.tsx +3 -3
  371. package/src/components/Header/useDropdownSubMenu.tsx +48 -0
  372. package/src/data/NavigationData.ts +1 -0
  373. package/src/hooks/useInn.ts +16 -0
  374. package/src/icons/IconName.ts +4 -4
  375. package/src/model/FormTypeFieldDef.ts +2 -1
  376. package/src/retail/components/Fields/SelectField.tsx +1 -0
  377. package/src/ui-kit/FormField/Fields/CompanyNameByInnField.tsx +24 -0
  378. package/src/ui-kit/FormField/Fields/{RegionPremiumField.tsx → FullRegionField.tsx} +7 -2
  379. package/src/ui-kit/FormField/Fields/InnDadataField.tsx +47 -0
  380. package/src/ui-kit/FormField/Fields/PartnerSymbolCodeField.tsx +47 -0
  381. package/src/ui-kit/FormField/NameFieldDef.ts +5 -1
  382. package/src/ui-kit/FormField/getField.tsx +15 -2
  383. package/src/ui-kit/FormField/getObjectValidator.tsx +4 -0
  384. package/src/ui-kit/FormField/inputColumnStyle.tsx +1 -1
  385. package/src/ui-kit/FormField/validators.ts +13 -1
  386. package/src/ui-kit/Select/Option.ts +6 -0
  387. package/src/ui-kit/Select/Select.tsx +71 -17
  388. package/src/ui-kit/Select/SelectPopup.tsx +20 -2
  389. package/src/ui-kit/Select/useSelectPopup.tsx +4 -0
  390. package/bundle/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  391. package/dist/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  392. package/dist/ui-kit/FormField/Fields/RegionPremiumField.js.map +0 -1
  393. package/lib/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  394. package/lib/ui-kit/FormField/Fields/RegionPremiumField.js.map +0 -1
  395. package/mobile/bundle/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  396. package/mobile/dist/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  397. package/mobile/dist/ui-kit/FormField/Fields/RegionPremiumField.js.map +0 -1
  398. package/mobile/lib/ui-kit/FormField/Fields/RegionPremiumField.d.ts +0 -2
  399. package/mobile/lib/ui-kit/FormField/Fields/RegionPremiumField.js.map +0 -1
@@ -1,9 +1,10 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
- import { useCallback, useState } from '@redneckz/uni-jsx/lib/hooks';
2
+ import { useCallback, useMemo, useState } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { useBool } from '@redneckz/uni-jsx/lib/hooks/useBool';
4
4
  import { type ControlProps } from '../../model/ControlProps';
5
5
  import { type DefaultControlType } from '../../model/DefaultControlType';
6
6
  import { type IconVersion } from '../../model/IconVersion';
7
+ import { debounce } from '../../utils/debounce';
7
8
  import { style } from '../../utils/style';
8
9
  import { Icon } from '../Icon/Icon';
9
10
  import { Input } from '../Input/Input';
@@ -17,9 +18,18 @@ export interface SelectProps extends DefaultControlType, ControlProps<Option> {
17
18
  valid?: boolean;
18
19
  isBorder?: boolean;
19
20
  isSearch?: boolean;
21
+ isManualInput?: boolean;
20
22
  iconVersion?: IconVersion;
23
+ onSearchQuery?: (value: string) => void;
21
24
  }
22
25
 
26
+ type renderOptionTextProps = {
27
+ isManualInput?: boolean;
28
+ query?: string;
29
+ value?: Option;
30
+ placeholder?: string;
31
+ };
32
+
23
33
  export const Select = JSX<SelectProps>(
24
34
  ({
25
35
  className,
@@ -30,15 +40,23 @@ export const Select = JSX<SelectProps>(
30
40
  isBorder = true,
31
41
  placeholder = '',
32
42
  isSearch = false,
43
+ isManualInput = false,
33
44
  disabled = false,
34
45
  iconVersion = 'black',
35
46
  onChange,
47
+ onSearchQuery,
36
48
  }) => {
37
49
  const [isOpen, { setFalse: close, setTrue: open }] = useBool();
38
50
  const [query, setQuery] = useState('');
39
- const isDisabled = getDisabled(disabled, options.length);
51
+ const isDisabled = getDisabled(disabled, options.length, isManualInput);
52
+ const isIconHidden = getIconHidden(isManualInput, options);
40
53
  const hasOpen = isOpen && !isDisabled;
41
54
 
55
+ const debouncedOnSearchQuery = useMemo(
56
+ () => onSearchQuery && getDebouncedSearchQuery(onSearchQuery),
57
+ [onSearchQuery],
58
+ );
59
+
42
60
  const handleOpen = useCallback(() => {
43
61
  if (isDisabled) {
44
62
  return;
@@ -47,8 +65,14 @@ export const Select = JSX<SelectProps>(
47
65
  open();
48
66
  }, [isDisabled]);
49
67
 
68
+ const handleChangeQuery = (newQuery: string) => {
69
+ setQuery(newQuery);
70
+ setOption(newQuery, onChange);
71
+ debouncedOnSearchQuery && debouncedOnSearchQuery(newQuery);
72
+ };
73
+
50
74
  const handleClose = useCallback(() => {
51
- setQuery('');
75
+ !isManualInput && setQuery('');
52
76
  close();
53
77
  }, []);
54
78
 
@@ -60,6 +84,7 @@ export const Select = JSX<SelectProps>(
60
84
  onChange,
61
85
  onClose: handleClose,
62
86
  iconVersion,
87
+ onChangeQuery: setQuery,
63
88
  });
64
89
 
65
90
  return (
@@ -73,26 +98,43 @@ export const Select = JSX<SelectProps>(
73
98
  )}
74
99
  onClick={hasOpen ? handleClose : handleOpen}
75
100
  >
76
- <p className="line-clamp-2 text-ellipsis">{formatOption(value) || placeholder}</p>
77
- {renderIcon(hasOpen, iconVersion)}
101
+ <p className="line-clamp-2 text-ellipsis">
102
+ {useRenderOptionText({ isManualInput, query, value, placeholder })}
103
+ </p>
104
+ {isIconHidden ? '' : renderIcon(hasOpen, iconVersion)}
78
105
  </div>
79
- {isSearch && hasOpen ? (
80
- <div className={style('absolute top-0 w-full z-20')}>
81
- <Input
82
- type="text"
83
- value={query}
84
- autoFocus
85
- disabled={isDisabled}
86
- onChange={setQuery}
87
- />
88
- </div>
89
- ) : null}
106
+ {isSearch && hasOpen ? renderSearchInput(query, isDisabled, handleChangeQuery) : null}
90
107
  </div>
91
108
  </div>
92
109
  );
93
110
  },
94
111
  );
95
112
 
113
+ const useRenderOptionText = (data: renderOptionTextProps) =>
114
+ useMemo(() => {
115
+ if (data.isManualInput && data.query) {
116
+ return data.query;
117
+ }
118
+
119
+ return formatOption(data.value) || data.placeholder;
120
+ }, [data.isManualInput, data.query, data.value, data.placeholder]);
121
+
122
+ const renderSearchInput = (
123
+ query: string,
124
+ isDisabled: boolean,
125
+ onChangeQuery: (value: string) => void,
126
+ ) => (
127
+ <div className={style('absolute top-0 w-full z-20')}>
128
+ <Input
129
+ type="text"
130
+ value={query}
131
+ autoFocus
132
+ disabled={isDisabled}
133
+ onChange={(value) => onChangeQuery(value)}
134
+ />
135
+ </div>
136
+ );
137
+
96
138
  const renderIcon = (isOpen: boolean, iconVersion?: IconVersion) => (
97
139
  <Icon
98
140
  className={style('absolute right-0 flex self-center', { 'rotate-180': !isOpen })}
@@ -111,4 +153,16 @@ const getStyle = (isBorder: boolean, valid: boolean, disabled: boolean) =>
111
153
  valid ? 'border-gray' : 'border-error',
112
154
  );
113
155
 
114
- const getDisabled = (disabled: boolean, length: number) => disabled || length === 0;
156
+ // TODO Нужен рефактор и декомпозиция компонента getDisabled, setOption, getIconHidden
157
+ const getDisabled = (disabled: boolean, length: number, isManualInput: boolean) =>
158
+ disabled || (!isManualInput && length === 0);
159
+
160
+ const setOption = (query: string, onChange?: (data: Option) => void) => {
161
+ onChange && query.trim() !== '' && onChange({ key: query, text: query, innDaData: {} });
162
+ };
163
+
164
+ const getIconHidden = (isManualInput: boolean, options: Option[]) =>
165
+ isManualInput && !options.length;
166
+
167
+ const getDebouncedSearchQuery = (onSearchQuery: (value: string) => void) =>
168
+ debounce((searchValue: string) => onSearchQuery(searchValue), 300);
@@ -3,6 +3,7 @@ import { type ControlProps } from '../../model/ControlProps';
3
3
  import { type IconVersion } from '../../model/IconVersion';
4
4
  import { style } from '../../utils/style';
5
5
  import { Icon } from '../Icon/Icon';
6
+ import { Text } from '../Text/Text';
6
7
  import { filterOptions } from './filterOptions';
7
8
  import { formatOption } from './formatOption';
8
9
  import { type Option } from './Option';
@@ -12,10 +13,11 @@ export interface SelectPopupProps extends ControlProps<Option> {
12
13
  options?: Option[];
13
14
  popupRef?: { current: HTMLDivElement | null };
14
15
  query?: string;
16
+ onChangeQuery?: (value: string) => void;
15
17
  }
16
18
 
17
19
  export const SelectPopup = JSX<SelectPopupProps>(
18
- ({ popupRef, options, value, query, onChange, iconVersion }) =>
20
+ ({ popupRef, options, value, query, onChange, iconVersion, onChangeQuery }) =>
19
21
  options?.length ? (
20
22
  <div
21
23
  className="bg-white text-l max-h-64 overflow-y-auto overflow-x-hidden rounded-md shadow-2xl"
@@ -31,11 +33,27 @@ export const SelectPopup = JSX<SelectPopupProps>(
31
33
  onClick={(e) => {
32
34
  e.stopPropagation();
33
35
  if (onChange) {
36
+ onChangeQuery?.('');
34
37
  onChange(option);
35
38
  }
36
39
  }}
37
40
  >
38
- <span className="min-h-6">{formatOption(option)}</span>
41
+ {option?.innDaData ? (
42
+ <span>
43
+ <Text size="text-s">{option?.innDaData?.companyName}</Text>
44
+ <div className="space-x-2">
45
+ <Text size="text-s" font="font-light">
46
+ {formatOption(option)}
47
+ </Text>
48
+ <Text size="text-s" font="font-light">
49
+ {option?.innDaData?.companyAddress}
50
+ </Text>
51
+ </div>
52
+ </span>
53
+ ) : (
54
+ <span className="min-h-6">{formatOption(option)}</span>
55
+ )}
56
+
39
57
  <Icon
40
58
  name="DoneSimpleIcon"
41
59
  width="16"
@@ -7,6 +7,7 @@ import { SelectPopup, type SelectPopupProps } from './SelectPopup';
7
7
 
8
8
  interface SelectPopupOptions extends SelectPopupProps, OnCloseProps {
9
9
  isOpen?: boolean;
10
+ onChangeQuery?: (value: string) => void;
10
11
  }
11
12
 
12
13
  export function useSelectPopup({
@@ -17,6 +18,7 @@ export function useSelectPopup({
17
18
  onChange,
18
19
  onClose,
19
20
  iconVersion,
21
+ onChangeQuery,
20
22
  }: SelectPopupOptions) {
21
23
  const popup = usePopupManager();
22
24
 
@@ -29,6 +31,7 @@ export function useSelectPopup({
29
31
  (option: Option) => {
30
32
  close();
31
33
  onChange && onChange(option);
34
+ onChangeQuery && onChangeQuery('');
32
35
  },
33
36
  [close, onChange],
34
37
  );
@@ -53,6 +56,7 @@ export function useSelectPopup({
53
56
  query={query}
54
57
  onChange={handleChange}
55
58
  iconVersion={iconVersion}
59
+ onChangeQuery={onChangeQuery}
56
60
  />
57
61
  ),
58
62
  top: top + window.scrollY + height,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redneckz/wildless-cms-uni-blocks",
3
- "version": "0.14.875",
3
+ "version": "0.14.877",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "author": "ЦК",
@@ -204,7 +204,7 @@
204
204
  "path": "lib/common.css"
205
205
  },
206
206
  {
207
- "limit": "94 kB",
207
+ "limit": "95 kB",
208
208
  "path": "bundle/bundle.umd.min.js"
209
209
  }
210
210
  ],
@@ -9,7 +9,18 @@ export type LeadRequest = Record<string, JSONRecord | JSONScalar | null> & {
9
9
  phone?: string;
10
10
  email?: string;
11
11
  inn?: string;
12
+ innDadata?: string;
13
+ fullRegion?: string;
12
14
  secondaryPhoneNumber?: string;
15
+ partnerSymbolCode?: string;
16
+ companyNameByInn?: string;
17
+ };
18
+
19
+ type PFFormData = {
20
+ innDadata?: string;
21
+ fullRegion?: string;
22
+ partnerSymbolCode?: string;
23
+ companyNameByInn?: string;
13
24
  };
14
25
 
15
26
  export function LeadServiceAPI() {
@@ -22,11 +33,15 @@ export function LeadServiceAPI() {
22
33
  birthday,
23
34
  desiredMeetingDate,
24
35
  inn,
36
+ innDadata,
37
+ fullRegion,
25
38
  addressBranch,
26
39
  secondaryPhone = '',
27
40
  bankEmpolee,
28
41
  applicationDate,
29
42
  serviceDirection,
43
+ partnerSymbolCode,
44
+ companyNameByInn,
30
45
  ...staticBody
31
46
  } = body;
32
47
  const isNaturalPerson = isIndividualType && serviceDirection !== 'Юридическое лицо / ИП';
@@ -46,6 +61,7 @@ export function LeadServiceAPI() {
46
61
  applicationDate,
47
62
  ...getSecondaryPhone(secondaryPhone as string),
48
63
  }),
64
+ ...formatPFForm(typeForm, { innDadata, fullRegion, partnerSymbolCode, companyNameByInn }),
49
65
  ...staticBody,
50
66
  };
51
67
 
@@ -85,8 +101,17 @@ const getEmail = (email?: string, isNaturalPerson = true) => ({
85
101
  [isNaturalPerson ? 'email' : 'mail']: email,
86
102
  });
87
103
 
88
- const getSecondaryPhone = (secondaryPhone = '') => {
89
- return !secondaryPhone || secondaryPhone === '+7 ('
104
+ const getSecondaryPhone = (secondaryPhone = '') =>
105
+ !secondaryPhone || secondaryPhone === '+7 ('
90
106
  ? {}
91
107
  : { secondaryPhoneNumber: formatPhone(secondaryPhone) };
92
- };
108
+
109
+ const formatPFForm = (typeForm?: string, data?: PFFormData) =>
110
+ typeForm === 'PF'
111
+ ? {
112
+ inn: data?.innDadata,
113
+ region: data?.fullRegion,
114
+ partnerComments: data?.partnerSymbolCode,
115
+ fullname: data?.companyNameByInn,
116
+ }
117
+ : {};
@@ -1378,5 +1378,89 @@
1378
1378
  }
1379
1379
  }
1380
1380
  }
1381
+ ],
1382
+ [
1383
+ "Онлайн-заявка от партнера",
1384
+ {
1385
+ "content": {
1386
+ "version": "primary",
1387
+ "title": "Онлайн-заявка от партнера",
1388
+ "typeForm": "PF",
1389
+ "endpoint": "sendcorporatedlead",
1390
+ "sections": [
1391
+ {
1392
+ "title": "Информация о партнере",
1393
+ "inputs": [
1394
+ {
1395
+ "name": "partnerSymbolCode",
1396
+ "required": true
1397
+ }
1398
+ ]
1399
+ },
1400
+ {
1401
+ "title": "Информация о компании",
1402
+ "columns": 2,
1403
+ "inputs": [
1404
+ {
1405
+ "name": "innDadata",
1406
+ "required": true
1407
+ },
1408
+ {
1409
+ "name": "companyNameByInn",
1410
+ "required": true
1411
+ }
1412
+ ]
1413
+ },
1414
+ {
1415
+ "title": "Данные контактного лица",
1416
+ "columns": 2,
1417
+ "inputs": [
1418
+ {
1419
+ "name": "surname",
1420
+ "required": true
1421
+ },
1422
+ {
1423
+ "name": "name",
1424
+ "required": true
1425
+ },
1426
+ {
1427
+ "name": "phone",
1428
+ "required": true
1429
+ },
1430
+ {
1431
+ "name": "email"
1432
+ }
1433
+ ]
1434
+ },
1435
+ {
1436
+ "title": "Регион компании",
1437
+ "inputs": [
1438
+ {
1439
+ "name": "fullRegion",
1440
+ "required": true
1441
+ }
1442
+ ]
1443
+ },
1444
+ {
1445
+ "title": "Комментарий",
1446
+ "inputs": [
1447
+ {
1448
+ "name": "comment"
1449
+ }
1450
+ ]
1451
+ }
1452
+ ],
1453
+ "button": {
1454
+ "text": "Отправить заявку",
1455
+ "version": "primary"
1456
+ },
1457
+ "link": {
1458
+ "text": "Согласен на обработку персональных данных",
1459
+ "href": "/privacy-policy",
1460
+ "target": "_blank"
1461
+ },
1462
+ "isPremium": false
1463
+ }
1464
+ }
1381
1465
  ]
1382
1466
  ]
@@ -844,4 +844,51 @@ export default {
844
844
  <DialogManager />
845
845
  </div>
846
846
  ),
847
+ partner: (
848
+ <div className="container grid grid-cols-12">
849
+ <ApplicationForm
850
+ className="col-span-12"
851
+ title="Онлайн-заявка от партнера"
852
+ typeForm="PF"
853
+ endpoint="sendcorporatelead"
854
+ sections={[
855
+ {
856
+ title: 'Информация о партнере',
857
+ inputs: [{ name: 'partnerSymbolCode', required: true }],
858
+ },
859
+ {
860
+ title: 'Информация о компании',
861
+ columns: 2,
862
+ inputs: [
863
+ { name: 'innDadata', required: true },
864
+ { name: 'companyNameByInn', required: true },
865
+ ],
866
+ },
867
+ {
868
+ title: 'Данные контактного лица',
869
+ columns: 2,
870
+ inputs: [
871
+ { name: 'surname', required: true },
872
+ { name: 'name', required: true },
873
+ { name: 'phone', required: true },
874
+ { name: 'email' },
875
+ ],
876
+ },
877
+ {
878
+ title: 'Регион компании',
879
+ inputs: [{ name: 'fullRegion', required: true }],
880
+ },
881
+ {
882
+ title: 'Комментарий',
883
+ inputs: [{ name: 'comment' }],
884
+ },
885
+ ]}
886
+ button={button}
887
+ link={linkCorp}
888
+ additionalParams={{ isPremium: false }}
889
+ />
890
+ <PopupManager />
891
+ <DialogManager />
892
+ </div>
893
+ ),
847
894
  };
@@ -839,4 +839,51 @@ export default {
839
839
  <DialogManager />
840
840
  </div>
841
841
  ),
842
+ partner: (
843
+ <div className="container grid grid-cols-12">
844
+ <ApplicationForm
845
+ className="col-span-12"
846
+ title="Онлайн-заявка от партнера"
847
+ typeForm="PF"
848
+ endpoint="sendcorporatelead"
849
+ sections={[
850
+ {
851
+ title: 'Информация о партнере',
852
+ inputs: [{ name: 'partnerSymbolCode', required: true }],
853
+ },
854
+ {
855
+ title: 'Информация о компании',
856
+ columns: 2,
857
+ inputs: [
858
+ { name: 'innDadata', required: true },
859
+ { name: 'companyNameByInn', required: true },
860
+ ],
861
+ },
862
+ {
863
+ title: 'Данные контактного лица',
864
+ columns: 2,
865
+ inputs: [
866
+ { name: 'surname', required: true },
867
+ { name: 'name', required: true },
868
+ { name: 'phone', required: true },
869
+ { name: 'email' },
870
+ ],
871
+ },
872
+ {
873
+ title: 'Регион компании',
874
+ inputs: [{ name: 'fullRegion', required: true }],
875
+ },
876
+ {
877
+ title: 'Комментарий',
878
+ inputs: [{ name: 'comment' }],
879
+ },
880
+ ]}
881
+ button={button}
882
+ link={linkCorp}
883
+ additionalParams={{ isPremium: false }}
884
+ />
885
+ <PopupManager />
886
+ <DialogManager />
887
+ </div>
888
+ ),
842
889
  };
@@ -1,9 +1,10 @@
1
- import { JSX } from '@redneckz/uni-jsx';
2
1
  import { useCallback, useMemo } from '@redneckz/uni-jsx/lib/hooks';
3
2
  import { LeadServiceAPI } from '../../api/LeadServiceAPI';
4
3
  import { handleAspects } from '../../hooks/useAspects/handleAspects';
5
4
  import { useAspects } from '../../hooks/useAspects/useAspects';
6
- import { useForm } from '../../hooks/useForm/useForm';
5
+ import { useForm, type FormFieldRegisterer } from '../../hooks/useForm/useForm';
6
+ import { type FormTypeFieldDef } from '../../model/FormTypeFieldDef';
7
+ import { type SectionsProps } from '../../model/InputSectionsType';
7
8
  import { ApplicationFormLayout } from '../../ui-kit/ApplicationFormLayout/ApplicationFormLayout';
8
9
  import { useDialog } from '../../ui-kit/DialogManager/useDialog';
9
10
  import { getConsentDataProcessing } from '../../ui-kit/FormField/getConsentDataProcessing';
@@ -13,19 +14,29 @@ import { inputColumnStyles } from '../../ui-kit/FormField/inputColumnStyle';
13
14
  import { renderTitle } from '../../ui-kit/FormField/renderTitle';
14
15
  import { type PreventableEventWithTarget } from '../../ui-kit/PreventableEvent';
15
16
  import { ResponseTypeDialog } from '../../ui-kit/ResponseTypeDialog/ResponseTypeDialog';
17
+ import { UniBlock } from '../../UniBlock/UniBlock';
16
18
  import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
17
19
  import { style } from '../../utils/style';
18
- import { type ApplicationFormContent, type FieldDef } from './ApplicationFormContent';
20
+ import {
21
+ type additionalParamsType,
22
+ type ApplicationFormContent,
23
+ type FieldDef,
24
+ } from './ApplicationFormContent';
19
25
  import { getFormatData } from './getFormatData';
20
26
  import { getInitialFormState, type FormState } from './getInitialFormState';
21
27
  import { renderAgreementSubmit } from './renderAgreementSubmit';
22
28
  import { renderContacts } from './renderContacts';
23
29
 
24
- interface ApplicationFormProps extends ApplicationFormContent, UniBlockProps {}
30
+ export interface ApplicationFormProps extends ApplicationFormContent, UniBlockProps {}
31
+
32
+ type renderSectionsType = {
33
+ typeForm: FormTypeFieldDef;
34
+ additionalParams?: additionalParamsType;
35
+ };
25
36
 
26
37
  const API = LeadServiceAPI();
27
38
 
28
- export const ApplicationForm = JSX<ApplicationFormProps>(
39
+ export const ApplicationForm = UniBlock<ApplicationFormProps>(
29
40
  ({
30
41
  className,
31
42
  title,
@@ -80,15 +91,7 @@ export const ApplicationForm = JSX<ApplicationFormProps>(
80
91
  {...rest}
81
92
  >
82
93
  <form onSubmit={onSubmit}>
83
- {sections.map((_, i) => (
84
- <div
85
- key={`section-${i}`}
86
- className={style(inputColumnStyles(_.columns), 'grid gap-x-m')}
87
- >
88
- {renderTitle(_.title)}
89
- {(_?.inputs || [])?.map(getField<FieldDef>(field, { typeForm }))}
90
- </div>
91
- ))}
94
+ {renderSections(sections, field, { typeForm, additionalParams })}
92
95
  {renderAgreementSubmit(
93
96
  fieldName ? field('consentDataProcessing') : undefined,
94
97
  link,
@@ -100,3 +103,15 @@ export const ApplicationForm = JSX<ApplicationFormProps>(
100
103
  );
101
104
  },
102
105
  );
106
+
107
+ const renderSections = (
108
+ sections: SectionsProps[],
109
+ field: FormFieldRegisterer<Record<string, any>>,
110
+ { typeForm, additionalParams }: renderSectionsType,
111
+ ) =>
112
+ sections.map((_, i) => (
113
+ <div key={`section-${i}`} className={style(inputColumnStyles(_.columns), 'grid gap-x-m')}>
114
+ {renderTitle(_.title)}
115
+ {(_?.inputs || [])?.map(getField<FieldDef>(field, { typeForm, ...additionalParams }))}
116
+ </div>
117
+ ));
@@ -1,6 +1,3 @@
1
- /* eslint-disable max-lines */
2
- /* eslint-disable max-len */
3
-
4
1
  import { type AspectsProps } from '../../model/AspectsProps';
5
2
  import { type ColumnsCount } from '../../model/ColumnCount';
6
3
  import { type FormTypeFieldDef } from '../../model/FormTypeFieldDef';
@@ -71,11 +68,16 @@ type productType = {
71
68
  product?: string;
72
69
  };
73
70
 
71
+ type premiumForm = {
72
+ /** @title Форма для премиума */
73
+ isPremium?: boolean;
74
+ };
75
+
74
76
  /**
75
77
  * @title Отображать выбор продукта
76
78
  * @default { "showProduct": "" }
77
79
  */
78
- type additionalParamsType = hideProductDef | showProductDef;
80
+ export type additionalParamsType = premiumForm | hideProductDef | showProductDef;
79
81
 
80
82
  /**
81
83
  * @title Форма заявки настраиваемая
@@ -0,0 +1,26 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { type ButtonProps } from '../../ui-kit/Button/Button';
3
+
4
+ export const DropdownButton = JSX<ButtonProps>(({ onClick, children, ariaLabel }) => {
5
+ if (children) {
6
+ return children;
7
+ }
8
+
9
+ return (
10
+ <button
11
+ type="button"
12
+ className="flex justify-between items-center group/btn h-6 gap-2xs"
13
+ aria-label={ariaLabel}
14
+ onClick={onClick}
15
+ role="button"
16
+ aria-labelledby="labeldiv"
17
+ >
18
+ {Array.from({ length: 3 }, (_, i) => (
19
+ <div
20
+ key={i}
21
+ className="w-[3px] h-[3px] rounded bg-primary-text group-hover/btn:bg-primary-hover group-data-transparent:bg-white"
22
+ />
23
+ ))}
24
+ </button>
25
+ );
26
+ });