@redneckz/wildless-cms-uni-blocks 0.3.19 → 0.3.22

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 (347) hide show
  1. package/README.md +43 -0
  2. package/bundle/blocks.schema.json +1 -1
  3. package/bundle/bundle.umd.js +212 -13
  4. package/bundle/bundle.umd.min.js +1 -1
  5. package/cosmos-static/icons/ArrowDownIcon.svg +1 -0
  6. package/cosmos-static/icons/ArrowUpIcon.svg +1 -0
  7. package/dist/components/Accordion/AccordionContent.d.ts +3 -73
  8. package/dist/components/Accordion/AccordionItem.js +2 -2
  9. package/dist/components/Accordion/AccordionItem.js.map +1 -1
  10. package/dist/components/Accordion/AccordionItem.mobile.js +2 -2
  11. package/dist/components/Accordion/AccordionItem.mobile.js.map +1 -1
  12. package/dist/components/Accordion/AccordionItemInner.js +3 -11
  13. package/dist/components/Accordion/AccordionItemInner.js.map +1 -1
  14. package/dist/components/Accordion/AccordionItemInner.mobile.js +4 -10
  15. package/dist/components/Accordion/AccordionItemInner.mobile.js.map +1 -1
  16. package/{lib/components/Accordion/utils/isActiveHandler.d.ts → dist/components/Accordion/utils/useActiveHandler.d.ts} +1 -1
  17. package/{mobile/dist/components/Accordion/utils/isActiveHandler.js → dist/components/Accordion/utils/useActiveHandler.js} +4 -4
  18. package/dist/components/Accordion/utils/useActiveHandler.js.map +1 -0
  19. package/dist/components/Blocks.d.ts +1 -0
  20. package/dist/components/Blocks.js +2 -0
  21. package/dist/components/Blocks.js.map +1 -1
  22. package/dist/components/ComparisonTable/ComparisonTableContent.d.ts +15 -0
  23. package/dist/components/ComparisonTable/HeaderCell.d.ts +1 -0
  24. package/dist/components/ComparisonTable/HeaderCell.js.map +1 -1
  25. package/dist/components/ComparisonTable/TableColumn.d.ts +3 -2
  26. package/dist/components/ComparisonTable/TableColumn.js.map +1 -1
  27. package/dist/components/Gallery/GalleryContent.d.ts +1 -1
  28. package/dist/components/Headline/Headline.js +1 -1
  29. package/dist/components/Headline/Headline.js.map +1 -1
  30. package/dist/components/LinkDocs/LinkDocsContent.d.ts +1 -1
  31. package/dist/components/LinkDocs/LinkDocsHorizontalList.js +1 -1
  32. package/dist/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  33. package/dist/components/LinkDocs/LinkDocsVerticalList.d.ts +1 -1
  34. package/dist/components/LinkDocs/LinkDocsVerticalList.js +1 -1
  35. package/dist/components/LinkDocs/LinkDocsVerticalList.js.map +1 -1
  36. package/dist/components/MiniGallery/MiniGalleryContent.d.ts +1 -0
  37. package/dist/components/MobileAppTile/MobileAppTile.mobile.js +1 -1
  38. package/dist/components/MobileAppTile/MobileAppTile.mobile.js.map +1 -1
  39. package/dist/components/OtherProducts/OtherProducts.d.ts +5 -0
  40. package/dist/components/OtherProducts/OtherProducts.js +9 -0
  41. package/dist/components/OtherProducts/OtherProducts.js.map +1 -0
  42. package/dist/components/OtherProducts/OtherProductsContent.d.ts +36 -0
  43. package/dist/components/OtherProducts/OtherProductsContent.js +2 -0
  44. package/dist/components/OtherProducts/OtherProductsContent.js.map +1 -0
  45. package/dist/components/OtherProducts/OtherProductsItem.d.ts +5 -0
  46. package/dist/components/OtherProducts/OtherProductsItem.js +16 -0
  47. package/dist/components/OtherProducts/OtherProductsItem.js.map +1 -0
  48. package/dist/components/OtherProducts/OtherProductsItemInner.d.ts +2 -0
  49. package/dist/components/OtherProducts/OtherProductsItemInner.js +10 -0
  50. package/dist/components/OtherProducts/OtherProductsItemInner.js.map +1 -0
  51. package/dist/components/OtherProducts/utils/useActiveHandler.d.ts +9 -0
  52. package/dist/components/OtherProducts/utils/useActiveHandler.js +21 -0
  53. package/dist/components/OtherProducts/utils/useActiveHandler.js.map +1 -0
  54. package/dist/components/TextBlock/TextBlockContent.d.ts +1 -1
  55. package/dist/icons/IconName.d.ts +81 -2
  56. package/dist/icons/IconName.js +82 -1
  57. package/dist/icons/IconName.js.map +1 -1
  58. package/dist/model/BlockVersion.d.ts +1 -1
  59. package/dist/ui-kit/BlocksList/BlocksListProps.d.ts +71 -0
  60. package/dist/ui-kit/BlocksList/BlocksListProps.js +2 -0
  61. package/dist/ui-kit/BlocksList/BlocksListProps.js.map +1 -0
  62. package/dist/ui-kit/BlocksList/EmbeddableBlocks.d.ts +12 -0
  63. package/dist/ui-kit/BlocksList/EmbeddableBlocks.js +25 -0
  64. package/dist/ui-kit/BlocksList/EmbeddableBlocks.js.map +1 -0
  65. package/dist/ui-kit/BlocksList/renderBlocksList.d.ts +11 -0
  66. package/dist/ui-kit/BlocksList/renderBlocksList.js +17 -0
  67. package/dist/ui-kit/BlocksList/renderBlocksList.js.map +1 -0
  68. package/dist/ui-kit/Heading/Heading.js.map +1 -1
  69. package/dist/ui-kit/Icon/Icon.js +2 -1
  70. package/dist/ui-kit/Icon/Icon.js.map +1 -1
  71. package/lib/common.css +1 -1
  72. package/lib/components/Accordion/Accordion.fixture.d.ts +0 -1
  73. package/lib/components/Accordion/AccordionContent.d.ts +3 -73
  74. package/lib/components/Accordion/AccordionItem.js +2 -2
  75. package/lib/components/Accordion/AccordionItem.js.map +1 -1
  76. package/lib/components/Accordion/AccordionItem.mobile.js +2 -2
  77. package/lib/components/Accordion/AccordionItem.mobile.js.map +1 -1
  78. package/lib/components/Accordion/AccordionItemInner.js +3 -11
  79. package/lib/components/Accordion/AccordionItemInner.js.map +1 -1
  80. package/lib/components/Accordion/AccordionItemInner.mobile.js +4 -10
  81. package/lib/components/Accordion/AccordionItemInner.mobile.js.map +1 -1
  82. package/{mobile/dist/components/Accordion/utils/isActiveHandler.d.ts → lib/components/Accordion/utils/useActiveHandler.d.ts} +1 -1
  83. package/{mobile/lib/components/Accordion/utils/isActiveHandler.js → lib/components/Accordion/utils/useActiveHandler.js} +2 -2
  84. package/lib/components/Accordion/utils/useActiveHandler.js.map +1 -0
  85. package/lib/components/Blocks.d.ts +1 -0
  86. package/lib/components/Blocks.js +2 -0
  87. package/lib/components/Blocks.js.map +1 -1
  88. package/lib/components/ComparisonTable/ComparisonTableContent.d.ts +15 -0
  89. package/lib/components/ComparisonTable/HeaderCell.d.ts +1 -0
  90. package/lib/components/ComparisonTable/HeaderCell.js.map +1 -1
  91. package/lib/components/ComparisonTable/TableColumn.d.ts +3 -2
  92. package/lib/components/ComparisonTable/TableColumn.js.map +1 -1
  93. package/lib/components/Gallery/GalleryContent.d.ts +1 -1
  94. package/lib/components/Headline/Headline.js +1 -1
  95. package/lib/components/Headline/Headline.js.map +1 -1
  96. package/lib/components/LinkDocs/LinkDocsContent.d.ts +1 -1
  97. package/lib/components/LinkDocs/LinkDocsHorizontalList.js +1 -1
  98. package/lib/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  99. package/lib/components/LinkDocs/LinkDocsVerticalList.d.ts +1 -1
  100. package/lib/components/LinkDocs/LinkDocsVerticalList.js +1 -1
  101. package/lib/components/LinkDocs/LinkDocsVerticalList.js.map +1 -1
  102. package/lib/components/MiniGallery/MiniGalleryContent.d.ts +1 -0
  103. package/lib/components/MobileAppTile/MobileAppTile.mobile.js +1 -1
  104. package/lib/components/MobileAppTile/MobileAppTile.mobile.js.map +1 -1
  105. package/lib/components/OtherProducts/OtherProducts.d.ts +5 -0
  106. package/lib/components/OtherProducts/OtherProducts.fixture.d.ts +5 -0
  107. package/lib/components/OtherProducts/OtherProducts.js +7 -0
  108. package/lib/components/OtherProducts/OtherProducts.js.map +1 -0
  109. package/lib/components/OtherProducts/OtherProductsContent.d.ts +36 -0
  110. package/lib/components/OtherProducts/OtherProductsContent.js +2 -0
  111. package/lib/components/OtherProducts/OtherProductsContent.js.map +1 -0
  112. package/lib/components/OtherProducts/OtherProductsItem.d.ts +5 -0
  113. package/lib/components/OtherProducts/OtherProductsItem.js +14 -0
  114. package/lib/components/OtherProducts/OtherProductsItem.js.map +1 -0
  115. package/lib/components/OtherProducts/OtherProductsItemInner.d.ts +2 -0
  116. package/lib/components/OtherProducts/OtherProductsItemInner.js +8 -0
  117. package/lib/components/OtherProducts/OtherProductsItemInner.js.map +1 -0
  118. package/lib/components/OtherProducts/utils/useActiveHandler.d.ts +9 -0
  119. package/lib/components/OtherProducts/utils/useActiveHandler.js +18 -0
  120. package/lib/components/OtherProducts/utils/useActiveHandler.js.map +1 -0
  121. package/lib/components/TextBlock/TextBlockContent.d.ts +1 -1
  122. package/lib/icons/IconName.d.ts +81 -2
  123. package/lib/icons/IconName.js +81 -0
  124. package/lib/icons/IconName.js.map +1 -1
  125. package/lib/model/BlockVersion.d.ts +1 -1
  126. package/lib/ui-kit/BlocksList/BlocksListProps.d.ts +71 -0
  127. package/lib/ui-kit/BlocksList/BlocksListProps.js +2 -0
  128. package/lib/ui-kit/BlocksList/BlocksListProps.js.map +1 -0
  129. package/lib/ui-kit/BlocksList/EmbeddableBlocks.d.ts +12 -0
  130. package/lib/ui-kit/BlocksList/EmbeddableBlocks.js +23 -0
  131. package/lib/ui-kit/BlocksList/EmbeddableBlocks.js.map +1 -0
  132. package/lib/ui-kit/BlocksList/renderBlocksList.d.ts +11 -0
  133. package/lib/ui-kit/BlocksList/renderBlocksList.js +13 -0
  134. package/lib/ui-kit/BlocksList/renderBlocksList.js.map +1 -0
  135. package/lib/ui-kit/Heading/Heading.js.map +1 -1
  136. package/lib/ui-kit/Icon/Icon.js +2 -1
  137. package/lib/ui-kit/Icon/Icon.js.map +1 -1
  138. package/mobile/bundle/bundle.umd.js +179 -15
  139. package/mobile/bundle/bundle.umd.min.js +1 -1
  140. package/mobile/dist/components/Accordion/AccordionContent.d.ts +3 -73
  141. package/mobile/dist/components/Accordion/AccordionItem.js +2 -2
  142. package/mobile/dist/components/Accordion/AccordionItem.js.map +1 -1
  143. package/mobile/dist/components/Accordion/AccordionItemInner.js +4 -10
  144. package/mobile/dist/components/Accordion/AccordionItemInner.js.map +1 -1
  145. package/mobile/{lib/components/Accordion/utils/isActiveHandler.d.ts → dist/components/Accordion/utils/useActiveHandler.d.ts} +1 -1
  146. package/{dist/components/Accordion/utils/isActiveHandler.js → mobile/dist/components/Accordion/utils/useActiveHandler.js} +4 -4
  147. package/mobile/dist/components/Accordion/utils/useActiveHandler.js.map +1 -0
  148. package/mobile/dist/components/ComparisonTable/ComparisonTableContent.d.ts +15 -0
  149. package/mobile/dist/components/ComparisonTable/TableColumn.d.ts +3 -2
  150. package/mobile/dist/components/ComparisonTable/TableColumn.js.map +1 -1
  151. package/mobile/dist/components/Gallery/GalleryContent.d.ts +1 -1
  152. package/mobile/dist/components/LinkDocs/LinkDocsContent.d.ts +1 -1
  153. package/mobile/dist/components/LinkDocs/LinkDocsHorizontalList.js +1 -1
  154. package/mobile/dist/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  155. package/mobile/dist/components/LinkDocs/LinkDocsVerticalList.d.ts +1 -1
  156. package/mobile/dist/components/LinkDocs/LinkDocsVerticalList.js +1 -1
  157. package/mobile/dist/components/LinkDocs/LinkDocsVerticalList.js.map +1 -1
  158. package/mobile/dist/components/MiniGallery/MiniGalleryContent.d.ts +1 -0
  159. package/mobile/dist/components/MobileAppTile/MobileAppTile.js +1 -1
  160. package/mobile/dist/components/MobileAppTile/MobileAppTile.js.map +1 -1
  161. package/mobile/dist/components/OtherProducts/OtherProducts.d.ts +5 -0
  162. package/mobile/dist/components/OtherProducts/OtherProducts.js +9 -0
  163. package/mobile/dist/components/OtherProducts/OtherProducts.js.map +1 -0
  164. package/mobile/dist/components/OtherProducts/OtherProductsContent.d.ts +36 -0
  165. package/mobile/dist/components/OtherProducts/OtherProductsContent.js +2 -0
  166. package/mobile/dist/components/OtherProducts/OtherProductsContent.js.map +1 -0
  167. package/mobile/dist/components/OtherProducts/OtherProductsItem.d.ts +5 -0
  168. package/mobile/dist/components/OtherProducts/OtherProductsItem.js +16 -0
  169. package/mobile/dist/components/OtherProducts/OtherProductsItem.js.map +1 -0
  170. package/mobile/dist/components/OtherProducts/OtherProductsItemInner.d.ts +2 -0
  171. package/mobile/dist/components/OtherProducts/OtherProductsItemInner.js +10 -0
  172. package/mobile/dist/components/OtherProducts/OtherProductsItemInner.js.map +1 -0
  173. package/mobile/dist/components/OtherProducts/utils/useActiveHandler.d.ts +9 -0
  174. package/mobile/dist/components/OtherProducts/utils/useActiveHandler.js +21 -0
  175. package/mobile/dist/components/OtherProducts/utils/useActiveHandler.js.map +1 -0
  176. package/mobile/dist/components/TextBlock/TextBlockContent.d.ts +1 -1
  177. package/mobile/dist/icons/IconName.d.ts +81 -2
  178. package/mobile/dist/icons/IconName.js +82 -1
  179. package/mobile/dist/icons/IconName.js.map +1 -1
  180. package/mobile/dist/model/BlockVersion.d.ts +1 -1
  181. package/mobile/dist/ui-kit/BlocksList/BlocksListProps.d.ts +71 -0
  182. package/mobile/dist/ui-kit/BlocksList/BlocksListProps.js +2 -0
  183. package/mobile/dist/ui-kit/BlocksList/BlocksListProps.js.map +1 -0
  184. package/mobile/dist/ui-kit/BlocksList/EmbeddableBlocks.d.ts +12 -0
  185. package/mobile/dist/ui-kit/BlocksList/EmbeddableBlocks.js +25 -0
  186. package/mobile/dist/ui-kit/BlocksList/EmbeddableBlocks.js.map +1 -0
  187. package/mobile/dist/ui-kit/BlocksList/renderBlocksList.d.ts +11 -0
  188. package/mobile/dist/ui-kit/BlocksList/renderBlocksList.js +17 -0
  189. package/mobile/dist/ui-kit/BlocksList/renderBlocksList.js.map +1 -0
  190. package/mobile/dist/ui-kit/Icon/Icon.js +2 -1
  191. package/mobile/dist/ui-kit/Icon/Icon.js.map +1 -1
  192. package/mobile/lib/components/Accordion/AccordionContent.d.ts +3 -73
  193. package/mobile/lib/components/Accordion/AccordionItem.js +2 -2
  194. package/mobile/lib/components/Accordion/AccordionItem.js.map +1 -1
  195. package/mobile/lib/components/Accordion/AccordionItemInner.js +4 -10
  196. package/mobile/lib/components/Accordion/AccordionItemInner.js.map +1 -1
  197. package/{dist/components/Accordion/utils/isActiveHandler.d.ts → mobile/lib/components/Accordion/utils/useActiveHandler.d.ts} +1 -1
  198. package/{lib/components/Accordion/utils/isActiveHandler.js → mobile/lib/components/Accordion/utils/useActiveHandler.js} +2 -2
  199. package/mobile/lib/components/Accordion/utils/useActiveHandler.js.map +1 -0
  200. package/mobile/lib/components/ComparisonTable/ComparisonTableContent.d.ts +15 -0
  201. package/mobile/lib/components/ComparisonTable/TableColumn.d.ts +3 -2
  202. package/mobile/lib/components/ComparisonTable/TableColumn.js.map +1 -1
  203. package/mobile/lib/components/Gallery/GalleryContent.d.ts +1 -1
  204. package/mobile/lib/components/LinkDocs/LinkDocsContent.d.ts +1 -1
  205. package/mobile/lib/components/LinkDocs/LinkDocsHorizontalList.js +1 -1
  206. package/mobile/lib/components/LinkDocs/LinkDocsHorizontalList.js.map +1 -1
  207. package/mobile/lib/components/LinkDocs/LinkDocsVerticalList.d.ts +1 -1
  208. package/mobile/lib/components/LinkDocs/LinkDocsVerticalList.js +1 -1
  209. package/mobile/lib/components/LinkDocs/LinkDocsVerticalList.js.map +1 -1
  210. package/mobile/lib/components/MiniGallery/MiniGalleryContent.d.ts +1 -0
  211. package/mobile/lib/components/MobileAppTile/MobileAppTile.js +1 -1
  212. package/mobile/lib/components/MobileAppTile/MobileAppTile.js.map +1 -1
  213. package/mobile/lib/components/OtherProducts/OtherProducts.d.ts +5 -0
  214. package/mobile/lib/components/OtherProducts/OtherProducts.js +7 -0
  215. package/mobile/lib/components/OtherProducts/OtherProducts.js.map +1 -0
  216. package/mobile/lib/components/OtherProducts/OtherProductsContent.d.ts +36 -0
  217. package/mobile/lib/components/OtherProducts/OtherProductsContent.js +2 -0
  218. package/mobile/lib/components/OtherProducts/OtherProductsContent.js.map +1 -0
  219. package/mobile/lib/components/OtherProducts/OtherProductsItem.d.ts +5 -0
  220. package/mobile/lib/components/OtherProducts/OtherProductsItem.js +14 -0
  221. package/mobile/lib/components/OtherProducts/OtherProductsItem.js.map +1 -0
  222. package/mobile/lib/components/OtherProducts/OtherProductsItemInner.d.ts +2 -0
  223. package/mobile/lib/components/OtherProducts/OtherProductsItemInner.js +8 -0
  224. package/mobile/lib/components/OtherProducts/OtherProductsItemInner.js.map +1 -0
  225. package/mobile/lib/components/OtherProducts/utils/useActiveHandler.d.ts +9 -0
  226. package/mobile/lib/components/OtherProducts/utils/useActiveHandler.js +18 -0
  227. package/mobile/lib/components/OtherProducts/utils/useActiveHandler.js.map +1 -0
  228. package/mobile/lib/components/TextBlock/TextBlockContent.d.ts +1 -1
  229. package/mobile/lib/icons/IconName.d.ts +81 -2
  230. package/mobile/lib/icons/IconName.js +81 -0
  231. package/mobile/lib/icons/IconName.js.map +1 -1
  232. package/mobile/lib/model/BlockVersion.d.ts +1 -1
  233. package/mobile/lib/ui-kit/BlocksList/BlocksListProps.d.ts +71 -0
  234. package/mobile/lib/ui-kit/BlocksList/BlocksListProps.js +2 -0
  235. package/mobile/lib/ui-kit/BlocksList/BlocksListProps.js.map +1 -0
  236. package/mobile/lib/ui-kit/BlocksList/EmbeddableBlocks.d.ts +12 -0
  237. package/mobile/lib/ui-kit/BlocksList/EmbeddableBlocks.js +23 -0
  238. package/mobile/lib/ui-kit/BlocksList/EmbeddableBlocks.js.map +1 -0
  239. package/mobile/lib/ui-kit/BlocksList/renderBlocksList.d.ts +11 -0
  240. package/mobile/lib/ui-kit/BlocksList/renderBlocksList.js +13 -0
  241. package/mobile/lib/ui-kit/BlocksList/renderBlocksList.js.map +1 -0
  242. package/mobile/lib/ui-kit/Icon/Icon.js +2 -1
  243. package/mobile/lib/ui-kit/Icon/Icon.js.map +1 -1
  244. package/mobile/src/common.css +0 -30
  245. package/mobile/src/components/Accordion/Accordion.example.json +6 -6
  246. package/mobile/src/components/Accordion/AccordionContent.ts +3 -109
  247. package/mobile/src/components/Accordion/AccordionItem.tsx +2 -2
  248. package/mobile/src/components/Accordion/AccordionItemInner.tsx +4 -19
  249. package/mobile/src/components/Accordion/utils/{isActiveHandler.ts → useActiveHandler.ts} +1 -1
  250. package/mobile/src/components/ComparisonTable/ComparisonTableContent.ts +18 -0
  251. package/mobile/src/components/ComparisonTable/TableColumn.tsx +3 -2
  252. package/mobile/src/components/ContentPage/ContentPage.page.json +1 -1
  253. package/mobile/src/components/Gallery/Gallery.example.json +2 -20
  254. package/mobile/src/components/Gallery/GalleryContent.ts +1 -1
  255. package/mobile/src/components/Headline/Headline.example.json +8 -1
  256. package/mobile/src/components/LinkDocs/LinkDocs.example.json +2 -2
  257. package/mobile/src/components/LinkDocs/LinkDocsContent.ts +1 -1
  258. package/mobile/src/components/LinkDocs/LinkDocsHorizontalList.tsx +1 -1
  259. package/mobile/src/components/LinkDocs/LinkDocsVerticalList.tsx +4 -2
  260. package/mobile/src/components/MiniGallery/MiniGalleryContent.ts +1 -0
  261. package/mobile/src/components/MobileAppTile/MobileAppTile.tsx +1 -1
  262. package/mobile/src/components/OtherProducts/OtherProducts.example.json +50 -0
  263. package/mobile/src/components/OtherProducts/OtherProducts.tsx +20 -0
  264. package/mobile/src/components/OtherProducts/OtherProductsContent.ts +38 -0
  265. package/mobile/src/components/OtherProducts/OtherProductsItem.tsx +36 -0
  266. package/mobile/src/components/OtherProducts/OtherProductsItemInner.tsx +14 -0
  267. package/mobile/src/components/OtherProducts/utils/useActiveHandler.ts +23 -0
  268. package/mobile/src/components/ProductBlock/ProductBlock.example.json +2 -1
  269. package/mobile/src/components/ProductGallery/ProductGallery.example.json +2 -1
  270. package/mobile/src/components/StepsBlock/StepsBlock.example.json +1 -0
  271. package/mobile/src/components/TextBlock/TextBlock.example.json +2 -2
  272. package/mobile/src/components/TextBlock/TextBlockContent.ts +1 -1
  273. package/mobile/src/components/Tile/Tile.example.json +1 -3
  274. package/mobile/src/icons/ArrowDownIcon.svg +4 -0
  275. package/mobile/src/icons/ArrowUpIcon.svg +4 -0
  276. package/mobile/src/icons/IconName.ts +8 -3
  277. package/mobile/src/model/BlockVersion.ts +1 -1
  278. package/mobile/src/ui-kit/BlocksList/BlocksListProps.ts +106 -0
  279. package/mobile/src/ui-kit/BlocksList/EmbeddableBlocks.tsx +23 -0
  280. package/mobile/src/ui-kit/BlocksList/renderBlocksList.tsx +30 -0
  281. package/mobile/src/ui-kit/Icon/Icon.tsx +2 -1
  282. package/package.json +1 -1
  283. package/src/common.css +0 -30
  284. package/src/components/Accordion/Accordion.example.json +6 -6
  285. package/src/components/Accordion/Accordion.fixture.mobile.tsx +13 -13
  286. package/src/components/Accordion/Accordion.fixture.tsx +28 -93
  287. package/src/components/Accordion/AccordionContent.ts +3 -109
  288. package/src/components/Accordion/AccordionItem.mobile.tsx +2 -2
  289. package/src/components/Accordion/AccordionItem.tsx +2 -2
  290. package/src/components/Accordion/AccordionItemInner.mobile.tsx +4 -19
  291. package/src/components/Accordion/AccordionItemInner.tsx +4 -25
  292. package/src/components/Accordion/utils/{isActiveHandler.ts → useActiveHandler.ts} +1 -1
  293. package/src/components/Blocks.ts +2 -0
  294. package/src/components/ComparisonTable/ComparisonTableContent.ts +18 -0
  295. package/src/components/ComparisonTable/HeaderCell.tsx +1 -0
  296. package/src/components/ComparisonTable/TableColumn.tsx +3 -2
  297. package/src/components/ContentPage/ContentPage.page.json +1 -1
  298. package/src/components/Gallery/Gallery.example.json +2 -20
  299. package/src/components/Gallery/GalleryContent.ts +1 -1
  300. package/src/components/Headline/Headline.example.json +8 -1
  301. package/src/components/Headline/Headline.tsx +4 -2
  302. package/src/components/LinkDocs/LinkDocs.example.json +2 -2
  303. package/src/components/LinkDocs/LinkDocsContent.ts +1 -1
  304. package/src/components/LinkDocs/LinkDocsHorizontalList.tsx +1 -1
  305. package/src/components/LinkDocs/LinkDocsVerticalList.tsx +4 -2
  306. package/src/components/MiniGallery/MiniGalleryContent.ts +1 -0
  307. package/src/components/MobileAppTile/MobileAppTile.mobile.tsx +1 -1
  308. package/src/components/OtherProducts/OtherProducts.example.json +50 -0
  309. package/src/components/OtherProducts/OtherProducts.fixture.tsx +137 -0
  310. package/src/components/OtherProducts/OtherProducts.tsx +20 -0
  311. package/src/components/OtherProducts/OtherProductsContent.ts +38 -0
  312. package/src/components/OtherProducts/OtherProductsItem.tsx +36 -0
  313. package/src/components/OtherProducts/OtherProductsItemInner.tsx +14 -0
  314. package/src/components/OtherProducts/utils/useActiveHandler.ts +23 -0
  315. package/src/components/ProductBlock/ProductBlock.example.json +2 -1
  316. package/src/components/ProductGallery/ProductGallery.example.json +2 -1
  317. package/src/components/StepsBlock/StepsBlock.example.json +1 -0
  318. package/src/components/TextBlock/TextBlock.example.json +2 -2
  319. package/src/components/TextBlock/TextBlockContent.ts +1 -1
  320. package/src/components/Tile/Tile.example.json +1 -3
  321. package/src/icons/ArrowDownIcon.svg +4 -0
  322. package/src/icons/ArrowUpIcon.svg +4 -0
  323. package/src/icons/IconName.ts +84 -1
  324. package/src/model/BlockVersion.ts +1 -1
  325. package/src/ui-kit/BlocksList/BlocksListProps.ts +106 -0
  326. package/src/ui-kit/BlocksList/EmbeddableBlocks.tsx +23 -0
  327. package/src/ui-kit/BlocksList/renderBlocksList.tsx +30 -0
  328. package/src/ui-kit/Heading/Heading.tsx +1 -3
  329. package/src/ui-kit/Icon/Icon.tsx +2 -1
  330. package/dist/components/Accordion/AccordionBlocks.d.ts +0 -12
  331. package/dist/components/Accordion/AccordionBlocks.js +0 -25
  332. package/dist/components/Accordion/AccordionBlocks.js.map +0 -1
  333. package/dist/components/Accordion/utils/isActiveHandler.js.map +0 -1
  334. package/lib/components/Accordion/AccordionBlocks.d.ts +0 -12
  335. package/lib/components/Accordion/AccordionBlocks.js +0 -23
  336. package/lib/components/Accordion/AccordionBlocks.js.map +0 -1
  337. package/lib/components/Accordion/utils/isActiveHandler.js.map +0 -1
  338. package/mobile/dist/components/Accordion/AccordionBlocks.d.ts +0 -12
  339. package/mobile/dist/components/Accordion/AccordionBlocks.js +0 -25
  340. package/mobile/dist/components/Accordion/AccordionBlocks.js.map +0 -1
  341. package/mobile/dist/components/Accordion/utils/isActiveHandler.js.map +0 -1
  342. package/mobile/lib/components/Accordion/AccordionBlocks.d.ts +0 -12
  343. package/mobile/lib/components/Accordion/AccordionBlocks.js +0 -23
  344. package/mobile/lib/components/Accordion/AccordionBlocks.js.map +0 -1
  345. package/mobile/lib/components/Accordion/utils/isActiveHandler.js.map +0 -1
  346. package/mobile/src/components/Accordion/AccordionBlocks.tsx +0 -23
  347. package/src/components/Accordion/AccordionBlocks.tsx +0 -23
