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

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 (1133) hide show
  1. package/README.md +98 -10
  2. package/build/cjs/blocks/Banner/Banner.js +2 -2
  3. package/build/cjs/blocks/Banner/Banner.js.map +1 -1
  4. package/build/cjs/blocks/Banner/schema.js +20 -8
  5. package/build/cjs/blocks/Banner/schema.js.map +1 -1
  6. package/build/cjs/blocks/CardLayout/CardLayout.js +2 -2
  7. package/build/cjs/blocks/CardLayout/CardLayout.js.map +1 -1
  8. package/build/cjs/blocks/CardLayout/schema.d.ts +76 -0
  9. package/build/cjs/blocks/CardLayout/schema.js +19 -4
  10. package/build/cjs/blocks/CardLayout/schema.js.map +1 -1
  11. package/build/cjs/blocks/Companies/Companies.js +1 -1
  12. package/build/cjs/blocks/Companies/Companies.js.map +1 -1
  13. package/build/cjs/blocks/Companies/schema.js +10 -4
  14. package/build/cjs/blocks/Companies/schema.js.map +1 -1
  15. package/build/cjs/blocks/ContentLayout/ContentLayout.js +1 -1
  16. package/build/cjs/blocks/ContentLayout/ContentLayout.js.map +1 -1
  17. package/build/cjs/blocks/ContentLayout/schema.d.ts +76 -0
  18. package/build/cjs/blocks/ContentLayout/schema.js +7 -2
  19. package/build/cjs/blocks/ContentLayout/schema.js.map +1 -1
  20. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js +1 -1
  21. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  22. package/build/cjs/blocks/ExtendedFeatures/schema.js +7 -1
  23. package/build/cjs/blocks/ExtendedFeatures/schema.js.map +1 -1
  24. package/build/cjs/blocks/FilterBlock/schema.js +13 -3
  25. package/build/cjs/blocks/FilterBlock/schema.js.map +1 -1
  26. package/build/cjs/blocks/FoldableList/FoldableList.css +13 -0
  27. package/build/cjs/blocks/FoldableList/FoldableList.d.ts +3 -0
  28. package/build/cjs/blocks/FoldableList/FoldableList.js +31 -0
  29. package/build/cjs/blocks/FoldableList/FoldableList.js.map +1 -0
  30. package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.css +100 -0
  31. package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.d.ts +2 -0
  32. package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js +22 -0
  33. package/build/cjs/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js.map +1 -0
  34. package/build/cjs/blocks/FoldableList/schema.d.ts +140 -0
  35. package/build/cjs/blocks/FoldableList/schema.js +39 -0
  36. package/build/cjs/blocks/FoldableList/schema.js.map +1 -0
  37. package/build/cjs/blocks/Form/Form.js +3 -4
  38. package/build/cjs/blocks/Form/Form.js.map +1 -1
  39. package/build/cjs/blocks/Form/schema.js +14 -6
  40. package/build/cjs/blocks/Form/schema.js.map +1 -1
  41. package/build/cjs/blocks/Header/Header.css +12 -1
  42. package/build/cjs/blocks/Header/Header.js +15 -9
  43. package/build/cjs/blocks/Header/Header.js.map +1 -1
  44. package/build/cjs/blocks/Header/schema.d.ts +10 -0
  45. package/build/cjs/blocks/Header/schema.js +14 -2
  46. package/build/cjs/blocks/Header/schema.js.map +1 -1
  47. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js +2 -3
  48. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  49. package/build/cjs/blocks/HeaderSlider/schema.d.ts +5 -0
  50. package/build/cjs/blocks/HeaderSlider/schema.js +6 -2
  51. package/build/cjs/blocks/HeaderSlider/schema.js.map +1 -1
  52. package/build/cjs/blocks/Icons/Icons.js +2 -2
  53. package/build/cjs/blocks/Icons/Icons.js.map +1 -1
  54. package/build/cjs/blocks/Icons/schema.js +17 -6
  55. package/build/cjs/blocks/Icons/schema.js.map +1 -1
  56. package/build/cjs/blocks/Info/Info.js +8 -4
  57. package/build/cjs/blocks/Info/Info.js.map +1 -1
  58. package/build/cjs/blocks/Info/schema.js +14 -4
  59. package/build/cjs/blocks/Info/schema.js.map +1 -1
  60. package/build/cjs/blocks/Map/Map.js +2 -3
  61. package/build/cjs/blocks/Map/Map.js.map +1 -1
  62. package/build/cjs/blocks/Map/schema.js +4 -1
  63. package/build/cjs/blocks/Map/schema.js.map +1 -1
  64. package/build/cjs/blocks/Media/Media.js +1 -1
  65. package/build/cjs/blocks/Media/Media.js.map +1 -1
  66. package/build/cjs/blocks/Media/schema.js +24 -9
  67. package/build/cjs/blocks/Media/schema.js.map +1 -1
  68. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +1 -1
  69. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
  70. package/build/cjs/blocks/PromoFeaturesBlock/schema.js +8 -2
  71. package/build/cjs/blocks/PromoFeaturesBlock/schema.js.map +1 -1
  72. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +1 -1
  73. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
  74. package/build/cjs/blocks/Questions/schema.js +6 -2
  75. package/build/cjs/blocks/Questions/schema.js.map +1 -1
  76. package/build/cjs/blocks/Share/Share.css +3 -2
  77. package/build/cjs/blocks/Share/Share.js +3 -4
  78. package/build/cjs/blocks/Share/Share.js.map +1 -1
  79. package/build/cjs/blocks/Share/schema.js +7 -3
  80. package/build/cjs/blocks/Share/schema.js.map +1 -1
  81. package/build/cjs/blocks/Slider/Arrow/Arrow.css +13 -13
  82. package/build/cjs/blocks/Slider/Arrow/Arrow.js +2 -2
  83. package/build/cjs/blocks/Slider/Arrow/Arrow.js.map +1 -1
  84. package/build/cjs/blocks/Slider/Slider.css +2 -2
  85. package/build/cjs/blocks/Slider/Slider.js +6 -3
  86. package/build/cjs/blocks/Slider/Slider.js.map +1 -1
  87. package/build/cjs/blocks/Slider/schema.js +6 -1
  88. package/build/cjs/blocks/Slider/schema.js.map +1 -1
  89. package/build/cjs/blocks/Slider/useSlider.js +1 -2
  90. package/build/cjs/blocks/Slider/useSlider.js.map +1 -1
  91. package/build/cjs/blocks/Slider/utils.js +6 -2
  92. package/build/cjs/blocks/Slider/utils.js.map +1 -1
  93. package/build/cjs/blocks/SliderOld/Arrow/Arrow.css +1 -1
  94. package/build/cjs/blocks/SliderOld/SliderOld.js +17 -14
  95. package/build/cjs/blocks/SliderOld/SliderOld.js.map +1 -1
  96. package/build/cjs/blocks/SliderOld/schema.js +6 -1
  97. package/build/cjs/blocks/SliderOld/schema.js.map +1 -1
  98. package/build/cjs/blocks/SliderOld/utils.js +8 -5
  99. package/build/cjs/blocks/SliderOld/utils.js.map +1 -1
  100. package/build/cjs/blocks/Table/Table.js +1 -1
  101. package/build/cjs/blocks/Table/Table.js.map +1 -1
  102. package/build/cjs/blocks/Table/schema.js +22 -10
  103. package/build/cjs/blocks/Table/schema.js.map +1 -1
  104. package/build/cjs/blocks/Tabs/TabContent/TabContent.css +78 -0
  105. package/build/cjs/blocks/Tabs/TabContent/TabContent.d.ts +12 -0
  106. package/build/cjs/blocks/Tabs/TabContent/TabContent.js +70 -0
  107. package/build/cjs/blocks/Tabs/TabContent/TabContent.js.map +1 -0
  108. package/build/cjs/blocks/Tabs/Tabs.css +0 -72
  109. package/build/cjs/blocks/Tabs/Tabs.js +13 -59
  110. package/build/cjs/blocks/Tabs/Tabs.js.map +1 -1
  111. package/build/cjs/blocks/Tabs/schema.js +24 -9
  112. package/build/cjs/blocks/Tabs/schema.js.map +1 -1
  113. package/build/cjs/blocks/index.d.ts +1 -0
  114. package/build/cjs/blocks/index.js +3 -1
  115. package/build/cjs/blocks/index.js.map +1 -1
  116. package/build/cjs/components/Author/Author.js +1 -1
  117. package/build/cjs/components/Author/Author.js.map +1 -1
  118. package/build/cjs/components/Author/schema.js +5 -1
  119. package/build/cjs/components/Author/schema.js.map +1 -1
  120. package/build/cjs/components/BackLink/BackLink.js +1 -1
  121. package/build/cjs/components/BackLink/BackLink.js.map +1 -1
  122. package/build/cjs/components/BackgroundImage/BackgroundImage.js +2 -2
  123. package/build/cjs/components/BackgroundImage/BackgroundImage.js.map +1 -1
  124. package/build/cjs/components/BackgroundMedia/BackgroundMedia.js +4 -4
  125. package/build/cjs/components/BackgroundMedia/BackgroundMedia.js.map +1 -1
  126. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js +1 -1
  127. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  128. package/build/cjs/components/Button/Button.d.ts +1 -0
  129. package/build/cjs/components/Button/Button.js +9 -5
  130. package/build/cjs/components/Button/Button.js.map +1 -1
  131. package/build/cjs/components/Button/utils.js +2 -2
  132. package/build/cjs/components/Button/utils.js.map +1 -1
  133. package/build/cjs/components/ButtonTabs/ButtonTabs.d.ts +2 -0
  134. package/build/cjs/components/ButtonTabs/ButtonTabs.js +3 -2
  135. package/build/cjs/components/ButtonTabs/ButtonTabs.js.map +1 -1
  136. package/build/cjs/components/Buttons/Buttons.js +4 -1
  137. package/build/cjs/components/Buttons/Buttons.js.map +1 -1
  138. package/build/cjs/components/CardBase/CardBase.js +6 -2
  139. package/build/cjs/components/CardBase/CardBase.js.map +1 -1
  140. package/build/cjs/components/ContentList/ContentList.js +1 -1
  141. package/build/cjs/components/ContentList/ContentList.js.map +1 -1
  142. package/build/cjs/components/ContentList/ContentListItemIcon.js +1 -1
  143. package/build/cjs/components/ContentList/ContentListItemIcon.js.map +1 -1
  144. package/build/cjs/components/DefaultVideo/DefaultVideo.js +3 -4
  145. package/build/cjs/components/DefaultVideo/DefaultVideo.js.map +1 -1
  146. package/build/cjs/components/FileLink/FileLink.js +2 -2
  147. package/build/cjs/components/FileLink/FileLink.js.map +1 -1
  148. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js +12 -17
  149. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  150. package/build/cjs/components/FullscreenImage/FullscreenImage.css +3 -0
  151. package/build/cjs/components/FullscreenImage/FullscreenImage.js +1 -1
  152. package/build/cjs/components/FullscreenImage/FullscreenImage.js.map +1 -1
  153. package/build/cjs/components/FullscreenMedia/FullscreenMedia.css +1 -3
  154. package/build/cjs/components/HTML/HTML.js +7 -3
  155. package/build/cjs/components/HTML/HTML.js.map +1 -1
  156. package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +1 -1
  157. package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
  158. package/build/cjs/components/IconWrapper/IconWrapper.js +2 -2
  159. package/build/cjs/components/IconWrapper/IconWrapper.js.map +1 -1
  160. package/build/cjs/components/Image/Image.d.ts +4 -2
  161. package/build/cjs/components/Image/Image.js +22 -8
  162. package/build/cjs/components/Image/Image.js.map +1 -1
  163. package/build/cjs/components/Image/schema.d.ts +95 -0
  164. package/build/cjs/components/Image/schema.js +55 -12
  165. package/build/cjs/components/Image/schema.js.map +1 -1
  166. package/build/cjs/components/ImageBase/ImageBase.js +3 -4
  167. package/build/cjs/components/ImageBase/ImageBase.js.map +1 -1
  168. package/build/cjs/components/InnerForm/InnerForm.js +5 -5
  169. package/build/cjs/components/InnerForm/InnerForm.js.map +1 -1
  170. package/build/cjs/components/Link/Link.js +1 -1
  171. package/build/cjs/components/Link/Link.js.map +1 -1
  172. package/build/cjs/components/Links/Links.js +4 -1
  173. package/build/cjs/components/Links/Links.js.map +1 -1
  174. package/build/cjs/components/Map/Map.js +2 -2
  175. package/build/cjs/components/Map/Map.js.map +1 -1
  176. package/build/cjs/components/Map/YMap/YMap.js +6 -5
  177. package/build/cjs/components/Map/YMap/YMap.js.map +1 -1
  178. package/build/cjs/components/Map/YMap/YandexMap.js +1 -2
  179. package/build/cjs/components/Map/YMap/YandexMap.js.map +1 -1
  180. package/build/cjs/components/Map/YMap/YandexMapApiLoader.js +2 -1
  181. package/build/cjs/components/Map/YMap/YandexMapApiLoader.js.map +1 -1
  182. package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js +1 -1
  183. package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
  184. package/build/cjs/components/Media/Image/Image.js +3 -3
  185. package/build/cjs/components/Media/Image/Image.js.map +1 -1
  186. package/build/cjs/components/Media/Media.js +13 -5
  187. package/build/cjs/components/Media/Media.js.map +1 -1
  188. package/build/cjs/components/MediaBase/MediaBase.js +3 -3
  189. package/build/cjs/components/MediaBase/MediaBase.js.map +1 -1
  190. package/build/cjs/components/MediaBase/MediaBaseContent.js +1 -1
  191. package/build/cjs/components/MediaBase/MediaBaseContent.js.map +1 -1
  192. package/build/cjs/components/OutsideClick/OutsideClick.js +9 -12
  193. package/build/cjs/components/OutsideClick/OutsideClick.js.map +1 -1
  194. package/build/cjs/components/OverflowScroller/OverflowScroller.js +46 -49
  195. package/build/cjs/components/OverflowScroller/OverflowScroller.js.map +1 -1
  196. package/build/cjs/components/ReactPlayer/ReactPlayer.js +14 -13
  197. package/build/cjs/components/ReactPlayer/ReactPlayer.js.map +1 -1
  198. package/build/cjs/components/ReactPlayer/utils.js +1 -2
  199. package/build/cjs/components/ReactPlayer/utils.js.map +1 -1
  200. package/build/cjs/components/Title/Title.js +2 -2
  201. package/build/cjs/components/Title/Title.js.map +1 -1
  202. package/build/cjs/components/Title/TitleItem.css +1 -0
  203. package/build/cjs/components/Title/TitleItem.js +1 -1
  204. package/build/cjs/components/Title/TitleItem.js.map +1 -1
  205. package/build/cjs/components/VideoBlock/VideoBlock.js +7 -4
  206. package/build/cjs/components/VideoBlock/VideoBlock.js.map +1 -1
  207. package/build/cjs/components/YFMWrapper/YFMWrapper.js +3 -4
  208. package/build/cjs/components/YFMWrapper/YFMWrapper.js.map +1 -1
  209. package/build/cjs/components/YandexForm/YandexForm.js +21 -6
  210. package/build/cjs/components/YandexForm/YandexForm.js.map +1 -1
  211. package/build/cjs/components/YandexForm/schema.js +7 -3
  212. package/build/cjs/components/YandexForm/schema.js.map +1 -1
  213. package/build/cjs/constructor-items.d.ts +1 -0
  214. package/build/cjs/constructor-items.js +1 -0
  215. package/build/cjs/constructor-items.js.map +1 -1
  216. package/build/cjs/containers/Loadable/Loadable.js +4 -4
  217. package/build/cjs/containers/Loadable/Loadable.js.map +1 -1
  218. package/build/cjs/containers/PageConstructor/PageConstructor.js +14 -7
  219. package/build/cjs/containers/PageConstructor/PageConstructor.js.map +1 -1
  220. package/build/cjs/containers/PageConstructor/Provider.js +1 -1
  221. package/build/cjs/containers/PageConstructor/Provider.js.map +1 -1
  222. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
  223. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  224. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -2
  225. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
  226. package/build/cjs/context/projectSettingsContext/ProjectSettingsContext.d.ts +2 -0
  227. package/build/cjs/context/projectSettingsContext/ProjectSettingsContext.js.map +1 -1
  228. package/build/cjs/context/theme/withTheme.js +7 -9
  229. package/build/cjs/context/theme/withTheme.js.map +1 -1
  230. package/build/cjs/customization/BlockDecoration.js +3 -5
  231. package/build/cjs/customization/BlockDecoration.js.map +1 -1
  232. package/build/cjs/editor/components/AddBlock/AddBlock.js +6 -8
  233. package/build/cjs/editor/components/AddBlock/AddBlock.js.map +1 -1
  234. package/build/cjs/editor/components/BlockForm/BlockForm.js +9 -4
  235. package/build/cjs/editor/components/BlockForm/BlockForm.js.map +1 -1
  236. package/build/cjs/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js +4 -4
  237. package/build/cjs/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js.map +1 -1
  238. package/build/cjs/editor/components/EditBlock/EditBlock.js +2 -2
  239. package/build/cjs/editor/components/EditBlock/EditBlock.js.map +1 -1
  240. package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js +2 -5
  241. package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  242. package/build/cjs/editor/components/Layout/Layout.js +3 -3
  243. package/build/cjs/editor/components/Layout/Layout.js.map +1 -1
  244. package/build/cjs/editor/components/PageSettings/PageSettings.js +2 -2
  245. package/build/cjs/editor/components/PageSettings/PageSettings.js.map +1 -1
  246. package/build/cjs/editor/containers/Editor/Editor.js +1 -1
  247. package/build/cjs/editor/containers/Editor/Editor.js.map +1 -1
  248. package/build/cjs/editor/containers/Editor/hooks/useCode.js +2 -4
  249. package/build/cjs/editor/containers/Editor/hooks/useCode.js.map +1 -1
  250. package/build/cjs/editor/containers/Editor/hooks/useEditorState.js +10 -7
  251. package/build/cjs/editor/containers/Editor/hooks/useEditorState.js.map +1 -1
  252. package/build/cjs/editor/containers/Form/Form.js +5 -2
  253. package/build/cjs/editor/containers/Form/Form.js.map +1 -1
  254. package/build/cjs/editor/data/index.js +5 -2
  255. package/build/cjs/editor/data/index.js.map +1 -1
  256. package/build/cjs/editor/data/previews/default-preview.js +1 -1
  257. package/build/cjs/editor/data/previews/default-preview.js.map +1 -1
  258. package/build/cjs/editor/data/previews/header-block.js +1 -1
  259. package/build/cjs/editor/data/previews/header-block.js.map +1 -1
  260. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +15 -13
  261. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  262. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js +8 -10
  263. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  264. package/build/cjs/editor/dynamic-forms-custom/parser/index.js +150 -120
  265. package/build/cjs/editor/dynamic-forms-custom/parser/index.js.map +1 -1
  266. package/build/cjs/editor/dynamic-forms-custom/parser/views.js +2 -4
  267. package/build/cjs/editor/dynamic-forms-custom/parser/views.js.map +1 -1
  268. package/build/cjs/editor/icons/Tablet.js +1 -1
  269. package/build/cjs/editor/icons/Tablet.js.map +1 -1
  270. package/build/cjs/editor/store/main/index.js +7 -4
  271. package/build/cjs/editor/store/main/index.js.map +1 -1
  272. package/build/cjs/editor/store/main/reducer.js +17 -3
  273. package/build/cjs/editor/store/main/reducer.js.map +1 -1
  274. package/build/cjs/editor/store/main/utils.js +1 -1
  275. package/build/cjs/editor/store/main/utils.js.map +1 -1
  276. package/build/cjs/editor/store/settings/reducer.js +16 -4
  277. package/build/cjs/editor/store/settings/reducer.js.map +1 -1
  278. package/build/cjs/editor/utils/code.js +4 -2
  279. package/build/cjs/editor/utils/code.js.map +1 -1
  280. package/build/cjs/editor/utils/index.js +7 -1
  281. package/build/cjs/editor/utils/index.js.map +1 -1
  282. package/build/cjs/editor/widget/index.js +8 -8
  283. package/build/cjs/editor/widget/index.js.map +1 -1
  284. package/build/cjs/editor/widget/utils.js +1 -1
  285. package/build/cjs/editor/widget/utils.js.map +1 -1
  286. package/build/cjs/grid/Col/Col.d.ts +3 -2
  287. package/build/cjs/grid/Col/Col.js +2 -2
  288. package/build/cjs/grid/Col/Col.js.map +1 -1
  289. package/build/cjs/grid/Row/Row.d.ts +4 -3
  290. package/build/cjs/grid/Row/Row.js +2 -2
  291. package/build/cjs/grid/Row/Row.js.map +1 -1
  292. package/build/cjs/hooks/useAnalytics.js +4 -1
  293. package/build/cjs/hooks/useAnalytics.js.map +1 -1
  294. package/build/cjs/icons/BrandIconDark.js +1 -1
  295. package/build/cjs/icons/BrandIconDark.js.map +1 -1
  296. package/build/cjs/icons/BrandIconLight.js +1 -1
  297. package/build/cjs/icons/BrandIconLight.js.map +1 -1
  298. package/build/cjs/icons/BrandName.js +1 -1
  299. package/build/cjs/icons/BrandName.js.map +1 -1
  300. package/build/cjs/icons/Chevron.js +1 -1
  301. package/build/cjs/icons/Chevron.js.map +1 -1
  302. package/build/cjs/icons/Facebook.js +1 -1
  303. package/build/cjs/icons/Facebook.js.map +1 -1
  304. package/build/cjs/icons/Github.js +1 -1
  305. package/build/cjs/icons/Github.js.map +1 -1
  306. package/build/cjs/icons/Linkedin.js +1 -1
  307. package/build/cjs/icons/Linkedin.js.map +1 -1
  308. package/build/cjs/icons/NavigationArrow.js +1 -1
  309. package/build/cjs/icons/NavigationArrow.js.map +1 -1
  310. package/build/cjs/icons/NavigationChevron.js +1 -1
  311. package/build/cjs/icons/NavigationChevron.js.map +1 -1
  312. package/build/cjs/icons/Telegram.js +1 -1
  313. package/build/cjs/icons/Telegram.js.map +1 -1
  314. package/build/cjs/icons/Twitter.js +1 -1
  315. package/build/cjs/icons/Twitter.js.map +1 -1
  316. package/build/cjs/icons/Vk.js +1 -1
  317. package/build/cjs/icons/Vk.js.map +1 -1
  318. package/build/cjs/internal-typings/global.d.ts +1 -0
  319. package/build/cjs/models/constructor-items/blocks.d.ts +21 -3
  320. package/build/cjs/models/constructor-items/blocks.js +1 -0
  321. package/build/cjs/models/constructor-items/blocks.js.map +1 -1
  322. package/build/cjs/models/constructor-items/common.d.ts +16 -6
  323. package/build/cjs/models/constructor-items/common.js +8 -1
  324. package/build/cjs/models/constructor-items/common.js.map +1 -1
  325. package/build/cjs/models/constructor-items/sub-blocks.d.ts +2 -1
  326. package/build/cjs/models/constructor-items/sub-blocks.js.map +1 -1
  327. package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
  328. package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
  329. package/build/cjs/navigation/components/Logo/Logo.js +4 -5
  330. package/build/cjs/navigation/components/Logo/Logo.js.map +1 -1
  331. package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js +2 -3
  332. package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
  333. package/build/cjs/navigation/components/Navigation/Navigation.d.ts +1 -0
  334. package/build/cjs/navigation/components/Navigation/Navigation.js +2 -2
  335. package/build/cjs/navigation/components/Navigation/Navigation.js.map +1 -1
  336. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js +7 -5
  337. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  338. package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js +1 -1
  339. package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
  340. package/build/cjs/navigation/components/NavigationItem/components/GithubButton/GithubButton.js +3 -4
  341. package/build/cjs/navigation/components/NavigationItem/components/GithubButton/GithubButton.js.map +1 -1
  342. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +1 -1
  343. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
  344. package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js +2 -3
  345. package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js.map +1 -1
  346. package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +4 -4
  347. package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
  348. package/build/cjs/navigation/components/NavigationList/NavigationList.js +1 -4
  349. package/build/cjs/navigation/components/NavigationList/NavigationList.js.map +1 -1
  350. package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js +2 -3
  351. package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
  352. package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.css +2 -0
  353. package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.js +13 -5
  354. package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.js.map +1 -1
  355. package/build/cjs/navigation/components/SocialIcon/SocialIcon.js +1 -1
  356. package/build/cjs/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
  357. package/build/cjs/navigation/components/Standalone/index.js +1 -1
  358. package/build/cjs/navigation/components/Standalone/index.js.map +1 -1
  359. package/build/cjs/navigation/hooks/useActiveNavItem.js +1 -1
  360. package/build/cjs/navigation/hooks/useActiveNavItem.js.map +1 -1
  361. package/build/cjs/navigation/models.d.ts +1 -0
  362. package/build/cjs/navigation/models.js.map +1 -1
  363. package/build/cjs/navigation/schema.js +19 -6
  364. package/build/cjs/navigation/schema.js.map +1 -1
  365. package/build/cjs/navigation/utils.js +1 -1
  366. package/build/cjs/navigation/utils.js.map +1 -1
  367. package/build/cjs/schema/constants.d.ts +19 -0
  368. package/build/cjs/schema/constants.js +34 -2
  369. package/build/cjs/schema/constants.js.map +1 -1
  370. package/build/cjs/schema/index.js +23 -6
  371. package/build/cjs/schema/index.js.map +1 -1
  372. package/build/cjs/schema/validators/blocks.d.ts +2 -0
  373. package/build/cjs/schema/validators/blocks.js +2 -0
  374. package/build/cjs/schema/validators/blocks.js.map +1 -1
  375. package/build/cjs/schema/validators/common.js +77 -31
  376. package/build/cjs/schema/validators/common.js.map +1 -1
  377. package/build/cjs/schema/validators/utils.js +9 -2
  378. package/build/cjs/schema/validators/utils.js.map +1 -1
  379. package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js +1 -1
  380. package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
  381. package/build/cjs/sub-blocks/BackgroundCard/schema.d.ts +19 -0
  382. package/build/cjs/sub-blocks/BackgroundCard/schema.js +23 -8
  383. package/build/cjs/sub-blocks/BackgroundCard/schema.js.map +1 -1
  384. package/build/cjs/sub-blocks/BannerCard/BannerCard.js +1 -1
  385. package/build/cjs/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  386. package/build/cjs/sub-blocks/BasicCard/BasicCard.js +2 -2
  387. package/build/cjs/sub-blocks/BasicCard/BasicCard.js.map +1 -1
  388. package/build/cjs/sub-blocks/BasicCard/schema.js +17 -6
  389. package/build/cjs/sub-blocks/BasicCard/schema.js.map +1 -1
  390. package/build/cjs/sub-blocks/Content/Content.js +1 -1
  391. package/build/cjs/sub-blocks/Content/Content.js.map +1 -1
  392. package/build/cjs/sub-blocks/Content/schema.js +10 -3
  393. package/build/cjs/sub-blocks/Content/schema.js.map +1 -1
  394. package/build/cjs/sub-blocks/Divider/schema.js +6 -2
  395. package/build/cjs/sub-blocks/Divider/schema.js.map +1 -1
  396. package/build/cjs/sub-blocks/HubspotForm/HubspotFormContainer.d.ts +1 -1
  397. package/build/cjs/sub-blocks/HubspotForm/HubspotFormContainer.js +5 -1
  398. package/build/cjs/sub-blocks/HubspotForm/HubspotFormContainer.js.map +1 -1
  399. package/build/cjs/sub-blocks/HubspotForm/index.js +5 -5
  400. package/build/cjs/sub-blocks/HubspotForm/index.js.map +1 -1
  401. package/build/cjs/sub-blocks/HubspotForm/loadHubspotScript.js +1 -2
  402. package/build/cjs/sub-blocks/HubspotForm/loadHubspotScript.js.map +1 -1
  403. package/build/cjs/sub-blocks/HubspotForm/schema.js +11 -5
  404. package/build/cjs/sub-blocks/HubspotForm/schema.js.map +1 -1
  405. package/build/cjs/sub-blocks/HubspotForm/setHubspotDefaultValues.d.ts +2 -0
  406. package/build/cjs/sub-blocks/HubspotForm/setHubspotDefaultValues.js +51 -0
  407. package/build/cjs/sub-blocks/HubspotForm/setHubspotDefaultValues.js.map +1 -0
  408. package/build/cjs/sub-blocks/ImageCard/ImageCard.js +1 -1
  409. package/build/cjs/sub-blocks/ImageCard/ImageCard.js.map +1 -1
  410. package/build/cjs/sub-blocks/ImageCard/schema.js +17 -6
  411. package/build/cjs/sub-blocks/ImageCard/schema.js.map +1 -1
  412. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js +11 -9
  413. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
  414. package/build/cjs/sub-blocks/LayoutItem/schema.js +19 -6
  415. package/build/cjs/sub-blocks/LayoutItem/schema.js.map +1 -1
  416. package/build/cjs/sub-blocks/LayoutItem/utils.js +4 -1
  417. package/build/cjs/sub-blocks/LayoutItem/utils.js.map +1 -1
  418. package/build/cjs/sub-blocks/MediaCard/MediaCard.js +1 -5
  419. package/build/cjs/sub-blocks/MediaCard/MediaCard.js.map +1 -1
  420. package/build/cjs/sub-blocks/MediaCard/schema.js +12 -3
  421. package/build/cjs/sub-blocks/MediaCard/schema.js.map +1 -1
  422. package/build/cjs/sub-blocks/PriceCard/PriceCard.js +1 -1
  423. package/build/cjs/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  424. package/build/cjs/sub-blocks/PriceCard/schema.js +25 -11
  425. package/build/cjs/sub-blocks/PriceCard/schema.js.map +1 -1
  426. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -2
  427. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  428. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  429. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
  430. package/build/cjs/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js +1 -4
  431. package/build/cjs/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js.map +1 -1
  432. package/build/cjs/sub-blocks/PriceDetailed/schema.js +44 -12
  433. package/build/cjs/sub-blocks/PriceDetailed/schema.js.map +1 -1
  434. package/build/cjs/sub-blocks/Quote/Quote.js +6 -3
  435. package/build/cjs/sub-blocks/Quote/Quote.js.map +1 -1
  436. package/build/cjs/sub-blocks/Quote/schema.js +21 -8
  437. package/build/cjs/sub-blocks/Quote/schema.js.map +1 -1
  438. package/build/cjs/text-transform/common.js +30 -21
  439. package/build/cjs/text-transform/common.js.map +1 -1
  440. package/build/cjs/text-transform/config.js +58 -24
  441. package/build/cjs/text-transform/config.js.map +1 -1
  442. package/build/cjs/text-transform/filter.js +4 -1
  443. package/build/cjs/text-transform/filter.js.map +1 -1
  444. package/build/cjs/text-transform/transformers.js +1 -1
  445. package/build/cjs/text-transform/transformers.js.map +1 -1
  446. package/build/cjs/text-transform/utils.js +11 -5
  447. package/build/cjs/text-transform/utils.js.map +1 -1
  448. package/build/cjs/utils/analytics.js +2 -3
  449. package/build/cjs/utils/analytics.js.map +1 -1
  450. package/build/cjs/utils/common.js +1 -2
  451. package/build/cjs/utils/common.js.map +1 -1
  452. package/build/cjs/utils/hubspot.d.ts +1 -0
  453. package/build/cjs/utils/hubspot.js +6 -7
  454. package/build/cjs/utils/hubspot.js.map +1 -1
  455. package/build/cjs/utils/microdata.js +1 -1
  456. package/build/cjs/utils/microdata.js.map +1 -1
  457. package/build/cjs/utils/url.js +10 -5
  458. package/build/cjs/utils/url.js.map +1 -1
  459. package/build/esm/blocks/Banner/Banner.js +2 -3
  460. package/build/esm/blocks/Banner/Banner.js.map +1 -1
  461. package/build/esm/blocks/Banner/schema.js +20 -8
  462. package/build/esm/blocks/Banner/schema.js.map +1 -1
  463. package/build/esm/blocks/CardLayout/CardLayout.js +2 -3
  464. package/build/esm/blocks/CardLayout/CardLayout.js.map +1 -1
  465. package/build/esm/blocks/CardLayout/schema.d.ts +76 -0
  466. package/build/esm/blocks/CardLayout/schema.js +19 -4
  467. package/build/esm/blocks/CardLayout/schema.js.map +1 -1
  468. package/build/esm/blocks/Companies/Companies.js +1 -1
  469. package/build/esm/blocks/Companies/Companies.js.map +1 -1
  470. package/build/esm/blocks/Companies/schema.js +10 -4
  471. package/build/esm/blocks/Companies/schema.js.map +1 -1
  472. package/build/esm/blocks/ContentLayout/ContentLayout.js +1 -1
  473. package/build/esm/blocks/ContentLayout/ContentLayout.js.map +1 -1
  474. package/build/esm/blocks/ContentLayout/schema.d.ts +76 -0
  475. package/build/esm/blocks/ContentLayout/schema.js +7 -2
  476. package/build/esm/blocks/ContentLayout/schema.js.map +1 -1
  477. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js +1 -1
  478. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  479. package/build/esm/blocks/ExtendedFeatures/schema.js +7 -1
  480. package/build/esm/blocks/ExtendedFeatures/schema.js.map +1 -1
  481. package/build/esm/blocks/FilterBlock/schema.js +13 -3
  482. package/build/esm/blocks/FilterBlock/schema.js.map +1 -1
  483. package/build/esm/blocks/FoldableList/FoldableList.css +13 -0
  484. package/build/esm/blocks/FoldableList/FoldableList.d.ts +4 -0
  485. package/build/esm/blocks/FoldableList/FoldableList.js +29 -0
  486. package/build/esm/blocks/FoldableList/FoldableList.js.map +1 -0
  487. package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.css +100 -0
  488. package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.d.ts +3 -0
  489. package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js +18 -0
  490. package/build/esm/blocks/FoldableList/FoldableListBlockItem/FoldableListBlockItem.js.map +1 -0
  491. package/build/esm/blocks/FoldableList/schema.d.ts +140 -0
  492. package/build/esm/blocks/FoldableList/schema.js +35 -0
  493. package/build/esm/blocks/FoldableList/schema.js.map +1 -0
  494. package/build/esm/blocks/Form/Form.js +3 -4
  495. package/build/esm/blocks/Form/Form.js.map +1 -1
  496. package/build/esm/blocks/Form/schema.js +14 -6
  497. package/build/esm/blocks/Form/schema.js.map +1 -1
  498. package/build/esm/blocks/Header/Header.css +12 -1
  499. package/build/esm/blocks/Header/Header.js +15 -9
  500. package/build/esm/blocks/Header/Header.js.map +1 -1
  501. package/build/esm/blocks/Header/schema.d.ts +10 -0
  502. package/build/esm/blocks/Header/schema.js +14 -2
  503. package/build/esm/blocks/Header/schema.js.map +1 -1
  504. package/build/esm/blocks/HeaderSlider/HeaderSlider.js +2 -4
  505. package/build/esm/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  506. package/build/esm/blocks/HeaderSlider/schema.d.ts +5 -0
  507. package/build/esm/blocks/HeaderSlider/schema.js +6 -2
  508. package/build/esm/blocks/HeaderSlider/schema.js.map +1 -1
  509. package/build/esm/blocks/Icons/Icons.js +2 -2
  510. package/build/esm/blocks/Icons/Icons.js.map +1 -1
  511. package/build/esm/blocks/Icons/schema.js +17 -6
  512. package/build/esm/blocks/Icons/schema.js.map +1 -1
  513. package/build/esm/blocks/Info/Info.js +8 -4
  514. package/build/esm/blocks/Info/Info.js.map +1 -1
  515. package/build/esm/blocks/Info/schema.js +14 -4
  516. package/build/esm/blocks/Info/schema.js.map +1 -1
  517. package/build/esm/blocks/Map/Map.js +2 -4
  518. package/build/esm/blocks/Map/Map.js.map +1 -1
  519. package/build/esm/blocks/Map/schema.js +4 -1
  520. package/build/esm/blocks/Map/schema.js.map +1 -1
  521. package/build/esm/blocks/Media/Media.js +1 -1
  522. package/build/esm/blocks/Media/Media.js.map +1 -1
  523. package/build/esm/blocks/Media/schema.js +24 -9
  524. package/build/esm/blocks/Media/schema.js.map +1 -1
  525. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +1 -1
  526. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
  527. package/build/esm/blocks/PromoFeaturesBlock/schema.js +8 -2
  528. package/build/esm/blocks/PromoFeaturesBlock/schema.js.map +1 -1
  529. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +1 -1
  530. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
  531. package/build/esm/blocks/Questions/schema.js +6 -2
  532. package/build/esm/blocks/Questions/schema.js.map +1 -1
  533. package/build/esm/blocks/Share/Share.css +3 -2
  534. package/build/esm/blocks/Share/Share.js +3 -4
  535. package/build/esm/blocks/Share/Share.js.map +1 -1
  536. package/build/esm/blocks/Share/schema.js +7 -3
  537. package/build/esm/blocks/Share/schema.js.map +1 -1
  538. package/build/esm/blocks/Slider/Arrow/Arrow.css +13 -13
  539. package/build/esm/blocks/Slider/Arrow/Arrow.js +2 -2
  540. package/build/esm/blocks/Slider/Arrow/Arrow.js.map +1 -1
  541. package/build/esm/blocks/Slider/Slider.css +2 -2
  542. package/build/esm/blocks/Slider/Slider.d.ts +1 -1
  543. package/build/esm/blocks/Slider/Slider.js +7 -4
  544. package/build/esm/blocks/Slider/Slider.js.map +1 -1
  545. package/build/esm/blocks/Slider/schema.js +6 -1
  546. package/build/esm/blocks/Slider/schema.js.map +1 -1
  547. package/build/esm/blocks/Slider/useSlider.d.ts +1 -1
  548. package/build/esm/blocks/Slider/useSlider.js +1 -3
  549. package/build/esm/blocks/Slider/useSlider.js.map +1 -1
  550. package/build/esm/blocks/Slider/useSliderPagination.d.ts +1 -1
  551. package/build/esm/blocks/Slider/utils.d.ts +1 -1
  552. package/build/esm/blocks/Slider/utils.js +6 -2
  553. package/build/esm/blocks/Slider/utils.js.map +1 -1
  554. package/build/esm/blocks/SliderOld/Arrow/Arrow.css +1 -1
  555. package/build/esm/blocks/SliderOld/SliderOld.js +17 -14
  556. package/build/esm/blocks/SliderOld/SliderOld.js.map +1 -1
  557. package/build/esm/blocks/SliderOld/schema.js +6 -1
  558. package/build/esm/blocks/SliderOld/schema.js.map +1 -1
  559. package/build/esm/blocks/SliderOld/utils.js +8 -5
  560. package/build/esm/blocks/SliderOld/utils.js.map +1 -1
  561. package/build/esm/blocks/Table/Table.js +1 -1
  562. package/build/esm/blocks/Table/Table.js.map +1 -1
  563. package/build/esm/blocks/Table/schema.js +22 -10
  564. package/build/esm/blocks/Table/schema.js.map +1 -1
  565. package/build/esm/blocks/Tabs/TabContent/TabContent.css +78 -0
  566. package/build/esm/blocks/Tabs/TabContent/TabContent.d.ts +13 -0
  567. package/build/esm/blocks/Tabs/TabContent/TabContent.js +66 -0
  568. package/build/esm/blocks/Tabs/TabContent/TabContent.js.map +1 -0
  569. package/build/esm/blocks/Tabs/Tabs.css +0 -72
  570. package/build/esm/blocks/Tabs/Tabs.js +13 -59
  571. package/build/esm/blocks/Tabs/Tabs.js.map +1 -1
  572. package/build/esm/blocks/Tabs/schema.js +24 -9
  573. package/build/esm/blocks/Tabs/schema.js.map +1 -1
  574. package/build/esm/blocks/index.d.ts +1 -0
  575. package/build/esm/blocks/index.js +1 -0
  576. package/build/esm/blocks/index.js.map +1 -1
  577. package/build/esm/components/Author/Author.js +1 -1
  578. package/build/esm/components/Author/Author.js.map +1 -1
  579. package/build/esm/components/Author/schema.js +5 -1
  580. package/build/esm/components/Author/schema.js.map +1 -1
  581. package/build/esm/components/BackLink/BackLink.js +1 -1
  582. package/build/esm/components/BackLink/BackLink.js.map +1 -1
  583. package/build/esm/components/BackgroundImage/BackgroundImage.js +2 -2
  584. package/build/esm/components/BackgroundImage/BackgroundImage.js.map +1 -1
  585. package/build/esm/components/BackgroundMedia/BackgroundMedia.js +4 -5
  586. package/build/esm/components/BackgroundMedia/BackgroundMedia.js.map +1 -1
  587. package/build/esm/components/BalancedMasonry/BalancedMasonry.js +1 -1
  588. package/build/esm/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  589. package/build/esm/components/Button/Button.d.ts +1 -0
  590. package/build/esm/components/Button/Button.js +9 -6
  591. package/build/esm/components/Button/Button.js.map +1 -1
  592. package/build/esm/components/Button/utils.js +2 -2
  593. package/build/esm/components/Button/utils.js.map +1 -1
  594. package/build/esm/components/ButtonTabs/ButtonTabs.d.ts +2 -0
  595. package/build/esm/components/ButtonTabs/ButtonTabs.js +3 -2
  596. package/build/esm/components/ButtonTabs/ButtonTabs.js.map +1 -1
  597. package/build/esm/components/Buttons/Buttons.js +4 -1
  598. package/build/esm/components/Buttons/Buttons.js.map +1 -1
  599. package/build/esm/components/CardBase/CardBase.js +6 -2
  600. package/build/esm/components/CardBase/CardBase.js.map +1 -1
  601. package/build/esm/components/ContentList/ContentList.js +1 -1
  602. package/build/esm/components/ContentList/ContentList.js.map +1 -1
  603. package/build/esm/components/ContentList/ContentListItemIcon.js +1 -1
  604. package/build/esm/components/ContentList/ContentListItemIcon.js.map +1 -1
  605. package/build/esm/components/DefaultVideo/DefaultVideo.js +3 -4
  606. package/build/esm/components/DefaultVideo/DefaultVideo.js.map +1 -1
  607. package/build/esm/components/FileLink/FileLink.js +2 -2
  608. package/build/esm/components/FileLink/FileLink.js.map +1 -1
  609. package/build/esm/components/FullWidthBackground/FullWidthBackground.js +12 -17
  610. package/build/esm/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  611. package/build/esm/components/FullscreenImage/FullscreenImage.css +3 -0
  612. package/build/esm/components/FullscreenImage/FullscreenImage.js +1 -1
  613. package/build/esm/components/FullscreenImage/FullscreenImage.js.map +1 -1
  614. package/build/esm/components/FullscreenMedia/FullscreenMedia.css +1 -3
  615. package/build/esm/components/HTML/HTML.js +7 -4
  616. package/build/esm/components/HTML/HTML.js.map +1 -1
  617. package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +1 -1
  618. package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
  619. package/build/esm/components/IconWrapper/IconWrapper.js +2 -2
  620. package/build/esm/components/IconWrapper/IconWrapper.js.map +1 -1
  621. package/build/esm/components/Image/Image.d.ts +4 -2
  622. package/build/esm/components/Image/Image.js +21 -8
  623. package/build/esm/components/Image/Image.js.map +1 -1
  624. package/build/esm/components/Image/schema.d.ts +95 -0
  625. package/build/esm/components/Image/schema.js +55 -12
  626. package/build/esm/components/Image/schema.js.map +1 -1
  627. package/build/esm/components/ImageBase/ImageBase.js +3 -5
  628. package/build/esm/components/ImageBase/ImageBase.js.map +1 -1
  629. package/build/esm/components/InnerForm/InnerForm.js +5 -6
  630. package/build/esm/components/InnerForm/InnerForm.js.map +1 -1
  631. package/build/esm/components/Link/Link.js +1 -1
  632. package/build/esm/components/Link/Link.js.map +1 -1
  633. package/build/esm/components/Links/Links.js +4 -1
  634. package/build/esm/components/Links/Links.js.map +1 -1
  635. package/build/esm/components/Map/Map.js +2 -2
  636. package/build/esm/components/Map/Map.js.map +1 -1
  637. package/build/esm/components/Map/YMap/YMap.js +6 -5
  638. package/build/esm/components/Map/YMap/YMap.js.map +1 -1
  639. package/build/esm/components/Map/YMap/YandexMap.js +1 -2
  640. package/build/esm/components/Map/YMap/YandexMap.js.map +1 -1
  641. package/build/esm/components/Map/YMap/YandexMapApiLoader.js +2 -1
  642. package/build/esm/components/Map/YMap/YandexMapApiLoader.js.map +1 -1
  643. package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js +1 -1
  644. package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
  645. package/build/esm/components/Media/Image/Image.js +3 -3
  646. package/build/esm/components/Media/Image/Image.js.map +1 -1
  647. package/build/esm/components/Media/Media.js +13 -5
  648. package/build/esm/components/Media/Media.js.map +1 -1
  649. package/build/esm/components/MediaBase/MediaBase.js +3 -4
  650. package/build/esm/components/MediaBase/MediaBase.js.map +1 -1
  651. package/build/esm/components/MediaBase/MediaBaseContent.js +1 -1
  652. package/build/esm/components/MediaBase/MediaBaseContent.js.map +1 -1
  653. package/build/esm/components/OutsideClick/OutsideClick.js +9 -12
  654. package/build/esm/components/OutsideClick/OutsideClick.js.map +1 -1
  655. package/build/esm/components/OverflowScroller/OverflowScroller.js +46 -49
  656. package/build/esm/components/OverflowScroller/OverflowScroller.js.map +1 -1
  657. package/build/esm/components/ReactPlayer/ReactPlayer.js +14 -13
  658. package/build/esm/components/ReactPlayer/ReactPlayer.js.map +1 -1
  659. package/build/esm/components/ReactPlayer/utils.js +1 -2
  660. package/build/esm/components/ReactPlayer/utils.js.map +1 -1
  661. package/build/esm/components/Title/Title.js +2 -3
  662. package/build/esm/components/Title/Title.js.map +1 -1
  663. package/build/esm/components/Title/TitleItem.css +1 -0
  664. package/build/esm/components/Title/TitleItem.js +1 -1
  665. package/build/esm/components/Title/TitleItem.js.map +1 -1
  666. package/build/esm/components/VideoBlock/VideoBlock.js +7 -4
  667. package/build/esm/components/VideoBlock/VideoBlock.js.map +1 -1
  668. package/build/esm/components/YFMWrapper/YFMWrapper.js +3 -5
  669. package/build/esm/components/YFMWrapper/YFMWrapper.js.map +1 -1
  670. package/build/esm/components/YandexForm/YandexForm.js +21 -6
  671. package/build/esm/components/YandexForm/YandexForm.js.map +1 -1
  672. package/build/esm/components/YandexForm/schema.js +7 -3
  673. package/build/esm/components/YandexForm/schema.js.map +1 -1
  674. package/build/esm/constructor-items.d.ts +1 -0
  675. package/build/esm/constructor-items.js +2 -1
  676. package/build/esm/constructor-items.js.map +1 -1
  677. package/build/esm/containers/Loadable/Loadable.js +4 -4
  678. package/build/esm/containers/Loadable/Loadable.js.map +1 -1
  679. package/build/esm/containers/PageConstructor/PageConstructor.js +14 -8
  680. package/build/esm/containers/PageConstructor/PageConstructor.js.map +1 -1
  681. package/build/esm/containers/PageConstructor/Provider.js +1 -1
  682. package/build/esm/containers/PageConstructor/Provider.js.map +1 -1
  683. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
  684. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  685. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -3
  686. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
  687. package/build/esm/context/projectSettingsContext/ProjectSettingsContext.d.ts +2 -0
  688. package/build/esm/context/projectSettingsContext/ProjectSettingsContext.js.map +1 -1
  689. package/build/esm/context/theme/withTheme.js +7 -9
  690. package/build/esm/context/theme/withTheme.js.map +1 -1
  691. package/build/esm/customization/BlockDecoration.js +3 -6
  692. package/build/esm/customization/BlockDecoration.js.map +1 -1
  693. package/build/esm/editor/components/AddBlock/AddBlock.js +6 -8
  694. package/build/esm/editor/components/AddBlock/AddBlock.js.map +1 -1
  695. package/build/esm/editor/components/BlockForm/BlockForm.js +9 -5
  696. package/build/esm/editor/components/BlockForm/BlockForm.js.map +1 -1
  697. package/build/esm/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js +4 -5
  698. package/build/esm/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js.map +1 -1
  699. package/build/esm/editor/components/EditBlock/EditBlock.js +2 -2
  700. package/build/esm/editor/components/EditBlock/EditBlock.js.map +1 -1
  701. package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js +2 -5
  702. package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  703. package/build/esm/editor/components/Layout/Layout.js +3 -3
  704. package/build/esm/editor/components/Layout/Layout.js.map +1 -1
  705. package/build/esm/editor/components/PageSettings/PageSettings.js +2 -3
  706. package/build/esm/editor/components/PageSettings/PageSettings.js.map +1 -1
  707. package/build/esm/editor/containers/Editor/Editor.js +1 -1
  708. package/build/esm/editor/containers/Editor/Editor.js.map +1 -1
  709. package/build/esm/editor/containers/Editor/hooks/useCode.js +2 -4
  710. package/build/esm/editor/containers/Editor/hooks/useCode.js.map +1 -1
  711. package/build/esm/editor/containers/Editor/hooks/useEditorState.js +10 -8
  712. package/build/esm/editor/containers/Editor/hooks/useEditorState.js.map +1 -1
  713. package/build/esm/editor/containers/Form/Form.js +5 -2
  714. package/build/esm/editor/containers/Form/Form.js.map +1 -1
  715. package/build/esm/editor/data/index.js +5 -2
  716. package/build/esm/editor/data/index.js.map +1 -1
  717. package/build/esm/editor/data/previews/default-preview.js +1 -1
  718. package/build/esm/editor/data/previews/default-preview.js.map +1 -1
  719. package/build/esm/editor/data/previews/header-block.js +1 -1
  720. package/build/esm/editor/data/previews/header-block.js.map +1 -1
  721. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +15 -13
  722. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  723. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js +8 -10
  724. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  725. package/build/esm/editor/dynamic-forms-custom/parser/index.js +150 -120
  726. package/build/esm/editor/dynamic-forms-custom/parser/index.js.map +1 -1
  727. package/build/esm/editor/dynamic-forms-custom/parser/views.js +2 -4
  728. package/build/esm/editor/dynamic-forms-custom/parser/views.js.map +1 -1
  729. package/build/esm/editor/icons/Tablet.js +1 -1
  730. package/build/esm/editor/icons/Tablet.js.map +1 -1
  731. package/build/esm/editor/store/main/index.js +7 -5
  732. package/build/esm/editor/store/main/index.js.map +1 -1
  733. package/build/esm/editor/store/main/reducer.js +17 -3
  734. package/build/esm/editor/store/main/reducer.js.map +1 -1
  735. package/build/esm/editor/store/main/utils.js +1 -1
  736. package/build/esm/editor/store/main/utils.js.map +1 -1
  737. package/build/esm/editor/store/settings/reducer.js +16 -4
  738. package/build/esm/editor/store/settings/reducer.js.map +1 -1
  739. package/build/esm/editor/utils/code.js +4 -2
  740. package/build/esm/editor/utils/code.js.map +1 -1
  741. package/build/esm/editor/utils/index.js +7 -1
  742. package/build/esm/editor/utils/index.js.map +1 -1
  743. package/build/esm/editor/widget/index.js +8 -8
  744. package/build/esm/editor/widget/index.js.map +1 -1
  745. package/build/esm/editor/widget/utils.js +1 -1
  746. package/build/esm/editor/widget/utils.js.map +1 -1
  747. package/build/esm/grid/Col/Col.d.ts +3 -2
  748. package/build/esm/grid/Col/Col.js +2 -3
  749. package/build/esm/grid/Col/Col.js.map +1 -1
  750. package/build/esm/grid/Row/Row.d.ts +4 -3
  751. package/build/esm/grid/Row/Row.js +2 -2
  752. package/build/esm/grid/Row/Row.js.map +1 -1
  753. package/build/esm/hooks/useAnalytics.js +4 -1
  754. package/build/esm/hooks/useAnalytics.js.map +1 -1
  755. package/build/esm/icons/BrandIconDark.js +1 -1
  756. package/build/esm/icons/BrandIconDark.js.map +1 -1
  757. package/build/esm/icons/BrandIconLight.js +1 -1
  758. package/build/esm/icons/BrandIconLight.js.map +1 -1
  759. package/build/esm/icons/BrandName.js +1 -1
  760. package/build/esm/icons/BrandName.js.map +1 -1
  761. package/build/esm/icons/Chevron.js +1 -1
  762. package/build/esm/icons/Chevron.js.map +1 -1
  763. package/build/esm/icons/Facebook.js +1 -1
  764. package/build/esm/icons/Facebook.js.map +1 -1
  765. package/build/esm/icons/Github.js +1 -1
  766. package/build/esm/icons/Github.js.map +1 -1
  767. package/build/esm/icons/Linkedin.js +1 -1
  768. package/build/esm/icons/Linkedin.js.map +1 -1
  769. package/build/esm/icons/NavigationArrow.js +1 -1
  770. package/build/esm/icons/NavigationArrow.js.map +1 -1
  771. package/build/esm/icons/NavigationChevron.js +1 -1
  772. package/build/esm/icons/NavigationChevron.js.map +1 -1
  773. package/build/esm/icons/Telegram.js +1 -1
  774. package/build/esm/icons/Telegram.js.map +1 -1
  775. package/build/esm/icons/Twitter.js +1 -1
  776. package/build/esm/icons/Twitter.js.map +1 -1
  777. package/build/esm/icons/Vk.js +1 -1
  778. package/build/esm/icons/Vk.js.map +1 -1
  779. package/build/esm/internal-typings/global.d.ts +1 -0
  780. package/build/esm/models/constructor-items/blocks.d.ts +21 -3
  781. package/build/esm/models/constructor-items/blocks.js +1 -0
  782. package/build/esm/models/constructor-items/blocks.js.map +1 -1
  783. package/build/esm/models/constructor-items/common.d.ts +16 -6
  784. package/build/esm/models/constructor-items/common.js +7 -0
  785. package/build/esm/models/constructor-items/common.js.map +1 -1
  786. package/build/esm/models/constructor-items/sub-blocks.d.ts +2 -1
  787. package/build/esm/models/constructor-items/sub-blocks.js.map +1 -1
  788. package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
  789. package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
  790. package/build/esm/navigation/components/Logo/Logo.js +4 -6
  791. package/build/esm/navigation/components/Logo/Logo.js.map +1 -1
  792. package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js +2 -4
  793. package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
  794. package/build/esm/navigation/components/Navigation/Navigation.d.ts +1 -0
  795. package/build/esm/navigation/components/Navigation/Navigation.js +2 -2
  796. package/build/esm/navigation/components/Navigation/Navigation.js.map +1 -1
  797. package/build/esm/navigation/components/NavigationItem/NavigationItem.js +7 -6
  798. package/build/esm/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  799. package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js +1 -1
  800. package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
  801. package/build/esm/navigation/components/NavigationItem/components/GithubButton/GithubButton.js +3 -4
  802. package/build/esm/navigation/components/NavigationItem/components/GithubButton/GithubButton.js.map +1 -1
  803. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +1 -1
  804. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
  805. package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js +2 -4
  806. package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js.map +1 -1
  807. package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +4 -5
  808. package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
  809. package/build/esm/navigation/components/NavigationList/NavigationList.js +1 -5
  810. package/build/esm/navigation/components/NavigationList/NavigationList.js.map +1 -1
  811. package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js +2 -4
  812. package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
  813. package/build/esm/navigation/components/NavigationPopup/NavigationPopup.css +2 -0
  814. package/build/esm/navigation/components/NavigationPopup/NavigationPopup.js +13 -5
  815. package/build/esm/navigation/components/NavigationPopup/NavigationPopup.js.map +1 -1
  816. package/build/esm/navigation/components/SocialIcon/SocialIcon.js +1 -1
  817. package/build/esm/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
  818. package/build/esm/navigation/components/Standalone/index.js +1 -1
  819. package/build/esm/navigation/components/Standalone/index.js.map +1 -1
  820. package/build/esm/navigation/hooks/useActiveNavItem.js +1 -1
  821. package/build/esm/navigation/hooks/useActiveNavItem.js.map +1 -1
  822. package/build/esm/navigation/models.d.ts +1 -0
  823. package/build/esm/navigation/models.js.map +1 -1
  824. package/build/esm/navigation/schema.js +19 -6
  825. package/build/esm/navigation/schema.js.map +1 -1
  826. package/build/esm/navigation/utils.js +1 -1
  827. package/build/esm/navigation/utils.js.map +1 -1
  828. package/build/esm/schema/constants.d.ts +19 -0
  829. package/build/esm/schema/constants.js +35 -3
  830. package/build/esm/schema/constants.js.map +1 -1
  831. package/build/esm/schema/index.js +23 -6
  832. package/build/esm/schema/index.js.map +1 -1
  833. package/build/esm/schema/validators/blocks.d.ts +2 -0
  834. package/build/esm/schema/validators/blocks.js +2 -0
  835. package/build/esm/schema/validators/blocks.js.map +1 -1
  836. package/build/esm/schema/validators/common.js +77 -31
  837. package/build/esm/schema/validators/common.js.map +1 -1
  838. package/build/esm/schema/validators/utils.js +9 -2
  839. package/build/esm/schema/validators/utils.js.map +1 -1
  840. package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js +1 -1
  841. package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
  842. package/build/esm/sub-blocks/BackgroundCard/schema.d.ts +19 -0
  843. package/build/esm/sub-blocks/BackgroundCard/schema.js +23 -8
  844. package/build/esm/sub-blocks/BackgroundCard/schema.js.map +1 -1
  845. package/build/esm/sub-blocks/BannerCard/BannerCard.js +1 -1
  846. package/build/esm/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  847. package/build/esm/sub-blocks/BasicCard/BasicCard.js +2 -3
  848. package/build/esm/sub-blocks/BasicCard/BasicCard.js.map +1 -1
  849. package/build/esm/sub-blocks/BasicCard/schema.js +17 -6
  850. package/build/esm/sub-blocks/BasicCard/schema.js.map +1 -1
  851. package/build/esm/sub-blocks/Content/Content.js +1 -1
  852. package/build/esm/sub-blocks/Content/Content.js.map +1 -1
  853. package/build/esm/sub-blocks/Content/schema.js +10 -3
  854. package/build/esm/sub-blocks/Content/schema.js.map +1 -1
  855. package/build/esm/sub-blocks/Divider/schema.js +6 -2
  856. package/build/esm/sub-blocks/Divider/schema.js.map +1 -1
  857. package/build/esm/sub-blocks/HubspotForm/HubspotFormContainer.d.ts +1 -1
  858. package/build/esm/sub-blocks/HubspotForm/HubspotFormContainer.js +5 -1
  859. package/build/esm/sub-blocks/HubspotForm/HubspotFormContainer.js.map +1 -1
  860. package/build/esm/sub-blocks/HubspotForm/index.js +5 -5
  861. package/build/esm/sub-blocks/HubspotForm/index.js.map +1 -1
  862. package/build/esm/sub-blocks/HubspotForm/loadHubspotScript.js +1 -2
  863. package/build/esm/sub-blocks/HubspotForm/loadHubspotScript.js.map +1 -1
  864. package/build/esm/sub-blocks/HubspotForm/schema.js +11 -5
  865. package/build/esm/sub-blocks/HubspotForm/schema.js.map +1 -1
  866. package/build/esm/sub-blocks/HubspotForm/setHubspotDefaultValues.d.ts +2 -0
  867. package/build/esm/sub-blocks/HubspotForm/setHubspotDefaultValues.js +47 -0
  868. package/build/esm/sub-blocks/HubspotForm/setHubspotDefaultValues.js.map +1 -0
  869. package/build/esm/sub-blocks/ImageCard/ImageCard.js +1 -1
  870. package/build/esm/sub-blocks/ImageCard/ImageCard.js.map +1 -1
  871. package/build/esm/sub-blocks/ImageCard/schema.js +17 -6
  872. package/build/esm/sub-blocks/ImageCard/schema.js.map +1 -1
  873. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js +11 -10
  874. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
  875. package/build/esm/sub-blocks/LayoutItem/schema.js +19 -6
  876. package/build/esm/sub-blocks/LayoutItem/schema.js.map +1 -1
  877. package/build/esm/sub-blocks/LayoutItem/utils.js +4 -1
  878. package/build/esm/sub-blocks/LayoutItem/utils.js.map +1 -1
  879. package/build/esm/sub-blocks/MediaCard/MediaCard.js +1 -5
  880. package/build/esm/sub-blocks/MediaCard/MediaCard.js.map +1 -1
  881. package/build/esm/sub-blocks/MediaCard/schema.js +12 -3
  882. package/build/esm/sub-blocks/MediaCard/schema.js.map +1 -1
  883. package/build/esm/sub-blocks/PriceCard/PriceCard.js +1 -1
  884. package/build/esm/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  885. package/build/esm/sub-blocks/PriceCard/schema.js +25 -11
  886. package/build/esm/sub-blocks/PriceCard/schema.js.map +1 -1
  887. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -2
  888. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  889. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  890. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
  891. package/build/esm/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js +1 -5
  892. package/build/esm/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js.map +1 -1
  893. package/build/esm/sub-blocks/PriceDetailed/schema.js +44 -12
  894. package/build/esm/sub-blocks/PriceDetailed/schema.js.map +1 -1
  895. package/build/esm/sub-blocks/Quote/Quote.js +6 -3
  896. package/build/esm/sub-blocks/Quote/Quote.js.map +1 -1
  897. package/build/esm/sub-blocks/Quote/schema.js +21 -8
  898. package/build/esm/sub-blocks/Quote/schema.js.map +1 -1
  899. package/build/esm/text-transform/common.js +30 -21
  900. package/build/esm/text-transform/common.js.map +1 -1
  901. package/build/esm/text-transform/config.js +59 -25
  902. package/build/esm/text-transform/config.js.map +1 -1
  903. package/build/esm/text-transform/filter.js +4 -1
  904. package/build/esm/text-transform/filter.js.map +1 -1
  905. package/build/esm/text-transform/transformers.js +1 -1
  906. package/build/esm/text-transform/transformers.js.map +1 -1
  907. package/build/esm/text-transform/utils.js +11 -6
  908. package/build/esm/text-transform/utils.js.map +1 -1
  909. package/build/esm/utils/analytics.js +2 -3
  910. package/build/esm/utils/analytics.js.map +1 -1
  911. package/build/esm/utils/common.js +1 -2
  912. package/build/esm/utils/common.js.map +1 -1
  913. package/build/esm/utils/hubspot.d.ts +1 -0
  914. package/build/esm/utils/hubspot.js +6 -7
  915. package/build/esm/utils/hubspot.js.map +1 -1
  916. package/build/esm/utils/microdata.js +1 -1
  917. package/build/esm/utils/microdata.js.map +1 -1
  918. package/build/esm/utils/url.js +10 -5
  919. package/build/esm/utils/url.js.map +1 -1
  920. package/package.json +19 -21
  921. package/schema/index.js +1 -1
  922. package/server/models/constructor-items/blocks.d.ts +21 -3
  923. package/server/models/constructor-items/blocks.js +1 -0
  924. package/server/models/constructor-items/common.d.ts +16 -6
  925. package/server/models/constructor-items/common.js +8 -1
  926. package/server/models/constructor-items/sub-blocks.d.ts +2 -1
  927. package/server/text-transform/config.js +25 -1
  928. package/server/text-transform/utils.js +4 -1
  929. package/server/utils/hubspot.d.ts +1 -0
  930. package/widget/{5287.index.js → 1092.index.js} +1 -1
  931. package/widget/{8092.index.js → 1130.index.js} +1 -1
  932. package/widget/1219.index.js +1 -0
  933. package/widget/{2390.index.js → 122.index.js} +1 -1
  934. package/widget/{6817.index.js → 1289.index.js} +1 -1
  935. package/widget/{2921.index.js → 1335.index.js} +1 -1
  936. package/widget/{1876.index.js → 1340.index.js} +1 -1
  937. package/widget/{3901.index.js → 1349.index.js} +1 -1
  938. package/widget/1532.index.js +1 -0
  939. package/widget/{2957.index.js → 1750.index.js} +1 -1
  940. package/widget/{5105.index.js → 1995.index.js} +1 -1
  941. package/widget/{5418.index.js → 2010.index.js} +1 -1
  942. package/widget/{9517.index.js → 2026.index.js} +1 -1
  943. package/widget/2042.index.js +1 -0
  944. package/widget/{1794.index.js → 2187.index.js} +1 -1
  945. package/widget/{7548.index.js → 2218.index.js} +1 -1
  946. package/widget/225.index.js +1 -0
  947. package/widget/2338.index.js +1 -0
  948. package/widget/{4653.index.js → 2355.index.js} +1 -1
  949. package/widget/{5001.index.js → 2369.index.js} +1 -1
  950. package/widget/{4127.index.js → 2487.index.js} +1 -1
  951. package/widget/{6165.index.js → 2498.index.js} +1 -1
  952. package/widget/{5254.index.js → 2509.index.js} +1 -1
  953. package/widget/2544.index.js +1 -1
  954. package/widget/2619.index.js +1 -0
  955. package/widget/{5941.index.js → 2673.index.js} +1 -1
  956. package/widget/{4717.index.js → 2698.index.js} +1 -1
  957. package/widget/{7427.index.js → 2706.index.js} +1 -1
  958. package/widget/2723.index.js +1 -0
  959. package/widget/{8602.index.js → 2739.index.js} +1 -1
  960. package/widget/2745.index.js +1 -0
  961. package/widget/2796.index.js +1 -0
  962. package/widget/{7573.index.js → 2830.index.js} +1 -1
  963. package/widget/{3237.index.js → 2878.index.js} +1 -1
  964. package/widget/292.index.js +1 -0
  965. package/widget/2979.index.js +1 -0
  966. package/widget/3187.index.js +1 -0
  967. package/widget/321.index.js +1 -0
  968. package/widget/{5437.index.js → 3222.index.js} +1 -1
  969. package/widget/{1987.index.js → 3225.index.js} +1 -1
  970. package/widget/{7719.index.js → 3309.index.js} +1 -1
  971. package/widget/3392.index.js +1 -0
  972. package/widget/{4254.index.js → 3433.index.js} +1 -1
  973. package/widget/{2722.index.js → 3473.index.js} +1 -1
  974. package/widget/3532.index.js +1 -0
  975. package/widget/3562.index.js +1 -0
  976. package/widget/{6148.index.js → 3672.index.js} +1 -1
  977. package/widget/{4990.index.js → 3713.index.js} +1 -1
  978. package/widget/{8894.index.js → 3860.index.js} +1 -1
  979. package/widget/{5551.index.js → 3900.index.js} +1 -1
  980. package/widget/{6629.index.js → 4007.index.js} +1 -1
  981. package/widget/{7467.index.js → 4061.index.js} +1 -1
  982. package/widget/{5423.index.js → 4072.index.js} +1 -1
  983. package/widget/{4144.index.js → 4173.index.js} +1 -1
  984. package/widget/4288.index.js +1 -0
  985. package/widget/{8242.index.js → 4309.index.js} +1 -1
  986. package/widget/{8146.index.js → 4334.index.js} +1 -1
  987. package/widget/{9339.index.js → 4405.index.js} +1 -1
  988. package/widget/4457.index.js +1 -0
  989. package/widget/{8768.index.js → 4485.index.js} +1 -1
  990. package/widget/4509.index.js +1 -0
  991. package/widget/{4067.index.js → 4608.index.js} +1 -1
  992. package/widget/465.index.js +1 -0
  993. package/widget/{7118.index.js → 4719.index.js} +1 -1
  994. package/widget/4734.index.js +1 -0
  995. package/widget/4780.index.js +1 -0
  996. package/widget/4895.index.js +1 -0
  997. package/widget/{790.index.js → 494.index.js} +1 -1
  998. package/widget/5012.index.js +1 -0
  999. package/widget/{4722.index.js → 5084.index.js} +1 -1
  1000. package/widget/5285.index.js +1 -0
  1001. package/widget/5376.index.js +1 -0
  1002. package/widget/539.index.js +1 -0
  1003. package/widget/5414.index.js +1 -0
  1004. package/widget/{8980.index.js → 5513.index.js} +1 -1
  1005. package/widget/5530.index.js +1 -0
  1006. package/widget/5571.index.js +1 -0
  1007. package/widget/{8540.index.js → 5592.index.js} +1 -1
  1008. package/widget/5616.index.js +1 -0
  1009. package/widget/{5903.index.js → 5662.index.js} +1 -1
  1010. package/widget/{7109.index.js → 5665.index.js} +1 -1
  1011. package/widget/{8792.index.js → 5681.index.js} +1 -1
  1012. package/widget/5760.index.js +1 -0
  1013. package/widget/{6257.index.js → 5811.index.js} +1 -1
  1014. package/widget/{5054.index.js → 5826.index.js} +1 -1
  1015. package/widget/{1560.index.js → 5877.index.js} +1 -1
  1016. package/widget/{9149.index.js → 5944.index.js} +1 -1
  1017. package/widget/{8341.index.js → 5977.index.js} +1 -1
  1018. package/widget/{3646.index.js → 5993.index.js} +1 -1
  1019. package/widget/{2009.index.js → 6007.index.js} +1 -1
  1020. package/widget/{3852.index.js → 6033.index.js} +1 -1
  1021. package/widget/{5567.index.js → 6101.index.js} +1 -1
  1022. package/widget/6173.index.js +1 -0
  1023. package/widget/623.index.js +1 -0
  1024. package/widget/{7989.index.js → 6290.index.js} +1 -1
  1025. package/widget/6328.index.js +1 -0
  1026. package/widget/6353.index.js +1 -0
  1027. package/widget/6364.index.js +1 -0
  1028. package/widget/{7387.index.js → 6400.index.js} +1 -1
  1029. package/widget/{5473.index.js → 6462.index.js} +1 -1
  1030. package/widget/6463.index.js +1 -0
  1031. package/widget/6467.index.js +1 -0
  1032. package/widget/{6622.index.js → 6481.index.js} +1 -1
  1033. package/widget/{4888.index.js → 6605.index.js} +1 -1
  1034. package/widget/{2966.index.js → 6803.index.js} +1 -1
  1035. package/widget/{5627.index.js → 6847.index.js} +1 -1
  1036. package/widget/6887.index.js +1 -0
  1037. package/widget/{2019.index.js → 7081.index.js} +1 -1
  1038. package/widget/7205.index.js +1 -0
  1039. package/widget/{5596.index.js → 7250.index.js} +1 -1
  1040. package/widget/{7763.index.js → 7317.index.js} +1 -1
  1041. package/widget/7329.index.js +1 -0
  1042. package/widget/{5159.index.js → 7406.index.js} +1 -1
  1043. package/widget/{7632.index.js → 7409.index.js} +1 -1
  1044. package/widget/{3783.index.js → 7420.index.js} +1 -1
  1045. package/widget/{7101.index.js → 7439.index.js} +1 -1
  1046. package/widget/7458.index.js +1 -0
  1047. package/widget/7570.index.js +1 -0
  1048. package/widget/7627.index.js +1 -0
  1049. package/widget/{9197.index.js → 7674.index.js} +1 -1
  1050. package/widget/{5805.index.js → 7690.index.js} +1 -1
  1051. package/widget/{2641.index.js → 7741.index.js} +1 -1
  1052. package/widget/{4724.index.js → 7933.index.js} +1 -1
  1053. package/widget/{9132.index.js → 8003.index.js} +1 -1
  1054. package/widget/813.index.js +1 -0
  1055. package/widget/{6513.index.js → 8142.index.js} +1 -1
  1056. package/widget/{8562.index.js → 8298.index.js} +1 -1
  1057. package/widget/{7200.index.js → 8361.index.js} +1 -1
  1058. package/widget/{4855.index.js → 8418.index.js} +1 -1
  1059. package/widget/8446.index.js +1 -0
  1060. package/widget/860.index.js +1 -0
  1061. package/widget/{1796.index.js → 8615.index.js} +1 -1
  1062. package/widget/{6312.index.js → 8660.index.js} +1 -1
  1063. package/widget/880.index.js +1 -0
  1064. package/widget/8804.index.js +1 -0
  1065. package/widget/8809.index.js +1 -0
  1066. package/widget/{9157.index.js → 8928.index.js} +1 -1
  1067. package/widget/912.index.js +1 -0
  1068. package/widget/9160.index.js +1 -0
  1069. package/widget/{5914.index.js → 9252.index.js} +1 -1
  1070. package/widget/{3706.index.js → 9286.index.js} +1 -1
  1071. package/widget/{2502.index.js → 9294.index.js} +1 -1
  1072. package/widget/9340.index.js +1 -0
  1073. package/widget/{9182.index.js → 9423.index.js} +1 -1
  1074. package/widget/{8477.index.js → 9464.index.js} +1 -1
  1075. package/widget/950.index.js +1 -0
  1076. package/widget/952.index.js +1 -0
  1077. package/widget/9677.index.js +1 -0
  1078. package/widget/9751.index.js +1 -0
  1079. package/widget/{3220.index.js → 9836.index.js} +1 -1
  1080. package/widget/{2376.index.js → 9865.index.js} +1 -1
  1081. package/widget/{5109.index.js → 9881.index.js} +1 -1
  1082. package/widget/9911.index.js +1 -1
  1083. package/widget/{7822.index.js → 9964.index.js} +1 -1
  1084. package/widget/9979.index.js +1 -0
  1085. package/widget/{9091.index.js → 9990.index.js} +1 -1
  1086. package/widget/9998.index.js +1 -0
  1087. package/widget/index.js +1 -1
  1088. package/widget/1113.index.js +0 -1
  1089. package/widget/123.index.js +0 -1
  1090. package/widget/1573.index.js +0 -1
  1091. package/widget/2030.index.js +0 -1
  1092. package/widget/229.index.js +0 -1
  1093. package/widget/261.index.js +0 -1
  1094. package/widget/302.index.js +0 -1
  1095. package/widget/3035.index.js +0 -1
  1096. package/widget/313.index.js +0 -1
  1097. package/widget/3521.index.js +0 -1
  1098. package/widget/3864.index.js +0 -1
  1099. package/widget/3939.index.js +0 -1
  1100. package/widget/4017.index.js +0 -1
  1101. package/widget/4149.index.js +0 -1
  1102. package/widget/4502.index.js +0 -1
  1103. package/widget/466.index.js +0 -1
  1104. package/widget/504.index.js +0 -1
  1105. package/widget/5321.index.js +0 -1
  1106. package/widget/5742.index.js +0 -1
  1107. package/widget/5817.index.js +0 -1
  1108. package/widget/600.index.js +0 -1
  1109. package/widget/6023.index.js +0 -1
  1110. package/widget/6159.index.js +0 -1
  1111. package/widget/617.index.js +0 -1
  1112. package/widget/6183.index.js +0 -1
  1113. package/widget/6509.index.js +0 -1
  1114. package/widget/6636.index.js +0 -1
  1115. package/widget/6831.index.js +0 -1
  1116. package/widget/6953.index.js +0 -1
  1117. package/widget/7296.index.js +0 -1
  1118. package/widget/7486.index.js +0 -1
  1119. package/widget/7496.index.js +0 -1
  1120. package/widget/7553.index.js +0 -1
  1121. package/widget/758.index.js +0 -1
  1122. package/widget/772.index.js +0 -1
  1123. package/widget/7797.index.js +0 -1
  1124. package/widget/8066.index.js +0 -1
  1125. package/widget/8507.index.js +0 -1
  1126. package/widget/8529.index.js +0 -1
  1127. package/widget/8727.index.js +0 -1
  1128. package/widget/8864.index.js +0 -1
  1129. package/widget/8889.index.js +0 -1
  1130. package/widget/953.index.js +0 -1
  1131. package/widget/9670.index.js +0 -1
  1132. package/widget/9682.index.js +0 -1
  1133. package/widget/9928.index.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AddBlock.js","sourceRoot":"../../../../../src","sources":["editor/components/AddBlock/AddBlock.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Plus} from '@gravity-ui/icons';\nimport {Popup, TextInput} from '@gravity-ui/uikit';\n\nimport {blockMap} from '../../../constructor-items';\nimport {Block, BlockType, ClassNameProps} from '../../../models';\nimport {block} from '../../../utils';\nimport {EditorBlocksData, getEditorBlocksData} from '../../data';\n\nimport './AddBlock.scss';\n\nconst b = block('add-block');\n\nexport interface AddBlockProps extends ClassNameProps {\n onAdd: (data: Block) => void;\n}\n\nconst sortedBlockNames = Object.keys(blockMap).sort();\n\nconst AddBlock = ({onAdd, className}: React.PropsWithChildren<AddBlockProps>) => {\n const [isOpened, setIsOpened] = React.useState(false);\n const [search, setSearch] = React.useState('');\n const [editorBlocksData, setEditorBlocksData] = React.useState<EditorBlocksData | null>(null);\n\n const ref = React.useRef(null);\n const blocks = React.useMemo(() => {\n if (!editorBlocksData) {\n return [];\n }\n\n return sortedBlockNames.filter((blockName) =>\n editorBlocksData[blockName as BlockType]?.meta.title\n .toLocaleLowerCase()\n .startsWith(search.toLocaleLowerCase()),\n );\n }, [editorBlocksData, search]);\n\n React.useEffect(() => {\n const loadEditorBlocksData = async () => {\n const data = await getEditorBlocksData();\n setEditorBlocksData(data);\n };\n\n loadEditorBlocksData();\n }, []);\n\n return (\n <div className={b(null, className)} ref={ref}>\n <button\n className={b('button')}\n type=\"button\"\n onClick={() => {\n setIsOpened(!isOpened);\n setSearch('');\n }}\n >\n <Plus className={b('icon')} />\n </button>\n {isOpened && (\n <Popup\n anchorRef={ref}\n open={isOpened}\n placement=\"top\"\n className={b('popup')}\n offset={{mainAxis: 0, crossAxis: 24}}\n onOutsideClick={() => setIsOpened(false)}\n >\n <div className={b('search')}>\n <TextInput\n placeholder=\"search\"\n type=\"text\"\n value={search}\n size=\"l\"\n onUpdate={(value) => setSearch(value)}\n />\n </div>\n <div className={b('blocks')}>\n {blocks.map((blockName) => {\n const blockData = editorBlocksData?.[blockName as BlockType];\n\n if (!blockData) {\n return null;\n }\n\n const Preview: React.FC<React.SVGProps<SVGSVGElement>> =\n blockData.preview;\n\n return (\n <button\n key={blockName}\n className={b('block')}\n onClick={() => {\n onAdd(blockData?.template as Block);\n setIsOpened(false);\n }}\n >\n <div className={b('preview')}>\n <Preview />\n </div>\n <div className={b('info')}>\n <h4 className={b('title')}>{blockData.meta.title}</h4>\n {blockData?.meta?.description && (\n <p className={b('description')}>\n {blockData.meta.description}\n </p>\n )}\n </div>\n </button>\n );\n })}\n </div>\n </Popup>\n )}\n </div>\n );\n};\n\nexport default AddBlock;\n"]}
