@gravity-ui/page-constructor 6.3.0 → 6.3.2-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 (536) hide show
  1. package/README.md +31 -1
  2. package/build/cjs/blocks/Banner/Banner.js +2 -1
  3. package/build/cjs/blocks/Banner/Banner.js.map +1 -1
  4. package/build/cjs/blocks/Banner/index.d.ts +3 -0
  5. package/build/cjs/blocks/Banner/index.js +24 -0
  6. package/build/cjs/blocks/Banner/index.js.map +1 -0
  7. package/build/cjs/blocks/CardLayout/CardLayout.css +1 -0
  8. package/build/cjs/blocks/CardLayout/CardLayout.js +4 -3
  9. package/build/cjs/blocks/CardLayout/CardLayout.js.map +1 -1
  10. package/build/cjs/blocks/CardLayout/index.d.ts +5 -0
  11. package/build/cjs/blocks/CardLayout/index.js +186 -0
  12. package/build/cjs/blocks/CardLayout/index.js.map +1 -0
  13. package/build/cjs/blocks/Companies/Companies.js +2 -1
  14. package/build/cjs/blocks/Companies/Companies.js.map +1 -1
  15. package/build/cjs/blocks/Companies/index.d.ts +3 -0
  16. package/build/cjs/blocks/Companies/index.js +20 -0
  17. package/build/cjs/blocks/Companies/index.js.map +1 -0
  18. package/build/cjs/blocks/ContentLayout/ContentLayout.js +1 -1
  19. package/build/cjs/blocks/ContentLayout/ContentLayout.js.map +1 -1
  20. package/build/cjs/blocks/ContentLayout/index.d.ts +41 -0
  21. package/build/cjs/blocks/ContentLayout/index.js +81 -0
  22. package/build/cjs/blocks/ContentLayout/index.js.map +1 -0
  23. package/build/cjs/blocks/ContentLayout/schema.d.ts +1 -0
  24. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js +13 -12
  25. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  26. package/build/cjs/blocks/ExtendedFeatures/index.d.ts +58 -0
  27. package/build/cjs/blocks/ExtendedFeatures/index.js +77 -0
  28. package/build/cjs/blocks/ExtendedFeatures/index.js.map +1 -0
  29. package/build/cjs/blocks/ExtendedFeatures/schema.d.ts +1 -0
  30. package/build/cjs/blocks/ExtendedFeatures/schema.js +1 -0
  31. package/build/cjs/blocks/ExtendedFeatures/schema.js.map +1 -1
  32. package/build/cjs/blocks/FilterBlock/FilterBlock.js +5 -5
  33. package/build/cjs/blocks/FilterBlock/FilterBlock.js.map +1 -1
  34. package/build/cjs/blocks/FilterBlock/index.d.ts +29 -0
  35. package/build/cjs/blocks/FilterBlock/index.js +98 -0
  36. package/build/cjs/blocks/FilterBlock/index.js.map +1 -0
  37. package/build/cjs/blocks/Form/index.d.ts +13 -0
  38. package/build/cjs/blocks/Form/index.js +20 -0
  39. package/build/cjs/blocks/Form/index.js.map +1 -0
  40. package/build/cjs/blocks/Header/dynamic-form.d.ts +2 -0
  41. package/build/cjs/blocks/Header/dynamic-form.js +731 -0
  42. package/build/cjs/blocks/Header/dynamic-form.js.map +1 -0
  43. package/build/cjs/blocks/Header/index.d.ts +20 -0
  44. package/build/cjs/blocks/Header/index.js +34 -0
  45. package/build/cjs/blocks/Header/index.js.map +1 -0
  46. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js +2 -1
  47. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  48. package/build/cjs/blocks/HeaderSlider/index.d.ts +32 -0
  49. package/build/cjs/blocks/HeaderSlider/index.js +40 -0
  50. package/build/cjs/blocks/HeaderSlider/index.js.map +1 -0
  51. package/build/cjs/blocks/Icons/Icons.js +8 -6
  52. package/build/cjs/blocks/Icons/Icons.js.map +1 -1
  53. package/build/cjs/blocks/Icons/index.d.ts +20 -0
  54. package/build/cjs/blocks/Icons/index.js +64 -0
  55. package/build/cjs/blocks/Icons/index.js.map +1 -0
  56. package/build/cjs/blocks/Info/index.d.ts +22 -0
  57. package/build/cjs/blocks/Info/index.js +43 -0
  58. package/build/cjs/blocks/Info/index.js.map +1 -0
  59. package/build/cjs/blocks/Map/index.d.ts +12 -0
  60. package/build/cjs/blocks/Map/index.js +19 -0
  61. package/build/cjs/blocks/Map/index.js.map +1 -0
  62. package/build/cjs/blocks/Media/index.d.ts +39 -0
  63. package/build/cjs/blocks/Media/index.js +57 -0
  64. package/build/cjs/blocks/Media/index.js.map +1 -0
  65. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +15 -13
  66. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
  67. package/build/cjs/blocks/PromoFeaturesBlock/index.d.ts +22 -0
  68. package/build/cjs/blocks/PromoFeaturesBlock/index.js +49 -0
  69. package/build/cjs/blocks/PromoFeaturesBlock/index.js.map +1 -0
  70. package/build/cjs/blocks/Questions/Questions.js +6 -5
  71. package/build/cjs/blocks/Questions/Questions.js.map +1 -1
  72. package/build/cjs/blocks/Questions/index.d.ts +30 -0
  73. package/build/cjs/blocks/Questions/index.js +49 -0
  74. package/build/cjs/blocks/Questions/index.js.map +1 -0
  75. package/build/cjs/blocks/Share/Share.js +11 -10
  76. package/build/cjs/blocks/Share/Share.js.map +1 -1
  77. package/build/cjs/blocks/Share/index.d.ts +13 -0
  78. package/build/cjs/blocks/Share/index.js +20 -0
  79. package/build/cjs/blocks/Share/index.js.map +1 -0
  80. package/build/cjs/blocks/Slider/Slider.js +12 -10
  81. package/build/cjs/blocks/Slider/Slider.js.map +1 -1
  82. package/build/cjs/blocks/Slider/dynamic-form.d.ts +3 -0
  83. package/build/cjs/blocks/Slider/dynamic-form.js +226 -0
  84. package/build/cjs/blocks/Slider/dynamic-form.js.map +1 -0
  85. package/build/cjs/blocks/Slider/index.d.ts +28 -0
  86. package/build/cjs/blocks/Slider/index.js +47 -0
  87. package/build/cjs/blocks/Slider/index.js.map +1 -0
  88. package/build/cjs/blocks/Table/index.d.ts +18 -0
  89. package/build/cjs/blocks/Table/index.js +32 -0
  90. package/build/cjs/blocks/Table/index.js.map +1 -0
  91. package/build/cjs/blocks/Table/schema.d.ts +1 -0
  92. package/build/cjs/blocks/Table/schema.js +1 -0
  93. package/build/cjs/blocks/Table/schema.js.map +1 -1
  94. package/build/cjs/blocks/Tabs/Tabs.js +4 -4
  95. package/build/cjs/blocks/Tabs/Tabs.js.map +1 -1
  96. package/build/cjs/blocks/Tabs/index.d.ts +17 -0
  97. package/build/cjs/blocks/Tabs/index.js +31 -0
  98. package/build/cjs/blocks/Tabs/index.js.map +1 -0
  99. package/build/cjs/blocks/TestEditorBlock/TestEditorBlock.d.ts +5 -0
  100. package/build/cjs/blocks/TestEditorBlock/TestEditorBlock.js +12 -0
  101. package/build/cjs/blocks/TestEditorBlock/TestEditorBlock.js.map +1 -0
  102. package/build/cjs/blocks/TestEditorBlock/form.d.ts +3 -0
  103. package/build/cjs/blocks/TestEditorBlock/form.js +91 -0
  104. package/build/cjs/blocks/TestEditorBlock/form.js.map +1 -0
  105. package/build/cjs/blocks/TestEditorBlock/index.d.ts +11 -0
  106. package/build/cjs/blocks/TestEditorBlock/index.js +18 -0
  107. package/build/cjs/blocks/TestEditorBlock/index.js.map +1 -0
  108. package/build/cjs/components/BlockBase/BlockBase.css +8 -16
  109. package/build/cjs/components/Image/dynamic-form.d.ts +2 -0
  110. package/build/cjs/components/Image/dynamic-form.js +85 -0
  111. package/build/cjs/components/Image/dynamic-form.js.map +1 -0
  112. package/build/cjs/components/editor/ItemWrap/ItemWrap.css +9 -0
  113. package/build/cjs/components/editor/ItemWrap/ItemWrap.d.ts +6 -0
  114. package/build/cjs/components/editor/ItemWrap/ItemWrap.js +12 -0
  115. package/build/cjs/components/editor/ItemWrap/ItemWrap.js.map +1 -0
  116. package/build/cjs/constructor-items.d.ts +22 -6
  117. package/build/cjs/constructor-items.js +80 -6
  118. package/build/cjs/constructor-items.js.map +1 -1
  119. package/build/cjs/containers/PageConstructor/PageConstructor.d.ts +1 -1
  120. package/build/cjs/containers/PageConstructor/PageConstructor.js +18 -10
  121. package/build/cjs/containers/PageConstructor/PageConstructor.js.map +1 -1
  122. package/build/cjs/containers/PageConstructor/Provider.js +2 -0
  123. package/build/cjs/containers/PageConstructor/Provider.js.map +1 -1
  124. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.css +10 -6
  125. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +3 -1
  126. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  127. package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js +7 -6
  128. package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map +1 -1
  129. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.d.ts +1 -1
  130. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -1
  131. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
  132. package/build/cjs/containers/PageConstructor/components/ConstructorLoadable/ConstructorLoadable.js +2 -1
  133. package/build/cjs/containers/PageConstructor/components/ConstructorLoadable/ConstructorLoadable.js.map +1 -1
  134. package/build/cjs/containers/PageConstructor/components/ConstructorRow/ConstructorRow.js +1 -2
  135. package/build/cjs/containers/PageConstructor/components/ConstructorRow/ConstructorRow.js.map +1 -1
  136. package/build/cjs/context/blockIdContext/blockIdContext.d.ts +2 -2
  137. package/build/cjs/context/blockIdContext/blockIdContext.js +1 -1
  138. package/build/cjs/context/blockIdContext/blockIdContext.js.map +1 -1
  139. package/build/cjs/context/editorStoreContext/PCEditorStoreContext.d.ts +7 -0
  140. package/build/cjs/context/editorStoreContext/PCEditorStoreContext.js +10 -0
  141. package/build/cjs/context/editorStoreContext/PCEditorStoreContext.js.map +1 -0
  142. package/build/cjs/context/editorStoreContext/PCEditorStoreProvider.d.ts +5 -0
  143. package/build/cjs/context/editorStoreContext/PCEditorStoreProvider.js +34 -0
  144. package/build/cjs/context/editorStoreContext/PCEditorStoreProvider.js.map +1 -0
  145. package/build/cjs/context/editorStoreContext/index.d.ts +2 -0
  146. package/build/cjs/context/editorStoreContext/index.js +6 -0
  147. package/build/cjs/context/editorStoreContext/index.js.map +1 -0
  148. package/build/cjs/editor/components/CodeEditor/CodeEditor.d.ts +1 -2
  149. package/build/cjs/editor/components/CodeEditor/CodeEditor.js +5 -6
  150. package/build/cjs/editor/components/CodeEditor/CodeEditor.js.map +1 -1
  151. package/build/cjs/editor/data/templates/test-editor-block.json +18 -0
  152. package/build/cjs/grid/Grid/Grid.css +2 -6
  153. package/build/cjs/hooks/useAnalytics.js +1 -1
  154. package/build/cjs/hooks/useAnalytics.js.map +1 -1
  155. package/build/cjs/hooks/usePCEditorBlockMouseEvents.d.ts +8 -0
  156. package/build/cjs/hooks/usePCEditorBlockMouseEvents.js +50 -0
  157. package/build/cjs/hooks/usePCEditorBlockMouseEvents.js.map +1 -0
  158. package/build/cjs/hooks/usePCEditorBlockSelection.d.ts +2 -0
  159. package/build/cjs/hooks/usePCEditorBlockSelection.js +30 -0
  160. package/build/cjs/hooks/usePCEditorBlockSelection.js.map +1 -0
  161. package/build/cjs/hooks/usePCEditorInitializeEvents.d.ts +7 -0
  162. package/build/cjs/hooks/usePCEditorInitializeEvents.js +63 -0
  163. package/build/cjs/hooks/usePCEditorInitializeEvents.js.map +1 -0
  164. package/build/cjs/hooks/usePCEditorItemWrap.d.ts +10 -0
  165. package/build/cjs/hooks/usePCEditorItemWrap.js +21 -0
  166. package/build/cjs/hooks/usePCEditorItemWrap.js.map +1 -0
  167. package/build/cjs/hooks/usePCEditorStore.d.ts +1 -0
  168. package/build/cjs/hooks/usePCEditorStore.js +13 -0
  169. package/build/cjs/hooks/usePCEditorStore.js.map +1 -0
  170. package/build/cjs/hooks/usePostMessageAPI.d.ts +4 -0
  171. package/build/cjs/hooks/usePostMessageAPI.js +30 -0
  172. package/build/cjs/hooks/usePostMessageAPI.js.map +1 -0
  173. package/build/cjs/models/constructor-items/blocks.d.ts +1 -0
  174. package/build/cjs/models/constructor-items/blocks.js +1 -0
  175. package/build/cjs/models/constructor-items/blocks.js.map +1 -1
  176. package/build/cjs/models/constructor.d.ts +4 -1
  177. package/build/cjs/models/constructor.js.map +1 -1
  178. package/build/cjs/models/navigation.d.ts +2 -2
  179. package/build/cjs/models/navigation.js.map +1 -1
  180. package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
  181. package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
  182. package/build/cjs/navigation/components/Navigation/Navigation.d.ts +2 -2
  183. package/build/cjs/navigation/components/Navigation/Navigation.js +1 -1
  184. package/build/cjs/navigation/components/Navigation/Navigation.js.map +1 -1
  185. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js +4 -1
  186. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  187. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +4 -1
  188. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
  189. package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.css +2 -0
  190. package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.js +13 -5
  191. package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.js.map +1 -1
  192. package/build/cjs/navigation/containers/Layout/Layout.css +0 -1
  193. package/build/cjs/navigation/containers/Layout/Layout.js +1 -0
  194. package/build/cjs/navigation/containers/Layout/Layout.js.map +1 -1
  195. package/build/cjs/navigation/models.d.ts +1 -1
  196. package/build/cjs/navigation/models.js.map +1 -1
  197. package/build/cjs/schema/constants.js +2 -0
  198. package/build/cjs/schema/constants.js.map +1 -1
  199. package/build/cjs/schema/index.d.ts +256 -0
  200. package/build/cjs/schema/index.js +12 -6
  201. package/build/cjs/schema/index.js.map +1 -1
  202. package/build/cjs/sub-blocks/BackgroundCard/dynamic-form.d.ts +2 -0
  203. package/build/cjs/sub-blocks/BackgroundCard/dynamic-form.js +82 -0
  204. package/build/cjs/sub-blocks/BackgroundCard/dynamic-form.js.map +1 -0
  205. package/build/cjs/sub-blocks/BackgroundCard/index.d.ts +3 -0
  206. package/build/cjs/sub-blocks/BackgroundCard/index.js +22 -0
  207. package/build/cjs/sub-blocks/BackgroundCard/index.js.map +1 -0
  208. package/build/cjs/sub-blocks/BannerCard/BannerCard.js +2 -1
  209. package/build/cjs/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  210. package/build/cjs/sub-blocks/BannerCard/index.d.ts +3 -0
  211. package/build/cjs/sub-blocks/BannerCard/index.js +24 -0
  212. package/build/cjs/sub-blocks/BannerCard/index.js.map +1 -0
  213. package/build/cjs/sub-blocks/BasicCard/index.d.ts +3 -0
  214. package/build/cjs/sub-blocks/BasicCard/index.js +20 -0
  215. package/build/cjs/sub-blocks/BasicCard/index.js.map +1 -0
  216. package/build/cjs/sub-blocks/Content/index.d.ts +3 -0
  217. package/build/cjs/sub-blocks/Content/index.js +20 -0
  218. package/build/cjs/sub-blocks/Content/index.js.map +1 -0
  219. package/build/cjs/sub-blocks/Content/schema.d.ts +1 -0
  220. package/build/cjs/sub-blocks/Content/schema.js +1 -0
  221. package/build/cjs/sub-blocks/Content/schema.js.map +1 -1
  222. package/build/cjs/sub-blocks/Divider/index.d.ts +3 -0
  223. package/build/cjs/sub-blocks/Divider/index.js +16 -0
  224. package/build/cjs/sub-blocks/Divider/index.js.map +1 -0
  225. package/build/cjs/sub-blocks/ImageCard/ImageCard.js +1 -1
  226. package/build/cjs/sub-blocks/ImageCard/ImageCard.js.map +1 -1
  227. package/build/cjs/sub-blocks/ImageCard/index.d.ts +3 -0
  228. package/build/cjs/sub-blocks/ImageCard/index.js +20 -0
  229. package/build/cjs/sub-blocks/ImageCard/index.js.map +1 -0
  230. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js +1 -1
  231. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
  232. package/build/cjs/sub-blocks/LayoutItem/index.d.ts +3 -0
  233. package/build/cjs/sub-blocks/LayoutItem/index.js +26 -0
  234. package/build/cjs/sub-blocks/LayoutItem/index.js.map +1 -0
  235. package/build/cjs/sub-blocks/LayoutItem/schema.d.ts +211 -206
  236. package/build/cjs/sub-blocks/LayoutItem/schema.js +6 -5
  237. package/build/cjs/sub-blocks/LayoutItem/schema.js.map +1 -1
  238. package/build/cjs/sub-blocks/MediaCard/index.d.ts +3 -0
  239. package/build/cjs/sub-blocks/MediaCard/index.js +23 -0
  240. package/build/cjs/sub-blocks/MediaCard/index.js.map +1 -0
  241. package/build/cjs/sub-blocks/PriceCard/index.d.ts +3 -0
  242. package/build/cjs/sub-blocks/PriceCard/index.js +33 -0
  243. package/build/cjs/sub-blocks/PriceCard/index.js.map +1 -0
  244. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  245. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
  246. package/build/cjs/sub-blocks/PriceDetailed/index.d.ts +4 -0
  247. package/build/cjs/sub-blocks/PriceDetailed/index.js +35 -0
  248. package/build/cjs/sub-blocks/PriceDetailed/index.js.map +1 -0
  249. package/build/cjs/sub-blocks/Quote/index.d.ts +3 -0
  250. package/build/cjs/sub-blocks/Quote/index.js +23 -0
  251. package/build/cjs/sub-blocks/Quote/index.js.map +1 -0
  252. package/build/cjs/utils/editor.d.ts +2 -0
  253. package/build/cjs/utils/editor.js +25 -0
  254. package/build/cjs/utils/editor.js.map +1 -0
  255. package/build/cjs/utils/form-generator.d.ts +9 -0
  256. package/build/cjs/utils/form-generator.js +131 -0
  257. package/build/cjs/utils/form-generator.js.map +1 -0
  258. package/build/cjs/utils/index.d.ts +1 -0
  259. package/build/cjs/utils/index.js +1 -0
  260. package/build/cjs/utils/index.js.map +1 -1
  261. package/build/cjs/utils/navigation.d.ts +3 -0
  262. package/build/cjs/utils/navigation.js +14 -0
  263. package/build/cjs/utils/navigation.js.map +1 -0
  264. package/build/esm/blocks/Banner/Banner.js +2 -1
  265. package/build/esm/blocks/Banner/Banner.js.map +1 -1
  266. package/build/esm/blocks/Banner/index.d.ts +3 -0
  267. package/build/esm/blocks/Banner/index.js +21 -0
  268. package/build/esm/blocks/Banner/index.js.map +1 -0
  269. package/build/esm/blocks/CardLayout/CardLayout.css +1 -0
  270. package/build/esm/blocks/CardLayout/CardLayout.js +5 -4
  271. package/build/esm/blocks/CardLayout/CardLayout.js.map +1 -1
  272. package/build/esm/blocks/CardLayout/index.d.ts +5 -0
  273. package/build/esm/blocks/CardLayout/index.js +182 -0
  274. package/build/esm/blocks/CardLayout/index.js.map +1 -0
  275. package/build/esm/blocks/Companies/Companies.js +2 -1
  276. package/build/esm/blocks/Companies/Companies.js.map +1 -1
  277. package/build/esm/blocks/Companies/index.d.ts +3 -0
  278. package/build/esm/blocks/Companies/index.js +17 -0
  279. package/build/esm/blocks/Companies/index.js.map +1 -0
  280. package/build/esm/blocks/ContentLayout/ContentLayout.js +2 -2
  281. package/build/esm/blocks/ContentLayout/ContentLayout.js.map +1 -1
  282. package/build/esm/blocks/ContentLayout/index.d.ts +41 -0
  283. package/build/esm/blocks/ContentLayout/index.js +78 -0
  284. package/build/esm/blocks/ContentLayout/index.js.map +1 -0
  285. package/build/esm/blocks/ContentLayout/schema.d.ts +1 -0
  286. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js +14 -13
  287. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  288. package/build/esm/blocks/ExtendedFeatures/index.d.ts +58 -0
  289. package/build/esm/blocks/ExtendedFeatures/index.js +74 -0
  290. package/build/esm/blocks/ExtendedFeatures/index.js.map +1 -0
  291. package/build/esm/blocks/ExtendedFeatures/schema.d.ts +1 -0
  292. package/build/esm/blocks/ExtendedFeatures/schema.js +1 -0
  293. package/build/esm/blocks/ExtendedFeatures/schema.js.map +1 -1
  294. package/build/esm/blocks/FilterBlock/FilterBlock.js +6 -6
  295. package/build/esm/blocks/FilterBlock/FilterBlock.js.map +1 -1
  296. package/build/esm/blocks/FilterBlock/index.d.ts +29 -0
  297. package/build/esm/blocks/FilterBlock/index.js +95 -0
  298. package/build/esm/blocks/FilterBlock/index.js.map +1 -0
  299. package/build/esm/blocks/Form/index.d.ts +13 -0
  300. package/build/esm/blocks/Form/index.js +17 -0
  301. package/build/esm/blocks/Form/index.js.map +1 -0
  302. package/build/esm/blocks/Header/dynamic-form.d.ts +2 -0
  303. package/build/esm/blocks/Header/dynamic-form.js +728 -0
  304. package/build/esm/blocks/Header/dynamic-form.js.map +1 -0
  305. package/build/esm/blocks/Header/index.d.ts +20 -0
  306. package/build/esm/blocks/Header/index.js +31 -0
  307. package/build/esm/blocks/Header/index.js.map +1 -0
  308. package/build/esm/blocks/HeaderSlider/HeaderSlider.js +2 -1
  309. package/build/esm/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  310. package/build/esm/blocks/HeaderSlider/index.d.ts +32 -0
  311. package/build/esm/blocks/HeaderSlider/index.js +37 -0
  312. package/build/esm/blocks/HeaderSlider/index.js.map +1 -0
  313. package/build/esm/blocks/Icons/Icons.js +8 -6
  314. package/build/esm/blocks/Icons/Icons.js.map +1 -1
  315. package/build/esm/blocks/Icons/index.d.ts +20 -0
  316. package/build/esm/blocks/Icons/index.js +61 -0
  317. package/build/esm/blocks/Icons/index.js.map +1 -0
  318. package/build/esm/blocks/Info/index.d.ts +22 -0
  319. package/build/esm/blocks/Info/index.js +40 -0
  320. package/build/esm/blocks/Info/index.js.map +1 -0
  321. package/build/esm/blocks/Map/index.d.ts +12 -0
  322. package/build/esm/blocks/Map/index.js +16 -0
  323. package/build/esm/blocks/Map/index.js.map +1 -0
  324. package/build/esm/blocks/Media/index.d.ts +39 -0
  325. package/build/esm/blocks/Media/index.js +54 -0
  326. package/build/esm/blocks/Media/index.js.map +1 -0
  327. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +15 -13
  328. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
  329. package/build/esm/blocks/PromoFeaturesBlock/index.d.ts +22 -0
  330. package/build/esm/blocks/PromoFeaturesBlock/index.js +46 -0
  331. package/build/esm/blocks/PromoFeaturesBlock/index.js.map +1 -0
  332. package/build/esm/blocks/Questions/Questions.js +7 -6
  333. package/build/esm/blocks/Questions/Questions.js.map +1 -1
  334. package/build/esm/blocks/Questions/index.d.ts +30 -0
  335. package/build/esm/blocks/Questions/index.js +46 -0
  336. package/build/esm/blocks/Questions/index.js.map +1 -0
  337. package/build/esm/blocks/Share/Share.js +11 -10
  338. package/build/esm/blocks/Share/Share.js.map +1 -1
  339. package/build/esm/blocks/Share/index.d.ts +13 -0
  340. package/build/esm/blocks/Share/index.js +17 -0
  341. package/build/esm/blocks/Share/index.js.map +1 -0
  342. package/build/esm/blocks/Slider/Slider.js +12 -10
  343. package/build/esm/blocks/Slider/Slider.js.map +1 -1
  344. package/build/esm/blocks/Slider/dynamic-form.d.ts +3 -0
  345. package/build/esm/blocks/Slider/dynamic-form.js +223 -0
  346. package/build/esm/blocks/Slider/dynamic-form.js.map +1 -0
  347. package/build/esm/blocks/Slider/index.d.ts +28 -0
  348. package/build/esm/blocks/Slider/index.js +44 -0
  349. package/build/esm/blocks/Slider/index.js.map +1 -0
  350. package/build/esm/blocks/Table/index.d.ts +18 -0
  351. package/build/esm/blocks/Table/index.js +29 -0
  352. package/build/esm/blocks/Table/index.js.map +1 -0
  353. package/build/esm/blocks/Table/schema.d.ts +1 -0
  354. package/build/esm/blocks/Table/schema.js +1 -0
  355. package/build/esm/blocks/Table/schema.js.map +1 -1
  356. package/build/esm/blocks/Tabs/Tabs.js +5 -5
  357. package/build/esm/blocks/Tabs/Tabs.js.map +1 -1
  358. package/build/esm/blocks/Tabs/index.d.ts +17 -0
  359. package/build/esm/blocks/Tabs/index.js +28 -0
  360. package/build/esm/blocks/Tabs/index.js.map +1 -0
  361. package/build/esm/blocks/TestEditorBlock/TestEditorBlock.d.ts +5 -0
  362. package/build/esm/blocks/TestEditorBlock/TestEditorBlock.js +8 -0
  363. package/build/esm/blocks/TestEditorBlock/TestEditorBlock.js.map +1 -0
  364. package/build/esm/blocks/TestEditorBlock/form.d.ts +3 -0
  365. package/build/esm/blocks/TestEditorBlock/form.js +89 -0
  366. package/build/esm/blocks/TestEditorBlock/form.js.map +1 -0
  367. package/build/esm/blocks/TestEditorBlock/index.d.ts +11 -0
  368. package/build/esm/blocks/TestEditorBlock/index.js +14 -0
  369. package/build/esm/blocks/TestEditorBlock/index.js.map +1 -0
  370. package/build/esm/components/BlockBase/BlockBase.css +8 -16
  371. package/build/esm/components/Image/dynamic-form.d.ts +2 -0
  372. package/build/esm/components/Image/dynamic-form.js +81 -0
  373. package/build/esm/components/Image/dynamic-form.js.map +1 -0
  374. package/build/esm/components/editor/ItemWrap/ItemWrap.css +9 -0
  375. package/build/esm/components/editor/ItemWrap/ItemWrap.d.ts +7 -0
  376. package/build/esm/components/editor/ItemWrap/ItemWrap.js +11 -0
  377. package/build/esm/components/editor/ItemWrap/ItemWrap.js.map +1 -0
  378. package/build/esm/constructor-items.d.ts +22 -6
  379. package/build/esm/constructor-items.js +75 -1
  380. package/build/esm/constructor-items.js.map +1 -1
  381. package/build/esm/containers/PageConstructor/PageConstructor.d.ts +1 -1
  382. package/build/esm/containers/PageConstructor/PageConstructor.js +20 -12
  383. package/build/esm/containers/PageConstructor/PageConstructor.js.map +1 -1
  384. package/build/esm/containers/PageConstructor/Provider.js +2 -0
  385. package/build/esm/containers/PageConstructor/Provider.js.map +1 -1
  386. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.css +10 -6
  387. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +3 -1
  388. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  389. package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js +7 -6
  390. package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map +1 -1
  391. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.d.ts +1 -1
  392. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -1
  393. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
  394. package/build/esm/containers/PageConstructor/components/ConstructorLoadable/ConstructorLoadable.js +2 -1
  395. package/build/esm/containers/PageConstructor/components/ConstructorLoadable/ConstructorLoadable.js.map +1 -1
  396. package/build/esm/containers/PageConstructor/components/ConstructorRow/ConstructorRow.js +1 -2
  397. package/build/esm/containers/PageConstructor/components/ConstructorRow/ConstructorRow.js.map +1 -1
  398. package/build/esm/context/blockIdContext/blockIdContext.d.ts +2 -2
  399. package/build/esm/context/blockIdContext/blockIdContext.js +1 -1
  400. package/build/esm/context/blockIdContext/blockIdContext.js.map +1 -1
  401. package/build/esm/context/editorStoreContext/PCEditorStoreContext.d.ts +7 -0
  402. package/build/esm/context/editorStoreContext/PCEditorStoreContext.js +6 -0
  403. package/build/esm/context/editorStoreContext/PCEditorStoreContext.js.map +1 -0
  404. package/build/esm/context/editorStoreContext/PCEditorStoreProvider.d.ts +5 -0
  405. package/build/esm/context/editorStoreContext/PCEditorStoreProvider.js +29 -0
  406. package/build/esm/context/editorStoreContext/PCEditorStoreProvider.js.map +1 -0
  407. package/build/esm/context/editorStoreContext/index.d.ts +2 -0
  408. package/build/esm/context/editorStoreContext/index.js +3 -0
  409. package/build/esm/context/editorStoreContext/index.js.map +1 -0
  410. package/build/esm/editor/components/CodeEditor/CodeEditor.d.ts +1 -2
  411. package/build/esm/editor/components/CodeEditor/CodeEditor.js +4 -6
  412. package/build/esm/editor/components/CodeEditor/CodeEditor.js.map +1 -1
  413. package/build/esm/editor/data/templates/test-editor-block.json +18 -0
  414. package/build/esm/grid/Grid/Grid.css +2 -6
  415. package/build/esm/hooks/useAnalytics.js +1 -1
  416. package/build/esm/hooks/useAnalytics.js.map +1 -1
  417. package/build/esm/hooks/usePCEditorBlockMouseEvents.d.ts +8 -0
  418. package/build/esm/hooks/usePCEditorBlockMouseEvents.js +47 -0
  419. package/build/esm/hooks/usePCEditorBlockMouseEvents.js.map +1 -0
  420. package/build/esm/hooks/usePCEditorBlockSelection.d.ts +2 -0
  421. package/build/esm/hooks/usePCEditorBlockSelection.js +27 -0
  422. package/build/esm/hooks/usePCEditorBlockSelection.js.map +1 -0
  423. package/build/esm/hooks/usePCEditorInitializeEvents.d.ts +7 -0
  424. package/build/esm/hooks/usePCEditorInitializeEvents.js +58 -0
  425. package/build/esm/hooks/usePCEditorInitializeEvents.js.map +1 -0
  426. package/build/esm/hooks/usePCEditorItemWrap.d.ts +10 -0
  427. package/build/esm/hooks/usePCEditorItemWrap.js +17 -0
  428. package/build/esm/hooks/usePCEditorItemWrap.js.map +1 -0
  429. package/build/esm/hooks/usePCEditorStore.d.ts +1 -0
  430. package/build/esm/hooks/usePCEditorStore.js +8 -0
  431. package/build/esm/hooks/usePCEditorStore.js.map +1 -0
  432. package/build/esm/hooks/usePostMessageAPI.d.ts +4 -0
  433. package/build/esm/hooks/usePostMessageAPI.js +24 -0
  434. package/build/esm/hooks/usePostMessageAPI.js.map +1 -0
  435. package/build/esm/models/constructor-items/blocks.d.ts +1 -0
  436. package/build/esm/models/constructor-items/blocks.js +1 -0
  437. package/build/esm/models/constructor-items/blocks.js.map +1 -1
  438. package/build/esm/models/constructor.d.ts +4 -1
  439. package/build/esm/models/constructor.js.map +1 -1
  440. package/build/esm/models/navigation.d.ts +2 -2
  441. package/build/esm/models/navigation.js.map +1 -1
  442. package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js +2 -2
  443. package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
  444. package/build/esm/navigation/components/Navigation/Navigation.d.ts +2 -2
  445. package/build/esm/navigation/components/Navigation/Navigation.js +1 -1
  446. package/build/esm/navigation/components/Navigation/Navigation.js.map +1 -1
  447. package/build/esm/navigation/components/NavigationItem/NavigationItem.js +4 -1
  448. package/build/esm/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  449. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +4 -1
  450. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
  451. package/build/esm/navigation/components/NavigationPopup/NavigationPopup.css +2 -0
  452. package/build/esm/navigation/components/NavigationPopup/NavigationPopup.js +13 -5
  453. package/build/esm/navigation/components/NavigationPopup/NavigationPopup.js.map +1 -1
  454. package/build/esm/navigation/containers/Layout/Layout.css +0 -1
  455. package/build/esm/navigation/containers/Layout/Layout.js +2 -1
  456. package/build/esm/navigation/containers/Layout/Layout.js.map +1 -1
  457. package/build/esm/navigation/models.d.ts +1 -1
  458. package/build/esm/navigation/models.js.map +1 -1
  459. package/build/esm/schema/constants.js +2 -0
  460. package/build/esm/schema/constants.js.map +1 -1
  461. package/build/esm/schema/index.d.ts +256 -0
  462. package/build/esm/schema/index.js +11 -5
  463. package/build/esm/schema/index.js.map +1 -1
  464. package/build/esm/sub-blocks/BackgroundCard/dynamic-form.d.ts +2 -0
  465. package/build/esm/sub-blocks/BackgroundCard/dynamic-form.js +79 -0
  466. package/build/esm/sub-blocks/BackgroundCard/dynamic-form.js.map +1 -0
  467. package/build/esm/sub-blocks/BackgroundCard/index.d.ts +3 -0
  468. package/build/esm/sub-blocks/BackgroundCard/index.js +19 -0
  469. package/build/esm/sub-blocks/BackgroundCard/index.js.map +1 -0
  470. package/build/esm/sub-blocks/BannerCard/BannerCard.js +2 -1
  471. package/build/esm/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  472. package/build/esm/sub-blocks/BannerCard/index.d.ts +3 -0
  473. package/build/esm/sub-blocks/BannerCard/index.js +21 -0
  474. package/build/esm/sub-blocks/BannerCard/index.js.map +1 -0
  475. package/build/esm/sub-blocks/BasicCard/index.d.ts +3 -0
  476. package/build/esm/sub-blocks/BasicCard/index.js +17 -0
  477. package/build/esm/sub-blocks/BasicCard/index.js.map +1 -0
  478. package/build/esm/sub-blocks/Content/index.d.ts +3 -0
  479. package/build/esm/sub-blocks/Content/index.js +17 -0
  480. package/build/esm/sub-blocks/Content/index.js.map +1 -0
  481. package/build/esm/sub-blocks/Content/schema.d.ts +1 -0
  482. package/build/esm/sub-blocks/Content/schema.js +1 -0
  483. package/build/esm/sub-blocks/Content/schema.js.map +1 -1
  484. package/build/esm/sub-blocks/Divider/index.d.ts +3 -0
  485. package/build/esm/sub-blocks/Divider/index.js +13 -0
  486. package/build/esm/sub-blocks/Divider/index.js.map +1 -0
  487. package/build/esm/sub-blocks/ImageCard/ImageCard.js +1 -1
  488. package/build/esm/sub-blocks/ImageCard/ImageCard.js.map +1 -1
  489. package/build/esm/sub-blocks/ImageCard/index.d.ts +3 -0
  490. package/build/esm/sub-blocks/ImageCard/index.js +17 -0
  491. package/build/esm/sub-blocks/ImageCard/index.js.map +1 -0
  492. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js +1 -1
  493. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
  494. package/build/esm/sub-blocks/LayoutItem/index.d.ts +3 -0
  495. package/build/esm/sub-blocks/LayoutItem/index.js +23 -0
  496. package/build/esm/sub-blocks/LayoutItem/index.js.map +1 -0
  497. package/build/esm/sub-blocks/LayoutItem/schema.d.ts +211 -206
  498. package/build/esm/sub-blocks/LayoutItem/schema.js +3 -2
  499. package/build/esm/sub-blocks/LayoutItem/schema.js.map +1 -1
  500. package/build/esm/sub-blocks/MediaCard/index.d.ts +3 -0
  501. package/build/esm/sub-blocks/MediaCard/index.js +20 -0
  502. package/build/esm/sub-blocks/MediaCard/index.js.map +1 -0
  503. package/build/esm/sub-blocks/PriceCard/index.d.ts +3 -0
  504. package/build/esm/sub-blocks/PriceCard/index.js +30 -0
  505. package/build/esm/sub-blocks/PriceCard/index.js.map +1 -0
  506. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  507. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
  508. package/build/esm/sub-blocks/PriceDetailed/index.d.ts +4 -0
  509. package/build/esm/sub-blocks/PriceDetailed/index.js +32 -0
  510. package/build/esm/sub-blocks/PriceDetailed/index.js.map +1 -0
  511. package/build/esm/sub-blocks/Quote/index.d.ts +3 -0
  512. package/build/esm/sub-blocks/Quote/index.js +20 -0
  513. package/build/esm/sub-blocks/Quote/index.js.map +1 -0
  514. package/build/esm/utils/editor.d.ts +2 -0
  515. package/build/esm/utils/editor.js +21 -0
  516. package/build/esm/utils/editor.js.map +1 -0
  517. package/build/esm/utils/form-generator.d.ts +9 -0
  518. package/build/esm/utils/form-generator.js +126 -0
  519. package/build/esm/utils/form-generator.js.map +1 -0
  520. package/build/esm/utils/index.d.ts +1 -0
  521. package/build/esm/utils/index.js +1 -0
  522. package/build/esm/utils/index.js.map +1 -1
  523. package/build/esm/utils/navigation.d.ts +3 -0
  524. package/build/esm/utils/navigation.js +9 -0
  525. package/build/esm/utils/navigation.js.map +1 -0
  526. package/package.json +15 -3
  527. package/schema/index.js +1 -1
  528. package/server/models/constructor-items/blocks.d.ts +1 -0
  529. package/server/models/constructor-items/blocks.js +1 -0
  530. package/server/models/constructor.d.ts +4 -1
  531. package/server/models/navigation.d.ts +2 -2
  532. package/server/utils/index.d.ts +1 -0
  533. package/server/utils/index.js +1 -0
  534. package/server/utils/navigation.d.ts +3 -0
  535. package/server/utils/navigation.js +15 -0
  536. package/styles/mixins.scss +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"Navigation.js","sourceRoot":"../../../../../src","sources":["navigation/components/Navigation/Navigation.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,YAAY,yDAAsD;AACzE,OAAO,EAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAC,+BAAsB;AAE7C,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,EAAC,gBAAgB,EAAE,aAAa,EAAC,6BAAoB;AAC5D,OAAO,iBAAiB,kDAA+C;AACvE,OAAO,gBAAgB,gDAA6C;AAEpE,OAAO,kBAAkB,CAAC;AAE1B,MAAM,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;AAQ9B,MAAM,CAAC,MAAM,UAAU,GAAuC,CAAC,EAC3D,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,qBAAqB,GACxB,EAAE,EAAE;IACD,MAAM,EACF,SAAS,EACT,UAAU,EACV,uBAAuB,EACvB,QAAQ,GAAG,EAAE,EACb,UAAU,GAAG,KAAK,EAClB,kBAAkB,GAAG,IAAI,GAC5B,GAAG,IAAI,CAAC;IAET,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,CAAC,UAAU,CAAC,GAAG,aAAa,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;IACnE,MAAM,EAAC,YAAY,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,kBAAkB,EAAC,GACnF,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAEtD,MAAM,qBAAqB,GAAG,CAAC,MAAe,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAE9E,OAAO,CACH,KAAC,IAAI,IAAC,SAAS,EAAE,CAAC,CAAC,EAAC,aAAa,EAAE,UAAU,EAAC,EAAE,SAAS,CAAC,YACtD,KAAC,GAAG,cACA,KAAC,GAAG,cACA,0BACI,KAAC,iBAAiB,IACd,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,YAAY,EAC1B,kBAAkB,EAAE,kBAAkB,EACtC,qBAAqB,EAAE,qBAAqB,EAC5C,sBAAsB,EAAE,sBAAsB,EAC9C,uBAAuB,EAAE,uBAAuB,EAChD,eAAe,EAAE,eAAe,EAChC,qBAAqB,EAAE,qBAAqB,GAC9C,EACF,KAAC,YAAY,IAAC,cAAc,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,YAC5D,KAAC,gBAAgB,IACb,QAAQ,EAAE,qBAAqB,EAC/B,WAAW,EAAE,sBAAsB,EACnC,QAAQ,EAAE,eAAe,EACzB,YAAY,EAAE,YAAY,EAC1B,kBAAkB,EAAE,kBAAkB,EACtC,eAAe,EAAE,qBAAqB,GACxC,GACS,IACb,GACJ,GACJ,GACH,CACV,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC","sourcesContent":["import * as React from 'react';\n\nimport OutsideClick from '../../../components/OutsideClick/OutsideClick';\nimport {Col, Grid, Row} from '../../../grid';\nimport {ClassNameProps, HeaderData, ThemedNavigationLogoData} from '../../../models';\nimport {block} from '../../../utils';\nimport {useActiveNavItem, useShowBorder} from '../../hooks';\nimport DesktopNavigation from '../DesktopNavigation/DesktopNavigation';\nimport MobileNavigation from '../MobileNavigation/MobileNavigation';\n\nimport './Navigation.scss';\n\nconst b = block('navigation');\n\nexport interface NavigationComponentProps extends ClassNameProps {\n logo: ThemedNavigationLogoData;\n data: HeaderData;\n mobilePortalContainer?: React.RefObject<HTMLElement>;\n}\n\nexport const Navigation: React.FC<NavigationComponentProps> = ({\n data,\n logo,\n className,\n mobilePortalContainer,\n}) => {\n const {\n leftItems,\n rightItems,\n customMobileHeaderItems,\n iconSize = 20,\n withBorder = false,\n withBorderOnScroll = true,\n } = data;\n\n const [isSidebarOpened, setIsSidebarOpened] = React.useState(false);\n const [showBorder] = useShowBorder(withBorder, withBorderOnScroll);\n const {activeItemId, leftItemsWithIconSize, rightItemsWithIconSize, onActiveItemChange} =\n useActiveNavItem(iconSize, leftItems, rightItems);\n\n const onSidebarOpenedChange = (isOpen: boolean) => setIsSidebarOpened(isOpen);\n\n return (\n <Grid className={b({'with-border': showBorder}, className)}>\n <Row>\n <Col>\n <nav>\n <DesktopNavigation\n logo={logo}\n activeItemId={activeItemId}\n onActiveItemChange={onActiveItemChange}\n leftItemsWithIconSize={leftItemsWithIconSize}\n rightItemsWithIconSize={rightItemsWithIconSize}\n customMobileHeaderItems={customMobileHeaderItems}\n isSidebarOpened={isSidebarOpened}\n onSidebarOpenedChange={onSidebarOpenedChange}\n />\n <OutsideClick onOutsideClick={() => onSidebarOpenedChange(false)}>\n <MobileNavigation\n topItems={leftItemsWithIconSize}\n bottomItems={rightItemsWithIconSize}\n isOpened={isSidebarOpened}\n activeItemId={activeItemId}\n onActiveItemChange={onActiveItemChange}\n portalContainer={mobilePortalContainer}\n />\n </OutsideClick>\n </nav>\n </Col>\n </Row>\n </Grid>\n );\n};\n\nexport default Navigation;\n"]}