@@ -1,109 +1,4 @@
1
- import type { GalleryContent } from '../Gallery/GalleryContent';
2
- import type { HeadlineContent } from '../Headline/HeadlineContent';
3
- import type { LinkDocsContent } from '../LinkDocs/LinkDocsContent';
4
- import type { MiniGalleryContent } from '../MiniGallery/MiniGalleryContent';
5
- import type { PictureTextContent } from '../PictureText/PictureTextContent';
6
- import type { ProductBlockContent } from '../ProductBlock/ProductBlockContent';
7
- import type { ProductTileContent } from '../ProductTile/ProductTileContent';
8
- import type { TextBlockContent } from '../TextBlock/TextBlockContent';
9
- import type { TileContent } from '../Tile/TileContent';
10
- import type { LinkListContent } from '../LinkList/LinkListContent';
11
-
12
- /**
13
- * @title Тип блока
14
- */
15
- export type AccordionBlockType =
16
- | 'Headline'
17
- | 'LinkDocs'
18
- | 'TextBlock'
19
- | 'PictureText'
20
- | 'Tile'
21
- | 'ProductTile'
22
- | 'ProductBlock'
23
- | 'Gallery'
24
- | 'MiniGallery'
25
- | 'LinkList';
26
-
27
- interface AccordionBlockDef {
28
- accordionBlockType: AccordionBlockType;
29
- }
30
-
31
- /**
32
- * @title Заголовок
33
- */
34
- export type HeadlineAccordionBlockDef = HeadlineContent & AccordionBlockDef;
35
-
36
- /**
37
- * @title Список документов
38
- */
39
- export type LinkDocsAccordionBlockDef = LinkDocsContent & AccordionBlockDef;
40
-
41
- /**
42
- * @title Текстовый блок
43
- */
44
- export type TextBlockAccordionBlockDef = TextBlockContent & AccordionBlockDef;
45
-
46
- /**
47
- * @title Картинка с текстом
48
- */
49
- export type PictureTextAccordionBlockDef = PictureTextContent & AccordionBlockDef;
50
-
51
- /**
52
- * @title Продуктовый блок
53
- */
54
- export type ProductBlockAccordionBlockDef = ProductBlockContent & AccordionBlockDef;
55
-
56
- /**
57
- * @title Плитка
58
- */
59
- export type TileAccordionBlockDef = TileContent & AccordionBlockDef;
60
-
61
- /**
62
- * @title Продуктовая плитка
63
- */
64
- export type ProductTileAccordionBlockDef = ProductTileContent & AccordionBlockDef;
65
-
66
- /**
67
- * @title Галлерея
68
- */
69
- export type GalleryAccordionBlockDef = GalleryContent & AccordionBlockDef;
70
-
71
- /**
72
- * @title Мини-галлерея
73
- */
74
- export type MiniGalleryAccordionBlockDef = MiniGalleryContent & AccordionBlockDef;
75
-
76
- /**
77
- * @title Список ссылок
78
- */
79
- export type LinkListAccordionBlockDef = LinkListContent & AccordionBlockDef;
80
-
81
- /**
82
- * @title Выберите блок
83
- */
84
- export type EmptyOption = null;
85
-
86
- /**
87
- * @title Содержимое аккордеона
88
- */
89
- export type AccordionBlockProps =
90
- | EmptyOption
91
- | HeadlineAccordionBlockDef
92
- | LinkDocsAccordionBlockDef
93
- | TextBlockAccordionBlockDef
94
- | PictureTextAccordionBlockDef
95
- | ProductBlockAccordionBlockDef
96
- | TileAccordionBlockDef
97
- | ProductTileAccordionBlockDef
98
- | GalleryAccordionBlockDef
99
- | MiniGalleryAccordionBlockDef
100
- | LinkListAccordionBlockDef;
101
-
102
- /**
103
- * @title Количество колонок
104
- * @enumNames ["1 колонка", "2 колонки"]
105
- */
106
- export type ColumnsCount = 1 | 2;
1
+ import type { BlockDef, ColumnsCount } from '../../ui-kit/BlocksList/BlocksListProps';
107
2
 
