@gravity-ui/page-constructor 6.3.2-alpha.2 → 6.3.2-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (254) hide show
  1. package/build/cjs/blocks/CardLayout/index.d.ts +1 -1
  2. package/build/cjs/blocks/CardLayout/index.js.map +1 -1
  3. package/build/cjs/blocks/Header/dynamic-form.d.ts +1 -1
  4. package/build/cjs/blocks/Header/dynamic-form.js.map +1 -1
  5. package/build/cjs/blocks/Slider/dynamic-form.d.ts +1 -1
  6. package/build/cjs/blocks/Slider/dynamic-form.js.map +1 -1
  7. package/build/cjs/blocks/TestEditorBlock/form.d.ts +1 -1
  8. package/build/cjs/blocks/TestEditorBlock/form.js.map +1 -1
  9. package/build/cjs/common/postMessage.d.ts +4 -0
  10. package/build/cjs/common/postMessage.js +31 -0
  11. package/build/cjs/common/postMessage.js.map +1 -0
  12. package/build/cjs/common/store.d.ts +40 -0
  13. package/build/cjs/common/store.js +20 -0
  14. package/build/cjs/common/store.js.map +1 -0
  15. package/build/cjs/common/types/actions.d.ts +36 -0
  16. package/build/cjs/common/types/actions.js +3 -0
  17. package/build/cjs/common/types/actions.js.map +1 -0
  18. package/build/cjs/common/types/common.d.ts +5 -0
  19. package/build/cjs/common/types/common.js +3 -0
  20. package/build/cjs/common/types/common.js.map +1 -0
  21. package/build/cjs/common/types/forms.d.ts +97 -0
  22. package/build/cjs/common/types/forms.js +3 -0
  23. package/build/cjs/common/types/forms.js.map +1 -0
  24. package/build/cjs/common/types/index.d.ts +4 -0
  25. package/build/cjs/common/types/index.js +8 -0
  26. package/build/cjs/common/types/index.js.map +1 -0
  27. package/build/cjs/common/types/messages.d.ts +9 -0
  28. package/build/cjs/common/types/messages.js +3 -0
  29. package/build/cjs/common/types/messages.js.map +1 -0
  30. package/build/cjs/common/utils.d.ts +25 -0
  31. package/build/cjs/common/utils.js +22 -0
  32. package/build/cjs/common/utils.js.map +1 -0
  33. package/build/cjs/components/Image/dynamic-form.d.ts +1 -1
  34. package/build/cjs/components/Image/dynamic-form.js.map +1 -1
  35. package/build/cjs/constructor-items.d.ts +1 -1
  36. package/build/cjs/constructor-items.js.map +1 -1
  37. package/build/cjs/context/editorStoreContext/PCEditorStoreContext.d.ts +1 -1
  38. package/build/cjs/context/editorStoreContext/PCEditorStoreContext.js +1 -1
  39. package/build/cjs/context/editorStoreContext/PCEditorStoreContext.js.map +1 -1
  40. package/build/cjs/context/editorStoreContext/PCEditorStoreProvider.js +1 -1
  41. package/build/cjs/context/editorStoreContext/PCEditorStoreProvider.js.map +1 -1
  42. package/build/cjs/editor-v2/components/DynamicForm/DynamicForm.d.ts +1 -1
  43. package/build/cjs/editor-v2/components/DynamicForm/DynamicForm.js.map +1 -1
  44. package/build/cjs/editor-v2/components/DynamicForm/FieldBase/FieldBase.css +0 -13
  45. package/build/cjs/editor-v2/components/DynamicForm/Fields/Array/Array.d.ts +1 -1
  46. package/build/cjs/editor-v2/components/DynamicForm/Fields/Array/Array.js.map +1 -1
  47. package/build/cjs/editor-v2/components/DynamicForm/Fields/Object/Object.d.ts +1 -1
  48. package/build/cjs/editor-v2/components/DynamicForm/Fields/Object/Object.js.map +1 -1
  49. package/build/cjs/editor-v2/components/DynamicForm/Fields/OneOf/OneOf.d.ts +1 -1
  50. package/build/cjs/editor-v2/components/DynamicForm/Fields/OneOf/OneOf.js.map +1 -1
  51. package/build/cjs/editor-v2/components/DynamicForm/Fields/Select/Select.d.ts +1 -1
  52. package/build/cjs/editor-v2/components/DynamicForm/Fields/Select/Select.js.map +1 -1
  53. package/build/cjs/editor-v2/components/DynamicForm/utils.d.ts +1 -1
  54. package/build/cjs/editor-v2/components/DynamicForm/utils.js.map +1 -1
  55. package/build/cjs/editor-v2/components/Panels/Panels.css +0 -13
  56. package/build/cjs/editor-v2/components/Sidebar/Sidebar.css +3 -13
  57. package/build/cjs/editor-v2/components/Tabs/Tabs.css +7 -2
  58. package/build/cjs/editor-v2/containers/BigOverlay/BigOverlay.css +0 -13
  59. package/build/cjs/editor-v2/containers/BigOverlay/BigOverlay.js +1 -1
  60. package/build/cjs/editor-v2/containers/BigOverlay/BigOverlay.js.map +1 -1
  61. package/build/cjs/editor-v2/containers/BlockConfigForm/BlockConfigForm.css +20 -0
  62. package/build/cjs/editor-v2/containers/BlockConfigForm/BlockConfigForm.d.ts +5 -0
  63. package/build/cjs/editor-v2/containers/{BlockConfig/BlockConfig.js → BlockConfigForm/BlockConfigForm.js} +4 -4
  64. package/build/cjs/editor-v2/containers/BlockConfigForm/BlockConfigForm.js.map +1 -0
  65. package/build/cjs/editor-v2/containers/BlocksList/BlocksList.css +3 -16
  66. package/build/cjs/editor-v2/containers/BlocksList/BlocksList.js.map +1 -1
  67. package/build/cjs/editor-v2/containers/Editor/Editor.css +0 -13
  68. package/build/cjs/editor-v2/containers/Editor/Editor.js +3 -2
  69. package/build/cjs/editor-v2/containers/Editor/Editor.js.map +1 -1
  70. package/build/cjs/editor-v2/containers/GlobalConfig/GlobalConfig.css +2 -17
  71. package/build/cjs/editor-v2/containers/GlobalConfig/GlobalConfig.js.map +1 -1
  72. package/build/cjs/editor-v2/containers/MiddleScreen/MiddleScreen.css +1 -14
  73. package/build/cjs/editor-v2/containers/MiddleScreen/MiddleScreen.js +1 -1
  74. package/build/cjs/editor-v2/containers/MiddleScreen/MiddleScreen.js.map +1 -1
  75. package/build/cjs/editor-v2/containers/Overlay/Overlay.css +21 -17
  76. package/build/cjs/editor-v2/containers/Overlay/Overlay.js +2 -2
  77. package/build/cjs/editor-v2/containers/Overlay/Overlay.js.map +1 -1
  78. package/build/cjs/editor-v2/containers/Source/Source.css +0 -13
  79. package/build/cjs/editor-v2/containers/SourceCode/SourceCode.css +1 -14
  80. package/build/cjs/editor-v2/containers/Tree/DragContext.css +2 -15
  81. package/build/cjs/editor-v2/containers/Tree/Tree.css +0 -13
  82. package/build/cjs/editor-v2/containers/Tree/TreeContent.css +0 -16
  83. package/build/cjs/editor-v2/containers/Tree/TreeItem.css +1 -17
  84. package/build/cjs/editor-v2/containers/ViewSwitches/ViewSwitches.css +3 -13
  85. package/build/cjs/editor-v2/containers/ViewSwitches/ViewSwitches.js +1 -1
  86. package/build/cjs/editor-v2/containers/ViewSwitches/ViewSwitches.js.map +1 -1
  87. package/build/cjs/editor-v2/containers/index.d.ts +7 -0
  88. package/build/cjs/editor-v2/containers/index.js +19 -0
  89. package/build/cjs/editor-v2/containers/index.js.map +1 -0
  90. package/build/cjs/editor-v2/context/editorStore/MainEditorStoreProvider.js +1 -1
  91. package/build/cjs/editor-v2/context/editorStore/MainEditorStoreProvider.js.map +1 -1
  92. package/build/cjs/editor-v2/hooks/index.d.ts +2 -0
  93. package/build/cjs/editor-v2/hooks/index.js +8 -0
  94. package/build/cjs/editor-v2/hooks/index.js.map +1 -0
  95. package/build/cjs/editor-v2/hooks/useEditorTabs.js +2 -2
  96. package/build/cjs/editor-v2/hooks/useEditorTabs.js.map +1 -1
  97. package/build/cjs/editor-v2/hooks/useMainEditorInitialize.js +1 -1
  98. package/build/cjs/editor-v2/hooks/useMainEditorInitialize.js.map +1 -1
  99. package/build/cjs/editor-v2/hooks/usePostMessageEvents.d.ts +1 -1
  100. package/build/cjs/editor-v2/hooks/usePostMessageEvents.js +1 -1
  101. package/build/cjs/editor-v2/hooks/usePostMessageEvents.js.map +1 -1
  102. package/build/cjs/editor-v2/index.d.ts +5 -2
  103. package/build/cjs/editor-v2/index.js +5 -4
  104. package/build/cjs/editor-v2/index.js.map +1 -1
  105. package/build/cjs/editor-v2/store.d.ts +2 -2
  106. package/build/cjs/editor-v2/store.js +2 -2
  107. package/build/cjs/editor-v2/store.js.map +1 -1
  108. package/build/cjs/editor-v2/styles/root.css +3 -6
  109. package/build/cjs/editor-v2/utils/index.d.ts +2 -0
  110. package/build/cjs/editor-v2/utils/index.js +2 -0
  111. package/build/cjs/editor-v2/utils/index.js.map +1 -1
  112. package/build/cjs/hooks/usePCEditorInitializeEvents.js.map +1 -1
  113. package/build/cjs/hooks/usePCEditorStore.d.ts +1 -1
  114. package/build/cjs/hooks/usePostMessageAPI.d.ts +1 -1
  115. package/build/cjs/hooks/usePostMessageAPI.js.map +1 -1
  116. package/build/cjs/sub-blocks/BackgroundCard/dynamic-form.d.ts +1 -1
  117. package/build/cjs/sub-blocks/BackgroundCard/dynamic-form.js.map +1 -1
  118. package/build/cjs/utils/form-generator.d.ts +1 -1
  119. package/build/cjs/utils/form-generator.js.map +1 -1
  120. package/build/esm/blocks/CardLayout/index.d.ts +1 -1
  121. package/build/esm/blocks/CardLayout/index.js.map +1 -1
  122. package/build/esm/blocks/Header/dynamic-form.d.ts +1 -1
  123. package/build/esm/blocks/Header/dynamic-form.js.map +1 -1
  124. package/build/esm/blocks/Slider/dynamic-form.d.ts +1 -1
  125. package/build/esm/blocks/Slider/dynamic-form.js.map +1 -1
  126. package/build/esm/blocks/TestEditorBlock/form.d.ts +1 -1
  127. package/build/esm/blocks/TestEditorBlock/form.js.map +1 -1
  128. package/build/esm/common/postMessage.d.ts +4 -0
  129. package/build/esm/common/postMessage.js +25 -0
  130. package/build/esm/common/postMessage.js.map +1 -0
  131. package/build/esm/common/store.d.ts +40 -0
  132. package/build/esm/common/store.js +17 -0
  133. package/build/esm/common/store.js.map +1 -0
  134. package/build/esm/common/types/actions.d.ts +36 -0
  135. package/build/esm/common/types/actions.js +2 -0
  136. package/build/esm/common/types/actions.js.map +1 -0
  137. package/build/esm/common/types/common.d.ts +5 -0
  138. package/build/esm/common/types/common.js +2 -0
  139. package/build/esm/common/types/common.js.map +1 -0
  140. package/build/esm/common/types/forms.d.ts +97 -0
  141. package/build/esm/common/types/forms.js +2 -0
  142. package/build/esm/common/types/forms.js.map +1 -0
  143. package/build/esm/common/types/index.d.ts +4 -0
  144. package/build/esm/common/types/index.js +5 -0
  145. package/build/esm/common/types/index.js.map +1 -0
  146. package/build/esm/common/types/messages.d.ts +9 -0
  147. package/build/esm/common/types/messages.js +2 -0
  148. package/build/esm/common/types/messages.js.map +1 -0
  149. package/build/esm/common/utils.d.ts +25 -0
  150. package/build/esm/common/utils.js +17 -0
  151. package/build/esm/common/utils.js.map +1 -0
  152. package/build/esm/components/Image/dynamic-form.d.ts +1 -1
  153. package/build/esm/components/Image/dynamic-form.js.map +1 -1
  154. package/build/esm/constructor-items.d.ts +1 -1
  155. package/build/esm/constructor-items.js.map +1 -1
  156. package/build/esm/context/editorStoreContext/PCEditorStoreContext.d.ts +1 -1
  157. package/build/esm/context/editorStoreContext/PCEditorStoreContext.js +1 -1
  158. package/build/esm/context/editorStoreContext/PCEditorStoreContext.js.map +1 -1
  159. package/build/esm/context/editorStoreContext/PCEditorStoreProvider.js +1 -1
  160. package/build/esm/context/editorStoreContext/PCEditorStoreProvider.js.map +1 -1
  161. package/build/esm/editor-v2/components/DynamicForm/DynamicForm.d.ts +1 -1
  162. package/build/esm/editor-v2/components/DynamicForm/DynamicForm.js.map +1 -1
  163. package/build/esm/editor-v2/components/DynamicForm/FieldBase/FieldBase.css +0 -13
  164. package/build/esm/editor-v2/components/DynamicForm/Fields/Array/Array.d.ts +1 -1
  165. package/build/esm/editor-v2/components/DynamicForm/Fields/Array/Array.js.map +1 -1
  166. package/build/esm/editor-v2/components/DynamicForm/Fields/Object/Object.d.ts +1 -1
  167. package/build/esm/editor-v2/components/DynamicForm/Fields/Object/Object.js.map +1 -1
  168. package/build/esm/editor-v2/components/DynamicForm/Fields/OneOf/OneOf.d.ts +1 -1
  169. package/build/esm/editor-v2/components/DynamicForm/Fields/OneOf/OneOf.js.map +1 -1
  170. package/build/esm/editor-v2/components/DynamicForm/Fields/Select/Select.d.ts +1 -1
  171. package/build/esm/editor-v2/components/DynamicForm/Fields/Select/Select.js.map +1 -1
  172. package/build/esm/editor-v2/components/DynamicForm/utils.d.ts +1 -1
  173. package/build/esm/editor-v2/components/DynamicForm/utils.js.map +1 -1
  174. package/build/esm/editor-v2/components/Panels/Panels.css +0 -13
  175. package/build/esm/editor-v2/components/Sidebar/Sidebar.css +3 -13
  176. package/build/esm/editor-v2/components/Tabs/Tabs.css +7 -2
  177. package/build/esm/editor-v2/containers/BigOverlay/BigOverlay.css +0 -13
  178. package/build/esm/editor-v2/containers/BigOverlay/BigOverlay.js +1 -1
  179. package/build/esm/editor-v2/containers/BigOverlay/BigOverlay.js.map +1 -1
  180. package/build/esm/editor-v2/containers/BlockConfigForm/BlockConfigForm.css +20 -0
  181. package/build/esm/editor-v2/containers/BlockConfigForm/BlockConfigForm.d.ts +6 -0
  182. package/build/esm/editor-v2/containers/{BlockConfig/BlockConfig.js → BlockConfigForm/BlockConfigForm.js} +5 -5
  183. package/build/esm/editor-v2/containers/BlockConfigForm/BlockConfigForm.js.map +1 -0
  184. package/build/esm/editor-v2/containers/BlocksList/BlocksList.css +3 -16
  185. package/build/esm/editor-v2/containers/BlocksList/BlocksList.js.map +1 -1
  186. package/build/esm/editor-v2/containers/Editor/Editor.css +0 -13
  187. package/build/esm/editor-v2/containers/Editor/Editor.js +3 -2
  188. package/build/esm/editor-v2/containers/Editor/Editor.js.map +1 -1
  189. package/build/esm/editor-v2/containers/GlobalConfig/GlobalConfig.css +2 -17
  190. package/build/esm/editor-v2/containers/GlobalConfig/GlobalConfig.js.map +1 -1
  191. package/build/esm/editor-v2/containers/MiddleScreen/MiddleScreen.css +1 -14
  192. package/build/esm/editor-v2/containers/MiddleScreen/MiddleScreen.js +1 -1
  193. package/build/esm/editor-v2/containers/MiddleScreen/MiddleScreen.js.map +1 -1
  194. package/build/esm/editor-v2/containers/Overlay/Overlay.css +21 -17
  195. package/build/esm/editor-v2/containers/Overlay/Overlay.js +2 -2
  196. package/build/esm/editor-v2/containers/Overlay/Overlay.js.map +1 -1
  197. package/build/esm/editor-v2/containers/Source/Source.css +0 -13
  198. package/build/esm/editor-v2/containers/SourceCode/SourceCode.css +1 -14
  199. package/build/esm/editor-v2/containers/Tree/DragContext.css +2 -15
  200. package/build/esm/editor-v2/containers/Tree/Tree.css +0 -13
  201. package/build/esm/editor-v2/containers/Tree/TreeContent.css +0 -16
  202. package/build/esm/editor-v2/containers/Tree/TreeItem.css +1 -17
  203. package/build/esm/editor-v2/containers/ViewSwitches/ViewSwitches.css +3 -13
  204. package/build/esm/editor-v2/containers/ViewSwitches/ViewSwitches.js +1 -1
  205. package/build/esm/editor-v2/containers/ViewSwitches/ViewSwitches.js.map +1 -1
  206. package/build/esm/editor-v2/containers/index.d.ts +7 -0
  207. package/build/esm/editor-v2/containers/index.js +8 -0
  208. package/build/esm/editor-v2/containers/index.js.map +1 -0
  209. package/build/esm/editor-v2/context/editorStore/MainEditorStoreProvider.js +1 -1
  210. package/build/esm/editor-v2/context/editorStore/MainEditorStoreProvider.js.map +1 -1
  211. package/build/esm/editor-v2/hooks/index.d.ts +2 -0
  212. package/build/esm/editor-v2/hooks/index.js +3 -0
  213. package/build/esm/editor-v2/hooks/index.js.map +1 -0
  214. package/build/esm/editor-v2/hooks/useEditorTabs.js +2 -2
  215. package/build/esm/editor-v2/hooks/useEditorTabs.js.map +1 -1
  216. package/build/esm/editor-v2/hooks/useMainEditorInitialize.js +1 -1
  217. package/build/esm/editor-v2/hooks/useMainEditorInitialize.js.map +1 -1
  218. package/build/esm/editor-v2/hooks/usePostMessageEvents.d.ts +1 -1
  219. package/build/esm/editor-v2/hooks/usePostMessageEvents.js +1 -1
  220. package/build/esm/editor-v2/hooks/usePostMessageEvents.js.map +1 -1
  221. package/build/esm/editor-v2/index.d.ts +5 -2
  222. package/build/esm/editor-v2/index.js +5 -2
  223. package/build/esm/editor-v2/index.js.map +1 -1
  224. package/build/esm/editor-v2/store.d.ts +2 -2
  225. package/build/esm/editor-v2/store.js +2 -2
  226. package/build/esm/editor-v2/store.js.map +1 -1
  227. package/build/esm/editor-v2/styles/root.css +3 -6
  228. package/build/esm/editor-v2/utils/index.d.ts +2 -0
  229. package/build/esm/editor-v2/utils/index.js +2 -0
  230. package/build/esm/editor-v2/utils/index.js.map +1 -1
  231. package/build/esm/hooks/usePCEditorInitializeEvents.js.map +1 -1
  232. package/build/esm/hooks/usePCEditorStore.d.ts +1 -1
  233. package/build/esm/hooks/usePostMessageAPI.d.ts +1 -1
  234. package/build/esm/hooks/usePostMessageAPI.js.map +1 -1
  235. package/build/esm/sub-blocks/BackgroundCard/dynamic-form.d.ts +1 -1
  236. package/build/esm/sub-blocks/BackgroundCard/dynamic-form.js.map +1 -1
  237. package/build/esm/utils/form-generator.d.ts +1 -1
  238. package/build/esm/utils/form-generator.js.map +1 -1
  239. package/package.json +1 -2
  240. package/widget/index.js +1 -1
  241. package/build/cjs/editor-v2/components/StoreViewer/StoreViewer.css +0 -29
  242. package/build/cjs/editor-v2/components/StoreViewer/StoreViewer.d.ts +0 -6
  243. package/build/cjs/editor-v2/components/StoreViewer/StoreViewer.js +0 -17
  244. package/build/cjs/editor-v2/components/StoreViewer/StoreViewer.js.map +0 -1
  245. package/build/cjs/editor-v2/containers/BlockConfig/BlockConfig.css +0 -33
  246. package/build/cjs/editor-v2/containers/BlockConfig/BlockConfig.d.ts +0 -5
  247. package/build/cjs/editor-v2/containers/BlockConfig/BlockConfig.js.map +0 -1
  248. package/build/esm/editor-v2/components/StoreViewer/StoreViewer.css +0 -29
  249. package/build/esm/editor-v2/components/StoreViewer/StoreViewer.d.ts +0 -7
  250. package/build/esm/editor-v2/components/StoreViewer/StoreViewer.js +0 -15
  251. package/build/esm/editor-v2/components/StoreViewer/StoreViewer.js.map +0 -1
  252. package/build/esm/editor-v2/containers/BlockConfig/BlockConfig.css +0 -33
  253. package/build/esm/editor-v2/containers/BlockConfig/BlockConfig.d.ts +0 -6
  254. package/build/esm/editor-v2/containers/BlockConfig/BlockConfig.js.map +0 -1