1
+ {"version":3,"file":"Navigation.js","sourceRoot":"../../../../../src","sources":["navigation/components/Navigation/Navigation.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,YAAY,yDAAsD;AACzE,OAAO,EAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAC,+BAAsB;AAE7C,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,EAAC,gBAAgB,EAAE,aAAa,EAAC,6BAAoB;AAC5D,OAAO,iBAAiB,kDAA+C;AACvE,OAAO,gBAAgB,gDAA6C;AAEpE,OAAO,kBAAkB,CAAC;AAE1B,MAAM,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;AAQ9B,MAAM,CAAC,MAAM,UAAU,GAAuC,CAAC,EAC3D,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,qBAAqB,GACxB,EAAE,EAAE;IACD,MAAM,EACF,SAAS,GAAG,EAAE,EACd,UAAU,EACV,uBAAuB,EACvB,QAAQ,GAAG,EAAE,EACb,UAAU,GAAG,KAAK,EAClB,kBAAkB,GAAG,IAAI,GAC5B,GAAG,IAAI,IAAI,EAAE,CAAC;IAEf,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,CAAC,UAAU,CAAC,GAAG,aAAa,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;IACnE,MAAM,EAAC,YAAY,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,kBAAkB,EAAC,GACnF,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAEtD,MAAM,qBAAqB,GAAG,CAAC,MAAe,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAE9E,OAAO,CACH,KAAC,IAAI,IAAC,SAAS,EAAE,CAAC,CAAC,EAAC,aAAa,EAAE,UAAU,EAAC,EAAE,SAAS,CAAC,YACtD,KAAC,GAAG,cACA,KAAC,GAAG,cACA,0BACI,KAAC,iBAAiB,IACd,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,YAAY,EAC1B,kBAAkB,EAAE,kBAAkB,EACtC,qBAAqB,EAAE,qBAAqB,EAC5C,sBAAsB,EAAE,sBAAsB,EAC9C,uBAAuB,EAAE,uBAAuB,EAChD,eAAe,EAAE,eAAe,EAChC,qBAAqB,EAAE,qBAAqB,GAC9C,EACF,KAAC,YAAY,IAAC,cAAc,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,YAC5D,KAAC,gBAAgB,IACb,QAAQ,EAAE,qBAAqB,EAC/B,WAAW,EAAE,sBAAsB,EACnC,QAAQ,EAAE,eAAe,EACzB,YAAY,EAAE,YAAY,EAC1B,kBAAkB,EAAE,kBAAkB,EACtC,eAAe,EAAE,qBAAqB,GACxC,GACS,IACb,GACJ,GACJ,GACH,CACV,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC","sourcesContent":["import * as React from 'react';\n\nimport OutsideClick from '../../../components/OutsideClick/OutsideClick';\nimport {Col, Grid, Row} from '../../../grid';\nimport {ClassNameProps, HeaderData, ThemedNavigationLogoData} from '../../../models';\nimport {block} from '../../../utils';\nimport {useActiveNavItem, useShowBorder} from '../../hooks';\nimport DesktopNavigation from '../DesktopNavigation/DesktopNavigation';\nimport MobileNavigation from '../MobileNavigation/MobileNavigation';\n\nimport './Navigation.scss';\n\nconst b = block('navigation');\n\nexport interface NavigationComponentProps extends ClassNameProps {\n logo?: ThemedNavigationLogoData;\n data?: HeaderData;\n mobilePortalContainer?: React.RefObject<HTMLElement>;\n}\n\nexport const Navigation: React.FC<NavigationComponentProps> = ({\n data,\n logo,\n className,\n mobilePortalContainer,\n}) => {\n const {\n leftItems = [],\n rightItems,\n customMobileHeaderItems,\n iconSize = 20,\n withBorder = false,\n withBorderOnScroll = true,\n } = data || {};\n\n const [isSidebarOpened, setIsSidebarOpened] = React.useState(false);\n const [showBorder] = useShowBorder(withBorder, withBorderOnScroll);\n const {activeItemId, leftItemsWithIconSize, rightItemsWithIconSize, onActiveItemChange} =\n useActiveNavItem(iconSize, leftItems, rightItems);\n\n const onSidebarOpenedChange = (isOpen: boolean) => setIsSidebarOpened(isOpen);\n\n return (\n <Grid className={b({'with-border': showBorder}, className)}>\n <Row>\n <Col>\n <nav>\n <DesktopNavigation\n logo={logo}\n activeItemId={activeItemId}\n onActiveItemChange={onActiveItemChange}\n leftItemsWithIconSize={leftItemsWithIconSize}\n rightItemsWithIconSize={rightItemsWithIconSize}\n customMobileHeaderItems={customMobileHeaderItems}\n isSidebarOpened={isSidebarOpened}\n onSidebarOpenedChange={onSidebarOpenedChange}\n />\n <OutsideClick onOutsideClick={() => onSidebarOpenedChange(false)}>\n <MobileNavigation\n topItems={leftItemsWithIconSize}\n bottomItems={rightItemsWithIconSize}\n isOpened={isSidebarOpened}\n activeItemId={activeItemId}\n onActiveItemChange={onActiveItemChange}\n portalContainer={mobilePortalContainer}\n />\n </OutsideClick>\n </nav>\n </Col>\n </Row>\n </Grid>\n );\n};\n\nexport default Navigation;\n"]}
@@ -25,7 +25,10 @@ export const NavigationItem = ({ data, className, menuLayout, ...props }) => {
25
25
  ? componentProperties
26
26
  : { ...componentProperties, menuLayout };
27
27
  }, [data, props, type, menuLayout]);
