@jotforminc/dnd-builder 3.0.0-alpha.2 → 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 (462) 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 +7 -28
  115. package/lib/cjs/components/Preview/StaticItem.js.map +1 -1
  116. package/lib/cjs/components/Preview/StaticPage.js +19 -33
  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 +29 -47
  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/_jfPresentation.scss +0 -18
  205. package/lib/cjs/styles/_jfPrint.scss +17 -1
  206. package/lib/cjs/styles/_jfReportsModal.scss +9 -9
  207. package/lib/cjs/styles/_jfReportsPanels.scss +4 -1
  208. package/lib/cjs/styles/_jfReportsReportItem.scss +1 -1
  209. package/lib/cjs/styles/_jfReportsSVG.scss +0 -1
  210. package/lib/cjs/styles/_jfReportsTextEditor.scss +5 -0
  211. package/lib/cjs/styles/_jfReportsViewModes.scss +2 -5
  212. package/lib/cjs/styles/_jfSearchInput.scss +2 -2
  213. package/lib/cjs/utils/functions.js +19 -23
  214. package/lib/cjs/utils/functions.js.map +1 -1
  215. package/lib/cjs/utils/getDefaultPresentationActions.js +1 -1
  216. package/lib/cjs/utils/getDefaultPresentationActions.js.map +1 -1
  217. package/lib/cjs/utils/hooks.js +64 -47
  218. package/lib/cjs/utils/hooks.js.map +1 -1
  219. package/lib/esm/components/AlignmentGuides.js +11 -12
  220. package/lib/esm/components/AlignmentGuides.js.map +1 -1
  221. package/lib/esm/components/Builder/Builder.js +20 -129
  222. package/lib/esm/components/Builder/Builder.js.map +1 -1
  223. package/lib/esm/components/Builder/BuilderWrapper.js +58 -0
  224. package/lib/esm/components/Builder/BuilderWrapper.js.map +1 -0
  225. package/lib/esm/components/Builder/ContextMenu.js +31 -30
  226. package/lib/esm/components/Builder/ContextMenu.js.map +1 -1
  227. package/lib/esm/components/Builder/DndWrapper.js +10 -10
  228. package/lib/esm/components/Builder/DndWrapper.js.map +1 -1
  229. package/lib/esm/components/Builder/Element.js +50 -43
  230. package/lib/esm/components/Builder/Element.js.map +1 -1
  231. package/lib/esm/components/Builder/Page.js +128 -83
  232. package/lib/esm/components/Builder/Page.js.map +1 -1
  233. package/lib/esm/components/Builder/PageActions.js +35 -37
  234. package/lib/esm/components/Builder/PageActions.js.map +1 -1
  235. package/lib/esm/components/Builder/PageAdder.js +11 -12
  236. package/lib/esm/components/Builder/PageAdder.js.map +1 -1
  237. package/lib/esm/components/Builder/Panel.js +8 -10
  238. package/lib/esm/components/Builder/Panel.js.map +1 -1
  239. package/lib/esm/components/Builder/ReportItemRenderer.js +7 -6
  240. package/lib/esm/components/Builder/ReportItemRenderer.js.map +1 -1
  241. package/lib/esm/components/Builder/Scene.js +77 -203
  242. package/lib/esm/components/Builder/Scene.js.map +1 -1
  243. package/lib/esm/components/Builder/SearchInput.js +28 -58
  244. package/lib/esm/components/Builder/SearchInput.js.map +1 -1
  245. package/lib/esm/components/Builder/Section.js +8 -10
  246. package/lib/esm/components/Builder/Section.js.map +1 -1
  247. package/lib/esm/components/Builder/Tabs.js +19 -16
  248. package/lib/esm/components/Builder/Tabs.js.map +1 -1
  249. package/lib/esm/components/Builder/ZoomControls.js +20 -30
  250. package/lib/esm/components/Builder/ZoomControls.js.map +1 -1
  251. package/lib/esm/components/DraggableItem/DraggableItem.js +165 -156
  252. package/lib/esm/components/DraggableItem/DraggableItem.js.map +1 -1
  253. package/lib/esm/components/DraggableItem/DraggableItemActions.js +12 -14
  254. package/lib/esm/components/DraggableItem/DraggableItemActions.js.map +1 -1
  255. package/lib/esm/components/DraggableItem/DraggableItemLayer.js +23 -20
  256. package/lib/esm/components/DraggableItem/DraggableItemLayer.js.map +1 -1
  257. package/lib/esm/components/Elements/Chart.js +3 -4
  258. package/lib/esm/components/Elements/Chart.js.map +1 -1
  259. package/lib/esm/components/Elements/Icon.js +3 -5
  260. package/lib/esm/components/Elements/Icon.js.map +1 -1
  261. package/lib/esm/components/Elements/Image.js +11 -12
  262. package/lib/esm/components/Elements/Image.js.map +1 -1
  263. package/lib/esm/components/Elements/RichText.js +16 -14
  264. package/lib/esm/components/Elements/RichText.js.map +1 -1
  265. package/lib/esm/components/Elements/Shapes.js +2 -4
  266. package/lib/esm/components/Elements/Shapes.js.map +1 -1
  267. package/lib/esm/components/ItemPositioner.js +6 -8
  268. package/lib/esm/components/ItemPositioner.js.map +1 -1
  269. package/lib/esm/components/PageItemResizer.js +3 -7
  270. package/lib/esm/components/PageItemResizer.js.map +1 -1
  271. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js +25 -59
  272. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
  273. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js +2 -4
  274. package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js.map +1 -1
  275. package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js +8 -15
  276. package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
  277. package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js +56 -22
  278. package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
  279. package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +48 -0
  280. package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
  281. package/lib/esm/components/Panels/AllSlidesPanel/PageList.js +140 -48
  282. package/lib/esm/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
  283. package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js +17 -18
  284. package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
  285. package/lib/esm/components/Panels/LeftPanel/Elements.js +49 -53
  286. package/lib/esm/components/Panels/LeftPanel/Elements.js.map +1 -1
  287. package/lib/esm/components/Panels/LeftPanel/LeftPanel.js +6 -34
  288. package/lib/esm/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
  289. package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js +4 -4
  290. package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
  291. package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js +4 -3
  292. package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
  293. package/lib/esm/components/Panels/RightPanel/RightPanel.js +141 -145
  294. package/lib/esm/components/Panels/RightPanel/RightPanel.js.map +1 -1
  295. package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js +7 -4
  296. package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
  297. package/lib/esm/components/Panels/RightPanel/Settings.js +21 -22
  298. package/lib/esm/components/Panels/RightPanel/Settings.js.map +1 -1
  299. package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js +106 -96
  300. package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
  301. package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js +17 -18
  302. package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
  303. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js +33 -66
  304. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  305. package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js +9 -9
  306. package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
  307. package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js +62 -28
  308. package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
  309. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +48 -0
  310. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
  311. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js +8 -9
  312. package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
  313. package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js +165 -111
  314. package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
  315. package/lib/esm/components/Presentation/Presentation.js +19 -69
  316. package/lib/esm/components/Presentation/Presentation.js.map +1 -1
  317. package/lib/esm/components/Presentation/PresentationBar/PageNavigation.js +8 -10
  318. package/lib/esm/components/Presentation/PresentationBar/PageNavigation.js.map +1 -1
  319. package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js +46 -13
  320. package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
  321. package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js +45 -87
  322. package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
  323. package/lib/esm/components/Presentation/PresentationBar/SelectZoom.js +8 -10
  324. package/lib/esm/components/Presentation/PresentationBar/SelectZoom.js.map +1 -1
  325. package/lib/esm/components/Presentation/PresentationWrapper.js +57 -60
  326. package/lib/esm/components/Presentation/PresentationWrapper.js.map +1 -1
  327. package/lib/esm/components/Presentation/ProgressBar.js +4 -6
  328. package/lib/esm/components/Presentation/ProgressBar.js.map +1 -1
  329. package/lib/esm/components/Preview/Preview.js +14 -68
  330. package/lib/esm/components/Preview/Preview.js.map +1 -1
  331. package/lib/esm/components/Preview/StaticItem.js +8 -28
  332. package/lib/esm/components/Preview/StaticItem.js.map +1 -1
  333. package/lib/esm/components/Preview/StaticPage.js +17 -30
  334. package/lib/esm/components/Preview/StaticPage.js.map +1 -1
  335. package/lib/esm/components/Preview/StaticScene.js +34 -56
  336. package/lib/esm/components/Preview/StaticScene.js.map +1 -1
  337. package/lib/esm/components/Print/Print.js +18 -57
  338. package/lib/esm/components/Print/Print.js.map +1 -1
  339. package/lib/esm/components/Print/PrintModal.js +49 -0
  340. package/lib/esm/components/Print/PrintModal.js.map +1 -0
  341. package/lib/esm/components/Print/{PrintModeWithoutContext.js → PrintWrapper.js} +11 -42
  342. package/lib/esm/components/Print/PrintWrapper.js.map +1 -0
  343. package/lib/esm/components/Report.js +30 -48
  344. package/lib/esm/components/Report.js.map +1 -1
  345. package/lib/esm/components/ReportItemsWrapper.js +20 -34
  346. package/lib/esm/components/ReportItemsWrapper.js.map +1 -1
  347. package/lib/esm/components/ReportWrapper.js +29 -58
  348. package/lib/esm/components/ReportWrapper.js.map +1 -1
  349. package/lib/esm/components/Settings/Button.js +8 -10
  350. package/lib/esm/components/Settings/Button.js.map +1 -1
  351. package/lib/esm/components/Settings/CheckboxGroup.js +8 -10
  352. package/lib/esm/components/Settings/CheckboxGroup.js.map +1 -1
  353. package/lib/esm/components/Settings/ColorPicker.js +18 -13
  354. package/lib/esm/components/Settings/ColorPicker.js.map +1 -1
  355. package/lib/esm/components/Settings/Dropdown.js +10 -12
  356. package/lib/esm/components/Settings/Dropdown.js.map +1 -1
  357. package/lib/esm/components/Settings/FieldSet.js +3 -4
  358. package/lib/esm/components/Settings/FieldSet.js.map +1 -1
  359. package/lib/esm/components/Settings/IconSelectBox.js +8 -10
  360. package/lib/esm/components/Settings/IconSelectBox.js.map +1 -1
  361. package/lib/esm/components/Settings/ImagePicker/EnterURL.js +4 -6
  362. package/lib/esm/components/Settings/ImagePicker/EnterURL.js.map +1 -1
  363. package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +6 -8
  364. package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
  365. package/lib/esm/components/Settings/ImageUrl.js +8 -10
  366. package/lib/esm/components/Settings/ImageUrl.js.map +1 -1
  367. package/lib/esm/components/Settings/LayoutSizeSettings.js +4 -6
  368. package/lib/esm/components/Settings/LayoutSizeSettings.js.map +1 -1
  369. package/lib/esm/components/Settings/Orientation.js +8 -10
  370. package/lib/esm/components/Settings/Orientation.js.map +1 -1
  371. package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js +121 -0
  372. package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
  373. package/lib/esm/components/Settings/PageLayer/LayerItem.js +92 -34
  374. package/lib/esm/components/Settings/PageLayer/LayerItem.js.map +1 -1
  375. package/lib/esm/components/Settings/PageLayer/PageLayer.js +117 -52
  376. package/lib/esm/components/Settings/PageLayer/PageLayer.js.map +1 -1
  377. package/lib/esm/components/Settings/SegmentControl.js +8 -10
  378. package/lib/esm/components/Settings/SegmentControl.js.map +1 -1
  379. package/lib/esm/components/Settings/SelectBox.js +8 -10
  380. package/lib/esm/components/Settings/SelectBox.js.map +1 -1
  381. package/lib/esm/components/Settings/SettingsItemRenderer.js +9 -11
  382. package/lib/esm/components/Settings/SettingsItemRenderer.js.map +1 -1
  383. package/lib/esm/components/Settings/SizeSettings.js +4 -6
  384. package/lib/esm/components/Settings/SizeSettings.js.map +1 -1
  385. package/lib/esm/components/Settings/Slider.js +8 -10
  386. package/lib/esm/components/Settings/Slider.js.map +1 -1
  387. package/lib/esm/components/Settings/Switch.js +8 -10
  388. package/lib/esm/components/Settings/Switch.js.map +1 -1
  389. package/lib/esm/components/Settings/Textbox.js +12 -14
  390. package/lib/esm/components/Settings/Textbox.js.map +1 -1
  391. package/lib/esm/components/Settings/Toggle.js +8 -10
  392. package/lib/esm/components/Settings/Toggle.js.map +1 -1
  393. package/lib/esm/components/StaticElements/StaticRichText.js +26 -30
  394. package/lib/esm/components/StaticElements/StaticRichText.js.map +1 -1
  395. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -4
  396. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
  397. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js +4 -6
  398. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js.map +1 -1
  399. package/lib/esm/components/TextEditor/QuillEditor.js +6 -11
  400. package/lib/esm/components/TextEditor/QuillEditor.js.map +1 -1
  401. package/lib/esm/components/TextEditor/TextEditor.js +17 -18
  402. package/lib/esm/components/TextEditor/TextEditor.js.map +1 -1
  403. package/lib/esm/components/withClickOutside.js +11 -12
  404. package/lib/esm/components/withClickOutside.js.map +1 -1
  405. package/lib/esm/components/withZoomPanPinchHOC.js +10 -12
  406. package/lib/esm/components/withZoomPanPinchHOC.js.map +1 -1
  407. package/lib/esm/constants/eventIgnoredRoles.js +9 -0
  408. package/lib/esm/constants/eventIgnoredRoles.js.map +1 -0
  409. package/lib/esm/constants/texts.js +11 -0
  410. package/lib/esm/constants/texts.js.map +1 -1
  411. package/lib/esm/contexts/BuilderContext.js +199 -0
  412. package/lib/esm/contexts/BuilderContext.js.map +1 -0
  413. package/lib/esm/contexts/PresentationContext.js +131 -0
  414. package/lib/esm/contexts/PresentationContext.js.map +1 -0
  415. package/lib/esm/contexts/PropContext.js +135 -0
  416. package/lib/esm/contexts/PropContext.js.map +1 -0
  417. package/lib/esm/contexts/Providers.js +64 -0
  418. package/lib/esm/contexts/Providers.js.map +1 -0
  419. package/lib/esm/index.js +0 -1
  420. package/lib/esm/index.js.map +1 -1
  421. package/lib/esm/styles/_jfPresentation.scss +0 -18
  422. package/lib/esm/styles/_jfPrint.scss +17 -1
  423. package/lib/esm/styles/_jfReportsModal.scss +9 -9
  424. package/lib/esm/styles/_jfReportsPanels.scss +4 -1
  425. package/lib/esm/styles/_jfReportsReportItem.scss +1 -1
  426. package/lib/esm/styles/_jfReportsSVG.scss +0 -1
  427. package/lib/esm/styles/_jfReportsTextEditor.scss +5 -0
  428. package/lib/esm/styles/_jfReportsViewModes.scss +2 -5
  429. package/lib/esm/styles/_jfSearchInput.scss +2 -2
  430. package/lib/esm/utils/functions.js +15 -22
  431. package/lib/esm/utils/functions.js.map +1 -1
  432. package/lib/esm/utils/getDefaultPresentationActions.js +1 -1
  433. package/lib/esm/utils/getDefaultPresentationActions.js.map +1 -1
  434. package/lib/esm/utils/hooks.js +66 -49
  435. package/lib/esm/utils/hooks.js.map +1 -1
  436. package/package.json +18 -14
  437. package/lib/cjs/components/Print/PrintMode.js +0 -59
  438. package/lib/cjs/components/Print/PrintMode.js.map +0 -1
  439. package/lib/cjs/components/Print/PrintModeWithoutContext.js.map +0 -1
  440. package/lib/cjs/components/Responsive/index.js +0 -107
  441. package/lib/cjs/components/Responsive/index.js.map +0 -1
  442. package/lib/cjs/components/ResponsiveContent.js +0 -15
  443. package/lib/cjs/components/ResponsiveContent.js.map +0 -1
  444. package/lib/cjs/utils/builderContext.js +0 -308
  445. package/lib/cjs/utils/builderContext.js.map +0 -1
  446. package/lib/cjs/utils/presentationContext.js +0 -144
  447. package/lib/cjs/utils/presentationContext.js.map +0 -1
  448. package/lib/cjs/utils/propContext.js +0 -133
  449. package/lib/cjs/utils/propContext.js.map +0 -1
  450. package/lib/esm/components/Print/PrintMode.js +0 -52
  451. package/lib/esm/components/Print/PrintMode.js.map +0 -1
  452. package/lib/esm/components/Print/PrintModeWithoutContext.js.map +0 -1
  453. package/lib/esm/components/Responsive/index.js +0 -100
  454. package/lib/esm/components/Responsive/index.js.map +0 -1
  455. package/lib/esm/components/ResponsiveContent.js +0 -13
  456. package/lib/esm/components/ResponsiveContent.js.map +0 -1
  457. package/lib/esm/utils/builderContext.js +0 -297
  458. package/lib/esm/utils/builderContext.js.map +0 -1
  459. package/lib/esm/utils/presentationContext.js +0 -133
  460. package/lib/esm/utils/presentationContext.js.map +0 -1
  461. package/lib/esm/utils/propContext.js +0 -122
  462. package/lib/esm/utils/propContext.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PageActions.js","sources":["../../../../src/components/Builder/PageActions.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport * as icons from '../../utils/icons';\nimport { moveItemInArrayFromIndexToIndex, scrollToTarget } from '../../utils/functions';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst PageActions = ({\n disableInteraction,\n onAnEventTrigger,\n onPageAdd,\n onPageDuplicate,\n onPageOrdersChange,\n onPageRemove,\n order,\n pageCount,\n pageID,\n pages,\n setEditedElement,\n setIsRightPanelOpen,\n}) => {\n const pageSettings = () => {\n setEditedElement(`p_${pageID}`);\n setIsRightPanelOpen(true);\n };\n\n const onPageAddClick = () => {\n const newPageIndex = order + 1;\n onPageAdd(newPageIndex);\n scrollToTarget(`pageActions-id-${newPageIndex}`, 350);\n onAnEventTrigger('addNewPage', newPageIndex);\n };\n\n const onPageRemoveClick = () => {\n onPageRemove(pageID);\n onAnEventTrigger('removePage', pageID);\n };\n\n const changeOrder = direction => {\n return () => {\n const pageIndex = pages.findIndex(page => page.id === pageID);\n const editedPages = moveItemInArrayFromIndexToIndex(\n pages,\n pageIndex,\n pageIndex + direction,\n );\n const pageOrders = editedPages.reduce((acc, page, index) => {\n const newOrder = index + 1;\n acc[page.id] = {\n order: newOrder,\n };\n return acc;\n }, {});\n onPageOrdersChange(pageOrders);\n scrollToTarget(`pageActions-id-${order + direction}`);\n onAnEventTrigger('changePageOrder', direction);\n };\n };\n\n const onPageDuplicateClick = () => {\n const foundPage = pages.find(page => page.id === pageID);\n onPageDuplicate(foundPage);\n scrollToTarget(`pageActions-id-${order + 1}`, 350);\n onAnEventTrigger('duplicatePage', order + 1);\n };\n\n const {\n ADD_NEW_PAGE, DUPLICATE_PAGE, MOVE_PAGE_DOWNWARDS,\n MOVE_PAGE_UPWARDS, PAGE_SETTINGS, REMOVE_PAGE,\n } = useTranslatedTexts();\n return (\n <div\n className=\"jfReport-pageInfo d-flex j-center\"\n id={`pageActions-id-${order}`}\n >\n <div className=\"pageCounter p-relative d-flex\">\n {`${order}`}\n </div>\n <div className=\"floatingController forPageAction\">\n <div className=\"floatingController-container hasGroup\">\n <button\n key=\"Slide Settings\"\n className=\"controllerItem pageSettingSideBtn js-pageSetting\"\n onClick={pageSettings}\n title={PAGE_SETTINGS}\n type=\"button\"\n >\n <icons.pageSettings className=\"jfReportSVG icon-pageSettings\" />\n </button>\n <button\n key=\"Duplicate Page\"\n className=\"controllerItem js-duplicatePage\"\n disabled={disableInteraction.indexOf('duplicate') > -1}\n onClick={onPageDuplicateClick}\n title={DUPLICATE_PAGE}\n type=\"button\"\n >\n <icons.duplicate className=\"jfReportSVG icon-duplicateLine\" />\n </button>\n <button\n key=\"Remove Slide\"\n className=\"controllerItem isDanger js-removePage\"\n disabled={disableInteraction.indexOf('remove') > -1}\n onClick={onPageRemoveClick}\n title={REMOVE_PAGE}\n type=\"button\"\n >\n <icons.trash className=\"jfReportSVG icon-trashLine\" />\n </button>\n </div>\n <div className=\"floatingController-container hasGroup\">\n <button\n key=\"Move Page Upwards\"\n className={`js-changeOrderUp controllerItem${order === 1 ? ' disabled' : ''}`}\n onClick={changeOrder(-1)}\n title={MOVE_PAGE_UPWARDS}\n type=\"button\"\n >\n <icons.arrowUp className=\"jfReportSVG icon-arrow isTick\" />\n </button>\n <button\n key=\"Move Page Downwards\"\n className={`js-changeOrderDown controllerItem${order === pageCount ? ' disabled' : ''}`}\n onClick={changeOrder(1)}\n title={MOVE_PAGE_DOWNWARDS}\n type=\"button\"\n >\n <icons.arrowDown className=\"jfReportSVG icon-arrow isTick\" />\n </button>\n </div>\n <div className=\"floatingController-container\">\n <button\n key=\"Add Slide\"\n className=\"js-addNewPage controllerItem\"\n disabled={disableInteraction.indexOf('add') > -1}\n onClick={onPageAddClick}\n title={ADD_NEW_PAGE}\n type=\"button\"\n >\n <icons.plus className=\"jfReportSVG icon-plus\" />\n </button>\n </div>\n </div>\n </div>\n );\n};\n\nPageActions.propTypes = {\n disableInteraction: PropTypes.arrayOf(PropTypes.string),\n onAnEventTrigger: PropTypes.func,\n onPageAdd: PropTypes.func,\n onPageDuplicate: PropTypes.func,\n onPageOrdersChange: PropTypes.func,\n onPageRemove: PropTypes.func,\n order: PropTypes.number,\n pageCount: PropTypes.number,\n pageID: PropTypes.string,\n pages: PropTypes.arrayOf(PropTypes.shape({})),\n setEditedElement: PropTypes.func,\n setIsRightPanelOpen: PropTypes.func,\n};\n\nPageActions.defaultProps = {\n disableInteraction: [],\n onAnEventTrigger: () => {},\n onPageAdd: () => {},\n onPageDuplicate: () => {},\n onPageOrdersChange: () => {},\n onPageRemove: () => {},\n order: 0,\n pageCount: 1,\n pageID: '',\n pages: [],\n setEditedElement: () => {},\n setIsRightPanelOpen: () => {},\n};\n\nexport default PageActions;\n"],"names":["PageActions","disableInteraction","onAnEventTrigger","onPageAdd","onPageDuplicate","onPageOrdersChange","onPageRemove","order","pageCount","pageID","pages","setEditedElement","setIsRightPanelOpen","pageSettings","onPageAddClick","newPageIndex","scrollToTarget","onPageRemoveClick","changeOrder","direction","pageIndex","findIndex","page","id","editedPages","moveItemInArrayFromIndexToIndex","pageOrders","reduce","acc","index","newOrder","onPageDuplicateClick","foundPage","find","useTranslatedTexts","ADD_NEW_PAGE","DUPLICATE_PAGE","MOVE_PAGE_DOWNWARDS","MOVE_PAGE_UPWARDS","PAGE_SETTINGS","REMOVE_PAGE","_jsxs","_jsx","icons.pageSettings","indexOf","icons.duplicate","icons.trash","icons.arrowUp","icons.arrowDown","icons.plus","propTypes","PropTypes","arrayOf","string","func","number","shape","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"PageActions.js","sources":["../../../../src/components/Builder/PageActions.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport * as icons from '../../utils/icons';\nimport { moveItemInArrayFromIndexToIndex, scrollToTarget } from '../../utils/functions';\nimport { useTranslatedTexts } from '../../utils/hooks';\nimport { useBuilderStore } from '../../contexts/BuilderContext';\nimport { usePropStore } from '../../contexts/PropContext';\n\nconst PageActions = ({\n order = 0,\n pageID = '',\n}) => {\n const pages = usePropStore(state => state.pages);\n const pageCount = pages.length;\n const onAnEventTrigger = usePropStore(state => state.onAnEventTrigger);\n const onPageAdd = usePropStore(state => state.onPageAdd);\n const onPageDuplicate = usePropStore(state => state.onPageDuplicate);\n const onPageOrdersChange = usePropStore(state => state.onPageOrdersChange);\n const onPageRemove = usePropStore(state => state.onPageRemove);\n const disableInteraction = usePropStore(state => state.disableInteraction);\n\n const setIsRightPanelOpen = useBuilderStore(state => state.setIsRightPanelOpen);\n const setEditedElement = useBuilderStore(state => state.setEditedElement);\n\n const pageSettings = () => {\n setEditedElement(`p_${pageID}`);\n setIsRightPanelOpen(true);\n };\n\n const onPageAddClick = () => {\n const newPageIndex = order + 1;\n onPageAdd(newPageIndex);\n scrollToTarget(`pageActions-id-${newPageIndex}`, 350);\n onAnEventTrigger('addNewPage', newPageIndex);\n };\n\n const onPageRemoveClick = () => {\n onPageRemove(pageID);\n onAnEventTrigger('removePage', pageID);\n };\n\n const changeOrder = direction => {\n return () => {\n const pageIndex = pages.findIndex(page => page.id === pageID);\n const editedPages = moveItemInArrayFromIndexToIndex(\n pages,\n pageIndex,\n pageIndex + direction,\n );\n const pageOrders = editedPages.reduce((acc, page, index) => {\n const newOrder = index + 1;\n acc[page.id] = {\n order: newOrder,\n };\n return acc;\n }, {});\n onPageOrdersChange(pageOrders);\n scrollToTarget(`pageActions-id-${order + direction}`);\n onAnEventTrigger('changePageOrder', direction);\n };\n };\n\n const onPageDuplicateClick = () => {\n const foundPage = pages.find(page => page.id === pageID);\n onPageDuplicate(foundPage);\n scrollToTarget(`pageActions-id-${order + 1}`, 350);\n onAnEventTrigger('duplicatePage', order + 1);\n };\n\n const {\n ADD_NEW_PAGE, DUPLICATE_PAGE, MOVE_PAGE_DOWNWARDS,\n MOVE_PAGE_UPWARDS, PAGE_SETTINGS, REMOVE_PAGE,\n } = useTranslatedTexts();\n return (\n <div\n className=\"jfReport-pageInfo d-flex j-center\"\n id={`pageActions-id-${order}`}\n >\n <div className=\"pageCounter p-relative d-flex\">\n {`${order}`}\n </div>\n <div className=\"floatingController forPageAction\">\n <div className=\"floatingController-container hasGroup\">\n <button\n key=\"Slide Settings\"\n className=\"controllerItem pageSettingSideBtn js-pageSetting\"\n onClick={pageSettings}\n title={PAGE_SETTINGS}\n type=\"button\"\n >\n <icons.pageSettings className=\"jfReportSVG icon-pageSettings\" />\n </button>\n <button\n key=\"Duplicate Page\"\n className=\"controllerItem js-duplicatePage\"\n disabled={disableInteraction.indexOf('duplicate') > -1}\n onClick={onPageDuplicateClick}\n title={DUPLICATE_PAGE}\n type=\"button\"\n >\n <icons.duplicate className=\"jfReportSVG icon-duplicateLine\" />\n </button>\n <button\n key=\"Remove Slide\"\n className=\"controllerItem isDanger js-removePage\"\n disabled={disableInteraction.indexOf('remove') > -1}\n onClick={onPageRemoveClick}\n title={REMOVE_PAGE}\n type=\"button\"\n >\n <icons.trash className=\"jfReportSVG icon-trashLine\" />\n </button>\n </div>\n <div className=\"floatingController-container hasGroup\">\n <button\n key=\"Move Page Upwards\"\n className={`js-changeOrderUp controllerItem${order === 1 ? ' disabled' : ''}`}\n onClick={changeOrder(-1)}\n title={MOVE_PAGE_UPWARDS}\n type=\"button\"\n >\n <icons.arrowUp className=\"jfReportSVG icon-arrow isTick\" />\n </button>\n <button\n key=\"Move Page Downwards\"\n className={`js-changeOrderDown controllerItem${order === pageCount ? ' disabled' : ''}`}\n onClick={changeOrder(1)}\n title={MOVE_PAGE_DOWNWARDS}\n type=\"button\"\n >\n <icons.arrowDown className=\"jfReportSVG icon-arrow isTick\" />\n </button>\n </div>\n <div className=\"floatingController-container\">\n <button\n key=\"Add Slide\"\n className=\"js-addNewPage controllerItem\"\n disabled={disableInteraction.indexOf('add') > -1}\n onClick={onPageAddClick}\n title={ADD_NEW_PAGE}\n type=\"button\"\n >\n <icons.plus className=\"jfReportSVG icon-plus\" />\n </button>\n </div>\n </div>\n </div>\n );\n};\n\nPageActions.propTypes = {\n order: PropTypes.number,\n pageID: PropTypes.string,\n};\n\nexport default PageActions;\n"],"names":["PageActions","order","pageID","pages","usePropStore","state","pageCount","length","onAnEventTrigger","onPageAdd","onPageDuplicate","onPageOrdersChange","onPageRemove","disableInteraction","setIsRightPanelOpen","useBuilderStore","setEditedElement","pageSettings","onPageAddClick","newPageIndex","scrollToTarget","onPageRemoveClick","changeOrder","direction","pageIndex","findIndex","page","id","editedPages","moveItemInArrayFromIndexToIndex","pageOrders","reduce","acc","index","newOrder","onPageDuplicateClick","foundPage","find","useTranslatedTexts","ADD_NEW_PAGE","DUPLICATE_PAGE","MOVE_PAGE_DOWNWARDS","MOVE_PAGE_UPWARDS","PAGE_SETTINGS","REMOVE_PAGE","_jsxs","_jsx","icons.pageSettings","indexOf","icons.duplicate","icons.trash","icons.arrowUp","icons.arrowDown","icons.plus","propTypes","PropTypes","number","string"],"mappings":"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"}
@@ -1,14 +1,20 @@
1
- import { string, func, number } from 'prop-types';
1
+ import { string } from 'prop-types';
2
2
  import classNames from 'classnames';
3
3
  import { scrollToTarget } from '../../utils/functions.js';
4
4
  import { useTranslatedTexts } from '../../utils/hooks.js';
5
+ import { usePropStore } from '../../contexts/PropContext.js';
5
6
  import { jsxs, jsx } from 'react/jsx-runtime';
6
7
  import SvgPlus from '../../assets/svg/plus.svg.js';
7
8
 
8
9
  var PageAdder = function PageAdder(_ref) {
9
- var additionalClass = _ref.additionalClass,
10
- onPageAdd = _ref.onPageAdd,
11
- pageCount = _ref.pageCount;
10
+ var _ref$additionalClass = _ref.additionalClass,
11
+ additionalClass = _ref$additionalClass === void 0 ? '' : _ref$additionalClass;
12
+ var pageCount = usePropStore(function (state) {
13
+ return state.pages.length;
14
+ });
15
+ var onPageAdd = usePropStore(function (state) {
16
+ return state.onPageAdd;
17
+ });
12
18
 
13
19
  var onPageAddClick = function onPageAddClick() {
14
20
  var newPageIndex = pageCount + 1;
@@ -32,14 +38,7 @@ var PageAdder = function PageAdder(_ref) {
32
38
  };
33
39
 
34
40
  PageAdder.propTypes = {
35
- additionalClass: string,
36
- onPageAdd: func,
37
- pageCount: number
38
- };
39
- PageAdder.defaultProps = {
40
- additionalClass: '',
41
- onPageAdd: function onPageAdd() {},
42
- pageCount: 1
41
+ additionalClass: string
43
42
  };
44
43
 
45
44
  export default PageAdder;
@@ -1 +1 @@
1
- {"version":3,"file":"PageAdder.js","sources":["../../../../src/components/Builder/PageAdder.js"],"sourcesContent":["import { func, number, string } from 'prop-types';\nimport classNames from 'classnames';\nimport { scrollToTarget } from '../../utils/functions';\nimport * as icons from '../../utils/icons';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst PageAdder = ({\n additionalClass,\n onPageAdd,\n pageCount,\n}) => {\n const onPageAddClick = () => {\n const newPageIndex = pageCount + 1;\n onPageAdd(newPageIndex);\n scrollToTarget(`pageActions-id-${newPageIndex}`, 350);\n };\n\n const { ADD_NEW_PAGE } = useTranslatedTexts();\n return (\n <button\n className={classNames('pageAdder', additionalClass)}\n onClick={onPageAddClick}\n type=\"button\"\n >\n <icons.plus className=\"jfReportSVG icon-plus\" />\n <span>{ADD_NEW_PAGE}</span>\n </button>\n );\n};\n\nPageAdder.propTypes = {\n additionalClass: string,\n onPageAdd: func,\n pageCount: number,\n};\n\nPageAdder.defaultProps = {\n additionalClass: '',\n onPageAdd: () => {},\n pageCount: 1,\n};\n\nexport default PageAdder;\n"],"names":["PageAdder","additionalClass","onPageAdd","pageCount","onPageAddClick","newPageIndex","scrollToTarget","useTranslatedTexts","ADD_NEW_PAGE","_jsxs","classNames","_jsx","icons.plus","propTypes","string","func","number","defaultProps"],"mappings":";;;;;;;IAMMA,SAAS,GAAG,SAAZA,SAAY,OAIZ;AAAA,MAHJC,eAGI,QAHJA,eAGI;AAAA,MAFJC,SAEI,QAFJA,SAEI;AAAA,MADJC,SACI,QADJA,SACI;;AACJ,MAAMC,cAAc,GAAG,SAAjBA,cAAiB,GAAM;AAC3B,QAAMC,YAAY,GAAGF,SAAS,GAAG,CAAjC;AACAD,IAAAA,SAAS,CAACG,YAAD,CAAT;AACAC,IAAAA,cAAc,0BAAmBD,YAAnB,GAAmC,GAAnC,CAAd;AACD,GAJD;;AAMA,4BAAyBE,kBAAkB,EAA3C;AAAA,MAAQC,YAAR,uBAAQA,YAAR;;AACA,sBACEC;AACE,IAAA,SAAS,EAAEC,UAAU,CAAC,WAAD,EAAcT,eAAd,CADvB;AAEE,IAAA,OAAO,EAAEG,cAFX;AAGE,IAAA,IAAI,EAAC,QAHP;AAAA,4BAKEO,IAACC,OAAD;AAAY,MAAA,SAAS,EAAC;AAAtB,MALF,eAMED;AAAA,gBAAOH;AAAP,MANF;AAAA,IADF;AAUD;;AAEDR,SAAS,CAACa,SAAV,GAAsB;AACpBZ,EAAAA,eAAe,EAAEa,MADG;AAEpBZ,EAAAA,SAAS,EAAEa,IAFS;AAGpBZ,EAAAA,SAAS,EAAEa;AAHS,CAAtB;AAMAhB,SAAS,CAACiB,YAAV,GAAyB;AACvBhB,EAAAA,eAAe,EAAE,EADM;AAEvBC,EAAAA,SAAS,EAAE,qBAAM,EAFM;AAGvBC,EAAAA,SAAS,EAAE;AAHY,CAAzB;;;;"}
1
+ {"version":3,"file":"PageAdder.js","sources":["../../../../src/components/Builder/PageAdder.js"],"sourcesContent":["import { string } from 'prop-types';\nimport classNames from 'classnames';\nimport { scrollToTarget } from '../../utils/functions';\nimport * as icons from '../../utils/icons';\nimport { useTranslatedTexts } from '../../utils/hooks';\nimport { usePropStore } from '../../contexts/PropContext';\n\nconst PageAdder = ({\n additionalClass = '',\n}) => {\n const pageCount = usePropStore(state => state.pages.length);\n const onPageAdd = usePropStore(state => state.onPageAdd);\n const onPageAddClick = () => {\n const newPageIndex = pageCount + 1;\n onPageAdd(newPageIndex);\n scrollToTarget(`pageActions-id-${newPageIndex}`, 350);\n };\n\n const { ADD_NEW_PAGE } = useTranslatedTexts();\n return (\n <button\n className={classNames('pageAdder', additionalClass)}\n onClick={onPageAddClick}\n type=\"button\"\n >\n <icons.plus className=\"jfReportSVG icon-plus\" />\n <span>{ADD_NEW_PAGE}</span>\n </button>\n );\n};\n\nPageAdder.propTypes = {\n additionalClass: string,\n};\n\nexport default PageAdder;\n"],"names":["PageAdder","additionalClass","pageCount","usePropStore","state","pages","length","onPageAdd","onPageAddClick","newPageIndex","scrollToTarget","useTranslatedTexts","ADD_NEW_PAGE","_jsxs","classNames","_jsx","icons.plus","propTypes","string"],"mappings":";;;;;;;;IAOMA,SAAS,GAAG,SAAZA,SAAY,OAEZ;AAAA,kCADJC,eACI;AAAA,MADJA,eACI,qCADc,EACd;AACJ,MAAMC,SAAS,GAAGC,YAAY,CAAC,UAAAC,KAAK;AAAA,WAAIA,KAAK,CAACC,KAAN,CAAYC,MAAhB;AAAA,GAAN,CAA9B;AACA,MAAMC,SAAS,GAAGJ,YAAY,CAAC,UAAAC,KAAK;AAAA,WAAIA,KAAK,CAACG,SAAV;AAAA,GAAN,CAA9B;;AACA,MAAMC,cAAc,GAAG,SAAjBA,cAAiB,GAAM;AAC3B,QAAMC,YAAY,GAAGP,SAAS,GAAG,CAAjC;AACAK,IAAAA,SAAS,CAACE,YAAD,CAAT;AACAC,IAAAA,cAAc,0BAAmBD,YAAnB,GAAmC,GAAnC,CAAd;AACD,GAJD;;AAMA,4BAAyBE,kBAAkB,EAA3C;AAAA,MAAQC,YAAR,uBAAQA,YAAR;;AACA,sBACEC;AACE,IAAA,SAAS,EAAEC,UAAU,CAAC,WAAD,EAAcb,eAAd,CADvB;AAEE,IAAA,OAAO,EAAEO,cAFX;AAGE,IAAA,IAAI,EAAC,QAHP;AAAA,4BAKEO,IAACC,OAAD;AAAY,MAAA,SAAS,EAAC;AAAtB,MALF,eAMED;AAAA,gBAAOH;AAAP,MANF;AAAA,IADF;AAUD;;AAEDZ,SAAS,CAACiB,SAAV,GAAsB;AACpBhB,EAAAA,eAAe,EAAEiB;AADG,CAAtB;;;;"}
@@ -9,10 +9,14 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
9
9
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
10
10
 
11
11
  var Panel = function Panel(_ref) {
12
- var additionalClassName = _ref.additionalClassName,
13
- children = _ref.children,
14
- innerRef = _ref.innerRef,
15
- onAnimationEnd = _ref.onAnimationEnd;
12
+ var _ref$additionalClassN = _ref.additionalClassName,
13
+ additionalClassName = _ref$additionalClassN === void 0 ? '' : _ref$additionalClassN,
14
+ _ref$children = _ref.children,
15
+ children = _ref$children === void 0 ? null : _ref$children,
16
+ _ref$innerRef = _ref.innerRef,
17
+ innerRef = _ref$innerRef === void 0 ? null : _ref$innerRef,
18
+ _ref$onAnimationEnd = _ref.onAnimationEnd,
19
+ onAnimationEnd = _ref$onAnimationEnd === void 0 ? function () {} : _ref$onAnimationEnd;
16
20
  return /*#__PURE__*/jsx("aside", {
17
21
  ref: innerRef,
18
22
  className: "jfReport-col jfReport-pane ".concat(additionalClassName),
@@ -29,12 +33,6 @@ Panel.propTypes = {
29
33
  })]),
30
34
  onAnimationEnd: PropTypes.func
31
35
  };
32
- Panel.defaultProps = {
33
- additionalClassName: '',
34
- children: null,
35
- innerRef: null,
36
- onAnimationEnd: function onAnimationEnd() {}
37
- };
38
36
  var MemoizedPanel = /*#__PURE__*/memo(Panel);
39
37
  var Panel$1 = /*#__PURE__*/forwardRef(function (props, ref) {
40
38
  return /*#__PURE__*/jsx(MemoizedPanel, _objectSpread({
@@ -1 +1 @@
1
- {"version":3,"file":"Panel.js","sources":["../../../../src/components/Builder/Panel.js"],"sourcesContent":["/* global Element */\nimport { forwardRef, memo } from 'react';\nimport PropTypes from 'prop-types';\n\nconst Panel = ({\n additionalClassName, children, innerRef, onAnimationEnd,\n}) => {\n return (\n <aside\n ref={innerRef}\n className={`jfReport-col jfReport-pane ${additionalClassName}`}\n onAnimationEnd={onAnimationEnd}\n >\n {children}\n </aside>\n );\n};\n\nPanel.propTypes = {\n additionalClassName: PropTypes.string,\n children: PropTypes.any,\n innerRef: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.shape({ current: PropTypes.instanceOf(Element) }),\n ]),\n onAnimationEnd: PropTypes.func,\n};\n\nPanel.defaultProps = {\n additionalClassName: '',\n children: null,\n innerRef: null,\n onAnimationEnd: () => {},\n};\n\nconst MemoizedPanel = memo(Panel);\n\nexport default forwardRef((props, ref) => (\n <MemoizedPanel\n innerRef={ref}\n {...props}\n />\n));\n"],"names":["Panel","additionalClassName","children","innerRef","onAnimationEnd","_jsx","propTypes","PropTypes","string","any","oneOfType","func","shape","current","instanceOf","Element","defaultProps","MemoizedPanel","memo","forwardRef","props","ref"],"mappings":";;;;;;;;;;AAIA,IAAMA,KAAK,GAAG,SAARA,KAAQ,OAER;AAAA,MADJC,mBACI,QADJA,mBACI;AAAA,MADiBC,QACjB,QADiBA,QACjB;AAAA,MAD2BC,QAC3B,QAD2BA,QAC3B;AAAA,MADqCC,cACrC,QADqCA,cACrC;AACJ,sBACEC;AACE,IAAA,GAAG,EAAEF,QADP;AAEE,IAAA,SAAS,uCAAgCF,mBAAhC,CAFX;AAGE,IAAA,cAAc,EAAEG,cAHlB;AAAA,cAKGF;AALH,IADF;AASD,CAZD;;AAcAF,KAAK,CAACM,SAAN,GAAkB;AAChBL,EAAAA,mBAAmB,EAAEM,SAAS,CAACC,MADf;AAEhBN,EAAAA,QAAQ,EAAEK,SAAS,CAACE,GAFJ;AAGhBN,EAAAA,QAAQ,EAAEI,SAAS,CAACG,SAAV,CAAoB,CAC5BH,SAAS,CAACI,IADkB,EAE5BJ,SAAS,CAACK,KAAV,CAAgB;AAAEC,IAAAA,OAAO,EAAEN,SAAS,CAACO,UAAV,CAAqBC,OAArB;AAAX,GAAhB,CAF4B,CAApB,CAHM;AAOhBX,EAAAA,cAAc,EAAEG,SAAS,CAACI;AAPV,CAAlB;AAUAX,KAAK,CAACgB,YAAN,GAAqB;AACnBf,EAAAA,mBAAmB,EAAE,EADF;AAEnBC,EAAAA,QAAQ,EAAE,IAFS;AAGnBC,EAAAA,QAAQ,EAAE,IAHS;AAInBC,EAAAA,cAAc,EAAE,0BAAM;AAJH,CAArB;AAOA,IAAMa,aAAa,gBAAGC,IAAI,CAAClB,KAAD,CAA1B;AAEA,2BAAemB,UAAU,CAAC,UAACC,KAAD,EAAQC,GAAR;AAAA,sBACxBhB,IAAC,aAAD;AACE,IAAA,QAAQ,EAAEgB;AADZ,KAEMD,KAFN,EADwB;AAAA,CAAD,CAAzB;;;;"}
1
+ {"version":3,"file":"Panel.js","sources":["../../../../src/components/Builder/Panel.js"],"sourcesContent":["/* global Element */\nimport { forwardRef, memo } from 'react';\nimport PropTypes from 'prop-types';\n\nconst Panel = ({\n additionalClassName = '',\n children = null,\n innerRef = null,\n onAnimationEnd = () => {},\n}) => {\n return (\n <aside\n ref={innerRef}\n className={`jfReport-col jfReport-pane ${additionalClassName}`}\n onAnimationEnd={onAnimationEnd}\n >\n {children}\n </aside>\n );\n};\n\nPanel.propTypes = {\n additionalClassName: PropTypes.string,\n children: PropTypes.any,\n innerRef: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.shape({ current: PropTypes.instanceOf(Element) }),\n ]),\n onAnimationEnd: PropTypes.func,\n};\n\nconst MemoizedPanel = memo(Panel);\n\nexport default forwardRef((props, ref) => (\n <MemoizedPanel\n innerRef={ref}\n {...props}\n />\n));\n"],"names":["Panel","additionalClassName","children","innerRef","onAnimationEnd","_jsx","propTypes","PropTypes","string","any","oneOfType","func","shape","current","instanceOf","Element","MemoizedPanel","memo","forwardRef","props","ref"],"mappings":";;;;;;;;;;AAIA,IAAMA,KAAK,GAAG,SAARA,KAAQ,OAKR;AAAA,mCAJJC,mBAII;AAAA,MAJJA,mBAII,sCAJkB,EAIlB;AAAA,2BAHJC,QAGI;AAAA,MAHJA,QAGI,8BAHO,IAGP;AAAA,2BAFJC,QAEI;AAAA,MAFJA,QAEI,8BAFO,IAEP;AAAA,iCADJC,cACI;AAAA,MADJA,cACI,oCADa,YAAM,EACnB;AACJ,sBACEC;AACE,IAAA,GAAG,EAAEF,QADP;AAEE,IAAA,SAAS,uCAAgCF,mBAAhC,CAFX;AAGE,IAAA,cAAc,EAAEG,cAHlB;AAAA,cAKGF;AALH,IADF;AASD,CAfD;;AAiBAF,KAAK,CAACM,SAAN,GAAkB;AAChBL,EAAAA,mBAAmB,EAAEM,SAAS,CAACC,MADf;AAEhBN,EAAAA,QAAQ,EAAEK,SAAS,CAACE,GAFJ;AAGhBN,EAAAA,QAAQ,EAAEI,SAAS,CAACG,SAAV,CAAoB,CAC5BH,SAAS,CAACI,IADkB,EAE5BJ,SAAS,CAACK,KAAV,CAAgB;AAAEC,IAAAA,OAAO,EAAEN,SAAS,CAACO,UAAV,CAAqBC,OAArB;AAAX,GAAhB,CAF4B,CAApB,CAHM;AAOhBX,EAAAA,cAAc,EAAEG,SAAS,CAACI;AAPV,CAAlB;AAUA,IAAMK,aAAa,gBAAGC,IAAI,CAACjB,KAAD,CAA1B;AAEA,2BAAekB,UAAU,CAAC,UAACC,KAAD,EAAQC,GAAR;AAAA,sBACxBf,IAAC,aAAD;AACE,IAAA,QAAQ,EAAEe;AADZ,KAEMD,KAFN,EADwB;AAAA,CAAD,CAAzB;;;;"}
@@ -1,5 +1,6 @@
1
1
  import { memo } from 'react';
2
- import { usePropContext } from '../../utils/propContext.js';
2
+ import { usePropStore } from '../../contexts/PropContext.js';
3
+ import getMergedItem from '../../utils/getMergedItem.js';
3
4
 
4
5
  var getItemComponent = function getItemComponent(elementName, Elements) {
5
6
  return Elements[elementName] && Elements[elementName].Component ? Elements[elementName].Component : Elements.text.Component;
@@ -8,11 +9,11 @@ var getItemComponent = function getItemComponent(elementName, Elements) {
8
9
  var ReportItemRenderer = function ReportItemRenderer(_ref) {
9
10
  var children = _ref.children,
10
11
  item = _ref.item;
11
-
12
- var _usePropContext = usePropContext(),
13
- acceptedItems = _usePropContext.acceptedItems;
14
-
15
- return children(getItemComponent(item.itemType, acceptedItems), item);
12
+ var acceptedItems = usePropStore(function (state) {
13
+ return state.acceptedItems;
14
+ });
15
+ var mergedItem = getMergedItem(item, acceptedItems);
16
+ return children(getItemComponent(item.itemType, acceptedItems), mergedItem);
16
17
  };
17
18
 
18
19
  var ReportItemRenderer$1 = /*#__PURE__*/memo(ReportItemRenderer);
@@ -1 +1 @@
1
- {"version":3,"file":"ReportItemRenderer.js","sources":["../../../../src/components/Builder/ReportItemRenderer.js"],"sourcesContent":["import { memo } from 'react';\nimport { usePropContext } from '../../utils/propContext';\n\nconst getItemComponent = (elementName, Elements) => {\n return Elements[elementName] && Elements[elementName].Component\n ? Elements[elementName].Component\n : Elements.text.Component;\n};\n\nconst ReportItemRenderer = ({\n children,\n item,\n}) => {\n const { acceptedItems } = usePropContext();\n return children(getItemComponent(item.itemType, acceptedItems), item);\n};\n\nexport default memo(ReportItemRenderer);\n"],"names":["getItemComponent","elementName","Elements","Component","text","ReportItemRenderer","children","item","usePropContext","acceptedItems","itemType","memo"],"mappings":";;;AAGA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,WAAD,EAAcC,QAAd,EAA2B;AAClD,SAAOA,QAAQ,CAACD,WAAD,CAAR,IAAyBC,QAAQ,CAACD,WAAD,CAAR,CAAsBE,SAA/C,GACHD,QAAQ,CAACD,WAAD,CAAR,CAAsBE,SADnB,GAEHD,QAAQ,CAACE,IAAT,CAAcD,SAFlB;AAGD,CAJD;;AAMA,IAAME,kBAAkB,GAAG,SAArBA,kBAAqB,OAGrB;AAAA,MAFJC,QAEI,QAFJA,QAEI;AAAA,MADJC,IACI,QADJA,IACI;;AACJ,wBAA0BC,cAAc,EAAxC;AAAA,MAAQC,aAAR,mBAAQA,aAAR;;AACA,SAAOH,QAAQ,CAACN,gBAAgB,CAACO,IAAI,CAACG,QAAN,EAAgBD,aAAhB,CAAjB,EAAiDF,IAAjD,CAAf;AACD,CAND;;AAQA,wCAAeI,IAAI,CAACN,kBAAD,CAAnB;;;;"}
1
+ {"version":3,"file":"ReportItemRenderer.js","sources":["../../../../src/components/Builder/ReportItemRenderer.js"],"sourcesContent":["import { memo } from 'react';\nimport { usePropStore } from '../../contexts/PropContext';\nimport getMergedItem from '../../utils/getMergedItem';\n\nconst getItemComponent = (elementName, Elements) => {\n return Elements[elementName] && Elements[elementName].Component\n ? Elements[elementName].Component\n : Elements.text.Component;\n};\n\nconst ReportItemRenderer = ({\n children,\n item,\n}) => {\n const acceptedItems = usePropStore(state => state.acceptedItems);\n const mergedItem = getMergedItem(item, acceptedItems);\n return children(getItemComponent(item.itemType, acceptedItems), mergedItem);\n};\n\nexport default memo(ReportItemRenderer);\n"],"names":["getItemComponent","elementName","Elements","Component","text","ReportItemRenderer","children","item","acceptedItems","usePropStore","state","mergedItem","getMergedItem","itemType","memo"],"mappings":";;;;AAIA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,WAAD,EAAcC,QAAd,EAA2B;AAClD,SAAOA,QAAQ,CAACD,WAAD,CAAR,IAAyBC,QAAQ,CAACD,WAAD,CAAR,CAAsBE,SAA/C,GACHD,QAAQ,CAACD,WAAD,CAAR,CAAsBE,SADnB,GAEHD,QAAQ,CAACE,IAAT,CAAcD,SAFlB;AAGD,CAJD;;AAMA,IAAME,kBAAkB,GAAG,SAArBA,kBAAqB,OAGrB;AAAA,MAFJC,QAEI,QAFJA,QAEI;AAAA,MADJC,IACI,QADJA,IACI;AACJ,MAAMC,aAAa,GAAGC,YAAY,CAAC,UAAAC,KAAK;AAAA,WAAIA,KAAK,CAACF,aAAV;AAAA,GAAN,CAAlC;AACA,MAAMG,UAAU,GAAGC,aAAa,CAACL,IAAD,EAAOC,aAAP,CAAhC;AACA,SAAOF,QAAQ,CAACN,gBAAgB,CAACO,IAAI,CAACM,QAAN,EAAgBL,aAAhB,CAAjB,EAAiDG,UAAjD,CAAf;AACD,CAPD;;AASA,wCAAeG,IAAI,CAACT,kBAAD,CAAnB;;;;"}
@@ -5,36 +5,31 @@ import 'core-js/modules/es.array.map.js';
5
5
  import 'core-js/modules/es.number.constructor.js';
6
6
  import 'core-js/modules/es.number.is-nan.js';
7
7
  import 'core-js/modules/es.number.to-fixed.js';
8
+ import 'core-js/modules/es.object.to-string.js';
9
+ import 'core-js/modules/es.regexp.to-string.js';
8
10
  import 'core-js/modules/web.dom-collections.for-each.js';
9
- import { memo, useState, useRef, createRef, useEffect, useCallback, Fragment } from 'react';
10
- import PropTypes from 'prop-types';
11
+ import { useState, useRef, createRef, useMemo, useEffect, Fragment } from 'react';
11
12
  import { mainWrapper, viewport, canvas, page } from '../../constants/classNames.js';
12
13
  import ContextMenu from './ContextMenu.js';
13
14
  import PageActions from './PageActions.js';
14
15
  import PageAdder from './PageAdder.js';
15
16
  import ZoomControls from './ZoomControls.js';
16
- import { useBuilderContext } from '../../utils/builderContext.js';
17
- import { usePropContext } from '../../utils/propContext.js';
18
- import { DRAGGABLE_ITEM_TYPE, DROPPABLE_ITEM_TYPE } from '../../constants/itemTypes.js';
17
+ import { useBuilderStore } from '../../contexts/BuilderContext.js';
18
+ import { usePropStore } from '../../contexts/PropContext.js';
19
19
  import Page from './Page.js';
20
- import { calculateGuidePositions, getCorrectDroppedOffsetValue, getCorrectDroppedOffsetValueBySnap, findItemById, getSelectedItems, findItemsOnPage, getMostVisiblePage } from '../../utils/functions.js';
20
+ import { calculateGuidePositions, findItemById, getSelectedItems, findItemsOnPage, getMostVisiblePage } from '../../utils/functions.js';
21
21
  import { useEventListener } from '../../utils/hooks.js';
22
22
  import DraggableItemLayer from '../DraggableItem/DraggableItemLayer.js';
23
23
  import generateId from '../../utils/generateId.js';
24
+ import { EVENT_IGNORED_ROLES } from '../../constants/eventIgnoredRoles.js';
24
25
  import { jsxs, jsx } from 'react/jsx-runtime';
25
26
 
26
- var _excluded = ["id", "itemType", "type"];
27
-
28
27
  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; }
29
28
 
30
29
  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; }
31
30
 
32
31
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
33
32
 
34
- 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; }
35
-
36
- 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; }
37
-
38
33
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
39
34
 
40
35
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -47,73 +42,75 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
47
42
 
48
43
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
49
44
 
50
- var Scene = function Scene(_ref) {
51
- var additionalPageItems = _ref.additionalPageItems,
52
- hashCode = _ref.hashCode,
53
- itemAccessor = _ref.itemAccessor,
54
- lastScrollPosition = _ref.lastScrollPosition,
55
- onItemAdd = _ref.onItemAdd,
56
- onItemChange = _ref.onItemChange,
57
- onItemMove = _ref.onItemMove,
58
- onItemRemove = _ref.onItemRemove,
59
- onItemResize = _ref.onItemResize,
60
- onItemsMove = _ref.onItemsMove,
61
- onPageAdd = _ref.onPageAdd,
62
- onPageChange = _ref.onPageChange,
63
- onPageDuplicate = _ref.onPageDuplicate,
64
- onPageOrdersChange = _ref.onPageOrdersChange,
65
- onPageRemove = _ref.onPageRemove,
66
- pages = _ref.pages;
67
- var pageCount = pages.length;
68
- /* Builder Context */
69
-
70
- var _useBuilderContext = useBuilderContext(),
71
- activeElement = _useBuilderContext.activeElement,
72
- contextMenuProps = _useBuilderContext.contextMenuProps,
73
- isRightPanelOpen = _useBuilderContext.isRightPanelOpen,
74
- setActiveElement = _useBuilderContext.setActiveElement,
75
- setContextMenuProps = _useBuilderContext.setContextMenuProps,
76
- setEditedElement = _useBuilderContext.setEditedElement,
77
- setIsRightPanelOpen = _useBuilderContext.setIsRightPanelOpen,
78
- zoom = _useBuilderContext.zoom;
79
-
80
- var _usePropContext = usePropContext(),
81
- acceptedItems = _usePropContext.acceptedItems,
82
- disableInteraction = _usePropContext.disableInteraction,
83
- onAnEventTrigger = _usePropContext.onAnEventTrigger,
84
- settings = _usePropContext.settings;
45
+ var Scene = function Scene() {
46
+ var pages = usePropStore(function (state) {
47
+ return state.pages;
48
+ });
49
+ var onItemAdd = usePropStore(function (state) {
50
+ return state.onItemAdd;
51
+ });
52
+ var onItemRemove = usePropStore(function (state) {
53
+ return state.onItemRemove;
54
+ });
55
+ var onAnEventTrigger = usePropStore(function (state) {
56
+ return state.onAnEventTrigger;
57
+ });
58
+ var settings = usePropStore(function (state) {
59
+ return state.settings;
60
+ });
61
+ var onItemChange = usePropStore(function (state) {
62
+ return state.onItemChange;
63
+ });
64
+ var activeElement = useBuilderStore(function (state) {
65
+ return state.activeElement;
66
+ });
67
+ var contextMenuProps = useBuilderStore(function (state) {
68
+ return state.contextMenuProps;
69
+ });
70
+ var isRightPanelOpen = useBuilderStore(function (state) {
71
+ return state.isRightPanelOpen;
72
+ });
73
+ var setActiveElement = useBuilderStore(function (state) {
74
+ return state.setActiveElement;
75
+ });
76
+ var setContextMenuProps = useBuilderStore(function (state) {
77
+ return state.setContextMenuProps;
78
+ });
79
+ var setIsRightPanelOpen = useBuilderStore(function (state) {
80
+ return state.setIsRightPanelOpen;
81
+ });
82
+ var zoom = useBuilderStore(function (state) {
83
+ return state.zoom;
84
+ });
85
85
 
86
86
  var _useState = useState(null),
87
87
  _useState2 = _slicedToArray(_useState, 2),
88
88
  itemToPaste = _useState2[0],
89
89
  setItemToPaste = _useState2[1];
90
90
 
91
+ var lastScrollPosition = useBuilderStore(function (state) {
92
+ return state.lastScrollPosition;
93
+ });
91
94
  var isHeaderHidden = useRef(false);
92
95
  var pageStyles = useRef({});
93
96
  var pageContainerStyles = useRef({});
94
97
  var viewPortRef = useRef({});
95
98
  /* Page Refs */
96
99
 
97
- var refs = pages.reduce(function (acc, curr) {
100
+ var refs = useRef(pages.reduce(function (acc, curr) {
98
101
  acc[curr.id] = /*#__PURE__*/createRef(null);
99
102
  return acc;
100
- }, {});
103
+ }, {}));
101
104
  var isMultipleItemSelected = activeElement !== null && activeElement.length > 1;
102
105
  /* Calculate snap guides */
103
106
 
104
- var _useState3 = useState({}),
105
- _useState4 = _slicedToArray(_useState3, 2),
106
- guides = _useState4[0],
107
- setGuides = _useState4[1];
108
-
109
107
  var keyDownCount = useRef(null);
110
- useEffect(function () {
111
- var _guides = pages.reduce(function (acc, page) {
108
+ var guides = useMemo(function () {
109
+ return pages.reduce(function (acc, page) {
112
110
  var _pageGuides = {};
111
+ var pageRef = refs.current[page.id];
113
112
 
114
- if (refs[page.id]) {
115
- var pageRef = refs[page.id];
116
-
113
+ if (pageRef && pageRef.current) {
117
114
  var _pageRef$current$getB = pageRef.current.getBoundingClientRect(),
118
115
  _height = _pageRef$current$getB.height,
119
116
  left = _pageRef$current$getB.left,
@@ -145,75 +142,12 @@ var Scene = function Scene(_ref) {
145
142
  acc[page.id] = _pageGuides;
146
143
  return acc;
147
144
  }, {});
148
-
149
- setGuides(_guides);
150
145
  }, [pages, zoom]);
151
- /* When an item dropped */
152
-
153
- var dropped = useCallback(function (pageID, _ref2, monitor, ref) {
154
- var id = _ref2.id,
155
- itemType = _ref2.itemType,
156
- type = _ref2.type,
157
- additionalData = _objectWithoutProperties(_ref2, _excluded);
158
-
159
- var pageClient = ref.current.getBoundingClientRect();
160
- var coords = getCorrectDroppedOffsetValue(monitor, pageClient, zoom);
161
-
162
- switch (type) {
163
- case DROPPABLE_ITEM_TYPE:
164
- {
165
- var itemID = generateId();
166
- onItemAdd(_objectSpread(_objectSpread(_objectSpread({}, acceptedItems[itemType].details), {}, {
167
- id: itemID,
168
- pageID: pageID
169
- }, coords), additionalData));
170
- onAnEventTrigger('reportItemAdd', itemType);
171
- setActiveElement(itemID);
172
- setIsRightPanelOpen(true);
173
- break;
174
- }
175
-
176
- case DRAGGABLE_ITEM_TYPE:
177
- {
178
- var dragCoords = getCorrectDroppedOffsetValueBySnap(coords, guides, id, pages, zoom);
179
-
180
- if (isMultipleItemSelected) {
181
- var leftDifference = additionalData.left - dragCoords.left;
182
- var topDifference = additionalData.top - dragCoords.top;
183
- var items = activeElement.reduce(function (acc, curr) {
184
- var tempItem = findItemById(curr, pages);
185
- acc[curr] = {
186
- id: curr,
187
- left: tempItem.left - leftDifference,
188
- pageID: pageID,
189
- top: tempItem.top - topDifference
190
- };
191
- return acc;
192
- }, {});
193
- onItemsMove({
194
- items: items
195
- });
196
- } else {
197
- onItemMove(_objectSpread({
198
- id: id,
199
- pageID: pageID
200
- }, dragCoords));
201
- }
202
-
203
- break;
204
- }
205
-
206
- default:
207
- {
208
- throw new Error('You have to be specify item type');
209
- }
210
- }
211
- }, [pages, guides, zoom, activeElement]);
212
146
  useEffect(function () {
213
147
  if (viewPortRef.current) {
214
148
  viewPortRef.current.scrollTop = lastScrollPosition;
215
149
  }
216
- }, []); // set last scroll position after changing mode
150
+ }, [lastScrollPosition]); // set last scroll position after changing mode
217
151
 
218
152
  useEffect(function () {
219
153
  if (document.body.classList.contains('hideHeader') && isHeaderHidden) {
@@ -396,9 +330,19 @@ var Scene = function Scene(_ref) {
396
330
  }
397
331
  };
398
332
 
333
+ var shouldSuppressKeyboardEvent = function shouldSuppressKeyboardEvent(e) {
334
+ return EVENT_IGNORED_ROLES.some(function (role) {
335
+ return e.target.closest("[role=".concat(role, "]"));
336
+ });
337
+ };
338
+
399
339
  var handleKeyboardEvent = function handleKeyboardEvent(e) {
400
340
  var shouldPaste = itemToPaste && e.key === 'v' && e.metaKey;
401
341
 
342
+ if (shouldSuppressKeyboardEvent(e)) {
343
+ return;
344
+ }
345
+
402
346
  if (activeElement && !shouldPaste) {
403
347
  var arrowKeyCodes = ['ArrowLeft', 'ArrowUp', 'ArrowDown', 'ArrowBottom'];
404
348
  if (arrowKeyCodes.includes(e.key)) e.preventDefault();
@@ -437,8 +381,7 @@ var Scene = function Scene(_ref) {
437
381
  className: mainWrapper,
438
382
  children: [/*#__PURE__*/jsx(DraggableItemLayer, {
439
383
  guides: guides,
440
- itemAccessor: itemAccessor,
441
- pageRefs: refs,
384
+ pageRefs: refs.current,
442
385
  pages: pages
443
386
  }), /*#__PURE__*/jsx("div", {
444
387
  ref: viewPortRef,
@@ -453,110 +396,41 @@ var Scene = function Scene(_ref) {
453
396
  // TODO: This part can be moved into a different component
454
397
  jsxs(Fragment, {
455
398
  children: [/*#__PURE__*/jsx(PageActions, {
456
- disableInteraction: disableInteraction,
457
- onAnEventTrigger: onAnEventTrigger,
458
- onPageAdd: onPageAdd,
459
- onPageDuplicate: onPageDuplicate,
460
- onPageOrdersChange: onPageOrdersChange,
461
- onPageRemove: onPageRemove,
462
399
  order: page$1.order,
463
- pageCount: pageCount,
464
- pageID: page$1.id,
465
- pages: pages,
466
- setEditedElement: setEditedElement,
467
- setIsRightPanelOpen: setIsRightPanelOpen
400
+ pageID: page$1.id
468
401
  }), /*#__PURE__*/jsx("div", {
469
- ref: refs[page$1.id],
402
+ ref: refs.current[page$1.id],
470
403
  className: page,
471
404
  "data-id": page$1.id,
472
405
  "data-order": page$1.order,
406
+ id: "presentation-page-".concat(page$1.id.toString()),
473
407
  style: pageStyles.current,
474
408
  children: /*#__PURE__*/jsx(Page, {
475
- activeElement: activeElement,
476
- additionalPageItems: additionalPageItems,
477
- guides: guides[page$1.id],
478
- hashCode: hashCode,
479
- itemAccessor: itemAccessor,
480
- items: page$1.items // TODO: dont use inline functions
481
- ,
482
- onDrop: function onDrop(item, monitor) {
483
- return dropped(page$1.id, item, monitor, refs[page$1.id]);
484
- },
485
- onItemAdd: onItemAdd,
486
- onItemChange: onItemChange,
487
- onItemRemove: onItemRemove,
488
- onItemResize: onItemResize,
409
+ guides: guides,
410
+ items: page$1.items,
489
411
  page: page$1,
490
412
  pageIndex: index,
491
- pageRef: refs[page$1.id],
413
+ pageRef: refs.current[page$1.id],
492
414
  style: pageContainerStyles.current
493
415
  })
494
416
  }, "page_".concat(page$1.id))]
495
417
  }, page$1.id)
496
418
  );
497
- }), /*#__PURE__*/jsx(PageAdder, {
498
- onPageAdd: onPageAdd,
499
- pageCount: pageCount
500
- })]
419
+ }), /*#__PURE__*/jsx(PageAdder, {})]
501
420
  })
502
- }), /*#__PURE__*/jsx(ZoomControls, {
503
- mode: "customize",
504
- pages: pages
505
- }), contextMenuProps && /*#__PURE__*/jsx(ContextMenu, {
421
+ }), /*#__PURE__*/jsx(ZoomControls, {}), contextMenuProps && /*#__PURE__*/jsx(ContextMenu, {
506
422
  exceptionalClasses: ['contextMenu-button'],
507
423
  height: height,
508
424
  item: findItemById(contextMenuProps.id, pages),
509
425
  items: findItemsOnPage(contextMenuProps.pageID, pages),
510
- onAnEventTrigger: onAnEventTrigger,
511
426
  onClickOutside: function onClickOutside() {
512
427
  return setContextMenuProps(null);
513
428
  },
514
- onItemChange: onItemChange,
515
- onItemRemove: onItemRemove,
516
- onPageChange: onPageChange,
517
429
  position: contextMenuProps.position,
518
430
  width: width
519
431
  })]
520
432
  });
521
433
  };
522
434
 
523
- Scene.propTypes = {
524
- additionalPageItems: PropTypes.arrayOf(PropTypes.node),
525
- hashCode: PropTypes.string,
526
- itemAccessor: PropTypes.func,
527
- lastScrollPosition: PropTypes.number,
528
- onItemAdd: PropTypes.func,
529
- onItemChange: PropTypes.func,
530
- onItemMove: PropTypes.func,
531
- onItemRemove: PropTypes.func,
532
- onItemResize: PropTypes.func,
533
- onItemsMove: PropTypes.func,
534
- onPageAdd: PropTypes.func,
535
- onPageChange: PropTypes.func,
536
- onPageDuplicate: PropTypes.func,
537
- onPageOrdersChange: PropTypes.func,
538
- onPageRemove: PropTypes.func,
539
- pages: PropTypes.arrayOf(PropTypes.shape({}))
540
- };
541
- Scene.defaultProps = {
542
- additionalPageItems: [],
543
- hashCode: '',
544
- itemAccessor: function itemAccessor() {},
545
- lastScrollPosition: 0,
546
- onItemAdd: function onItemAdd() {},
547
- onItemChange: function onItemChange() {},
548
- onItemMove: function onItemMove() {},
549
- onItemRemove: function onItemRemove() {},
550
- onItemResize: function onItemResize() {},
551
- onItemsMove: function onItemsMove() {},
552
- onPageAdd: function onPageAdd() {},
553
- onPageChange: function onPageChange() {},
554
- onPageDuplicate: function onPageDuplicate() {},
555
- onPageOrdersChange: function onPageOrdersChange() {},
556
- onPageRemove: function onPageRemove() {},
557
- pages: []
558
- };
559
- var Scene$1 = /*#__PURE__*/memo(Scene);
560
-
561
- export default Scene$1;
435
+ export default Scene;
562
436
  //# sourceMappingURL=Scene.js.map