1
+ {"version":3,"file":"AddBlock.js","sourceRoot":"../../../../../src","sources":["editor/components/AddBlock/AddBlock.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Plus} from '@gravity-ui/icons';\nimport {Popup, TextInput} from '@gravity-ui/uikit';\n\nimport {blockMap} from '../../../constructor-items';\nimport {Block, BlockType, ClassNameProps} from '../../../models';\nimport {block} from '../../../utils';\nimport {EditorBlocksData, getEditorBlocksData} from '../../data';\n\nimport './AddBlock.scss';\n\nconst b = block('add-block');\n\nexport interface AddBlockProps extends ClassNameProps {\n onAdd: (data: Block) => void;\n}\n\nconst sortedBlockNames = Object.keys(blockMap).sort();\n\nconst AddBlock = ({onAdd, className}: React.PropsWithChildren<AddBlockProps>) => {\n const [isOpened, setIsOpened] = React.useState(false);\n const [search, setSearch] = React.useState('');\n const [editorBlocksData, setEditorBlocksData] = React.useState<EditorBlocksData | null>(null);\n\n const ref = React.useRef(null);\n const blocks = React.useMemo(() => {\n if (!editorBlocksData) {\n return [];\n }\n\n return sortedBlockNames.filter((blockName) =>\n editorBlocksData[blockName as BlockType]?.meta.title\n .toLocaleLowerCase()\n .startsWith(search.toLocaleLowerCase()),\n );\n }, [editorBlocksData, search]);\n\n React.useEffect(() => {\n const loadEditorBlocksData = async () => {\n const data = await getEditorBlocksData();\n setEditorBlocksData(data);\n };\n\n loadEditorBlocksData();\n }, []);\n\n return (\n <div className={b(null, className)} ref={ref}>\n <button\n className={b('button')}\n type=\"button\"\n onClick={() => {\n setIsOpened(!isOpened);\n setSearch('');\n }}\n >\n <Plus className={b('icon')} />\n </button>\n {isOpened && (\n <Popup\n anchorRef={ref}\n open={isOpened}\n placement=\"top\"\n className={b('popup')}\n offset={{mainAxis: 0, crossAxis: 24}}\n onOutsideClick={() => setIsOpened(false)}\n >\n <div className={b('search')}>\n <TextInput\n placeholder=\"search\"\n type=\"text\"\n value={search}\n size=\"l\"\n onUpdate={(value) => setSearch(value)}\n />\n </div>\n <div className={b('blocks')}>\n {blocks.map((blockName) => {\n const blockData = editorBlocksData?.[blockName as BlockType];\n\n if (!blockData) {\n return null;\n }\n\n const Preview: React.FC<React.SVGProps<SVGSVGElement>> =\n blockData.preview;\n\n return (\n <button\n key={blockName}\n className={b('block')}\n onClick={() => {\n onAdd(blockData?.template as Block);\n setIsOpened(false);\n }}\n >\n <div className={b('preview')}>\n <Preview />\n </div>\n <div className={b('info')}>\n <h4 className={b('title')}>{blockData.meta.title}</h4>\n {blockData?.meta?.description && (\n <p className={b('description')}>\n {blockData.meta.description}\n </p>\n )}\n </div>\n </button>\n );\n })}\n </div>\n </Popup>\n )}\n </div>\n );\n};\n\nexport default AddBlock;\n"]}
@@ -1,4 +1,3 @@
1
- import { __rest } from "tslib";
2
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
2
  import * as React from 'react';