108
3
  /**
109
4
  * @title Элемент списка
@@ -115,13 +10,12 @@ export interface AccordionItemCommonProps {
115
10
  */
116
11
  label?: string;
117
12
  /** @title Блоки */
118
- blocks?: AccordionBlockProps[];
13
+ blocks?: BlockDef[];
119
14
  /**
120
15
  * @title Отображать/скрывать обводку элемента
121
16
  * @default false
122
17
  */
123
18
  bordered?: boolean; // TODO: только для мобильной версии
124
-
125
19
  columns?: ColumnsCount;
126
20
  }
127
21
 
@@ -133,7 +27,7 @@ export interface AccordionContent {
133
27
  title?: string;
134
28
  /** @title Список */
135
29
  accordionItems?: AccordionItemCommonProps[];
136
- /** @title Подзаголовок */
30
+ /** @title Описание */
137
31
  description?: string; // TODO: только для мобильной версии
138
32
  /**
139
33
  * @title Отображать/скрывать обводку у элемента списка
@@ -3,12 +3,12 @@ import type { UniBlockProps } from '../../types';
3
3
  import { Icon } from '../../ui-kit/Icon/Icon';
4
4
  import type { AccordionItemCommonProps } from './AccordionContent';
5
5
  import { AccordionItemInner } from './AccordionItemInner';
6
- import { isActiveHandler } from './utils/isActiveHandler';
6
+ import { useActiveHandler } from './utils/useActiveHandler';
7
7
 
8
8
  export interface AccordionItemProps extends AccordionItemCommonProps, UniBlockProps {}
9
9
 
10
10
  export const AccordionItem = JSX<AccordionItemProps>(({ label, blocks, bordered, context }) => {
11
- const { hasContent, icon, handleToggle } = isActiveHandler({
11
+ const { hasContent, icon, handleToggle } = useActiveHandler({
12
12
  context,
13
13
  blocks,
14
14
  });
@@ -1,28 +1,13 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
- import type { JSXBlock } from '../ContentPage/ContentPage';
3
- import type { ContentPageContext } from '../ContentPage/ContentPageContext';
4
- import { AccordionBlocks } from './AccordionBlocks';
5
- import type { AccordionBlockProps } from './AccordionContent';
6
2
  import type { AccordionItemProps } from './AccordionItem';
3
+ import { renderBlocksList } from '../../ui-kit/BlocksList/renderBlocksList';
7
4
 
8
5
  export const AccordionItemInner = JSX<AccordionItemProps>(({ blocks, context }) => {
6
+ const className = 'mb-5 last:mb-0 first:mt-2';
7
+ const columns = 1;
9
8
  return (
10
9
  <div className="transition-all duration-300 max-h-0 overflow-hidden group-last:last:pb-0">
11
- {blocks?.length ? blocks.map(renderBlock(context)) : null}
10
+ {renderBlocksList({ context, className, columns, blocks })}
12
11
  </div>
13
12
  );
14
13
  });
15
-
16
- const renderBlock = (context: ContentPageContext) => (block: AccordionBlockProps, i: number) => {
17
- const type = block?.accordionBlockType;
18
- if (!type || !(type in AccordionBlocks)) {
19
- return null;
20
- }
21
-
22
- const AccordionBlock: JSXBlock = AccordionBlocks[type];
23
- return (
24
- <div className="mb-5 last:mb-0 first:mt-2" key={`block_${i}`}>
25
- <AccordionBlock context={context} {...block} className="!p-0" />
26
- </div>
27
- );
28
- };
@@ -1,6 +1,6 @@
1
1
  import type { IconName } from '../../../icons/IconName';
2
2
 
3
- export const isActiveHandler = ({ context, blocks }) => {
3
+ export const useActiveHandler = ({ context, blocks }) => {
4
4
  const [isActive, setIsActive] = context.useState(false);
5
5
  const hasContent = blocks?.length;
6
6
  const icon: IconName = isActive ? 'MinusIcon' : 'PlusIcon';
@@ -49,6 +49,24 @@ export interface RowHeader {
49
49
  /** @title Заголовок */
50
50
  title?: string;
51
51
  }
