@gravity-ui/page-constructor 5.14.3 → 5.14.4-alpha.0

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 (390) hide show
  1. package/build/cjs/blocks/Banner/Banner.js +3 -1
  2. package/build/cjs/blocks/Banner/index.d.ts +3 -0
  3. package/build/cjs/blocks/Banner/index.js +22 -0
  4. package/build/cjs/blocks/CardLayout/CardLayout.css +1 -0
  5. package/build/cjs/blocks/CardLayout/CardLayout.js +11 -6
  6. package/build/cjs/blocks/CardLayout/index.d.ts +5 -0
  7. package/build/cjs/blocks/CardLayout/index.js +166 -0
  8. package/build/cjs/blocks/Companies/Companies.js +6 -4
  9. package/build/cjs/blocks/Companies/index.d.ts +3 -0
  10. package/build/cjs/blocks/Companies/index.js +18 -0
  11. package/build/cjs/blocks/ContentLayout/ContentLayout.js +6 -5
  12. package/build/cjs/blocks/ContentLayout/index.d.ts +11 -0
  13. package/build/cjs/blocks/ContentLayout/index.js +17 -0
  14. package/build/cjs/blocks/ContentLayout/schema.d.ts +1 -0
  15. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js +22 -20
  16. package/build/cjs/blocks/ExtendedFeatures/index.d.ts +12 -0
  17. package/build/cjs/blocks/ExtendedFeatures/index.js +18 -0
  18. package/build/cjs/blocks/ExtendedFeatures/schema.d.ts +1 -0
  19. package/build/cjs/blocks/ExtendedFeatures/schema.js +1 -0
  20. package/build/cjs/blocks/FilterBlock/FilterBlock.js +11 -10
  21. package/build/cjs/blocks/FilterBlock/index.d.ts +11 -0
  22. package/build/cjs/blocks/FilterBlock/index.js +17 -0
  23. package/build/cjs/blocks/Form/index.d.ts +12 -0
  24. package/build/cjs/blocks/Form/index.js +18 -0
  25. package/build/cjs/blocks/Header/dynamic-form.d.ts +2 -0
  26. package/build/cjs/blocks/Header/dynamic-form.js +730 -0
  27. package/build/cjs/blocks/Header/index.d.ts +8 -0
  28. package/build/cjs/blocks/Header/index.js +14 -0
  29. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js +3 -2
  30. package/build/cjs/blocks/HeaderSlider/index.d.ts +31 -0
  31. package/build/cjs/blocks/HeaderSlider/index.js +38 -0
  32. package/build/cjs/blocks/Icons/Icons.js +9 -6
  33. package/build/cjs/blocks/Icons/index.d.ts +13 -0
  34. package/build/cjs/blocks/Icons/index.js +19 -0
  35. package/build/cjs/blocks/Info/index.d.ts +21 -0
  36. package/build/cjs/blocks/Info/index.js +41 -0
  37. package/build/cjs/blocks/Map/index.d.ts +11 -0
  38. package/build/cjs/blocks/Map/index.js +17 -0
  39. package/build/cjs/blocks/Media/index.d.ts +14 -0
  40. package/build/cjs/blocks/Media/index.js +20 -0
  41. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +19 -16
  42. package/build/cjs/blocks/PromoFeaturesBlock/index.d.ts +12 -0
  43. package/build/cjs/blocks/PromoFeaturesBlock/index.js +18 -0
  44. package/build/cjs/blocks/Questions/Questions.js +12 -10
  45. package/build/cjs/blocks/Questions/index.d.ts +29 -0
  46. package/build/cjs/blocks/Questions/index.js +47 -0
  47. package/build/cjs/blocks/Share/Share.js +11 -10
  48. package/build/cjs/blocks/Share/index.d.ts +12 -0
  49. package/build/cjs/blocks/Share/index.js +18 -0
  50. package/build/cjs/blocks/Slider/Slider.js +22 -17
  51. package/build/cjs/blocks/Slider/dynamic-form.d.ts +3 -0
  52. package/build/cjs/blocks/Slider/dynamic-form.js +225 -0
  53. package/build/cjs/blocks/Slider/index.d.ts +8 -0
  54. package/build/cjs/blocks/Slider/index.js +14 -0
  55. package/build/cjs/blocks/Table/index.d.ts +8 -0
  56. package/build/cjs/blocks/Table/index.js +14 -0
  57. package/build/cjs/blocks/Table/schema.d.ts +1 -0
  58. package/build/cjs/blocks/Table/schema.js +1 -0
  59. package/build/cjs/blocks/Tabs/Tabs.js +9 -8
  60. package/build/cjs/blocks/Tabs/index.d.ts +16 -0
  61. package/build/cjs/blocks/Tabs/index.js +29 -0
  62. package/build/cjs/blocks/TestEditorBlock/TestEditorBlock.d.ts +5 -0
  63. package/build/cjs/blocks/TestEditorBlock/TestEditorBlock.js +12 -0
  64. package/build/cjs/blocks/TestEditorBlock/form.d.ts +3 -0
  65. package/build/cjs/blocks/TestEditorBlock/form.js +80 -0
  66. package/build/cjs/blocks/TestEditorBlock/index.d.ts +11 -0
  67. package/build/cjs/blocks/TestEditorBlock/index.js +17 -0
  68. package/build/cjs/components/BlockBase/BlockBase.css +8 -16
  69. package/build/cjs/components/Image/dynamic-form.d.ts +2 -0
  70. package/build/cjs/components/Image/dynamic-form.js +84 -0
  71. package/build/cjs/components/editor/ChildrenWrap/ChildrenWrap.css +5 -0
  72. package/build/cjs/components/editor/ChildrenWrap/ChildrenWrap.d.ts +6 -0
  73. package/build/cjs/components/editor/ChildrenWrap/ChildrenWrap.js +15 -0
  74. package/build/cjs/components/editor/ItemWrap/ItemWrap.css +9 -0
  75. package/build/cjs/components/editor/ItemWrap/ItemWrap.d.ts +6 -0
  76. package/build/cjs/components/editor/ItemWrap/ItemWrap.js +15 -0
  77. package/build/cjs/constructor-items.d.ts +18 -6
  78. package/build/cjs/constructor-items.js +67 -1
  79. package/build/cjs/containers/PageConstructor/PageConstructor.js +16 -13
  80. package/build/cjs/containers/PageConstructor/Provider.js +4 -0
  81. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.css +10 -6
  82. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +5 -2
  83. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/hooks/useEditorBlockMouseEvents.d.ts +8 -0
  84. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/hooks/useEditorBlockMouseEvents.js +109 -0
  85. package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js +7 -6
  86. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.d.ts +1 -1
  87. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +1 -1
  88. package/build/cjs/containers/PageConstructor/components/ConstructorLoadable/ConstructorLoadable.js +1 -1
  89. package/build/cjs/containers/PageConstructor/components/ConstructorRow/ConstructorRow.js +1 -3
  90. package/build/cjs/context/blockIdContext/blockIdContext.d.ts +2 -2
  91. package/build/cjs/context/blockIdContext/blockIdContext.js +1 -1
  92. package/build/cjs/context/editorContext/editorContext.d.ts +13 -0
  93. package/build/cjs/context/editorContext/editorContext.js +10 -0
  94. package/build/cjs/context/editorContext/editorProvider.d.ts +2 -0
  95. package/build/cjs/context/editorContext/editorProvider.js +20 -0
  96. package/build/cjs/context/editorContext/hooks/useEditorStore.d.ts +2 -0
  97. package/build/cjs/context/editorContext/hooks/useEditorStore.js +15 -0
  98. package/build/cjs/context/editorContext/index.d.ts +4 -0
  99. package/build/cjs/context/editorContext/index.js +7 -0
  100. package/build/cjs/context/editorContext/store.d.ts +24 -0
  101. package/build/cjs/context/editorContext/store.js +39 -0
  102. package/build/cjs/context/messagesContext/hooks/useMessageObserver.d.ts +4 -0
  103. package/build/cjs/context/messagesContext/hooks/useMessageObserver.js +16 -0
  104. package/build/cjs/context/messagesContext/hooks/useMessageSender.d.ts +2 -0
  105. package/build/cjs/context/messagesContext/hooks/useMessageSender.js +11 -0
  106. package/build/cjs/context/messagesContext/hooks/useMessagesStore.d.ts +2 -0
  107. package/build/cjs/context/messagesContext/hooks/useMessagesStore.js +15 -0
  108. package/build/cjs/context/messagesContext/index.d.ts +5 -0
  109. package/build/cjs/context/messagesContext/index.js +8 -0
  110. package/build/cjs/context/messagesContext/messagesContext.d.ts +14 -0
  111. package/build/cjs/context/messagesContext/messagesContext.js +12 -0
  112. package/build/cjs/context/messagesContext/messagesProvider.d.ts +2 -0
  113. package/build/cjs/context/messagesContext/messagesProvider.js +73 -0
  114. package/build/cjs/context/messagesContext/store.d.ts +25 -0
  115. package/build/cjs/context/messagesContext/store.js +17 -0
  116. package/build/cjs/context/messagesContext/types.d.ts +14 -0
  117. package/build/cjs/context/messagesContext/types.js +2 -0
  118. package/build/cjs/grid/Col/Col.d.ts +1 -1
  119. package/build/cjs/grid/Grid/Grid.css +2 -6
  120. package/build/cjs/hooks/useAnalytics.js +1 -1
  121. package/build/cjs/hooks/useEditorInitialize.d.ts +7 -0
  122. package/build/cjs/hooks/useEditorInitialize.js +90 -0
  123. package/build/cjs/models/constructor-items/blocks.d.ts +2 -1
  124. package/build/cjs/models/constructor-items/blocks.js +1 -0
  125. package/build/cjs/models/constructor-items/sub-blocks.d.ts +1 -1
  126. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js +4 -1
  127. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +4 -1
  128. package/build/cjs/navigation/containers/Layout/Layout.css +0 -1
  129. package/build/cjs/schema/constants.d.ts +1 -1
  130. package/build/cjs/schema/constants.js +2 -1
  131. package/build/cjs/schema/index.d.ts +227 -0
  132. package/build/cjs/schema/index.js +7 -3
  133. package/build/cjs/sub-blocks/BackgroundCard/dynamic-form.d.ts +2 -0
  134. package/build/cjs/sub-blocks/BackgroundCard/dynamic-form.js +81 -0
  135. package/build/cjs/sub-blocks/BackgroundCard/index.d.ts +3 -0
  136. package/build/cjs/sub-blocks/BackgroundCard/index.js +19 -0
  137. package/build/cjs/sub-blocks/BannerCard/BannerCard.js +4 -3
  138. package/build/cjs/sub-blocks/BannerCard/index.d.ts +3 -0
  139. package/build/cjs/sub-blocks/BannerCard/index.js +22 -0
  140. package/build/cjs/sub-blocks/BasicCard/index.d.ts +3 -0
  141. package/build/cjs/sub-blocks/BasicCard/index.js +18 -0
  142. package/build/cjs/sub-blocks/Content/index.d.ts +3 -0
  143. package/build/cjs/sub-blocks/Content/index.js +18 -0
  144. package/build/cjs/sub-blocks/Content/schema.d.ts +1 -0
  145. package/build/cjs/sub-blocks/Content/schema.js +1 -0
  146. package/build/cjs/sub-blocks/Divider/index.d.ts +3 -0
  147. package/build/cjs/sub-blocks/Divider/index.js +15 -0
  148. package/build/cjs/sub-blocks/ImageCard/ImageCard.js +2 -2
  149. package/build/cjs/sub-blocks/ImageCard/index.d.ts +3 -0
  150. package/build/cjs/sub-blocks/ImageCard/index.js +18 -0
  151. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js +1 -1
  152. package/build/cjs/sub-blocks/LayoutItem/form.d.ts +8 -0
  153. package/build/cjs/sub-blocks/LayoutItem/form.js +14 -0
  154. package/build/cjs/sub-blocks/LayoutItem/index.d.ts +3 -0
  155. package/build/cjs/sub-blocks/LayoutItem/index.js +20 -0
  156. package/build/cjs/sub-blocks/LayoutItem/schema.d.ts +254 -246
  157. package/build/cjs/sub-blocks/LayoutItem/schema.js +7 -3
  158. package/build/cjs/sub-blocks/MediaCard/index.d.ts +3 -0
  159. package/build/cjs/sub-blocks/MediaCard/index.js +20 -0
  160. package/build/cjs/sub-blocks/PriceCard/index.d.ts +3 -0
  161. package/build/cjs/sub-blocks/PriceCard/index.js +31 -0
  162. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  163. package/build/cjs/sub-blocks/PriceDetailed/index.d.ts +4 -0
  164. package/build/cjs/sub-blocks/PriceDetailed/index.js +33 -0
  165. package/build/cjs/sub-blocks/Quote/index.d.ts +3 -0
  166. package/build/cjs/sub-blocks/Quote/index.js +21 -0
  167. package/build/cjs/types/actions/codes.d.ts +16 -0
  168. package/build/cjs/types/actions/codes.js +26 -0
  169. package/build/cjs/types/actions/index.d.ts +20 -0
  170. package/build/cjs/types/actions/index.js +10 -0
  171. package/build/cjs/types/actions/initial.d.ts +23 -0
  172. package/build/cjs/types/actions/initial.js +2 -0
  173. package/build/cjs/types/actions/insert.d.ts +19 -0
  174. package/build/cjs/types/actions/insert.js +2 -0
  175. package/build/cjs/types/actions/other.d.ts +16 -0
  176. package/build/cjs/types/actions/other.js +2 -0
  177. package/build/cjs/types/actions/overlay.d.ts +16 -0
  178. package/build/cjs/types/actions/overlay.js +2 -0
  179. package/build/cjs/types/actions/reorder.d.ts +17 -0
  180. package/build/cjs/types/actions/reorder.js +2 -0
  181. package/build/cjs/types/actions/select.d.ts +16 -0
  182. package/build/cjs/types/actions/select.js +2 -0
  183. package/build/cjs/types/dynamic-form.d.ts +92 -0
  184. package/build/cjs/types/dynamic-form.js +2 -0
  185. package/build/cjs/types/index.d.ts +14 -0
  186. package/build/cjs/types/index.js +2 -0
  187. package/build/cjs/utils/editor.d.ts +2 -0
  188. package/build/cjs/utils/editor.js +24 -0
  189. package/build/cjs/utils/form-generator.d.ts +9 -0
  190. package/build/cjs/utils/form-generator.js +126 -0
  191. package/build/cjs/utils/store.d.ts +16 -0
  192. package/build/cjs/utils/store.js +9 -0
  193. package/build/esm/blocks/Banner/Banner.js +3 -1
  194. package/build/esm/blocks/Banner/index.d.ts +3 -0
  195. package/build/esm/blocks/Banner/index.js +19 -0
  196. package/build/esm/blocks/CardLayout/CardLayout.css +1 -0
  197. package/build/esm/blocks/CardLayout/CardLayout.js +12 -7
  198. package/build/esm/blocks/CardLayout/index.d.ts +5 -0
  199. package/build/esm/blocks/CardLayout/index.js +162 -0
  200. package/build/esm/blocks/Companies/Companies.js +6 -4
  201. package/build/esm/blocks/Companies/index.d.ts +3 -0
  202. package/build/esm/blocks/Companies/index.js +15 -0
  203. package/build/esm/blocks/ContentLayout/ContentLayout.js +7 -6
  204. package/build/esm/blocks/ContentLayout/index.d.ts +11 -0
  205. package/build/esm/blocks/ContentLayout/index.js +14 -0
  206. package/build/esm/blocks/ContentLayout/schema.d.ts +1 -0
  207. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js +23 -21
  208. package/build/esm/blocks/ExtendedFeatures/index.d.ts +12 -0
  209. package/build/esm/blocks/ExtendedFeatures/index.js +15 -0
  210. package/build/esm/blocks/ExtendedFeatures/schema.d.ts +1 -0
  211. package/build/esm/blocks/ExtendedFeatures/schema.js +1 -0
  212. package/build/esm/blocks/FilterBlock/FilterBlock.js +12 -11
  213. package/build/esm/blocks/FilterBlock/index.d.ts +11 -0
  214. package/build/esm/blocks/FilterBlock/index.js +14 -0
  215. package/build/esm/blocks/Form/index.d.ts +12 -0
  216. package/build/esm/blocks/Form/index.js +15 -0
  217. package/build/esm/blocks/Header/dynamic-form.d.ts +2 -0
  218. package/build/esm/blocks/Header/dynamic-form.js +727 -0
  219. package/build/esm/blocks/Header/index.d.ts +8 -0
  220. package/build/esm/blocks/Header/index.js +11 -0
  221. package/build/esm/blocks/HeaderSlider/HeaderSlider.js +3 -2
  222. package/build/esm/blocks/HeaderSlider/index.d.ts +31 -0
  223. package/build/esm/blocks/HeaderSlider/index.js +35 -0
  224. package/build/esm/blocks/Icons/Icons.js +9 -6
  225. package/build/esm/blocks/Icons/index.d.ts +13 -0
  226. package/build/esm/blocks/Icons/index.js +16 -0
  227. package/build/esm/blocks/Info/index.d.ts +21 -0
  228. package/build/esm/blocks/Info/index.js +38 -0
  229. package/build/esm/blocks/Map/index.d.ts +11 -0
  230. package/build/esm/blocks/Map/index.js +14 -0
  231. package/build/esm/blocks/Media/index.d.ts +14 -0
  232. package/build/esm/blocks/Media/index.js +17 -0
  233. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +19 -16
  234. package/build/esm/blocks/PromoFeaturesBlock/index.d.ts +12 -0
  235. package/build/esm/blocks/PromoFeaturesBlock/index.js +15 -0
  236. package/build/esm/blocks/Questions/Questions.js +13 -11
  237. package/build/esm/blocks/Questions/index.d.ts +29 -0
  238. package/build/esm/blocks/Questions/index.js +44 -0
  239. package/build/esm/blocks/Share/Share.js +11 -10
  240. package/build/esm/blocks/Share/index.d.ts +12 -0
  241. package/build/esm/blocks/Share/index.js +15 -0
  242. package/build/esm/blocks/Slider/Slider.js +22 -17
  243. package/build/esm/blocks/Slider/dynamic-form.d.ts +3 -0
  244. package/build/esm/blocks/Slider/dynamic-form.js +222 -0
  245. package/build/esm/blocks/Slider/index.d.ts +8 -0
  246. package/build/esm/blocks/Slider/index.js +11 -0
  247. package/build/esm/blocks/Table/index.d.ts +8 -0
  248. package/build/esm/blocks/Table/index.js +11 -0
  249. package/build/esm/blocks/Table/schema.d.ts +1 -0
  250. package/build/esm/blocks/Table/schema.js +1 -0
  251. package/build/esm/blocks/Tabs/Tabs.js +10 -9
  252. package/build/esm/blocks/Tabs/index.d.ts +16 -0
  253. package/build/esm/blocks/Tabs/index.js +26 -0
  254. package/build/esm/blocks/TestEditorBlock/TestEditorBlock.d.ts +5 -0
  255. package/build/esm/blocks/TestEditorBlock/TestEditorBlock.js +7 -0
  256. package/build/esm/blocks/TestEditorBlock/form.d.ts +3 -0
  257. package/build/esm/blocks/TestEditorBlock/form.js +78 -0
  258. package/build/esm/blocks/TestEditorBlock/index.d.ts +11 -0
  259. package/build/esm/blocks/TestEditorBlock/index.js +13 -0
  260. package/build/esm/components/BlockBase/BlockBase.css +8 -16
  261. package/build/esm/components/Image/dynamic-form.d.ts +2 -0
  262. package/build/esm/components/Image/dynamic-form.js +80 -0
  263. package/build/esm/components/editor/ChildrenWrap/ChildrenWrap.css +5 -0
  264. package/build/esm/components/editor/ChildrenWrap/ChildrenWrap.d.ts +7 -0
  265. package/build/esm/components/editor/ChildrenWrap/ChildrenWrap.js +13 -0
  266. package/build/esm/components/editor/ItemWrap/ItemWrap.css +9 -0
  267. package/build/esm/components/editor/ItemWrap/ItemWrap.d.ts +7 -0
  268. package/build/esm/components/editor/ItemWrap/ItemWrap.js +13 -0
  269. package/build/esm/constructor-items.d.ts +18 -6
  270. package/build/esm/constructor-items.js +66 -0
  271. package/build/esm/containers/PageConstructor/PageConstructor.js +19 -16
  272. package/build/esm/containers/PageConstructor/Provider.js +4 -0
  273. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.css +10 -6
  274. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +5 -2
  275. package/build/esm/containers/PageConstructor/components/ConstructorBlock/hooks/useEditorBlockMouseEvents.d.ts +8 -0
  276. package/build/esm/containers/PageConstructor/components/ConstructorBlock/hooks/useEditorBlockMouseEvents.js +107 -0
  277. package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js +7 -6
  278. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.d.ts +1 -1
  279. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +1 -1
  280. package/build/esm/containers/PageConstructor/components/ConstructorLoadable/ConstructorLoadable.js +1 -1
  281. package/build/esm/containers/PageConstructor/components/ConstructorRow/ConstructorRow.js +1 -3
  282. package/build/esm/context/blockIdContext/blockIdContext.d.ts +2 -2
  283. package/build/esm/context/blockIdContext/blockIdContext.js +1 -1
  284. package/build/esm/context/editorContext/editorContext.d.ts +13 -0
  285. package/build/esm/context/editorContext/editorContext.js +6 -0
  286. package/build/esm/context/editorContext/editorProvider.d.ts +2 -0
  287. package/build/esm/context/editorContext/editorProvider.js +15 -0
  288. package/build/esm/context/editorContext/hooks/useEditorStore.d.ts +2 -0
  289. package/build/esm/context/editorContext/hooks/useEditorStore.js +11 -0
  290. package/build/esm/context/editorContext/index.d.ts +4 -0
  291. package/build/esm/context/editorContext/index.js +4 -0
  292. package/build/esm/context/editorContext/store.d.ts +24 -0
  293. package/build/esm/context/editorContext/store.js +36 -0
  294. package/build/esm/context/messagesContext/hooks/useMessageObserver.d.ts +4 -0
  295. package/build/esm/context/messagesContext/hooks/useMessageObserver.js +12 -0
  296. package/build/esm/context/messagesContext/hooks/useMessageSender.d.ts +2 -0
  297. package/build/esm/context/messagesContext/hooks/useMessageSender.js +7 -0
  298. package/build/esm/context/messagesContext/hooks/useMessagesStore.d.ts +2 -0
  299. package/build/esm/context/messagesContext/hooks/useMessagesStore.js +11 -0
  300. package/build/esm/context/messagesContext/index.d.ts +5 -0
  301. package/build/esm/context/messagesContext/index.js +5 -0
  302. package/build/esm/context/messagesContext/messagesContext.d.ts +14 -0
  303. package/build/esm/context/messagesContext/messagesContext.js +8 -0
  304. package/build/esm/context/messagesContext/messagesProvider.d.ts +2 -0
  305. package/build/esm/context/messagesContext/messagesProvider.js +68 -0
  306. package/build/esm/context/messagesContext/store.d.ts +25 -0
  307. package/build/esm/context/messagesContext/store.js +14 -0
  308. package/build/esm/context/messagesContext/types.d.ts +14 -0
  309. package/build/esm/context/messagesContext/types.js +1 -0
  310. package/build/esm/grid/Col/Col.d.ts +1 -1
  311. package/build/esm/grid/Grid/Grid.css +2 -6
  312. package/build/esm/hooks/useAnalytics.js +1 -1
  313. package/build/esm/hooks/useEditorInitialize.d.ts +7 -0
  314. package/build/esm/hooks/useEditorInitialize.js +87 -0
  315. package/build/esm/models/constructor-items/blocks.d.ts +2 -1
  316. package/build/esm/models/constructor-items/blocks.js +1 -0
  317. package/build/esm/models/constructor-items/sub-blocks.d.ts +1 -1
  318. package/build/esm/navigation/components/NavigationItem/NavigationItem.js +4 -1
  319. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +4 -1
  320. package/build/esm/navigation/containers/Layout/Layout.css +0 -1
  321. package/build/esm/schema/constants.d.ts +1 -1
  322. package/build/esm/schema/constants.js +2 -1
  323. package/build/esm/schema/index.d.ts +227 -0
  324. package/build/esm/schema/index.js +6 -2
  325. package/build/esm/sub-blocks/BackgroundCard/dynamic-form.d.ts +2 -0
  326. package/build/esm/sub-blocks/BackgroundCard/dynamic-form.js +78 -0
  327. package/build/esm/sub-blocks/BackgroundCard/index.d.ts +3 -0
  328. package/build/esm/sub-blocks/BackgroundCard/index.js +16 -0
  329. package/build/esm/sub-blocks/BannerCard/BannerCard.js +4 -3
  330. package/build/esm/sub-blocks/BannerCard/index.d.ts +3 -0
  331. package/build/esm/sub-blocks/BannerCard/index.js +19 -0
  332. package/build/esm/sub-blocks/BasicCard/index.d.ts +3 -0
  333. package/build/esm/sub-blocks/BasicCard/index.js +15 -0
  334. package/build/esm/sub-blocks/Content/index.d.ts +3 -0
  335. package/build/esm/sub-blocks/Content/index.js +15 -0
  336. package/build/esm/sub-blocks/Content/schema.d.ts +1 -0
  337. package/build/esm/sub-blocks/Content/schema.js +1 -0
  338. package/build/esm/sub-blocks/Divider/index.d.ts +3 -0
  339. package/build/esm/sub-blocks/Divider/index.js +12 -0
  340. package/build/esm/sub-blocks/ImageCard/ImageCard.js +2 -2
  341. package/build/esm/sub-blocks/ImageCard/index.d.ts +3 -0
  342. package/build/esm/sub-blocks/ImageCard/index.js +15 -0
  343. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js +1 -1
  344. package/build/esm/sub-blocks/LayoutItem/form.d.ts +8 -0
  345. package/build/esm/sub-blocks/LayoutItem/form.js +11 -0
  346. package/build/esm/sub-blocks/LayoutItem/index.d.ts +3 -0
  347. package/build/esm/sub-blocks/LayoutItem/index.js +17 -0
  348. package/build/esm/sub-blocks/LayoutItem/schema.d.ts +254 -246
  349. package/build/esm/sub-blocks/LayoutItem/schema.js +6 -2
  350. package/build/esm/sub-blocks/MediaCard/index.d.ts +3 -0
  351. package/build/esm/sub-blocks/MediaCard/index.js +17 -0
  352. package/build/esm/sub-blocks/PriceCard/index.d.ts +3 -0
  353. package/build/esm/sub-blocks/PriceCard/index.js +28 -0
  354. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  355. package/build/esm/sub-blocks/PriceDetailed/index.d.ts +4 -0
  356. package/build/esm/sub-blocks/PriceDetailed/index.js +30 -0
  357. package/build/esm/sub-blocks/Quote/index.d.ts +3 -0
  358. package/build/esm/sub-blocks/Quote/index.js +18 -0
  359. package/build/esm/types/actions/codes.d.ts +16 -0
  360. package/build/esm/types/actions/codes.js +23 -0
  361. package/build/esm/types/actions/index.d.ts +20 -0
  362. package/build/esm/types/actions/index.js +7 -0
  363. package/build/esm/types/actions/initial.d.ts +23 -0
  364. package/build/esm/types/actions/initial.js +1 -0
  365. package/build/esm/types/actions/insert.d.ts +19 -0
  366. package/build/esm/types/actions/insert.js +1 -0
  367. package/build/esm/types/actions/other.d.ts +16 -0
  368. package/build/esm/types/actions/other.js +1 -0
  369. package/build/esm/types/actions/overlay.d.ts +16 -0
  370. package/build/esm/types/actions/overlay.js +1 -0
  371. package/build/esm/types/actions/reorder.d.ts +17 -0
  372. package/build/esm/types/actions/reorder.js +1 -0
  373. package/build/esm/types/actions/select.d.ts +16 -0
  374. package/build/esm/types/actions/select.js +1 -0
  375. package/build/esm/types/dynamic-form.d.ts +92 -0
  376. package/build/esm/types/dynamic-form.js +1 -0
  377. package/build/esm/types/index.d.ts +14 -0
  378. package/build/esm/types/index.js +1 -0
  379. package/build/esm/utils/editor.d.ts +2 -0
  380. package/build/esm/utils/editor.js +20 -0
  381. package/build/esm/utils/form-generator.d.ts +9 -0
  382. package/build/esm/utils/form-generator.js +121 -0
  383. package/build/esm/utils/store.d.ts +16 -0
  384. package/build/esm/utils/store.js +5 -0
  385. package/package.json +5 -2
  386. package/server/models/constructor-items/blocks.d.ts +2 -1
  387. package/server/models/constructor-items/blocks.js +1 -0
  388. package/server/models/constructor-items/sub-blocks.d.ts +1 -1
  389. package/styles/mixins.scss +9 -9
  390. package/widget/index.js +1 -1