4
3
  import { DynamicField, SimpleVerticalAccordeon } from '@gravity-ui/dynamic-forms';
@@ -7,18 +6,23 @@ import noop from "lodash/noop.js";
7
6
  import { Form as FinalForm, FormSpy } from 'react-final-form';
8
7
  import { dynamicConfig } from "../../dynamic-forms-custom/config.js";
9
8
  import usePreviousValue from "../../hooks/usePreviousValue.js";
10
- export const BlockForm = React.memo((_a) => {
11
- var _b = _a.data, { type } = _b, content = __rest(_b, ["type"]), { onChange, onSelect, active, spec: specRaw } = _a;
9
+ export const BlockForm = React.memo(({ data: { type, ...content }, onChange, onSelect, active, spec: specRaw }) => {
12
10
  const initialValues = React.useMemo(() => ({ content }), [content]);
13
11
  const prevContent = usePreviousValue(content);
14
- const spec = React.useMemo(() => (Object.assign(Object.assign({}, specRaw), { viewSpec: Object.assign(Object.assign({}, specRaw.viewSpec), { layoutOpen: active }) })), [specRaw, active]);
12
+ const spec = React.useMemo(() => ({
13
+ ...specRaw,
14
+ viewSpec: {
15
+ ...specRaw.viewSpec,
16
+ layoutOpen: active,
17
+ },
18
+ }), [specRaw, active]);
15
19
  if (!active) {
16
20
  return (_jsx(SimpleVerticalAccordeon, { open: false, name: type, title: spec.viewSpec.layoutTitle || type, onOpenChange: onSelect, children: ' ' }));
17
21
  }
18
22
  return (_jsx(FinalForm, { initialValues: initialValues, onSubmit: noop, children: () => (_jsxs(React.Fragment, { children: [_jsx(FormSpy, { onChange: ({ values }) => {
19
23
  // fix for FormSpy onChange called twice without content changes
20
24
  if (!isEqual(values.content, prevContent)) {
21
- onChange(Object.assign({ type }, values.content));
25
+ onChange({ type, ...values.content });
22
26
  }
23
27
  }, subscription: { values: true } }), _jsx(DynamicField, { name: "content", spec: spec, config: dynamicConfig, withoutInsertFFDebounce: true })] })) }));
24
28
  });
@@ -1 +1 @@
1
- {"version":3,"file":"BlockForm.js","sourceRoot":"../../../../../src","sources":["editor/components/BlockForm/BlockForm.tsx"],"names":[],"mappings":";;AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,YAAY,EAAE,uBAAuB,EAAO,MAAM,2BAA2B,CAAC;AACtF,OAAO,OAAO,0BAAuB;AACrC,OAAO,IAAI,uBAAoB;AAC/B,OAAO,EAAC,IAAI,IAAI,SAAS,EAAE,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAG5D,OAAO,EAAC,aAAa,EAAC,6CAA0C;AAEhE,OAAO,gBAAgB,wCAAqC;AAU5D,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAC/B,CAAC,EAAqF,EAAE,EAAE;QAAxF,YAAwB,EAAxB,EAAO,IAAI,OAAa,EAAR,OAAO,cAAjB,QAAkB,CAAD,EAAxB,EAA2B,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,OAAiB;IAClF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAC,OAAO,EAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CACtB,GAAG,EAAE,CAAC,iCACC,OAAO,KACV,QAAQ,kCACD,OAAO,CAAC,QAAQ,KACnB,UAAU,EAAE,MAAM,OAExB,EACF,CAAC,OAAO,EAAE,MAAM,CAAC,CACpB,CAAC;IAEF,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,CACH,KAAC,uBAAuB,IACpB,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,IAAI,EACxC,YAAY,EAAE,QAAQ,YAE4C,GAAG,GAC/C,CAC7B,CAAC;IACN,CAAC;IAED,OAAO,CACH,KAAC,SAAS,IAAC,aAAa,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,YAClD,GAAG,EAAE,CAAC,CACH,MAAC,KAAK,CAAC,QAAQ,eACX,KAAC,OAAO,IACJ,QAAQ,EAAE,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE;wBACnB,gEAAgE;wBAChE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC;4BACxC,QAAQ,iBAAE,IAAI,IAAK,MAAM,CAAC,OAAO,EAAE,CAAC;wBACxC,CAAC;oBACL,CAAC,EACD,YAAY,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,GAC9B,EACF,KAAC,YAAY,IACT,IAAI,EAAC,SAAS,EACd,IAAI,EAAE,IAAY,EAClB,MAAM,EAAE,aAAa,EACrB,uBAAuB,SACzB,IACW,CACpB,GACO,CACf,CAAC;AACN,CAAC,CACJ,CAAC;AAEF,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {DynamicField, SimpleVerticalAccordeon, Spec} from '@gravity-ui/dynamic-forms';\nimport isEqual from 'lodash/isEqual';\nimport noop from 'lodash/noop';\nimport {Form as FinalForm, FormSpy} from 'react-final-form';\n\nimport {Block, ConstructorBlock} from '../../../models';\nimport {dynamicConfig} from '../../dynamic-forms-custom/config';\nimport {CustomSpec} from '../../dynamic-forms-custom/parser/types';\nimport usePreviousValue from '../../hooks/usePreviousValue';\n\ninterface BlockFormProps {\n data: ConstructorBlock;\n spec: CustomSpec;\n onChange: (data: Block) => void;\n onSelect: () => void;\n active?: boolean;\n}\n\nexport const BlockForm = React.memo(\n ({data: {type, ...content}, onChange, onSelect, active, spec: specRaw}: BlockFormProps) => {\n const initialValues = React.useMemo(() => ({content}), [content]);\n const prevContent = usePreviousValue(content);\n const spec = React.useMemo(\n () => ({\n ...specRaw,\n viewSpec: {\n ...specRaw.viewSpec,\n layoutOpen: active,\n },\n }),\n [specRaw, active],\n );\n\n if (!active) {\n return (\n <SimpleVerticalAccordeon\n open={false}\n name={type}\n title={spec.viewSpec.layoutTitle || type}\n onOpenChange={onSelect}\n >\n {/* SimpleVerticalAccordeon requires children, put dummy value*/}{' '}\n </SimpleVerticalAccordeon>\n );\n }\n\n return (\n <FinalForm initialValues={initialValues} onSubmit={noop}>\n {() => (\n <React.Fragment>\n <FormSpy\n onChange={({values}) => {\n // fix for FormSpy onChange called twice without content changes\n if (!isEqual(values.content, prevContent)) {\n onChange({type, ...values.content});\n }\n }}\n subscription={{values: true}}\n />\n <DynamicField\n name=\"content\"\n spec={spec as Spec}\n config={dynamicConfig}\n withoutInsertFFDebounce\n />\n </React.Fragment>\n )}\n </FinalForm>\n );\n },\n);\n\nBlockForm.displayName = 'BlockForm';\n"]}
1
+ {"version":3,"file":"BlockForm.js","sourceRoot":"../../../../../src","sources":["editor/components/BlockForm/BlockForm.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,YAAY,EAAE,uBAAuB,EAAO,MAAM,2BAA2B,CAAC;AACtF,OAAO,OAAO,0BAAuB;AACrC,OAAO,IAAI,uBAAoB;AAC/B,OAAO,EAAC,IAAI,IAAI,SAAS,EAAE,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAG5D,OAAO,EAAC,aAAa,EAAC,6CAA0C;AAEhE,OAAO,gBAAgB,wCAAqC;AAU5D,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAC/B,CAAC,EAAC,IAAI,EAAE,EAAC,IAAI,EAAE,GAAG,OAAO,EAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAiB,EAAE,EAAE;IACtF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAC,OAAO,EAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CACtB,GAAG,EAAE,CAAC,CAAC;QACH,GAAG,OAAO;QACV,QAAQ,EAAE;YACN,GAAG,OAAO,CAAC,QAAQ;YACnB,UAAU,EAAE,MAAM;SACrB;KACJ,CAAC,EACF,CAAC,OAAO,EAAE,MAAM,CAAC,CACpB,CAAC;IAEF,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,CACH,KAAC,uBAAuB,IACpB,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,IAAI,EACxC,YAAY,EAAE,QAAQ,YAE4C,GAAG,GAC/C,CAC7B,CAAC;IACN,CAAC;IAED,OAAO,CACH,KAAC,SAAS,IAAC,aAAa,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,YAClD,GAAG,EAAE,CAAC,CACH,MAAC,KAAK,CAAC,QAAQ,eACX,KAAC,OAAO,IACJ,QAAQ,EAAE,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE;wBACnB,gEAAgE;wBAChE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC;4BACxC,QAAQ,CAAC,EAAC,IAAI,EAAE,GAAG,MAAM,CAAC,OAAO,EAAC,CAAC,CAAC;wBACxC,CAAC;oBACL,CAAC,EACD,YAAY,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,GAC9B,EACF,KAAC,YAAY,IACT,IAAI,EAAC,SAAS,EACd,IAAI,EAAE,IAAY,EAClB,MAAM,EAAE,aAAa,EACrB,uBAAuB,SACzB,IACW,CACpB,GACO,CACf,CAAC;AACN,CAAC,CACJ,CAAC;AAEF,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {DynamicField, SimpleVerticalAccordeon, Spec} from '@gravity-ui/dynamic-forms';\nimport isEqual from 'lodash/isEqual';\nimport noop from 'lodash/noop';\nimport {Form as FinalForm, FormSpy} from 'react-final-form';\n\nimport {Block, ConstructorBlock} from '../../../models';\nimport {dynamicConfig} from '../../dynamic-forms-custom/config';\nimport {CustomSpec} from '../../dynamic-forms-custom/parser/types';\nimport usePreviousValue from '../../hooks/usePreviousValue';\n\ninterface BlockFormProps {\n data: ConstructorBlock;\n spec: CustomSpec;\n onChange: (data: Block) => void;\n onSelect: () => void;\n active?: boolean;\n}\n\nexport const BlockForm = React.memo(\n ({data: {type, ...content}, onChange, onSelect, active, spec: specRaw}: BlockFormProps) => {\n const initialValues = React.useMemo(() => ({content}), [content]);\n const prevContent = usePreviousValue(content);\n const spec = React.useMemo(\n () => ({\n ...specRaw,\n viewSpec: {\n ...specRaw.viewSpec,\n layoutOpen: active,\n },\n }),\n [specRaw, active],\n );\n\n if (!active) {\n return (\n <SimpleVerticalAccordeon\n open={false}\n name={type}\n title={spec.viewSpec.layoutTitle || type}\n onOpenChange={onSelect}\n >\n {/* SimpleVerticalAccordeon requires children, put dummy value*/}{' '}\n </SimpleVerticalAccordeon>\n );\n }\n\n return (\n <FinalForm initialValues={initialValues} onSubmit={noop}>\n {() => (\n <React.Fragment>\n <FormSpy\n onChange={({values}) => {\n // fix for FormSpy onChange called twice without content changes\n if (!isEqual(values.content, prevContent)) {\n onChange({type, ...values.content});\n }\n }}\n subscription={{values: true}}\n />\n <DynamicField\n name=\"content\"\n spec={spec as Spec}\n config={dynamicConfig}\n withoutInsertFFDebounce\n />\n </React.Fragment>\n )}\n </FinalForm>\n );\n },\n);\n\nBlockForm.displayName = 'BlockForm';\n"]}
@@ -1,4 +1,3 @@
1
- import { __rest } from "tslib";
2
1
  import { jsx as _jsx } from "react/jsx-runtime";
3
2
  import * as React from 'react';
4
3
  import { block } from "../../../../utils/index.js";
@@ -7,13 +6,13 @@ import { DeviceIframe } from "../../../widget/index.js";
7
6
  import './DeviceEmulationMobile.css';
8
7
  const b = block('device-emulation-mobile');
9
8
  const DeviceEmulationMobile = ({ device, active }) => {
10
- const _a = React.useContext(EditorContext), { deviceEmulationSettings } = _a, initialData = __rest(_a, ["deviceEmulationSettings"]);
9
+ const { deviceEmulationSettings, ...initialData } = React.useContext(EditorContext);
11
10
  const containerRef = React.useRef(null);
12
11
  const deviceIframeRef = React.useRef(null);
13
12
  React.useEffect(() => {
14
13
  let iframe;
15
- if (containerRef === null || containerRef === void 0 ? void 0 : containerRef.current) {
16
- iframe = new DeviceIframe(containerRef === null || containerRef === void 0 ? void 0 : containerRef.current, {
14
+ if (containerRef?.current) {
15
+ iframe = new DeviceIframe(containerRef?.current, {
17
16
  initialData,
18
17
  className: b('frame', { device }),
19
18
  settings: deviceEmulationSettings,
@@ -21,7 +20,7 @@ const DeviceEmulationMobile = ({ device, active }) => {
21
20
  deviceIframeRef.current = iframe;
22
21
  }
23
22
  return () => {
24
- iframe === null || iframe === void 0 ? void 0 : iframe.destroy();
23
+ iframe?.destroy();
25
24
  };
26
25
  // render iframe only once, then update it's data with postMessage
27
26
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceEmulationMobile.js","sourceRoot":"../../../../../../src","sources":["editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.tsx"],"names":[],"mappings":";;AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,KAAK,EAAC,mCAA0B;AACxC,OAAO,EAAC,aAAa,EAAC,4BAAyB;AAC/C,OAAO,EAAC,YAAY,EAAC,iCAAwB;AAG7C,OAAO,6BAA6B,CAAC;AAErC,MAAM,CAAC,GAAG,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAO3C,MAAM,qBAAqB,GAAG,CAAC,EAAC,MAAM,EAAE,MAAM,EAA6B,EAAE,EAAE;IAC3E,MAAM,KAA4C,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,EAA3E,EAAC,uBAAuB,OAAmD,EAA9C,WAAW,cAAxC,2BAAyC,CAAkC,CAAC;IAClF,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAwB,IAAI,CAAC,CAAC;IAC/D,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAsB,IAAI,CAAC,CAAC;IAEhE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,MAAoB,CAAC;QAEzB,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,EAAE,CAAC;YACxB,MAAM,GAAG,IAAI,YAAY,CAAC,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,EAAE;gBAC7C,WAAW;gBACX,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,EAAC,MAAM,EAAC,CAAC;gBAC/B,QAAQ,EAAE,uBAAuB;aACpC,CAAC,CAAC;YACH,eAAe,CAAC,OAAO,GAAG,MAAM,CAAC;QACrC,CAAC;QAED,OAAO,GAAG,EAAE;YACR,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE,CAAC;QACtB,CAAC,CAAC;QACF,kEAAkE;QAClE,uDAAuD;IAC3D,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;YAC1B,eAAe,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACvD,CAAC;IACL,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,eAAe,CAAC,OAAO,IAAI,WAAW,EAAE,CAAC;YACzC,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QACtD,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO,cAAK,SAAS,EAAE,CAAC,CAAC,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC,EAAE,GAAG,EAAE,YAAY,GAAI,CAAC;AACtE,CAAC,CAAC;AAEF,eAAe,qBAAqB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {block} from '../../../../utils';\nimport {EditorContext} from '../../../context';\nimport {DeviceIframe} from '../../../widget';\nimport {MobileDevice} from '../utils';\n\nimport './DeviceEmulationMobile.scss';\n\nconst b = block('device-emulation-mobile');\n\ninterface DeviceEmulationMobileProps extends React.PropsWithChildren {\n device: MobileDevice;\n active: boolean;\n}\n\nconst DeviceEmulationMobile = ({device, active}: DeviceEmulationMobileProps) => {\n const {deviceEmulationSettings, ...initialData} = React.useContext(EditorContext);\n const containerRef = React.useRef<HTMLDivElement | null>(null);\n const deviceIframeRef = React.useRef<DeviceIframe | null>(null);\n\n React.useEffect(() => {\n let iframe: DeviceIframe;\n\n if (containerRef?.current) {\n iframe = new DeviceIframe(containerRef?.current, {\n initialData,\n className: b('frame', {device}),\n settings: deviceEmulationSettings,\n });\n deviceIframeRef.current = iframe;\n }\n\n return () => {\n iframe?.destroy();\n };\n // render iframe only once, then update it's data with postMessage\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [device]);\n\n React.useEffect(() => {\n if (deviceIframeRef.current) {\n deviceIframeRef.current.onActivenessUpdate(active);\n }\n }, [active]);\n\n React.useEffect(() => {\n if (deviceIframeRef.current && initialData) {\n deviceIframeRef.current.onDataUpdate(initialData);\n }\n }, [initialData]);\n\n return <div className={b({active, device})} ref={containerRef} />;\n};\n\nexport default DeviceEmulationMobile;\n"]}
1
+ {"version":3,"file":"DeviceEmulationMobile.js","sourceRoot":"../../../../../../src","sources":["editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,KAAK,EAAC,mCAA0B;AACxC,OAAO,EAAC,aAAa,EAAC,4BAAyB;AAC/C,OAAO,EAAC,YAAY,EAAC,iCAAwB;AAG7C,OAAO,6BAA6B,CAAC;AAErC,MAAM,CAAC,GAAG,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAO3C,MAAM,qBAAqB,GAAG,CAAC,EAAC,MAAM,EAAE,MAAM,EAA6B,EAAE,EAAE;IAC3E,MAAM,EAAC,uBAAuB,EAAE,GAAG,WAAW,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAClF,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAwB,IAAI,CAAC,CAAC;IAC/D,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAsB,IAAI,CAAC,CAAC;IAEhE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,MAAoB,CAAC;QAEzB,IAAI,YAAY,EAAE,OAAO,EAAE,CAAC;YACxB,MAAM,GAAG,IAAI,YAAY,CAAC,YAAY,EAAE,OAAO,EAAE;gBAC7C,WAAW;gBACX,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,EAAC,MAAM,EAAC,CAAC;gBAC/B,QAAQ,EAAE,uBAAuB;aACpC,CAAC,CAAC;YACH,eAAe,CAAC,OAAO,GAAG,MAAM,CAAC;QACrC,CAAC;QAED,OAAO,GAAG,EAAE;YACR,MAAM,EAAE,OAAO,EAAE,CAAC;QACtB,CAAC,CAAC;QACF,kEAAkE;QAClE,uDAAuD;IAC3D,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;YAC1B,eAAe,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACvD,CAAC;IACL,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,eAAe,CAAC,OAAO,IAAI,WAAW,EAAE,CAAC;YACzC,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QACtD,CAAC;IACL,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO,cAAK,SAAS,EAAE,CAAC,CAAC,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC,EAAE,GAAG,EAAE,YAAY,GAAI,CAAC;AACtE,CAAC,CAAC;AAEF,eAAe,qBAAqB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {block} from '../../../../utils';\nimport {EditorContext} from '../../../context';\nimport {DeviceIframe} from '../../../widget';\nimport {MobileDevice} from '../utils';\n\nimport './DeviceEmulationMobile.scss';\n\nconst b = block('device-emulation-mobile');\n\ninterface DeviceEmulationMobileProps extends React.PropsWithChildren {\n device: MobileDevice;\n active: boolean;\n}\n\nconst DeviceEmulationMobile = ({device, active}: DeviceEmulationMobileProps) => {\n const {deviceEmulationSettings, ...initialData} = React.useContext(EditorContext);\n const containerRef = React.useRef<HTMLDivElement | null>(null);\n const deviceIframeRef = React.useRef<DeviceIframe | null>(null);\n\n React.useEffect(() => {\n let iframe: DeviceIframe;\n\n if (containerRef?.current) {\n iframe = new DeviceIframe(containerRef?.current, {\n initialData,\n className: b('frame', {device}),\n settings: deviceEmulationSettings,\n });\n deviceIframeRef.current = iframe;\n }\n\n return () => {\n iframe?.destroy();\n };\n // render iframe only once, then update it's data with postMessage\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [device]);\n\n React.useEffect(() => {\n if (deviceIframeRef.current) {\n deviceIframeRef.current.onActivenessUpdate(active);\n }\n }, [active]);\n\n React.useEffect(() => {\n if (deviceIframeRef.current && initialData) {\n deviceIframeRef.current.onDataUpdate(initialData);\n }\n }, [initialData]);\n\n return <div className={b({active, device})} ref={containerRef} />;\n};\n\nexport default DeviceEmulationMobile;\n"]}
@@ -38,10 +38,10 @@ const EditBlock = ({ actions, isActive, onSelect, isHeader, children, resetPaddi
38
38
  active: isActive,
39
39
  isHeader,
40
40
  'reset-paddings': resetPaddings,
41
- }), children: isActive && (_jsx("div", Object.assign({ className: b('controls-content') }, stopPropagationProps, { children: actionsOrder.map((action) => {
41
+ }), children: isActive && (_jsx("div", { className: b('controls-content'), ...stopPropagationProps, children: actionsOrder.map((action) => {
42
42
  const Icon = editBlockControlsIcons[action];
43
43
  return actions[action] ? (_jsx("button", { className: b('control'), onClick: actions[action], children: _jsx(Icon, {}) }, action)) : null;
44
- }) }))) }), children] }));
44
+ }) })) }), children] }));
45
45
  };
