@gravity-ui/page-constructor 6.2.0-beta.1 → 7.0.0-beta.2

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 (965) hide show
  1. package/README.md +10 -0
  2. package/build/cjs/blocks/Banner/Banner.js +2 -2
  3. package/build/cjs/blocks/Banner/Banner.js.map +1 -1
  4. package/build/cjs/blocks/Banner/schema.js +8 -20
  5. package/build/cjs/blocks/Banner/schema.js.map +1 -1
  6. package/build/cjs/blocks/CardLayout/CardLayout.js +2 -2
  7. package/build/cjs/blocks/CardLayout/CardLayout.js.map +1 -1
  8. package/build/cjs/blocks/CardLayout/schema.js +4 -19
  9. package/build/cjs/blocks/CardLayout/schema.js.map +1 -1
  10. package/build/cjs/blocks/Companies/Companies.js +1 -1
  11. package/build/cjs/blocks/Companies/Companies.js.map +1 -1
  12. package/build/cjs/blocks/Companies/schema.js +4 -10
  13. package/build/cjs/blocks/Companies/schema.js.map +1 -1
  14. package/build/cjs/blocks/ContentLayout/ContentLayout.js +1 -1
  15. package/build/cjs/blocks/ContentLayout/ContentLayout.js.map +1 -1
  16. package/build/cjs/blocks/ContentLayout/schema.js +2 -7
  17. package/build/cjs/blocks/ContentLayout/schema.js.map +1 -1
  18. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.css +11 -6
  19. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js +3 -5
  20. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  21. package/build/cjs/blocks/ExtendedFeatures/schema.js +1 -7
  22. package/build/cjs/blocks/ExtendedFeatures/schema.js.map +1 -1
  23. package/build/cjs/blocks/FilterBlock/schema.js +3 -13
  24. package/build/cjs/blocks/FilterBlock/schema.js.map +1 -1
  25. package/build/cjs/blocks/Form/Form.js +4 -3
  26. package/build/cjs/blocks/Form/Form.js.map +1 -1
  27. package/build/cjs/blocks/Form/schema.js +6 -14
  28. package/build/cjs/blocks/Form/schema.js.map +1 -1
  29. package/build/cjs/blocks/Header/Header.css +15 -10
  30. package/build/cjs/blocks/Header/Header.js +11 -9
  31. package/build/cjs/blocks/Header/Header.js.map +1 -1
  32. package/build/cjs/blocks/Header/schema.js +2 -9
  33. package/build/cjs/blocks/Header/schema.js.map +1 -1
  34. package/build/cjs/blocks/HeaderSlider/HeaderSlider.css +0 -10
  35. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js +4 -3
  36. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  37. package/build/cjs/blocks/HeaderSlider/schema.d.ts +9 -1
  38. package/build/cjs/blocks/HeaderSlider/schema.js +5 -8
  39. package/build/cjs/blocks/HeaderSlider/schema.js.map +1 -1
  40. package/build/cjs/blocks/Icons/Icons.js +2 -2
  41. package/build/cjs/blocks/Icons/Icons.js.map +1 -1
  42. package/build/cjs/blocks/Icons/schema.js +6 -17
  43. package/build/cjs/blocks/Icons/schema.js.map +1 -1
  44. package/build/cjs/blocks/Info/Info.js +4 -8
  45. package/build/cjs/blocks/Info/Info.js.map +1 -1
  46. package/build/cjs/blocks/Info/schema.js +4 -14
  47. package/build/cjs/blocks/Info/schema.js.map +1 -1
  48. package/build/cjs/blocks/Map/Map.js +3 -2
  49. package/build/cjs/blocks/Map/Map.js.map +1 -1
  50. package/build/cjs/blocks/Map/schema.js +1 -4
  51. package/build/cjs/blocks/Map/schema.js.map +1 -1
  52. package/build/cjs/blocks/Media/Media.js +1 -1
  53. package/build/cjs/blocks/Media/Media.js.map +1 -1
  54. package/build/cjs/blocks/Media/schema.js +9 -24
  55. package/build/cjs/blocks/Media/schema.js.map +1 -1
  56. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +1 -1
  57. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
  58. package/build/cjs/blocks/PromoFeaturesBlock/schema.js +2 -8
  59. package/build/cjs/blocks/PromoFeaturesBlock/schema.js.map +1 -1
  60. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.css +43 -21
  61. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +4 -2
  62. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
  63. package/build/cjs/blocks/Questions/schema.js +2 -6
  64. package/build/cjs/blocks/Questions/schema.js.map +1 -1
  65. package/build/cjs/blocks/Share/Share.js +5 -1
  66. package/build/cjs/blocks/Share/Share.js.map +1 -1
  67. package/build/cjs/blocks/Share/schema.js +3 -7
  68. package/build/cjs/blocks/Share/schema.js.map +1 -1
  69. package/build/cjs/blocks/Slider/Arrow/Arrow.css +22 -21
  70. package/build/cjs/blocks/Slider/Arrow/Arrow.d.ts +4 -2
  71. package/build/cjs/blocks/Slider/Arrow/Arrow.js +1 -1
  72. package/build/cjs/blocks/Slider/Arrow/Arrow.js.map +1 -1
  73. package/build/cjs/blocks/Slider/Slider.css +549 -329
  74. package/build/cjs/blocks/Slider/Slider.d.ts +6 -5
  75. package/build/cjs/blocks/Slider/Slider.js +31 -272
  76. package/build/cjs/blocks/Slider/Slider.js.map +1 -1
  77. package/build/cjs/blocks/Slider/i18n/en.json +1 -1
  78. package/build/cjs/blocks/Slider/i18n/ru.json +1 -1
  79. package/build/cjs/blocks/Slider/models.d.ts +2 -2
  80. package/build/cjs/blocks/Slider/models.js +1 -1
  81. package/build/cjs/blocks/Slider/models.js.map +1 -1
  82. package/build/cjs/blocks/Slider/schema.d.ts +18 -1
  83. package/build/cjs/blocks/Slider/schema.js +10 -6
  84. package/build/cjs/blocks/Slider/schema.js.map +1 -1
  85. package/build/{esm/blocks/SliderNew → cjs/blocks/Slider}/useSlider.d.ts +1 -0
  86. package/build/cjs/blocks/{SliderNew → Slider}/useSlider.js +6 -1
  87. package/build/cjs/blocks/Slider/useSlider.js.map +1 -0
  88. package/build/cjs/blocks/Slider/useSliderPagination.js.map +1 -0
  89. package/build/cjs/blocks/Slider/utils.d.ts +7 -28
  90. package/build/cjs/blocks/Slider/utils.js +27 -112
  91. package/build/cjs/blocks/Slider/utils.js.map +1 -1
  92. package/build/cjs/blocks/{SliderNew → SliderOld}/Arrow/Arrow.css +15 -12
  93. package/build/cjs/blocks/SliderOld/Arrow/Arrow.d.ts +9 -0
  94. package/build/cjs/blocks/SliderOld/Arrow/Arrow.js +11 -0
  95. package/build/cjs/blocks/SliderOld/Arrow/Arrow.js.map +1 -0
  96. package/build/cjs/blocks/SliderOld/SliderOld.css +703 -0
  97. package/build/cjs/blocks/SliderOld/SliderOld.d.ts +17 -0
  98. package/build/cjs/blocks/SliderOld/SliderOld.js +292 -0
  99. package/build/cjs/blocks/SliderOld/SliderOld.js.map +1 -0
  100. package/build/cjs/blocks/{SliderNew → SliderOld}/i18n/en.json +1 -1
  101. package/build/cjs/blocks/{SliderNew → SliderOld}/i18n/index.d.ts +1 -1
  102. package/build/cjs/blocks/{SliderNew → SliderOld}/i18n/index.js +1 -1
  103. package/build/cjs/blocks/{SliderNew → SliderOld}/i18n/index.js.map +1 -1
  104. package/build/cjs/blocks/{SliderNew → SliderOld}/i18n/ru.json +1 -1
  105. package/build/cjs/blocks/{SliderNew → SliderOld}/models.d.ts +2 -2
  106. package/build/cjs/blocks/{SliderNew → SliderOld}/models.js +1 -1
  107. package/build/cjs/blocks/{SliderNew → SliderOld}/models.js.map +1 -1
  108. package/build/cjs/blocks/{SliderNew → SliderOld}/schema.d.ts +5 -21
  109. package/build/cjs/blocks/{SliderNew → SliderOld}/schema.js +6 -19
  110. package/build/cjs/blocks/SliderOld/schema.js.map +1 -0
  111. package/build/cjs/blocks/SliderOld/utils.d.ts +37 -0
  112. package/build/cjs/blocks/SliderOld/utils.js +126 -0
  113. package/build/cjs/blocks/SliderOld/utils.js.map +1 -0
  114. package/build/cjs/blocks/Table/Table.css +4 -3
  115. package/build/cjs/blocks/Table/Table.js +3 -1
  116. package/build/cjs/blocks/Table/Table.js.map +1 -1
  117. package/build/cjs/blocks/Table/schema.js +10 -22
  118. package/build/cjs/blocks/Table/schema.js.map +1 -1
  119. package/build/cjs/blocks/Tabs/Tabs.js +18 -16
  120. package/build/cjs/blocks/Tabs/Tabs.js.map +1 -1
  121. package/build/cjs/blocks/Tabs/schema.js +9 -24
  122. package/build/cjs/blocks/Tabs/schema.js.map +1 -1
  123. package/build/cjs/blocks/index.d.ts +2 -0
  124. package/build/cjs/blocks/index.js +3 -1
  125. package/build/cjs/blocks/index.js.map +1 -1
  126. package/build/cjs/blocks/validators.d.ts +1 -0
  127. package/build/cjs/blocks/validators.js +1 -0
  128. package/build/cjs/blocks/validators.js.map +1 -1
  129. package/build/cjs/components/Author/Author.js +1 -1
  130. package/build/cjs/components/Author/Author.js.map +1 -1
  131. package/build/cjs/components/Author/schema.js +1 -5
  132. package/build/cjs/components/Author/schema.js.map +1 -1
  133. package/build/cjs/components/BackLink/BackLink.js +1 -1
  134. package/build/cjs/components/BackLink/BackLink.js.map +1 -1
  135. package/build/cjs/components/BackgroundImage/BackgroundImage.js +1 -1
  136. package/build/cjs/components/BackgroundImage/BackgroundImage.js.map +1 -1
  137. package/build/cjs/components/BackgroundMedia/BackgroundMedia.js +4 -4
  138. package/build/cjs/components/BackgroundMedia/BackgroundMedia.js.map +1 -1
  139. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js +1 -1
  140. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  141. package/build/cjs/components/Button/Button.js +5 -9
  142. package/build/cjs/components/Button/Button.js.map +1 -1
  143. package/build/cjs/components/Button/utils.js +2 -2
  144. package/build/cjs/components/Button/utils.js.map +1 -1
  145. package/build/cjs/components/Buttons/Buttons.js +1 -4
  146. package/build/cjs/components/Buttons/Buttons.js.map +1 -1
  147. package/build/cjs/components/CardBase/CardBase.js +2 -6
  148. package/build/cjs/components/CardBase/CardBase.js.map +1 -1
  149. package/build/cjs/components/ContentList/ContentList.css +10 -6
  150. package/build/cjs/components/ContentList/ContentList.js +2 -2
  151. package/build/cjs/components/ContentList/ContentList.js.map +1 -1
  152. package/build/cjs/components/ContentList/ContentListItemIcon.js +1 -1
  153. package/build/cjs/components/ContentList/ContentListItemIcon.js.map +1 -1
  154. package/build/cjs/components/DefaultVideo/DefaultVideo.js +4 -3
  155. package/build/cjs/components/DefaultVideo/DefaultVideo.js.map +1 -1
  156. package/build/cjs/components/FileLink/FileLink.js +2 -2
  157. package/build/cjs/components/FileLink/FileLink.js.map +1 -1
  158. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js +17 -12
  159. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  160. package/build/cjs/components/FullscreenImage/FullscreenImage.css +96 -18
  161. package/build/cjs/components/FullscreenImage/FullscreenImage.d.ts +5 -0
  162. package/build/cjs/components/FullscreenImage/FullscreenImage.js +14 -2
  163. package/build/cjs/components/FullscreenImage/FullscreenImage.js.map +1 -1
  164. package/build/cjs/components/HTML/HTML.d.ts +15 -8
  165. package/build/cjs/components/HTML/HTML.js +15 -10
  166. package/build/cjs/components/HTML/HTML.js.map +1 -1
  167. package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +1 -1
  168. package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
  169. package/build/cjs/components/IconWrapper/IconWrapper.js +2 -2
  170. package/build/cjs/components/IconWrapper/IconWrapper.js.map +1 -1
  171. package/build/cjs/components/Image/schema.js +12 -40
  172. package/build/cjs/components/Image/schema.js.map +1 -1
  173. package/build/cjs/components/ImageBase/ImageBase.js +4 -3
  174. package/build/cjs/components/ImageBase/ImageBase.js.map +1 -1
  175. package/build/cjs/components/InnerForm/InnerForm.js +5 -5
  176. package/build/cjs/components/InnerForm/InnerForm.js.map +1 -1
  177. package/build/cjs/components/Link/Link.js +1 -1
  178. package/build/cjs/components/Link/Link.js.map +1 -1
  179. package/build/cjs/components/Links/Links.js +1 -4
  180. package/build/cjs/components/Links/Links.js.map +1 -1
  181. package/build/cjs/components/Map/Map.js +2 -2
  182. package/build/cjs/components/Map/Map.js.map +1 -1
  183. package/build/cjs/components/Map/YMap/YMap.js +5 -6
  184. package/build/cjs/components/Map/YMap/YMap.js.map +1 -1
  185. package/build/cjs/components/Map/YMap/YandexMap.js +2 -1
  186. package/build/cjs/components/Map/YMap/YandexMap.js.map +1 -1
  187. package/build/cjs/components/Map/YMap/YandexMapApiLoader.js +1 -2
  188. package/build/cjs/components/Map/YMap/YandexMapApiLoader.js.map +1 -1
  189. package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js +1 -1
  190. package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
  191. package/build/cjs/components/Media/Image/Image.d.ts +1 -0
  192. package/build/cjs/components/Media/Image/Image.js +9 -7
  193. package/build/cjs/components/Media/Image/Image.js.map +1 -1
  194. package/build/cjs/components/Media/Media.css +4 -0
  195. package/build/cjs/components/Media/Media.d.ts +1 -0
  196. package/build/cjs/components/Media/Media.js +8 -15
  197. package/build/cjs/components/Media/Media.js.map +1 -1
  198. package/build/cjs/components/MediaBase/MediaBase.js +3 -3
  199. package/build/cjs/components/MediaBase/MediaBase.js.map +1 -1
  200. package/build/cjs/components/MediaBase/MediaBaseContent.js +1 -1
  201. package/build/cjs/components/MediaBase/MediaBaseContent.js.map +1 -1
  202. package/build/cjs/components/MetaInfo/MetaInfo.css +1 -1
  203. package/build/cjs/components/MetaInfo/MetaInfo.js +1 -1
  204. package/build/cjs/components/MetaInfo/MetaInfo.js.map +1 -1
  205. package/build/cjs/components/OutsideClick/OutsideClick.js +12 -9
  206. package/build/cjs/components/OutsideClick/OutsideClick.js.map +1 -1
  207. package/build/cjs/components/OverflowScroller/OverflowScroller.js +49 -46
  208. package/build/cjs/components/OverflowScroller/OverflowScroller.js.map +1 -1
  209. package/build/cjs/components/ReactPlayer/ReactPlayer.js +12 -10
  210. package/build/cjs/components/ReactPlayer/ReactPlayer.js.map +1 -1
  211. package/build/cjs/components/ReactPlayer/utils.js +2 -1
  212. package/build/cjs/components/ReactPlayer/utils.js.map +1 -1
  213. package/build/cjs/components/Table/Table.css +2 -1
  214. package/build/cjs/components/Table/Table.js +4 -2
  215. package/build/cjs/components/Table/Table.js.map +1 -1
  216. package/build/cjs/components/Title/Title.js +2 -2
  217. package/build/cjs/components/Title/Title.js.map +1 -1
  218. package/build/cjs/components/Title/TitleItem.css +7 -4
  219. package/build/cjs/components/Title/TitleItem.js +4 -2
  220. package/build/cjs/components/Title/TitleItem.js.map +1 -1
  221. package/build/cjs/components/VideoBlock/VideoBlock.js +2 -5
  222. package/build/cjs/components/VideoBlock/VideoBlock.js.map +1 -1
  223. package/build/cjs/components/YFMWrapper/YFMWrapper.d.ts +4 -2
  224. package/build/cjs/components/YFMWrapper/YFMWrapper.js +4 -3
  225. package/build/cjs/components/YFMWrapper/YFMWrapper.js.map +1 -1
  226. package/build/cjs/components/YandexForm/YandexForm.js +3 -3
  227. package/build/cjs/components/YandexForm/YandexForm.js.map +1 -1
  228. package/build/cjs/components/YandexForm/schema.js +3 -7
  229. package/build/cjs/components/YandexForm/schema.js.map +1 -1
  230. package/build/cjs/constructor-items.d.ts +2 -2
  231. package/build/cjs/constructor-items.js +2 -4
  232. package/build/cjs/constructor-items.js.map +1 -1
  233. package/build/cjs/containers/Loadable/Loadable.js +3 -3
  234. package/build/cjs/containers/Loadable/Loadable.js.map +1 -1
  235. package/build/cjs/containers/PageConstructor/PageConstructor.js +7 -14
  236. package/build/cjs/containers/PageConstructor/PageConstructor.js.map +1 -1
  237. package/build/cjs/containers/PageConstructor/Provider.js +1 -1
  238. package/build/cjs/containers/PageConstructor/Provider.js.map +1 -1
  239. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
  240. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  241. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -2
  242. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
  243. package/build/cjs/context/theme/withTheme.js +9 -7
  244. package/build/cjs/context/theme/withTheme.js.map +1 -1
  245. package/build/cjs/customization/BlockDecoration.js +5 -3
  246. package/build/cjs/customization/BlockDecoration.js.map +1 -1
  247. package/build/cjs/editor/components/AddBlock/AddBlock.js +8 -6
  248. package/build/cjs/editor/components/AddBlock/AddBlock.js.map +1 -1
  249. package/build/cjs/editor/components/BlockForm/BlockForm.js +4 -9
  250. package/build/cjs/editor/components/BlockForm/BlockForm.js.map +1 -1
  251. package/build/cjs/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js +4 -4
  252. package/build/cjs/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js.map +1 -1
  253. package/build/cjs/editor/components/EditBlock/EditBlock.js +2 -2
  254. package/build/cjs/editor/components/EditBlock/EditBlock.js.map +1 -1
  255. package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js +5 -2
  256. package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  257. package/build/cjs/editor/components/Layout/Layout.js +3 -3
  258. package/build/cjs/editor/components/Layout/Layout.js.map +1 -1
  259. package/build/cjs/editor/components/PageSettings/PageSettings.js +2 -2
  260. package/build/cjs/editor/components/PageSettings/PageSettings.js.map +1 -1
  261. package/build/cjs/editor/containers/Editor/Editor.js +1 -1
  262. package/build/cjs/editor/containers/Editor/Editor.js.map +1 -1
  263. package/build/cjs/editor/containers/Editor/hooks/useCode.js +4 -2
  264. package/build/cjs/editor/containers/Editor/hooks/useCode.js.map +1 -1
  265. package/build/cjs/editor/containers/Editor/hooks/useEditorState.js +7 -10
  266. package/build/cjs/editor/containers/Editor/hooks/useEditorState.js.map +1 -1
  267. package/build/cjs/editor/containers/Form/Form.js +2 -5
  268. package/build/cjs/editor/containers/Form/Form.js.map +1 -1
  269. package/build/cjs/editor/data/index.js +1 -4
  270. package/build/cjs/editor/data/index.js.map +1 -1
  271. package/build/cjs/editor/data/previews/default-preview.js +1 -1
  272. package/build/cjs/editor/data/previews/default-preview.js.map +1 -1
  273. package/build/cjs/editor/data/previews/header-block.js +1 -1
  274. package/build/cjs/editor/data/previews/header-block.js.map +1 -1
  275. package/build/cjs/editor/data/templates/{slider-new-block.json → slider-old-block.json} +2 -2
  276. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +13 -15
  277. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  278. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js +10 -8
  279. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  280. package/build/cjs/editor/dynamic-forms-custom/parser/index.js +120 -150
  281. package/build/cjs/editor/dynamic-forms-custom/parser/index.js.map +1 -1
  282. package/build/cjs/editor/dynamic-forms-custom/parser/views.js +4 -2
  283. package/build/cjs/editor/dynamic-forms-custom/parser/views.js.map +1 -1
  284. package/build/cjs/editor/icons/Tablet.js +1 -1
  285. package/build/cjs/editor/icons/Tablet.js.map +1 -1
  286. package/build/cjs/editor/store/main/index.js +4 -7
  287. package/build/cjs/editor/store/main/index.js.map +1 -1
  288. package/build/cjs/editor/store/main/reducer.js +3 -17
  289. package/build/cjs/editor/store/main/reducer.js.map +1 -1
  290. package/build/cjs/editor/store/main/utils.js +1 -1
  291. package/build/cjs/editor/store/main/utils.js.map +1 -1
  292. package/build/cjs/editor/store/settings/reducer.js +4 -16
  293. package/build/cjs/editor/store/settings/reducer.js.map +1 -1
  294. package/build/cjs/editor/utils/code.js +2 -4
  295. package/build/cjs/editor/utils/code.js.map +1 -1
  296. package/build/cjs/editor/utils/index.js +1 -7
  297. package/build/cjs/editor/utils/index.js.map +1 -1
  298. package/build/cjs/editor/widget/index.js +8 -8
  299. package/build/cjs/editor/widget/index.js.map +1 -1
  300. package/build/cjs/grid/Col/Col.js +1 -1
  301. package/build/cjs/grid/Col/Col.js.map +1 -1
  302. package/build/cjs/hooks/useAnalytics.js +1 -4
  303. package/build/cjs/hooks/useAnalytics.js.map +1 -1
  304. package/build/cjs/icons/BrandIconDark.js +1 -1
  305. package/build/cjs/icons/BrandIconDark.js.map +1 -1
  306. package/build/cjs/icons/BrandIconLight.js +1 -1
  307. package/build/cjs/icons/BrandIconLight.js.map +1 -1
  308. package/build/cjs/icons/BrandName.js +1 -1
  309. package/build/cjs/icons/BrandName.js.map +1 -1
  310. package/build/cjs/icons/Chevron.js +1 -1
  311. package/build/cjs/icons/Chevron.js.map +1 -1
  312. package/build/cjs/icons/Facebook.js +1 -1
  313. package/build/cjs/icons/Facebook.js.map +1 -1
  314. package/build/cjs/icons/Github.js +1 -1
  315. package/build/cjs/icons/Github.js.map +1 -1
  316. package/build/cjs/icons/Linkedin.js +1 -1
  317. package/build/cjs/icons/Linkedin.js.map +1 -1
  318. package/build/cjs/icons/NavigationArrow.js +1 -1
  319. package/build/cjs/icons/NavigationArrow.js.map +1 -1
  320. package/build/cjs/icons/NavigationChevron.js +1 -1
  321. package/build/cjs/icons/NavigationChevron.js.map +1 -1
  322. package/build/cjs/icons/Telegram.js +1 -1
  323. package/build/cjs/icons/Telegram.js.map +1 -1
  324. package/build/cjs/icons/Twitter.js +1 -1
  325. package/build/cjs/icons/Twitter.js.map +1 -1
  326. package/build/cjs/icons/Vk.js +1 -1
  327. package/build/cjs/icons/Vk.js.map +1 -1
  328. package/build/cjs/models/common.d.ts +1 -0
  329. package/build/cjs/models/common.js.map +1 -1
  330. package/build/cjs/models/constructor-items/blocks.d.ts +17 -15
  331. package/build/cjs/models/constructor-items/blocks.js +3 -2
  332. package/build/cjs/models/constructor-items/blocks.js.map +1 -1
  333. package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
  334. package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
  335. package/build/cjs/navigation/components/Logo/Logo.js +5 -4
  336. package/build/cjs/navigation/components/Logo/Logo.js.map +1 -1
  337. package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js +3 -2
  338. package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
  339. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js +5 -7
  340. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  341. package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js +1 -1
  342. package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
  343. package/build/cjs/navigation/components/NavigationItem/components/GithubButton/GithubButton.js +3 -2
  344. package/build/cjs/navigation/components/NavigationItem/components/GithubButton/GithubButton.js.map +1 -1
  345. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +1 -1
  346. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
  347. package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js +3 -2
  348. package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js.map +1 -1
  349. package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +4 -4
  350. package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
  351. package/build/cjs/navigation/components/NavigationList/NavigationList.js +4 -1
  352. package/build/cjs/navigation/components/NavigationList/NavigationList.js.map +1 -1
  353. package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js +3 -2
  354. package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
  355. package/build/cjs/navigation/components/SocialIcon/SocialIcon.js +1 -1
  356. package/build/cjs/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
  357. package/build/cjs/navigation/components/Standalone/index.js +1 -1
  358. package/build/cjs/navigation/components/Standalone/index.js.map +1 -1
  359. package/build/cjs/navigation/hooks/useActiveNavItem.js +1 -1
  360. package/build/cjs/navigation/hooks/useActiveNavItem.js.map +1 -1
  361. package/build/cjs/navigation/schema.js +6 -19
  362. package/build/cjs/navigation/schema.js.map +1 -1
  363. package/build/cjs/navigation/utils.js +1 -1
  364. package/build/cjs/navigation/utils.js.map +1 -1
  365. package/build/cjs/schema/constants.js +4 -33
  366. package/build/cjs/schema/constants.js.map +1 -1
  367. package/build/cjs/schema/index.js +6 -23
  368. package/build/cjs/schema/index.js.map +1 -1
  369. package/build/cjs/schema/validators/blocks.d.ts +2 -2
  370. package/build/cjs/schema/validators/blocks.js +2 -2
  371. package/build/cjs/schema/validators/blocks.js.map +1 -1
  372. package/build/cjs/schema/validators/common.js +31 -77
  373. package/build/cjs/schema/validators/common.js.map +1 -1
  374. package/build/cjs/schema/validators/utils.js +2 -9
  375. package/build/cjs/schema/validators/utils.js.map +1 -1
  376. package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js +1 -1
  377. package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
  378. package/build/cjs/sub-blocks/BackgroundCard/schema.js +8 -23
  379. package/build/cjs/sub-blocks/BackgroundCard/schema.js.map +1 -1
  380. package/build/cjs/sub-blocks/BannerCard/BannerCard.css +14 -8
  381. package/build/cjs/sub-blocks/BannerCard/BannerCard.js +3 -1
  382. package/build/cjs/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  383. package/build/cjs/sub-blocks/BasicCard/BasicCard.js +2 -2
  384. package/build/cjs/sub-blocks/BasicCard/BasicCard.js.map +1 -1
  385. package/build/cjs/sub-blocks/BasicCard/schema.js +6 -17
  386. package/build/cjs/sub-blocks/BasicCard/schema.js.map +1 -1
  387. package/build/cjs/sub-blocks/Content/Content.css +27 -25
  388. package/build/cjs/sub-blocks/Content/Content.js +1 -1
  389. package/build/cjs/sub-blocks/Content/Content.js.map +1 -1
  390. package/build/cjs/sub-blocks/Content/schema.js +3 -10
  391. package/build/cjs/sub-blocks/Content/schema.js.map +1 -1
  392. package/build/cjs/sub-blocks/Divider/schema.js +2 -6
  393. package/build/cjs/sub-blocks/Divider/schema.js.map +1 -1
  394. package/build/cjs/sub-blocks/HubspotForm/index.js +3 -3
  395. package/build/cjs/sub-blocks/HubspotForm/index.js.map +1 -1
  396. package/build/cjs/sub-blocks/HubspotForm/loadHubspotScript.js +2 -1
  397. package/build/cjs/sub-blocks/HubspotForm/loadHubspotScript.js.map +1 -1
  398. package/build/cjs/sub-blocks/HubspotForm/schema.js +5 -11
  399. package/build/cjs/sub-blocks/HubspotForm/schema.js.map +1 -1
  400. package/build/cjs/sub-blocks/ImageCard/ImageCard.js +1 -1
  401. package/build/cjs/sub-blocks/ImageCard/ImageCard.js.map +1 -1
  402. package/build/cjs/sub-blocks/ImageCard/schema.js +6 -17
  403. package/build/cjs/sub-blocks/ImageCard/schema.js.map +1 -1
  404. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js +9 -11
  405. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
  406. package/build/cjs/sub-blocks/LayoutItem/schema.js +6 -19
  407. package/build/cjs/sub-blocks/LayoutItem/schema.js.map +1 -1
  408. package/build/cjs/sub-blocks/LayoutItem/utils.js +1 -4
  409. package/build/cjs/sub-blocks/LayoutItem/utils.js.map +1 -1
  410. package/build/cjs/sub-blocks/MediaCard/MediaCard.js +5 -1
  411. package/build/cjs/sub-blocks/MediaCard/MediaCard.js.map +1 -1
  412. package/build/cjs/sub-blocks/MediaCard/schema.js +3 -12
  413. package/build/cjs/sub-blocks/MediaCard/schema.js.map +1 -1
  414. package/build/cjs/sub-blocks/PriceCard/PriceCard.css +2 -1
  415. package/build/cjs/sub-blocks/PriceCard/PriceCard.js +1 -1
  416. package/build/cjs/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  417. package/build/cjs/sub-blocks/PriceCard/schema.js +11 -25
  418. package/build/cjs/sub-blocks/PriceCard/schema.js.map +1 -1
  419. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +2 -1
  420. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  421. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  422. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
  423. package/build/cjs/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js +4 -1
  424. package/build/cjs/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js.map +1 -1
  425. package/build/cjs/sub-blocks/PriceDetailed/schema.js +12 -44
  426. package/build/cjs/sub-blocks/PriceDetailed/schema.js.map +1 -1
  427. package/build/cjs/sub-blocks/Quote/Quote.css +8 -4
  428. package/build/cjs/sub-blocks/Quote/Quote.js +4 -6
  429. package/build/cjs/sub-blocks/Quote/Quote.js.map +1 -1
  430. package/build/cjs/sub-blocks/Quote/schema.js +8 -21
  431. package/build/cjs/sub-blocks/Quote/schema.js.map +1 -1
  432. package/build/cjs/text-transform/common.d.ts +4 -3
  433. package/build/cjs/text-transform/common.js +38 -18
  434. package/build/cjs/text-transform/common.js.map +1 -1
  435. package/build/cjs/text-transform/config.d.ts +5 -2
  436. package/build/cjs/text-transform/config.js +103 -69
  437. package/build/cjs/text-transform/config.js.map +1 -1
  438. package/build/cjs/text-transform/filter.js +1 -4
  439. package/build/cjs/text-transform/filter.js.map +1 -1
  440. package/build/cjs/text-transform/transformers.js +3 -3
  441. package/build/cjs/text-transform/transformers.js.map +1 -1
  442. package/build/cjs/text-transform/utils.js +5 -8
  443. package/build/cjs/text-transform/utils.js.map +1 -1
  444. package/build/cjs/utils/analytics.js +3 -2
  445. package/build/cjs/utils/analytics.js.map +1 -1
  446. package/build/cjs/utils/blocks.d.ts +10 -2
  447. package/build/cjs/utils/blocks.js +9 -3
  448. package/build/cjs/utils/blocks.js.map +1 -1
  449. package/build/cjs/utils/common.js +2 -1
  450. package/build/cjs/utils/common.js.map +1 -1
  451. package/build/cjs/utils/hubspot.js +7 -6
  452. package/build/cjs/utils/hubspot.js.map +1 -1
  453. package/build/cjs/utils/microdata.js +1 -1
  454. package/build/cjs/utils/microdata.js.map +1 -1
  455. package/build/cjs/utils/url.js +5 -10
  456. package/build/cjs/utils/url.js.map +1 -1
  457. package/build/esm/blocks/Banner/Banner.js +3 -2
  458. package/build/esm/blocks/Banner/Banner.js.map +1 -1
  459. package/build/esm/blocks/Banner/schema.js +8 -20
  460. package/build/esm/blocks/Banner/schema.js.map +1 -1
  461. package/build/esm/blocks/CardLayout/CardLayout.js +3 -2
  462. package/build/esm/blocks/CardLayout/CardLayout.js.map +1 -1
  463. package/build/esm/blocks/CardLayout/schema.js +4 -19
  464. package/build/esm/blocks/CardLayout/schema.js.map +1 -1
  465. package/build/esm/blocks/Companies/Companies.js +1 -1
  466. package/build/esm/blocks/Companies/Companies.js.map +1 -1
  467. package/build/esm/blocks/Companies/schema.js +4 -10
  468. package/build/esm/blocks/Companies/schema.js.map +1 -1
  469. package/build/esm/blocks/ContentLayout/ContentLayout.js +1 -1
  470. package/build/esm/blocks/ContentLayout/ContentLayout.js.map +1 -1
  471. package/build/esm/blocks/ContentLayout/schema.js +2 -7
  472. package/build/esm/blocks/ContentLayout/schema.js.map +1 -1
  473. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.css +11 -6
  474. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js +4 -6
  475. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  476. package/build/esm/blocks/ExtendedFeatures/schema.js +1 -7
  477. package/build/esm/blocks/ExtendedFeatures/schema.js.map +1 -1
  478. package/build/esm/blocks/FilterBlock/schema.js +3 -13
  479. package/build/esm/blocks/FilterBlock/schema.js.map +1 -1
  480. package/build/esm/blocks/Form/Form.js +4 -3
  481. package/build/esm/blocks/Form/Form.js.map +1 -1
  482. package/build/esm/blocks/Form/schema.js +6 -14
  483. package/build/esm/blocks/Form/schema.js.map +1 -1
  484. package/build/esm/blocks/Header/Header.css +15 -10
  485. package/build/esm/blocks/Header/Header.js +12 -10
  486. package/build/esm/blocks/Header/Header.js.map +1 -1
  487. package/build/esm/blocks/Header/schema.js +2 -9
  488. package/build/esm/blocks/Header/schema.js.map +1 -1
  489. package/build/esm/blocks/HeaderSlider/HeaderSlider.css +0 -10
  490. package/build/esm/blocks/HeaderSlider/HeaderSlider.js +5 -3
  491. package/build/esm/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  492. package/build/esm/blocks/HeaderSlider/schema.d.ts +9 -1
  493. package/build/esm/blocks/HeaderSlider/schema.js +4 -7
  494. package/build/esm/blocks/HeaderSlider/schema.js.map +1 -1
  495. package/build/esm/blocks/Icons/Icons.js +2 -2
  496. package/build/esm/blocks/Icons/Icons.js.map +1 -1
  497. package/build/esm/blocks/Icons/schema.js +6 -17
  498. package/build/esm/blocks/Icons/schema.js.map +1 -1
  499. package/build/esm/blocks/Info/Info.js +4 -8
  500. package/build/esm/blocks/Info/Info.js.map +1 -1
  501. package/build/esm/blocks/Info/schema.js +4 -14
  502. package/build/esm/blocks/Info/schema.js.map +1 -1
  503. package/build/esm/blocks/Map/Map.js +4 -2
  504. package/build/esm/blocks/Map/Map.js.map +1 -1
  505. package/build/esm/blocks/Map/schema.js +1 -4
  506. package/build/esm/blocks/Map/schema.js.map +1 -1
  507. package/build/esm/blocks/Media/Media.js +1 -1
  508. package/build/esm/blocks/Media/Media.js.map +1 -1
  509. package/build/esm/blocks/Media/schema.js +9 -24
  510. package/build/esm/blocks/Media/schema.js.map +1 -1
  511. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +1 -1
  512. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
  513. package/build/esm/blocks/PromoFeaturesBlock/schema.js +2 -8
  514. package/build/esm/blocks/PromoFeaturesBlock/schema.js.map +1 -1
  515. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.css +43 -21
  516. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +5 -3
  517. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
  518. package/build/esm/blocks/Questions/schema.js +2 -6
  519. package/build/esm/blocks/Questions/schema.js.map +1 -1
  520. package/build/esm/blocks/Share/Share.js +5 -1
  521. package/build/esm/blocks/Share/Share.js.map +1 -1
  522. package/build/esm/blocks/Share/schema.js +3 -7
  523. package/build/esm/blocks/Share/schema.js.map +1 -1
  524. package/build/esm/blocks/Slider/Arrow/Arrow.css +22 -21
  525. package/build/esm/blocks/Slider/Arrow/Arrow.d.ts +4 -2
  526. package/build/esm/blocks/Slider/Arrow/Arrow.js +1 -1
  527. package/build/esm/blocks/Slider/Arrow/Arrow.js.map +1 -1
  528. package/build/esm/blocks/Slider/Slider.css +549 -329
  529. package/build/esm/blocks/Slider/Slider.d.ts +6 -5
  530. package/build/esm/blocks/Slider/Slider.js +32 -273
  531. package/build/esm/blocks/Slider/Slider.js.map +1 -1
  532. package/build/esm/blocks/Slider/i18n/en.json +1 -1
  533. package/build/esm/blocks/Slider/i18n/ru.json +1 -1
  534. package/build/esm/blocks/Slider/models.d.ts +2 -2
  535. package/build/esm/blocks/Slider/models.js +1 -1
  536. package/build/esm/blocks/Slider/models.js.map +1 -1
  537. package/build/esm/blocks/Slider/schema.d.ts +18 -1
  538. package/build/esm/blocks/Slider/schema.js +10 -6
  539. package/build/esm/blocks/Slider/schema.js.map +1 -1
  540. package/build/{cjs/blocks/SliderNew → esm/blocks/Slider}/useSlider.d.ts +1 -0
  541. package/build/esm/blocks/{SliderNew → Slider}/useSlider.js +7 -1
  542. package/build/esm/blocks/Slider/useSlider.js.map +1 -0
  543. package/build/esm/blocks/Slider/useSliderPagination.js.map +1 -0
  544. package/build/esm/blocks/Slider/utils.d.ts +7 -28
  545. package/build/esm/blocks/Slider/utils.js +24 -106
  546. package/build/esm/blocks/Slider/utils.js.map +1 -1
  547. package/build/esm/blocks/{SliderNew → SliderOld}/Arrow/Arrow.css +15 -12
  548. package/build/esm/blocks/SliderOld/Arrow/Arrow.d.ts +10 -0
  549. package/build/esm/blocks/SliderOld/Arrow/Arrow.js +9 -0
  550. package/build/esm/blocks/SliderOld/Arrow/Arrow.js.map +1 -0
  551. package/build/esm/blocks/SliderOld/SliderOld.css +703 -0
  552. package/build/esm/blocks/SliderOld/SliderOld.d.ts +18 -0
  553. package/build/esm/blocks/SliderOld/SliderOld.js +288 -0
  554. package/build/esm/blocks/SliderOld/SliderOld.js.map +1 -0
  555. package/build/esm/blocks/{SliderNew → SliderOld}/i18n/en.json +1 -1
  556. package/build/esm/blocks/{SliderNew → SliderOld}/i18n/index.d.ts +1 -1
  557. package/build/esm/blocks/{SliderNew → SliderOld}/i18n/index.js +1 -1
  558. package/build/esm/blocks/{SliderNew → SliderOld}/i18n/index.js.map +1 -1
  559. package/build/esm/blocks/{SliderNew → SliderOld}/i18n/ru.json +1 -1
  560. package/build/esm/blocks/{SliderNew → SliderOld}/models.d.ts +2 -2
  561. package/build/esm/blocks/{SliderNew → SliderOld}/models.js +1 -1
  562. package/build/esm/blocks/{SliderNew → SliderOld}/models.js.map +1 -1
  563. package/build/esm/blocks/{SliderNew → SliderOld}/schema.d.ts +5 -21
  564. package/build/esm/blocks/{SliderNew → SliderOld}/schema.js +5 -18
  565. package/build/esm/blocks/SliderOld/schema.js.map +1 -0
  566. package/build/esm/blocks/SliderOld/utils.d.ts +37 -0
  567. package/build/esm/blocks/SliderOld/utils.js +116 -0
  568. package/build/esm/blocks/SliderOld/utils.js.map +1 -0
  569. package/build/esm/blocks/Table/Table.css +4 -3
  570. package/build/esm/blocks/Table/Table.js +4 -2
  571. package/build/esm/blocks/Table/Table.js.map +1 -1
  572. package/build/esm/blocks/Table/schema.js +10 -22
  573. package/build/esm/blocks/Table/schema.js.map +1 -1
  574. package/build/esm/blocks/Tabs/Tabs.js +18 -16
  575. package/build/esm/blocks/Tabs/Tabs.js.map +1 -1
  576. package/build/esm/blocks/Tabs/schema.js +9 -24
  577. package/build/esm/blocks/Tabs/schema.js.map +1 -1
  578. package/build/esm/blocks/index.d.ts +2 -0
  579. package/build/esm/blocks/index.js +1 -0
  580. package/build/esm/blocks/index.js.map +1 -1
  581. package/build/esm/blocks/validators.d.ts +1 -0
  582. package/build/esm/blocks/validators.js +1 -0
  583. package/build/esm/blocks/validators.js.map +1 -1
  584. package/build/esm/components/Author/Author.js +1 -1
  585. package/build/esm/components/Author/Author.js.map +1 -1
  586. package/build/esm/components/Author/schema.js +1 -5
  587. package/build/esm/components/Author/schema.js.map +1 -1
  588. package/build/esm/components/BackLink/BackLink.js +1 -1
  589. package/build/esm/components/BackLink/BackLink.js.map +1 -1
  590. package/build/esm/components/BackgroundImage/BackgroundImage.js +1 -1
  591. package/build/esm/components/BackgroundImage/BackgroundImage.js.map +1 -1
  592. package/build/esm/components/BackgroundMedia/BackgroundMedia.js +5 -4
  593. package/build/esm/components/BackgroundMedia/BackgroundMedia.js.map +1 -1
  594. package/build/esm/components/BalancedMasonry/BalancedMasonry.js +1 -1
  595. package/build/esm/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  596. package/build/esm/components/Button/Button.js +6 -9
  597. package/build/esm/components/Button/Button.js.map +1 -1
  598. package/build/esm/components/Button/utils.js +2 -2
  599. package/build/esm/components/Button/utils.js.map +1 -1
  600. package/build/esm/components/Buttons/Buttons.js +1 -4
  601. package/build/esm/components/Buttons/Buttons.js.map +1 -1
  602. package/build/esm/components/CardBase/CardBase.js +2 -6
  603. package/build/esm/components/CardBase/CardBase.js.map +1 -1
  604. package/build/esm/components/ContentList/ContentList.css +10 -6
  605. package/build/esm/components/ContentList/ContentList.js +2 -2
  606. package/build/esm/components/ContentList/ContentList.js.map +1 -1
  607. package/build/esm/components/ContentList/ContentListItemIcon.js +1 -1
  608. package/build/esm/components/ContentList/ContentListItemIcon.js.map +1 -1
  609. package/build/esm/components/DefaultVideo/DefaultVideo.js +4 -3
  610. package/build/esm/components/DefaultVideo/DefaultVideo.js.map +1 -1
  611. package/build/esm/components/FileLink/FileLink.js +2 -2
  612. package/build/esm/components/FileLink/FileLink.js.map +1 -1
  613. package/build/esm/components/FullWidthBackground/FullWidthBackground.js +17 -12
  614. package/build/esm/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  615. package/build/esm/components/FullscreenImage/FullscreenImage.css +96 -18
  616. package/build/esm/components/FullscreenImage/FullscreenImage.d.ts +5 -0
  617. package/build/esm/components/FullscreenImage/FullscreenImage.js +14 -2
  618. package/build/esm/components/FullscreenImage/FullscreenImage.js.map +1 -1
  619. package/build/esm/components/HTML/HTML.d.ts +15 -8
  620. package/build/esm/components/HTML/HTML.js +17 -11
  621. package/build/esm/components/HTML/HTML.js.map +1 -1
  622. package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +1 -1
  623. package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
  624. package/build/esm/components/IconWrapper/IconWrapper.js +2 -2
  625. package/build/esm/components/IconWrapper/IconWrapper.js.map +1 -1
  626. package/build/esm/components/Image/schema.js +12 -40
  627. package/build/esm/components/Image/schema.js.map +1 -1
  628. package/build/esm/components/ImageBase/ImageBase.js +5 -3
  629. package/build/esm/components/ImageBase/ImageBase.js.map +1 -1
  630. package/build/esm/components/InnerForm/InnerForm.js +6 -5
  631. package/build/esm/components/InnerForm/InnerForm.js.map +1 -1
  632. package/build/esm/components/Link/Link.js +1 -1
  633. package/build/esm/components/Link/Link.js.map +1 -1
  634. package/build/esm/components/Links/Links.js +1 -4
  635. package/build/esm/components/Links/Links.js.map +1 -1
  636. package/build/esm/components/Map/Map.js +2 -2
  637. package/build/esm/components/Map/Map.js.map +1 -1
  638. package/build/esm/components/Map/YMap/YMap.js +5 -6
  639. package/build/esm/components/Map/YMap/YMap.js.map +1 -1
  640. package/build/esm/components/Map/YMap/YandexMap.js +2 -1
  641. package/build/esm/components/Map/YMap/YandexMap.js.map +1 -1
  642. package/build/esm/components/Map/YMap/YandexMapApiLoader.js +1 -2
  643. package/build/esm/components/Map/YMap/YandexMapApiLoader.js.map +1 -1
  644. package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js +1 -1
  645. package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
  646. package/build/esm/components/Media/Image/Image.d.ts +1 -0
  647. package/build/esm/components/Media/Image/Image.js +9 -7
  648. package/build/esm/components/Media/Image/Image.js.map +1 -1
  649. package/build/esm/components/Media/Media.css +4 -0
  650. package/build/esm/components/Media/Media.d.ts +1 -0
  651. package/build/esm/components/Media/Media.js +8 -15
  652. package/build/esm/components/Media/Media.js.map +1 -1
  653. package/build/esm/components/MediaBase/MediaBase.js +4 -3
  654. package/build/esm/components/MediaBase/MediaBase.js.map +1 -1
  655. package/build/esm/components/MediaBase/MediaBaseContent.js +1 -1
  656. package/build/esm/components/MediaBase/MediaBaseContent.js.map +1 -1
  657. package/build/esm/components/MetaInfo/MetaInfo.css +1 -1
  658. package/build/esm/components/MetaInfo/MetaInfo.js +1 -1
  659. package/build/esm/components/MetaInfo/MetaInfo.js.map +1 -1
  660. package/build/esm/components/OutsideClick/OutsideClick.js +12 -9
  661. package/build/esm/components/OutsideClick/OutsideClick.js.map +1 -1
  662. package/build/esm/components/OverflowScroller/OverflowScroller.js +49 -46
  663. package/build/esm/components/OverflowScroller/OverflowScroller.js.map +1 -1
  664. package/build/esm/components/ReactPlayer/ReactPlayer.js +12 -10
  665. package/build/esm/components/ReactPlayer/ReactPlayer.js.map +1 -1
  666. package/build/esm/components/ReactPlayer/utils.js +2 -1
  667. package/build/esm/components/ReactPlayer/utils.js.map +1 -1
  668. package/build/esm/components/Table/Table.css +2 -1
  669. package/build/esm/components/Table/Table.js +5 -3
  670. package/build/esm/components/Table/Table.js.map +1 -1
  671. package/build/esm/components/Title/Title.js +3 -2
  672. package/build/esm/components/Title/Title.js.map +1 -1
  673. package/build/esm/components/Title/TitleItem.css +7 -4
  674. package/build/esm/components/Title/TitleItem.js +5 -3
  675. package/build/esm/components/Title/TitleItem.js.map +1 -1
  676. package/build/esm/components/VideoBlock/VideoBlock.js +2 -5
  677. package/build/esm/components/VideoBlock/VideoBlock.js.map +1 -1
  678. package/build/esm/components/YFMWrapper/YFMWrapper.d.ts +4 -2
  679. package/build/esm/components/YFMWrapper/YFMWrapper.js +5 -3
  680. package/build/esm/components/YFMWrapper/YFMWrapper.js.map +1 -1
  681. package/build/esm/components/YandexForm/YandexForm.js +3 -3
  682. package/build/esm/components/YandexForm/YandexForm.js.map +1 -1
  683. package/build/esm/components/YandexForm/schema.js +3 -7
  684. package/build/esm/components/YandexForm/schema.js.map +1 -1
  685. package/build/esm/constructor-items.d.ts +2 -2
  686. package/build/esm/constructor-items.js +3 -5
  687. package/build/esm/constructor-items.js.map +1 -1
  688. package/build/esm/containers/Loadable/Loadable.js +3 -3
  689. package/build/esm/containers/Loadable/Loadable.js.map +1 -1
  690. package/build/esm/containers/PageConstructor/PageConstructor.js +8 -14
  691. package/build/esm/containers/PageConstructor/PageConstructor.js.map +1 -1
  692. package/build/esm/containers/PageConstructor/Provider.js +1 -1
  693. package/build/esm/containers/PageConstructor/Provider.js.map +1 -1
  694. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
  695. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  696. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +3 -2
  697. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
  698. package/build/esm/context/theme/withTheme.js +9 -7
  699. package/build/esm/context/theme/withTheme.js.map +1 -1
  700. package/build/esm/customization/BlockDecoration.js +6 -3
  701. package/build/esm/customization/BlockDecoration.js.map +1 -1
  702. package/build/esm/editor/components/AddBlock/AddBlock.js +8 -6
  703. package/build/esm/editor/components/AddBlock/AddBlock.js.map +1 -1
  704. package/build/esm/editor/components/BlockForm/BlockForm.js +5 -9
  705. package/build/esm/editor/components/BlockForm/BlockForm.js.map +1 -1
  706. package/build/esm/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js +5 -4
  707. package/build/esm/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js.map +1 -1
  708. package/build/esm/editor/components/EditBlock/EditBlock.js +2 -2
  709. package/build/esm/editor/components/EditBlock/EditBlock.js.map +1 -1
  710. package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js +5 -2
  711. package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  712. package/build/esm/editor/components/Layout/Layout.js +3 -3
  713. package/build/esm/editor/components/Layout/Layout.js.map +1 -1
  714. package/build/esm/editor/components/PageSettings/PageSettings.js +3 -2
  715. package/build/esm/editor/components/PageSettings/PageSettings.js.map +1 -1
  716. package/build/esm/editor/containers/Editor/Editor.js +1 -1
  717. package/build/esm/editor/containers/Editor/Editor.js.map +1 -1
  718. package/build/esm/editor/containers/Editor/hooks/useCode.js +4 -2
  719. package/build/esm/editor/containers/Editor/hooks/useCode.js.map +1 -1
  720. package/build/esm/editor/containers/Editor/hooks/useEditorState.js +8 -10
  721. package/build/esm/editor/containers/Editor/hooks/useEditorState.js.map +1 -1
  722. package/build/esm/editor/containers/Form/Form.js +2 -5
  723. package/build/esm/editor/containers/Form/Form.js.map +1 -1
  724. package/build/esm/editor/data/index.js +1 -4
  725. package/build/esm/editor/data/index.js.map +1 -1
  726. package/build/esm/editor/data/previews/default-preview.js +1 -1
  727. package/build/esm/editor/data/previews/default-preview.js.map +1 -1
  728. package/build/esm/editor/data/previews/header-block.js +1 -1
  729. package/build/esm/editor/data/previews/header-block.js.map +1 -1
  730. package/build/esm/editor/data/templates/{slider-new-block.json → slider-old-block.json} +2 -2
  731. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +13 -15
  732. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  733. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js +10 -8
  734. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  735. package/build/esm/editor/dynamic-forms-custom/parser/index.js +120 -150
  736. package/build/esm/editor/dynamic-forms-custom/parser/index.js.map +1 -1
  737. package/build/esm/editor/dynamic-forms-custom/parser/views.js +4 -2
  738. package/build/esm/editor/dynamic-forms-custom/parser/views.js.map +1 -1
  739. package/build/esm/editor/icons/Tablet.js +1 -1
  740. package/build/esm/editor/icons/Tablet.js.map +1 -1
  741. package/build/esm/editor/store/main/index.js +5 -7
  742. package/build/esm/editor/store/main/index.js.map +1 -1
  743. package/build/esm/editor/store/main/reducer.js +3 -17
  744. package/build/esm/editor/store/main/reducer.js.map +1 -1
  745. package/build/esm/editor/store/main/utils.js +1 -1
  746. package/build/esm/editor/store/main/utils.js.map +1 -1
  747. package/build/esm/editor/store/settings/reducer.js +4 -16
  748. package/build/esm/editor/store/settings/reducer.js.map +1 -1
  749. package/build/esm/editor/utils/code.js +2 -4
  750. package/build/esm/editor/utils/code.js.map +1 -1
  751. package/build/esm/editor/utils/index.js +1 -7
  752. package/build/esm/editor/utils/index.js.map +1 -1
  753. package/build/esm/editor/widget/index.js +8 -8
  754. package/build/esm/editor/widget/index.js.map +1 -1
  755. package/build/esm/grid/Col/Col.js +2 -1
  756. package/build/esm/grid/Col/Col.js.map +1 -1
  757. package/build/esm/hooks/useAnalytics.js +1 -4
  758. package/build/esm/hooks/useAnalytics.js.map +1 -1
  759. package/build/esm/icons/BrandIconDark.js +1 -1
  760. package/build/esm/icons/BrandIconDark.js.map +1 -1
  761. package/build/esm/icons/BrandIconLight.js +1 -1
  762. package/build/esm/icons/BrandIconLight.js.map +1 -1
  763. package/build/esm/icons/BrandName.js +1 -1
  764. package/build/esm/icons/BrandName.js.map +1 -1
  765. package/build/esm/icons/Chevron.js +1 -1
  766. package/build/esm/icons/Chevron.js.map +1 -1
  767. package/build/esm/icons/Facebook.js +1 -1
  768. package/build/esm/icons/Facebook.js.map +1 -1
  769. package/build/esm/icons/Github.js +1 -1
  770. package/build/esm/icons/Github.js.map +1 -1
  771. package/build/esm/icons/Linkedin.js +1 -1
  772. package/build/esm/icons/Linkedin.js.map +1 -1
  773. package/build/esm/icons/NavigationArrow.js +1 -1
  774. package/build/esm/icons/NavigationArrow.js.map +1 -1
  775. package/build/esm/icons/NavigationChevron.js +1 -1
  776. package/build/esm/icons/NavigationChevron.js.map +1 -1
  777. package/build/esm/icons/Telegram.js +1 -1
  778. package/build/esm/icons/Telegram.js.map +1 -1
  779. package/build/esm/icons/Twitter.js +1 -1
  780. package/build/esm/icons/Twitter.js.map +1 -1
  781. package/build/esm/icons/Vk.js +1 -1
  782. package/build/esm/icons/Vk.js.map +1 -1
  783. package/build/esm/models/common.d.ts +1 -0
  784. package/build/esm/models/common.js.map +1 -1
  785. package/build/esm/models/constructor-items/blocks.d.ts +17 -15
  786. package/build/esm/models/constructor-items/blocks.js +3 -2
  787. package/build/esm/models/constructor-items/blocks.js.map +1 -1
  788. package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
  789. package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
  790. package/build/esm/navigation/components/Logo/Logo.js +6 -4
  791. package/build/esm/navigation/components/Logo/Logo.js.map +1 -1
  792. package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js +4 -2
  793. package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
  794. package/build/esm/navigation/components/NavigationItem/NavigationItem.js +6 -7
  795. package/build/esm/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  796. package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js +1 -1
  797. package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
  798. package/build/esm/navigation/components/NavigationItem/components/GithubButton/GithubButton.js +3 -2
  799. package/build/esm/navigation/components/NavigationItem/components/GithubButton/GithubButton.js.map +1 -1
  800. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +1 -1
  801. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
  802. package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js +4 -2
  803. package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js.map +1 -1
  804. package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +5 -4
  805. package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
  806. package/build/esm/navigation/components/NavigationList/NavigationList.js +5 -1
  807. package/build/esm/navigation/components/NavigationList/NavigationList.js.map +1 -1
  808. package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js +4 -2
  809. package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
  810. package/build/esm/navigation/components/SocialIcon/SocialIcon.js +1 -1
  811. package/build/esm/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
  812. package/build/esm/navigation/components/Standalone/index.js +1 -1
  813. package/build/esm/navigation/components/Standalone/index.js.map +1 -1
  814. package/build/esm/navigation/hooks/useActiveNavItem.js +1 -1
  815. package/build/esm/navigation/hooks/useActiveNavItem.js.map +1 -1
  816. package/build/esm/navigation/schema.js +6 -19
  817. package/build/esm/navigation/schema.js.map +1 -1
  818. package/build/esm/navigation/utils.js +1 -1
  819. package/build/esm/navigation/utils.js.map +1 -1
  820. package/build/esm/schema/constants.js +5 -34
  821. package/build/esm/schema/constants.js.map +1 -1
  822. package/build/esm/schema/index.js +6 -23
  823. package/build/esm/schema/index.js.map +1 -1
  824. package/build/esm/schema/validators/blocks.d.ts +2 -2
  825. package/build/esm/schema/validators/blocks.js +2 -2
  826. package/build/esm/schema/validators/blocks.js.map +1 -1
  827. package/build/esm/schema/validators/common.js +31 -77
  828. package/build/esm/schema/validators/common.js.map +1 -1
  829. package/build/esm/schema/validators/utils.js +2 -9
  830. package/build/esm/schema/validators/utils.js.map +1 -1
  831. package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js +1 -1
  832. package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
  833. package/build/esm/sub-blocks/BackgroundCard/schema.js +8 -23
  834. package/build/esm/sub-blocks/BackgroundCard/schema.js.map +1 -1
  835. package/build/esm/sub-blocks/BannerCard/BannerCard.css +14 -8
  836. package/build/esm/sub-blocks/BannerCard/BannerCard.js +4 -2
  837. package/build/esm/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  838. package/build/esm/sub-blocks/BasicCard/BasicCard.js +3 -2
  839. package/build/esm/sub-blocks/BasicCard/BasicCard.js.map +1 -1
  840. package/build/esm/sub-blocks/BasicCard/schema.js +6 -17
  841. package/build/esm/sub-blocks/BasicCard/schema.js.map +1 -1
  842. package/build/esm/sub-blocks/Content/Content.css +27 -25
  843. package/build/esm/sub-blocks/Content/Content.js +1 -1
  844. package/build/esm/sub-blocks/Content/Content.js.map +1 -1
  845. package/build/esm/sub-blocks/Content/schema.js +3 -10
  846. package/build/esm/sub-blocks/Content/schema.js.map +1 -1
  847. package/build/esm/sub-blocks/Divider/schema.js +2 -6
  848. package/build/esm/sub-blocks/Divider/schema.js.map +1 -1
  849. package/build/esm/sub-blocks/HubspotForm/index.js +3 -3
  850. package/build/esm/sub-blocks/HubspotForm/index.js.map +1 -1
  851. package/build/esm/sub-blocks/HubspotForm/loadHubspotScript.js +2 -1
  852. package/build/esm/sub-blocks/HubspotForm/loadHubspotScript.js.map +1 -1
  853. package/build/esm/sub-blocks/HubspotForm/schema.js +5 -11
  854. package/build/esm/sub-blocks/HubspotForm/schema.js.map +1 -1
  855. package/build/esm/sub-blocks/ImageCard/ImageCard.js +1 -1
  856. package/build/esm/sub-blocks/ImageCard/ImageCard.js.map +1 -1
  857. package/build/esm/sub-blocks/ImageCard/schema.js +6 -17
  858. package/build/esm/sub-blocks/ImageCard/schema.js.map +1 -1
  859. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js +10 -11
  860. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
  861. package/build/esm/sub-blocks/LayoutItem/schema.js +6 -19
  862. package/build/esm/sub-blocks/LayoutItem/schema.js.map +1 -1
  863. package/build/esm/sub-blocks/LayoutItem/utils.js +1 -4
  864. package/build/esm/sub-blocks/LayoutItem/utils.js.map +1 -1
  865. package/build/esm/sub-blocks/MediaCard/MediaCard.js +5 -1
  866. package/build/esm/sub-blocks/MediaCard/MediaCard.js.map +1 -1
  867. package/build/esm/sub-blocks/MediaCard/schema.js +3 -12
  868. package/build/esm/sub-blocks/MediaCard/schema.js.map +1 -1
  869. package/build/esm/sub-blocks/PriceCard/PriceCard.css +2 -1
  870. package/build/esm/sub-blocks/PriceCard/PriceCard.js +2 -2
  871. package/build/esm/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  872. package/build/esm/sub-blocks/PriceCard/schema.js +11 -25
  873. package/build/esm/sub-blocks/PriceCard/schema.js.map +1 -1
  874. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +2 -1
  875. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  876. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  877. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
  878. package/build/esm/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js +5 -1
  879. package/build/esm/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js.map +1 -1
  880. package/build/esm/sub-blocks/PriceDetailed/schema.js +12 -44
  881. package/build/esm/sub-blocks/PriceDetailed/schema.js.map +1 -1
  882. package/build/esm/sub-blocks/Quote/Quote.css +8 -4
  883. package/build/esm/sub-blocks/Quote/Quote.js +5 -7
  884. package/build/esm/sub-blocks/Quote/Quote.js.map +1 -1
  885. package/build/esm/sub-blocks/Quote/schema.js +8 -21
  886. package/build/esm/sub-blocks/Quote/schema.js.map +1 -1
  887. package/build/esm/text-transform/common.d.ts +4 -3
  888. package/build/esm/text-transform/common.js +38 -18
  889. package/build/esm/text-transform/common.js.map +1 -1
  890. package/build/esm/text-transform/config.d.ts +5 -2
  891. package/build/esm/text-transform/config.js +104 -70
  892. package/build/esm/text-transform/config.js.map +1 -1
  893. package/build/esm/text-transform/filter.js +1 -4
  894. package/build/esm/text-transform/filter.js.map +1 -1
  895. package/build/esm/text-transform/transformers.js +3 -3
  896. package/build/esm/text-transform/transformers.js.map +1 -1
  897. package/build/esm/text-transform/utils.js +6 -8
  898. package/build/esm/text-transform/utils.js.map +1 -1
  899. package/build/esm/utils/analytics.js +3 -2
  900. package/build/esm/utils/analytics.js.map +1 -1
  901. package/build/esm/utils/blocks.d.ts +10 -2
  902. package/build/esm/utils/blocks.js +8 -2
  903. package/build/esm/utils/blocks.js.map +1 -1
  904. package/build/esm/utils/common.js +2 -1
  905. package/build/esm/utils/common.js.map +1 -1
  906. package/build/esm/utils/hubspot.js +7 -6
  907. package/build/esm/utils/hubspot.js.map +1 -1
  908. package/build/esm/utils/microdata.js +1 -1
  909. package/build/esm/utils/microdata.js.map +1 -1
  910. package/build/esm/utils/url.js +5 -10
  911. package/build/esm/utils/url.js.map +1 -1
  912. package/package.json +2 -2
  913. package/schema/index.js +1 -1
  914. package/server/models/common.d.ts +1 -0
  915. package/server/models/constructor-items/blocks.d.ts +17 -15
  916. package/server/models/constructor-items/blocks.js +3 -2
  917. package/server/text-transform/common.d.ts +4 -3
  918. package/server/text-transform/common.js +41 -18
  919. package/server/text-transform/config.d.ts +5 -2
  920. package/server/text-transform/config.js +84 -43
  921. package/server/text-transform/transformers.js +2 -2
  922. package/server/utils/blocks.d.ts +10 -2
  923. package/server/utils/blocks.js +9 -3
  924. package/styles/fonts.scss +1 -0
  925. package/styles/styles.css +0 -1
  926. package/styles/styles.scss +0 -1
  927. package/styles/variables.scss +1 -0
  928. package/build/cjs/blocks/SliderNew/Arrow/Arrow.d.ts +0 -11
  929. package/build/cjs/blocks/SliderNew/Arrow/Arrow.js +0 -11
  930. package/build/cjs/blocks/SliderNew/Arrow/Arrow.js.map +0 -1
  931. package/build/cjs/blocks/SliderNew/Slider.css +0 -834
  932. package/build/cjs/blocks/SliderNew/Slider.d.ts +0 -13
  933. package/build/cjs/blocks/SliderNew/Slider.js +0 -60
  934. package/build/cjs/blocks/SliderNew/Slider.js.map +0 -1
  935. package/build/cjs/blocks/SliderNew/schema.js.map +0 -1
  936. package/build/cjs/blocks/SliderNew/useSlider.js.map +0 -1
  937. package/build/cjs/blocks/SliderNew/useSliderPagination.js.map +0 -1
  938. package/build/cjs/blocks/SliderNew/utils.d.ts +0 -16
  939. package/build/cjs/blocks/SliderNew/utils.js +0 -48
  940. package/build/cjs/blocks/SliderNew/utils.js.map +0 -1
  941. package/build/cjs/blocks/unstable.d.ts +0 -1
  942. package/build/cjs/blocks/unstable.js +0 -7
  943. package/build/cjs/blocks/unstable.js.map +0 -1
  944. package/build/esm/blocks/SliderNew/Arrow/Arrow.d.ts +0 -12
  945. package/build/esm/blocks/SliderNew/Arrow/Arrow.js +0 -9
  946. package/build/esm/blocks/SliderNew/Arrow/Arrow.js.map +0 -1
  947. package/build/esm/blocks/SliderNew/Slider.css +0 -834
  948. package/build/esm/blocks/SliderNew/Slider.d.ts +0 -14
  949. package/build/esm/blocks/SliderNew/Slider.js +0 -56
  950. package/build/esm/blocks/SliderNew/Slider.js.map +0 -1
  951. package/build/esm/blocks/SliderNew/schema.js.map +0 -1
  952. package/build/esm/blocks/SliderNew/useSlider.js.map +0 -1
  953. package/build/esm/blocks/SliderNew/useSliderPagination.js.map +0 -1
  954. package/build/esm/blocks/SliderNew/utils.d.ts +0 -16
  955. package/build/esm/blocks/SliderNew/utils.js +0 -41
  956. package/build/esm/blocks/SliderNew/utils.js.map +0 -1
  957. package/build/esm/blocks/unstable.d.ts +0 -1
  958. package/build/esm/blocks/unstable.js +0 -2
  959. package/build/esm/blocks/unstable.js.map +0 -1
  960. /package/build/cjs/blocks/{SliderNew → Slider}/useSliderPagination.d.ts +0 -0
  961. /package/build/cjs/blocks/{SliderNew → Slider}/useSliderPagination.js +0 -0
  962. /package/build/cjs/blocks/{Slider → SliderOld}/slick.css +0 -0
  963. /package/build/esm/blocks/{SliderNew → Slider}/useSliderPagination.d.ts +0 -0
  964. /package/build/esm/blocks/{SliderNew → Slider}/useSliderPagination.js +0 -0
  965. /package/build/esm/blocks/{Slider → SliderOld}/slick.css +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sourceRoot":"../../../../src","sources":["components/Table/Table.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAE/B,6CAA+C;AAC/C,6CAAuC;AAEvC,mCAAqC;AAErC,gDAAkC;AAIlC,SAAS,WAAW,CAAC,KAAa;IAC9B,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACf,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,UAAU,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,OAAO,CAAC,CAAC;AAEzB,MAAqB,KAAM,SAAQ,KAAK,CAAC,SAAsC;IAC3E,MAAM;QACF,MAAM,EAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAEtF,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;YACpD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,CACH,iCAAK,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,gBAAc,OAAO,aACjE,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EACzC,MAAM,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,IACzD,CACT,CAAC;IACN,CAAC;IAEO,WAAW,CAAC,OAAmB,EAAE,MAA6B,EAAE,MAAiB;QACrF,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEpE,OAAO,CACH,gCAAK,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,YACvC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CACrB,gCAAa,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,YACxC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAClB,gCAAa,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAC,CAAC,EAAE,IAAI,EAAE,MAAM,YACjE,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAChB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAClC,CAAC,CAAC,CAAC,CACA,uBAAC,QAAI,cAAE,IAAI,GAAQ,CACtB,IALK,CAAC,CAML,CACT,CAAC,IATI,CAAC,CAUL,CACT,CAAC,GACA,CACT,CAAC;IACN,CAAC;IAEO,YAAY,CAAC,IAA2B,EAAE,IAAY;QAC1D,OAAO,CACH,mDACqB,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAC1C,SAAS,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAC,CAAC,YAElD,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CACf,uBAAC,YAAI,IACD,IAAI,EAAE,EAAE,EACR,SAAS,EAAE,CAAC,CAAC,aAAa,EAAE,EAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAC,CAAC,EACxD,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAK,CAAC,CAAC,CAAC,aAAK,GAC1C,CACL,CAAC,CAAC,CAAC,IAAI,GACN,CACT,CAAC;IACN,CAAC;IAEO,YAAY,CAAC,MAAgB,EAAE,MAA6B;QAChE,OAAO,CACH,gCAAK,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,YACtB,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACzB,iCAAgB,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC,aACtC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EACzC,uBAAC,cAAU,IACP,SAAS,EAAE,CAAC,CAAC,kBAAkB,CAAC,EAChC,OAAO,EAAE,IAAI,EACb,SAAS,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,KAAK,CAAC,GACxB,KAPI,IAAI,CAQR,CACT,CAAC,GACA,CACT,CAAC;IACN,CAAC;IAEO,iBAAiB,CAAC,OAAmB,EAAE,OAAmB;QAC9D,OAAO,OAAO,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClE,CAAC;CACJ;AA5ED,wBA4EC","sourcesContent":["import * as React from 'react';\n\nimport {Check, Minus} from '@gravity-ui/icons';\nimport {Icon} from '@gravity-ui/uikit';\n\nimport {HTML, YFMWrapper} from '../';\nimport {ClassNameProps, Justify, LegendTableMarkerType, TableProps} from '../../models';\nimport {block} from '../../utils';\n\nimport './Table.scss';\n\nfunction getMarkerId(index: number): string | undefined {\n if (isNaN(index)) {\n return undefined;\n }\n\n return `marker-${index}`;\n}\n\nconst b = block('table');\n\nexport default class Table extends React.Component<TableProps & ClassNameProps> {\n render() {\n const {content, legend, hideLegend, marker = 'disk', className, caption} = this.props;\n\n if (!content || !content.length || !content[0].length) {\n return null;\n }\n\n return (\n <div className={b(null, className)} role={'table'} aria-label={caption}>\n {this.renderTable(content, marker, legend)}\n {legend && !hideLegend && this.renderLegend(legend, marker)}\n </div>\n );\n }\n\n private renderTable(content: string[][], marker: LegendTableMarkerType, legend?: string[]) {\n const justify = this.getDefaultJustify(content, this.props.justify);\n\n return (\n <div className={b('table')} role={'rowgroup'}>\n {content.map((row, i) => (\n <div key={i} className={b('row')} role={'row'}>\n {row.map((cell, j) => (\n <div key={j} className={b('cell', {justify: justify[j]})} role={'cell'}>\n {legend && i && j ? (\n this.renderMarker(marker, cell)\n ) : (\n <HTML>{cell}</HTML>\n )}\n </div>\n ))}\n </div>\n ))}\n </div>\n );\n }\n\n private renderMarker(type: LegendTableMarkerType, cell: string) {\n return (\n <div\n aria-labelledby={getMarkerId(Number(cell))}\n className={b('marker', {type, index: String(cell)})}\n >\n {type === 'tick' ? (\n <Icon\n size={20}\n className={b('marker_tick', {check: Number(cell) === 1})}\n data={Number(cell) === 1 ? Check : Minus}\n />\n ) : null}\n </div>\n );\n }\n\n private renderLegend(legend: string[], marker: LegendTableMarkerType) {\n return (\n <div className={b('legend')}>\n {legend.map((item, index) => (\n <div key={item} className={b('legend-item')}>\n {this.renderMarker(marker, String(index))}\n <YFMWrapper\n className={b('legent-item-text')}\n content={item}\n modifiers={{constructor: true}}\n id={getMarkerId(index)}\n />\n </div>\n ))}\n </div>\n );\n }\n\n private getDefaultJustify(content: string[][], justify?: Justify[]) {\n return justify || new Array(content[0].length).fill('center');\n }\n}\n"]}
