@gravity-ui/page-constructor 6.0.1-beta.0 → 6.2.0-beta.1

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 (841) hide show
  1. package/build/cjs/blocks/Banner/Banner.js +2 -2
  2. package/build/cjs/blocks/Banner/Banner.js.map +1 -1
  3. package/build/cjs/blocks/Banner/schema.js +20 -8
  4. package/build/cjs/blocks/Banner/schema.js.map +1 -1
  5. package/build/cjs/blocks/CardLayout/CardLayout.js +3 -3
  6. package/build/cjs/blocks/CardLayout/CardLayout.js.map +1 -1
  7. package/build/cjs/blocks/CardLayout/schema.js +19 -4
  8. package/build/cjs/blocks/CardLayout/schema.js.map +1 -1
  9. package/build/cjs/blocks/Companies/Companies.js +1 -1
  10. package/build/cjs/blocks/Companies/Companies.js.map +1 -1
  11. package/build/cjs/blocks/Companies/schema.js +10 -4
  12. package/build/cjs/blocks/Companies/schema.js.map +1 -1
  13. package/build/cjs/blocks/ContentLayout/ContentLayout.js +1 -1
  14. package/build/cjs/blocks/ContentLayout/ContentLayout.js.map +1 -1
  15. package/build/cjs/blocks/ContentLayout/schema.js +7 -2
  16. package/build/cjs/blocks/ContentLayout/schema.js.map +1 -1
  17. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js +1 -1
  18. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  19. package/build/cjs/blocks/ExtendedFeatures/schema.js +7 -1
  20. package/build/cjs/blocks/ExtendedFeatures/schema.js.map +1 -1
  21. package/build/cjs/blocks/FilterBlock/schema.js +13 -3
  22. package/build/cjs/blocks/FilterBlock/schema.js.map +1 -1
  23. package/build/cjs/blocks/Form/Form.js +3 -4
  24. package/build/cjs/blocks/Form/Form.js.map +1 -1
  25. package/build/cjs/blocks/Form/schema.js +15 -7
  26. package/build/cjs/blocks/Form/schema.js.map +1 -1
  27. package/build/cjs/blocks/Header/Header.css +6 -0
  28. package/build/cjs/blocks/Header/Header.js +17 -8
  29. package/build/cjs/blocks/Header/Header.js.map +1 -1
  30. package/build/cjs/blocks/Header/schema.d.ts +6 -0
  31. package/build/cjs/blocks/Header/schema.js +12 -2
  32. package/build/cjs/blocks/Header/schema.js.map +1 -1
  33. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js +2 -3
  34. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  35. package/build/cjs/blocks/HeaderSlider/schema.d.ts +3 -0
  36. package/build/cjs/blocks/HeaderSlider/schema.js +7 -3
  37. package/build/cjs/blocks/HeaderSlider/schema.js.map +1 -1
  38. package/build/cjs/blocks/Icons/Icons.js +2 -2
  39. package/build/cjs/blocks/Icons/Icons.js.map +1 -1
  40. package/build/cjs/blocks/Icons/schema.js +17 -6
  41. package/build/cjs/blocks/Icons/schema.js.map +1 -1
  42. package/build/cjs/blocks/Info/Info.js +8 -4
  43. package/build/cjs/blocks/Info/Info.js.map +1 -1
  44. package/build/cjs/blocks/Info/schema.js +15 -5
  45. package/build/cjs/blocks/Info/schema.js.map +1 -1
  46. package/build/cjs/blocks/Map/Map.js +2 -3
  47. package/build/cjs/blocks/Map/Map.js.map +1 -1
  48. package/build/cjs/blocks/Map/schema.js +4 -1
  49. package/build/cjs/blocks/Map/schema.js.map +1 -1
  50. package/build/cjs/blocks/Media/Media.js +1 -1
  51. package/build/cjs/blocks/Media/Media.js.map +1 -1
  52. package/build/cjs/blocks/Media/schema.js +25 -10
  53. package/build/cjs/blocks/Media/schema.js.map +1 -1
  54. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +1 -1
  55. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
  56. package/build/cjs/blocks/PromoFeaturesBlock/schema.js +8 -2
  57. package/build/cjs/blocks/PromoFeaturesBlock/schema.js.map +1 -1
  58. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +1 -1
  59. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
  60. package/build/cjs/blocks/Questions/schema.js +7 -3
  61. package/build/cjs/blocks/Questions/schema.js.map +1 -1
  62. package/build/cjs/blocks/Share/schema.js +7 -3
  63. package/build/cjs/blocks/Share/schema.js.map +1 -1
  64. package/build/cjs/blocks/Slider/Slider.js +18 -17
  65. package/build/cjs/blocks/Slider/Slider.js.map +1 -1
  66. package/build/cjs/blocks/Slider/schema.js +6 -1
  67. package/build/cjs/blocks/Slider/schema.js.map +1 -1
  68. package/build/cjs/blocks/Slider/utils.js +9 -6
  69. package/build/cjs/blocks/Slider/utils.js.map +1 -1
  70. package/build/cjs/blocks/SliderNew/Arrow/Arrow.js +1 -1
  71. package/build/cjs/blocks/SliderNew/Arrow/Arrow.js.map +1 -1
  72. package/build/cjs/blocks/SliderNew/Slider.d.ts +1 -1
  73. package/build/cjs/blocks/SliderNew/Slider.js +15 -4
  74. package/build/cjs/blocks/SliderNew/Slider.js.map +1 -1
  75. package/build/cjs/blocks/SliderNew/schema.js +6 -1
  76. package/build/cjs/blocks/SliderNew/schema.js.map +1 -1
  77. package/build/cjs/blocks/SliderNew/useSlider.js +1 -2
  78. package/build/cjs/blocks/SliderNew/useSlider.js.map +1 -1
  79. package/build/cjs/blocks/SliderNew/utils.js +8 -4
  80. package/build/cjs/blocks/SliderNew/utils.js.map +1 -1
  81. package/build/cjs/blocks/Table/Table.js +1 -1
  82. package/build/cjs/blocks/Table/Table.js.map +1 -1
  83. package/build/cjs/blocks/Table/schema.js +22 -10
  84. package/build/cjs/blocks/Table/schema.js.map +1 -1
  85. package/build/cjs/blocks/Tabs/Tabs.js +16 -18
  86. package/build/cjs/blocks/Tabs/Tabs.js.map +1 -1
  87. package/build/cjs/blocks/Tabs/schema.js +25 -10
  88. package/build/cjs/blocks/Tabs/schema.js.map +1 -1
  89. package/build/cjs/components/Author/Author.js +1 -1
  90. package/build/cjs/components/Author/Author.js.map +1 -1
  91. package/build/cjs/components/Author/schema.js +5 -1
  92. package/build/cjs/components/Author/schema.js.map +1 -1
  93. package/build/cjs/components/BackLink/BackLink.js +5 -2
  94. package/build/cjs/components/BackLink/BackLink.js.map +1 -1
  95. package/build/cjs/components/BackgroundImage/BackgroundImage.js +1 -1
  96. package/build/cjs/components/BackgroundImage/BackgroundImage.js.map +1 -1
  97. package/build/cjs/components/BackgroundMedia/BackgroundMedia.js +4 -4
  98. package/build/cjs/components/BackgroundMedia/BackgroundMedia.js.map +1 -1
  99. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js +4 -4
  100. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  101. package/build/cjs/components/BrandFooter/BrandFooter.css +21 -17
  102. package/build/cjs/components/BrandFooter/BrandFooter.js +1 -1
  103. package/build/cjs/components/BrandFooter/BrandFooter.js.map +1 -1
  104. package/build/cjs/components/Button/Button.js +9 -6
  105. package/build/cjs/components/Button/Button.js.map +1 -1
  106. package/build/cjs/components/Button/utils.js +2 -2
  107. package/build/cjs/components/Button/utils.js.map +1 -1
  108. package/build/cjs/components/Buttons/Buttons.js +4 -1
  109. package/build/cjs/components/Buttons/Buttons.js.map +1 -1
  110. package/build/cjs/components/CardBase/CardBase.css +1 -0
  111. package/build/cjs/components/CardBase/CardBase.js +6 -2
  112. package/build/cjs/components/CardBase/CardBase.js.map +1 -1
  113. package/build/cjs/components/ContentList/ContentList.css +7 -7
  114. package/build/cjs/components/ContentList/ContentList.js +1 -1
  115. package/build/cjs/components/ContentList/ContentList.js.map +1 -1
  116. package/build/cjs/components/ContentList/ContentListItemIcon.js +1 -1
  117. package/build/cjs/components/ContentList/ContentListItemIcon.js.map +1 -1
  118. package/build/cjs/components/DefaultVideo/DefaultVideo.js +3 -4
  119. package/build/cjs/components/DefaultVideo/DefaultVideo.js.map +1 -1
  120. package/build/cjs/components/FileLink/FileLink.js +9 -2
  121. package/build/cjs/components/FileLink/FileLink.js.map +1 -1
  122. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js +13 -18
  123. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  124. package/build/cjs/components/FullscreenImage/FullscreenImage.js +1 -1
  125. package/build/cjs/components/FullscreenImage/FullscreenImage.js.map +1 -1
  126. package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +1 -1
  127. package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
  128. package/build/cjs/components/IconWrapper/IconWrapper.js +2 -2
  129. package/build/cjs/components/IconWrapper/IconWrapper.js.map +1 -1
  130. package/build/cjs/components/Image/schema.js +40 -12
  131. package/build/cjs/components/Image/schema.js.map +1 -1
  132. package/build/cjs/components/ImageBase/ImageBase.js +3 -4
  133. package/build/cjs/components/ImageBase/ImageBase.js.map +1 -1
  134. package/build/cjs/components/InnerForm/InnerForm.js +5 -5
  135. package/build/cjs/components/InnerForm/InnerForm.js.map +1 -1
  136. package/build/cjs/components/Link/Link.js +12 -3
  137. package/build/cjs/components/Link/Link.js.map +1 -1
  138. package/build/cjs/components/Links/Links.js +4 -1
  139. package/build/cjs/components/Links/Links.js.map +1 -1
  140. package/build/cjs/components/Map/GoogleMap.js +1 -1
  141. package/build/cjs/components/Map/GoogleMap.js.map +1 -1
  142. package/build/cjs/components/Map/Map.js +2 -2
  143. package/build/cjs/components/Map/Map.js.map +1 -1
  144. package/build/cjs/components/Map/YMap/YMap.js +6 -5
  145. package/build/cjs/components/Map/YMap/YMap.js.map +1 -1
  146. package/build/cjs/components/Map/YMap/YandexMap.js +2 -3
  147. package/build/cjs/components/Map/YMap/YandexMap.js.map +1 -1
  148. package/build/cjs/components/Map/YMap/YandexMapApiLoader.js +2 -1
  149. package/build/cjs/components/Map/YMap/YandexMapApiLoader.js.map +1 -1
  150. package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js +1 -1
  151. package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
  152. package/build/cjs/components/Media/Image/Image.js +4 -4
  153. package/build/cjs/components/Media/Image/Image.js.map +1 -1
  154. package/build/cjs/components/Media/Media.js +13 -5
  155. package/build/cjs/components/Media/Media.js.map +1 -1
  156. package/build/cjs/components/MediaBase/MediaBase.js +3 -3
  157. package/build/cjs/components/MediaBase/MediaBase.js.map +1 -1
  158. package/build/cjs/components/MediaBase/MediaBaseContent.js +1 -1
  159. package/build/cjs/components/MediaBase/MediaBaseContent.js.map +1 -1
  160. package/build/cjs/components/OutsideClick/OutsideClick.js +10 -13
  161. package/build/cjs/components/OutsideClick/OutsideClick.js.map +1 -1
  162. package/build/cjs/components/OverflowScroller/OverflowScroller.js +47 -50
  163. package/build/cjs/components/OverflowScroller/OverflowScroller.js.map +1 -1
  164. package/build/cjs/components/ReactPlayer/ReactPlayer.js +11 -13
  165. package/build/cjs/components/ReactPlayer/ReactPlayer.js.map +1 -1
  166. package/build/cjs/components/ReactPlayer/utils.js +1 -2
  167. package/build/cjs/components/ReactPlayer/utils.js.map +1 -1
  168. package/build/cjs/components/Title/Title.js +2 -2
  169. package/build/cjs/components/Title/Title.js.map +1 -1
  170. package/build/cjs/components/Title/TitleItem.css +8 -1
  171. package/build/cjs/components/Title/TitleItem.js +2 -1
  172. package/build/cjs/components/Title/TitleItem.js.map +1 -1
  173. package/build/cjs/components/VideoBlock/VideoBlock.js +6 -3
  174. package/build/cjs/components/VideoBlock/VideoBlock.js.map +1 -1
  175. package/build/cjs/components/YandexForm/YandexForm.js +3 -3
  176. package/build/cjs/components/YandexForm/YandexForm.js.map +1 -1
  177. package/build/cjs/components/YandexForm/schema.js +7 -3
  178. package/build/cjs/components/YandexForm/schema.js.map +1 -1
  179. package/build/cjs/containers/Loadable/Loadable.js +3 -3
  180. package/build/cjs/containers/Loadable/Loadable.js.map +1 -1
  181. package/build/cjs/containers/PageConstructor/PageConstructor.css +1 -0
  182. package/build/cjs/containers/PageConstructor/PageConstructor.d.ts +1 -1
  183. package/build/cjs/containers/PageConstructor/PageConstructor.js +15 -8
  184. package/build/cjs/containers/PageConstructor/PageConstructor.js.map +1 -1
  185. package/build/cjs/containers/PageConstructor/Provider.js +1 -1
  186. package/build/cjs/containers/PageConstructor/Provider.js.map +1 -1
  187. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +2 -2
  188. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  189. package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js +1 -1
  190. package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map +1 -1
  191. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -2
  192. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
  193. package/build/cjs/context/theme/withTheme.js +7 -9
  194. package/build/cjs/context/theme/withTheme.js.map +1 -1
  195. package/build/cjs/customization/BlockDecoration.js +3 -5
  196. package/build/cjs/customization/BlockDecoration.js.map +1 -1
  197. package/build/cjs/editor/components/AddBlock/AddBlock.js +7 -9
  198. package/build/cjs/editor/components/AddBlock/AddBlock.js.map +1 -1
  199. package/build/cjs/editor/components/BlockForm/BlockForm.js +11 -6
  200. package/build/cjs/editor/components/BlockForm/BlockForm.js.map +1 -1
  201. package/build/cjs/editor/components/CodeEditor/CodeEditor.js +1 -1
  202. package/build/cjs/editor/components/CodeEditor/CodeEditor.js.map +1 -1
  203. package/build/cjs/editor/components/ControlPanel/ControlPanel.css +1 -1
  204. package/build/cjs/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js +4 -4
  205. package/build/cjs/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js.map +1 -1
  206. package/build/cjs/editor/components/EditBlock/EditBlock.js +2 -2
  207. package/build/cjs/editor/components/EditBlock/EditBlock.js.map +1 -1
  208. package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js +2 -5
  209. package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  210. package/build/cjs/editor/components/Layout/Layout.js +3 -3
  211. package/build/cjs/editor/components/Layout/Layout.js.map +1 -1
  212. package/build/cjs/editor/components/PageSettings/PageSettings.js +3 -3
  213. package/build/cjs/editor/components/PageSettings/PageSettings.js.map +1 -1
  214. package/build/cjs/editor/containers/Editor/Editor.js +1 -1
  215. package/build/cjs/editor/containers/Editor/Editor.js.map +1 -1
  216. package/build/cjs/editor/containers/Editor/hooks/useCode.js +2 -4
  217. package/build/cjs/editor/containers/Editor/hooks/useCode.js.map +1 -1
  218. package/build/cjs/editor/containers/Editor/hooks/useEditorState.js +10 -7
  219. package/build/cjs/editor/containers/Editor/hooks/useEditorState.js.map +1 -1
  220. package/build/cjs/editor/containers/Form/Form.js +5 -2
  221. package/build/cjs/editor/containers/Form/Form.js.map +1 -1
  222. package/build/cjs/editor/data/index.js +4 -1
  223. package/build/cjs/editor/data/index.js.map +1 -1
  224. package/build/cjs/editor/data/previews/default-preview.js +1 -1
  225. package/build/cjs/editor/data/previews/default-preview.js.map +1 -1
  226. package/build/cjs/editor/data/previews/header-block.js +1 -1
  227. package/build/cjs/editor/data/previews/header-block.js.map +1 -1
  228. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +16 -14
  229. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  230. package/build/cjs/editor/dynamic-forms-custom/config.js +1 -1
  231. package/build/cjs/editor/dynamic-forms-custom/config.js.map +1 -1
  232. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js +10 -12
  233. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  234. package/build/cjs/editor/dynamic-forms-custom/parser/index.js +150 -120
  235. package/build/cjs/editor/dynamic-forms-custom/parser/index.js.map +1 -1
  236. package/build/cjs/editor/dynamic-forms-custom/parser/views.js +2 -4
  237. package/build/cjs/editor/dynamic-forms-custom/parser/views.js.map +1 -1
  238. package/build/cjs/editor/icons/Tablet.js +1 -1
  239. package/build/cjs/editor/icons/Tablet.js.map +1 -1
  240. package/build/cjs/editor/store/main/index.js +7 -4
  241. package/build/cjs/editor/store/main/index.js.map +1 -1
  242. package/build/cjs/editor/store/main/reducer.js +17 -3
  243. package/build/cjs/editor/store/main/reducer.js.map +1 -1
  244. package/build/cjs/editor/store/main/utils.js +2 -2
  245. package/build/cjs/editor/store/main/utils.js.map +1 -1
  246. package/build/cjs/editor/store/settings/reducer.js +16 -4
  247. package/build/cjs/editor/store/settings/reducer.js.map +1 -1
  248. package/build/cjs/editor/utils/code.js +4 -2
  249. package/build/cjs/editor/utils/code.js.map +1 -1
  250. package/build/cjs/editor/utils/index.js +8 -2
  251. package/build/cjs/editor/utils/index.js.map +1 -1
  252. package/build/cjs/editor/utils/validation.js +1 -1
  253. package/build/cjs/editor/utils/validation.js.map +1 -1
  254. package/build/cjs/editor/widget/index.js +8 -8
  255. package/build/cjs/editor/widget/index.js.map +1 -1
  256. package/build/cjs/grid/Col/Col.js +1 -1
  257. package/build/cjs/grid/Col/Col.js.map +1 -1
  258. package/build/cjs/hooks/useAnalytics.js +4 -1
  259. package/build/cjs/hooks/useAnalytics.js.map +1 -1
  260. package/build/cjs/hooks/useFocus.js +1 -1
  261. package/build/cjs/hooks/useFocus.js.map +1 -1
  262. package/build/cjs/hooks/useHeightCalculator.js +1 -1
  263. package/build/cjs/hooks/useHeightCalculator.js.map +1 -1
  264. package/build/cjs/hooks/useWindowBreakpoint.js +1 -1
  265. package/build/cjs/hooks/useWindowBreakpoint.js.map +1 -1
  266. package/build/cjs/icons/BrandIconDark.js +1 -1
  267. package/build/cjs/icons/BrandIconDark.js.map +1 -1
  268. package/build/cjs/icons/BrandIconLight.js +1 -1
  269. package/build/cjs/icons/BrandIconLight.js.map +1 -1
  270. package/build/cjs/icons/BrandName.js +1 -1
  271. package/build/cjs/icons/BrandName.js.map +1 -1
  272. package/build/cjs/icons/Chevron.js +1 -1
  273. package/build/cjs/icons/Chevron.js.map +1 -1
  274. package/build/cjs/icons/Facebook.js +1 -1
  275. package/build/cjs/icons/Facebook.js.map +1 -1
  276. package/build/cjs/icons/Github.js +1 -1
  277. package/build/cjs/icons/Github.js.map +1 -1
  278. package/build/cjs/icons/Linkedin.js +1 -1
  279. package/build/cjs/icons/Linkedin.js.map +1 -1
  280. package/build/cjs/icons/NavigationArrow.js +1 -1
  281. package/build/cjs/icons/NavigationArrow.js.map +1 -1
  282. package/build/cjs/icons/NavigationChevron.js +1 -1
  283. package/build/cjs/icons/NavigationChevron.js.map +1 -1
  284. package/build/cjs/icons/Telegram.js +1 -1
  285. package/build/cjs/icons/Telegram.js.map +1 -1
  286. package/build/cjs/icons/Twitter.js +1 -1
  287. package/build/cjs/icons/Twitter.js.map +1 -1
  288. package/build/cjs/icons/Vk.js +1 -1
  289. package/build/cjs/icons/Vk.js.map +1 -1
  290. package/build/cjs/models/constructor-items/blocks.d.ts +2 -1
  291. package/build/cjs/models/constructor-items/blocks.js.map +1 -1
  292. package/build/cjs/models/constructor-items/common.d.ts +2 -2
  293. package/build/cjs/models/constructor-items/common.js.map +1 -1
  294. package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
  295. package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
  296. package/build/cjs/navigation/components/Logo/Logo.js +4 -5
  297. package/build/cjs/navigation/components/Logo/Logo.js.map +1 -1
  298. package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js +2 -3
  299. package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
  300. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js +8 -6
  301. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  302. package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js +1 -1
  303. package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
  304. package/build/cjs/navigation/components/NavigationItem/components/GithubButton/GithubButton.js +2 -3
  305. package/build/cjs/navigation/components/NavigationItem/components/GithubButton/GithubButton.js.map +1 -1
  306. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +1 -1
  307. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
  308. package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js +2 -3
  309. package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js.map +1 -1
  310. package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +4 -4
  311. package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
  312. package/build/cjs/navigation/components/NavigationItem/hooks/useNavigationItemMap.js +1 -1
  313. package/build/cjs/navigation/components/NavigationItem/hooks/useNavigationItemMap.js.map +1 -1
  314. package/build/cjs/navigation/components/NavigationList/NavigationList.js +1 -4
  315. package/build/cjs/navigation/components/NavigationList/NavigationList.js.map +1 -1
  316. package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js +2 -3
  317. package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
  318. package/build/cjs/navigation/components/SocialIcon/SocialIcon.js +1 -1
  319. package/build/cjs/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
  320. package/build/cjs/navigation/components/Standalone/index.js +1 -1
  321. package/build/cjs/navigation/components/Standalone/index.js.map +1 -1
  322. package/build/cjs/navigation/hooks/useActiveNavItem.d.ts +2 -2
  323. package/build/cjs/navigation/hooks/useActiveNavItem.js +1 -1
  324. package/build/cjs/navigation/hooks/useActiveNavItem.js.map +1 -1
  325. package/build/cjs/navigation/hooks/useShowBorder.js +1 -1
  326. package/build/cjs/navigation/hooks/useShowBorder.js.map +1 -1
  327. package/build/cjs/navigation/schema.js +20 -7
  328. package/build/cjs/navigation/schema.js.map +1 -1
  329. package/build/cjs/navigation/utils.d.ts +1 -1
  330. package/build/cjs/navigation/utils.js +1 -1
  331. package/build/cjs/navigation/utils.js.map +1 -1
  332. package/build/cjs/schema/constants.js +33 -2
  333. package/build/cjs/schema/constants.js.map +1 -1
  334. package/build/cjs/schema/index.js +23 -6
  335. package/build/cjs/schema/index.js.map +1 -1
  336. package/build/cjs/schema/validators/common.js +78 -32
  337. package/build/cjs/schema/validators/common.js.map +1 -1
  338. package/build/cjs/schema/validators/utils.js +9 -2
  339. package/build/cjs/schema/validators/utils.js.map +1 -1
  340. package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js +1 -1
  341. package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
  342. package/build/cjs/sub-blocks/BackgroundCard/schema.js +24 -9
  343. package/build/cjs/sub-blocks/BackgroundCard/schema.js.map +1 -1
  344. package/build/cjs/sub-blocks/BannerCard/BannerCard.js +1 -1
  345. package/build/cjs/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  346. package/build/cjs/sub-blocks/BasicCard/BasicCard.js +2 -2
  347. package/build/cjs/sub-blocks/BasicCard/BasicCard.js.map +1 -1
  348. package/build/cjs/sub-blocks/BasicCard/schema.js +18 -7
  349. package/build/cjs/sub-blocks/BasicCard/schema.js.map +1 -1
  350. package/build/cjs/sub-blocks/Content/Content.css +53 -6
  351. package/build/cjs/sub-blocks/Content/Content.js +3 -1
  352. package/build/cjs/sub-blocks/Content/Content.js.map +1 -1
  353. package/build/cjs/sub-blocks/Content/schema.js +10 -3
  354. package/build/cjs/sub-blocks/Content/schema.js.map +1 -1
  355. package/build/cjs/sub-blocks/Divider/schema.js +6 -2
  356. package/build/cjs/sub-blocks/Divider/schema.js.map +1 -1
  357. package/build/cjs/sub-blocks/HubspotForm/index.js +3 -3
  358. package/build/cjs/sub-blocks/HubspotForm/index.js.map +1 -1
  359. package/build/cjs/sub-blocks/HubspotForm/loadHubspotScript.js +1 -2
  360. package/build/cjs/sub-blocks/HubspotForm/loadHubspotScript.js.map +1 -1
  361. package/build/cjs/sub-blocks/HubspotForm/schema.js +11 -5
  362. package/build/cjs/sub-blocks/HubspotForm/schema.js.map +1 -1
  363. package/build/cjs/sub-blocks/ImageCard/ImageCard.css +2 -0
  364. package/build/cjs/sub-blocks/ImageCard/ImageCard.js +1 -1
  365. package/build/cjs/sub-blocks/ImageCard/ImageCard.js.map +1 -1
  366. package/build/cjs/sub-blocks/ImageCard/schema.js +18 -7
  367. package/build/cjs/sub-blocks/ImageCard/schema.js.map +1 -1
  368. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js +11 -9
  369. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
  370. package/build/cjs/sub-blocks/LayoutItem/schema.js +20 -7
  371. package/build/cjs/sub-blocks/LayoutItem/schema.js.map +1 -1
  372. package/build/cjs/sub-blocks/LayoutItem/utils.js +4 -1
  373. package/build/cjs/sub-blocks/LayoutItem/utils.js.map +1 -1
  374. package/build/cjs/sub-blocks/MediaCard/MediaCard.js +1 -5
  375. package/build/cjs/sub-blocks/MediaCard/MediaCard.js.map +1 -1
  376. package/build/cjs/sub-blocks/MediaCard/schema.js +12 -3
  377. package/build/cjs/sub-blocks/MediaCard/schema.js.map +1 -1
  378. package/build/cjs/sub-blocks/PriceCard/PriceCard.js +3 -4
  379. package/build/cjs/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  380. package/build/cjs/sub-blocks/PriceCard/schema.js +25 -11
  381. package/build/cjs/sub-blocks/PriceCard/schema.js.map +1 -1
  382. package/build/cjs/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js +1 -1
  383. package/build/cjs/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js.map +1 -1
  384. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +2 -2
  385. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  386. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  387. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
  388. package/build/cjs/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js +1 -4
  389. package/build/cjs/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js.map +1 -1
  390. package/build/cjs/sub-blocks/PriceDetailed/schema.js +44 -12
  391. package/build/cjs/sub-blocks/PriceDetailed/schema.js.map +1 -1
  392. package/build/cjs/sub-blocks/Quote/Quote.js +6 -3
  393. package/build/cjs/sub-blocks/Quote/Quote.js.map +1 -1
  394. package/build/cjs/sub-blocks/Quote/schema.js +21 -8
  395. package/build/cjs/sub-blocks/Quote/schema.js.map +1 -1
  396. package/build/cjs/text-transform/common.js +10 -7
  397. package/build/cjs/text-transform/common.js.map +1 -1
  398. package/build/cjs/text-transform/config.js +26 -19
  399. package/build/cjs/text-transform/config.js.map +1 -1
  400. package/build/cjs/text-transform/filter.js +4 -1
  401. package/build/cjs/text-transform/filter.js.map +1 -1
  402. package/build/cjs/text-transform/transformers.js +3 -3
  403. package/build/cjs/text-transform/transformers.js.map +1 -1
  404. package/build/cjs/text-transform/utils.js +8 -5
  405. package/build/cjs/text-transform/utils.js.map +1 -1
  406. package/build/cjs/utils/analytics.js +2 -3
  407. package/build/cjs/utils/analytics.js.map +1 -1
  408. package/build/cjs/utils/blocks.js +3 -2
  409. package/build/cjs/utils/blocks.js.map +1 -1
  410. package/build/cjs/utils/common.js +1 -2
  411. package/build/cjs/utils/common.js.map +1 -1
  412. package/build/cjs/utils/hubspot.js +6 -7
  413. package/build/cjs/utils/hubspot.js.map +1 -1
  414. package/build/cjs/utils/microdata.js +1 -1
  415. package/build/cjs/utils/microdata.js.map +1 -1
  416. package/build/cjs/utils/url.js +10 -5
  417. package/build/cjs/utils/url.js.map +1 -1
  418. package/build/esm/blocks/Banner/Banner.js +2 -3
  419. package/build/esm/blocks/Banner/Banner.js.map +1 -1
  420. package/build/esm/blocks/Banner/schema.js +20 -8
  421. package/build/esm/blocks/Banner/schema.js.map +1 -1
  422. package/build/esm/blocks/CardLayout/CardLayout.js +3 -4
  423. package/build/esm/blocks/CardLayout/CardLayout.js.map +1 -1
  424. package/build/esm/blocks/CardLayout/schema.js +19 -4
  425. package/build/esm/blocks/CardLayout/schema.js.map +1 -1
  426. package/build/esm/blocks/Companies/Companies.js +1 -1
  427. package/build/esm/blocks/Companies/Companies.js.map +1 -1
  428. package/build/esm/blocks/Companies/schema.js +10 -4
  429. package/build/esm/blocks/Companies/schema.js.map +1 -1
  430. package/build/esm/blocks/ContentLayout/ContentLayout.js +1 -1
  431. package/build/esm/blocks/ContentLayout/ContentLayout.js.map +1 -1
  432. package/build/esm/blocks/ContentLayout/schema.js +7 -2
  433. package/build/esm/blocks/ContentLayout/schema.js.map +1 -1
  434. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js +1 -1
  435. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  436. package/build/esm/blocks/ExtendedFeatures/schema.js +7 -1
  437. package/build/esm/blocks/ExtendedFeatures/schema.js.map +1 -1
  438. package/build/esm/blocks/FilterBlock/schema.js +13 -3
  439. package/build/esm/blocks/FilterBlock/schema.js.map +1 -1
  440. package/build/esm/blocks/Form/Form.js +3 -4
  441. package/build/esm/blocks/Form/Form.js.map +1 -1
  442. package/build/esm/blocks/Form/schema.js +15 -7
  443. package/build/esm/blocks/Form/schema.js.map +1 -1
  444. package/build/esm/blocks/Header/Header.css +6 -0
  445. package/build/esm/blocks/Header/Header.js +17 -8
  446. package/build/esm/blocks/Header/Header.js.map +1 -1
  447. package/build/esm/blocks/Header/schema.d.ts +6 -0
  448. package/build/esm/blocks/Header/schema.js +12 -2
  449. package/build/esm/blocks/Header/schema.js.map +1 -1
  450. package/build/esm/blocks/HeaderSlider/HeaderSlider.js +2 -4
  451. package/build/esm/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  452. package/build/esm/blocks/HeaderSlider/schema.d.ts +3 -0
  453. package/build/esm/blocks/HeaderSlider/schema.js +7 -3
  454. package/build/esm/blocks/HeaderSlider/schema.js.map +1 -1
  455. package/build/esm/blocks/Icons/Icons.js +2 -2
  456. package/build/esm/blocks/Icons/Icons.js.map +1 -1
  457. package/build/esm/blocks/Icons/schema.js +17 -6
  458. package/build/esm/blocks/Icons/schema.js.map +1 -1
  459. package/build/esm/blocks/Info/Info.js +8 -4
  460. package/build/esm/blocks/Info/Info.js.map +1 -1
  461. package/build/esm/blocks/Info/schema.js +15 -5
  462. package/build/esm/blocks/Info/schema.js.map +1 -1
  463. package/build/esm/blocks/Map/Map.js +2 -4
  464. package/build/esm/blocks/Map/Map.js.map +1 -1
  465. package/build/esm/blocks/Map/schema.js +4 -1
  466. package/build/esm/blocks/Map/schema.js.map +1 -1
  467. package/build/esm/blocks/Media/Media.js +1 -1
  468. package/build/esm/blocks/Media/Media.js.map +1 -1
  469. package/build/esm/blocks/Media/schema.js +25 -10
  470. package/build/esm/blocks/Media/schema.js.map +1 -1
  471. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +1 -1
  472. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
  473. package/build/esm/blocks/PromoFeaturesBlock/schema.js +8 -2
  474. package/build/esm/blocks/PromoFeaturesBlock/schema.js.map +1 -1
  475. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +1 -1
  476. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
  477. package/build/esm/blocks/Questions/schema.js +7 -3
  478. package/build/esm/blocks/Questions/schema.js.map +1 -1
  479. package/build/esm/blocks/Share/schema.js +7 -3
  480. package/build/esm/blocks/Share/schema.js.map +1 -1
  481. package/build/esm/blocks/Slider/Slider.js +18 -17
  482. package/build/esm/blocks/Slider/Slider.js.map +1 -1
  483. package/build/esm/blocks/Slider/schema.js +6 -1
  484. package/build/esm/blocks/Slider/schema.js.map +1 -1
  485. package/build/esm/blocks/Slider/utils.js +9 -6
  486. package/build/esm/blocks/Slider/utils.js.map +1 -1
  487. package/build/esm/blocks/SliderNew/Arrow/Arrow.js +1 -1
  488. package/build/esm/blocks/SliderNew/Arrow/Arrow.js.map +1 -1
  489. package/build/esm/blocks/SliderNew/Slider.d.ts +1 -1
  490. package/build/esm/blocks/SliderNew/Slider.js +15 -4
  491. package/build/esm/blocks/SliderNew/Slider.js.map +1 -1
  492. package/build/esm/blocks/SliderNew/schema.js +6 -1
  493. package/build/esm/blocks/SliderNew/schema.js.map +1 -1
  494. package/build/esm/blocks/SliderNew/useSlider.js +1 -3
  495. package/build/esm/blocks/SliderNew/useSlider.js.map +1 -1
  496. package/build/esm/blocks/SliderNew/utils.js +8 -4
  497. package/build/esm/blocks/SliderNew/utils.js.map +1 -1
  498. package/build/esm/blocks/Table/Table.js +1 -1
  499. package/build/esm/blocks/Table/Table.js.map +1 -1
  500. package/build/esm/blocks/Table/schema.js +22 -10
  501. package/build/esm/blocks/Table/schema.js.map +1 -1
  502. package/build/esm/blocks/Tabs/Tabs.js +16 -18
  503. package/build/esm/blocks/Tabs/Tabs.js.map +1 -1
  504. package/build/esm/blocks/Tabs/schema.js +25 -10
  505. package/build/esm/blocks/Tabs/schema.js.map +1 -1
  506. package/build/esm/components/Author/Author.js +1 -1
  507. package/build/esm/components/Author/Author.js.map +1 -1
  508. package/build/esm/components/Author/schema.js +5 -1
  509. package/build/esm/components/Author/schema.js.map +1 -1
  510. package/build/esm/components/BackLink/BackLink.js +5 -2
  511. package/build/esm/components/BackLink/BackLink.js.map +1 -1
  512. package/build/esm/components/BackgroundImage/BackgroundImage.js +1 -1
  513. package/build/esm/components/BackgroundImage/BackgroundImage.js.map +1 -1
  514. package/build/esm/components/BackgroundMedia/BackgroundMedia.js +4 -5
  515. package/build/esm/components/BackgroundMedia/BackgroundMedia.js.map +1 -1
  516. package/build/esm/components/BalancedMasonry/BalancedMasonry.js +4 -4
  517. package/build/esm/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  518. package/build/esm/components/BrandFooter/BrandFooter.css +21 -17
  519. package/build/esm/components/BrandFooter/BrandFooter.js +1 -1
  520. package/build/esm/components/BrandFooter/BrandFooter.js.map +1 -1
  521. package/build/esm/components/Button/Button.js +10 -8
  522. package/build/esm/components/Button/Button.js.map +1 -1
  523. package/build/esm/components/Button/utils.js +2 -2
  524. package/build/esm/components/Button/utils.js.map +1 -1
  525. package/build/esm/components/Buttons/Buttons.js +4 -1
  526. package/build/esm/components/Buttons/Buttons.js.map +1 -1
  527. package/build/esm/components/CardBase/CardBase.css +1 -0
  528. package/build/esm/components/CardBase/CardBase.js +6 -2
  529. package/build/esm/components/CardBase/CardBase.js.map +1 -1
  530. package/build/esm/components/ContentList/ContentList.css +7 -7
  531. package/build/esm/components/ContentList/ContentList.js +1 -1
  532. package/build/esm/components/ContentList/ContentList.js.map +1 -1
  533. package/build/esm/components/ContentList/ContentListItemIcon.js +1 -1
  534. package/build/esm/components/ContentList/ContentListItemIcon.js.map +1 -1
  535. package/build/esm/components/DefaultVideo/DefaultVideo.js +3 -4
  536. package/build/esm/components/DefaultVideo/DefaultVideo.js.map +1 -1
  537. package/build/esm/components/FileLink/FileLink.js +9 -2
  538. package/build/esm/components/FileLink/FileLink.js.map +1 -1
  539. package/build/esm/components/FullWidthBackground/FullWidthBackground.js +13 -18
  540. package/build/esm/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  541. package/build/esm/components/FullscreenImage/FullscreenImage.js +1 -1
  542. package/build/esm/components/FullscreenImage/FullscreenImage.js.map +1 -1
  543. package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +1 -1
  544. package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
  545. package/build/esm/components/IconWrapper/IconWrapper.js +2 -2
  546. package/build/esm/components/IconWrapper/IconWrapper.js.map +1 -1
  547. package/build/esm/components/Image/schema.js +40 -12
  548. package/build/esm/components/Image/schema.js.map +1 -1
  549. package/build/esm/components/ImageBase/ImageBase.js +3 -5
  550. package/build/esm/components/ImageBase/ImageBase.js.map +1 -1
  551. package/build/esm/components/InnerForm/InnerForm.js +5 -6
  552. package/build/esm/components/InnerForm/InnerForm.js.map +1 -1
  553. package/build/esm/components/Link/Link.js +13 -4
  554. package/build/esm/components/Link/Link.js.map +1 -1
  555. package/build/esm/components/Links/Links.js +4 -1
  556. package/build/esm/components/Links/Links.js.map +1 -1
  557. package/build/esm/components/Map/GoogleMap.js +1 -1
  558. package/build/esm/components/Map/GoogleMap.js.map +1 -1
  559. package/build/esm/components/Map/Map.js +2 -2
  560. package/build/esm/components/Map/Map.js.map +1 -1
  561. package/build/esm/components/Map/YMap/YMap.js +6 -5
  562. package/build/esm/components/Map/YMap/YMap.js.map +1 -1
  563. package/build/esm/components/Map/YMap/YandexMap.js +2 -3
  564. package/build/esm/components/Map/YMap/YandexMap.js.map +1 -1
  565. package/build/esm/components/Map/YMap/YandexMapApiLoader.js +2 -1
  566. package/build/esm/components/Map/YMap/YandexMapApiLoader.js.map +1 -1
  567. package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js +1 -1
  568. package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
  569. package/build/esm/components/Media/Image/Image.js +4 -4
  570. package/build/esm/components/Media/Image/Image.js.map +1 -1
  571. package/build/esm/components/Media/Media.js +13 -5
  572. package/build/esm/components/Media/Media.js.map +1 -1
  573. package/build/esm/components/MediaBase/MediaBase.js +3 -4
  574. package/build/esm/components/MediaBase/MediaBase.js.map +1 -1
  575. package/build/esm/components/MediaBase/MediaBaseContent.js +1 -1
  576. package/build/esm/components/MediaBase/MediaBaseContent.js.map +1 -1
  577. package/build/esm/components/OutsideClick/OutsideClick.js +10 -13
  578. package/build/esm/components/OutsideClick/OutsideClick.js.map +1 -1
  579. package/build/esm/components/OverflowScroller/OverflowScroller.js +47 -50
  580. package/build/esm/components/OverflowScroller/OverflowScroller.js.map +1 -1
  581. package/build/esm/components/ReactPlayer/ReactPlayer.js +11 -13
  582. package/build/esm/components/ReactPlayer/ReactPlayer.js.map +1 -1
  583. package/build/esm/components/ReactPlayer/utils.js +1 -2
  584. package/build/esm/components/ReactPlayer/utils.js.map +1 -1
  585. package/build/esm/components/Title/Title.js +2 -3
  586. package/build/esm/components/Title/Title.js.map +1 -1
  587. package/build/esm/components/Title/TitleItem.css +8 -1
  588. package/build/esm/components/Title/TitleItem.js +2 -1
  589. package/build/esm/components/Title/TitleItem.js.map +1 -1
  590. package/build/esm/components/VideoBlock/VideoBlock.js +6 -3
  591. package/build/esm/components/VideoBlock/VideoBlock.js.map +1 -1
  592. package/build/esm/components/YandexForm/YandexForm.js +3 -3
  593. package/build/esm/components/YandexForm/YandexForm.js.map +1 -1
  594. package/build/esm/components/YandexForm/schema.js +7 -3
  595. package/build/esm/components/YandexForm/schema.js.map +1 -1
  596. package/build/esm/containers/Loadable/Loadable.js +3 -3
  597. package/build/esm/containers/Loadable/Loadable.js.map +1 -1
  598. package/build/esm/containers/PageConstructor/PageConstructor.css +1 -0
  599. package/build/esm/containers/PageConstructor/PageConstructor.d.ts +1 -1
  600. package/build/esm/containers/PageConstructor/PageConstructor.js +15 -9
  601. package/build/esm/containers/PageConstructor/PageConstructor.js.map +1 -1
  602. package/build/esm/containers/PageConstructor/Provider.js +1 -1
  603. package/build/esm/containers/PageConstructor/Provider.js.map +1 -1
  604. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +2 -2
  605. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  606. package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js +1 -1
  607. package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map +1 -1
  608. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -3
  609. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
  610. package/build/esm/context/theme/withTheme.js +7 -9
  611. package/build/esm/context/theme/withTheme.js.map +1 -1
  612. package/build/esm/customization/BlockDecoration.js +3 -6
  613. package/build/esm/customization/BlockDecoration.js.map +1 -1
  614. package/build/esm/editor/components/AddBlock/AddBlock.js +7 -9
  615. package/build/esm/editor/components/AddBlock/AddBlock.js.map +1 -1
  616. package/build/esm/editor/components/BlockForm/BlockForm.js +11 -7
  617. package/build/esm/editor/components/BlockForm/BlockForm.js.map +1 -1
  618. package/build/esm/editor/components/CodeEditor/CodeEditor.js +1 -1
  619. package/build/esm/editor/components/CodeEditor/CodeEditor.js.map +1 -1
  620. package/build/esm/editor/components/ControlPanel/ControlPanel.css +1 -1
  621. package/build/esm/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js +4 -5
  622. package/build/esm/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js.map +1 -1
  623. package/build/esm/editor/components/EditBlock/EditBlock.js +2 -2
  624. package/build/esm/editor/components/EditBlock/EditBlock.js.map +1 -1
  625. package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js +2 -5
  626. package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  627. package/build/esm/editor/components/Layout/Layout.js +3 -3
  628. package/build/esm/editor/components/Layout/Layout.js.map +1 -1
  629. package/build/esm/editor/components/PageSettings/PageSettings.js +3 -4
  630. package/build/esm/editor/components/PageSettings/PageSettings.js.map +1 -1
  631. package/build/esm/editor/containers/Editor/Editor.js +1 -1
  632. package/build/esm/editor/containers/Editor/Editor.js.map +1 -1
  633. package/build/esm/editor/containers/Editor/hooks/useCode.js +2 -4
  634. package/build/esm/editor/containers/Editor/hooks/useCode.js.map +1 -1
  635. package/build/esm/editor/containers/Editor/hooks/useEditorState.js +10 -8
  636. package/build/esm/editor/containers/Editor/hooks/useEditorState.js.map +1 -1
  637. package/build/esm/editor/containers/Form/Form.js +5 -2
  638. package/build/esm/editor/containers/Form/Form.js.map +1 -1
  639. package/build/esm/editor/data/index.js +4 -1
  640. package/build/esm/editor/data/index.js.map +1 -1
  641. package/build/esm/editor/data/previews/default-preview.js +1 -1
  642. package/build/esm/editor/data/previews/default-preview.js.map +1 -1
  643. package/build/esm/editor/data/previews/header-block.js +1 -1
  644. package/build/esm/editor/data/previews/header-block.js.map +1 -1
  645. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +16 -14
  646. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  647. package/build/esm/editor/dynamic-forms-custom/config.js +1 -1
  648. package/build/esm/editor/dynamic-forms-custom/config.js.map +1 -1
  649. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js +10 -12
  650. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  651. package/build/esm/editor/dynamic-forms-custom/parser/index.js +150 -120
  652. package/build/esm/editor/dynamic-forms-custom/parser/index.js.map +1 -1
  653. package/build/esm/editor/dynamic-forms-custom/parser/views.js +2 -4
  654. package/build/esm/editor/dynamic-forms-custom/parser/views.js.map +1 -1
  655. package/build/esm/editor/icons/Tablet.js +1 -1
  656. package/build/esm/editor/icons/Tablet.js.map +1 -1
  657. package/build/esm/editor/store/main/index.js +7 -5
  658. package/build/esm/editor/store/main/index.js.map +1 -1
  659. package/build/esm/editor/store/main/reducer.js +17 -3
  660. package/build/esm/editor/store/main/reducer.js.map +1 -1
  661. package/build/esm/editor/store/main/utils.js +2 -2
  662. package/build/esm/editor/store/main/utils.js.map +1 -1
  663. package/build/esm/editor/store/settings/reducer.js +16 -4
  664. package/build/esm/editor/store/settings/reducer.js.map +1 -1
  665. package/build/esm/editor/utils/code.js +4 -2
  666. package/build/esm/editor/utils/code.js.map +1 -1
  667. package/build/esm/editor/utils/index.js +8 -2
  668. package/build/esm/editor/utils/index.js.map +1 -1
  669. package/build/esm/editor/utils/validation.js +1 -1
  670. package/build/esm/editor/utils/validation.js.map +1 -1
  671. package/build/esm/editor/widget/index.js +8 -8
  672. package/build/esm/editor/widget/index.js.map +1 -1
  673. package/build/esm/grid/Col/Col.js +1 -2
  674. package/build/esm/grid/Col/Col.js.map +1 -1
  675. package/build/esm/hooks/useAnalytics.js +4 -1
  676. package/build/esm/hooks/useAnalytics.js.map +1 -1
  677. package/build/esm/hooks/useFocus.js +1 -1
  678. package/build/esm/hooks/useFocus.js.map +1 -1
  679. package/build/esm/hooks/useHeightCalculator.js +1 -1
  680. package/build/esm/hooks/useHeightCalculator.js.map +1 -1
  681. package/build/esm/hooks/useWindowBreakpoint.js +1 -1
  682. package/build/esm/hooks/useWindowBreakpoint.js.map +1 -1
  683. package/build/esm/icons/BrandIconDark.js +1 -1
  684. package/build/esm/icons/BrandIconDark.js.map +1 -1
  685. package/build/esm/icons/BrandIconLight.js +1 -1
  686. package/build/esm/icons/BrandIconLight.js.map +1 -1
  687. package/build/esm/icons/BrandName.js +1 -1
  688. package/build/esm/icons/BrandName.js.map +1 -1
  689. package/build/esm/icons/Chevron.js +1 -1
  690. package/build/esm/icons/Chevron.js.map +1 -1
  691. package/build/esm/icons/Facebook.js +1 -1
  692. package/build/esm/icons/Facebook.js.map +1 -1
  693. package/build/esm/icons/Github.js +1 -1
  694. package/build/esm/icons/Github.js.map +1 -1
  695. package/build/esm/icons/Linkedin.js +1 -1
  696. package/build/esm/icons/Linkedin.js.map +1 -1
  697. package/build/esm/icons/NavigationArrow.js +1 -1
  698. package/build/esm/icons/NavigationArrow.js.map +1 -1
  699. package/build/esm/icons/NavigationChevron.js +1 -1
  700. package/build/esm/icons/NavigationChevron.js.map +1 -1
  701. package/build/esm/icons/Telegram.js +1 -1
  702. package/build/esm/icons/Telegram.js.map +1 -1
  703. package/build/esm/icons/Twitter.js +1 -1
  704. package/build/esm/icons/Twitter.js.map +1 -1
  705. package/build/esm/icons/Vk.js +1 -1
  706. package/build/esm/icons/Vk.js.map +1 -1
  707. package/build/esm/models/constructor-items/blocks.d.ts +2 -1
  708. package/build/esm/models/constructor-items/blocks.js.map +1 -1
  709. package/build/esm/models/constructor-items/common.d.ts +2 -2
  710. package/build/esm/models/constructor-items/common.js.map +1 -1
  711. package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
  712. package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
  713. package/build/esm/navigation/components/Logo/Logo.js +4 -6
  714. package/build/esm/navigation/components/Logo/Logo.js.map +1 -1
  715. package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js +2 -4
  716. package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
  717. package/build/esm/navigation/components/NavigationItem/NavigationItem.js +8 -7
  718. package/build/esm/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  719. package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js +1 -1
  720. package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
  721. package/build/esm/navigation/components/NavigationItem/components/GithubButton/GithubButton.js +2 -3
  722. package/build/esm/navigation/components/NavigationItem/components/GithubButton/GithubButton.js.map +1 -1
  723. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +1 -1
  724. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
  725. package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js +2 -4
  726. package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js.map +1 -1
  727. package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +4 -5
  728. package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
  729. package/build/esm/navigation/components/NavigationItem/hooks/useNavigationItemMap.js +1 -1
  730. package/build/esm/navigation/components/NavigationItem/hooks/useNavigationItemMap.js.map +1 -1
  731. package/build/esm/navigation/components/NavigationList/NavigationList.js +1 -5
  732. package/build/esm/navigation/components/NavigationList/NavigationList.js.map +1 -1
  733. package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js +2 -4
  734. package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
  735. package/build/esm/navigation/components/SocialIcon/SocialIcon.js +1 -1
  736. package/build/esm/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
  737. package/build/esm/navigation/components/Standalone/index.js +1 -1
  738. package/build/esm/navigation/components/Standalone/index.js.map +1 -1
  739. package/build/esm/navigation/hooks/useActiveNavItem.d.ts +2 -2
  740. package/build/esm/navigation/hooks/useActiveNavItem.js +1 -1
  741. package/build/esm/navigation/hooks/useActiveNavItem.js.map +1 -1
  742. package/build/esm/navigation/hooks/useShowBorder.js +1 -1
  743. package/build/esm/navigation/hooks/useShowBorder.js.map +1 -1
  744. package/build/esm/navigation/schema.js +20 -7
  745. package/build/esm/navigation/schema.js.map +1 -1
  746. package/build/esm/navigation/utils.d.ts +1 -1
  747. package/build/esm/navigation/utils.js +1 -1
  748. package/build/esm/navigation/utils.js.map +1 -1
  749. package/build/esm/schema/constants.js +33 -2
  750. package/build/esm/schema/constants.js.map +1 -1
  751. package/build/esm/schema/index.js +23 -6
  752. package/build/esm/schema/index.js.map +1 -1
  753. package/build/esm/schema/validators/common.js +78 -32
  754. package/build/esm/schema/validators/common.js.map +1 -1
  755. package/build/esm/schema/validators/utils.js +9 -2
  756. package/build/esm/schema/validators/utils.js.map +1 -1
  757. package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js +1 -1
  758. package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
  759. package/build/esm/sub-blocks/BackgroundCard/schema.js +24 -9
  760. package/build/esm/sub-blocks/BackgroundCard/schema.js.map +1 -1
  761. package/build/esm/sub-blocks/BannerCard/BannerCard.js +1 -1
  762. package/build/esm/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  763. package/build/esm/sub-blocks/BasicCard/BasicCard.js +2 -3
  764. package/build/esm/sub-blocks/BasicCard/BasicCard.js.map +1 -1
  765. package/build/esm/sub-blocks/BasicCard/schema.js +18 -7
  766. package/build/esm/sub-blocks/BasicCard/schema.js.map +1 -1
  767. package/build/esm/sub-blocks/Content/Content.css +53 -6
  768. package/build/esm/sub-blocks/Content/Content.js +3 -1
  769. package/build/esm/sub-blocks/Content/Content.js.map +1 -1
  770. package/build/esm/sub-blocks/Content/schema.js +10 -3
  771. package/build/esm/sub-blocks/Content/schema.js.map +1 -1
  772. package/build/esm/sub-blocks/Divider/schema.js +6 -2
  773. package/build/esm/sub-blocks/Divider/schema.js.map +1 -1
  774. package/build/esm/sub-blocks/HubspotForm/index.js +3 -3
  775. package/build/esm/sub-blocks/HubspotForm/index.js.map +1 -1
  776. package/build/esm/sub-blocks/HubspotForm/loadHubspotScript.js +1 -2
  777. package/build/esm/sub-blocks/HubspotForm/loadHubspotScript.js.map +1 -1
  778. package/build/esm/sub-blocks/HubspotForm/schema.js +11 -5
  779. package/build/esm/sub-blocks/HubspotForm/schema.js.map +1 -1
  780. package/build/esm/sub-blocks/ImageCard/ImageCard.css +2 -0
  781. package/build/esm/sub-blocks/ImageCard/ImageCard.js +1 -1
  782. package/build/esm/sub-blocks/ImageCard/ImageCard.js.map +1 -1
  783. package/build/esm/sub-blocks/ImageCard/schema.js +18 -7
  784. package/build/esm/sub-blocks/ImageCard/schema.js.map +1 -1
  785. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js +11 -10
  786. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
  787. package/build/esm/sub-blocks/LayoutItem/schema.js +20 -7
  788. package/build/esm/sub-blocks/LayoutItem/schema.js.map +1 -1
  789. package/build/esm/sub-blocks/LayoutItem/utils.js +4 -1
  790. package/build/esm/sub-blocks/LayoutItem/utils.js.map +1 -1
  791. package/build/esm/sub-blocks/MediaCard/MediaCard.js +1 -5
  792. package/build/esm/sub-blocks/MediaCard/MediaCard.js.map +1 -1
  793. package/build/esm/sub-blocks/MediaCard/schema.js +12 -3
  794. package/build/esm/sub-blocks/MediaCard/schema.js.map +1 -1
  795. package/build/esm/sub-blocks/PriceCard/PriceCard.js +2 -2
  796. package/build/esm/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  797. package/build/esm/sub-blocks/PriceCard/schema.js +25 -11
  798. package/build/esm/sub-blocks/PriceCard/schema.js.map +1 -1
  799. package/build/esm/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js +1 -1
  800. package/build/esm/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js.map +1 -1
  801. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +2 -2
  802. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  803. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  804. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
  805. package/build/esm/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js +1 -5
  806. package/build/esm/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js.map +1 -1
  807. package/build/esm/sub-blocks/PriceDetailed/schema.js +44 -12
  808. package/build/esm/sub-blocks/PriceDetailed/schema.js.map +1 -1
  809. package/build/esm/sub-blocks/Quote/Quote.js +6 -3
  810. package/build/esm/sub-blocks/Quote/Quote.js.map +1 -1
  811. package/build/esm/sub-blocks/Quote/schema.js +21 -8
  812. package/build/esm/sub-blocks/Quote/schema.js.map +1 -1
  813. package/build/esm/text-transform/common.js +10 -7
  814. package/build/esm/text-transform/common.js.map +1 -1
  815. package/build/esm/text-transform/config.js +26 -19
  816. package/build/esm/text-transform/config.js.map +1 -1
  817. package/build/esm/text-transform/filter.js +4 -1
  818. package/build/esm/text-transform/filter.js.map +1 -1
  819. package/build/esm/text-transform/transformers.js +3 -3
  820. package/build/esm/text-transform/transformers.js.map +1 -1
  821. package/build/esm/text-transform/utils.js +8 -6
  822. package/build/esm/text-transform/utils.js.map +1 -1
  823. package/build/esm/utils/analytics.js +2 -3
  824. package/build/esm/utils/analytics.js.map +1 -1
  825. package/build/esm/utils/blocks.js +3 -2
  826. package/build/esm/utils/blocks.js.map +1 -1
  827. package/build/esm/utils/common.js +1 -2
  828. package/build/esm/utils/common.js.map +1 -1
  829. package/build/esm/utils/hubspot.js +6 -7
  830. package/build/esm/utils/hubspot.js.map +1 -1
  831. package/build/esm/utils/microdata.js +1 -1
  832. package/build/esm/utils/microdata.js.map +1 -1
  833. package/build/esm/utils/url.js +10 -5
  834. package/build/esm/utils/url.js.map +1 -1
  835. package/package.json +16 -11
  836. package/schema/index.js +1 -1
  837. package/server/models/constructor-items/blocks.d.ts +2 -1
  838. package/server/models/constructor-items/common.d.ts +2 -2
  839. package/server/utils/blocks.js +1 -0
  840. package/styles/root.scss +1 -0
  841. package/widget/2957.index.js +1 -1
