@redneckz/wildless-cms-uni-blocks 0.5.12 → 0.5.13

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 (400) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +125 -69
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/bundle/components/Accordion/AccordionContent.d.ts +9 -7
  5. package/bundle/components/Accordion/AccordionItem.d.ts +1 -4
  6. package/bundle/components/Accordion/AccordionItem.mobile.d.ts +1 -4
  7. package/bundle/components/Accordion/AccordionItemProps.d.ts +5 -0
  8. package/bundle/components/Accordion/AccordionItemsList.d.ts +1 -0
  9. package/bundle/components/Blocks.d.ts +1 -0
  10. package/bundle/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
  11. package/bundle/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
  12. package/bundle/components/StepsBlock/renderItems.d.ts +7 -2
  13. package/bundle/components/StepsBlock/renderStepContent.d.ts +14 -0
  14. package/bundle/model/BlockDecorator.d.ts +1 -0
  15. package/bundle/model/BlocksRegistry.d.ts +4 -1
  16. package/bundle/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
  17. package/bundle/ui-kit/Foldable/Foldable.d.ts +3 -10
  18. package/bundle/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
  19. package/bundle/ui-kit/Foldable/FoldableSection.d.ts +5 -0
  20. package/dist/components/Accordion/Accordion.js +3 -1
  21. package/dist/components/Accordion/Accordion.js.map +1 -1
  22. package/dist/components/Accordion/Accordion.mobile.js +5 -2
  23. package/dist/components/Accordion/Accordion.mobile.js.map +1 -1
  24. package/dist/components/Accordion/AccordionContent.d.ts +9 -7
  25. package/dist/components/Accordion/AccordionItem.d.ts +1 -4
  26. package/dist/components/Accordion/AccordionItem.js +3 -8
  27. package/dist/components/Accordion/AccordionItem.js.map +1 -1
  28. package/dist/components/Accordion/AccordionItem.mobile.d.ts +1 -4
  29. package/dist/components/Accordion/AccordionItem.mobile.js +2 -5
  30. package/dist/components/Accordion/AccordionItem.mobile.js.map +1 -1
  31. package/dist/components/Accordion/AccordionItemProps.d.ts +5 -0
  32. package/dist/components/Accordion/AccordionItemProps.js +2 -0
  33. package/dist/components/Accordion/AccordionItemProps.js.map +1 -0
  34. package/dist/components/Accordion/AccordionItemsList.d.ts +1 -0
  35. package/dist/components/Accordion/AccordionItemsList.js +6 -0
  36. package/dist/components/Accordion/AccordionItemsList.js.map +1 -0
  37. package/dist/components/Blocks.d.ts +1 -0
  38. package/dist/components/Blocks.js +2 -0
  39. package/dist/components/Blocks.js.map +1 -1
  40. package/dist/components/ContentPage/filterBlocks.js +1 -2
  41. package/dist/components/ContentPage/filterBlocks.js.map +1 -1
  42. package/dist/components/ContentPage/filterBlocks.mobile.js +1 -3
  43. package/dist/components/ContentPage/filterBlocks.mobile.js.map +1 -1
  44. package/dist/components/ContentPage/renderBlock.js +1 -1
  45. package/dist/components/ContentPage/renderBlock.js.map +1 -1
  46. package/dist/components/Footer/Footer.mobile.js +8 -7
  47. package/dist/components/Footer/Footer.mobile.js.map +1 -1
  48. package/dist/components/Header/Header.mobile.js +5 -5
  49. package/dist/components/Header/Header.mobile.js.map +1 -1
  50. package/dist/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
  51. package/dist/components/InvestmentInfo/InvestmentInfo.js +49 -0
  52. package/dist/components/InvestmentInfo/InvestmentInfo.js.map +1 -0
  53. package/dist/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
  54. package/dist/components/InvestmentInfo/InvestmentInfoContent.js +2 -0
  55. package/dist/components/InvestmentInfo/InvestmentInfoContent.js.map +1 -0
  56. package/dist/components/OtherProducts/OtherProductsItem.js +4 -6
  57. package/dist/components/OtherProducts/OtherProductsItem.js.map +1 -1
  58. package/dist/components/StepsBlock/StepsBlock.js +2 -8
  59. package/dist/components/StepsBlock/StepsBlock.js.map +1 -1
  60. package/dist/components/StepsBlock/StepsBlockStyleMaps.js +2 -2
  61. package/dist/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
  62. package/dist/components/StepsBlock/renderItems.d.ts +7 -2
  63. package/dist/components/StepsBlock/renderItems.js +5 -1
  64. package/dist/components/StepsBlock/renderItems.js.map +1 -1
  65. package/dist/components/StepsBlock/renderStepContent.d.ts +14 -0
  66. package/dist/components/StepsBlock/renderStepContent.js +20 -0
  67. package/dist/components/StepsBlock/renderStepContent.js.map +1 -0
  68. package/dist/components/TariffsTable/TariffsTable.js +11 -2
  69. package/dist/components/TariffsTable/TariffsTable.js.map +1 -1
  70. package/dist/model/BlockDecorator.d.ts +1 -0
  71. package/dist/model/BlockDecorator.js +2 -1
  72. package/dist/model/BlockDecorator.js.map +1 -1
  73. package/dist/model/BlocksRegistry.d.ts +4 -1
  74. package/dist/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
  75. package/dist/ui-kit/Foldable/DefaultFoldButton.js +16 -0
  76. package/dist/ui-kit/Foldable/DefaultFoldButton.js.map +1 -0
  77. package/dist/ui-kit/Foldable/Foldable.d.ts +3 -10
  78. package/dist/ui-kit/Foldable/Foldable.js +7 -23
  79. package/dist/ui-kit/Foldable/Foldable.js.map +1 -1
  80. package/dist/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
  81. package/dist/ui-kit/Foldable/{FoldButtonProps.js → FoldablePartProps.js} +1 -1
  82. package/dist/ui-kit/Foldable/FoldablePartProps.js.map +1 -0
  83. package/dist/ui-kit/Foldable/FoldableSection.d.ts +5 -0
  84. package/dist/ui-kit/Foldable/FoldableSection.js +17 -0
  85. package/dist/ui-kit/Foldable/FoldableSection.js.map +1 -0
  86. package/lib/common.css +1 -1
  87. package/lib/components/Accordion/Accordion.js +3 -1
  88. package/lib/components/Accordion/Accordion.js.map +1 -1
  89. package/lib/components/Accordion/Accordion.mobile.js +5 -2
  90. package/lib/components/Accordion/Accordion.mobile.js.map +1 -1
  91. package/lib/components/Accordion/AccordionContent.d.ts +9 -7
  92. package/lib/components/Accordion/AccordionItem.d.ts +1 -4
  93. package/lib/components/Accordion/AccordionItem.js +3 -8
  94. package/lib/components/Accordion/AccordionItem.js.map +1 -1
  95. package/lib/components/Accordion/AccordionItem.mobile.d.ts +1 -4
  96. package/lib/components/Accordion/AccordionItem.mobile.js +2 -5
  97. package/lib/components/Accordion/AccordionItem.mobile.js.map +1 -1
  98. package/lib/components/Accordion/AccordionItemProps.d.ts +5 -0
  99. package/lib/components/Accordion/AccordionItemProps.js +2 -0
  100. package/lib/components/Accordion/AccordionItemProps.js.map +1 -0
  101. package/lib/components/Accordion/AccordionItemsList.d.ts +1 -0
  102. package/lib/components/Accordion/AccordionItemsList.js +4 -0
  103. package/lib/components/Accordion/AccordionItemsList.js.map +1 -0
  104. package/lib/components/Blocks.d.ts +1 -0
  105. package/lib/components/Blocks.js +2 -0
  106. package/lib/components/Blocks.js.map +1 -1
  107. package/lib/components/ContentPage/filterBlocks.js +1 -2
  108. package/lib/components/ContentPage/filterBlocks.js.map +1 -1
  109. package/lib/components/ContentPage/filterBlocks.mobile.js +1 -3
  110. package/lib/components/ContentPage/filterBlocks.mobile.js.map +1 -1
  111. package/lib/components/ContentPage/renderBlock.js +2 -2
  112. package/lib/components/ContentPage/renderBlock.js.map +1 -1
  113. package/lib/components/Footer/Footer.mobile.js +8 -7
  114. package/lib/components/Footer/Footer.mobile.js.map +1 -1
  115. package/lib/components/Header/Header.mobile.js +5 -5
  116. package/lib/components/Header/Header.mobile.js.map +1 -1
  117. package/lib/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
  118. package/lib/components/InvestmentInfo/InvestmentInfo.fixture.d.ts +7 -0
  119. package/lib/components/InvestmentInfo/InvestmentInfo.js +47 -0
  120. package/lib/components/InvestmentInfo/InvestmentInfo.js.map +1 -0
  121. package/lib/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
  122. package/lib/components/InvestmentInfo/InvestmentInfoContent.js +2 -0
  123. package/lib/components/InvestmentInfo/InvestmentInfoContent.js.map +1 -0
  124. package/lib/components/OtherProducts/OtherProductsItem.js +4 -6
  125. package/lib/components/OtherProducts/OtherProductsItem.js.map +1 -1
  126. package/lib/components/StepsBlock/StepsBlock.fixture.d.ts +2 -1
  127. package/lib/components/StepsBlock/StepsBlock.js +2 -8
  128. package/lib/components/StepsBlock/StepsBlock.js.map +1 -1
  129. package/lib/components/StepsBlock/StepsBlockStyleMaps.js +2 -2
  130. package/lib/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
  131. package/lib/components/StepsBlock/renderItems.d.ts +7 -2
  132. package/lib/components/StepsBlock/renderItems.js +6 -2
  133. package/lib/components/StepsBlock/renderItems.js.map +1 -1
  134. package/lib/components/StepsBlock/renderStepContent.d.ts +14 -0
  135. package/lib/components/StepsBlock/renderStepContent.js +17 -0
  136. package/lib/components/StepsBlock/renderStepContent.js.map +1 -0
  137. package/lib/components/TariffsTable/TariffsTable.js +11 -2
  138. package/lib/components/TariffsTable/TariffsTable.js.map +1 -1
  139. package/lib/model/BlockDecorator.d.ts +1 -0
  140. package/lib/model/BlockDecorator.js +1 -0
  141. package/lib/model/BlockDecorator.js.map +1 -1
  142. package/lib/model/BlocksRegistry.d.ts +4 -1
  143. package/lib/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
  144. package/lib/ui-kit/Foldable/DefaultFoldButton.js +13 -0
  145. package/lib/ui-kit/Foldable/DefaultFoldButton.js.map +1 -0
  146. package/lib/ui-kit/Foldable/Foldable.d.ts +3 -10
  147. package/lib/ui-kit/Foldable/Foldable.js +9 -25
  148. package/lib/ui-kit/Foldable/Foldable.js.map +1 -1
  149. package/lib/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
  150. package/lib/ui-kit/Foldable/FoldablePartProps.js +2 -0
  151. package/lib/ui-kit/Foldable/FoldablePartProps.js.map +1 -0
  152. package/lib/ui-kit/Foldable/FoldableSection.d.ts +5 -0
  153. package/lib/ui-kit/Foldable/FoldableSection.js +15 -0
  154. package/lib/ui-kit/Foldable/FoldableSection.js.map +1 -0
  155. package/mobile/bundle/bundle.umd.js +131 -153
  156. package/mobile/bundle/bundle.umd.min.js +1 -1
  157. package/mobile/bundle/components/Accordion/AccordionContent.d.ts +9 -7
  158. package/mobile/bundle/components/Accordion/AccordionItem.d.ts +1 -4
  159. package/mobile/bundle/components/Accordion/AccordionItemProps.d.ts +5 -0
  160. package/mobile/bundle/components/Accordion/AccordionItemsList.d.ts +1 -0
  161. package/mobile/bundle/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
  162. package/mobile/bundle/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
  163. package/mobile/bundle/components/StepsBlock/renderItems.d.ts +7 -2
  164. package/mobile/bundle/components/StepsBlock/renderStepContent.d.ts +14 -0
  165. package/mobile/bundle/model/BlockDecorator.d.ts +1 -0
  166. package/mobile/bundle/model/BlocksRegistry.d.ts +4 -1
  167. package/mobile/bundle/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
  168. package/mobile/bundle/ui-kit/Foldable/Foldable.d.ts +3 -10
  169. package/mobile/bundle/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
  170. package/mobile/bundle/ui-kit/Foldable/FoldableSection.d.ts +5 -0
  171. package/mobile/dist/components/Accordion/Accordion.js +5 -2
  172. package/mobile/dist/components/Accordion/Accordion.js.map +1 -1
  173. package/mobile/dist/components/Accordion/AccordionContent.d.ts +9 -7
  174. package/mobile/dist/components/Accordion/AccordionItem.d.ts +1 -4
  175. package/mobile/dist/components/Accordion/AccordionItem.js +2 -5
  176. package/mobile/dist/components/Accordion/AccordionItem.js.map +1 -1
  177. package/mobile/dist/components/Accordion/AccordionItemProps.d.ts +5 -0
  178. package/mobile/dist/components/Accordion/AccordionItemProps.js +2 -0
  179. package/mobile/dist/components/Accordion/AccordionItemProps.js.map +1 -0
  180. package/mobile/dist/components/Accordion/AccordionItemsList.d.ts +1 -0
  181. package/mobile/dist/components/Accordion/AccordionItemsList.js +6 -0
  182. package/mobile/dist/components/Accordion/AccordionItemsList.js.map +1 -0
  183. package/mobile/dist/components/ContentPage/filterBlocks.js +1 -3
  184. package/mobile/dist/components/ContentPage/filterBlocks.js.map +1 -1
  185. package/mobile/dist/components/ContentPage/renderBlock.js +1 -1
  186. package/mobile/dist/components/ContentPage/renderBlock.js.map +1 -1
  187. package/mobile/dist/components/Footer/Footer.js +8 -7
  188. package/mobile/dist/components/Footer/Footer.js.map +1 -1
  189. package/mobile/dist/components/Header/Header.js +5 -5
  190. package/mobile/dist/components/Header/Header.js.map +1 -1
  191. package/mobile/dist/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
  192. package/mobile/dist/components/InvestmentInfo/InvestmentInfo.js +49 -0
  193. package/mobile/dist/components/InvestmentInfo/InvestmentInfo.js.map +1 -0
  194. package/mobile/dist/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
  195. package/mobile/dist/components/InvestmentInfo/InvestmentInfoContent.js +2 -0
  196. package/mobile/dist/components/InvestmentInfo/InvestmentInfoContent.js.map +1 -0
  197. package/mobile/dist/components/OtherProducts/OtherProductsItem.js +4 -6
  198. package/mobile/dist/components/OtherProducts/OtherProductsItem.js.map +1 -1
  199. package/mobile/dist/components/StepsBlock/StepsBlockStyleMaps.js +2 -2
  200. package/mobile/dist/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
  201. package/mobile/dist/components/StepsBlock/renderItems.d.ts +7 -2
  202. package/mobile/dist/components/StepsBlock/renderItems.js +5 -1
  203. package/mobile/dist/components/StepsBlock/renderItems.js.map +1 -1
  204. package/mobile/dist/components/StepsBlock/renderStepContent.d.ts +14 -0
  205. package/mobile/dist/components/StepsBlock/renderStepContent.js +20 -0
  206. package/mobile/dist/components/StepsBlock/renderStepContent.js.map +1 -0
  207. package/mobile/dist/model/BlockDecorator.d.ts +1 -0
  208. package/mobile/dist/model/BlockDecorator.js +2 -1
  209. package/mobile/dist/model/BlockDecorator.js.map +1 -1
  210. package/mobile/dist/model/BlocksRegistry.d.ts +4 -1
  211. package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
  212. package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.js +16 -0
  213. package/mobile/dist/ui-kit/Foldable/DefaultFoldButton.js.map +1 -0
  214. package/mobile/dist/ui-kit/Foldable/Foldable.d.ts +3 -10
  215. package/mobile/dist/ui-kit/Foldable/Foldable.js +7 -23
  216. package/mobile/dist/ui-kit/Foldable/Foldable.js.map +1 -1
  217. package/mobile/dist/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
  218. package/mobile/dist/ui-kit/Foldable/{FoldButtonProps.js → FoldablePartProps.js} +1 -1
  219. package/mobile/dist/ui-kit/Foldable/FoldablePartProps.js.map +1 -0
  220. package/mobile/dist/ui-kit/Foldable/FoldableSection.d.ts +5 -0
  221. package/mobile/dist/ui-kit/Foldable/FoldableSection.js +17 -0
  222. package/mobile/dist/ui-kit/Foldable/FoldableSection.js.map +1 -0
  223. package/mobile/lib/components/Accordion/Accordion.js +5 -2
  224. package/mobile/lib/components/Accordion/Accordion.js.map +1 -1
  225. package/mobile/lib/components/Accordion/AccordionContent.d.ts +9 -7
  226. package/mobile/lib/components/Accordion/AccordionItem.d.ts +1 -4
  227. package/mobile/lib/components/Accordion/AccordionItem.js +2 -5
  228. package/mobile/lib/components/Accordion/AccordionItem.js.map +1 -1
  229. package/mobile/lib/components/Accordion/AccordionItemProps.d.ts +5 -0
  230. package/mobile/lib/components/Accordion/AccordionItemProps.js +2 -0
  231. package/mobile/lib/components/Accordion/AccordionItemProps.js.map +1 -0
  232. package/mobile/lib/components/Accordion/AccordionItemsList.d.ts +1 -0
  233. package/mobile/lib/components/Accordion/AccordionItemsList.js +4 -0
  234. package/mobile/lib/components/Accordion/AccordionItemsList.js.map +1 -0
  235. package/mobile/lib/components/ContentPage/filterBlocks.js +1 -3
  236. package/mobile/lib/components/ContentPage/filterBlocks.js.map +1 -1
  237. package/mobile/lib/components/ContentPage/renderBlock.js +2 -2
  238. package/mobile/lib/components/ContentPage/renderBlock.js.map +1 -1
  239. package/mobile/lib/components/Footer/Footer.js +8 -7
  240. package/mobile/lib/components/Footer/Footer.js.map +1 -1
  241. package/mobile/lib/components/Header/Header.js +5 -5
  242. package/mobile/lib/components/Header/Header.js.map +1 -1
  243. package/mobile/lib/components/InvestmentInfo/InvestmentInfo.d.ts +5 -0
  244. package/mobile/lib/components/InvestmentInfo/InvestmentInfo.js +47 -0
  245. package/mobile/lib/components/InvestmentInfo/InvestmentInfo.js.map +1 -0
  246. package/mobile/lib/components/InvestmentInfo/InvestmentInfoContent.d.ts +49 -0
  247. package/mobile/lib/components/InvestmentInfo/InvestmentInfoContent.js +2 -0
  248. package/mobile/lib/components/InvestmentInfo/InvestmentInfoContent.js.map +1 -0
  249. package/mobile/lib/components/OtherProducts/OtherProductsItem.js +4 -6
  250. package/mobile/lib/components/OtherProducts/OtherProductsItem.js.map +1 -1
  251. package/mobile/lib/components/StepsBlock/StepsBlockStyleMaps.js +2 -2
  252. package/mobile/lib/components/StepsBlock/StepsBlockStyleMaps.js.map +1 -1
  253. package/mobile/lib/components/StepsBlock/renderItems.d.ts +7 -2
  254. package/mobile/lib/components/StepsBlock/renderItems.js +6 -2
  255. package/mobile/lib/components/StepsBlock/renderItems.js.map +1 -1
  256. package/mobile/lib/components/StepsBlock/renderStepContent.d.ts +14 -0
  257. package/mobile/lib/components/StepsBlock/renderStepContent.js +17 -0
  258. package/mobile/lib/components/StepsBlock/renderStepContent.js.map +1 -0
  259. package/mobile/lib/model/BlockDecorator.d.ts +1 -0
  260. package/mobile/lib/model/BlockDecorator.js +1 -0
  261. package/mobile/lib/model/BlockDecorator.js.map +1 -1
  262. package/mobile/lib/model/BlocksRegistry.d.ts +4 -1
  263. package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.d.ts +14 -0
  264. package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.js +13 -0
  265. package/mobile/lib/ui-kit/Foldable/DefaultFoldButton.js.map +1 -0
  266. package/mobile/lib/ui-kit/Foldable/Foldable.d.ts +3 -10
  267. package/mobile/lib/ui-kit/Foldable/Foldable.js +9 -25
  268. package/mobile/lib/ui-kit/Foldable/Foldable.js.map +1 -1
  269. package/mobile/lib/ui-kit/Foldable/FoldablePartProps.d.ts +4 -0
  270. package/mobile/lib/ui-kit/Foldable/FoldablePartProps.js +2 -0
  271. package/mobile/lib/ui-kit/Foldable/FoldablePartProps.js.map +1 -0
  272. package/mobile/lib/ui-kit/Foldable/FoldableSection.d.ts +5 -0
  273. package/mobile/lib/ui-kit/Foldable/FoldableSection.js +15 -0
  274. package/mobile/lib/ui-kit/Foldable/FoldableSection.js.map +1 -0
  275. package/mobile/src/common.css +11 -3
  276. package/mobile/src/components/Accordion/Accordion.tsx +17 -7
  277. package/mobile/src/components/Accordion/AccordionContent.ts +10 -7
  278. package/mobile/src/components/Accordion/AccordionItem.tsx +34 -30
  279. package/mobile/src/components/Accordion/AccordionItemProps.ts +6 -0
  280. package/mobile/src/components/Accordion/AccordionItemsList.tsx +5 -0
  281. package/mobile/src/components/ContentPage/filterBlocks.ts +1 -3
  282. package/mobile/src/components/ContentPage/renderBlock.tsx +2 -2
  283. package/mobile/src/components/ExchangeRateTile/ExchangeRateTile.ui.json +8 -1
  284. package/mobile/src/components/Footer/Footer.tsx +15 -13
  285. package/mobile/src/components/GracePeriod/GracePeriod.ui.json +5 -0
  286. package/mobile/src/components/Header/Header.tsx +16 -11
  287. package/mobile/src/components/InvestmentInfo/InvestmentInfo.example.json +48 -0
  288. package/mobile/src/components/InvestmentInfo/InvestmentInfo.tsx +149 -0
  289. package/mobile/src/components/InvestmentInfo/InvestmentInfo.ui.json +16 -0
  290. package/mobile/src/components/InvestmentInfo/InvestmentInfoContent.ts +55 -0
  291. package/mobile/src/components/OtherProducts/OtherProductsItem.tsx +18 -15
  292. package/mobile/src/components/SafeDepositRental/SafeDepositRental.ui.json +8 -1
  293. package/mobile/src/components/StepsBlock/StepsBlockStyleMaps.ts +2 -2
  294. package/mobile/src/components/StepsBlock/renderItems.tsx +24 -15
  295. package/mobile/src/components/StepsBlock/renderStepContent.tsx +63 -0
  296. package/mobile/src/model/BlockDecorator.ts +2 -0
  297. package/mobile/src/model/BlocksRegistry.ts +4 -1
  298. package/mobile/src/ui-kit/Foldable/DefaultFoldButton.tsx +52 -0
  299. package/mobile/src/ui-kit/Foldable/Foldable.tsx +19 -67
  300. package/mobile/src/ui-kit/Foldable/FoldablePartProps.ts +4 -0
  301. package/mobile/src/ui-kit/Foldable/FoldableSection.tsx +30 -0
  302. package/package.json +2 -2
  303. package/src/common.css +11 -3
  304. package/src/components/Accordion/Accordion.mobile.tsx +17 -7
  305. package/src/components/Accordion/Accordion.tsx +12 -3
  306. package/src/components/Accordion/AccordionContent.ts +10 -7
  307. package/src/components/Accordion/AccordionItem.mobile.tsx +34 -30
  308. package/src/components/Accordion/AccordionItem.tsx +24 -23
  309. package/src/components/Accordion/AccordionItemProps.ts +6 -0
  310. package/src/components/Accordion/AccordionItemsList.tsx +5 -0
  311. package/src/components/Blocks.ts +2 -0
  312. package/src/components/ContentPage/filterBlocks.mobile.ts +1 -3
  313. package/src/components/ContentPage/filterBlocks.ts +1 -2
  314. package/src/components/ContentPage/renderBlock.tsx +2 -2
  315. package/src/components/ExchangeRateTile/ExchangeRateTile.ui.json +8 -1
  316. package/src/components/Footer/Footer.mobile.tsx +15 -13
  317. package/src/components/GracePeriod/GracePeriod.ui.json +5 -0
  318. package/src/components/Header/Header.mobile.tsx +16 -11
  319. package/src/components/InvestmentInfo/InvestmentInfo.example.json +48 -0
  320. package/src/components/InvestmentInfo/InvestmentInfo.fixture.tsx +107 -0
  321. package/src/components/InvestmentInfo/InvestmentInfo.tsx +149 -0
  322. package/src/components/InvestmentInfo/InvestmentInfo.ui.json +16 -0
  323. package/src/components/InvestmentInfo/InvestmentInfoContent.ts +55 -0
  324. package/src/components/OtherProducts/OtherProductsItem.tsx +18 -15
  325. package/src/components/SafeDepositRental/SafeDepositRental.ui.json +8 -1
  326. package/src/components/StepsBlock/StepsBlock.fixture.tsx +39 -25
  327. package/src/components/StepsBlock/StepsBlock.tsx +3 -49
  328. package/src/components/StepsBlock/StepsBlockStyleMaps.ts +2 -2
  329. package/src/components/StepsBlock/renderItems.tsx +24 -15
  330. package/src/components/StepsBlock/renderStepContent.tsx +63 -0
  331. package/src/components/TariffsTable/TariffsTable.tsx +32 -23
  332. package/src/model/BlockDecorator.ts +2 -0
  333. package/src/model/BlocksRegistry.ts +4 -1
  334. package/src/ui-kit/Foldable/DefaultFoldButton.tsx +52 -0
  335. package/src/ui-kit/Foldable/Foldable.tsx +19 -67
  336. package/src/ui-kit/Foldable/FoldablePartProps.ts +4 -0
  337. package/src/ui-kit/Foldable/FoldableSection.tsx +30 -0
  338. package/tailwind.config.cjs +5 -0
  339. package/bundle/components/ContentPage/isBlockInRegistry.d.ts +0 -2
  340. package/bundle/ui-kit/Foldable/DefaultButton.d.ts +0 -2
  341. package/bundle/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
  342. package/bundle/utils/getAccordionItems.d.ts +0 -1
  343. package/dist/components/ContentPage/isBlockInRegistry.d.ts +0 -2
  344. package/dist/components/ContentPage/isBlockInRegistry.js +0 -7
  345. package/dist/components/ContentPage/isBlockInRegistry.js.map +0 -1
  346. package/dist/ui-kit/Foldable/DefaultButton.d.ts +0 -2
  347. package/dist/ui-kit/Foldable/DefaultButton.js +0 -12
  348. package/dist/ui-kit/Foldable/DefaultButton.js.map +0 -1
  349. package/dist/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
  350. package/dist/ui-kit/Foldable/FoldButtonProps.js.map +0 -1
  351. package/dist/utils/getAccordionItems.d.ts +0 -1
  352. package/dist/utils/getAccordionItems.js +0 -13
  353. package/dist/utils/getAccordionItems.js.map +0 -1
  354. package/lib/components/ContentPage/isBlockInRegistry.d.ts +0 -2
  355. package/lib/components/ContentPage/isBlockInRegistry.js +0 -4
  356. package/lib/components/ContentPage/isBlockInRegistry.js.map +0 -1
  357. package/lib/ui-kit/Foldable/DefaultButton.d.ts +0 -2
  358. package/lib/ui-kit/Foldable/DefaultButton.js +0 -10
  359. package/lib/ui-kit/Foldable/DefaultButton.js.map +0 -1
  360. package/lib/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
  361. package/lib/ui-kit/Foldable/FoldButtonProps.js +0 -2
  362. package/lib/ui-kit/Foldable/FoldButtonProps.js.map +0 -1
  363. package/lib/utils/getAccordionItems.d.ts +0 -1
  364. package/lib/utils/getAccordionItems.js +0 -10
  365. package/lib/utils/getAccordionItems.js.map +0 -1
  366. package/mobile/bundle/components/ContentPage/isBlockInRegistry.d.ts +0 -2
  367. package/mobile/bundle/ui-kit/Foldable/DefaultButton.d.ts +0 -2
  368. package/mobile/bundle/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
  369. package/mobile/bundle/utils/getAccordionItems.d.ts +0 -1
  370. package/mobile/dist/components/ContentPage/isBlockInRegistry.d.ts +0 -2
  371. package/mobile/dist/components/ContentPage/isBlockInRegistry.js +0 -7
  372. package/mobile/dist/components/ContentPage/isBlockInRegistry.js.map +0 -1
  373. package/mobile/dist/ui-kit/Foldable/DefaultButton.d.ts +0 -2
  374. package/mobile/dist/ui-kit/Foldable/DefaultButton.js +0 -12
  375. package/mobile/dist/ui-kit/Foldable/DefaultButton.js.map +0 -1
  376. package/mobile/dist/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
  377. package/mobile/dist/ui-kit/Foldable/FoldButtonProps.js.map +0 -1
  378. package/mobile/dist/utils/getAccordionItems.d.ts +0 -1
  379. package/mobile/dist/utils/getAccordionItems.js +0 -13
  380. package/mobile/dist/utils/getAccordionItems.js.map +0 -1
  381. package/mobile/lib/components/ContentPage/isBlockInRegistry.d.ts +0 -2
  382. package/mobile/lib/components/ContentPage/isBlockInRegistry.js +0 -4
  383. package/mobile/lib/components/ContentPage/isBlockInRegistry.js.map +0 -1
  384. package/mobile/lib/ui-kit/Foldable/DefaultButton.d.ts +0 -2
  385. package/mobile/lib/ui-kit/Foldable/DefaultButton.js +0 -10
  386. package/mobile/lib/ui-kit/Foldable/DefaultButton.js.map +0 -1
  387. package/mobile/lib/ui-kit/Foldable/FoldButtonProps.d.ts +0 -12
  388. package/mobile/lib/ui-kit/Foldable/FoldButtonProps.js +0 -2
  389. package/mobile/lib/ui-kit/Foldable/FoldButtonProps.js.map +0 -1
  390. package/mobile/lib/utils/getAccordionItems.d.ts +0 -1
  391. package/mobile/lib/utils/getAccordionItems.js +0 -10
  392. package/mobile/lib/utils/getAccordionItems.js.map +0 -1
  393. package/mobile/src/components/ContentPage/isBlockInRegistry.ts +0 -5
  394. package/mobile/src/ui-kit/Foldable/DefaultButton.tsx +0 -27
  395. package/mobile/src/ui-kit/Foldable/FoldButtonProps.ts +0 -13
  396. package/mobile/src/utils/getAccordionItems.ts +0 -10
  397. package/src/components/ContentPage/isBlockInRegistry.ts +0 -5
  398. package/src/ui-kit/Foldable/DefaultButton.tsx +0 -27
  399. package/src/ui-kit/Foldable/FoldButtonProps.ts +0 -13
  400. package/src/utils/getAccordionItems.ts +0 -10