28
- return (_jsx(BlockIdContext.Provider, { value: ANALYTICS_ID, children: _jsx("li", { className: b({ 'menu-layout': menuLayout }, className), children: _jsx(Component, { ...componentProps, className: b('content', { type }) }) }) }));
28
+ return (
29
+ // TODO: fix any
30
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
31
+ _jsx(BlockIdContext.Provider, { value: ANALYTICS_ID, children: _jsx("li", { className: b({ 'menu-layout': menuLayout }, className), children: _jsx(Component, { ...componentProps, className: b('content', { type }) }) }) }));
29
32
  };
30
33
  export default NavigationItem;
31
34
  //# sourceMappingURL=NavigationItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationItem.js","sourceRoot":"../../../../../src","sources":["navigation/components/NavigationItem/NavigationItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,IAAI,uBAAoB;AAE/B,OAAO,EAAC,cAAc,EAAC,iDAAwC;AAC/D,OAAO,EAAa,kBAAkB,EAAE,mBAAmB,EAAC,iCAAwB;AACpF,OAAO,EAAC,KAAK,EAAC,gCAAuB;AAGrC,OAAO,EAAC,oBAAoB,EAAC,wCAAqC;AAElE,OAAO,sBAAsB,CAAC;AAE9B,MAAM,CAAC,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;AAEnC,MAAM,YAAY,GAAG,YAAY,CAAC;AAElC,MAAM,6BAA6B,GAAG,mBAAmB,CAAC,MAAM,CAC5D,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,kBAAkB,CAAC,QAAQ,CACjD,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAkC,CAAC,EAC1D,IAAI,EACJ,SAAS,EACT,UAAU,EACV,GAAG,KAAK,EACU,EAAE,EAAE;IACtB,MAAM,EAAC,IAAI,GAAG,kBAAkB,CAAC,IAAI,EAAC,GAAG,IAAI,CAAC;IAC9C,MAAM,UAAU,GAAG,oBAAoB,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAe,CAAC;IACjD,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,MAAM,mBAAmB,GAAG;YACxB,GAAG,IAAI;YACP,GAAG,KAAK;SACX,CAAC;QAEF,IACI,6BAA6B,CAAC,QAAQ,CAClC,IAAsD,CACzD,EACH,CAAC;YACC,OAAO,IAAI,CAAC,mBAAmB,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC;YACrC,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,EAAC,GAAG,mBAAmB,EAAE,UAAU,EAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAEpC,OAAO,CACH,KAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YACxC,aAAI,SAAS,EAAE,CAAC,CAAC,EAAC,aAAa,EAAE,UAAU,EAAC,EAAE,SAAS,CAAC,YACpD,KAAC,SAAS,OAAK,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,GAAI,GACjE,GACiB,CAC7B,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC","sourcesContent":["import * as React from 'react';\n\nimport omit from 'lodash/omit';\n\nimport {BlockIdContext} from '../../../context/blockIdContext';\nimport {CustomItem, NavigationItemType, NavigationItemTypes} from '../../../models';\nimport {block} from '../../../utils';\nimport {NavigationItemProps} from '../../models';\n\nimport {useNavigationItemMap} from './hooks/useNavigationItemMap';\n\nimport './NavigationItem.scss';\n\nconst b = block('navigation-item');\n\nconst ANALYTICS_ID = 'navigation';\n\nconst nonComplexNavigationItemTypes = NavigationItemTypes.filter(\n (type) => type !== NavigationItemType.Dropdown,\n);\n\nexport const NavigationItem: React.FC<NavigationItemProps> = ({\n data,\n className,\n menuLayout,\n ...props\n}: NavigationItemProps) => {\n const {type = NavigationItemType.Link} = data;\n const navItemMap = useNavigationItemMap();\n const Component = navItemMap[type] as CustomItem;\n const componentProps = React.useMemo(() => {\n const componentProperties = {\n ...data,\n ...props,\n };\n\n if (\n nonComplexNavigationItemTypes.includes(\n type as (typeof nonComplexNavigationItemTypes)[number],\n )\n ) {\n return omit(componentProperties, 'hidePopup', 'isActive');\n }\n\n return NavigationItemTypes.includes(type)\n ? componentProperties\n : {...componentProperties, menuLayout};\n }, [data, props, type, menuLayout]);\n\n return (\n <BlockIdContext.Provider value={ANALYTICS_ID}>\n <li className={b({'menu-layout': menuLayout}, className)}>\n <Component {...componentProps} className={b('content', {type})} />\n </li>\n </BlockIdContext.Provider>\n );\n};\n\nexport default NavigationItem;\n"]}