@@ -1,16 +1,3 @@
1
- .g-root {
2
- --g-color-base-brand: var(--g-color-private-black-550-solid);
3
- --g-color-base-brand-hover: var(--g-color-private-black-600-solid);
4
- --g-color-base-selection: var(--g-color-private-black-200);
5
- --g-color-base-selection-hover: var(--g-color-private-black-300);
6
- --g-color-base-brand: var(--g-color-text-primary);
7
- --g-color-base-brand-hover: var(--g-color-text-complementary);
8
- --g-color-text-brand-contrast: var(--g-color-text-light-primary);
9
- --g-color-line-brand: var(--g-color-text-primary);
10
- --g-color-text-brand: var(--g-color-private-brand-700-solid);
11
- --g-color-text-brand-heavy: var(--g-color-private-black-700-solid);
12
- }
13
-
14
1
  .pceditor-tree-item {
15
2
  padding: 8px;
16
3
  margin-bottom: 8px;
@@ -47,7 +34,7 @@
47
34
  display: none;
48
35
  }
49
36
  .pceditor-tree-item__type {
50
- color: var(--g-color-text-dark-secondary);
37
+ color: var(--g-color-text-secondary);
51
38
  }
52
39
  .pceditor-tree-item__title {
53
40
  white-space: nowrap;
@@ -60,7 +47,4 @@
60
47
  margin-bottom: 0;
61
48
  border-radius: 4px;
62
49
  transition: background-color 0.2s;
63
- }
64
- .pceditor-tree-item__children-drop-zone:hover {
65
- background-color: var(--g-color-text-light-secondary);
66
50
  }
@@ -1,16 +1,3 @@
1
- .g-root {
2
- --g-color-base-brand: var(--g-color-private-black-550-solid);
3
- --g-color-base-brand-hover: var(--g-color-private-black-600-solid);
4
- --g-color-base-selection: var(--g-color-private-black-200);
5
- --g-color-base-selection-hover: var(--g-color-private-black-300);
6
- --g-color-base-brand: var(--g-color-text-primary);
7
- --g-color-base-brand-hover: var(--g-color-text-complementary);
8
- --g-color-text-brand-contrast: var(--g-color-text-light-primary);
9
- --g-color-line-brand: var(--g-color-text-primary);
10
- --g-color-text-brand: var(--g-color-private-brand-700-solid);
11
- --g-color-text-brand-heavy: var(--g-color-private-black-700-solid);
12
- }
13
-
14
1
  .pceditor-view-switches {
15
2
  padding: 12px;
16
3
  display: inline-flex;
@@ -20,4 +7,7 @@
20
7
  .pceditor-view-switches__zoom {
21
8
  display: flex;
22
9
  gap: 4px;
10
+ }
11
+ .pceditor-view-switches__zoom-select {
12
+ min-width: 80px;
23
13
  }
@@ -48,7 +48,7 @@ const ViewSwitches = () => {
48
48
  setZoom(newZoom);
49
49
  }
50
50
  }, [setZoom]);
51
- return ((0, jsx_runtime_1.jsxs)("div", { className: b(), role: "toolbar", "aria-label": "View controls", children: [(0, jsx_runtime_1.jsx)(uikit_1.SegmentedRadioGroup, { value: deviceWidth, onUpdate: setDeviceWidth, "aria-label": "Device viewport selector", children: DEVICE_OPTIONS.map(({ value, label, ariaLabel }) => ((0, jsx_runtime_1.jsx)(uikit_1.SegmentedRadioGroup.Option, { value: value, "aria-label": ariaLabel, children: label }, value))) }), (0, jsx_runtime_1.jsxs)("div", { className: b('zoom'), role: "group", "aria-label": "Zoom controls", children: [(0, jsx_runtime_1.jsx)(uikit_1.Button, { view: "flat", onClick: decreaseZoom, "aria-label": "Decrease zoom", disabled: zoom <= Math.min(...constants_1.ZOOM_STEPS), children: (0, jsx_runtime_1.jsx)(uikit_1.Icon, { data: icons_1.Minus }) }), (0, jsx_runtime_1.jsx)(uikit_1.Select, { multiple: false, value: currentZoomValue, options: zoomOptions, onUpdate: handleZoomUpdate, "aria-label": "Select zoom level", width: "max" }), (0, jsx_runtime_1.jsx)(uikit_1.Button, { view: "flat", onClick: increaseZoom, "aria-label": "Increase zoom", disabled: zoom >= Math.max(...constants_1.ZOOM_STEPS), children: (0, jsx_runtime_1.jsx)(uikit_1.Icon, { data: icons_1.Plus }) })] })] }));
51
+ return ((0, jsx_runtime_1.jsxs)("div", { className: b(), role: "toolbar", "aria-label": "View controls", children: [(0, jsx_runtime_1.jsx)(uikit_1.SegmentedRadioGroup, { value: deviceWidth, onUpdate: setDeviceWidth, "aria-label": "Device viewport selector", children: DEVICE_OPTIONS.map(({ value, label, ariaLabel }) => ((0, jsx_runtime_1.jsx)(uikit_1.SegmentedRadioGroup.Option, { value: value, "aria-label": ariaLabel, children: label }, value))) }), (0, jsx_runtime_1.jsxs)("div", { className: b('zoom'), role: "group", "aria-label": "Zoom controls", children: [(0, jsx_runtime_1.jsx)(uikit_1.Button, { view: "flat", onClick: decreaseZoom, "aria-label": "Decrease zoom", disabled: zoom <= Math.min(...constants_1.ZOOM_STEPS), children: (0, jsx_runtime_1.jsx)(uikit_1.Icon, { data: icons_1.Minus }) }), (0, jsx_runtime_1.jsx)(uikit_1.Select, { className: b('zoom-select'), multiple: false, value: currentZoomValue, options: zoomOptions, onUpdate: handleZoomUpdate, "aria-label": "Select zoom level", width: "max" }), (0, jsx_runtime_1.jsx)(uikit_1.Button, { view: "flat", onClick: increaseZoom, "aria-label": "Increase zoom", disabled: zoom >= Math.max(...constants_1.ZOOM_STEPS), children: (0, jsx_runtime_1.jsx)(uikit_1.Icon, { data: icons_1.Plus }) })] })] }));
52
52
  };
53
53
  exports.default = React.memo(ViewSwitches);
