@redneckz/wildless-cms-uni-blocks 0.14.573 → 0.14.575

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 (368) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +182 -133
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +1 -1
  5. package/bundle/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +9 -1
  6. package/bundle/components/ApplicationLeadForm/GroupedConsents.d.ts +2 -0
  7. package/bundle/components/ApplicationLeadForm/consents.d.ts +1 -0
  8. package/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +22 -0
  9. package/bundle/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +2 -0
  10. package/bundle/components/OfficesAtmsMap/filters.d.ts +44 -0
  11. package/bundle/components/OfficesAtmsMap/renderButtonsGroup.d.ts +3 -0
  12. package/bundle/components/OfficesAtmsMap/renderFiltrationForm.d.ts +10 -4
  13. package/bundle/components/OfficesAtmsMap/renderHeading.d.ts +2 -0
  14. package/bundle/ui-kit/Checkbox/CheckboxProps.d.ts +0 -5
  15. package/bundle/ui-kit/FormField/Fields/ConsentAssignmentField.d.ts +2 -0
  16. package/bundle/ui-kit/FormField/Fields/ConsentCollectionField.d.ts +2 -0
  17. package/bundle/ui-kit/FormField/Fields/ConsentInformField.d.ts +2 -0
  18. package/bundle/ui-kit/FormField/Fields/ConsentPhotoField.d.ts +2 -0
  19. package/bundle/ui-kit/FormField/Fields/ConsentProviderField.d.ts +2 -0
  20. package/bundle/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.d.ts +2 -0
  21. package/bundle/ui-kit/FormField/Fields/ProcessPersonalDataField.d.ts +2 -0
  22. package/dist/components/ApplicationForm/ApplicationFormContent.d.ts +1 -1
  23. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -1
  24. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  25. package/dist/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +9 -1
  26. package/dist/components/ApplicationLeadForm/GroupedConsents.d.ts +2 -0
  27. package/dist/components/ApplicationLeadForm/GroupedConsents.js +30 -0
  28. package/dist/components/ApplicationLeadForm/GroupedConsents.js.map +1 -0
  29. package/dist/components/ApplicationLeadForm/consents.d.ts +1 -0
  30. package/dist/components/ApplicationLeadForm/consents.js +13 -0
  31. package/dist/components/ApplicationLeadForm/consents.js.map +1 -0
  32. package/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +22 -0
  33. package/dist/components/ApplicationLeadForm/getInitialFormState.js +6 -0
  34. package/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  35. package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +2 -0
  36. package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +21 -25
  37. package/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
  38. package/dist/components/OfficesAtmsMap/OfficesMap.js +1 -29
  39. package/dist/components/OfficesAtmsMap/OfficesMap.js.map +1 -1
  40. package/dist/components/OfficesAtmsMap/filters.d.ts +44 -0
  41. package/dist/components/OfficesAtmsMap/filters.js +46 -0
  42. package/dist/components/OfficesAtmsMap/filters.js.map +1 -0
  43. package/dist/components/OfficesAtmsMap/renderButtonsGroup.d.ts +3 -0
  44. package/dist/components/OfficesAtmsMap/renderButtonsGroup.js +21 -0
  45. package/dist/components/OfficesAtmsMap/renderButtonsGroup.js.map +1 -0
  46. package/dist/components/OfficesAtmsMap/renderFiltrationForm.d.ts +10 -4
  47. package/dist/components/OfficesAtmsMap/renderFiltrationForm.js +2 -21
  48. package/dist/components/OfficesAtmsMap/renderFiltrationForm.js.map +1 -1
  49. package/dist/components/OfficesAtmsMap/renderHeading.d.ts +2 -0
  50. package/dist/components/OfficesAtmsMap/renderHeading.js +8 -0
  51. package/dist/components/OfficesAtmsMap/renderHeading.js.map +1 -0
  52. package/dist/ui-kit/Checkbox/CheckboxProps.d.ts +0 -5
  53. package/dist/ui-kit/Checkbox/CheckboxWithError.js +1 -1
  54. package/dist/ui-kit/Checkbox/CheckboxWithError.js.map +1 -1
  55. package/dist/ui-kit/FormField/Fields/ConsentAssignmentField.d.ts +2 -0
  56. package/dist/ui-kit/FormField/Fields/ConsentAssignmentField.js +9 -0
  57. package/dist/ui-kit/FormField/Fields/ConsentAssignmentField.js.map +1 -0
  58. package/dist/ui-kit/FormField/Fields/ConsentCollectionField.d.ts +2 -0
  59. package/dist/ui-kit/FormField/Fields/ConsentCollectionField.js +9 -0
  60. package/dist/ui-kit/FormField/Fields/ConsentCollectionField.js.map +1 -0
  61. package/dist/ui-kit/FormField/Fields/ConsentInformField.d.ts +2 -0
  62. package/dist/ui-kit/FormField/Fields/ConsentInformField.js +9 -0
  63. package/dist/ui-kit/FormField/Fields/ConsentInformField.js.map +1 -0
  64. package/dist/ui-kit/FormField/Fields/ConsentPhotoField.d.ts +2 -0
  65. package/dist/ui-kit/FormField/Fields/ConsentPhotoField.js +9 -0
  66. package/dist/ui-kit/FormField/Fields/ConsentPhotoField.js.map +1 -0
  67. package/dist/ui-kit/FormField/Fields/ConsentProviderField.d.ts +2 -0
  68. package/dist/ui-kit/FormField/Fields/ConsentProviderField.js +9 -0
  69. package/dist/ui-kit/FormField/Fields/ConsentProviderField.js.map +1 -0
  70. package/dist/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.d.ts +2 -0
  71. package/dist/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.js +7 -0
  72. package/dist/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.js.map +1 -0
  73. package/dist/ui-kit/FormField/Fields/ProcessPersonalDataField.d.ts +2 -0
  74. package/dist/ui-kit/FormField/Fields/ProcessPersonalDataField.js +9 -0
  75. package/dist/ui-kit/FormField/Fields/ProcessPersonalDataField.js.map +1 -0
  76. package/dist/ui-kit/FormField/getField.js +15 -3
  77. package/dist/ui-kit/FormField/getField.js.map +1 -1
  78. package/dist/ui-kit/FormField/getObjectValidator.js +8 -1
  79. package/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  80. package/dist/ui-kit/YandexMap/renderClusterer.js +4 -1
  81. package/dist/ui-kit/YandexMap/renderClusterer.js.map +1 -1
  82. package/lib/common.css +1 -1
  83. package/lib/components/ApplicationForm/ApplicationFormContent.d.ts +1 -1
  84. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -1
  85. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  86. package/lib/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +9 -1
  87. package/lib/components/ApplicationLeadForm/GroupedConsents.d.ts +2 -0
  88. package/lib/components/ApplicationLeadForm/GroupedConsents.js +28 -0
  89. package/lib/components/ApplicationLeadForm/GroupedConsents.js.map +1 -0
  90. package/lib/components/ApplicationLeadForm/consents.d.ts +1 -0
  91. package/lib/components/ApplicationLeadForm/consents.js +11 -0
  92. package/lib/components/ApplicationLeadForm/consents.js.map +1 -0
  93. package/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +22 -0
  94. package/lib/components/ApplicationLeadForm/getInitialFormState.js +6 -0
  95. package/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  96. package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +2 -0
  97. package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +16 -22
  98. package/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
  99. package/lib/components/OfficesAtmsMap/OfficesMap.js +1 -29
  100. package/lib/components/OfficesAtmsMap/OfficesMap.js.map +1 -1
  101. package/lib/components/OfficesAtmsMap/filters.d.ts +44 -0
  102. package/lib/components/OfficesAtmsMap/filters.js +44 -0
  103. package/lib/components/OfficesAtmsMap/filters.js.map +1 -0
  104. package/lib/components/OfficesAtmsMap/renderButtonsGroup.d.ts +2 -0
  105. package/lib/components/OfficesAtmsMap/renderButtonsGroup.js +18 -0
  106. package/lib/components/OfficesAtmsMap/renderButtonsGroup.js.map +1 -0
  107. package/lib/components/OfficesAtmsMap/renderFiltrationForm.d.ts +10 -4
  108. package/lib/components/OfficesAtmsMap/renderFiltrationForm.js +2 -21
  109. package/lib/components/OfficesAtmsMap/renderFiltrationForm.js.map +1 -1
  110. package/lib/components/OfficesAtmsMap/renderHeading.d.ts +1 -0
  111. package/lib/components/OfficesAtmsMap/renderHeading.js +5 -0
  112. package/lib/components/OfficesAtmsMap/renderHeading.js.map +1 -0
  113. package/lib/ui-kit/Checkbox/CheckboxProps.d.ts +0 -5
  114. package/lib/ui-kit/Checkbox/CheckboxWithError.js +1 -1
  115. package/lib/ui-kit/Checkbox/CheckboxWithError.js.map +1 -1
  116. package/lib/ui-kit/FormField/Fields/ConsentAssignmentField.d.ts +2 -0
  117. package/lib/ui-kit/FormField/Fields/ConsentAssignmentField.js +7 -0
  118. package/lib/ui-kit/FormField/Fields/ConsentAssignmentField.js.map +1 -0
  119. package/lib/ui-kit/FormField/Fields/ConsentCollectionField.d.ts +2 -0
  120. package/lib/ui-kit/FormField/Fields/ConsentCollectionField.js +7 -0
  121. package/lib/ui-kit/FormField/Fields/ConsentCollectionField.js.map +1 -0
  122. package/lib/ui-kit/FormField/Fields/ConsentInformField.d.ts +2 -0
  123. package/lib/ui-kit/FormField/Fields/ConsentInformField.js +7 -0
  124. package/lib/ui-kit/FormField/Fields/ConsentInformField.js.map +1 -0
  125. package/lib/ui-kit/FormField/Fields/ConsentPhotoField.d.ts +2 -0
  126. package/lib/ui-kit/FormField/Fields/ConsentPhotoField.js +7 -0
  127. package/lib/ui-kit/FormField/Fields/ConsentPhotoField.js.map +1 -0
  128. package/lib/ui-kit/FormField/Fields/ConsentProviderField.d.ts +2 -0
  129. package/lib/ui-kit/FormField/Fields/ConsentProviderField.js +7 -0
  130. package/lib/ui-kit/FormField/Fields/ConsentProviderField.js.map +1 -0
  131. package/lib/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.d.ts +2 -0
  132. package/lib/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.js +5 -0
  133. package/lib/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.js.map +1 -0
  134. package/lib/ui-kit/FormField/Fields/ProcessPersonalDataField.d.ts +2 -0
  135. package/lib/ui-kit/FormField/Fields/ProcessPersonalDataField.js +7 -0
  136. package/lib/ui-kit/FormField/Fields/ProcessPersonalDataField.js.map +1 -0
  137. package/lib/ui-kit/FormField/getField.js +15 -3
  138. package/lib/ui-kit/FormField/getField.js.map +1 -1
  139. package/lib/ui-kit/FormField/getObjectValidator.js +8 -1
  140. package/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  141. package/lib/ui-kit/YandexMap/renderClusterer.js +4 -1
  142. package/lib/ui-kit/YandexMap/renderClusterer.js.map +1 -1
  143. package/mobile/bundle/bundle.umd.js +182 -133
  144. package/mobile/bundle/bundle.umd.min.js +1 -1
  145. package/mobile/bundle/components/ApplicationForm/ApplicationFormContent.d.ts +1 -1
  146. package/mobile/bundle/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +9 -1
  147. package/mobile/bundle/components/ApplicationLeadForm/GroupedConsents.d.ts +2 -0
  148. package/mobile/bundle/components/ApplicationLeadForm/consents.d.ts +1 -0
  149. package/mobile/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +22 -0
  150. package/mobile/bundle/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +2 -0
  151. package/mobile/bundle/components/OfficesAtmsMap/filters.d.ts +44 -0
  152. package/mobile/bundle/components/OfficesAtmsMap/renderButtonsGroup.d.ts +3 -0
  153. package/mobile/bundle/components/OfficesAtmsMap/renderFiltrationForm.d.ts +10 -4
  154. package/mobile/bundle/components/OfficesAtmsMap/renderHeading.d.ts +2 -0
  155. package/mobile/bundle/ui-kit/Checkbox/CheckboxProps.d.ts +0 -5
  156. package/mobile/bundle/ui-kit/FormField/Fields/ConsentAssignmentField.d.ts +2 -0
  157. package/mobile/bundle/ui-kit/FormField/Fields/ConsentCollectionField.d.ts +2 -0
  158. package/mobile/bundle/ui-kit/FormField/Fields/ConsentInformField.d.ts +2 -0
  159. package/mobile/bundle/ui-kit/FormField/Fields/ConsentPhotoField.d.ts +2 -0
  160. package/mobile/bundle/ui-kit/FormField/Fields/ConsentProviderField.d.ts +2 -0
  161. package/mobile/bundle/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.d.ts +2 -0
  162. package/mobile/bundle/ui-kit/FormField/Fields/ProcessPersonalDataField.d.ts +2 -0
  163. package/mobile/dist/components/ApplicationForm/ApplicationFormContent.d.ts +1 -1
  164. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -1
  165. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  166. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +9 -1
  167. package/mobile/dist/components/ApplicationLeadForm/GroupedConsents.d.ts +2 -0
  168. package/mobile/dist/components/ApplicationLeadForm/GroupedConsents.js +30 -0
  169. package/mobile/dist/components/ApplicationLeadForm/GroupedConsents.js.map +1 -0
  170. package/mobile/dist/components/ApplicationLeadForm/consents.d.ts +1 -0
  171. package/mobile/dist/components/ApplicationLeadForm/consents.js +13 -0
  172. package/mobile/dist/components/ApplicationLeadForm/consents.js.map +1 -0
  173. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +22 -0
  174. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.js +6 -0
  175. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  176. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +2 -0
  177. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +21 -25
  178. package/mobile/dist/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
  179. package/mobile/dist/components/OfficesAtmsMap/OfficesMap.js +1 -29
  180. package/mobile/dist/components/OfficesAtmsMap/OfficesMap.js.map +1 -1
  181. package/mobile/dist/components/OfficesAtmsMap/filters.d.ts +44 -0
  182. package/mobile/dist/components/OfficesAtmsMap/filters.js +46 -0
  183. package/mobile/dist/components/OfficesAtmsMap/filters.js.map +1 -0
  184. package/mobile/dist/components/OfficesAtmsMap/renderButtonsGroup.d.ts +3 -0
  185. package/mobile/dist/components/OfficesAtmsMap/renderButtonsGroup.js +21 -0
  186. package/mobile/dist/components/OfficesAtmsMap/renderButtonsGroup.js.map +1 -0
  187. package/mobile/dist/components/OfficesAtmsMap/renderFiltrationForm.d.ts +10 -4
  188. package/mobile/dist/components/OfficesAtmsMap/renderFiltrationForm.js +2 -21
  189. package/mobile/dist/components/OfficesAtmsMap/renderFiltrationForm.js.map +1 -1
  190. package/mobile/dist/components/OfficesAtmsMap/renderHeading.d.ts +2 -0
  191. package/mobile/dist/components/OfficesAtmsMap/renderHeading.js +8 -0
  192. package/mobile/dist/components/OfficesAtmsMap/renderHeading.js.map +1 -0
  193. package/mobile/dist/ui-kit/Checkbox/CheckboxProps.d.ts +0 -5
  194. package/mobile/dist/ui-kit/Checkbox/CheckboxWithError.js +1 -1
  195. package/mobile/dist/ui-kit/Checkbox/CheckboxWithError.js.map +1 -1
  196. package/mobile/dist/ui-kit/FormField/Fields/ConsentAssignmentField.d.ts +2 -0
  197. package/mobile/dist/ui-kit/FormField/Fields/ConsentAssignmentField.js +9 -0
  198. package/mobile/dist/ui-kit/FormField/Fields/ConsentAssignmentField.js.map +1 -0
  199. package/mobile/dist/ui-kit/FormField/Fields/ConsentCollectionField.d.ts +2 -0
  200. package/mobile/dist/ui-kit/FormField/Fields/ConsentCollectionField.js +9 -0
  201. package/mobile/dist/ui-kit/FormField/Fields/ConsentCollectionField.js.map +1 -0
  202. package/mobile/dist/ui-kit/FormField/Fields/ConsentInformField.d.ts +2 -0
  203. package/mobile/dist/ui-kit/FormField/Fields/ConsentInformField.js +9 -0
  204. package/mobile/dist/ui-kit/FormField/Fields/ConsentInformField.js.map +1 -0
  205. package/mobile/dist/ui-kit/FormField/Fields/ConsentPhotoField.d.ts +2 -0
  206. package/mobile/dist/ui-kit/FormField/Fields/ConsentPhotoField.js +9 -0
  207. package/mobile/dist/ui-kit/FormField/Fields/ConsentPhotoField.js.map +1 -0
  208. package/mobile/dist/ui-kit/FormField/Fields/ConsentProviderField.d.ts +2 -0
  209. package/mobile/dist/ui-kit/FormField/Fields/ConsentProviderField.js +9 -0
  210. package/mobile/dist/ui-kit/FormField/Fields/ConsentProviderField.js.map +1 -0
  211. package/mobile/dist/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.d.ts +2 -0
  212. package/mobile/dist/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.js +7 -0
  213. package/mobile/dist/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.js.map +1 -0
  214. package/mobile/dist/ui-kit/FormField/Fields/ProcessPersonalDataField.d.ts +2 -0
  215. package/mobile/dist/ui-kit/FormField/Fields/ProcessPersonalDataField.js +9 -0
  216. package/mobile/dist/ui-kit/FormField/Fields/ProcessPersonalDataField.js.map +1 -0
  217. package/mobile/dist/ui-kit/FormField/getField.js +15 -3
  218. package/mobile/dist/ui-kit/FormField/getField.js.map +1 -1
  219. package/mobile/dist/ui-kit/FormField/getObjectValidator.js +8 -1
  220. package/mobile/dist/ui-kit/FormField/getObjectValidator.js.map +1 -1
  221. package/mobile/dist/ui-kit/YandexMap/renderClusterer.js +4 -1
  222. package/mobile/dist/ui-kit/YandexMap/renderClusterer.js.map +1 -1
  223. package/mobile/lib/common.css +1 -1
  224. package/mobile/lib/components/ApplicationForm/ApplicationFormContent.d.ts +1 -1
  225. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +11 -1
  226. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  227. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadFormContent.d.ts +9 -1
  228. package/mobile/lib/components/ApplicationLeadForm/GroupedConsents.d.ts +2 -0
  229. package/mobile/lib/components/ApplicationLeadForm/GroupedConsents.js +28 -0
  230. package/mobile/lib/components/ApplicationLeadForm/GroupedConsents.js.map +1 -0
  231. package/mobile/lib/components/ApplicationLeadForm/consents.d.ts +1 -0
  232. package/mobile/lib/components/ApplicationLeadForm/consents.js +11 -0
  233. package/mobile/lib/components/ApplicationLeadForm/consents.js.map +1 -0
  234. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +22 -0
  235. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.js +6 -0
  236. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  237. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.d.ts +2 -0
  238. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js +16 -22
  239. package/mobile/lib/components/OfficesAtmsMap/OfficesAtmsMapLayout.js.map +1 -1
  240. package/mobile/lib/components/OfficesAtmsMap/OfficesMap.js +1 -29
  241. package/mobile/lib/components/OfficesAtmsMap/OfficesMap.js.map +1 -1
  242. package/mobile/lib/components/OfficesAtmsMap/filters.d.ts +44 -0
  243. package/mobile/lib/components/OfficesAtmsMap/filters.js +44 -0
  244. package/mobile/lib/components/OfficesAtmsMap/filters.js.map +1 -0
  245. package/mobile/lib/components/OfficesAtmsMap/renderButtonsGroup.d.ts +3 -0
  246. package/mobile/lib/components/OfficesAtmsMap/renderButtonsGroup.js +18 -0
  247. package/mobile/lib/components/OfficesAtmsMap/renderButtonsGroup.js.map +1 -0
  248. package/mobile/lib/components/OfficesAtmsMap/renderFiltrationForm.d.ts +10 -4
  249. package/mobile/lib/components/OfficesAtmsMap/renderFiltrationForm.js +2 -21
  250. package/mobile/lib/components/OfficesAtmsMap/renderFiltrationForm.js.map +1 -1
  251. package/mobile/lib/components/OfficesAtmsMap/renderHeading.d.ts +2 -0
  252. package/mobile/lib/components/OfficesAtmsMap/renderHeading.js +5 -0
  253. package/mobile/lib/components/OfficesAtmsMap/renderHeading.js.map +1 -0
  254. package/mobile/lib/ui-kit/Checkbox/CheckboxProps.d.ts +0 -5
  255. package/mobile/lib/ui-kit/Checkbox/CheckboxWithError.js +1 -1
  256. package/mobile/lib/ui-kit/Checkbox/CheckboxWithError.js.map +1 -1
  257. package/mobile/lib/ui-kit/FormField/Fields/ConsentAssignmentField.d.ts +2 -0
  258. package/mobile/lib/ui-kit/FormField/Fields/ConsentAssignmentField.js +7 -0
  259. package/mobile/lib/ui-kit/FormField/Fields/ConsentAssignmentField.js.map +1 -0
  260. package/mobile/lib/ui-kit/FormField/Fields/ConsentCollectionField.d.ts +2 -0
  261. package/mobile/lib/ui-kit/FormField/Fields/ConsentCollectionField.js +7 -0
  262. package/mobile/lib/ui-kit/FormField/Fields/ConsentCollectionField.js.map +1 -0
  263. package/mobile/lib/ui-kit/FormField/Fields/ConsentInformField.d.ts +2 -0
  264. package/mobile/lib/ui-kit/FormField/Fields/ConsentInformField.js +7 -0
  265. package/mobile/lib/ui-kit/FormField/Fields/ConsentInformField.js.map +1 -0
  266. package/mobile/lib/ui-kit/FormField/Fields/ConsentPhotoField.d.ts +2 -0
  267. package/mobile/lib/ui-kit/FormField/Fields/ConsentPhotoField.js +7 -0
  268. package/mobile/lib/ui-kit/FormField/Fields/ConsentPhotoField.js.map +1 -0
  269. package/mobile/lib/ui-kit/FormField/Fields/ConsentProviderField.d.ts +2 -0
  270. package/mobile/lib/ui-kit/FormField/Fields/ConsentProviderField.js +7 -0
  271. package/mobile/lib/ui-kit/FormField/Fields/ConsentProviderField.js.map +1 -0
  272. package/mobile/lib/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.d.ts +2 -0
  273. package/mobile/lib/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.js +5 -0
  274. package/mobile/lib/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.js.map +1 -0
  275. package/mobile/lib/ui-kit/FormField/Fields/ProcessPersonalDataField.d.ts +2 -0
  276. package/mobile/lib/ui-kit/FormField/Fields/ProcessPersonalDataField.js +7 -0
  277. package/mobile/lib/ui-kit/FormField/Fields/ProcessPersonalDataField.js.map +1 -0
  278. package/mobile/lib/ui-kit/FormField/getField.js +15 -3
  279. package/mobile/lib/ui-kit/FormField/getField.js.map +1 -1
  280. package/mobile/lib/ui-kit/FormField/getObjectValidator.js +8 -1
  281. package/mobile/lib/ui-kit/FormField/getObjectValidator.js.map +1 -1
  282. package/mobile/lib/ui-kit/YandexMap/renderClusterer.js +4 -1
  283. package/mobile/lib/ui-kit/YandexMap/renderClusterer.js.map +1 -1
  284. package/mobile/src/components/ApplicationForm/ApplicationFormContent.ts +7 -1
  285. package/mobile/src/components/ApplicationLeadForm/ApplicationLeadForm.example.json +30 -1
  286. package/mobile/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +26 -2
  287. package/mobile/src/components/ApplicationLeadForm/ApplicationLeadFormContent.ts +16 -1
  288. package/mobile/src/components/ApplicationLeadForm/GroupedConsents.tsx +79 -0
  289. package/mobile/src/components/ApplicationLeadForm/consents.ts +10 -0
  290. package/mobile/src/components/ApplicationLeadForm/getInitialFormState.tsx +28 -0
  291. package/mobile/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +22 -58
  292. package/mobile/src/components/OfficesAtmsMap/OfficesMap.tsx +0 -47
  293. package/mobile/src/components/OfficesAtmsMap/filters.ts +56 -0
  294. package/mobile/src/components/OfficesAtmsMap/renderButtonsGroup.tsx +43 -0
  295. package/mobile/src/components/OfficesAtmsMap/renderFiltrationForm.tsx +14 -26
  296. package/mobile/src/components/OfficesAtmsMap/renderHeading.tsx +15 -0
  297. package/mobile/src/ui-kit/Checkbox/CheckboxProps.ts +0 -6
  298. package/mobile/src/ui-kit/Checkbox/CheckboxWithError.tsx +1 -1
  299. package/mobile/src/ui-kit/FormField/Fields/ConsentAssignmentField.tsx +12 -0
  300. package/mobile/src/ui-kit/FormField/Fields/ConsentCollectionField.tsx +12 -0
  301. package/mobile/src/ui-kit/FormField/Fields/ConsentInformField.tsx +12 -0
  302. package/mobile/src/ui-kit/FormField/Fields/ConsentPhotoField.tsx +12 -0
  303. package/mobile/src/ui-kit/FormField/Fields/ConsentProviderField.tsx +12 -0
  304. package/mobile/src/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.tsx +10 -0
  305. package/mobile/src/ui-kit/FormField/Fields/ProcessPersonalDataField.tsx +12 -0
  306. package/mobile/src/ui-kit/FormField/getField.tsx +17 -8
  307. package/mobile/src/ui-kit/FormField/getObjectValidator.tsx +8 -1
  308. package/mobile/src/ui-kit/YandexMap/renderClusterer.ts +6 -2
  309. package/package.json +1 -1
  310. package/src/components/ApplicationForm/ApplicationFormContent.ts +7 -1
  311. package/src/components/ApplicationLeadForm/ApplicationLeadForm.example.json +30 -1
  312. package/src/components/ApplicationLeadForm/ApplicationLeadForm.fixture.mobile.tsx +11 -1
  313. package/src/components/ApplicationLeadForm/ApplicationLeadForm.fixture.tsx +11 -1
  314. package/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +26 -2
  315. package/src/components/ApplicationLeadForm/ApplicationLeadFormContent.ts +16 -1
  316. package/src/components/ApplicationLeadForm/GroupedConsents.tsx +79 -0
  317. package/src/components/ApplicationLeadForm/consents.ts +10 -0
  318. package/src/components/ApplicationLeadForm/getInitialFormState.tsx +28 -0
  319. package/src/components/OfficesAtmsMap/OfficesAtmsMapLayout.tsx +22 -58
  320. package/src/components/OfficesAtmsMap/OfficesMap.tsx +0 -47
  321. package/src/components/OfficesAtmsMap/filters.ts +56 -0
  322. package/src/components/OfficesAtmsMap/renderButtonsGroup.tsx +43 -0
  323. package/src/components/OfficesAtmsMap/renderFiltrationForm.tsx +14 -26
  324. package/src/components/OfficesAtmsMap/renderHeading.tsx +15 -0
  325. package/src/ui-kit/Checkbox/CheckboxProps.ts +0 -6
  326. package/src/ui-kit/Checkbox/CheckboxWithError.tsx +1 -1
  327. package/src/ui-kit/FormField/Fields/ConsentAssignmentField.tsx +12 -0
  328. package/src/ui-kit/FormField/Fields/ConsentCollectionField.tsx +12 -0
  329. package/src/ui-kit/FormField/Fields/ConsentInformField.tsx +12 -0
  330. package/src/ui-kit/FormField/Fields/ConsentPhotoField.tsx +12 -0
  331. package/src/ui-kit/FormField/Fields/ConsentProviderField.tsx +12 -0
  332. package/src/ui-kit/FormField/Fields/ConsentToReceiveMaterialsField.tsx +10 -0
  333. package/src/ui-kit/FormField/Fields/ProcessPersonalDataField.tsx +12 -0
  334. package/src/ui-kit/FormField/getField.tsx +17 -8
  335. package/src/ui-kit/FormField/getObjectValidator.tsx +8 -1
  336. package/src/ui-kit/YandexMap/renderClusterer.ts +6 -2
  337. package/bundle/ui-kit/Checkbox/CheckboxGroup.d.ts +0 -2
  338. package/bundle/ui-kit/FormField/Fields/ConsentToAllDocsField.d.ts +0 -2
  339. package/dist/ui-kit/Checkbox/CheckboxGroup.d.ts +0 -2
  340. package/dist/ui-kit/Checkbox/CheckboxGroup.js +0 -20
  341. package/dist/ui-kit/Checkbox/CheckboxGroup.js.map +0 -1
  342. package/dist/ui-kit/FormField/Fields/ConsentToAllDocsField.d.ts +0 -2
  343. package/dist/ui-kit/FormField/Fields/ConsentToAllDocsField.js +0 -26
  344. package/dist/ui-kit/FormField/Fields/ConsentToAllDocsField.js.map +0 -1
  345. package/lib/ui-kit/Checkbox/CheckboxGroup.d.ts +0 -2
  346. package/lib/ui-kit/Checkbox/CheckboxGroup.js +0 -18
  347. package/lib/ui-kit/Checkbox/CheckboxGroup.js.map +0 -1
  348. package/lib/ui-kit/FormField/Fields/ConsentToAllDocsField.d.ts +0 -2
  349. package/lib/ui-kit/FormField/Fields/ConsentToAllDocsField.js +0 -24
  350. package/lib/ui-kit/FormField/Fields/ConsentToAllDocsField.js.map +0 -1
  351. package/mobile/bundle/ui-kit/Checkbox/CheckboxGroup.d.ts +0 -2
  352. package/mobile/bundle/ui-kit/FormField/Fields/ConsentToAllDocsField.d.ts +0 -2
  353. package/mobile/dist/ui-kit/Checkbox/CheckboxGroup.d.ts +0 -2
  354. package/mobile/dist/ui-kit/Checkbox/CheckboxGroup.js +0 -20
  355. package/mobile/dist/ui-kit/Checkbox/CheckboxGroup.js.map +0 -1
  356. package/mobile/dist/ui-kit/FormField/Fields/ConsentToAllDocsField.d.ts +0 -2
  357. package/mobile/dist/ui-kit/FormField/Fields/ConsentToAllDocsField.js +0 -26
  358. package/mobile/dist/ui-kit/FormField/Fields/ConsentToAllDocsField.js.map +0 -1
  359. package/mobile/lib/ui-kit/Checkbox/CheckboxGroup.d.ts +0 -2
  360. package/mobile/lib/ui-kit/Checkbox/CheckboxGroup.js +0 -18
  361. package/mobile/lib/ui-kit/Checkbox/CheckboxGroup.js.map +0 -1
  362. package/mobile/lib/ui-kit/FormField/Fields/ConsentToAllDocsField.d.ts +0 -2
  363. package/mobile/lib/ui-kit/FormField/Fields/ConsentToAllDocsField.js +0 -24
  364. package/mobile/lib/ui-kit/FormField/Fields/ConsentToAllDocsField.js.map +0 -1
  365. package/mobile/src/ui-kit/Checkbox/CheckboxGroup.tsx +0 -52
  366. package/mobile/src/ui-kit/FormField/Fields/ConsentToAllDocsField.tsx +0 -29
  367. package/src/ui-kit/Checkbox/CheckboxGroup.tsx +0 -52
  368. package/src/ui-kit/FormField/Fields/ConsentToAllDocsField.tsx +0 -29
