@jotforminc/dnd-builder 3.0.0-alpha.1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (454) hide show
  1. package/CHANGELOG.md +193 -0
  2. package/lib/cjs/components/AlignmentGuides.js +11 -12
  3. package/lib/cjs/components/AlignmentGuides.js.map +1 -1
  4. package/lib/cjs/components/Builder/Builder.js +21 -131
  5. package/lib/cjs/components/Builder/Builder.js.map +1 -1
  6. package/lib/cjs/components/Builder/BuilderWrapper.js +64 -0
  7. package/lib/cjs/components/Builder/BuilderWrapper.js.map +1 -0
  8. package/lib/cjs/components/Builder/ContextMenu.js +31 -30
  9. package/lib/cjs/components/Builder/ContextMenu.js.map +1 -1
  10. package/lib/cjs/components/Builder/DndWrapper.js +16 -19
  11. package/lib/cjs/components/Builder/DndWrapper.js.map +1 -1
  12. package/lib/cjs/components/Builder/Element.js +51 -44
  13. package/lib/cjs/components/Builder/Element.js.map +1 -1
  14. package/lib/cjs/components/Builder/Page.js +127 -82
  15. package/lib/cjs/components/Builder/Page.js.map +1 -1
  16. package/lib/cjs/components/Builder/PageActions.js +35 -37
  17. package/lib/cjs/components/Builder/PageActions.js.map +1 -1
  18. package/lib/cjs/components/Builder/PageAdder.js +10 -11
  19. package/lib/cjs/components/Builder/PageAdder.js.map +1 -1
  20. package/lib/cjs/components/Builder/Panel.js +8 -10
  21. package/lib/cjs/components/Builder/Panel.js.map +1 -1
  22. package/lib/cjs/components/Builder/ReportItemRenderer.js +7 -6
  23. package/lib/cjs/components/Builder/ReportItemRenderer.js.map +1 -1
  24. package/lib/cjs/components/Builder/Scene.js +75 -205
  25. package/lib/cjs/components/Builder/Scene.js.map +1 -1
  26. package/lib/cjs/components/Builder/SearchInput.js +27 -58
  27. package/lib/cjs/components/Builder/SearchInput.js.map +1 -1
  28. package/lib/cjs/components/Builder/Section.js +8 -10
  29. package/lib/cjs/components/Builder/Section.js.map +1 -1
  30. package/lib/cjs/components/Builder/Tabs.js +19 -16
  31. package/lib/cjs/components/Builder/Tabs.js.map +1 -1
  32. package/lib/cjs/components/Builder/ZoomControls.js +20 -34
  33. package/lib/cjs/components/Builder/ZoomControls.js.map +1 -1
  34. package/lib/cjs/components/DraggableItem/DraggableItem.js +165 -157
  35. package/lib/cjs/components/DraggableItem/DraggableItem.js.map +1 -1
  36. package/lib/cjs/components/DraggableItem/DraggableItemActions.js +12 -14
  37. package/lib/cjs/components/DraggableItem/DraggableItemActions.js.map +1 -1
  38. package/lib/cjs/components/DraggableItem/DraggableItemLayer.js +25 -22
  39. package/lib/cjs/components/DraggableItem/DraggableItemLayer.js.map +1 -1
  40. package/lib/cjs/components/Elements/Chart.js +3 -4
  41. package/lib/cjs/components/Elements/Chart.js.map +1 -1
  42. package/lib/cjs/components/Elements/Icon.js +3 -5
  43. package/lib/cjs/components/Elements/Icon.js.map +1 -1
  44. package/lib/cjs/components/Elements/Image.js +11 -12
  45. package/lib/cjs/components/Elements/Image.js.map +1 -1
  46. package/lib/cjs/components/Elements/RichText.js +16 -14
  47. package/lib/cjs/components/Elements/RichText.js.map +1 -1
  48. package/lib/cjs/components/Elements/Shapes.js +2 -4
  49. package/lib/cjs/components/Elements/Shapes.js.map +1 -1
  50. package/lib/cjs/components/ItemPositioner.js +6 -8
  51. package/lib/cjs/components/ItemPositioner.js.map +1 -1
  52. package/lib/cjs/components/PageItemResizer.js +3 -7
  53. package/lib/cjs/components/PageItemResizer.js.map +1 -1
  54. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js +25 -60
  55. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
  56. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js +2 -4
  57. package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js.map +1 -1
  58. package/lib/cjs/components/Panels/AllSlidesPanel/PageActionsBar.js +8 -15
  59. package/lib/cjs/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
  60. package/lib/cjs/components/Panels/AllSlidesPanel/PageItem.js +56 -21
  61. package/lib/cjs/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
  62. package/lib/cjs/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +54 -0
  63. package/lib/cjs/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
  64. package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js +143 -47
  65. package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
  66. package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js +17 -18
  67. package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
  68. package/lib/cjs/components/Panels/LeftPanel/Elements.js +48 -52
  69. package/lib/cjs/components/Panels/LeftPanel/Elements.js.map +1 -1
  70. package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js +6 -35
  71. package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
  72. package/lib/cjs/components/Panels/LeftPanel/LeftPanelCloser.js +4 -4
  73. package/lib/cjs/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
  74. package/lib/cjs/components/Panels/LeftPanel/LeftPanelOpener.js +4 -3
  75. package/lib/cjs/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
  76. package/lib/cjs/components/Panels/RightPanel/RightPanel.js +139 -144
  77. package/lib/cjs/components/Panels/RightPanel/RightPanel.js.map +1 -1
  78. package/lib/cjs/components/Panels/RightPanel/RightPanelToggler.js +7 -4
  79. package/lib/cjs/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
  80. package/lib/cjs/components/Panels/RightPanel/Settings.js +21 -22
  81. package/lib/cjs/components/Panels/RightPanel/Settings.js.map +1 -1
  82. package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js +105 -95
  83. package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
  84. package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js +17 -18
  85. package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
  86. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js +33 -67
  87. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  88. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js +9 -9
  89. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
  90. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItem.js +62 -28
  91. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
  92. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +54 -0
  93. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
  94. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js +8 -9
  95. package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
  96. package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js +163 -109
  97. package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
  98. package/lib/cjs/components/Presentation/Presentation.js +19 -70
  99. package/lib/cjs/components/Presentation/Presentation.js.map +1 -1
  100. package/lib/cjs/components/Presentation/PresentationBar/PageNavigation.js +8 -10
  101. package/lib/cjs/components/Presentation/PresentationBar/PageNavigation.js.map +1 -1
  102. package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js +45 -12
  103. package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
  104. package/lib/cjs/components/Presentation/PresentationBar/PresentationBar.js +44 -86
  105. package/lib/cjs/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
  106. package/lib/cjs/components/Presentation/PresentationBar/SelectZoom.js +8 -10
  107. package/lib/cjs/components/Presentation/PresentationBar/SelectZoom.js.map +1 -1
  108. package/lib/cjs/components/Presentation/PresentationWrapper.js +56 -59
  109. package/lib/cjs/components/Presentation/PresentationWrapper.js.map +1 -1
  110. package/lib/cjs/components/Presentation/ProgressBar.js +4 -6
  111. package/lib/cjs/components/Presentation/ProgressBar.js.map +1 -1
  112. package/lib/cjs/components/Preview/Preview.js +14 -69
  113. package/lib/cjs/components/Preview/Preview.js.map +1 -1
  114. package/lib/cjs/components/Preview/StaticItem.js +5 -16
  115. package/lib/cjs/components/Preview/StaticItem.js.map +1 -1
  116. package/lib/cjs/components/Preview/StaticPage.js +16 -22
  117. package/lib/cjs/components/Preview/StaticPage.js.map +1 -1
  118. package/lib/cjs/components/Preview/StaticScene.js +34 -56
  119. package/lib/cjs/components/Preview/StaticScene.js.map +1 -1
  120. package/lib/cjs/components/Print/Print.js +18 -62
  121. package/lib/cjs/components/Print/Print.js.map +1 -1
  122. package/lib/cjs/components/Print/PrintModal.js +55 -0
  123. package/lib/cjs/components/Print/PrintModal.js.map +1 -0
  124. package/lib/cjs/components/Print/{PrintModeWithoutContext.js → PrintWrapper.js} +11 -42
  125. package/lib/cjs/components/Print/PrintWrapper.js.map +1 -0
  126. package/lib/cjs/components/Report.js +28 -40
  127. package/lib/cjs/components/Report.js.map +1 -1
  128. package/lib/cjs/components/ReportItemsWrapper.js +22 -36
  129. package/lib/cjs/components/ReportItemsWrapper.js.map +1 -1
  130. package/lib/cjs/components/ReportWrapper.js +28 -57
  131. package/lib/cjs/components/ReportWrapper.js.map +1 -1
  132. package/lib/cjs/components/Settings/Button.js +8 -10
  133. package/lib/cjs/components/Settings/Button.js.map +1 -1
  134. package/lib/cjs/components/Settings/CheckboxGroup.js +8 -10
  135. package/lib/cjs/components/Settings/CheckboxGroup.js.map +1 -1
  136. package/lib/cjs/components/Settings/ColorPicker.js +18 -13
  137. package/lib/cjs/components/Settings/ColorPicker.js.map +1 -1
  138. package/lib/cjs/components/Settings/Dropdown.js +10 -12
  139. package/lib/cjs/components/Settings/Dropdown.js.map +1 -1
  140. package/lib/cjs/components/Settings/FieldSet.js +3 -4
  141. package/lib/cjs/components/Settings/FieldSet.js.map +1 -1
  142. package/lib/cjs/components/Settings/IconSelectBox.js +8 -10
  143. package/lib/cjs/components/Settings/IconSelectBox.js.map +1 -1
  144. package/lib/cjs/components/Settings/ImagePicker/EnterURL.js +4 -6
  145. package/lib/cjs/components/Settings/ImagePicker/EnterURL.js.map +1 -1
  146. package/lib/cjs/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +6 -8
  147. package/lib/cjs/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
  148. package/lib/cjs/components/Settings/ImageUrl.js +8 -10
  149. package/lib/cjs/components/Settings/ImageUrl.js.map +1 -1
  150. package/lib/cjs/components/Settings/LayoutSizeSettings.js +4 -6
  151. package/lib/cjs/components/Settings/LayoutSizeSettings.js.map +1 -1
  152. package/lib/cjs/components/Settings/Orientation.js +8 -10
  153. package/lib/cjs/components/Settings/Orientation.js.map +1 -1
  154. package/lib/cjs/components/Settings/PageLayer/LayerDragOverlay.js +128 -0
  155. package/lib/cjs/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
  156. package/lib/cjs/components/Settings/PageLayer/LayerItem.js +91 -32
  157. package/lib/cjs/components/Settings/PageLayer/LayerItem.js.map +1 -1
  158. package/lib/cjs/components/Settings/PageLayer/PageLayer.js +115 -50
  159. package/lib/cjs/components/Settings/PageLayer/PageLayer.js.map +1 -1
  160. package/lib/cjs/components/Settings/SegmentControl.js +8 -10
  161. package/lib/cjs/components/Settings/SegmentControl.js.map +1 -1
  162. package/lib/cjs/components/Settings/SelectBox.js +8 -10
  163. package/lib/cjs/components/Settings/SelectBox.js.map +1 -1
  164. package/lib/cjs/components/Settings/SettingsItemRenderer.js +9 -11
  165. package/lib/cjs/components/Settings/SettingsItemRenderer.js.map +1 -1
  166. package/lib/cjs/components/Settings/SizeSettings.js +4 -6
  167. package/lib/cjs/components/Settings/SizeSettings.js.map +1 -1
  168. package/lib/cjs/components/Settings/Slider.js +8 -10
  169. package/lib/cjs/components/Settings/Slider.js.map +1 -1
  170. package/lib/cjs/components/Settings/Switch.js +8 -10
  171. package/lib/cjs/components/Settings/Switch.js.map +1 -1
  172. package/lib/cjs/components/Settings/Textbox.js +12 -14
  173. package/lib/cjs/components/Settings/Textbox.js.map +1 -1
  174. package/lib/cjs/components/Settings/Toggle.js +8 -10
  175. package/lib/cjs/components/Settings/Toggle.js.map +1 -1
  176. package/lib/cjs/components/StaticElements/StaticRichText.js +26 -30
  177. package/lib/cjs/components/StaticElements/StaticRichText.js.map +1 -1
  178. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -4
  179. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
  180. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js +4 -6
  181. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js.map +1 -1
  182. package/lib/cjs/components/TextEditor/QuillEditor.js +6 -11
  183. package/lib/cjs/components/TextEditor/QuillEditor.js.map +1 -1
  184. package/lib/cjs/components/TextEditor/TextEditor.js +17 -18
  185. package/lib/cjs/components/TextEditor/TextEditor.js.map +1 -1
  186. package/lib/cjs/components/withClickOutside.js +10 -11
  187. package/lib/cjs/components/withClickOutside.js.map +1 -1
  188. package/lib/cjs/components/withZoomPanPinchHOC.js +10 -12
  189. package/lib/cjs/components/withZoomPanPinchHOC.js.map +1 -1
  190. package/lib/cjs/constants/eventIgnoredRoles.js +13 -0
  191. package/lib/cjs/constants/eventIgnoredRoles.js.map +1 -0
  192. package/lib/cjs/constants/texts.js +11 -0
  193. package/lib/cjs/constants/texts.js.map +1 -1
  194. package/lib/cjs/contexts/BuilderContext.js +208 -0
  195. package/lib/cjs/contexts/BuilderContext.js.map +1 -0
  196. package/lib/cjs/contexts/PresentationContext.js +140 -0
  197. package/lib/cjs/contexts/PresentationContext.js.map +1 -0
  198. package/lib/cjs/contexts/PropContext.js +144 -0
  199. package/lib/cjs/contexts/PropContext.js.map +1 -0
  200. package/lib/cjs/contexts/Providers.js +70 -0
  201. package/lib/cjs/contexts/Providers.js.map +1 -0
  202. package/lib/cjs/index.js +0 -2
  203. package/lib/cjs/index.js.map +1 -1
  204. package/lib/cjs/styles/_jfPrint.scss +17 -1
  205. package/lib/cjs/styles/_jfReportsModal.scss +9 -9
  206. package/lib/cjs/styles/_jfReportsPanels.scss +4 -1
  207. package/lib/cjs/styles/_jfReportsReportItem.scss +1 -1
  208. package/lib/cjs/styles/_jfReportsSVG.scss +0 -1
  209. package/lib/cjs/styles/_jfReportsTextEditor.scss +5 -0
  210. package/lib/cjs/styles/_jfSearchInput.scss +2 -2
  211. package/lib/cjs/utils/functions.js +20 -9
  212. package/lib/cjs/utils/functions.js.map +1 -1
  213. package/lib/cjs/utils/getDefaultPresentationActions.js +1 -1
  214. package/lib/cjs/utils/getDefaultPresentationActions.js.map +1 -1
  215. package/lib/cjs/utils/hooks.js +64 -47
  216. package/lib/cjs/utils/hooks.js.map +1 -1
  217. package/lib/esm/components/AlignmentGuides.js +11 -12
  218. package/lib/esm/components/AlignmentGuides.js.map +1 -1
  219. package/lib/esm/components/Builder/Builder.js +20 -129
  220. package/lib/esm/components/Builder/Builder.js.map +1 -1
  221. package/lib/esm/components/Builder/BuilderWrapper.js +58 -0
  222. package/lib/esm/components/Builder/BuilderWrapper.js.map +1 -0
  223. package/lib/esm/components/Builder/ContextMenu.js +31 -30
  224. package/lib/esm/components/Builder/ContextMenu.js.map +1 -1
  225. package/lib/esm/components/Builder/DndWrapper.js +10 -10
  226. package/lib/esm/components/Builder/DndWrapper.js.map +1 -1
  227. package/lib/esm/components/Builder/Element.js +50 -43
  228. package/lib/esm/components/Builder/Element.js.map +1 -1
  229. package/lib/esm/components/Builder/Page.js +128 -83
  230. package/lib/esm/components/Builder/Page.js.map +1 -1
  231. package/lib/esm/components/Builder/PageActions.js +35 -37
  232. package/lib/esm/components/Builder/PageActions.js.map +1 -1
  233. package/lib/esm/components/Builder/PageAdder.js +11 -12
  234. package/lib/esm/components/Builder/PageAdder.js.map +1 -1
  235. package/lib/esm/components/Builder/Panel.js +8 -10
  236. package/lib/esm/components/Builder/Panel.js.map +1 -1
  237. package/lib/esm/components/Builder/ReportItemRenderer.js +7 -6
  238. package/lib/esm/components/Builder/ReportItemRenderer.js.map +1 -1
  239. package/lib/esm/components/Builder/Scene.js +77 -203
  240. package/lib/esm/components/Builder/Scene.js.map +1 -1
  241. package/lib/esm/components/Builder/SearchInput.js +28 -58
  242. package/lib/esm/components/Builder/SearchInput.js.map +1 -1
  243. package/lib/esm/components/Builder/Section.js +8 -10
  244. package/lib/esm/components/Builder/Section.js.map +1 -1
  245. package/lib/esm/components/Builder/Tabs.js +19 -16
  246. package/lib/esm/components/Builder/Tabs.js.map +1 -1
  247. package/lib/esm/components/Builder/ZoomControls.js +20 -30
  248. package/lib/esm/components/Builder/ZoomControls.js.map +1 -1
  249. package/lib/esm/components/DraggableItem/DraggableItem.js +165 -156
  250. package/lib/esm/components/DraggableItem/DraggableItem.js.map +1 -1
  251. package/lib/esm/components/DraggableItem/DraggableItemActions.js +12 -14
  252. package/lib/esm/components/DraggableItem/DraggableItemActions.js.map +1 -1
  253. package/lib/esm/components/DraggableItem/DraggableItemLayer.js +23 -20
  254. package/lib/esm/components/DraggableItem/DraggableItemLayer.js.map +1 -1
  255. package/lib/esm/components/Elements/Chart.js +3 -4
  256. package/lib/esm/components/Elements/Chart.js.map +1 -1
  257. package/lib/esm/components/Elements/Icon.js +3 -5
  258. package/lib/esm/components/Elements/Icon.js.map +1 -1
  259. package/lib/esm/components/Elements/Image.js +11 -12
  260. package/lib/esm/components/Elements/Image.js.map +1 -1
  261. package/lib/esm/components/Elements/RichText.js +16 -14
  262. package/lib/esm/components/Elements/RichText.js.map +1 -1
  263. package/lib/esm/components/Elements/Shapes.js +2 -4
  264. package/lib/esm/components/Elements/Shapes.js.map +1 -1
  265. package/lib/esm/components/ItemPositioner.js +6 -8
  266. package/lib/esm/components/ItemPositioner.js.map +1 -1
  267. package/lib/esm/components/PageItemResizer.js +3 -7
  268. package/lib/esm/components/PageItemResizer.js.map +1 -1
  269. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js +25 -59
  270. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
  271. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js +2 -4
  272. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js.map +1 -1
  273. package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js +8 -15
  274. package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
  275. package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js +56 -22
  276. package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
  277. package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +48 -0
  278. package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
  279. package/lib/esm/components/Panels/AllSlidesPanel/PageList.js +140 -48
  280. package/lib/esm/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
  281. package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js +17 -18
  282. package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
  283. package/lib/esm/components/Panels/LeftPanel/Elements.js +49 -53
  284. package/lib/esm/components/Panels/LeftPanel/Elements.js.map +1 -1
  285. package/lib/esm/components/Panels/LeftPanel/LeftPanel.js +6 -34
  286. package/lib/esm/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
  287. package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js +4 -4
  288. package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
  289. package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js +4 -3
  290. package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
  291. package/lib/esm/components/Panels/RightPanel/RightPanel.js +141 -145
  292. package/lib/esm/components/Panels/RightPanel/RightPanel.js.map +1 -1
  293. package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js +7 -4
  294. package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
  295. package/lib/esm/components/Panels/RightPanel/Settings.js +21 -22
  296. package/lib/esm/components/Panels/RightPanel/Settings.js.map +1 -1
  297. package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js +106 -96
  298. package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
  299. package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js +17 -18
  300. package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
  301. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js +33 -66
  302. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  303. package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js +9 -9
  304. package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
  305. package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js +62 -28
  306. package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
  307. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +48 -0
  308. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
  309. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js +8 -9
  310. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
  311. package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js +165 -111
  312. package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
  313. package/lib/esm/components/Presentation/Presentation.js +19 -69
  314. package/lib/esm/components/Presentation/Presentation.js.map +1 -1
  315. package/lib/esm/components/Presentation/PresentationBar/PageNavigation.js +8 -10
  316. package/lib/esm/components/Presentation/PresentationBar/PageNavigation.js.map +1 -1
  317. package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js +46 -13
  318. package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
  319. package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js +45 -87
  320. package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
  321. package/lib/esm/components/Presentation/PresentationBar/SelectZoom.js +8 -10
  322. package/lib/esm/components/Presentation/PresentationBar/SelectZoom.js.map +1 -1
  323. package/lib/esm/components/Presentation/PresentationWrapper.js +57 -60
  324. package/lib/esm/components/Presentation/PresentationWrapper.js.map +1 -1
  325. package/lib/esm/components/Presentation/ProgressBar.js +4 -6
  326. package/lib/esm/components/Presentation/ProgressBar.js.map +1 -1
  327. package/lib/esm/components/Preview/Preview.js +14 -68
  328. package/lib/esm/components/Preview/Preview.js.map +1 -1
  329. package/lib/esm/components/Preview/StaticItem.js +5 -15
  330. package/lib/esm/components/Preview/StaticItem.js.map +1 -1
  331. package/lib/esm/components/Preview/StaticPage.js +16 -22
  332. package/lib/esm/components/Preview/StaticPage.js.map +1 -1
  333. package/lib/esm/components/Preview/StaticScene.js +34 -56
  334. package/lib/esm/components/Preview/StaticScene.js.map +1 -1
  335. package/lib/esm/components/Print/Print.js +18 -57
  336. package/lib/esm/components/Print/Print.js.map +1 -1
  337. package/lib/esm/components/Print/PrintModal.js +49 -0
  338. package/lib/esm/components/Print/PrintModal.js.map +1 -0
  339. package/lib/esm/components/Print/{PrintModeWithoutContext.js → PrintWrapper.js} +11 -42
  340. package/lib/esm/components/Print/PrintWrapper.js.map +1 -0
  341. package/lib/esm/components/Report.js +29 -41
  342. package/lib/esm/components/Report.js.map +1 -1
  343. package/lib/esm/components/ReportItemsWrapper.js +20 -34
  344. package/lib/esm/components/ReportItemsWrapper.js.map +1 -1
  345. package/lib/esm/components/ReportWrapper.js +29 -58
  346. package/lib/esm/components/ReportWrapper.js.map +1 -1
  347. package/lib/esm/components/Settings/Button.js +8 -10
  348. package/lib/esm/components/Settings/Button.js.map +1 -1
  349. package/lib/esm/components/Settings/CheckboxGroup.js +8 -10
  350. package/lib/esm/components/Settings/CheckboxGroup.js.map +1 -1
  351. package/lib/esm/components/Settings/ColorPicker.js +18 -13
  352. package/lib/esm/components/Settings/ColorPicker.js.map +1 -1
  353. package/lib/esm/components/Settings/Dropdown.js +10 -12
  354. package/lib/esm/components/Settings/Dropdown.js.map +1 -1
  355. package/lib/esm/components/Settings/FieldSet.js +3 -4
  356. package/lib/esm/components/Settings/FieldSet.js.map +1 -1
  357. package/lib/esm/components/Settings/IconSelectBox.js +8 -10
  358. package/lib/esm/components/Settings/IconSelectBox.js.map +1 -1
  359. package/lib/esm/components/Settings/ImagePicker/EnterURL.js +4 -6
  360. package/lib/esm/components/Settings/ImagePicker/EnterURL.js.map +1 -1
  361. package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +6 -8
  362. package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
  363. package/lib/esm/components/Settings/ImageUrl.js +8 -10
  364. package/lib/esm/components/Settings/ImageUrl.js.map +1 -1
  365. package/lib/esm/components/Settings/LayoutSizeSettings.js +4 -6
  366. package/lib/esm/components/Settings/LayoutSizeSettings.js.map +1 -1
  367. package/lib/esm/components/Settings/Orientation.js +8 -10
  368. package/lib/esm/components/Settings/Orientation.js.map +1 -1
  369. package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js +121 -0
  370. package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
  371. package/lib/esm/components/Settings/PageLayer/LayerItem.js +92 -34
  372. package/lib/esm/components/Settings/PageLayer/LayerItem.js.map +1 -1
  373. package/lib/esm/components/Settings/PageLayer/PageLayer.js +117 -52
  374. package/lib/esm/components/Settings/PageLayer/PageLayer.js.map +1 -1
  375. package/lib/esm/components/Settings/SegmentControl.js +8 -10
  376. package/lib/esm/components/Settings/SegmentControl.js.map +1 -1
  377. package/lib/esm/components/Settings/SelectBox.js +8 -10
  378. package/lib/esm/components/Settings/SelectBox.js.map +1 -1
  379. package/lib/esm/components/Settings/SettingsItemRenderer.js +9 -11
  380. package/lib/esm/components/Settings/SettingsItemRenderer.js.map +1 -1
  381. package/lib/esm/components/Settings/SizeSettings.js +4 -6
  382. package/lib/esm/components/Settings/SizeSettings.js.map +1 -1
  383. package/lib/esm/components/Settings/Slider.js +8 -10
  384. package/lib/esm/components/Settings/Slider.js.map +1 -1
  385. package/lib/esm/components/Settings/Switch.js +8 -10
  386. package/lib/esm/components/Settings/Switch.js.map +1 -1
  387. package/lib/esm/components/Settings/Textbox.js +12 -14
  388. package/lib/esm/components/Settings/Textbox.js.map +1 -1
  389. package/lib/esm/components/Settings/Toggle.js +8 -10
  390. package/lib/esm/components/Settings/Toggle.js.map +1 -1
  391. package/lib/esm/components/StaticElements/StaticRichText.js +26 -30
  392. package/lib/esm/components/StaticElements/StaticRichText.js.map +1 -1
  393. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -4
  394. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
  395. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js +4 -6
  396. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js.map +1 -1
  397. package/lib/esm/components/TextEditor/QuillEditor.js +6 -11
  398. package/lib/esm/components/TextEditor/QuillEditor.js.map +1 -1
  399. package/lib/esm/components/TextEditor/TextEditor.js +17 -18
  400. package/lib/esm/components/TextEditor/TextEditor.js.map +1 -1
  401. package/lib/esm/components/withClickOutside.js +11 -12
  402. package/lib/esm/components/withClickOutside.js.map +1 -1
  403. package/lib/esm/components/withZoomPanPinchHOC.js +10 -12
  404. package/lib/esm/components/withZoomPanPinchHOC.js.map +1 -1
  405. package/lib/esm/constants/eventIgnoredRoles.js +9 -0
  406. package/lib/esm/constants/eventIgnoredRoles.js.map +1 -0
  407. package/lib/esm/constants/texts.js +11 -0
  408. package/lib/esm/constants/texts.js.map +1 -1
  409. package/lib/esm/contexts/BuilderContext.js +199 -0
  410. package/lib/esm/contexts/BuilderContext.js.map +1 -0
  411. package/lib/esm/contexts/PresentationContext.js +131 -0
  412. package/lib/esm/contexts/PresentationContext.js.map +1 -0
  413. package/lib/esm/contexts/PropContext.js +135 -0
  414. package/lib/esm/contexts/PropContext.js.map +1 -0
  415. package/lib/esm/contexts/Providers.js +64 -0
  416. package/lib/esm/contexts/Providers.js.map +1 -0
  417. package/lib/esm/index.js +0 -1
  418. package/lib/esm/index.js.map +1 -1
  419. package/lib/esm/styles/_jfPrint.scss +17 -1
  420. package/lib/esm/styles/_jfReportsModal.scss +9 -9
  421. package/lib/esm/styles/_jfReportsPanels.scss +4 -1
  422. package/lib/esm/styles/_jfReportsReportItem.scss +1 -1
  423. package/lib/esm/styles/_jfReportsSVG.scss +0 -1
  424. package/lib/esm/styles/_jfReportsTextEditor.scss +5 -0
  425. package/lib/esm/styles/_jfSearchInput.scss +2 -2
  426. package/lib/esm/utils/functions.js +16 -9
  427. package/lib/esm/utils/functions.js.map +1 -1
  428. package/lib/esm/utils/getDefaultPresentationActions.js +1 -1
  429. package/lib/esm/utils/getDefaultPresentationActions.js.map +1 -1
  430. package/lib/esm/utils/hooks.js +66 -49
  431. package/lib/esm/utils/hooks.js.map +1 -1
  432. package/package.json +18 -14
  433. package/lib/cjs/components/Print/PrintMode.js +0 -59
  434. package/lib/cjs/components/Print/PrintMode.js.map +0 -1
  435. package/lib/cjs/components/Print/PrintModeWithoutContext.js.map +0 -1
  436. package/lib/cjs/components/ResponsiveContent.js +0 -15
  437. package/lib/cjs/components/ResponsiveContent.js.map +0 -1
  438. package/lib/cjs/utils/builderContext.js +0 -308
  439. package/lib/cjs/utils/builderContext.js.map +0 -1
  440. package/lib/cjs/utils/presentationContext.js +0 -144
  441. package/lib/cjs/utils/presentationContext.js.map +0 -1
  442. package/lib/cjs/utils/propContext.js +0 -133
  443. package/lib/cjs/utils/propContext.js.map +0 -1
  444. package/lib/esm/components/Print/PrintMode.js +0 -52
  445. package/lib/esm/components/Print/PrintMode.js.map +0 -1
  446. package/lib/esm/components/Print/PrintModeWithoutContext.js.map +0 -1
  447. package/lib/esm/components/ResponsiveContent.js +0 -13
  448. package/lib/esm/components/ResponsiveContent.js.map +0 -1
  449. package/lib/esm/utils/builderContext.js +0 -297
  450. package/lib/esm/utils/builderContext.js.map +0 -1
  451. package/lib/esm/utils/presentationContext.js +0 -133
  452. package/lib/esm/utils/presentationContext.js.map +0 -1
  453. package/lib/esm/utils/propContext.js +0 -122
  454. package/lib/esm/utils/propContext.js.map +0 -1
