@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
@@ -1,5 +1,8 @@
1
1
  import type { UNIComponent } from '@redneckz/uni-jsx';
2
2
  import type { UniBlockProps } from './ContentPageDef';
3
3
  import type { VNode } from './VNode';
4
- export declare type JSXBlock<BlockProps = Record<string, any>> = UNIComponent<BlockProps & UniBlockProps, any, VNode | VNode[]>;
4
+ export declare type JSXBlock<BlockProps = Record<string, any>> = UNIComponent<BlockProps & UniBlockProps, any, VNode | VNode[]> & {
5
+ childrenTypes?: string[];
6
+ renderChild?: (child: VNode, i: number) => VNode;
7
+ };
5
8
  export declare type BlocksRegistry<BlockProps = Record<string, any>> = Record<string, JSXBlock<BlockProps>>;
@@ -0,0 +1,14 @@
1
+ /// <reference types="react" />
2
+ import type { ColorPalette } from '../../model/ContentPageDef';
3
+ import type { IconName } from '../Icon/IconProps';
4
+ import type { FoldablePartProps } from './FoldablePartProps';
5
+ interface DefaultFoldButtonProps {
6
+ className?: string;
7
+ label: string;
8
+ icon: IconName;
9
+ dataTheme?: ColorPalette;
10
+ onClick?: () => void;
11
+ }
12
+ export declare const DefaultFoldButton: import("@redneckz/uni-jsx").UNIComponent<DefaultFoldButtonProps, any, any>;
13
+ export declare const renderDefaultFoldButton: ({ isUnfolded, onToggle }: FoldablePartProps) => JSX.Element;
14
+ export {};
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
2
+ import { JSX } from '@redneckz/uni-jsx';
3
+ import { Img } from '../Img/Img.js';
4
+ export const DefaultFoldButton = JSX(({ className, label, icon, dataTheme = '', onClick }) => (_jsxs("button", { className: `border-none bg-primary-main hover:bg-primary-hover px-0 py-5 mb-[1px] w-full font-sans text-white flex justify-center cursor-pointer ${className || ''}`, "data-theme": dataTheme, onClick: onClick, children: [_jsx("span", { className: "text-h4 pr-3", children: label }), icon ? (_jsx(Img, { image: {
5
+ icon,
6
+ iconVersion: 'white',
7
+ }, className: "flex-shrink-0 my-auto", width: "20", height: "20", asSVG: true })) : null] })));
8
+ export const renderDefaultFoldButton = ({ isUnfolded, onToggle }) => {
9
+ const labels = ['Развернуть', 'Скрыть'];
10
+ const icons = ['ArrowDownIcon', 'ArrowUpIcon'];
11
+ return (_jsx(DefaultFoldButton, { icon: icons[Number(isUnfolded)], label: labels[Number(isUnfolded)], onClick: onToggle }));
12
+ };
13
+ //# sourceMappingURL=DefaultFoldButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultFoldButton.js","sourceRoot":"","sources":["../../../src/ui-kit/Foldable/DefaultFoldButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAGxC,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAWjC,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAClC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CACvD,kBACE,SAAS,EAAE,wIACT,SAAS,IAAI,EACf,EAAE,gBACU,SAAS,EACrB,OAAO,EAAE,OAAO,aAEhB,eAAM,SAAS,EAAC,cAAc,YAAE,KAAK,GAAQ,EAC5C,IAAI,CAAC,CAAC,CAAC,CACN,KAAC,GAAG,IACF,KAAK,EAAE;gBACL,IAAI;gBACJ,WAAW,EAAE,OAAO;aACrB,EACD,SAAS,EAAC,uBAAuB,EACjC,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,KAAK,SACL,CACH,CAAC,CAAC,CAAC,IAAI,IACD,CACV,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAqB,EAAE,EAAE;IACrF,MAAM,MAAM,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,KAAK,GAAe,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAE3D,OAAO,CACL,KAAC,iBAAiB,IAChB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EACjC,OAAO,EAAE,QAAQ,GACjB,CACH,CAAC;AACJ,CAAC,CAAC"}
@@ -1,16 +1,9 @@
1
1
  import type { VNode } from '../../model/VNode';