@@ -12,9 +12,15 @@ import { type UniBlockProps } from '../../UniBlock/UniBlockProps';
12
12
  import { style } from '../../utils/style';
13
13
  import { objectValidator } from '../../validation/objectValidator';
14
14
  import { isValidationSuccess } from '../../validation/validator';
15
- import { type ApplicationLeadFormContent, type FieldDef } from './ApplicationLeadFormContent';
15
+ import {
16
+ type ApplicationLeadFormContent,
17
+ type FieldDef,
18
+ type GroupedConsentsProps,
19
+ } from './ApplicationLeadFormContent';
20
+ import { CONSENTS } from './consents';
16
21
  import { getFormatData } from './getFormatData';
17
22
  import { getInitialFormState, type FormState } from './getInitialFormState';
23
+ import { GroupedConsents } from './GroupedConsents';
18
24
  import { renderSubmitButton } from './renderSubmitButton';
19
25
 
20
26
  interface ApplicationLeadFormProps extends ApplicationLeadFormContent, UniBlockProps {}
@@ -66,7 +72,7 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
66
72
  className={style(inputColumnStyles(_.columns), 'grid gap-x-m')}
67
73
  >
68
74
  {renderTitle(_.title)}
69
- {(_?.inputs || [])?.map(getField(field, typeForm))}
75
+ {renderInputs({ field, typeForm, inputs: _?.inputs })}
70
76
  </div>