@@ -8,9 +8,12 @@ const PriceDetailedDetailsType = ['marked-list', 'settings'];
8
8
  const PriceDetailedDescriptionColor = ['cornflower', 'black'];
9
9
  const PriceLabelColor = ['blue', 'green', 'yellow', 'purple', 'red'];
10
10
  const LabelsDefaultTextProp = PriceLabelColor.reduce((result, labelColor) => {
11
- return Object.assign(Object.assign({}, result), { [labelColor]: {
11
+ return {
12
+ ...result,
13
+ [labelColor]: {
12
14
  type: 'string',
13
- } });
15
+ },
16
+ };
14
17
  }, {});
15
18
  const PriceDetailedLabelsDefaultTextProps = {
16
19
  additionalProperties: false,
@@ -129,8 +132,18 @@ const PriceDetailsListProps = {
129
132
  const PriceDetailsProps = {
130
133
  items: {
131
134
  oneOf: [
132
- Object.assign(Object.assign({}, (0, utils_1.filteredArray)(Object.assign({}, PriceDetailsListProps))), { optionName: 'marked-list' }),
133
- Object.assign(Object.assign({}, (0, utils_1.filteredArray)(Object.assign({}, PriceDetailsSettingsProps))), { optionName: 'settings' }),
135
+ {
136
+ ...(0, utils_1.filteredArray)({
137
+ ...PriceDetailsListProps,
138
+ }),
139
+ optionName: 'marked-list',
140
+ },
141
+ {
142
+ ...(0, utils_1.filteredArray)({
143
+ ...PriceDetailsSettingsProps,
144
+ }),
145
+ optionName: 'settings',
146
+ },
134
147
  ],
135
148
  },
136
149
  };
@@ -138,34 +151,53 @@ const PriceItem = {
138
151
  type: 'object',
139
152
  additionalProperties: false,
140
153
  required: ['title', 'description'],
141
- properties: Object.assign(Object.assign(Object.assign({}, PriceDetailsProps), PriceDescriptionProps), { analyticsEvents: {
154
+ properties: {
155
+ ...PriceDetailsProps,
156
+ ...PriceDescriptionProps,
157
+ analyticsEvents: {
142
158
  oneOf: [
143
- Object.assign(Object.assign({}, event_1.AnalyticsEventSchema), { optionName: 'single' }),
159
+ {
160
+ ...event_1.AnalyticsEventSchema,
161
+ optionName: 'single',
162
+ },
144
163
  {
145
164
  type: 'array',
146
165
  items: event_1.AnalyticsEventSchema,
147
166
  optionName: 'list',
148
167
  },
149
168
  ],
150
- } }),
169
+ },
170
+ },
151
171
  };
152
172
  /** @deprecated */
153
173
  exports.PriceDetailedBlock = {
154
174
  'price-detailed': {
155
175
  additionalProperties: false,
156
176
  required: ['items'],
157
- properties: Object.assign(Object.assign(Object.assign({}, common_1.BaseProps), common_1.AnimatableProps), { items: (0, utils_1.filteredArray)(PriceItem), description: PriceDetailedDescriptionProps, details: PriceDetailedDetailsProps, priceType: {
177
+ properties: {
178
+ ...common_1.BaseProps,
179
+ ...common_1.AnimatableProps,
180
+ items: (0, utils_1.filteredArray)(PriceItem),
181
+ description: PriceDetailedDescriptionProps,
182
+ details: PriceDetailedDetailsProps,
183
+ priceType: {
158
184
  type: 'string',
159
185
  enum: PriceDetailedDetailsType,
160
186
  default: 'settings',
161
- }, numberGroupItems: {
187
+ },
188
+ numberGroupItems: {
162
189
  type: 'number',
163
190
  enum: [3, 4, 5],
164
- }, isCombined: {
191
+ },
192
+ isCombined: {
165
193
  type: 'boolean',
166
- }, useMixedView: {
194
+ },
195
+ useMixedView: {
167
196
  type: 'boolean',
168
- }, foldable: PriceDetailedFoldableDetailsProps, labelsDefaultText: PriceDetailedLabelsDefaultTextProps }),
197
+ },
198
+ foldable: PriceDetailedFoldableDetailsProps,
199
+ labelsDefaultText: PriceDetailedLabelsDefaultTextProps,
200
+ },
169
201
  },
170
202
  };
171
203
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["sub-blocks/PriceDetailed/schema.ts"],"names":[],"mappings":"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","sourcesContent":["import {AnimatableProps, BaseProps, textSize} from '../../schema/validators/common';\nimport {AnalyticsEventSchema} from '../../schema/validators/event';\nimport {filteredArray} from '../../schema/validators/utils';\n\nconst PriceDetailedDetailsType = ['marked-list', 'settings'];\nconst PriceDetailedDescriptionColor = ['cornflower', 'black'];\nconst PriceLabelColor = ['blue', 'green', 'yellow', 'purple', 'red'];\n\nconst LabelsDefaultTextProp = PriceLabelColor.reduce((result, labelColor) => {\n return {\n ...result,\n [labelColor]: {\n type: 'string',\n },\n };\n}, {});\n\nconst PriceDetailedLabelsDefaultTextProps = {\n additionalProperties: false,\n required: [],\n properties: LabelsDefaultTextProp,\n};\n\nconst PriceDetailedFoldableDetailsProps = {\n additionalProperties: false,\n required: ['title'],\n properties: {\n title: {\n type: 'string',\n contentType: 'text',\n },\n size: {\n type: 'string',\n enum: textSize,\n },\n titleColor: {\n type: 'string',\n enum: PriceDetailedDescriptionColor,\n },\n },\n};\n\nconst PriceDetailedDetailsProps = {\n additionalProperties: false,\n required: [],\n properties: {\n titleSize: {\n type: 'string',\n enum: textSize,\n },\n descriptionSize: {\n type: 'string',\n enum: textSize,\n },\n },\n};\n\nconst PriceDetailedDescriptionProps = {\n additionalProperties: false,\n required: [],\n properties: {\n titleSize: {\n type: 'string',\n enum: textSize,\n },\n descriptionSize: {\n type: 'string',\n enum: textSize,\n },\n titleColor: {\n type: 'string',\n enum: PriceDetailedDescriptionColor,\n },\n },\n};\n\nconst PriceDescriptionLabelProps = {\n additionalProperties: false,\n required: ['color'],\n properties: {\n color: {\n type: 'string',\n enum: PriceLabelColor,\n },\n text: {\n type: 'string',\n contentType: 'text',\n },\n size: {\n type: 'string',\n enum: textSize,\n },\n },\n};\n\nconst PriceDescriptionProps = {\n title: {\n type: 'string',\n contentType: 'text',\n },\n description: {\n type: 'string',\n contentType: 'yfm',\n },\n detailedTitle: {\n type: 'string',\n contentType: 'text',\n },\n label: PriceDescriptionLabelProps,\n};\n\nconst PriceDetailsSettingsProps = {\n type: 'object',\n additionalProperties: false,\n required: ['title', 'description'],\n properties: {\n title: {\n type: 'string',\n contentType: 'text',\n },\n description: {\n type: 'string',\n contentType: 'yfm',\n },\n },\n};\n\nconst PriceDetailsListProps = {\n type: 'object',\n additionalProperties: false,\n required: ['text'],\n properties: {\n text: {\n type: 'string',\n contentType: 'yfm',\n },\n },\n};\n\nconst PriceDetailsProps = {\n items: {\n oneOf: [\n {\n ...filteredArray({\n ...PriceDetailsListProps,\n }),\n optionName: 'marked-list',\n },\n {\n ...filteredArray({\n ...PriceDetailsSettingsProps,\n }),\n optionName: 'settings',\n },\n ],\n },\n};\n\nconst PriceItem = {\n type: 'object',\n additionalProperties: false,\n required: ['title', 'description'],\n properties: {\n ...PriceDetailsProps,\n ...PriceDescriptionProps,\n analyticsEvents: {\n oneOf: [\n {\n ...AnalyticsEventSchema,\n optionName: 'single',\n },\n {\n type: 'array',\n items: AnalyticsEventSchema,\n optionName: 'list',\n },\n ],\n },\n },\n};\n\n/** @deprecated */\nexport const PriceDetailedBlock = {\n 'price-detailed': {\n additionalProperties: false,\n required: ['items'],\n properties: {\n ...BaseProps,\n ...AnimatableProps,\n items: filteredArray(PriceItem),\n description: PriceDetailedDescriptionProps,\n details: PriceDetailedDetailsProps,\n priceType: {\n type: 'string',\n enum: PriceDetailedDetailsType,\n default: 'settings',\n },\n numberGroupItems: {\n type: 'number',\n enum: [3, 4, 5],\n },\n isCombined: {\n type: 'boolean',\n },\n useMixedView: {\n type: 'boolean',\n },\n foldable: PriceDetailedFoldableDetailsProps,\n labelsDefaultText: PriceDetailedLabelsDefaultTextProps,\n },\n },\n};\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["sub-blocks/PriceDetailed/schema.ts"],"names":[],"mappings":"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","sourcesContent":["import {AnimatableProps, BaseProps, textSize} from '../../schema/validators/common';\nimport {AnalyticsEventSchema} from '../../schema/validators/event';\nimport {filteredArray} from '../../schema/validators/utils';\n\nconst PriceDetailedDetailsType = ['marked-list', 'settings'];\nconst PriceDetailedDescriptionColor = ['cornflower', 'black'];\nconst PriceLabelColor = ['blue', 'green', 'yellow', 'purple', 'red'];\n\nconst LabelsDefaultTextProp = PriceLabelColor.reduce((result, labelColor) => {\n return {\n ...result,\n [labelColor]: {\n type: 'string',\n },\n };\n}, {});\n\nconst PriceDetailedLabelsDefaultTextProps = {\n additionalProperties: false,\n required: [],\n properties: LabelsDefaultTextProp,\n};\n\nconst PriceDetailedFoldableDetailsProps = {\n additionalProperties: false,\n required: ['title'],\n properties: {\n title: {\n type: 'string',\n contentType: 'text',\n },\n size: {\n type: 'string',\n enum: textSize,\n },\n titleColor: {\n type: 'string',\n enum: PriceDetailedDescriptionColor,\n },\n },\n};\n\nconst PriceDetailedDetailsProps = {\n additionalProperties: false,\n required: [],\n properties: {\n titleSize: {\n type: 'string',\n enum: textSize,\n },\n descriptionSize: {\n type: 'string',\n enum: textSize,\n },\n },\n};\n\nconst PriceDetailedDescriptionProps = {\n additionalProperties: false,\n required: [],\n properties: {\n titleSize: {\n type: 'string',\n enum: textSize,\n },\n descriptionSize: {\n type: 'string',\n enum: textSize,\n },\n titleColor: {\n type: 'string',\n enum: PriceDetailedDescriptionColor,\n },\n },\n};\n\nconst PriceDescriptionLabelProps = {\n additionalProperties: false,\n required: ['color'],\n properties: {\n color: {\n type: 'string',\n enum: PriceLabelColor,\n },\n text: {\n type: 'string',\n contentType: 'text',\n },\n size: {\n type: 'string',\n enum: textSize,\n },\n },\n};\n\nconst PriceDescriptionProps = {\n title: {\n type: 'string',\n contentType: 'text',\n },\n description: {\n type: 'string',\n contentType: 'yfm',\n },\n detailedTitle: {\n type: 'string',\n contentType: 'text',\n },\n label: PriceDescriptionLabelProps,\n};\n\nconst PriceDetailsSettingsProps = {\n type: 'object',\n additionalProperties: false,\n required: ['title', 'description'],\n properties: {\n title: {\n type: 'string',\n contentType: 'text',\n },\n description: {\n type: 'string',\n contentType: 'yfm',\n },\n },\n};\n\nconst PriceDetailsListProps = {\n type: 'object',\n additionalProperties: false,\n required: ['text'],\n properties: {\n text: {\n type: 'string',\n contentType: 'yfm',\n },\n },\n};\n\nconst PriceDetailsProps = {\n items: {\n oneOf: [\n {\n ...filteredArray({\n ...PriceDetailsListProps,\n }),\n optionName: 'marked-list',\n },\n {\n ...filteredArray({\n ...PriceDetailsSettingsProps,\n }),\n optionName: 'settings',\n },\n ],\n },\n};\n\nconst PriceItem = {\n type: 'object',\n additionalProperties: false,\n required: ['title', 'description'],\n properties: {\n ...PriceDetailsProps,\n ...PriceDescriptionProps,\n analyticsEvents: {\n oneOf: [\n {\n ...AnalyticsEventSchema,\n optionName: 'single',\n },\n {\n type: 'array',\n items: AnalyticsEventSchema,\n optionName: 'list',\n },\n ],\n },\n },\n};\n\n/** @deprecated */\nexport const PriceDetailedBlock = {\n 'price-detailed': {\n additionalProperties: false,\n required: ['items'],\n properties: {\n ...BaseProps,\n ...AnimatableProps,\n items: filteredArray(PriceItem),\n description: PriceDetailedDescriptionProps,\n details: PriceDetailedDetailsProps,\n priceType: {\n type: 'string',\n enum: PriceDetailedDetailsType,\n default: 'settings',\n },\n numberGroupItems: {\n type: 'number',\n enum: [3, 4, 5],\n },\n isCombined: {\n type: 'boolean',\n },\n useMixedView: {\n type: 'boolean',\n },\n foldable: PriceDetailedFoldableDetailsProps,\n labelsDefaultText: PriceDetailedLabelsDefaultTextProps,\n },\n },\n};\n"]}
@@ -18,12 +18,15 @@ const Quote = (props) => {
18
18
  const handleAnalytics = (0, hooks_1.useAnalytics)(models_1.DefaultEventNames.QuoteButton, url);
19
19
  const handleButtonClick = React.useCallback(() => handleAnalytics(), [handleAnalytics]);
20
20
  const themedAuthor = author
21
- ? Object.assign(Object.assign({}, author), { avatar: (0, utils_2.getThemedValue)(author.avatar, theme) })
21
+ ? {
22
+ ...author,
23
+ avatar: (0, utils_2.getThemedValue)(author.avatar, theme),
24
+ }
22
25
  : author;
23
- const renderFooter = Boolean(author || url) && ((0, jsx_runtime_1.jsxs)("div", { className: b('author-wrapper'), children: [themedAuthor && ((0, jsx_runtime_1.jsx)(components_1.Author, { className: b('author', { theme: textTheme }), author: themedAuthor, type: models_1.AuthorType.Line, theme: textTheme })), url && buttonText && !button && ((0, jsx_runtime_1.jsx)(components_1.Button, { theme: "outlined", size: "xl", url: url, className: b('link-button', { theme: textTheme }), onClick: handleButtonClick, urlTitle: urlTitle, text: buttonText })), button && (0, jsx_runtime_1.jsx)(components_1.Button, Object.assign({ size: "xl" }, button))] }));
26
+ const renderFooter = Boolean(author || url) && ((0, jsx_runtime_1.jsxs)("div", { className: b('author-wrapper'), children: [themedAuthor && ((0, jsx_runtime_1.jsx)(components_1.Author, { className: b('author', { theme: textTheme }), author: themedAuthor, type: models_1.AuthorType.Line, theme: textTheme })), url && buttonText && !button && ((0, jsx_runtime_1.jsx)(components_1.Button, { theme: "outlined", size: "xl", url: url, className: b('link-button', { theme: textTheme }), onClick: handleButtonClick, urlTitle: urlTitle, text: buttonText })), button && (0, jsx_runtime_1.jsx)(components_1.Button, { size: "xl", ...button })] }));
24
27
  const themedLogoProps = (0, utils_2.getThemedValue)(logo, theme);
25
28
  const logoProps = (0, utils_1.getMediaImage)(themedLogoProps);
26
- return ((0, jsx_runtime_1.jsxs)("div", { className: b({ theme: textTheme, border }), style: color ? { backgroundColor: color } : {}, children: [(0, jsx_runtime_1.jsxs)("div", { className: b('content-wrapper'), children: [(0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)(components_1.Image, Object.assign({ className: b('logo') }, logoProps)), (0, jsx_runtime_1.jsxs)("div", { className: b('content', { 'quote-type': quoteType }), children: [text && ((0, jsx_runtime_1.jsx)("span", { className: b('text'), children: (0, jsx_runtime_1.jsx)(components_1.HTML, { children: text }) })), yfmText && ((0, jsx_runtime_1.jsx)(components_1.YFMWrapper, { className: b('text'), content: yfmText, modifiers: { constructor: true } }))] })] }), renderFooter] }, text), (0, jsx_runtime_1.jsx)("div", { className: b('image-wrapper'), children: (0, jsx_runtime_1.jsx)(components_1.Image, Object.assign({}, imageData, { className: b('image') })) })] }));
29
+ return ((0, jsx_runtime_1.jsxs)("div", { className: b({ theme: textTheme, border }), style: color ? { backgroundColor: color } : {}, children: [(0, jsx_runtime_1.jsxs)("div", { className: b('content-wrapper'), children: [(0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)(components_1.Image, { className: b('logo'), ...logoProps }), (0, jsx_runtime_1.jsxs)("div", { className: b('content', { 'quote-type': quoteType }), children: [text && ((0, jsx_runtime_1.jsx)("span", { className: b('text'), children: (0, jsx_runtime_1.jsx)(components_1.HTML, { children: text }) })), yfmText && ((0, jsx_runtime_1.jsx)(components_1.YFMWrapper, { className: b('text'), content: yfmText, modifiers: { constructor: true } }))] })] }), renderFooter] }, text), (0, jsx_runtime_1.jsx)("div", { className: b('image-wrapper'), children: (0, jsx_runtime_1.jsx)(components_1.Image, { ...imageData, className: b('image') }) })] }));
27
30
  };
