@redneckz/wildless-cms-uni-blocks 0.3.80 → 0.3.82

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 (423) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +120 -131
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/dist/components/Accordion/Accordion.js +3 -2
  5. package/dist/components/Accordion/Accordion.js.map +1 -1
  6. package/dist/components/BaseTile/BaseTile.js +2 -2
  7. package/dist/components/BaseTile/BaseTile.js.map +1 -1
  8. package/dist/components/BenefitsBlock/BenefitsBlock.js +3 -2
  9. package/dist/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  10. package/dist/components/Bonus/Bonus.js +3 -2
  11. package/dist/components/Bonus/Bonus.js.map +1 -1
  12. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +3 -2
  13. package/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  14. package/dist/components/Calculator/Calculator.js +3 -2
  15. package/dist/components/Calculator/Calculator.js.map +1 -1
  16. package/dist/components/Catalog/Catalog.js +3 -2
  17. package/dist/components/Catalog/Catalog.js.map +1 -1
  18. package/dist/components/ComparisonTable/ComparisonTable.js +3 -2
  19. package/dist/components/ComparisonTable/ComparisonTable.js.map +1 -1
  20. package/dist/components/ContentPage/ContentPage.js +0 -10
  21. package/dist/components/ContentPage/ContentPage.js.map +1 -1
  22. package/dist/components/ContentPage/ContentPageContext.d.ts +2 -0
  23. package/dist/components/ExchangeRateTile/ExchangeRateTile.js +3 -2
  24. package/dist/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  25. package/dist/components/Footer/Footer.js +3 -2
  26. package/dist/components/Footer/Footer.js.map +1 -1
  27. package/dist/components/Gallery/GalleryInner.js +4 -3
  28. package/dist/components/Gallery/GalleryInner.js.map +1 -1
  29. package/dist/components/GracePeriod/GracePeriod.js +3 -2
  30. package/dist/components/GracePeriod/GracePeriod.js.map +1 -1
  31. package/dist/components/GroupBlock/GroupBlock.js +5 -4
  32. package/dist/components/GroupBlock/GroupBlock.js.map +1 -1
  33. package/dist/components/Header/Header.js +3 -2
  34. package/dist/components/Header/Header.js.map +1 -1
  35. package/dist/components/Headline/Headline.js +3 -2
  36. package/dist/components/Headline/Headline.js.map +1 -1
  37. package/dist/components/Insurance/Insurance.js +3 -2
  38. package/dist/components/Insurance/Insurance.js.map +1 -1
  39. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js +5 -4
  40. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  41. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js +3 -3
  42. package/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  43. package/dist/components/LikeControl/LikeControl.js +3 -2
  44. package/dist/components/LikeControl/LikeControl.js.map +1 -1
  45. package/dist/components/LinkDocs/LinkDocs.js +3 -2
  46. package/dist/components/LinkDocs/LinkDocs.js.map +1 -1
  47. package/dist/components/LinkList/LinkList.js +3 -2
  48. package/dist/components/LinkList/LinkList.js.map +1 -1
  49. package/dist/components/MobileAppTile/MobileAppTile.js +4 -3
  50. package/dist/components/MobileAppTile/MobileAppTile.js.map +1 -1
  51. package/dist/components/Navigation/Navigation.js +3 -2
  52. package/dist/components/Navigation/Navigation.js.map +1 -1
  53. package/dist/components/NavigatorTabs/NavigatorTabItem.js +1 -1
  54. package/dist/components/NavigatorTabs/NavigatorTabItem.js.map +1 -1
  55. package/dist/components/NavigatorTabs/NavigatorTabs.js +7 -7
  56. package/dist/components/NavigatorTabs/NavigatorTabs.js.map +1 -1
  57. package/dist/components/OtherProducts/OtherProducts.js +3 -2
  58. package/dist/components/OtherProducts/OtherProducts.js.map +1 -1
  59. package/dist/components/PictureText/PictureText.js +3 -2
  60. package/dist/components/PictureText/PictureText.js.map +1 -1
  61. package/dist/components/Placeholder/Placeholder.js +3 -2
  62. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  63. package/dist/components/ProductBlock/ProductBlock.js +3 -2
  64. package/dist/components/ProductBlock/ProductBlock.js.map +1 -1
  65. package/dist/components/ProductBlock/ProductBlockContent.d.ts +3 -3
  66. package/dist/components/ProductBlock/renderBackwardButton.d.ts +2 -2
  67. package/dist/components/ProductGallery/ProductGallery.js +4 -3
  68. package/dist/components/ProductGallery/ProductGallery.js.map +1 -1
  69. package/dist/components/ProductTile/ProductTile.js +3 -2
  70. package/dist/components/ProductTile/ProductTile.js.map +1 -1
  71. package/dist/components/PromoTile/PromoTile.js +3 -2
  72. package/dist/components/PromoTile/PromoTile.js.map +1 -1
  73. package/dist/components/Recommendation/Recommendation.js +4 -3
  74. package/dist/components/Recommendation/Recommendation.js.map +1 -1
  75. package/dist/components/StepsBlock/StepsBlock.js +5 -4
  76. package/dist/components/StepsBlock/StepsBlock.js.map +1 -1
  77. package/dist/components/TariffsTable/TariffsTable.js +3 -2
  78. package/dist/components/TariffsTable/TariffsTable.js.map +1 -1
  79. package/dist/components/TextBlock/TextBlock.js +3 -2
  80. package/dist/components/TextBlock/TextBlock.js.map +1 -1
  81. package/dist/components/Tile/Tile.js +3 -2
  82. package/dist/components/Tile/Tile.js.map +1 -1
  83. package/dist/react/IntersectionObserverTag.d.ts +1 -1
  84. package/dist/react/IntersectionObserverTag.js +2 -2
  85. package/dist/react/IntersectionObserverTag.js.map +1 -1
  86. package/dist/react/setup-fixture.js.map +1 -1
  87. package/dist/ui-kit/BlockWrapper.d.ts +9 -0
  88. package/dist/ui-kit/BlockWrapper.js +10 -0
  89. package/dist/ui-kit/BlockWrapper.js.map +1 -0
  90. package/dist/ui-kit/BlocksList/renderBlocksList.js +3 -2
  91. package/dist/ui-kit/BlocksList/renderBlocksList.js.map +1 -1
  92. package/dist/ui-kit/Button/ButtonProps.d.ts +13 -1
  93. package/dist/utils/changeHashOnObserve.d.ts +1 -0
  94. package/dist/utils/changeHashOnObserve.js +13 -0
  95. package/dist/utils/changeHashOnObserve.js.map +1 -0
  96. package/lib/components/Accordion/Accordion.js +3 -2
  97. package/lib/components/Accordion/Accordion.js.map +1 -1
  98. package/lib/components/BaseTile/BaseTile.js +2 -2
  99. package/lib/components/BaseTile/BaseTile.js.map +1 -1
  100. package/lib/components/BenefitsBlock/BenefitsBlock.js +3 -2
  101. package/lib/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  102. package/lib/components/Bonus/Bonus.js +3 -2
  103. package/lib/components/Bonus/Bonus.js.map +1 -1
  104. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +3 -2
  105. package/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  106. package/lib/components/Calculator/Calculator.js +3 -2
  107. package/lib/components/Calculator/Calculator.js.map +1 -1
  108. package/lib/components/Catalog/Catalog.js +3 -2
  109. package/lib/components/Catalog/Catalog.js.map +1 -1
  110. package/lib/components/ComparisonTable/ComparisonTable.js +3 -2
  111. package/lib/components/ComparisonTable/ComparisonTable.js.map +1 -1
  112. package/lib/components/ContentPage/ContentPage.js +0 -10
  113. package/lib/components/ContentPage/ContentPage.js.map +1 -1
  114. package/lib/components/ContentPage/ContentPageContext.d.ts +2 -0
  115. package/lib/components/ExchangeRateTile/ExchangeRateTile.js +3 -2
  116. package/lib/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  117. package/lib/components/Footer/Footer.js +3 -2
  118. package/lib/components/Footer/Footer.js.map +1 -1
  119. package/lib/components/Gallery/GalleryInner.js +4 -3
  120. package/lib/components/Gallery/GalleryInner.js.map +1 -1
  121. package/lib/components/GracePeriod/GracePeriod.js +3 -2
  122. package/lib/components/GracePeriod/GracePeriod.js.map +1 -1
  123. package/lib/components/GroupBlock/GroupBlock.js +5 -4
  124. package/lib/components/GroupBlock/GroupBlock.js.map +1 -1
  125. package/lib/components/Header/Header.js +3 -2
  126. package/lib/components/Header/Header.js.map +1 -1
  127. package/lib/components/Headline/Headline.js +3 -2
  128. package/lib/components/Headline/Headline.js.map +1 -1
  129. package/lib/components/Insurance/Insurance.js +3 -2
  130. package/lib/components/Insurance/Insurance.js.map +1 -1
  131. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js +5 -4
  132. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  133. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js +3 -3
  134. package/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  135. package/lib/components/LikeControl/LikeControl.js +3 -2
  136. package/lib/components/LikeControl/LikeControl.js.map +1 -1
  137. package/lib/components/LinkDocs/LinkDocs.js +3 -2
  138. package/lib/components/LinkDocs/LinkDocs.js.map +1 -1
  139. package/lib/components/LinkList/LinkList.js +3 -2
  140. package/lib/components/LinkList/LinkList.js.map +1 -1
  141. package/lib/components/MobileAppTile/MobileAppTile.js +4 -3
  142. package/lib/components/MobileAppTile/MobileAppTile.js.map +1 -1
  143. package/lib/components/Navigation/Navigation.js +3 -2
  144. package/lib/components/Navigation/Navigation.js.map +1 -1
  145. package/lib/components/NavigatorTabs/NavigatorTabItem.js +1 -1
  146. package/lib/components/NavigatorTabs/NavigatorTabItem.js.map +1 -1
  147. package/lib/components/NavigatorTabs/NavigatorTabs.js +7 -7
  148. package/lib/components/NavigatorTabs/NavigatorTabs.js.map +1 -1
  149. package/lib/components/OtherProducts/OtherProducts.js +3 -2
  150. package/lib/components/OtherProducts/OtherProducts.js.map +1 -1
  151. package/lib/components/PictureText/PictureText.js +3 -2
  152. package/lib/components/PictureText/PictureText.js.map +1 -1
  153. package/lib/components/Placeholder/Placeholder.js +3 -2
  154. package/lib/components/Placeholder/Placeholder.js.map +1 -1
  155. package/lib/components/ProductBlock/ProductBlock.js +3 -2
  156. package/lib/components/ProductBlock/ProductBlock.js.map +1 -1
  157. package/lib/components/ProductBlock/ProductBlockContent.d.ts +3 -3
  158. package/lib/components/ProductBlock/renderBackwardButton.d.ts +2 -2
  159. package/lib/components/ProductGallery/ProductGallery.js +4 -3
  160. package/lib/components/ProductGallery/ProductGallery.js.map +1 -1
  161. package/lib/components/ProductTile/ProductTile.js +3 -2
  162. package/lib/components/ProductTile/ProductTile.js.map +1 -1
  163. package/lib/components/PromoTile/PromoTile.js +3 -2
  164. package/lib/components/PromoTile/PromoTile.js.map +1 -1
  165. package/lib/components/Recommendation/Recommendation.js +4 -3
  166. package/lib/components/Recommendation/Recommendation.js.map +1 -1
  167. package/lib/components/StepsBlock/StepsBlock.js +5 -4
  168. package/lib/components/StepsBlock/StepsBlock.js.map +1 -1
  169. package/lib/components/TariffsTable/TariffsTable.js +3 -2
  170. package/lib/components/TariffsTable/TariffsTable.js.map +1 -1
  171. package/lib/components/TextBlock/TextBlock.js +3 -2
  172. package/lib/components/TextBlock/TextBlock.js.map +1 -1
  173. package/lib/components/Tile/Tile.js +3 -2
  174. package/lib/components/Tile/Tile.js.map +1 -1
  175. package/lib/react/IntersectionObserverTag.d.ts +1 -1
  176. package/lib/react/IntersectionObserverTag.js +2 -2
  177. package/lib/react/IntersectionObserverTag.js.map +1 -1
  178. package/lib/react/setup-fixture.js.map +1 -1
  179. package/lib/ui-kit/BlockWrapper.d.ts +9 -0
  180. package/lib/ui-kit/BlockWrapper.js +8 -0
  181. package/lib/ui-kit/BlockWrapper.js.map +1 -0
  182. package/lib/ui-kit/BlocksList/renderBlocksList.js +3 -2
  183. package/lib/ui-kit/BlocksList/renderBlocksList.js.map +1 -1
  184. package/lib/ui-kit/Button/ButtonProps.d.ts +13 -1
  185. package/lib/utils/changeHashOnObserve.d.ts +1 -0
  186. package/lib/utils/changeHashOnObserve.js +10 -0
  187. package/lib/utils/changeHashOnObserve.js.map +1 -0
  188. package/mobile/bundle/bundle.umd.js +26 -36
  189. package/mobile/bundle/bundle.umd.min.js +1 -1
  190. package/mobile/dist/components/BaseTile/BaseTile.js +2 -2
  191. package/mobile/dist/components/BaseTile/BaseTile.js.map +1 -1
  192. package/mobile/dist/components/BenefitsBlock/BenefitsBlock.js +3 -2
  193. package/mobile/dist/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  194. package/mobile/dist/components/Bonus/Bonus.js +3 -2
  195. package/mobile/dist/components/Bonus/Bonus.js.map +1 -1
  196. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js +3 -2
  197. package/mobile/dist/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  198. package/mobile/dist/components/Calculator/Calculator.js +3 -2
  199. package/mobile/dist/components/Calculator/Calculator.js.map +1 -1
  200. package/mobile/dist/components/Catalog/Catalog.js +3 -2
  201. package/mobile/dist/components/Catalog/Catalog.js.map +1 -1
  202. package/mobile/dist/components/ContentPage/ContentPage.js +0 -10
  203. package/mobile/dist/components/ContentPage/ContentPage.js.map +1 -1
  204. package/mobile/dist/components/ContentPage/ContentPageContext.d.ts +2 -0
  205. package/mobile/dist/components/ExchangeRateTile/ExchangeRateTile.js +3 -2
  206. package/mobile/dist/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  207. package/mobile/dist/components/Gallery/GalleryInner.js +4 -3
  208. package/mobile/dist/components/Gallery/GalleryInner.js.map +1 -1
  209. package/mobile/dist/components/GracePeriod/GracePeriod.js +3 -2
  210. package/mobile/dist/components/GracePeriod/GracePeriod.js.map +1 -1
  211. package/mobile/dist/components/GroupBlock/GroupBlock.js +5 -4
  212. package/mobile/dist/components/GroupBlock/GroupBlock.js.map +1 -1
  213. package/mobile/dist/components/Insurance/Insurance.js +3 -2
  214. package/mobile/dist/components/Insurance/Insurance.js.map +1 -1
  215. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js +5 -4
  216. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  217. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js +3 -3
  218. package/mobile/dist/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  219. package/mobile/dist/components/LikeControl/LikeControl.js +3 -2
  220. package/mobile/dist/components/LikeControl/LikeControl.js.map +1 -1
  221. package/mobile/dist/components/LinkList/LinkList.js +3 -2
  222. package/mobile/dist/components/LinkList/LinkList.js.map +1 -1
  223. package/mobile/dist/components/Navigation/Navigation.js +3 -2
  224. package/mobile/dist/components/Navigation/Navigation.js.map +1 -1
  225. package/mobile/dist/components/NavigatorTabs/NavigatorTabItem.js +1 -1
  226. package/mobile/dist/components/NavigatorTabs/NavigatorTabItem.js.map +1 -1
  227. package/mobile/dist/components/NavigatorTabs/NavigatorTabs.js +7 -7
  228. package/mobile/dist/components/NavigatorTabs/NavigatorTabs.js.map +1 -1
  229. package/mobile/dist/components/OtherProducts/OtherProducts.js +3 -2
  230. package/mobile/dist/components/OtherProducts/OtherProducts.js.map +1 -1
  231. package/mobile/dist/components/PictureText/PictureText.js +3 -2
  232. package/mobile/dist/components/PictureText/PictureText.js.map +1 -1
  233. package/mobile/dist/components/Placeholder/Placeholder.js +3 -2
  234. package/mobile/dist/components/Placeholder/Placeholder.js.map +1 -1
  235. package/mobile/dist/components/ProductBlock/ProductBlockContent.d.ts +3 -3
  236. package/mobile/dist/components/ProductBlock/renderBackwardButton.d.ts +2 -2
  237. package/mobile/dist/components/ProductTile/ProductTile.js +3 -2
  238. package/mobile/dist/components/ProductTile/ProductTile.js.map +1 -1
  239. package/mobile/dist/components/PromoTile/PromoTile.js +3 -2
  240. package/mobile/dist/components/PromoTile/PromoTile.js.map +1 -1
  241. package/mobile/dist/components/Recommendation/Recommendation.js +4 -3
  242. package/mobile/dist/components/Recommendation/Recommendation.js.map +1 -1
  243. package/mobile/dist/components/Tile/Tile.js +3 -2
  244. package/mobile/dist/components/Tile/Tile.js.map +1 -1
  245. package/mobile/dist/react/IntersectionObserverTag.d.ts +1 -1
  246. package/mobile/dist/react/IntersectionObserverTag.js +2 -2
  247. package/mobile/dist/react/IntersectionObserverTag.js.map +1 -1
  248. package/mobile/dist/react/setup-fixture.js.map +1 -1
  249. package/mobile/dist/ui-kit/BlockWrapper.d.ts +9 -0
  250. package/mobile/dist/ui-kit/BlockWrapper.js +10 -0
  251. package/mobile/dist/ui-kit/BlockWrapper.js.map +1 -0
  252. package/mobile/dist/ui-kit/BlocksList/renderBlocksList.js +3 -2
  253. package/mobile/dist/ui-kit/BlocksList/renderBlocksList.js.map +1 -1
  254. package/mobile/dist/ui-kit/Button/ButtonProps.d.ts +13 -1
  255. package/mobile/dist/utils/changeHashOnObserve.d.ts +1 -0
  256. package/mobile/dist/utils/changeHashOnObserve.js +13 -0
  257. package/mobile/dist/utils/changeHashOnObserve.js.map +1 -0
  258. package/mobile/lib/components/BaseTile/BaseTile.js +2 -2
  259. package/mobile/lib/components/BaseTile/BaseTile.js.map +1 -1
  260. package/mobile/lib/components/BenefitsBlock/BenefitsBlock.js +3 -2
  261. package/mobile/lib/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  262. package/mobile/lib/components/Bonus/Bonus.js +3 -2
  263. package/mobile/lib/components/Bonus/Bonus.js.map +1 -1
  264. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js +3 -2
  265. package/mobile/lib/components/BonusBenefitsBlock/BonusBenefitsBlock.js.map +1 -1
  266. package/mobile/lib/components/Calculator/Calculator.js +3 -2
  267. package/mobile/lib/components/Calculator/Calculator.js.map +1 -1
  268. package/mobile/lib/components/Catalog/Catalog.js +3 -2
  269. package/mobile/lib/components/Catalog/Catalog.js.map +1 -1
  270. package/mobile/lib/components/ContentPage/ContentPage.js +0 -10
  271. package/mobile/lib/components/ContentPage/ContentPage.js.map +1 -1
  272. package/mobile/lib/components/ContentPage/ContentPageContext.d.ts +2 -0
  273. package/mobile/lib/components/ExchangeRateTile/ExchangeRateTile.js +3 -2
  274. package/mobile/lib/components/ExchangeRateTile/ExchangeRateTile.js.map +1 -1
  275. package/mobile/lib/components/Gallery/GalleryInner.js +4 -3
  276. package/mobile/lib/components/Gallery/GalleryInner.js.map +1 -1
  277. package/mobile/lib/components/GracePeriod/GracePeriod.js +3 -2
  278. package/mobile/lib/components/GracePeriod/GracePeriod.js.map +1 -1
  279. package/mobile/lib/components/GroupBlock/GroupBlock.js +5 -4
  280. package/mobile/lib/components/GroupBlock/GroupBlock.js.map +1 -1
  281. package/mobile/lib/components/Insurance/Insurance.js +3 -2
  282. package/mobile/lib/components/Insurance/Insurance.js.map +1 -1
  283. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js +5 -4
  284. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlock.js.map +1 -1
  285. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js +3 -3
  286. package/mobile/lib/components/InsuranceAmountBlock/InsuranceAmountBlockInner.js.map +1 -1
  287. package/mobile/lib/components/LikeControl/LikeControl.js +3 -2
  288. package/mobile/lib/components/LikeControl/LikeControl.js.map +1 -1
  289. package/mobile/lib/components/LinkList/LinkList.js +3 -2
  290. package/mobile/lib/components/LinkList/LinkList.js.map +1 -1
  291. package/mobile/lib/components/Navigation/Navigation.js +3 -2
  292. package/mobile/lib/components/Navigation/Navigation.js.map +1 -1
  293. package/mobile/lib/components/NavigatorTabs/NavigatorTabItem.js +1 -1
  294. package/mobile/lib/components/NavigatorTabs/NavigatorTabItem.js.map +1 -1
  295. package/mobile/lib/components/NavigatorTabs/NavigatorTabs.js +7 -7
  296. package/mobile/lib/components/NavigatorTabs/NavigatorTabs.js.map +1 -1
  297. package/mobile/lib/components/OtherProducts/OtherProducts.js +3 -2
  298. package/mobile/lib/components/OtherProducts/OtherProducts.js.map +1 -1
  299. package/mobile/lib/components/PictureText/PictureText.js +3 -2
  300. package/mobile/lib/components/PictureText/PictureText.js.map +1 -1
  301. package/mobile/lib/components/Placeholder/Placeholder.js +3 -2
  302. package/mobile/lib/components/Placeholder/Placeholder.js.map +1 -1
  303. package/mobile/lib/components/ProductBlock/ProductBlockContent.d.ts +3 -3
  304. package/mobile/lib/components/ProductBlock/renderBackwardButton.d.ts +2 -2
  305. package/mobile/lib/components/ProductTile/ProductTile.js +3 -2
  306. package/mobile/lib/components/ProductTile/ProductTile.js.map +1 -1
  307. package/mobile/lib/components/PromoTile/PromoTile.js +3 -2
  308. package/mobile/lib/components/PromoTile/PromoTile.js.map +1 -1
  309. package/mobile/lib/components/Recommendation/Recommendation.js +4 -3
  310. package/mobile/lib/components/Recommendation/Recommendation.js.map +1 -1
  311. package/mobile/lib/components/Tile/Tile.js +3 -2
  312. package/mobile/lib/components/Tile/Tile.js.map +1 -1
  313. package/mobile/lib/react/IntersectionObserverTag.d.ts +1 -1
  314. package/mobile/lib/react/IntersectionObserverTag.js +2 -2
  315. package/mobile/lib/react/IntersectionObserverTag.js.map +1 -1
  316. package/mobile/lib/react/setup-fixture.js.map +1 -1
  317. package/mobile/lib/ui-kit/BlockWrapper.d.ts +9 -0
  318. package/mobile/lib/ui-kit/BlockWrapper.js +8 -0
  319. package/mobile/lib/ui-kit/BlockWrapper.js.map +1 -0
  320. package/mobile/lib/ui-kit/BlocksList/renderBlocksList.js +3 -2
  321. package/mobile/lib/ui-kit/BlocksList/renderBlocksList.js.map +1 -1
  322. package/mobile/lib/ui-kit/Button/ButtonProps.d.ts +13 -1
  323. package/mobile/lib/utils/changeHashOnObserve.d.ts +1 -0
  324. package/mobile/lib/utils/changeHashOnObserve.js +10 -0
  325. package/mobile/lib/utils/changeHashOnObserve.js.map +1 -0
  326. package/mobile/src/components/BaseTile/BaseTile.tsx +2 -2
  327. package/mobile/src/components/BenefitsBlock/BenefitsBlock.tsx +5 -4
  328. package/mobile/src/components/Bonus/Bonus.tsx +4 -3
  329. package/mobile/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +5 -4
  330. package/mobile/src/components/Calculator/Calculator.tsx +6 -4
  331. package/mobile/src/components/Catalog/Catalog.tsx +6 -4
  332. package/mobile/src/components/ContentPage/ContentPage.tsx +0 -14
  333. package/mobile/src/components/ContentPage/ContentPageContext.tsx +3 -0
  334. package/mobile/src/components/ExchangeRateTile/ExchangeRateTile.tsx +6 -4
  335. package/mobile/src/components/Gallery/GalleryInner.tsx +8 -6
  336. package/mobile/src/components/GracePeriod/GracePeriod.tsx +4 -3
  337. package/mobile/src/components/GroupBlock/GroupBlock.tsx +6 -5
  338. package/mobile/src/components/Insurance/Insurance.tsx +7 -3
  339. package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlock.tsx +8 -6
  340. package/mobile/src/components/InsuranceAmountBlock/InsuranceAmountBlockInner.tsx +5 -5
  341. package/mobile/src/components/LikeControl/LikeControl.tsx +7 -4
  342. package/mobile/src/components/LinkList/LinkList.tsx +4 -3
  343. package/mobile/src/components/Navigation/Navigation.tsx +6 -4
  344. package/mobile/src/components/NavigatorTabs/NavigatorTabItem.tsx +1 -1
  345. package/mobile/src/components/NavigatorTabs/NavigatorTabs.tsx +13 -13
  346. package/mobile/src/components/OtherProducts/OtherProducts.tsx +8 -3
  347. package/mobile/src/components/PictureText/PictureText.tsx +6 -5
  348. package/mobile/src/components/Placeholder/Placeholder.tsx +6 -4
  349. package/mobile/src/components/ProductBlock/ProductBlockContent.ts +3 -3
  350. package/mobile/src/components/ProductBlock/renderBackwardButton.tsx +2 -2
  351. package/mobile/src/components/ProductTile/ProductTile.tsx +6 -4
  352. package/mobile/src/components/PromoTile/PromoTile.tsx +6 -4
  353. package/mobile/src/components/Recommendation/Recommendation.tsx +7 -5
  354. package/mobile/src/components/Tile/Tile.tsx +6 -6
  355. package/mobile/src/react/IntersectionObserverTag.tsx +11 -3
  356. package/mobile/src/react/setup-fixture.ts +0 -1
  357. package/mobile/src/ui-kit/BlockWrapper.tsx +33 -0
  358. package/mobile/src/ui-kit/BlocksList/renderBlocksList.tsx +6 -3
  359. package/mobile/src/ui-kit/Button/ButtonProps.ts +14 -1
  360. package/mobile/src/utils/changeHashOnObserve.ts +10 -0
  361. package/package.json +1 -1
  362. package/src/components/Accordion/Accordion.tsx +9 -4
  363. package/src/components/BaseTile/BaseTile.tsx +2 -2
  364. package/src/components/BenefitsBlock/BenefitsBlock.tsx +5 -4
  365. package/src/components/Bonus/Bonus.tsx +4 -3
  366. package/src/components/BonusBenefitsBlock/BonusBenefitsBlock.tsx +5 -4
  367. package/src/components/Calculator/Calculator.tsx +6 -4
  368. package/src/components/Catalog/Catalog.tsx +6 -4
  369. package/src/components/ComparisonTable/ComparisonTable.tsx +6 -4
  370. package/src/components/ContentPage/ContentPage.tsx +0 -14
  371. package/src/components/ContentPage/ContentPageContext.tsx +3 -0
  372. package/src/components/ExchangeRateTile/ExchangeRateTile.tsx +6 -4
  373. package/src/components/Footer/Footer.tsx +9 -3
  374. package/src/components/Gallery/GalleryInner.tsx +8 -6
  375. package/src/components/GracePeriod/GracePeriod.tsx +4 -3
  376. package/src/components/GroupBlock/GroupBlock.tsx +6 -5
  377. package/src/components/Header/Header.tsx +9 -3
  378. package/src/components/Headline/Headline.tsx +5 -4
  379. package/src/components/Insurance/Insurance.tsx +7 -3
  380. package/src/components/InsuranceAmountBlock/InsuranceAmountBlock.tsx +8 -6
  381. package/src/components/InsuranceAmountBlock/InsuranceAmountBlockInner.tsx +5 -5
  382. package/src/components/LikeControl/LikeControl.tsx +7 -4
  383. package/src/components/LinkDocs/LinkDocs.tsx +8 -3
  384. package/src/components/LinkList/LinkList.tsx +4 -3
  385. package/src/components/MobileAppTile/MobileAppTile.tsx +6 -4
  386. package/src/components/Navigation/Navigation.tsx +6 -4
  387. package/src/components/NavigatorTabs/NavigatorTabItem.tsx +1 -1
  388. package/src/components/NavigatorTabs/NavigatorTabs.tsx +13 -13
  389. package/src/components/OtherProducts/OtherProducts.tsx +8 -3
  390. package/src/components/PictureText/PictureText.tsx +6 -5
  391. package/src/components/Placeholder/Placeholder.tsx +6 -4
  392. package/src/components/ProductBlock/ProductBlock.fixture.tsx +2 -2
  393. package/src/components/ProductBlock/ProductBlock.tsx +5 -4
  394. package/src/components/ProductBlock/ProductBlockContent.ts +3 -3
  395. package/src/components/ProductBlock/renderBackwardButton.tsx +2 -2
  396. package/src/components/ProductGallery/ProductGallery.tsx +6 -4
  397. package/src/components/ProductTile/ProductTile.tsx +6 -4
  398. package/src/components/PromoTile/PromoTile.tsx +6 -4
  399. package/src/components/Recommendation/Recommendation.tsx +7 -5
  400. package/src/components/StepsBlock/StepsBlock.tsx +7 -5
  401. package/src/components/TariffsTable/TariffsTable.tsx +6 -13
  402. package/src/components/TextBlock/TextBlock.tsx +5 -12
  403. package/src/components/Tile/Tile.tsx +6 -6
  404. package/src/react/IntersectionObserverTag.tsx +11 -3
  405. package/src/react/setup-fixture.ts +0 -1
  406. package/src/ui-kit/BlockWrapper.tsx +33 -0
  407. package/src/ui-kit/BlocksList/renderBlocksList.tsx +6 -3
  408. package/src/ui-kit/Button/ButtonProps.ts +14 -1
  409. package/src/utils/changeHashOnObserve.ts +10 -0
  410. package/dist/utils/changeHashOnScroll.d.ts +0 -2
  411. package/dist/utils/changeHashOnScroll.js +0 -17
  412. package/dist/utils/changeHashOnScroll.js.map +0 -1
  413. package/lib/utils/changeHashOnScroll.d.ts +0 -2
  414. package/lib/utils/changeHashOnScroll.js +0 -14
  415. package/lib/utils/changeHashOnScroll.js.map +0 -1
  416. package/mobile/dist/utils/changeHashOnScroll.d.ts +0 -2
  417. package/mobile/dist/utils/changeHashOnScroll.js +0 -17
  418. package/mobile/dist/utils/changeHashOnScroll.js.map +0 -1
  419. package/mobile/lib/utils/changeHashOnScroll.d.ts +0 -2
  420. package/mobile/lib/utils/changeHashOnScroll.js +0 -14
  421. package/mobile/lib/utils/changeHashOnScroll.js.map +0 -1
  422. package/mobile/src/utils/changeHashOnScroll.ts +0 -17
  423. package/src/utils/changeHashOnScroll.ts +0 -17
