@jotforminc/dnd-builder 2.9.18 → 2.9.19

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 (360) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/lib/cjs/components/AlignmentGuides.js +8 -10
  3. package/lib/cjs/components/AlignmentGuides.js.map +1 -1
  4. package/lib/cjs/components/Builder/ContextMenu.js +20 -22
  5. package/lib/cjs/components/Builder/ContextMenu.js.map +1 -1
  6. package/lib/cjs/components/Builder/DndWrapper.js +2 -4
  7. package/lib/cjs/components/Builder/DndWrapper.js.map +1 -1
  8. package/lib/cjs/components/Builder/Element.js +24 -24
  9. package/lib/cjs/components/Builder/Element.js.map +1 -1
  10. package/lib/cjs/components/Builder/Page.js +116 -48
  11. package/lib/cjs/components/Builder/Page.js.map +1 -1
  12. package/lib/cjs/components/Builder/PageActions.js +24 -26
  13. package/lib/cjs/components/Builder/PageActions.js.map +1 -1
  14. package/lib/cjs/components/Builder/PageAdder.js +6 -8
  15. package/lib/cjs/components/Builder/PageAdder.js.map +1 -1
  16. package/lib/cjs/components/Builder/Panel.js +8 -10
  17. package/lib/cjs/components/Builder/Panel.js.map +1 -1
  18. package/lib/cjs/components/Builder/Scene.js +37 -109
  19. package/lib/cjs/components/Builder/Scene.js.map +1 -1
  20. package/lib/cjs/components/Builder/SearchInput.js +6 -10
  21. package/lib/cjs/components/Builder/SearchInput.js.map +1 -1
  22. package/lib/cjs/components/Builder/Section.js +8 -10
  23. package/lib/cjs/components/Builder/Section.js.map +1 -1
  24. package/lib/cjs/components/Builder/Tabs.js +2 -4
  25. package/lib/cjs/components/Builder/Tabs.js.map +1 -1
  26. package/lib/cjs/components/Builder/ZoomControls.js +4 -6
  27. package/lib/cjs/components/Builder/ZoomControls.js.map +1 -1
  28. package/lib/cjs/components/DraggableItem/DraggableItem.js +126 -116
  29. package/lib/cjs/components/DraggableItem/DraggableItem.js.map +1 -1
  30. package/lib/cjs/components/DraggableItem/DraggableItemActions.js +12 -14
  31. package/lib/cjs/components/DraggableItem/DraggableItemActions.js.map +1 -1
  32. package/lib/cjs/components/DraggableItem/DraggableItemLayer.js +10 -10
  33. package/lib/cjs/components/DraggableItem/DraggableItemLayer.js.map +1 -1
  34. package/lib/cjs/components/Elements/Chart.js +3 -4
  35. package/lib/cjs/components/Elements/Chart.js.map +1 -1
  36. package/lib/cjs/components/Elements/Icon.js +3 -5
  37. package/lib/cjs/components/Elements/Icon.js.map +1 -1
  38. package/lib/cjs/components/Elements/Image.js +6 -8
  39. package/lib/cjs/components/Elements/Image.js.map +1 -1
  40. package/lib/cjs/components/Elements/RichText.js +7 -9
  41. package/lib/cjs/components/Elements/RichText.js.map +1 -1
  42. package/lib/cjs/components/Elements/Shapes.js +2 -4
  43. package/lib/cjs/components/Elements/Shapes.js.map +1 -1
  44. package/lib/cjs/components/ItemPositioner.js +6 -8
  45. package/lib/cjs/components/ItemPositioner.js.map +1 -1
  46. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js +16 -20
  47. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
  48. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js +2 -4
  49. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js.map +1 -1
  50. package/lib/cjs/components/Panels/AllSlidesPanel/PageActionsBar.js +8 -15
  51. package/lib/cjs/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
  52. package/lib/cjs/components/Panels/AllSlidesPanel/PageItem.js +64 -5
  53. package/lib/cjs/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
  54. package/lib/cjs/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +66 -0
  55. package/lib/cjs/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
  56. package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js +158 -36
  57. package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
  58. package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js +12 -14
  59. package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
  60. package/lib/cjs/components/Panels/LeftPanel/Elements.js +8 -10
  61. package/lib/cjs/components/Panels/LeftPanel/Elements.js.map +1 -1
  62. package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js +4 -6
  63. package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
  64. package/lib/cjs/components/Panels/RightPanel/RightPanel.js +10 -12
  65. package/lib/cjs/components/Panels/RightPanel/RightPanel.js.map +1 -1
  66. package/lib/cjs/components/Panels/RightPanel/Settings.js +13 -13
  67. package/lib/cjs/components/Panels/RightPanel/Settings.js.map +1 -1
  68. package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js +40 -40
  69. package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
  70. package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js +14 -16
  71. package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
  72. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js +19 -22
  73. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  74. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js +2 -4
  75. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
  76. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItem.js +69 -10
  77. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
  78. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +66 -0
  79. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
  80. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js +7 -6
  81. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
  82. package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js +172 -89
  83. package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
  84. package/lib/cjs/components/Presentation/Presentation.js +18 -20
  85. package/lib/cjs/components/Presentation/Presentation.js.map +1 -1
  86. package/lib/cjs/components/Presentation/PresentationBar/PageNavigation.js +8 -10
  87. package/lib/cjs/components/Presentation/PresentationBar/PageNavigation.js.map +1 -1
  88. package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js +6 -10
  89. package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
  90. package/lib/cjs/components/Presentation/PresentationBar/PresentationBar.js +26 -38
  91. package/lib/cjs/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
  92. package/lib/cjs/components/Presentation/PresentationBar/SelectZoom.js +8 -10
  93. package/lib/cjs/components/Presentation/PresentationBar/SelectZoom.js.map +1 -1
  94. package/lib/cjs/components/Presentation/PresentationWrapper.js +6 -8
  95. package/lib/cjs/components/Presentation/PresentationWrapper.js.map +1 -1
  96. package/lib/cjs/components/Presentation/ProgressBar.js +4 -6
  97. package/lib/cjs/components/Presentation/ProgressBar.js.map +1 -1
  98. package/lib/cjs/components/Preview/Preview.js +16 -18
  99. package/lib/cjs/components/Preview/Preview.js.map +1 -1
  100. package/lib/cjs/components/Preview/StaticItem.js +4 -6
  101. package/lib/cjs/components/Preview/StaticItem.js.map +1 -1
  102. package/lib/cjs/components/Preview/StaticPage.js +14 -16
  103. package/lib/cjs/components/Preview/StaticPage.js.map +1 -1
  104. package/lib/cjs/components/Preview/StaticScene.js +18 -19
  105. package/lib/cjs/components/Preview/StaticScene.js.map +1 -1
  106. package/lib/cjs/components/Print/Print.js +0 -7
  107. package/lib/cjs/components/Print/Print.js.map +1 -1
  108. package/lib/cjs/components/Print/PrintMode.js +10 -12
  109. package/lib/cjs/components/Print/PrintMode.js.map +1 -1
  110. package/lib/cjs/components/Print/PrintModeWithoutContext.js +12 -14
  111. package/lib/cjs/components/Print/PrintModeWithoutContext.js.map +1 -1
  112. package/lib/cjs/components/Settings/Button.js +8 -10
  113. package/lib/cjs/components/Settings/Button.js.map +1 -1
  114. package/lib/cjs/components/Settings/CheckboxGroup.js +8 -10
  115. package/lib/cjs/components/Settings/CheckboxGroup.js.map +1 -1
  116. package/lib/cjs/components/Settings/ColorPicker.js +8 -10
  117. package/lib/cjs/components/Settings/ColorPicker.js.map +1 -1
  118. package/lib/cjs/components/Settings/Dropdown.js +10 -12
  119. package/lib/cjs/components/Settings/Dropdown.js.map +1 -1
  120. package/lib/cjs/components/Settings/FieldSet.js +3 -4
  121. package/lib/cjs/components/Settings/FieldSet.js.map +1 -1
  122. package/lib/cjs/components/Settings/IconSelectBox.js +8 -10
  123. package/lib/cjs/components/Settings/IconSelectBox.js.map +1 -1
  124. package/lib/cjs/components/Settings/ImagePicker/EnterURL.js +4 -6
  125. package/lib/cjs/components/Settings/ImagePicker/EnterURL.js.map +1 -1
  126. package/lib/cjs/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +6 -8
  127. package/lib/cjs/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
  128. package/lib/cjs/components/Settings/ImageUrl.js +8 -10
  129. package/lib/cjs/components/Settings/ImageUrl.js.map +1 -1
  130. package/lib/cjs/components/Settings/LayoutSizeSettings.js +4 -6
  131. package/lib/cjs/components/Settings/LayoutSizeSettings.js.map +1 -1
  132. package/lib/cjs/components/Settings/Orientation.js +8 -10
  133. package/lib/cjs/components/Settings/Orientation.js.map +1 -1
  134. package/lib/cjs/components/Settings/PageLayer/LayerDragOverlay.js +130 -0
  135. package/lib/cjs/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
  136. package/lib/cjs/components/Settings/PageLayer/LayerItem.js +82 -32
  137. package/lib/cjs/components/Settings/PageLayer/LayerItem.js.map +1 -1
  138. package/lib/cjs/components/Settings/PageLayer/PageLayer.js +115 -50
  139. package/lib/cjs/components/Settings/PageLayer/PageLayer.js.map +1 -1
  140. package/lib/cjs/components/Settings/SegmentControl.js +8 -10
  141. package/lib/cjs/components/Settings/SegmentControl.js.map +1 -1
  142. package/lib/cjs/components/Settings/SelectBox.js +8 -10
  143. package/lib/cjs/components/Settings/SelectBox.js.map +1 -1
  144. package/lib/cjs/components/Settings/SettingsItemRenderer.js +9 -11
  145. package/lib/cjs/components/Settings/SettingsItemRenderer.js.map +1 -1
  146. package/lib/cjs/components/Settings/SizeSettings.js +4 -6
  147. package/lib/cjs/components/Settings/SizeSettings.js.map +1 -1
  148. package/lib/cjs/components/Settings/Slider.js +8 -10
  149. package/lib/cjs/components/Settings/Slider.js.map +1 -1
  150. package/lib/cjs/components/Settings/Switch.js +8 -10
  151. package/lib/cjs/components/Settings/Switch.js.map +1 -1
  152. package/lib/cjs/components/Settings/Textbox.js +12 -14
  153. package/lib/cjs/components/Settings/Textbox.js.map +1 -1
  154. package/lib/cjs/components/Settings/Toggle.js +8 -10
  155. package/lib/cjs/components/Settings/Toggle.js.map +1 -1
  156. package/lib/cjs/components/StaticElements/StaticRichText.js +26 -30
  157. package/lib/cjs/components/StaticElements/StaticRichText.js.map +1 -1
  158. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -4
  159. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
  160. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js +4 -6
  161. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js.map +1 -1
  162. package/lib/cjs/components/TextEditor/QuillEditor.js +0 -6
  163. package/lib/cjs/components/TextEditor/QuillEditor.js.map +1 -1
  164. package/lib/cjs/components/TextEditor/TextEditor.js +8 -10
  165. package/lib/cjs/components/TextEditor/TextEditor.js.map +1 -1
  166. package/lib/cjs/components/withClickOutside.js +4 -6
  167. package/lib/cjs/components/withClickOutside.js.map +1 -1
  168. package/lib/cjs/components/withZoomPanPinchHOC.js +2 -4
  169. package/lib/cjs/components/withZoomPanPinchHOC.js.map +1 -1
  170. package/lib/cjs/styles/_jfReportsReportItem.scss +1 -1
  171. package/lib/cjs/utils/builderContext.js +12 -24
  172. package/lib/cjs/utils/builderContext.js.map +1 -1
  173. package/lib/cjs/utils/functions.js +4 -0
  174. package/lib/cjs/utils/functions.js.map +1 -1
  175. package/lib/cjs/utils/presentationContext.js +5 -10
  176. package/lib/cjs/utils/presentationContext.js.map +1 -1
  177. package/lib/cjs/utils/propContext.js +7 -14
  178. package/lib/cjs/utils/propContext.js.map +1 -1
  179. package/lib/esm/components/AlignmentGuides.js +8 -10
  180. package/lib/esm/components/AlignmentGuides.js.map +1 -1
  181. package/lib/esm/components/Builder/ContextMenu.js +20 -22
  182. package/lib/esm/components/Builder/ContextMenu.js.map +1 -1
  183. package/lib/esm/components/Builder/DndWrapper.js +2 -4
  184. package/lib/esm/components/Builder/DndWrapper.js.map +1 -1
  185. package/lib/esm/components/Builder/Element.js +24 -24
  186. package/lib/esm/components/Builder/Element.js.map +1 -1
  187. package/lib/esm/components/Builder/Page.js +119 -51
  188. package/lib/esm/components/Builder/Page.js.map +1 -1
  189. package/lib/esm/components/Builder/PageActions.js +24 -26
  190. package/lib/esm/components/Builder/PageActions.js.map +1 -1
  191. package/lib/esm/components/Builder/PageAdder.js +6 -8
  192. package/lib/esm/components/Builder/PageAdder.js.map +1 -1
  193. package/lib/esm/components/Builder/Panel.js +8 -10
  194. package/lib/esm/components/Builder/Panel.js.map +1 -1
  195. package/lib/esm/components/Builder/Scene.js +39 -111
  196. package/lib/esm/components/Builder/Scene.js.map +1 -1
  197. package/lib/esm/components/Builder/SearchInput.js +6 -10
  198. package/lib/esm/components/Builder/SearchInput.js.map +1 -1
  199. package/lib/esm/components/Builder/Section.js +8 -10
  200. package/lib/esm/components/Builder/Section.js.map +1 -1
  201. package/lib/esm/components/Builder/Tabs.js +2 -4
  202. package/lib/esm/components/Builder/Tabs.js.map +1 -1
  203. package/lib/esm/components/Builder/ZoomControls.js +4 -6
  204. package/lib/esm/components/Builder/ZoomControls.js.map +1 -1
  205. package/lib/esm/components/DraggableItem/DraggableItem.js +126 -116
  206. package/lib/esm/components/DraggableItem/DraggableItem.js.map +1 -1
  207. package/lib/esm/components/DraggableItem/DraggableItemActions.js +12 -14
  208. package/lib/esm/components/DraggableItem/DraggableItemActions.js.map +1 -1
  209. package/lib/esm/components/DraggableItem/DraggableItemLayer.js +10 -10
  210. package/lib/esm/components/DraggableItem/DraggableItemLayer.js.map +1 -1
  211. package/lib/esm/components/Elements/Chart.js +3 -4
  212. package/lib/esm/components/Elements/Chart.js.map +1 -1
  213. package/lib/esm/components/Elements/Icon.js +3 -5
  214. package/lib/esm/components/Elements/Icon.js.map +1 -1
  215. package/lib/esm/components/Elements/Image.js +6 -8
  216. package/lib/esm/components/Elements/Image.js.map +1 -1
  217. package/lib/esm/components/Elements/RichText.js +7 -9
  218. package/lib/esm/components/Elements/RichText.js.map +1 -1
  219. package/lib/esm/components/Elements/Shapes.js +2 -4
  220. package/lib/esm/components/Elements/Shapes.js.map +1 -1
  221. package/lib/esm/components/ItemPositioner.js +6 -8
  222. package/lib/esm/components/ItemPositioner.js.map +1 -1
  223. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js +16 -20
  224. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
  225. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js +2 -4
  226. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js.map +1 -1
  227. package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js +8 -15
  228. package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
  229. package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js +64 -6
  230. package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
  231. package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +60 -0
  232. package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
  233. package/lib/esm/components/Panels/AllSlidesPanel/PageList.js +155 -37
  234. package/lib/esm/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
  235. package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js +12 -14
  236. package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
  237. package/lib/esm/components/Panels/LeftPanel/Elements.js +8 -10
  238. package/lib/esm/components/Panels/LeftPanel/Elements.js.map +1 -1
  239. package/lib/esm/components/Panels/LeftPanel/LeftPanel.js +4 -6
  240. package/lib/esm/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
  241. package/lib/esm/components/Panels/RightPanel/RightPanel.js +10 -12
  242. package/lib/esm/components/Panels/RightPanel/RightPanel.js.map +1 -1
  243. package/lib/esm/components/Panels/RightPanel/Settings.js +13 -13
  244. package/lib/esm/components/Panels/RightPanel/Settings.js.map +1 -1
  245. package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js +40 -40
  246. package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
  247. package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js +14 -16
  248. package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
  249. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js +19 -22
  250. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  251. package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js +2 -4
  252. package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
  253. package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js +66 -11
  254. package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
  255. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +60 -0
  256. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
  257. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js +7 -6
  258. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
  259. package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js +174 -91
  260. package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
  261. package/lib/esm/components/Presentation/Presentation.js +18 -20
  262. package/lib/esm/components/Presentation/Presentation.js.map +1 -1
  263. package/lib/esm/components/Presentation/PresentationBar/PageNavigation.js +8 -10
  264. package/lib/esm/components/Presentation/PresentationBar/PageNavigation.js.map +1 -1
  265. package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js +6 -10
  266. package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
  267. package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js +26 -38
  268. package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
  269. package/lib/esm/components/Presentation/PresentationBar/SelectZoom.js +8 -10
  270. package/lib/esm/components/Presentation/PresentationBar/SelectZoom.js.map +1 -1
  271. package/lib/esm/components/Presentation/PresentationWrapper.js +6 -8
  272. package/lib/esm/components/Presentation/PresentationWrapper.js.map +1 -1
  273. package/lib/esm/components/Presentation/ProgressBar.js +4 -6
  274. package/lib/esm/components/Presentation/ProgressBar.js.map +1 -1
  275. package/lib/esm/components/Preview/Preview.js +16 -18
  276. package/lib/esm/components/Preview/Preview.js.map +1 -1
  277. package/lib/esm/components/Preview/StaticItem.js +4 -6
  278. package/lib/esm/components/Preview/StaticItem.js.map +1 -1
  279. package/lib/esm/components/Preview/StaticPage.js +14 -16
  280. package/lib/esm/components/Preview/StaticPage.js.map +1 -1
  281. package/lib/esm/components/Preview/StaticScene.js +18 -19
  282. package/lib/esm/components/Preview/StaticScene.js.map +1 -1
  283. package/lib/esm/components/Print/Print.js +0 -7
  284. package/lib/esm/components/Print/Print.js.map +1 -1
  285. package/lib/esm/components/Print/PrintMode.js +10 -12
  286. package/lib/esm/components/Print/PrintMode.js.map +1 -1
  287. package/lib/esm/components/Print/PrintModeWithoutContext.js +12 -14
  288. package/lib/esm/components/Print/PrintModeWithoutContext.js.map +1 -1
  289. package/lib/esm/components/Settings/Button.js +8 -10
  290. package/lib/esm/components/Settings/Button.js.map +1 -1
  291. package/lib/esm/components/Settings/CheckboxGroup.js +8 -10
  292. package/lib/esm/components/Settings/CheckboxGroup.js.map +1 -1
  293. package/lib/esm/components/Settings/ColorPicker.js +8 -10
  294. package/lib/esm/components/Settings/ColorPicker.js.map +1 -1
  295. package/lib/esm/components/Settings/Dropdown.js +10 -12
  296. package/lib/esm/components/Settings/Dropdown.js.map +1 -1
  297. package/lib/esm/components/Settings/FieldSet.js +3 -4
  298. package/lib/esm/components/Settings/FieldSet.js.map +1 -1
  299. package/lib/esm/components/Settings/IconSelectBox.js +8 -10
  300. package/lib/esm/components/Settings/IconSelectBox.js.map +1 -1
  301. package/lib/esm/components/Settings/ImagePicker/EnterURL.js +4 -6
  302. package/lib/esm/components/Settings/ImagePicker/EnterURL.js.map +1 -1
  303. package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +6 -8
  304. package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
  305. package/lib/esm/components/Settings/ImageUrl.js +8 -10
  306. package/lib/esm/components/Settings/ImageUrl.js.map +1 -1
  307. package/lib/esm/components/Settings/LayoutSizeSettings.js +4 -6
  308. package/lib/esm/components/Settings/LayoutSizeSettings.js.map +1 -1
  309. package/lib/esm/components/Settings/Orientation.js +8 -10
  310. package/lib/esm/components/Settings/Orientation.js.map +1 -1
  311. package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js +123 -0
  312. package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
  313. package/lib/esm/components/Settings/PageLayer/LayerItem.js +83 -34
  314. package/lib/esm/components/Settings/PageLayer/LayerItem.js.map +1 -1
  315. package/lib/esm/components/Settings/PageLayer/PageLayer.js +117 -52
  316. package/lib/esm/components/Settings/PageLayer/PageLayer.js.map +1 -1
  317. package/lib/esm/components/Settings/SegmentControl.js +8 -10
  318. package/lib/esm/components/Settings/SegmentControl.js.map +1 -1
  319. package/lib/esm/components/Settings/SelectBox.js +8 -10
  320. package/lib/esm/components/Settings/SelectBox.js.map +1 -1
  321. package/lib/esm/components/Settings/SettingsItemRenderer.js +9 -11
  322. package/lib/esm/components/Settings/SettingsItemRenderer.js.map +1 -1
  323. package/lib/esm/components/Settings/SizeSettings.js +4 -6
  324. package/lib/esm/components/Settings/SizeSettings.js.map +1 -1
  325. package/lib/esm/components/Settings/Slider.js +8 -10
  326. package/lib/esm/components/Settings/Slider.js.map +1 -1
  327. package/lib/esm/components/Settings/Switch.js +8 -10
  328. package/lib/esm/components/Settings/Switch.js.map +1 -1
  329. package/lib/esm/components/Settings/Textbox.js +12 -14
  330. package/lib/esm/components/Settings/Textbox.js.map +1 -1
  331. package/lib/esm/components/Settings/Toggle.js +8 -10
  332. package/lib/esm/components/Settings/Toggle.js.map +1 -1
  333. package/lib/esm/components/StaticElements/StaticRichText.js +26 -30
  334. package/lib/esm/components/StaticElements/StaticRichText.js.map +1 -1
  335. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -4
  336. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
  337. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js +4 -6
  338. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js.map +1 -1
  339. package/lib/esm/components/TextEditor/QuillEditor.js +0 -6
  340. package/lib/esm/components/TextEditor/QuillEditor.js.map +1 -1
  341. package/lib/esm/components/TextEditor/TextEditor.js +8 -10
  342. package/lib/esm/components/TextEditor/TextEditor.js.map +1 -1
  343. package/lib/esm/components/withClickOutside.js +4 -6
  344. package/lib/esm/components/withClickOutside.js.map +1 -1
  345. package/lib/esm/components/withZoomPanPinchHOC.js +2 -4
  346. package/lib/esm/components/withZoomPanPinchHOC.js.map +1 -1
  347. package/lib/esm/styles/_jfReportsReportItem.scss +1 -1
  348. package/lib/esm/utils/builderContext.js +12 -24
  349. package/lib/esm/utils/builderContext.js.map +1 -1
  350. package/lib/esm/utils/functions.js +4 -1
  351. package/lib/esm/utils/functions.js.map +1 -1
  352. package/lib/esm/utils/presentationContext.js +5 -10
  353. package/lib/esm/utils/presentationContext.js.map +1 -1
  354. package/lib/esm/utils/propContext.js +7 -14
  355. package/lib/esm/utils/propContext.js.map +1 -1
  356. package/package.json +10 -8
  357. package/lib/cjs/components/ResponsiveContent.js +0 -15
  358. package/lib/cjs/components/ResponsiveContent.js.map +0 -1
  359. package/lib/esm/components/ResponsiveContent.js +0 -13
  360. package/lib/esm/components/ResponsiveContent.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ContextMenu.js","sources":["../../../../src/components/Builder/ContextMenu.js"],"sourcesContent":["import {\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport PropTypes from 'prop-types';\nimport { useEventListener, useTranslatedTexts } from '../../utils/hooks';\nimport {\n collisionCheck,\n getContainerPositions,\n moveArrayItem,\n} from '../../utils/functions';\nimport * as icons from '../../utils/icons';\n\nimport withClickOutside from '../withClickOutside';\n\nconst ContextMenu = ({\n height,\n item,\n items,\n onAnEventTrigger,\n onClickOutside,\n onItemChange,\n onItemRemove,\n onPageChange,\n position,\n width,\n}) => {\n const [positions, setPositions] = useState(position);\n const container = useRef(null);\n const itemIndex = items.findIndex(_item => _item.id === item.id);\n // Will be mutated.\n const orderArray = items.map(_item => _item.id);\n\n const removeFunc = () => {\n // TODO :: should listen to scroll event, not wheel\n onClickOutside();\n };\n\n useEventListener('wheel', removeFunc);\n\n useLayoutEffect(() => {\n const newPosition = getContainerPositions(container.current, positions);\n setPositions({\n x: newPosition.x,\n y: newPosition.y,\n });\n }, []);\n\n const moveToFront = () => {\n if (items.length !== itemIndex + 1) {\n moveArrayItem(orderArray, itemIndex, items.length - 1);\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveToBack = () => {\n if (itemIndex !== 0) {\n moveArrayItem(orderArray, itemIndex, 0);\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveForward = () => {\n if (items.length !== itemIndex + 1) {\n const colluddedItemIndex = collisionCheck(item, items, itemIndex, 1);\n if (colluddedItemIndex !== null) {\n moveArrayItem(orderArray, itemIndex, colluddedItemIndex);\n } else {\n moveArrayItem(orderArray, itemIndex, itemIndex + 1);\n }\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveBackward = () => {\n if (itemIndex !== 0) {\n const colluddedItemIndex = collisionCheck(item, items, itemIndex, -1);\n if (colluddedItemIndex) {\n moveArrayItem(orderArray, itemIndex, colluddedItemIndex);\n } else {\n moveArrayItem(orderArray, itemIndex, itemIndex - 1);\n }\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n\n onClickOutside();\n };\n\n const deleteItem = () => {\n onItemRemove(item);\n onClickOutside();\n onAnEventTrigger('removeItem', item.itemType);\n };\n\n const lockOrUnlockItem = () => {\n onItemChange({ id: item.id }, { isLocked: item.isLocked ? false : true });\n onClickOutside();\n };\n\n const fitToPage = () => {\n let _height = height;\n let _width = width;\n // Keep image ratio on fit\n if (item.itemType === 'image') {\n if (item.height > item.width) {\n _width = (item.width * _height) / item.height;\n } else if (item.width > item.height) {\n _height = (item.height * _width) / item.width;\n }\n }\n\n onItemChange({ id: item.id }, {\n height: _height,\n left: 0,\n top: 0,\n width: _width,\n });\n\n onClickOutside();\n onAnEventTrigger('fitToPage', item.itemType);\n };\n\n const {\n DELETE, FIT_TO_PAGE, LOCK_ITEM,\n MOVE_BACKWARDS, MOVE_FORWARDS,\n MOVE_TO_BACK, MOVE_TO_FRONT, UNLOCK_ITEM,\n } = useTranslatedTexts();\n\n const menuItems = [\n { func: moveToFront, icon: <icons.moveToFront />, text: MOVE_TO_FRONT },\n { func: moveForward, icon: <icons.moveToForward />, text: MOVE_FORWARDS },\n { func: moveBackward, icon: <icons.moveToBackward />, text: MOVE_BACKWARDS },\n { func: moveToBack, icon: <icons.moveToBack />, text: MOVE_TO_BACK },\n {\n func: lockOrUnlockItem,\n icon: item.isLocked ? (\n <icons.unlock className=\"icon-lock\" />\n ) : (\n <icons.lock className=\"icon-lock\" />\n ),\n text: item.isLocked ? UNLOCK_ITEM : LOCK_ITEM,\n },\n {\n func: fitToPage, icon: <icons.enterFullscreen className=\"icon-lock\" />, text: FIT_TO_PAGE,\n },\n {\n class: ' isDanger', func: deleteItem, icon: <icons.trash />, text: DELETE,\n },\n ];\n\n return (\n <div\n ref={container}\n className=\"contextMenu-wrapper\"\n style={{\n left: positions.x,\n top: positions.y,\n }}\n >\n {menuItems.map(menuItem => {\n const btnClass = `contextMenu-button jfReportButton${menuItem.class ? menuItem.class : ''}`;\n return (\n <button\n key={menuItem.text}\n className={btnClass}\n onClick={menuItem.func}\n type=\"button\"\n >\n <span className=\"contextMenu-icon\">\n {menuItem.icon}\n </span>\n {menuItem.text}\n </button>\n );\n })}\n </div>\n );\n};\n\nContextMenu.propTypes = {\n height: PropTypes.number,\n item: PropTypes.shape({\n height: PropTypes.number,\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n itemType: PropTypes.string,\n left: PropTypes.number,\n pageID: PropTypes.string,\n top: PropTypes.number,\n width: PropTypes.number,\n }),\n items: PropTypes.arrayOf(PropTypes.shape({\n height: PropTypes.number,\n // id: PropTypes.string,\n left: PropTypes.number,\n top: PropTypes.number,\n width: PropTypes.number,\n })),\n onAnEventTrigger: PropTypes.func,\n onClickOutside: PropTypes.func,\n onItemChange: PropTypes.func,\n onItemRemove: PropTypes.func,\n onPageChange: PropTypes.func,\n position: PropTypes.shape({}),\n width: PropTypes.number,\n};\n\nContextMenu.defaultProps = {\n height: 1,\n item: {},\n items: [],\n onAnEventTrigger: () => {},\n onClickOutside: () => {},\n onItemChange: () => {},\n onItemRemove: () => {},\n onPageChange: () => {},\n position: {},\n width: 1,\n};\n\nconst PortalContext = props => createPortal(<ContextMenu {...props} />, document.body);\n\nexport default withClickOutside(PortalContext);\n"],"names":["ContextMenu","height","item","items","onAnEventTrigger","onClickOutside","onItemChange","onItemRemove","onPageChange","position","width","useState","positions","setPositions","container","useRef","itemIndex","findIndex","_item","id","orderArray","map","removeFunc","useEventListener","useLayoutEffect","newPosition","getContainerPositions","current","x","y","moveToFront","length","moveArrayItem","pageID","JSON","stringify","moveToBack","moveForward","colluddedItemIndex","collisionCheck","moveBackward","deleteItem","itemType","lockOrUnlockItem","isLocked","fitToPage","_height","_width","left","top","useTranslatedTexts","DELETE","FIT_TO_PAGE","LOCK_ITEM","MOVE_BACKWARDS","MOVE_FORWARDS","MOVE_TO_BACK","MOVE_TO_FRONT","UNLOCK_ITEM","menuItems","func","icon","_jsx","icons.moveToFront","text","icons.moveToForward","icons.moveToBackward","icons.moveToBack","icons.unlock","icons.lock","icons.enterFullscreen","class","icons.trash","menuItem","btnClass","_jsxs","propTypes","PropTypes","number","shape","string","bool","arrayOf","defaultProps","PortalContext","props","createPortal","document","body","withClickOutside"],"mappings":"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"}
1
+ {"version":3,"file":"ContextMenu.js","sources":["../../../../src/components/Builder/ContextMenu.js"],"sourcesContent":["import {\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport PropTypes from 'prop-types';\nimport { useEventListener, useTranslatedTexts } from '../../utils/hooks';\nimport {\n collisionCheck,\n getContainerPositions,\n moveArrayItem,\n} from '../../utils/functions';\nimport * as icons from '../../utils/icons';\n\nimport withClickOutside from '../withClickOutside';\n\nconst ContextMenu = ({\n height = 1,\n item = {},\n items = [],\n onAnEventTrigger = () => {},\n onClickOutside = () => {},\n onItemChange = () => {},\n onItemRemove = () => {},\n onPageChange = () => {},\n position = {},\n width = 1,\n}) => {\n const [positions, setPositions] = useState(position);\n const container = useRef(null);\n const itemIndex = items.findIndex(_item => _item.id === item.id);\n // Will be mutated.\n const orderArray = items.map(_item => _item.id);\n\n const removeFunc = () => {\n // TODO :: should listen to scroll event, not wheel\n onClickOutside();\n };\n\n useEventListener('wheel', removeFunc);\n\n useLayoutEffect(() => {\n const newPosition = getContainerPositions(container.current, positions);\n setPositions({\n x: newPosition.x,\n y: newPosition.y,\n });\n }, []);\n\n const moveToFront = () => {\n if (items.length !== itemIndex + 1) {\n moveArrayItem(orderArray, itemIndex, items.length - 1);\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveToBack = () => {\n if (itemIndex !== 0) {\n moveArrayItem(orderArray, itemIndex, 0);\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveForward = () => {\n if (items.length !== itemIndex + 1) {\n const colluddedItemIndex = collisionCheck(item, items, itemIndex, 1);\n if (colluddedItemIndex !== null) {\n moveArrayItem(orderArray, itemIndex, colluddedItemIndex);\n } else {\n moveArrayItem(orderArray, itemIndex, itemIndex + 1);\n }\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveBackward = () => {\n if (itemIndex !== 0) {\n const colluddedItemIndex = collisionCheck(item, items, itemIndex, -1);\n if (colluddedItemIndex) {\n moveArrayItem(orderArray, itemIndex, colluddedItemIndex);\n } else {\n moveArrayItem(orderArray, itemIndex, itemIndex - 1);\n }\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n\n onClickOutside();\n };\n\n const deleteItem = () => {\n onItemRemove(item);\n onClickOutside();\n onAnEventTrigger('removeItem', item.itemType);\n };\n\n const lockOrUnlockItem = () => {\n onItemChange({ id: item.id }, { isLocked: item.isLocked ? false : true });\n onClickOutside();\n };\n\n const fitToPage = () => {\n let _height = height;\n let _width = width;\n // Keep image ratio on fit\n if (item.itemType === 'image') {\n if (item.height > item.width) {\n _width = (item.width * _height) / item.height;\n } else if (item.width > item.height) {\n _height = (item.height * _width) / item.width;\n }\n }\n\n onItemChange({ id: item.id }, {\n height: _height,\n left: 0,\n top: 0,\n width: _width,\n });\n\n onClickOutside();\n onAnEventTrigger('fitToPage', item.itemType);\n };\n\n const {\n DELETE, FIT_TO_PAGE, LOCK_ITEM,\n MOVE_BACKWARDS, MOVE_FORWARDS,\n MOVE_TO_BACK, MOVE_TO_FRONT, UNLOCK_ITEM,\n } = useTranslatedTexts();\n\n const menuItems = [\n { func: moveToFront, icon: <icons.moveToFront />, text: MOVE_TO_FRONT },\n { func: moveForward, icon: <icons.moveToForward />, text: MOVE_FORWARDS },\n { func: moveBackward, icon: <icons.moveToBackward />, text: MOVE_BACKWARDS },\n { func: moveToBack, icon: <icons.moveToBack />, text: MOVE_TO_BACK },\n {\n func: lockOrUnlockItem,\n icon: item.isLocked ? (\n <icons.unlock className=\"icon-lock\" />\n ) : (\n <icons.lock className=\"icon-lock\" />\n ),\n text: item.isLocked ? UNLOCK_ITEM : LOCK_ITEM,\n },\n {\n func: fitToPage, icon: <icons.enterFullscreen className=\"icon-lock\" />, text: FIT_TO_PAGE,\n },\n {\n class: ' isDanger', func: deleteItem, icon: <icons.trash />, text: DELETE,\n },\n ];\n\n return (\n <div\n ref={container}\n className=\"contextMenu-wrapper\"\n style={{\n left: positions.x,\n top: positions.y,\n }}\n >\n {menuItems.map(menuItem => {\n const btnClass = `contextMenu-button jfReportButton${menuItem.class ? menuItem.class : ''}`;\n return (\n <button\n key={menuItem.text}\n className={btnClass}\n onClick={menuItem.func}\n type=\"button\"\n >\n <span className=\"contextMenu-icon\">\n {menuItem.icon}\n </span>\n {menuItem.text}\n </button>\n );\n })}\n </div>\n );\n};\n\nContextMenu.propTypes = {\n height: PropTypes.number,\n item: PropTypes.shape({\n height: PropTypes.number,\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n itemType: PropTypes.string,\n left: PropTypes.number,\n pageID: PropTypes.string,\n top: PropTypes.number,\n width: PropTypes.number,\n }),\n items: PropTypes.arrayOf(PropTypes.shape({\n height: PropTypes.number,\n // id: PropTypes.string,\n left: PropTypes.number,\n top: PropTypes.number,\n width: PropTypes.number,\n })),\n onAnEventTrigger: PropTypes.func,\n onClickOutside: PropTypes.func,\n onItemChange: PropTypes.func,\n onItemRemove: PropTypes.func,\n onPageChange: PropTypes.func,\n position: PropTypes.shape({}),\n width: PropTypes.number,\n};\n\nconst PortalContext = props => createPortal(<ContextMenu {...props} />, document.body);\n\nexport default withClickOutside(PortalContext);\n"],"names":["ContextMenu","height","item","items","onAnEventTrigger","onClickOutside","onItemChange","onItemRemove","onPageChange","position","width","useState","positions","setPositions","container","useRef","itemIndex","findIndex","_item","id","orderArray","map","removeFunc","useEventListener","useLayoutEffect","newPosition","getContainerPositions","current","x","y","moveToFront","length","moveArrayItem","pageID","JSON","stringify","moveToBack","moveForward","colluddedItemIndex","collisionCheck","moveBackward","deleteItem","itemType","lockOrUnlockItem","isLocked","fitToPage","_height","_width","left","top","useTranslatedTexts","DELETE","FIT_TO_PAGE","LOCK_ITEM","MOVE_BACKWARDS","MOVE_FORWARDS","MOVE_TO_BACK","MOVE_TO_FRONT","UNLOCK_ITEM","menuItems","func","icon","_jsx","icons.moveToFront","text","icons.moveToForward","icons.moveToBackward","icons.moveToBack","icons.unlock","icons.lock","icons.enterFullscreen","class","icons.trash","menuItem","btnClass","_jsxs","propTypes","PropTypes","number","shape","string","bool","arrayOf","PortalContext","props","createPortal","document","body","withClickOutside"],"mappings":"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"}
@@ -23,7 +23,8 @@ var MultiBackendOptions = {
23
23
  };
24
24
 
25
25
  var DndWrapper = function DndWrapper(_ref) {
26
- var children = _ref.children;
26
+ var _ref$children = _ref.children,
27
+ children = _ref$children === void 0 ? null : _ref$children;
27
28
  if (!children) return null;
28
29
  return /*#__PURE__*/jsx(DndProvider, {
29
30
  backend: MultiBackend,
@@ -35,9 +36,6 @@ var DndWrapper = function DndWrapper(_ref) {
35
36
  DndWrapper.propTypes = {
36
37
  children: PropTypes.node
37
38
  };
38
- DndWrapper.defaultProps = {
39
- children: null
40
- };
41
39
 
42
40
  export default DndWrapper;
43
41
  //# sourceMappingURL=DndWrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DndWrapper.js","sources":["../../../../src/components/Builder/DndWrapper.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { MouseTransition, TouchTransition, MultiBackend } from 'react-dnd-multi-backend';\nimport { TouchBackend } from 'react-dnd-touch-backend';\n\nconst MultiBackendOptions = {\n backends: [\n {\n backend: HTML5Backend,\n id: 'html5',\n transition: MouseTransition,\n },\n {\n backend: TouchBackend,\n id: 'touch',\n options: {\n delayTouchStart: 135,\n enableMouseEvents: true,\n },\n preview: true,\n transition: TouchTransition,\n },\n ],\n};\n\nconst DndWrapper = ({ children }) => {\n if (!children) return null;\n\n return (\n <DndProvider\n backend={MultiBackend}\n options={MultiBackendOptions}\n >\n {children}\n </DndProvider>\n );\n};\n\nDndWrapper.propTypes = {\n children: PropTypes.node,\n};\n\nDndWrapper.defaultProps = {\n children: null,\n};\n\nexport default DndWrapper;\n"],"names":["MultiBackendOptions","backends","backend","HTML5Backend","id","transition","MouseTransition","TouchBackend","options","delayTouchStart","enableMouseEvents","preview","TouchTransition","DndWrapper","children","_jsx","MultiBackend","propTypes","PropTypes","node","defaultProps"],"mappings":";;;;;;;AAMA,IAAMA,mBAAmB,GAAG;AAC1BC,EAAAA,QAAQ,EAAE,CACR;AACEC,IAAAA,OAAO,EAAEC,YADX;AAEEC,IAAAA,EAAE,EAAE,OAFN;AAGEC,IAAAA,UAAU,EAAEC;AAHd,GADQ,EAMR;AACEJ,IAAAA,OAAO,EAAEK,YADX;AAEEH,IAAAA,EAAE,EAAE,OAFN;AAGEI,IAAAA,OAAO,EAAE;AACPC,MAAAA,eAAe,EAAE,GADV;AAEPC,MAAAA,iBAAiB,EAAE;AAFZ,KAHX;AAOEC,IAAAA,OAAO,EAAE,IAPX;AAQEN,IAAAA,UAAU,EAAEO;AARd,GANQ;AADgB,CAA5B;;IAoBMC,UAAU,GAAG,SAAbA,UAAa,OAAkB;AAAA,MAAfC,QAAe,QAAfA,QAAe;AACnC,MAAI,CAACA,QAAL,EAAe,OAAO,IAAP;AAEf,sBACEC,IAAC,WAAD;AACE,IAAA,OAAO,EAAEC,YADX;AAEE,IAAA,OAAO,EAAEhB,mBAFX;AAAA,cAIGc;AAJH,IADF;AAQD;;AAEDD,UAAU,CAACI,SAAX,GAAuB;AACrBH,EAAAA,QAAQ,EAAEI,SAAS,CAACC;AADC,CAAvB;AAIAN,UAAU,CAACO,YAAX,GAA0B;AACxBN,EAAAA,QAAQ,EAAE;AADc,CAA1B;;;;"}
1
+ {"version":3,"file":"DndWrapper.js","sources":["../../../../src/components/Builder/DndWrapper.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { MouseTransition, TouchTransition, MultiBackend } from 'react-dnd-multi-backend';\nimport { TouchBackend } from 'react-dnd-touch-backend';\n\nconst MultiBackendOptions = {\n backends: [\n {\n backend: HTML5Backend,\n id: 'html5',\n transition: MouseTransition,\n },\n {\n backend: TouchBackend,\n id: 'touch',\n options: {\n delayTouchStart: 135,\n enableMouseEvents: true,\n },\n preview: true,\n transition: TouchTransition,\n },\n ],\n};\n\nconst DndWrapper = ({ children = null }) => {\n if (!children) return null;\n\n return (\n <DndProvider\n backend={MultiBackend}\n options={MultiBackendOptions}\n >\n {children}\n </DndProvider>\n );\n};\n\nDndWrapper.propTypes = {\n children: PropTypes.node,\n};\n\nexport default DndWrapper;\n"],"names":["MultiBackendOptions","backends","backend","HTML5Backend","id","transition","MouseTransition","TouchBackend","options","delayTouchStart","enableMouseEvents","preview","TouchTransition","DndWrapper","children","_jsx","MultiBackend","propTypes","PropTypes","node"],"mappings":";;;;;;;AAMA,IAAMA,mBAAmB,GAAG;AAC1BC,EAAAA,QAAQ,EAAE,CACR;AACEC,IAAAA,OAAO,EAAEC,YADX;AAEEC,IAAAA,EAAE,EAAE,OAFN;AAGEC,IAAAA,UAAU,EAAEC;AAHd,GADQ,EAMR;AACEJ,IAAAA,OAAO,EAAEK,YADX;AAEEH,IAAAA,EAAE,EAAE,OAFN;AAGEI,IAAAA,OAAO,EAAE;AACPC,MAAAA,eAAe,EAAE,GADV;AAEPC,MAAAA,iBAAiB,EAAE;AAFZ,KAHX;AAOEC,IAAAA,OAAO,EAAE,IAPX;AAQEN,IAAAA,UAAU,EAAEO;AARd,GANQ;AADgB,CAA5B;;IAoBMC,UAAU,GAAG,SAAbA,UAAa,OAAyB;AAAA,2BAAtBC,QAAsB;AAAA,MAAtBA,QAAsB,8BAAX,IAAW;AAC1C,MAAI,CAACA,QAAL,EAAe,OAAO,IAAP;AAEf,sBACEC,IAAC,WAAD;AACE,IAAA,OAAO,EAAEC,YADX;AAEE,IAAA,OAAO,EAAEhB,mBAFX;AAAA,cAIGc;AAJH,IADF;AAQD;;AAEDD,UAAU,CAACI,SAAX,GAAuB;AACrBH,EAAAA,QAAQ,EAAEI,SAAS,CAACC;AADC,CAAvB;;;;"}
@@ -34,16 +34,26 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
34
34
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
35
35
 
36
36
  var Element = function Element(_ref) {
37
- var acceptedItems = _ref.acceptedItems,
38
- icon = _ref.icon,
39
- iconType = _ref.iconType,
40
- itemType = _ref.itemType,
41
- onAnEventTrigger = _ref.onAnEventTrigger,
42
- onItemAdd = _ref.onItemAdd,
43
- setActiveElement = _ref.setActiveElement,
44
- setIsRightPanelOpen = _ref.setIsRightPanelOpen,
45
- title = _ref.title,
46
- zoom = _ref.zoom,
37
+ var _ref$acceptedItems = _ref.acceptedItems,
38
+ acceptedItems = _ref$acceptedItems === void 0 ? {} : _ref$acceptedItems,
39
+ _ref$icon = _ref.icon,
40
+ icon = _ref$icon === void 0 ? null : _ref$icon,
41
+ _ref$iconType = _ref.iconType,
42
+ iconType = _ref$iconType === void 0 ? '' : _ref$iconType,
43
+ _ref$itemType = _ref.itemType,
44
+ itemType = _ref$itemType === void 0 ? '' : _ref$itemType,
45
+ _ref$onAnEventTrigger = _ref.onAnEventTrigger,
46
+ onAnEventTrigger = _ref$onAnEventTrigger === void 0 ? function () {} : _ref$onAnEventTrigger,
47
+ _ref$onItemAdd = _ref.onItemAdd,
48
+ onItemAdd = _ref$onItemAdd === void 0 ? function () {} : _ref$onItemAdd,
49
+ _ref$setActiveElement = _ref.setActiveElement,
50
+ setActiveElement = _ref$setActiveElement === void 0 ? function () {} : _ref$setActiveElement,
51
+ _ref$setIsRightPanelO = _ref.setIsRightPanelOpen,
52
+ setIsRightPanelOpen = _ref$setIsRightPanelO === void 0 ? function () {} : _ref$setIsRightPanelO,
53
+ _ref$title = _ref.title,
54
+ title = _ref$title === void 0 ? '' : _ref$title,
55
+ _ref$zoom = _ref.zoom,
56
+ zoom = _ref$zoom === void 0 ? 1 : _ref$zoom,
47
57
  additionalData = _objectWithoutProperties(_ref, _excluded);
48
58
 
49
59
  var _useDrag = useDrag(function () {
@@ -55,10 +65,11 @@ var Element = function Element(_ref) {
55
65
  },
56
66
  item: function item() {
57
67
  return _objectSpread({
58
- itemType: itemType
68
+ itemType: itemType,
69
+ type: DROPPABLE_ITEM_TYPE
59
70
  }, additionalData);
60
71
  },
61
- type: itemType !== null && itemType !== void 0 ? itemType : DROPPABLE_ITEM_TYPE
72
+ type: DROPPABLE_ITEM_TYPE
62
73
  };
63
74
  }, [itemType, additionalData]),
64
75
  _useDrag2 = _slicedToArray(_useDrag, 3),
@@ -110,6 +121,7 @@ var Element = function Element(_ref) {
110
121
  onClick: onElementClick,
111
122
  onKeyDown: onElementOtherActions,
112
123
  style: {
124
+ cursor: isDragging ? 'grabbing' : 'pointer',
113
125
  opacity: isDragging ? 0.5 : 1
114
126
  },
115
127
  title: title,
@@ -138,18 +150,6 @@ Element.propTypes = {
138
150
  title: PropTypes.string,
139
151
  zoom: PropTypes.number
140
152
  };
141
- Element.defaultProps = {
142
- acceptedItems: {},
143
- icon: null,
144
- iconType: '',
145
- itemType: '',
146
- onAnEventTrigger: function onAnEventTrigger() {},
147
- onItemAdd: function onItemAdd() {},
148
- setActiveElement: function setActiveElement() {},
149
- setIsRightPanelOpen: function setIsRightPanelOpen() {},
150
- title: '',
151
- zoom: 1
152
- };
153
153
  var Element$1 = /*#__PURE__*/memo(Element);
154
154
 
155
155
  export default Element$1;
@@ -1 +1 @@
1
- {"version":3,"file":"Element.js","sources":["../../../../src/components/Builder/Element.js"],"sourcesContent":["import { useEffect, memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport { DROPPABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getMostVisiblePage, getExactIconType, getAvailableCoordinate,\n} from '../../utils/functions';\nimport generateId from '../../utils/generateId';\nimport * as icons from '../../utils/icons';\n\nconst Element = ({\n acceptedItems,\n icon,\n iconType,\n itemType,\n onAnEventTrigger,\n onItemAdd,\n setActiveElement,\n setIsRightPanelOpen,\n title,\n zoom,\n ...additionalData\n}) => {\n const [{ isDragging }, drag, preview] = useDrag(() => ({\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n\n item: () => ({\n itemType,\n ...additionalData,\n }),\n\n type: itemType ?? DROPPABLE_ITEM_TYPE,\n }), [itemType, additionalData]);\n\n useEffect(() => {\n preview(getEmptyImage(), { captureDraggingState: true });\n }, [preview]);\n\n const onElementClick = () => {\n const itemID = generateId();\n const page = getMostVisiblePage();\n let left = 0;\n let top = 0;\n if (page) { // for test\n [left, top] = getAvailableCoordinate(page, zoom);\n }\n onItemAdd({\n ...acceptedItems[itemType].details,\n ...additionalData,\n id: itemID,\n left,\n pageID: page.id,\n top,\n });\n onAnEventTrigger('reportItemAdd', itemType);\n setActiveElement(itemID);\n setIsRightPanelOpen(true);\n };\n\n const onElementOtherActions = () => {};\n\n const exactIconType = getExactIconType(iconType);\n const Icon = icons[exactIconType] ? icons[exactIconType] : icons.label;\n return (\n <>\n <div\n ref={drag}\n className=\"toolItem d-flex a-center js-toolItem\"\n onClick={onElementClick}\n onKeyDown={onElementOtherActions}\n style={{ opacity: isDragging ? 0.5 : 1 }}\n title={title}\n >\n <span className=\"toolItem-icon d-flex j-center a-center\">\n {icon ? icon : (\n <Icon className={`jfReportSVG icon-question icon-${iconType}`} />\n )}\n </span>\n <span className=\"js-toolItemName toolItem-name d-flex a-center\">\n { title }\n </span>\n </div>\n </>\n );\n};\n\nElement.propTypes = {\n acceptedItems: PropTypes.shape({}),\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n iconType: PropTypes.string,\n itemType: PropTypes.string,\n onAnEventTrigger: PropTypes.func,\n onItemAdd: PropTypes.func,\n setActiveElement: PropTypes.func,\n setIsRightPanelOpen: PropTypes.func,\n title: PropTypes.string,\n zoom: PropTypes.number,\n};\n\nElement.defaultProps = {\n acceptedItems: {},\n icon: null,\n iconType: '',\n itemType: '',\n onAnEventTrigger: () => {},\n onItemAdd: () => {},\n setActiveElement: () => {},\n setIsRightPanelOpen: () => {},\n title: '',\n zoom: 1,\n};\n\nexport default memo(Element);\n"],"names":["Element","acceptedItems","icon","iconType","itemType","onAnEventTrigger","onItemAdd","setActiveElement","setIsRightPanelOpen","title","zoom","additionalData","useDrag","collect","monitor","isDragging","item","type","DROPPABLE_ITEM_TYPE","drag","preview","useEffect","getEmptyImage","captureDraggingState","onElementClick","itemID","generateId","page","getMostVisiblePage","left","top","getAvailableCoordinate","details","id","pageID","onElementOtherActions","exactIconType","getExactIconType","Icon","icons","_jsx","_jsxs","opacity","propTypes","PropTypes","shape","oneOfType","element","func","string","number","defaultProps","memo"],"mappings":"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"}
1
+ {"version":3,"file":"Element.js","sources":["../../../../src/components/Builder/Element.js"],"sourcesContent":["import { useEffect, memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport { DROPPABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getMostVisiblePage, getExactIconType, getAvailableCoordinate,\n} from '../../utils/functions';\nimport generateId from '../../utils/generateId';\nimport * as icons from '../../utils/icons';\n\nconst Element = ({\n acceptedItems = {},\n icon = null,\n iconType = '',\n itemType = '',\n onAnEventTrigger = () => {},\n onItemAdd = () => {},\n setActiveElement = () => {},\n setIsRightPanelOpen = () => {},\n title = '',\n zoom = 1,\n ...additionalData\n}) => {\n const [{ isDragging }, drag, preview] = useDrag(() => ({\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n\n item: () => ({\n itemType,\n type: DROPPABLE_ITEM_TYPE,\n ...additionalData,\n }),\n\n type: DROPPABLE_ITEM_TYPE,\n }), [itemType, additionalData]);\n\n useEffect(() => {\n preview(getEmptyImage(), { captureDraggingState: true });\n }, [preview]);\n\n const onElementClick = () => {\n const itemID = generateId();\n const page = getMostVisiblePage();\n let left = 0;\n let top = 0;\n if (page) { // for test\n [left, top] = getAvailableCoordinate(page, zoom);\n }\n onItemAdd({\n ...acceptedItems[itemType].details,\n ...additionalData,\n id: itemID,\n left,\n pageID: page.id,\n top,\n });\n onAnEventTrigger('reportItemAdd', itemType);\n setActiveElement(itemID);\n setIsRightPanelOpen(true);\n };\n\n const onElementOtherActions = () => {};\n\n const exactIconType = getExactIconType(iconType);\n const Icon = icons[exactIconType] ? icons[exactIconType] : icons.label;\n return (\n <>\n <div\n ref={drag}\n className=\"toolItem d-flex a-center js-toolItem\"\n onClick={onElementClick}\n onKeyDown={onElementOtherActions}\n style={{ cursor: isDragging ? 'grabbing' : 'pointer', opacity: isDragging ? 0.5 : 1 }}\n title={title}\n >\n <span className=\"toolItem-icon d-flex j-center a-center\">\n {icon ? icon : (\n <Icon className={`jfReportSVG icon-question icon-${iconType}`} />\n )}\n </span>\n <span className=\"js-toolItemName toolItem-name d-flex a-center\">\n { title }\n </span>\n </div>\n </>\n );\n};\n\nElement.propTypes = {\n acceptedItems: PropTypes.shape({}),\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n iconType: PropTypes.string,\n itemType: PropTypes.string,\n onAnEventTrigger: PropTypes.func,\n onItemAdd: PropTypes.func,\n setActiveElement: PropTypes.func,\n setIsRightPanelOpen: PropTypes.func,\n title: PropTypes.string,\n zoom: PropTypes.number,\n};\n\nexport default memo(Element);\n"],"names":["Element","acceptedItems","icon","iconType","itemType","onAnEventTrigger","onItemAdd","setActiveElement","setIsRightPanelOpen","title","zoom","additionalData","useDrag","collect","monitor","isDragging","item","type","DROPPABLE_ITEM_TYPE","drag","preview","useEffect","getEmptyImage","captureDraggingState","onElementClick","itemID","generateId","page","getMostVisiblePage","left","top","getAvailableCoordinate","details","id","pageID","onElementOtherActions","exactIconType","getExactIconType","Icon","icons","_jsx","_jsxs","cursor","opacity","propTypes","PropTypes","shape","oneOfType","element","func","string","number","memo"],"mappings":"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"}
@@ -1,15 +1,22 @@
1
- import { memo, useState, useRef, useMemo } from 'react';
1
+ import { memo, useState, useRef } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { useDrop } from 'react-dnd';
4
- import { ACCEPTED_TYPES } from '../../constants/itemTypes.js';
4
+ import { ACCEPTED_TYPES, DROPPABLE_ITEM_TYPE, DRAGGABLE_ITEM_TYPE } from '../../constants/itemTypes.js';
5
5
  import AlignmentGuides from '../AlignmentGuides.js';
6
6
  import ReportItemsWrapper from '../ReportItemsWrapper.js';
7
7
  import { useBuilderContext } from '../../utils/builderContext.js';
8
8
  import { usePropContext } from '../../utils/propContext.js';
9
- import { getCorrectDroppedOffsetValue, calculateGuidePositions, proximityListener } from '../../utils/functions.js';
9
+ import { getCorrectDroppedOffsetValue, getCorrectDroppedOffsetValueBySnap, findItemById, calculateGuidePositions, proximityListener } from '../../utils/functions.js';
10
10
  import { pageContainer } from '../../constants/classNames.js';
11
+ import generateId from '../../utils/generateId.js';
11
12
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
12
13
 
14
+ var _excluded = ["id", "itemType", "pageID"];
15
+
16
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
17
+
18
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
19
+
13
20
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
14
21
 
15
22
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
@@ -30,20 +37,38 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
30
37
  var emptyObject = {};
31
38
 
32
39
  var Page = function Page(_ref) {
33
- var activeElement = _ref.activeElement,
34
- additionalPageItems = _ref.additionalPageItems,
35
- guides = _ref.guides,
36
- hashCode = _ref.hashCode,
37
- itemAccessor = _ref.itemAccessor,
38
- items = _ref.items,
39
- onDrop = _ref.onDrop,
40
- onItemAdd = _ref.onItemAdd,
41
- onItemChange = _ref.onItemChange,
42
- onItemRemove = _ref.onItemRemove,
43
- onItemResize = _ref.onItemResize,
44
- page = _ref.page,
45
- pageRef = _ref.pageRef,
46
- style = _ref.style;
40
+ var _ref$activeElement = _ref.activeElement,
41
+ activeElement = _ref$activeElement === void 0 ? null : _ref$activeElement,
42
+ _ref$additionalPageIt = _ref.additionalPageItems,
43
+ additionalPageItems = _ref$additionalPageIt === void 0 ? [] : _ref$additionalPageIt,
44
+ _ref$guides = _ref.guides,
45
+ guides = _ref$guides === void 0 ? {} : _ref$guides,
46
+ _ref$hashCode = _ref.hashCode,
47
+ hashCode = _ref$hashCode === void 0 ? '' : _ref$hashCode,
48
+ _ref$itemAccessor = _ref.itemAccessor,
49
+ itemAccessor = _ref$itemAccessor === void 0 ? function () {} : _ref$itemAccessor,
50
+ _ref$items = _ref.items,
51
+ items = _ref$items === void 0 ? [] : _ref$items,
52
+ _ref$onItemAdd = _ref.onItemAdd,
53
+ onItemAdd = _ref$onItemAdd === void 0 ? function () {} : _ref$onItemAdd,
54
+ _ref$onItemChange = _ref.onItemChange,
55
+ onItemChange = _ref$onItemChange === void 0 ? function () {} : _ref$onItemChange,
56
+ _ref$onItemMove = _ref.onItemMove,
57
+ onItemMove = _ref$onItemMove === void 0 ? function () {} : _ref$onItemMove,
58
+ _ref$onItemRemove = _ref.onItemRemove,
59
+ onItemRemove = _ref$onItemRemove === void 0 ? function () {} : _ref$onItemRemove,
60
+ _ref$onItemResize = _ref.onItemResize,
61
+ onItemResize = _ref$onItemResize === void 0 ? function () {} : _ref$onItemResize,
62
+ _ref$onItemsMove = _ref.onItemsMove,
63
+ onItemsMove = _ref$onItemsMove === void 0 ? function () {} : _ref$onItemsMove,
64
+ _ref$page = _ref.page,
65
+ page = _ref$page === void 0 ? {} : _ref$page,
66
+ _ref$pageRef = _ref.pageRef,
67
+ pageRef = _ref$pageRef === void 0 ? {} : _ref$pageRef,
68
+ _ref$pages = _ref.pages,
69
+ pages = _ref$pages === void 0 ? [] : _ref$pages,
70
+ _ref$style = _ref.style,
71
+ style = _ref$style === void 0 ? {} : _ref$style;
47
72
 
48
73
  var _useBuilderContext = useBuilderContext(),
49
74
  isRightPanelOpen = _useBuilderContext.isRightPanelOpen,
@@ -82,7 +107,7 @@ var Page = function Page(_ref) {
82
107
 
83
108
  var activeItem = _objectSpread(_objectSpread({}, item), coords);
84
109
 
85
- var _guides = _objectSpread(_objectSpread({}, guides), {}, _defineProperty({}, item.id, _objectSpread(_objectSpread({}, guides[item.id]), {}, {
110
+ var _guides = _objectSpread(_objectSpread({}, guides[item.pageID]), {}, _defineProperty({}, item.id, _objectSpread(_objectSpread({}, guides[item.pageID][item.id]), {}, {
86
111
  x: calculateGuidePositions(activeItem, 'x', zoom),
87
112
  y: calculateGuidePositions(activeItem, 'y', zoom)
88
113
  })));
@@ -96,26 +121,83 @@ var Page = function Page(_ref) {
96
121
  };
97
122
  };
98
123
 
124
+ var isMultipleItemSelected = activeElement !== null && activeElement.length > 1;
125
+
99
126
  var onHover = function onHover(item, monitor) {
100
127
  if (!requestRef.current) {
101
128
  requestRef.current = global.requestAnimationFrame(drawAlignmentGuides(item, monitor));
102
129
  }
103
130
  };
104
131
 
105
- var dropConfig = useMemo(function () {
106
- return {
107
- accept: ACCEPTED_TYPES,
108
- collect: function collect(monitor) {
109
- return {
110
- isOver: monitor.isOver()
111
- };
112
- },
113
- drop: onDrop,
114
- hover: onHover
115
- };
116
- }, [onDrop, onHover]);
132
+ var _useDrop = useDrop({
133
+ accept: ACCEPTED_TYPES,
134
+ collect: function collect(monitor) {
135
+ return {
136
+ isOver: monitor.isOver()
137
+ };
138
+ },
139
+ drop: function drop(item, monitor) {
140
+ var _pageRef$current;
141
+
142
+ var pageClient = (_pageRef$current = pageRef.current) === null || _pageRef$current === void 0 ? void 0 : _pageRef$current.getBoundingClientRect();
143
+ var coords = getCorrectDroppedOffsetValue(monitor, pageClient, zoom);
144
+ var type = monitor.getItemType();
145
+
146
+ var id = item.id,
147
+ itemType = item.itemType;
148
+ item.pageID;
149
+ var additionalData = _objectWithoutProperties(item, _excluded);
150
+
151
+ var newCoords = {};
117
152
 
118
- var _useDrop = useDrop(dropConfig),
153
+ if (type === DROPPABLE_ITEM_TYPE) {
154
+ var itemID = generateId();
155
+ onItemAdd(_objectSpread(_objectSpread(_objectSpread({}, acceptedItems[itemType].details), {}, {
156
+ id: itemID,
157
+ pageID: page.id
158
+ }, coords), additionalData));
159
+ onAnEventTrigger('reportItemAdd', itemType);
160
+ setActiveElement(itemID);
161
+ setIsRightPanelOpen(true);
162
+ newCoords[itemID] = coords;
163
+ } else if (type === DRAGGABLE_ITEM_TYPE) {
164
+ var dragCoords = getCorrectDroppedOffsetValueBySnap(coords, guides, id, pages, zoom);
165
+
166
+ if (isMultipleItemSelected) {
167
+ var leftDifference = additionalData.left - dragCoords.left;
168
+ var topDifference = additionalData.top - dragCoords.top;
169
+
170
+ var _items = activeElement.reduce(function (acc, curr) {
171
+ var tempItem = findItemById(curr, pages);
172
+ acc[curr] = {
173
+ id: curr,
174
+ left: tempItem.left - leftDifference,
175
+ pageID: page.id,
176
+ top: tempItem.top - topDifference
177
+ };
178
+ newCoords[curr] = {
179
+ left: tempItem.left - leftDifference,
180
+ top: tempItem.top - topDifference
181
+ };
182
+ return acc;
183
+ }, {});
184
+
185
+ onItemsMove({
186
+ items: _items
187
+ });
188
+ } else {
189
+ onItemMove(_objectSpread({
190
+ id: id,
191
+ pageID: page.id
192
+ }, dragCoords));
193
+ newCoords[id] = dragCoords;
194
+ }
195
+ }
196
+
197
+ return newCoords;
198
+ },
199
+ hover: onHover
200
+ }),
119
201
  _useDrop2 = _slicedToArray(_useDrop, 2),
120
202
  isOver = _useDrop2[0].isOver,
121
203
  drop = _useDrop2[1];
@@ -135,7 +217,7 @@ var Page = function Page(_ref) {
135
217
  children: [/*#__PURE__*/jsx(ReportItemsWrapper, {
136
218
  acceptedItems: acceptedItems,
137
219
  activeElement: activeElement,
138
- guides: guides,
220
+ guides: guides[page.id],
139
221
  hashCode: hashCode,
140
222
  isResize: isResize,
141
223
  isRightPanelOpen: isRightPanelOpen,
@@ -157,13 +239,13 @@ var Page = function Page(_ref) {
157
239
  zoom: zoom
158
240
  }), additionalPageItems, /*#__PURE__*/jsx(AlignmentGuides, {
159
241
  axis: "x",
160
- guides: guides,
242
+ guides: guides[page.id],
161
243
  matches: matches,
162
244
  show: isOver || isResize,
163
245
  zoom: zoom
164
246
  }), /*#__PURE__*/jsx(AlignmentGuides, {
165
247
  axis: "y",
166
- guides: guides,
248
+ guides: guides[page.id],
167
249
  matches: matches,
168
250
  show: isOver || isResize,
169
251
  zoom: zoom
@@ -180,35 +262,21 @@ Page.propTypes = {
180
262
  hashCode: PropTypes.string,
181
263
  itemAccessor: PropTypes.func,
182
264
  items: PropTypes.arrayOf(PropTypes.shape({})),
183
- onDrop: PropTypes.func,
184
265
  onItemAdd: PropTypes.func,
185
266
  onItemChange: PropTypes.func,
267
+ onItemMove: PropTypes.func,
186
268
  onItemRemove: PropTypes.func,
187
269
  onItemResize: PropTypes.func,
270
+ onItemsMove: PropTypes.func,
188
271
  page: PropTypes.shape({
189
272
  backgroundColor: PropTypes.string
190
273
  }),
191
274
  pageRef: PropTypes.shape({
192
275
  current: PropTypes.any
193
276
  }),
277
+ pages: PropTypes.arrayOf(PropTypes.shape({})),
194
278
  style: PropTypes.shape({})
195
279
  };
196
- Page.defaultProps = {
197
- activeElement: null,
198
- additionalPageItems: [],
199
- guides: {},
200
- hashCode: '',
201
- itemAccessor: function itemAccessor() {},
202
- items: [],
203
- onDrop: function onDrop() {},
204
- onItemAdd: function onItemAdd() {},
205
- onItemChange: function onItemChange() {},
206
- onItemRemove: function onItemRemove() {},
207
- onItemResize: function onItemResize() {},
208
- page: {},
209
- pageRef: {},
210
- style: {}
211
- };
212
280
  var Page$1 = /*#__PURE__*/memo(Page);
213
281
 
214
282
  export default Page$1;
@@ -1 +1 @@
1
- {"version":3,"file":"Page.js","sources":["../../../../src/components/Builder/Page.js"],"sourcesContent":["import {\n useState,\n useRef,\n memo,\n useMemo,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrop } from 'react-dnd';\nimport { ACCEPTED_TYPES } from '../../constants/itemTypes';\nimport AlignmentGuides from '../AlignmentGuides';\nimport ReportItemsWrapper from '../ReportItemsWrapper';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { usePropContext } from '../../utils/propContext';\nimport {\n proximityListener,\n calculateGuidePositions,\n getCorrectDroppedOffsetValue,\n} from '../../utils/functions';\nimport * as classNames from '../../constants/classNames';\n\nconst emptyObject = {};\n\nconst Page = ({\n activeElement,\n additionalPageItems,\n guides,\n hashCode,\n itemAccessor,\n items,\n onDrop,\n onItemAdd,\n onItemChange,\n onItemRemove,\n onItemResize,\n page,\n pageRef,\n style,\n}) => {\n const {\n isRightPanelOpen,\n isTextEditorOpen,\n setActiveElement,\n setContextMenuProps,\n setIsRightPanelOpen,\n zoom,\n } = useBuilderContext();\n const { acceptedItems, onAnEventTrigger, settings } = usePropContext();\n const [matches, setMatches] = useState({});\n const [isResize, setIsResize] = useState(false);\n const requestRef = useRef();\n\n const drawAlignmentGuides = (item, monitor) => {\n return () => {\n try {\n if (!monitor || monitor.getSourceClientOffset() === null) {\n requestRef.current = undefined;\n return;\n }\n const coords = getCorrectDroppedOffsetValue(\n monitor,\n pageRef.current.getBoundingClientRect(),\n zoom,\n );\n const activeItem = {\n ...item, ...coords,\n };\n const _guides = {\n ...guides,\n [item.id]: {\n ...guides[item.id],\n x: calculateGuidePositions(activeItem, 'x', zoom),\n y: calculateGuidePositions(activeItem, 'y', zoom),\n },\n };\n const match = proximityListener(item.id, _guides);\n setMatches(match);\n requestRef.current = undefined;\n } catch (error) {\n setMatches({});\n }\n };\n };\n\n const onHover = (item, monitor) => {\n if (!requestRef.current) {\n requestRef.current = global.requestAnimationFrame(drawAlignmentGuides(item, monitor));\n }\n };\n\n const dropConfig = useMemo(() => ({\n accept: ACCEPTED_TYPES,\n collect: monitor => {\n return {\n isOver: monitor.isOver(),\n };\n },\n drop: onDrop,\n hover: onHover,\n }), [onDrop, onHover]);\n\n const [{ isOver }, drop] = useDrop(dropConfig);\n\n const { reportBackgroundColor } = settings;\n const { backgroundColor } = page;\n const bgColor = backgroundColor ? backgroundColor : reportBackgroundColor || '#fff';\n\n return (\n <>\n <div\n ref={drop}\n className={classNames.pageContainer}\n style={{\n backgroundColor: bgColor,\n ...style,\n }}\n >\n <div className=\"jfReport-hider o-hidden f-all p-relative\">\n <ReportItemsWrapper\n acceptedItems={acceptedItems}\n activeElement={activeElement}\n guides={guides}\n hashCode={hashCode}\n isResize={isResize}\n isRightPanelOpen={isRightPanelOpen}\n isTextEditorOpen={isTextEditorOpen}\n itemAccessor={itemAccessor}\n // if we send matches all the time, DraggableItems are also rendered on dragging\n items={items}\n matches={isResize ? matches : emptyObject}\n onAnEventTrigger={onAnEventTrigger}\n onItemAdd={onItemAdd}\n onItemChange={onItemChange}\n onItemRemove={onItemRemove}\n onItemResize={onItemResize}\n setActiveElement={setActiveElement}\n setContextMenuProps={setContextMenuProps}\n setIsResize={setIsResize}\n setIsRightPanelOpen={setIsRightPanelOpen}\n setMatches={setMatches}\n zoom={zoom}\n />\n {additionalPageItems}\n <AlignmentGuides\n axis=\"x\"\n guides={guides}\n matches={matches}\n show={(isOver || isResize)}\n zoom={zoom}\n />\n <AlignmentGuides\n axis=\"y\"\n guides={guides}\n matches={matches}\n show={(isOver || isResize)}\n zoom={zoom}\n />\n </div>\n </div>\n </>\n );\n};\n\nPage.propTypes = {\n activeElement: PropTypes.arrayOf(PropTypes.string),\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n guides: PropTypes.shape({}),\n hashCode: PropTypes.string,\n itemAccessor: PropTypes.func,\n items: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n onDrop: PropTypes.func,\n onItemAdd: PropTypes.func,\n onItemChange: PropTypes.func,\n onItemRemove: PropTypes.func,\n onItemResize: PropTypes.func,\n page: PropTypes.shape({\n backgroundColor: PropTypes.string,\n }),\n pageRef: PropTypes.shape({\n current: PropTypes.any,\n }),\n style: PropTypes.shape({}),\n};\n\nPage.defaultProps = {\n activeElement: null,\n additionalPageItems: [],\n guides: {},\n hashCode: '',\n itemAccessor: () => {},\n items: [],\n onDrop: () => {},\n onItemAdd: () => {},\n onItemChange: () => {},\n onItemRemove: () => {},\n onItemResize: () => {},\n page: {},\n pageRef: {},\n style: {},\n};\n\nexport default memo(Page);\n"],"names":["emptyObject","Page","activeElement","additionalPageItems","guides","hashCode","itemAccessor","items","onDrop","onItemAdd","onItemChange","onItemRemove","onItemResize","page","pageRef","style","useBuilderContext","isRightPanelOpen","isTextEditorOpen","setActiveElement","setContextMenuProps","setIsRightPanelOpen","zoom","usePropContext","acceptedItems","onAnEventTrigger","settings","useState","matches","setMatches","isResize","setIsResize","requestRef","useRef","drawAlignmentGuides","item","monitor","getSourceClientOffset","current","undefined","coords","getCorrectDroppedOffsetValue","getBoundingClientRect","activeItem","_guides","id","x","calculateGuidePositions","y","match","proximityListener","error","onHover","global","requestAnimationFrame","dropConfig","useMemo","accept","ACCEPTED_TYPES","collect","isOver","drop","hover","useDrop","reportBackgroundColor","backgroundColor","bgColor","_jsx","classNames","_jsxs","propTypes","PropTypes","arrayOf","string","node","shape","func","any","defaultProps","memo"],"mappings":"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"}
1
+ {"version":3,"file":"Page.js","sources":["../../../../src/components/Builder/Page.js"],"sourcesContent":["import {\n useState,\n useRef,\n memo,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrop } from 'react-dnd';\nimport {\n ACCEPTED_TYPES,\n DRAGGABLE_ITEM_TYPE,\n DROPPABLE_ITEM_TYPE,\n} from '../../constants/itemTypes';\nimport AlignmentGuides from '../AlignmentGuides';\nimport ReportItemsWrapper from '../ReportItemsWrapper';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { usePropContext } from '../../utils/propContext';\nimport {\n proximityListener,\n calculateGuidePositions,\n getCorrectDroppedOffsetValue,\n getCorrectDroppedOffsetValueBySnap,\n findItemById,\n} from '../../utils/functions';\nimport * as classNames from '../../constants/classNames';\nimport generateId from '../../utils/generateId';\n\nconst emptyObject = {};\n\nconst Page = ({\n activeElement = null,\n additionalPageItems = [],\n guides = {},\n hashCode = '',\n itemAccessor = () => {},\n items = [],\n onItemAdd = () => {},\n onItemChange = () => {},\n onItemMove = () => {},\n onItemRemove = () => {},\n onItemResize = () => {},\n onItemsMove = () => {},\n page = {},\n pageRef = {},\n pages = [],\n style = {},\n}) => {\n const {\n isRightPanelOpen,\n isTextEditorOpen,\n setActiveElement,\n setContextMenuProps,\n setIsRightPanelOpen,\n zoom,\n } = useBuilderContext();\n const { acceptedItems, onAnEventTrigger, settings } = usePropContext();\n const [matches, setMatches] = useState({});\n const [isResize, setIsResize] = useState(false);\n const requestRef = useRef();\n\n const drawAlignmentGuides = (item, monitor) => {\n return () => {\n try {\n if (!monitor || monitor.getSourceClientOffset() === null) {\n requestRef.current = undefined;\n return;\n }\n const coords = getCorrectDroppedOffsetValue(\n monitor,\n pageRef.current.getBoundingClientRect(),\n zoom,\n );\n const activeItem = {\n ...item, ...coords,\n };\n const _guides = {\n ...guides[item.pageID],\n [item.id]: {\n ...guides[item.pageID][item.id],\n x: calculateGuidePositions(activeItem, 'x', zoom),\n y: calculateGuidePositions(activeItem, 'y', zoom),\n },\n };\n const match = proximityListener(item.id, _guides);\n setMatches(match);\n requestRef.current = undefined;\n } catch (error) {\n setMatches({});\n }\n };\n };\n\n const isMultipleItemSelected = activeElement !== null && activeElement.length > 1;\n\n const onHover = (item, monitor) => {\n if (!requestRef.current) {\n requestRef.current = global.requestAnimationFrame(drawAlignmentGuides(item, monitor));\n }\n };\n\n const [{ isOver }, drop] = useDrop({\n accept: ACCEPTED_TYPES,\n collect: monitor => {\n return {\n isOver: monitor.isOver(),\n };\n },\n drop: (item, monitor) => {\n const pageClient = pageRef.current?.getBoundingClientRect();\n const coords = getCorrectDroppedOffsetValue(\n monitor,\n pageClient,\n zoom,\n );\n const type = monitor.getItemType();\n const {\n id, itemType, pageID, ...additionalData\n } = item;\n const newCoords = {};\n if (type === DROPPABLE_ITEM_TYPE) {\n const itemID = generateId();\n onItemAdd({\n ...acceptedItems[itemType].details,\n id: itemID,\n pageID: page.id,\n ...coords,\n ...additionalData,\n });\n onAnEventTrigger('reportItemAdd', itemType);\n setActiveElement(itemID);\n setIsRightPanelOpen(true);\n newCoords[itemID] = coords;\n } else if (type === DRAGGABLE_ITEM_TYPE) {\n const dragCoords = getCorrectDroppedOffsetValueBySnap(coords, guides, id, pages, zoom);\n if (isMultipleItemSelected) {\n const leftDifference = additionalData.left - dragCoords.left;\n const topDifference = additionalData.top - dragCoords.top;\n const _items = activeElement.reduce((acc, curr) => {\n const tempItem = findItemById(curr, pages);\n acc[curr] = {\n id: curr,\n left: tempItem.left - leftDifference,\n pageID: page.id,\n top: tempItem.top - topDifference,\n };\n newCoords[curr] = {\n left: tempItem.left - leftDifference,\n top: tempItem.top - topDifference,\n };\n return acc;\n }, {});\n onItemsMove({ items: _items });\n } else {\n onItemMove({\n id,\n pageID: page.id,\n ...dragCoords,\n });\n newCoords[id] = dragCoords;\n }\n }\n\n return newCoords;\n },\n hover: onHover,\n });\n\n const { reportBackgroundColor } = settings;\n const { backgroundColor } = page;\n const bgColor = backgroundColor ? backgroundColor : reportBackgroundColor || '#fff';\n\n return (\n <>\n <div\n ref={drop}\n className={classNames.pageContainer}\n style={{\n backgroundColor: bgColor,\n ...style,\n }}\n >\n <div className=\"jfReport-hider o-hidden f-all p-relative\">\n <ReportItemsWrapper\n acceptedItems={acceptedItems}\n activeElement={activeElement}\n guides={guides[page.id]}\n hashCode={hashCode}\n isResize={isResize}\n isRightPanelOpen={isRightPanelOpen}\n isTextEditorOpen={isTextEditorOpen}\n itemAccessor={itemAccessor}\n // if we send matches all the time, DraggableItems are also rendered on dragging\n items={items}\n matches={isResize ? matches : emptyObject}\n onAnEventTrigger={onAnEventTrigger}\n onItemAdd={onItemAdd}\n onItemChange={onItemChange}\n onItemRemove={onItemRemove}\n onItemResize={onItemResize}\n setActiveElement={setActiveElement}\n setContextMenuProps={setContextMenuProps}\n setIsResize={setIsResize}\n setIsRightPanelOpen={setIsRightPanelOpen}\n setMatches={setMatches}\n zoom={zoom}\n />\n {additionalPageItems}\n <AlignmentGuides\n axis=\"x\"\n guides={guides[page.id]}\n matches={matches}\n show={(isOver || isResize)}\n zoom={zoom}\n />\n <AlignmentGuides\n axis=\"y\"\n guides={guides[page.id]}\n matches={matches}\n show={(isOver || isResize)}\n zoom={zoom}\n />\n </div>\n </div>\n </>\n );\n};\n\nPage.propTypes = {\n activeElement: PropTypes.arrayOf(PropTypes.string),\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n guides: PropTypes.shape({}),\n hashCode: PropTypes.string,\n itemAccessor: PropTypes.func,\n items: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n onItemAdd: PropTypes.func,\n onItemChange: PropTypes.func,\n onItemMove: PropTypes.func,\n onItemRemove: PropTypes.func,\n onItemResize: PropTypes.func,\n onItemsMove: PropTypes.func,\n page: PropTypes.shape({\n backgroundColor: PropTypes.string,\n }),\n pageRef: PropTypes.shape({\n current: PropTypes.any,\n }),\n pages: PropTypes.arrayOf(PropTypes.shape({})),\n style: PropTypes.shape({}),\n};\n\nexport default memo(Page);\n"],"names":["emptyObject","Page","activeElement","additionalPageItems","guides","hashCode","itemAccessor","items","onItemAdd","onItemChange","onItemMove","onItemRemove","onItemResize","onItemsMove","page","pageRef","pages","style","useBuilderContext","isRightPanelOpen","isTextEditorOpen","setActiveElement","setContextMenuProps","setIsRightPanelOpen","zoom","usePropContext","acceptedItems","onAnEventTrigger","settings","useState","matches","setMatches","isResize","setIsResize","requestRef","useRef","drawAlignmentGuides","item","monitor","getSourceClientOffset","current","undefined","coords","getCorrectDroppedOffsetValue","getBoundingClientRect","activeItem","_guides","pageID","id","x","calculateGuidePositions","y","match","proximityListener","error","isMultipleItemSelected","length","onHover","global","requestAnimationFrame","useDrop","accept","ACCEPTED_TYPES","collect","isOver","drop","pageClient","type","getItemType","itemType","additionalData","newCoords","DROPPABLE_ITEM_TYPE","itemID","generateId","details","DRAGGABLE_ITEM_TYPE","dragCoords","getCorrectDroppedOffsetValueBySnap","leftDifference","left","topDifference","top","_items","reduce","acc","curr","tempItem","findItemById","hover","reportBackgroundColor","backgroundColor","bgColor","_jsx","classNames","_jsxs","propTypes","PropTypes","arrayOf","string","node","shape","func","any","memo"],"mappings":"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"}
@@ -12,18 +12,30 @@ import SvgArrowDown from '../../assets/svg/arrow_down.svg.js';
12
12
  import SvgPlus from '../../assets/svg/plus.svg.js';
13
13
 
14
14
  var PageActions = function PageActions(_ref) {
15
- var disableInteraction = _ref.disableInteraction,
16
- onAnEventTrigger = _ref.onAnEventTrigger,
17
- onPageAdd = _ref.onPageAdd,
18
- onPageDuplicate = _ref.onPageDuplicate,
19
- onPageOrdersChange = _ref.onPageOrdersChange,
20
- onPageRemove = _ref.onPageRemove,
21
- order = _ref.order,
22
- pageCount = _ref.pageCount,
23
- pageID = _ref.pageID,
24
- pages = _ref.pages,
25
- setEditedElement = _ref.setEditedElement,
26
- setIsRightPanelOpen = _ref.setIsRightPanelOpen;
15
+ var _ref$disableInteracti = _ref.disableInteraction,
16
+ disableInteraction = _ref$disableInteracti === void 0 ? [] : _ref$disableInteracti,
17
+ _ref$onAnEventTrigger = _ref.onAnEventTrigger,
18
+ onAnEventTrigger = _ref$onAnEventTrigger === void 0 ? function () {} : _ref$onAnEventTrigger,
19
+ _ref$onPageAdd = _ref.onPageAdd,
20
+ onPageAdd = _ref$onPageAdd === void 0 ? function () {} : _ref$onPageAdd,
21
+ _ref$onPageDuplicate = _ref.onPageDuplicate,
22
+ onPageDuplicate = _ref$onPageDuplicate === void 0 ? function () {} : _ref$onPageDuplicate,
23
+ _ref$onPageOrdersChan = _ref.onPageOrdersChange,
24
+ onPageOrdersChange = _ref$onPageOrdersChan === void 0 ? function () {} : _ref$onPageOrdersChan,
25
+ _ref$onPageRemove = _ref.onPageRemove,
26
+ onPageRemove = _ref$onPageRemove === void 0 ? function () {} : _ref$onPageRemove,
27
+ _ref$order = _ref.order,
28
+ order = _ref$order === void 0 ? 0 : _ref$order,
29
+ _ref$pageCount = _ref.pageCount,
30
+ pageCount = _ref$pageCount === void 0 ? 1 : _ref$pageCount,
31
+ _ref$pageID = _ref.pageID,
32
+ pageID = _ref$pageID === void 0 ? '' : _ref$pageID,
33
+ _ref$pages = _ref.pages,
34
+ pages = _ref$pages === void 0 ? [] : _ref$pages,
35
+ _ref$setEditedElement = _ref.setEditedElement,
36
+ setEditedElement = _ref$setEditedElement === void 0 ? function () {} : _ref$setEditedElement,
37
+ _ref$setIsRightPanelO = _ref.setIsRightPanelOpen,
38
+ setIsRightPanelOpen = _ref$setIsRightPanelO === void 0 ? function () {} : _ref$setIsRightPanelO;
27
39
 
28
40
  var pageSettings = function pageSettings() {
29
41
  setEditedElement("p_".concat(pageID));
@@ -165,20 +177,6 @@ PageActions.propTypes = {
165
177
  setEditedElement: PropTypes.func,
166
178
  setIsRightPanelOpen: PropTypes.func
167
179
  };
168
- PageActions.defaultProps = {
169
- disableInteraction: [],
170
- onAnEventTrigger: function onAnEventTrigger() {},
171
- onPageAdd: function onPageAdd() {},
172
- onPageDuplicate: function onPageDuplicate() {},
173
- onPageOrdersChange: function onPageOrdersChange() {},
174
- onPageRemove: function onPageRemove() {},
175
- order: 0,
176
- pageCount: 1,
177
- pageID: '',
178
- pages: [],
179
- setEditedElement: function setEditedElement() {},
180
- setIsRightPanelOpen: function setIsRightPanelOpen() {}
181
- };
182
180
 
183
181
  export default PageActions;
184
182
  //# sourceMappingURL=PageActions.js.map