@@ -6,9 +6,8 @@ import 'core-js/modules/es.string.iterator.js';
6
6
  import 'core-js/modules/web.dom-collections.for-each.js';
7
7
  import { memo, useState, useEffect } from 'react';
8
8
  import PropTypes from 'prop-types';
9
- import { useDrag } from 'react-dnd-cjs';
10
- import { getEmptyImage } from 'react-dnd-html5-backend-cjs';
11
- import isEqual from 'lodash.isequal';
9
+ import { useDrag } from 'react-dnd';
10
+ import { getEmptyImage } from 'react-dnd-html5-backend';
12
11
  import ItemPositioner from '../ItemPositioner.js';
13
12
  import { DRAGGABLE_ITEM_TYPE } from '../../constants/itemTypes.js';
14
13
  import { getStyles, calculateGuidePositions, proximityListener, getPosition } from '../../utils/functions.js';
@@ -17,6 +16,8 @@ import ErrorBoundry from '../ErrorBoundary.js';
17
16
  import { reportItem } from '../../constants/classNames.js';
18
17
  import generateId from '../../utils/generateId.js';
19
18
  import { addEventListenerForSidebar, removeEventListenerForSidebar } from '../../utils/scrollZoneFunctions.js';
19
+ import { useBuilderStore } from '../../contexts/BuilderContext.js';
20
+ import { usePropStore } from '../../contexts/PropContext.js';
20
21
  import { jsxs, jsx } from 'react/jsx-runtime';