1
+ {"version":3,"file":"NavigationItem.js","sourceRoot":"../../../../../src","sources":["navigation/components/NavigationItem/NavigationItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,IAAI,uBAAoB;AAE/B,OAAO,EAAC,cAAc,EAAC,iDAAwC;AAC/D,OAAO,EAAa,kBAAkB,EAAE,mBAAmB,EAAC,iCAAwB;AACpF,OAAO,EAAC,KAAK,EAAC,gCAAuB;AAGrC,OAAO,EAAC,oBAAoB,EAAC,wCAAqC;AAElE,OAAO,sBAAsB,CAAC;AAE9B,MAAM,CAAC,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC;AAEnC,MAAM,YAAY,GAAG,YAAY,CAAC;AAElC,MAAM,6BAA6B,GAAG,mBAAmB,CAAC,MAAM,CAC5D,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,kBAAkB,CAAC,QAAQ,CACjD,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAkC,CAAC,EAC1D,IAAI,EACJ,SAAS,EACT,UAAU,EACV,GAAG,KAAK,EACU,EAAE,EAAE;IACtB,MAAM,EAAC,IAAI,GAAG,kBAAkB,CAAC,IAAI,EAAC,GAAG,IAAI,CAAC;IAC9C,MAAM,UAAU,GAAG,oBAAoB,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAe,CAAC;IACjD,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,MAAM,mBAAmB,GAAG;YACxB,GAAG,IAAI;YACP,GAAG,KAAK;SACX,CAAC;QAEF,IACI,6BAA6B,CAAC,QAAQ,CAClC,IAAsD,CACzD,EACH,CAAC;YACC,OAAO,IAAI,CAAC,mBAAmB,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC;YACrC,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,EAAC,GAAG,mBAAmB,EAAE,UAAU,EAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAEpC,OAAO;IACH,gBAAgB;IAChB,8DAA8D;IAC9D,KAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAmB,YAC/C,aAAI,SAAS,EAAE,CAAC,CAAC,EAAC,aAAa,EAAE,UAAU,EAAC,EAAE,SAAS,CAAC,YACpD,KAAC,SAAS,OAAK,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,GAAI,GACjE,GACiB,CAC7B,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC","sourcesContent":["import * as React from 'react';\n\nimport omit from 'lodash/omit';\n\nimport {BlockIdContext} from '../../../context/blockIdContext';\nimport {CustomItem, NavigationItemType, NavigationItemTypes} from '../../../models';\nimport {block} from '../../../utils';\nimport {NavigationItemProps} from '../../models';\n\nimport {useNavigationItemMap} from './hooks/useNavigationItemMap';\n\nimport './NavigationItem.scss';\n\nconst b = block('navigation-item');\n\nconst ANALYTICS_ID = 'navigation';\n\nconst nonComplexNavigationItemTypes = NavigationItemTypes.filter(\n (type) => type !== NavigationItemType.Dropdown,\n);\n\nexport const NavigationItem: React.FC<NavigationItemProps> = ({\n data,\n className,\n menuLayout,\n ...props\n}: NavigationItemProps) => {\n const {type = NavigationItemType.Link} = data;\n const navItemMap = useNavigationItemMap();\n const Component = navItemMap[type] as CustomItem;\n const componentProps = React.useMemo(() => {\n const componentProperties = {\n ...data,\n ...props,\n };\n\n if (\n nonComplexNavigationItemTypes.includes(\n type as (typeof nonComplexNavigationItemTypes)[number],\n )\n ) {\n return omit(componentProperties, 'hidePopup', 'isActive');\n }\n\n return NavigationItemTypes.includes(type)\n ? componentProperties\n : {...componentProperties, menuLayout};\n }, [data, props, type, menuLayout]);\n\n return (\n // TODO: fix any\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n <BlockIdContext.Provider value={ANALYTICS_ID as any}>\n <li className={b({'menu-layout': menuLayout}, className)}>\n <Component {...componentProps} className={b('content', {type})} />\n </li>\n </BlockIdContext.Provider>\n );\n};\n\nexport default NavigationItem;\n"]}
@@ -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 (_jsx(BlockIdContext.Provider, { value: ANALYTICS_ID, children: target ? (_jsx(Button, { className: classes, ...props, url: url })) : (_jsx(RouterLink, { href: url, children: _jsx(Button, { ...props, className: classes, url: url }) })) }));
11
+ return (
12
+ // TODO: fix any
13
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
14
+ _jsx(BlockIdContext.Provider, { value: ANALYTICS_ID, children: target ? (_jsx(Button, { className: classes, ...props, url: url })) : (_jsx(RouterLink, { href: url, children: _jsx(Button, { ...props, className: classes, url: url }) })) }));
12
15
  };
