@jotforminc/dnd-builder 2.9.16 → 2.9.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/lib/cjs/components/AlignmentGuides.js +8 -10
- package/lib/cjs/components/AlignmentGuides.js.map +1 -1
- package/lib/cjs/components/Builder/ContextMenu.js +20 -22
- package/lib/cjs/components/Builder/ContextMenu.js.map +1 -1
- package/lib/cjs/components/Builder/DndWrapper.js +2 -4
- package/lib/cjs/components/Builder/DndWrapper.js.map +1 -1
- package/lib/cjs/components/Builder/Element.js +24 -24
- package/lib/cjs/components/Builder/Element.js.map +1 -1
- package/lib/cjs/components/Builder/Page.js +116 -48
- package/lib/cjs/components/Builder/Page.js.map +1 -1
- package/lib/cjs/components/Builder/PageActions.js +24 -26
- package/lib/cjs/components/Builder/PageActions.js.map +1 -1
- package/lib/cjs/components/Builder/PageAdder.js +6 -8
- package/lib/cjs/components/Builder/PageAdder.js.map +1 -1
- package/lib/cjs/components/Builder/Panel.js +8 -10
- package/lib/cjs/components/Builder/Panel.js.map +1 -1
- package/lib/cjs/components/Builder/Scene.js +37 -109
- package/lib/cjs/components/Builder/Scene.js.map +1 -1
- package/lib/cjs/components/Builder/SearchInput.js +6 -10
- package/lib/cjs/components/Builder/SearchInput.js.map +1 -1
- package/lib/cjs/components/Builder/Section.js +8 -10
- package/lib/cjs/components/Builder/Section.js.map +1 -1
- package/lib/cjs/components/Builder/Tabs.js +2 -4
- package/lib/cjs/components/Builder/Tabs.js.map +1 -1
- package/lib/cjs/components/Builder/ZoomControls.js +4 -6
- package/lib/cjs/components/Builder/ZoomControls.js.map +1 -1
- package/lib/cjs/components/DraggableItem/DraggableItem.js +126 -116
- package/lib/cjs/components/DraggableItem/DraggableItem.js.map +1 -1
- package/lib/cjs/components/DraggableItem/DraggableItemActions.js +12 -14
- package/lib/cjs/components/DraggableItem/DraggableItemActions.js.map +1 -1
- package/lib/cjs/components/DraggableItem/DraggableItemLayer.js +10 -10
- package/lib/cjs/components/DraggableItem/DraggableItemLayer.js.map +1 -1
- package/lib/cjs/components/Elements/Chart.js +3 -4
- package/lib/cjs/components/Elements/Chart.js.map +1 -1
- package/lib/cjs/components/Elements/Icon.js +3 -5
- package/lib/cjs/components/Elements/Icon.js.map +1 -1
- package/lib/cjs/components/Elements/Image.js +6 -8
- package/lib/cjs/components/Elements/Image.js.map +1 -1
- package/lib/cjs/components/Elements/RichText.js +7 -9
- package/lib/cjs/components/Elements/RichText.js.map +1 -1
- package/lib/cjs/components/Elements/Shapes.js +2 -4
- package/lib/cjs/components/Elements/Shapes.js.map +1 -1
- package/lib/cjs/components/ItemPositioner.js +6 -8
- package/lib/cjs/components/ItemPositioner.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js +16 -20
- package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js +2 -4
- package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/PageActionsBar.js +8 -15
- package/lib/cjs/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/PageItem.js +64 -5
- package/lib/cjs/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +66 -0
- package/lib/cjs/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
- package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js +158 -36
- package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js +12 -14
- package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
- package/lib/cjs/components/Panels/LeftPanel/Elements.js +8 -10
- package/lib/cjs/components/Panels/LeftPanel/Elements.js.map +1 -1
- package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js +4 -6
- package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
- package/lib/cjs/components/Panels/RightPanel/RightPanel.js +10 -12
- package/lib/cjs/components/Panels/RightPanel/RightPanel.js.map +1 -1
- package/lib/cjs/components/Panels/RightPanel/Settings.js +13 -13
- package/lib/cjs/components/Panels/RightPanel/Settings.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js +40 -40
- package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js +14 -16
- package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js +19 -22
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js +2 -4
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItem.js +69 -10
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +66 -0
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js +7 -6
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js +172 -89
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
- package/lib/cjs/components/Presentation/Presentation.js +18 -20
- package/lib/cjs/components/Presentation/Presentation.js.map +1 -1
- package/lib/cjs/components/Presentation/PresentationBar/PageNavigation.js +8 -10
- package/lib/cjs/components/Presentation/PresentationBar/PageNavigation.js.map +1 -1
- package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js +6 -10
- package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
- package/lib/cjs/components/Presentation/PresentationBar/PresentationBar.js +26 -38
- package/lib/cjs/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
- package/lib/cjs/components/Presentation/PresentationBar/SelectZoom.js +8 -10
- package/lib/cjs/components/Presentation/PresentationBar/SelectZoom.js.map +1 -1
- package/lib/cjs/components/Presentation/PresentationWrapper.js +6 -8
- package/lib/cjs/components/Presentation/PresentationWrapper.js.map +1 -1
- package/lib/cjs/components/Presentation/ProgressBar.js +4 -6
- package/lib/cjs/components/Presentation/ProgressBar.js.map +1 -1
- package/lib/cjs/components/Preview/Preview.js +16 -18
- package/lib/cjs/components/Preview/Preview.js.map +1 -1
- package/lib/cjs/components/Preview/StaticItem.js +4 -6
- package/lib/cjs/components/Preview/StaticItem.js.map +1 -1
- package/lib/cjs/components/Preview/StaticPage.js +14 -16
- package/lib/cjs/components/Preview/StaticPage.js.map +1 -1
- package/lib/cjs/components/Preview/StaticScene.js +18 -19
- package/lib/cjs/components/Preview/StaticScene.js.map +1 -1
- package/lib/cjs/components/Print/Print.js +0 -7
- package/lib/cjs/components/Print/Print.js.map +1 -1
- package/lib/cjs/components/Print/PrintMode.js +10 -12
- package/lib/cjs/components/Print/PrintMode.js.map +1 -1
- package/lib/cjs/components/Print/PrintModeWithoutContext.js +12 -14
- package/lib/cjs/components/Print/PrintModeWithoutContext.js.map +1 -1
- package/lib/cjs/components/Settings/Button.js +8 -10
- package/lib/cjs/components/Settings/Button.js.map +1 -1
- package/lib/cjs/components/Settings/CheckboxGroup.js +8 -10
- package/lib/cjs/components/Settings/CheckboxGroup.js.map +1 -1
- package/lib/cjs/components/Settings/ColorPicker.js +8 -10
- package/lib/cjs/components/Settings/ColorPicker.js.map +1 -1
- package/lib/cjs/components/Settings/Dropdown.js +10 -12
- package/lib/cjs/components/Settings/Dropdown.js.map +1 -1
- package/lib/cjs/components/Settings/FieldSet.js +3 -4
- package/lib/cjs/components/Settings/FieldSet.js.map +1 -1
- package/lib/cjs/components/Settings/IconSelectBox.js +8 -10
- package/lib/cjs/components/Settings/IconSelectBox.js.map +1 -1
- package/lib/cjs/components/Settings/ImagePicker/EnterURL.js +4 -6
- package/lib/cjs/components/Settings/ImagePicker/EnterURL.js.map +1 -1
- package/lib/cjs/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +6 -8
- package/lib/cjs/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
- package/lib/cjs/components/Settings/ImageUrl.js +8 -10
- package/lib/cjs/components/Settings/ImageUrl.js.map +1 -1
- package/lib/cjs/components/Settings/LayoutSizeSettings.js +4 -6
- package/lib/cjs/components/Settings/LayoutSizeSettings.js.map +1 -1
- package/lib/cjs/components/Settings/Orientation.js +8 -10
- package/lib/cjs/components/Settings/Orientation.js.map +1 -1
- package/lib/cjs/components/Settings/PageLayer/LayerDragOverlay.js +130 -0
- package/lib/cjs/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
- package/lib/cjs/components/Settings/PageLayer/LayerItem.js +82 -32
- package/lib/cjs/components/Settings/PageLayer/LayerItem.js.map +1 -1
- package/lib/cjs/components/Settings/PageLayer/PageLayer.js +115 -50
- package/lib/cjs/components/Settings/PageLayer/PageLayer.js.map +1 -1
- package/lib/cjs/components/Settings/SegmentControl.js +8 -10
- package/lib/cjs/components/Settings/SegmentControl.js.map +1 -1
- package/lib/cjs/components/Settings/SelectBox.js +8 -10
- package/lib/cjs/components/Settings/SelectBox.js.map +1 -1
- package/lib/cjs/components/Settings/SettingsItemRenderer.js +9 -11
- package/lib/cjs/components/Settings/SettingsItemRenderer.js.map +1 -1
- package/lib/cjs/components/Settings/SizeSettings.js +4 -6
- package/lib/cjs/components/Settings/SizeSettings.js.map +1 -1
- package/lib/cjs/components/Settings/Slider.js +8 -10
- package/lib/cjs/components/Settings/Slider.js.map +1 -1
- package/lib/cjs/components/Settings/Switch.js +8 -10
- package/lib/cjs/components/Settings/Switch.js.map +1 -1
- package/lib/cjs/components/Settings/Textbox.js +12 -14
- package/lib/cjs/components/Settings/Textbox.js.map +1 -1
- package/lib/cjs/components/Settings/Toggle.js +8 -10
- package/lib/cjs/components/Settings/Toggle.js.map +1 -1
- package/lib/cjs/components/StaticElements/StaticRichText.js +26 -30
- package/lib/cjs/components/StaticElements/StaticRichText.js.map +1 -1
- package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -4
- package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
- package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js +4 -6
- package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js.map +1 -1
- package/lib/cjs/components/TextEditor/QuillEditor.js +0 -6
- package/lib/cjs/components/TextEditor/QuillEditor.js.map +1 -1
- package/lib/cjs/components/TextEditor/TextEditor.js +8 -10
- package/lib/cjs/components/TextEditor/TextEditor.js.map +1 -1
- package/lib/cjs/components/withClickOutside.js +4 -6
- package/lib/cjs/components/withClickOutside.js.map +1 -1
- package/lib/cjs/components/withZoomPanPinchHOC.js +2 -4
- package/lib/cjs/components/withZoomPanPinchHOC.js.map +1 -1
- package/lib/cjs/styles/_jfReportsReportItem.scss +1 -1
- package/lib/cjs/utils/builderContext.js +12 -24
- package/lib/cjs/utils/builderContext.js.map +1 -1
- package/lib/cjs/utils/functions.js +4 -0
- package/lib/cjs/utils/functions.js.map +1 -1
- package/lib/cjs/utils/presentationContext.js +5 -10
- package/lib/cjs/utils/presentationContext.js.map +1 -1
- package/lib/cjs/utils/propContext.js +7 -14
- package/lib/cjs/utils/propContext.js.map +1 -1
- package/lib/esm/components/AlignmentGuides.js +8 -10
- package/lib/esm/components/AlignmentGuides.js.map +1 -1
- package/lib/esm/components/Builder/ContextMenu.js +20 -22
- package/lib/esm/components/Builder/ContextMenu.js.map +1 -1
- package/lib/esm/components/Builder/DndWrapper.js +2 -4
- package/lib/esm/components/Builder/DndWrapper.js.map +1 -1
- package/lib/esm/components/Builder/Element.js +24 -24
- package/lib/esm/components/Builder/Element.js.map +1 -1
- package/lib/esm/components/Builder/Page.js +119 -51
- package/lib/esm/components/Builder/Page.js.map +1 -1
- package/lib/esm/components/Builder/PageActions.js +24 -26
- package/lib/esm/components/Builder/PageActions.js.map +1 -1
- package/lib/esm/components/Builder/PageAdder.js +6 -8
- package/lib/esm/components/Builder/PageAdder.js.map +1 -1
- package/lib/esm/components/Builder/Panel.js +8 -10
- package/lib/esm/components/Builder/Panel.js.map +1 -1
- package/lib/esm/components/Builder/Scene.js +39 -111
- package/lib/esm/components/Builder/Scene.js.map +1 -1
- package/lib/esm/components/Builder/SearchInput.js +6 -10
- package/lib/esm/components/Builder/SearchInput.js.map +1 -1
- package/lib/esm/components/Builder/Section.js +8 -10
- package/lib/esm/components/Builder/Section.js.map +1 -1
- package/lib/esm/components/Builder/Tabs.js +2 -4
- package/lib/esm/components/Builder/Tabs.js.map +1 -1
- package/lib/esm/components/Builder/ZoomControls.js +4 -6
- package/lib/esm/components/Builder/ZoomControls.js.map +1 -1
- package/lib/esm/components/DraggableItem/DraggableItem.js +126 -116
- package/lib/esm/components/DraggableItem/DraggableItem.js.map +1 -1
- package/lib/esm/components/DraggableItem/DraggableItemActions.js +12 -14
- package/lib/esm/components/DraggableItem/DraggableItemActions.js.map +1 -1
- package/lib/esm/components/DraggableItem/DraggableItemLayer.js +10 -10
- package/lib/esm/components/DraggableItem/DraggableItemLayer.js.map +1 -1
- package/lib/esm/components/Elements/Chart.js +3 -4
- package/lib/esm/components/Elements/Chart.js.map +1 -1
- package/lib/esm/components/Elements/Icon.js +3 -5
- package/lib/esm/components/Elements/Icon.js.map +1 -1
- package/lib/esm/components/Elements/Image.js +6 -8
- package/lib/esm/components/Elements/Image.js.map +1 -1
- package/lib/esm/components/Elements/RichText.js +7 -9
- package/lib/esm/components/Elements/RichText.js.map +1 -1
- package/lib/esm/components/Elements/Shapes.js +2 -4
- package/lib/esm/components/Elements/Shapes.js.map +1 -1
- package/lib/esm/components/ItemPositioner.js +6 -8
- package/lib/esm/components/ItemPositioner.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js +16 -20
- package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js +2 -4
- package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanelToggler.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js +8 -15
- package/lib/esm/components/Panels/AllSlidesPanel/PageActionsBar.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js +64 -6
- package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +60 -0
- package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
- package/lib/esm/components/Panels/AllSlidesPanel/PageList.js +155 -37
- package/lib/esm/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js +12 -14
- package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
- package/lib/esm/components/Panels/LeftPanel/Elements.js +8 -10
- package/lib/esm/components/Panels/LeftPanel/Elements.js.map +1 -1
- package/lib/esm/components/Panels/LeftPanel/LeftPanel.js +4 -6
- package/lib/esm/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
- package/lib/esm/components/Panels/RightPanel/RightPanel.js +10 -12
- package/lib/esm/components/Panels/RightPanel/RightPanel.js.map +1 -1
- package/lib/esm/components/Panels/RightPanel/Settings.js +13 -13
- package/lib/esm/components/Panels/RightPanel/Settings.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js +40 -40
- package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js +14 -16
- package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js +19 -22
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js +2 -4
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js +66 -11
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +60 -0
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js +7 -6
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js +174 -91
- package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
- package/lib/esm/components/Presentation/Presentation.js +18 -20
- package/lib/esm/components/Presentation/Presentation.js.map +1 -1
- package/lib/esm/components/Presentation/PresentationBar/PageNavigation.js +8 -10
- package/lib/esm/components/Presentation/PresentationBar/PageNavigation.js.map +1 -1
- package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js +6 -10
- package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
- package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js +26 -38
- package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
- package/lib/esm/components/Presentation/PresentationBar/SelectZoom.js +8 -10
- package/lib/esm/components/Presentation/PresentationBar/SelectZoom.js.map +1 -1
- package/lib/esm/components/Presentation/PresentationWrapper.js +6 -8
- package/lib/esm/components/Presentation/PresentationWrapper.js.map +1 -1
- package/lib/esm/components/Presentation/ProgressBar.js +4 -6
- package/lib/esm/components/Presentation/ProgressBar.js.map +1 -1
- package/lib/esm/components/Preview/Preview.js +16 -18
- package/lib/esm/components/Preview/Preview.js.map +1 -1
- package/lib/esm/components/Preview/StaticItem.js +4 -6
- package/lib/esm/components/Preview/StaticItem.js.map +1 -1
- package/lib/esm/components/Preview/StaticPage.js +14 -16
- package/lib/esm/components/Preview/StaticPage.js.map +1 -1
- package/lib/esm/components/Preview/StaticScene.js +18 -19
- package/lib/esm/components/Preview/StaticScene.js.map +1 -1
- package/lib/esm/components/Print/Print.js +0 -7
- package/lib/esm/components/Print/Print.js.map +1 -1
- package/lib/esm/components/Print/PrintMode.js +10 -12
- package/lib/esm/components/Print/PrintMode.js.map +1 -1
- package/lib/esm/components/Print/PrintModeWithoutContext.js +12 -14
- package/lib/esm/components/Print/PrintModeWithoutContext.js.map +1 -1
- package/lib/esm/components/Settings/Button.js +8 -10
- package/lib/esm/components/Settings/Button.js.map +1 -1
- package/lib/esm/components/Settings/CheckboxGroup.js +8 -10
- package/lib/esm/components/Settings/CheckboxGroup.js.map +1 -1
- package/lib/esm/components/Settings/ColorPicker.js +8 -10
- package/lib/esm/components/Settings/ColorPicker.js.map +1 -1
- package/lib/esm/components/Settings/Dropdown.js +10 -12
- package/lib/esm/components/Settings/Dropdown.js.map +1 -1
- package/lib/esm/components/Settings/FieldSet.js +3 -4
- package/lib/esm/components/Settings/FieldSet.js.map +1 -1
- package/lib/esm/components/Settings/IconSelectBox.js +8 -10
- package/lib/esm/components/Settings/IconSelectBox.js.map +1 -1
- package/lib/esm/components/Settings/ImagePicker/EnterURL.js +4 -6
- package/lib/esm/components/Settings/ImagePicker/EnterURL.js.map +1 -1
- package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js +6 -8
- package/lib/esm/components/Settings/ImagePicker/ImageThumbnailWithDelete.js.map +1 -1
- package/lib/esm/components/Settings/ImageUrl.js +8 -10
- package/lib/esm/components/Settings/ImageUrl.js.map +1 -1
- package/lib/esm/components/Settings/LayoutSizeSettings.js +4 -6
- package/lib/esm/components/Settings/LayoutSizeSettings.js.map +1 -1
- package/lib/esm/components/Settings/Orientation.js +8 -10
- package/lib/esm/components/Settings/Orientation.js.map +1 -1
- package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js +123 -0
- package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
- package/lib/esm/components/Settings/PageLayer/LayerItem.js +83 -34
- package/lib/esm/components/Settings/PageLayer/LayerItem.js.map +1 -1
- package/lib/esm/components/Settings/PageLayer/PageLayer.js +117 -52
- package/lib/esm/components/Settings/PageLayer/PageLayer.js.map +1 -1
- package/lib/esm/components/Settings/SegmentControl.js +8 -10
- package/lib/esm/components/Settings/SegmentControl.js.map +1 -1
- package/lib/esm/components/Settings/SelectBox.js +8 -10
- package/lib/esm/components/Settings/SelectBox.js.map +1 -1
- package/lib/esm/components/Settings/SettingsItemRenderer.js +9 -11
- package/lib/esm/components/Settings/SettingsItemRenderer.js.map +1 -1
- package/lib/esm/components/Settings/SizeSettings.js +4 -6
- package/lib/esm/components/Settings/SizeSettings.js.map +1 -1
- package/lib/esm/components/Settings/Slider.js +8 -10
- package/lib/esm/components/Settings/Slider.js.map +1 -1
- package/lib/esm/components/Settings/Switch.js +8 -10
- package/lib/esm/components/Settings/Switch.js.map +1 -1
- package/lib/esm/components/Settings/Textbox.js +12 -14
- package/lib/esm/components/Settings/Textbox.js.map +1 -1
- package/lib/esm/components/Settings/Toggle.js +8 -10
- package/lib/esm/components/Settings/Toggle.js.map +1 -1
- package/lib/esm/components/StaticElements/StaticRichText.js +26 -30
- package/lib/esm/components/StaticElements/StaticRichText.js.map +1 -1
- package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -4
- package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
- package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js +4 -6
- package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbarWrapper.js.map +1 -1
- package/lib/esm/components/TextEditor/QuillEditor.js +0 -6
- package/lib/esm/components/TextEditor/QuillEditor.js.map +1 -1
- package/lib/esm/components/TextEditor/TextEditor.js +8 -10
- package/lib/esm/components/TextEditor/TextEditor.js.map +1 -1
- package/lib/esm/components/withClickOutside.js +4 -6
- package/lib/esm/components/withClickOutside.js.map +1 -1
- package/lib/esm/components/withZoomPanPinchHOC.js +2 -4
- package/lib/esm/components/withZoomPanPinchHOC.js.map +1 -1
- package/lib/esm/styles/_jfReportsReportItem.scss +1 -1
- package/lib/esm/utils/builderContext.js +12 -24
- package/lib/esm/utils/builderContext.js.map +1 -1
- package/lib/esm/utils/functions.js +4 -1
- package/lib/esm/utils/functions.js.map +1 -1
- package/lib/esm/utils/presentationContext.js +5 -10
- package/lib/esm/utils/presentationContext.js.map +1 -1
- package/lib/esm/utils/propContext.js +7 -14
- package/lib/esm/utils/propContext.js.map +1 -1
- package/package.json +10 -8
- package/lib/cjs/components/ResponsiveContent.js +0 -15
- package/lib/cjs/components/ResponsiveContent.js.map +0 -1
- package/lib/esm/components/ResponsiveContent.js +0 -13
- package/lib/esm/components/ResponsiveContent.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [2.9.19](https://github.com/jotform/dnd-builder/compare/v2.9.18...v2.9.19) (2026-01-16)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* all of defaultProps are removed ([9165427](https://github.com/jotform/dnd-builder/commit/916542744cdeb3df4d08a14936f16036e2bae6e0))
|
|
11
|
+
* dnd operations fix & refactor ([2ffb3be](https://github.com/jotform/dnd-builder/commit/2ffb3be0417618f8a4b64842c692d27ec712561e))
|
|
12
|
+
* **dnd-builder:** replace onKeyDown handler with emptyFunction ([ff7fd93](https://github.com/jotform/dnd-builder/commit/ff7fd936222157f2dd4d110eab5ef5307e33b443))
|
|
13
|
+
* **dnd-builder:** set item type droppable element ([9175d49](https://github.com/jotform/dnd-builder/commit/9175d494a85ad079759997e6df67c98f7fec0add))
|
|
14
|
+
* revert version of eslint-plugin-react-hooks ([040e308](https://github.com/jotform/dnd-builder/commit/040e3081138a3e37c8b5e36eef17e676dc0f58e1))
|
|
15
|
+
* yarn.lock ([e2ea5f5](https://github.com/jotform/dnd-builder/commit/e2ea5f562931e1d73b6c755b458f02ac42fdc6f0))
|
|
16
|
+
|
|
17
|
+
### [2.9.18](https://github.com/jotform/dnd-builder/compare/v2.9.17...v2.9.18) (2026-01-13)
|
|
18
|
+
|
|
5
19
|
### [2.9.16](https://github.com/jotform/dnd-builder/compare/v2.9.15...v2.9.16) (2026-01-09)
|
|
6
20
|
|
|
7
21
|
### [2.9.15](https://github.com/jotform/dnd-builder/compare/v2.9.14...v2.9.15) (2025-12-02)
|
|
@@ -17,10 +17,14 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
17
17
|
|
|
18
18
|
var AlignmentGuides = function AlignmentGuides(_ref) {
|
|
19
19
|
var axis = _ref.axis,
|
|
20
|
-
guides = _ref.guides,
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
_ref$guides = _ref.guides,
|
|
21
|
+
guides = _ref$guides === void 0 ? {} : _ref$guides,
|
|
22
|
+
_ref$matches = _ref.matches,
|
|
23
|
+
matches = _ref$matches === void 0 ? {} : _ref$matches,
|
|
24
|
+
_ref$show = _ref.show,
|
|
25
|
+
show = _ref$show === void 0 ? false : _ref$show,
|
|
26
|
+
_ref$zoom = _ref.zoom,
|
|
27
|
+
zoom = _ref$zoom === void 0 ? 1 : _ref$zoom;
|
|
24
28
|
if (Object.keys(matches).length === 0) return null;
|
|
25
29
|
var styleKey = axis === 'x' ? 'left' : 'top';
|
|
26
30
|
return Object.keys(guides).reduce(function (result, box) {
|
|
@@ -46,12 +50,6 @@ AlignmentGuides.propTypes = {
|
|
|
46
50
|
show: PropTypes__default['default'].bool,
|
|
47
51
|
zoom: PropTypes__default['default'].number
|
|
48
52
|
};
|
|
49
|
-
AlignmentGuides.defaultProps = {
|
|
50
|
-
guides: {},
|
|
51
|
-
matches: {},
|
|
52
|
-
show: false,
|
|
53
|
-
zoom: 1
|
|
54
|
-
};
|
|
55
53
|
var AlignmentGuides$1 = /*#__PURE__*/React.memo(AlignmentGuides);
|
|
56
54
|
|
|
57
55
|
module.exports = AlignmentGuides$1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlignmentGuides.js","sources":["../../../src/components/AlignmentGuides.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\n\nconst AlignmentGuides = ({\n axis,\n guides,\n matches,\n show,\n zoom,\n}) => {\n if (Object.keys(matches).length === 0) return null;\n const styleKey = axis === 'x' ? 'left' : 'top';\n\n return Object.keys(guides).reduce((result, box) => {\n const guideClassNames = show ? `guide ${axis}Axis active` : `guide ${axis}Axis`;\n const yAxisGuidesForCurrentBox = guides[box][axis].map((position, index) => {\n if (\n show\n && matches\n && matches[axis]\n && matches[axis].intersection\n && matches[axis].intersection === position\n ) {\n return (\n <div\n key={`${position}-${index.toString()}-${box}`}\n className={guideClassNames}\n style={{ [styleKey]: position / zoom }}\n />\n );\n }\n return null;\n });\n\n return result.concat(yAxisGuidesForCurrentBox);\n }, []);\n};\n\nAlignmentGuides.propTypes = {\n axis: PropTypes.oneOf(['x', 'y']).isRequired,\n guides: PropTypes.shape({}),\n matches: PropTypes.shape({}),\n show: PropTypes.bool,\n zoom: PropTypes.number,\n};\n\
|
|
1
|
+
{"version":3,"file":"AlignmentGuides.js","sources":["../../../src/components/AlignmentGuides.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\n\nconst AlignmentGuides = ({\n axis,\n guides = {},\n matches = {},\n show = false,\n zoom = 1,\n}) => {\n if (Object.keys(matches).length === 0) return null;\n const styleKey = axis === 'x' ? 'left' : 'top';\n\n return Object.keys(guides).reduce((result, box) => {\n const guideClassNames = show ? `guide ${axis}Axis active` : `guide ${axis}Axis`;\n const yAxisGuidesForCurrentBox = guides[box][axis].map((position, index) => {\n if (\n show\n && matches\n && matches[axis]\n && matches[axis].intersection\n && matches[axis].intersection === position\n ) {\n return (\n <div\n key={`${position}-${index.toString()}-${box}`}\n className={guideClassNames}\n style={{ [styleKey]: position / zoom }}\n />\n );\n }\n return null;\n });\n\n return result.concat(yAxisGuidesForCurrentBox);\n }, []);\n};\n\nAlignmentGuides.propTypes = {\n axis: PropTypes.oneOf(['x', 'y']).isRequired,\n guides: PropTypes.shape({}),\n matches: PropTypes.shape({}),\n show: PropTypes.bool,\n zoom: PropTypes.number,\n};\n\nexport default memo(AlignmentGuides);\n"],"names":["AlignmentGuides","axis","guides","matches","show","zoom","Object","keys","length","styleKey","reduce","result","box","guideClassNames","yAxisGuidesForCurrentBox","map","position","index","intersection","_jsx","toString","concat","propTypes","PropTypes","oneOf","isRequired","shape","bool","number","memo"],"mappings":";;;;;;;;;;;;;;;;;AAGA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,OAMlB;AAAA,MALJC,IAKI,QALJA,IAKI;AAAA,yBAJJC,MAII;AAAA,MAJJA,MAII,4BAJK,EAIL;AAAA,0BAHJC,OAGI;AAAA,MAHJA,OAGI,6BAHM,EAGN;AAAA,uBAFJC,IAEI;AAAA,MAFJA,IAEI,0BAFG,KAEH;AAAA,uBADJC,IACI;AAAA,MADJA,IACI,0BADG,CACH;AACJ,MAAIC,MAAM,CAACC,IAAP,CAAYJ,OAAZ,EAAqBK,MAArB,KAAgC,CAApC,EAAuC,OAAO,IAAP;AACvC,MAAMC,QAAQ,GAAGR,IAAI,KAAK,GAAT,GAAe,MAAf,GAAwB,KAAzC;AAEA,SAAOK,MAAM,CAACC,IAAP,CAAYL,MAAZ,EAAoBQ,MAApB,CAA2B,UAACC,MAAD,EAASC,GAAT,EAAiB;AACjD,QAAMC,eAAe,GAAGT,IAAI,mBAAYH,IAAZ,mCAAyCA,IAAzC,SAA5B;AACA,QAAMa,wBAAwB,GAAGZ,MAAM,CAACU,GAAD,CAAN,CAAYX,IAAZ,EAAkBc,GAAlB,CAAsB,UAACC,QAAD,EAAWC,KAAX,EAAqB;AAC1E,UACEb,IAAI,IACDD,OADH,IAEGA,OAAO,CAACF,IAAD,CAFV,IAGGE,OAAO,CAACF,IAAD,CAAP,CAAciB,YAHjB,IAIGf,OAAO,CAACF,IAAD,CAAP,CAAciB,YAAd,KAA+BF,QALpC,EAME;AACA,4BACEG;AAEE,UAAA,SAAS,EAAEN,eAFb;AAGE,UAAA,KAAK,sBAAKJ,QAAL,EAAgBO,QAAQ,GAAGX,IAA3B;AAHP,qBACUW,QADV,cACsBC,KAAK,CAACG,QAAN,EADtB,cAC0CR,GAD1C,EADF;AAOD;;AACD,aAAO,IAAP;AACD,KAjBgC,CAAjC;AAmBA,WAAOD,MAAM,CAACU,MAAP,CAAcP,wBAAd,CAAP;AACD,GAtBM,EAsBJ,EAtBI,CAAP;AAuBD,CAjCD;;AAmCAd,eAAe,CAACsB,SAAhB,GAA4B;AAC1BrB,EAAAA,IAAI,EAAEsB,6BAAS,CAACC,KAAV,CAAgB,CAAC,GAAD,EAAM,GAAN,CAAhB,EAA4BC,UADR;AAE1BvB,EAAAA,MAAM,EAAEqB,6BAAS,CAACG,KAAV,CAAgB,EAAhB,CAFkB;AAG1BvB,EAAAA,OAAO,EAAEoB,6BAAS,CAACG,KAAV,CAAgB,EAAhB,CAHiB;AAI1BtB,EAAAA,IAAI,EAAEmB,6BAAS,CAACI,IAJU;AAK1BtB,EAAAA,IAAI,EAAEkB,6BAAS,CAACK;AALU,CAA5B;AAQA,qCAAeC,UAAI,CAAC7B,eAAD,CAAnB;;;;"}
|
|
@@ -41,16 +41,26 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
41
41
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
42
42
|
|
|
43
43
|
var ContextMenu = function ContextMenu(_ref) {
|
|
44
|
-
var height = _ref.height,
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
44
|
+
var _ref$height = _ref.height,
|
|
45
|
+
height = _ref$height === void 0 ? 1 : _ref$height,
|
|
46
|
+
_ref$item = _ref.item,
|
|
47
|
+
item = _ref$item === void 0 ? {} : _ref$item,
|
|
48
|
+
_ref$items = _ref.items,
|
|
49
|
+
items = _ref$items === void 0 ? [] : _ref$items,
|
|
50
|
+
_ref$onAnEventTrigger = _ref.onAnEventTrigger,
|
|
51
|
+
onAnEventTrigger = _ref$onAnEventTrigger === void 0 ? function () {} : _ref$onAnEventTrigger,
|
|
52
|
+
_ref$onClickOutside = _ref.onClickOutside,
|
|
53
|
+
onClickOutside = _ref$onClickOutside === void 0 ? function () {} : _ref$onClickOutside,
|
|
54
|
+
_ref$onItemChange = _ref.onItemChange,
|
|
55
|
+
onItemChange = _ref$onItemChange === void 0 ? function () {} : _ref$onItemChange,
|
|
56
|
+
_ref$onItemRemove = _ref.onItemRemove,
|
|
57
|
+
onItemRemove = _ref$onItemRemove === void 0 ? function () {} : _ref$onItemRemove,
|
|
58
|
+
_ref$onPageChange = _ref.onPageChange,
|
|
59
|
+
onPageChange = _ref$onPageChange === void 0 ? function () {} : _ref$onPageChange,
|
|
60
|
+
_ref$position = _ref.position,
|
|
61
|
+
position = _ref$position === void 0 ? {} : _ref$position,
|
|
62
|
+
_ref$width = _ref.width,
|
|
63
|
+
width = _ref$width === void 0 ? 1 : _ref$width;
|
|
54
64
|
|
|
55
65
|
var _useState = React.useState(position),
|
|
56
66
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -280,18 +290,6 @@ ContextMenu.propTypes = {
|
|
|
280
290
|
position: PropTypes__default['default'].shape({}),
|
|
281
291
|
width: PropTypes__default['default'].number
|
|
282
292
|
};
|
|
283
|
-
ContextMenu.defaultProps = {
|
|
284
|
-
height: 1,
|
|
285
|
-
item: {},
|
|
286
|
-
items: [],
|
|
287
|
-
onAnEventTrigger: function onAnEventTrigger() {},
|
|
288
|
-
onClickOutside: function onClickOutside() {},
|
|
289
|
-
onItemChange: function onItemChange() {},
|
|
290
|
-
onItemRemove: function onItemRemove() {},
|
|
291
|
-
onPageChange: function onPageChange() {},
|
|
292
|
-
position: {},
|
|
293
|
-
width: 1
|
|
294
|
-
};
|
|
295
293
|
|
|
296
294
|
var PortalContext = function PortalContext(props) {
|
|
297
295
|
return /*#__PURE__*/reactDom.createPortal( /*#__PURE__*/jsxRuntime.jsx(ContextMenu, _objectSpread({}, props)), document.body);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenu.js","sources":["../../../../src/components/Builder/ContextMenu.js"],"sourcesContent":["import {\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport PropTypes from 'prop-types';\nimport { useEventListener, useTranslatedTexts } from '../../utils/hooks';\nimport {\n collisionCheck,\n getContainerPositions,\n moveArrayItem,\n} from '../../utils/functions';\nimport * as icons from '../../utils/icons';\n\nimport withClickOutside from '../withClickOutside';\n\nconst ContextMenu = ({\n height,\n item,\n items,\n onAnEventTrigger,\n onClickOutside,\n onItemChange,\n onItemRemove,\n onPageChange,\n position,\n width,\n}) => {\n const [positions, setPositions] = useState(position);\n const container = useRef(null);\n const itemIndex = items.findIndex(_item => _item.id === item.id);\n // Will be mutated.\n const orderArray = items.map(_item => _item.id);\n\n const removeFunc = () => {\n // TODO :: should listen to scroll event, not wheel\n onClickOutside();\n };\n\n useEventListener('wheel', removeFunc);\n\n useLayoutEffect(() => {\n const newPosition = getContainerPositions(container.current, positions);\n setPositions({\n x: newPosition.x,\n y: newPosition.y,\n });\n }, []);\n\n const moveToFront = () => {\n if (items.length !== itemIndex + 1) {\n moveArrayItem(orderArray, itemIndex, items.length - 1);\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveToBack = () => {\n if (itemIndex !== 0) {\n moveArrayItem(orderArray, itemIndex, 0);\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveForward = () => {\n if (items.length !== itemIndex + 1) {\n const colluddedItemIndex = collisionCheck(item, items, itemIndex, 1);\n if (colluddedItemIndex !== null) {\n moveArrayItem(orderArray, itemIndex, colluddedItemIndex);\n } else {\n moveArrayItem(orderArray, itemIndex, itemIndex + 1);\n }\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveBackward = () => {\n if (itemIndex !== 0) {\n const colluddedItemIndex = collisionCheck(item, items, itemIndex, -1);\n if (colluddedItemIndex) {\n moveArrayItem(orderArray, itemIndex, colluddedItemIndex);\n } else {\n moveArrayItem(orderArray, itemIndex, itemIndex - 1);\n }\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n\n onClickOutside();\n };\n\n const deleteItem = () => {\n onItemRemove(item);\n onClickOutside();\n onAnEventTrigger('removeItem', item.itemType);\n };\n\n const lockOrUnlockItem = () => {\n onItemChange({ id: item.id }, { isLocked: item.isLocked ? false : true });\n onClickOutside();\n };\n\n const fitToPage = () => {\n let _height = height;\n let _width = width;\n // Keep image ratio on fit\n if (item.itemType === 'image') {\n if (item.height > item.width) {\n _width = (item.width * _height) / item.height;\n } else if (item.width > item.height) {\n _height = (item.height * _width) / item.width;\n }\n }\n\n onItemChange({ id: item.id }, {\n height: _height,\n left: 0,\n top: 0,\n width: _width,\n });\n\n onClickOutside();\n onAnEventTrigger('fitToPage', item.itemType);\n };\n\n const {\n DELETE, FIT_TO_PAGE, LOCK_ITEM,\n MOVE_BACKWARDS, MOVE_FORWARDS,\n MOVE_TO_BACK, MOVE_TO_FRONT, UNLOCK_ITEM,\n } = useTranslatedTexts();\n\n const menuItems = [\n { func: moveToFront, icon: <icons.moveToFront />, text: MOVE_TO_FRONT },\n { func: moveForward, icon: <icons.moveToForward />, text: MOVE_FORWARDS },\n { func: moveBackward, icon: <icons.moveToBackward />, text: MOVE_BACKWARDS },\n { func: moveToBack, icon: <icons.moveToBack />, text: MOVE_TO_BACK },\n {\n func: lockOrUnlockItem,\n icon: item.isLocked ? (\n <icons.unlock className=\"icon-lock\" />\n ) : (\n <icons.lock className=\"icon-lock\" />\n ),\n text: item.isLocked ? UNLOCK_ITEM : LOCK_ITEM,\n },\n {\n func: fitToPage, icon: <icons.enterFullscreen className=\"icon-lock\" />, text: FIT_TO_PAGE,\n },\n {\n class: ' isDanger', func: deleteItem, icon: <icons.trash />, text: DELETE,\n },\n ];\n\n return (\n <div\n ref={container}\n className=\"contextMenu-wrapper\"\n style={{\n left: positions.x,\n top: positions.y,\n }}\n >\n {menuItems.map(menuItem => {\n const btnClass = `contextMenu-button jfReportButton${menuItem.class ? menuItem.class : ''}`;\n return (\n <button\n key={menuItem.text}\n className={btnClass}\n onClick={menuItem.func}\n type=\"button\"\n >\n <span className=\"contextMenu-icon\">\n {menuItem.icon}\n </span>\n {menuItem.text}\n </button>\n );\n })}\n </div>\n );\n};\n\nContextMenu.propTypes = {\n height: PropTypes.number,\n item: PropTypes.shape({\n height: PropTypes.number,\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n itemType: PropTypes.string,\n left: PropTypes.number,\n pageID: PropTypes.string,\n top: PropTypes.number,\n width: PropTypes.number,\n }),\n items: PropTypes.arrayOf(PropTypes.shape({\n height: PropTypes.number,\n // id: PropTypes.string,\n left: PropTypes.number,\n top: PropTypes.number,\n width: PropTypes.number,\n })),\n onAnEventTrigger: PropTypes.func,\n onClickOutside: PropTypes.func,\n onItemChange: PropTypes.func,\n onItemRemove: PropTypes.func,\n onPageChange: PropTypes.func,\n position: PropTypes.shape({}),\n width: PropTypes.number,\n};\n\nContextMenu.defaultProps = {\n height: 1,\n item: {},\n items: [],\n onAnEventTrigger: () => {},\n onClickOutside: () => {},\n onItemChange: () => {},\n onItemRemove: () => {},\n onPageChange: () => {},\n position: {},\n width: 1,\n};\n\nconst PortalContext = props => createPortal(<ContextMenu {...props} />, document.body);\n\nexport default withClickOutside(PortalContext);\n"],"names":["ContextMenu","height","item","items","onAnEventTrigger","onClickOutside","onItemChange","onItemRemove","onPageChange","position","width","useState","positions","setPositions","container","useRef","itemIndex","findIndex","_item","id","orderArray","map","removeFunc","useEventListener","useLayoutEffect","newPosition","getContainerPositions","current","x","y","moveToFront","length","moveArrayItem","pageID","JSON","stringify","moveToBack","moveForward","colluddedItemIndex","collisionCheck","moveBackward","deleteItem","itemType","lockOrUnlockItem","isLocked","fitToPage","_height","_width","left","top","useTranslatedTexts","DELETE","FIT_TO_PAGE","LOCK_ITEM","MOVE_BACKWARDS","MOVE_FORWARDS","MOVE_TO_BACK","MOVE_TO_FRONT","UNLOCK_ITEM","menuItems","func","icon","_jsx","icons.moveToFront","text","icons.moveToForward","icons.moveToBackward","icons.moveToBack","icons.unlock","icons.lock","icons.enterFullscreen","class","icons.trash","menuItem","btnClass","_jsxs","propTypes","PropTypes","number","shape","string","bool","arrayOf","defaultProps","PortalContext","props","createPortal","document","body","withClickOutside"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAWd;AAAA,MAVJC,MAUI,QAVJA,MAUI;AAAA,MATJC,IASI,QATJA,IASI;AAAA,MARJC,KAQI,QARJA,KAQI;AAAA,MAPJC,gBAOI,QAPJA,gBAOI;AAAA,MANJC,cAMI,QANJA,cAMI;AAAA,MALJC,YAKI,QALJA,YAKI;AAAA,MAJJC,YAII,QAJJA,YAII;AAAA,MAHJC,YAGI,QAHJA,YAGI;AAAA,MAFJC,QAEI,QAFJA,QAEI;AAAA,MADJC,KACI,QADJA,KACI;;AACJ,kBAAkCC,cAAQ,CAACF,QAAD,CAA1C;AAAA;AAAA,MAAOG,SAAP;AAAA,MAAkBC,YAAlB;;AACA,MAAMC,SAAS,GAAGC,YAAM,CAAC,IAAD,CAAxB;AACA,MAAMC,SAAS,GAAGb,KAAK,CAACc,SAAN,CAAgB,UAAAC,KAAK;AAAA,WAAIA,KAAK,CAACC,EAAN,KAAajB,IAAI,CAACiB,EAAtB;AAAA,GAArB,CAAlB,CAHI;;AAKJ,MAAMC,UAAU,GAAGjB,KAAK,CAACkB,GAAN,CAAU,UAAAH,KAAK;AAAA,WAAIA,KAAK,CAACC,EAAV;AAAA,GAAf,CAAnB;;AAEA,MAAMG,UAAU,GAAG,SAAbA,UAAa,GAAM;AACvB;AACAjB,IAAAA,cAAc;AACf,GAHD;;AAKAkB,EAAAA,sBAAgB,CAAC,OAAD,EAAUD,UAAV,CAAhB;AAEAE,EAAAA,qBAAe,CAAC,YAAM;AACpB,QAAMC,WAAW,GAAGC,+BAAqB,CAACZ,SAAS,CAACa,OAAX,EAAoBf,SAApB,CAAzC;AACAC,IAAAA,YAAY,CAAC;AACXe,MAAAA,CAAC,EAAEH,WAAW,CAACG,CADJ;AAEXC,MAAAA,CAAC,EAAEJ,WAAW,CAACI;AAFJ,KAAD,CAAZ;AAID,GANc,EAMZ,EANY,CAAf;;AAQA,MAAMC,aAAW,GAAG,SAAdA,WAAc,GAAM;AACxB,QAAI3B,KAAK,CAAC4B,MAAN,KAAiBf,SAAS,GAAG,CAAjC,EAAoC;AAClCgB,MAAAA,uBAAa,CAACZ,UAAD,EAAaJ,SAAb,EAAwBb,KAAK,CAAC4B,MAAN,GAAe,CAAvC,CAAb;AACAvB,MAAAA,YAAY,CAAC;AACXW,QAAAA,EAAE,EAAEjB,IAAI,CAAC+B;AADE,OAAD,EAET;AAAE9B,QAAAA,KAAK,EAAE+B,IAAI,CAACC,SAAL,CAAef,UAAf;AAAT,OAFS,CAAZ;AAGD;;AACDf,IAAAA,cAAc;AACf,GARD;;AAUA,MAAM+B,YAAU,GAAG,SAAbA,UAAa,GAAM;AACvB,QAAIpB,SAAS,KAAK,CAAlB,EAAqB;AACnBgB,MAAAA,uBAAa,CAACZ,UAAD,EAAaJ,SAAb,EAAwB,CAAxB,CAAb;AACAR,MAAAA,YAAY,CAAC;AACXW,QAAAA,EAAE,EAAEjB,IAAI,CAAC+B;AADE,OAAD,EAET;AAAE9B,QAAAA,KAAK,EAAE+B,IAAI,CAACC,SAAL,CAAef,UAAf;AAAT,OAFS,CAAZ;AAGD;;AACDf,IAAAA,cAAc;AACf,GARD;;AAUA,MAAMgC,WAAW,GAAG,SAAdA,WAAc,GAAM;AACxB,QAAIlC,KAAK,CAAC4B,MAAN,KAAiBf,SAAS,GAAG,CAAjC,EAAoC;AAClC,UAAMsB,kBAAkB,GAAGC,wBAAc,CAACrC,IAAD,EAAOC,KAAP,EAAca,SAAd,EAAyB,CAAzB,CAAzC;;AACA,UAAIsB,kBAAkB,KAAK,IAA3B,EAAiC;AAC/BN,QAAAA,uBAAa,CAACZ,UAAD,EAAaJ,SAAb,EAAwBsB,kBAAxB,CAAb;AACD,OAFD,MAEO;AACLN,QAAAA,uBAAa,CAACZ,UAAD,EAAaJ,SAAb,EAAwBA,SAAS,GAAG,CAApC,CAAb;AACD;;AACDR,MAAAA,YAAY,CAAC;AACXW,QAAAA,EAAE,EAAEjB,IAAI,CAAC+B;AADE,OAAD,EAET;AAAE9B,QAAAA,KAAK,EAAE+B,IAAI,CAACC,SAAL,CAAef,UAAf;AAAT,OAFS,CAAZ;AAGD;;AACDf,IAAAA,cAAc;AACf,GAbD;;AAeA,MAAMmC,YAAY,GAAG,SAAfA,YAAe,GAAM;AACzB,QAAIxB,SAAS,KAAK,CAAlB,EAAqB;AACnB,UAAMsB,kBAAkB,GAAGC,wBAAc,CAACrC,IAAD,EAAOC,KAAP,EAAca,SAAd,EAAyB,CAAC,CAA1B,CAAzC;;AACA,UAAIsB,kBAAJ,EAAwB;AACtBN,QAAAA,uBAAa,CAACZ,UAAD,EAAaJ,SAAb,EAAwBsB,kBAAxB,CAAb;AACD,OAFD,MAEO;AACLN,QAAAA,uBAAa,CAACZ,UAAD,EAAaJ,SAAb,EAAwBA,SAAS,GAAG,CAApC,CAAb;AACD;;AACDR,MAAAA,YAAY,CAAC;AACXW,QAAAA,EAAE,EAAEjB,IAAI,CAAC+B;AADE,OAAD,EAET;AAAE9B,QAAAA,KAAK,EAAE+B,IAAI,CAACC,SAAL,CAAef,UAAf;AAAT,OAFS,CAAZ;AAGD;;AAEDf,IAAAA,cAAc;AACf,GAdD;;AAgBA,MAAMoC,UAAU,GAAG,SAAbA,UAAa,GAAM;AACvBlC,IAAAA,YAAY,CAACL,IAAD,CAAZ;AACAG,IAAAA,cAAc;AACdD,IAAAA,gBAAgB,CAAC,YAAD,EAAeF,IAAI,CAACwC,QAApB,CAAhB;AACD,GAJD;;AAMA,MAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;AAC7BrC,IAAAA,YAAY,CAAC;AAAEa,MAAAA,EAAE,EAAEjB,IAAI,CAACiB;AAAX,KAAD,EAAkB;AAAEyB,MAAAA,QAAQ,EAAE1C,IAAI,CAAC0C,QAAL,GAAgB,KAAhB,GAAwB;AAApC,KAAlB,CAAZ;AACAvC,IAAAA,cAAc;AACf,GAHD;;AAKA,MAAMwC,SAAS,GAAG,SAAZA,SAAY,GAAM;AACtB,QAAIC,OAAO,GAAG7C,MAAd;AACA,QAAI8C,MAAM,GAAGrC,KAAb,CAFsB;;AAItB,QAAIR,IAAI,CAACwC,QAAL,KAAkB,OAAtB,EAA+B;AAC7B,UAAIxC,IAAI,CAACD,MAAL,GAAcC,IAAI,CAACQ,KAAvB,EAA8B;AAC5BqC,QAAAA,MAAM,GAAI7C,IAAI,CAACQ,KAAL,GAAaoC,OAAd,GAAyB5C,IAAI,CAACD,MAAvC;AACD,OAFD,MAEO,IAAIC,IAAI,CAACQ,KAAL,GAAaR,IAAI,CAACD,MAAtB,EAA8B;AACnC6C,QAAAA,OAAO,GAAI5C,IAAI,CAACD,MAAL,GAAc8C,MAAf,GAAyB7C,IAAI,CAACQ,KAAxC;AACD;AACF;;AAEDJ,IAAAA,YAAY,CAAC;AAAEa,MAAAA,EAAE,EAAEjB,IAAI,CAACiB;AAAX,KAAD,EAAkB;AAC5BlB,MAAAA,MAAM,EAAE6C,OADoB;AAE5BE,MAAAA,IAAI,EAAE,CAFsB;AAG5BC,MAAAA,GAAG,EAAE,CAHuB;AAI5BvC,MAAAA,KAAK,EAAEqC;AAJqB,KAAlB,CAAZ;AAOA1C,IAAAA,cAAc;AACdD,IAAAA,gBAAgB,CAAC,WAAD,EAAcF,IAAI,CAACwC,QAAnB,CAAhB;AACD,GArBD;;AAuBA,4BAIIQ,wBAAkB,EAJtB;AAAA,MACEC,MADF,uBACEA,MADF;AAAA,MACUC,WADV,uBACUA,WADV;AAAA,MACuBC,SADvB,uBACuBA,SADvB;AAAA,MAEEC,cAFF,uBAEEA,cAFF;AAAA,MAEkBC,aAFlB,uBAEkBA,aAFlB;AAAA,MAGEC,YAHF,uBAGEA,YAHF;AAAA,MAGgBC,aAHhB,uBAGgBA,aAHhB;AAAA,MAG+BC,WAH/B,uBAG+BA,WAH/B;;AAMA,MAAMC,SAAS,GAAG,CAChB;AAAEC,IAAAA,IAAI,EAAE9B,aAAR;AAAqB+B,IAAAA,IAAI,eAAEC,eAACC,WAAD,KAA3B;AAAkDC,IAAAA,IAAI,EAAEP;AAAxD,GADgB,EAEhB;AAAEG,IAAAA,IAAI,EAAEvB,WAAR;AAAqBwB,IAAAA,IAAI,eAAEC,eAACG,aAAD,KAA3B;AAAoDD,IAAAA,IAAI,EAAET;AAA1D,GAFgB,EAGhB;AAAEK,IAAAA,IAAI,EAAEpB,YAAR;AAAsBqB,IAAAA,IAAI,eAAEC,eAACI,cAAD,KAA5B;AAAsDF,IAAAA,IAAI,EAAEV;AAA5D,GAHgB,EAIhB;AAAEM,IAAAA,IAAI,EAAExB,YAAR;AAAoByB,IAAAA,IAAI,eAAEC,eAACK,UAAD,KAA1B;AAAgDH,IAAAA,IAAI,EAAER;AAAtD,GAJgB,EAKhB;AACEI,IAAAA,IAAI,EAAEjB,gBADR;AAEEkB,IAAAA,IAAI,EAAE3D,IAAI,CAAC0C,QAAL,gBACJkB,eAACM,MAAD;AAAc,MAAA,SAAS,EAAC;AAAxB,MADI,gBAGJN,eAACO,IAAD;AAAY,MAAA,SAAS,EAAC;AAAtB,MALJ;AAOEL,IAAAA,IAAI,EAAE9D,IAAI,CAAC0C,QAAL,GAAgBc,WAAhB,GAA8BL;AAPtC,GALgB,EAchB;AACEO,IAAAA,IAAI,EAAEf,SADR;AACmBgB,IAAAA,IAAI,eAAEC,eAACQ,gBAAD;AAAuB,MAAA,SAAS,EAAC;AAAjC,MADzB;AAC0EN,IAAAA,IAAI,EAAEZ;AADhF,GAdgB,EAiBhB;AACEmB,IAAAA,KAAK,EAAE,WADT;AACsBX,IAAAA,IAAI,EAAEnB,UAD5B;AACwCoB,IAAAA,IAAI,eAAEC,eAACU,KAAD,KAD9C;AAC+DR,IAAAA,IAAI,EAAEb;AADrE,GAjBgB,CAAlB;AAsBA,sBACEW;AACE,IAAA,GAAG,EAAEhD,SADP;AAEE,IAAA,SAAS,EAAC,qBAFZ;AAGE,IAAA,KAAK,EAAE;AACLkC,MAAAA,IAAI,EAAEpC,SAAS,CAACgB,CADX;AAELqB,MAAAA,GAAG,EAAErC,SAAS,CAACiB;AAFV,KAHT;AAAA,cAQG8B,SAAS,CAACtC,GAAV,CAAc,UAAAoD,QAAQ,EAAI;AACzB,UAAMC,QAAQ,8CAAuCD,QAAQ,CAACF,KAAT,GAAiBE,QAAQ,CAACF,KAA1B,GAAkC,EAAzE,CAAd;AACA,0BACEI;AAEE,QAAA,SAAS,EAAED,QAFb;AAGE,QAAA,OAAO,EAAED,QAAQ,CAACb,IAHpB;AAIE,QAAA,IAAI,EAAC,QAJP;AAAA,gCAMEE;AAAM,UAAA,SAAS,EAAC,kBAAhB;AAAA,oBACGW,QAAQ,CAACZ;AADZ,UANF,EASGY,QAAQ,CAACT,IATZ;AAAA,SACOS,QAAQ,CAACT,IADhB,CADF;AAaD,KAfA;AARH,IADF;AA2BD,CA7KD;;AA+KAhE,WAAW,CAAC4E,SAAZ,GAAwB;AACtB3E,EAAAA,MAAM,EAAE4E,6BAAS,CAACC,MADI;AAEtB5E,EAAAA,IAAI,EAAE2E,6BAAS,CAACE,KAAV,CAAgB;AACpB9E,IAAAA,MAAM,EAAE4E,6BAAS,CAACC,MADE;AAEpB3D,IAAAA,EAAE,EAAE0D,6BAAS,CAACG,MAFM;AAGpBpC,IAAAA,QAAQ,EAAEiC,6BAAS,CAACI,IAHA;AAIpBvC,IAAAA,QAAQ,EAAEmC,6BAAS,CAACG,MAJA;AAKpBhC,IAAAA,IAAI,EAAE6B,6BAAS,CAACC,MALI;AAMpB7C,IAAAA,MAAM,EAAE4C,6BAAS,CAACG,MANE;AAOpB/B,IAAAA,GAAG,EAAE4B,6BAAS,CAACC,MAPK;AAQpBpE,IAAAA,KAAK,EAAEmE,6BAAS,CAACC;AARG,GAAhB,CAFgB;AAYtB3E,EAAAA,KAAK,EAAE0E,6BAAS,CAACK,OAAV,CAAkBL,6BAAS,CAACE,KAAV,CAAgB;AACvC9E,IAAAA,MAAM,EAAE4E,6BAAS,CAACC,MADqB;AAEvC;AACA9B,IAAAA,IAAI,EAAE6B,6BAAS,CAACC,MAHuB;AAIvC7B,IAAAA,GAAG,EAAE4B,6BAAS,CAACC,MAJwB;AAKvCpE,IAAAA,KAAK,EAAEmE,6BAAS,CAACC;AALsB,GAAhB,CAAlB,CAZe;AAmBtB1E,EAAAA,gBAAgB,EAAEyE,6BAAS,CAACjB,IAnBN;AAoBtBvD,EAAAA,cAAc,EAAEwE,6BAAS,CAACjB,IApBJ;AAqBtBtD,EAAAA,YAAY,EAAEuE,6BAAS,CAACjB,IArBF;AAsBtBrD,EAAAA,YAAY,EAAEsE,6BAAS,CAACjB,IAtBF;AAuBtBpD,EAAAA,YAAY,EAAEqE,6BAAS,CAACjB,IAvBF;AAwBtBnD,EAAAA,QAAQ,EAAEoE,6BAAS,CAACE,KAAV,CAAgB,EAAhB,CAxBY;AAyBtBrE,EAAAA,KAAK,EAAEmE,6BAAS,CAACC;AAzBK,CAAxB;AA4BA9E,WAAW,CAACmF,YAAZ,GAA2B;AACzBlF,EAAAA,MAAM,EAAE,CADiB;AAEzBC,EAAAA,IAAI,EAAE,EAFmB;AAGzBC,EAAAA,KAAK,EAAE,EAHkB;AAIzBC,EAAAA,gBAAgB,EAAE,4BAAM,EAJC;AAKzBC,EAAAA,cAAc,EAAE,0BAAM,EALG;AAMzBC,EAAAA,YAAY,EAAE,wBAAM,EANK;AAOzBC,EAAAA,YAAY,EAAE,wBAAM,EAPK;AAQzBC,EAAAA,YAAY,EAAE,wBAAM,EARK;AASzBC,EAAAA,QAAQ,EAAE,EATe;AAUzBC,EAAAA,KAAK,EAAE;AAVkB,CAA3B;;AAaA,IAAM0E,aAAa,GAAG,SAAhBA,aAAgB,CAAAC,KAAK;AAAA,sBAAIC,qBAAY,eAACxB,eAAC,WAAD,oBAAiBuB,KAAjB,EAAD,EAA6BE,QAAQ,CAACC,IAAtC,CAAhB;AAAA,CAA3B;;AAEA,oBAAeC,gBAAgB,CAACL,aAAD,CAA/B;;;;"}
|
|
1
|
+
{"version":3,"file":"ContextMenu.js","sources":["../../../../src/components/Builder/ContextMenu.js"],"sourcesContent":["import {\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport PropTypes from 'prop-types';\nimport { useEventListener, useTranslatedTexts } from '../../utils/hooks';\nimport {\n collisionCheck,\n getContainerPositions,\n moveArrayItem,\n} from '../../utils/functions';\nimport * as icons from '../../utils/icons';\n\nimport withClickOutside from '../withClickOutside';\n\nconst ContextMenu = ({\n height = 1,\n item = {},\n items = [],\n onAnEventTrigger = () => {},\n onClickOutside = () => {},\n onItemChange = () => {},\n onItemRemove = () => {},\n onPageChange = () => {},\n position = {},\n width = 1,\n}) => {\n const [positions, setPositions] = useState(position);\n const container = useRef(null);\n const itemIndex = items.findIndex(_item => _item.id === item.id);\n // Will be mutated.\n const orderArray = items.map(_item => _item.id);\n\n const removeFunc = () => {\n // TODO :: should listen to scroll event, not wheel\n onClickOutside();\n };\n\n useEventListener('wheel', removeFunc);\n\n useLayoutEffect(() => {\n const newPosition = getContainerPositions(container.current, positions);\n setPositions({\n x: newPosition.x,\n y: newPosition.y,\n });\n }, []);\n\n const moveToFront = () => {\n if (items.length !== itemIndex + 1) {\n moveArrayItem(orderArray, itemIndex, items.length - 1);\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveToBack = () => {\n if (itemIndex !== 0) {\n moveArrayItem(orderArray, itemIndex, 0);\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveForward = () => {\n if (items.length !== itemIndex + 1) {\n const colluddedItemIndex = collisionCheck(item, items, itemIndex, 1);\n if (colluddedItemIndex !== null) {\n moveArrayItem(orderArray, itemIndex, colluddedItemIndex);\n } else {\n moveArrayItem(orderArray, itemIndex, itemIndex + 1);\n }\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n onClickOutside();\n };\n\n const moveBackward = () => {\n if (itemIndex !== 0) {\n const colluddedItemIndex = collisionCheck(item, items, itemIndex, -1);\n if (colluddedItemIndex) {\n moveArrayItem(orderArray, itemIndex, colluddedItemIndex);\n } else {\n moveArrayItem(orderArray, itemIndex, itemIndex - 1);\n }\n onPageChange({\n id: item.pageID,\n }, { items: JSON.stringify(orderArray) });\n }\n\n onClickOutside();\n };\n\n const deleteItem = () => {\n onItemRemove(item);\n onClickOutside();\n onAnEventTrigger('removeItem', item.itemType);\n };\n\n const lockOrUnlockItem = () => {\n onItemChange({ id: item.id }, { isLocked: item.isLocked ? false : true });\n onClickOutside();\n };\n\n const fitToPage = () => {\n let _height = height;\n let _width = width;\n // Keep image ratio on fit\n if (item.itemType === 'image') {\n if (item.height > item.width) {\n _width = (item.width * _height) / item.height;\n } else if (item.width > item.height) {\n _height = (item.height * _width) / item.width;\n }\n }\n\n onItemChange({ id: item.id }, {\n height: _height,\n left: 0,\n top: 0,\n width: _width,\n });\n\n onClickOutside();\n onAnEventTrigger('fitToPage', item.itemType);\n };\n\n const {\n DELETE, FIT_TO_PAGE, LOCK_ITEM,\n MOVE_BACKWARDS, MOVE_FORWARDS,\n MOVE_TO_BACK, MOVE_TO_FRONT, UNLOCK_ITEM,\n } = useTranslatedTexts();\n\n const menuItems = [\n { func: moveToFront, icon: <icons.moveToFront />, text: MOVE_TO_FRONT },\n { func: moveForward, icon: <icons.moveToForward />, text: MOVE_FORWARDS },\n { func: moveBackward, icon: <icons.moveToBackward />, text: MOVE_BACKWARDS },\n { func: moveToBack, icon: <icons.moveToBack />, text: MOVE_TO_BACK },\n {\n func: lockOrUnlockItem,\n icon: item.isLocked ? (\n <icons.unlock className=\"icon-lock\" />\n ) : (\n <icons.lock className=\"icon-lock\" />\n ),\n text: item.isLocked ? UNLOCK_ITEM : LOCK_ITEM,\n },\n {\n func: fitToPage, icon: <icons.enterFullscreen className=\"icon-lock\" />, text: FIT_TO_PAGE,\n },\n {\n class: ' isDanger', func: deleteItem, icon: <icons.trash />, text: DELETE,\n },\n ];\n\n return (\n <div\n ref={container}\n className=\"contextMenu-wrapper\"\n style={{\n left: positions.x,\n top: positions.y,\n }}\n >\n {menuItems.map(menuItem => {\n const btnClass = `contextMenu-button jfReportButton${menuItem.class ? menuItem.class : ''}`;\n return (\n <button\n key={menuItem.text}\n className={btnClass}\n onClick={menuItem.func}\n type=\"button\"\n >\n <span className=\"contextMenu-icon\">\n {menuItem.icon}\n </span>\n {menuItem.text}\n </button>\n );\n })}\n </div>\n );\n};\n\nContextMenu.propTypes = {\n height: PropTypes.number,\n item: PropTypes.shape({\n height: PropTypes.number,\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n itemType: PropTypes.string,\n left: PropTypes.number,\n pageID: PropTypes.string,\n top: PropTypes.number,\n width: PropTypes.number,\n }),\n items: PropTypes.arrayOf(PropTypes.shape({\n height: PropTypes.number,\n // id: PropTypes.string,\n left: PropTypes.number,\n top: PropTypes.number,\n width: PropTypes.number,\n })),\n onAnEventTrigger: PropTypes.func,\n onClickOutside: PropTypes.func,\n onItemChange: PropTypes.func,\n onItemRemove: PropTypes.func,\n onPageChange: PropTypes.func,\n position: PropTypes.shape({}),\n width: PropTypes.number,\n};\n\nconst PortalContext = props => createPortal(<ContextMenu {...props} />, document.body);\n\nexport default withClickOutside(PortalContext);\n"],"names":["ContextMenu","height","item","items","onAnEventTrigger","onClickOutside","onItemChange","onItemRemove","onPageChange","position","width","useState","positions","setPositions","container","useRef","itemIndex","findIndex","_item","id","orderArray","map","removeFunc","useEventListener","useLayoutEffect","newPosition","getContainerPositions","current","x","y","moveToFront","length","moveArrayItem","pageID","JSON","stringify","moveToBack","moveForward","colluddedItemIndex","collisionCheck","moveBackward","deleteItem","itemType","lockOrUnlockItem","isLocked","fitToPage","_height","_width","left","top","useTranslatedTexts","DELETE","FIT_TO_PAGE","LOCK_ITEM","MOVE_BACKWARDS","MOVE_FORWARDS","MOVE_TO_BACK","MOVE_TO_FRONT","UNLOCK_ITEM","menuItems","func","icon","_jsx","icons.moveToFront","text","icons.moveToForward","icons.moveToBackward","icons.moveToBack","icons.unlock","icons.lock","icons.enterFullscreen","class","icons.trash","menuItem","btnClass","_jsxs","propTypes","PropTypes","number","shape","string","bool","arrayOf","PortalContext","props","createPortal","document","body","withClickOutside"],"mappings":"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"}
|
|
@@ -29,7 +29,8 @@ var MultiBackendOptions = {
|
|
|
29
29
|
};
|
|
30
30
|
|
|
31
31
|
var DndWrapper = function DndWrapper(_ref) {
|
|
32
|
-
var children = _ref.children
|
|
32
|
+
var _ref$children = _ref.children,
|
|
33
|
+
children = _ref$children === void 0 ? null : _ref$children;
|
|
33
34
|
if (!children) return null;
|
|
34
35
|
return /*#__PURE__*/jsxRuntime.jsx(reactDnd.DndProvider, {
|
|
35
36
|
backend: reactDndMultiBackend.MultiBackend,
|
|
@@ -41,9 +42,6 @@ var DndWrapper = function DndWrapper(_ref) {
|
|
|
41
42
|
DndWrapper.propTypes = {
|
|
42
43
|
children: PropTypes__default['default'].node
|
|
43
44
|
};
|
|
44
|
-
DndWrapper.defaultProps = {
|
|
45
|
-
children: null
|
|
46
|
-
};
|
|
47
45
|
|
|
48
46
|
module.exports = DndWrapper;
|
|
49
47
|
//# sourceMappingURL=DndWrapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DndWrapper.js","sources":["../../../../src/components/Builder/DndWrapper.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { MouseTransition, TouchTransition, MultiBackend } from 'react-dnd-multi-backend';\nimport { TouchBackend } from 'react-dnd-touch-backend';\n\nconst MultiBackendOptions = {\n backends: [\n {\n backend: HTML5Backend,\n id: 'html5',\n transition: MouseTransition,\n },\n {\n backend: TouchBackend,\n id: 'touch',\n options: {\n delayTouchStart: 135,\n enableMouseEvents: true,\n },\n preview: true,\n transition: TouchTransition,\n },\n ],\n};\n\nconst DndWrapper = ({ children }) => {\n if (!children) return null;\n\n return (\n <DndProvider\n backend={MultiBackend}\n options={MultiBackendOptions}\n >\n {children}\n </DndProvider>\n );\n};\n\nDndWrapper.propTypes = {\n children: PropTypes.node,\n};\n\
|
|
1
|
+
{"version":3,"file":"DndWrapper.js","sources":["../../../../src/components/Builder/DndWrapper.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { MouseTransition, TouchTransition, MultiBackend } from 'react-dnd-multi-backend';\nimport { TouchBackend } from 'react-dnd-touch-backend';\n\nconst MultiBackendOptions = {\n backends: [\n {\n backend: HTML5Backend,\n id: 'html5',\n transition: MouseTransition,\n },\n {\n backend: TouchBackend,\n id: 'touch',\n options: {\n delayTouchStart: 135,\n enableMouseEvents: true,\n },\n preview: true,\n transition: TouchTransition,\n },\n ],\n};\n\nconst DndWrapper = ({ children = null }) => {\n if (!children) return null;\n\n return (\n <DndProvider\n backend={MultiBackend}\n options={MultiBackendOptions}\n >\n {children}\n </DndProvider>\n );\n};\n\nDndWrapper.propTypes = {\n children: PropTypes.node,\n};\n\nexport default DndWrapper;\n"],"names":["MultiBackendOptions","backends","backend","HTML5Backend","id","transition","MouseTransition","TouchBackend","options","delayTouchStart","enableMouseEvents","preview","TouchTransition","DndWrapper","children","_jsx","DndProvider","MultiBackend","propTypes","PropTypes","node"],"mappings":";;;;;;;;;;;;;AAMA,IAAMA,mBAAmB,GAAG;AAC1BC,EAAAA,QAAQ,EAAE,CACR;AACEC,IAAAA,OAAO,EAAEC,iCADX;AAEEC,IAAAA,EAAE,EAAE,OAFN;AAGEC,IAAAA,UAAU,EAAEC;AAHd,GADQ,EAMR;AACEJ,IAAAA,OAAO,EAAEK,iCADX;AAEEH,IAAAA,EAAE,EAAE,OAFN;AAGEI,IAAAA,OAAO,EAAE;AACPC,MAAAA,eAAe,EAAE,GADV;AAEPC,MAAAA,iBAAiB,EAAE;AAFZ,KAHX;AAOEC,IAAAA,OAAO,EAAE,IAPX;AAQEN,IAAAA,UAAU,EAAEO;AARd,GANQ;AADgB,CAA5B;;IAoBMC,UAAU,GAAG,SAAbA,UAAa,OAAyB;AAAA,2BAAtBC,QAAsB;AAAA,MAAtBA,QAAsB,8BAAX,IAAW;AAC1C,MAAI,CAACA,QAAL,EAAe,OAAO,IAAP;AAEf,sBACEC,eAACC,oBAAD;AACE,IAAA,OAAO,EAAEC,iCADX;AAEE,IAAA,OAAO,EAAEjB,mBAFX;AAAA,cAIGc;AAJH,IADF;AAQD;;AAEDD,UAAU,CAACK,SAAX,GAAuB;AACrBJ,EAAAA,QAAQ,EAAEK,6BAAS,CAACC;AADC,CAAvB;;;;"}
|
|
@@ -40,16 +40,26 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
|
40
40
|
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; }
|
|
41
41
|
|
|
42
42
|
var Element = function Element(_ref) {
|
|
43
|
-
var acceptedItems = _ref.acceptedItems,
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
43
|
+
var _ref$acceptedItems = _ref.acceptedItems,
|
|
44
|
+
acceptedItems = _ref$acceptedItems === void 0 ? {} : _ref$acceptedItems,
|
|
45
|
+
_ref$icon = _ref.icon,
|
|
46
|
+
icon = _ref$icon === void 0 ? null : _ref$icon,
|
|
47
|
+
_ref$iconType = _ref.iconType,
|
|
48
|
+
iconType = _ref$iconType === void 0 ? '' : _ref$iconType,
|
|
49
|
+
_ref$itemType = _ref.itemType,
|
|
50
|
+
itemType = _ref$itemType === void 0 ? '' : _ref$itemType,
|
|
51
|
+
_ref$onAnEventTrigger = _ref.onAnEventTrigger,
|
|
52
|
+
onAnEventTrigger = _ref$onAnEventTrigger === void 0 ? function () {} : _ref$onAnEventTrigger,
|
|
53
|
+
_ref$onItemAdd = _ref.onItemAdd,
|
|
54
|
+
onItemAdd = _ref$onItemAdd === void 0 ? function () {} : _ref$onItemAdd,
|
|
55
|
+
_ref$setActiveElement = _ref.setActiveElement,
|
|
56
|
+
setActiveElement = _ref$setActiveElement === void 0 ? function () {} : _ref$setActiveElement,
|
|
57
|
+
_ref$setIsRightPanelO = _ref.setIsRightPanelOpen,
|
|
58
|
+
setIsRightPanelOpen = _ref$setIsRightPanelO === void 0 ? function () {} : _ref$setIsRightPanelO,
|
|
59
|
+
_ref$title = _ref.title,
|
|
60
|
+
title = _ref$title === void 0 ? '' : _ref$title,
|
|
61
|
+
_ref$zoom = _ref.zoom,
|
|
62
|
+
zoom = _ref$zoom === void 0 ? 1 : _ref$zoom,
|
|
53
63
|
additionalData = _objectWithoutProperties(_ref, _excluded);
|
|
54
64
|
|
|
55
65
|
var _useDrag = reactDnd.useDrag(function () {
|
|
@@ -61,10 +71,11 @@ var Element = function Element(_ref) {
|
|
|
61
71
|
},
|
|
62
72
|
item: function item() {
|
|
63
73
|
return _objectSpread({
|
|
64
|
-
itemType: itemType
|
|
74
|
+
itemType: itemType,
|
|
75
|
+
type: itemTypes.DROPPABLE_ITEM_TYPE
|
|
65
76
|
}, additionalData);
|
|
66
77
|
},
|
|
67
|
-
type:
|
|
78
|
+
type: itemTypes.DROPPABLE_ITEM_TYPE
|
|
68
79
|
};
|
|
69
80
|
}, [itemType, additionalData]),
|
|
70
81
|
_useDrag2 = _slicedToArray(_useDrag, 3),
|
|
@@ -116,6 +127,7 @@ var Element = function Element(_ref) {
|
|
|
116
127
|
onClick: onElementClick,
|
|
117
128
|
onKeyDown: onElementOtherActions,
|
|
118
129
|
style: {
|
|
130
|
+
cursor: isDragging ? 'grabbing' : 'pointer',
|
|
119
131
|
opacity: isDragging ? 0.5 : 1
|
|
120
132
|
},
|
|
121
133
|
title: title,
|
|
@@ -144,18 +156,6 @@ Element.propTypes = {
|
|
|
144
156
|
title: PropTypes__default['default'].string,
|
|
145
157
|
zoom: PropTypes__default['default'].number
|
|
146
158
|
};
|
|
147
|
-
Element.defaultProps = {
|
|
148
|
-
acceptedItems: {},
|
|
149
|
-
icon: null,
|
|
150
|
-
iconType: '',
|
|
151
|
-
itemType: '',
|
|
152
|
-
onAnEventTrigger: function onAnEventTrigger() {},
|
|
153
|
-
onItemAdd: function onItemAdd() {},
|
|
154
|
-
setActiveElement: function setActiveElement() {},
|
|
155
|
-
setIsRightPanelOpen: function setIsRightPanelOpen() {},
|
|
156
|
-
title: '',
|
|
157
|
-
zoom: 1
|
|
158
|
-
};
|
|
159
159
|
var Element$1 = /*#__PURE__*/React.memo(Element);
|
|
160
160
|
|
|
161
161
|
module.exports = Element$1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Element.js","sources":["../../../../src/components/Builder/Element.js"],"sourcesContent":["import { useEffect, memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport { DROPPABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getMostVisiblePage, getExactIconType, getAvailableCoordinate,\n} from '../../utils/functions';\nimport generateId from '../../utils/generateId';\nimport * as icons from '../../utils/icons';\n\nconst Element = ({\n acceptedItems,\n icon,\n iconType,\n itemType,\n onAnEventTrigger,\n onItemAdd,\n setActiveElement,\n setIsRightPanelOpen,\n title,\n zoom,\n ...additionalData\n}) => {\n const [{ isDragging }, drag, preview] = useDrag(() => ({\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n\n item: () => ({\n itemType,\n ...additionalData,\n }),\n\n type:
|
|
1
|
+
{"version":3,"file":"Element.js","sources":["../../../../src/components/Builder/Element.js"],"sourcesContent":["import { useEffect, memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport { DROPPABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getMostVisiblePage, getExactIconType, getAvailableCoordinate,\n} from '../../utils/functions';\nimport generateId from '../../utils/generateId';\nimport * as icons from '../../utils/icons';\n\nconst Element = ({\n acceptedItems = {},\n icon = null,\n iconType = '',\n itemType = '',\n onAnEventTrigger = () => {},\n onItemAdd = () => {},\n setActiveElement = () => {},\n setIsRightPanelOpen = () => {},\n title = '',\n zoom = 1,\n ...additionalData\n}) => {\n const [{ isDragging }, drag, preview] = useDrag(() => ({\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n\n item: () => ({\n itemType,\n type: DROPPABLE_ITEM_TYPE,\n ...additionalData,\n }),\n\n type: DROPPABLE_ITEM_TYPE,\n }), [itemType, additionalData]);\n\n useEffect(() => {\n preview(getEmptyImage(), { captureDraggingState: true });\n }, [preview]);\n\n const onElementClick = () => {\n const itemID = generateId();\n const page = getMostVisiblePage();\n let left = 0;\n let top = 0;\n if (page) { // for test\n [left, top] = getAvailableCoordinate(page, zoom);\n }\n onItemAdd({\n ...acceptedItems[itemType].details,\n ...additionalData,\n id: itemID,\n left,\n pageID: page.id,\n top,\n });\n onAnEventTrigger('reportItemAdd', itemType);\n setActiveElement(itemID);\n setIsRightPanelOpen(true);\n };\n\n const onElementOtherActions = () => {};\n\n const exactIconType = getExactIconType(iconType);\n const Icon = icons[exactIconType] ? icons[exactIconType] : icons.label;\n return (\n <>\n <div\n ref={drag}\n className=\"toolItem d-flex a-center js-toolItem\"\n onClick={onElementClick}\n onKeyDown={onElementOtherActions}\n style={{ cursor: isDragging ? 'grabbing' : 'pointer', opacity: isDragging ? 0.5 : 1 }}\n title={title}\n >\n <span className=\"toolItem-icon d-flex j-center a-center\">\n {icon ? icon : (\n <Icon className={`jfReportSVG icon-question icon-${iconType}`} />\n )}\n </span>\n <span className=\"js-toolItemName toolItem-name d-flex a-center\">\n { title }\n </span>\n </div>\n </>\n );\n};\n\nElement.propTypes = {\n acceptedItems: PropTypes.shape({}),\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n iconType: PropTypes.string,\n itemType: PropTypes.string,\n onAnEventTrigger: PropTypes.func,\n onItemAdd: PropTypes.func,\n setActiveElement: PropTypes.func,\n setIsRightPanelOpen: PropTypes.func,\n title: PropTypes.string,\n zoom: PropTypes.number,\n};\n\nexport default memo(Element);\n"],"names":["Element","acceptedItems","icon","iconType","itemType","onAnEventTrigger","onItemAdd","setActiveElement","setIsRightPanelOpen","title","zoom","additionalData","useDrag","collect","monitor","isDragging","item","type","DROPPABLE_ITEM_TYPE","drag","preview","useEffect","getEmptyImage","captureDraggingState","onElementClick","itemID","generateId","page","getMostVisiblePage","left","top","getAvailableCoordinate","details","id","pageID","onElementOtherActions","exactIconType","getExactIconType","Icon","icons","_jsx","_jsxs","cursor","opacity","propTypes","PropTypes","shape","oneOfType","element","func","string","number","memo"],"mappings":"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"}
|
|
@@ -10,12 +10,19 @@ var builderContext = require('../../utils/builderContext.js');
|
|
|
10
10
|
var propContext = require('../../utils/propContext.js');
|
|
11
11
|
var functions = require('../../utils/functions.js');
|
|
12
12
|
var classNames = require('../../constants/classNames.js');
|
|
13
|
+
var generateId = require('../../utils/generateId.js');
|
|
13
14
|
var jsxRuntime = require('react/jsx-runtime');
|
|
14
15
|
|
|
15
16
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
16
17
|
|
|
17
18
|
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
18
19
|
|
|
20
|
+
var _excluded = ["id", "itemType", "pageID"];
|
|
21
|
+
|
|
22
|
+
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; }
|
|
23
|
+
|
|
24
|
+
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; }
|
|
25
|
+
|
|
19
26
|
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; }
|
|
20
27
|
|
|
21
28
|
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; }
|
|
@@ -36,20 +43,38 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
36
43
|
var emptyObject = {};
|
|
37
44
|
|
|
38
45
|
var Page = function Page(_ref) {
|
|
39
|
-
var activeElement = _ref.activeElement,
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
46
|
+
var _ref$activeElement = _ref.activeElement,
|
|
47
|
+
activeElement = _ref$activeElement === void 0 ? null : _ref$activeElement,
|
|
48
|
+
_ref$additionalPageIt = _ref.additionalPageItems,
|
|
49
|
+
additionalPageItems = _ref$additionalPageIt === void 0 ? [] : _ref$additionalPageIt,
|
|
50
|
+
_ref$guides = _ref.guides,
|
|
51
|
+
guides = _ref$guides === void 0 ? {} : _ref$guides,
|
|
52
|
+
_ref$hashCode = _ref.hashCode,
|
|
53
|
+
hashCode = _ref$hashCode === void 0 ? '' : _ref$hashCode,
|
|
54
|
+
_ref$itemAccessor = _ref.itemAccessor,
|
|
55
|
+
itemAccessor = _ref$itemAccessor === void 0 ? function () {} : _ref$itemAccessor,
|
|
56
|
+
_ref$items = _ref.items,
|
|
57
|
+
items = _ref$items === void 0 ? [] : _ref$items,
|
|
58
|
+
_ref$onItemAdd = _ref.onItemAdd,
|
|
59
|
+
onItemAdd = _ref$onItemAdd === void 0 ? function () {} : _ref$onItemAdd,
|
|
60
|
+
_ref$onItemChange = _ref.onItemChange,
|
|
61
|
+
onItemChange = _ref$onItemChange === void 0 ? function () {} : _ref$onItemChange,
|
|
62
|
+
_ref$onItemMove = _ref.onItemMove,
|
|
63
|
+
onItemMove = _ref$onItemMove === void 0 ? function () {} : _ref$onItemMove,
|
|
64
|
+
_ref$onItemRemove = _ref.onItemRemove,
|
|
65
|
+
onItemRemove = _ref$onItemRemove === void 0 ? function () {} : _ref$onItemRemove,
|
|
66
|
+
_ref$onItemResize = _ref.onItemResize,
|
|
67
|
+
onItemResize = _ref$onItemResize === void 0 ? function () {} : _ref$onItemResize,
|
|
68
|
+
_ref$onItemsMove = _ref.onItemsMove,
|
|
69
|
+
onItemsMove = _ref$onItemsMove === void 0 ? function () {} : _ref$onItemsMove,
|
|
70
|
+
_ref$page = _ref.page,
|
|
71
|
+
page = _ref$page === void 0 ? {} : _ref$page,
|
|
72
|
+
_ref$pageRef = _ref.pageRef,
|
|
73
|
+
pageRef = _ref$pageRef === void 0 ? {} : _ref$pageRef,
|
|
74
|
+
_ref$pages = _ref.pages,
|
|
75
|
+
pages = _ref$pages === void 0 ? [] : _ref$pages,
|
|
76
|
+
_ref$style = _ref.style,
|
|
77
|
+
style = _ref$style === void 0 ? {} : _ref$style;
|
|
53
78
|
|
|
54
79
|
var _useBuilderContext = builderContext.useBuilderContext(),
|
|
55
80
|
isRightPanelOpen = _useBuilderContext.isRightPanelOpen,
|
|
@@ -88,7 +113,7 @@ var Page = function Page(_ref) {
|
|
|
88
113
|
|
|
89
114
|
var activeItem = _objectSpread(_objectSpread({}, item), coords);
|
|
90
115
|
|
|
91
|
-
var _guides = _objectSpread(_objectSpread({}, guides), {}, _defineProperty({}, item.id, _objectSpread(_objectSpread({}, guides[item.id]), {}, {
|
|
116
|
+
var _guides = _objectSpread(_objectSpread({}, guides[item.pageID]), {}, _defineProperty({}, item.id, _objectSpread(_objectSpread({}, guides[item.pageID][item.id]), {}, {
|
|
92
117
|
x: functions.calculateGuidePositions(activeItem, 'x', zoom),
|
|
93
118
|
y: functions.calculateGuidePositions(activeItem, 'y', zoom)
|
|
94
119
|
})));
|
|
@@ -102,26 +127,83 @@ var Page = function Page(_ref) {
|
|
|
102
127
|
};
|
|
103
128
|
};
|
|
104
129
|
|
|
130
|
+
var isMultipleItemSelected = activeElement !== null && activeElement.length > 1;
|
|
131
|
+
|
|
105
132
|
var onHover = function onHover(item, monitor) {
|
|
106
133
|
if (!requestRef.current) {
|
|
107
134
|
requestRef.current = global.requestAnimationFrame(drawAlignmentGuides(item, monitor));
|
|
108
135
|
}
|
|
109
136
|
};
|
|
110
137
|
|
|
111
|
-
var
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
138
|
+
var _useDrop = reactDnd.useDrop({
|
|
139
|
+
accept: itemTypes.ACCEPTED_TYPES,
|
|
140
|
+
collect: function collect(monitor) {
|
|
141
|
+
return {
|
|
142
|
+
isOver: monitor.isOver()
|
|
143
|
+
};
|
|
144
|
+
},
|
|
145
|
+
drop: function drop(item, monitor) {
|
|
146
|
+
var _pageRef$current;
|
|
147
|
+
|
|
148
|
+
var pageClient = (_pageRef$current = pageRef.current) === null || _pageRef$current === void 0 ? void 0 : _pageRef$current.getBoundingClientRect();
|
|
149
|
+
var coords = functions.getCorrectDroppedOffsetValue(monitor, pageClient, zoom);
|
|
150
|
+
var type = monitor.getItemType();
|
|
151
|
+
|
|
152
|
+
var id = item.id,
|
|
153
|
+
itemType = item.itemType;
|
|
154
|
+
item.pageID;
|
|
155
|
+
var additionalData = _objectWithoutProperties(item, _excluded);
|
|
156
|
+
|
|
157
|
+
var newCoords = {};
|
|
123
158
|
|
|
124
|
-
|
|
159
|
+
if (type === itemTypes.DROPPABLE_ITEM_TYPE) {
|
|
160
|
+
var itemID = generateId();
|
|
161
|
+
onItemAdd(_objectSpread(_objectSpread(_objectSpread({}, acceptedItems[itemType].details), {}, {
|
|
162
|
+
id: itemID,
|
|
163
|
+
pageID: page.id
|
|
164
|
+
}, coords), additionalData));
|
|
165
|
+
onAnEventTrigger('reportItemAdd', itemType);
|
|
166
|
+
setActiveElement(itemID);
|
|
167
|
+
setIsRightPanelOpen(true);
|
|
168
|
+
newCoords[itemID] = coords;
|
|
169
|
+
} else if (type === itemTypes.DRAGGABLE_ITEM_TYPE) {
|
|
170
|
+
var dragCoords = functions.getCorrectDroppedOffsetValueBySnap(coords, guides, id, pages, zoom);
|
|
171
|
+
|
|
172
|
+
if (isMultipleItemSelected) {
|
|
173
|
+
var leftDifference = additionalData.left - dragCoords.left;
|
|
174
|
+
var topDifference = additionalData.top - dragCoords.top;
|
|
175
|
+
|
|
176
|
+
var _items = activeElement.reduce(function (acc, curr) {
|
|
177
|
+
var tempItem = functions.findItemById(curr, pages);
|
|
178
|
+
acc[curr] = {
|
|
179
|
+
id: curr,
|
|
180
|
+
left: tempItem.left - leftDifference,
|
|
181
|
+
pageID: page.id,
|
|
182
|
+
top: tempItem.top - topDifference
|
|
183
|
+
};
|
|
184
|
+
newCoords[curr] = {
|
|
185
|
+
left: tempItem.left - leftDifference,
|
|
186
|
+
top: tempItem.top - topDifference
|
|
187
|
+
};
|
|
188
|
+
return acc;
|
|
189
|
+
}, {});
|
|
190
|
+
|
|
191
|
+
onItemsMove({
|
|
192
|
+
items: _items
|
|
193
|
+
});
|
|
194
|
+
} else {
|
|
195
|
+
onItemMove(_objectSpread({
|
|
196
|
+
id: id,
|
|
197
|
+
pageID: page.id
|
|
198
|
+
}, dragCoords));
|
|
199
|
+
newCoords[id] = dragCoords;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
return newCoords;
|
|
204
|
+
},
|
|
205
|
+
hover: onHover
|
|
206
|
+
}),
|
|
125
207
|
_useDrop2 = _slicedToArray(_useDrop, 2),
|
|
126
208
|
isOver = _useDrop2[0].isOver,
|
|
127
209
|
drop = _useDrop2[1];
|
|
@@ -141,7 +223,7 @@ var Page = function Page(_ref) {
|
|
|
141
223
|
children: [/*#__PURE__*/jsxRuntime.jsx(ReportItemsWrapper, {
|
|
142
224
|
acceptedItems: acceptedItems,
|
|
143
225
|
activeElement: activeElement,
|
|
144
|
-
guides: guides,
|
|
226
|
+
guides: guides[page.id],
|
|
145
227
|
hashCode: hashCode,
|
|
146
228
|
isResize: isResize,
|
|
147
229
|
isRightPanelOpen: isRightPanelOpen,
|
|
@@ -163,13 +245,13 @@ var Page = function Page(_ref) {
|
|
|
163
245
|
zoom: zoom
|
|
164
246
|
}), additionalPageItems, /*#__PURE__*/jsxRuntime.jsx(AlignmentGuides, {
|
|
165
247
|
axis: "x",
|
|
166
|
-
guides: guides,
|
|
248
|
+
guides: guides[page.id],
|
|
167
249
|
matches: matches,
|
|
168
250
|
show: isOver || isResize,
|
|
169
251
|
zoom: zoom
|
|
170
252
|
}), /*#__PURE__*/jsxRuntime.jsx(AlignmentGuides, {
|
|
171
253
|
axis: "y",
|
|
172
|
-
guides: guides,
|
|
254
|
+
guides: guides[page.id],
|
|
173
255
|
matches: matches,
|
|
174
256
|
show: isOver || isResize,
|
|
175
257
|
zoom: zoom
|
|
@@ -186,35 +268,21 @@ Page.propTypes = {
|
|
|
186
268
|
hashCode: PropTypes__default['default'].string,
|
|
187
269
|
itemAccessor: PropTypes__default['default'].func,
|
|
188
270
|
items: PropTypes__default['default'].arrayOf(PropTypes__default['default'].shape({})),
|
|
189
|
-
onDrop: PropTypes__default['default'].func,
|
|
190
271
|
onItemAdd: PropTypes__default['default'].func,
|
|
191
272
|
onItemChange: PropTypes__default['default'].func,
|
|
273
|
+
onItemMove: PropTypes__default['default'].func,
|
|
192
274
|
onItemRemove: PropTypes__default['default'].func,
|
|
193
275
|
onItemResize: PropTypes__default['default'].func,
|
|
276
|
+
onItemsMove: PropTypes__default['default'].func,
|
|
194
277
|
page: PropTypes__default['default'].shape({
|
|
195
278
|
backgroundColor: PropTypes__default['default'].string
|
|
196
279
|
}),
|
|
197
280
|
pageRef: PropTypes__default['default'].shape({
|
|
198
281
|
current: PropTypes__default['default'].any
|
|
199
282
|
}),
|
|
283
|
+
pages: PropTypes__default['default'].arrayOf(PropTypes__default['default'].shape({})),
|
|
200
284
|
style: PropTypes__default['default'].shape({})
|
|
201
285
|
};
|
|
202
|
-
Page.defaultProps = {
|
|
203
|
-
activeElement: null,
|
|
204
|
-
additionalPageItems: [],
|
|
205
|
-
guides: {},
|
|
206
|
-
hashCode: '',
|
|
207
|
-
itemAccessor: function itemAccessor() {},
|
|
208
|
-
items: [],
|
|
209
|
-
onDrop: function onDrop() {},
|
|
210
|
-
onItemAdd: function onItemAdd() {},
|
|
211
|
-
onItemChange: function onItemChange() {},
|
|
212
|
-
onItemRemove: function onItemRemove() {},
|
|
213
|
-
onItemResize: function onItemResize() {},
|
|
214
|
-
page: {},
|
|
215
|
-
pageRef: {},
|
|
216
|
-
style: {}
|
|
217
|
-
};
|
|
218
286
|
var Page$1 = /*#__PURE__*/React.memo(Page);
|
|
219
287
|
|
|
220
288
|
module.exports = Page$1;
|