28
31
  exports.default = Quote;
29
32
  //# sourceMappingURL=Quote.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Quote.js","sourceRoot":"../../../../src","sources":["sub-blocks/Quote/Quote.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Author, Button, HTML, Image, YFMWrapper} from '../../components';\nimport {getMediaImage} from '../../components/Media/Image/utils';\nimport {useTheme} from '../../context/theme';\nimport {useAnalytics} from '../../hooks';\nimport {AuthorItem, AuthorType, DefaultEventNames, QuoteProps, QuoteType} from '../../models';\nimport {block, getThemedValue} from '../../utils';\n\nimport './Quote.scss';\n\nconst b = block('quote');\n\nconst Quote = (props: QuoteProps) => {\n const {\n theme: textTheme = 'light',\n color,\n image,\n border = 'shadow',\n text,\n yfmText,\n logo,\n author,\n url,\n urlTitle,\n buttonText,\n quoteType = QuoteType.Chevron,\n button,\n } = props;\n const theme = useTheme();\n const imageThemed = getThemedValue(image, theme);\n const imageData = getMediaImage(imageThemed);\n const handleAnalytics = useAnalytics(DefaultEventNames.QuoteButton, url);\n\n const handleButtonClick = React.useCallback(() => handleAnalytics(), [handleAnalytics]);\n const themedAuthor = author\n ? ({\n ...author,\n avatar: getThemedValue(author.avatar, theme),\n } as AuthorItem)\n : author;\n\n const renderFooter = Boolean(author || url) && (\n <div className={b('author-wrapper')}>\n {themedAuthor && (\n <Author\n className={b('author', {theme: textTheme})}\n author={themedAuthor}\n type={AuthorType.Line}\n theme={textTheme}\n />\n )}\n {url && buttonText && !button && (\n <Button\n theme=\"outlined\"\n size=\"xl\"\n url={url}\n className={b('link-button', {theme: textTheme})}\n onClick={handleButtonClick}\n urlTitle={urlTitle}\n text={buttonText}\n />\n )}\n {button && <Button size=\"xl\" {...button} />}\n </div>\n );\n\n const themedLogoProps = getThemedValue(logo, theme);\n const logoProps = getMediaImage(themedLogoProps);\n\n return (\n <div\n className={b({theme: textTheme, border})}\n style={color ? {backgroundColor: color} : {}}\n >\n <div key={text} className={b('content-wrapper')}>\n <div>\n <Image className={b('logo')} {...logoProps} />\n <div className={b('content', {'quote-type': quoteType})}>\n {text && (\n <span className={b('text')}>\n <HTML>{text}</HTML>\n </span>\n )}\n {yfmText && (\n <YFMWrapper\n className={b('text')}\n content={yfmText}\n modifiers={{constructor: true}}\n />\n )}\n </div>\n </div>\n {renderFooter}\n </div>\n <div className={b('image-wrapper')}>\n <Image {...imageData} className={b('image')} />\n </div>\n </div>\n );\n};\n\nexport default Quote;\n"]}