54
54
  //# sourceMappingURL=ViewSwitches.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ViewSwitches.js","sourceRoot":"../../../../../src","sources":["editor-v2/containers/ViewSwitches/ViewSwitches.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport {Display, Minus, Plus, Smartphone} from '@gravity-ui/icons';\nimport {Button, Icon, SegmentedRadioGroup, Select} from '@gravity-ui/uikit';\n\nimport {ZOOM_STEPS} from '../../constants';\nimport {useMainEditorStore} from '../../hooks/useMainEditorStore';\nimport {editorCn} from '../../utils/cn';\n\nimport './ViewSwitches.scss';\n\nconst b = editorCn('view-switches');\n\n/**\n * Device option type definition\n */\ninterface DeviceOption {\n /** React node to display as the option label */\n label: React.ReactNode;\n /** Device width value (e.g., '100%', '768px') */\n value: string;\n /** Descriptive name for accessibility */\n ariaLabel: string;\n}\n\n/**\n * Available device viewport options\n * - Desktop: 100% width\n * - Tablet: 768px width\n * - Mobile: 576px width\n */\nconst DEVICE_OPTIONS: DeviceOption[] = [\n {\n label: <Icon data={Display} />,\n value: '100%',\n ariaLabel: 'Desktop view',\n },\n {\n label: <Icon data={Smartphone} />,\n value: '768px',\n ariaLabel: 'Tablet view',\n },\n {\n label: <Icon width={14} data={Smartphone} />,\n value: '576px',\n ariaLabel: 'Mobile view',\n },\n];\n\nconst ViewSwitches: React.FC = () => {\n const {zoom, setZoom, decreaseZoom, increaseZoom, deviceWidth, setDeviceWidth} =\n useMainEditorStore();\n\n // Memoize zoom options to prevent unnecessary recalculations\n const zoomOptions = React.useMemo(\n () =>\n ZOOM_STEPS.map((step) => ({\n value: String(step),\n content: `${step}%`,\n })),\n [],\n );\n\n // Memoize current zoom value for Select component\n const currentZoomValue = React.useMemo(() => [String(zoom)], [zoom]);\n\n // Create stable callback for zoom updates\n const handleZoomUpdate = React.useCallback(\n (value: string | string[]) => {\n const newZoom = Number(Array.isArray(value) ? value[0] : value);\n if (!isNaN(newZoom) && ZOOM_STEPS.includes(newZoom)) {\n setZoom(newZoom);\n }\n },\n [setZoom],\n );\n\n return (\n <div className={b()} role=\"toolbar\" aria-label=\"View controls\">\n <SegmentedRadioGroup\n value={deviceWidth}\n onUpdate={setDeviceWidth}\n aria-label=\"Device viewport selector\"\n >\n {DEVICE_OPTIONS.map(({value, label, ariaLabel}) => (\n <SegmentedRadioGroup.Option key={value} value={value} aria-label={ariaLabel}>\n {label}\n </SegmentedRadioGroup.Option>\n ))}\n </SegmentedRadioGroup>\n\n <div className={b('zoom')} role=\"group\" aria-label=\"Zoom controls\">\n <Button\n view=\"flat\"\n onClick={decreaseZoom}\n aria-label=\"Decrease zoom\"\n disabled={zoom <= Math.min(...ZOOM_STEPS)}\n >\n <Icon data={Minus} />\n </Button>\n\n <Select\n multiple={false}\n value={currentZoomValue}\n options={zoomOptions}\n onUpdate={handleZoomUpdate}\n aria-label=\"Select zoom level\"\n width=\"max\"\n />\n\n <Button\n view=\"flat\"\n onClick={increaseZoom}\n aria-label=\"Increase zoom\"\n disabled={zoom >= Math.max(...ZOOM_STEPS)}\n >\n <Icon data={Plus} />\n </Button>\n </div>\n </div>\n );\n};\n\nexport default React.memo(ViewSwitches);\n"]}
1
+ {"version":3,"file":"ViewSwitches.js","sourceRoot":"../../../../../src","sources":["editor-v2/containers/ViewSwitches/ViewSwitches.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport {Display, Minus, Plus, Smartphone} from '@gravity-ui/icons';\nimport {Button, Icon, SegmentedRadioGroup, Select} from '@gravity-ui/uikit';\n\nimport {ZOOM_STEPS} from '../../constants';\nimport {useMainEditorStore} from '../../hooks/useMainEditorStore';\nimport {editorCn} from '../../utils/cn';\n\nimport './ViewSwitches.scss';\n\nconst b = editorCn('view-switches');\n\n/**\n * Device option type definition\n */\ninterface DeviceOption {\n /** React node to display as the option label */\n label: React.ReactNode;\n /** Device width value (e.g., '100%', '768px') */\n value: string;\n /** Descriptive name for accessibility */\n ariaLabel: string;\n}\n\n/**\n * Available device viewport options\n * - Desktop: 100% width\n * - Tablet: 768px width\n * - Mobile: 576px width\n */\nconst DEVICE_OPTIONS: DeviceOption[] = [\n {\n label: <Icon data={Display} />,\n value: '100%',\n ariaLabel: 'Desktop view',\n },\n {\n label: <Icon data={Smartphone} />,\n value: '768px',\n ariaLabel: 'Tablet view',\n },\n {\n label: <Icon width={14} data={Smartphone} />,\n value: '576px',\n ariaLabel: 'Mobile view',\n },\n];\n\nconst ViewSwitches: React.FC = () => {\n const {zoom, setZoom, decreaseZoom, increaseZoom, deviceWidth, setDeviceWidth} =\n useMainEditorStore();\n\n // Memoize zoom options to prevent unnecessary recalculations\n const zoomOptions = React.useMemo(\n () =>\n ZOOM_STEPS.map((step) => ({\n value: String(step),\n content: `${step}%`,\n })),\n [],\n );\n\n // Memoize current zoom value for Select component\n const currentZoomValue = React.useMemo(() => [String(zoom)], [zoom]);\n\n // Create stable callback for zoom updates\n const handleZoomUpdate = React.useCallback(\n (value: string | string[]) => {\n const newZoom = Number(Array.isArray(value) ? value[0] : value);\n if (!isNaN(newZoom) && ZOOM_STEPS.includes(newZoom)) {\n setZoom(newZoom);\n }\n },\n [setZoom],\n );\n\n return (\n <div className={b()} role=\"toolbar\" aria-label=\"View controls\">\n <SegmentedRadioGroup\n value={deviceWidth}\n onUpdate={setDeviceWidth}\n aria-label=\"Device viewport selector\"\n >\n {DEVICE_OPTIONS.map(({value, label, ariaLabel}) => (\n <SegmentedRadioGroup.Option key={value} value={value} aria-label={ariaLabel}>\n {label}\n </SegmentedRadioGroup.Option>\n ))}\n </SegmentedRadioGroup>\n\n <div className={b('zoom')} role=\"group\" aria-label=\"Zoom controls\">\n <Button\n view=\"flat\"\n onClick={decreaseZoom}\n aria-label=\"Decrease zoom\"\n disabled={zoom <= Math.min(...ZOOM_STEPS)}\n >\n <Icon data={Minus} />\n </Button>\n\n <Select\n className={b('zoom-select')}\n multiple={false}\n value={currentZoomValue}\n options={zoomOptions}\n onUpdate={handleZoomUpdate}\n aria-label=\"Select zoom level\"\n width=\"max\"\n />\n\n <Button\n view=\"flat\"\n onClick={increaseZoom}\n aria-label=\"Increase zoom\"\n disabled={zoom >= Math.max(...ZOOM_STEPS)}\n >\n <Icon data={Plus} />\n </Button>\n </div>\n </div>\n );\n};\n\nexport default React.memo(ViewSwitches);\n"]}
@@ -0,0 +1,7 @@
1
+ export { Editor } from "./Editor/Editor.js";
2
+ export { default as BlockConfigForm } from "./BlockConfigForm/BlockConfigForm.js";
3
+ export { default as BlocksList } from "./BlocksList/BlocksList.js";
4
+ export { default as Source } from "./Source/Source.js";
5
+ export { default as SourceCode } from "./SourceCode/SourceCode.js";
6
+ export { default as Tree } from "./Tree/Tree.js";
7
+ export { default as ViewSwitches } from "./ViewSwitches/ViewSwitches.js";
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ViewSwitches = exports.Tree = exports.SourceCode = exports.Source = exports.BlocksList = exports.BlockConfigForm = exports.Editor = void 0;
4
+ const tslib_1 = require("tslib");
5
+ var Editor_1 = require("./Editor/Editor.js");
6
+ Object.defineProperty(exports, "Editor", { enumerable: true, get: function () { return Editor_1.Editor; } });
7
+ var BlockConfigForm_1 = require("./BlockConfigForm/BlockConfigForm.js");
8
+ Object.defineProperty(exports, "BlockConfigForm", { enumerable: true, get: function () { return tslib_1.__importDefault(BlockConfigForm_1).default; } });
9
+ var BlocksList_1 = require("./BlocksList/BlocksList.js");
10
+ Object.defineProperty(exports, "BlocksList", { enumerable: true, get: function () { return tslib_1.__importDefault(BlocksList_1).default; } });
11
+ var Source_1 = require("./Source/Source.js");
12
+ Object.defineProperty(exports, "Source", { enumerable: true, get: function () { return tslib_1.__importDefault(Source_1).default; } });
13
+ var SourceCode_1 = require("./SourceCode/SourceCode.js");
14
+ Object.defineProperty(exports, "SourceCode", { enumerable: true, get: function () { return tslib_1.__importDefault(SourceCode_1).default; } });
15
+ var Tree_1 = require("./Tree/Tree.js");
16
+ Object.defineProperty(exports, "Tree", { enumerable: true, get: function () { return tslib_1.__importDefault(Tree_1).default; } });
17
+ var ViewSwitches_1 = require("./ViewSwitches/ViewSwitches.js");
18
+ Object.defineProperty(exports, "ViewSwitches", { enumerable: true, get: function () { return tslib_1.__importDefault(ViewSwitches_1).default; } });
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["editor-v2/containers/index.ts"],"names":[],"mappings":";;;;AAAA,6CAAuC;AAA/B,gGAAA,MAAM,OAAA;AACd,wEAA6E;AAArE,2IAAA,OAAO,OAAmB;AAClC,yDAA8D;AAAtD,iIAAA,OAAO,OAAc;AAC7B,6CAAkD;AAA1C,yHAAA,OAAO,OAAU;AACzB,yDAA8D;AAAtD,iIAAA,OAAO,OAAc;AAC7B,uCAA4C;AAApC,qHAAA,OAAO,OAAQ;AACvB,+DAAoE;AAA5D,qIAAA,OAAO,OAAgB","sourcesContent":["export {Editor} from './Editor/Editor';\nexport {default as BlockConfigForm} from './BlockConfigForm/BlockConfigForm';\nexport {default as BlocksList} from './BlocksList/BlocksList';\nexport {default as Source} from './Source/Source';\nexport {default as SourceCode} from './SourceCode/SourceCode';\nexport {default as Tree} from './Tree/Tree';\nexport {default as ViewSwitches} from './ViewSwitches/ViewSwitches';\n"]}
@@ -4,7 +4,7 @@ exports.MainEditorStoreProvider = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const jsx_runtime_1 = require("react/jsx-runtime");
6
6
  const React = tslib_1.__importStar(require("react"));
7
- const utils_1 = require("../../../../common/utils.js");
7
+ const utils_1 = require("../../../common/utils.js");
8
8
  const store_1 = require("../../store.js");
9
9
  const iframeContext_1 = require("../iframeContext/index.js");
10
10
  const MainEditorStoreContext_1 = require("./MainEditorStoreContext.js");