2
- interface RenderFoldButtonProps {
3
- isUnfolded: boolean;
4
- onToggle: () => void;
5
- }
2
+ import type { FoldablePartProps } from './FoldablePartProps';
6
3
  export interface FoldableProps {
7
- blocks?: VNode[];
8
- hiddenBlocksNum?: number;
9
4
  unfoldedByDefault?: boolean;
10
5
  isFoldButtonOnTop?: boolean;
11
- containerClassName?: string;
12
- blockWrapper?: (children: VNode) => VNode;
13
- renderFoldButton?: (props: RenderFoldButtonProps) => VNode;
6
+ renderFoldableSection: (props: FoldablePartProps) => VNode;
7
+ renderFoldButton?: (props: FoldablePartProps) => VNode;
14
8
  }
15
9
  export declare const Foldable: import("@redneckz/uni-jsx").UNIComponent<FoldableProps, any, any>;
16
- export {};
@@ -1,29 +1,13 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
1
+ import { jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
2
2
  import { JSX } from '@redneckz/uni-jsx';
3
- import { useRef, useState } from '@redneckz/uni-jsx/lib/hooks';
4
- import { clamp } from '../../utils/clamp.js';
5
- import { DefaultButton } from './DefaultButton.js';
6
- export const Foldable = JSX(({ blocks = [], hiddenBlocksNum = 0, isFoldButtonOnTop = false, unfoldedByDefault = false, containerClassName = '', blockWrapper = (_) => _, renderFoldButton = renderDefaultFoldButton, }) => {
3
+ import { useCallback, useState } from '@redneckz/uni-jsx/lib/hooks';
4
+ export const Foldable = JSX(({ isFoldButtonOnTop = false, unfoldedByDefault = false, renderFoldableSection, renderFoldButton, }) => {
7
5
  const [isUnfolded, setIsUnfolded] = useState(unfoldedByDefault);
8
- const blocksToHide = clamp(hiddenBlocksNum, 0, blocks?.length);
9
- const visibleBlocks = blocks.slice(0, blocks.length - blocksToHide);
10
- const hiddenBlocks = blocksToHide > 0 ? blocks.slice(-blocksToHide) : [];
11
- const containerRef = useRef(null);
12
- const onToggle = () => {
13
- setIsUnfolded(!isUnfolded);
14
- if (containerRef.current) {
15
- containerRef.current.style.maxHeight = isUnfolded
16
- ? ''
17
- : `${containerRef.current.scrollHeight}px`;
18
- }
19
- };
20
- const buttonNode = hiddenBlocksNum ? renderFoldButton({ isUnfolded, onToggle }) : null;
21
- const blocksNode = blockWrapper(_jsxs("div", { children: [visibleBlocks, _jsx("div", { ref: containerRef, className: `transition-max-h duration-300 overflow-hidden max-h-0 ${containerClassName}`, children: hiddenBlocks })] }));
22
- return (_jsx("div", { children: isFoldButtonOnTop ? (_jsxs("div", { children: [buttonNode, blocksNode] })) : (_jsxs("div", { children: [blocksNode, buttonNode] })) }));
6
+ const onToggle = useCallback(() => {
7
+ setIsUnfolded((_) => !_);
8
+ }, []);
9
+ const sectionNode = renderFoldableSection({ isUnfolded, onToggle });
10
+ const buttonNode = renderFoldButton ? renderFoldButton({ isUnfolded, onToggle }) : null;
11
+ return isFoldButtonOnTop ? (_jsxs("div", { children: [buttonNode, sectionNode] })) : (_jsxs("div", { children: [sectionNode, buttonNode] }));
23
12
  });
24
- const renderDefaultFoldButton = (props) => {
25
- const labels = ['Развернуть', 'Скрыть'];
26
- const icons = ['ArrowDownIcon', 'ArrowUpIcon'];
27
- return (_jsx(DefaultButton, { icon: icons[Number(props.isUnfolded)], label: labels[Number(props.isUnfolded)], onClick: props.onToggle }));
28
- };
29
13
  //# sourceMappingURL=Foldable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Foldable.js","sourceRoot":"","sources":["../../../src/ui-kit/Foldable/Foldable.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAgBhD,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,CACzB,CAAC,EACC,MAAM,GAAG,EAAE,EACX,eAAe,GAAG,CAAC,EACnB,iBAAiB,GAAG,KAAK,EACzB,iBAAiB,GAAG,KAAK,EACzB,kBAAkB,GAAG,EAAE,EACvB,YAAY,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EACvB,gBAAgB,GAAG,uBAAuB,GAC3C,EAAE,EAAE;IACH,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAChE,MAAM,YAAY,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/D,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,MAAM,YAAY,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAEzD,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,aAAa,CAAC,CAAC,UAAU,CAAC,CAAC;QAC3B,IAAI,YAAY,CAAC,OAAO,EAAE;YACxB,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU;gBAC/C,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC;SAC9C;IACH,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvF,MAAM,UAAU,GAAG,YAAY,CAC7B,0BACG,aAAa,EACd,cACE,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,yDAAyD,kBAAkB,EAAE,YAEvF,YAAY,GACT,IACF,CACP,CAAC;IAEF,OAAO,CACL,wBACG,iBAAiB,CAAC,CAAC,CAAC,CACnB,0BACG,UAAU,EACV,UAAU,IACP,CACP,CAAC,CAAC,CAAC,CACF,0BACG,UAAU,EACV,UAAU,IACP,CACP,GACG,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAAC,KAA4B,EAAE,EAAE;IAC/D,MAAM,MAAM,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,KAAK,GAAe,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAE3D,OAAO,CACL,KAAC,aAAa,IACZ,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,EACrC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,EACvC,OAAO,EAAE,KAAK,CAAC,QAAQ,GACvB,CACH,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"Foldable.js","sourceRoot":"","sources":["../../../src/ui-kit/Foldable/Foldable.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAWpE,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,CACzB,CAAC,EACC,iBAAiB,GAAG,KAAK,EACzB,iBAAiB,GAAG,KAAK,EACzB,qBAAqB,EACrB,gBAAgB,GACjB,EAAE,EAAE;IACH,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QAChC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAExF,OAAO,iBAAiB,CAAC,CAAC,CAAC,CACzB,0BACG,UAAU,EACV,WAAW,IACR,CACP,CAAC,CAAC,CAAC,CACF,0BACG,WAAW,EACX,UAAU,IACP,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ export interface FoldablePartProps {
2
+ isUnfolded: boolean;
3
+ onToggle?: () => void;
4
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=FoldablePartProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FoldablePartProps.js","sourceRoot":"","sources":["../../../src/ui-kit/Foldable/FoldablePartProps.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ export interface FoldableSectionProps {
2
+ className?: string;
3
+ isUnfolded?: boolean;
4
+ }
5
+ export declare const FoldableSection: import("@redneckz/uni-jsx").UNIComponent<FoldableSectionProps, any, any>;
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx } from "@redneckz/uni-jsx/jsx-runtime";
2
+ import { JSX } from '@redneckz/uni-jsx';
3
+ import { useEffect, useRef } from '@redneckz/uni-jsx/lib/hooks';
4
+ export const FoldableSection = JSX(({ className = '', isUnfolded, children }) => {
5
+ const containerRef = useRef(null);
6
+ useEffect(() => {
7
+ if (containerRef.current) {
8
+ containerRef.current.style.maxHeight = isUnfolded
9
+ ? `${containerRef.current.scrollHeight}px`
10
+ : '';
11
+ }
12
+ }, [isUnfolded]);
13
+ return (_jsx("div", { ref: containerRef, className: `transition-max-h duration-300 overflow-hidden max-h-0 ${className}`, children: children }));
14
+ });
15
+ //# sourceMappingURL=FoldableSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FoldableSection.js","sourceRoot":"","sources":["../../../src/ui-kit/Foldable/FoldableSection.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAOhE,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAChC,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC3C,MAAM,YAAY,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAEzD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,YAAY,CAAC,OAAO,EAAE;YACxB,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU;gBAC/C,CAAC,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,YAAY,IAAI;gBAC1C,CAAC,CAAC,EAAE,CAAC;SACR;IACH,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,OAAO,CACL,cACE,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,yDAAyD,SAAS,EAAE,YAE9E,QAAQ,GACL,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -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,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
@@ -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
+ ));
@@ -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,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
+ }