1
+ {"version":3,"file":"Quote.js","sourceRoot":"../../../../src","sources":["sub-blocks/Quote/Quote.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Author, Button, HTML, Image, YFMWrapper} from '../../components';\nimport {getMediaImage} from '../../components/Media/Image/utils';\nimport {useTheme} from '../../context/theme';\nimport {useAnalytics} from '../../hooks';\nimport {AuthorItem, AuthorType, DefaultEventNames, QuoteProps, QuoteType} from '../../models';\nimport {block, getThemedValue} from '../../utils';\n\nimport './Quote.scss';\n\nconst b = block('quote');\n\nconst Quote = (props: QuoteProps) => {\n const {\n theme: textTheme = 'light',\n color,\n image,\n border = 'shadow',\n text,\n yfmText,\n logo,\n author,\n url,\n urlTitle,\n buttonText,\n quoteType = QuoteType.Chevron,\n button,\n } = props;\n const theme = useTheme();\n const imageThemed = getThemedValue(image, theme);\n const imageData = getMediaImage(imageThemed);\n const handleAnalytics = useAnalytics(DefaultEventNames.QuoteButton, url);\n\n const handleButtonClick = React.useCallback(() => handleAnalytics(), [handleAnalytics]);\n const themedAuthor = author\n ? ({\n ...author,\n avatar: getThemedValue(author.avatar, theme),\n } as AuthorItem)\n : author;\n\n const renderFooter = Boolean(author || url) && (\n <div className={b('author-wrapper')}>\n {themedAuthor && (\n <Author\n className={b('author', {theme: textTheme})}\n author={themedAuthor}\n type={AuthorType.Line}\n theme={textTheme}\n />\n )}\n {url && buttonText && !button && (\n <Button\n theme=\"outlined\"\n size=\"xl\"\n url={url}\n className={b('link-button', {theme: textTheme})}\n onClick={handleButtonClick}\n urlTitle={urlTitle}\n text={buttonText}\n />\n )}\n {button && <Button size=\"xl\" {...button} />}\n </div>\n );\n\n const themedLogoProps = getThemedValue(logo, theme);\n const logoProps = getMediaImage(themedLogoProps);\n\n return (\n <div\n className={b({theme: textTheme, border})}\n style={color ? {backgroundColor: color} : {}}\n >\n <div key={text} className={b('content-wrapper')}>\n <div>\n <Image className={b('logo')} {...logoProps} />\n <div className={b('content', {'quote-type': quoteType})}>\n {text && (\n <span className={b('text')}>\n <HTML>{text}</HTML>\n </span>\n )}\n {yfmText && (\n <YFMWrapper\n className={b('text')}\n content={yfmText}\n modifiers={{constructor: true}}\n />\n )}\n </div>\n </div>\n {renderFooter}\n </div>\n <div className={b('image-wrapper')}>\n <Image {...imageData} className={b('image')} />\n </div>\n </div>\n );\n};\n\nexport default Quote;\n"]}
@@ -7,24 +7,37 @@ exports.Quote = {
7
7
  quote: {
8
8
  additionalProperties: false,
9
9
  required: ['image', 'logo'],
10
- properties: Object.assign(Object.assign({}, common_1.BaseProps), { text: {
10
+ properties: {
11
+ ...common_1.BaseProps,
12
+ text: {
11
13
  type: 'string',
12
14
  contentType: 'text',
13
- }, yfmText: {
15
+ },
16
+ yfmText: {
14
17
  type: 'string',
15
18
  contentType: 'text',
16
- }, image: (0, common_1.withTheme)(schema_1.ImageProps), logo: schema_1.ImageProps, color: {
19
+ },
20
+ image: (0, common_1.withTheme)(schema_1.ImageProps),
21
+ logo: schema_1.ImageProps,
22
+ color: {
17
23
  type: 'string',
18
- }, url: {
24
+ },
25
+ url: {
19
26
  type: 'string',
20
- }, urlTitle: {
27
+ },
28
+ urlTitle: {
21
29
  type: 'string',
22
- }, buttonText: {
30
+ },
31
+ buttonText: {
23
32
  type: 'string',
24
- }, theme: common_1.ThemeProps, author: common_1.authorItem, quoteType: {
33
+ },
34
+ theme: common_1.ThemeProps,
35
+ author: common_1.authorItem,
36
+ quoteType: {
25
37
  type: 'string',
26
38
  enum: common_1.quoteTypes,
27
- } }),
39
+ },
40
+ },
28
41
  },
29
42
  };