1
+ {"version":3,"file":"Table.js","sourceRoot":"../../../../src","sources":["components/Table/Table.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Check, Minus} from '@gravity-ui/icons';\nimport {Icon} from '@gravity-ui/uikit';\n\nimport {YFMWrapper} from '../';\nimport {ClassNameProps, Justify, LegendTableMarkerType, TableProps} from '../../models';\nimport {block} from '../../utils';\n\nimport './Table.scss';\n\nfunction getMarkerId(index: number): string | undefined {\n if (isNaN(index)) {\n return undefined;\n }\n\n return `marker-${index}`;\n}\n\nconst b = block('table');\n\nexport default class Table extends React.Component<TableProps & ClassNameProps> {\n render() {\n const {content, legend, hideLegend, marker = 'disk', className, caption} = this.props;\n\n if (!content || !content.length || !content[0].length) {\n return null;\n }\n\n return (\n <div className={b(null, className)} role={'table'} aria-label={caption}>\n {this.renderTable(content, marker, legend)}\n {legend && !hideLegend && this.renderLegend(legend, marker)}\n </div>\n );\n }\n\n private renderTable(content: string[][], marker: LegendTableMarkerType, legend?: string[]) {\n const justify = this.getDefaultJustify(content, this.props.justify);\n\n return (\n <div className={b('table')} role={'rowgroup'}>\n {content.map((row, i) => (\n <div key={i} className={b('row')} role={'row'}>\n {row.map((cell, j) => (\n <div key={j} className={b('cell', {justify: justify[j]})} role={'cell'}>\n {legend && i && j ? (\n this.renderMarker(marker, cell)\n ) : (\n <YFMWrapper\n tagName=\"span\"\n content={cell}\n modifiers={{\n constructor: true,\n }}\n />\n )}\n </div>\n ))}\n </div>\n ))}\n </div>\n );\n }\n\n private renderMarker(type: LegendTableMarkerType, cell: string) {\n return (\n <div\n aria-labelledby={getMarkerId(Number(cell))}\n className={b('marker', {type, index: String(cell)})}\n >\n {type === 'tick' ? (\n <Icon\n size={20}\n className={b('marker_tick', {check: Number(cell) === 1})}\n data={Number(cell) === 1 ? Check : Minus}\n />\n ) : null}\n </div>\n );\n }\n\n private renderLegend(legend: string[], marker: LegendTableMarkerType) {\n return (\n <div className={b('legend')}>\n {legend.map((item, index) => (\n <div key={item} className={b('legend-item')}>\n {this.renderMarker(marker, String(index))}\n <YFMWrapper\n contentClassName={b('legent-item-text')}\n content={item}\n modifiers={{constructor: true}}\n id={getMarkerId(index)}\n />\n </div>\n ))}\n </div>\n );\n }\n\n private getDefaultJustify(content: string[][], justify?: Justify[]) {\n return justify || new Array(content[0].length).fill('center');\n }\n}\n"]}
@@ -11,8 +11,8 @@ const Title = ({ title, subtitle, className, colSizes = { all: 12, sm: 8 }, id,
11
11
  if (!title && !subtitle) {
12
12
  return null;
13
13
  }
14
- const { text, ...titleProps } = !title || typeof title === 'string' ? { text: title } : title;
15
- return ((0, jsx_runtime_1.jsxs)("div", { className: b(null, className), id: id, children: [text && ((0, jsx_runtime_1.jsx)(grid_1.Col, { reset: true, sizes: colSizes, children: (0, jsx_runtime_1.jsx)(TitleItem_1.default, { text: text, ...titleProps }) })), subtitle && ((0, jsx_runtime_1.jsx)(grid_1.Col, { reset: true, sizes: colSizes, children: (0, jsx_runtime_1.jsx)("div", { className: b('description', { titleSize: titleProps?.textSize }), children: (0, jsx_runtime_1.jsx)(YFMWrapper_1.default, { content: subtitle, modifiers: { constructor: true } }) }) }))] }));
14
+ const _a = !title || typeof title === 'string' ? { text: title } : title, { text } = _a, titleProps = tslib_1.__rest(_a, ["text"]);
15
+ return ((0, jsx_runtime_1.jsxs)("div", { className: b(null, className), id: id, children: [text && ((0, jsx_runtime_1.jsx)(grid_1.Col, { reset: true, sizes: colSizes, children: (0, jsx_runtime_1.jsx)(TitleItem_1.default, Object.assign({ text: text }, titleProps)) })), subtitle && ((0, jsx_runtime_1.jsx)(grid_1.Col, { reset: true, sizes: colSizes, children: (0, jsx_runtime_1.jsx)("div", { className: b('description', { titleSize: titleProps === null || titleProps === void 0 ? void 0 : titleProps.textSize }), children: (0, jsx_runtime_1.jsx)(YFMWrapper_1.default, { content: subtitle, modifiers: { constructor: true } }) }) }))] }));
16
16
  };
17
17
  exports.default = Title;
18
18
  //# sourceMappingURL=Title.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Title.js","sourceRoot":"../../../../src","sources":["components/Title/Title.tsx"],"names":[],"mappings":";;;;AAAA,8CAAoD;AAEpD,gDAAkC;AAClC,qFAAkD;AAElD,uEAAoC;AAIpC,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,OAAO,CAAC,CAAC;AAOzB,MAAM,KAAK,GAAG,CAAC,EACX,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAQ,GAAG,EAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAC,EAC3B,EAAE,GACwB,EAAE,EAAE;IAC9B,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,EAAC,IAAI,EAAE,GAAG,UAAU,EAAC,GACvB,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,EAAC,IAAI,EAAE,KAAK,EAAoB,CAAC,CAAC,CAAC,KAAK,CAAC;IAEpF,OAAO,CACH,iCAAK,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,aACrC,IAAI,IAAI,CACL,uBAAC,UAAG,IAAC,KAAK,QAAC,KAAK,EAAE,QAAQ,YACtB,uBAAC,mBAAS,IAAC,IAAI,EAAE,IAAI,KAAM,UAAU,GAAI,GACvC,CACT,EACA,QAAQ,IAAI,CACT,uBAAC,UAAG,IAAC,KAAK,QAAC,KAAK,EAAE,QAAQ,YACtB,gCAAK,SAAS,EAAE,CAAC,CAAC,aAAa,EAAE,EAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAC,CAAC,YAC/D,uBAAC,oBAAU,IAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,GAAI,GAC/D,GACJ,CACT,IACC,CACT,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,KAAK,CAAC","sourcesContent":["import {Col, GridColumnSizesType} from '../../grid';\nimport {ClassNameProps, TitleItemProps, TitleProps as TitleParams} from '../../models';\nimport {block} from '../../utils';\nimport YFMWrapper from '../YFMWrapper/YFMWrapper';\n\nimport TitleItem from './TitleItem';\n\nimport './Title.scss';\n\nconst b = block('title');\n\nexport interface TitleProps extends TitleParams {\n colSizes?: GridColumnSizesType;\n id?: string;\n}\n\nconst Title = ({\n title,\n subtitle,\n className,\n colSizes = {all: 12, sm: 8},\n id,\n}: TitleProps & ClassNameProps) => {\n if (!title && !subtitle) {\n return null;\n }\n\n const {text, ...titleProps} =\n !title || typeof title === 'string' ? ({text: title} as TitleItemProps) : title;\n\n return (\n <div className={b(null, className)} id={id}>\n {text && (\n <Col reset sizes={colSizes}>\n <TitleItem text={text} {...titleProps} />\n </Col>\n )}\n {subtitle && (\n <Col reset sizes={colSizes}>\n <div className={b('description', {titleSize: titleProps?.textSize})}>\n <YFMWrapper content={subtitle} modifiers={{constructor: true}} />\n </div>\n </Col>\n )}\n </div>\n );\n};\n\nexport default Title;\n"]}
1
+ {"version":3,"file":"Title.js","sourceRoot":"../../../../src","sources":["components/Title/Title.tsx"],"names":[],"mappings":";;;;AAAA,8CAAoD;AAEpD,gDAAkC;AAClC,qFAAkD;AAElD,uEAAoC;AAIpC,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,OAAO,CAAC,CAAC;AAOzB,MAAM,KAAK,GAAG,CAAC,EACX,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAQ,GAAG,EAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAC,EAC3B,EAAE,GACwB,EAAE,EAAE;IAC9B,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,KACF,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,EAAC,IAAI,EAAE,KAAK,EAAoB,CAAC,CAAC,CAAC,KAAK,EAD7E,EAAC,IAAI,OACwE,EADnE,UAAU,sBAApB,QAAqB,CACwD,CAAC;IAEpF,OAAO,CACH,iCAAK,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,aACrC,IAAI,IAAI,CACL,uBAAC,UAAG,IAAC,KAAK,QAAC,KAAK,EAAE,QAAQ,YACtB,uBAAC,mBAAS,kBAAC,IAAI,EAAE,IAAI,IAAM,UAAU,EAAI,GACvC,CACT,EACA,QAAQ,IAAI,CACT,uBAAC,UAAG,IAAC,KAAK,QAAC,KAAK,EAAE,QAAQ,YACtB,gCAAK,SAAS,EAAE,CAAC,CAAC,aAAa,EAAE,EAAC,SAAS,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,EAAC,CAAC,YAC/D,uBAAC,oBAAU,IAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,GAAI,GAC/D,GACJ,CACT,IACC,CACT,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,KAAK,CAAC","sourcesContent":["import {Col, GridColumnSizesType} from '../../grid';\nimport {ClassNameProps, TitleItemProps, TitleProps as TitleParams} from '../../models';\nimport {block} from '../../utils';\nimport YFMWrapper from '../YFMWrapper/YFMWrapper';\n\nimport TitleItem from './TitleItem';\n\nimport './Title.scss';\n\nconst b = block('title');\n\nexport interface TitleProps extends TitleParams {\n colSizes?: GridColumnSizesType;\n id?: string;\n}\n\nconst Title = ({\n title,\n subtitle,\n className,\n colSizes = {all: 12, sm: 8},\n id,\n}: TitleProps & ClassNameProps) => {\n if (!title && !subtitle) {\n return null;\n }\n\n const {text, ...titleProps} =\n !title || typeof title === 'string' ? ({text: title} as TitleItemProps) : title;\n\n return (\n <div className={b(null, className)} id={id}>\n {text && (\n <Col reset sizes={colSizes}>\n <TitleItem text={text} {...titleProps} />\n </Col>\n )}\n {subtitle && (\n <Col reset sizes={colSizes}>\n <div className={b('description', {titleSize: titleProps?.textSize})}>\n <YFMWrapper content={subtitle} modifiers={{constructor: true}} />\n </div>\n </Col>\n )}\n </div>\n );\n};\n\nexport default Title;\n"]}
@@ -103,22 +103,25 @@ unpredictable css rules order in build */
103
103
  .pc-title-item__link:hover .pc-title-item__arrow_size_s {
104
104
  margin-left: 8px;
105
105
  }
106
- .pc-title-item__text {
106
+ .pc-title-item__text.pc-title-item__text {
107
107
  white-space: normal;
108
+ font-size: inherit;
109
+ line-height: inherit;
108
110
  }
109
- .pc-title-item__text a {
111
+ .pc-title-item__text.pc-title-item__text a {
110
112
  outline: none;
111
113
  color: var(--g-color-text-link);
112
114
  text-decoration: none;
113
115
  cursor: pointer;
114
116
  }
115
- .utilityfocus .pc-title-item__text a:focus {
117
+ .utilityfocus .pc-title-item__text.pc-title-item__text a:focus {
116
118
  outline: 2px solid #ffdb4d;
117
119
  }
118
- .pc-title-item__text a:hover, .pc-title-item__text a:active {
120
+ .pc-title-item__text.pc-title-item__text a:hover, .pc-title-item__text.pc-title-item__text a:active {
119
121
  --pc-text-header-color: var(--g-color-text-link-hover);
120
122
  color: var(--g-color-text-link-hover);
121
123
  }
124
+
122
125
  .pc-title-item__wrapper {
123
126
  white-space: nowrap;
124
127
  }
@@ -29,14 +29,16 @@ const TitleItem = (props) => {
29
29
  const isMobile = React.useContext(mobileContext_1.MobileContext);
30
30
  const { textSize = 'm', text, anchor, justify, url, onClick, custom, className, qa, resetMargin = true, urlTitle, } = props;
31
31
  const { hostname } = React.useContext(locationContext_1.LocationContext);
32
- const textMarkup = ((0, jsx_runtime_1.jsxs)(React.Fragment, { children: [(0, jsx_runtime_1.jsx)(__1.HTML, { className: b('text'), children: text }), custom && ((0, jsx_runtime_1.jsxs)(React.Fragment, { children: ["\u00A0", (0, jsx_runtime_1.jsx)("span", { className: b('custom'), children: custom })] }))] }));
32
+ const textMarkup = ((0, jsx_runtime_1.jsxs)(React.Fragment, { children: [(0, jsx_runtime_1.jsx)(__1.YFMWrapper, { className: b('text'), contentClassName: b('text'), content: text, modifiers: {
33
+ constructor: true,
34
+ } }), custom && ((0, jsx_runtime_1.jsxs)(React.Fragment, { children: ["\u00A0", (0, jsx_runtime_1.jsx)("span", { className: b('custom'), children: custom })] }))] }));
33
35
  let content;
34
36
  const insideClickableContent = ((0, jsx_runtime_1.jsxs)("span", { className: b('wrapper'), children: [textMarkup, "\u00A0", (0, jsx_runtime_1.jsx)(__1.ToggleArrow, { className: b('arrow', { size: textSize }), size: getArrowSize(textSize, isMobile), type: 'horizontal', iconType: "navigation", open: false })] }));
35
37
  if (!url && !onClick) {
36
38
  content = textMarkup;
37
39
  }
38
40
  else if (url) {
39
- content = ((0, jsx_runtime_1.jsx)("a", { className: b('link'), href: url, ...(0, utils_1.getLinkProps)(url, hostname), onClick: onClick, title: urlTitle, children: insideClickableContent }));
41
+ content = ((0, jsx_runtime_1.jsx)("a", Object.assign({ className: b('link'), href: url }, (0, utils_1.getLinkProps)(url, hostname), { onClick: onClick, title: urlTitle, children: insideClickableContent })));
40
42
  }
41
43
  else if (onClick) {
42
44
  content = ((0, jsx_runtime_1.jsx)("button", { className: b('link'), onClick: onClick, title: urlTitle, children: insideClickableContent }));
@@ -1 +1 @@
1
- {"version":3,"file":"TitleItem.js","sourceRoot":"../../../../src","sources":["components/Title/TitleItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {HTML, ToggleArrow} from '../';\nimport {LocationContext} from '../../context/locationContext';\nimport {MobileContext} from '../../context/mobileContext';\nimport {QAProps, TextSize, TitleItemProps} from '../../models';\nimport {block, getHeaderTag, getLinkProps} from '../../utils';\nimport Anchor from '../Anchor/Anchor';\n\nimport './TitleItem.scss';\n\nconst b = block('title-item');\n\nexport function getArrowSize(size: TextSize, isMobile: boolean) {\n switch (size) {\n case 'xs':\n return 13;\n case 's':\n return 16;\n case 'sm':\n case 'm':\n return isMobile ? 22 : 24;\n case 'l':\n return isMobile ? 26 : 38;\n default:\n return 20;\n }\n}\n\nexport interface TitleItemFullProps extends TitleItemProps, QAProps {\n className?: string;\n onClick?: () => void;\n resetMargin?: boolean;\n}\n\nconst TitleItem = (props: TitleItemFullProps) => {\n const isMobile = React.useContext(MobileContext);\n\n const {\n textSize = 'm',\n text,\n anchor,\n justify,\n url,\n onClick,\n custom,\n className,\n qa,\n resetMargin = true,\n urlTitle,\n } = props;\n\n const {hostname} = React.useContext(LocationContext);\n const textMarkup = (\n <React.Fragment>\n <HTML className={b('text')}>{text}</HTML>\n {custom && (\n <React.Fragment>\n &nbsp;\n <span className={b('custom')}>{custom}</span>\n </React.Fragment>\n )}\n </React.Fragment>\n );\n let content: React.ReactNode;\n\n const insideClickableContent = (\n <span className={b('wrapper')}>\n {textMarkup}\n &nbsp;\n <ToggleArrow\n className={b('arrow', {size: textSize})}\n size={getArrowSize(textSize, isMobile)}\n type={'horizontal'}\n iconType=\"navigation\"\n open={false}\n />\n </span>\n );\n\n if (!url && !onClick) {\n content = textMarkup;\n } else if (url) {\n content = (\n <a\n className={b('link')}\n href={url}\n {...getLinkProps(url, hostname)}\n onClick={onClick}\n title={urlTitle}\n >\n {insideClickableContent}\n </a>\n );\n } else if (onClick) {\n content = (\n <button className={b('link')} onClick={onClick} title={urlTitle}>\n {insideClickableContent}\n </button>\n );\n }\n\n return (\n <React.Fragment>\n {anchor && <Anchor id={anchor} className={b('anchor')} />}\n {React.createElement(\n getHeaderTag(textSize),\n {\n className: b({size: textSize, justify, 'reset-margin': resetMargin}, className),\n 'data-qa': `${qa}-header`,\n },\n content,\n )}\n </React.Fragment>\n );\n};\n\nexport default TitleItem;\n"]}
1
+ {"version":3,"file":"TitleItem.js","sourceRoot":"../../../../src","sources":["components/Title/TitleItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {ToggleArrow, YFMWrapper} from '../';\nimport {LocationContext} from '../../context/locationContext';\nimport {MobileContext} from '../../context/mobileContext';\nimport {QAProps, TextSize, TitleItemProps} from '../../models';\nimport {block, getHeaderTag, getLinkProps} from '../../utils';\nimport Anchor from '../Anchor/Anchor';\n\nimport './TitleItem.scss';\n\nconst b = block('title-item');\n\nexport function getArrowSize(size: TextSize, isMobile: boolean) {\n switch (size) {\n case 'xs':\n return 13;\n case 's':\n return 16;\n case 'sm':\n case 'm':\n return isMobile ? 22 : 24;\n case 'l':\n return isMobile ? 26 : 38;\n default:\n return 20;\n }\n}\n\nexport interface TitleItemFullProps extends TitleItemProps, QAProps {\n className?: string;\n onClick?: () => void;\n resetMargin?: boolean;\n}\n\nconst TitleItem = (props: TitleItemFullProps) => {\n const isMobile = React.useContext(MobileContext);\n\n const {\n textSize = 'm',\n text,\n anchor,\n justify,\n url,\n onClick,\n custom,\n className,\n qa,\n resetMargin = true,\n urlTitle,\n } = props;\n\n const {hostname} = React.useContext(LocationContext);\n const textMarkup = (\n <React.Fragment>\n <YFMWrapper\n className={b('text')}\n contentClassName={b('text')}\n content={text}\n modifiers={{\n constructor: true,\n }}\n />\n {custom && (\n <React.Fragment>\n &nbsp;\n <span className={b('custom')}>{custom}</span>\n </React.Fragment>\n )}\n </React.Fragment>\n );\n let content: React.ReactNode;\n\n const insideClickableContent = (\n <span className={b('wrapper')}>\n {textMarkup}\n &nbsp;\n <ToggleArrow\n className={b('arrow', {size: textSize})}\n size={getArrowSize(textSize, isMobile)}\n type={'horizontal'}\n iconType=\"navigation\"\n open={false}\n />\n </span>\n );\n\n if (!url && !onClick) {\n content = textMarkup;\n } else if (url) {\n content = (\n <a\n className={b('link')}\n href={url}\n {...getLinkProps(url, hostname)}\n onClick={onClick}\n title={urlTitle}\n >\n {insideClickableContent}\n </a>\n );\n } else if (onClick) {\n content = (\n <button className={b('link')} onClick={onClick} title={urlTitle}>\n {insideClickableContent}\n </button>\n );\n }\n\n return (\n <React.Fragment>\n {anchor && <Anchor id={anchor} className={b('anchor')} />}\n {React.createElement(\n getHeaderTag(textSize),\n {\n className: b({size: textSize, justify, 'reset-margin': resetMargin}, className),\n 'data-qa': `${qa}-header`,\n },\n content,\n )}\n </React.Fragment>\n );\n};\n\nexport default TitleItem;\n"]}
@@ -34,7 +34,7 @@ function getYoutubeVideoSrc(stream, record) {
34
34
  const [videoLink, url, re] = stream
35
35
  ? [stream, STREAM_URL, STREAM_RE]
36
36
  : [record, RECORD_URL, RECORD_RE];
37
- const match = videoLink?.match(re);
37
+ const match = videoLink === null || videoLink === void 0 ? void 0 : videoLink.match(re);
38
38
  let src;
39
39
  if (match && match.length) {
40
40
  src = url + match[0];
@@ -58,10 +58,7 @@ const VideoBlock = (props) => {
58
58
  if (src && isPlaying) {
59
59
  try {
60
60
  const url = new URL(src);
61
- const searchParams = (0, utils_1.getPageSearchParams)({
62
- ...(attributes || {}),
63
- ...(previewImg || autoplay ? exports.AUTOPLAY_ATTRIBUTES : NO_AUTOPLAY_ATTRIBUTES),
64
- });
61
+ const searchParams = (0, utils_1.getPageSearchParams)(Object.assign(Object.assign({}, (attributes || {})), (previewImg || autoplay ? exports.AUTOPLAY_ATTRIBUTES : NO_AUTOPLAY_ATTRIBUTES)));
65
62
  searchParams.forEach((value, key) => {
66
63
  url.searchParams.set(key, value);
67
64
  });
@@ -1 +1 @@
1
- {"version":3,"file":"VideoBlock.js","sourceRoot":"../../../../src","sources":["components/VideoBlock/VideoBlock.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {PlayFill} from '@gravity-ui/icons';\nimport {Icon, useActionHandlers, useUniqId} from '@gravity-ui/uikit';\nimport debounce from 'lodash/debounce';\nimport {v4 as uuidv4} from 'uuid';\n\nimport {useAnalytics} from '../../hooks/useAnalytics';\nimport {AnalyticsEventsBase, DefaultEventNames} from '../../models/common';\nimport {block, getPageSearchParams} from '../../utils';\nimport Image from '../Image/Image';\n\nimport {i18n} from './i18n';\n\nimport './VideoBlock.scss';\n\nconst RECORD_URL = 'https://www.youtube.com/embed/';\nconst STREAM_URL = 'https://www.youtube.com/embed/live_stream?channel=';\nconst RECORD_RE = /[0-9A-Za-z_-]{11}/;\nconst STREAM_RE = /[0-9A-Za-z_-]{23,25}/;\nconst AUTOPLAY_DELAY = 300;\n\nexport const AUTOPLAY_ATTRIBUTES = {\n autoplay: 1,\n mute: 1,\n};\nconst NO_AUTOPLAY_ATTRIBUTES = {\n autoplay: 0,\n};\n\nconst b = block('VideoBlock');\n\nfunction getYoutubeVideoSrc(stream?: string, record?: string) {\n if (!stream && !record) {\n return null;\n }\n\n const [videoLink, url, re] = stream\n ? [stream, STREAM_URL, STREAM_RE]\n : [record, RECORD_URL, RECORD_RE];\n const match = videoLink?.match(re);\n let src;\n\n if (match && match.length) {\n src = url + match[0];\n }\n\n return src;\n}\n\nexport function getHeight(width: number): number {\n return (width / 16) * 9;\n}\n\nexport interface VideoBlockProps extends AnalyticsEventsBase {\n id?: string;\n stream?: string;\n record?: string;\n videoIframe?: string;\n attributes?: Record<string, string>;\n className?: string;\n previewImg?: string;\n playButton?: React.ReactNode;\n playButtonId?: string;\n height?: number;\n fullscreen?: boolean;\n autoplay?: boolean;\n onImageLoad?: () => void;\n}\n\nconst VideoBlock = (props: VideoBlockProps) => {\n const {\n stream,\n record,\n videoIframe,\n attributes,\n className,\n id,\n previewImg,\n playButton,\n playButtonId,\n height,\n fullscreen,\n analyticsEvents,\n autoplay,\n onImageLoad,\n } = props;\n const handleAnalytics = useAnalytics(DefaultEventNames.VideoPreview);\n\n const src = videoIframe ? videoIframe : getYoutubeVideoSrc(stream, record);\n const ref = React.useRef<HTMLDivElement>(null);\n const [hidePreview, setHidePreview] = React.useState(false);\n const [currentHeight, setCurrentHeight] = React.useState(height || undefined);\n const fullId = React.useMemo(() => id || uuidv4(), [id]);\n const buttonId = useUniqId();\n\n const [isPlaying, setIsPlaying] = React.useState(!previewImg);\n\n const iframeSrc = React.useMemo(() => {\n if (src && isPlaying) {\n try {\n const url = new URL(src);\n const searchParams = getPageSearchParams({\n ...(attributes || {}),\n ...(previewImg || autoplay ? AUTOPLAY_ATTRIBUTES : NO_AUTOPLAY_ATTRIBUTES),\n });\n\n searchParams.forEach((value, key) => {\n url.searchParams.set(key, value);\n });\n\n return url.href;\n } catch (e) {\n return src;\n }\n }\n\n return undefined;\n }, [attributes, autoplay, isPlaying, previewImg, src]);\n\n const onPreviewClick = React.useCallback(() => {\n handleAnalytics(analyticsEvents);\n\n setIsPlaying(true);\n\n setTimeout(() => setHidePreview(true), AUTOPLAY_DELAY);\n }, [handleAnalytics, analyticsEvents]);\n\n const {onKeyDown: onPreviewKeyDown} = useActionHandlers(onPreviewClick);\n\n React.useEffect(() => {\n const updateSize = debounce(() => {\n setCurrentHeight(\n ref.current ? Math.round(getHeight(ref.current.offsetWidth)) : undefined,\n );\n }, 100);\n\n updateSize();\n window.addEventListener('resize', updateSize, {passive: true});\n return () => {\n window.removeEventListener('resize', updateSize);\n };\n }, [height]);\n\n const iframeContent = React.useMemo(() => {\n return (\n <iframe\n id={fullId}\n src={iframeSrc}\n width=\"100%\"\n height=\"100%\"\n title={i18n('iframe-title')}\n frameBorder=\"0\"\n allowFullScreen={true}\n allow=\"autoplay; fullscreen; encrypted-media; accelerometer; gyroscope; picture-in-picture; clipboard-write; web-share; screen-wake-lock\"\n loading=\"lazy\"\n />\n );\n }, [fullId, iframeSrc]);\n\n React.useEffect(() => {\n setHidePreview(false);\n }, [src]);\n\n if (!src) {\n return null;\n }\n\n return (\n <div className={b(null, className)} style={{height: currentHeight}} ref={ref}>\n {iframeContent}\n {previewImg && !hidePreview && !fullscreen && (\n <div\n className={b('preview')}\n onClick={onPreviewClick}\n onKeyDown={onPreviewKeyDown}\n role=\"button\"\n tabIndex={0}\n aria-labelledby={playButton ? playButtonId : buttonId}\n >\n <Image\n src={previewImg}\n className={b('image')}\n containerClassName={b('image-wrapper')}\n onLoad={onImageLoad}\n />\n {playButton || (\n <button title=\"Play\" id={buttonId} className={b('button')}>\n <Icon className={b('icon')} data={PlayFill} size={24} />\n </button>\n )}\n </div>\n )}\n </div>\n );\n};\n\nexport default VideoBlock;\n"]}
1
+ {"version":3,"file":"VideoBlock.js","sourceRoot":"../../../../src","sources":["components/VideoBlock/VideoBlock.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {PlayFill} from '@gravity-ui/icons';\nimport {Icon, useActionHandlers, useUniqId} from '@gravity-ui/uikit';\nimport debounce from 'lodash/debounce';\nimport {v4 as uuidv4} from 'uuid';\n\nimport {useAnalytics} from '../../hooks/useAnalytics';\nimport {AnalyticsEventsBase, DefaultEventNames} from '../../models/common';\nimport {block, getPageSearchParams} from '../../utils';\nimport Image from '../Image/Image';\n\nimport {i18n} from './i18n';\n\nimport './VideoBlock.scss';\n\nconst RECORD_URL = 'https://www.youtube.com/embed/';\nconst STREAM_URL = 'https://www.youtube.com/embed/live_stream?channel=';\nconst RECORD_RE = /[0-9A-Za-z_-]{11}/;\nconst STREAM_RE = /[0-9A-Za-z_-]{23,25}/;\nconst AUTOPLAY_DELAY = 300;\n\nexport const AUTOPLAY_ATTRIBUTES = {\n autoplay: 1,\n mute: 1,\n};\nconst NO_AUTOPLAY_ATTRIBUTES = {\n autoplay: 0,\n};\n\nconst b = block('VideoBlock');\n\nfunction getYoutubeVideoSrc(stream?: string, record?: string) {\n if (!stream && !record) {\n return null;\n }\n\n const [videoLink, url, re] = stream\n ? [stream, STREAM_URL, STREAM_RE]\n : [record, RECORD_URL, RECORD_RE];\n const match = videoLink?.match(re);\n let src;\n\n if (match && match.length) {\n src = url + match[0];\n }\n\n return src;\n}\n\nexport function getHeight(width: number): number {\n return (width / 16) * 9;\n}\n\nexport interface VideoBlockProps extends AnalyticsEventsBase {\n id?: string;\n stream?: string;\n record?: string;\n videoIframe?: string;\n attributes?: Record<string, string>;\n className?: string;\n previewImg?: string;\n playButton?: React.ReactNode;\n playButtonId?: string;\n height?: number;\n fullscreen?: boolean;\n autoplay?: boolean;\n onImageLoad?: () => void;\n}\n\nconst VideoBlock = (props: VideoBlockProps) => {\n const {\n stream,\n record,\n videoIframe,\n attributes,\n className,\n id,\n previewImg,\n playButton,\n playButtonId,\n height,\n fullscreen,\n analyticsEvents,\n autoplay,\n onImageLoad,\n } = props;\n const handleAnalytics = useAnalytics(DefaultEventNames.VideoPreview);\n\n const src = videoIframe ? videoIframe : getYoutubeVideoSrc(stream, record);\n const ref = React.useRef<HTMLDivElement>(null);\n const [hidePreview, setHidePreview] = React.useState(false);\n const [currentHeight, setCurrentHeight] = React.useState(height || undefined);\n const fullId = React.useMemo(() => id || uuidv4(), [id]);\n const buttonId = useUniqId();\n\n const [isPlaying, setIsPlaying] = React.useState(!previewImg);\n\n const iframeSrc = React.useMemo(() => {\n if (src && isPlaying) {\n try {\n const url = new URL(src);\n const searchParams = getPageSearchParams({\n ...(attributes || {}),\n ...(previewImg || autoplay ? AUTOPLAY_ATTRIBUTES : NO_AUTOPLAY_ATTRIBUTES),\n });\n\n searchParams.forEach((value, key) => {\n url.searchParams.set(key, value);\n });\n\n return url.href;\n } catch (e) {\n return src;\n }\n }\n\n return undefined;\n }, [attributes, autoplay, isPlaying, previewImg, src]);\n\n const onPreviewClick = React.useCallback(() => {\n handleAnalytics(analyticsEvents);\n\n setIsPlaying(true);\n\n setTimeout(() => setHidePreview(true), AUTOPLAY_DELAY);\n }, [handleAnalytics, analyticsEvents]);\n\n const {onKeyDown: onPreviewKeyDown} = useActionHandlers(onPreviewClick);\n\n React.useEffect(() => {\n const updateSize = debounce(() => {\n setCurrentHeight(\n ref.current ? Math.round(getHeight(ref.current.offsetWidth)) : undefined,\n );\n }, 100);\n\n updateSize();\n window.addEventListener('resize', updateSize, {passive: true});\n return () => {\n window.removeEventListener('resize', updateSize);\n };\n }, [height]);\n\n const iframeContent = React.useMemo(() => {\n return (\n <iframe\n id={fullId}\n src={iframeSrc}\n width=\"100%\"\n height=\"100%\"\n title={i18n('iframe-title')}\n frameBorder=\"0\"\n allowFullScreen={true}\n allow=\"autoplay; fullscreen; encrypted-media; accelerometer; gyroscope; picture-in-picture; clipboard-write; web-share; screen-wake-lock\"\n loading=\"lazy\"\n />\n );\n }, [fullId, iframeSrc]);\n\n React.useEffect(() => {\n setHidePreview(false);\n }, [src]);\n\n if (!src) {\n return null;\n }\n\n return (\n <div className={b(null, className)} style={{height: currentHeight}} ref={ref}>\n {iframeContent}\n {previewImg && !hidePreview && !fullscreen && (\n <div\n className={b('preview')}\n onClick={onPreviewClick}\n onKeyDown={onPreviewKeyDown}\n role=\"button\"\n tabIndex={0}\n aria-labelledby={playButton ? playButtonId : buttonId}\n >\n <Image\n src={previewImg}\n className={b('image')}\n containerClassName={b('image-wrapper')}\n onLoad={onImageLoad}\n />\n {playButton || (\n <button title=\"Play\" id={buttonId} className={b('button')}>\n <Icon className={b('icon')} data={PlayFill} size={24} />\n </button>\n )}\n </div>\n )}\n </div>\n );\n};\n\nexport default VideoBlock;\n"]}
@@ -1,10 +1,12 @@
1
+ import * as React from 'react';
1
2
  import { ClassNameProps, Modifiers } from "../../models/index.js";
2
3
  import { QAProps } from "../../models/common.js";
3
- export interface YFMWrapperProps extends ClassNameProps, QAProps {
4
+ import { HTMLExtraProps } from "../HTML/HTML.js";
5
+ export interface YFMWrapperProps extends React.PropsWithChildren, ClassNameProps, QAProps, HTMLExtraProps, React.HTMLProps<{}> {
4
6
  content: string;
5
7
  modifiers?: Modifiers;
6
8
  itemProp?: string;
7
9
  id?: string;
8
10
  }
9
- declare const YFMWrapper: ({ content, modifiers, className, itemProp, id, qa }: YFMWrapperProps) => import("react/jsx-runtime").JSX.Element;
11
+ declare const YFMWrapper: ({ contentClassName, modifiers, children, ...rest }: YFMWrapperProps) => import("react/jsx-runtime").JSX.Element;
10
12
  export default YFMWrapper;
@@ -2,12 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- /* we won't use 'pc' class prefix here to let you opportunity to define yfm styles
6
- in your project via global 'yfm' class */
7
5
  const snakecase_keys_1 = tslib_1.__importDefault(require("snakecase-keys"));
8
6
  const components_1 = require("../index.js");
9
7
  const utils_1 = require("../../utils/index.js");
10
8
  const yfm = (0, utils_1.cn)('yfm');
11
- const YFMWrapper = ({ content, modifiers, className, itemProp, id, qa }) => ((0, jsx_runtime_1.jsx)(components_1.HTML, { className: yfm(modifiers ? (0, snakecase_keys_1.default)(modifiers) : {}, className), itemProp: itemProp, id: id, qa: qa, children: content }));
9
+ const YFMWrapper = (_a) => {
10
+ var { contentClassName, modifiers, children } = _a, rest = tslib_1.__rest(_a, ["contentClassName", "modifiers", "children"]);
11
+ return ((0, jsx_runtime_1.jsx)(components_1.HTML, Object.assign({ contentClassName: yfm(modifiers ? (0, snakecase_keys_1.default)(modifiers) : {}, contentClassName) }, rest, { children: children })));
12
+ };
12
13
  exports.default = YFMWrapper;
13
14
  //# sourceMappingURL=YFMWrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"YFMWrapper.js","sourceRoot":"../../../../src","sources":["components/YFMWrapper/YFMWrapper.tsx"],"names":[],"mappings":";;;;AAAA;yCACyC;AACzC,4EAAyC;AAEzC,4CAAsC;AAGtC,gDAA+B;AAE/B,MAAM,GAAG,GAAG,IAAA,UAAE,EAAC,KAAK,CAAC,CAAC;AAStB,MAAM,UAAU,GAAG,CAAC,EAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAkB,EAAE,EAAE,CAAC,CACvF,uBAAC,iBAAI,IACD,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,wBAAW,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,EAClE,QAAQ,EAAE,QAAQ,EAClB,EAAE,EAAE,EAAE,EACN,EAAE,EAAE,EAAE,YAEL,OAAO,GACL,CACV,CAAC;AAEF,kBAAe,UAAU,CAAC","sourcesContent":["/* we won't use 'pc' class prefix here to let you opportunity to define yfm styles\nin your project via global 'yfm' class */\nimport toSnakeCase from 'snakecase-keys';\n\nimport {HTML} from '../../components';\nimport {ClassNameProps, Modifiers} from '../../models';\nimport {QAProps} from '../../models/common';\nimport {cn} from '../../utils';\n\nconst yfm = cn('yfm');\n\nexport interface YFMWrapperProps extends ClassNameProps, QAProps {\n content: string;\n modifiers?: Modifiers;\n itemProp?: string;\n id?: string;\n}\n\nconst YFMWrapper = ({content, modifiers, className, itemProp, id, qa}: YFMWrapperProps) => (\n <HTML\n className={yfm(modifiers ? toSnakeCase(modifiers) : {}, className)}\n itemProp={itemProp}\n id={id}\n qa={qa}\n >\n {content}\n </HTML>\n);\n\nexport default YFMWrapper;\n"]}
1
+ {"version":3,"file":"YFMWrapper.js","sourceRoot":"../../../../src","sources":["components/YFMWrapper/YFMWrapper.tsx"],"names":[],"mappings":";;;;AAIA,4EAAyC;AAEzC,4CAAsC;AAGtC,gDAA+B;AAG/B,MAAM,GAAG,GAAG,IAAA,UAAE,EAAC,KAAK,CAAC,CAAC;AActB,MAAM,UAAU,GAAG,CAAC,EAAiE,EAAE,EAAE;QAArE,EAAC,gBAAgB,EAAE,SAAS,EAAE,QAAQ,OAA2B,EAAtB,IAAI,sBAA/C,6CAAgD,CAAD;IAAuB,OAAA,CACtF,uBAAC,iBAAI,kBACD,gBAAgB,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,wBAAW,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,gBAAgB,CAAC,IAC5E,IAAI,cAEP,QAAQ,IACN,CACV,CAAA;CAAA,CAAC;AAEF,kBAAe,UAAU,CAAC","sourcesContent":["/* we won't use 'pc' class prefix here to let you opportunity to define yfm styles\nin your project via global 'yfm' class */\nimport * as React from 'react';\n\nimport toSnakeCase from 'snakecase-keys';\n\nimport {HTML} from '../../components';\nimport {ClassNameProps, Modifiers} from '../../models';\nimport {QAProps} from '../../models/common';\nimport {cn} from '../../utils';\nimport {HTMLExtraProps} from '../HTML/HTML';\n\nconst yfm = cn('yfm');\n\nexport interface YFMWrapperProps\n extends React.PropsWithChildren,\n ClassNameProps,\n QAProps,\n HTMLExtraProps,\n React.HTMLProps<{}> {\n content: string;\n modifiers?: Modifiers;\n itemProp?: string;\n id?: string;\n}\n\nconst YFMWrapper = ({contentClassName, modifiers, children, ...rest}: YFMWrapperProps) => (\n <HTML\n contentClassName={yfm(modifiers ? toSnakeCase(modifiers) : {}, contentClassName)}\n {...rest}\n >\n {children}\n </HTML>\n);\n\nexport default YFMWrapper;\n"]}
@@ -28,7 +28,7 @@ const YandexForm = (props) => {
28
28
  const url = location.origin + location.pathname;
29
29
  queryParams.set('url', url);
30
30
  queryParams.set('iframe', '1');
31
- if (locale?.lang) {
31
+ if (locale === null || locale === void 0 ? void 0 : locale.lang) {
32
32
  queryParams.set('lang', locale.lang);
33
33
  }
34
34
  queryParams.set('theme', theme || 'cloud-www');
@@ -79,7 +79,7 @@ const YandexForm = (props) => {
79
79
  }
80
80
  if (iframeRef.current && height && !message) {
81
81
  iframeRef.current.height = `${height}px`;
82
- onLoad?.();
82
+ onLoad === null || onLoad === void 0 ? void 0 : onLoad();
83
83
  }
84
84
  if (message === 'sent' || redirectUrl) {
85
85
  // event with redirectUrl is comming when form with redirect is used
@@ -103,7 +103,7 @@ const YandexForm = (props) => {
103
103
  addIframe();
104
104
  // Crunch for mobile chrome in lite mode
105
105
  // https://support.google.com/chrome/answer/2392284?co=GENIE.Platform%3DAndroid&oco=1
106
- setTimeout(() => onLoad?.(), 1000);
106
+ setTimeout(() => onLoad === null || onLoad === void 0 ? void 0 : onLoad(), 1000);
107
107
  return () => window.removeEventListener('message', handleMessage);
108
108
  }, [id, addIframe, handleMessage, onLoad]);
109
109
  return (0, jsx_runtime_1.jsx)("div", { ref: formContainerRef, className: b(null, className) });
@@ -1 +1 @@
1
- {"version":3,"file":"YandexForm.js","sourceRoot":"../../../../src","sources":["components/YandexForm/YandexForm.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {LocaleContext} from '../../context/localeContext';\nimport {MobileContext} from '../../context/mobileContext';\nimport {useAnalytics} from '../../hooks';\nimport {YandexFormProps} from '../../models';\nimport {DefaultEventNames} from '../../models/common';\nimport {block} from '../../utils';\nimport {HEADER_HEIGHT} from '../constants';\n\nexport const YANDEX_FORM_ORIGIN = 'https://forms.yandex.ru';\nexport const YANDEX_FORM_SECTION = 'surveys';\nconst CONTAINER_ID = 'pc-yandex-form-container';\n\nconst b = block('yandex-form');\n\nconst YandexForm = (props: YandexFormProps) => {\n const {\n onLoad,\n id,\n params,\n className,\n theme,\n containerId = CONTAINER_ID,\n headerHeight = HEADER_HEIGHT,\n onSubmit,\n analyticsEvents,\n customFormOrigin,\n customFormSection,\n } = props;\n const formContainerRef = React.useRef<HTMLDivElement>(null);\n const iframeRef = React.useRef<HTMLIFrameElement>();\n const yaFormOrigin = customFormOrigin || YANDEX_FORM_ORIGIN;\n const yaFormSection = customFormSection || YANDEX_FORM_SECTION;\n\n const handleAnalytics = useAnalytics(DefaultEventNames.YandexFormSubmit);\n const isMobile = React.useContext(MobileContext);\n const locale = React.useContext(LocaleContext);\n\n const updateFormIframe = React.useCallback(\n (container: HTMLDivElement) => {\n const queryParams = new URLSearchParams(location.search);\n const url = location.origin + location.pathname;\n\n queryParams.set('url', url);\n queryParams.set('iframe', '1');\n\n if (locale?.lang) {\n queryParams.set('lang', locale.lang);\n }\n\n queryParams.set('theme', theme || 'cloud-www');\n\n if (isMobile) {\n queryParams.set('media-type', 'mobile');\n }\n\n if (params) {\n Object.keys(params).forEach((param) => {\n queryParams.set(param, params[param]);\n });\n }\n\n const src = `${yaFormOrigin}/${yaFormSection}/${id}/?${queryParams}`;\n\n if (iframeRef.current) {\n iframeRef.current.src = src;\n } else {\n iframeRef.current = document.createElement('iframe');\n iframeRef.current.src = src;\n iframeRef.current.id = containerId;\n iframeRef.current.name = `form${id}`;\n iframeRef.current.setAttribute('loading', 'lazy');\n iframeRef.current.frameBorder = '0';\n iframeRef.current.scrolling = 'no';\n iframeRef.current.width = '100%';\n container.appendChild(iframeRef.current);\n }\n },\n [locale.lang, theme, isMobile, yaFormOrigin, yaFormSection, id, containerId, params],\n );\n\n const handleSubmit = React.useCallback(() => {\n if (formContainerRef && formContainerRef.current) {\n const {top} = formContainerRef.current.getBoundingClientRect();\n window.scrollBy(0, top - headerHeight);\n }\n\n handleAnalytics(analyticsEvents);\n\n if (onSubmit) {\n onSubmit();\n }\n }, [handleAnalytics, analyticsEvents, onSubmit, headerHeight]);\n\n const handleMessage = React.useCallback(\n ({origin, data}: MessageEvent) => {\n if (origin !== yaFormOrigin) {\n return;\n }\n\n try {\n const parsed = JSON.parse(data);\n const height = parsed['iframe-height'];\n const {message, name, redirectUrl} = parsed;\n if (name !== `form${id}`) {\n return;\n }\n\n if (iframeRef.current && height && !message) {\n iframeRef.current.height = `${height}px`;\n onLoad?.();\n }\n\n if (message === 'sent' || redirectUrl) {\n // event with redirectUrl is comming when form with redirect is used\n // otherwise, message: 'sent' is not comming on such sort of forms\n // to catch this event and handle analytics redirectUrl is added to condition\n handleSubmit();\n }\n } catch (error) {\n return;\n }\n },\n [yaFormOrigin, id, onLoad, handleSubmit],\n );\n\n const addIframe = React.useCallback(() => {\n const container = formContainerRef.current;\n\n if (container) {\n updateFormIframe(container);\n window.addEventListener('message', handleMessage, {passive: true});\n }\n }, [updateFormIframe, handleMessage]);\n\n React.useEffect(() => {\n addIframe();\n // Crunch for mobile chrome in lite mode\n // https://support.google.com/chrome/answer/2392284?co=GENIE.Platform%3DAndroid&oco=1\n setTimeout(() => onLoad?.(), 1000);\n\n return () => window.removeEventListener('message', handleMessage);\n }, [id, addIframe, handleMessage, onLoad]);\n\n return <div ref={formContainerRef} className={b(null, className)} />;\n};\n\nexport default YandexForm;\n"]}
1
+ {"version":3,"file":"YandexForm.js","sourceRoot":"../../../../src","sources":["components/YandexForm/YandexForm.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {LocaleContext} from '../../context/localeContext';\nimport {MobileContext} from '../../context/mobileContext';\nimport {useAnalytics} from '../../hooks';\nimport {YandexFormProps} from '../../models';\nimport {DefaultEventNames} from '../../models/common';\nimport {block} from '../../utils';\nimport {HEADER_HEIGHT} from '../constants';\n\nexport const YANDEX_FORM_ORIGIN = 'https://forms.yandex.ru';\nexport const YANDEX_FORM_SECTION = 'surveys';\nconst CONTAINER_ID = 'pc-yandex-form-container';\n\nconst b = block('yandex-form');\n\nconst YandexForm = (props: YandexFormProps) => {\n const {\n onLoad,\n id,\n params,\n className,\n theme,\n containerId = CONTAINER_ID,\n headerHeight = HEADER_HEIGHT,\n onSubmit,\n analyticsEvents,\n customFormOrigin,\n customFormSection,\n } = props;\n const formContainerRef = React.useRef<HTMLDivElement>(null);\n const iframeRef = React.useRef<HTMLIFrameElement>();\n const yaFormOrigin = customFormOrigin || YANDEX_FORM_ORIGIN;\n const yaFormSection = customFormSection || YANDEX_FORM_SECTION;\n\n const handleAnalytics = useAnalytics(DefaultEventNames.YandexFormSubmit);\n const isMobile = React.useContext(MobileContext);\n const locale = React.useContext(LocaleContext);\n\n const updateFormIframe = React.useCallback(\n (container: HTMLDivElement) => {\n const queryParams = new URLSearchParams(location.search);\n const url = location.origin + location.pathname;\n\n queryParams.set('url', url);\n queryParams.set('iframe', '1');\n\n if (locale?.lang) {\n queryParams.set('lang', locale.lang);\n }\n\n queryParams.set('theme', theme || 'cloud-www');\n\n if (isMobile) {\n queryParams.set('media-type', 'mobile');\n }\n\n if (params) {\n Object.keys(params).forEach((param) => {\n queryParams.set(param, params[param]);\n });\n }\n\n const src = `${yaFormOrigin}/${yaFormSection}/${id}/?${queryParams}`;\n\n if (iframeRef.current) {\n iframeRef.current.src = src;\n } else {\n iframeRef.current = document.createElement('iframe');\n iframeRef.current.src = src;\n iframeRef.current.id = containerId;\n iframeRef.current.name = `form${id}`;\n iframeRef.current.setAttribute('loading', 'lazy');\n iframeRef.current.frameBorder = '0';\n iframeRef.current.scrolling = 'no';\n iframeRef.current.width = '100%';\n container.appendChild(iframeRef.current);\n }\n },\n [locale.lang, theme, isMobile, yaFormOrigin, yaFormSection, id, containerId, params],\n );\n\n const handleSubmit = React.useCallback(() => {\n if (formContainerRef && formContainerRef.current) {\n const {top} = formContainerRef.current.getBoundingClientRect();\n window.scrollBy(0, top - headerHeight);\n }\n\n handleAnalytics(analyticsEvents);\n\n if (onSubmit) {\n onSubmit();\n }\n }, [handleAnalytics, analyticsEvents, onSubmit, headerHeight]);\n\n const handleMessage = React.useCallback(\n ({origin, data}: MessageEvent) => {\n if (origin !== yaFormOrigin) {\n return;\n }\n\n try {\n const parsed = JSON.parse(data);\n const height = parsed['iframe-height'];\n const {message, name, redirectUrl} = parsed;\n if (name !== `form${id}`) {\n return;\n }\n\n if (iframeRef.current && height && !message) {\n iframeRef.current.height = `${height}px`;\n onLoad?.();\n }\n\n if (message === 'sent' || redirectUrl) {\n // event with redirectUrl is comming when form with redirect is used\n // otherwise, message: 'sent' is not comming on such sort of forms\n // to catch this event and handle analytics redirectUrl is added to condition\n handleSubmit();\n }\n } catch (error) {\n return;\n }\n },\n [yaFormOrigin, id, onLoad, handleSubmit],\n );\n\n const addIframe = React.useCallback(() => {\n const container = formContainerRef.current;\n\n if (container) {\n updateFormIframe(container);\n window.addEventListener('message', handleMessage, {passive: true});\n }\n }, [updateFormIframe, handleMessage]);\n\n React.useEffect(() => {\n addIframe();\n // Crunch for mobile chrome in lite mode\n // https://support.google.com/chrome/answer/2392284?co=GENIE.Platform%3DAndroid&oco=1\n setTimeout(() => onLoad?.(), 1000);\n\n return () => window.removeEventListener('message', handleMessage);\n }, [id, addIframe, handleMessage, onLoad]);\n\n return <div ref={formContainerRef} className={b(null, className)} />;\n};\n\nexport default YandexForm;\n"]}
@@ -5,14 +5,10 @@ const common_1 = require("../../schema/validators/common.js");
5
5
  exports.YandexFormProps = {
6
6
  type: 'object',
7
7
  required: ['id'],
8
- properties: {
9
- ...common_1.BaseProps,
10
- id: {
8
+ properties: Object.assign(Object.assign({}, common_1.BaseProps), { id: {
11
9
  type: 'string',
12
- },
13
- containerId: {
10
+ }, containerId: {
14
11
  type: 'string',
15
- },
16
- },
12
+ } }),
17
13
  };
18
14
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["components/YandexForm/schema.ts"],"names":[],"mappings":";;;AAAA,8DAAyD;AAE5C,QAAA,eAAe,GAAG;IAC3B,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAC,IAAI,CAAC;IAChB,UAAU,EAAE;QACR,GAAG,kBAAS;QACZ,EAAE,EAAE;YACA,IAAI,EAAE,QAAQ;SACjB;QACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;SACjB;KACJ;CACJ,CAAC","sourcesContent":["import {BaseProps} from '../../schema/validators/common';\n\nexport const YandexFormProps = {\n type: 'object',\n required: ['id'],\n properties: {\n ...BaseProps,\n id: {\n type: 'string',\n },\n containerId: {\n type: 'string',\n },\n },\n};\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["components/YandexForm/schema.ts"],"names":[],"mappings":";;;AAAA,8DAAyD;AAE5C,QAAA,eAAe,GAAG;IAC3B,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAC,IAAI,CAAC;IAChB,UAAU,kCACH,kBAAS,KACZ,EAAE,EAAE;YACA,IAAI,EAAE,QAAQ;SACjB,EACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;SACjB,GACJ;CACJ,CAAC","sourcesContent":["import {BaseProps} from '../../schema/validators/common';\n\nexport const YandexFormProps = {\n type: 'object',\n required: ['id'],\n properties: {\n ...BaseProps,\n id: {\n type: 'string',\n },\n containerId: {\n type: 'string',\n },\n },\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  export declare const blockMap: {
2
- "slider-block": (props: React.PropsWithChildren<import("./blocks/Slider/Slider.js").SliderProps>) => import("react/jsx-runtime").JSX.Element;
2
+ "slider-old-block": (props: React.PropsWithChildren<import("./blocks/SliderOld/SliderOld.js").SliderOldProps>) => import("react/jsx-runtime").JSX.Element;
3
3
  "extended-features-block": ({ title, description, items, colSizes, animated, }: import("./models/index.js").ExtendedFeaturesProps) => import("react/jsx-runtime").JSX.Element;
4
4
  "promo-features-block": (props: import("./models/index.js").PromoFeaturesProps) => import("react/jsx-runtime").JSX.Element;
5
5
  "questions-block": (props: import("./models/index.js").QuestionsProps) => import("react/jsx-runtime").JSX.Element;
@@ -18,7 +18,7 @@ export declare const blockMap: {
18
18
  "map-block": ({ map, border, disableShadow, ...props }: import("./models/index.js").MapBlockProps) => import("react/jsx-runtime").JSX.Element;
19
19
  "filter-block": import("react").FC<import("./models").FilterBlockProps>;
20
20
  "form-block": import("react").FC<import("./models").FormBlockProps>;
21
- "slider-new-block": ({ animated, title, description, type, anchorId, arrows, adaptive, autoplay: autoplayMs, dots, className, dotsClassName, disclaimer, children, blockClassName, arrowSize, slidesToShow, onSlideChange, onSlideChangeTransitionStart, onSlideChangeTransitionEnd, onActiveIndexChange, onBreakpoint, }: React.PropsWithChildren<import("./blocks/SliderNew/Slider.js").SliderNewProps>) => import("react/jsx-runtime").JSX.Element;
21
+ "slider-block": ({ animated, title, description, type, anchorId, arrows, adaptive, autoplay: autoplayMs, dots, initialSlide, className, dotsClassName, disclaimer, children, blockClassName, arrowSize, slidesToShow, onSlideChange, onSlideChangeTransitionStart, onSlideChangeTransitionEnd, onActiveIndexChange, onBreakpoint, }: React.PropsWithChildren<import("./blocks/Slider/Slider.js").SliderProps>) => import("react/jsx-runtime").JSX.Element;
22
22
  };
23
23
  export declare const subBlockMap: {
24
24
  divider: ({ size, border }: import("./models/index.js").DividerProps) => import("react/jsx-runtime").JSX.Element;
@@ -3,13 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.navItemMap = exports.subBlockMap = exports.blockMap = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const blocks_1 = require("./blocks/index.js");
6
- const unstable_1 = require("./blocks/unstable.js");
7
6
  const models_1 = require("./models/index.js");
8
7
  const NavigationItem_1 = require("./navigation/components/NavigationItem/index.js");
9
8
  const SocialIcon_1 = tslib_1.__importDefault(require("./navigation/components/SocialIcon/SocialIcon.js"));
10
9
  const sub_blocks_1 = require("./sub-blocks/index.js");
11
10
  exports.blockMap = {
12
- [models_1.BlockType.SliderBlock]: blocks_1.SliderBlock,
11
+ [models_1.BlockType.SliderOldBlock]: blocks_1.SliderOldBlock,
13
12
  [models_1.BlockType.ExtendedFeaturesBlock]: blocks_1.ExtendedFeaturesBlock,
14
13
  [models_1.BlockType.PromoFeaturesBlock]: blocks_1.PromoFeaturesBlock,
15
14
  [models_1.BlockType.QuestionsBlock]: blocks_1.QuestionsBlock,
@@ -28,8 +27,7 @@ exports.blockMap = {
28
27
  [models_1.BlockType.MapBlock]: blocks_1.MapBlock,
29
28
  [models_1.BlockType.FilterBlock]: blocks_1.FilterBlock,
30
29
  [models_1.BlockType.FormBlock]: blocks_1.FormBlock,
31
- // unstable
32
- [models_1.BlockType.SliderNewBlock]: unstable_1.SliderNewBlock,
30
+ [models_1.BlockType.SliderBlock]: blocks_1.SliderBlock,
33
31
  };
34
32
  exports.subBlockMap = {
35
33
  [models_1.SubBlockType.Divider]: sub_blocks_1.Divider,
@@ -1 +1 @@
1
- {"version":3,"file":"constructor-items.js","sourceRoot":"../../src","sources":["constructor-items.ts"],"names":[],"mappings":";;;;AAAA,8CAoBkB;AAClB,mDAAiD;AACjD,8CAAqE;AACrE,oFAKgD;AAChD,0GAAuE;AACvE,sDAYsB;AAET,QAAA,QAAQ,GAAG;IACpB,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;IACpC,CAAC,kBAAS,CAAC,qBAAqB,CAAC,EAAE,8BAAqB;IACxD,CAAC,kBAAS,CAAC,kBAAkB,CAAC,EAAE,2BAAkB;IAClD,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE,uBAAc;IAC1C,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;IACpC,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE,uBAAc;IAC1C,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE,kBAAS;IAChC,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE,kBAAS;IAChC,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;IACpC,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,iBAAiB,CAAC,EAAE,0BAAiB;IAChD,CAAC,kBAAS,CAAC,eAAe,CAAC,EAAE,wBAAe;IAC5C,CAAC,kBAAS,CAAC,kBAAkB,CAAC,EAAE,2BAAkB;IAClD,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,QAAQ,CAAC,EAAE,iBAAQ;IAC9B,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;IACpC,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE,kBAAS;IAChC,WAAW;IACX,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE,yBAAc;CAC7C,CAAC;AAEW,QAAA,WAAW,GAAG;IACvB,CAAC,qBAAY,CAAC,OAAO,CAAC,EAAE,oBAAO;IAC/B,CAAC,qBAAY,CAAC,aAAa,CAAC,EAAE,0BAAa;IAC3C,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;IACnC,CAAC,qBAAY,CAAC,UAAU,CAAC,EAAE,uBAAU;IACrC,CAAC,qBAAY,CAAC,UAAU,CAAC,EAAE,uBAAU;IACrC,CAAC,qBAAY,CAAC,cAAc,CAAC,EAAE,2BAAc;IAC7C,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;IACnC,CAAC,qBAAY,CAAC,OAAO,CAAC,EAAE,oBAAO;IAC/B,CAAC,qBAAY,CAAC,KAAK,CAAC,EAAE,kBAAK;IAC3B,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;IACnC,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;CACtC,CAAC;AAEW,QAAA,UAAU,GAAG;IACtB,CAAC,2BAAkB,CAAC,MAAM,CAAC,EAAE,iCAAgB;IAC7C,CAAC,2BAAkB,CAAC,MAAM,CAAC,EAAE,oBAAU;IACvC,CAAC,2BAAkB,CAAC,QAAQ,CAAC,EAAE,mCAAkB;IACjD,CAAC,2BAAkB,CAAC,IAAI,CAAC,EAAE,+BAAc;IACzC,CAAC,2BAAkB,CAAC,YAAY,CAAC,EAAE,6BAAY;CAClD,CAAC","sourcesContent":["import {\n BannerBlock,\n CardLayoutBlock,\n CompaniesBlock,\n ContentLayoutBlock,\n ExtendedFeaturesBlock,\n FilterBlock,\n FormBlock,\n HeaderBlock,\n HeaderSliderBlock,\n IconsBlock,\n InfoBlock,\n MapBlock,\n MediaBlock,\n PromoFeaturesBlock,\n QuestionsBlock,\n ShareBlock,\n SliderBlock,\n TableBlock,\n TabsBlock,\n} from './blocks';\nimport {SliderNewBlock} from './blocks/unstable';\nimport {BlockType, NavigationItemType, SubBlockType} from './models';\nimport {\n GithubButton,\n NavigationButton,\n NavigationDropdown,\n NavigationLink,\n} from './navigation/components/NavigationItem';\nimport SocialIcon from './navigation/components/SocialIcon/SocialIcon';\nimport {\n BackgroundCard,\n BannerCard,\n BasicCard,\n Content,\n Divider,\n ImageCard,\n LayoutItem,\n MediaCard,\n PriceCard,\n PriceDetailed,\n Quote,\n} from './sub-blocks';\n\nexport const blockMap = {\n [BlockType.SliderBlock]: SliderBlock,\n [BlockType.ExtendedFeaturesBlock]: ExtendedFeaturesBlock,\n [BlockType.PromoFeaturesBlock]: PromoFeaturesBlock,\n [BlockType.QuestionsBlock]: QuestionsBlock,\n [BlockType.BannerBlock]: BannerBlock,\n [BlockType.CompaniesBlock]: CompaniesBlock,\n [BlockType.MediaBlock]: MediaBlock,\n [BlockType.InfoBlock]: InfoBlock,\n [BlockType.TableBlock]: TableBlock,\n [BlockType.TabsBlock]: TabsBlock,\n [BlockType.HeaderBlock]: HeaderBlock,\n [BlockType.IconsBlock]: IconsBlock,\n [BlockType.HeaderSliderBlock]: HeaderSliderBlock,\n [BlockType.CardLayoutBlock]: CardLayoutBlock,\n [BlockType.ContentLayoutBlock]: ContentLayoutBlock,\n [BlockType.ShareBlock]: ShareBlock,\n [BlockType.MapBlock]: MapBlock,\n [BlockType.FilterBlock]: FilterBlock,\n [BlockType.FormBlock]: FormBlock,\n // unstable\n [BlockType.SliderNewBlock]: SliderNewBlock,\n};\n\nexport const subBlockMap = {\n [SubBlockType.Divider]: Divider,\n [SubBlockType.PriceDetailed]: PriceDetailed,\n [SubBlockType.MediaCard]: MediaCard,\n [SubBlockType.BannerCard]: BannerCard,\n [SubBlockType.LayoutItem]: LayoutItem,\n [SubBlockType.BackgroundCard]: BackgroundCard,\n [SubBlockType.BasicCard]: BasicCard,\n [SubBlockType.Content]: Content,\n [SubBlockType.Quote]: Quote,\n [SubBlockType.PriceCard]: PriceCard,\n [SubBlockType.ImageCard]: ImageCard,\n};\n\nexport const navItemMap = {\n [NavigationItemType.Button]: NavigationButton,\n [NavigationItemType.Social]: SocialIcon,\n [NavigationItemType.Dropdown]: NavigationDropdown,\n [NavigationItemType.Link]: NavigationLink,\n [NavigationItemType.GithubButton]: GithubButton,\n};\n"]}
1
+ {"version":3,"file":"constructor-items.js","sourceRoot":"../../src","sources":["constructor-items.ts"],"names":[],"mappings":";;;;AAAA,8CAqBkB;AAClB,8CAAqE;AACrE,oFAKgD;AAChD,0GAAuE;AACvE,sDAYsB;AAET,QAAA,QAAQ,GAAG;IACpB,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE,uBAAc;IAC1C,CAAC,kBAAS,CAAC,qBAAqB,CAAC,EAAE,8BAAqB;IACxD,CAAC,kBAAS,CAAC,kBAAkB,CAAC,EAAE,2BAAkB;IAClD,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE,uBAAc;IAC1C,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;IACpC,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE,uBAAc;IAC1C,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE,kBAAS;IAChC,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE,kBAAS;IAChC,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;IACpC,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,iBAAiB,CAAC,EAAE,0BAAiB;IAChD,CAAC,kBAAS,CAAC,eAAe,CAAC,EAAE,wBAAe;IAC5C,CAAC,kBAAS,CAAC,kBAAkB,CAAC,EAAE,2BAAkB;IAClD,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,mBAAU;IAClC,CAAC,kBAAS,CAAC,QAAQ,CAAC,EAAE,iBAAQ;IAC9B,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;IACpC,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE,kBAAS;IAChC,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,oBAAW;CACvC,CAAC;AAEW,QAAA,WAAW,GAAG;IACvB,CAAC,qBAAY,CAAC,OAAO,CAAC,EAAE,oBAAO;IAC/B,CAAC,qBAAY,CAAC,aAAa,CAAC,EAAE,0BAAa;IAC3C,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;IACnC,CAAC,qBAAY,CAAC,UAAU,CAAC,EAAE,uBAAU;IACrC,CAAC,qBAAY,CAAC,UAAU,CAAC,EAAE,uBAAU;IACrC,CAAC,qBAAY,CAAC,cAAc,CAAC,EAAE,2BAAc;IAC7C,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;IACnC,CAAC,qBAAY,CAAC,OAAO,CAAC,EAAE,oBAAO;IAC/B,CAAC,qBAAY,CAAC,KAAK,CAAC,EAAE,kBAAK;IAC3B,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;IACnC,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE,sBAAS;CACtC,CAAC;AAEW,QAAA,UAAU,GAAG;IACtB,CAAC,2BAAkB,CAAC,MAAM,CAAC,EAAE,iCAAgB;IAC7C,CAAC,2BAAkB,CAAC,MAAM,CAAC,EAAE,oBAAU;IACvC,CAAC,2BAAkB,CAAC,QAAQ,CAAC,EAAE,mCAAkB;IACjD,CAAC,2BAAkB,CAAC,IAAI,CAAC,EAAE,+BAAc;IACzC,CAAC,2BAAkB,CAAC,YAAY,CAAC,EAAE,6BAAY;CAClD,CAAC","sourcesContent":["import {\n BannerBlock,\n CardLayoutBlock,\n CompaniesBlock,\n ContentLayoutBlock,\n ExtendedFeaturesBlock,\n FilterBlock,\n FormBlock,\n HeaderBlock,\n HeaderSliderBlock,\n IconsBlock,\n InfoBlock,\n MapBlock,\n MediaBlock,\n PromoFeaturesBlock,\n QuestionsBlock,\n ShareBlock,\n SliderBlock,\n SliderOldBlock,\n TableBlock,\n TabsBlock,\n} from './blocks';\nimport {BlockType, NavigationItemType, SubBlockType} from './models';\nimport {\n GithubButton,\n NavigationButton,\n NavigationDropdown,\n NavigationLink,\n} from './navigation/components/NavigationItem';\nimport SocialIcon from './navigation/components/SocialIcon/SocialIcon';\nimport {\n BackgroundCard,\n BannerCard,\n BasicCard,\n Content,\n Divider,\n ImageCard,\n LayoutItem,\n MediaCard,\n PriceCard,\n PriceDetailed,\n Quote,\n} from './sub-blocks';\n\nexport const blockMap = {\n [BlockType.SliderOldBlock]: SliderOldBlock,\n [BlockType.ExtendedFeaturesBlock]: ExtendedFeaturesBlock,\n [BlockType.PromoFeaturesBlock]: PromoFeaturesBlock,\n [BlockType.QuestionsBlock]: QuestionsBlock,\n [BlockType.BannerBlock]: BannerBlock,\n [BlockType.CompaniesBlock]: CompaniesBlock,\n [BlockType.MediaBlock]: MediaBlock,\n [BlockType.InfoBlock]: InfoBlock,\n [BlockType.TableBlock]: TableBlock,\n [BlockType.TabsBlock]: TabsBlock,\n [BlockType.HeaderBlock]: HeaderBlock,\n [BlockType.IconsBlock]: IconsBlock,\n [BlockType.HeaderSliderBlock]: HeaderSliderBlock,\n [BlockType.CardLayoutBlock]: CardLayoutBlock,\n [BlockType.ContentLayoutBlock]: ContentLayoutBlock,\n [BlockType.ShareBlock]: ShareBlock,\n [BlockType.MapBlock]: MapBlock,\n [BlockType.FilterBlock]: FilterBlock,\n [BlockType.FormBlock]: FormBlock,\n [BlockType.SliderBlock]: SliderBlock,\n};\n\nexport const subBlockMap = {\n [SubBlockType.Divider]: Divider,\n [SubBlockType.PriceDetailed]: PriceDetailed,\n [SubBlockType.MediaCard]: MediaCard,\n [SubBlockType.BannerCard]: BannerCard,\n [SubBlockType.LayoutItem]: LayoutItem,\n [SubBlockType.BackgroundCard]: BackgroundCard,\n [SubBlockType.BasicCard]: BasicCard,\n [SubBlockType.Content]: Content,\n [SubBlockType.Quote]: Quote,\n [SubBlockType.PriceCard]: PriceCard,\n [SubBlockType.ImageCard]: ImageCard,\n};\n\nexport const navItemMap = {\n [NavigationItemType.Button]: NavigationButton,\n [NavigationItemType.Social]: SocialIcon,\n [NavigationItemType.Dropdown]: NavigationDropdown,\n [NavigationItemType.Link]: NavigationLink,\n [NavigationItemType.GithubButton]: GithubButton,\n};\n"]}
@@ -24,7 +24,7 @@ const Loadable = (props) => {
24
24
  setDataState({ loading: true, error: false });
25
25
  let data, error;
26
26
  try {
27
- data = await fetch({ blockKey, serviceId, ...(params ?? {}) });
27
+ data = await fetch(Object.assign({ blockKey, serviceId }, (params !== null && params !== void 0 ? params : {})));
28
28
  error = false;
29
29
  setDataState({ data, loading: false, error });
30
30
  }
@@ -39,8 +39,8 @@ const Loadable = (props) => {
39
39
  if (loading) {
40
40
  return ((0, jsx_runtime_1.jsx)("div", { className: b('loader'), children: (0, jsx_runtime_1.jsx)(uikit_1.Spin, { size: "xl" }) }));
41
41
  }
42
- return ((0, jsx_runtime_1.jsx)(ErrorWrapper_1.default, { isError: error, text: (0, i18n_1.i18n)('loadable-load-error'), buttonText: (0, i18n_1.i18n)('loadable-try-again'), handler: onTryAgain, children: (0, jsx_runtime_1.jsx)(Component, { ...block, children: data &&
43
- (Array.isArray(data) ? (data.map((componentData, index) => ((0, jsx_runtime_1.jsx)(ChildComponent, { ...componentData }, componentData.id || index)))) : ((0, jsx_runtime_1.jsx)(ChildComponent, { ...data }))) }) }));
42
+ return ((0, jsx_runtime_1.jsx)(ErrorWrapper_1.default, { isError: error, text: (0, i18n_1.i18n)('loadable-load-error'), buttonText: (0, i18n_1.i18n)('loadable-try-again'), handler: onTryAgain, children: (0, jsx_runtime_1.jsx)(Component, Object.assign({}, block, { children: data &&
43
+ (Array.isArray(data) ? (data.map((componentData, index) => ((0, jsx_runtime_1.jsx)(ChildComponent, Object.assign({}, componentData), componentData.id || index)))) : ((0, jsx_runtime_1.jsx)(ChildComponent, Object.assign({}, data)))) })) }));
44
44
  };
45
45
  exports.default = Loadable;
46
46
  //# sourceMappingURL=Loadable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Loadable.js","sourceRoot":"../../../../src","sources":["containers/Loadable/Loadable.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAE/B,6CAAuC;AAEvC,yGAAsE;AAQtE,0CAAgD;AAEhD,0CAA4B;AAI5B,MAAM,CAAC,GAAG,IAAA,UAAO,EAAC,gBAAgB,CAAC,CAAC;AAiBpC,MAAM,QAAQ,GAAG;IACb,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,KAAK;CACf,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,KAA8B,EAAE,EAAE;IAChD,MAAM,EAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAC,GAAG,KAAK,CAAC;IACrF,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAgB,QAAQ,CAAC,CAAC;IAC1E,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAS,CAAC,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACtC,eAAe,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,KAAK,UAAU,WAAW;YACtB,YAAY,CAAC,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;YAE5C,IAAI,IAAI,EAAE,KAAK,CAAC;YAEhB,IAAI,CAAC;gBACD,IAAI,GAAG,MAAM,KAAK,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAC,CAAC,CAAC;gBAC7D,KAAK,GAAG,KAAK,CAAC;gBAEd,YAAY,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;YAChD,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACV,KAAK,GAAG,IAAI,CAAC;gBACb,YAAY,CAAC,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;YAC1C,CAAC;QACL,CAAC;QAED,WAAW,EAAE,CAAC;IAClB,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IAEvD,MAAM,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,GAAG,SAAS,CAAC;IAEzC,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,CACH,gCAAK,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,YACvB,uBAAC,YAAI,IAAC,IAAI,EAAC,IAAI,GAAG,GAChB,CACT,CAAC;IACN,CAAC;IAED,OAAO,CACH,uBAAC,sBAAY,IACT,OAAO,EAAE,KAAK,EACd,IAAI,EAAE,IAAA,WAAI,EAAC,qBAAqB,CAAC,EACjC,UAAU,EAAE,IAAA,WAAI,EAAC,oBAAoB,CAAC,EACtC,OAAO,EAAE,UAAU,YAEnB,uBAAC,SAAS,OAAK,KAAK,YACf,IAAI;gBACD,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,aAA2B,EAAE,KAAa,EAAE,EAAE,CAAC,CACrD,uBAAC,cAAc,OAAqC,aAAa,IAA5C,aAAa,CAAC,EAAE,IAAI,KAAK,CAAuB,CACxE,CAAC,CACL,CAAC,CAAC,CAAC,CACA,uBAAC,cAAc,OAAK,IAAI,GAAI,CAC/B,CAAC,GACE,GACD,CAClB,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Spin} from '@gravity-ui/uikit';\n\nimport ErrorWrapper from '../../components/ErrorWrapper/ErrorWrapper';\nimport {\n ConstructorBlock,\n CustomItem,\n FetchLoadableData,\n LoadableData,\n LoadableProps,\n} from '../../models';\nimport {block as blockCn} from '../../utils/cn';\n\nimport {i18n} from './i18n';\n\nimport './Loadable.scss';\n\nconst b = blockCn('loadable-block');\n\nexport interface LoadableState {\n loading: boolean;\n error: boolean;\n data?: LoadableData;\n}\n\nexport interface LoadableComponentsProps\n extends Omit<React.PropsWithChildren<LoadableProps>, 'source'> {\n Component: CustomItem;\n ChildComponent: CustomItem;\n block: ConstructorBlock;\n blockKey: string;\n fetch: FetchLoadableData;\n}\n\nconst initData = {\n loading: false,\n error: false,\n};\n\nconst Loadable = (props: LoadableComponentsProps) => {\n const {Component, ChildComponent, fetch, block, blockKey, serviceId, params} = props;\n const [dataState, setDataState] = React.useState<LoadableState>(initData);\n const [refetchIndex, setRefetchIndex] = React.useState<number>(0);\n const onTryAgain = React.useCallback(() => {\n setRefetchIndex(refetchIndex + 1);\n }, [refetchIndex]);\n\n React.useEffect(() => {\n async function processData() {\n setDataState({loading: true, error: false});\n\n let data, error;\n\n try {\n data = await fetch({blockKey, serviceId, ...(params ?? {})});\n error = false;\n\n setDataState({data, loading: false, error});\n } catch (ex) {\n error = true;\n setDataState({loading: false, error});\n }\n }\n\n processData();\n }, [refetchIndex, fetch, blockKey, serviceId, params]);\n\n const {error, loading, data} = dataState;\n\n if (loading) {\n return (\n <div className={b('loader')}>\n <Spin size=\"xl\" />\n </div>\n );\n }\n\n return (\n <ErrorWrapper\n isError={error}\n text={i18n('loadable-load-error')}\n buttonText={i18n('loadable-try-again')}\n handler={onTryAgain}\n >\n <Component {...block}>\n {data &&\n (Array.isArray(data) ? (\n data.map((componentData: LoadableData, index: number) => (\n <ChildComponent key={componentData.id || index} {...componentData} />\n ))\n ) : (\n <ChildComponent {...data} />\n ))}\n </Component>\n </ErrorWrapper>\n );\n};\n\nexport default Loadable;\n"]}
1
+ {"version":3,"file":"Loadable.js","sourceRoot":"../../../../src","sources":["containers/Loadable/Loadable.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAE/B,6CAAuC;AAEvC,yGAAsE;AAQtE,0CAAgD;AAEhD,0CAA4B;AAI5B,MAAM,CAAC,GAAG,IAAA,UAAO,EAAC,gBAAgB,CAAC,CAAC;AAiBpC,MAAM,QAAQ,GAAG;IACb,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,KAAK;CACf,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,KAA8B,EAAE,EAAE;IAChD,MAAM,EAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAC,GAAG,KAAK,CAAC;IACrF,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAgB,QAAQ,CAAC,CAAC;IAC1E,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAS,CAAC,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACtC,eAAe,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,KAAK,UAAU,WAAW;YACtB,YAAY,CAAC,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;YAE5C,IAAI,IAAI,EAAE,KAAK,CAAC;YAEhB,IAAI,CAAC;gBACD,IAAI,GAAG,MAAM,KAAK,iBAAE,QAAQ,EAAE,SAAS,IAAK,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC,EAAE,CAAC;gBAC7D,KAAK,GAAG,KAAK,CAAC;gBAEd,YAAY,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;YAChD,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACV,KAAK,GAAG,IAAI,CAAC;gBACb,YAAY,CAAC,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;YAC1C,CAAC;QACL,CAAC;QAED,WAAW,EAAE,CAAC;IAClB,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IAEvD,MAAM,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,GAAG,SAAS,CAAC;IAEzC,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,CACH,gCAAK,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,YACvB,uBAAC,YAAI,IAAC,IAAI,EAAC,IAAI,GAAG,GAChB,CACT,CAAC;IACN,CAAC;IAED,OAAO,CACH,uBAAC,sBAAY,IACT,OAAO,EAAE,KAAK,EACd,IAAI,EAAE,IAAA,WAAI,EAAC,qBAAqB,CAAC,EACjC,UAAU,EAAE,IAAA,WAAI,EAAC,oBAAoB,CAAC,EACtC,OAAO,EAAE,UAAU,YAEnB,uBAAC,SAAS,oBAAK,KAAK,cACf,IAAI;gBACD,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,aAA2B,EAAE,KAAa,EAAE,EAAE,CAAC,CACrD,uBAAC,cAAc,oBAAqC,aAAa,GAA5C,aAAa,CAAC,EAAE,IAAI,KAAK,CAAuB,CACxE,CAAC,CACL,CAAC,CAAC,CAAC,CACA,uBAAC,cAAc,oBAAK,IAAI,EAAI,CAC/B,CAAC,IACE,GACD,CAClB,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Spin} from '@gravity-ui/uikit';\n\nimport ErrorWrapper from '../../components/ErrorWrapper/ErrorWrapper';\nimport {\n ConstructorBlock,\n CustomItem,\n FetchLoadableData,\n LoadableData,\n LoadableProps,\n} from '../../models';\nimport {block as blockCn} from '../../utils/cn';\n\nimport {i18n} from './i18n';\n\nimport './Loadable.scss';\n\nconst b = blockCn('loadable-block');\n\nexport interface LoadableState {\n loading: boolean;\n error: boolean;\n data?: LoadableData;\n}\n\nexport interface LoadableComponentsProps\n extends Omit<React.PropsWithChildren<LoadableProps>, 'source'> {\n Component: CustomItem;\n ChildComponent: CustomItem;\n block: ConstructorBlock;\n blockKey: string;\n fetch: FetchLoadableData;\n}\n\nconst initData = {\n loading: false,\n error: false,\n};\n\nconst Loadable = (props: LoadableComponentsProps) => {\n const {Component, ChildComponent, fetch, block, blockKey, serviceId, params} = props;\n const [dataState, setDataState] = React.useState<LoadableState>(initData);\n const [refetchIndex, setRefetchIndex] = React.useState<number>(0);\n const onTryAgain = React.useCallback(() => {\n setRefetchIndex(refetchIndex + 1);\n }, [refetchIndex]);\n\n React.useEffect(() => {\n async function processData() {\n setDataState({loading: true, error: false});\n\n let data, error;\n\n try {\n data = await fetch({blockKey, serviceId, ...(params ?? {})});\n error = false;\n\n setDataState({data, loading: false, error});\n } catch (ex) {\n error = true;\n setDataState({loading: false, error});\n }\n }\n\n processData();\n }, [refetchIndex, fetch, blockKey, serviceId, params]);\n\n const {error, loading, data} = dataState;\n\n if (loading) {\n return (\n <div className={b('loader')}>\n <Spin size=\"xl\" />\n </div>\n );\n }\n\n return (\n <ErrorWrapper\n isError={error}\n text={i18n('loadable-load-error')}\n buttonText={i18n('loadable-try-again')}\n handler={onTryAgain}\n >\n <Component {...block}>\n {data &&\n (Array.isArray(data) ? (\n data.map((componentData: LoadableData, index: number) => (\n <ChildComponent key={componentData.id || index} {...componentData} />\n ))\n ) : (\n <ChildComponent {...data} />\n ))}\n </Component>\n </ErrorWrapper>\n );\n};\n\nexport default Loadable;\n"]}
@@ -32,19 +32,12 @@ const Constructor = (props) => {
32
32
  ...models_1.NavigationItemTypes,
33
33
  ...(0, utils_1.getCustomTypes)(['navigation'], custom),
34
34
  ],
35
- itemMap: {
36
- ...constructor_items_1.blockMap,
37
- ...constructor_items_1.subBlockMap,
38
- ...(0, utils_1.getCustomItems)(['blocks', 'headers', 'subBlocks'], custom),
39
- },
40
- navItemMap: {
41
- ...constructor_items_1.navItemMap,
42
- ...(0, utils_1.getCustomItems)(['navigation'], custom),
43
- },
44
- loadables: custom?.loadable,
35
+ itemMap: Object.assign(Object.assign(Object.assign({}, constructor_items_1.blockMap), constructor_items_1.subBlockMap), (0, utils_1.getCustomItems)(['blocks', 'headers', 'subBlocks'], custom)),
36
+ navItemMap: Object.assign(Object.assign({}, constructor_items_1.navItemMap), (0, utils_1.getCustomItems)(['navigation'], custom)),
37
+ loadables: custom === null || custom === void 0 ? void 0 : custom.loadable,
45
38
  shouldRenderBlock,
46
39
  customization: {
47
- decorators: custom?.decorators,
40
+ decorators: custom === null || custom === void 0 ? void 0 : custom.decorators,
48
41
  },
49
42
  microdata,
50
43
  },
@@ -53,13 +46,13 @@ const Constructor = (props) => {
53
46
  const header = (0, utils_1.getHeaderBlock)(blocks, context.headerBlockTypes);
54
47
  const restBlocks = (0, utils_1.getOrderedBlocks)(blocks, context.headerBlockTypes);
55
48
  const themedBackground = (0, utils_1.getThemedValue)(background, theme);
56
- return ((0, jsx_runtime_1.jsx)(innerContext_1.InnerContext.Provider, { value: context, children: (0, jsx_runtime_1.jsx)(RootCn_1.default, { className: b(), children: (0, jsx_runtime_1.jsxs)("div", { className: b('wrapper'), children: [themedBackground && ((0, jsx_runtime_1.jsx)(BackgroundMedia_1.default, { ...themedBackground, className: b('background') })), (0, jsx_runtime_1.jsxs)(Layout_1.default, { navigation: navigation, children: [renderMenu && renderMenu(), header && ((0, jsx_runtime_1.jsx)(ConstructorItem_1.ConstructorHeader, { data: header, blockKey: models_1.BlockType.HeaderBlock })), (0, jsx_runtime_1.jsx)(grid_1.Grid, { children: restBlocks && ((0, jsx_runtime_1.jsx)(ConstructorRow_1.ConstructorRow, { children: (0, jsx_runtime_1.jsx)(ConstructorBlocks_1.ConstructorBlocks, { items: restBlocks }) })) })] }), isBranded && (0, jsx_runtime_1.jsx)(BrandFooter_1.default, {})] }) }) }));
49
+ return ((0, jsx_runtime_1.jsx)(innerContext_1.InnerContext.Provider, { value: context, children: (0, jsx_runtime_1.jsx)(RootCn_1.default, { className: b(), children: (0, jsx_runtime_1.jsxs)("div", { className: b('wrapper'), children: [themedBackground && ((0, jsx_runtime_1.jsx)(BackgroundMedia_1.default, Object.assign({}, themedBackground, { className: b('background') }))), (0, jsx_runtime_1.jsxs)(Layout_1.default, { navigation: navigation, children: [renderMenu && renderMenu(), header && ((0, jsx_runtime_1.jsx)(ConstructorItem_1.ConstructorHeader, { data: header, blockKey: models_1.BlockType.HeaderBlock })), (0, jsx_runtime_1.jsx)(grid_1.Grid, { children: restBlocks && ((0, jsx_runtime_1.jsx)(ConstructorRow_1.ConstructorRow, { children: (0, jsx_runtime_1.jsx)(ConstructorBlocks_1.ConstructorBlocks, { items: restBlocks }) })) })] }), isBranded && (0, jsx_runtime_1.jsx)(BrandFooter_1.default, {})] }) }) }));
57
50
  };
58
51
  exports.Constructor = Constructor;
59
52
  const PageConstructor = (props) => {
60
53
  const { isAnimationEnabled = true } = React.useContext(projectSettingsContext_1.ProjectSettingsContext);
61
- const { content: { animated = isAnimationEnabled } = {}, ...rest } = props;
62
- return ((0, jsx_runtime_1.jsx)(animateContext_1.AnimateContext.Provider, { value: { animated }, children: (0, jsx_runtime_1.jsx)(exports.Constructor, { content: props.content, ...rest }) }));
54
+ const { content: { animated = isAnimationEnabled } = {} } = props, rest = tslib_1.__rest(props, ["content"]);
55
+ return ((0, jsx_runtime_1.jsx)(animateContext_1.AnimateContext.Provider, { value: { animated }, children: (0, jsx_runtime_1.jsx)(exports.Constructor, Object.assign({ content: props.content }, rest)) }));
63
56
  };
64
57
  exports.PageConstructor = PageConstructor;
65
58
  //# sourceMappingURL=PageConstructor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PageConstructor.js","sourceRoot":"../../../../src","sources":["containers/PageConstructor/PageConstructor.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,8CAA4C;AAE5C,kHAA+E;AAC/E,sGAAmE;AACnE,sFAA6C;AAC7C,kEAA0E;AAC1E,0EAA4D;AAC5D,sEAAwD;AACxD,0FAA4E;AAC5E,wDAA6C;AAC7C,8CAAgC;AAChC,kDAWsB;AACtB,kGAA+D;AAC/D,gDAOqB;AAErB,+EAAiE;AACjE,2EAA+D;AAC/D,yEAA2D;AAI3D,MAAM,CAAC,GAAG,IAAA,aAAO,EAAC,kBAAkB,CAAC,CAAC;AAkB/B,MAAM,WAAW,GAAG,CAAC,KAA2B,EAAE,EAAE;IACvD,MAAM,EACF,OAAO,EAAE,EAAC,MAAM,GAAG,EAAE,EAAE,UAAU,EAAC,GAAG,EAAE,EACvC,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,MAAM,EACN,SAAS,EACT,SAAS,GACZ,GAAG,KAAK,CAAC;IAEV,MAAM,EAAC,OAAO,EAAC,GAAG,KAAK,CAAC,OAAO,CAC3B,GAAG,EAAE,CAAC,CAAC;QACH,OAAO,EAAE;YACL,UAAU,EAAE,CAAC,GAAG,mBAAU,EAAE,GAAG,IAAA,sBAAc,EAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;YAC7E,aAAa,EAAE,CAAC,GAAG,sBAAa,EAAE,GAAG,IAAA,sBAAc,EAAC,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;YAC3E,gBAAgB,EAAE,CAAC,GAAG,yBAAgB,EAAE,GAAG,IAAA,sBAAc,EAAC,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;YAC/E,oBAAoB,EAAE;gBAClB,GAAG,4BAAmB;gBACtB,GAAG,IAAA,sBAAc,EAAC,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;aAC5C;YACD,OAAO,EAAE;gBACL,GAAG,4BAAQ;gBACX,GAAG,+BAAW;gBACd,GAAG,IAAA,sBAAc,EAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC;aAChE;YACD,UAAU,EAAE;gBACR,GAAG,8BAAU;gBACb,GAAG,IAAA,sBAAc,EAAC,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;aAC5C;YACD,SAAS,EAAE,MAAM,EAAE,QAAQ;YAC3B,iBAAiB;YACjB,aAAa,EAAE;gBACX,UAAU,EAAE,MAAM,EAAE,UAAU;aACjC;YACD,SAAS;SACZ;KACJ,CAAC,EACF,CAAC,MAAM,EAAE,iBAAiB,EAAE,SAAS,CAAC,CACzC,CAAC;IAEF,MAAM,KAAK,GAAG,IAAA,gBAAQ,GAAE,CAAC;IAEzB,MAAM,MAAM,GAAG,IAAA,sBAAc,EAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,IAAA,wBAAgB,EAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACtE,MAAM,gBAAgB,GAAG,IAAA,sBAAc,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAE3D,OAAO,CACH,uBAAC,2BAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO,YACjC,uBAAC,gBAAM,IAAC,SAAS,EAAE,CAAC,EAAE,YAClB,iCAAK,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,aACvB,gBAAgB,IAAI,CACjB,uBAAC,yBAAe,OAAK,gBAAgB,EAAE,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,GAAI,CACxE,EACD,wBAAC,gBAAM,IAAC,UAAU,EAAE,UAAU,aACzB,UAAU,IAAI,UAAU,EAAE,EAC1B,MAAM,IAAI,CACP,uBAAC,mCAAiB,IAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,kBAAS,CAAC,WAAW,GAAI,CACvE,EACD,uBAAC,WAAI,cACA,UAAU,IAAI,CACX,uBAAC,+BAAc,cACX,uBAAC,qCAAiB,IAAC,KAAK,EAAE,UAAU,GAAI,GAC3B,CACpB,GACE,IACF,EACR,SAAS,IAAI,uBAAC,qBAAW,KAAG,IAC3B,GACD,GACW,CAC3B,CAAC;AACN,CAAC,CAAC;AAxEW,QAAA,WAAW,eAwEtB;AAEK,MAAM,eAAe,GAAG,CAAC,KAA2B,EAAE,EAAE;IAC3D,MAAM,EAAC,kBAAkB,GAAG,IAAI,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,+CAAsB,CAAC,CAAC;IAC7E,MAAM,EAAC,OAAO,EAAE,EAAC,QAAQ,GAAG,kBAAkB,EAAC,GAAG,EAAE,EAAE,GAAG,IAAI,EAAC,GAAG,KAAK,CAAC;IAEvE,OAAO,CACH,uBAAC,+BAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAC,QAAQ,EAAC,YACtC,uBAAC,mBAAW,IAAC,OAAO,EAAE,KAAK,CAAC,OAAO,KAAM,IAAI,GAAI,GAC3B,CAC7B,CAAC;AACN,CAAC,CAAC;AATW,QAAA,eAAe,mBAS1B","sourcesContent":["import * as React from 'react';\n\nimport '@diplodoc/transform/dist/js/yfm.js';\n\nimport BackgroundMedia from '../../components/BackgroundMedia/BackgroundMedia';\nimport BrandFooter from '../../components/BrandFooter/BrandFooter';\nimport RootCn from '../../components/RootCn';\nimport {blockMap, navItemMap, subBlockMap} from '../../constructor-items';\nimport {AnimateContext} from '../../context/animateContext';\nimport {InnerContext} from '../../context/innerContext';\nimport {ProjectSettingsContext} from '../../context/projectSettingsContext';\nimport {useTheme} from '../../context/theme';\nimport {Grid} from '../../grid';\nimport {\n BlockType,\n BlockTypes,\n CustomConfig,\n CustomItems,\n HeaderBlockTypes,\n NavigationData,\n NavigationItemTypes,\n PageContent,\n ShouldRenderBlock,\n SubBlockTypes,\n} from '../../models';\nimport Layout from '../../navigation/containers/Layout/Layout';\nimport {\n block as cnBlock,\n getCustomItems,\n getCustomTypes,\n getHeaderBlock,\n getOrderedBlocks,\n getThemedValue,\n} from '../../utils';\n\nimport {ConstructorBlocks} from './components/ConstructorBlocks';\nimport {ConstructorHeader} from './components/ConstructorItem';\nimport {ConstructorRow} from './components/ConstructorRow';\n\nimport './PageConstructor.scss';\n\nconst b = cnBlock('page-constructor');\n\nexport type ItemMap = typeof blockMap & typeof subBlockMap & CustomItems;\n\nexport type NavItemMap = typeof navItemMap & CustomItems;\n\nexport interface PageConstructorProps {\n content?: PageContent;\n shouldRenderBlock?: ShouldRenderBlock;\n custom?: CustomConfig;\n renderMenu?: () => React.ReactNode;\n navigation?: NavigationData;\n isBranded?: boolean;\n microdata?: {\n contentUpdatedDate?: string;\n };\n}\n\nexport const Constructor = (props: PageConstructorProps) => {\n const {\n content: {blocks = [], background} = {},\n renderMenu,\n shouldRenderBlock,\n navigation,\n custom,\n isBranded,\n microdata,\n } = props;\n\n const {context} = React.useMemo(\n () => ({\n context: {\n blockTypes: [...BlockTypes, ...getCustomTypes(['blocks', 'headers'], custom)],\n subBlockTypes: [...SubBlockTypes, ...getCustomTypes(['subBlocks'], custom)],\n headerBlockTypes: [...HeaderBlockTypes, ...getCustomTypes(['headers'], custom)],\n navigationBlockTypes: [\n ...NavigationItemTypes,\n ...getCustomTypes(['navigation'], custom),\n ],\n itemMap: {\n ...blockMap,\n ...subBlockMap,\n ...getCustomItems(['blocks', 'headers', 'subBlocks'], custom),\n },\n navItemMap: {\n ...navItemMap,\n ...getCustomItems(['navigation'], custom),\n },\n loadables: custom?.loadable,\n shouldRenderBlock,\n customization: {\n decorators: custom?.decorators,\n },\n microdata,\n },\n }),\n [custom, shouldRenderBlock, microdata],\n );\n\n const theme = useTheme();\n\n const header = getHeaderBlock(blocks, context.headerBlockTypes);\n const restBlocks = getOrderedBlocks(blocks, context.headerBlockTypes);\n const themedBackground = getThemedValue(background, theme);\n\n return (\n <InnerContext.Provider value={context}>\n <RootCn className={b()}>\n <div className={b('wrapper')}>\n {themedBackground && (\n <BackgroundMedia {...themedBackground} className={b('background')} />\n )}\n <Layout navigation={navigation}>\n {renderMenu && renderMenu()}\n {header && (\n <ConstructorHeader data={header} blockKey={BlockType.HeaderBlock} />\n )}\n <Grid>\n {restBlocks && (\n <ConstructorRow>\n <ConstructorBlocks items={restBlocks} />\n </ConstructorRow>\n )}\n </Grid>\n </Layout>\n {isBranded && <BrandFooter />}\n </div>\n </RootCn>\n </InnerContext.Provider>\n );\n};\n\nexport const PageConstructor = (props: PageConstructorProps) => {\n const {isAnimationEnabled = true} = React.useContext(ProjectSettingsContext);\n const {content: {animated = isAnimationEnabled} = {}, ...rest} = props;\n\n return (\n <AnimateContext.Provider value={{animated}}>\n <Constructor content={props.content} {...rest} />\n </AnimateContext.Provider>\n );\n};\n"]}
1
+ {"version":3,"file":"PageConstructor.js","sourceRoot":"../../../../src","sources":["containers/PageConstructor/PageConstructor.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport '@diplodoc/transform/dist/js/yfm.js';\n\nimport BackgroundMedia from '../../components/BackgroundMedia/BackgroundMedia';\nimport BrandFooter from '../../components/BrandFooter/BrandFooter';\nimport RootCn from '../../components/RootCn';\nimport {blockMap, navItemMap, subBlockMap} from '../../constructor-items';\nimport {AnimateContext} from '../../context/animateContext';\nimport {InnerContext} from '../../context/innerContext';\nimport {ProjectSettingsContext} from '../../context/projectSettingsContext';\nimport {useTheme} from '../../context/theme';\nimport {Grid} from '../../grid';\nimport {\n BlockType,\n BlockTypes,\n CustomConfig,\n CustomItems,\n HeaderBlockTypes,\n NavigationData,\n NavigationItemTypes,\n PageContent,\n ShouldRenderBlock,\n SubBlockTypes,\n} from '../../models';\nimport Layout from '../../navigation/containers/Layout/Layout';\nimport {\n block as cnBlock,\n getCustomItems,\n getCustomTypes,\n getHeaderBlock,\n getOrderedBlocks,\n getThemedValue,\n} from '../../utils';\n\nimport {ConstructorBlocks} from './components/ConstructorBlocks';\nimport {ConstructorHeader} from './components/ConstructorItem';\nimport {ConstructorRow} from './components/ConstructorRow';\n\nimport './PageConstructor.scss';\n\nconst b = cnBlock('page-constructor');\n\nexport type ItemMap = typeof blockMap & typeof subBlockMap & CustomItems;\n\nexport type NavItemMap = typeof navItemMap & CustomItems;\n\nexport interface PageConstructorProps {\n content?: PageContent;\n shouldRenderBlock?: ShouldRenderBlock;\n custom?: CustomConfig;\n renderMenu?: () => React.ReactNode;\n navigation?: NavigationData;\n isBranded?: boolean;\n microdata?: {\n contentUpdatedDate?: string;\n };\n}\n\nexport const Constructor = (props: PageConstructorProps) => {\n const {\n content: {blocks = [], background} = {},\n renderMenu,\n shouldRenderBlock,\n navigation,\n custom,\n isBranded,\n microdata,\n } = props;\n\n const {context} = React.useMemo(\n () => ({\n context: {\n blockTypes: [...BlockTypes, ...getCustomTypes(['blocks', 'headers'], custom)],\n subBlockTypes: [...SubBlockTypes, ...getCustomTypes(['subBlocks'], custom)],\n headerBlockTypes: [...HeaderBlockTypes, ...getCustomTypes(['headers'], custom)],\n navigationBlockTypes: [\n ...NavigationItemTypes,\n ...getCustomTypes(['navigation'], custom),\n ],\n itemMap: {\n ...blockMap,\n ...subBlockMap,\n ...getCustomItems(['blocks', 'headers', 'subBlocks'], custom),\n },\n navItemMap: {\n ...navItemMap,\n ...getCustomItems(['navigation'], custom),\n },\n loadables: custom?.loadable,\n shouldRenderBlock,\n customization: {\n decorators: custom?.decorators,\n },\n microdata,\n },\n }),\n [custom, shouldRenderBlock, microdata],\n );\n\n const theme = useTheme();\n\n const header = getHeaderBlock(blocks, context.headerBlockTypes);\n const restBlocks = getOrderedBlocks(blocks, context.headerBlockTypes);\n const themedBackground = getThemedValue(background, theme);\n\n return (\n <InnerContext.Provider value={context}>\n <RootCn className={b()}>\n <div className={b('wrapper')}>\n {themedBackground && (\n <BackgroundMedia {...themedBackground} className={b('background')} />\n )}\n <Layout navigation={navigation}>\n {renderMenu && renderMenu()}\n {header && (\n <ConstructorHeader data={header} blockKey={BlockType.HeaderBlock} />\n )}\n <Grid>\n {restBlocks && (\n <ConstructorRow>\n <ConstructorBlocks items={restBlocks} />\n </ConstructorRow>\n )}\n </Grid>\n </Layout>\n {isBranded && <BrandFooter />}\n </div>\n </RootCn>\n </InnerContext.Provider>\n );\n};\n\nexport const PageConstructor = (props: PageConstructorProps) => {\n const {isAnimationEnabled = true} = React.useContext(ProjectSettingsContext);\n const {content: {animated = isAnimationEnabled} = {}, ...rest} = props;\n\n return (\n <AnimateContext.Provider value={{animated}}>\n <Constructor content={props.content} {...rest} />\n </AnimateContext.Provider>\n );\n};\n"]}