52
+
53
+ /**
54
+ * @title Ячейка
55
+ */
56
+ export interface TableColumnData {
57
+ rowHeader?: string;
58
+ cell: CellData[];
59
+ }
60
+
61
+ /**
62
+ * @title Параметр
63
+ */
64
+ export interface TableColumnHeader {
65
+ /** @title Заголовок */
66
+ title?: string;
67
+ icon?: IconName;
68
+ }
69
+
52
70
  /**
53
71
  * @title Сравнительная таблица
54
72
  */
@@ -5,10 +5,11 @@ import { Button } from '../../ui-kit/Button/Button';
5
5
  import { GRADIENT } from './constants';
6
6
  import { HeaderCell } from './HeaderCell';
7
7
  import { TableCell } from './TableCell';
8
+ import type { TableColumnData, TableColumnHeader } from './ComparisonTableContent';
8
9
 
9
10
  export interface TableColumnProps extends UniBlockProps {
10
- header: any;
11
- columnData: any;
11
+ header: TableColumnHeader;
12
+ columnData: TableColumnData[];
12
13
  visibleRowLength: number;
13
14
  isFillGradient: boolean;
14
15
  showRow: boolean;
@@ -1394,7 +1394,7 @@
1394
1394
  "title": "Своя кредитная карта",
1395
1395
  "description": "Карта работает в 180 странах мира. Бесплатное снятие наличных в любых банкоматах.",
1396
1396
  "align": "center",
1397
- "bgColor": "transparent"
1397
+ "bgColorHeadline": "transparent"
1398
1398
  }