@@ -0,0 +1,36 @@
1
+ import { ActionTypes } from '../../types/actions';
2
+ import { initializeStore } from '../../utils/store';
3
+ export const createEditorStore = initializeStore({
4
+ manipulateOverlayMode: false,
5
+ isSelectActive: false,
6
+ initialized: false,
7
+ }, (set, _get) => ({
8
+ reducer: (action) => {
9
+ switch (action.type) {
10
+ case ActionTypes.EditorReady: {
11
+ set((state) => (Object.assign(Object.assign({}, state), { initialized: true })));
12
+ break;
13
+ }
14
+ case ActionTypes.ReorderModeEnable: {
15
+ set((state) => (Object.assign(Object.assign({}, state), { manipulateOverlayMode: 'reorder' })));
16
+ break;
17
+ }
18
+ case ActionTypes.ReorderModeDisable: {
19
+ set((state) => (Object.assign(Object.assign({}, state), { manipulateOverlayMode: false })));
20
+ break;
21
+ }
22
+ case ActionTypes.InsertModeEnable: {
23
+ set((state) => (Object.assign(Object.assign({}, state), { manipulateOverlayMode: 'insert' })));
24
+ break;
25
+ }
26
+ case ActionTypes.InsertModeDisable: {
27
+ set((state) => (Object.assign(Object.assign({}, state), { manipulateOverlayMode: false })));
28
+ break;
29
+ }
30
+ case ActionTypes.SelectBlock: {
31
+ set((state) => (Object.assign(Object.assign({}, state), { isSelectActive: true })));
32
+ break;
33
+ }
34
+ }
35
+ },
36
+ }));
@@ -0,0 +1,4 @@
1
+ import { DependencyList } from 'react';
2
+ import { Action } from '../../../types/actions';
3
+ export declare const useMessageObserver: <A extends Action>(type: A["type"], callback: (payload: A["payload"]) => void, deps?: DependencyList) => void;
4
+ export default useMessageObserver;
@@ -0,0 +1,12 @@
1
+ import { useEffect } from 'react';
2
+ import { useMessagesStore } from './useMessagesStore';
3
+ export const useMessageObserver = (type, callback, deps = []) => {
4
+ const { subscribe, unsubscribe } = useMessagesStore();
5
+ useEffect(() => {
6
+ subscribe(type, callback);
7
+ return () => {
8
+ unsubscribe(type, callback);
9
+ };
10
+ }, deps); // eslint-disable-line react-hooks/exhaustive-deps
11
+ };
12
+ export default useMessageObserver;
@@ -0,0 +1,2 @@
1
+ export declare const useMessageSender: () => (action: import("../../../types/actions").Action, options?: import("../types").SendOptions | undefined) => void;
2
+ export default useMessageSender;
@@ -0,0 +1,7 @@
1
+ import { useContext } from 'react';
2
+ import { PostMessageContext } from '../messagesContext';
3
+ export const useMessageSender = () => {
4
+ const { sendMessage } = useContext(PostMessageContext);
5
+ return sendMessage;
6
+ };
7
+ export default useMessageSender;
@@ -0,0 +1,2 @@
1
+ export declare const useMessagesStore: () => import("../store").MessagesStore;
2
+ export default useMessagesStore;
@@ -0,0 +1,11 @@
1
+ import { useContext } from 'react';
2
+ import { useStore } from 'zustand';
3
+ import { PostMessageContext } from '../messagesContext';
4
+ export const useMessagesStore = () => {
5
+ const { state } = useContext(PostMessageContext);
6
+ if (!state) {
7
+ throw new Error('Missing PostMessageContext');
8
+ }
9
+ return useStore(state);
10
+ };
11
+ export default useMessagesStore;
@@ -0,0 +1,5 @@
1
+ export * from './messagesContext';
2
+ export * from './messagesProvider';
3
+ export * from './hooks/useMessageSender';
4
+ export * from './hooks/useMessageObserver';
5
+ export * from './hooks/useMessagesStore';
@@ -0,0 +1,5 @@
1
+ export * from './messagesContext';
2
+ export * from './messagesProvider';
3
+ export * from './hooks/useMessageSender';
4
+ export * from './hooks/useMessageObserver';
5
+ export * from './hooks/useMessagesStore';
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Context for sending messages between Editor and App
3
+ * Same exist in Editor
4
+ **/
5
+ import React from 'react';
6
+ import { StoreApi } from 'zustand';
7
+ import { Action } from '../../types/actions';
8
+ import { MessagesStore } from './store';
9
+ import { SendOptions } from './types';
10
+ export interface PostMessageContextProps {
11
+ state?: StoreApi<MessagesStore>;
12
+ sendMessage: (action: Action, options?: SendOptions) => void;
13
+ }
14
+ export declare const PostMessageContext: React.Context<PostMessageContextProps>;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Context for sending messages between Editor and App
3
+ * Same exist in Editor
4
+ **/
5
+ import React from 'react';
6
+ export const PostMessageContext = React.createContext({
7
+ sendMessage: () => { },
8
+ });
@@ -0,0 +1,2 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export declare const PostMessageProvider: ({ children }: PropsWithChildren) => JSX.Element;
@@ -0,0 +1,68 @@
1
+ import React, { useCallback, useEffect, useRef } from 'react';
2
+ import { useEditorStore } from '../editorContext';
3
+ import { PostMessageContext } from './messagesContext';
4
+ import { createMessagesStore } from './store';
5
+ const DEBUG_MODE = false;
6
+ export const PostMessageProvider = ({ children }) => {
7
+ const storeRef = useRef();
8
+ if (!storeRef.current) {
9
+ storeRef.current = createMessagesStore();
10
+ }
11
+ const editorStore = useEditorStore();
12
+ const sendPostMessage = useCallback((args) => {
13
+ window.parent.postMessage(args, '*');
14
+ }, []);
15
+ const notifySubscribers = useCallback((action, source) => {
16
+ const meta = { source };
17
+ const storesWithReducer = [editorStore];
18
+ const { type, payload } = action;
19
+ const store = storeRef.current;
20
+ if (!type) {
21
+ return;
22
+ }
23
+ if (store) {
24
+ const { subscribers } = store.getState();
25
+ const foundedSubscribers = subscribers.filter((subscriber) => subscriber.action === type);
26
+ for (const storeWithReducer of storesWithReducer) {
27
+ storeWithReducer.reducer(action, meta);
28
+ }
29
+ if (foundedSubscribers.length) {
30
+ for (const subscriber of foundedSubscribers) {
31
+ subscriber.handler(payload, meta);
32
+ }
33
+ }
34
+ }
35
+ }, [editorStore]);
36
+ useEffect(() => {
37
+ const onMessage = (e) => {
38
+ const { action, debug } = e.data;
39
+ if (action && action.type) {
40
+ if (debug) {
41
+ // eslint-disable-next-line no-console
42
+ console.log(`🔵 ➡️ Editor ${action.type}`, action.payload);
43
+ }
44
+ notifySubscribers(action, 'editor');
45
+ }
46
+ };
47
+ window.addEventListener('message', onMessage);
48
+ return () => {
49
+ window.removeEventListener('message', onMessage);
50
+ };
51
+ }, [notifySubscribers]);
52
+ const sendMessage = useCallback((action, { debug = DEBUG_MODE, direction = 'both' } = {}) => {
53
+ if (debug) {
54
+ // eslint-disable-next-line no-console
55
+ console.log(`🟢 Website ➡️ ${action.type}`, action.payload);
56
+ }
57
+ if (direction === 'both' || direction === 'editor') {
58
+ sendPostMessage({ action, debug });
59
+ }
60
+ if (direction === 'both' || direction === 'pc') {
61
+ notifySubscribers(action, 'pc');
62
+ }
63
+ }, [notifySubscribers, sendPostMessage]);
64
+ return (React.createElement(PostMessageContext.Provider, { value: {
65
+ state: storeRef.current,
66
+ sendMessage: sendMessage,
67
+ } }, children));
68
+ };
@@ -0,0 +1,25 @@
1
+ import { Subscriber } from '../../types';
2
+ import { SubscriptionFunc } from './types';
3
+ export interface MessagesState {
4
+ subscribers: Subscriber[];
5
+ }
6
+ export interface MessagesMethods {
7
+ subscribe: SubscriptionFunc;
8
+ unsubscribe: SubscriptionFunc;
9
+ }
10
+ export type MessagesStore = MessagesState & MessagesMethods;
11
+ export declare const createMessagesStore: (overrideInitialState?: Partial<MessagesState> | undefined) => import("zustand").UseBoundStore<Omit<Omit<import("zustand").StoreApi<MessagesState & MessagesMethods>, "setState"> & {
12
+ setState<A extends string | {
13
+ type: string;
14
+ }>(partial: (MessagesState & MessagesMethods) | Partial<MessagesState & MessagesMethods> | ((state: MessagesState & MessagesMethods) => (MessagesState & MessagesMethods) | Partial<MessagesState & MessagesMethods>), replace?: boolean | undefined, action?: A | undefined): void;
15
+ }, "persist"> & {
16
+ persist: {
17
+ setOptions: (options: Partial<import("zustand/middleware").PersistOptions<MessagesState & MessagesMethods, MessagesState & MessagesMethods>>) => void;
18
+ clearStorage: () => void;
19
+ rehydrate: () => void | Promise<void>;
20
+ hasHydrated: () => boolean;
21
+ onHydrate: (fn: (state: MessagesState & MessagesMethods) => void) => () => void;
22
+ onFinishHydration: (fn: (state: MessagesState & MessagesMethods) => void) => () => void;
23
+ getOptions: () => Partial<import("zustand/middleware").PersistOptions<MessagesState & MessagesMethods, MessagesState & MessagesMethods>>;
24
+ };
25
+ }>;
@@ -0,0 +1,14 @@
1
+ import { initializeStore } from '../../utils/store';
2
+ export const createMessagesStore = initializeStore({
3
+ subscribers: [],
4
+ }, (set, _get) => ({
5
+ subscribe: (type, payloadCallback) => {
6
+ set((state) => (Object.assign(Object.assign({}, state), { subscribers: [...state.subscribers, { action: type, handler: payloadCallback }] })));
7
+ return () => {
8
+ set((state) => (Object.assign(Object.assign({}, state), { subscribers: state.subscribers.filter(({ handler, action }) => payloadCallback !== handler || type !== action) })));
9
+ };
10
+ },
11
+ unsubscribe: (type, payloadCallback) => {
12
+ set((state) => (Object.assign(Object.assign({}, state), { subscribers: state.subscribers.filter(({ handler, action }) => payloadCallback !== handler || type !== action) })));
13
+ },
14
+ }));
@@ -0,0 +1,14 @@
1
+ import { Action } from '../../types/actions';
2
+ export interface SendOptions {
3
+ direction?: MetaSource | 'both';
4
+ debug?: boolean;
5
+ }
6
+ export interface PostMessageArgs {
7
+ action: Action;
8
+ debug: boolean;
9
+ }
10
+ export type SubscriptionFunc = <A extends Action>(type: A['type'], payloadCallback: (payload: A['payload'], meta: Meta) => void) => void;
11
+ export type MetaSource = 'pc' | 'editor';
12
+ export interface Meta {
13
+ source: MetaSource;
14
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -5,4 +5,4 @@ export interface GridColumnProps extends GridColumnClassParams, Refable<HTMLDivE
5
5
  style?: CSSProperties;
6
6
  children?: React.ReactNode;
7
7
  }