30
43
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["sub-blocks/Quote/schema.ts"],"names":[],"mappings":";;;AAAA,6DAAyD;AACzD,8DAMwC;AAE3B,QAAA,KAAK,GAAG;IACjB,KAAK,EAAE;QACH,oBAAoB,EAAE,KAAK;QAC3B,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;QAC3B,UAAU,kCACH,kBAAS,KACZ,IAAI,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,MAAM;aACtB,EACD,OAAO,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,MAAM;aACtB,EACD,KAAK,EAAE,IAAA,kBAAS,EAAC,mBAAU,CAAC,EAC5B,IAAI,EAAE,mBAAU,EAChB,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;aACjB,EACD,GAAG,EAAE;gBACD,IAAI,EAAE,QAAQ;aACjB,EACD,QAAQ,EAAE;gBACN,IAAI,EAAE,QAAQ;aACjB,EACD,UAAU,EAAE;gBACR,IAAI,EAAE,QAAQ;aACjB,EACD,KAAK,EAAE,mBAAU,EACjB,MAAM,EAAE,mBAAU,EAClB,SAAS,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,mBAAU;aACnB,GACJ;KACJ;CACJ,CAAC","sourcesContent":["import {ImageProps} from '../../components/Image/schema';\nimport {\n BaseProps,\n ThemeProps,\n authorItem,\n quoteTypes,\n withTheme,\n} from '../../schema/validators/common';\n\nexport const Quote = {\n quote: {\n additionalProperties: false,\n required: ['image', 'logo'],\n properties: {\n ...BaseProps,\n text: {\n type: 'string',\n contentType: 'text',\n },\n yfmText: {\n type: 'string',\n contentType: 'text',\n },\n image: withTheme(ImageProps),\n logo: ImageProps,\n color: {\n type: 'string',\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n buttonText: {\n type: 'string',\n },\n theme: ThemeProps,\n author: authorItem,\n quoteType: {\n type: 'string',\n enum: quoteTypes,\n },\n },\n },\n};\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["sub-blocks/Quote/schema.ts"],"names":[],"mappings":";;;AAAA,6DAAyD;AACzD,8DAMwC;AAE3B,QAAA,KAAK,GAAG;IACjB,KAAK,EAAE;QACH,oBAAoB,EAAE,KAAK;QAC3B,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;QAC3B,UAAU,EAAE;YACR,GAAG,kBAAS;YACZ,IAAI,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,MAAM;aACtB;YACD,OAAO,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,MAAM;aACtB;YACD,KAAK,EAAE,IAAA,kBAAS,EAAC,mBAAU,CAAC;YAC5B,IAAI,EAAE,mBAAU;YAChB,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;aACjB;YACD,GAAG,EAAE;gBACD,IAAI,EAAE,QAAQ;aACjB;YACD,QAAQ,EAAE;gBACN,IAAI,EAAE,QAAQ;aACjB;YACD,UAAU,EAAE;gBACR,IAAI,EAAE,QAAQ;aACjB;YACD,KAAK,EAAE,mBAAU;YACjB,MAAM,EAAE,mBAAU;YAClB,SAAS,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,mBAAU;aACnB;SACJ;KACJ;CACJ,CAAC","sourcesContent":["import {ImageProps} from '../../components/Image/schema';\nimport {\n BaseProps,\n ThemeProps,\n authorItem,\n quoteTypes,\n withTheme,\n} from '../../schema/validators/common';\n\nexport const Quote = {\n quote: {\n additionalProperties: false,\n required: ['image', 'logo'],\n properties: {\n ...BaseProps,\n text: {\n type: 'string',\n contentType: 'text',\n },\n yfmText: {\n type: 'string',\n contentType: 'text',\n },\n image: withTheme(ImageProps),\n logo: ImageProps,\n color: {\n type: 'string',\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n buttonText: {\n type: 'string',\n },\n theme: ThemeProps,\n author: authorItem,\n quoteType: {\n type: 'string',\n enum: quoteTypes,\n },\n },\n },\n};\n"]}
@@ -14,13 +14,16 @@ const createItemsParser = (fields) => (transformer, items) => items.map((item) =
14
14
  return transformer(item);
15
15
  }
16
16
  else {
17
- return Object.assign(Object.assign({}, item), fields.reduce((acc, fieldName) => {
18
- if (item[fieldName]) {
19
- // eslint-disable-next-line no-param-reassign
20
- acc[fieldName] = transformer(item[fieldName]);
21
- }
22
- return acc;
23
- }, {}));
17
+ return {
18
+ ...item,
19
+ ...fields.reduce((acc, fieldName) => {
20
+ if (item[fieldName]) {
21
+ // eslint-disable-next-line no-param-reassign
22
+ acc[fieldName] = transformer(item[fieldName]);
23
+ }
24
+ return acc;
25
+ }, {}),
26
+ };
24
27
  }
25
28
  });