package/src/common.css CHANGED
@@ -5,9 +5,17 @@ html {
5
5
  scroll-behavior: smooth;
6
6
  }
7
7
 
8
+ * {
9
+ --color-green: 78, 190, 81;
10
+ --color-green-light: 131, 184, 62;
11
+ --color-green-dark: 66, 171, 68;
12
+ --color-green-more-dark: 39, 148, 41;
13
+ --color-yellow: 221, 182, 61;
14
+ }
15
+
8
16
  /* Private clients | Green */
9
17
  [data-theme='pc'] {
10
- --color-primary-main: 66, 171, 68;
18
+ --color-primary-main: var(--color-green-dark);
11
19
  --color-primary-hover: 36, 131, 65;
12
20
  --color-primary-active: 36, 95, 52;
13
21
  --color-secondary-hover: 36, 131, 65;
@@ -17,7 +25,7 @@ html {
17
25
  }
18
26
  /* Business clients | Light-Green */
19
27
  [data-theme='bc'] {
20
- --color-primary-main: 131, 184, 62;
28
+ --color-primary-main: var(--color-green-light);
21
29
  --color-primary-hover: 92, 146, 29;
22
30
  --color-primary-active: 60, 94, 16;
23
31
  --color-secondary-hover: 92, 146, 29;
@@ -27,7 +35,7 @@ html {
27
35
  }
28
36
  /* Ecosystem own | Yellow */
29
37
  [data-theme='eo'] {
30
- --color-primary-main: 221, 182, 61;
38
+ --color-primary-main: var(--color-yellow);
31
39
  --color-primary-hover: 187, 151, 39;
32
40
  --color-primary-active: 126, 99, 12;
33
41
  --color-secondary-hover: 187, 151, 39;
@@ -1,30 +1,40 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import type { UniBlockProps } from '../../model/ContentPageDef';
3
+ import { renderBlocksList } from '../../ui-kit/BlocksList/renderBlocksList';
4
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
3
5
  import { Heading } from '../../ui-kit/Heading/Heading';
4
6
  import type { AccordionContent } from './AccordionContent';
5
7
  import { AccordionItem } from './AccordionItem';
8
+ import { AccordionItemsList } from './AccordionItemsList';
6
9
 
7
10
  export interface AccordionProps extends AccordionContent, UniBlockProps {}
8
11
 
9
12
  export const Accordion = JSX<AccordionProps>(
10
- ({ title, description, accordionItems, context, className = '', bordered }) => {
13
+ ({ title, description, accordionItems, context, className = '', bordered, ...rest }) => {
11
14
  return (
12
- <section className={`py-6 px-4 font-sans bg-white text-primary-text ${className}`}>
15
+ <BlockWrapper
16
+ context={context}
17
+ className={`py-6 px-4 font-sans bg-white text-primary-text ${className}`}
18
+ {...rest}
19
+ >
13
20
  {title ? <Heading headingType="h3" className="mb-2 text-center" title={title} /> : null}
14
21
  {description ? <div className="mb-5 text-m-light text-center">{description}</div> : null}
15
22
  {accordionItems?.length ? (
16
- <ul className="list-none m-0 p-0">
23
+ <AccordionItemsList>
17
24
  {accordionItems.map((item, i) => (
18
25
  <AccordionItem
19
26
  key={`AccordionItem_${i}`}
20
- {...item}
21
27
  context={context}
22
28
  bordered={bordered}
23
- />
29
+ hasContent={Boolean(item.blocks?.length)}
30
+ {...item}
31
+ >
32
+ {renderBlocksList({ blocks: item.blocks, context, className: '!p-0 mb-5' })}
33
+ </AccordionItem>
24
34
  ))}
25
- </ul>
35
+ </AccordionItemsList>
26
36
  ) : null}
27
- </section>
37
+ </BlockWrapper>
28
38
  );
29
39
  },
30
40
  );
@@ -1,10 +1,12 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { AlignType } from '../../model/AlignType';
3
3
  import type { UniBlockProps } from '../../model/ContentPageDef';
4
+ import { renderBlocksList } from '../../ui-kit/BlocksList/renderBlocksList';
4
5
  import { BlockWrapper } from '../../ui-kit/BlockWrapper';
5
6
  import { Heading } from '../../ui-kit/Heading/Heading';
6
7
  import type { AccordionContent } from './AccordionContent';
7
8
  import { AccordionItem } from './AccordionItem';
9
+ import { AccordionItemsList } from './AccordionItemsList';
8
10
 
9
11
  const ALIGN_TITLE: Record<AlignType, string> = {
10
12
  left: 'text-left',
@@ -40,11 +42,18 @@ export const Accordion = JSX<AccordionProps>(
40
42
  ) : null}
41
43
  {description ? <div className="mb-2.5 text-l">{description}</div> : null}
42
44
  {accordionItems?.length ? (
43
- <ul className="list-none m-0 p-0">
45
+ <AccordionItemsList>
44
46
  {accordionItems.map((item, i) => (
45
- <AccordionItem key={`AccordionItem${i}`} {...item} context={context} />
47
+ <AccordionItem
48
+ key={`AccordionItem${i}`}
49
+ context={context}
50
+ hasContent={Boolean(item.blocks?.length)}
51
+ {...item}
52
+ >
53
+ {renderBlocksList({ blocks: item.blocks, context, className: '!p-0 mb-5' })}
54
+ </AccordionItem>
46
55
  ))}
47
- </ul>
56
+ </AccordionItemsList>
48
57
  ) : null}
49
58
  </BlockWrapper>
50
59
  );
@@ -1,12 +1,9 @@
1
1
  import type { AlignType } from '../../model/AlignType';
2
2
  import type { BlockVersion } from '../../model/BlockVersion';
3
+ import type { HeadlineCommonProps } from '../../model/HeadlineType';
3
4
  import type { Picture } from '../../model/Picture';
4
5
  import type { BlockDef } from '../../ui-kit/BlocksList/BlocksListProps';
5
- import type { HeadlineCommonProps } from '../../model/HeadlineType';
6
6
 
7
- /**
8
- * @title Элемент списка
9
- */
10
7
  export interface AccordionItemCommonProps {
11
8
  /**
12
9
  * @title Название
@@ -15,8 +12,6 @@ export interface AccordionItemCommonProps {
15
12
  label?: string;
16
13
  /** @title Отображать в раскрытом виде */
17
14
  isExpanded?: boolean;
18
- /** @title Блоки */
19
- blocks?: BlockDef[];
20
15
  /**
21
16
  * @title Отображать/скрывать обводку элемента
22
17
  * @default false
@@ -25,6 +20,14 @@ export interface AccordionItemCommonProps {
25
20
  labelIcon?: Picture; // TODO: только для мобильной версии
26
21
  }
27
22
 
23
+ /**
24
+ * @title Элемент списка
25
+ */
26
+ export interface AccordionItem extends AccordionItemCommonProps {
27
+ /** @title Блоки */
28
+ blocks?: BlockDef[];
29
+ }
30
+
28
31
  /**
29
32
  * @title Аккордеон
30
33
  */
@@ -36,7 +39,7 @@ export type AccordionContent = HeadlineCommonProps & {
36
39
  accordionAlignTitle?: AlignType;
37
40
  version?: BlockVersion;
38
41
  /** @title Список */
39
- accordionItems?: AccordionItemCommonProps[];
42
+ accordionItems?: AccordionItem[];
40
43
  /**
41
44
  * @title Отображать/скрывать обводку у элемента списка
42
45
  * @default false
@@ -1,43 +1,47 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
- import { UniBlockProps } from '../../model/ContentPageDef';
3
- import { renderBlocksList } from '../../ui-kit/BlocksList/renderBlocksList';
2
+ import type { Picture } from '../../model/Picture';
4
3
  import { Foldable } from '../../ui-kit/Foldable/Foldable';
5
- import type { FoldButtonProps } from '../../ui-kit/Foldable/FoldButtonProps';
4
+ import { FoldableSection } from '../../ui-kit/Foldable/FoldableSection';
6
5
  import type { IconName } from '../../ui-kit/Icon/IconProps';
7
6
  import { Img } from '../../ui-kit/Img/Img';
8
- import type { AccordionItemCommonProps } from './AccordionContent';
9
-
10
- export interface AccordionItemProps extends AccordionItemCommonProps, UniBlockProps {}
7
+ import type { AccordionItemProps } from './AccordionItemProps';
11
8
 
12
9
  const icons: IconName[] = ['PlusIcon', 'MinusIcon'];
13
10
 
14
11
  export const AccordionItem = JSX<AccordionItemProps>(
15
- ({ label = '', labelIcon, blocks, bordered, context }) => {
16
- const foldableBlocks = blocks ? renderBlocksList({ context, blocks, className: '!px-0' }) : [];
17
-
18
- return (
19
- <li className={`${borderedLiClass(bordered)} border-solid border-main-divider`}>
20
- <Foldable
21
- hiddenBlocksNum={foldableBlocks.length}
22
- blocks={foldableBlocks}
23
- isFoldButtonOnTop
24
- containerClassName="flex flex-wrap group-last:last:pb-0"
25
- renderFoldButton={(props) => (
26
- <FoldButton
27
- className={bordered ? '' : 'py-[14px] px-0'}
28
- icon={icons[Number(props.isUnfolded)]}
29
- label={label}
30
- primaryIcon={labelIcon}
31
- hasContent={Boolean(blocks?.length)}
32
- onClick={props.onToggle}
33
- />
34
- )}
35
- />
36
- </li>
37
- );
38
- },
12
+ ({ label = '', labelIcon, bordered, children, hasContent = true }) => (
13
+ <li className={`${borderedLiClass(bordered)} border-solid border-main-divider`}>
14
+ <Foldable
15
+ isFoldButtonOnTop={true}
16
+ renderFoldableSection={({ isUnfolded }) => (
17
+ <FoldableSection className="flex flex-wrap group-last:last:pb-0" isUnfolded={isUnfolded}>
18
+ {children}
19
+ </FoldableSection>
20
+ )}
21
+ renderFoldButton={({ isUnfolded, onToggle }) => (
22
+ <FoldButton
23
+ className={bordered ? '' : 'py-[14px] px-0'}
24
+ label={label}
25
+ icon={icons[Number(isUnfolded)]}
26
+ primaryIcon={labelIcon}
27
+ hasContent={hasContent}
28
+ onClick={onToggle}
29
+ />
30
+ )}
31
+ />
32
+ </li>
33
+ ),
39
34
  );
40
35
 
36
+ interface FoldButtonProps {
37
+ className?: string;
38
+ label: string;
39
+ icon: IconName;
40
+ primaryIcon?: Picture;
41
+ hasContent: boolean;
42
+ onClick?: () => void;
43
+ }
44
+
41
45
  const FoldButton = JSX<FoldButtonProps>(
42
46
  ({ className, hasContent, icon, label, primaryIcon, onClick }) => (
43
47
  <button
@@ -1,42 +1,43 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
- import { UniBlockProps } from '../../model/ContentPageDef';
3
- import { renderBlocksList } from '../../ui-kit/BlocksList/renderBlocksList';
4
2
  import { Foldable } from '../../ui-kit/Foldable/Foldable';
5
- import type { FoldButtonProps } from '../../ui-kit/Foldable/FoldButtonProps';
3
+ import { FoldableSection } from '../../ui-kit/Foldable/FoldableSection';
6
4
  import type { IconName } from '../../ui-kit/Icon/IconProps';
7
5
  import { Img } from '../../ui-kit/Img/Img';
8
- import type { AccordionItemCommonProps } from './AccordionContent';
9
-
10
- export interface AccordionItemProps extends AccordionItemCommonProps, UniBlockProps {}
6
+ import type { AccordionItemProps } from './AccordionItemProps';
11
7
 
12
8
  const icons: IconName[] = ['PlusIcon', 'MinusIcon'];
13
9
 
14
- export const AccordionItem = JSX<AccordionItemProps>(({ label = '', blocks, context }) => {
15
- const foldableBlocks = blocks
16
- ? renderBlocksList({ context, blocks, className: '!p-0 mb-5' })
17
- : [];
18
-
19
- return (
10
+ export const AccordionItem = JSX<AccordionItemProps>(
11
+ ({ label = '', children, hasContent = true }) => (
20
12
  <li className="border-0 border-b border-solid border-main-divider last:border-b-0">
21
13
  <Foldable
22
- hiddenBlocksNum={foldableBlocks.length}
23
- blocks={foldableBlocks}
24
- isFoldButtonOnTop
25
- containerClassName="grid grid-cols-12"
26
- renderFoldButton={(props) => (
14
+ isFoldButtonOnTop={true}
15
+ renderFoldableSection={({ isUnfolded }) => (
16
+ <FoldableSection className="grid grid-cols-12" isUnfolded={isUnfolded}>
17
+ {children}
18
+ </FoldableSection>
19
+ )}
20
+ renderFoldButton={({ isUnfolded, onToggle }) => (
27
21
  <FoldButton
28
- icon={icons[Number(props.isUnfolded)]}
29
22
  label={label}
30
- hasContent={Boolean(blocks?.length)}
31
- onClick={props.onToggle}
23
+ icon={icons[Number(isUnfolded)]}
24
+ hasContent={hasContent}
25
+ onClick={onToggle}
32
26
  />
33
27
  )}
34
28
  />
35
29
  </li>
36
- );
37
- });
30
+ ),
31
+ );
32
+
33
+ interface FoldButtonProps {
34
+ label: string;
35
+ icon: IconName;
36
+ hasContent: boolean;
37
+ onClick?: () => void;
38
+ }
38
39
 
39
- const FoldButton = JSX<FoldButtonProps>(({ icon, label, hasContent, onClick }) => (
40
+ const FoldButton = JSX<FoldButtonProps>(({ label, icon, hasContent, onClick }) => (
40
41
  <button
41
42
  className={`border-none bg-transparent px-0 pt-5 pb-3.5 flex justify-between text-left w-full font-sans text-h6 group cursor-pointer ${
42
43
  hasContent ? 'group cursor-pointer' : ''
@@ -0,0 +1,6 @@
1
+ import type { UniBlockProps } from '../../model/ContentPageDef';
2
+ import type { AccordionItemCommonProps } from './AccordionContent';
3
+
4
+ export interface AccordionItemProps extends AccordionItemCommonProps, UniBlockProps {
5
+ hasContent?: boolean;
6
+ }
@@ -0,0 +1,5 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+
3
+ export const AccordionItemsList = JSX(({ children }) => (
4
+ <ul className="list-none m-0 p-0">{children}</ul>
5
+ ));
@@ -14,6 +14,7 @@ import { GracePeriod } from './GracePeriod/GracePeriod';
14
14
  import { Header } from './Header/Header';
15
15
  import { Headline } from './Headline/Headline';
16
16
  import { InsuranceAmountBlock } from './InsuranceAmountBlock/InsuranceAmountBlock';
17
+ import { InvestmentInfo } from './InvestmentInfo/InvestmentInfo';
17
18
  import { LinkDocs } from './LinkDocs/LinkDocs';
18
19
  import { MiniGallery } from './MiniGallery/MiniGallery';
19
20
  import { MobileAppTile } from './MobileAppTile/MobileAppTile';
@@ -48,6 +49,7 @@ export const Blocks = {
48
49
  Header,
49
50
  Headline,
50
51
  InsuranceAmountBlock,
52
+ InvestmentInfo,
51
53
  LinkDocs,
52
54
  MiniGallery,
53
55
  MobileAppTile,
@@ -1,13 +1,11 @@
1
1
  import type { BlocksRegistry } from '../../model/BlocksRegistry';
2
2
  import type { BlockDef } from '../../model/ContentPageDef';
3
- import { isBlockInRegistry } from './isBlockInRegistry';
4
3
  import { normalizeBlock } from './normalizeBlock';
5
4
 
6
5
  export const filterBlocks = (blocks: BlockDef[], blocksRegistry: BlocksRegistry) =>
7
6
  blocks
8
7
  ?.filter(
9
8
  (block) =>
10
- isBlockInRegistry(block?.type || block?.mobile?.type, blocksRegistry) &&
11
- !block.mobile?.hidden,
9
+ (block?.type || block?.mobile?.type || '') in blocksRegistry && !block.mobile?.hidden,
12
10
  )
13
11
  .map(normalizeBlock);
@@ -1,7 +1,6 @@
1
1
  import type { BlocksRegistry } from '../../model/BlocksRegistry';
2
2
  import type { BlockDef } from '../../model/ContentPageDef';
3
- import { isBlockInRegistry } from './isBlockInRegistry';
4
3
  import { normalizeBlock } from './normalizeBlock';
5
4
 
6
5
  export const filterBlocks = (blocks: BlockDef[], blocksRegistry: BlocksRegistry) =>
7
- blocks?.filter((block) => isBlockInRegistry(block?.type, blocksRegistry)).map(normalizeBlock);
6
+ blocks?.filter((block) => (block?.type || '') in blocksRegistry).map(normalizeBlock);
@@ -1,4 +1,4 @@
1
- import { BlockAncestors, BlockDecorator, DEFAULT_SLOT_NAME } from '../../model/BlockDecorator';
1
+ import { BlockAncestors, BlockDecorator, DEFAULT_ANCESTORS } from '../../model/BlockDecorator';
2
2
  import type { BlocksRegistry } from '../../model/BlocksRegistry';
3
3
  import type { BlockDef, ContentPageDef } from '../../model/ContentPageDef';
4
4
  import { style2className } from '../../utils/style2className';
@@ -15,7 +15,7 @@ interface RenderBlockOptions {
15
15
  export function renderBlock(
16
16
  block: BlockDef,
17
17
  options: RenderBlockOptions,
18
- ancestors: BlockAncestors = [DEFAULT_SLOT_NAME], // Recursion context
18
+ ancestors: BlockAncestors = DEFAULT_ANCESTORS, // Recursion context
19
19
  ) {
20
20
  const { key, page, blockDecorator, blocksRegistry, context } = options;
21
21
  const { type } = block;
@@ -1 +1,8 @@
1
- {}
1
+ {
2
+ "content": {},
3
+ "style": {
4
+ "ui:options": {
5
+ "minCols": 6
6
+ }
7
+ }
8
+ }
@@ -1,6 +1,13 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import type { UniBlockProps } from '../../model/ContentPageDef';
3
- import { Accordion } from '../Accordion/Accordion';
3
+ import type { Fallback } from '../../model/Fallback';
4
+ import { useSitemap } from '../../services/sitemap/useSitemap';
5
+ import { Button } from '../../ui-kit/Button/Button';
6
+ import { Img } from '../../ui-kit/Img/Img';
7
+ import { SearchBar } from '../../ui-kit/SearchBar/SearchBar';
8
+ import { AccordionItem } from '../Accordion/AccordionItem';
9
+ import { AccordionItemsList } from '../Accordion/AccordionItemsList';
10
+ import { LinkList } from '../LinkList/LinkList';
4
11
  import { MobileAppTile } from '../MobileAppTile/MobileAppTile';
5
12
  import { Contacts } from './Contacts';
6
13
  import type { FooterContent, SubMenuItem } from './FooterContent';
@@ -8,13 +15,6 @@ import { HorizontalNavigation } from './HorizontalNavigation';
8
15
  import { SocialMedia } from './SocialMedia';
9
16
  import { TextInformation } from './TextInformation';
10
17
 
11
- import { useSitemap } from '../../services/sitemap/useSitemap';
12
- import type { Fallback } from '../../model/Fallback';
13
- import { Button } from '../../ui-kit/Button/Button';
14
- import { Img } from '../../ui-kit/Img/Img';
15
- import { SearchBar } from '../../ui-kit/SearchBar/SearchBar';
16
- import { getAccordionItems } from '../../utils/getAccordionItems';
17
-
18
18
  export interface FooterProps extends FooterContent, UniBlockProps {}
19
19
 
20
20
  export const Footer = JSX<FooterProps>(
@@ -35,11 +35,13 @@ export const Footer = JSX<FooterProps>(
35
35
  return (
36
36
  <footer className={`font-sans px-4 py-[26px] bg-white ${className}`}>
37
37
  <Contacts className="overflow-hidden" items={contacts} context={context} hasButton />
38
- <Accordion
39
- context={context}
40
- className="!p-0 mb-4"
41
- accordionItems={getAccordionItems(sitemap.topItems)}
42
- />
38
+ <AccordionItemsList>
39
+ {sitemap.topItems?.map((item, i) => (
40
+ <AccordionItem key={String(i)} context={context} label={item.text}>
41
+ <LinkList context={context} documents={item.items} />
42
+ </AccordionItem>
43
+ ))}
44
+ </AccordionItemsList>
43
45
  <div>{dispositions?.map(renderSubMenuItem)}</div>
44
46
  <MobileAppTile
45
47
  context={context}
@@ -11,5 +11,10 @@
11
11
  }
12
12
  }
13
13
  }
14
+ },
15
+ "style": {
16
+ "ui:options": {
17
+ "minCols": 6
18
+ }
14
19
  }
15
20
  }
@@ -2,15 +2,16 @@ import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useState } from '@redneckz/uni-jsx/lib/hooks';
3
3
  import { useLink } from '../../hooks/useLink';
4
4
  import type { UniBlockProps } from '../../model/ContentPageDef';
5
+ import type { Fallback } from '../../model/Fallback';
5
6
  import { findActiveSubItem } from '../../services/sitemap/findActiveSubItem';
6
7
  import { isTopItemActive } from '../../services/sitemap/isTopItemActive';
7
8
  import { mergeTopItems } from '../../services/sitemap/mergeTopItems';
8
9
  import { useSitemap } from '../../services/sitemap/useSitemap';
9
- import type { Fallback } from '../../model/Fallback';
10
10
  import { HeaderItem } from '../../ui-kit/HeaderItem/HeaderItem';
11
11
  import type { TopItemProps } from '../../ui-kit/TopItem/TopItem';
12
- import { getAccordionItems } from '../../utils/getAccordionItems';
13
- import { Accordion } from '../Accordion/Accordion';
12
+ import { AccordionItem } from '../Accordion/AccordionItem';
13
+ import { AccordionItemsList } from '../Accordion/AccordionItemsList';
14
+ import { LinkList } from '../LinkList/LinkList';
14
15
  import { HeaderBurger } from './HeaderBurger';
15
16
  import type { HeaderContent } from './HeaderContent';
16
17
  import { HeaderTop } from './HeaderTop';
@@ -19,17 +20,19 @@ export interface HeaderProps extends HeaderContent, UniBlockProps {}
19
20
 
20
21
  export const Header = JSX<HeaderProps>(
21
22
  ({ className = '', defaultLocation, bgColor = 'bg-white', context, topItems, page }) => {
23
+ const { handlerDecorator } = context;
22
24
  const router = context.useRouter();
25
+
23
26
  const fallback: Fallback | undefined = page?.fallback;
24
27
  const sitemap = useSitemap(fallback);
25
- const dispositions = sitemap?.dispositions;
26
- const { handlerDecorator } = context;
27
28
 
28
29
  const mergedItems = mergeTopItems(sitemap.topItems, topItems);
29
30
  const activeTopItem = mergedItems.find(isTopItemActive(router));
30
31
  const subItems = activeTopItem?.items;
31
32
  const activeSubItem = findActiveSubItem(router)(subItems);
33
+
32
34
  const [burgerMenuShow, setBurgerMenuShow] = useState(false);
35
+
33
36
  const toggleBurgerMenu = () => setBurgerMenuShow(!burgerMenuShow);
34
37
 
35
38
  return (
@@ -55,14 +58,16 @@ export const Header = JSX<HeaderProps>(
55
58
  <HeaderBurger
56
59
  context={context}
57
60
  onClick={toggleBurgerMenu}
58
- burgerSubMenu={dispositions}
61
+ burgerSubMenu={sitemap?.dispositions}
59
62
  defaultLocation={defaultLocation}
60
63
  >
61
- <Accordion
62
- context={context}
63
- accordionItems={getAccordionItems(sitemap.topItems)}
64
- className="!p-0 mb-4"
65
- />
64
+ <AccordionItemsList>
65
+ {sitemap.topItems?.map((item, i) => (
66
+ <AccordionItem key={String(i)} context={context} label={item.text}>
67
+ <LinkList context={context} documents={item.items} />
68
+ </AccordionItem>
69
+ ))}
70
+ </AccordionItemsList>
66
71
  </HeaderBurger>
67
72
  ) : null}
68
73
  </header>
@@ -0,0 +1,48 @@
1
+ {
2
+ "items": ["Пункт 1", "Пункт 2", "Пункт 3"],
3
+ "investmentZeroColumn": {
4
+ "title": "Название 1"
5
+ },
6
+ "investmentColumns": [
7
+ {
8
+ "title": "Название 2",
9
+ "cells": [
10
+ {
11
+ "text": "Ячейка 2-1",
12
+ "cellColor": "green-dark",
13
+ "cellSize": "S"
14
+ }
15
+ ]
16
+ },
17
+ {
18
+ "title": "Название 3",
19
+ "cells": [
20
+ {
21
+ "text": "Ячейка 3-1",
22
+ "cellColor": "green-dark",
23
+ "cellSize": "S"
24
+ }
25
+ ]
26
+ },
27
+ {
28
+ "title": "Название 4",
29
+ "cells": [
30
+ {
31
+ "text": "Ячейка 4-1",
32
+ "cellColor": "green-dark",
33
+ "cellSize": "L"
34
+ }
35
+ ]
36
+ },
37
+ {
38
+ "title": "Название 5",
39
+ "cells": [
40
+ {
41
+ "text": "Ячейка 5-1",
42
+ "cellColor": "green-dark",
43
+ "cellSize": "XL"
44
+ }
45
+ ]
46
+ }
47
+ ]
48
+ }