8
- export declare const Col: React.ForwardRefExoticComponent<Pick<WithChildren<GridColumnProps>, "style" | "children" | "sizes" | "className" | "hidden" | "role" | "qa" | "reset" | "visible" | "offsets" | "orders" | "alignSelf" | "justifyContent"> & React.RefAttributes<HTMLDivElement>>;
8
+ export declare const Col: React.ForwardRefExoticComponent<Pick<WithChildren<GridColumnProps>, "style" | "children" | "sizes" | "className" | "hidden" | "role" | "qa" | "offsets" | "orders" | "visible" | "alignSelf" | "justifyContent" | "reset"> & React.RefAttributes<HTMLDivElement>>;
@@ -2,15 +2,11 @@
2
2
  .pc-Grid .container {
3
3
  max-width: calc(1232px + 8px * 2 + 40px * 2);
4
4
  }
5
- .pc-Grid .row {
6
- margin-right: 0;
7
- margin-left: 0;
8
- }
9
5
  .pc-Grid .pc-Grid .container-fluid,
10
6
  .pc-Grid .pc-Grid .container {
11
7
  padding: 0;
12
8
  }
13
- .pc-Grid .row .row {
9
+ .pc-Grid .row {
14
10
  margin: 0 -8px;
15
11
  }
16
12
  .pc-Grid_debug .container,
@@ -81,7 +77,7 @@
81
77
  .pc-Grid .col-12 {
82
78
  padding: 0 8px;
83
79
  }
84
- .pc-Grid .row .row {
80
+ .pc-Grid .row {
85
81
  margin: 0 -8px;
86
82
  }
87
83
  }
@@ -8,7 +8,7 @@ export const useAnalytics = (name = '', target) => {
8
8
  const defaultEvent = useMemo(() => name
9
9
  ? {
10
10
  name,
11
- context,
11
+ context: String(context),
12
12
  type: PredefinedEventTypes.Default,
13
13
  target: target,
14
14
  }
@@ -0,0 +1,7 @@
1
+ import { PageContent } from '../models';
2
+ interface UseEditorInitializeProps {
3
+ content: PageContent;
4
+ setContent: (content: PageContent) => void;
5
+ }
6
+ declare const useEditorInitialize: ({ setContent, content }: UseEditorInitializeProps) => void;
7
+ export default useEditorInitialize;
@@ -0,0 +1,87 @@
1
+ import { useCallback, useContext, useEffect } from 'react';
2
+ import _ from 'lodash';
3
+ import { blockDataMap } from '../constructor-items';
4
+ import { EditorContext, useEditorStore } from '../context/editorContext';
5
+ import { useMessageObserver, useMessageSender } from '../context/messagesContext';
6
+ import { defaultComponentsConfigurationSchema } from '../schema';
7
+ import { ActionTypes } from '../types/actions';
8
+ import { generateFromAJV } from '../utils/form-generator';
9
+ const useEditorInitialize = ({ setContent, content }) => {
10
+ const { manipulateOverlayMode, isSelectActive } = useEditorStore();
11
+ const sendMessage = useMessageSender();
12
+ const { activeElement } = useContext(EditorContext);
13
+ const onResize = useCallback(() => {
14
+ const height = document.documentElement.getBoundingClientRect().height;
15
+ sendMessage({
16
+ type: ActionTypes.SetHeight,
17
+ payload: { height },
18
+ });
19
+ if (isSelectActive && activeElement) {
20
+ const rect = activeElement.getClientRects().item(0);
21
+ if (rect) {
22
+ sendMessage({
23
+ type: ActionTypes.UpdateSelectedBlockRect,
24
+ payload: {
25
+ rect: rect,
26
+ },
27
+ });
28
+ }
29
+ }
30
+ }, [activeElement, isSelectActive, sendMessage]);
31
+ useMessageObserver(ActionTypes.UpdateConfigs, ({ content: newContent }) => {
32
+ setContent(newContent);
33
+ });
34
+ useEffect(() => {
35
+ onResize();
36
+ }, [content, onResize]);
37
+ // Fires only once
38
+ useEffect(() => {
39
+ const height = document.documentElement.getBoundingClientRect().height;
40
+ sendMessage({
41
+ type: ActionTypes.IframeReady,
42
+ payload: { height },
43
+ }, { direction: 'editor' });
44
+ sendMessage({
45
+ type: ActionTypes.BlocksConfigs,
46
+ payload: {
47
+ blocks: Object.entries(blockDataMap).reduce((acc, [key, value]) => {
48
+ acc.push({ type: key, schema: value.schema });
49
+ return acc;
50
+ }, []),
51
+ subBlocks: [],
52
+ global: generateFromAJV(defaultComponentsConfigurationSchema),
53
+ },
54
+ });
55
+ }, [sendMessage]);
56
+ useEffect(() => {
57
+ const onMouseUp = (e) => {
58
+ if (manipulateOverlayMode === 'insert') {
59
+ e.preventDefault();
60
+ sendMessage({ type: ActionTypes.InsertModeDisable, payload: undefined });
61
+ }
62
+ if (manipulateOverlayMode === 'reorder') {
63
+ e.preventDefault();
64
+ sendMessage({ type: ActionTypes.ReorderModeDisable, payload: undefined });
65
+ }
66
+ };
67
+ const onMouseMove = (event) => {
68
+ if (manipulateOverlayMode) {
69
+ sendMessage({
70
+ type: ActionTypes.OverlayModeOnMove,
71
+ payload: { cursor: { x: event.clientX, y: event.clientY } },
72
+ });
73
+ }
74
+ };
75
+ const throttleOnMouseMove = _.throttle(onMouseMove, 1);
76
+ const throttleOnMouseUp = _.throttle(onMouseUp, 1);
77
+ document.addEventListener('mousemove', throttleOnMouseMove);
78
+ document.addEventListener('mouseup', throttleOnMouseUp);
79
+ window.addEventListener('resize', onResize);
80
+ return () => {
81
+ document.removeEventListener('mousemove', throttleOnMouseMove);
82
+ document.removeEventListener('mouseup', throttleOnMouseUp);
83
+ window.removeEventListener('resize', onResize);
84
+ };
85
+ }, [activeElement, manipulateOverlayMode, onResize, sendMessage]);
86
+ };
87
+ export default useEditorInitialize;
@@ -24,7 +24,8 @@ export declare enum BlockType {
24
24
  ShareBlock = "share-block",
25
25
  MapBlock = "map-block",
26
26
  FilterBlock = "filter-block",
27
- FormBlock = "form-block"
27
+ FormBlock = "form-block",
28
+ TestEditorBlock = "test-editor-block"
28
29
  }
29
30
  export declare const BlockTypes: BlockType[];
30
31
  export declare const HeaderBlockTypes: BlockType[];
@@ -19,6 +19,7 @@ export var BlockType;
19
19
  BlockType["MapBlock"] = "map-block";
20
20
  BlockType["FilterBlock"] = "filter-block";
21
21
  BlockType["FormBlock"] = "form-block";
22
+ BlockType["TestEditorBlock"] = "test-editor-block";
22
23
  })(BlockType || (BlockType = {}));
23
24
  export const BlockTypes = Object.values(BlockType);
24
25
  export const HeaderBlockTypes = [BlockType.HeaderBlock, BlockType.HeaderSliderBlock];
@@ -117,7 +117,7 @@ export interface BannerCardProps {
117
117
  disableCompress?: boolean;
118
118
  color?: ThemeSupporting<string>;
119
119
  theme?: TextTheme;
120
- button: Pick<ButtonProps, 'text' | 'url' | 'target' | 'theme'>;
120
+ button?: Pick<ButtonProps, 'text' | 'url' | 'target' | 'theme'>;
121
121
  mediaView?: MediaView;
122
122
  }
123
123
  export interface MediaCardProps extends MediaProps, AnalyticsEventsBase, CardBaseProps {
@@ -23,7 +23,10 @@ const NavigationItem = (_a) => {
23
23
  ? componentProperties
24
24
  : Object.assign(Object.assign({}, componentProperties), { menuLayout });
25
25
  }, [data, props, type, menuLayout]);
26
- return (React.createElement(BlockIdContext.Provider, { value: ANALYTICS_ID },
26
+ return (
27
+ // TODO: fix any
28
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
29
+ React.createElement(BlockIdContext.Provider, { value: ANALYTICS_ID },
27
30
  React.createElement("li", { className: b({ 'menu-layout': menuLayout }, className) },
28
31
  React.createElement(Component, Object.assign({}, componentProps, { className: b('content', { type }) })))));
29
32
  };
@@ -8,6 +8,9 @@ const ANALYTICS_ID = 'navigation';
8
8
  export const NavigationButton = (props) => {
9
9
  const { url, target, className } = props;
10
10
  const classes = b(null, className);
11
- return (React.createElement(BlockIdContext.Provider, { value: ANALYTICS_ID }, target ? (React.createElement(Button, Object.assign({ className: classes }, props, { url: url }))) : (React.createElement(RouterLink, { href: url },
11
+ return (
12
+ // TODO: fix any
13
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
14
+ React.createElement(BlockIdContext.Provider, { value: ANALYTICS_ID }, target ? (React.createElement(Button, Object.assign({ className: classes }, props, { url: url }))) : (React.createElement(RouterLink, { href: url },
12
15
  React.createElement(Button, Object.assign({}, props, { className: classes, url: url }))))));
13
16
  };
@@ -1,7 +1,6 @@
1
1
  .pc-layout {
2
2
  display: flex;
3
3
  flex-direction: column;
4
- min-height: 100vh;
5
4
  }
6
5
  .pc-layout__content {
7
6
  display: flex;
@@ -119,7 +119,7 @@ export declare const cardSchemas: {
119
119
  };
120
120
  } | undefined;
121
121
  controlPosition: {
122
- type: string; /** @deprecated */
122
+ type: string;
123
123
  enum: string[];
124
124
  };
125
125
  border: {
@@ -1,6 +1,7 @@
1
+ import { TestEditorBlockSchema } from '../blocks/TestEditorBlock';
1
2
  import { BannerBlock, BannerCard, CardLayoutBlock, CompaniesBlock, ContentLayoutBlock, ExtendedFeaturesBlock, FilterBlock, FormBlock, HeaderBlock, HeaderSliderBlock, IconsBlock, InfoBlock, MapBlock, MediaBlock, PromoFeaturesBlock, QuestionsBlock, ShareBlock, SliderBlock, TableBlock, TabsBlock, } from './validators/blocks';
2
3
  import { BackgroundCard, BasicCard, Divider, ImageCard, MediaCardBlock, PriceCardBlock, PriceDetailedBlock, Quote, } from './validators/sub-blocks';
3
- export const blockSchemas = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, Divider), ExtendedFeaturesBlock), PromoFeaturesBlock), SliderBlock), QuestionsBlock), HeaderBlock), BannerBlock), CompaniesBlock), MediaBlock), MapBlock), InfoBlock), TableBlock), TabsBlock), HeaderSliderBlock), IconsBlock), CardLayoutBlock), ContentLayoutBlock), ShareBlock), FilterBlock), FormBlock);
4
+ export const blockSchemas = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, Divider), ExtendedFeaturesBlock), PromoFeaturesBlock), SliderBlock), QuestionsBlock), HeaderBlock), BannerBlock), CompaniesBlock), MediaBlock), MapBlock), InfoBlock), TableBlock), TabsBlock), HeaderSliderBlock), IconsBlock), CardLayoutBlock), ContentLayoutBlock), ShareBlock), FilterBlock), FormBlock), TestEditorBlockSchema);
4
5
  export const cardSchemas = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, MediaCardBlock), BannerCard), PriceDetailedBlock), BackgroundCard), Quote), BasicCard), PriceCardBlock), ImageCard);
5
6
  export const constructorBlockSchemaNames = [
6
7
  'divider',