26
29
  exports.createItemsParser = createItemsParser;
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"../../../src","sources":["text-transform/common.ts"],"names":[],"mappings":";;;AAsCA,wCAYC;AAED,kDAEC;;AAtDD,sFAA6D;AAI7D,sCAAsD;AAa/C,MAAM,iBAAiB,GAAG,CAAC,MAAgB,EAAE,EAAE,CAAC,CAAC,WAAwB,EAAE,KAAa,EAAE,EAAE,CAC/F,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;IACf,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,IAAI,CAAC;IAChB,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACJ,uCACO,IAAI,GACJ,MAAM,CAAC,MAAM,CAAc,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;YAC7C,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBAClB,6CAA6C;gBAC7C,GAAG,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAClD,CAAC;YAED,OAAO,GAAG,CAAC;QACf,CAAC,EAAE,EAAE,CAAC,EACR;IACN,CAAC;AACL,CAAC,CAAC,CAAC;AAnBM,QAAA,iBAAiB,qBAmBvB;AAEP,SAAgB,cAAc,CAC1B,IAAU,EACV,OAAe,EACf,UAA4C,EAAE;IAE9C,MAAM,EAAC,OAAO,GAAG,EAAE,EAAC,GAAG,OAAO,CAAC;IAC/B,MAAM,EAAC,IAAI,EAAC,GAAG,IAAA,qBAAa,EAAC,OAAO,EAAE;QAClC,IAAI;QACJ,OAAO,EAAE,CAAC,GAAG,iBAAc,EAAE,GAAG,OAAO,CAAC;KAC3C,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAgB,mBAAmB,CAAC,IAAU,EAAE,OAAe;IAC3D,OAAO,IAAA,sBAAc,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC","sourcesContent":["import defaultPlugins from '@diplodoc/transform/lib/plugins';\nimport {MarkdownItPluginCb} from '@diplodoc/transform/lib/plugins/typings';\n\nimport {Lang} from './types';\nimport {fullTransform, typografToHTML} from './utils';\n\nexport type ComplexItem = {[key: string]: string};\nexport type Item = string | null | ComplexItem;\nexport type Transformer = (text: string) => string;\nexport type TransformerRaw = (\n lang: Lang,\n content: string,\n options: {plugins: MarkdownItPluginCb[]},\n) => string;\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type Parser<T = any> = (transformer: Transformer, block: T) => T;\n\nexport const createItemsParser = (fields: string[]) => (transformer: Transformer, items: Item[]) =>\n items.map((item) => {\n if (!item) {\n return item;\n } else if (typeof item === 'string') {\n return transformer(item);\n } else {\n return {\n ...item,\n ...fields.reduce<ComplexItem>((acc, fieldName) => {\n if (item[fieldName]) {\n // eslint-disable-next-line no-param-reassign\n acc[fieldName] = transformer(item[fieldName]);\n }\n\n return acc;\n }, {}),\n };\n }\n });\n\nexport function yfmTransformer(\n lang: Lang,\n content: string,\n options: {plugins?: MarkdownItPluginCb[]} = {},\n) {\n const {plugins = []} = options;\n const {html} = fullTransform(content, {\n lang,\n plugins: [...defaultPlugins, ...plugins],\n });\n\n return html;\n}\n\nexport function typografTransformer(lang: Lang, content: string) {\n return typografToHTML(content, lang);\n}\n"]}
1
+ {"version":3,"file":"common.js","sourceRoot":"../../../src","sources":["text-transform/common.ts"],"names":[],"mappings":";;;AAsCA,wCAYC;AAED,kDAEC;;AAtDD,sFAA6D;AAI7D,sCAAsD;AAa/C,MAAM,iBAAiB,GAAG,CAAC,MAAgB,EAAE,EAAE,CAAC,CAAC,WAAwB,EAAE,KAAa,EAAE,EAAE,CAC/F,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;IACf,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,IAAI,CAAC;IAChB,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACJ,OAAO;YACH,GAAG,IAAI;YACP,GAAG,MAAM,CAAC,MAAM,CAAc,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;gBAC7C,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;oBAClB,6CAA6C;oBAC7C,GAAG,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;gBAClD,CAAC;gBAED,OAAO,GAAG,CAAC;YACf,CAAC,EAAE,EAAE,CAAC;SACT,CAAC;IACN,CAAC;AACL,CAAC,CAAC,CAAC;AAnBM,QAAA,iBAAiB,qBAmBvB;AAEP,SAAgB,cAAc,CAC1B,IAAU,EACV,OAAe,EACf,UAA4C,EAAE;IAE9C,MAAM,EAAC,OAAO,GAAG,EAAE,EAAC,GAAG,OAAO,CAAC;IAC/B,MAAM,EAAC,IAAI,EAAC,GAAG,IAAA,qBAAa,EAAC,OAAO,EAAE;QAClC,IAAI;QACJ,OAAO,EAAE,CAAC,GAAG,iBAAc,EAAE,GAAG,OAAO,CAAC;KAC3C,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAgB,mBAAmB,CAAC,IAAU,EAAE,OAAe;IAC3D,OAAO,IAAA,sBAAc,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC","sourcesContent":["import defaultPlugins from '@diplodoc/transform/lib/plugins';\nimport {MarkdownItPluginCb} from '@diplodoc/transform/lib/plugins/typings';\n\nimport {Lang} from './types';\nimport {fullTransform, typografToHTML} from './utils';\n\nexport type ComplexItem = {[key: string]: string};\nexport type Item = string | null | ComplexItem;\nexport type Transformer = (text: string) => string;\nexport type TransformerRaw = (\n lang: Lang,\n content: string,\n options: {plugins: MarkdownItPluginCb[]},\n) => string;\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type Parser<T = any> = (transformer: Transformer, block: T) => T;\n\nexport const createItemsParser = (fields: string[]) => (transformer: Transformer, items: Item[]) =>\n items.map((item) => {\n if (!item) {\n return item;\n } else if (typeof item === 'string') {\n return transformer(item);\n } else {\n return {\n ...item,\n ...fields.reduce<ComplexItem>((acc, fieldName) => {\n if (item[fieldName]) {\n // eslint-disable-next-line no-param-reassign\n acc[fieldName] = transformer(item[fieldName]);\n }\n\n return acc;\n }, {}),\n };\n }\n });\n\nexport function yfmTransformer(\n lang: Lang,\n content: string,\n options: {plugins?: MarkdownItPluginCb[]} = {},\n) {\n const {plugins = []} = options;\n const {html} = fullTransform(content, {\n lang,\n plugins: [...defaultPlugins, ...plugins],\n });\n\n return html;\n}\n\nexport function typografTransformer(lang: Lang, content: string) {\n return typografToHTML(content, lang);\n}\n"]}
@@ -3,31 +3,35 @@
3
3
  /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.config = exports.blockHeaderTransformer = void 0;
6
- const tslib_1 = require("tslib");
7
6
  const models_1 = require("../models/index.js");
8
7
  const common_1 = require("./common.js");
9
8
  function parseTableBlock(transformer, content) {
10
- const legend = content === null || content === void 0 ? void 0 : content.legend;
11
- return Object.assign(Object.assign({}, (content || {})), { legend: legend && legend.map((string) => transformer(string)) });
9
+ const legend = content?.legend;
10
+ return {
11
+ ...(content || {}),
12
+ legend: legend && legend.map((string) => transformer(string)),
13
+ };
12
14
  }
13
15
  function parseFeatures(transformer, items) {
14
- return items.map((_a) => {
15
- var { title, text } = _a, rest = tslib_1.__rest(_a, ["title", "text"]);
16
- return (Object.assign({ title: title && transformer(title), text: text && transformer(text) }, rest));
17
- });
16
+ return items.map(({ title, text, ...rest }) => ({
17
+ title: title && transformer(title),
18
+ text: text && transformer(text),
19
+ ...rest,
20
+ }));
18
21
  }
19
22
  function parsePromoFeatures(transformer, items) {
20
- return items.map((_a) => {
21
- var { text } = _a, rest = tslib_1.__rest(_a, ["text"]);
22
- return (Object.assign({ text: transformer(text) }, rest));
23
- });
23
+ return items.map(({ text, ...rest }) => ({
24
+ text: transformer(text),
25
+ ...rest,
26
+ }));
24
27
  }
25
28
  const parseTitle = (transformer, title) => typeof title === 'object' && 'text' in title