46
46
  export default React.memo(EditBlock);
47
47
  //# sourceMappingURL=EditBlock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EditBlock.js","sourceRoot":"../../../../../src","sources":["editor/components/EditBlock/EditBlock.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {ChevronDown, ChevronUp, Copy as CopyIcon, TrashBin} from '@gravity-ui/icons';\nimport {useActionHandlers} from '@gravity-ui/uikit';\n\nimport {block} from '../../../utils';\nimport {EditBlockProps} from '../../types';\n\nimport './EditBlock.scss';\n\nconst b = block('edit-block');\n\nexport enum EditBlockControls {\n Up = 'up',\n Down = 'down',\n Copy = 'copy',\n Delete = 'delete',\n}\n\nconst actionsOrder = [\n EditBlockControls.Up,\n EditBlockControls.Down,\n EditBlockControls.Copy,\n EditBlockControls.Delete,\n];\n\nconst editBlockControlsIcons = {\n [EditBlockControls.Up]: ChevronUp,\n [EditBlockControls.Down]: ChevronDown,\n [EditBlockControls.Copy]: CopyIcon,\n [EditBlockControls.Delete]: TrashBin,\n};\n\nexport type EditBlockActions = {\n [key in EditBlockControls]?: () => void;\n};\n\nconst EditBlock = ({\n actions,\n isActive,\n onSelect,\n isHeader,\n children,\n resetPaddings,\n}: EditBlockProps) => {\n const ref = React.useRef<HTMLDivElement>(null);\n\n const stopPropagationProps = React.useMemo(\n () => ({onClick: (e: React.MouseEvent) => e.stopPropagation()}),\n [],\n );\n\n const {onKeyDown} = useActionHandlers(onSelect);\n\n React.useEffect(() => {\n if (isActive && ref.current) {\n //TODO: add behavior 'smooth' after addiiton of dynamic form layout open/close managing support\n ref.current.scrollIntoView({block: 'center'});\n }\n }, [isActive]);\n\n return (\n <div\n className={b({active: isActive})}\n onClick={onSelect}\n onKeyDown={onKeyDown}\n ref={ref}\n role=\"button\"\n aria-current={isActive}\n tabIndex={0}\n >\n <div\n className={b('controls', {\n active: isActive,\n isHeader,\n 'reset-paddings': resetPaddings,\n })}\n >\n {isActive && (\n <div className={b('controls-content')} {...stopPropagationProps}>\n {actionsOrder.map((action) => {\n const Icon = editBlockControlsIcons[action];\n\n return actions[action] ? (\n <button\n key={action}\n className={b('control')}\n onClick={actions[action]}\n >\n <Icon />\n </button>\n ) : null;\n })}\n </div>\n )}\n </div>\n {children}\n </div>\n );\n};\n\nexport default React.memo(EditBlock);\n"]}