1399
1399
  },
1400
1400
  {
@@ -6,8 +6,8 @@
6
6
  "image": {
7
7
  "format": "webp",
8
8
  "size": {
9
- "width": 140,
10
- "height": 140
9
+ "width": 150,
10
+ "height": 150
11
11
  }
12
12
  },
13
13
  "title": "Заголовок 1",
@@ -55,24 +55,6 @@
55
55
  {"text":"Элемент списка 2", "title": "Элемент заголовка 2"},
56
56
  {"text":"Элемент списка 3", "title": "Элемент заголовка 3"}
57
57
  ]
58
- },
59
- {
60
- "image": {
61
- "format": "webp",
62
- "size": {
63
- "width": 140,
64
- "height": 140
65
- }
66
- },
67
- "title": "Заголовок 4",
68
- "description": "Описание 4",
69
- "href": "/credit-cards",
70
- "version": "primary",
71
- "items": [
72
- {"text":"Элемент списка 1", "title": "Элемент заголовка 1"},
73
- {"text":"Элемент списка 2", "title": "Элемент заголовка 2"},
74
- {"text":"Элемент списка 3", "title": "Элемент заголовка 3"}
75
- ]
76
58
  }
77
59
  ]
78
60
  }
@@ -38,7 +38,7 @@ export interface GalleryContent {
38
38
  description?: string;
39
39
  /**
40
40
  * @title Карточки
41
- * @minItems 4
41
+ * @minItems 3
42
42
  */
43
43
  cards?: GalleryCard[];
44
44
  /** @title Горизонтальная прокрутка (для мобильных прокрутка shift+mouseScroll) */
@@ -2,5 +2,12 @@
2
2
  "title": "Заголовок",
3
3
  "description": "Описание",
4
4
  "align": "center",
5
- "bgColorHeadline": "transparent"
5
+ "bgColorHeadline": "transparent",
6
+ "image": {
7
+ "format": "webp",
8
+ "size": {
9
+ "width": 180,
10
+ "height": 180
11
+ }
12
+ }
6
13
  }