13
16
  //# sourceMappingURL=NavigationButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationButton.js","sourceRoot":"../../../../../../../src","sources":["navigation/components/NavigationItem/components/NavigationButton/NavigationButton.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAC,MAAM,EAAE,UAAU,EAAC,2CAAkC;AAC7D,OAAO,EAAC,cAAc,EAAC,uDAA8C;AAErE,OAAO,EAAC,KAAK,EAAC,sCAA6B;AAG3C,OAAO,wBAAwB,CAAC;AAEhC,MAAM,CAAC,GAAG,KAAK,CAAC,mBAAmB,CAAC,CAAC;AAErC,MAAM,YAAY,GAAG,YAAY,CAAC;AAIlC,MAAM,CAAC,MAAM,gBAAgB,GAAoC,CAAC,KAAK,EAAE,EAAE;IACvE,MAAM,EAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAC,GAAG,KAAK,CAAC;IACvC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnC,OAAO,CACH,KAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YACvC,MAAM,CAAC,CAAC,CAAC,CACN,KAAC,MAAM,IAAC,SAAS,EAAE,OAAO,KAAM,KAAK,EAAE,GAAG,EAAE,GAAG,GAAI,CACtD,CAAC,CAAC,CAAC,CACA,KAAC,UAAU,IAAC,IAAI,EAAE,GAAG,YACjB,KAAC,MAAM,OAAK,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,GAAI,GAC1C,CAChB,GACqB,CAC7B,CAAC;AACN,CAAC,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Button, RouterLink} from '../../../../../components';\nimport {BlockIdContext} from '../../../../../context/blockIdContext';\nimport {ButtonProps} from '../../../../../models';\nimport {block} from '../../../../../utils';\nimport {NavigationItemProps} from '../../../../models';\n\nimport './NavigationButton.scss';\n\nconst b = block('navigation-button');\n\nconst ANALYTICS_ID = 'navigation';\n\ntype NavigationButtonProps = Pick<NavigationItemProps, 'className'> & ButtonProps;\n\nexport const NavigationButton: React.FC<NavigationButtonProps> = (props) => {\n const {url, target, className} = props;\n const classes = b(null, className);\n return (\n <BlockIdContext.Provider value={ANALYTICS_ID}>\n {target ? (\n <Button className={classes} {...props} url={url} />\n ) : (\n <RouterLink href={url}>\n <Button {...props} className={classes} url={url} />\n </RouterLink>\n )}\n </BlockIdContext.Provider>\n );\n};\n"]}
1
+ {"version":3,"file":"NavigationButton.js","sourceRoot":"../../../../../../../src","sources":["navigation/components/NavigationItem/components/NavigationButton/NavigationButton.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAC,MAAM,EAAE,UAAU,EAAC,2CAAkC;AAC7D,OAAO,EAAC,cAAc,EAAC,uDAA8C;AAErE,OAAO,EAAC,KAAK,EAAC,sCAA6B;AAG3C,OAAO,wBAAwB,CAAC;AAEhC,MAAM,CAAC,GAAG,KAAK,CAAC,mBAAmB,CAAC,CAAC;AAErC,MAAM,YAAY,GAAG,YAAY,CAAC;AAIlC,MAAM,CAAC,MAAM,gBAAgB,GAAoC,CAAC,KAAK,EAAE,EAAE;IACvE,MAAM,EAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAC,GAAG,KAAK,CAAC;IACvC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACnC,OAAO;IACH,gBAAgB;IAChB,8DAA8D;IAC9D,KAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAmB,YAC9C,MAAM,CAAC,CAAC,CAAC,CACN,KAAC,MAAM,IAAC,SAAS,EAAE,OAAO,KAAM,KAAK,EAAE,GAAG,EAAE,GAAG,GAAI,CACtD,CAAC,CAAC,CAAC,CACA,KAAC,UAAU,IAAC,IAAI,EAAE,GAAG,YACjB,KAAC,MAAM,OAAK,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,GAAI,GAC1C,CAChB,GACqB,CAC7B,CAAC;AACN,CAAC,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Button, RouterLink} from '../../../../../components';\nimport {BlockIdContext} from '../../../../../context/blockIdContext';\nimport {ButtonProps} from '../../../../../models';\nimport {block} from '../../../../../utils';\nimport {NavigationItemProps} from '../../../../models';\n\nimport './NavigationButton.scss';\n\nconst b = block('navigation-button');\n\nconst ANALYTICS_ID = 'navigation';\n\ntype NavigationButtonProps = Pick<NavigationItemProps, 'className'> & ButtonProps;\n\nexport const NavigationButton: React.FC<NavigationButtonProps> = (props) => {\n const {url, target, className} = props;\n const classes = b(null, className);\n return (\n // TODO: fix any\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n <BlockIdContext.Provider value={ANALYTICS_ID as any}>\n {target ? (\n <Button className={classes} {...props} url={url} />\n ) : (\n <RouterLink href={url}>\n <Button {...props} className={classes} url={url} />\n </RouterLink>\n )}\n </BlockIdContext.Provider>\n );\n};\n"]}
@@ -13,6 +13,8 @@ unpredictable css rules order in build */
13
13
  border-radius: calc(var(--pc-border-radius) / 2);
14
14
  background: var(--g-color-base-float);
15
15
  box-shadow: 0 3px 10px var(--g-color-sfx-shadow);
16
+ font-size: var(--g-text-body-2-font-size);
17
+ line-height: var(--g-text-body-2-line-height);
16
18
  }