1
+ {"version":3,"file":"EditBlock.js","sourceRoot":"../../../../../src","sources":["editor/components/EditBlock/EditBlock.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {ChevronDown, ChevronUp, Copy as CopyIcon, TrashBin} from '@gravity-ui/icons';\nimport {useActionHandlers} from '@gravity-ui/uikit';\n\nimport {block} from '../../../utils';\nimport {EditBlockProps} from '../../types';\n\nimport './EditBlock.scss';\n\nconst b = block('edit-block');\n\nexport enum EditBlockControls {\n Up = 'up',\n Down = 'down',\n Copy = 'copy',\n Delete = 'delete',\n}\n\nconst actionsOrder = [\n EditBlockControls.Up,\n EditBlockControls.Down,\n EditBlockControls.Copy,\n EditBlockControls.Delete,\n];\n\nconst editBlockControlsIcons = {\n [EditBlockControls.Up]: ChevronUp,\n [EditBlockControls.Down]: ChevronDown,\n [EditBlockControls.Copy]: CopyIcon,\n [EditBlockControls.Delete]: TrashBin,\n};\n\nexport type EditBlockActions = {\n [key in EditBlockControls]?: () => void;\n};\n\nconst EditBlock = ({\n actions,\n isActive,\n onSelect,\n isHeader,\n children,\n resetPaddings,\n}: EditBlockProps) => {\n const ref = React.useRef<HTMLDivElement>(null);\n\n const stopPropagationProps = React.useMemo(\n () => ({onClick: (e: React.MouseEvent) => e.stopPropagation()}),\n [],\n );\n\n const {onKeyDown} = useActionHandlers(onSelect);\n\n React.useEffect(() => {\n if (isActive && ref.current) {\n //TODO: add behavior 'smooth' after addiiton of dynamic form layout open/close managing support\n ref.current.scrollIntoView({block: 'center'});\n }\n }, [isActive]);\n\n return (\n <div\n className={b({active: isActive})}\n onClick={onSelect}\n onKeyDown={onKeyDown}\n ref={ref}\n role=\"button\"\n aria-current={isActive}\n tabIndex={0}\n >\n <div\n className={b('controls', {\n active: isActive,\n isHeader,\n 'reset-paddings': resetPaddings,\n })}\n >\n {isActive && (\n <div className={b('controls-content')} {...stopPropagationProps}>\n {actionsOrder.map((action) => {\n const Icon = editBlockControlsIcons[action];\n\n return actions[action] ? (\n <button\n key={action}\n className={b('control')}\n onClick={actions[action]}\n >\n <Icon />\n </button>\n ) : null;\n })}\n </div>\n )}\n </div>\n {children}\n </div>\n );\n};\n\nexport default React.memo(EditBlock);\n"]}
@@ -6,12 +6,9 @@ import { i18n } from "./i18n/index.js";
6
6
  import './ErrorBoundary.css';
7
7
  const b = block('error-boundary');