@@ -1,9 +1,10 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
2
3
  import type { UniBlockProps } from '../../types';
4
+ import { filterBlocksByTag } from './filterBlocksByTag';
3
5
  import type { GroupBlockContent, GroupBlockTab } from './GroupBlockContent';
4
- import { GroupBlockTabs } from './GroupBlockTabs';
5
6
  import { GroupBlocksItem } from './GroupBlocksItem';
6
- import { filterBlocksByTag } from './filterBlocksByTag';
7
+ import { GroupBlockTabs } from './GroupBlockTabs';
7
8
 
8
9
  export interface TabsItemProps extends GroupBlockTab {
9
10
  count?: number;
@@ -14,7 +15,7 @@ export interface GroupBlockProps extends GroupBlockContent, UniBlockProps {
14
15
  }
15
16
 
16
17
  export const GroupBlock = JSX<GroupBlockProps>(
17
- ({ className = '', tabs, context, anchor = null, groupBlocks = [], isShowCounter }) => {
18
+ ({ className = '', tabs, context, groupBlocks = [], isShowCounter, ...rest }) => {
18
19
  const [currentTag, setCurrentTag] = context.useState(tabs?.[0]?.tag);
19
20
 
20
21
  const filteredBlocks = filterBlocksByTag(groupBlocks, currentTag);
@@ -28,7 +29,7 @@ export const GroupBlock = JSX<GroupBlockProps>(
28
29
  });
29
30
 
30
31
  return (
31
- <section id={anchor} className={`box-border gap-1 ${className}`}>
32
+ <BlockWrapper context={context} className={`box-border gap-1 ${className}`} {...rest}>
32
33
  {tabsNewMap?.length ? (
33
34
  <GroupBlockTabs
34
35
  currentTag={currentTag}
@@ -40,7 +41,7 @@ export const GroupBlock = JSX<GroupBlockProps>(
40
41
  {groupBlocks.length ? (
41
42
  <GroupBlocksItem context={context} groupBlocks={filteredBlocks} />
42
43
  ) : null}
43
- </section>
44
+ </BlockWrapper>
44
45
  );
45
46
  },
46
47
  );
@@ -1,4 +1,5 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
2
3
  import type { UniBlockProps } from '../../types';
3
4
  import { Heading } from '../../ui-kit/Heading/Heading';
4
5
  import { Img } from '../../ui-kit/Img/Img';
@@ -8,9 +9,12 @@ import type { InsuranceBenefit, InsuranceContent } from './InsuranceContent';
8
9
  export interface InsuranceProps extends InsuranceContent, UniBlockProps {}
9
10
 
10
11
  export const Insurance = JSX<InsuranceProps>(
11
- ({ className = '', title, description, image, benefits, sum, monthLimit }) => {
12
+ ({ className = '', title, description, image, benefits, sum, monthLimit, ...rest }) => {
12
13
  return (
13
- <section className={`px-[100px] py-[50px] bg-white text-primary-text font-sans ${className}`}>
14
+ <BlockWrapper
15
+ className={`px-[100px] py-[50px] bg-white text-primary-text font-sans ${className}`}
16
+ {...rest}
17
+ >
14
18
  {title ? <Heading headingType="h3" title={title} className="text-center" /> : null}
15
19
  {description ? <div className="text-center text-md mt-3">{description}</div> : null}
16
20
  <div>
@@ -24,7 +28,7 @@ export const Insurance = JSX<InsuranceProps>(
24
28
  </div>
25
29
  </div>
26
30
  </div>
27
- </section>
31
+ </BlockWrapper>
28
32
  );
29
33
  },
30
34
  );
@@ -1,20 +1,22 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import type { UniBlockProps } from '../../types';
3
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
4
+ import { Button } from '../../ui-kit/Button/Button';
5
+ import { Heading } from '../../ui-kit/Heading/Heading';
3
6
  import type { InsuranceAmountBlockContent } from './InsuranceAmountBlockContent';
4
7
  import { InsuranceAmountBlockInner } from './InsuranceAmountBlockInner';
5
- import { Heading } from '../../ui-kit/Heading/Heading';
6
- import { Button } from '../../ui-kit/Button/Button';
7
8
 
8
9
  export interface InsuranceAmountBlockProps extends InsuranceAmountBlockContent, UniBlockProps {}
9
10
 
10
11
  export const InsuranceAmountBlock = JSX<InsuranceAmountBlockProps>(
11
- ({ className = '', context, title, insuranceTabs = [], button, anchor = null }) => {
12
+ ({ className = '', context, title, insuranceTabs = [], button, ...rest }) => {
12
13
  const [activeSlideIndex, setActiveSlideIndex] = context.useState(0);
13
14
 
14
15
  return (
15
- <section
16
- id={anchor}
16
+ <BlockWrapper
17
+ context={context}
17
18
  className={`box-border py-[50px] overflow-hidden relative font-sans w-100 bg-white ${className}`}
19
+ {...rest}
18
20
  >
19
21
  {title ? <Heading className="text-center" title={title} headingType="h3" /> : null}
20
22
  <div className="p-1.5 bg-secondary-light w-fit m-auto rounded-md mt-[34px]">
@@ -49,7 +51,7 @@ export const InsuranceAmountBlock = JSX<InsuranceAmountBlockProps>(
49
51
  </Button>
50
52
  </div>
51
53
  ) : null}
52
- </section>
54
+ </BlockWrapper>
53
55
  );
54
56
  },
55
57
  );
@@ -1,9 +1,9 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
- import type { UniBlockProps, FuncReturnVoid } from '../../types';
3
- import type { InsuranceAmountBlockTabs, CardItem } from './InsuranceAmountBlockContent';
2
+ import type { FuncReturnVoid, UniBlockProps } from '../../types';
3
+ import { renderArrows } from '../../ui-kit/Button/renderArrows';
4
4
  import { Img } from '../../ui-kit/Img/Img';
5
5
  import { addSpacesBetweenNumbers } from '../../utils/addSpacesBetweenNumbers';
6
- import { renderArrows } from '../../ui-kit/Button/renderArrows';
6
+ import type { CardItem, InsuranceAmountBlockTabs } from './InsuranceAmountBlockContent';
7
7
 
8
8
  export interface InsuranceAmountBlockInnerProps extends InsuranceAmountBlockTabs, UniBlockProps {}
9
9
 
@@ -23,7 +23,7 @@ type InsuranceSlideProps = {
23
23
  };
24
24
 
25
25
  export const InsuranceAmountBlockInner = JSX<InsuranceAmountBlockInnerProps>(
26
- ({ className = '', context, cards = [], anchor = null }) => {
26
+ ({ className = '', context, cards = [] }) => {
27
27
  const [activeSlideIndex, setActiveSlideIndex] = context.useState(0);
28
28
  const [tabsShift, setTabsShift] = context.useState(0);
29
29
 
@@ -38,7 +38,7 @@ export const InsuranceAmountBlockInner = JSX<InsuranceAmountBlockInnerProps>(
38
38
  const showPrevButton = tabsShift > 0;
39
39
 
40
40
  return (
41
- <section id={anchor} className={`min-w-full ${className}`}>
41
+ <section className={`min-w-full ${className}`}>
42
42
  <div className="relative mt-7 overflow-hidden">
43
43
  {galleryLength
44
44
  ? renderGallery({
@@ -1,16 +1,19 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
2
3
  import type { UniBlockProps } from '../../types';
3
4
  import { LikeButton } from '../../ui-kit/Button/LikeButton';
4
5
 
5
- export const LikeControl = JSX<UniBlockProps>(({ className, context, anchor = null }) => {
6
+ export const LikeControl = JSX<UniBlockProps>(({ className, context, ...rest }) => {
6
7
  const likeService = context.useLikeService();
7
8
 
8
9
  return (
9
- <div
10
+ <BlockWrapper
11
+ Tag="div"
12
+ context={context}
10
13
  className={`border-main border-2 border-solid bg-white flex w-[125px] items-center justify-center gap-3 p-2 font-sans ${
11
14
  className || ''
12
15
  }`}
13
- id={anchor}
16
+ {...rest}
14
17
  >
15
18
  <LikeButton onClick={likeService.like} ariaLabel="Поставить отметку «лайк»" />
16
19
  <LikeButton
@@ -19,6 +22,6 @@ export const LikeControl = JSX<UniBlockProps>(({ className, context, anchor = nu
19
22
  ariaLabel="Поставить отметку «дизлайк»"
20
23
  />
21
24
  <span className="select-none">{likeService.likeCount}</span>
22
- </div>
25
+ </BlockWrapper>
23
26
  );
24
27
  });
@@ -1,16 +1,17 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
2
3
  import type { UniBlockProps } from '../../types';
3
4
  import type { LinkListContent } from './LinkListContent';
4
5
 
5
6
  export interface LinkListProps extends LinkListContent, UniBlockProps {}
6
7
 
7
- export const LinkList = JSX<LinkListProps>(({ className = '', documents, anchor = null }) => {
8
+ export const LinkList = JSX<LinkListProps>(({ className = '', documents, ...rest }) => {
8
9
  return (
9
- <section className={`font-sans bg-white mt-[10px] ${className}`} id={anchor}>
10
+ <BlockWrapper className={`font-sans bg-white mt-[10px] ${className}`} {...rest}>
10
11
  <ul className="flex flex-col text-sm text-secondary-text p-0">
11
12
  {documents?.length ? renderLinkListItem(documents) : null}
12
13
  </ul>
13
- </section>
14
+ </BlockWrapper>
14
15
  );
15
16
  });
16
17
 
@@ -1,5 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useLink } from '../../hooks/useLink';
3
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
3
4
  import { findActiveSubItem } from '../../services/sitemap/findActiveSubItem';
4
5
  import type { UniBlockProps } from '../../types';
5
6
  import { NavigationContent } from './NavigationContent';
@@ -8,18 +9,19 @@ import { NavigationItem } from './NavigationItem';
8
9
  export interface NavigationProps extends NavigationContent, UniBlockProps {}
9
10
 
10
11
  export const Navigation = JSX<NavigationProps>(
11
- ({ className, context, title, buttons, anchor = null }) => {
12
+ ({ className, context, title, buttons, ...rest }) => {
12
13
  const router = context.useRouter();
13
14
  const { handlerDecorator } = context;
14
15
 
15
16
  const activeButton = findActiveSubItem(router)(buttons);
16
17
 
17
18
  return (
18
- <section
19
+ <BlockWrapper
20
+ context={context}
19
21
  className={`font-sans text-primary-text rounded-[40px] flex items-center justify-between ${
20
22
  className || ''
21
23
  }`}
22
- id={anchor}
24
+ {...rest}
23
25
  >
24
26
  <h2 className="font-medium text-xl-light m-0">{title}</h2>
25
27
  {buttons?.length ? (
@@ -36,7 +38,7 @@ export const Navigation = JSX<NavigationProps>(
36
38
  ))}
37
39
  </div>
38
40
  ) : null}
39
- </section>
41
+ </BlockWrapper>
40
42
  );
41
43
  },
42
44
  );
@@ -11,7 +11,7 @@ const TEXT_CLASSES = 'font-sans font-normal text-m-md';
11
11
  const LINK_CLASSES = 'flex-1 flex items-center justify-center cursor-pointer';
12
12
 
13
13
  export const NavigatorTabItem = JSX<NavigatorTabItemProps>(
14
- ({ className = '', text, active, children, onClick, href, target = '_self' }) => (
14
+ ({ className = '', text, active, onClick, href, target = '_self', children }) => (
15
15
  <a className={getLinkClasses(className, active)} target={target} href={href} onClick={onClick}>
16
16
  <span className={getTextClasses(active)}>{text || children}</span>
17
17
  </a>
@@ -1,7 +1,8 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import { useLink } from '../../hooks/useLink';
3
- import { LinkProps } from '../../model/LinkProps';
3
+ import type { LinkProps } from '../../model/LinkProps';
4
4
  import type { UniBlockProps } from '../../types';
5
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
5
6
  import { getHash } from '../../utils/url';
6
7
  import type { ContentPageContext } from '../ContentPage/ContentPageContext';
7
8
  import { NavigatorTabItem } from './NavigatorTabItem';
@@ -10,30 +11,29 @@ import type { NavigatorTabsContent } from './NavigatorTabsContent';
10
11
  export interface TabsBlockProps extends UniBlockProps, NavigatorTabsContent {}
11
12
 
12
13
  export const NavigatorTabs = JSX<TabsBlockProps>(
13
- ({ className = '', navigatorTabs, context, anchor = null }) => {
14
- const href = globalThis.location?.href; // TODO: remove globalThis, use href from router
15
-
14
+ ({ className = '', navigatorTabs, context, ...rest }) => {
16
15
  return (
17
- <section
16
+ <BlockWrapper
17
+ context={context}
18
18
  className={`sticky top-0 z-20 box-border flex gap-x-1 h-14 ${className}`}
19
- id={anchor}
19
+ {...rest}
20
20
  >
21
- {navigatorTabs ? navigatorTabs.map(renderTab(context, href)) : null}
22
- </section>
21
+ {navigatorTabs ? navigatorTabs.map(renderTab(context)) : null}
22
+ </BlockWrapper>
23
23
  );
24
24
  },
25
25
  );
26
26
 
27
- const renderTab = (context: ContentPageContext, href?: string) => (tab: LinkProps, i: number) => {
28
- const { useRouter, handlerDecorator } = context;
29
- const router = useRouter();
27
+ const renderTab = (context: ContentPageContext) => (tab: LinkProps, i: number) => {
28
+ const { handlerDecorator, useRouter } = context;
30
29
 
31
- const hash = getHash(href);
30
+ const router = useRouter();
31
+ const hash = getHash(router.href);
32
32
  const active = hash ? tab.href === hash : i === 0;
33
33
 
34
34
  return (
35
35
  <NavigatorTabItem
36
- key={tab.href}
36
+ key={tab.text}
37
37
  active={active}
38
38
  {...useLink({ router, handlerDecorator }, tab)}
39
39
  />
@@ -1,14 +1,19 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import type { UniBlockProps } from '../../types';
3
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
3
4
  import type { OtherProductsContent } from './OtherProductsContent';
4
5
  import { OtherProductsItem } from './OtherProductsItem';
5
6
 
6
7
  export interface OtherProductsProps extends OtherProductsContent, UniBlockProps {}
7
8
 
8
9
  export const OtherProducts = JSX<OtherProductsProps>(
9
- ({ blockItems, colorPalette, context, className = '' }) => {
10
+ ({ blockItems, colorPalette, context, className = '', ...rest }) => {
10
11
  return (
11
- <section className={`font-sans text-primary-text ${className}`}>
12
+ <BlockWrapper
13
+ context={context}
14
+ className={`font-sans text-primary-text ${className}`}
15
+ {...rest}
16
+ >
12
17
  {blockItems?.length ? (
13
18
  <div className="box-border1">
14
19
  {blockItems.map((item, i) => (
@@ -21,7 +26,7 @@ export const OtherProducts = JSX<OtherProductsProps>(
21
26
  ))}
22
27
  </div>
23
28
  ) : null}
24
- </section>
29
+ </BlockWrapper>
25
30
  );
26
31
  },
27
32
  );
@@ -1,8 +1,9 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import type { UniBlockProps } from '../../types';
3
- import type { PictureTextContent, PictureTextBenefit } from './PictureTextContent';
3
+ import type { PictureTextBenefit, PictureTextContent } from './PictureTextContent';
4
4
 
5
5
  import { BlockVersion } from '../../model/BlockVersion';
6
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
6
7
  import { Heading } from '../../ui-kit/Heading/Heading';
7
8
  import { Img } from '../../ui-kit/Img/Img';
8
9
 
@@ -21,12 +22,12 @@ export const PictureText = JSX<PictureTextProps>(
21
22
  benefits,
22
23
  version = 'primary',
23
24
  directionRight = false,
24
- anchor = null,
25
+ ...rest
25
26
  }) => {
26
27
  return (
27
- <section
28
+ <BlockWrapper
28
29
  className={`relative font-sans p-14 ${pictureTextStyleMap[version]} ${className}`}
29
- id={anchor}
30
+ {...rest}
30
31
  >
31
32
  <Heading headingType="h2" className="text-center" title={title} />
32
33
  <div className={'flex justify-center mt-9'}>
@@ -37,7 +38,7 @@ export const PictureText = JSX<PictureTextProps>(
37
38
  </div>
38
39
  ) : null}
39
40
  </div>
40
- </section>
41
+ </BlockWrapper>
41
42
  );
42
43
  },
43
44
  );
@@ -1,5 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import type { PlaceholderContent } from '../../components/Placeholder/PlaceholderContent';
3
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
3
4
  import type { UniBlockProps } from '../../types';
4
5
  import { Description } from '../../ui-kit/Description/Description';
5
6
  import { Heading } from '../../ui-kit/Heading/Heading';
@@ -15,13 +16,14 @@ export interface PlaceholderProps extends PlaceholderContent, UniBlockProps {
15
16
  const GOLDEN_RATIO = 1.618;
16
17
 
17
18
  export const Placeholder = JSX<PlaceholderProps>(
18
- ({ className, context, title, description = 'Блок в разработке...', anchor = null }) => {
19
+ ({ className, context, title, description = 'Блок в разработке...', ...rest }) => {
19
20
  return (
20
- <section
21
+ <BlockWrapper
22
+ context={context}
21
23
  className={`bg-white text-primary-text font-sans p-9 box-border ${className} ${getTileRightPadding(
22
24
  className,
23
25
  )} ${getTileMinHeight(className)} `}
24
- id={anchor}
26
+ {...rest}
25
27
  >
26
28
  <BaseTile
27
29
  context={context}
@@ -40,7 +42,7 @@ export const Placeholder = JSX<PlaceholderProps>(
40
42
  ) : null}
41
43
  <figure className="m-0 min-w-[600px]">{renderShimmer()}</figure>
42
44
  </BaseTile>
43
- </section>
45
+ </BlockWrapper>
44
46
  );
45
47
  },
46
48
  );
@@ -1,12 +1,12 @@
1
1
  import type { BlockVersion } from '../../model/BlockVersion';
2
2
  import type { IconVersion } from '../../model/IconVersion';
3
3
  import type { LinkProps } from '../../model/LinkProps';
4
- import type { ButtonContent, ButtonWithIconProps } from '../../ui-kit/Button/ButtonProps';
4
+ import { Picture } from '../../model/Picture';
5
+ import type { BackwardButtonProps, ButtonContent } from '../../ui-kit/Button/ButtonProps';
5
6
  import type { DescriptionContent } from '../../ui-kit/Description/DescriptionContent';
6
7
  import type { HeadingContent, HeadingTypeContent } from '../../ui-kit/Heading/HeadingContent';
7
8
  import type { ImageContent } from '../../ui-kit/Img/ImgProps';
8
9
  import type { ListContent } from '../../ui-kit/List/ListContent';
9
- import { Picture } from '../../model/Picture';
10
10
 
11
11
  export interface ProductBlockBenefit {
12
12
  icon?: Picture;
@@ -57,5 +57,5 @@ export interface ProductBlockContent extends ProductBlockInnerContent {
57
57
  /** @title Хлебные крошки */
58
58
  breadcrumbs?: LinkProps[];
59
59
  /** @title Кнопка возврата */
60
- backwardButton?: ButtonWithIconProps;
60
+ backwardButton?: BackwardButtonProps;
61
61
  }
@@ -1,10 +1,10 @@
1
1
  import type { BlockVersion } from '../../model/BlockVersion';
2
2
  import { Button } from '../../ui-kit/Button/Button';
3
- import type { ButtonWithIconProps } from '../../ui-kit/Button/ButtonProps';
3
+ import type { BackwardButtonProps } from '../../ui-kit/Button/ButtonProps';
4
4
  import { Img } from '../../ui-kit/Img/Img';
5
5
 
6
6
  export function renderBackwardButton(
7
- button: ButtonWithIconProps,
7
+ button: BackwardButtonProps,
8
8
  version: BlockVersion,
9
9
  className: string,
10
10
  ) {
@@ -1,6 +1,7 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import type { BlockVersion } from '../../model/BlockVersion';
3
3
  import type { UniBlockProps } from '../../types';
4
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
4
5
  import { ButtonSection } from '../../ui-kit/Button/ButtonSection';
5
6
  import { Description } from '../../ui-kit/Description/Description';
6
7
  import { Heading } from '../../ui-kit/Heading/Heading';
@@ -28,14 +29,15 @@ export const ProductTile = JSX<ProductTileProps>(
28
29
  buttons,
29
30
  image,
30
31
  version = 'primary',
31
- anchor = null,
32
+ ...rest
32
33
  }) => {
33
34
  return (
34
- <section
35
+ <BlockWrapper
36
+ context={context}
35
37
  className={`bg-white overflow-hidden text-primary-text font-sans p-9 box-border min-h-[364px] relative justify-between grid ${className} ${
36
38
  productTileStyleMap[version]
37
39
  } ${getTileRightPadding(className)} ${getTileMinHeight(className)} `}
38
- id={anchor}
40
+ {...rest}
39
41
  >
40
42
  <div className="z-[1]">
41
43
  {title ? (
@@ -62,7 +64,7 @@ export const ProductTile = JSX<ProductTileProps>(
62
64
  />
63
65
  ) : null}
64
66
  {image?.src ? <Img className="absolute right-0 bottom-0" image={image} /> : null}
65
- </section>
67
+ </BlockWrapper>
66
68
  );
67
69
  },
68
70
  );
@@ -1,5 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import type { BlockVersion } from '../../model/BlockVersion';
3
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
3
4
  import type { UniBlockProps } from '../../types';
4
5
  import { ButtonSection } from '../../ui-kit/Button/ButtonSection';
5
6
  import { Heading } from '../../ui-kit/Heading/Heading';
@@ -25,14 +26,15 @@ export const PromoTile = JSX<PromoTileProps>(
25
26
  description,
26
27
  buttons = [],
27
28
  version = 'primary',
28
- anchor = null,
29
+ ...rest
29
30
  }) => {
30
31
  return (
31
- <section
32
+ <BlockWrapper
33
+ context={context}
32
34
  className={`bg-white text-primary-text font-sans p-9 box-border ${className} ${
33
35
  promoTileStyleMap[version]
34
36
  } ${getTileRightPadding(className)} ${getTileMinHeight(className)} `}
35
- id={anchor}
37
+ {...rest}
36
38
  >
37
39
  <BaseTile
38
40
  context={context}
@@ -56,7 +58,7 @@ export const PromoTile = JSX<PromoTileProps>(
56
58
  <div className="text-base">{description}</div>
57
59
  </div>
58
60
  </BaseTile>
59
- </section>
61
+ </BlockWrapper>
60
62
  );
61
63
  },
62
64
  );
@@ -1,9 +1,10 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
2
3
  import type { UniBlockProps } from '../../types';
4
+ import { renderArrows } from '../../ui-kit/Button/renderArrows';
3
5
  import { Heading } from '../../ui-kit/Heading/Heading';
4
6
  import { RecommendationCard } from './RecommendationCard';
5
7
  import type { RecommendationCardTypes, RecommendationContent } from './RecommendationContent';
6
- import { renderArrows } from '../../ui-kit/Button/renderArrows';
7
8
 
8
9
  const BLUR_BLOCK_CLASSES = 'absolute top-0 bottom-0 w-[84px]';
9
10
  const CARD_FULL_VIEW_COUNT = 2;
@@ -12,7 +13,7 @@ const CARD_SHIFT = 525;
12
13
  export interface RecommendationProps extends RecommendationContent, UniBlockProps {}
13
14
 
14
15
  export const Recommendation = JSX<RecommendationProps>(
15
- ({ context, recommendations = [], className = '', title, version, anchor = null }) => {
16
+ ({ context, recommendations = [], className = '', title, version, ...rest }) => {
16
17
  const [activeCardIndex, setActiveCardIndex] = context.useState(0);
17
18
 
18
19
  const blockClassName =
@@ -20,9 +21,10 @@ export const Recommendation = JSX<RecommendationProps>(
20
21
  const cardClassName = version === 'secondary' ? 'border-white/50' : 'border-main-stroke';
21
22
 
22
23
  return (
23
- <section
24
+ <BlockWrapper
25
+ context={context}
24
26
  className={`relative font-sans p-9 overflow-hidden text-center ${blockClassName} ${className}`}
25
- id={anchor}
27
+ {...rest}
26
28
  >
27
29
  {title ? <Heading headingType="h2" className="mb-6" title={title} /> : null}
28
30
  <div
@@ -51,7 +53,7 @@ export const Recommendation = JSX<RecommendationProps>(
51
53
  version === 'secondary' ? 'bg-opacity-to-main' : 'bg-opacity-to-white'
52
54
  }`}
53
55
  />
54
- </section>
56
+ </BlockWrapper>
55
57
  );
56
58
  },
57
59
  );
@@ -1,5 +1,6 @@
1
1
  import { JSX } from '@redneckz/uni-jsx';
2
2
  import type { BlockVersion } from '../../model/BlockVersion';
3
+ import { BlockWrapper } from '../../ui-kit/BlockWrapper';
3
4
  import type { UniBlockProps } from '../../types';
4
5
  import { ButtonSection } from '../../ui-kit/Button/ButtonSection';
5
6
  import { Description } from '../../ui-kit/Description/Description';
@@ -33,17 +34,16 @@ export const Tile = JSX<TileProps>((props) => {
33
34
  isDotted = true,
34
35
  className = '',
35
36
  version = 'primary',
36
- role,
37
- anchor = null,
37
+ ...rest
38
38
  } = props;
39
39
 
40
40
  return (
41
- <section
41
+ <BlockWrapper
42
+ context={context}
42
43
  className={`overflow-hidden font-sans p-9 pr-3 box-border ${className} ${
43
44
  tileStyleMap[version]
44
45
  } ${getTileRightPadding(className)} ${getTileMinHeight(className)} `}
45
- role={role}
46
- id={anchor}
46
+ {...rest}
47
47
  >
48
48
  <BaseTile
49
49
  context={context}
@@ -78,7 +78,7 @@ export const Tile = JSX<TileProps>((props) => {
78
78
  {children}
79
79
  {renderList(items, version, isDotted)}
80
80
  </BaseTile>
81
- </section>
81
+ </BlockWrapper>
82
82
  );
83
83
  });
84
84
 
@@ -1,8 +1,16 @@
1
1
  import { useCallback, useRef } from 'react';
2
- import { IntersectionObserverComponent } from '../components/ContentPage/ContentPageContext';
2
+ import type { IntersectionObserverComponent } from '../components/ContentPage/ContentPageContext';
3
3
 
4
4
  export const IntersectionObserverTag: IntersectionObserverComponent = (props) => {
5
- const { Tag, observerCallback, observerOptions, children, ...rest } = props;
5
+ const {
6
+ Tag,
7
+ observerCallback,
8
+ observerOptions,
9
+ className = '',
10
+ anchor = null,
11
+ children,
12
+ ...rest
13
+ } = props;
6
14
 
7
15
  const intersectionObserver = useRef<IntersectionObserver>();
8
16
  const ref = useCallback(
@@ -16,7 +24,7 @@ export const IntersectionObserverTag: IntersectionObserverComponent = (props) =>
16
24
  );
17
25
 
18
26
  return (
19
- <Tag ref={ref} {...rest}>
27
+ <Tag ref={ref} className={className} id={anchor} {...rest}>
20
28
  {children}
21
29
  </Tag>
22
30
  );
@@ -1,5 +1,4 @@
1
1
  import { setup } from '@redneckz/uni-jsx';
2
-
3
2
  import { useEffect, useState } from 'react';
4
3
  import { jsx, jsxs } from 'react/jsx-runtime';
5
4
  import { DaDataAPI } from '../api/DaDataAPI';
@@ -0,0 +1,33 @@
1
+ import { JSX } from '@redneckz/uni-jsx';
2
+ import { ContentPageContext } from '../components/ContentPage/ContentPageContext';
3
+ import { changeHashOnObserve } from '../utils/changeHashOnObserve';
4
+
5
+ interface BlockWrapperProps {
6
+ context: ContentPageContext;
7
+ className?: string;
8
+ anchor?: string;
9
+ Tag?: string;
10
+ }
11
+
12
+ export const BlockWrapper = JSX<BlockWrapperProps>(
13
+ ({ anchor, className, context, children, Tag = 'section', ...rest }) => {
14
+ const { IntersectionObserverTag } = context;
15
+
16
+ return anchor ? (
17
+ <IntersectionObserverTag
18
+ Tag={Tag}
19
+ className={className}
20
+ observerCallback={changeHashOnObserve}
21
+ observerOptions={{ threshold: 1 }} // Lower threshold when hash change needed
22
+ anchor={anchor}
23
+ {...rest}
24
+ >
25
+ {children}
26
+ </IntersectionObserverTag>
27
+ ) : (
28
+ <Tag className={className} {...rest}>
29
+ {children}
30
+ </Tag>
31
+ );
32
+ },
33
+ );