21
22
 
22
23
  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; }
@@ -43,33 +44,80 @@ var reportItemStyle = {
43
44
  };
44
45
 
45
46
  var DraggableItem = function DraggableItem(_ref) {
46
- var children = _ref.children,
47
- guides = _ref.guides,
48
- isMultipleItemSelected = _ref.isMultipleItemSelected,
49
- isResize = _ref.isResize,
50
- isRightPanelOpen = _ref.isRightPanelOpen,
51
- isSelected = _ref.isSelected,
52
- isTextEditorOpen = _ref.isTextEditorOpen,
53
- item = _ref.item,
54
- matches = _ref.matches,
55
- onAnEventTrigger = _ref.onAnEventTrigger,
56
- onItemAdd = _ref.onItemAdd,
57
- onItemChange = _ref.onItemChange,
58
- onItemRemove = _ref.onItemRemove,
59
- onItemResize = _ref.onItemResize,
60
- setActiveElement = _ref.setActiveElement,
61
- setContextMenuProps = _ref.setContextMenuProps,
62
- setIsResize = _ref.setIsResize,
63
- setIsRightPanelOpen = _ref.setIsRightPanelOpen,
64
- setMatches = _ref.setMatches,
65
- zoom = _ref.zoom;
66
- var height = item.height,
67
- id = item.id,
68
- isLocked = item.isLocked,
69
- left = item.left,
70
- pageID = item.pageID,
71
- top = item.top,
72
- width = item.width;
47
+ var _ref$children = _ref.children,
48
+ children = _ref$children === void 0 ? null : _ref$children,
49
+ _ref$guides = _ref.guides,
50
+ guides = _ref$guides === void 0 ? {} : _ref$guides,
51
+ _ref$isMultipleItemSe = _ref.isMultipleItemSelected,
52
+ isMultipleItemSelected = _ref$isMultipleItemSe === void 0 ? false : _ref$isMultipleItemSe,
53
+ _ref$isResize = _ref.isResize,
54
+ isResize = _ref$isResize === void 0 ? false : _ref$isResize,
55
+ _ref$isSelected = _ref.isSelected,
56
+ isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
57
+ _ref$item = _ref.item,
58
+ _item2 = _ref$item === void 0 ? {} : _ref$item,
59
+ _ref$matches = _ref.matches,
60
+ matches = _ref$matches === void 0 ? {} : _ref$matches,
61
+ _ref$setIsResize = _ref.setIsResize,
62
+ setIsResize = _ref$setIsResize === void 0 ? function () {} : _ref$setIsResize,
63
+ _ref$setMatches = _ref.setMatches,
64
+ setMatches = _ref$setMatches === void 0 ? function () {} : _ref$setMatches;
65
+
66
+ var height = _item2.height,
67
+ id = _item2.id,
68
+ isLocked = _item2.isLocked,
69
+ left = _item2.left,
70
+ pageID = _item2.pageID,
71
+ top = _item2.top,
72
+ width = _item2.width;
73
+
74
+ var _useState = useState({
75
+ height: height,
76
+ left: left,
77
+ top: top,
78
+ width: width
79
+ }),
80
+ _useState2 = _slicedToArray(_useState, 2),
81
+ _useState2$ = _useState2[0],
82
+ stateHeight = _useState2$.height,
83
+ stateLeft = _useState2$.left,
84
+ stateTop = _useState2$.top,
85
+ stateWidth = _useState2$.width,
86
+ setResizeSize = _useState2[1];
87
+
88
+ var onAnEventTrigger = usePropStore(function (state) {
89
+ return state.onAnEventTrigger;
90
+ });
91
+ var onItemAdd = usePropStore(function (state) {
92
+ return state.onItemAdd;
93
+ });
94
+ var onItemChange = usePropStore(function (state) {
95
+ return state.onItemChange;
96
+ });
97
+ var onItemRemove = usePropStore(function (state) {
98
+ return state.onItemRemove;
99
+ });
100
+ var onItemResize = usePropStore(function (state) {
101
+ return state.onItemResize;
102
+ });
103
+ var setActiveElement = useBuilderStore(function (state) {
104
+ return state.setActiveElement;
105
+ });
106
+ var setContextMenuProps = useBuilderStore(function (state) {
107
+ return state.setContextMenuProps;
108
+ });
109
+ var zoom = useBuilderStore(function (state) {
110
+ return state.zoom;
111
+ });
112
+ var isTextEditorOpen = useBuilderStore(function (state) {
113
+ return state.isTextEditorOpen;
114
+ });
115
+ var isRightPanelOpen = useBuilderStore(function (state) {
116
+ return state.isRightPanelOpen;
117
+ });
118
+ var setIsRightPanelOpen = useBuilderStore(function (state) {
119
+ return state.setIsRightPanelOpen;
120
+ });
73
121
 
74
122
  var select = function select(event) {
75
123
  if (!isSelected) {
@@ -86,70 +134,81 @@ var DraggableItem = function DraggableItem(_ref) {
86
134
  }
87
135
  };
88
136
 
89
- var _useDrag = useDrag({
90
- begin: function begin() {
91
- if (!isSelected) select();
92
- addEventListenerForSidebar();
93
- },
94
- canDrag: !item.isLocked && !isTextEditorOpen ? true : false,
95
- collect: function collect(monitor) {
96
- return {
97
- isDragging: monitor.isDragging()
98
- };
99
- },
100
- end: function end() {
101
- removeEventListenerForSidebar();
102
- },
103
- isDragging: function isDragging() {
104
- return isMultipleItemSelected && isSelected || !isMultipleItemSelected && isSelected;
105
- },
106
- item: {
107
- height: height,
108
- id: id,
109
- left: left,
110
- top: top,
111
- type: DRAGGABLE_ITEM_TYPE,
112
- width: width
113
- }
114
- }),
137
+ var _canDrag = !_item2.isLocked && !isTextEditorOpen;
138
+
139
+ var _useDrag = useDrag(function () {
140
+ return {
141
+ canDrag: function canDrag() {
142
+ return _canDrag;
143
+ },
144
+ collect: function collect(monitor) {
145
+ return {
146
+ isDragging: monitor.isDragging()
147
+ };
148
+ },
149
+ end: function end(_item, monitor) {
150
+ var dropResult = monitor.getDropResult();
151
+
152
+ if (dropResult && dropResult[id]) {
153
+ var _dropResult$id = dropResult[id],
154
+ dropLeft = _dropResult$id.left,
155
+ dropTop = _dropResult$id.top;
156
+ setResizeSize(function (prev) {
157
+ return {
158
+ height: prev.height,
159
+ left: dropLeft,
160
+ top: dropTop,
161
+ width: prev.width
162
+ };
163
+ });
164
+ }
165
+
166
+ removeEventListenerForSidebar();
167
+ },
168
+ isDragging: function isDragging() {
169
+ return isMultipleItemSelected && isSelected || !isMultipleItemSelected && isSelected;
170
+ },
171
+ item: function item() {
172
+ select();
173
+ addEventListenerForSidebar();
174
+ return _item2;
175
+ },
176
+ type: DRAGGABLE_ITEM_TYPE
177
+ };
178
+ }, [_item2, _canDrag, id, isMultipleItemSelected, isSelected]),
115
179
  _useDrag2 = _slicedToArray(_useDrag, 3),
116
180
  isDragging = _useDrag2[0].isDragging,
117
181
  drag = _useDrag2[1],
118
182
  preview = _useDrag2[2];
119
183
 
120
- var _useState = useState({
121
- height: height,
122
- left: left,
123
- top: top,
124
- width: width
125
- }),
126
- _useState2 = _slicedToArray(_useState, 2),
127
- _useState2$ = _useState2[0],
128
- stateHeight = _useState2$.height,
129
- stateLeft = _useState2$.left,
130
- stateTop = _useState2$.top,
131
- stateWidth = _useState2$.width,
132
- setResizeSize = _useState2[1];
133
-
134
184
  useEffect(function () {
135
- preview(getEmptyImage(), {
136
- captureDraggingState: true
137
- });
185
+ if (preview) {
186
+ preview(getEmptyImage(), {
187
+ captureDraggingState: true
188
+ });
189
+ }
190
+ }, [preview]);
191
+ useEffect(function () {
192
+ if (!isResize) {
193
+ setResizeSize(function (prev) {
194
+ if (prev.left !== left || prev.top !== top || prev.width !== width || prev.height !== height) {
195
+ return _objectSpread(_objectSpread({}, prev), {}, {
196
+ height: height,
197
+ left: left,
198
+ top: top,
199
+ width: width
200
+ });
201
+ }
138
202
 
139
- if (width !== stateWidth || height !== stateHeight || left !== stateLeft || top !== stateTop) {
140
- setResizeSize({
141
- height: height,
142
- left: left,
143
- top: top,
144
- width: width
203
+ return prev;
145
204
  });
146
205
  }
147
- }, [width, height, left, top]);
206
+ }, [left, top, width, height, isResize]);
148
207
 
149
208
  var onResizeStop = function onResizeStop(deltaWidth, deltaHeight, direction) {
150
- var activeItem = _objectSpread(_objectSpread({}, item), {}, {
151
- height: item.height + deltaHeight,
152
- width: item.width + deltaWidth
209
+ var activeItem = _objectSpread(_objectSpread({}, _item2), {}, {
210
+ height: _item2.height + deltaHeight,
211
+ width: _item2.width + deltaWidth
153
212
  });
154
213
 
155
214
  if (/left/i.test(direction)) activeItem.left = activeItem.left - deltaWidth;
@@ -199,7 +258,7 @@ var DraggableItem = function DraggableItem(_ref) {
199
258
  }
200
259
 
201
260
  setIsResize(false);
202
- onItemResize(item, newResizeSize);
261
+ onItemResize(_item2, newResizeSize);
203
262
  };
204
263
 
205
264
  var onResize = function onResize(deltaWidth, deltaHeight, direction) {
@@ -207,20 +266,20 @@ var DraggableItem = function DraggableItem(_ref) {
207
266
  setIsResize(true);
208
267
  }
209
268
 
210
- var activeItem = _objectSpread(_objectSpread({}, item), {}, {
211
- height: item.height + deltaHeight,
212
- width: item.width + deltaWidth
269
+ var activeItem = _objectSpread(_objectSpread({}, _item2), {}, {
270
+ height: _item2.height + deltaHeight,
271
+ width: _item2.width + deltaWidth
213
272
  });
214
273
 
215
274
  if (/left/i.test(direction)) activeItem.left = activeItem.left - deltaWidth;
216
275
  if (/top/i.test(direction)) activeItem.top = activeItem.top - deltaHeight;
217
276
 
218
- var _guides = _objectSpread(_objectSpread({}, guides), {}, _defineProperty({}, item.id, _objectSpread(_objectSpread({}, guides[item.id]), {}, {
277
+ var _guides = _objectSpread(_objectSpread({}, guides), {}, _defineProperty({}, _item2.id, _objectSpread(_objectSpread({}, guides[_item2.id]), {}, {
219
278
  x: calculateGuidePositions(activeItem, 'x', zoom),
220
279
  y: calculateGuidePositions(activeItem, 'y', zoom)
221
280
  })));
222
281
 
223
- setMatches(proximityListener(item.id, _guides));
282
+ setMatches(proximityListener(_item2.id, _guides));
224
283
  setResizeSize({
225
284
  height: activeItem.height,
226
285
  left: activeItem.left,
@@ -232,18 +291,18 @@ var DraggableItem = function DraggableItem(_ref) {
232
291
  var deleteItem = function deleteItem() {
233
292
  setIsRightPanelOpen(false);
234
293
  setActiveElement(null);
235
- onItemRemove(item);
236
- onAnEventTrigger('removeItem', item.itemType);
294
+ onItemRemove(_item2);
295
+ onAnEventTrigger('removeItem', _item2.itemType);
237
296
  };
238
297
 
239
298
  var duplicateItem = function duplicateItem() {
240
299
  var itemID = generateId();
241
- onItemAdd(_objectSpread(_objectSpread({}, item), {}, {
300
+ onItemAdd(_objectSpread(_objectSpread({}, _item2), {}, {
242
301
  id: itemID,
243
- left: item.left + 50,
244
- top: item.top + 50
302
+ left: _item2.left + 50,
303
+ top: _item2.top + 50
245
304
  }));
246
- onAnEventTrigger('duplicateItem', item.itemType);
305
+ onAnEventTrigger('duplicateItem', _item2.itemType);
247
306
  setActiveElement(itemID);
248
307
 
249
308
  if (!isRightPanelOpen) {
@@ -275,7 +334,7 @@ var DraggableItem = function DraggableItem(_ref) {
275
334
  }
276
335
 
277
336
  e.preventDefault();
278
- onAnEventTrigger('openContextMenu', item.itemType);
337
+ onAnEventTrigger('openContextMenu', _item2.itemType);
279
338
  setContextMenuProps({
280
339
  id: id,
281
340
  pageID: pageID,
@@ -295,7 +354,7 @@ var DraggableItem = function DraggableItem(_ref) {
295
354
  var duplicateWithAltKey = function duplicateWithAltKey(e) {
296
355
  if (e.altKey) {
297
356
  var itemID = generateId();
298
- var itemToAdd = item;
357
+ var itemToAdd = _item2;
299
358
  setTimeout(function () {
300
359
  onItemAdd(_objectSpread(_objectSpread({}, itemToAdd), {}, {
301
360
  id: itemID,
@@ -308,15 +367,15 @@ var DraggableItem = function DraggableItem(_ref) {
308
367
  };
309
368
 
310
369
  var changeLockStatus = function changeLockStatus() {
311
- onAnEventTrigger(item.isLocked ? 'unlockReportItem' : 'lockReportItem', item.itemType);
370
+ onAnEventTrigger(_item2.isLocked ? 'unlockReportItem' : 'lockReportItem', _item2.itemType);
312
371
  onItemChange({
313
- id: item.id
372
+ id: _item2.id
314
373
  }, {
315
- isLocked: item.isLocked ? false : true
374
+ isLocked: _item2.isLocked ? false : true
316
375
  });
317
376
 
318
- if (!item.isLocked) {
319
- setActiveElement(item.id, false);
377
+ if (!_item2.isLocked) {
378
+ setActiveElement(_item2.id, false);
320
379
  setIsRightPanelOpen(false);
321
380
  }
322
381
  };
@@ -333,11 +392,10 @@ var DraggableItem = function DraggableItem(_ref) {
333
392
  children: /*#__PURE__*/jsx("div", {
334
393
  ref: drag,
335
394
  className: "".concat(reportItem).concat(isLocked ? ' isLocked' : ''),
336
- onClick: select,
337
395
  onContextMenu: onContextMenuClick,
338
396
  onDoubleClick: onDoubleClick,
339
397
  onDragStart: duplicateWithAltKey,
340
- onKeyDown: function onKeyDown() {},
398
+ onMouseDown: select,
341
399
  style: reportItemStyle,
342
400
  children: children
343
401
  })
@@ -347,10 +405,9 @@ var DraggableItem = function DraggableItem(_ref) {
347
405
  duplicateItem: duplicateItem,
348
406
  isDragging: isDragging,
349
407
  isMultipleItemSelected: isMultipleItemSelected,
350
- isRightPanelOpen: isRightPanelOpen,
351
408
  isSelectedElement: isSelected,
352
409
  isTextEditorOpen: isTextEditorOpen,
353
- item: item,
410
+ item: _item2,
354
411
  onClickOutside: onClickOutside,
355
412
  onResize: onResize,
356
413
  onResizeStop: onResizeStop,
@@ -371,9 +428,7 @@ DraggableItem.propTypes = {
371
428
  guides: PropTypes.shape({}),
372
429
  isMultipleItemSelected: PropTypes.bool,
373
430
  isResize: PropTypes.bool,
374
- isRightPanelOpen: PropTypes.bool,
375
431
  isSelected: PropTypes.bool,
376
- isTextEditorOpen: PropTypes.bool,
377
432
  item: PropTypes.shape({
378
433
  height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
379
434
  id: PropTypes.string,
@@ -385,56 +440,10 @@ DraggableItem.propTypes = {
385
440
  width: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
386
441
  }),
387
442
  matches: PropTypes.shape({}),
388
- onAnEventTrigger: PropTypes.func,
389
- onItemAdd: PropTypes.func,
390
- onItemChange: PropTypes.func,
391
- onItemRemove: PropTypes.func,
392
- onItemResize: PropTypes.func,
393
- setActiveElement: PropTypes.func,
394
- setContextMenuProps: PropTypes.func,
395
443
  setIsResize: PropTypes.func,
396
- setIsRightPanelOpen: PropTypes.func,
397
- setMatches: PropTypes.func,
398
- zoom: PropTypes.number
399
- };
400
- DraggableItem.defaultProps = {
401
- children: null,
402
- guides: {},
403
- isMultipleItemSelected: false,
404
- isResize: false,
405
- isRightPanelOpen: false,
406
- isSelected: false,
407
- isTextEditorOpen: false,
408
- item: {},
409
- matches: {},
410
- onAnEventTrigger: function onAnEventTrigger() {},
411
- onItemAdd: function onItemAdd() {},
412
- onItemChange: function onItemChange() {},
413
- onItemRemove: function onItemRemove() {},
414
- onItemResize: function onItemResize() {},
415
- setActiveElement: function setActiveElement() {},
416
- setContextMenuProps: function setContextMenuProps() {},
417
- setIsResize: function setIsResize() {},
418
- setIsRightPanelOpen: function setIsRightPanelOpen() {},
419
- setMatches: function setMatches() {},
420
- zoom: 1
421
- }; // avoid unnecessary renders while resizing
422
-
423
- var areEqual = function areEqual(prevProps, nextProps) {
424
- if (prevProps.hashCode !== nextProps.hashCode) return false;
425
- if (!isEqual(prevProps.item, nextProps.item)) return false;
426
- if (prevProps.matches !== nextProps.matches) return false;
427
- if (prevProps.isTextEditorOpen !== nextProps.isTextEditorOpen) return false;
428
-
429
- if (prevProps.isSelected && nextProps.isSelected || prevProps.isResize !== nextProps.isResize) {
430
- return false;
431
- }
432
-
433
- if (prevProps.isSelected !== nextProps.isSelected) return false;
434
- return true;
444
+ setMatches: PropTypes.func
435
445
  };
436
-
437
- var DraggableItem$1 = /*#__PURE__*/memo(DraggableItem, areEqual);
446
+ var DraggableItem$1 = /*#__PURE__*/memo(DraggableItem);
438
447
 
439
448
  export default DraggableItem$1;
440
449
  //# sourceMappingURL=DraggableItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DraggableItem.js","sources":["../../../../src/components/DraggableItem/DraggableItem.js"],"sourcesContent":["import { useEffect, useState, memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd-cjs';\nimport { getEmptyImage } from 'react-dnd-html5-backend-cjs';\nimport isEqual from 'lodash.isequal';\nimport ItemPositioner from '../ItemPositioner';\nimport { DRAGGABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getStyles,\n getPosition, calculateGuidePositions, proximityListener,\n} from '../../utils/functions';\nimport PageItemResizer from '../PageItemResizer';\nimport ErrorBoundary from '../ErrorBoundary';\nimport * as classNames from '../../constants/classNames';\nimport generateId from '../../utils/generateId';\nimport {\n addEventListenerForSidebar,\n removeEventListenerForSidebar,\n} from '../../utils/scrollZoneFunctions';\n\nconst exceptionalClassesForClickOutside = ['contextMenu-itemLabel', 'contextMenu-item'];\nconst reportItemStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst DraggableItem = ({\n children,\n guides,\n isMultipleItemSelected,\n isResize,\n isRightPanelOpen,\n isSelected,\n isTextEditorOpen,\n item,\n matches,\n onAnEventTrigger,\n onItemAdd,\n onItemChange,\n onItemRemove,\n onItemResize,\n setActiveElement,\n setContextMenuProps,\n setIsResize,\n setIsRightPanelOpen,\n setMatches,\n zoom,\n}) => {\n const {\n height,\n id,\n isLocked,\n left,\n pageID,\n top,\n width,\n } = item;\n\n const select = event => {\n if (!isSelected) {\n if (!event || !event.metaKey) {\n if (isLocked) {\n setActiveElement(id, false);\n setIsRightPanelOpen(false);\n } else {\n setActiveElement(id);\n }\n } else {\n setActiveElement(id, undefined, true);\n }\n }\n };\n\n const [{ isDragging }, drag, preview] = useDrag({\n begin: () => {\n if (!isSelected) select();\n addEventListenerForSidebar();\n },\n canDrag: (!item.isLocked && !isTextEditorOpen) ? true : false,\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n end: () => {\n removeEventListenerForSidebar();\n },\n isDragging: () => {\n return (isMultipleItemSelected && isSelected) || (!isMultipleItemSelected && isSelected);\n },\n item: {\n height,\n id,\n left,\n top,\n type: DRAGGABLE_ITEM_TYPE,\n width,\n },\n });\n\n const [\n {\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n },\n setResizeSize,\n ] = useState({\n height,\n left,\n top,\n width,\n });\n\n useEffect(() => {\n preview(getEmptyImage(), { captureDraggingState: true });\n if (width !== stateWidth || height !== stateHeight || left !== stateLeft || top !== stateTop) {\n setResizeSize({\n height,\n left,\n top,\n width,\n });\n }\n }, [width, height, left, top]);\n\n const onResizeStop = (deltaWidth, deltaHeight, direction) => {\n const activeItem = {\n ...item,\n height: item.height + deltaHeight,\n width: item.width + deltaWidth,\n };\n if (/left/i.test(direction)) activeItem.left = activeItem.left - deltaWidth;\n if (/top/i.test(direction)) activeItem.top = activeItem.top - deltaHeight;\n let newActiveBoxLeft = activeItem.left;\n let newActiveBoxTop = activeItem.top;\n Object.keys(matches).forEach(axis => {\n const { activeBoxGuides, matchedArray, proximity } = matches[axis];\n const activeBoxProximityIndex = proximity.activeBoxIndex;\n const matchedBoxProximityIndex = proximity.matchedBoxIndex;\n if (axis === 'x') {\n if (activeBoxGuides[activeBoxProximityIndex] > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxLeft = activeItem.left - proximity.value;\n } else {\n newActiveBoxLeft = activeItem.left + proximity.value;\n }\n } else if (activeBoxGuides[activeBoxProximityIndex]\n > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxTop = activeItem.top - proximity.value;\n } else {\n newActiveBoxTop = activeItem.top + proximity.value;\n }\n });\n\n let newResizeSize = {\n height: activeItem.height,\n left: activeItem.left,\n top: activeItem.top,\n width: activeItem.width,\n };\n\n if (!(/top/i.test(direction) && /left/i.test(direction))) {\n newResizeSize = {\n ...newResizeSize,\n height: newResizeSize.height + (newActiveBoxTop - activeItem.top),\n width: newResizeSize.width + (newActiveBoxLeft - activeItem.left),\n };\n }\n if (/top/i.test(direction) && newActiveBoxTop !== newResizeSize.top) {\n newResizeSize.top = newActiveBoxTop;\n }\n if (/left/i.test(direction) && newActiveBoxLeft !== newResizeSize.left) {\n newResizeSize.left = newActiveBoxLeft;\n }\n setIsResize(false);\n onItemResize(item, newResizeSize);\n };\n\n const onResize = (deltaWidth, deltaHeight, direction) => {\n if (!isResize) { setIsResize(true); }\n const activeItem = {\n ...item,\n height: item.height + deltaHeight,\n width: item.width + deltaWidth,\n };\n if (/left/i.test(direction)) activeItem.left = activeItem.left - deltaWidth;\n if (/top/i.test(direction)) activeItem.top = activeItem.top - deltaHeight;\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 setMatches(proximityListener(item.id, _guides));\n setResizeSize({\n height: activeItem.height,\n left: activeItem.left,\n top: activeItem.top,\n width: activeItem.width,\n });\n };\n\n const deleteItem = () => {\n setIsRightPanelOpen(false);\n setActiveElement(null);\n onItemRemove(item);\n onAnEventTrigger('removeItem', item.itemType);\n };\n\n const duplicateItem = () => {\n const itemID = generateId();\n onItemAdd({\n ...item,\n id: itemID,\n left: item.left + 50,\n top: item.top + 50,\n });\n onAnEventTrigger('duplicateItem', item.itemType);\n setActiveElement(itemID);\n if (!isRightPanelOpen) {\n setIsRightPanelOpen(true);\n }\n };\n\n const onClickOutside = event => {\n // clickoutside should not work for scrollbar\n const viewPort = document.querySelector('.jfReport-viewport');\n const { clientHeight, offsetHeight } = viewPort;\n const headerHeight = window.innerHeight - offsetHeight;\n if (event.clientY - headerHeight >= clientHeight\n || Array.from(event.target.classList)\n .some(xClass => exceptionalClassesForClickOutside.includes(xClass))) {\n return;\n }\n setIsRightPanelOpen(false);\n setActiveElement(null);\n };\n\n const onContextMenuClick = e => {\n if (\n e.target.contentEditable === 'true'\n || isTextEditorOpen\n ) {\n // Dont override behaviour on text edits.\n return;\n }\n\n e.preventDefault();\n onAnEventTrigger('openContextMenu', item.itemType);\n setContextMenuProps({\n id,\n pageID,\n position: getPosition(e),\n });\n };\n\n const onDoubleClick = e => {\n if (\n e.target.contentEditable === 'true'\n || isTextEditorOpen\n ) {\n // Dont override behaviour on text edits.\n return;\n }\n\n setIsRightPanelOpen(true);\n };\n\n const duplicateWithAltKey = e => {\n if (e.altKey) {\n const itemID = generateId();\n const itemToAdd = item;\n setTimeout(() => {\n onItemAdd({\n ...itemToAdd,\n id: itemID,\n left: itemToAdd.left,\n top: itemToAdd.top,\n });\n onAnEventTrigger('duplicateItem', itemToAdd.itemType);\n });\n }\n };\n\n const changeLockStatus = () => {\n onAnEventTrigger(item.isLocked ? 'unlockReportItem' : 'lockReportItem', item.itemType);\n onItemChange({ id: item.id }, { isLocked: item.isLocked ? false : true });\n if (!item.isLocked) {\n setActiveElement(item.id, false);\n setIsRightPanelOpen(false);\n }\n };\n\n return (\n <ErrorBoundary>\n <ItemPositioner\n classNames={`reportItemWrapper${isSelected ? ' isSelected' : ''}`}\n style={{\n ...getStyles(left, top, isDragging),\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n }}\n >\n <div\n ref={drag}\n className={`${classNames.reportItem}${isLocked ? ' isLocked' : ''}`}\n onClick={select}\n onContextMenu={onContextMenuClick}\n onDoubleClick={onDoubleClick}\n onDragStart={duplicateWithAltKey}\n onKeyDown={() => {}}\n style={reportItemStyle}\n >\n {children}\n </div>\n </ItemPositioner>\n <PageItemResizer\n changeLockStatus={changeLockStatus}\n deleteItem={deleteItem}\n duplicateItem={duplicateItem}\n isDragging={isDragging}\n isMultipleItemSelected={isMultipleItemSelected}\n isRightPanelOpen={isRightPanelOpen}\n isSelectedElement={isSelected}\n isTextEditorOpen={isTextEditorOpen}\n item={item}\n onClickOutside={onClickOutside}\n onResize={onResize}\n onResizeStop={onResizeStop}\n pageID={pageID}\n setActiveElement={setActiveElement}\n setIsRightPanelOpen={setIsRightPanelOpen}\n stateHeight={stateHeight}\n stateLeft={stateLeft}\n stateTop={stateTop}\n stateWidth={stateWidth}\n zoom={zoom}\n />\n </ErrorBoundary>\n );\n};\n\nDraggableItem.propTypes = {\n children: PropTypes.any,\n guides: PropTypes.shape({}),\n isMultipleItemSelected: PropTypes.bool,\n isResize: PropTypes.bool,\n isRightPanelOpen: PropTypes.bool,\n isSelected: PropTypes.bool,\n isTextEditorOpen: PropTypes.bool,\n item: PropTypes.shape({\n height: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n itemType: PropTypes.string,\n left: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n pageID: PropTypes.string,\n top: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n width: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n matches: PropTypes.shape({}),\n onAnEventTrigger: PropTypes.func,\n onItemAdd: PropTypes.func,\n onItemChange: PropTypes.func,\n onItemRemove: PropTypes.func,\n onItemResize: PropTypes.func,\n setActiveElement: PropTypes.func,\n setContextMenuProps: PropTypes.func,\n setIsResize: PropTypes.func,\n setIsRightPanelOpen: PropTypes.func,\n setMatches: PropTypes.func,\n zoom: PropTypes.number,\n};\n\nDraggableItem.defaultProps = {\n children: null,\n guides: {},\n isMultipleItemSelected: false,\n isResize: false,\n isRightPanelOpen: false,\n isSelected: false,\n isTextEditorOpen: false,\n item: {},\n matches: {},\n onAnEventTrigger: () => {},\n onItemAdd: () => {},\n onItemChange: () => {},\n onItemRemove: () => {},\n onItemResize: () => {},\n setActiveElement: () => {},\n setContextMenuProps: () => {},\n setIsResize: () => {},\n setIsRightPanelOpen: () => {},\n setMatches: () => {},\n zoom: 1,\n};\n\n// avoid unnecessary renders while resizing\nconst areEqual = (prevProps, nextProps) => {\n if (prevProps.hashCode !== nextProps.hashCode) return false;\n if (!isEqual(prevProps.item, nextProps.item)) return false;\n if (prevProps.matches !== nextProps.matches) return false;\n if (prevProps.isTextEditorOpen !== nextProps.isTextEditorOpen) return false;\n if ((prevProps.isSelected && nextProps.isSelected) || prevProps.isResize !== nextProps.isResize) {\n return false;\n }\n if (prevProps.isSelected !== nextProps.isSelected) return false;\n return true;\n};\n\nexport default memo(DraggableItem, areEqual);\n"],"names":["exceptionalClassesForClickOutside","reportItemStyle","height","width","DraggableItem","children","guides","isMultipleItemSelected","isResize","isRightPanelOpen","isSelected","isTextEditorOpen","item","matches","onAnEventTrigger","onItemAdd","onItemChange","onItemRemove","onItemResize","setActiveElement","setContextMenuProps","setIsResize","setIsRightPanelOpen","setMatches","zoom","id","isLocked","left","pageID","top","select","event","metaKey","undefined","useDrag","begin","addEventListenerForSidebar","canDrag","collect","monitor","isDragging","end","removeEventListenerForSidebar","type","DRAGGABLE_ITEM_TYPE","drag","preview","useState","stateHeight","stateLeft","stateTop","stateWidth","setResizeSize","useEffect","getEmptyImage","captureDraggingState","onResizeStop","deltaWidth","deltaHeight","direction","activeItem","test","newActiveBoxLeft","newActiveBoxTop","Object","keys","forEach","axis","activeBoxGuides","matchedArray","proximity","activeBoxProximityIndex","activeBoxIndex","matchedBoxProximityIndex","matchedBoxIndex","value","newResizeSize","onResize","_guides","x","calculateGuidePositions","y","proximityListener","deleteItem","itemType","duplicateItem","itemID","generateId","onClickOutside","viewPort","document","querySelector","clientHeight","offsetHeight","headerHeight","window","innerHeight","clientY","Array","from","target","classList","some","xClass","includes","onContextMenuClick","e","contentEditable","preventDefault","position","getPosition","onDoubleClick","duplicateWithAltKey","altKey","itemToAdd","setTimeout","changeLockStatus","_jsxs","ErrorBoundary","_jsx","getStyles","classNames","propTypes","PropTypes","any","shape","bool","oneOfType","number","string","func","defaultProps","areEqual","prevProps","nextProps","hashCode","isEqual","memo"],"mappings":"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"}
1
+ {"version":3,"file":"DraggableItem.js","sources":["../../../../src/components/DraggableItem/DraggableItem.js"],"sourcesContent":["import { useEffect, useState, memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport ItemPositioner from '../ItemPositioner';\nimport { DRAGGABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getStyles,\n getPosition, calculateGuidePositions, proximityListener,\n} from '../../utils/functions';\nimport PageItemResizer from '../PageItemResizer';\nimport ErrorBoundary from '../ErrorBoundary';\nimport * as classNames from '../../constants/classNames';\nimport generateId from '../../utils/generateId';\nimport {\n addEventListenerForSidebar,\n removeEventListenerForSidebar,\n} from '../../utils/scrollZoneFunctions';\nimport { useBuilderStore } from '../../contexts/BuilderContext';\nimport { usePropStore } from '../../contexts/PropContext';\n\nconst exceptionalClassesForClickOutside = ['contextMenu-itemLabel', 'contextMenu-item'];\nconst reportItemStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst DraggableItem = ({\n children = null,\n guides = {},\n isMultipleItemSelected = false,\n isResize = false,\n isSelected = false,\n item = {},\n matches = {},\n setIsResize = () => {},\n setMatches = () => {},\n}) => {\n const {\n height,\n id,\n isLocked,\n left,\n pageID,\n top,\n width,\n } = item;\n\n const [\n {\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n },\n setResizeSize,\n ] = useState({\n height,\n left,\n top,\n width,\n });\n\n const onAnEventTrigger = usePropStore(state => state.onAnEventTrigger);\n const onItemAdd = usePropStore(state => state.onItemAdd);\n const onItemChange = usePropStore(state => state.onItemChange);\n const onItemRemove = usePropStore(state => state.onItemRemove);\n const onItemResize = usePropStore(state => state.onItemResize);\n const setActiveElement = useBuilderStore(state => state.setActiveElement);\n const setContextMenuProps = useBuilderStore(state => state.setContextMenuProps);\n const zoom = useBuilderStore(state => state.zoom);\n const isTextEditorOpen = useBuilderStore(state => state.isTextEditorOpen);\n const isRightPanelOpen = useBuilderStore(state => state.isRightPanelOpen);\n const setIsRightPanelOpen = useBuilderStore(state => state.setIsRightPanelOpen);\n\n const select = event => {\n if (!isSelected) {\n if (!event || !event.metaKey) {\n if (isLocked) {\n setActiveElement(id, false);\n setIsRightPanelOpen(false);\n } else {\n setActiveElement(id);\n }\n } else {\n setActiveElement(id, undefined, true);\n }\n }\n };\n\n const canDrag = !item.isLocked && !isTextEditorOpen;\n\n const [{ isDragging }, drag, preview] = useDrag(() => ({\n canDrag: () => canDrag,\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n end: (_item, monitor) => {\n const dropResult = monitor.getDropResult();\n if (dropResult && dropResult[id]) {\n const { left: dropLeft, top: dropTop } = dropResult[id];\n setResizeSize(prev => {\n return {\n height: prev.height,\n left: dropLeft,\n top: dropTop,\n width: prev.width,\n };\n });\n }\n removeEventListenerForSidebar();\n },\n isDragging: () => (isMultipleItemSelected && isSelected) || (!isMultipleItemSelected && isSelected),\n item: () => {\n select();\n addEventListenerForSidebar();\n return item;\n },\n type: DRAGGABLE_ITEM_TYPE,\n }), [\n item,\n canDrag,\n id,\n isMultipleItemSelected,\n isSelected,\n ]);\n\n useEffect(() => {\n if (preview) {\n preview(getEmptyImage(), { captureDraggingState: true });\n }\n }, [preview]);\n\n useEffect(() => {\n if (!isResize) {\n setResizeSize(prev => {\n if (prev.left !== left || prev.top !== top || prev.width !== width || prev.height !== height) {\n return {\n ...prev,\n height,\n left,\n top,\n width,\n };\n }\n\n return prev;\n });\n }\n }, [left, top, width, height, isResize]);\n\n const onResizeStop = (deltaWidth, deltaHeight, direction) => {\n const activeItem = {\n ...item,\n height: item.height + deltaHeight,\n width: item.width + deltaWidth,\n };\n if (/left/i.test(direction)) activeItem.left = activeItem.left - deltaWidth;\n if (/top/i.test(direction)) activeItem.top = activeItem.top - deltaHeight;\n let newActiveBoxLeft = activeItem.left;\n let newActiveBoxTop = activeItem.top;\n Object.keys(matches).forEach(axis => {\n const { activeBoxGuides, matchedArray, proximity } = matches[axis];\n const activeBoxProximityIndex = proximity.activeBoxIndex;\n const matchedBoxProximityIndex = proximity.matchedBoxIndex;\n if (axis === 'x') {\n if (activeBoxGuides[activeBoxProximityIndex] > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxLeft = activeItem.left - proximity.value;\n } else {\n newActiveBoxLeft = activeItem.left + proximity.value;\n }\n } else if (activeBoxGuides[activeBoxProximityIndex]\n > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxTop = activeItem.top - proximity.value;\n } else {\n newActiveBoxTop = activeItem.top + proximity.value;\n }\n });\n\n let newResizeSize = {\n height: activeItem.height,\n left: activeItem.left,\n top: activeItem.top,\n width: activeItem.width,\n };\n\n if (!(/top/i.test(direction) && /left/i.test(direction))) {\n newResizeSize = {\n ...newResizeSize,\n height: newResizeSize.height + (newActiveBoxTop - activeItem.top),\n width: newResizeSize.width + (newActiveBoxLeft - activeItem.left),\n };\n }\n if (/top/i.test(direction) && newActiveBoxTop !== newResizeSize.top) {\n newResizeSize.top = newActiveBoxTop;\n }\n if (/left/i.test(direction) && newActiveBoxLeft !== newResizeSize.left) {\n newResizeSize.left = newActiveBoxLeft;\n }\n setIsResize(false);\n onItemResize(item, newResizeSize);\n };\n\n const onResize = (deltaWidth, deltaHeight, direction) => {\n if (!isResize) { setIsResize(true); }\n const activeItem = {\n ...item,\n height: item.height + deltaHeight,\n width: item.width + deltaWidth,\n };\n if (/left/i.test(direction)) activeItem.left = activeItem.left - deltaWidth;\n if (/top/i.test(direction)) activeItem.top = activeItem.top - deltaHeight;\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 setMatches(proximityListener(item.id, _guides));\n setResizeSize({\n height: activeItem.height,\n left: activeItem.left,\n top: activeItem.top,\n width: activeItem.width,\n });\n };\n\n const deleteItem = () => {\n setIsRightPanelOpen(false);\n setActiveElement(null);\n onItemRemove(item);\n onAnEventTrigger('removeItem', item.itemType);\n };\n\n const duplicateItem = () => {\n const itemID = generateId();\n onItemAdd({\n ...item,\n id: itemID,\n left: item.left + 50,\n top: item.top + 50,\n });\n onAnEventTrigger('duplicateItem', item.itemType);\n setActiveElement(itemID);\n if (!isRightPanelOpen) {\n setIsRightPanelOpen(true);\n }\n };\n\n const onClickOutside = event => {\n // clickoutside should not work for scrollbar\n const viewPort = document.querySelector('.jfReport-viewport');\n const { clientHeight, offsetHeight } = viewPort;\n const headerHeight = window.innerHeight - offsetHeight;\n if (event.clientY - headerHeight >= clientHeight\n || Array.from(event.target.classList)\n .some(xClass => exceptionalClassesForClickOutside.includes(xClass))) {\n return;\n }\n setIsRightPanelOpen(false);\n setActiveElement(null);\n };\n\n const onContextMenuClick = e => {\n if (\n e.target.contentEditable === 'true'\n || isTextEditorOpen\n ) {\n // Dont override behaviour on text edits.\n return;\n }\n\n e.preventDefault();\n onAnEventTrigger('openContextMenu', item.itemType);\n setContextMenuProps({\n id,\n pageID,\n position: getPosition(e),\n });\n };\n\n const onDoubleClick = e => {\n if (\n e.target.contentEditable === 'true'\n || isTextEditorOpen\n ) {\n // Dont override behaviour on text edits.\n return;\n }\n\n setIsRightPanelOpen(true);\n };\n\n const duplicateWithAltKey = e => {\n if (e.altKey) {\n const itemID = generateId();\n const itemToAdd = item;\n setTimeout(() => {\n onItemAdd({\n ...itemToAdd,\n id: itemID,\n left: itemToAdd.left,\n top: itemToAdd.top,\n });\n onAnEventTrigger('duplicateItem', itemToAdd.itemType);\n });\n }\n };\n\n const changeLockStatus = () => {\n onAnEventTrigger(item.isLocked ? 'unlockReportItem' : 'lockReportItem', item.itemType);\n onItemChange({ id: item.id }, { isLocked: item.isLocked ? false : true });\n if (!item.isLocked) {\n setActiveElement(item.id, false);\n setIsRightPanelOpen(false);\n }\n };\n\n return (\n <ErrorBoundary>\n <ItemPositioner\n classNames={`reportItemWrapper${isSelected ? ' isSelected' : ''}`}\n style={{\n ...getStyles(left, top, isDragging),\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n }}\n >\n <div\n ref={drag}\n className={`${classNames.reportItem}${isLocked ? ' isLocked' : ''}`}\n onContextMenu={onContextMenuClick}\n onDoubleClick={onDoubleClick}\n onDragStart={duplicateWithAltKey}\n onMouseDown={select}\n style={reportItemStyle}\n >\n {children}\n </div>\n </ItemPositioner>\n <PageItemResizer\n changeLockStatus={changeLockStatus}\n deleteItem={deleteItem}\n duplicateItem={duplicateItem}\n isDragging={isDragging}\n isMultipleItemSelected={isMultipleItemSelected}\n isSelectedElement={isSelected}\n isTextEditorOpen={isTextEditorOpen}\n item={item}\n onClickOutside={onClickOutside}\n onResize={onResize}\n onResizeStop={onResizeStop}\n pageID={pageID}\n setActiveElement={setActiveElement}\n setIsRightPanelOpen={setIsRightPanelOpen}\n stateHeight={stateHeight}\n stateLeft={stateLeft}\n stateTop={stateTop}\n stateWidth={stateWidth}\n zoom={zoom}\n />\n </ErrorBoundary>\n );\n};\n\nDraggableItem.propTypes = {\n children: PropTypes.any,\n guides: PropTypes.shape({}),\n isMultipleItemSelected: PropTypes.bool,\n isResize: PropTypes.bool,\n isSelected: PropTypes.bool,\n item: PropTypes.shape({\n height: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n itemType: PropTypes.string,\n left: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n pageID: PropTypes.string,\n top: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n width: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n matches: PropTypes.shape({}),\n setIsResize: PropTypes.func,\n setMatches: PropTypes.func,\n};\n\nexport default memo(DraggableItem);\n"],"names":["exceptionalClassesForClickOutside","reportItemStyle","height","width","DraggableItem","children","guides","isMultipleItemSelected","isResize","isSelected","item","matches","setIsResize","setMatches","id","isLocked","left","pageID","top","useState","stateHeight","stateLeft","stateTop","stateWidth","setResizeSize","onAnEventTrigger","usePropStore","state","onItemAdd","onItemChange","onItemRemove","onItemResize","setActiveElement","useBuilderStore","setContextMenuProps","zoom","isTextEditorOpen","isRightPanelOpen","setIsRightPanelOpen","select","event","metaKey","undefined","canDrag","useDrag","collect","monitor","isDragging","end","_item","dropResult","getDropResult","dropLeft","dropTop","prev","removeEventListenerForSidebar","addEventListenerForSidebar","type","DRAGGABLE_ITEM_TYPE","drag","preview","useEffect","getEmptyImage","captureDraggingState","onResizeStop","deltaWidth","deltaHeight","direction","activeItem","test","newActiveBoxLeft","newActiveBoxTop","Object","keys","forEach","axis","activeBoxGuides","matchedArray","proximity","activeBoxProximityIndex","activeBoxIndex","matchedBoxProximityIndex","matchedBoxIndex","value","newResizeSize","onResize","_guides","x","calculateGuidePositions","y","proximityListener","deleteItem","itemType","duplicateItem","itemID","generateId","onClickOutside","viewPort","document","querySelector","clientHeight","offsetHeight","headerHeight","window","innerHeight","clientY","Array","from","target","classList","some","xClass","includes","onContextMenuClick","e","contentEditable","preventDefault","position","getPosition","onDoubleClick","duplicateWithAltKey","altKey","itemToAdd","setTimeout","changeLockStatus","_jsxs","ErrorBoundary","_jsx","getStyles","classNames","propTypes","PropTypes","any","shape","bool","oneOfType","number","string","func","memo"],"mappings":"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"}
@@ -9,12 +9,18 @@ import SvgUnlock from '../../assets/svg/settings/unlock.svg.js';
9
9
  import SvgTrash from '../../assets/svg/trash.svg.js';
10
10
 
11
11
  var DraggableItemActions = function DraggableItemActions(_ref) {
12
- var changeLockStatus = _ref.changeLockStatus,
13
- deleteItem = _ref.deleteItem,
14
- duplicateItem = _ref.duplicateItem,
15
- isLocked = _ref.isLocked,
16
- isMultipleItemSelected = _ref.isMultipleItemSelected,
17
- openSettings = _ref.openSettings;
12
+ var _ref$changeLockStatus = _ref.changeLockStatus,
13
+ changeLockStatus = _ref$changeLockStatus === void 0 ? function () {} : _ref$changeLockStatus,
14
+ _ref$deleteItem = _ref.deleteItem,
15
+ deleteItem = _ref$deleteItem === void 0 ? function () {} : _ref$deleteItem,
16
+ _ref$duplicateItem = _ref.duplicateItem,
17
+ duplicateItem = _ref$duplicateItem === void 0 ? function () {} : _ref$duplicateItem,
18
+ _ref$isLocked = _ref.isLocked,
19
+ isLocked = _ref$isLocked === void 0 ? false : _ref$isLocked,
20
+ _ref$isMultipleItemSe = _ref.isMultipleItemSelected,
21
+ isMultipleItemSelected = _ref$isMultipleItemSe === void 0 ? false : _ref$isMultipleItemSe,
22
+ _ref$openSettings = _ref.openSettings,
23
+ openSettings = _ref$openSettings === void 0 ? function () {} : _ref$openSettings;
18
24
 
19
25
  var _useTranslatedTexts = useTranslatedTexts(),
20
26
  DELETE_ITEM = _useTranslatedTexts.DELETE_ITEM,
@@ -84,14 +90,6 @@ DraggableItemActions.propTypes = {
84
90
  isMultipleItemSelected: PropTypes.bool,
85
91
  openSettings: PropTypes.func
86
92
  };
87
- DraggableItemActions.defaultProps = {
88
- changeLockStatus: function changeLockStatus() {},
89
- deleteItem: function deleteItem() {},
90
- duplicateItem: function duplicateItem() {},
91
- isLocked: false,
92
- isMultipleItemSelected: false,
93
- openSettings: function openSettings() {}
94
- };
95
93
  var DraggableItemActions$1 = /*#__PURE__*/memo(DraggableItemActions);
96
94
 
97
95
  export default DraggableItemActions$1;