8
8
  export class ErrorBoundary extends React.Component {
9
- constructor() {
10
- super(...arguments);
11
- this.state = {};
12
- }
9
+ state = {};
13
10
  componentDidCatch(error, info) {
14
- this.setState({ error: `${error.message} ${info === null || info === void 0 ? void 0 : info.componentStack}` });
11
+ this.setState({ error: `${error.message} ${info?.componentStack}` });
15
12
  }
16
13
  render() {
17
14
  const { type, index } = this.props;
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorBoundary.js","sourceRoot":"../../../../../src","sources":["editor/components/ErrorBoundary/ErrorBoundary.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,EAAC,UAAU,EAAC,6BAAoB;AAEvC,OAAO,EAAC,IAAI,EAAC,wBAAe;AAE5B,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAOlC,MAAM,OAAO,aAAc,SAAQ,KAAK,CAAC,SAAiD;IAA1F;;QACI,UAAK,GAAG,EAAwB,CAAC;IA6BrC,CAAC;IA3BG,iBAAiB,CAAC,KAAY,EAAE,IAAqB;QACjD,IAAI,CAAC,QAAQ,CAAC,EAAC,KAAK,EAAE,GAAG,KAAK,CAAC,OAAO,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,EAAE,EAAC,CAAC,CAAC;IACvE,CAAC;IAED,MAAM;QACF,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QACjC,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,MAAM,MAAM,GAAG,IAAI;YACf,CAAC,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAC,EAAE,EAAE,UAAU,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,CAAC,EAAC,CAAC;YAC7D,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAEhC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,EAAE,YACf,eAAK,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,aAC1B,cAAK,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,GAAI,EAC9B,eAAK,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,aACxB,aAAI,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAG,MAAM,GAAM,EACzC,eAAM,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,YAAG,KAAK,GAAQ,IACzC,IACJ,GACJ,CACT,CAAC;QACN,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC/B,CAAC;CACJ","sourcesContent":["import * as React from 'react';\n\nimport {BlockDecorationProps} from '../../../models';\nimport {block} from '../../../utils';\nimport {getBlockId} from '../../utils';\n\nimport {i18n} from './i18n';\n\nimport './ErrorBoundary.scss';\n\nconst b = block('error-boundary');\n\ninterface ErrorBoundaryProps extends React.PropsWithChildren, Partial<BlockDecorationProps> {}\ninterface ErrorBoundaryState {\n error?: string;\n}\n\nexport class ErrorBoundary extends React.Component<ErrorBoundaryProps, ErrorBoundaryState> {\n state = {} as ErrorBoundaryState;\n\n componentDidCatch(error: Error, info: React.ErrorInfo) {\n this.setState({error: `${error.message} ${info?.componentStack}`});\n }\n\n render() {\n const {type, index} = this.props;\n const {error} = this.state;\n const header = type\n ? i18n('error-block-header', {id: getBlockId({type, index})})\n : i18n('error-page-header');\n\n if (this.state.error) {\n return (\n <div className={b()}>\n <div className={b('container')}>\n <div className={b('image')} />\n <div className={b('content')}>\n <h2 className={b('header')}>{header}</h2>\n <code className={b('error')}>{error}</code>\n </div>\n </div>\n </div>\n );\n }\n\n return this.props.children;\n }\n}\n"]}
1
+ {"version":3,"file":"ErrorBoundary.js","sourceRoot":"../../../../../src","sources":["editor/components/ErrorBoundary/ErrorBoundary.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,EAAC,UAAU,EAAC,6BAAoB;AAEvC,OAAO,EAAC,IAAI,EAAC,wBAAe;AAE5B,OAAO,qBAAqB,CAAC;AAE7B,MAAM,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAOlC,MAAM,OAAO,aAAc,SAAQ,KAAK,CAAC,SAAiD;IACtF,KAAK,GAAG,EAAwB,CAAC;IAEjC,iBAAiB,CAAC,KAAY,EAAE,IAAqB;QACjD,IAAI,CAAC,QAAQ,CAAC,EAAC,KAAK,EAAE,GAAG,KAAK,CAAC,OAAO,IAAI,IAAI,EAAE,cAAc,EAAE,EAAC,CAAC,CAAC;IACvE,CAAC;IAED,MAAM;QACF,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QACjC,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,MAAM,MAAM,GAAG,IAAI;YACf,CAAC,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAC,EAAE,EAAE,UAAU,CAAC,EAAC,IAAI,EAAE,KAAK,EAAC,CAAC,EAAC,CAAC;YAC7D,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAEhC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,EAAE,YACf,eAAK,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,aAC1B,cAAK,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,GAAI,EAC9B,eAAK,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,aACxB,aAAI,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAG,MAAM,GAAM,EACzC,eAAM,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,YAAG,KAAK,GAAQ,IACzC,IACJ,GACJ,CACT,CAAC;QACN,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC/B,CAAC;CACJ","sourcesContent":["import * as React from 'react';\n\nimport {BlockDecorationProps} from '../../../models';\nimport {block} from '../../../utils';\nimport {getBlockId} from '../../utils';\n\nimport {i18n} from './i18n';\n\nimport './ErrorBoundary.scss';\n\nconst b = block('error-boundary');\n\ninterface ErrorBoundaryProps extends React.PropsWithChildren, Partial<BlockDecorationProps> {}\ninterface ErrorBoundaryState {\n error?: string;\n}\n\nexport class ErrorBoundary extends React.Component<ErrorBoundaryProps, ErrorBoundaryState> {\n state = {} as ErrorBoundaryState;\n\n componentDidCatch(error: Error, info: React.ErrorInfo) {\n this.setState({error: `${error.message} ${info?.componentStack}`});\n }\n\n render() {\n const {type, index} = this.props;\n const {error} = this.state;\n const header = type\n ? i18n('error-block-header', {id: getBlockId({type, index})})\n : i18n('error-page-header');\n\n if (this.state.error) {\n return (\n <div className={b()}>\n <div className={b('container')}>\n <div className={b('image')} />\n <div className={b('content')}>\n <h2 className={b('header')}>{header}</h2>\n <code className={b('error')}>{error}</code>\n </div>\n </div>\n </div>\n );\n }\n\n return this.props.children;\n }\n}\n"]}
@@ -12,12 +12,12 @@ const Layout = ({ children, editMode, viewMode }) => {
12
12
  let left, right;
13
13
  const isEditingMode = editMode === EditModeItem.Form;
14
14
  function handleChild(child) {
15
- switch (child === null || child === void 0 ? void 0 : child.type) {
15
+ switch (child?.type) {
16
16
  case Left:
17
- left = child === null || child === void 0 ? void 0 : child.props.children;
17
+ left = child?.props.children;
18
18
  break;
19
19
  case Right:
20
- right = child === null || child === void 0 ? void 0 : child.props.children;
20
+ right = child?.props.children;
21
21
  break;
22
22
  }
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Layout.js","sourceRoot":"../../../../../src","sources":["editor/components/Layout/Layout.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,EAAC,YAAY,EAAe,6BAAoB;AACvD,OAAO,eAAe,8CAA2C;AAEjE,OAAO,cAAc,CAAC;AAEtB,MAAM,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;AAEjC,MAAM,IAAI,GAAsC,GAAG,EAAE,CAAC,IAAI,CAAC;AAC3D,MAAM,KAAK,GAAsC,GAAG,EAAE,CAAC,IAAI,CAAC;AAO5D,uGAAuG;AAEvG,MAAM,MAAM,GAAG,CAAC,EAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAuC,EAAE,EAAE;IACpF,IAAI,IAAI,EAAE,KAAK,CAAC;IAChB,MAAM,aAAa,GAAG,QAAQ,KAAK,YAAY,CAAC,IAAI,CAAC;IAErD,SAAS,WAAW,CAAC,KAAyB;QAC1C,QAAQ,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAAE,CAAC;YAClB,KAAK,IAAI;gBACL,IAAI,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,QAAQ,CAAC;gBAC7B,MAAM;YACV,KAAK,KAAK;gBACN,KAAK,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,QAAQ,CAAC;gBAC9B,MAAM;QACd,CAAC;IACL,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1C,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAA8B,EAAE,WAAW,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,YAC1B,MAAC,KAAK,CAAC,QAAQ,eACV,IAAI,IAAI,cAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAAG,IAAI,GAAO,EAC/C,KAAK,IAAI,CACN,cAAK,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE,aAAa,EAAC,CAAC,YAChD,KAAC,eAAe,IAAC,IAAI,EAAE,QAAQ,YAAG,KAAK,GAAmB,GACxD,CACT,IACY,GACf,CACT,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;AACnB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;AAErB,eAAe,MAAM,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {block} from '../../../utils';\nimport {EditModeItem, ViewModeItem} from '../../types';\nimport DeviceEmulation from '../DeviceEmulation/DeviceEmulation';\n\nimport './Layout.scss';\n\nconst b = block('editor-layout');\n\nconst Left: React.FC<React.PropsWithChildren> = () => null;\nconst Right: React.FC<React.PropsWithChildren> = () => null;\n\nexport interface LayoutProps {\n editMode: EditModeItem;\n viewMode: ViewModeItem;\n}\n\n// TODO in https://github.com/gravity-ui/page-constructor/issues/884 this component will be disappeared\n\nconst Layout = ({children, editMode, viewMode}: React.PropsWithChildren<LayoutProps>) => {\n let left, right;\n const isEditingMode = editMode === EditModeItem.Form;\n\n function handleChild(child: React.ReactElement) {\n switch (child?.type) {\n case Left:\n left = child?.props.children;\n break;\n case Right:\n right = child?.props.children;\n break;\n }\n }\n\n if (React.Children.toArray(children).length) {\n React.Children.forEach(children as React.ReactElement, handleChild);\n }\n\n return (\n <div className={b('container')}>\n <React.Fragment>\n {left && <div className={b('left')}>{left}</div>}\n {right && (\n <div className={b('right', {editing: isEditingMode})}>\n <DeviceEmulation mode={viewMode}>{right}</DeviceEmulation>\n </div>\n )}\n </React.Fragment>\n </div>\n );\n};\n\nLayout.Left = Left;\nLayout.Right = Right;\n\nexport default Layout;\n"]}
1
+ {"version":3,"file":"Layout.js","sourceRoot":"../../../../../src","sources":["editor/components/Layout/Layout.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,EAAC,YAAY,EAAe,6BAAoB;AACvD,OAAO,eAAe,8CAA2C;AAEjE,OAAO,cAAc,CAAC;AAEtB,MAAM,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;AAEjC,MAAM,IAAI,GAAsC,GAAG,EAAE,CAAC,IAAI,CAAC;AAC3D,MAAM,KAAK,GAAsC,GAAG,EAAE,CAAC,IAAI,CAAC;AAO5D,uGAAuG;AAEvG,MAAM,MAAM,GAAG,CAAC,EAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAuC,EAAE,EAAE;IACpF,IAAI,IAAI,EAAE,KAAK,CAAC;IAChB,MAAM,aAAa,GAAG,QAAQ,KAAK,YAAY,CAAC,IAAI,CAAC;IAErD,SAAS,WAAW,CAAC,KAAyB;QAC1C,QAAQ,KAAK,EAAE,IAAI,EAAE,CAAC;YAClB,KAAK,IAAI;gBACL,IAAI,GAAG,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC;gBAC7B,MAAM;YACV,KAAK,KAAK;gBACN,KAAK,GAAG,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC;gBAC9B,MAAM;QACd,CAAC;IACL,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1C,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAA8B,EAAE,WAAW,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,YAC1B,MAAC,KAAK,CAAC,QAAQ,eACV,IAAI,IAAI,cAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YAAG,IAAI,GAAO,EAC/C,KAAK,IAAI,CACN,cAAK,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE,aAAa,EAAC,CAAC,YAChD,KAAC,eAAe,IAAC,IAAI,EAAE,QAAQ,YAAG,KAAK,GAAmB,GACxD,CACT,IACY,GACf,CACT,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;AACnB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;AAErB,eAAe,MAAM,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {block} from '../../../utils';\nimport {EditModeItem, ViewModeItem} from '../../types';\nimport DeviceEmulation from '../DeviceEmulation/DeviceEmulation';\n\nimport './Layout.scss';\n\nconst b = block('editor-layout');\n\nconst Left: React.FC<React.PropsWithChildren> = () => null;\nconst Right: React.FC<React.PropsWithChildren> = () => null;\n\nexport interface LayoutProps {\n editMode: EditModeItem;\n viewMode: ViewModeItem;\n}\n\n// TODO in https://github.com/gravity-ui/page-constructor/issues/884 this component will be disappeared\n\nconst Layout = ({children, editMode, viewMode}: React.PropsWithChildren<LayoutProps>) => {\n let left, right;\n const isEditingMode = editMode === EditModeItem.Form;\n\n function handleChild(child: React.ReactElement) {\n switch (child?.type) {\n case Left:\n left = child?.props.children;\n break;\n case Right:\n right = child?.props.children;\n break;\n }\n }\n\n if (React.Children.toArray(children).length) {\n React.Children.forEach(children as React.ReactElement, handleChild);\n }\n\n return (\n <div className={b('container')}>\n <React.Fragment>\n {left && <div className={b('left')}>{left}</div>}\n {right && (\n <div className={b('right', {editing: isEditingMode})}>\n <DeviceEmulation mode={viewMode}>{right}</DeviceEmulation>\n </div>\n )}\n </React.Fragment>\n </div>\n );\n};\n\nLayout.Left = Left;\nLayout.Right = Right;\n\nexport default Layout;\n"]}
@@ -1,4 +1,3 @@
1
- import { __rest } from "tslib";
2
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
2
  import * as React from 'react';
4
3
  import { DynamicField } from '@gravity-ui/dynamic-forms';
@@ -15,11 +14,11 @@ export const PageSettings = ({ schema, content, onChange }) => {
15
14
  const spec = useFormSpec(schema);
16
15
  const { page: pageSpec } = spec || {};
17
16
  const initialPage = React.useMemo(() => {
18
- const _a = content || {}, { blocks: _ } = _a, page = __rest(_a, ["blocks"]);
17
+ const { blocks: _, ...page } = content || {};
19
18
  return page;
20
19
  // eslint-disable-next-line react-hooks/exhaustive-deps
21
20
  }, []);
22
- return (_jsx(Disclosure, { className: b('container'), summary: i18n('page-settings-title'), size: "l", children: _jsx("div", { className: b('form'), children: _jsx(FinalForm, { initialValues: { content: initialPage }, onSubmit: noop, children: () => (_jsxs("div", { children: [_jsx(FormSpy, { onChange: ({ values }) => onChange(Object.assign(Object.assign({}, content), values.content)), subscription: { values: true } }), _jsx(DynamicField, { name: "content", spec: pageSpec, config: dynamicConfig })] })) }) }) }));
21
+ return (_jsx(Disclosure, { className: b('container'), summary: i18n('page-settings-title'), size: "l", children: _jsx("div", { className: b('form'), children: _jsx(FinalForm, { initialValues: { content: initialPage }, onSubmit: noop, children: () => (_jsxs("div", { children: [_jsx(FormSpy, { onChange: ({ values }) => onChange({ ...content, ...values.content }), subscription: { values: true } }), _jsx(DynamicField, { name: "content", spec: pageSpec, config: dynamicConfig })] })) }) }) }));
23
22
  };
24
23
  PageSettings.displayName = 'PageSettings';
25
24
  //# sourceMappingURL=PageSettings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PageSettings.js","sourceRoot":"../../../../../src","sources":["editor/components/PageSettings/PageSettings.tsx"],"names":[],"mappings":";;AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,YAAY,EAAO,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAE7C,OAAO,IAAI,uBAAoB;AAC/B,OAAO,EAAC,IAAI,IAAI,SAAS,EAAE,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAG5D,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,EAAC,aAAa,EAAC,6CAA0C;AAChE,OAAO,WAAW,mCAAgC;AAElD,OAAO,EAAC,IAAI,EAAC,wBAAe;AAE5B,OAAO,oBAAoB,CAAC;AAE5B,MAAM,CAAC,GAAG,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAQxC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAoB,EAAE,EAAE;IAC3E,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,EAAC,IAAI,EAAE,QAAQ,EAAC,GAAG,IAAI,IAAI,EAAE,CAAC;IAEpC,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACnC,MAAM,KAAuB,OAAO,IAAI,EAAE,EAApC,EAAC,MAAM,EAAE,CAAC,OAA0B,EAArB,IAAI,cAAnB,UAAoB,CAAgB,CAAC;QAE3C,OAAO,IAAI,CAAC;QACZ,uDAAuD;IAC3D,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACH,KAAC,UAAU,IAAC,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAC,GAAG,YACjF,cAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YACrB,KAAC,SAAS,IAAC,aAAa,EAAE,EAAC,OAAO,EAAE,WAAW,EAAC,EAAE,QAAQ,EAAE,IAAI,YAC3D,GAAG,EAAE,CAAC,CACH,0BACI,KAAC,OAAO,IACJ,QAAQ,EAAE,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE,CAAC,QAAQ,iCAAK,OAAO,GAAK,MAAM,CAAC,OAAO,EAAE,EACjE,YAAY,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,GAC9B,EACF,KAAC,YAAY,IACT,IAAI,EAAC,SAAS,EACd,IAAI,EAAE,QAAgB,EACtB,MAAM,EAAE,aAAa,GACvB,IACA,CACT,GACO,GACV,GACG,CAChB,CAAC;AACN,CAAC,CAAC;AAEF,YAAY,CAAC,WAAW,GAAG,cAAc,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {DynamicField, Spec} from '@gravity-ui/dynamic-forms';\nimport {Disclosure} from '@gravity-ui/uikit';\nimport {JSONSchema4} from 'json-schema';\nimport noop from 'lodash/noop';\nimport {Form as FinalForm, FormSpy} from 'react-final-form';\n\nimport {PageContent} from '../../../models';\nimport {block} from '../../../utils';\nimport {dynamicConfig} from '../../dynamic-forms-custom/config';\nimport useFormSpec from '../../hooks/useFormSpec';\n\nimport {i18n} from './i18n';\n\nimport './PageSettings.scss';\n\nconst b = block('editor-page-settings');\n\nexport interface PageSettingsProps {\n content: PageContent;\n schema: JSONSchema4;\n onChange: (content: PageContent) => void;\n}\n\nexport const PageSettings = ({schema, content, onChange}: PageSettingsProps) => {\n const spec = useFormSpec(schema);\n const {page: pageSpec} = spec || {};\n\n const initialPage = React.useMemo(() => {\n const {blocks: _, ...page} = content || {};\n\n return page;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <Disclosure className={b('container')} summary={i18n('page-settings-title')} size=\"l\">\n <div className={b('form')}>\n <FinalForm initialValues={{content: initialPage}} onSubmit={noop}>\n {() => (\n <div>\n <FormSpy\n onChange={({values}) => onChange({...content, ...values.content})}\n subscription={{values: true}}\n />\n <DynamicField\n name=\"content\"\n spec={pageSpec as Spec}\n config={dynamicConfig}\n />\n </div>\n )}\n </FinalForm>\n </div>\n </Disclosure>\n );\n};\n\nPageSettings.displayName = 'PageSettings';\n"]}
1
+ {"version":3,"file":"PageSettings.js","sourceRoot":"../../../../../src","sources":["editor/components/PageSettings/PageSettings.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,YAAY,EAAO,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAE7C,OAAO,IAAI,uBAAoB;AAC/B,OAAO,EAAC,IAAI,IAAI,SAAS,EAAE,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAG5D,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,EAAC,aAAa,EAAC,6CAA0C;AAChE,OAAO,WAAW,mCAAgC;AAElD,OAAO,EAAC,IAAI,EAAC,wBAAe;AAE5B,OAAO,oBAAoB,CAAC;AAE5B,MAAM,CAAC,GAAG,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAQxC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAoB,EAAE,EAAE;IAC3E,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,EAAC,IAAI,EAAE,QAAQ,EAAC,GAAG,IAAI,IAAI,EAAE,CAAC;IAEpC,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACnC,MAAM,EAAC,MAAM,EAAE,CAAC,EAAE,GAAG,IAAI,EAAC,GAAG,OAAO,IAAI,EAAE,CAAC;QAE3C,OAAO,IAAI,CAAC;QACZ,uDAAuD;IAC3D,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACH,KAAC,UAAU,IAAC,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAC,GAAG,YACjF,cAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YACrB,KAAC,SAAS,IAAC,aAAa,EAAE,EAAC,OAAO,EAAE,WAAW,EAAC,EAAE,QAAQ,EAAE,IAAI,YAC3D,GAAG,EAAE,CAAC,CACH,0BACI,KAAC,OAAO,IACJ,QAAQ,EAAE,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAC,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,EAAC,CAAC,EACjE,YAAY,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,GAC9B,EACF,KAAC,YAAY,IACT,IAAI,EAAC,SAAS,EACd,IAAI,EAAE,QAAgB,EACtB,MAAM,EAAE,aAAa,GACvB,IACA,CACT,GACO,GACV,GACG,CAChB,CAAC;AACN,CAAC,CAAC;AAEF,YAAY,CAAC,WAAW,GAAG,cAAc,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {DynamicField, Spec} from '@gravity-ui/dynamic-forms';\nimport {Disclosure} from '@gravity-ui/uikit';\nimport {JSONSchema4} from 'json-schema';\nimport noop from 'lodash/noop';\nimport {Form as FinalForm, FormSpy} from 'react-final-form';\n\nimport {PageContent} from '../../../models';\nimport {block} from '../../../utils';\nimport {dynamicConfig} from '../../dynamic-forms-custom/config';\nimport useFormSpec from '../../hooks/useFormSpec';\n\nimport {i18n} from './i18n';\n\nimport './PageSettings.scss';\n\nconst b = block('editor-page-settings');\n\nexport interface PageSettingsProps {\n content: PageContent;\n schema: JSONSchema4;\n onChange: (content: PageContent) => void;\n}\n\nexport const PageSettings = ({schema, content, onChange}: PageSettingsProps) => {\n const spec = useFormSpec(schema);\n const {page: pageSpec} = spec || {};\n\n const initialPage = React.useMemo(() => {\n const {blocks: _, ...page} = content || {};\n\n return page;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <Disclosure className={b('container')} summary={i18n('page-settings-title')} size=\"l\">\n <div className={b('form')}>\n <FinalForm initialValues={{content: initialPage}} onSubmit={noop}>\n {() => (\n <div>\n <FormSpy\n onChange={({values}) => onChange({...content, ...values.content})}\n subscription={{values: true}}\n />\n <DynamicField\n name=\"content\"\n spec={pageSpec as Spec}\n config={dynamicConfig}\n />\n </div>\n )}\n </FinalForm>\n </div>\n </Disclosure>\n );\n};\n\nPageSettings.displayName = 'PageSettings';\n"]}
@@ -15,6 +15,6 @@ const b = block('editor');
15
15
  export const Editor = (props) => {
16
16
  const { providerProps } = props;
17
17
  const { context, viewMode, editMode, constructorTheme, onThemeUpdate, onViewModeUpdate, onEditModeUpdate, isCodeEditMode, isFormEditMode, isDesktopViewMode, content, schema, onContentUpdate, code, codeValidator, codeFullscreeModeOn, onCodeFullscreeModeOnUpdate, activeBlockIndex, onSelect, isCodeOnlyMode, errorBoundaryState, outgoingProps, onAdd, } = useEditorState(props);
18
- return (_jsxs(EditorContext.Provider, { value: context, children: [_jsx(ControlPanel, { viewMode: viewMode, onViewModeChange: onViewModeUpdate, editMode: editMode, onEditModeChange: onEditModeUpdate, theme: constructorTheme, className: b('panel'), onThemeChange: onThemeUpdate }), isFormEditMode && isDesktopViewMode && (_jsx(PageSettings, { content: content, schema: schema, onChange: onContentUpdate })), isCodeEditMode && (_jsx(CodeEditor, { code: code, onChange: onContentUpdate, validator: codeValidator, fullscreenModeOn: codeFullscreeModeOn, onFullscreenModeOnUpdate: onCodeFullscreeModeOnUpdate })), _jsxs(Layout, { editMode: editMode, viewMode: viewMode, children: [isFormEditMode && isDesktopViewMode && (_jsx(Layout.Left, { children: _jsx(Form, { content: content, onChange: onContentUpdate, activeBlockIndex: activeBlockIndex, schema: schema, onSelect: onSelect }) })), !isCodeOnlyMode && (_jsxs(Layout.Right, { children: [_jsx(ErrorBoundary, { children: _jsx(PageConstructorProvider, Object.assign({}, providerProps, { theme: constructorTheme, children: _jsx(PageConstructor, Object.assign({}, outgoingProps)) })) }, errorBoundaryState), isFormEditMode && _jsx(AddBlock, { onAdd: onAdd })] }))] })] }));
18
+ return (_jsxs(EditorContext.Provider, { value: context, children: [_jsx(ControlPanel, { viewMode: viewMode, onViewModeChange: onViewModeUpdate, editMode: editMode, onEditModeChange: onEditModeUpdate, theme: constructorTheme, className: b('panel'), onThemeChange: onThemeUpdate }), isFormEditMode && isDesktopViewMode && (_jsx(PageSettings, { content: content, schema: schema, onChange: onContentUpdate })), isCodeEditMode && (_jsx(CodeEditor, { code: code, onChange: onContentUpdate, validator: codeValidator, fullscreenModeOn: codeFullscreeModeOn, onFullscreenModeOnUpdate: onCodeFullscreeModeOnUpdate })), _jsxs(Layout, { editMode: editMode, viewMode: viewMode, children: [isFormEditMode && isDesktopViewMode && (_jsx(Layout.Left, { children: _jsx(Form, { content: content, onChange: onContentUpdate, activeBlockIndex: activeBlockIndex, schema: schema, onSelect: onSelect }) })), !isCodeOnlyMode && (_jsxs(Layout.Right, { children: [_jsx(ErrorBoundary, { children: _jsx(PageConstructorProvider, { ...providerProps, theme: constructorTheme, children: _jsx(PageConstructor, { ...outgoingProps }) }) }, errorBoundaryState), isFormEditMode && _jsx(AddBlock, { onAdd: onAdd })] }))] })] }));
19
19
  };
20
20
  //# sourceMappingURL=Editor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Editor.js","sourceRoot":"../../../../../src","sources":["editor/containers/Editor/Editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,eAAe,EAAE,uBAAuB,EAAC,qDAA4C;AAC7F,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,QAAQ,8CAA2C;AAC1D,OAAO,EAAC,UAAU,EAAC,kDAA+C;AAClE,OAAO,YAAY,sDAAmD;AACtE,OAAO,EAAC,aAAa,EAAC,wDAAqD;AAC3E,OAAO,MAAM,0CAAuC;AACpD,OAAO,EAAC,YAAY,EAAC,sDAAmD;AACxE,OAAO,EAAC,aAAa,EAAC,yBAAsB;AAE5C,OAAO,EAAC,IAAI,EAAC,wBAAqB;AAElC,OAAO,EAAC,cAAc,EAAC,kCAA+B;AAEtD,OAAO,cAAc,CAAC;AAEtB,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAkB,EAAE,EAAE;IACzC,MAAM,EAAC,aAAa,EAAC,GAAG,KAAK,CAAC;IAE9B,MAAM,EACF,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,OAAO,EACP,MAAM,EACN,eAAe,EACf,IAAI,EACJ,aAAa,EACb,mBAAmB,EACnB,2BAA2B,EAC3B,gBAAgB,EAChB,QAAQ,EACR,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,KAAK,GACR,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAE1B,OAAO,CACH,MAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO,aAClC,KAAC,YAAY,IACT,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,EAAE,gBAAgB,EACvB,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,EACrB,aAAa,EAAE,aAAa,GAC9B,EACD,cAAc,IAAI,iBAAiB,IAAI,CACpC,KAAC,YAAY,IAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAI,CAChF,EACA,cAAc,IAAI,CACf,KAAC,UAAU,IACP,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,aAAa,EACxB,gBAAgB,EAAE,mBAAmB,EACrC,wBAAwB,EAAE,2BAA2B,GACvD,CACL,EACD,MAAC,MAAM,IAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,aACzC,cAAc,IAAI,iBAAiB,IAAI,CACpC,KAAC,MAAM,CAAC,IAAI,cACR,KAAC,IAAI,IACD,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,eAAe,EACzB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,GACpB,GACQ,CACjB,EACA,CAAC,cAAc,IAAI,CAChB,MAAC,MAAM,CAAC,KAAK,eACT,KAAC,aAAa,cACV,KAAC,uBAAuB,oBAAK,aAAa,IAAE,KAAK,EAAE,gBAAgB,YAC/D,KAAC,eAAe,oBAAK,aAAa,EAAI,IAChB,IAHV,kBAAkB,CAItB,EACf,cAAc,IAAI,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI,IAClC,CAClB,IACI,IACY,CAC5B,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {PageConstructor, PageConstructorProvider} from '../../../containers/PageConstructor';\nimport {block} from '../../../utils';\nimport AddBlock from '../../components/AddBlock/AddBlock';\nimport {CodeEditor} from '../../components/CodeEditor/CodeEditor';\nimport ControlPanel from '../../components/ControlPanel/ControlPanel';\nimport {ErrorBoundary} from '../../components/ErrorBoundary/ErrorBoundary';\nimport Layout from '../../components/Layout/Layout';\nimport {PageSettings} from '../../components/PageSettings/PageSettings';\nimport {EditorContext} from '../../context';\nimport {EditorProps} from '../../types';\nimport {Form} from '../Form/Form';\n\nimport {useEditorState} from './hooks/useEditorState';\n\nimport './Editor.scss';\n\nconst b = block('editor');\n\nexport const Editor = (props: EditorProps) => {\n const {providerProps} = props;\n\n const {\n context,\n viewMode,\n editMode,\n constructorTheme,\n onThemeUpdate,\n onViewModeUpdate,\n onEditModeUpdate,\n isCodeEditMode,\n isFormEditMode,\n isDesktopViewMode,\n content,\n schema,\n onContentUpdate,\n code,\n codeValidator,\n codeFullscreeModeOn,\n onCodeFullscreeModeOnUpdate,\n activeBlockIndex,\n onSelect,\n isCodeOnlyMode,\n errorBoundaryState,\n outgoingProps,\n onAdd,\n } = useEditorState(props);\n\n return (\n <EditorContext.Provider value={context}>\n <ControlPanel\n viewMode={viewMode}\n onViewModeChange={onViewModeUpdate}\n editMode={editMode}\n onEditModeChange={onEditModeUpdate}\n theme={constructorTheme}\n className={b('panel')}\n onThemeChange={onThemeUpdate}\n />\n {isFormEditMode && isDesktopViewMode && (\n <PageSettings content={content} schema={schema} onChange={onContentUpdate} />\n )}\n {isCodeEditMode && (\n <CodeEditor\n code={code}\n onChange={onContentUpdate}\n validator={codeValidator}\n fullscreenModeOn={codeFullscreeModeOn}\n onFullscreenModeOnUpdate={onCodeFullscreeModeOnUpdate}\n />\n )}\n <Layout editMode={editMode} viewMode={viewMode}>\n {isFormEditMode && isDesktopViewMode && (\n <Layout.Left>\n <Form\n content={content}\n onChange={onContentUpdate}\n activeBlockIndex={activeBlockIndex}\n schema={schema}\n onSelect={onSelect}\n />\n </Layout.Left>\n )}\n {!isCodeOnlyMode && (\n <Layout.Right>\n <ErrorBoundary key={errorBoundaryState}>\n <PageConstructorProvider {...providerProps} theme={constructorTheme}>\n <PageConstructor {...outgoingProps} />\n </PageConstructorProvider>\n </ErrorBoundary>\n {isFormEditMode && <AddBlock onAdd={onAdd} />}\n </Layout.Right>\n )}\n </Layout>\n </EditorContext.Provider>\n );\n};\n"]}
1
+ {"version":3,"file":"Editor.js","sourceRoot":"../../../../../src","sources":["editor/containers/Editor/Editor.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,eAAe,EAAE,uBAAuB,EAAC,qDAA4C;AAC7F,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,QAAQ,8CAA2C;AAC1D,OAAO,EAAC,UAAU,EAAC,kDAA+C;AAClE,OAAO,YAAY,sDAAmD;AACtE,OAAO,EAAC,aAAa,EAAC,wDAAqD;AAC3E,OAAO,MAAM,0CAAuC;AACpD,OAAO,EAAC,YAAY,EAAC,sDAAmD;AACxE,OAAO,EAAC,aAAa,EAAC,yBAAsB;AAE5C,OAAO,EAAC,IAAI,EAAC,wBAAqB;AAElC,OAAO,EAAC,cAAc,EAAC,kCAA+B;AAEtD,OAAO,cAAc,CAAC;AAEtB,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAkB,EAAE,EAAE;IACzC,MAAM,EAAC,aAAa,EAAC,GAAG,KAAK,CAAC;IAE9B,MAAM,EACF,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,OAAO,EACP,MAAM,EACN,eAAe,EACf,IAAI,EACJ,aAAa,EACb,mBAAmB,EACnB,2BAA2B,EAC3B,gBAAgB,EAChB,QAAQ,EACR,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,KAAK,GACR,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAE1B,OAAO,CACH,MAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO,aAClC,KAAC,YAAY,IACT,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,EAAE,gBAAgB,EACvB,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,EACrB,aAAa,EAAE,aAAa,GAC9B,EACD,cAAc,IAAI,iBAAiB,IAAI,CACpC,KAAC,YAAY,IAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAI,CAChF,EACA,cAAc,IAAI,CACf,KAAC,UAAU,IACP,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,aAAa,EACxB,gBAAgB,EAAE,mBAAmB,EACrC,wBAAwB,EAAE,2BAA2B,GACvD,CACL,EACD,MAAC,MAAM,IAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,aACzC,cAAc,IAAI,iBAAiB,IAAI,CACpC,KAAC,MAAM,CAAC,IAAI,cACR,KAAC,IAAI,IACD,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,eAAe,EACzB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,GACpB,GACQ,CACjB,EACA,CAAC,cAAc,IAAI,CAChB,MAAC,MAAM,CAAC,KAAK,eACT,KAAC,aAAa,cACV,KAAC,uBAAuB,OAAK,aAAa,EAAE,KAAK,EAAE,gBAAgB,YAC/D,KAAC,eAAe,OAAK,aAAa,GAAI,GAChB,IAHV,kBAAkB,CAItB,EACf,cAAc,IAAI,KAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAI,IAClC,CAClB,IACI,IACY,CAC5B,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {PageConstructor, PageConstructorProvider} from '../../../containers/PageConstructor';\nimport {block} from '../../../utils';\nimport AddBlock from '../../components/AddBlock/AddBlock';\nimport {CodeEditor} from '../../components/CodeEditor/CodeEditor';\nimport ControlPanel from '../../components/ControlPanel/ControlPanel';\nimport {ErrorBoundary} from '../../components/ErrorBoundary/ErrorBoundary';\nimport Layout from '../../components/Layout/Layout';\nimport {PageSettings} from '../../components/PageSettings/PageSettings';\nimport {EditorContext} from '../../context';\nimport {EditorProps} from '../../types';\nimport {Form} from '../Form/Form';\n\nimport {useEditorState} from './hooks/useEditorState';\n\nimport './Editor.scss';\n\nconst b = block('editor');\n\nexport const Editor = (props: EditorProps) => {\n const {providerProps} = props;\n\n const {\n context,\n viewMode,\n editMode,\n constructorTheme,\n onThemeUpdate,\n onViewModeUpdate,\n onEditModeUpdate,\n isCodeEditMode,\n isFormEditMode,\n isDesktopViewMode,\n content,\n schema,\n onContentUpdate,\n code,\n codeValidator,\n codeFullscreeModeOn,\n onCodeFullscreeModeOnUpdate,\n activeBlockIndex,\n onSelect,\n isCodeOnlyMode,\n errorBoundaryState,\n outgoingProps,\n onAdd,\n } = useEditorState(props);\n\n return (\n <EditorContext.Provider value={context}>\n <ControlPanel\n viewMode={viewMode}\n onViewModeChange={onViewModeUpdate}\n editMode={editMode}\n onEditModeChange={onEditModeUpdate}\n theme={constructorTheme}\n className={b('panel')}\n onThemeChange={onThemeUpdate}\n />\n {isFormEditMode && isDesktopViewMode && (\n <PageSettings content={content} schema={schema} onChange={onContentUpdate} />\n )}\n {isCodeEditMode && (\n <CodeEditor\n code={code}\n onChange={onContentUpdate}\n validator={codeValidator}\n fullscreenModeOn={codeFullscreeModeOn}\n onFullscreenModeOnUpdate={onCodeFullscreeModeOnUpdate}\n />\n )}\n <Layout editMode={editMode} viewMode={viewMode}>\n {isFormEditMode && isDesktopViewMode && (\n <Layout.Left>\n <Form\n content={content}\n onChange={onContentUpdate}\n activeBlockIndex={activeBlockIndex}\n schema={schema}\n onSelect={onSelect}\n />\n </Layout.Left>\n )}\n {!isCodeOnlyMode && (\n <Layout.Right>\n <ErrorBoundary key={errorBoundaryState}>\n <PageConstructorProvider {...providerProps} theme={constructorTheme}>\n <PageConstructor {...outgoingProps} />\n </PageConstructorProvider>\n </ErrorBoundary>\n {isFormEditMode && <AddBlock onAdd={onAdd} />}\n </Layout.Right>\n )}\n </Layout>\n </EditorContext.Provider>\n );\n};\n"]}
@@ -8,13 +8,11 @@ import usePreviousValue from "../../../hooks/usePreviousValue.js";
8
8
  * @returns {string} - updated code
9
9
  */
10
10
  export function useCode({ content, codeFullscreeModeOn, isCodeEditMode }) {
11
- var _a;
12
11
  const [code, setCode] = React.useState('');
13
- const prevContentLength = usePreviousValue((_a = content.blocks) === null || _a === void 0 ? void 0 : _a.length);
12
+ const prevContentLength = usePreviousValue(content.blocks?.length);
14
13
  const prevCodeFullscreeModeOn = usePreviousValue(codeFullscreeModeOn);
15
14
  React.useEffect(() => {
16
- var _a;
17
- const blocksCountChanged = prevContentLength !== ((_a = content.blocks) === null || _a === void 0 ? void 0 : _a.length);
15
+ const blocksCountChanged = prevContentLength !== content.blocks?.length;
18
16
  const codeModeSwitched = codeFullscreeModeOn !== prevCodeFullscreeModeOn;
19
17
  if (blocksCountChanged || isCodeEditMode || codeModeSwitched) {
20
18
  setCode(yaml.dump(content, { lineWidth: -1 }));
@@ -1 +1 @@
1
- {"version":3,"file":"useCode.js","sourceRoot":"../../../../../../src","sources":["editor/containers/Editor/hooks/useCode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,IAAI,MAAM,SAAS,CAAC;AAG3B,OAAO,gBAAgB,2CAAwC;AAQ/D;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAC,EAAC,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAe;;IAChF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE3C,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,CAAC,CAAC;IACnE,MAAM,uBAAuB,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;IAEtE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;;QACjB,MAAM,kBAAkB,GAAG,iBAAiB,MAAK,MAAA,OAAO,CAAC,MAAM,0CAAE,MAAM,CAAA,CAAC;QACxE,MAAM,gBAAgB,GAAG,mBAAmB,KAAK,uBAAuB,CAAC;QAEzE,IAAI,kBAAkB,IAAI,cAAc,IAAI,gBAAgB,EAAE,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAC,SAAS,EAAE,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC;QACjD,CAAC;IACL,CAAC,EAAE,CAAC,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAE/F,OAAO,IAAI,CAAC;AAChB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport yaml from 'js-yaml';\n\nimport {PageContent} from '../../../../models';\nimport usePreviousValue from '../../../hooks/usePreviousValue';\n\ntype UseCodeProps = {\n content: PageContent;\n codeFullscreeModeOn: boolean;\n isCodeEditMode: boolean;\n};\n\n/**\n * Transorms PageConstructor content in JSON to YAML on code editor mode switching\n *\n * @param {Object} props - props parent from form\n * @returns {string} - updated code\n */\nexport function useCode({content, codeFullscreeModeOn, isCodeEditMode}: UseCodeProps) {\n const [code, setCode] = React.useState('');\n\n const prevContentLength = usePreviousValue(content.blocks?.length);\n const prevCodeFullscreeModeOn = usePreviousValue(codeFullscreeModeOn);\n\n React.useEffect(() => {\n const blocksCountChanged = prevContentLength !== content.blocks?.length;\n const codeModeSwitched = codeFullscreeModeOn !== prevCodeFullscreeModeOn;\n\n if (blocksCountChanged || isCodeEditMode || codeModeSwitched) {\n setCode(yaml.dump(content, {lineWidth: -1}));\n }\n }, [isCodeEditMode, content, prevContentLength, codeFullscreeModeOn, prevCodeFullscreeModeOn]);\n\n return code;\n}\n"]}
1
+ {"version":3,"file":"useCode.js","sourceRoot":"../../../../../../src","sources":["editor/containers/Editor/hooks/useCode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,IAAI,MAAM,SAAS,CAAC;AAG3B,OAAO,gBAAgB,2CAAwC;AAQ/D;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAC,EAAC,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAe;IAChF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE3C,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnE,MAAM,uBAAuB,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;IAEtE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,kBAAkB,GAAG,iBAAiB,KAAK,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;QACxE,MAAM,gBAAgB,GAAG,mBAAmB,KAAK,uBAAuB,CAAC;QAEzE,IAAI,kBAAkB,IAAI,cAAc,IAAI,gBAAgB,EAAE,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAC,SAAS,EAAE,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC;QACjD,CAAC;IACL,CAAC,EAAE,CAAC,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAE/F,OAAO,IAAI,CAAC;AAChB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport yaml from 'js-yaml';\n\nimport {PageContent} from '../../../../models';\nimport usePreviousValue from '../../../hooks/usePreviousValue';\n\ntype UseCodeProps = {\n content: PageContent;\n codeFullscreeModeOn: boolean;\n isCodeEditMode: boolean;\n};\n\n/**\n * Transorms PageConstructor content in JSON to YAML on code editor mode switching\n *\n * @param {Object} props - props parent from form\n * @returns {string} - updated code\n */\nexport function useCode({content, codeFullscreeModeOn, isCodeEditMode}: UseCodeProps) {\n const [code, setCode] = React.useState('');\n\n const prevContentLength = usePreviousValue(content.blocks?.length);\n const prevCodeFullscreeModeOn = usePreviousValue(codeFullscreeModeOn);\n\n React.useEffect(() => {\n const blocksCountChanged = prevContentLength !== content.blocks?.length;\n const codeModeSwitched = codeFullscreeModeOn !== prevCodeFullscreeModeOn;\n\n if (blocksCountChanged || isCodeEditMode || codeModeSwitched) {\n setCode(yaml.dump(content, {lineWidth: -1}));\n }\n }, [isCodeEditMode, content, prevContentLength, codeFullscreeModeOn, prevCodeFullscreeModeOn]);\n\n return code;\n}\n"]}
@@ -1,4 +1,3 @@
1
- import { __rest } from "tslib";
2
1
  import { createElement as _createElement } from "react";
3
2
  import { jsx as _jsx } from "react/jsx-runtime";
4
3
  import * as React from 'react';
@@ -13,8 +12,7 @@ import { EditModeItem, ViewModeItem } from "../../../types/index.js";
13
12
  import { addCustomDecorator, checkIsMobile, getBlockId } from "../../../utils/index.js";
14
13
  import { useCode } from "./useCode.js";
15
14
  // Editor business logic
16
- export const useEditorState = (_a) => {
17
- var { customSchema, onChange, providerProps, transformContent, deviceEmulationSettings, theme: editorTheme } = _a, rest = __rest(_a, ["customSchema", "onChange", "providerProps", "transformContent", "deviceEmulationSettings", "theme"]);
15
+ export const useEditorState = ({ customSchema, onChange, providerProps, transformContent, deviceEmulationSettings, theme: editorTheme, ...rest }) => {
18
16
  const { content, activeBlockIndex, errorBoundaryState, onContentUpdate, onAdd, onSelect, injectEditBlockProps, } = useMainState(rest);
19
17
  const { viewMode, editMode, onEditModeUpdate, theme: constructorTheme, onViewModeUpdate, onThemeUpdate, codeFullscreeModeOn, onCodeFullscreeModeOnUpdate, } = useSettingsState();
20
18
  const isCodeEditMode = editMode === EditModeItem.Code;
@@ -29,10 +27,10 @@ export const useEditorState = (_a) => {
29
27
  const custom = isCodeEditMode || isViewEditMode
30
28
  ? rest.custom
31
29
  : addCustomDecorator([
32
- (props) => _jsx(NotFoundBlock, Object.assign({}, props)),
33
- (props) => (_jsx(EditBlock, Object.assign({}, injectEditBlockProps(props)))),
30
+ (props) => _jsx(NotFoundBlock, { ...props }),
31
+ (props) => (_jsx(EditBlock, { ...injectEditBlockProps(props) })),
34
32
  // need errorBoundaryState flag to reset error on content update
35
- (props) => (_createElement(ErrorBoundary, Object.assign({}, props, { key: `${getBlockId(props)}-${errorBoundaryState}` }))),
33
+ (props) => (_createElement(ErrorBoundary, { ...props, key: `${getBlockId(props)}-${errorBoundaryState}` })),
36
34
  ], rest.custom);
37
35
  return {
38
36
  content: transformedContent,
@@ -53,7 +51,11 @@ export const useEditorState = (_a) => {
53
51
  content: transformedContent,
54
52
  custom: rest.custom,
55
53
  },
56
- providerProps: Object.assign(Object.assign({}, providerProps), { isMobile: checkIsMobile(viewMode), theme: constructorTheme }),
54
+ providerProps: {
55
+ ...providerProps,
56
+ isMobile: checkIsMobile(viewMode),
57
+ theme: constructorTheme,
58
+ },
57
59
  deviceEmulationSettings,
58
60
  theme: editorTheme,
59
61
  }), [
@@ -66,7 +68,7 @@ export const useEditorState = (_a) => {
66
68
  editorTheme,
67
69
  ]);
68
70
  React.useEffect(() => {
69
- onChange === null || onChange === void 0 ? void 0 : onChange(content);
71
+ onChange?.(content);
70
72
  }, [content, onChange]);
71
73
  const code = useCode({ isCodeEditMode, content, codeFullscreeModeOn });
72
74
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"useEditorState.js","sourceRoot":"../../../../../../src","sources":["editor/containers/Editor/hooks/useEditorState.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {BlockDecorationProps} from '../../../../models';\nimport {generateDefaultSchema} from '../../../../schema';\nimport EditBlock from '../../../components/EditBlock/EditBlock';\nimport {ErrorBoundary} from '../../../components/ErrorBoundary/ErrorBoundary';\nimport {NotFoundBlock} from '../../../components/NotFoundBlock/NotFoundBlock';\nimport {useCodeValidator} from '../../../hooks/useCodeValidator';\nimport {useMainState} from '../../../store/main';\nimport {useSettingsState} from '../../../store/settings';\nimport {EditModeItem, EditorProps, ViewModeItem} from '../../../types';\nimport {addCustomDecorator, checkIsMobile, getBlockId} from '../../../utils';\n\nimport {useCode} from './useCode';\n\n// Editor business logic\nexport const useEditorState = ({\n customSchema,\n onChange,\n providerProps,\n transformContent,\n deviceEmulationSettings,\n theme: editorTheme,\n ...rest\n}: EditorProps) => {\n const {\n content,\n activeBlockIndex,\n errorBoundaryState,\n onContentUpdate,\n onAdd,\n onSelect,\n injectEditBlockProps,\n } = useMainState(rest);\n\n const {\n viewMode,\n editMode,\n onEditModeUpdate,\n theme: constructorTheme,\n onViewModeUpdate,\n onThemeUpdate,\n codeFullscreeModeOn,\n onCodeFullscreeModeOnUpdate,\n } = useSettingsState();\n\n const isCodeEditMode = editMode === EditModeItem.Code;\n const isViewEditMode = editMode === EditModeItem.View;\n const isFormEditMode = editMode === EditModeItem.Form;\n const isDesktopViewMode = viewMode === ViewModeItem.Desktop;\n const isCodeOnlyMode = codeFullscreeModeOn && isCodeEditMode;\n\n const transformedContent = React.useMemo(\n () => (transformContent ? transformContent(content, {viewMode, editMode}) : content),\n [content, transformContent, viewMode, editMode],\n );\n const schema = React.useMemo(() => generateDefaultSchema(customSchema), [customSchema]);\n const codeValidator = useCodeValidator(schema);\n\n const outgoingProps = React.useMemo(() => {\n const custom =\n isCodeEditMode || isViewEditMode\n ? rest.custom\n : addCustomDecorator(\n [\n (props: BlockDecorationProps) => <NotFoundBlock {...props} />,\n (props: BlockDecorationProps) => (\n <EditBlock {...injectEditBlockProps(props)} />\n ),\n // need errorBoundaryState flag to reset error on content update\n (props: BlockDecorationProps) => (\n <ErrorBoundary\n {...props}\n key={`${getBlockId(props)}-${errorBoundaryState}`}\n />\n ),\n ],\n rest.custom,\n );\n\n return {\n content: transformedContent,\n custom,\n viewMode,\n };\n }, [\n injectEditBlockProps,\n errorBoundaryState,\n viewMode,\n transformedContent,\n rest.custom,\n isCodeEditMode,\n isViewEditMode,\n ]);\n\n const context = React.useMemo(\n () => ({\n constructorProps: {\n content: transformedContent,\n custom: rest.custom,\n },\n providerProps: {\n ...providerProps,\n isMobile: checkIsMobile(viewMode),\n theme: constructorTheme,\n },\n deviceEmulationSettings,\n theme: editorTheme,\n }),\n [\n providerProps,\n rest.custom,\n viewMode,\n transformedContent,\n deviceEmulationSettings,\n constructorTheme,\n editorTheme,\n ],\n );\n\n React.useEffect(() => {\n onChange?.(content);\n }, [content, onChange]);\n\n const code = useCode({isCodeEditMode, content, codeFullscreeModeOn});\n\n return {\n context,\n viewMode,\n editMode,\n constructorTheme,\n onThemeUpdate,\n onViewModeUpdate,\n onEditModeUpdate,\n isCodeEditMode,\n isDesktopViewMode,\n content,\n schema,\n onContentUpdate,\n code,\n codeValidator,\n codeFullscreeModeOn,\n onCodeFullscreeModeOnUpdate,\n activeBlockIndex,\n onSelect,\n isCodeOnlyMode,\n errorBoundaryState,\n outgoingProps,\n onAdd,\n isFormEditMode,\n };\n};\n"]}
1
+ {"version":3,"file":"useEditorState.js","sourceRoot":"../../../../../../src","sources":["editor/containers/Editor/hooks/useEditorState.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {BlockDecorationProps} from '../../../../models';\nimport {generateDefaultSchema} from '../../../../schema';\nimport EditBlock from '../../../components/EditBlock/EditBlock';\nimport {ErrorBoundary} from '../../../components/ErrorBoundary/ErrorBoundary';\nimport {NotFoundBlock} from '../../../components/NotFoundBlock/NotFoundBlock';\nimport {useCodeValidator} from '../../../hooks/useCodeValidator';\nimport {useMainState} from '../../../store/main';\nimport {useSettingsState} from '../../../store/settings';\nimport {EditModeItem, EditorProps, ViewModeItem} from '../../../types';\nimport {addCustomDecorator, checkIsMobile, getBlockId} from '../../../utils';\n\nimport {useCode} from './useCode';\n\n// Editor business logic\nexport const useEditorState = ({\n customSchema,\n onChange,\n providerProps,\n transformContent,\n deviceEmulationSettings,\n theme: editorTheme,\n ...rest\n}: EditorProps) => {\n const {\n content,\n activeBlockIndex,\n errorBoundaryState,\n onContentUpdate,\n onAdd,\n onSelect,\n injectEditBlockProps,\n } = useMainState(rest);\n\n const {\n viewMode,\n editMode,\n onEditModeUpdate,\n theme: constructorTheme,\n onViewModeUpdate,\n onThemeUpdate,\n codeFullscreeModeOn,\n onCodeFullscreeModeOnUpdate,\n } = useSettingsState();\n\n const isCodeEditMode = editMode === EditModeItem.Code;\n const isViewEditMode = editMode === EditModeItem.View;\n const isFormEditMode = editMode === EditModeItem.Form;\n const isDesktopViewMode = viewMode === ViewModeItem.Desktop;\n const isCodeOnlyMode = codeFullscreeModeOn && isCodeEditMode;\n\n const transformedContent = React.useMemo(\n () => (transformContent ? transformContent(content, {viewMode, editMode}) : content),\n [content, transformContent, viewMode, editMode],\n );\n const schema = React.useMemo(() => generateDefaultSchema(customSchema), [customSchema]);\n const codeValidator = useCodeValidator(schema);\n\n const outgoingProps = React.useMemo(() => {\n const custom =\n isCodeEditMode || isViewEditMode\n ? rest.custom\n : addCustomDecorator(\n [\n (props: BlockDecorationProps) => <NotFoundBlock {...props} />,\n (props: BlockDecorationProps) => (\n <EditBlock {...injectEditBlockProps(props)} />\n ),\n // need errorBoundaryState flag to reset error on content update\n (props: BlockDecorationProps) => (\n <ErrorBoundary\n {...props}\n key={`${getBlockId(props)}-${errorBoundaryState}`}\n />\n ),\n ],\n rest.custom,\n );\n\n return {\n content: transformedContent,\n custom,\n viewMode,\n };\n }, [\n injectEditBlockProps,\n errorBoundaryState,\n viewMode,\n transformedContent,\n rest.custom,\n isCodeEditMode,\n isViewEditMode,\n ]);\n\n const context = React.useMemo(\n () => ({\n constructorProps: {\n content: transformedContent,\n custom: rest.custom,\n },\n providerProps: {\n ...providerProps,\n isMobile: checkIsMobile(viewMode),\n theme: constructorTheme,\n },\n deviceEmulationSettings,\n theme: editorTheme,\n }),\n [\n providerProps,\n rest.custom,\n viewMode,\n transformedContent,\n deviceEmulationSettings,\n constructorTheme,\n editorTheme,\n ],\n );\n\n React.useEffect(() => {\n onChange?.(content);\n }, [content, onChange]);\n\n const code = useCode({isCodeEditMode, content, codeFullscreeModeOn});\n\n return {\n context,\n viewMode,\n editMode,\n constructorTheme,\n onThemeUpdate,\n onViewModeUpdate,\n onEditModeUpdate,\n isCodeEditMode,\n isDesktopViewMode,\n content,\n schema,\n onContentUpdate,\n code,\n codeValidator,\n codeFullscreeModeOn,\n onCodeFullscreeModeOnUpdate,\n activeBlockIndex,\n onSelect,\n isCodeOnlyMode,\n errorBoundaryState,\n outgoingProps,\n onAdd,\n isFormEditMode,\n };\n};\n"]}
@@ -12,11 +12,14 @@ export const Form = React.memo(({ content, onChange, activeBlockIndex, onSelect,
12
12
  const spec = useFormSpec(schema);
13
13
  const { blocks: blocksSpec } = spec || {};
14
14
  return (_jsxs("div", { className: b(), children: [_jsx(Text, { variant: "body-2", children: 'Blocks' }), blocks.map((blockData, index) => blocksSpec[blockData.type] ? (_jsx("div", { className: b('block-form'), children: _jsx(BlockForm, { spec: blocksSpec[blockData.type], data: blockData, active: activeBlockIndex === index, onChange: (data) => {
15
- onChange(Object.assign(Object.assign({}, content), { blocks: [
15
+ onChange({
16
+ ...content,
17
+ blocks: [
16
18
  ...blocks.slice(0, index),
17
19
  data,
18
20
  ...blocks.slice(index + 1),
19
- ] }));
21
+ ],
22
+ });
20
23
  }, onSelect: () => onSelect(index) }) }, getBlockKey(blockData, index))) : null)] }));
21
24
  });
22
25
  Form.displayName = 'Form';
@@ -1 +1 @@
1
- {"version":3,"file":"Form.js","sourceRoot":"../../../../../src","sources":["editor/containers/Form/Form.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAIvC,OAAO,EAAC,KAAK,EAAE,WAAW,EAAC,gCAAuB;AAClD,OAAO,EAAC,SAAS,EAAC,gDAA6C;AAC/D,OAAO,WAAW,mCAAgC;AAElD,OAAO,YAAY,CAAC;AAEpB,MAAM,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;AAU/B,8GAA8G;AAE9G,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAC1B,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAY,EAAE,EAAE;IACnE,MAAM,EAAC,MAAM,EAAC,GAAG,OAAO,IAAI,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,EAAC,MAAM,EAAE,UAAU,EAAC,GAAG,IAAI,IAAI,EAAE,CAAC;IAExC,OAAO,CACH,eAAK,SAAS,EAAE,CAAC,EAAE,aACf,KAAC,IAAI,IAAC,OAAO,EAAC,QAAQ,YAAE,QAAQ,GAAQ,EACvC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAC7B,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACzB,cAAK,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,YAC3B,KAAC,SAAS,IACN,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,EAChC,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,gBAAgB,KAAK,KAAK,EAClC,QAAQ,EAAE,CAAC,IAAW,EAAE,EAAE;wBACtB,QAAQ,iCACD,OAAO,KACV,MAAM,EAAE;gCACJ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;gCACzB,IAAI;gCACJ,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;6BAC7B,IACH,CAAC;oBACP,CAAC,EACD,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,GACjC,IAhBgC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,CAiB7D,CACT,CAAC,CAAC,CAAC,IAAI,CACX,IACC,CACT,CAAC;AACN,CAAC,CACJ,CAAC;AAEF,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Text} from '@gravity-ui/uikit';\nimport {JSONSchema4} from 'json-schema';\n\nimport {Block, PageContent} from '../../../models';\nimport {block, getBlockKey} from '../../../utils';\nimport {BlockForm} from '../../components/BlockForm/BlockForm';\nimport useFormSpec from '../../hooks/useFormSpec';\n\nimport './Form.scss';\n\nconst b = block('editor-form');\n\nexport interface FormProps {\n content: PageContent;\n schema: JSONSchema4;\n activeBlockIndex: number;\n onChange: (content: PageContent) => void;\n onSelect: (index: number) => void;\n}\n\n// TODO in https://github.com/gravity-ui/page-constructor/issues/884 this component will be extremely refactor\n\nexport const Form = React.memo(\n ({content, onChange, activeBlockIndex, onSelect, schema}: FormProps) => {\n const {blocks} = content || {};\n const spec = useFormSpec(schema);\n const {blocks: blocksSpec} = spec || {};\n\n return (\n <div className={b()}>\n <Text variant=\"body-2\">{'Blocks'}</Text>\n {blocks.map((blockData, index) =>\n blocksSpec[blockData.type] ? (\n <div className={b('block-form')} key={getBlockKey(blockData, index)}>\n <BlockForm\n spec={blocksSpec[blockData.type]}\n data={blockData}\n active={activeBlockIndex === index}\n onChange={(data: Block) => {\n onChange({\n ...content,\n blocks: [\n ...blocks.slice(0, index),\n data,\n ...blocks.slice(index + 1),\n ],\n });\n }}\n onSelect={() => onSelect(index)}\n />\n </div>\n ) : null,\n )}\n </div>\n );\n },\n);\n\nForm.displayName = 'Form';\n"]}
1
+ {"version":3,"file":"Form.js","sourceRoot":"../../../../../src","sources":["editor/containers/Form/Form.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAIvC,OAAO,EAAC,KAAK,EAAE,WAAW,EAAC,gCAAuB;AAClD,OAAO,EAAC,SAAS,EAAC,gDAA6C;AAC/D,OAAO,WAAW,mCAAgC;AAElD,OAAO,YAAY,CAAC;AAEpB,MAAM,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;AAU/B,8GAA8G;AAE9G,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAC1B,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAY,EAAE,EAAE;IACnE,MAAM,EAAC,MAAM,EAAC,GAAG,OAAO,IAAI,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,EAAC,MAAM,EAAE,UAAU,EAAC,GAAG,IAAI,IAAI,EAAE,CAAC;IAExC,OAAO,CACH,eAAK,SAAS,EAAE,CAAC,EAAE,aACf,KAAC,IAAI,IAAC,OAAO,EAAC,QAAQ,YAAE,QAAQ,GAAQ,EACvC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAC7B,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACzB,cAAK,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,YAC3B,KAAC,SAAS,IACN,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,EAChC,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,gBAAgB,KAAK,KAAK,EAClC,QAAQ,EAAE,CAAC,IAAW,EAAE,EAAE;wBACtB,QAAQ,CAAC;4BACL,GAAG,OAAO;4BACV,MAAM,EAAE;gCACJ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;gCACzB,IAAI;gCACJ,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;6BAC7B;yBACJ,CAAC,CAAC;oBACP,CAAC,EACD,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,GACjC,IAhBgC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,CAiB7D,CACT,CAAC,CAAC,CAAC,IAAI,CACX,IACC,CACT,CAAC;AACN,CAAC,CACJ,CAAC;AAEF,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Text} from '@gravity-ui/uikit';\nimport {JSONSchema4} from 'json-schema';\n\nimport {Block, PageContent} from '../../../models';\nimport {block, getBlockKey} from '../../../utils';\nimport {BlockForm} from '../../components/BlockForm/BlockForm';\nimport useFormSpec from '../../hooks/useFormSpec';\n\nimport './Form.scss';\n\nconst b = block('editor-form');\n\nexport interface FormProps {\n content: PageContent;\n schema: JSONSchema4;\n activeBlockIndex: number;\n onChange: (content: PageContent) => void;\n onSelect: (index: number) => void;\n}\n\n// TODO in https://github.com/gravity-ui/page-constructor/issues/884 this component will be extremely refactor\n\nexport const Form = React.memo(\n ({content, onChange, activeBlockIndex, onSelect, schema}: FormProps) => {\n const {blocks} = content || {};\n const spec = useFormSpec(schema);\n const {blocks: blocksSpec} = spec || {};\n\n return (\n <div className={b()}>\n <Text variant=\"body-2\">{'Blocks'}</Text>\n {blocks.map((blockData, index) =>\n blocksSpec[blockData.type] ? (\n <div className={b('block-form')} key={getBlockKey(blockData, index)}>\n <BlockForm\n spec={blocksSpec[blockData.type]}\n data={blockData}\n active={activeBlockIndex === index}\n onChange={(data: Block) => {\n onChange({\n ...content,\n blocks: [\n ...blocks.slice(0, index),\n data,\n ...blocks.slice(index + 1),\n ],\n });\n }}\n onSelect={() => onSelect(index)}\n />\n </div>\n ) : null,\n )}\n </div>\n );\n },\n);\n\nForm.displayName = 'Form';\n"]}
@@ -10,7 +10,7 @@ const getBlockPreview = (blockType) => {
10
10
  }
11
11
  return DefaultPreview;
12
12
  }
13
- catch (err) {
13
+ catch {
14
14
  /*eslint-disable no-console */
15
15
  console.warn(`Preview image for ${blockType} not found`);
16
16
  return DefaultPreview;
@@ -23,7 +23,10 @@ async function getEditorBlocksData() {
23
23
  const preview = getBlockPreview(blockType);
24
24
  template.meta = template.meta || {};
25
25
  template.meta.title = template.meta.title || formatBlockName(blockType);
26
- EdiorBlockData[blockType] = Object.assign(Object.assign({}, template), { preview });
26
+ EdiorBlockData[blockType] = {
27
+ ...template,
28
+ preview,
29
+ };
27
30
  }
28
31
  return EdiorBlockData;
29
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["editor/data/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,SAAS,EAAC,8BAAqB;AAC9C,OAAO,EAAC,eAAe,EAAC,0BAAiB;AAEzC,OAAO,cAAc,sCAAmC;AACxD,OAAO,WAAW,mCAAgC;AAalD,MAAM,gBAAgB,GAAG,CAAC,SAAoB,EAA4C,EAAE,CACxF,MAAM,CAAC,eAAe,SAAS,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAEzE,MAAM,eAAe,GAAG,CAAC,SAAoB,EAAoB,EAAE;IAC/D,IAAI,CAAC;QACD,IAAI,SAAS,KAAK,SAAS,CAAC,WAAW,EAAE,CAAC;YACtC,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,OAAO,cAAc,CAAC;IAC1B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,8BAA8B;QAC9B,OAAO,CAAC,IAAI,CAAC,qBAAqB,SAAS,YAAY,CAAC,CAAC;QACzD,OAAO,cAAc,CAAC;IAC1B,CAAC;AACL,CAAC,CAAC;AAIF,KAAK,UAAU,mBAAmB;IAC9B,MAAM,cAAc,GAAqB,EAAE,CAAC;IAE5C,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,SAAsB,CAAC,CAAC;QAEhE,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;QAE3C,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;QACpC,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC;QAExE,cAAc,CAAC,SAAS,CAAC,mCAClB,QAAQ,KACX,OAAO,GACV,CAAC;IACN,CAAC;IAED,OAAO,cAAc,CAAC;AAC1B,CAAC;AAED,OAAO,EAAmB,mBAAmB,EAAC,CAAC","sourcesContent":["import {Block, BlockType} from '../../models';\nimport {formatBlockName} from '../utils';\n\nimport DefaultPreview from './previews/default-preview';\nimport HeaderBlock from './previews/header-block';\n\nexport type PreviewComponent = React.FunctionComponent<React.SVGProps<SVGSVGElement>>;\n\nexport interface EdiorBlockData {\n template: Block;\n preview: PreviewComponent;\n meta: {\n title: string;\n description?: string;\n };\n}\n\nconst getBlockTemplate = (blockType: BlockType): Promise<Omit<EdiorBlockData, 'preview'>> =>\n import(`./templates/${blockType}.json`).then((data) => data.default);\n\nconst getBlockPreview = (blockType: BlockType): PreviewComponent => {\n try {\n if (blockType === BlockType.HeaderBlock) {\n return HeaderBlock;\n }\n\n return DefaultPreview;\n } catch (err) {\n /*eslint-disable no-console */\n console.warn(`Preview image for ${blockType} not found`);\n return DefaultPreview;\n }\n};\n\ntype EditorBlocksData = Partial<Record<BlockType, EdiorBlockData>>;\n\nasync function getEditorBlocksData(): Promise<EditorBlocksData> {\n const EdiorBlockData: EditorBlocksData = {};\n\n for (const blockType of Object.values(BlockType)) {\n const template = await getBlockTemplate(blockType as BlockType);\n\n const preview = getBlockPreview(blockType);\n\n template.meta = template.meta || {};\n template.meta.title = template.meta.title || formatBlockName(blockType);\n\n EdiorBlockData[blockType] = {\n ...template,\n preview,\n };\n }\n\n return EdiorBlockData;\n}\n\nexport {EditorBlocksData, getEditorBlocksData};\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["editor/data/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,SAAS,EAAC,8BAAqB;AAC9C,OAAO,EAAC,eAAe,EAAC,0BAAiB;AAEzC,OAAO,cAAc,sCAAmC;AACxD,OAAO,WAAW,mCAAgC;AAalD,MAAM,gBAAgB,GAAG,CAAC,SAAoB,EAA4C,EAAE,CACxF,MAAM,CAAC,eAAe,SAAS,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAEzE,MAAM,eAAe,GAAG,CAAC,SAAoB,EAAoB,EAAE;IAC/D,IAAI,CAAC;QACD,IAAI,SAAS,KAAK,SAAS,CAAC,WAAW,EAAE,CAAC;YACtC,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,OAAO,cAAc,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACL,8BAA8B;QAC9B,OAAO,CAAC,IAAI,CAAC,qBAAqB,SAAS,YAAY,CAAC,CAAC;QACzD,OAAO,cAAc,CAAC;IAC1B,CAAC;AACL,CAAC,CAAC;AAIF,KAAK,UAAU,mBAAmB;IAC9B,MAAM,cAAc,GAAqB,EAAE,CAAC;IAE5C,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,SAAsB,CAAC,CAAC;QAEhE,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;QAE3C,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;QACpC,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC;QAExE,cAAc,CAAC,SAAS,CAAC,GAAG;YACxB,GAAG,QAAQ;YACX,OAAO;SACV,CAAC;IACN,CAAC;IAED,OAAO,cAAc,CAAC;AAC1B,CAAC;AAED,OAAO,EAAmB,mBAAmB,EAAC,CAAC","sourcesContent":["import {Block, BlockType} from '../../models';\nimport {formatBlockName} from '../utils';\n\nimport DefaultPreview from './previews/default-preview';\nimport HeaderBlock from './previews/header-block';\n\nexport type PreviewComponent = React.FunctionComponent<React.SVGProps<SVGSVGElement>>;\n\nexport interface EdiorBlockData {\n template: Block;\n preview: PreviewComponent;\n meta: {\n title: string;\n description?: string;\n };\n}\n\nconst getBlockTemplate = (blockType: BlockType): Promise<Omit<EdiorBlockData, 'preview'>> =>\n import(`./templates/${blockType}.json`).then((data) => data.default);\n\nconst getBlockPreview = (blockType: BlockType): PreviewComponent => {\n try {\n if (blockType === BlockType.HeaderBlock) {\n return HeaderBlock;\n }\n\n return DefaultPreview;\n } catch {\n /*eslint-disable no-console */\n console.warn(`Preview image for ${blockType} not found`);\n return DefaultPreview;\n }\n};\n\ntype EditorBlocksData = Partial<Record<BlockType, EdiorBlockData>>;\n\nasync function getEditorBlocksData(): Promise<EditorBlocksData> {\n const EdiorBlockData: EditorBlocksData = {};\n\n for (const blockType of Object.values(BlockType)) {\n const template = await getBlockTemplate(blockType as BlockType);\n\n const preview = getBlockPreview(blockType);\n\n template.meta = template.meta || {};\n template.meta.title = template.meta.title || formatBlockName(blockType);\n\n EdiorBlockData[blockType] = {\n ...template,\n preview,\n };\n }\n\n return EdiorBlockData;\n}\n\nexport {EditorBlocksData, getEditorBlocksData};\n"]}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { a11yHiddenSvgProps } from "../../../utils/svg.js";
3
- const DefaultPreview = (props) => (_jsxs("svg", Object.assign({ width: "150", height: "76", viewBox: "0 0 150 76", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, a11yHiddenSvgProps, props, { children: [_jsx("rect", { x: "1", y: "1", width: "148", height: "74", rx: "8", fill: "white" }), _jsx("rect", { x: "14.7674", y: "21.6512", width: "28.3953", height: "6.88372", rx: "0.860465", fill: "#E7E7E7" }), _jsx("rect", { x: "43.1628", y: "21.6512", width: "28.3953", height: "6.88372", rx: "0.860465", fill: "white" }), _jsx("rect", { x: "14.7674", y: "31.9767", width: "56.7907", height: "3.44186", rx: "0.860465", fill: "#E7E7E7" }), _jsx("rect", { x: "14.7675", y: "37.1395", width: "56.7907", height: "3.44186", rx: "0.860465", fill: "#E7E7E7" }), _jsx("rect", { x: "14.7675", y: "42.3023", width: "56.7907", height: "3.44186", rx: "0.860465", fill: "#E7E7E7" }), _jsx("rect", { x: "14.7674", y: "49.186", width: "18.9302", height: "5.16279", rx: "0.860465", fill: "#E7E7E7" }), _jsx("rect", { x: "33.6977", y: "49.186", width: "18.9302", height: "5.16279", rx: "0.860465", fill: "white" }), _jsx("rect", { x: "52.6279", y: "49.186", width: "18.9302", height: "5.16279", rx: "0.860465", fill: "white" }), _jsx("rect", { x: "78.4418", y: "9.60464", width: "56.7907", height: "56.7907", rx: "5.16279", fill: "currentColor" }), _jsx("rect", { x: "0.5", y: "0.5", width: "149", height: "75", rx: "8.5", stroke: "black", strokeOpacity: "0.1" })] })));
3
+ const DefaultPreview = (props) => (_jsxs("svg", { width: "150", height: "76", viewBox: "0 0 150 76", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...a11yHiddenSvgProps, ...props, children: [_jsx("rect", { x: "1", y: "1", width: "148", height: "74", rx: "8", fill: "white" }), _jsx("rect", { x: "14.7674", y: "21.6512", width: "28.3953", height: "6.88372", rx: "0.860465", fill: "#E7E7E7" }), _jsx("rect", { x: "43.1628", y: "21.6512", width: "28.3953", height: "6.88372", rx: "0.860465", fill: "white" }), _jsx("rect", { x: "14.7674", y: "31.9767", width: "56.7907", height: "3.44186", rx: "0.860465", fill: "#E7E7E7" }), _jsx("rect", { x: "14.7675", y: "37.1395", width: "56.7907", height: "3.44186", rx: "0.860465", fill: "#E7E7E7" }), _jsx("rect", { x: "14.7675", y: "42.3023", width: "56.7907", height: "3.44186", rx: "0.860465", fill: "#E7E7E7" }), _jsx("rect", { x: "14.7674", y: "49.186", width: "18.9302", height: "5.16279", rx: "0.860465", fill: "#E7E7E7" }), _jsx("rect", { x: "33.6977", y: "49.186", width: "18.9302", height: "5.16279", rx: "0.860465", fill: "white" }), _jsx("rect", { x: "52.6279", y: "49.186", width: "18.9302", height: "5.16279", rx: "0.860465", fill: "white" }), _jsx("rect", { x: "78.4418", y: "9.60464", width: "56.7907", height: "56.7907", rx: "5.16279", fill: "currentColor" }), _jsx("rect", { x: "0.5", y: "0.5", width: "149", height: "75", rx: "8.5", stroke: "black", strokeOpacity: "0.1" })] }));
4
4
  export default DefaultPreview;
5
5
  //# sourceMappingURL=default-preview.js.map