26
- ? Object.assign(Object.assign({}, title), { text: transformer(title.text) }) : title && transformer(title);
27
- const parseItemsTitle = (transformer, items) => items.map((_a) => {
28
- var { title } = _a, rest = tslib_1.__rest(_a, ["title"]);
29
- return (Object.assign({ title: title && parseTitle(transformer, title) }, rest));
30
- });
29
+ ? { ...title, text: transformer(title.text) }
30
+ : title && transformer(title);
31
+ const parseItemsTitle = (transformer, items) => items.map(({ title, ...rest }) => ({
32
+ title: title && parseTitle(transformer, title),
33
+ ...rest,
34
+ }));
31
35
  function parsePriceDetailedBlock(transformer, block) {
32
36
  const { priceType } = block;
33
37
  /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */
@@ -63,8 +67,11 @@ const parseContentLayout = (transformer, content) => {
63
67
  }
64
68
  if (list) {
65
69
  content.list = list.map((item) => {
66
- if (item === null || item === void 0 ? void 0 : item.text) {
67
- return Object.assign(Object.assign({}, item), { text: transformer(item.text) });
70
+ if (item?.text) {
71
+ return {
72
+ ...item,
73
+ text: transformer(item.text),
74
+ };
68
75
  }
69
76
  return item;
70
77
  });
@@ -74,7 +81,7 @@ const parseContentLayout = (transformer, content) => {
74
81
  return content;
75
82
  };
76
83
  function parseContentLayoutTitle(transformer, content) {
77
- if (content === null || content === void 0 ? void 0 : content.title) {
84
+ if (content?.title) {
78
85
  const { title } = content;
79
86
  // eslint-disable-next-line no-not-accumulator-reassign/no-not-accumulator-reassign
80
87
  content.title = title && parseTitle(transformer, title);
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"../../../src","sources":["text-transform/config.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n\nimport {\n BlockType,\n ContentBlockProps,\n ExtendedFeaturesItem,\n PriceDetailedProps,\n PriceDetailsListProps,\n PriceDetailsSettingsProps,\n PromoFeaturesItem,\n SubBlockType,\n TableProps,\n TitleItemProps,\n} from '../models';\n\nimport {\n Parser,\n Transformer,\n TransformerRaw,\n createItemsParser,\n typografTransformer,\n yfmTransformer,\n} from './common';\n\nfunction parseTableBlock(transformer: Transformer, content: TableProps) {\n const legend = content?.legend;\n\n return {\n ...(content || {}),\n legend: legend && legend.map((string) => transformer(string)),\n };\n}\n\nfunction parseFeatures(transformer: Transformer, items: ExtendedFeaturesItem[]) {\n return items.map(({title, text, ...rest}) => ({\n title: title && transformer(title),\n text: text && transformer(text),\n ...rest,\n }));\n}\n\nfunction parsePromoFeatures(transformer: Transformer, items: PromoFeaturesItem[]) {\n return items.map(({text, ...rest}) => ({\n text: transformer(text),\n ...rest,\n }));\n}\n\nconst parseTitle = (transformer: Transformer, title: TitleItemProps | string) =>\n typeof title === 'object' && 'text' in title\n ? {...title, text: transformer(title.text)}\n : title && transformer(title);\n\nconst parseItemsTitle = (transformer: Transformer, items: ExtendedFeaturesItem[]) =>\n items.map(({title, ...rest}) => ({\n title: title && parseTitle(transformer, title),\n ...rest,\n }));\n\nfunction parsePriceDetailedBlock(transformer: Transformer, block: PriceDetailedProps) {\n const {priceType} = block;\n\n /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n block.items = block.items.map((item) => {\n const {description, items: details = []} = item;\n\n if (priceType === 'marked-list') {\n item.items = (details as PriceDetailsListProps[]).map((detail) => {\n detail.text = detail.text && transformer(detail.text);\n\n return detail;\n });\n } else {\n item.items = (details as PriceDetailsSettingsProps[]).map((detail) => {\n detail.description = detail.description && transformer(detail.description);\n\n return detail;\n });\n }\n\n item.description = transformer(description);\n\n return item;\n });\n /* eslint-enable no-not-accumulator-reassign/no-not-accumulator-reassign */\n\n return block;\n}\n\nconst parseContentLayout = (transformer: Transformer, content: ContentBlockProps) => {\n if (content) {\n const {text, additionalInfo, list} = content;\n\n /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n if (text) {\n content.text = transformer(text);\n }\n\n if (additionalInfo) {\n content.additionalInfo = transformer(additionalInfo);\n }\n\n if (list) {\n content.list = list.map((item) => {\n if (item?.text) {\n return {\n ...item,\n text: transformer(item.text),\n };\n }\n\n return item;\n });\n }\n /* eslint-enable no-not-accumulator-reassign/no-not-accumulator-reassign */\n }\n\n return content;\n};\n\nfunction parseContentLayoutTitle(transformer: Transformer, content: ContentBlockProps) {\n if (content?.title) {\n const {title} = content;\n\n // eslint-disable-next-line no-not-accumulator-reassign/no-not-accumulator-reassign\n content.title = title && parseTitle(transformer, title);\n }\n\n return content;\n}\n\nexport const blockHeaderTransformer = [\n {\n fields: ['title'],\n transformer: typografTransformer,\n parser: parseTitle,\n },\n {\n fields: ['description'],\n transformer: yfmTransformer,\n },\n];\n\ninterface BlockConfig {\n transformer: TransformerRaw;\n fields?: string[];\n parser?: Parser;\n}\n\nexport type BlocksConfig = Record<string, BlockConfig | BlockConfig[]>;\n\nexport const config: BlocksConfig = {\n [SubBlockType.BasicCard]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.BackgroundCard]: [\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n ],\n [SubBlockType.ImageCard]: [\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n ],\n [SubBlockType.LayoutItem]: [\n {\n fields: ['content'],\n parser: parseContentLayout,\n transformer: yfmTransformer,\n },\n {\n fields: ['content'],\n parser: parseContentLayoutTitle,\n transformer: typografTransformer,\n },\n {\n fields: ['metaInfo'],\n parser: createItemsParser([]),\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.Quote]: [\n {\n fields: ['text'],\n transformer: typografTransformer,\n },\n {\n fields: ['yfmText'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.ExtendedFeaturesBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: typografTransformer,\n parser: createItemsParser(['title']),\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text', 'additionalInfo']),\n },\n ],\n [BlockType.PromoFeaturesBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: parsePromoFeatures,\n },\n ],\n [BlockType.SliderBlock]: blockHeaderTransformer,\n [BlockType.CompaniesBlock]: blockHeaderTransformer,\n [BlockType.QuestionsBlock]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: parseFeatures,\n },\n ],\n\n [BlockType.BannerBlock]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['subtitle'],\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.BannerCard]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['subtitle'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.MediaBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['title', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text']),\n },\n ],\n [BlockType.MapBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['title', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.TabsBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text', 'additionalInfo', 'caption']),\n },\n {\n fields: ['items'],\n transformer: typografTransformer,\n parser: parseItemsTitle,\n },\n ],\n [BlockType.TableBlock]: [\n {\n fields: ['table'],\n transformer: yfmTransformer,\n parser: parseTableBlock,\n },\n ],\n [BlockType.HeaderSliderBlock]: [\n {\n fields: ['items'],\n transformer: typografTransformer,\n parser: createItemsParser(['title', 'overtitle']),\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['description']),\n },\n ],\n [SubBlockType.PriceDetailed]: [\n {\n transformer: yfmTransformer,\n parser: parsePriceDetailedBlock,\n },\n ],\n [BlockType.HeaderBlock]: [\n {\n fields: ['description'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.ContentLayoutBlock]: [\n {\n fields: ['textContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['textContent'],\n transformer: typografTransformer,\n parser: parseContentLayoutTitle,\n },\n ],\n [SubBlockType.Content]: [\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['title'],\n transformer: typografTransformer,\n parser: parseTitle,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['title', 'text']),\n },\n ],\n [BlockType.InfoBlock]: [\n {\n fields: ['rightContent', 'leftContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['rightContent', 'leftContent'],\n transformer: typografTransformer,\n parser: parseContentLayoutTitle,\n },\n ],\n [BlockType.ShareBlock]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n ],\n [BlockType.CardLayoutBlock]: blockHeaderTransformer,\n [BlockType.FilterBlock]: blockHeaderTransformer,\n [BlockType.IconsBlock]: blockHeaderTransformer,\n [SubBlockType.PriceCard]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text']),\n },\n ],\n [BlockType.FormBlock]: [\n {\n fields: ['textContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['textContent'],\n transformer: typografTransformer,\n parser: parseContentLayoutTitle,\n },\n ],\n};\n"]}
1
+ {"version":3,"file":"config.js","sourceRoot":"../../../src","sources":["text-transform/config.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n\nimport {\n BlockType,\n ContentBlockProps,\n ExtendedFeaturesItem,\n PriceDetailedProps,\n PriceDetailsListProps,\n PriceDetailsSettingsProps,\n PromoFeaturesItem,\n SubBlockType,\n TableProps,\n TitleItemProps,\n} from '../models';\n\nimport {\n Parser,\n Transformer,\n TransformerRaw,\n createItemsParser,\n typografTransformer,\n yfmTransformer,\n} from './common';\n\nfunction parseTableBlock(transformer: Transformer, content: TableProps) {\n const legend = content?.legend;\n\n return {\n ...(content || {}),\n legend: legend && legend.map((string) => transformer(string)),\n };\n}\n\nfunction parseFeatures(transformer: Transformer, items: ExtendedFeaturesItem[]) {\n return items.map(({title, text, ...rest}) => ({\n title: title && transformer(title),\n text: text && transformer(text),\n ...rest,\n }));\n}\n\nfunction parsePromoFeatures(transformer: Transformer, items: PromoFeaturesItem[]) {\n return items.map(({text, ...rest}) => ({\n text: transformer(text),\n ...rest,\n }));\n}\n\nconst parseTitle = (transformer: Transformer, title: TitleItemProps | string) =>\n typeof title === 'object' && 'text' in title\n ? {...title, text: transformer(title.text)}\n : title && transformer(title);\n\nconst parseItemsTitle = (transformer: Transformer, items: ExtendedFeaturesItem[]) =>\n items.map(({title, ...rest}) => ({\n title: title && parseTitle(transformer, title),\n ...rest,\n }));\n\nfunction parsePriceDetailedBlock(transformer: Transformer, block: PriceDetailedProps) {\n const {priceType} = block;\n\n /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n block.items = block.items.map((item) => {\n const {description, items: details = []} = item;\n\n if (priceType === 'marked-list') {\n item.items = (details as PriceDetailsListProps[]).map((detail) => {\n detail.text = detail.text && transformer(detail.text);\n\n return detail;\n });\n } else {\n item.items = (details as PriceDetailsSettingsProps[]).map((detail) => {\n detail.description = detail.description && transformer(detail.description);\n\n return detail;\n });\n }\n\n item.description = transformer(description);\n\n return item;\n });\n /* eslint-enable no-not-accumulator-reassign/no-not-accumulator-reassign */\n\n return block;\n}\n\nconst parseContentLayout = (transformer: Transformer, content: ContentBlockProps) => {\n if (content) {\n const {text, additionalInfo, list} = content;\n\n /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n if (text) {\n content.text = transformer(text);\n }\n\n if (additionalInfo) {\n content.additionalInfo = transformer(additionalInfo);\n }\n\n if (list) {\n content.list = list.map((item) => {\n if (item?.text) {\n return {\n ...item,\n text: transformer(item.text),\n };\n }\n\n return item;\n });\n }\n /* eslint-enable no-not-accumulator-reassign/no-not-accumulator-reassign */\n }\n\n return content;\n};\n\nfunction parseContentLayoutTitle(transformer: Transformer, content: ContentBlockProps) {\n if (content?.title) {\n const {title} = content;\n\n // eslint-disable-next-line no-not-accumulator-reassign/no-not-accumulator-reassign\n content.title = title && parseTitle(transformer, title);\n }\n\n return content;\n}\n\nexport const blockHeaderTransformer = [\n {\n fields: ['title'],\n transformer: typografTransformer,\n parser: parseTitle,\n },\n {\n fields: ['description'],\n transformer: yfmTransformer,\n },\n];\n\ninterface BlockConfig {\n transformer: TransformerRaw;\n fields?: string[];\n parser?: Parser;\n}\n\nexport type BlocksConfig = Record<string, BlockConfig | BlockConfig[]>;\n\nexport const config: BlocksConfig = {\n [SubBlockType.BasicCard]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.BackgroundCard]: [\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n ],\n [SubBlockType.ImageCard]: [\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n ],\n [SubBlockType.LayoutItem]: [\n {\n fields: ['content'],\n parser: parseContentLayout,\n transformer: yfmTransformer,\n },\n {\n fields: ['content'],\n parser: parseContentLayoutTitle,\n transformer: typografTransformer,\n },\n {\n fields: ['metaInfo'],\n parser: createItemsParser([]),\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.Quote]: [\n {\n fields: ['text'],\n transformer: typografTransformer,\n },\n {\n fields: ['yfmText'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.ExtendedFeaturesBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: typografTransformer,\n parser: createItemsParser(['title']),\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text', 'additionalInfo']),\n },\n ],\n [BlockType.PromoFeaturesBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: parsePromoFeatures,\n },\n ],\n [BlockType.SliderBlock]: blockHeaderTransformer,\n [BlockType.CompaniesBlock]: blockHeaderTransformer,\n [BlockType.QuestionsBlock]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: parseFeatures,\n },\n ],\n\n [BlockType.BannerBlock]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['subtitle'],\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.BannerCard]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['subtitle'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.MediaBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['title', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text']),\n },\n ],\n [BlockType.MapBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['title', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.TabsBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text', 'additionalInfo', 'caption']),\n },\n {\n fields: ['items'],\n transformer: typografTransformer,\n parser: parseItemsTitle,\n },\n ],\n [BlockType.TableBlock]: [\n {\n fields: ['table'],\n transformer: yfmTransformer,\n parser: parseTableBlock,\n },\n ],\n [BlockType.HeaderSliderBlock]: [\n {\n fields: ['items'],\n transformer: typografTransformer,\n parser: createItemsParser(['title', 'overtitle']),\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['description']),\n },\n ],\n [SubBlockType.PriceDetailed]: [\n {\n transformer: yfmTransformer,\n parser: parsePriceDetailedBlock,\n },\n ],\n [BlockType.HeaderBlock]: [\n {\n fields: ['description'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.ContentLayoutBlock]: [\n {\n fields: ['textContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['textContent'],\n transformer: typografTransformer,\n parser: parseContentLayoutTitle,\n },\n ],\n [SubBlockType.Content]: [\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['title'],\n transformer: typografTransformer,\n parser: parseTitle,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['title', 'text']),\n },\n ],\n [BlockType.InfoBlock]: [\n {\n fields: ['rightContent', 'leftContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['rightContent', 'leftContent'],\n transformer: typografTransformer,\n parser: parseContentLayoutTitle,\n },\n ],\n [BlockType.ShareBlock]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n ],\n [BlockType.CardLayoutBlock]: blockHeaderTransformer,\n [BlockType.FilterBlock]: blockHeaderTransformer,\n [BlockType.IconsBlock]: blockHeaderTransformer,\n [SubBlockType.PriceCard]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text']),\n },\n ],\n [BlockType.FormBlock]: [\n {\n fields: ['textContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['textContent'],\n transformer: typografTransformer,\n parser: parseContentLayoutTitle,\n },\n ],\n};\n"]}
@@ -19,7 +19,10 @@ function filterItems(items, vars, propertyName) {
19
19
  else {
20
20
  const filteredProperty = filterItems(property, vars, propertyName);
21
21
  if (filteredProperty.length !== 0) {
22
- result.push(Object.assign(Object.assign({}, item), { [propertyName]: filteredProperty }));
22
+ result.push({
23
+ ...item,
24
+ [propertyName]: filteredProperty,
25
+ });
23
26
  }
24
27
  }
25
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"filter.js","sourceRoot":"../../../src","sources":["text-transform/filter.ts"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,4EAA4E;;AAkF5E,sCAgBC;;AAhGD,mGAAgE;AAYhE,SAAS,WAAW,CAChB,KAA8B,EAC9B,IAAsB,EACtB,YAAqB;IAErB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACX,iDAAiD,YAAY,YAAY,IAAI,CAAC,SAAS,CACnF,KAAK,CACR,EAAE,CACN,CAAC;IACN,CAAC;IAED,OAAO,KAAK,CAAC,MAAM,CAAwB,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACxD,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAE7D,IAAI,gBAAgB,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAG,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;YAEpD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACJ,MAAM,gBAAgB,GAAG,WAAW,CAChC,QAAmC,EACnC,IAAI,EACJ,YAAY,CACf,CAAC;gBAEF,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChC,MAAM,CAAC,IAAI,iCACJ,IAAI,KACP,CAAC,YAAsB,CAAC,EAAE,gBAAgB,IAC5C,CAAC;gBACP,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAoB,EAAE,IAAsB;IACpE,OAAO,CACH,SAAS,KAAK,IAAI;QAClB,SAAS,KAAK,SAAS;QACvB,CAAC,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,IAAA,oBAAO,EAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAC9E,CAAC;AACN,CAAC;AAED,SAAS,WAAW,CAChB,OAA4C;IAE5C,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,MAAM,CACX,OAA4C;IAE5C,OAAO,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,aAAa,CACzB,OAA4C,EAC5C,IAAsB;IAEtB,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;QACvB,OAAO,WAAW,CAAC,OAAkC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACtE,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CACT,CAAC;IACzB,CAAC;SAAM,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAsB,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC7E,GAAG,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACtC,OAAO,GAAG,CAAC;QACf,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC;SAAM,CAAC;QACJ,OAAO,OAAO,CAAC;IACnB,CAAC;AACL,CAAC","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n\nimport evalExp from '@diplodoc/transform/lib/liquid/evaluation';\n\nimport {ContentVariables} from './transformers';\n\ntype WhenValue = string | boolean | undefined;\ntype OrArray<T> = T | T[];\ntype OrArrayRecord<T> = Record<string, OrArray<T>>;\ninterface FilteredContentItem extends OrArrayRecord<FilteredContentItem> {}\ntype FilteredContent = OrArray<FilteredContentItem>;\ntype FilterableContentItem = FilteredContentItem & {when: WhenValue};\nexport type FilterableContent = OrArray<FilterableContentItem>;\n\nfunction filterItems(\n items: FilterableContentItem[],\n vars: ContentVariables,\n propertyName?: string,\n): FilterableContentItem[] | FilteredContentItem[] {\n if (!Array.isArray(items)) {\n throw new Error(\n `Error while filtering: items has invalid key '${propertyName}' equals ${JSON.stringify(\n items,\n )}`,\n );\n }\n\n return items.reduce<FilteredContentItem[]>((result, item) => {\n const passedFiltration = checkWhenCondition(item.when, vars);\n\n if (passedFiltration) {\n const property = propertyName && item[propertyName];\n\n if (property === undefined) {\n result.push(item);\n } else {\n const filteredProperty = filterItems(\n property as FilterableContentItem[],\n vars,\n propertyName,\n );\n\n if (filteredProperty.length !== 0) {\n result.push({\n ...item,\n [propertyName as string]: filteredProperty,\n });\n }\n }\n }\n\n return result;\n }, []);\n}\n\nfunction checkWhenCondition(whenValue: WhenValue, vars: ContentVariables) {\n return (\n whenValue === true ||\n whenValue === undefined ||\n (typeof whenValue === 'string' && (!whenValue || evalExp(whenValue, vars)))\n );\n}\n\nfunction isItemArray(\n content: FilterableContent | FilteredContent,\n): content is FilterableContentItem[] | FilteredContentItem[] {\n return Array.isArray(content);\n}\n\nfunction isItem(\n content: FilterableContent | FilteredContent,\n): content is FilterableContentItem | FilteredContentItem {\n return content && typeof content === 'object' && !Array.isArray(content);\n}\n\n/**\n * Filters content recoursively by result of it's 'when' property evaluation applied to vars argument.\n * e.g. property {..., when: 'someVar == \"someValue\"' } will be included in result only if vars.someVar === 'someValue'\n * @param {FilterableContent} content\n * @param {ContentVariables} vars\n * @return {FilteredContent}\n */\nexport function filterContent(\n content: FilterableContent | FilteredContent,\n vars: ContentVariables,\n): FilteredContent {\n if (isItemArray(content)) {\n return filterItems(content as FilterableContentItem[], vars).map((item) =>\n filterContent(item, vars),\n ) as FilteredContent;\n } else if (isItem(content)) {\n return Object.entries(content).reduce<FilteredContentItem>((acc, [key, value]) => {\n acc[key] = filterContent(value, vars);\n return acc;\n }, {});\n } else {\n return content;\n }\n}\n"]}
1
+ {"version":3,"file":"filter.js","sourceRoot":"../../../src","sources":["text-transform/filter.ts"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,4EAA4E;;AAkF5E,sCAgBC;;AAhGD,mGAAgE;AAYhE,SAAS,WAAW,CAChB,KAA8B,EAC9B,IAAsB,EACtB,YAAqB;IAErB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACX,iDAAiD,YAAY,YAAY,IAAI,CAAC,SAAS,CACnF,KAAK,CACR,EAAE,CACN,CAAC;IACN,CAAC;IAED,OAAO,KAAK,CAAC,MAAM,CAAwB,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACxD,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAE7D,IAAI,gBAAgB,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAG,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;YAEpD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACJ,MAAM,gBAAgB,GAAG,WAAW,CAChC,QAAmC,EACnC,IAAI,EACJ,YAAY,CACf,CAAC;gBAEF,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChC,MAAM,CAAC,IAAI,CAAC;wBACR,GAAG,IAAI;wBACP,CAAC,YAAsB,CAAC,EAAE,gBAAgB;qBAC7C,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAoB,EAAE,IAAsB;IACpE,OAAO,CACH,SAAS,KAAK,IAAI;QAClB,SAAS,KAAK,SAAS;QACvB,CAAC,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,IAAA,oBAAO,EAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAC9E,CAAC;AACN,CAAC;AAED,SAAS,WAAW,CAChB,OAA4C;IAE5C,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,MAAM,CACX,OAA4C;IAE5C,OAAO,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,aAAa,CACzB,OAA4C,EAC5C,IAAsB;IAEtB,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;QACvB,OAAO,WAAW,CAAC,OAAkC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACtE,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CACT,CAAC;IACzB,CAAC;SAAM,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAsB,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC7E,GAAG,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACtC,OAAO,GAAG,CAAC;QACf,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC;SAAM,CAAC;QACJ,OAAO,OAAO,CAAC;IACnB,CAAC;AACL,CAAC","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n\nimport evalExp from '@diplodoc/transform/lib/liquid/evaluation';\n\nimport {ContentVariables} from './transformers';\n\ntype WhenValue = string | boolean | undefined;\ntype OrArray<T> = T | T[];\ntype OrArrayRecord<T> = Record<string, OrArray<T>>;\ninterface FilteredContentItem extends OrArrayRecord<FilteredContentItem> {}\ntype FilteredContent = OrArray<FilteredContentItem>;\ntype FilterableContentItem = FilteredContentItem & {when: WhenValue};\nexport type FilterableContent = OrArray<FilterableContentItem>;\n\nfunction filterItems(\n items: FilterableContentItem[],\n vars: ContentVariables,\n propertyName?: string,\n): FilterableContentItem[] | FilteredContentItem[] {\n if (!Array.isArray(items)) {\n throw new Error(\n `Error while filtering: items has invalid key '${propertyName}' equals ${JSON.stringify(\n items,\n )}`,\n );\n }\n\n return items.reduce<FilteredContentItem[]>((result, item) => {\n const passedFiltration = checkWhenCondition(item.when, vars);\n\n if (passedFiltration) {\n const property = propertyName && item[propertyName];\n\n if (property === undefined) {\n result.push(item);\n } else {\n const filteredProperty = filterItems(\n property as FilterableContentItem[],\n vars,\n propertyName,\n );\n\n if (filteredProperty.length !== 0) {\n result.push({\n ...item,\n [propertyName as string]: filteredProperty,\n });\n }\n }\n }\n\n return result;\n }, []);\n}\n\nfunction checkWhenCondition(whenValue: WhenValue, vars: ContentVariables) {\n return (\n whenValue === true ||\n whenValue === undefined ||\n (typeof whenValue === 'string' && (!whenValue || evalExp(whenValue, vars)))\n );\n}\n\nfunction isItemArray(\n content: FilterableContent | FilteredContent,\n): content is FilterableContentItem[] | FilteredContentItem[] {\n return Array.isArray(content);\n}\n\nfunction isItem(\n content: FilterableContent | FilteredContent,\n): content is FilterableContentItem | FilteredContentItem {\n return content && typeof content === 'object' && !Array.isArray(content);\n}\n\n/**\n * Filters content recoursively by result of it's 'when' property evaluation applied to vars argument.\n * e.g. property {..., when: 'someVar == \"someValue\"' } will be included in result only if vars.someVar === 'someValue'\n * @param {FilterableContent} content\n * @param {ContentVariables} vars\n * @return {FilteredContent}\n */\nexport function filterContent(\n content: FilterableContent | FilteredContent,\n vars: ContentVariables,\n): FilteredContent {\n if (isItemArray(content)) {\n return filterItems(content as FilterableContentItem[], vars).map((item) =>\n filterContent(item, vars),\n ) as FilteredContent;\n } else if (isItem(content)) {\n return Object.entries(content).reduce<FilteredContentItem>((acc, [key, value]) => {\n acc[key] = filterContent(value, vars);\n return acc;\n }, {});\n } else {\n return content;\n }\n}\n"]}
@@ -2,12 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.contentTransformer = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const cloneDeep_1 = tslib_1.__importDefault(require("lodash/cloneDeep"));
6
- const shuffle_1 = tslib_1.__importDefault(require("lodash/shuffle"));
5
+ const cloneDeep_1 = tslib_1.__importDefault(require("lodash/cloneDeep.js"));
6
+ const shuffle_1 = tslib_1.__importDefault(require("lodash/shuffle.js"));
7
7
  const config_1 = require("./config.js");
8
8
  const filter_1 = require("./filter.js");
9
9
  function transformBlocks(blocks, lang, customConfig = {}, options = {}) {
10
- const fullConfig = Object.assign(Object.assign({}, config_1.config), customConfig);
10
+ const fullConfig = { ...config_1.config, ...customConfig };
11
11
  const { plugins = [] } = options;
12
12
  const clonedBlocks = (0, cloneDeep_1.default)(blocks);
13
13
  return clonedBlocks.map((block) => transformBlock(lang, fullConfig, block, plugins));
@@ -1 +1 @@
1
- {"version":3,"file":"transformers.js","sourceRoot":"../../../src","sources":["text-transform/transformers.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\nimport {MarkdownItPluginCb} from '@diplodoc/transform/lib/plugins/typings';\nimport cloneDeep from 'lodash/cloneDeep';\nimport shuffle from 'lodash/shuffle';\n\nimport {ConstructorBlock, PageContent} from '../models/constructor';\n\nimport {Transformer} from './common';\nimport {BlocksConfig, config} from './config';\nimport {FilterableContent, filterContent} from './filter';\nimport {Lang} from './types';\n\nexport type ContentVariables = Record<string, string>;\nexport type ContentTransformerProps = {\n content: {\n blocks?: ConstructorBlock[];\n };\n options: {\n lang: Lang;\n customConfig?: {};\n vars?: ContentVariables;\n plugins?: MarkdownItPluginCb[];\n };\n};\n\nfunction transformBlocks(\n blocks: ConstructorBlock[],\n lang: Lang,\n customConfig = {},\n options: {plugins?: MarkdownItPluginCb[]} = {},\n) {\n const fullConfig = {...config, ...customConfig};\n const {plugins = []} = options;\n\n const clonedBlocks = cloneDeep(blocks);\n\n return clonedBlocks.map((block) => transformBlock(lang, fullConfig, block, plugins));\n}\n\nfunction transformBlock(\n lang: Lang,\n blocksConfig: BlocksConfig,\n block: ConstructorBlock,\n plugins: MarkdownItPluginCb[],\n) {\n const blockConfig = blocksConfig[block.type];\n\n if (block) {\n if ('randomOrder' in block && block.randomOrder && 'children' in block && block.children) {\n block.children = shuffle(block.children as ConstructorBlock[]);\n }\n }\n\n if (blockConfig) {\n const configs = Array.isArray(blockConfig) ? blockConfig : [blockConfig];\n\n configs.forEach((transformConfig) => {\n const {fields, transformer: transformerRaw, parser} = transformConfig;\n const transformer: Transformer = (content) =>\n // eslint-disable-next-line no-useless-call\n transformerRaw.call(null, lang, content, {plugins});\n\n if (fields) {\n (fields as (keyof typeof block)[]).forEach((field) => {\n if (block[field]) {\n if (parser) {\n block[field] = parser(transformer, block[field]);\n } else if (typeof block[field] === 'string') {\n block[field] = transformer(block[field] as string);\n }\n }\n });\n } else if (parser) {\n parser(transformer, block);\n }\n });\n }\n\n if ('children' in block && block.children) {\n block.children = transformBlocks(block.children as ConstructorBlock[], lang, blocksConfig, {\n plugins,\n });\n }\n\n return block;\n}\n\nexport const contentTransformer = ({content, options}: ContentTransformerProps) => {\n const {lang, customConfig = {}, vars, plugins = []} = options;\n const {blocks = []} = (\n vars ? filterContent(content as FilterableContent, vars) : content\n ) as PageContent;\n\n const transformedBlocks = transformBlocks(blocks, lang, customConfig, {\n plugins,\n });\n\n return {\n blocks: transformedBlocks,\n };\n};\n"]}
1
+ {"version":3,"file":"transformers.js","sourceRoot":"../../../src","sources":["text-transform/transformers.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\nimport {MarkdownItPluginCb} from '@diplodoc/transform/lib/plugins/typings';\nimport cloneDeep from 'lodash/cloneDeep';\nimport shuffle from 'lodash/shuffle';\n\nimport {ConstructorBlock, PageContent} from '../models/constructor';\n\nimport {Transformer} from './common';\nimport {BlocksConfig, config} from './config';\nimport {FilterableContent, filterContent} from './filter';\nimport {Lang} from './types';\n\nexport type ContentVariables = Record<string, string>;\nexport type ContentTransformerProps = {\n content: {\n blocks?: ConstructorBlock[];\n };\n options: {\n lang: Lang;\n customConfig?: {};\n vars?: ContentVariables;\n plugins?: MarkdownItPluginCb[];\n };\n};\n\nfunction transformBlocks(\n blocks: ConstructorBlock[],\n lang: Lang,\n customConfig = {},\n options: {plugins?: MarkdownItPluginCb[]} = {},\n) {\n const fullConfig = {...config, ...customConfig};\n const {plugins = []} = options;\n\n const clonedBlocks = cloneDeep(blocks);\n\n return clonedBlocks.map((block) => transformBlock(lang, fullConfig, block, plugins));\n}\n\nfunction transformBlock(\n lang: Lang,\n blocksConfig: BlocksConfig,\n block: ConstructorBlock,\n plugins: MarkdownItPluginCb[],\n) {\n const blockConfig = blocksConfig[block.type];\n\n if (block) {\n if ('randomOrder' in block && block.randomOrder && 'children' in block && block.children) {\n block.children = shuffle(block.children as ConstructorBlock[]);\n }\n }\n\n if (blockConfig) {\n const configs = Array.isArray(blockConfig) ? blockConfig : [blockConfig];\n\n configs.forEach((transformConfig) => {\n const {fields, transformer: transformerRaw, parser} = transformConfig;\n const transformer: Transformer = (content) =>\n // eslint-disable-next-line no-useless-call\n transformerRaw.call(null, lang, content, {plugins});\n\n if (fields) {\n (fields as (keyof typeof block)[]).forEach((field) => {\n if (block[field]) {\n if (parser) {\n block[field] = parser(transformer, block[field]);\n } else if (typeof block[field] === 'string') {\n block[field] = transformer(block[field] as string);\n }\n }\n });\n } else if (parser) {\n parser(transformer, block);\n }\n });\n }\n\n if ('children' in block && block.children) {\n block.children = transformBlocks(block.children as ConstructorBlock[], lang, blocksConfig, {\n plugins,\n });\n }\n\n return block;\n}\n\nexport const contentTransformer = ({content, options}: ContentTransformerProps) => {\n const {lang, customConfig = {}, vars, plugins = []} = options;\n const {blocks = []} = (\n vars ? filterContent(content as FilterableContent, vars) : content\n ) as PageContent;\n\n const transformedBlocks = transformBlocks(blocks, lang, customConfig, {\n plugins,\n });\n\n return {\n blocks: transformedBlocks,\n };\n};\n"]}
@@ -75,15 +75,18 @@ function typografToText(text, lang) {
75
75
  return text && sanitizeHtml(typograf(text, lang));
76
76
  }
77
77
  const transformMarkdown = (input, options) => {
78
- const { result } = (0, transform_1.default)(input !== null && input !== void 0 ? input : '', options);
78
+ const { result } = (0, transform_1.default)(input ?? '', options);
79
79
  return result;
80
80
  };
81
81
  exports.transformMarkdown = transformMarkdown;
82
- function fullTransform(input, _a) {
83
- var { lang } = _a, options = tslib_1.__rest(_a, ["lang"]);
84
- const result = (0, exports.transformMarkdown)(input, Object.assign({ lang }, options));
82
+ function fullTransform(input, { lang, ...options }) {
83
+ const result = (0, exports.transformMarkdown)(input, { lang, ...options });
85
84
  const { html, title } = result;
86
- return Object.assign(Object.assign({}, result), { html: typograf(html, lang), title: title && typograf(title, lang) });
85
+ return {
86
+ ...result,
87
+ html: typograf(html, lang),
88
+ title: title && typograf(title, lang),
89
+ };
87
90
  }
88
91
  function typografEntity({ entity, fields, lang = 'ru', transformType = TransformType.Text, }) {
89
92
  const transformTypeMap = {