@@ -1,6 +1,6 @@
1
1
  {
2
- "title": "Дополнительные документы",
3
- "subtitle": "Ответы на часто задаваемые вопросы",
2
+ "title": "Список документов",
3
+ "subtitle": "Описание",
4
4
  "icon": "DocIcon",
5
5
  "documents": [
6
6
  {
@@ -34,7 +34,7 @@ export interface LinkDocsItem extends LinkProps {
34
34
  export interface LinkDocsContent {
35
35
  /** @title Заголовок */
36
36
  title?: string;
37
- /** @title Подзаголовок */
37
+ /** @title Описание */
38
38
  subtitle?: string;
39
39
  /** @title Название иконки */
40
40
  icon?: IconName;
@@ -16,7 +16,7 @@ export const LinkDocsHorizontalList = JSX<LinkDocsHorizontalListProps>(
16
16
  ? documents.map((doc, i) => (
17
17
  <LinkDocsListItem
18
18
  key={String(i)}
19
- className={hasBorder ? 'rounded-md border-main-stroke border p-4' : ''}
19
+ className={hasBorder ? 'rounded-md border-main-stroke border border-solid p-4' : ''}
20
20
  doc={doc}
21
21
  icon={icon}
22
22
  />
@@ -1,5 +1,5 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
- import type { IconName } from '../../ui-kit/Icon/IconProps';
2
+ import type { IconName } from '../../icons/IconName';
3
3
  import type { LinkDocsItem } from './LinkDocsContent';
4
4
  import { LinkDocsListItem } from './LinkDocsListItem';
5
5
 
@@ -20,7 +20,9 @@ export const LinkDocsVerticalList = JSX<LinkDocsVerticalListProps>(
20
20
  ? documents.map((doc, i) => (
21
21
  <div key={String(i)} role="listitem">
22
22
  <LinkDocsListItem
23
- className={hasBorder ? 'rounded-md border-main-stroke border p-4' : ''}
23
+ className={
24
+ hasBorder ? 'rounded-md border-main-stroke border border-solid p-4' : ''
25
+ }
24
26
  doc={doc}
25
27
  icon={icon}
26
28
  />
@@ -2,5 +2,6 @@ import type { GalleryContent } from '../Gallery/GalleryContent';
2
2
 
3
3
  /**
4
4
  * @title Мини-галерея
5
+ * @minItems 3
5
6
  */
6
7
  export type MiniGalleryContent = GalleryContent;
@@ -19,7 +19,7 @@ export const MobileAppTile = JSX<MobileAppTileProps>(
19
19
  <div className="flex justify-center align-middle rounded-md bg-primary-main w-[50px] h-[50px]">
20
20
  <Logo className="w-[33px]" bgColor="transparent" hideTitle />
21
21
  </div>
22
- <a href={href} target="_blank" className="flex flex-col justify-center pl-3">
22
+ <a href={href} target="_blank" className="flex flex-col justify-center pl-3 font-sans">
23
23
  <div className="text-m-button font-medium mb-[3px]">{title}</div>
24
24
  <div className="text-m-button text-secondary-text">{description}</div>
25
25
  </a>
@@ -0,0 +1,50 @@
1
+ {
2
+ "title": "Другие продукты",
3
+ "blockItems": [
4
+ {
5
+ "label": "Другие продукты 1",
6
+ "blocks": [
7
+ {
8
+ "blockListType": "TextBlock",
9
+ "title": "Текстовый блок",
10
+ "description": "Описание текстового блока"
11
+ },
12
+ {
13
+ "blockListType": "TextBlock",
14
+ "title": "Текстовый блок №2",
15
+ "description": "Описание текстового блока №2"
16
+ }
17
+ ]
18
+ },
19
+ {
20
+ "label": "Другие продукты 2",
21
+ "blocks": [
22
+ {
23
+ "blockListType": "TextBlock",
24
+ "title": "Текстовый блок",
25
+ "description": "Описание текстового блока"
26
+ },
27
+ {
28
+ "blockListType": "TextBlock",
29
+ "title": "Текстовый блок №2",
30
+ "description": "Описание текстового блока №2"
31
+ }
32
+ ]
33
+ },
34
+ {
35
+ "label": "Другие продукты 3",
36
+ "blocks": [
37
+ {
38
+ "blockListType": "TextBlock",
39
+ "title": "Текстовый блок",
40
+ "description": "Описание текстового блока"
41
+ },
42
+ {
43
+ "blockListType": "TextBlock",
44
+ "title": "Текстовый блок №2",
45
+ "description": "Описание текстового блока №2"
46
+ }
47
+ ]
48
+ }
49
+ ]
50
+ }
@@ -0,0 +1,20 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import type { UniBlockProps } from '../../types';
3
+ import type { OtherProductsContent } from './OtherProductsContent';
4
+ import { OtherProductsItem } from './OtherProductsItem';
5
+
6
+ export interface OtherProductsProps extends OtherProductsContent, UniBlockProps {}
7
+
8
+ export const OtherProducts = JSX<OtherProductsProps>(({ blockItems, context, className }) => {
9
+ return (
10
+ <section className={`font-sans bg-white text-primary-text ${className || ''}`}>
11
+ {blockItems?.length ? (
12
+ <div className="list-none m-0 p-0">
13
+ {blockItems.map((item, i) => (
14
+ <OtherProductsItem key={`BlockItem${i}`} {...item} context={context} />
15
+ ))}
16
+ </div>
17
+ ) : null}
18
+ </section>
19
+ );
20
+ });
@@ -0,0 +1,38 @@
1
+ import type { BlockDef, ColumnsCount } from '../../ui-kit/BlocksList/BlocksListProps';
2
+
3
+ /**
4
+ * @title Элемент списка
5
+ */
6
+ export interface blockItemCommonProps {
7
+ /**
8
+ * @title Название
9
+ * @default Список
10
+ */
11
+ label?: string;
12
+ /** @title Блоки */
13
+ blocks?: BlockDef[];
14
+ /**
15
+ * @title Отображать/скрывать обводку элемента
16
+ * @default false
17
+ */
18
+ bordered?: boolean; // TODO: только для мобильной версии
19
+ columns?: ColumnsCount;
20
+ isActive?: boolean;
21
+ }
22
+
23
+ /**
24
+ * @title Другие продукты
25
+ */
26
+ export interface OtherProductsContent {
27
+ /** @title Заголовок */
28
+ title?: string;
29
+ /** @title Список */
30
+ blockItems?: blockItemCommonProps[];
31
+ /** @title Подзаголовок */
32
+ description?: string; // TODO: только для мобильной версии
33
+ /**
34
+ * @title Отображать/скрывать обводку у элемента списка
35
+ * @default false
36
+ */
37
+ bordered?: boolean; // TODO: только для мобильной версии
38
+ }
@@ -0,0 +1,36 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { useActiveHandler } from './utils/useActiveHandler';
3
+ import type { UniBlockProps } from '../../types';
4
+ import type { blockItemCommonProps } from './OtherProductsContent';
5
+ import { Icon } from '../../ui-kit/Icon/Icon';
6
+ import { OtherProductsItemInner } from './OtherProductsItemInner';
7
+
8
+ export interface BlockItemProps extends blockItemCommonProps, UniBlockProps {}
9
+
10
+ export const OtherProductsItem = JSX<BlockItemProps>(({ label, blocks, columns, context }) => {
11
+ const { hasContent, icon, handleToggle, isActive } = useActiveHandler({
12
+ context,
13
+ blocks,
14
+ });
15
+
16
+ return (
17
+ <div className="border-0 border-b border-solid border-main-divider">
18
+ {hasContent ? (
19
+ <OtherProductsItemInner
20
+ columns={columns}
21
+ blocks={blocks}
22
+ context={context}
23
+ isActive={isActive}
24
+ />
25
+ ) : null}
26
+ <button
27
+ className={`border-none bg-primary-main px-0 py-[25px] text-center w-full font-sans text-white text-base
28
+ ${hasContent ? 'group cursor-pointer' : ''}`}
29
+ onClick={handleToggle}
30
+ >
31
+ <span className="pr-3">{isActive ? 'Скрыть' : label}</span>
32
+ {hasContent ? <Icon name={icon} width="20" height="20" asSVG /> : null}
33
+ </button>
34
+ </div>
35
+ );
36
+ });
@@ -0,0 +1,14 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import type { BlockItemProps } from './OtherProductsItem';
3
+ import { renderBlocksList } from '../../ui-kit/BlocksList/renderBlocksList';
4
+
5
+ export const OtherProductsItemInner = JSX<BlockItemProps>(({ blocks, columns = 1, context }) => {
6
+ const className = 'box-border p-5';
7
+ return (
8
+ <div className="transition-all duration-300 max-h-0 overflow-hidden">
9
+ <div className={`box-border w-full p-9 ${columns > 1 ? 'flex flex-wrap' : ''}`}>
10
+ {renderBlocksList({ context, className, columns, blocks })}
11
+ </div>
12
+ </div>
13
+ );
14
+ });
@@ -0,0 +1,23 @@
1
+ import type { IconName } from '../../../icons/IconName';
2
+
3
+ export const useActiveHandler = ({ context, blocks }) => {
4
+ const [isActive, setIsActive] = context.useState(false);
5
+ const hasContent = blocks?.length;
6
+ const icon: IconName = isActive ? 'ArrowUpIcon' : 'ArrowDownIcon';
7
+
8
+ const getContentBlock = ({ currentTarget }) => currentTarget.previousSibling;
9
+
10
+ const handleToggle = (e: MouseEvent) => {
11
+ if (!hasContent) {
12
+ return;
13
+ }
14
+
15
+ setIsActive(!isActive);
16
+ const contentBlock = getContentBlock(e);
17
+ contentBlock.style.maxHeight = contentBlock.style.maxHeight
18
+ ? null
19
+ : `${contentBlock.scrollHeight}px`;
20
+ };
21
+
22
+ return { isActive, hasContent, icon, handleToggle };
23
+ };
@@ -4,7 +4,8 @@
4
4
  "image": {
5
5
  "format": "webp",
6
6
  "size": {
7
- "width": 300
7
+ "width": 234,
8
+ "height": 234
8
9
  }
9
10
  },
10
11
  "items": ["Элемент списка 1", "Элемент списка 2", "Элемент списка 3"],
@@ -10,7 +10,8 @@
10
10
  "image": {
11
11
  "format": "webp",
12
12
  "size": {
13
- "width": 280
13
+ "width": 234,
14
+ "height": 234
14
15
  }
15
16
  },
16
17
  "description": "Описание",
@@ -1,4 +1,5 @@
1
1
  {
2
+ "version": "primary",
2
3
  "title": "Шаги",
3
4
  "description": "Описание",
4
5
  "showLines": true,
@@ -6,8 +6,8 @@
6
6
  "image": {
7
7
  "format": "webp",
8
8
  "size": {
9
- "width": 48,
10
- "height": 48
9
+ "width": 43,
10
+ "height": 43
11
11
  }
12
12
  }
13
13
  }
@@ -1,7 +1,7 @@
1
1
  import type { Picture } from '../../model/Picture';
2
2
 
3
3
  /**
4
- * @title Цвет плитки
4
+ * @title Цвет блока
5
5
  * @enumNames ["Основная", "Второстепенная", "Второстепенная прозрачная"]
6
6
  */
7
7
  export type TextBlockVersion = 'primary' | 'secondary' | 'secondary-light';
@@ -6,9 +6,7 @@
6
6
  "format": "webp",
7
7
  "size": {
8
8
  "width": 300
9
- },
10
- "alt": "Описание картинки",
11
- "title": "Подсказка"
9
+ }
12
10
  },
13
11
  "items": ["Пункт 1", "Пункт 2", "Пункт 3"],
14
12
  "buttons": [
@@ -0,0 +1,4 @@
1
+ <svg width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M13.8416 10.709L11.6582 12.8923C11.0166 13.534 9.96657 13.534 9.3249 12.8923L3.8999 7.45898" stroke="white" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
3
+ <path d="M17.1001 7.45898L16.2334 8.32565" stroke="white" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M13.3416 9.29163L11.1582 7.10829C10.5166 6.46662 9.46657 6.46662 8.8249 7.10829L3.3999 12.5416" stroke="white" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
3
+ <path d="M16.6001 12.5416L15.7334 11.675" stroke="white" stroke-width="2" stroke-miterlimit="10" stroke-linecap="round" stroke-linejoin="round"/>
4
+ </svg>