71
77
  ))}
72
78
  {renderSubmitButton(button)}
@@ -75,3 +81,21 @@ export const ApplicationLeadForm = JSX<ApplicationLeadFormProps>(
75
81
  );
76
82
  },
77
83
  );
84
+
85
+ const renderInputs = ({ field, typeForm = '', inputs }: GroupedConsentsProps) => {
86
+ const { consentInputs, restInputs } = splitInputs(inputs || []);
87
+
88
+ return consentInputs.length > 2 ? (
89
+ <div>
90
+ {restInputs.map(getField(field, typeForm))}
91
+ <GroupedConsents inputs={consentInputs} field={field} />
92
+ </div>
93
+ ) : (
94
+ (inputs || [])?.map(getField(field, typeForm))
95
+ );
96
+ };
97
+
98
+ const splitInputs = (inputs?: FieldDef[]) => ({
99
+ consentInputs: inputs?.filter((_) => CONSENTS.includes(_.name)) || [],
100
+ restInputs: inputs?.filter((_) => !CONSENTS.includes(_.name)) || [],
101
+ });
@@ -1,9 +1,11 @@
1
1
  /* eslint-disable max-len */
2
2
 
3
+ import { type FormFieldRegisterer } from '../../hooks/useForm';
3
4
  import { type LabelProps, type TextProps, type TitleProps } from '../../model/HeadlineType';