@@ -1 +1 @@
1
- {"version":3,"file":"MainEditorStoreProvider.js","sourceRoot":"../../../../../src","sources":["editor-v2/context/editorStore/MainEditorStoreProvider.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAK/B,uDAAkD;AAClD,0CAA2D;AAC3D,6DAA+C;AAE/C,wEAAgE;AAIzD,MAAM,uBAAuB,GAAG,CAAC,EAAC,QAAQ,EAA0B,EAAE,EAAE;IAC3E,MAAM,EAAC,aAAa,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,6BAAa,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAyB,CAAC;IAEvD,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CACrC,CAAC,IAAiB,EAAE,EAAE;QAClB,MAAM,OAAO,GAAqB;YAC9B,KAAK,EAAE,IAAI;SACd,CAAC;QAEF,IAAI,aAAa,IAAI,aAAa,CAAC,aAAa,EAAE,CAAC;YAC/C,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC1D,CAAC;IACL,CAAC,EACD,CAAC,aAAa,CAAC,CAClB,CAAC;IAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACpB,QAAQ,CAAC,OAAO,GAAG,IAAA,yBAAiB,GAAE,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YAClC,eAAe,CAAC,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACP,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,OAAO,CACH,uBAAC,+CAAsB,CAAC,QAAQ,IAC5B,KAAK,EAAE;YACH,KAAK,EAAE,QAAQ,CAAC,OAAO;SAC1B,YAEA,QAAQ,GACqB,CACrC,CAAC;AACN,CAAC,CAAC;AApCW,QAAA,uBAAuB,2BAoClC","sourcesContent":["import * as React from 'react';\nimport {StoreApi} from 'zustand';\n\nimport {EditorState} from '../../../../common/store';\nimport {StoreSyncMessage} from '../../../../common/types';\nimport {removeFn} from '../../../../common/utils';\nimport {EditorStore, createEditorStore} from '../../store';\nimport {IframeContext} from '../iframeContext';\n\nimport {MainEditorStoreContext} from './MainEditorStoreContext';\n\ninterface MainEditorProviderProps extends React.PropsWithChildren {}\n\nexport const MainEditorStoreProvider = ({children}: MainEditorProviderProps) => {\n const {iframeElement} = React.useContext(IframeContext);\n const storeRef = React.useRef<StoreApi<EditorStore>>();\n\n const sendPostMessage = React.useCallback(\n (data: EditorState) => {\n const message: StoreSyncMessage = {\n state: data,\n };\n\n if (iframeElement && iframeElement.contentWindow) {\n iframeElement.contentWindow.postMessage(message, '*');\n }\n },\n [iframeElement],\n );\n\n if (!storeRef.current) {\n storeRef.current = createEditorStore();\n }\n\n React.useEffect(() => {\n storeRef.current?.subscribe((state) => {\n sendPostMessage(removeFn(state));\n });\n }, [sendPostMessage]);\n\n return (\n <MainEditorStoreContext.Provider\n value={{\n state: storeRef.current,\n }}\n >\n {children}\n </MainEditorStoreContext.Provider>\n );\n};\n"]}
1
+ {"version":3,"file":"MainEditorStoreProvider.js","sourceRoot":"../../../../../src","sources":["editor-v2/context/editorStore/MainEditorStoreProvider.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAK/B,oDAA+C;AAC/C,0CAA2D;AAC3D,6DAA+C;AAE/C,wEAAgE;AAIzD,MAAM,uBAAuB,GAAG,CAAC,EAAC,QAAQ,EAA0B,EAAE,EAAE;IAC3E,MAAM,EAAC,aAAa,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,6BAAa,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAyB,CAAC;IAEvD,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CACrC,CAAC,IAAiB,EAAE,EAAE;QAClB,MAAM,OAAO,GAAqB;YAC9B,KAAK,EAAE,IAAI;SACd,CAAC;QAEF,IAAI,aAAa,IAAI,aAAa,CAAC,aAAa,EAAE,CAAC;YAC/C,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC1D,CAAC;IACL,CAAC,EACD,CAAC,aAAa,CAAC,CAClB,CAAC;IAEF,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACpB,QAAQ,CAAC,OAAO,GAAG,IAAA,yBAAiB,GAAE,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YAClC,eAAe,CAAC,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACP,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,OAAO,CACH,uBAAC,+CAAsB,CAAC,QAAQ,IAC5B,KAAK,EAAE;YACH,KAAK,EAAE,QAAQ,CAAC,OAAO;SAC1B,YAEA,QAAQ,GACqB,CACrC,CAAC;AACN,CAAC,CAAC;AApCW,QAAA,uBAAuB,2BAoClC","sourcesContent":["import * as React from 'react';\nimport {StoreApi} from 'zustand';\n\nimport {EditorState} from '../../../common/store';\nimport {StoreSyncMessage} from '../../../common/types';\nimport {removeFn} from '../../../common/utils';\nimport {EditorStore, createEditorStore} from '../../store';\nimport {IframeContext} from '../iframeContext';\n\nimport {MainEditorStoreContext} from './MainEditorStoreContext';\n\ninterface MainEditorProviderProps extends React.PropsWithChildren {}\n\nexport const MainEditorStoreProvider = ({children}: MainEditorProviderProps) => {\n const {iframeElement} = React.useContext(IframeContext);\n const storeRef = React.useRef<StoreApi<EditorStore>>();\n\n const sendPostMessage = React.useCallback(\n (data: EditorState) => {\n const message: StoreSyncMessage = {\n state: data,\n };\n\n if (iframeElement && iframeElement.contentWindow) {\n iframeElement.contentWindow.postMessage(message, '*');\n }\n },\n [iframeElement],\n );\n\n if (!storeRef.current) {\n storeRef.current = createEditorStore();\n }\n\n React.useEffect(() => {\n storeRef.current?.subscribe((state) => {\n sendPostMessage(removeFn(state));\n });\n }, [sendPostMessage]);\n\n return (\n <MainEditorStoreContext.Provider\n value={{\n state: storeRef.current,\n }}\n >\n {children}\n </MainEditorStoreContext.Provider>\n );\n};\n"]}
@@ -0,0 +1,2 @@
1
+ export { usePostMessageEvents } from "./usePostMessageEvents.js";
2
+ export { useMainEditorStore } from "./useMainEditorStore.js";
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useMainEditorStore = exports.usePostMessageEvents = void 0;
4
+ var usePostMessageEvents_1 = require("./usePostMessageEvents.js");
5
+ Object.defineProperty(exports, "usePostMessageEvents", { enumerable: true, get: function () { return usePostMessageEvents_1.usePostMessageEvents; } });
6
+ var useMainEditorStore_1 = require("./useMainEditorStore.js");
7
+ Object.defineProperty(exports, "useMainEditorStore", { enumerable: true, get: function () { return useMainEditorStore_1.useMainEditorStore; } });
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["editor-v2/hooks/index.ts"],"names":[],"mappings":";;;AAAA,kEAA4D;AAApD,4HAAA,oBAAoB,OAAA;AAC5B,8DAAwD;AAAhD,wHAAA,kBAAkB,OAAA","sourcesContent":["export {usePostMessageEvents} from './usePostMessageEvents';\nexport {useMainEditorStore} from './useMainEditorStore';\n"]}
@@ -5,7 +5,7 @@ const tslib_1 = require("tslib");
5
5
  const jsx_runtime_1 = require("react/jsx-runtime");
6
6
  const React = tslib_1.__importStar(require("react"));
7
7
  const Tabs_1 = tslib_1.__importDefault(require("../components/Tabs/Tabs.js"));
8
- const BlockConfig_1 = tslib_1.__importDefault(require("../containers/BlockConfig/BlockConfig.js"));
8
+ const BlockConfigForm_1 = tslib_1.__importDefault(require("../containers/BlockConfigForm/BlockConfigForm.js"));
9
9
  const BlocksList_1 = tslib_1.__importDefault(require("../containers/BlocksList/BlocksList.js"));
10
10
  const GlobalConfig_1 = tslib_1.__importDefault(require("../containers/GlobalConfig/GlobalConfig.js"));
11
11
  const SourceCode_1 = tslib_1.__importDefault(require("../containers/SourceCode/SourceCode.js"));
@@ -54,7 +54,7 @@ const useEditorTabs = ({ leftTabs, rightTabs, }) => {
54
54
  {
55
55
  id: 'block-config',
56
56
  title: 'INPUTS',
57
- component: BlockConfig_1.default,
57
+ component: BlockConfigForm_1.default,
58
58
  },
59
59
  {
60
60
  id: 'source-code-yaml',
@@ -1 +1 @@
1
- {"version":3,"file":"useEditorTabs.js","sourceRoot":"../../../../src","sources":["editor-v2/hooks/useEditorTabs.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,8EAA4D;AAC5D,mGAAgE;AAChE,gGAA6D;AAC7D,sGAAmE;AACnE,gGAA6D;AAC7D,+EAAsC;AAE/B,MAAM,aAAa,GAAG,CAAC,EAC1B,QAAQ,EACR,SAAS,GAIZ,EAAE,EAAE;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CACtB,GAAG,EAAE,CAAC,CAAC;QACH,IAAI,EAAE;YACF;gBACI,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,GAAG,EAAE,CAAC,CACb,uBAAC,cAAI,IACD,KAAK,EAAE;wBACH;4BACI,EAAE,EAAE,aAAa;4BACjB,KAAK,EAAE,QAAQ;4BACf,SAAS,EAAE,oBAAU;yBACxB;wBACD;4BACI,EAAE,EAAE,QAAQ;4BACZ,KAAK,EAAE,QAAQ;4BACf,SAAS,EAAE,cAAI;yBAClB;wBACD;4BACI,EAAE,EAAE,kBAAkB;4BACtB,KAAK,EAAE,MAAM;4BACb,SAAS,EAAE,GAAG,EAAE,CAAC,uBAAC,oBAAU,IAAC,MAAM,EAAC,MAAM,GAAG;yBAChD;wBACD;4BACI,EAAE,EAAE,kBAAkB;4BACtB,KAAK,EAAE,MAAM;4BACb,SAAS,EAAE,GAAG,EAAE,CAAC,uBAAC,oBAAU,IAAC,MAAM,EAAC,MAAM,GAAG;yBAChD;qBACJ,GACH,CACL;aACJ;YACD;gBACI,EAAE,EAAE,YAAY;gBAChB,KAAK,EAAE,YAAY;gBACnB,SAAS,EAAE,sBAAY;aAC1B;YACD,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;SACtB;QACD,KAAK,EAAE;YACH;gBACI,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,GAAG,EAAE,CAAC,CACb,uBAAC,cAAI,IACD,KAAK,EAAE;wBACH;4BACI,EAAE,EAAE,cAAc;4BAClB,KAAK,EAAE,QAAQ;4BACf,SAAS,EAAE,qBAAW;yBACzB;wBACD;4BACI,EAAE,EAAE,kBAAkB;4BACtB,KAAK,EAAE,MAAM;4BACb,SAAS,EAAE,GAAG,EAAE,CAAC,uBAAC,oBAAU,IAAC,MAAM,EAAC,MAAM,GAAG;yBAChD;wBACD;4BACI,EAAE,EAAE,kBAAkB;4BACtB,KAAK,EAAE,MAAM;4BACb,SAAS,EAAE,GAAG,EAAE,CAAC,uBAAC,oBAAU,IAAC,MAAM,EAAC,MAAM,GAAG;yBAChD;qBACJ,GACH,CACL;aACJ;YACD,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;SACvB;KACJ,CAAC,EACF,CAAC,QAAQ,EAAE,SAAS,CAAC,CACxB,CAAC;IAEF,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAhFW,QAAA,aAAa,iBAgFxB","sourcesContent":["import * as React from 'react';\n\nimport Tabs, {TabsItemProps} from '../components/Tabs/Tabs';\nimport BlockConfig from '../containers/BlockConfig/BlockConfig';\nimport BlocksList from '../containers/BlocksList/BlocksList';\nimport GlobalConfig from '../containers/GlobalConfig/GlobalConfig';\nimport SourceCode from '../containers/SourceCode/SourceCode';\nimport Tree from '../containers/Tree';\n\nexport const useEditorTabs = ({\n leftTabs,\n rightTabs,\n}: {\n leftTabs?: TabsItemProps[];\n rightTabs?: TabsItemProps[];\n}) => {\n const tabs = React.useMemo(\n () => ({\n left: [\n {\n id: 'page',\n title: 'PAGE',\n component: () => (\n <Tabs\n items={[\n {\n id: 'blocks-list',\n title: 'BLOCKS',\n component: BlocksList,\n },\n {\n id: 'layers',\n title: 'LAYERS',\n component: Tree,\n },\n {\n id: 'source-code-yaml',\n title: 'YAML',\n component: () => <SourceCode format=\"yaml\" />,\n },\n {\n id: 'source-code-json',\n title: 'JSON',\n component: () => <SourceCode format=\"json\" />,\n },\n ]}\n />\n ),\n },\n {\n id: 'navigation',\n title: 'NAVIGATION',\n component: GlobalConfig,\n },\n ...(leftTabs || []),\n ],\n right: [\n {\n id: 'edit',\n title: 'EDIT',\n component: () => (\n <Tabs\n items={[\n {\n id: 'block-config',\n title: 'INPUTS',\n component: BlockConfig,\n },\n {\n id: 'source-code-yaml',\n title: 'YAML',\n component: () => <SourceCode format=\"yaml\" />,\n },\n {\n id: 'source-code-json',\n title: 'JSON',\n component: () => <SourceCode format=\"json\" />,\n },\n ]}\n />\n ),\n },\n ...(rightTabs || []),\n ],\n }),\n [leftTabs, rightTabs],\n );\n\n return tabs;\n};\n"]}
1
+ {"version":3,"file":"useEditorTabs.js","sourceRoot":"../../../../src","sources":["editor-v2/hooks/useEditorTabs.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,8EAA4D;AAC5D,+GAA4E;AAC5E,gGAA6D;AAC7D,sGAAmE;AACnE,gGAA6D;AAC7D,+EAAsC;AAE/B,MAAM,aAAa,GAAG,CAAC,EAC1B,QAAQ,EACR,SAAS,GAIZ,EAAE,EAAE;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CACtB,GAAG,EAAE,CAAC,CAAC;QACH,IAAI,EAAE;YACF;gBACI,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,GAAG,EAAE,CAAC,CACb,uBAAC,cAAI,IACD,KAAK,EAAE;wBACH;4BACI,EAAE,EAAE,aAAa;4BACjB,KAAK,EAAE,QAAQ;4BACf,SAAS,EAAE,oBAAU;yBACxB;wBACD;4BACI,EAAE,EAAE,QAAQ;4BACZ,KAAK,EAAE,QAAQ;4BACf,SAAS,EAAE,cAAI;yBAClB;wBACD;4BACI,EAAE,EAAE,kBAAkB;4BACtB,KAAK,EAAE,MAAM;4BACb,SAAS,EAAE,GAAG,EAAE,CAAC,uBAAC,oBAAU,IAAC,MAAM,EAAC,MAAM,GAAG;yBAChD;wBACD;4BACI,EAAE,EAAE,kBAAkB;4BACtB,KAAK,EAAE,MAAM;4BACb,SAAS,EAAE,GAAG,EAAE,CAAC,uBAAC,oBAAU,IAAC,MAAM,EAAC,MAAM,GAAG;yBAChD;qBACJ,GACH,CACL;aACJ;YACD;gBACI,EAAE,EAAE,YAAY;gBAChB,KAAK,EAAE,YAAY;gBACnB,SAAS,EAAE,sBAAY;aAC1B;YACD,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;SACtB;QACD,KAAK,EAAE;YACH;gBACI,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,MAAM;gBACb,SAAS,EAAE,GAAG,EAAE,CAAC,CACb,uBAAC,cAAI,IACD,KAAK,EAAE;wBACH;4BACI,EAAE,EAAE,cAAc;4BAClB,KAAK,EAAE,QAAQ;4BACf,SAAS,EAAE,yBAAe;yBAC7B;wBACD;4BACI,EAAE,EAAE,kBAAkB;4BACtB,KAAK,EAAE,MAAM;4BACb,SAAS,EAAE,GAAG,EAAE,CAAC,uBAAC,oBAAU,IAAC,MAAM,EAAC,MAAM,GAAG;yBAChD;wBACD;4BACI,EAAE,EAAE,kBAAkB;4BACtB,KAAK,EAAE,MAAM;4BACb,SAAS,EAAE,GAAG,EAAE,CAAC,uBAAC,oBAAU,IAAC,MAAM,EAAC,MAAM,GAAG;yBAChD;qBACJ,GACH,CACL;aACJ;YACD,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;SACvB;KACJ,CAAC,EACF,CAAC,QAAQ,EAAE,SAAS,CAAC,CACxB,CAAC;IAEF,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAhFW,QAAA,aAAa,iBAgFxB","sourcesContent":["import * as React from 'react';\n\nimport Tabs, {TabsItemProps} from '../components/Tabs/Tabs';\nimport BlockConfigForm from '../containers/BlockConfigForm/BlockConfigForm';\nimport BlocksList from '../containers/BlocksList/BlocksList';\nimport GlobalConfig from '../containers/GlobalConfig/GlobalConfig';\nimport SourceCode from '../containers/SourceCode/SourceCode';\nimport Tree from '../containers/Tree';\n\nexport const useEditorTabs = ({\n leftTabs,\n rightTabs,\n}: {\n leftTabs?: TabsItemProps[];\n rightTabs?: TabsItemProps[];\n}) => {\n const tabs = React.useMemo(\n () => ({\n left: [\n {\n id: 'page',\n title: 'PAGE',\n component: () => (\n <Tabs\n items={[\n {\n id: 'blocks-list',\n title: 'BLOCKS',\n component: BlocksList,\n },\n {\n id: 'layers',\n title: 'LAYERS',\n component: Tree,\n },\n {\n id: 'source-code-yaml',\n title: 'YAML',\n component: () => <SourceCode format=\"yaml\" />,\n },\n {\n id: 'source-code-json',\n title: 'JSON',\n component: () => <SourceCode format=\"json\" />,\n },\n ]}\n />\n ),\n },\n {\n id: 'navigation',\n title: 'NAVIGATION',\n component: GlobalConfig,\n },\n ...(leftTabs || []),\n ],\n right: [\n {\n id: 'edit',\n title: 'EDIT',\n component: () => (\n <Tabs\n items={[\n {\n id: 'block-config',\n title: 'INPUTS',\n component: BlockConfigForm,\n },\n {\n id: 'source-code-yaml',\n title: 'YAML',\n component: () => <SourceCode format=\"yaml\" />,\n },\n {\n id: 'source-code-json',\n title: 'JSON',\n component: () => <SourceCode format=\"json\" />,\n },\n ]}\n />\n ),\n },\n ...(rightTabs || []),\n ],\n }),\n [leftTabs, rightTabs],\n );\n\n return tabs;\n};\n"]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const postMessage_1 = require("../../../common/postMessage.js");
3
+ const postMessage_1 = require("../../common/postMessage.js");
4
4
  const useMainEditorStore_1 = require("./useMainEditorStore.js");
5
5
  const usePostMessageEvents_1 = require("./usePostMessageEvents.js");
6
6
  const useMainEditorInitialize = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"useMainEditorInitialize.js","sourceRoot":"../../../../src","sources":["editor-v2/hooks/useMainEditorInitialize.ts"],"names":[],"mappings":";;AAAA,gEAAsE;AAEtE,gEAAwD;AACxD,oEAA4D;AAE5D,MAAM,uBAAuB,GAAG,GAAG,EAAE;IACjC,MAAM,EAAC,kBAAkB,EAAC,GAAG,IAAA,2CAAoB,GAAE,CAAC;IACpD,MAAM,EACF,UAAU,EACV,SAAS,EACT,UAAU,EACV,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,GACtB,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAEzB,IAAA,uCAAyB,EACrB,SAAS,EACT,GAAG,EAAE;QACD,UAAU,EAAE,CAAC;QACb,kBAAkB,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;QAC/C,kBAAkB,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC,EACD,CAAC,kBAAkB,CAAC,CACvB,CAAC;IAEF,IAAA,uCAAyB,EAAC,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE;QACrD,UAAU,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,IAAA,uCAAyB,EAAC,qBAAqB,EAAE,CAAC,IAAI,EAAE,EAAE;QACtD,SAAS,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,IAAA,uCAAyB,EACrB,aAAa,EACb,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAC,EAAE,EAAE;QACjB,IAAI,qBAAqB,KAAK,QAAQ,IAAI,IAAI,IAAI,QAAQ,IAAI,kBAAkB,EAAE,CAAC;YAC/E,WAAW,CACP,IAAI,EACJ,kBAAkB,EAClB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAC5D,CAAC;QACN,CAAC;QACD,IAAI,qBAAqB,KAAK,SAAS,IAAI,IAAI,IAAI,QAAQ,IAAI,mBAAmB,EAAE,CAAC;YACjF,YAAY,CACR,mBAAmB,EACnB,IAAI,EACJ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAC5D,CAAC;QACN,CAAC;QACD,WAAW,EAAE,CAAC;IAClB,CAAC,EACD,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAC5C,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,uBAAuB,CAAC","sourcesContent":["import {usePostMessageAPIListener} from '../../../common/postMessage';\n\nimport {useMainEditorStore} from './useMainEditorStore';\nimport {usePostMessageEvents} from './usePostMessageEvents';\n\nconst useMainEditorInitialize = () => {\n const {requestPostMessage} = usePostMessageEvents();\n const {\n initialize,\n setConfig,\n setContent,\n manipulateOverlayMode,\n disableMode,\n insertBlock,\n reorderBlock,\n preInsertBlockType,\n preReorderBlockPath,\n } = useMainEditorStore();\n\n usePostMessageAPIListener(\n 'ON_INIT',\n () => {\n initialize();\n requestPostMessage('GET_SUPPORTED_BLOCKS', {});\n requestPostMessage('GET_INITIAL_CONTENT', {});\n },\n [requestPostMessage],\n );\n\n usePostMessageAPIListener('ON_INITIAL_CONTENT', (data) => {\n setContent(data);\n });\n\n usePostMessageAPIListener('ON_SUPPORTED_BLOCKS', (data) => {\n setConfig(data);\n });\n\n usePostMessageAPIListener(\n 'ON_MOUSE_UP',\n ({path, position}) => {\n if (manipulateOverlayMode === 'insert' && path && position && preInsertBlockType) {\n insertBlock(\n path,\n preInsertBlockType,\n ['left', 'top'].includes(position) ? 'prepend' : 'append',\n );\n }\n if (manipulateOverlayMode === 'reorder' && path && position && preReorderBlockPath) {\n reorderBlock(\n preReorderBlockPath,\n path,\n ['left', 'top'].includes(position) ? 'prepend' : 'append',\n );\n }\n disableMode();\n },\n [preInsertBlockType, preReorderBlockPath],\n );\n};\n\nexport default useMainEditorInitialize;\n"]}
1
+ {"version":3,"file":"useMainEditorInitialize.js","sourceRoot":"../../../../src","sources":["editor-v2/hooks/useMainEditorInitialize.ts"],"names":[],"mappings":";;AAAA,6DAAmE;AAEnE,gEAAwD;AACxD,oEAA4D;AAE5D,MAAM,uBAAuB,GAAG,GAAG,EAAE;IACjC,MAAM,EAAC,kBAAkB,EAAC,GAAG,IAAA,2CAAoB,GAAE,CAAC;IACpD,MAAM,EACF,UAAU,EACV,SAAS,EACT,UAAU,EACV,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,GACtB,GAAG,IAAA,uCAAkB,GAAE,CAAC;IAEzB,IAAA,uCAAyB,EACrB,SAAS,EACT,GAAG,EAAE;QACD,UAAU,EAAE,CAAC;QACb,kBAAkB,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;QAC/C,kBAAkB,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC,EACD,CAAC,kBAAkB,CAAC,CACvB,CAAC;IAEF,IAAA,uCAAyB,EAAC,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE;QACrD,UAAU,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,IAAA,uCAAyB,EAAC,qBAAqB,EAAE,CAAC,IAAI,EAAE,EAAE;QACtD,SAAS,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,IAAA,uCAAyB,EACrB,aAAa,EACb,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAC,EAAE,EAAE;QACjB,IAAI,qBAAqB,KAAK,QAAQ,IAAI,IAAI,IAAI,QAAQ,IAAI,kBAAkB,EAAE,CAAC;YAC/E,WAAW,CACP,IAAI,EACJ,kBAAkB,EAClB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAC5D,CAAC;QACN,CAAC;QACD,IAAI,qBAAqB,KAAK,SAAS,IAAI,IAAI,IAAI,QAAQ,IAAI,mBAAmB,EAAE,CAAC;YACjF,YAAY,CACR,mBAAmB,EACnB,IAAI,EACJ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAC5D,CAAC;QACN,CAAC;QACD,WAAW,EAAE,CAAC;IAClB,CAAC,EACD,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAC5C,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,uBAAuB,CAAC","sourcesContent":["import {usePostMessageAPIListener} from '../../common/postMessage';\n\nimport {useMainEditorStore} from './useMainEditorStore';\nimport {usePostMessageEvents} from './usePostMessageEvents';\n\nconst useMainEditorInitialize = () => {\n const {requestPostMessage} = usePostMessageEvents();\n const {\n initialize,\n setConfig,\n setContent,\n manipulateOverlayMode,\n disableMode,\n insertBlock,\n reorderBlock,\n preInsertBlockType,\n preReorderBlockPath,\n } = useMainEditorStore();\n\n usePostMessageAPIListener(\n 'ON_INIT',\n () => {\n initialize();\n requestPostMessage('GET_SUPPORTED_BLOCKS', {});\n requestPostMessage('GET_INITIAL_CONTENT', {});\n },\n [requestPostMessage],\n );\n\n usePostMessageAPIListener('ON_INITIAL_CONTENT', (data) => {\n setContent(data);\n });\n\n usePostMessageAPIListener('ON_SUPPORTED_BLOCKS', (data) => {\n setConfig(data);\n });\n\n usePostMessageAPIListener(\n 'ON_MOUSE_UP',\n ({path, position}) => {\n if (manipulateOverlayMode === 'insert' && path && position && preInsertBlockType) {\n insertBlock(\n path,\n preInsertBlockType,\n ['left', 'top'].includes(position) ? 'prepend' : 'append',\n );\n }\n if (manipulateOverlayMode === 'reorder' && path && position && preReorderBlockPath) {\n reorderBlock(\n preReorderBlockPath,\n path,\n ['left', 'top'].includes(position) ? 'prepend' : 'append',\n );\n }\n disableMode();\n },\n [preInsertBlockType, preReorderBlockPath],\n );\n};\n\nexport default useMainEditorInitialize;\n"]}
@@ -1,4 +1,4 @@
1
- import { ActionMessageTypes } from "../../../common/types/index.js";
1
+ import { ActionMessageTypes } from "../../common/types/index.js";
2
2
  interface UsePostMessageRequestReturn {
3
3
  requestPostMessage: <K extends keyof ActionMessageTypes>(action: K, data: ActionMessageTypes[K]) => void;
4
4
  }
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.usePostMessageEvents = usePostMessageEvents;
4
4
  const tslib_1 = require("tslib");
5
5
  const React = tslib_1.__importStar(require("react"));
6
- const postMessage_1 = require("../../../common/postMessage.js");
6
+ const postMessage_1 = require("../../common/postMessage.js");
7
7
  const iframeContext_1 = require("../context/iframeContext/index.js");
8
8
  function usePostMessageEvents() {
9
9
  const { iframeElement } = React.useContext(iframeContext_1.IframeContext);
@@ -1 +1 @@
1
- {"version":3,"file":"usePostMessageEvents.js","sourceRoot":"../../../../src","sources":["editor-v2/hooks/usePostMessageEvents.ts"],"names":[],"mappings":";;AAaA,oDAYC;;AAzBD,qDAA+B;AAE/B,gEAAqE;AAErE,qEAAuD;AASvD,SAAgB,oBAAoB;IAChC,MAAM,EAAC,aAAa,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,6BAAa,CAAC,CAAC;IAExD,OAAO;QACH,kBAAkB,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YACjC,IAAI,aAAa,IAAI,aAAa,CAAC,aAAa,EAAE,CAAC;gBAC/C,OAAO,IAAA,sCAAwB,EAAC,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;YAC/E,CAAC;YAED,OAAO,SAAS,CAAC;QACrB,CAAC;KACJ,CAAC;AACN,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {requestActionPostMessage} from '../../../common/postMessage';\nimport {ActionMessageTypes} from '../../../common/types';\nimport {IframeContext} from '../context/iframeContext';\n\ninterface UsePostMessageRequestReturn {\n requestPostMessage: <K extends keyof ActionMessageTypes>(\n action: K,\n data: ActionMessageTypes[K],\n ) => void;\n}\n\nexport function usePostMessageEvents(): UsePostMessageRequestReturn {\n const {iframeElement} = React.useContext(IframeContext);\n\n return {\n requestPostMessage: (action, data) => {\n if (iframeElement && iframeElement.contentWindow) {\n return requestActionPostMessage(action, data, iframeElement.contentWindow);\n }\n\n return undefined;\n },\n };\n}\n"]}
1
+ {"version":3,"file":"usePostMessageEvents.js","sourceRoot":"../../../../src","sources":["editor-v2/hooks/usePostMessageEvents.ts"],"names":[],"mappings":";;AAaA,oDAYC;;AAzBD,qDAA+B;AAE/B,6DAAkE;AAElE,qEAAuD;AASvD,SAAgB,oBAAoB;IAChC,MAAM,EAAC,aAAa,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,6BAAa,CAAC,CAAC;IAExD,OAAO;QACH,kBAAkB,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YACjC,IAAI,aAAa,IAAI,aAAa,CAAC,aAAa,EAAE,CAAC;gBAC/C,OAAO,IAAA,sCAAwB,EAAC,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;YAC/E,CAAC;YAED,OAAO,SAAS,CAAC;QACrB,CAAC;KACJ,CAAC;AACN,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {requestActionPostMessage} from '../../common/postMessage';\nimport {ActionMessageTypes} from '../../common/types';\nimport {IframeContext} from '../context/iframeContext';\n\ninterface UsePostMessageRequestReturn {\n requestPostMessage: <K extends keyof ActionMessageTypes>(\n action: K,\n data: ActionMessageTypes[K],\n ) => void;\n}\n\nexport function usePostMessageEvents(): UsePostMessageRequestReturn {\n const {iframeElement} = React.useContext(IframeContext);\n\n return {\n requestPostMessage: (action, data) => {\n if (iframeElement && iframeElement.contentWindow) {\n return requestActionPostMessage(action, data, iframeElement.contentWindow);\n }\n\n return undefined;\n },\n };\n}\n"]}
@@ -1,2 +1,5 @@
1
- export { Editor } from "./containers/Editor/Editor.js";
2
- export * from "../../common/types/index.js";
1
+ export * from "../common/types/index.js";
2
+ export * from "./containers/index.js";
3
+ export * from "./hooks/index.js";
4
+ export * from "./utils/index.js";
5
+ export * from "./constants.js";
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Editor = void 0;
4
3
  const tslib_1 = require("tslib");
5
- var Editor_1 = require("./containers/Editor/Editor.js");
6
- Object.defineProperty(exports, "Editor", { enumerable: true, get: function () { return Editor_1.Editor; } });
7
- tslib_1.__exportStar(require("../../common/types/index.js"), exports);
4
+ tslib_1.__exportStar(require("../common/types/index.js"), exports);
5
+ tslib_1.__exportStar(require("./containers/index.js"), exports);
6
+ tslib_1.__exportStar(require("./hooks/index.js"), exports);
7
+ tslib_1.__exportStar(require("./utils/index.js"), exports);
8
+ tslib_1.__exportStar(require("./constants.js"), exports);
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["editor-v2/index.ts"],"names":[],"mappings":";;;;AAAA,wDAAkD;AAA1C,gGAAA,MAAM,OAAA;AACd,sEAAmC","sourcesContent":["export {Editor} from './containers/Editor/Editor';\nexport * from '../../common/types';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["editor-v2/index.ts"],"names":[],"mappings":";;;AAAA,mEAAgC;AAChC,gEAA6B;AAC7B,2DAAwB;AACxB,2DAAwB;AACxB,yDAA4B","sourcesContent":["export * from '../common/types';\nexport * from './containers';\nexport * from './hooks';\nexport * from './utils';\nexport * from './constants';\n"]}
@@ -1,5 +1,5 @@
1
- import { EditorState } from "../../common/store.js";
2
- import { DynamicFormValue } from "../../common/types/index.js";
1
+ import { EditorState } from "../common/store.js";
2
+ import { DynamicFormValue } from "../common/types/index.js";
3
3
  import { PageContentWithNavigation } from "../models/index.js";
4
4
  export interface EditorMethods {
5
5
  initialize(): void;
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createEditorStore = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const lodash_1 = tslib_1.__importDefault(require("lodash"));
6
- const store_1 = require("../../common/store.js");
7
- const utils_1 = require("../../common/utils.js");
6
+ const store_1 = require("../common/store.js");
7
+ const utils_1 = require("../common/utils.js");
8
8
  const constants_1 = require("./constants.js");
9
9
  const utils_2 = require("./utils/index.js");
10
10
  exports.createEditorStore = (0, utils_1.initializeStore)(store_1.initialStore, (set, get) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"../../../src","sources":["editor-v2/store.ts"],"names":[],"mappings":"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","sourcesContent":["import _ from 'lodash';\n\nimport {EditorState, initialStore} from '../../common/store';\nimport {DynamicFormValue} from '../../common/types';\nimport {initializeStore} from '../../common/utils';\nimport {ConstructorBlock, PageContentWithNavigation} from '../models';\n\nimport {ZOOM_STEPS} from './constants';\nimport {\n duplicateArrayItem,\n generateChildrenPathFromArray,\n getDestinationShiftBeforeReorder,\n insert,\n isItemsNeighbours,\n modifyObjectByPath,\n removeFromArray,\n reorderArrayItems,\n} from './utils';\n\nexport interface EditorMethods {\n initialize(): void;\n setSelectedBlock(path: number[] | null): void;\n setHeight(height: number): void;\n setDeviceWidth(deviceWidth: string): void;\n setZoom(zoom: number): void;\n increaseZoom(): void;\n decreaseZoom(): void;\n setConfig(data: Pick<EditorState, 'blocks' | 'subBlocks' | 'global'>): void;\n setContent(data: PageContentWithNavigation): void;\n insertBlock(path: number[], blockType: string, position?: 'prepend' | 'append'): void;\n enableInsertMode(blockType: string): void;\n enableReorderMode(path: number[]): void;\n disableMode(): void;\n updateField(path: string, value: DynamicFormValue): void;\n deleteBlock(path: number[]): void;\n duplicateBlock(path: number[]): void;\n reorderBlock(path: number[], destination: number[], position?: 'prepend' | 'append'): void;\n resetInitialize(): void;\n resetBlocks(): void;\n}\n\nexport type EditorStore = EditorState & EditorMethods;\n\nexport const createEditorStore = initializeStore<EditorState, EditorMethods>(\n initialStore,\n (set, get) => ({\n setHeight(height: number) {\n // We have to add 200-500px, because of bottom padding or margin of last element\n // which is not taken into calculation of final height\n const newHeight = height + 500;\n set((state) => ({...state, height: newHeight}));\n },\n setDeviceWidth(deviceWidth: string) {\n set((state) => ({...state, deviceWidth}));\n },\n setZoom(zoom) {\n if (zoom > 0) {\n set((state) => ({...state, zoom}));\n }\n },\n increaseZoom() {\n const currentZoom = get().zoom;\n\n for (const step of ZOOM_STEPS) {\n if (currentZoom < step) {\n get().setZoom(step);\n break;\n }\n }\n },\n decreaseZoom() {\n const currentZoom = get().zoom;\n const reverseSteps = ZOOM_STEPS.slice().reverse();\n\n for (const step of reverseSteps) {\n if (currentZoom > step) {\n get().setZoom(step);\n break;\n }\n }\n },\n setConfig(data) {\n set((state) => ({...state, ...data}));\n },\n insertBlock: (arrayPath, blockType, position = 'append') => {\n if (position === 'append') {\n // TODO: fix\n // eslint-disable-next-line no-not-accumulator-reassign/no-not-accumulator-reassign, no-param-reassign\n arrayPath[arrayPath.length - 1] = arrayPath[arrayPath.length - 1] + 1;\n }\n\n const blocksConfig = get().content.blocks;\n const blocksData = get().blocks;\n\n const foundBlock = blocksData.find(({type}) => type === blockType);\n const defaultValue =\n foundBlock && foundBlock.schema.default\n ? {...foundBlock.schema.default, type: blockType}\n : {type: blockType};\n\n const newBlocksConfig = modifyObjectByPath(\n blocksConfig,\n arrayPath,\n (parentBlocks, index) =>\n insert(parentBlocks, index, defaultValue as ConstructorBlock),\n );\n\n set((state) => ({\n ...state,\n content: {...state.content, blocks: newBlocksConfig},\n selectedBlock: arrayPath,\n }));\n },\n enableInsertMode(blockType: string) {\n set((state) => ({\n ...state,\n manipulateOverlayMode: 'insert',\n preInsertBlockType: blockType,\n }));\n },\n disableMode() {\n set((state) => ({\n ...state,\n manipulateOverlayMode: false,\n preInsertBlockType: undefined,\n preReorderBlockPath: undefined,\n }));\n },\n enableReorderMode(path) {\n set((state) => ({\n ...state,\n manipulateOverlayMode: 'reorder',\n preReorderBlockPath: path,\n }));\n },\n setContent(content) {\n set((state) => ({\n ...state,\n content: content,\n }));\n },\n initialize() {\n set((state) => ({\n ...state,\n initialized: true,\n }));\n },\n setSelectedBlock(path) {\n set((state) => ({\n ...state,\n selectedBlock: path,\n }));\n },\n updateField(path, value) {\n set((state) => {\n const newConfig = _.set(state.content, path, value);\n return {\n ...state,\n content: newConfig,\n };\n });\n },\n deleteBlock: (arrayPath) => {\n const blocksConfig = get().content.blocks;\n\n const newBlocksConfig = modifyObjectByPath(blocksConfig, arrayPath, removeFromArray);\n set((state) => ({\n ...state,\n content: {...state.content, blocks: newBlocksConfig},\n selectedBlock: null,\n }));\n },\n duplicateBlock: (arrayPath) => {\n const blocksConfig = get().content.blocks;\n\n const newBlocksConfig = modifyObjectByPath(blocksConfig, arrayPath, duplicateArrayItem);\n\n set((state) => ({\n ...state,\n content: {...state.content, blocks: newBlocksConfig},\n }));\n },\n reorderBlock: (arrayPath, destination, position = 'append') => {\n // Create a copy of the destination array before any modifications\n let finalDestinationPath: number[] = _.cloneDeep(destination);\n\n if (position === 'append') {\n // TODO: fix\n // eslint-disable-next-line no-not-accumulator-reassign/no-not-accumulator-reassign, no-param-reassign\n destination[destination.length - 1] = destination[destination.length - 1] + 1;\n }\n\n let newBlocksConfig: ConstructorBlock[];\n const blocksConfig = get().content.blocks;\n // Copy\n const copiedBlock = _.get(blocksConfig, generateChildrenPathFromArray(arrayPath));\n\n if (isItemsNeighbours(arrayPath, destination)) {\n newBlocksConfig = modifyObjectByPath(blocksConfig, arrayPath, (parentBlocks) => {\n return reorderArrayItems(\n parentBlocks,\n arrayPath[arrayPath.length - 1],\n destination[destination.length - 1],\n );\n });\n\n if (\n position === 'append' &&\n destination[destination.length - 1] < arrayPath[arrayPath.length - 1]\n ) {\n finalDestinationPath[finalDestinationPath.length - 1] =\n finalDestinationPath[finalDestinationPath.length - 1] + 1;\n }\n } else {\n const arrayDest = getDestinationShiftBeforeReorder(arrayPath, destination);\n finalDestinationPath = _.cloneDeep(arrayDest);\n\n // Delete\n const blocksConfigWithoutBlock = modifyObjectByPath(\n blocksConfig,\n arrayPath,\n removeFromArray,\n );\n // Paste\n newBlocksConfig = modifyObjectByPath(\n blocksConfigWithoutBlock,\n arrayDest,\n (parentBlocks, index) => insert(parentBlocks, index, copiedBlock),\n );\n }\n\n set((state) => ({\n ...state,\n content: {...state.content, blocks: newBlocksConfig},\n selectedBlock: finalDestinationPath,\n }));\n },\n resetInitialize: () => {\n set((state) => ({\n ...state,\n initialized: false,\n }));\n },\n resetBlocks: () => {\n set((state) => ({\n ...state,\n content: {...state.content, blocks: []},\n }));\n },\n }),\n);\n"]}
1
+ {"version":3,"file":"store.js","sourceRoot":"../../../src","sources":["editor-v2/store.ts"],"names":[],"mappings":"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","sourcesContent":["import _ from 'lodash';\n\nimport {EditorState, initialStore} from '../common/store';\nimport {DynamicFormValue} from '../common/types';\nimport {initializeStore} from '../common/utils';\nimport {ConstructorBlock, PageContentWithNavigation} from '../models';\n\nimport {ZOOM_STEPS} from './constants';\nimport {\n duplicateArrayItem,\n generateChildrenPathFromArray,\n getDestinationShiftBeforeReorder,\n insert,\n isItemsNeighbours,\n modifyObjectByPath,\n removeFromArray,\n reorderArrayItems,\n} from './utils';\n\nexport interface EditorMethods {\n initialize(): void;\n setSelectedBlock(path: number[] | null): void;\n setHeight(height: number): void;\n setDeviceWidth(deviceWidth: string): void;\n setZoom(zoom: number): void;\n increaseZoom(): void;\n decreaseZoom(): void;\n setConfig(data: Pick<EditorState, 'blocks' | 'subBlocks' | 'global'>): void;\n setContent(data: PageContentWithNavigation): void;\n insertBlock(path: number[], blockType: string, position?: 'prepend' | 'append'): void;\n enableInsertMode(blockType: string): void;\n enableReorderMode(path: number[]): void;\n disableMode(): void;\n updateField(path: string, value: DynamicFormValue): void;\n deleteBlock(path: number[]): void;\n duplicateBlock(path: number[]): void;\n reorderBlock(path: number[], destination: number[], position?: 'prepend' | 'append'): void;\n resetInitialize(): void;\n resetBlocks(): void;\n}\n\nexport type EditorStore = EditorState & EditorMethods;\n\nexport const createEditorStore = initializeStore<EditorState, EditorMethods>(\n initialStore,\n (set, get) => ({\n setHeight(height: number) {\n // We have to add 200-500px, because of bottom padding or margin of last element\n // which is not taken into calculation of final height\n const newHeight = height + 500;\n set((state) => ({...state, height: newHeight}));\n },\n setDeviceWidth(deviceWidth: string) {\n set((state) => ({...state, deviceWidth}));\n },\n setZoom(zoom) {\n if (zoom > 0) {\n set((state) => ({...state, zoom}));\n }\n },\n increaseZoom() {\n const currentZoom = get().zoom;\n\n for (const step of ZOOM_STEPS) {\n if (currentZoom < step) {\n get().setZoom(step);\n break;\n }\n }\n },\n decreaseZoom() {\n const currentZoom = get().zoom;\n const reverseSteps = ZOOM_STEPS.slice().reverse();\n\n for (const step of reverseSteps) {\n if (currentZoom > step) {\n get().setZoom(step);\n break;\n }\n }\n },\n setConfig(data) {\n set((state) => ({...state, ...data}));\n },\n insertBlock: (arrayPath, blockType, position = 'append') => {\n if (position === 'append') {\n // TODO: fix\n // eslint-disable-next-line no-not-accumulator-reassign/no-not-accumulator-reassign, no-param-reassign\n arrayPath[arrayPath.length - 1] = arrayPath[arrayPath.length - 1] + 1;\n }\n\n const blocksConfig = get().content.blocks;\n const blocksData = get().blocks;\n\n const foundBlock = blocksData.find(({type}) => type === blockType);\n const defaultValue =\n foundBlock && foundBlock.schema.default\n ? {...foundBlock.schema.default, type: blockType}\n : {type: blockType};\n\n const newBlocksConfig = modifyObjectByPath(\n blocksConfig,\n arrayPath,\n (parentBlocks, index) =>\n insert(parentBlocks, index, defaultValue as ConstructorBlock),\n );\n\n set((state) => ({\n ...state,\n content: {...state.content, blocks: newBlocksConfig},\n selectedBlock: arrayPath,\n }));\n },\n enableInsertMode(blockType: string) {\n set((state) => ({\n ...state,\n manipulateOverlayMode: 'insert',\n preInsertBlockType: blockType,\n }));\n },\n disableMode() {\n set((state) => ({\n ...state,\n manipulateOverlayMode: false,\n preInsertBlockType: undefined,\n preReorderBlockPath: undefined,\n }));\n },\n enableReorderMode(path) {\n set((state) => ({\n ...state,\n manipulateOverlayMode: 'reorder',\n preReorderBlockPath: path,\n }));\n },\n setContent(content) {\n set((state) => ({\n ...state,\n content: content,\n }));\n },\n initialize() {\n set((state) => ({\n ...state,\n initialized: true,\n }));\n },\n setSelectedBlock(path) {\n set((state) => ({\n ...state,\n selectedBlock: path,\n }));\n },\n updateField(path, value) {\n set((state) => {\n const newConfig = _.set(state.content, path, value);\n return {\n ...state,\n content: newConfig,\n };\n });\n },\n deleteBlock: (arrayPath) => {\n const blocksConfig = get().content.blocks;\n\n const newBlocksConfig = modifyObjectByPath(blocksConfig, arrayPath, removeFromArray);\n set((state) => ({\n ...state,\n content: {...state.content, blocks: newBlocksConfig},\n selectedBlock: null,\n }));\n },\n duplicateBlock: (arrayPath) => {\n const blocksConfig = get().content.blocks;\n\n const newBlocksConfig = modifyObjectByPath(blocksConfig, arrayPath, duplicateArrayItem);\n\n set((state) => ({\n ...state,\n content: {...state.content, blocks: newBlocksConfig},\n }));\n },\n reorderBlock: (arrayPath, destination, position = 'append') => {\n // Create a copy of the destination array before any modifications\n let finalDestinationPath: number[] = _.cloneDeep(destination);\n\n if (position === 'append') {\n // TODO: fix\n // eslint-disable-next-line no-not-accumulator-reassign/no-not-accumulator-reassign, no-param-reassign\n destination[destination.length - 1] = destination[destination.length - 1] + 1;\n }\n\n let newBlocksConfig: ConstructorBlock[];\n const blocksConfig = get().content.blocks;\n // Copy\n const copiedBlock = _.get(blocksConfig, generateChildrenPathFromArray(arrayPath));\n\n if (isItemsNeighbours(arrayPath, destination)) {\n newBlocksConfig = modifyObjectByPath(blocksConfig, arrayPath, (parentBlocks) => {\n return reorderArrayItems(\n parentBlocks,\n arrayPath[arrayPath.length - 1],\n destination[destination.length - 1],\n );\n });\n\n if (\n position === 'append' &&\n destination[destination.length - 1] < arrayPath[arrayPath.length - 1]\n ) {\n finalDestinationPath[finalDestinationPath.length - 1] =\n finalDestinationPath[finalDestinationPath.length - 1] + 1;\n }\n } else {\n const arrayDest = getDestinationShiftBeforeReorder(arrayPath, destination);\n finalDestinationPath = _.cloneDeep(arrayDest);\n\n // Delete\n const blocksConfigWithoutBlock = modifyObjectByPath(\n blocksConfig,\n arrayPath,\n removeFromArray,\n );\n // Paste\n newBlocksConfig = modifyObjectByPath(\n blocksConfigWithoutBlock,\n arrayDest,\n (parentBlocks, index) => insert(parentBlocks, index, copiedBlock),\n );\n }\n\n set((state) => ({\n ...state,\n content: {...state.content, blocks: newBlocksConfig},\n selectedBlock: finalDestinationPath,\n }));\n },\n resetInitialize: () => {\n set((state) => ({\n ...state,\n initialized: false,\n }));\n },\n resetBlocks: () => {\n set((state) => ({\n ...state,\n content: {...state.content, blocks: []},\n }));\n },\n }),\n);\n"]}
@@ -1,12 +1,9 @@
1
1
  .g-root {
2
- --g-color-base-brand: var(--g-color-private-black-550-solid);
3
- --g-color-base-brand-hover: var(--g-color-private-black-600-solid);
4
2
  --g-color-base-selection: var(--g-color-private-black-200);
5
3
  --g-color-base-selection-hover: var(--g-color-private-black-300);
6
- --g-color-base-brand: var(--g-color-text-primary);
7
- --g-color-base-brand-hover: var(--g-color-text-complementary);
4
+ --g-color-base-brand: var(--g-color-private-black-850-solid);
5
+ --g-color-base-brand-hover: var(--g-color-private-black-700-solid);
8
6
  --g-color-text-brand-contrast: var(--g-color-text-light-primary);
9
- --g-color-line-brand: var(--g-color-text-primary);
10
- --g-color-text-brand: var(--g-color-private-brand-700-solid);
11
7
  --g-color-text-brand-heavy: var(--g-color-private-black-700-solid);
8
+ --g-color-line-brand: var(--g-color-text-primary);
12
9
  }
@@ -1,4 +1,6 @@
1
1
  import { ConstructorBlock } from "../../models/index.js";
2
+ export * from "./code.js";
3
+ export * from "./cn.js";
2
4
  export declare function insert<T>(arr: Array<T>, index: number, newItem: T): T[];
3
5
  export declare function removeFromArray<T>(array: Array<T>, index: number): T[];
4
6
  export declare function swapArrayItems<T>(array: Array<T>, firstIndex: number, secondIndex: number): T[];
@@ -15,6 +15,8 @@ exports.getDestinationShiftBeforeReorder = getDestinationShiftBeforeReorder;
15
15
  exports.prepareShift = prepareShift;
16
16
  const tslib_1 = require("tslib");
17
17
  const lodash_1 = tslib_1.__importDefault(require("lodash"));
18
+ tslib_1.__exportStar(require("./code.js"), exports);
19
+ tslib_1.__exportStar(require("./cn.js"), exports);
18
20
  function insert(arr, index, newItem) {
19
21
  return [...arr.slice(0, index), newItem, ...arr.slice(index)];
20
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["editor-v2/utils/index.ts"],"names":[],"mappings":"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","sourcesContent":["import _ from 'lodash';\n\nimport {ConstructorBlock} from '../../models';\n\nexport function insert<T>(arr: Array<T>, index: number, newItem: T) {\n return [...arr.slice(0, index), newItem, ...arr.slice(index)];\n}\n\nexport function removeFromArray<T>(array: Array<T>, index: number) {\n return [...array.slice(0, index), ...array.slice(index + 1)];\n}\n\nexport function swapArrayItems<T>(array: Array<T>, firstIndex: number, secondIndex: number) {\n const results = array.slice();\n const firstItem = array[firstIndex];\n results[firstIndex] = array[secondIndex];\n results[secondIndex] = firstItem;\n return results;\n}\n\nexport function reorderArrayItems<T>(array: Array<T>, index: number, destination: number) {\n const min = Math.min(index, destination);\n const max = Math.max(index, destination);\n const firstOperationRemove = index < destination;\n const result = [];\n result.push(...array.slice(0, min));\n if (!firstOperationRemove) {\n result.push(array[index]);\n }\n result.push(...array.slice(firstOperationRemove ? min + 1 : min, max));\n if (firstOperationRemove) {\n result.push(array[index]);\n }\n result.push(...array.slice(firstOperationRemove ? max : max + 1, array.length));\n return result;\n}\n\nexport function duplicateArrayItem<T>(array: Array<T>, index: number) {\n const duplicatedItem = _.cloneDeep(array[index]);\n return [...array.slice(0, index), duplicatedItem, ...array.slice(index)];\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function insertByPath<T extends object>(object: T, path: string, value: any) {\n if (!path) {\n return value as T;\n }\n\n return _.setWith(_.clone(object), path, value, _.clone);\n}\n\n/*\n * path: string;\n * Example:\n * 1. blocks[0] => {path: blocks, index: 0}\n * 2. blocks[2].children[10] => {path: blocks[2].children, index: 10}\n **/\nexport function splitPathAndIndex(path: string) {\n // Match blocks[3], blocks[0].children[12], blocks[0], blocks[999999]\n const bracketsRegExp = /(.*)\\[(\\d+)]$/g;\n const regexpMatches = [...path.matchAll(bracketsRegExp)];\n if (regexpMatches.length) {\n return {\n // blocks, blocks[0].children\n path: regexpMatches[0][1],\n // 3, 12, 0, 9999\n index: Number(regexpMatches[0][2]),\n };\n }\n\n // eslint-disable-next-line no-console\n console.error('Non correct path for splitting');\n return undefined;\n}\n\n/*\n * [0, 4, 3] => [0].children[4].children[3]\n * */\nexport function generateChildrenPathFromArray(indexes: number[]) {\n if (!indexes.length) {\n return '';\n }\n\n let resultPath = `[${indexes[0]}]`;\n\n if (indexes.length > 1) {\n for (let i = 1; i < indexes.length; i++) {\n resultPath += `.children[${indexes[i]}]`;\n }\n }\n\n return resultPath;\n}\n\nexport function modifyObjectByPath(\n blocks: ConstructorBlock[],\n arrayPath: number[],\n modifyCallback: (parentBlocks: ConstructorBlock[], index: number) => ConstructorBlock[],\n) {\n // [1]\n // [4].children[3]\n const insertPath = generateChildrenPathFromArray(arrayPath);\n // path: '' index: 1\n // path: '[4].children' index: 3\n const splitPath = splitPathAndIndex(insertPath);\n\n if (splitPath) {\n const {path: parentPath, index} = splitPath;\n // Get Array that lies on path\n const parentArray = parentPath ? _.get(blocks, parentPath) : blocks;\n\n const value = Array.isArray(parentArray) ? parentArray : [];\n // Modify Array\n const newModifiedArray = modifyCallback(value, index);\n\n // Return it back\n return insertByPath(blocks, parentPath, newModifiedArray);\n }\n\n return blocks;\n}\n\nexport function isItemsNeighbours(arrayA: number[], arrayB: number[]) {\n if (arrayA.length !== arrayB.length) {\n return false;\n }\n\n for (let i = 0; i < arrayA.length - 1; i++) {\n if (arrayA[i] !== arrayB[i]) {\n return false;\n }\n }\n\n return true;\n}\n\nexport function getDestinationShiftBeforeReorder(arrayInit: number[], arrayDest: number[]) {\n if (arrayInit.length === arrayDest.length || arrayInit.length > arrayDest.length) {\n return arrayDest;\n }\n\n for (let i = 0; i < arrayInit.length; i++) {\n if (arrayInit[i] < arrayDest[i]) {\n return prepareShift(arrayInit, arrayDest);\n }\n }\n\n return arrayDest;\n}\n\nexport function prepareShift(arrayInit: number[], arrayDest: number[]) {\n if (arrayInit.length === arrayDest.length || arrayInit.length > arrayDest.length) {\n return arrayDest;\n }\n\n return arrayDest.map((pathIndex, index) =>\n index === arrayInit.length - 1 ? pathIndex - 1 : pathIndex,\n );\n}\n\nexport const getUrlOrigin = (url: string) => {\n try {\n const urlObject = new URL(url);\n return urlObject.origin;\n } catch {\n return undefined;\n }\n};\n\nexport const getItemTitle = (item: object): string | undefined => {\n return (\n _.get(item, 'title.text') ||\n _.get(item, 'title') ||\n _.get(item, 'textContent.title') ||\n _.get(item, 'content.title')\n );\n};\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["editor-v2/utils/index.ts"],"names":[],"mappings":"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","sourcesContent":["import _ from 'lodash';\n\nimport {ConstructorBlock} from '../../models';\nexport * from './code';\nexport * from './cn';\n\nexport function insert<T>(arr: Array<T>, index: number, newItem: T) {\n return [...arr.slice(0, index), newItem, ...arr.slice(index)];\n}\n\nexport function removeFromArray<T>(array: Array<T>, index: number) {\n return [...array.slice(0, index), ...array.slice(index + 1)];\n}\n\nexport function swapArrayItems<T>(array: Array<T>, firstIndex: number, secondIndex: number) {\n const results = array.slice();\n const firstItem = array[firstIndex];\n results[firstIndex] = array[secondIndex];\n results[secondIndex] = firstItem;\n return results;\n}\n\nexport function reorderArrayItems<T>(array: Array<T>, index: number, destination: number) {\n const min = Math.min(index, destination);\n const max = Math.max(index, destination);\n const firstOperationRemove = index < destination;\n const result = [];\n result.push(...array.slice(0, min));\n if (!firstOperationRemove) {\n result.push(array[index]);\n }\n result.push(...array.slice(firstOperationRemove ? min + 1 : min, max));\n if (firstOperationRemove) {\n result.push(array[index]);\n }\n result.push(...array.slice(firstOperationRemove ? max : max + 1, array.length));\n return result;\n}\n\nexport function duplicateArrayItem<T>(array: Array<T>, index: number) {\n const duplicatedItem = _.cloneDeep(array[index]);\n return [...array.slice(0, index), duplicatedItem, ...array.slice(index)];\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function insertByPath<T extends object>(object: T, path: string, value: any) {\n if (!path) {\n return value as T;\n }\n\n return _.setWith(_.clone(object), path, value, _.clone);\n}\n\n/*\n * path: string;\n * Example:\n * 1. blocks[0] => {path: blocks, index: 0}\n * 2. blocks[2].children[10] => {path: blocks[2].children, index: 10}\n **/\nexport function splitPathAndIndex(path: string) {\n // Match blocks[3], blocks[0].children[12], blocks[0], blocks[999999]\n const bracketsRegExp = /(.*)\\[(\\d+)]$/g;\n const regexpMatches = [...path.matchAll(bracketsRegExp)];\n if (regexpMatches.length) {\n return {\n // blocks, blocks[0].children\n path: regexpMatches[0][1],\n // 3, 12, 0, 9999\n index: Number(regexpMatches[0][2]),\n };\n }\n\n // eslint-disable-next-line no-console\n console.error('Non correct path for splitting');\n return undefined;\n}\n\n/*\n * [0, 4, 3] => [0].children[4].children[3]\n * */\nexport function generateChildrenPathFromArray(indexes: number[]) {\n if (!indexes.length) {\n return '';\n }\n\n let resultPath = `[${indexes[0]}]`;\n\n if (indexes.length > 1) {\n for (let i = 1; i < indexes.length; i++) {\n resultPath += `.children[${indexes[i]}]`;\n }\n }\n\n return resultPath;\n}\n\nexport function modifyObjectByPath(\n blocks: ConstructorBlock[],\n arrayPath: number[],\n modifyCallback: (parentBlocks: ConstructorBlock[], index: number) => ConstructorBlock[],\n) {\n // [1]\n // [4].children[3]\n const insertPath = generateChildrenPathFromArray(arrayPath);\n // path: '' index: 1\n // path: '[4].children' index: 3\n const splitPath = splitPathAndIndex(insertPath);\n\n if (splitPath) {\n const {path: parentPath, index} = splitPath;\n // Get Array that lies on path\n const parentArray = parentPath ? _.get(blocks, parentPath) : blocks;\n\n const value = Array.isArray(parentArray) ? parentArray : [];\n // Modify Array\n const newModifiedArray = modifyCallback(value, index);\n\n // Return it back\n return insertByPath(blocks, parentPath, newModifiedArray);\n }\n\n return blocks;\n}\n\nexport function isItemsNeighbours(arrayA: number[], arrayB: number[]) {\n if (arrayA.length !== arrayB.length) {\n return false;\n }\n\n for (let i = 0; i < arrayA.length - 1; i++) {\n if (arrayA[i] !== arrayB[i]) {\n return false;\n }\n }\n\n return true;\n}\n\nexport function getDestinationShiftBeforeReorder(arrayInit: number[], arrayDest: number[]) {\n if (arrayInit.length === arrayDest.length || arrayInit.length > arrayDest.length) {\n return arrayDest;\n }\n\n for (let i = 0; i < arrayInit.length; i++) {\n if (arrayInit[i] < arrayDest[i]) {\n return prepareShift(arrayInit, arrayDest);\n }\n }\n\n return arrayDest;\n}\n\nexport function prepareShift(arrayInit: number[], arrayDest: number[]) {\n if (arrayInit.length === arrayDest.length || arrayInit.length > arrayDest.length) {\n return arrayDest;\n }\n\n return arrayDest.map((pathIndex, index) =>\n index === arrayInit.length - 1 ? pathIndex - 1 : pathIndex,\n );\n}\n\nexport const getUrlOrigin = (url: string) => {\n try {\n const urlObject = new URL(url);\n return urlObject.origin;\n } catch {\n return undefined;\n }\n};\n\nexport const getItemTitle = (item: object): string | undefined => {\n return (\n _.get(item, 'title.text') ||\n _.get(item, 'title') ||\n _.get(item, 'textContent.title') ||\n _.get(item, 'content.title')\n );\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"usePCEditorInitializeEvents.js","sourceRoot":"../../../src","sources":["hooks/usePCEditorInitializeEvents.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {JSONSchemaType} from 'ajv';\nimport _ from 'lodash';\n\nimport {ItemConfig} from '../../common/types';\nimport {blockDataMap} from '../constructor-items';\nimport {PageContentWithNavigation} from '../models';\nimport {defaultComponentsConfigurationSchema} from '../schema';\nimport {generateFromAJV} from '../utils/form-generator';\n\nimport {usePCEditorStore} from './usePCEditorStore';\nimport {sendEventPostMessage, useInternalPostMessageAPIListener} from './usePostMessageAPI';\n\ninterface UseEditorInitializeProps {\n initialContent: PageContentWithNavigation;\n setContent: (content: PageContentWithNavigation) => void;\n}\n\nexport const usePCEditorInitializeEvents = ({\n initialContent,\n setContent,\n}: UseEditorInitializeProps) => {\n const {manipulateOverlayMode, initialized, content} = usePCEditorStore();\n\n React.useEffect(() => {\n if (initialized) {\n setContent(content);\n }\n }, [content, initialized, setContent]);\n\n useInternalPostMessageAPIListener('GET_INITIAL_CONTENT', () => {\n sendEventPostMessage('ON_INITIAL_CONTENT', initialContent);\n });\n\n useInternalPostMessageAPIListener('GET_SUPPORTED_BLOCKS', () => {\n sendEventPostMessage('ON_SUPPORTED_BLOCKS', {\n blocks: Object.entries(blockDataMap).reduce((acc, [key, value]) => {\n acc.push({type: key, schema: value.schema});\n return acc;\n }, [] as ItemConfig[]),\n subBlocks: [],\n global: generateFromAJV(\n defaultComponentsConfigurationSchema as unknown as JSONSchemaType<{}>,\n ),\n });\n });\n\n const onResize = React.useCallback(() => {\n const height = document.documentElement.getBoundingClientRect().height;\n sendEventPostMessage('ON_RESIZE', {height});\n }, []);\n\n new ResizeObserver(onResize).observe(document.body);\n\n React.useEffect(() => {\n const onMouseUp = () => {\n sendEventPostMessage('ON_MOUSE_UP', {});\n };\n\n const onMouseMove = (event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n sendEventPostMessage('ON_MOUSE_MOVE', {x: event.clientX, y: event.clientY});\n };\n\n const throttleOnMouseMove = _.throttle(onMouseMove, 10);\n const throttleOnMouseUp = _.throttle(onMouseUp, 10);\n\n document.addEventListener('mousemove', throttleOnMouseMove);\n document.addEventListener('mouseup', throttleOnMouseUp);\n window.addEventListener('resize', onResize);\n\n return () => {\n document.removeEventListener('mousemove', throttleOnMouseMove);\n document.removeEventListener('mouseup', throttleOnMouseUp);\n window.removeEventListener('resize', onResize);\n };\n }, [manipulateOverlayMode, onResize]);\n\n React.useEffect(() => {\n const height = document.documentElement.getBoundingClientRect().height;\n sendEventPostMessage('ON_INIT', {height});\n }, []);\n};\n"]}
1
+ {"version":3,"file":"usePCEditorInitializeEvents.js","sourceRoot":"../../../src","sources":["hooks/usePCEditorInitializeEvents.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {JSONSchemaType} from 'ajv';\nimport _ from 'lodash';\n\nimport {ItemConfig} from '../common/types';\nimport {blockDataMap} from '../constructor-items';\nimport {PageContentWithNavigation} from '../models';\nimport {defaultComponentsConfigurationSchema} from '../schema';\nimport {generateFromAJV} from '../utils/form-generator';\n\nimport {usePCEditorStore} from './usePCEditorStore';\nimport {sendEventPostMessage, useInternalPostMessageAPIListener} from './usePostMessageAPI';\n\ninterface UseEditorInitializeProps {\n initialContent: PageContentWithNavigation;\n setContent: (content: PageContentWithNavigation) => void;\n}\n\nexport const usePCEditorInitializeEvents = ({\n initialContent,\n setContent,\n}: UseEditorInitializeProps) => {\n const {manipulateOverlayMode, initialized, content} = usePCEditorStore();\n\n React.useEffect(() => {\n if (initialized) {\n setContent(content);\n }\n }, [content, initialized, setContent]);\n\n useInternalPostMessageAPIListener('GET_INITIAL_CONTENT', () => {\n sendEventPostMessage('ON_INITIAL_CONTENT', initialContent);\n });\n\n useInternalPostMessageAPIListener('GET_SUPPORTED_BLOCKS', () => {\n sendEventPostMessage('ON_SUPPORTED_BLOCKS', {\n blocks: Object.entries(blockDataMap).reduce((acc, [key, value]) => {\n acc.push({type: key, schema: value.schema});\n return acc;\n }, [] as ItemConfig[]),\n subBlocks: [],\n global: generateFromAJV(\n defaultComponentsConfigurationSchema as unknown as JSONSchemaType<{}>,\n ),\n });\n });\n\n const onResize = React.useCallback(() => {\n const height = document.documentElement.getBoundingClientRect().height;\n sendEventPostMessage('ON_RESIZE', {height});\n }, []);\n\n new ResizeObserver(onResize).observe(document.body);\n\n React.useEffect(() => {\n const onMouseUp = () => {\n sendEventPostMessage('ON_MOUSE_UP', {});\n };\n\n const onMouseMove = (event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n sendEventPostMessage('ON_MOUSE_MOVE', {x: event.clientX, y: event.clientY});\n };\n\n const throttleOnMouseMove = _.throttle(onMouseMove, 10);\n const throttleOnMouseUp = _.throttle(onMouseUp, 10);\n\n document.addEventListener('mousemove', throttleOnMouseMove);\n document.addEventListener('mouseup', throttleOnMouseUp);\n window.addEventListener('resize', onResize);\n\n return () => {\n document.removeEventListener('mousemove', throttleOnMouseMove);\n document.removeEventListener('mouseup', throttleOnMouseUp);\n window.removeEventListener('resize', onResize);\n };\n }, [manipulateOverlayMode, onResize]);\n\n React.useEffect(() => {\n const height = document.documentElement.getBoundingClientRect().height;\n sendEventPostMessage('ON_INIT', {height});\n }, []);\n};\n"]}
@@ -1 +1 @@
1
- export declare const usePCEditorStore: () => import("../../common/store.js").EditorState;
1
+ export declare const usePCEditorStore: () => import("../common/store.js").EditorState;
@@ -1,4 +1,4 @@
1
- import { ActionMessageTypes, EventMessageTypes } from "../../common/types/actions.js";
1
+ import { ActionMessageTypes, EventMessageTypes } from "../common/types/actions.js";
2
2
  export declare function sendEventPostMessage<K extends keyof EventMessageTypes>(action: K, data: EventMessageTypes[K]): void;
3
3
  export declare function listenPostMessageActions<K extends keyof ActionMessageTypes>(action: K, callback: (data: ActionMessageTypes[K]) => void): () => void;
4
4
  export declare function useInternalPostMessageAPIListener<K extends keyof ActionMessageTypes>(action: K, callback: (data: ActionMessageTypes[K]) => void): void;
@@ -1 +1 @@
1
- {"version":3,"file":"usePostMessageAPI.js","sourceRoot":"../../../src","sources":["hooks/usePostMessageAPI.ts"],"names":[],"mappings":";;AAKA,oDAMC;AAED,4DAmBC;AAED,8EAOC;;AAzCD,qDAA+B;AAK/B,SAAgB,oBAAoB,CAChC,MAAS,EACT,IAA0B;IAE1B,MAAM,OAAO,GAAG,EAAC,MAAM,EAAE,IAAI,EAA6B,CAAC;IAC3D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC;AAED,SAAgB,wBAAwB,CACpC,MAAS,EACT,QAA+C;IAE/C,MAAM,SAAS,GAAG,CAAC,CAAe,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAgC,CAAC;QAEnD,IAAI,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACnD,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAE9C,OAAO,GAAG,EAAE;QACR,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC,CAAC;AACN,CAAC;AAED,SAAgB,iCAAiC,CAC7C,MAAS,EACT,QAA+C;IAE/C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,OAAO,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC3B,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {PostMessageAPIMessage} from '../../common/types';\nimport {ActionMessageTypes, EventMessageTypes} from '../../common/types/actions';\n\nexport function sendEventPostMessage<K extends keyof EventMessageTypes>(\n action: K,\n data: EventMessageTypes[K],\n) {\n const message = {action, data} as PostMessageAPIMessage<K>;\n window.parent.postMessage(message);\n}\n\nexport function listenPostMessageActions<K extends keyof ActionMessageTypes>(\n action: K,\n callback: (data: ActionMessageTypes[K]) => void,\n) {\n const onMessage = (e: MessageEvent) => {\n const message = e.data as PostMessageAPIMessage<K>;\n\n if ('action' in message && message.action === action) {\n return callback(message.data);\n }\n\n return undefined;\n };\n\n window.addEventListener('message', onMessage);\n\n return () => {\n window.removeEventListener('message', onMessage);\n };\n}\n\nexport function useInternalPostMessageAPIListener<K extends keyof ActionMessageTypes>(\n action: K,\n callback: (data: ActionMessageTypes[K]) => void,\n) {\n React.useEffect(() => {\n return listenPostMessageActions(action, callback);\n }, [action, callback]);\n}\n"]}
1
+ {"version":3,"file":"usePostMessageAPI.js","sourceRoot":"../../../src","sources":["hooks/usePostMessageAPI.ts"],"names":[],"mappings":";;AAKA,oDAMC;AAED,4DAmBC;AAED,8EAOC;;AAzCD,qDAA+B;AAK/B,SAAgB,oBAAoB,CAChC,MAAS,EACT,IAA0B;IAE1B,MAAM,OAAO,GAAG,EAAC,MAAM,EAAE,IAAI,EAA6B,CAAC;IAC3D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC;AAED,SAAgB,wBAAwB,CACpC,MAAS,EACT,QAA+C;IAE/C,MAAM,SAAS,GAAG,CAAC,CAAe,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAgC,CAAC;QAEnD,IAAI,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACnD,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAE9C,OAAO,GAAG,EAAE;QACR,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC,CAAC;AACN,CAAC;AAED,SAAgB,iCAAiC,CAC7C,MAAS,EACT,QAA+C;IAE/C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,OAAO,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC3B,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {PostMessageAPIMessage} from '../common/types';\nimport {ActionMessageTypes, EventMessageTypes} from '../common/types/actions';\n\nexport function sendEventPostMessage<K extends keyof EventMessageTypes>(\n action: K,\n data: EventMessageTypes[K],\n) {\n const message = {action, data} as PostMessageAPIMessage<K>;\n window.parent.postMessage(message);\n}\n\nexport function listenPostMessageActions<K extends keyof ActionMessageTypes>(\n action: K,\n callback: (data: ActionMessageTypes[K]) => void,\n) {\n const onMessage = (e: MessageEvent) => {\n const message = e.data as PostMessageAPIMessage<K>;\n\n if ('action' in message && message.action === action) {\n return callback(message.data);\n }\n\n return undefined;\n };\n\n window.addEventListener('message', onMessage);\n\n return () => {\n window.removeEventListener('message', onMessage);\n };\n}\n\nexport function useInternalPostMessageAPIListener<K extends keyof ActionMessageTypes>(\n action: K,\n callback: (data: ActionMessageTypes[K]) => void,\n) {\n React.useEffect(() => {\n return listenPostMessageActions(action, callback);\n }, [action, callback]);\n}\n"]}
@@ -1,2 +1,2 @@
1
- import { BlockConfig } from "../../../common/types/index.js";
1
+ import { BlockConfig } from "../../common/types/index.js";
2
2
  export declare const blockConfig: BlockConfig;