17
19
  .pc-navigation-popup__list {
18
20
  margin: 0;
@@ -6,10 +6,18 @@ import NavigationItem from "../NavigationItem/index.js";
6
6
  import './NavigationPopup.css';
7
7
  const b = block('navigation-popup');
8
8
  const OFFSET_RESET = { mainAxis: 0, crossAxis: 0 };
9
- export const NavigationPopup = ({ anchorRef, items, onClose, open, }) => (_jsx(Popup
10
- // Workaround to recalculate position on every opening. Required for valid position calculation for scrolled header links.
11
- , {
12
- // Workaround to recalculate position on every opening. Required for valid position calculation for scrolled header links.
13
- anchorRef: open ? anchorRef : undefined, open: open, onClose: onClose, onOutsideClick: onClose, keepMounted: true, disablePortal: true, strategy: "fixed", placement: "bottom-start", offset: OFFSET_RESET, children: _jsx("ul", { className: b('list'), children: items.map((item) => (_jsx(NavigationItem, { className: b('link'), data: item, menuLayout: NavigationLayout.Dropdown }, item.text))) }) }));
9
+ export const NavigationPopup = ({ anchorRef, items, onClose, open, }) => {
10
+ // Opening and closing is controlled by the associated button,
11
+ // but in order to give the popup control over closing as well (e.g. on click outside or escape key press)
12
+ // there needs to be an awkward looking handler like this.
13
+ const onOpenChange = (isOpen) => {
14
+ if (!isOpen) {
15
+ onClose();
16
+ }
17
+ };
18
+ return (_jsx(Popup, { className: b(),
19
+ // Workaround to recalculate position on every opening. Required for valid position calculation for scrolled header links.
20
+ anchorElement: anchorRef.current, open: open, onOpenChange: onOpenChange, keepMounted: true, strategy: "fixed", placement: "bottom-start", offset: OFFSET_RESET, children: _jsx("ul", { className: b('list'), children: items.map((item) => (_jsx(NavigationItem, { className: b('link'), data: item, menuLayout: NavigationLayout.Dropdown }, item.text))) }) }));
21
+ };
14
22
  export default NavigationPopup;
15
23
  //# sourceMappingURL=NavigationPopup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationPopup.js","sourceRoot":"../../../../../src","sources":["navigation/components/NavigationPopup/NavigationPopup.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,EAAC,gBAAgB,EAAuB,wBAAqB;AACpE,OAAO,cAAc,mCAA0B;AAE/C,OAAO,uBAAuB,CAAC;AAE/B,MAAM,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC;AACpC,MAAM,YAAY,GAA4C,EAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAC,CAAC;AAE1F,MAAM,CAAC,MAAM,eAAe,GAAmC,CAAC,EAC5D,SAAS,EACT,KAAK,EACL,OAAO,EACP,IAAI,GACP,EAAE,EAAE,CAAC,CACF,KAAC,KAAK;AACF,0HAA0H;;IAA1H,0HAA0H;IAC1H,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EACvC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,OAAO,EACvB,WAAW,QACX,aAAa,QACb,QAAQ,EAAC,OAAO,EAChB,SAAS,EAAC,cAAc,EACxB,MAAM,EAAE,YAAY,YAEpB,aAAI,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YACnB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACjB,KAAC,cAAc,IAEX,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EACpB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,gBAAgB,CAAC,QAAQ,IAHhC,IAAI,CAAC,IAAI,CAIhB,CACL,CAAC,GACD,GACD,CACX,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Popup} from '@gravity-ui/uikit';\n\nimport {block} from '../../../utils';\nimport {NavigationLayout, NavigationPopupProps} from '../../models';\nimport NavigationItem from '../NavigationItem';\n\nimport './NavigationPopup.scss';\n\nconst b = block('navigation-popup');\nconst OFFSET_RESET: {mainAxis?: number; crossAxis?: number} = {mainAxis: 0, crossAxis: 0};\n\nexport const NavigationPopup: React.FC<NavigationPopupProps> = ({\n anchorRef,\n items,\n onClose,\n open,\n}) => (\n <Popup\n // Workaround to recalculate position on every opening. Required for valid position calculation for scrolled header links.\n anchorRef={open ? anchorRef : undefined}\n open={open}\n onClose={onClose}\n onOutsideClick={onClose}\n keepMounted\n disablePortal\n strategy=\"fixed\"\n placement=\"bottom-start\"\n offset={OFFSET_RESET}\n >\n <ul className={b('list')}>\n {items.map((item) => (\n <NavigationItem\n key={item.text}\n className={b('link')}\n data={item}\n menuLayout={NavigationLayout.Dropdown}\n />\n ))}\n </ul>\n </Popup>\n);\n\nexport default NavigationPopup;\n"]}
1
+ {"version":3,"file":"NavigationPopup.js","sourceRoot":"../../../../../src","sources":["navigation/components/NavigationPopup/NavigationPopup.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,EAAC,gBAAgB,EAAuB,wBAAqB;AACpE,OAAO,cAAc,mCAA0B;AAE/C,OAAO,uBAAuB,CAAC;AAE/B,MAAM,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC;AACpC,MAAM,YAAY,GAA4C,EAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAC,CAAC;AAE1F,MAAM,CAAC,MAAM,eAAe,GAAmC,CAAC,EAC5D,SAAS,EACT,KAAK,EACL,OAAO,EACP,IAAI,GACP,EAAE,EAAE;IACD,8DAA8D;IAC9D,0GAA0G;IAC1G,0DAA0D;IAC1D,MAAM,YAAY,GAAG,CAAC,MAAe,EAAE,EAAE;QACrC,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;QACd,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACH,KAAC,KAAK,IACF,SAAS,EAAE,CAAC,EAAE;QACd,0HAA0H;QAC1H,aAAa,EAAE,SAAS,CAAC,OAAO,EAChC,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,YAAY,EAC1B,WAAW,QACX,QAAQ,EAAC,OAAO,EAChB,SAAS,EAAC,cAAc,EACxB,MAAM,EAAE,YAAY,YAEpB,aAAI,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YACnB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACjB,KAAC,cAAc,IAEX,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,EACpB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,gBAAgB,CAAC,QAAQ,IAHhC,IAAI,CAAC,IAAI,CAIhB,CACL,CAAC,GACD,GACD,CACX,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Popup} from '@gravity-ui/uikit';\n\nimport {block} from '../../../utils';\nimport {NavigationLayout, NavigationPopupProps} from '../../models';\nimport NavigationItem from '../NavigationItem';\n\nimport './NavigationPopup.scss';\n\nconst b = block('navigation-popup');\nconst OFFSET_RESET: {mainAxis?: number; crossAxis?: number} = {mainAxis: 0, crossAxis: 0};\n\nexport const NavigationPopup: React.FC<NavigationPopupProps> = ({\n anchorRef,\n items,\n onClose,\n open,\n}) => {\n // Opening and closing is controlled by the associated button,\n // but in order to give the popup control over closing as well (e.g. on click outside or escape key press)\n // there needs to be an awkward looking handler like this.\n const onOpenChange = (isOpen: boolean) => {\n if (!isOpen) {\n onClose();\n }\n };\n\n return (\n <Popup\n className={b()}\n // Workaround to recalculate position on every opening. Required for valid position calculation for scrolled header links.\n anchorElement={anchorRef.current}\n open={open}\n onOpenChange={onOpenChange}\n keepMounted\n strategy=\"fixed\"\n placement=\"bottom-start\"\n offset={OFFSET_RESET}\n >\n <ul className={b('list')}>\n {items.map((item) => (\n <NavigationItem\n key={item.text}\n className={b('link')}\n data={item}\n menuLayout={NavigationLayout.Dropdown}\n />\n ))}\n </ul>\n </Popup>\n );\n};\n\nexport default NavigationPopup;\n"]}
@@ -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;
@@ -1,9 +1,10 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { block } from "../../../utils/index.js";
2
+ import { block, isHeaderSet, isLogoSet } from "../../../utils/index.js";
3
3
  import Navigation from "../../components/Navigation/Navigation.js";
4
4
  import './Layout.css';
5
5
  const b = block('layout');
6
6
  const Layout = ({ children, navigation }) => (_jsxs("div", { className: b(), children: [navigation &&
7
+ (isLogoSet(navigation.logo) || isHeaderSet(navigation.header)) &&
7
8
  (navigation.renderNavigation ? (navigation.renderNavigation()) : (_jsx(Navigation, { data: navigation.header, logo: navigation.logo, className: b('navigation') }))), _jsx("main", { className: b('content'), children: children })] }));
8
9
  export default Layout;
9
10
  //# sourceMappingURL=Layout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Layout.js","sourceRoot":"../../../../../src","sources":["navigation/containers/Layout/Layout.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAC,KAAK,EAAC,gCAAuB;AACrC,OAAO,UAAU,kDAA+C;AAEhE,OAAO,cAAc,CAAC;AAEtB,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;AAO1B,MAAM,MAAM,GAA0B,CAAC,EAAC,QAAQ,EAAE,UAAU,EAAC,EAAE,EAAE,CAAC,CAC9D,eAAK,SAAS,EAAE,CAAC,EAAE,aACd,UAAU;YACP,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAC3B,UAAU,CAAC,gBAAgB,EAAE,CAChC,CAAC,CAAC,CAAC,CACA,KAAC,UAAU,IACP,IAAI,EAAE,UAAU,CAAC,MAAM,EACvB,IAAI,EAAE,UAAU,CAAC,IAAI,EACrB,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,GAC5B,CACL,CAAC,EACN,eAAM,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,YAAG,QAAQ,GAAQ,IAC9C,CACT,CAAC;AAEF,eAAe,MAAM,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {NavigationData} from '../../../models';\nimport {block} from '../../../utils';\nimport Navigation from '../../components/Navigation/Navigation';\n\nimport './Layout.scss';\n\nconst b = block('layout');\n\nexport interface LayoutProps {\n navigation?: NavigationData;\n children?: React.ReactNode;\n}\n\nconst Layout: React.FC<LayoutProps> = ({children, navigation}) => (\n <div className={b()}>\n {navigation &&\n (navigation.renderNavigation ? (\n navigation.renderNavigation()\n ) : (\n <Navigation\n data={navigation.header}\n logo={navigation.logo}\n className={b('navigation')}\n />\n ))}\n <main className={b('content')}>{children}</main>\n </div>\n);\n\nexport default Layout;\n"]}
1
+ {"version":3,"file":"Layout.js","sourceRoot":"../../../../../src","sources":["navigation/containers/Layout/Layout.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAC,gCAAuB;AAC7D,OAAO,UAAU,kDAA+C;AAEhE,OAAO,cAAc,CAAC;AAEtB,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;AAO1B,MAAM,MAAM,GAA0B,CAAC,EAAC,QAAQ,EAAE,UAAU,EAAC,EAAE,EAAE,CAAC,CAC9D,eAAK,SAAS,EAAE,CAAC,EAAE,aACd,UAAU;YACP,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC9D,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAC3B,UAAU,CAAC,gBAAgB,EAAE,CAChC,CAAC,CAAC,CAAC,CACA,KAAC,UAAU,IACP,IAAI,EAAE,UAAU,CAAC,MAAM,EACvB,IAAI,EAAE,UAAU,CAAC,IAAI,EACrB,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,GAC5B,CACL,CAAC,EACN,eAAM,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,YAAG,QAAQ,GAAQ,IAC9C,CACT,CAAC;AAEF,eAAe,MAAM,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {NavigationData} from '../../../models';\nimport {block, isHeaderSet, isLogoSet} from '../../../utils';\nimport Navigation from '../../components/Navigation/Navigation';\n\nimport './Layout.scss';\n\nconst b = block('layout');\n\nexport interface LayoutProps {\n navigation?: NavigationData;\n children?: React.ReactNode;\n}\n\nconst Layout: React.FC<LayoutProps> = ({children, navigation}) => (\n <div className={b()}>\n {navigation &&\n (isLogoSet(navigation.logo) || isHeaderSet(navigation.header)) &&\n (navigation.renderNavigation ? (\n navigation.renderNavigation()\n ) : (\n <Navigation\n data={navigation.header}\n logo={navigation.logo}\n className={b('navigation')}\n />\n ))}\n <main className={b('content')}>{children}</main>\n </div>\n);\n\nexport default Layout;\n"]}
@@ -41,7 +41,7 @@ export interface NavigationListProps extends Pick<NavigationListItemProps, 'colu
41
41
  export interface ItemsWrapperProps extends Pick<NavigationListProps, 'items'>, ActiveItemProps, ClassNameProps {
42
42
  }
43
43
  export interface DesktopNavigationProps extends MobileMenuButtonProps, ActiveItemProps {
44
- logo: ThemedNavigationLogoData;
44
+ logo?: ThemedNavigationLogoData;
45
45
  leftItemsWithIconSize: NavigationItemModel[];
46
46
  rightItemsWithIconSize?: NavigationItemModel[];
47
47
  customMobileHeaderItems?: NavigationItemModel[];
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"../../../src","sources":["navigation/models.ts"],"names":[],"mappings":"AAeA,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACtB,+BAAa,CAAA;IACb,iCAAe,CAAA;IACf,6BAAW,CAAA;IACX,mCAAiB,CAAA;AACrB,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AAED,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IACxB,uCAAmB,CAAA;IACnB,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;AACzB,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B","sourcesContent":["import * as React from 'react';\n\nimport {\n ClassNameProps,\n NavigationItemData,\n NavigationItemModel,\n NavigationLinkItem,\n ThemedNavigationLogoData,\n} from '../models';\n\nexport interface MobileMenuButtonProps {\n isSidebarOpened: boolean;\n onSidebarOpenedChange: (arg: boolean) => void;\n}\n\nexport enum ItemColumnName {\n Left = 'left',\n Right = 'right',\n Top = 'top',\n Bottom = 'bottom',\n}\n\nexport enum NavigationLayout {\n Desktop = 'desktop',\n Mobile = 'mobile',\n Dropdown = 'dropdown',\n}\n\nexport interface ActiveItemProps {\n activeItemId?: string;\n onActiveItemChange: (id?: string) => void;\n}\n\nexport interface MenuLayoutProps {\n menuLayout?: NavigationLayout;\n}\nexport interface NavigationItemProps extends ClassNameProps, MenuLayoutProps {\n data: NavigationItemData;\n onClick?: React.MouseEventHandler;\n isActive?: boolean;\n isTopLevel?: boolean;\n hidePopup?: () => void;\n}\n\nexport interface NavigationListItemProps extends MenuLayoutProps, ActiveItemProps, ClassNameProps {\n data: NavigationItemModel;\n column: ItemColumnName;\n index: number;\n}\n\nexport interface NavigationListProps\n extends Pick<NavigationListItemProps, 'column'>,\n MenuLayoutProps,\n ActiveItemProps,\n ClassNameProps {\n items: NavigationItemModel[];\n itemClassName?: string;\n}\n\nexport interface ItemsWrapperProps\n extends Pick<NavigationListProps, 'items'>,\n ActiveItemProps,\n ClassNameProps {}\n\nexport interface DesktopNavigationProps extends MobileMenuButtonProps, ActiveItemProps {\n logo: ThemedNavigationLogoData;\n leftItemsWithIconSize: NavigationItemModel[];\n rightItemsWithIconSize?: NavigationItemModel[];\n customMobileHeaderItems?: NavigationItemModel[];\n}\n\nexport interface MobileNavigationProps extends ClassNameProps, ActiveItemProps {\n isOpened?: boolean;\n topItems?: NavigationItemModel[];\n bottomItems?: NavigationItemModel[];\n portalContainer?: React.RefObject<HTMLElement>;\n}\n\nexport interface NavigationProps extends MobileMenuButtonProps, ActiveItemProps {\n logo: ThemedNavigationLogoData;\n leftItemsWithIconSize: NavigationItemModel[];\n rightItemsWithIconSize?: NavigationItemModel[];\n}\n\nexport interface NavigationPopupProps {\n open: boolean;\n items: NavigationLinkItem[];\n onClose: () => void;\n anchorRef: React.RefObject<Element>;\n}\n"]}
1
+ {"version":3,"file":"models.js","sourceRoot":"../../../src","sources":["navigation/models.ts"],"names":[],"mappings":"AAeA,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACtB,+BAAa,CAAA;IACb,iCAAe,CAAA;IACf,6BAAW,CAAA;IACX,mCAAiB,CAAA;AACrB,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AAED,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IACxB,uCAAmB,CAAA;IACnB,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;AACzB,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B","sourcesContent":["import * as React from 'react';\n\nimport {\n ClassNameProps,\n NavigationItemData,\n NavigationItemModel,\n NavigationLinkItem,\n ThemedNavigationLogoData,\n} from '../models';\n\nexport interface MobileMenuButtonProps {\n isSidebarOpened: boolean;\n onSidebarOpenedChange: (arg: boolean) => void;\n}\n\nexport enum ItemColumnName {\n Left = 'left',\n Right = 'right',\n Top = 'top',\n Bottom = 'bottom',\n}\n\nexport enum NavigationLayout {\n Desktop = 'desktop',\n Mobile = 'mobile',\n Dropdown = 'dropdown',\n}\n\nexport interface ActiveItemProps {\n activeItemId?: string;\n onActiveItemChange: (id?: string) => void;\n}\n\nexport interface MenuLayoutProps {\n menuLayout?: NavigationLayout;\n}\nexport interface NavigationItemProps extends ClassNameProps, MenuLayoutProps {\n data: NavigationItemData;\n onClick?: React.MouseEventHandler;\n isActive?: boolean;\n isTopLevel?: boolean;\n hidePopup?: () => void;\n}\n\nexport interface NavigationListItemProps extends MenuLayoutProps, ActiveItemProps, ClassNameProps {\n data: NavigationItemModel;\n column: ItemColumnName;\n index: number;\n}\n\nexport interface NavigationListProps\n extends Pick<NavigationListItemProps, 'column'>,\n MenuLayoutProps,\n ActiveItemProps,\n ClassNameProps {\n items: NavigationItemModel[];\n itemClassName?: string;\n}\n\nexport interface ItemsWrapperProps\n extends Pick<NavigationListProps, 'items'>,\n ActiveItemProps,\n ClassNameProps {}\n\nexport interface DesktopNavigationProps extends MobileMenuButtonProps, ActiveItemProps {\n logo?: ThemedNavigationLogoData;\n leftItemsWithIconSize: NavigationItemModel[];\n rightItemsWithIconSize?: NavigationItemModel[];\n customMobileHeaderItems?: NavigationItemModel[];\n}\n\nexport interface MobileNavigationProps extends ClassNameProps, ActiveItemProps {\n isOpened?: boolean;\n topItems?: NavigationItemModel[];\n bottomItems?: NavigationItemModel[];\n portalContainer?: React.RefObject<HTMLElement>;\n}\n\nexport interface NavigationProps extends MobileMenuButtonProps, ActiveItemProps {\n logo: ThemedNavigationLogoData;\n leftItemsWithIconSize: NavigationItemModel[];\n rightItemsWithIconSize?: NavigationItemModel[];\n}\n\nexport interface NavigationPopupProps {\n open: boolean;\n items: NavigationLinkItem[];\n onClose: () => void;\n anchorRef: React.RefObject<Element>;\n}\n"]}
@@ -1,3 +1,4 @@
1
+ import { TestEditorBlockSchema } from "../blocks/TestEditorBlock/index.js";
1
2
  import { BannerBlock, BannerCard, CardLayoutBlock, CompaniesBlock, ContentLayoutBlock, ExtendedFeaturesBlock, FilterBlock, FormBlock, HeaderBlock, HeaderSliderBlock, IconsBlock, InfoBlock, MapBlock, MediaBlock, PromoFeaturesBlock, QuestionsBlock, ShareBlock, SliderBlock, SliderNewBlock, TableBlock, TabsBlock, } from "./validators/blocks.js";
2
3
  import { BackgroundCard, BasicCard, Divider, ImageCard, MediaCardBlock, PriceCardBlock, PriceDetailedBlock, Quote, } from "./validators/sub-blocks.js";
3
4
  export const blockSchemas = {
@@ -21,6 +22,7 @@ export const blockSchemas = {
21
22
  ...ShareBlock,
22
23
  ...FilterBlock,
23
24
  ...FormBlock,
25
+ ...TestEditorBlockSchema,
24
26
  ...SliderNewBlock,
25
27
  };
26
28
  export const cardSchemas = {
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"../../../src","sources":["schema/constants.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,WAAW,EACX,UAAU,EACV,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,QAAQ,EACR,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,WAAW,EACX,cAAc,EACd,UAAU,EACV,SAAS,GACZ,+BAA4B;AAC7B,OAAO,EACH,cAAc,EACd,SAAS,EACT,OAAO,EACP,SAAS,EACT,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,KAAK,GACR,mCAAgC;AAEjC,MAAM,CAAC,MAAM,YAAY,GAA8B;IACnD,GAAG,OAAO;IACV,GAAG,qBAAqB;IACxB,GAAG,kBAAkB;IACrB,GAAG,WAAW;IACd,GAAG,cAAc;IACjB,GAAG,WAAW;IACd,GAAG,WAAW;IACd,GAAG,cAAc;IACjB,GAAG,UAAU;IACb,GAAG,QAAQ;IACX,GAAG,SAAS;IACZ,GAAG,UAAU;IACb,GAAG,SAAS;IACZ,GAAG,iBAAiB;IACpB,GAAG,UAAU;IACb,GAAG,eAAe;IAClB,GAAG,kBAAkB;IACrB,GAAG,UAAU;IACb,GAAG,WAAW;IACd,GAAG,SAAS;IACZ,GAAG,cAAc;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG;IACvB,GAAG,cAAc;IACjB,GAAG,UAAU;IACb,GAAG,kBAAkB;IACrB,GAAG,cAAc;IACjB,GAAG,KAAK;IACR,GAAG,SAAS;IACZ,GAAG,cAAc;IACjB,GAAG,SAAS;CACf,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACvC,SAAS;IACT,OAAO;IACP,OAAO;IACP,MAAM;IACN,yBAAyB;IACzB,sBAAsB;IACtB,cAAc;IACd,iBAAiB;IACjB,cAAc;IACd,cAAc;IACd,iBAAiB;IACjB,aAAa;IACb,WAAW;IACX,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,kBAAkB;IAClB,gBAAgB;IAChB,qBAAqB;IACrB,wBAAwB;IACxB,aAAa;IACb,mBAAmB;IACnB,sBAAsB;IACtB,aAAa;IACb,cAAc;IACd,YAAY;CACf,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACtC,YAAY;IACZ,aAAa;IACb,kBAAkB;IAClB,gBAAgB;IAChB,iBAAiB;IACjB,OAAO;IACP,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,YAAY;CACf,CAAC","sourcesContent":["import {BlockType} from '../models';\n\nimport {\n BannerBlock,\n BannerCard,\n CardLayoutBlock,\n CompaniesBlock,\n ContentLayoutBlock,\n ExtendedFeaturesBlock,\n FilterBlock,\n FormBlock,\n HeaderBlock,\n HeaderSliderBlock,\n IconsBlock,\n InfoBlock,\n MapBlock,\n MediaBlock,\n PromoFeaturesBlock,\n QuestionsBlock,\n ShareBlock,\n SliderBlock,\n SliderNewBlock,\n TableBlock,\n TabsBlock,\n} from './validators/blocks';\nimport {\n BackgroundCard,\n BasicCard,\n Divider,\n ImageCard,\n MediaCardBlock,\n PriceCardBlock,\n PriceDetailedBlock,\n Quote,\n} from './validators/sub-blocks';\n\nexport const blockSchemas: Record<BlockType, object> = {\n ...Divider,\n ...ExtendedFeaturesBlock,\n ...PromoFeaturesBlock,\n ...SliderBlock,\n ...QuestionsBlock,\n ...HeaderBlock,\n ...BannerBlock,\n ...CompaniesBlock,\n ...MediaBlock,\n ...MapBlock,\n ...InfoBlock,\n ...TableBlock,\n ...TabsBlock,\n ...HeaderSliderBlock,\n ...IconsBlock,\n ...CardLayoutBlock,\n ...ContentLayoutBlock,\n ...ShareBlock,\n ...FilterBlock,\n ...FormBlock,\n ...SliderNewBlock,\n};\n\nexport const cardSchemas = {\n ...MediaCardBlock,\n ...BannerCard,\n ...PriceDetailedBlock,\n ...BackgroundCard,\n ...Quote,\n ...BasicCard,\n ...PriceCardBlock,\n ...ImageCard,\n};\n\nexport const constructorBlockSchemaNames = [\n 'divider',\n 'quote',\n 'event',\n 'post',\n 'extended-features-block',\n 'promo-features-block',\n 'slider-block',\n 'questions-block',\n 'header-block',\n 'banner-block',\n 'companies-block',\n 'media-block',\n 'map-block',\n 'info-block',\n 'table-block',\n 'tabs-block',\n /** @deprecated */\n 'price-detailed',\n 'header-slider-block',\n 'cards-with-image-block',\n 'icons-block',\n 'card-layout-block',\n 'content-layout-block',\n 'share-block',\n 'filter-block',\n 'form-block',\n];\n\nexport const constructorCardSchemaNames = [\n 'media-card',\n 'banner-card',\n /** @deprecated */\n 'price-detailed',\n 'background-card',\n 'quote',\n 'basic-card',\n 'layout-item',\n 'price-card',\n 'image-card',\n];\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"../../../src","sources":["schema/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,qBAAqB,EAAC,2CAAkC;AAGhE,OAAO,EACH,WAAW,EACX,UAAU,EACV,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,QAAQ,EACR,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,WAAW,EACX,cAAc,EACd,UAAU,EACV,SAAS,GACZ,+BAA4B;AAC7B,OAAO,EACH,cAAc,EACd,SAAS,EACT,OAAO,EACP,SAAS,EACT,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,KAAK,GACR,mCAAgC;AAEjC,MAAM,CAAC,MAAM,YAAY,GAA8B;IACnD,GAAG,OAAO;IACV,GAAG,qBAAqB;IACxB,GAAG,kBAAkB;IACrB,GAAG,WAAW;IACd,GAAG,cAAc;IACjB,GAAG,WAAW;IACd,GAAG,WAAW;IACd,GAAG,cAAc;IACjB,GAAG,UAAU;IACb,GAAG,QAAQ;IACX,GAAG,SAAS;IACZ,GAAG,UAAU;IACb,GAAG,SAAS;IACZ,GAAG,iBAAiB;IACpB,GAAG,UAAU;IACb,GAAG,eAAe;IAClB,GAAG,kBAAkB;IACrB,GAAG,UAAU;IACb,GAAG,WAAW;IACd,GAAG,SAAS;IACZ,GAAG,qBAAqB;IACxB,GAAG,cAAc;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG;IACvB,GAAG,cAAc;IACjB,GAAG,UAAU;IACb,GAAG,kBAAkB;IACrB,GAAG,cAAc;IACjB,GAAG,KAAK;IACR,GAAG,SAAS;IACZ,GAAG,cAAc;IACjB,GAAG,SAAS;CACf,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACvC,SAAS;IACT,OAAO;IACP,OAAO;IACP,MAAM;IACN,yBAAyB;IACzB,sBAAsB;IACtB,cAAc;IACd,iBAAiB;IACjB,cAAc;IACd,cAAc;IACd,iBAAiB;IACjB,aAAa;IACb,WAAW;IACX,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,kBAAkB;IAClB,gBAAgB;IAChB,qBAAqB;IACrB,wBAAwB;IACxB,aAAa;IACb,mBAAmB;IACnB,sBAAsB;IACtB,aAAa;IACb,cAAc;IACd,YAAY;CACf,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACtC,YAAY;IACZ,aAAa;IACb,kBAAkB;IAClB,gBAAgB;IAChB,iBAAiB;IACjB,OAAO;IACP,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,YAAY;CACf,CAAC","sourcesContent":["import {TestEditorBlockSchema} from '../blocks/TestEditorBlock';\nimport {BlockType} from '../models';\n\nimport {\n BannerBlock,\n BannerCard,\n CardLayoutBlock,\n CompaniesBlock,\n ContentLayoutBlock,\n ExtendedFeaturesBlock,\n FilterBlock,\n FormBlock,\n HeaderBlock,\n HeaderSliderBlock,\n IconsBlock,\n InfoBlock,\n MapBlock,\n MediaBlock,\n PromoFeaturesBlock,\n QuestionsBlock,\n ShareBlock,\n SliderBlock,\n SliderNewBlock,\n TableBlock,\n TabsBlock,\n} from './validators/blocks';\nimport {\n BackgroundCard,\n BasicCard,\n Divider,\n ImageCard,\n MediaCardBlock,\n PriceCardBlock,\n PriceDetailedBlock,\n Quote,\n} from './validators/sub-blocks';\n\nexport const blockSchemas: Record<BlockType, object> = {\n ...Divider,\n ...ExtendedFeaturesBlock,\n ...PromoFeaturesBlock,\n ...SliderBlock,\n ...QuestionsBlock,\n ...HeaderBlock,\n ...BannerBlock,\n ...CompaniesBlock,\n ...MediaBlock,\n ...MapBlock,\n ...InfoBlock,\n ...TableBlock,\n ...TabsBlock,\n ...HeaderSliderBlock,\n ...IconsBlock,\n ...CardLayoutBlock,\n ...ContentLayoutBlock,\n ...ShareBlock,\n ...FilterBlock,\n ...FormBlock,\n ...TestEditorBlockSchema,\n ...SliderNewBlock,\n};\n\nexport const cardSchemas = {\n ...MediaCardBlock,\n ...BannerCard,\n ...PriceDetailedBlock,\n ...BackgroundCard,\n ...Quote,\n ...BasicCard,\n ...PriceCardBlock,\n ...ImageCard,\n};\n\nexport const constructorBlockSchemaNames = [\n 'divider',\n 'quote',\n 'event',\n 'post',\n 'extended-features-block',\n 'promo-features-block',\n 'slider-block',\n 'questions-block',\n 'header-block',\n 'banner-block',\n 'companies-block',\n 'media-block',\n 'map-block',\n 'info-block',\n 'table-block',\n 'tabs-block',\n /** @deprecated */\n 'price-detailed',\n 'header-slider-block',\n 'cards-with-image-block',\n 'icons-block',\n 'card-layout-block',\n 'content-layout-block',\n 'share-block',\n 'filter-block',\n 'form-block',\n];\n\nexport const constructorCardSchemaNames = [\n 'media-card',\n 'banner-card',\n /** @deprecated */\n 'price-detailed',\n 'background-card',\n 'quote',\n 'basic-card',\n 'layout-item',\n 'price-card',\n 'image-card',\n];\n"]}
@@ -11,4 +11,260 @@ export interface SchemaCustomConfig {
11
11
  extensions?: object;
12
12
  }
13
13
  export declare const getBlocksCases: (blocks: Schema) => any;
14
+ export declare const defaultComponentsConfigurationSchema: {
15
+ type: string;
16
+ properties: {
17
+ logo: {
18
+ oneOf: (({
19
+ type: string;
20
+ additionalProperties: boolean;
21
+ required: string[];
22
+ properties: {
23
+ icon: {
24
+ oneOf: ({
25
+ type: string;
26
+ properties: {
27
+ when: {
28
+ type: string;
29
+ };
30
+ };
31
+ } | {
32
+ type: string;
33
+ pattern: string;
34
+ optionName: string;
35
+ items?: undefined;
36
+ } | {
37
+ type: string;
38
+ items: {
39
+ type: string;
40
+ properties: {
41
+ when: {
42
+ type: string;
43
+ };
44
+ };
45
+ };
46
+ optionName: string;
47
+ pattern?: undefined;
48
+ })[];
49
+ };
50
+ text: {
51
+ type: string;
52
+ contentType: string;
53
+ };
54
+ url: {
55
+ type: string;
56
+ };
57
+ };
58
+ } & {
59
+ optionName: string;
60
+ }) | {
61
+ type: string;
62
+ additionalProperties: boolean;
63
+ required: import("../index.js").Theme[];
64
+ properties: {};
65
+ optionName: string;
66
+ })[];
67
+ };
68
+ header: {
69
+ type: string;
70
+ additionalProperties: boolean;
71
+ required: string[];
72
+ properties: {
73
+ leftItems: {
74
+ oneOf: {
75
+ type: string;
76
+ items: {
77
+ type: string;
78
+ properties: {
79
+ when: {
80
+ type: string;
81
+ };
82
+ };
83
+ };
84
+ }[];
85
+ };
86
+ rightItems: {
87
+ oneOf: {
88
+ type: string;
89
+ items: {
90
+ type: string;
91
+ properties: {
92
+ when: {
93
+ type: string;
94
+ };
95
+ };
96
+ };
97
+ }[];
98
+ };
99
+ iconSize: {
100
+ type: string;
101
+ };
102
+ };
103
+ };
104
+ menu: {
105
+ type: string;
106
+ additionalProperties: boolean;
107
+ properties: {
108
+ title: {
109
+ type: string;
110
+ contentType: string;
111
+ };
112
+ };
113
+ };
114
+ background: {
115
+ oneOf: (({
116
+ additionalProperties: boolean;
117
+ properties: {
118
+ image: {
119
+ oneOf: ({
120
+ type: string;
121
+ properties: {
122
+ when: {
123
+ type: string;
124
+ };
125
+ };
126
+ } | {
127
+ type: string;
128
+ pattern: string;
129
+ optionName: string;
130
+ items?: undefined;
131
+ } | {
132
+ type: string;
133
+ items: {
134
+ type: string;
135
+ properties: {
136
+ when: {
137
+ type: string;
138
+ };
139
+ };
140
+ };
141
+ optionName: string;
142
+ pattern?: undefined;
143
+ })[];
144
+ };
145
+ color: {
146
+ type: string;
147
+ };
148
+ video: {
149
+ type: string;
150
+ additionalProperties: boolean;
151
+ required: string[];
152
+ properties: {
153
+ src: {
154
+ type: string;
155
+ items: {
156
+ type: string;
157
+ };
158
+ };
159
+ loop: {
160
+ oneOf: ({
161
+ optionName: string;
162
+ type: string;
163
+ additionalProperties: boolean;
164
+ required: string[];
165
+ properties: {
166
+ start: {
167
+ type: string;
168
+ };
169
+ end: {
170
+ type: string;
171
+ };
172
+ };
173
+ } | {
174
+ type: string;
175
+ optionName: string;
176
+ })[];
177
+ };
178
+ type: {
179
+ type: string;
180
+ enum: string[];
181
+ };
182
+ muted: {
183
+ type: string;
184
+ };
185
+ autoplay: {
186
+ type: string;
187
+ };
188
+ elapsedTime: {
189
+ type: string;
190
+ };
191
+ playButton: {
192
+ type: string;
193
+ additionalProperties: boolean;
194
+ properties: {
195
+ type: {
196
+ type: string;
197
+ enum: string[];
198
+ };
199
+ theme: {
200
+ type: string;
201
+ enum: string[];
202
+ };
203
+ text: {
204
+ type: string;
205
+ contentType: string;
206
+ };
207
+ };
208
+ };
209
+ controls: {
210
+ type: string;
211
+ enum: import("../index.js").MediaVideoControlsType[];
212
+ };
213
+ customControlsOptions: {
214
+ type: string;
215
+ additionalProperties: boolean;
216
+ properties: {
217
+ type: {
218
+ type: string;
219
+ enum: import("../index.js").CustomControlsType[];
220
+ };
221
+ muteButtonShown: {
222
+ type: string;
223
+ };
224
+ positioning: {
225
+ type: string;
226
+ enum: import("../index.js").CustomControlsButtonPositioning[];
227
+ };
228
+ };
229
+ };
230
+ ariaLabel: {
231
+ type: string;
232
+ };
233
+ contain: {
234
+ type: string;
235
+ };
236
+ };
237
+ };
238
+ height: {
239
+ type: string;
240
+ };
241
+ size: {
242
+ type: string;
243
+ enum: string[];
244
+ };
245
+ parallax: {
246
+ type: string;
247
+ };
248
+ fullWidthMedia: {
249
+ type: string;
250
+ };
251
+ animated: {
252
+ type: string;
253
+ };
254
+ };
255
+ } & {
256
+ optionName: string;
257
+ }) | {
258
+ type: string;
259
+ additionalProperties: boolean;
260
+ required: import("../index.js").Theme[];
261
+ properties: {};
262
+ optionName: string;
263
+ })[];
264
+ };
265
+ animated: {
266
+ type: string;
267
+ };
268
+ };
269
+ };
14
270
  export declare function generateDefaultSchema(config?: SchemaCustomConfig): Schema;
@@ -9,6 +9,16 @@ export const getBlocksCases = (blocks) => {
9
9
  ...block,
10
10
  }), {});
11
11
  };
12
+ export const defaultComponentsConfigurationSchema = {
13
+ type: 'object',
14
+ properties: {
15
+ ...AnimatableProps,
16
+ logo: withTheme(LogoProps),
17
+ header: NavigationHeaderProps,
18
+ menu: MenuProps,
19
+ background: withTheme(BackgroundProps),
20
+ },
21
+ };
12
22
  export function generateDefaultSchema(config) {
13
23
  const { cards = {}, blocks = {}, extensions = {} } = config ?? {};
14
24
  const configBlockSchemaNames = Object.keys(blocks).filter((item) => !constructorBlockSchemaNames.includes(item));
@@ -51,17 +61,13 @@ export function generateDefaultSchema(config) {
51
61
  additionalProperties: false,
52
62
  required: ['blocks'],
53
63
  properties: {
54
- ...AnimatableProps,
55
- logo: withTheme(LogoProps),
56
- header: NavigationHeaderProps,
64
+ ...defaultComponentsConfigurationSchema.properties,
57
65
  blocks: {
58
66
  type: 'array',
59
67
  items: {
60
68
  $ref: '#/definitions/children',
61
69
  },
62
70
  },
63
- menu: MenuProps,
64
- background: withTheme(BackgroundProps),
65
71
  ...extensions,
66
72
  },
67
73
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["schema/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,8BAAqB;AAKxC,OAAO,EACH,YAAY,EACZ,WAAW,EACX,2BAA2B,EAC3B,0BAA0B,GAC7B,uBAAoB;AACrB,OAAO,EAAC,eAAe,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAC,+BAA4B;AAC3F,OAAO,EAAC,SAAS,EAAE,qBAAqB,EAAC,mCAAgC;AACzE,OAAO,EAAC,YAAY,EAAC,8BAA2B;AAYhD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAC/B,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACb,GAAG,GAAG;QACN,GAAG,KAAK;KACX,CAAC,EACF,EAAE,CACL,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,UAAU,qBAAqB,CAAC,MAA2B;IAC7D,MAAM,EAAC,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,UAAU,GAAG,EAAE,EAAC,GAAG,MAAM,IAAI,EAAE,CAAC;IAEhE,MAAM,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CACrD,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,2BAA2B,CAAC,QAAQ,CAAC,IAAI,CAAC,CACxD,CAAC;IAEF,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CACnD,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,0BAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,CACvD,CAAC;IAEF,OAAO;QACH,GAAG,EAAE,MAAM;QACX,WAAW,EAAE;YACT,QAAQ,EAAE,YAAY,CAAC;gBACnB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,CAAC,MAAM,CAAC;gBAClB,UAAU,EAAE;oBACR,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,GAAG,2BAA2B,EAAE,GAAG,sBAAsB,CAAC;qBACpE;iBACJ;gBACD,MAAM,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC;gBACzB,WAAW,EAAE;oBACT,GAAG,YAAY;oBACf,GAAG,cAAc,CAAC,MAAM,CAAC;iBAC5B;aACJ,CAAC;YACF,KAAK,EAAE,YAAY,CAAC;gBAChB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,CAAC,MAAM,CAAC;gBAClB,UAAU,EAAE;oBACR,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,GAAG,0BAA0B,EAAE,GAAG,qBAAqB,CAAC;qBAClE;iBACJ;gBACD,MAAM,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC;gBACzB,WAAW,EAAE;oBACT,GAAG,WAAW;oBACd,GAAG,cAAc,CAAC,KAAK,CAAC;iBAC3B;aACJ,CAAC;SACL;QACD,IAAI,EAAE,QAAQ;QACd,oBAAoB,EAAE,KAAK;QAC3B,QAAQ,EAAE,CAAC,QAAQ,CAAC;QACpB,UAAU,EAAE;YACR,GAAG,eAAe;YAClB,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC;YAC1B,MAAM,EAAE,qBAAqB;YAC7B,MAAM,EAAE;gBACJ,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACH,IAAI,EAAE,wBAAwB;iBACjC;aACJ;YACD,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,SAAS,CAAC,eAAe,CAAC;YACtC,GAAG,UAAU;SAChB;KACM,CAAC;AAChB,CAAC","sourcesContent":["export {validators} from './validators';\nexport type {ObjectSchema} from './validators/utils';\n\nimport type {JSONSchema4} from 'json-schema';\n\nimport {\n blockSchemas,\n cardSchemas,\n constructorBlockSchemaNames,\n constructorCardSchemaNames,\n} from './constants';\nimport {AnimatableProps, BackgroundProps, MenuProps, withTheme} from './validators/common';\nimport {LogoProps, NavigationHeaderProps} from './validators/navigation';\nimport {filteredItem} from './validators/utils';\n\nexport type Schema = JSONSchema4;\nexport type SchemaDefinitions = {\n [k: string]: Schema;\n};\nexport interface SchemaCustomConfig {\n blocks?: Record<string, Schema>;\n cards?: Record<string, Schema>;\n extensions?: object;\n}\n\nexport const getBlocksCases = (blocks: Schema) => {\n return Object.values(blocks).reduce(\n (acc, block) => ({\n ...acc,\n ...block,\n }),\n {},\n );\n};\n\nexport function generateDefaultSchema(config?: SchemaCustomConfig) {\n const {cards = {}, blocks = {}, extensions = {}} = config ?? {};\n\n const configBlockSchemaNames = Object.keys(blocks).filter(\n (item) => !constructorBlockSchemaNames.includes(item),\n );\n\n const configCardSchemaNames = Object.keys(cards).filter(\n (item) => !constructorCardSchemaNames.includes(item),\n );\n\n return {\n $id: 'self',\n definitions: {\n children: filteredItem({\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n enum: [...constructorBlockSchemaNames, ...configBlockSchemaNames],\n },\n },\n select: {$data: '0/type'},\n selectCases: {\n ...blockSchemas,\n ...getBlocksCases(blocks),\n },\n }),\n cards: filteredItem({\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n enum: [...constructorCardSchemaNames, ...configCardSchemaNames],\n },\n },\n select: {$data: '0/type'},\n selectCases: {\n ...cardSchemas,\n ...getBlocksCases(cards),\n },\n }),\n },\n type: 'object',\n additionalProperties: false,\n required: ['blocks'],\n properties: {\n ...AnimatableProps,\n logo: withTheme(LogoProps),\n header: NavigationHeaderProps,\n blocks: {\n type: 'array',\n items: {\n $ref: '#/definitions/children',\n },\n },\n menu: MenuProps,\n background: withTheme(BackgroundProps),\n ...extensions,\n },\n } as Schema;\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["schema/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,8BAAqB;AAKxC,OAAO,EACH,YAAY,EACZ,WAAW,EACX,2BAA2B,EAC3B,0BAA0B,GAC7B,uBAAoB;AACrB,OAAO,EAAC,eAAe,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAC,+BAA4B;AAC3F,OAAO,EAAC,SAAS,EAAE,qBAAqB,EAAC,mCAAgC;AACzE,OAAO,EAAC,YAAY,EAAC,8BAA2B;AAYhD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAC/B,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACb,GAAG,GAAG;QACN,GAAG,KAAK;KACX,CAAC,EACF,EAAE,CACL,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oCAAoC,GAAG;IAChD,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,GAAG,eAAe;QAClB,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC;QAC1B,MAAM,EAAE,qBAAqB;QAC7B,IAAI,EAAE,SAAS;QACf,UAAU,EAAE,SAAS,CAAC,eAAe,CAAC;KACzC;CACJ,CAAC;AAEF,MAAM,UAAU,qBAAqB,CAAC,MAA2B;IAC7D,MAAM,EAAC,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,UAAU,GAAG,EAAE,EAAC,GAAG,MAAM,IAAI,EAAE,CAAC;IAEhE,MAAM,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CACrD,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,2BAA2B,CAAC,QAAQ,CAAC,IAAI,CAAC,CACxD,CAAC;IAEF,MAAM,qBAAqB,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CACnD,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,0BAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,CACvD,CAAC;IAEF,OAAO;QACH,GAAG,EAAE,MAAM;QACX,WAAW,EAAE;YACT,QAAQ,EAAE,YAAY,CAAC;gBACnB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,CAAC,MAAM,CAAC;gBAClB,UAAU,EAAE;oBACR,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,GAAG,2BAA2B,EAAE,GAAG,sBAAsB,CAAC;qBACpE;iBACJ;gBACD,MAAM,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC;gBACzB,WAAW,EAAE;oBACT,GAAG,YAAY;oBACf,GAAG,cAAc,CAAC,MAAM,CAAC;iBAC5B;aACJ,CAAC;YACF,KAAK,EAAE,YAAY,CAAC;gBAChB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,CAAC,MAAM,CAAC;gBAClB,UAAU,EAAE;oBACR,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,GAAG,0BAA0B,EAAE,GAAG,qBAAqB,CAAC;qBAClE;iBACJ;gBACD,MAAM,EAAE,EAAC,KAAK,EAAE,QAAQ,EAAC;gBACzB,WAAW,EAAE;oBACT,GAAG,WAAW;oBACd,GAAG,cAAc,CAAC,KAAK,CAAC;iBAC3B;aACJ,CAAC;SACL;QACD,IAAI,EAAE,QAAQ;QACd,oBAAoB,EAAE,KAAK;QAC3B,QAAQ,EAAE,CAAC,QAAQ,CAAC;QACpB,UAAU,EAAE;YACR,GAAG,oCAAoC,CAAC,UAAU;YAClD,MAAM,EAAE;gBACJ,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE;oBACH,IAAI,EAAE,wBAAwB;iBACjC;aACJ;YACD,GAAG,UAAU;SAChB;KACM,CAAC;AAChB,CAAC","sourcesContent":["export {validators} from './validators';\nexport type {ObjectSchema} from './validators/utils';\n\nimport type {JSONSchema4} from 'json-schema';\n\nimport {\n blockSchemas,\n cardSchemas,\n constructorBlockSchemaNames,\n constructorCardSchemaNames,\n} from './constants';\nimport {AnimatableProps, BackgroundProps, MenuProps, withTheme} from './validators/common';\nimport {LogoProps, NavigationHeaderProps} from './validators/navigation';\nimport {filteredItem} from './validators/utils';\n\nexport type Schema = JSONSchema4;\nexport type SchemaDefinitions = {\n [k: string]: Schema;\n};\nexport interface SchemaCustomConfig {\n blocks?: Record<string, Schema>;\n cards?: Record<string, Schema>;\n extensions?: object;\n}\n\nexport const getBlocksCases = (blocks: Schema) => {\n return Object.values(blocks).reduce(\n (acc, block) => ({\n ...acc,\n ...block,\n }),\n {},\n );\n};\n\nexport const defaultComponentsConfigurationSchema = {\n type: 'object',\n properties: {\n ...AnimatableProps,\n logo: withTheme(LogoProps),\n header: NavigationHeaderProps,\n menu: MenuProps,\n background: withTheme(BackgroundProps),\n },\n};\n\nexport function generateDefaultSchema(config?: SchemaCustomConfig) {\n const {cards = {}, blocks = {}, extensions = {}} = config ?? {};\n\n const configBlockSchemaNames = Object.keys(blocks).filter(\n (item) => !constructorBlockSchemaNames.includes(item),\n );\n\n const configCardSchemaNames = Object.keys(cards).filter(\n (item) => !constructorCardSchemaNames.includes(item),\n );\n\n return {\n $id: 'self',\n definitions: {\n children: filteredItem({\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n enum: [...constructorBlockSchemaNames, ...configBlockSchemaNames],\n },\n },\n select: {$data: '0/type'},\n selectCases: {\n ...blockSchemas,\n ...getBlocksCases(blocks),\n },\n }),\n cards: filteredItem({\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n enum: [...constructorCardSchemaNames, ...configCardSchemaNames],\n },\n },\n select: {$data: '0/type'},\n selectCases: {\n ...cardSchemas,\n ...getBlocksCases(cards),\n },\n }),\n },\n type: 'object',\n additionalProperties: false,\n required: ['blocks'],\n properties: {\n ...defaultComponentsConfigurationSchema.properties,\n blocks: {\n type: 'array',\n items: {\n $ref: '#/definitions/children',\n },\n },\n ...extensions,\n },\n } as Schema;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import { BlockConfig } from "../../../common/types/index.js";
2
+ export declare const blockConfig: BlockConfig;