4
5
  import { type LinkButtonVersion } from '../../model/LinkButtonVersion';
5
6
  import { type Target } from '../../model/LinkProps';
6
7
  import { type UniBlockContent } from '../../UniBlock/UniBlockProps';
8
+ import { type FormState } from './getInitialFormState';
7
9
 
8
10
  interface Required {
9
11
  /** @title Обязательно для заполнения */
@@ -53,7 +55,13 @@ export type NameFieldDef =
53
55
  | 'localities'
54
56
  | 'partnerComments'
55
57
  | 'consentDataProcessing'
56
- | 'consentToAllDocs';
58
+ | 'consentInformFlg'
59
+ | 'consentCollectionFlg'
60
+ | 'consentAssignmentClaimsFlg'
61
+ | 'consentPhotoFlg'
62
+ | 'consentPfrFlg'
63
+ | 'consentProviderFlg'
64
+ | 'processPersonalDataLeadFlg';
57
65
 
58
66
  export type ConditionFieldProps = {
59
67
  /** @title Условия отображения полей формы */
@@ -160,3 +168,10 @@ export type ApplicationLeadFormContent = UniBlockContent &
160
168
  sections?: SectionsProps[];
161
169
  endpoint?: EndpointType;
162
170
  };
171
+
172
+ /** @hidden */
173
+ export interface GroupedConsentsProps {
174
+ inputs?: FieldDef[];
175
+ typeForm?: TypeFormFieldDef | string;
176
+ field: FormFieldRegisterer<FormState>;
177
+ }
@@ -0,0 +1,79 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { useMemo } from '@redneckz/uni-jsx/lib/hooks';
3
+ import { type VNode } from '../../model/VNode';
4
+ import { Checkbox } from '../../ui-kit/Checkbox/Checkbox';
5
+ import { Foldable } from '../../ui-kit/Foldable/Foldable';
6
+ import { type FoldablePartProps } from '../../ui-kit/Foldable/FoldablePartProps';
7
+ import { FoldableSection } from '../../ui-kit/Foldable/FoldableSection';
8
+ import { getField } from '../../ui-kit/FormField/getField';
9
+ import { validatorObj } from '../../ui-kit/FormField/getObjectValidator';
10
+ import { Icon } from '../../ui-kit/Icon/Icon';
11
+ import { renderErrorText } from '../../ui-kit/Input/renderErrorText';
12
+ import { withValidator } from '../../validation/withValidator';
13
+ import { type GroupedConsentsProps } from './ApplicationLeadFormContent';
14
+ import { type FormState } from './getInitialFormState';
15
+
16
+ const CONSENT_ALL_DOCS_TEXT = 'Согласие на все документы';
17
+ const CONSENT_REQUIRED = 'Отметьте все обязательные соглашения';
18
+
19
+ export const GroupedConsents = JSX<GroupedConsentsProps>(
20
+ ({ inputs = [], typeForm = '', field, key }) => {
21
+ const isChecked = inputs.every((_) => Boolean(field(_.name).value));
22
+
23
+ const handleGeneralToggle = (value: boolean) => {
24
+ for (const item of inputs) {
25
+ const itemField = field(item.name as keyof FormState);
26
+ itemField?.onChange && itemField.onChange(value);
27
+ }
28
+ };
29
+
30
+ const hasValidationErrors = useMemo(
31
+ () =>
32
+ inputs
33
+ ?.filter((_) => _.required)
34
+ ?.some((_) => Boolean(withValidator(field(_?.name), validatorObj[_?.name]).error)),
35
+ [inputs],
36
+ );
37
+
38
+ return (
39
+ <div className="w-fit">
40
+ <Foldable
41
+ isFoldButtonOnTop
42
+ renderFoldableSection={({ isUnfolded }) => (
43
+ <FoldableSection isUnfolded={isUnfolded} className="flex flex-col pl-2xl">
44
+ {inputs.map(getField(field, typeForm))}
45
+ </FoldableSection>
46
+ )}
47
+ renderFoldButton={renderGeneralCheckbox(
48
+ <div>
49
+ <Checkbox
50
+ value={isChecked}
51
+ onChange={handleGeneralToggle}
52
+ text={CONSENT_ALL_DOCS_TEXT}
53
+ key={key}
54
+ />
55
+ {renderErrorText(hasValidationErrors ? CONSENT_REQUIRED : '')}
56
+ </div>,
57
+ )}
58
+ />
59
+ </div>
60
+ );
61
+ },
62
+ );
63
+
64
+ const renderGeneralCheckbox =
65
+ (generalCheckBox: VNode) =>
66
+ (foldableData: FoldablePartProps): VNode =>
67
+ (
68
+ <div className="flex items-start">
69
+ {generalCheckBox}
70
+ <button onClick={foldableData.onToggle} className="px-m py-2xs">
71
+ <Icon
72
+ className="text-primary-text"
73
+ name={foldableData.isUnfolded ? 'ArrowUpIcon' : 'ArrowDownIcon'}
74
+ width="16"
75
+ height="16"
76
+ />
77
+ </button>
78
+ </div>
79
+ );
@@ -0,0 +1,10 @@
1
+ export const CONSENTS = [
2
+ 'processPersonalDataLeadFlg',
3
+ 'consentProviderFlg',
4
+ 'consentPfrFlg',
5
+ 'consentPhotoFlg',
6
+ 'consentAssignmentClaimsFlg',
7
+ 'consentCollectionFlg',
8
+ 'consentInformFlg',
9
+ 'consentToReceiveMaterials',
10
+ ];
@@ -14,6 +14,7 @@ export interface FormState {
14
14
  surname?: string;
15
15
  name?: string;
16
16
  middleName?: string;
17
+ fullName?: string;
17
18
  birthday?: Date;
18
19
  phone?: string;
19
20
  secondaryPhone?: string;
@@ -28,7 +29,28 @@ export interface FormState {
28
29
  term?: number;
29
30
  amount?: number;
30
31
  annualRevenue?: string;
32
+ serviceDirection?: string;
33
+ desiredMeetingDate?: string;
34
+ inn?: number;
35
+ addressBranch?: string;
36
+ bankEmpolee?: string;
37
+ applicationDate?: string;
38
+ comment?: string;
39
+ isClient?: boolean;
40
+ feedbackMethod?: string;
41
+ collectionCount?: number;
42
+ product?: string;
43
+ localities?: string[];
44
+ partnerComments?: string;
31
45
  consentDataProcessing?: boolean;
46
+ processPersonalDataLeadFlg?: boolean;
47
+ consentProviderFlg?: boolean;
48
+ consentPfrFlg?: boolean;
49
+ consentPhotoFlg?: boolean;
50
+ consentAssignmentClaimsFlg?: boolean;
51
+ consentCollectionFlg?: boolean;
52
+ consentInformFlg?: boolean;
53
+ consentToReceiveMaterials?: boolean;
32
54
  }
33
55
 
34
56
  const initialFormState = {
@@ -57,6 +79,12 @@ const initialFormState = {
57
79
  posTerminal: false,
58
80
  consentToReceiveMaterials: false,
59
81
  consentDataProcessing: false,
82
+ processPersonalDataLeadFlg: false,
83
+ consentProviderFlg: false,
84
+ consentPhotoFlg: false,
85
+ consentAssignmentClaimsFlg: false,
86
+ consentCollectionFlg: false,
87
+ consentInformFlg: false,
60
88
  };
61
89
 
62
90
  export const getInitialFormState = (inputs: FieldDef[], typeForm = ''): FormState => {
@@ -2,21 +2,19 @@ import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useMemo, useState } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { useForm } from '../../hooks/useForm';
4
4
  import { type VNode } from '../../model/VNode';
5
- import { Button } from '../../ui-kit/Button/Button';
6
5
  import { ClientOnly } from '../../ui-kit/ClientOnly';
7
- import { Heading } from '../../ui-kit/Heading/Heading';
8
- import { Text } from '../../ui-kit/Text/Text';
9
6
  import { YandexMap } from '../../ui-kit/YandexMap/YandexMap';
10
- import { getVersion } from '../../utils/getVersion';
11
7
  import { style } from '../../utils/style';
8
+ import { FILTRATION_LABELS, FILTRATION_PREDICATES, INITIAL_FILTRATION_STATE } from './filters';
12
9
  import { type AtmsDef } from './OfficesAtmsMapContent';
13
10
  import { type Atm, type Branch, type RemoteWorkplace } from './OfficesAtmsMapProps';
11
+ import { renderButtonsGroup } from './renderButtonsGroup';
14
12
  import { renderDescriptionBlock } from './renderDescriptionBlock';
15
- import { renderFiltrationForm } from './renderFiltrationForm';
13
+ import { renderFiltrationForm, type RenderFiltrationFormOptions } from './renderFiltrationForm';
14
+ import { renderHeading } from './renderHeading';
16
15
  import { type BalloonContent } from './YandexMapProps';
17
16
 
18
17
  const defaultEmptyFunction = () => void 0;
19
- const defaultFilterItems = () => [];
20
18
 
21
19
  export type InitFilterState = Record<string, boolean>;
22
20
 
@@ -46,15 +44,13 @@ export const OfficesAtmsMapLayout = JSX<OfficesAtmsMapLayoutProps<Branch | Atm |
46
44
  remoteWorkplaces = [],
47
45
  renderCard = defaultEmptyFunction,
48
46
  renderRemoteWorkplaceCard = defaultEmptyFunction,
49
- filterItems = defaultFilterItems,
50
47
  getBalloon = defaultEmptyFunction,
51
48
  getBalloonRemoteWorkplaces = defaultEmptyFunction,
52
- initFilterState = {},
53
49
  descriptionData,
54
50
  title,
55
51
  }) => {
56
52
  const onlyOffice = title?.includes('Офис');
57
- const [filtrationState, { field, reset }] = useForm(initFilterState);
53
+ const [filtrationState, { field, reset }] = useForm(INITIAL_FILTRATION_STATE);
58
54
 
59
55
  const [filteredItems, points, filteredRemoteWorkplaces, lengthItems] = useMemo(() => {
60
56
  const _filteredItems = filterItems(data, filtrationState);
@@ -83,6 +79,13 @@ export const OfficesAtmsMapLayout = JSX<OfficesAtmsMapLayoutProps<Branch | Atm |
83
79
 
84
80
  const [activeButton, setActiveButton] = useState('all');
85
81
 
82
+ const filterOptions: RenderFiltrationFormOptions = {
83
+ filters: getFiltersWithNonEmptyData([...data, ...remoteWorkplaces]),
84
+ field: { field, reset },
85
+ onlyOffice,
86
+ labels: FILTRATION_LABELS,
87
+ };
88
+
86
89
  return (
87
90
  <div className={style('space-y-1', className)}>
88
91
  <div className="bg-white">
@@ -91,7 +94,7 @@ export const OfficesAtmsMapLayout = JSX<OfficesAtmsMapLayoutProps<Branch | Atm |
91
94
  {descriptionData ? renderDescriptionBlock(descriptionData) : null}
92
95
  {onlyOffice && renderButtonsGroup(data, activeButton, setActiveButton)}
93
96
  <div className={style('pb-3xl', filtersVisibleStyles(activeButton))}>
94
- {renderFiltrationForm(Object.keys(initFilterState), { field, reset }, onlyOffice)}
97
+ {renderFiltrationForm(filterOptions)}
95
98
  </div>
96
99
  </div>
97
100
  <div className="h-[600px]">
@@ -109,55 +112,16 @@ export const OfficesAtmsMapLayout = JSX<OfficesAtmsMapLayoutProps<Branch | Atm |
109
112
  },
110
113
  );
111
114
 
112
- const renderHeading = (title?: string, lengthItems?: number) => (
113
- <div className="flex flex-col sm:flex-row gap-xs mb-2xl">
114
- <Heading headingType="h3">
115
- <span suppressHydrationWarning={true}>{title}</span>
116
- {lengthItems ? (
117
- <Text size="text-h2" color="text-secondary-text">
118
- <span suppressHydrationWarning={true}>{` (${lengthItems})`}</span>
119
- </Text>
120
- ) : null}
121
- </Heading>
122
- </div>
123
- );
124
-
125
- const renderButtonsGroup = (
126
- data: Branch[],
127
- activeButton: string,
128
- onButtonClick: (item: string) => void,
115
+ export const filterItems = (
116
+ data: (Branch | RemoteWorkplace)[],
117
+ filtrationState: Record<string, boolean>,
129
118
  ) => {
130
- const allButtonVersion = getVersion(activeButton === 'all');
131
-
132
- const businessButtonVersion = getVersion(activeButton === 'business');
119
+ const truthyFilters = Object.keys(filtrationState).filter((key) => filtrationState[key]);
133
120
 
134
- const handleClick = (e: any, key: string, branches: Branch[]) => {
135
- if (e.currentTarget === e.target && key === 'business') {
136
- branches.filter(
137
- (branch) =>
138
- branch.workSchedule &&
139
- branch.workSchedule.businessScheduleVisibleTag &&
140
- !branch.workSchedule.businessScheduleDescription,
141
- );
142
- }
143
-
144
- onButtonClick(key);
145
-
146
- return branches;
147
- };
121
+ return data.filter((item) => truthyFilters.every((_) => FILTRATION_PREDICATES[_](item)));
122
+ };
148
123
 
149
- return (
150
- <div className="flex gap-lg flex-col sm:flex-row pb-lg">
151
- <Button data-id="all" onClick={(e) => handleClick(e, 'all', data)} version={allButtonVersion}>
152
- Для физических лиц
153
- </Button>
154
- <Button
155
- data-id="business"
156
- onClick={(e) => handleClick(e, 'business', data)}
157
- version={businessButtonVersion}
158
- >
159
- Для юридических лиц
160
- </Button>
161
- </div>
124
+ export const getFiltersWithNonEmptyData = (data: (Branch | Atm | RemoteWorkplace)[]) =>
125
+ Object.keys(INITIAL_FILTRATION_STATE).filter(
126
+ (_) => data.filter((item) => FILTRATION_PREDICATES[_](item)).length,
162
127
  );
163
- };
@@ -1,46 +1,10 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useLocation } from '../../hooks/useLocation';
3
3
  import { OfficesAtmsMapLayout } from './OfficesAtmsMapLayout';
4
- import { type Branch, type RemoteWorkplace } from './OfficesAtmsMapProps';
5
4
  import { getOfficePoint, renderOfficeCard } from './renderOfficeCard';
6
5
  import { getRemoteWorkplacePoint, renderRemoteWorkplaceCard } from './renderRemoteWorkplaceCard';
7
6
  import { useOffices } from './useOffices';
8
7
 
9
- const INITIAL_FILTRATION_STATE = {
10
- workingSaturday: false,
11
- premiumService: false,
12
- privateBanking: false,
13
- remoteWorkplace: false,
14
- serviceDisabledPeople: false,
15
- sellingCoins: false,
16
- buyingCoins: false,
17
- bullionOperations: false,
18
- preciousMetalsOperations: false,
19
- transferringDataToBiometricSystem: false,
20
- };
21
-
22
- const FILTRATION_PREDICATES = {
23
- workingSaturday: (item: Branch | RemoteWorkplace) =>
24
- Boolean('workSchedule' in item && item.workSchedule?.workingSaturday),
25
- premiumService: (item: Branch | RemoteWorkplace) =>
26
- Boolean('premiumService' in item && item.premiumService),
27
- privateBanking: (item: Branch | RemoteWorkplace) =>
28
- Boolean('privateBanking' in item && item.privateBanking),
29
- remoteWorkplace: (item: Branch | RemoteWorkplace) => Boolean('workScheduleDescription' in item),
30
- serviceDisabledPeople: (item: Branch | RemoteWorkplace) =>
31
- Boolean('serviceDisabledPeople' in item && item.serviceDisabledPeople),
32
- sellingCoins: (item: Branch | RemoteWorkplace) =>
33
- Boolean('sellingCoins' in item && item.sellingCoins),
34
- buyingCoins: (item: Branch | RemoteWorkplace) =>
35
- Boolean('buyingCoins' in item && item.buyingCoins),
36
- bullionOperations: (item: Branch | RemoteWorkplace) =>
37
- Boolean('bullionOperations' in item && item.bullionOperations),
38
- preciousMetalsOperations: (item: Branch | RemoteWorkplace) =>
39
- Boolean('preciousMetalsOperations' in item && item.preciousMetalsOperations),
40
- transferringDataToBiometricSystem: (item: Branch | RemoteWorkplace) =>
41
- Boolean('transferringDataToBiometricSystem' in item && item.transferringDataToBiometricSystem),
42
- };
43
-
44
8
  export interface OfficesMapProps {
45
9
  className?: string;
46
10
  }
@@ -53,11 +17,9 @@ export const OfficesMap = JSX<OfficesMapProps>(({ className }) => {
53
17
  return (
54
18
  <OfficesAtmsMapLayout
55
19
  className={className}
56
- filterItems={filterItems}
57
20
  data={data?.branches}
58
21
  isLoad={isLoad}
59
22
  remoteWorkplaces={data?.remoteWorkplaces}
60
- initFilterState={INITIAL_FILTRATION_STATE}
61
23
  renderCard={renderOfficeCard}
62
24
  renderRemoteWorkplaceCard={renderRemoteWorkplaceCard}
63
25
  getBalloon={getOfficePoint}
@@ -66,12 +28,3 @@ export const OfficesMap = JSX<OfficesMapProps>(({ className }) => {
66
28
  />
67
29
  );
68
30
  });
69
-
70
- const filterItems = (
71
- data: (Branch | RemoteWorkplace)[],
72
- filtrationState: Record<string, boolean>,
73
- ) => {
74
- const truthyFilters = Object.keys(filtrationState).filter((key) => filtrationState[key]);
75
-
76
- return data.filter((item) => truthyFilters.every((_) => FILTRATION_PREDICATES[_](item)));
77
- };
@@ -0,0 +1,56 @@
1
+ import type { Branch, RemoteWorkplace } from './OfficesAtmsMapProps';
2
+
3
+ export const INITIAL_FILTRATION_STATE = {
4
+ workingSaturday: false,
5
+ premiumService: false,
6
+ privateBanking: false,
7
+ remoteWorkplace: false,
8
+ serviceDisabledPeople: false,
9
+ sellingCoins: false,
10
+ buyingCoins: false,
11
+ bullionOperations: false,
12
+ preciousMetalsOperations: false,
13
+ transferringDataToBiometricSystem: false,
14
+ };
15
+
16
+ export const FILTRATION_LABELS = {
17
+ safeBoxCaseVolumes: 'Аренда индивидуальных сейфовых ячеек',
18
+ workingSaturday: 'Открыты по субботам',
19
+ terminalTypeAtms: 'Банкоматы',
20
+ terminalTypeTerm: 'Терминалы',
21
+ workAllTime: 'Круглосуточно',
22
+ billAcceptorEnable: 'Прием наличных',
23
+ premiumService: 'Премиальное обслуживание',
24
+ privateBanking: 'Услуга Private banking',
25
+ sellingCoins: 'Продажа монет из драгоценных металлов',
26
+ buyingCoins: 'Покупка монет из драгоценных металлов',
27
+ bullionOperations: 'Операции со слитками',
28
+ preciousMetalsOperations: 'Операции с драгоценными металлами',
29
+ transferringDataToBiometricSystem: 'Передача фото и голоса в Единую биометрическую систему',
30
+ locationDisabledPeople: 'Для маломобильных',
31
+ designDisabledPeople: 'Для слабовидящих',
32
+ remoteWorkplace: 'Удаленное рабочее место',
33
+ serviceDisabledPeople: 'Для маломобильных граждан',
34
+ };
35
+
36
+ export const FILTRATION_PREDICATES = {
37
+ workingSaturday: (item: Branch | RemoteWorkplace) =>
38
+ Boolean('workSchedule' in item && item.workSchedule?.workingSaturday),
39
+ premiumService: (item: Branch | RemoteWorkplace) =>
40
+ Boolean('premiumService' in item && item.premiumService),
41
+ privateBanking: (item: Branch | RemoteWorkplace) =>
42
+ Boolean('privateBanking' in item && item.privateBanking),
43
+ remoteWorkplace: (item: Branch | RemoteWorkplace) => Boolean('workScheduleDescription' in item),
44
+ serviceDisabledPeople: (item: Branch | RemoteWorkplace) =>
45
+ Boolean('serviceDisabledPeople' in item && item.serviceDisabledPeople),
46
+ sellingCoins: (item: Branch | RemoteWorkplace) =>
47
+ Boolean('sellingCoins' in item && item.sellingCoins),
48
+ buyingCoins: (item: Branch | RemoteWorkplace) =>
49
+ Boolean('buyingCoins' in item && item.buyingCoins),
50
+ bullionOperations: (item: Branch | RemoteWorkplace) =>
51
+ Boolean('bullionOperations' in item && item.bullionOperations),
52
+ preciousMetalsOperations: (item: Branch | RemoteWorkplace) =>
53
+ Boolean('preciousMetalsOperations' in item && item.preciousMetalsOperations),
54
+ transferringDataToBiometricSystem: (item: Branch | RemoteWorkplace) =>
55
+ Boolean('transferringDataToBiometricSystem' in item && item.transferringDataToBiometricSystem),
56
+ };
@@ -0,0 +1,43 @@
1
+ import { Button } from '../../ui-kit/Button/Button';
2
+ import { getVersion } from '../../utils/getVersion';
3
+ import type { Branch } from './OfficesAtmsMapProps';
4
+
5
+ export const renderButtonsGroup = (
6
+ data: Branch[],
7
+ activeButton: string,
8
+ onButtonClick: (item: string) => void,
9
+ ) => {
10
+ const allButtonVersion = getVersion(activeButton === 'all');
11
+
12
+ const businessButtonVersion = getVersion(activeButton === 'business');
13
+
14
+ const handleClick = (e: any, key: string, branches: Branch[]) => {
15
+ if (e.currentTarget === e.target && key === 'business') {
16
+ branches.filter(
17
+ (branch) =>
18
+ branch.workSchedule &&
19
+ branch.workSchedule.businessScheduleVisibleTag &&
20
+ !branch.workSchedule.businessScheduleDescription,
21
+ );
22
+ }
23
+
24
+ onButtonClick(key);
25
+
26
+ return branches;
27
+ };
28
+
29
+ return (
30
+ <div className="flex gap-lg flex-col sm:flex-row pb-lg">
31
+ <Button data-id="all" onClick={(e) => handleClick(e, 'all', data)} version={allButtonVersion}>
32
+ Для физических лиц
33
+ </Button>
34
+ <Button
35
+ data-id="business"
36
+ onClick={(e) => handleClick(e, 'business', data)}
37
+ version={businessButtonVersion}
38
+ >
39
+ Для юридических лиц
40
+ </Button>
41
+ </div>
42
+ );
43
+ };
@@ -8,37 +8,25 @@ import { Icon } from '../../ui-kit/Icon/Icon';
8
8
  import { type IconName } from '../../ui-kit/Icon/IconProps';
9
9
  import { LinkButton } from '../../ui-kit/LinkButton/LinkButton';
10
10
 
11
- const FILTRATION_LABELS = {
12
- safeBoxCaseVolumes: 'Аренда индивидуальных сейфовых ячеек',
13
- workingSaturday: 'Открыты по субботам',
14
- terminalTypeAtms: 'Банкоматы',
15
- terminalTypeTerm: 'Терминалы',
16
- workAllTime: 'Круглосуточно',
17
- billAcceptorEnable: 'Прием наличных',
18
- premiumService: 'Премиальное обслуживание',
19
- privateBanking: 'Услуга Private banking',
20
- sellingCoins: 'Продажа монет из драгоценных металлов',
21
- buyingCoins: 'Покупка монет из драгоценных металлов',
22
- bullionOperations: 'Операции со слитками',
23
- preciousMetalsOperations: 'Операции с драгоценными металлами',
24
- transferringDataToBiometricSystem: 'Передача фото и голоса в Единую биометрическую систему',
25
- locationDisabledPeople: 'Для маломобильных',
26
- designDisabledPeople: 'Для слабовидящих',
27
- remoteWorkplace: 'Удаленное рабочее место',
28
- serviceDisabledPeople: 'Для маломобильных граждан',
29
- };
30
-
31
11
  const COMMON_FILTERS_STYLES = 'flex flex-col sm:flex-row sm:flex-wrap gap-3xl pb-2xl';
32
12
 
33
- export const renderFiltrationForm = (
34
- filters: string[],
35
- { field, reset }: { field: FormFieldRegisterer<any>; reset: () => void },
36
- onlyOffice?: boolean,
37
- ) => {
13
+ export interface RenderFiltrationFormOptions {
14
+ filters: string[];
15
+ field: { field: FormFieldRegisterer<any>; reset: () => void };
16
+ onlyOffice?: boolean;
17
+ labels: Record<string, string>;
18
+ }
19
+
20
+ export const renderFiltrationForm = ({
21
+ filters,
22
+ field: { field, reset },
23
+ onlyOffice,
24
+ labels,
25
+ }: RenderFiltrationFormOptions) => {
38
26
  const visibleFiltersNum = onlyOffice ? 5 : 6;
39
27
 
40
28
  const filtersCheckbox = (filters || []).map((key) => (
41
- <Checkbox key={key} text={FILTRATION_LABELS[key]} {...field(key)} />
29
+ <Checkbox key={key} text={labels[key]} {...field(key)} />
42
30
  ));
43
31
 
44
32
  const [visibleFilters, hiddenFilters] =
@@ -0,0 +1,15 @@
1
+ import { Heading } from '../../ui-kit/Heading/Heading';
2
+ import { Text } from '../../ui-kit/Text/Text';
3
+
4
+ export const renderHeading = (title?: string, lengthItems?: number) => (
5
+ <div className="flex flex-col sm:flex-row gap-xs mb-2xl">
6
+ <Heading headingType="h3">
7
+ <span suppressHydrationWarning={true}>{title}</span>
8
+ {lengthItems ? (
9
+ <Text size="text-h2" color="text-secondary-text">
10
+ <span suppressHydrationWarning={true}>{` (${lengthItems})`}</span>
11
+ </Text>
12
+ ) : null}
13
+ </Heading>
14
+ </div>
15
+ );
@@ -7,9 +7,3 @@ export interface CheckboxProps {
7
7
  onChange?: (value: boolean) => void;
8
8
  error?: string;
9
9
  }
10
-
11
- export interface CheckboxGroupProps {
12
- className?: string;
13
- items?: CheckboxProps[];
14
- text?: string;
15
- }
@@ -6,7 +6,7 @@ import { type CheckboxProps } from './CheckboxProps';
6
6
 
7
7
  export const CheckboxWithError = JSX<CheckboxProps>(
8
8
  ({ className, text, value, key, disabled, error, onChange }) => (
9
- <div className={style('shrink-0 w-full', className)}>
9
+ <div className={style('shrink-0', className)}>
10
10
  <Checkbox key={key} text={text} value={value} disabled={disabled} onChange={onChange} />
11
11
  {renderErrorText(error)}
12
12
  </div>
@@ -0,0 +1,12 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { withValidator } from '../../../validation/withValidator';
3
+ import { CheckboxWithError } from '../../Checkbox/CheckboxWithError';
4
+ import { type CustomFieldProps } from '../CustomFieldProps';
5
+ import { validatorObj } from '../getObjectValidator';
6
+
7
+ export const ConsentAssignmentField = JSX<CustomFieldProps>(({ field }) => (
8
+ <CheckboxWithError
9
+ text="Прочие согласия (согласие на уступку прав требований)"
10
+ {...withValidator(field('consentAssignmentClaimsFlg'), validatorObj.consentAssignmentClaimsFlg)}
11
+ />
12
+ ));
@@ -0,0 +1,12 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { withValidator } from '../../../validation/withValidator';
3
+ import { CheckboxWithError } from '../../Checkbox/CheckboxWithError';
4
+ import { type CustomFieldProps } from '../CustomFieldProps';
5
+ import { validatorObj } from '../getObjectValidator';
6
+
7
+ export const ConsentCollectionField = JSX<CustomFieldProps>(({ field }) => (
8
+ <CheckboxWithError
9
+ text="Прочие согласия (согласие на взыскание по исполнительной надписи нотариуса)"
10
+ {...withValidator(field('consentCollectionFlg'), validatorObj.consentCollectionFlg)}
11
+ />
12
+ ));
@@ -0,0 +1,12 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { withValidator } from '../../../validation/withValidator';
3
+ import { CheckboxWithError } from '../../Checkbox/CheckboxWithError';
4
+ import { type CustomFieldProps } from '../CustomFieldProps';
5
+ import { validatorObj } from '../getObjectValidator';
6
+
7
+ export const ConsentInformField = JSX<CustomFieldProps>(({ field }) => (
8
+ <CheckboxWithError
9
+ text="Согласие на информирование о продуктах и услугах Банка"
10
+ {...withValidator(field('consentInformFlg'), validatorObj.consentInformFlg)}
11
+ />
12
+ ));