@jotforminc/dnd-builder 3.0.0-alpha.1 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +193 -0
- package/lib/cjs/components/AlignmentGuides.js +11 -12
- package/lib/cjs/components/AlignmentGuides.js.map +1 -1
- package/lib/cjs/components/Builder/Builder.js +21 -131
- package/lib/cjs/components/Builder/Builder.js.map +1 -1
- package/lib/cjs/components/Builder/BuilderWrapper.js +64 -0
- package/lib/cjs/components/Builder/BuilderWrapper.js.map +1 -0
- package/lib/cjs/components/Builder/ContextMenu.js +31 -30
- package/lib/cjs/components/Builder/ContextMenu.js.map +1 -1
- package/lib/cjs/components/Builder/DndWrapper.js +16 -19
- package/lib/cjs/components/Builder/DndWrapper.js.map +1 -1
- package/lib/cjs/components/Builder/Element.js +51 -44
- package/lib/cjs/components/Builder/Element.js.map +1 -1
- package/lib/cjs/components/Builder/Page.js +127 -82
- package/lib/cjs/components/Builder/Page.js.map +1 -1
- package/lib/cjs/components/Builder/PageActions.js +35 -37
- package/lib/cjs/components/Builder/PageActions.js.map +1 -1
- package/lib/cjs/components/Builder/PageAdder.js +10 -11
- 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/ReportItemRenderer.js +7 -6
- package/lib/cjs/components/Builder/ReportItemRenderer.js.map +1 -1
- package/lib/cjs/components/Builder/Scene.js +75 -205
- package/lib/cjs/components/Builder/Scene.js.map +1 -1
- package/lib/cjs/components/Builder/SearchInput.js +27 -58
- 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 +19 -16
- package/lib/cjs/components/Builder/Tabs.js.map +1 -1
- package/lib/cjs/components/Builder/ZoomControls.js +20 -34
- package/lib/cjs/components/Builder/ZoomControls.js.map +1 -1
- package/lib/cjs/components/DraggableItem/DraggableItem.js +165 -157
- 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 +25 -22
- 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 +11 -12
- package/lib/cjs/components/Elements/Image.js.map +1 -1
- package/lib/cjs/components/Elements/RichText.js +16 -14
- 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/PageItemResizer.js +3 -7
- package/lib/cjs/components/PageItemResizer.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js +25 -60
- 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 +56 -21
- package/lib/cjs/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +54 -0
- package/lib/cjs/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
- package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js +143 -47
- package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js +17 -18
- package/lib/cjs/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
- package/lib/cjs/components/Panels/LeftPanel/Elements.js +48 -52
- package/lib/cjs/components/Panels/LeftPanel/Elements.js.map +1 -1
- package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js +6 -35
- package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
- package/lib/cjs/components/Panels/LeftPanel/LeftPanelCloser.js +4 -4
- package/lib/cjs/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
- package/lib/cjs/components/Panels/LeftPanel/LeftPanelOpener.js +4 -3
- package/lib/cjs/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
- package/lib/cjs/components/Panels/RightPanel/RightPanel.js +139 -144
- package/lib/cjs/components/Panels/RightPanel/RightPanel.js.map +1 -1
- package/lib/cjs/components/Panels/RightPanel/RightPanelToggler.js +7 -4
- package/lib/cjs/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
- package/lib/cjs/components/Panels/RightPanel/Settings.js +21 -22
- package/lib/cjs/components/Panels/RightPanel/Settings.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js +105 -95
- package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js +17 -18
- package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js +33 -67
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js +9 -9
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItem.js +62 -28
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +54 -0
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js +8 -9
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js +163 -109
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
- package/lib/cjs/components/Presentation/Presentation.js +19 -70
- 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 +45 -12
- package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
- package/lib/cjs/components/Presentation/PresentationBar/PresentationBar.js +44 -86
- 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 +56 -59
- 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 +14 -69
- package/lib/cjs/components/Preview/Preview.js.map +1 -1
- package/lib/cjs/components/Preview/StaticItem.js +5 -16
- package/lib/cjs/components/Preview/StaticItem.js.map +1 -1
- package/lib/cjs/components/Preview/StaticPage.js +16 -22
- package/lib/cjs/components/Preview/StaticPage.js.map +1 -1
- package/lib/cjs/components/Preview/StaticScene.js +34 -56
- package/lib/cjs/components/Preview/StaticScene.js.map +1 -1
- package/lib/cjs/components/Print/Print.js +18 -62
- package/lib/cjs/components/Print/Print.js.map +1 -1
- package/lib/cjs/components/Print/PrintModal.js +55 -0
- package/lib/cjs/components/Print/PrintModal.js.map +1 -0
- package/lib/cjs/components/Print/{PrintModeWithoutContext.js → PrintWrapper.js} +11 -42
- package/lib/cjs/components/Print/PrintWrapper.js.map +1 -0
- package/lib/cjs/components/Report.js +28 -40
- package/lib/cjs/components/Report.js.map +1 -1
- package/lib/cjs/components/ReportItemsWrapper.js +22 -36
- package/lib/cjs/components/ReportItemsWrapper.js.map +1 -1
- package/lib/cjs/components/ReportWrapper.js +28 -57
- package/lib/cjs/components/ReportWrapper.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 +18 -13
- 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 +128 -0
- package/lib/cjs/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
- package/lib/cjs/components/Settings/PageLayer/LayerItem.js +91 -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 +6 -11
- package/lib/cjs/components/TextEditor/QuillEditor.js.map +1 -1
- package/lib/cjs/components/TextEditor/TextEditor.js +17 -18
- package/lib/cjs/components/TextEditor/TextEditor.js.map +1 -1
- package/lib/cjs/components/withClickOutside.js +10 -11
- package/lib/cjs/components/withClickOutside.js.map +1 -1
- package/lib/cjs/components/withZoomPanPinchHOC.js +10 -12
- package/lib/cjs/components/withZoomPanPinchHOC.js.map +1 -1
- package/lib/cjs/constants/eventIgnoredRoles.js +13 -0
- package/lib/cjs/constants/eventIgnoredRoles.js.map +1 -0
- package/lib/cjs/constants/texts.js +11 -0
- package/lib/cjs/constants/texts.js.map +1 -1
- package/lib/cjs/contexts/BuilderContext.js +208 -0
- package/lib/cjs/contexts/BuilderContext.js.map +1 -0
- package/lib/cjs/contexts/PresentationContext.js +140 -0
- package/lib/cjs/contexts/PresentationContext.js.map +1 -0
- package/lib/cjs/contexts/PropContext.js +144 -0
- package/lib/cjs/contexts/PropContext.js.map +1 -0
- package/lib/cjs/contexts/Providers.js +70 -0
- package/lib/cjs/contexts/Providers.js.map +1 -0
- package/lib/cjs/index.js +0 -2
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/styles/_jfPrint.scss +17 -1
- package/lib/cjs/styles/_jfReportsModal.scss +9 -9
- package/lib/cjs/styles/_jfReportsPanels.scss +4 -1
- package/lib/cjs/styles/_jfReportsReportItem.scss +1 -1
- package/lib/cjs/styles/_jfReportsSVG.scss +0 -1
- package/lib/cjs/styles/_jfReportsTextEditor.scss +5 -0
- package/lib/cjs/styles/_jfSearchInput.scss +2 -2
- package/lib/cjs/utils/functions.js +20 -9
- package/lib/cjs/utils/functions.js.map +1 -1
- package/lib/cjs/utils/getDefaultPresentationActions.js +1 -1
- package/lib/cjs/utils/getDefaultPresentationActions.js.map +1 -1
- package/lib/cjs/utils/hooks.js +64 -47
- package/lib/cjs/utils/hooks.js.map +1 -1
- package/lib/esm/components/AlignmentGuides.js +11 -12
- package/lib/esm/components/AlignmentGuides.js.map +1 -1
- package/lib/esm/components/Builder/Builder.js +20 -129
- package/lib/esm/components/Builder/Builder.js.map +1 -1
- package/lib/esm/components/Builder/BuilderWrapper.js +58 -0
- package/lib/esm/components/Builder/BuilderWrapper.js.map +1 -0
- package/lib/esm/components/Builder/ContextMenu.js +31 -30
- package/lib/esm/components/Builder/ContextMenu.js.map +1 -1
- package/lib/esm/components/Builder/DndWrapper.js +10 -10
- package/lib/esm/components/Builder/DndWrapper.js.map +1 -1
- package/lib/esm/components/Builder/Element.js +50 -43
- package/lib/esm/components/Builder/Element.js.map +1 -1
- package/lib/esm/components/Builder/Page.js +128 -83
- package/lib/esm/components/Builder/Page.js.map +1 -1
- package/lib/esm/components/Builder/PageActions.js +35 -37
- package/lib/esm/components/Builder/PageActions.js.map +1 -1
- package/lib/esm/components/Builder/PageAdder.js +11 -12
- 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/ReportItemRenderer.js +7 -6
- package/lib/esm/components/Builder/ReportItemRenderer.js.map +1 -1
- package/lib/esm/components/Builder/Scene.js +77 -203
- package/lib/esm/components/Builder/Scene.js.map +1 -1
- package/lib/esm/components/Builder/SearchInput.js +28 -58
- 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 +19 -16
- package/lib/esm/components/Builder/Tabs.js.map +1 -1
- package/lib/esm/components/Builder/ZoomControls.js +20 -30
- package/lib/esm/components/Builder/ZoomControls.js.map +1 -1
- package/lib/esm/components/DraggableItem/DraggableItem.js +165 -156
- 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 +23 -20
- 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 +11 -12
- package/lib/esm/components/Elements/Image.js.map +1 -1
- package/lib/esm/components/Elements/RichText.js +16 -14
- 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/PageItemResizer.js +3 -7
- package/lib/esm/components/PageItemResizer.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js +25 -59
- 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 +56 -22
- package/lib/esm/components/Panels/AllSlidesPanel/PageItem.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js +48 -0
- package/lib/esm/components/Panels/AllSlidesPanel/PageItemDragOverlay.js.map +1 -0
- package/lib/esm/components/Panels/AllSlidesPanel/PageList.js +140 -48
- package/lib/esm/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js +17 -18
- package/lib/esm/components/Panels/AllSlidesPanel/PageThumbnailActions.js.map +1 -1
- package/lib/esm/components/Panels/LeftPanel/Elements.js +49 -53
- package/lib/esm/components/Panels/LeftPanel/Elements.js.map +1 -1
- package/lib/esm/components/Panels/LeftPanel/LeftPanel.js +6 -34
- package/lib/esm/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
- package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js +4 -4
- package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
- package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js +4 -3
- package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
- package/lib/esm/components/Panels/RightPanel/RightPanel.js +141 -145
- package/lib/esm/components/Panels/RightPanel/RightPanel.js.map +1 -1
- package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js +7 -4
- package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
- package/lib/esm/components/Panels/RightPanel/Settings.js +21 -22
- package/lib/esm/components/Panels/RightPanel/Settings.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js +106 -96
- package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js +17 -18
- package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js +33 -66
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js +9 -9
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js +62 -28
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItem.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js +48 -0
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItemDragOverlay.js.map +1 -0
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js +8 -9
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js +165 -111
- package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
- package/lib/esm/components/Presentation/Presentation.js +19 -69
- 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 +46 -13
- package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
- package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js +45 -87
- 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 +57 -60
- 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 +14 -68
- package/lib/esm/components/Preview/Preview.js.map +1 -1
- package/lib/esm/components/Preview/StaticItem.js +5 -15
- package/lib/esm/components/Preview/StaticItem.js.map +1 -1
- package/lib/esm/components/Preview/StaticPage.js +16 -22
- package/lib/esm/components/Preview/StaticPage.js.map +1 -1
- package/lib/esm/components/Preview/StaticScene.js +34 -56
- package/lib/esm/components/Preview/StaticScene.js.map +1 -1
- package/lib/esm/components/Print/Print.js +18 -57
- package/lib/esm/components/Print/Print.js.map +1 -1
- package/lib/esm/components/Print/PrintModal.js +49 -0
- package/lib/esm/components/Print/PrintModal.js.map +1 -0
- package/lib/esm/components/Print/{PrintModeWithoutContext.js → PrintWrapper.js} +11 -42
- package/lib/esm/components/Print/PrintWrapper.js.map +1 -0
- package/lib/esm/components/Report.js +29 -41
- package/lib/esm/components/Report.js.map +1 -1
- package/lib/esm/components/ReportItemsWrapper.js +20 -34
- package/lib/esm/components/ReportItemsWrapper.js.map +1 -1
- package/lib/esm/components/ReportWrapper.js +29 -58
- package/lib/esm/components/ReportWrapper.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 +18 -13
- 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 +121 -0
- package/lib/esm/components/Settings/PageLayer/LayerDragOverlay.js.map +1 -0
- package/lib/esm/components/Settings/PageLayer/LayerItem.js +92 -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 +6 -11
- package/lib/esm/components/TextEditor/QuillEditor.js.map +1 -1
- package/lib/esm/components/TextEditor/TextEditor.js +17 -18
- package/lib/esm/components/TextEditor/TextEditor.js.map +1 -1
- package/lib/esm/components/withClickOutside.js +11 -12
- package/lib/esm/components/withClickOutside.js.map +1 -1
- package/lib/esm/components/withZoomPanPinchHOC.js +10 -12
- package/lib/esm/components/withZoomPanPinchHOC.js.map +1 -1
- package/lib/esm/constants/eventIgnoredRoles.js +9 -0
- package/lib/esm/constants/eventIgnoredRoles.js.map +1 -0
- package/lib/esm/constants/texts.js +11 -0
- package/lib/esm/constants/texts.js.map +1 -1
- package/lib/esm/contexts/BuilderContext.js +199 -0
- package/lib/esm/contexts/BuilderContext.js.map +1 -0
- package/lib/esm/contexts/PresentationContext.js +131 -0
- package/lib/esm/contexts/PresentationContext.js.map +1 -0
- package/lib/esm/contexts/PropContext.js +135 -0
- package/lib/esm/contexts/PropContext.js.map +1 -0
- package/lib/esm/contexts/Providers.js +64 -0
- package/lib/esm/contexts/Providers.js.map +1 -0
- package/lib/esm/index.js +0 -1
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/styles/_jfPrint.scss +17 -1
- package/lib/esm/styles/_jfReportsModal.scss +9 -9
- package/lib/esm/styles/_jfReportsPanels.scss +4 -1
- package/lib/esm/styles/_jfReportsReportItem.scss +1 -1
- package/lib/esm/styles/_jfReportsSVG.scss +0 -1
- package/lib/esm/styles/_jfReportsTextEditor.scss +5 -0
- package/lib/esm/styles/_jfSearchInput.scss +2 -2
- package/lib/esm/utils/functions.js +16 -9
- package/lib/esm/utils/functions.js.map +1 -1
- package/lib/esm/utils/getDefaultPresentationActions.js +1 -1
- package/lib/esm/utils/getDefaultPresentationActions.js.map +1 -1
- package/lib/esm/utils/hooks.js +66 -49
- package/lib/esm/utils/hooks.js.map +1 -1
- package/package.json +18 -14
- package/lib/cjs/components/Print/PrintMode.js +0 -59
- package/lib/cjs/components/Print/PrintMode.js.map +0 -1
- package/lib/cjs/components/Print/PrintModeWithoutContext.js.map +0 -1
- package/lib/cjs/components/ResponsiveContent.js +0 -15
- package/lib/cjs/components/ResponsiveContent.js.map +0 -1
- package/lib/cjs/utils/builderContext.js +0 -308
- package/lib/cjs/utils/builderContext.js.map +0 -1
- package/lib/cjs/utils/presentationContext.js +0 -144
- package/lib/cjs/utils/presentationContext.js.map +0 -1
- package/lib/cjs/utils/propContext.js +0 -133
- package/lib/cjs/utils/propContext.js.map +0 -1
- package/lib/esm/components/Print/PrintMode.js +0 -52
- package/lib/esm/components/Print/PrintMode.js.map +0 -1
- package/lib/esm/components/Print/PrintModeWithoutContext.js.map +0 -1
- package/lib/esm/components/ResponsiveContent.js +0 -13
- package/lib/esm/components/ResponsiveContent.js.map +0 -1
- package/lib/esm/utils/builderContext.js +0 -297
- package/lib/esm/utils/builderContext.js.map +0 -1
- package/lib/esm/utils/presentationContext.js +0 -133
- package/lib/esm/utils/presentationContext.js.map +0 -1
- package/lib/esm/utils/propContext.js +0 -122
- package/lib/esm/utils/propContext.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DraggableItemActions.js","sources":["../../../../src/components/DraggableItem/DraggableItemActions.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport * as icons from '../../utils/icons';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst DraggableItemActions = ({\n changeLockStatus,\n deleteItem,\n duplicateItem,\n isLocked,\n isMultipleItemSelected,\n openSettings,\n}) => {\n const {\n DELETE_ITEM,\n DUPLICATE_ITEM,\n ITEM_SETTINGS,\n LOCK_ITEM,\n } = useTranslatedTexts();\n\n if (isMultipleItemSelected) return null;\n\n if (isLocked) {\n return (\n <div className=\"reportItemMenu d-flex dir-col a-center forLocked\">\n <button\n className=\"reportItemMenu-item js-locked\"\n onClick={changeLockStatus}\n type=\"button\"\n >\n <icons.lock\n className=\"jfReportSVG icon-lock isWhite\"\n />\n </button>\n </div>\n );\n }\n return (\n <div className=\"reportItemMenu d-flex dir-col a-center\">\n <button\n className=\"reportItemMenu-item js-itemSettings\"\n onClick={openSettings}\n title={ITEM_SETTINGS}\n type=\"button\"\n >\n <icons.settings className=\"jfReportSVG icon-settings isWhite\" />\n </button>\n <button\n className=\"reportItemMenu-item js-duplicateItem\"\n onClick={duplicateItem}\n title={DUPLICATE_ITEM}\n type=\"button\"\n >\n <icons.duplicate className=\"jfReportSVG icon-duplicate isWhite\" />\n </button>\n <button\n className=\"reportItemMenu-item js-lockItem\"\n onClick={changeLockStatus}\n title={LOCK_ITEM}\n type=\"button\"\n >\n <icons.unlock\n className=\"jfReportSVG icon-lock isWhite\"\n />\n </button>\n <button\n className=\"reportItemMenu-item js-deleteItem\"\n onClick={deleteItem}\n title={DELETE_ITEM}\n type=\"button\"\n >\n <icons.trash className=\"jfReportSVG icon-trash isWhite\" />\n </button>\n </div>\n );\n};\n\nDraggableItemActions.propTypes = {\n changeLockStatus: PropTypes.func,\n deleteItem: PropTypes.func,\n duplicateItem: PropTypes.func,\n isLocked: PropTypes.bool,\n isMultipleItemSelected: PropTypes.bool,\n openSettings: PropTypes.func,\n};\n\
|
|
1
|
+
{"version":3,"file":"DraggableItemActions.js","sources":["../../../../src/components/DraggableItem/DraggableItemActions.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport * as icons from '../../utils/icons';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst DraggableItemActions = ({\n changeLockStatus = () => {},\n deleteItem = () => {},\n duplicateItem = () => {},\n isLocked = false,\n isMultipleItemSelected = false,\n openSettings = () => {},\n}) => {\n const {\n DELETE_ITEM,\n DUPLICATE_ITEM,\n ITEM_SETTINGS,\n LOCK_ITEM,\n } = useTranslatedTexts();\n\n if (isMultipleItemSelected) return null;\n\n if (isLocked) {\n return (\n <div className=\"reportItemMenu d-flex dir-col a-center forLocked\">\n <button\n className=\"reportItemMenu-item js-locked\"\n onClick={changeLockStatus}\n type=\"button\"\n >\n <icons.lock\n className=\"jfReportSVG icon-lock isWhite\"\n />\n </button>\n </div>\n );\n }\n return (\n <div className=\"reportItemMenu d-flex dir-col a-center\">\n <button\n className=\"reportItemMenu-item js-itemSettings\"\n onClick={openSettings}\n title={ITEM_SETTINGS}\n type=\"button\"\n >\n <icons.settings className=\"jfReportSVG icon-settings isWhite\" />\n </button>\n <button\n className=\"reportItemMenu-item js-duplicateItem\"\n onClick={duplicateItem}\n title={DUPLICATE_ITEM}\n type=\"button\"\n >\n <icons.duplicate className=\"jfReportSVG icon-duplicate isWhite\" />\n </button>\n <button\n className=\"reportItemMenu-item js-lockItem\"\n onClick={changeLockStatus}\n title={LOCK_ITEM}\n type=\"button\"\n >\n <icons.unlock\n className=\"jfReportSVG icon-lock isWhite\"\n />\n </button>\n <button\n className=\"reportItemMenu-item js-deleteItem\"\n onClick={deleteItem}\n title={DELETE_ITEM}\n type=\"button\"\n >\n <icons.trash className=\"jfReportSVG icon-trash isWhite\" />\n </button>\n </div>\n );\n};\n\nDraggableItemActions.propTypes = {\n changeLockStatus: PropTypes.func,\n deleteItem: PropTypes.func,\n duplicateItem: PropTypes.func,\n isLocked: PropTypes.bool,\n isMultipleItemSelected: PropTypes.bool,\n openSettings: PropTypes.func,\n};\n\nexport default memo(DraggableItemActions);\n"],"names":["DraggableItemActions","changeLockStatus","deleteItem","duplicateItem","isLocked","isMultipleItemSelected","openSettings","useTranslatedTexts","DELETE_ITEM","DUPLICATE_ITEM","ITEM_SETTINGS","LOCK_ITEM","_jsx","icons.lock","_jsxs","icons.settings","icons.duplicate","icons.unlock","icons.trash","propTypes","PropTypes","func","bool","memo"],"mappings":";;;;;;;;;;AAKA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,OAOvB;AAAA,mCANJC,gBAMI;AAAA,MANJA,gBAMI,sCANe,YAAM,EAMrB;AAAA,6BALJC,UAKI;AAAA,MALJA,UAKI,gCALS,YAAM,EAKf;AAAA,gCAJJC,aAII;AAAA,MAJJA,aAII,mCAJY,YAAM,EAIlB;AAAA,2BAHJC,QAGI;AAAA,MAHJA,QAGI,8BAHO,KAGP;AAAA,mCAFJC,sBAEI;AAAA,MAFJA,sBAEI,sCAFqB,KAErB;AAAA,+BADJC,YACI;AAAA,MADJA,YACI,kCADW,YAAM,EACjB;;AACJ,4BAKIC,kBAAkB,EALtB;AAAA,MACEC,WADF,uBACEA,WADF;AAAA,MAEEC,cAFF,uBAEEA,cAFF;AAAA,MAGEC,aAHF,uBAGEA,aAHF;AAAA,MAIEC,SAJF,uBAIEA,SAJF;;AAOA,MAAIN,sBAAJ,EAA4B,OAAO,IAAP;;AAE5B,MAAID,QAAJ,EAAc;AACZ,wBACEQ;AAAK,MAAA,SAAS,EAAC,kDAAf;AAAA,6BACEA;AACE,QAAA,SAAS,EAAC,+BADZ;AAEE,QAAA,OAAO,EAAEX,gBAFX;AAGE,QAAA,IAAI,EAAC,QAHP;AAAA,+BAKEW,IAACC,OAAD;AACE,UAAA,SAAS,EAAC;AADZ;AALF;AADF,MADF;AAaD;;AACD,sBACEC;AAAK,IAAA,SAAS,EAAC,wCAAf;AAAA,4BACEF;AACE,MAAA,SAAS,EAAC,qCADZ;AAEE,MAAA,OAAO,EAAEN,YAFX;AAGE,MAAA,KAAK,EAAEI,aAHT;AAIE,MAAA,IAAI,EAAC,QAJP;AAAA,6BAMEE,IAACG,WAAD;AAAgB,QAAA,SAAS,EAAC;AAA1B;AANF,MADF,eASEH;AACE,MAAA,SAAS,EAAC,sCADZ;AAEE,MAAA,OAAO,EAAET,aAFX;AAGE,MAAA,KAAK,EAAEM,cAHT;AAIE,MAAA,IAAI,EAAC,QAJP;AAAA,6BAMEG,IAACI,YAAD;AAAiB,QAAA,SAAS,EAAC;AAA3B;AANF,MATF,eAiBEJ;AACE,MAAA,SAAS,EAAC,iCADZ;AAEE,MAAA,OAAO,EAAEX,gBAFX;AAGE,MAAA,KAAK,EAAEU,SAHT;AAIE,MAAA,IAAI,EAAC,QAJP;AAAA,6BAMEC,IAACK,SAAD;AACE,QAAA,SAAS,EAAC;AADZ;AANF,MAjBF,eA2BEL;AACE,MAAA,SAAS,EAAC,mCADZ;AAEE,MAAA,OAAO,EAAEV,UAFX;AAGE,MAAA,KAAK,EAAEM,WAHT;AAIE,MAAA,IAAI,EAAC,QAJP;AAAA,6BAMEI,IAACM,QAAD;AAAa,QAAA,SAAS,EAAC;AAAvB;AANF,MA3BF;AAAA,IADF;AAsCD,CAtED;;AAwEAlB,oBAAoB,CAACmB,SAArB,GAAiC;AAC/BlB,EAAAA,gBAAgB,EAAEmB,SAAS,CAACC,IADG;AAE/BnB,EAAAA,UAAU,EAAEkB,SAAS,CAACC,IAFS;AAG/BlB,EAAAA,aAAa,EAAEiB,SAAS,CAACC,IAHM;AAI/BjB,EAAAA,QAAQ,EAAEgB,SAAS,CAACE,IAJW;AAK/BjB,EAAAA,sBAAsB,EAAEe,SAAS,CAACE,IALH;AAM/BhB,EAAAA,YAAY,EAAEc,SAAS,CAACC;AANO,CAAjC;AASA,0CAAeE,IAAI,CAACvB,oBAAD,CAAnB;;;;"}
|
|
@@ -8,12 +8,12 @@ import 'core-js/modules/web.dom-collections.for-each.js';
|
|
|
8
8
|
import { memo } from 'react';
|
|
9
9
|
import PropTypes from 'prop-types';
|
|
10
10
|
import memoizeOne from 'memoize-one';
|
|
11
|
-
import { useDragLayer } from 'react-dnd
|
|
11
|
+
import { useDragLayer } from 'react-dnd';
|
|
12
12
|
import ReportItemRenderer from '../Builder/ReportItemRenderer.js';
|
|
13
13
|
import { calculateGuidePositions, proximityListener } from '../../utils/functions.js';
|
|
14
14
|
import ItemPositioner from '../ItemPositioner.js';
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
15
|
+
import { useBuilderStore } from '../../contexts/BuilderContext.js';
|
|
16
|
+
import { usePropStore } from '../../contexts/PropContext.js';
|
|
17
17
|
import getMergedItem from '../../utils/getMergedItem.js';
|
|
18
18
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
19
19
|
|
|
@@ -134,10 +134,12 @@ function getItemStyles(initialOffset, currentOffset, ref, pageGuides, item, zoom
|
|
|
134
134
|
}
|
|
135
135
|
|
|
136
136
|
var DraggableItemLayer = function DraggableItemLayer(_ref3) {
|
|
137
|
-
var guides = _ref3.guides,
|
|
138
|
-
|
|
139
|
-
pageRefs = _ref3.pageRefs,
|
|
140
|
-
|
|
137
|
+
var _ref3$guides = _ref3.guides,
|
|
138
|
+
guides = _ref3$guides === void 0 ? {} : _ref3$guides,
|
|
139
|
+
_ref3$pageRefs = _ref3.pageRefs,
|
|
140
|
+
pageRefs = _ref3$pageRefs === void 0 ? {} : _ref3$pageRefs,
|
|
141
|
+
_ref3$pages = _ref3.pages,
|
|
142
|
+
pages = _ref3$pages === void 0 ? [] : _ref3$pages;
|
|
141
143
|
|
|
142
144
|
var _useDragLayer = useDragLayer(function (monitor) {
|
|
143
145
|
return {
|
|
@@ -153,12 +155,18 @@ var DraggableItemLayer = function DraggableItemLayer(_ref3) {
|
|
|
153
155
|
isDragging = _useDragLayer.isDragging,
|
|
154
156
|
item = _useDragLayer.item;
|
|
155
157
|
|
|
156
|
-
var
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
var
|
|
160
|
-
|
|
161
|
-
|
|
158
|
+
var activeElement = useBuilderStore(function (state) {
|
|
159
|
+
return state.activeElement;
|
|
160
|
+
});
|
|
161
|
+
var zoom = useBuilderStore(function (state) {
|
|
162
|
+
return state.zoom;
|
|
163
|
+
});
|
|
164
|
+
var acceptedItems = usePropStore(function (state) {
|
|
165
|
+
return state.acceptedItems;
|
|
166
|
+
});
|
|
167
|
+
var itemAccessor = usePropStore(function (state) {
|
|
168
|
+
return state.itemAccessor;
|
|
169
|
+
});
|
|
162
170
|
|
|
163
171
|
if (!currentOffset || !isDragging) {
|
|
164
172
|
return null;
|
|
@@ -212,6 +220,7 @@ var DraggableItemLayer = function DraggableItemLayer(_ref3) {
|
|
|
212
220
|
children: [/*#__PURE__*/jsx(ItemPositioner, {
|
|
213
221
|
classNames: "reportItem".concat(isDragging ? ' isDraggingLayerElement' : ''),
|
|
214
222
|
style: _objectSpread(_objectSpread({}, layerStyles(itemStyle)), {}, {
|
|
223
|
+
cursor: isDragging ? 'grabbing' : 'pointer',
|
|
215
224
|
height: draggedItem.height,
|
|
216
225
|
outlineColor: '#4277ff',
|
|
217
226
|
transform: "scale(".concat(zoom, ")"),
|
|
@@ -237,6 +246,7 @@ var DraggableItemLayer = function DraggableItemLayer(_ref3) {
|
|
|
237
246
|
return /*#__PURE__*/jsx(ItemPositioner, {
|
|
238
247
|
classNames: "reportItem".concat(isDragging ? ' isDraggingLayerElement' : ''),
|
|
239
248
|
style: _objectSpread(_objectSpread({}, layerStyles(__itemStyle)), {}, {
|
|
249
|
+
cursor: isDragging ? 'grabbing' : 'pointer',
|
|
240
250
|
height: ii.height,
|
|
241
251
|
outlineColor: '#4277ff',
|
|
242
252
|
transform: "scale(".concat(zoom, ")"),
|
|
@@ -261,16 +271,9 @@ var DraggableItemLayer = function DraggableItemLayer(_ref3) {
|
|
|
261
271
|
|
|
262
272
|
DraggableItemLayer.propTypes = {
|
|
263
273
|
guides: PropTypes.shape({}),
|
|
264
|
-
itemAccessor: PropTypes.func,
|
|
265
274
|
pageRefs: PropTypes.shape({}),
|
|
266
275
|
pages: PropTypes.arrayOf(PropTypes.shape({}))
|
|
267
276
|
};
|
|
268
|
-
DraggableItemLayer.defaultProps = {
|
|
269
|
-
guides: {},
|
|
270
|
-
itemAccessor: function itemAccessor() {},
|
|
271
|
-
pageRefs: {},
|
|
272
|
-
pages: []
|
|
273
|
-
};
|
|
274
277
|
var DraggableItemLayer$1 = /*#__PURE__*/memo(DraggableItemLayer);
|
|
275
278
|
|
|
276
279
|
export default DraggableItemLayer$1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DraggableItemLayer.js","sources":["../../../../src/components/DraggableItem/DraggableItemLayer.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport memoizeOne from 'memoize-one';\nimport { useDragLayer } from 'react-dnd-cjs';\nimport ReportItemRenderer from '../Builder/ReportItemRenderer';\nimport { proximityListener, calculateGuidePositions } from '../../utils/functions';\nimport ItemPositioner from '../ItemPositioner';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { usePropContext } from '../../utils/propContext';\nimport getMergedItem from '../../utils/getMergedItem';\n\nconst layerStyles = ({ x, y }) => ({\n left: x,\n pointerEvents: 'none',\n position: 'fixed',\n top: y,\n zIndex: 100,\n});\n\nconst getDraggedItem = ({ defaultItem = {}, details }, item) => ({\n ...defaultItem,\n ...details,\n ...item,\n id: 'temp',\n});\n\nconst getMemoizedDraggedItem = memoizeOne(getDraggedItem);\n\nconst getAdditionalItems = memoizeOne((activeElems, __itemId, _pages, _acceptedItems) => {\n if (activeElems === null || activeElems.length === 1) return [];\n const index = activeElems.findIndex(aE => aE === __itemId);\n const act = [...activeElems.slice(0, index), ...activeElems.slice(index + 1)];\n const items = act.map(_i => {\n const _item = _pages.reduce((acc, curr) => {\n if (acc) {\n return acc;\n }\n return curr.items.find(el => el.id === _i);\n }, undefined);\n const defItem = (_acceptedItems[_item.itemType]\n && _acceptedItems[_item.itemType].defaultItem);\n return { ...defItem, ..._item };\n });\n return items;\n});\n\nfunction getItemStyles(initialOffset, currentOffset, ref, pageGuides, item, zoom) {\n if (ref.current) {\n const dropTargetPosition = ref.current.getBoundingClientRect();\n const { x: finalX, y: finalY } = currentOffset;\n const { x: initialX, y: initialY } = initialOffset;\n const newYposition = finalY > initialY\n ? (initialY + (finalY - initialY)) - dropTargetPosition.top\n : initialY - (initialY - finalY) - dropTargetPosition.top;\n\n const newXposition = finalX > initialX\n ? (initialX + (finalX - initialX)) - dropTargetPosition.left\n : initialX - (initialX - finalX) - dropTargetPosition.left;\n\n const newItem = {\n ...item,\n left: newXposition / zoom,\n top: newYposition / zoom,\n };\n const _guides = {\n ...pageGuides,\n [item.id]: {\n ...pageGuides[item.id],\n x: calculateGuidePositions(newItem, 'x', zoom),\n y: calculateGuidePositions(newItem, 'y', zoom),\n },\n };\n\n const match = proximityListener(item.id, _guides);\n let newActiveBoxLeft = newXposition;\n let newActiveBoxTop = newYposition;\n const haveMatch = Object.keys(match).length > 0;\n const haveXMatch = haveMatch && match.x;\n const haveYMatch = haveMatch && match.y;\n Object.keys(match).forEach(axis => {\n const { activeBoxGuides, matchedArray, proximity } = match[axis];\n const activeBoxProximityIndex = proximity.activeBoxIndex;\n const matchedBoxProximityIndex = proximity.matchedBoxIndex;\n if (axis === 'x') {\n if (activeBoxGuides[activeBoxProximityIndex] > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxLeft = newItem.left - proximity.value;\n } else {\n newActiveBoxLeft = newItem.left + proximity.value;\n }\n } else if (activeBoxGuides[activeBoxProximityIndex]\n > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxTop = newItem.top - proximity.value;\n } else {\n newActiveBoxTop = newItem.top + proximity.value;\n }\n });\n return {\n x: (newActiveBoxLeft * (haveXMatch ? zoom : 1)) + dropTargetPosition.left,\n y: (newActiveBoxTop * (haveYMatch ? zoom : 1)) + dropTargetPosition.top,\n };\n }\n}\n\nconst DraggableItemLayer = ({\n guides, itemAccessor, pageRefs, pages,\n}) => {\n const {\n currentOffset,\n initialOffset,\n isDragging,\n item,\n } = useDragLayer(monitor => ({\n currentOffset: monitor.getSourceClientOffset(),\n initialOffset: monitor.getInitialSourceClientOffset(),\n isDragging: monitor.isDragging(),\n item: monitor.getItem(),\n itemType: monitor.getItemType(),\n }));\n\n const { acceptedItems } = usePropContext();\n const { activeElement, zoom } = useBuilderContext();\n\n if (!currentOffset || !isDragging) {\n return null;\n }\n let draggedItem = pages.reduce((acc, curr) => {\n if (acc) {\n return acc;\n }\n return curr.items.find(el => el.id === item.id);\n }, undefined);\n\n let pageID;\n if (draggedItem) {\n pageID = draggedItem.pageID;\n } else {\n draggedItem = getMemoizedDraggedItem(acceptedItems[item.itemType], item);\n }\n const element = document.elementFromPoint(currentOffset.x, currentOffset.y);\n if (element && element.closest('.jfReport-page')) { // add polyfill if will we use that one\n pageID = element.closest('.jfReport-page').getAttribute('data-id');\n if (!draggedItem.pageID) {\n draggedItem.pageID = pageID;\n }\n }\n\n const ref = pageRefs[pageID];\n let itemStyle = {};\n // No page\n if (!ref || !ref.current) {\n itemStyle = {\n x: currentOffset.x,\n y: currentOffset.y,\n };\n } else { // In the page\n const pageGuides = guides[pageID];\n itemStyle = getItemStyles(\n initialOffset,\n currentOffset,\n pageRefs[pageID],\n pageGuides,\n draggedItem,\n zoom,\n );\n }\n\n const additionalitems = getAdditionalItems(\n activeElement,\n draggedItem.id,\n pages,\n acceptedItems,\n );\n\n const mergedItem = getMergedItem(draggedItem, acceptedItems);\n\n return (\n <>\n <ItemPositioner\n classNames={`reportItem${isDragging ? ' isDraggingLayerElement' : ''}`}\n style={{\n ...layerStyles(itemStyle),\n height: draggedItem.height,\n outlineColor: '#4277ff',\n transform: `scale(${zoom})`,\n transformOrigin: '0 0',\n width: draggedItem.width,\n }}\n >\n <ReportItemRenderer item={draggedItem}>\n {ReportItem => (\n <ReportItem\n isDragging={isDragging}\n item={mergedItem}\n itemAccessor={itemAccessor}\n zoom={zoom}\n />\n )}\n </ReportItemRenderer>\n </ItemPositioner>\n {additionalitems.map(ii => {\n const __itemStyle = {\n x: itemStyle.x - ((draggedItem.left - ii.left) * zoom),\n y: itemStyle.y - ((draggedItem.top - ii.top) * zoom),\n };\n return (\n <ItemPositioner\n key={ii.id}\n classNames={`reportItem${isDragging ? ' isDraggingLayerElement' : ''}`}\n style={{\n ...layerStyles(__itemStyle),\n height: ii.height,\n outlineColor: '#4277ff',\n transform: `scale(${zoom})`,\n transformOrigin: '0 0',\n width: ii.width,\n }}\n >\n <ReportItemRenderer item={ii}>\n {ReportItem => (\n <ReportItem\n isDragging={isDragging}\n item={ii}\n itemAccessor={itemAccessor}\n zoom={zoom}\n />\n )}\n </ReportItemRenderer>\n </ItemPositioner>\n );\n })}\n </>\n );\n};\n\nDraggableItemLayer.propTypes = {\n guides: PropTypes.shape({}),\n itemAccessor: PropTypes.func,\n pageRefs: PropTypes.shape({}),\n pages: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n};\n\nDraggableItemLayer.defaultProps = {\n guides: {},\n itemAccessor: () => {},\n pageRefs: {},\n pages: [],\n};\n\nexport default memo(DraggableItemLayer);\n"],"names":["layerStyles","x","y","left","pointerEvents","position","top","zIndex","getDraggedItem","item","defaultItem","details","id","getMemoizedDraggedItem","memoizeOne","getAdditionalItems","activeElems","__itemId","_pages","_acceptedItems","length","index","findIndex","aE","act","slice","items","map","_i","_item","reduce","acc","curr","find","el","undefined","defItem","itemType","getItemStyles","initialOffset","currentOffset","ref","pageGuides","zoom","current","dropTargetPosition","getBoundingClientRect","finalX","finalY","initialX","initialY","newYposition","newXposition","newItem","_guides","calculateGuidePositions","match","proximityListener","newActiveBoxLeft","newActiveBoxTop","haveMatch","Object","keys","haveXMatch","haveYMatch","forEach","axis","activeBoxGuides","matchedArray","proximity","activeBoxProximityIndex","activeBoxIndex","matchedBoxProximityIndex","matchedBoxIndex","value","DraggableItemLayer","guides","itemAccessor","pageRefs","pages","useDragLayer","monitor","getSourceClientOffset","getInitialSourceClientOffset","isDragging","getItem","getItemType","usePropContext","acceptedItems","useBuilderContext","activeElement","draggedItem","pageID","element","document","elementFromPoint","closest","getAttribute","itemStyle","additionalitems","mergedItem","getMergedItem","_jsxs","_jsx","height","outlineColor","transform","transformOrigin","width","ReportItem","ii","__itemStyle","propTypes","PropTypes","shape","func","arrayOf","defaultProps","memo"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DraggableItemLayer.js","sources":["../../../../src/components/DraggableItem/DraggableItemLayer.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport memoizeOne from 'memoize-one';\nimport { useDragLayer } from 'react-dnd';\nimport ReportItemRenderer from '../Builder/ReportItemRenderer';\nimport { proximityListener, calculateGuidePositions } from '../../utils/functions';\nimport ItemPositioner from '../ItemPositioner';\nimport { useBuilderStore } from '../../contexts/BuilderContext';\nimport { usePropStore } from '../../contexts/PropContext';\nimport getMergedItem from '../../utils/getMergedItem';\n\nconst layerStyles = ({ x, y }) => ({\n left: x,\n pointerEvents: 'none',\n position: 'fixed',\n top: y,\n zIndex: 100,\n});\n\nconst getDraggedItem = ({ defaultItem = {}, details }, item) => ({\n ...defaultItem,\n ...details,\n ...item,\n id: 'temp',\n});\n\nconst getMemoizedDraggedItem = memoizeOne(getDraggedItem);\n\nconst getAdditionalItems = memoizeOne((activeElems, __itemId, _pages, _acceptedItems) => {\n if (activeElems === null || activeElems.length === 1) return [];\n const index = activeElems.findIndex(aE => aE === __itemId);\n const act = [...activeElems.slice(0, index), ...activeElems.slice(index + 1)];\n const items = act.map(_i => {\n const _item = _pages.reduce((acc, curr) => {\n if (acc) {\n return acc;\n }\n return curr.items.find(el => el.id === _i);\n }, undefined);\n const defItem = (_acceptedItems[_item.itemType]\n && _acceptedItems[_item.itemType].defaultItem);\n return { ...defItem, ..._item };\n });\n return items;\n});\n\nfunction getItemStyles(initialOffset, currentOffset, ref, pageGuides, item, zoom) {\n if (ref.current) {\n const dropTargetPosition = ref.current.getBoundingClientRect();\n const { x: finalX, y: finalY } = currentOffset;\n const { x: initialX, y: initialY } = initialOffset;\n const newYposition = finalY > initialY\n ? (initialY + (finalY - initialY)) - dropTargetPosition.top\n : initialY - (initialY - finalY) - dropTargetPosition.top;\n\n const newXposition = finalX > initialX\n ? (initialX + (finalX - initialX)) - dropTargetPosition.left\n : initialX - (initialX - finalX) - dropTargetPosition.left;\n\n const newItem = {\n ...item,\n left: newXposition / zoom,\n top: newYposition / zoom,\n };\n const _guides = {\n ...pageGuides,\n [item.id]: {\n ...pageGuides[item.id],\n x: calculateGuidePositions(newItem, 'x', zoom),\n y: calculateGuidePositions(newItem, 'y', zoom),\n },\n };\n\n const match = proximityListener(item.id, _guides);\n let newActiveBoxLeft = newXposition;\n let newActiveBoxTop = newYposition;\n const haveMatch = Object.keys(match).length > 0;\n const haveXMatch = haveMatch && match.x;\n const haveYMatch = haveMatch && match.y;\n Object.keys(match).forEach(axis => {\n const { activeBoxGuides, matchedArray, proximity } = match[axis];\n const activeBoxProximityIndex = proximity.activeBoxIndex;\n const matchedBoxProximityIndex = proximity.matchedBoxIndex;\n if (axis === 'x') {\n if (activeBoxGuides[activeBoxProximityIndex] > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxLeft = newItem.left - proximity.value;\n } else {\n newActiveBoxLeft = newItem.left + proximity.value;\n }\n } else if (activeBoxGuides[activeBoxProximityIndex]\n > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxTop = newItem.top - proximity.value;\n } else {\n newActiveBoxTop = newItem.top + proximity.value;\n }\n });\n return {\n x: (newActiveBoxLeft * (haveXMatch ? zoom : 1)) + dropTargetPosition.left,\n y: (newActiveBoxTop * (haveYMatch ? zoom : 1)) + dropTargetPosition.top,\n };\n }\n}\n\nconst DraggableItemLayer = ({\n guides = {},\n pageRefs = {},\n pages = [],\n}) => {\n const {\n currentOffset,\n initialOffset,\n isDragging,\n item,\n } = useDragLayer(monitor => ({\n currentOffset: monitor.getSourceClientOffset(),\n initialOffset: monitor.getInitialSourceClientOffset(),\n isDragging: monitor.isDragging(),\n item: monitor.getItem(),\n itemType: monitor.getItemType(),\n }));\n\n const activeElement = useBuilderStore(state => state.activeElement);\n const zoom = useBuilderStore(state => state.zoom);\n\n const acceptedItems = usePropStore(state => state.acceptedItems);\n const itemAccessor = usePropStore(state => state.itemAccessor);\n\n if (!currentOffset || !isDragging) {\n return null;\n }\n let draggedItem = pages.reduce((acc, curr) => {\n if (acc) {\n return acc;\n }\n return curr.items.find(el => el.id === item.id);\n }, undefined);\n\n let pageID;\n if (draggedItem) {\n pageID = draggedItem.pageID;\n } else {\n draggedItem = getMemoizedDraggedItem(acceptedItems[item.itemType], item);\n }\n const element = document.elementFromPoint(currentOffset.x, currentOffset.y);\n if (element && element.closest('.jfReport-page')) { // add polyfill if will we use that one\n pageID = element.closest('.jfReport-page').getAttribute('data-id');\n if (!draggedItem.pageID) {\n draggedItem.pageID = pageID;\n }\n }\n\n const ref = pageRefs[pageID];\n let itemStyle = {};\n // No page\n if (!ref || !ref.current) {\n itemStyle = {\n x: currentOffset.x,\n y: currentOffset.y,\n };\n } else { // In the page\n const pageGuides = guides[pageID];\n itemStyle = getItemStyles(\n initialOffset,\n currentOffset,\n pageRefs[pageID],\n pageGuides,\n draggedItem,\n zoom,\n );\n }\n\n const additionalitems = getAdditionalItems(\n activeElement,\n draggedItem.id,\n pages,\n acceptedItems,\n );\n\n const mergedItem = getMergedItem(draggedItem, acceptedItems);\n\n return (\n <>\n <ItemPositioner\n classNames={`reportItem${isDragging ? ' isDraggingLayerElement' : ''}`}\n style={{\n ...layerStyles(itemStyle),\n cursor: isDragging ? 'grabbing' : 'pointer',\n height: draggedItem.height,\n outlineColor: '#4277ff',\n transform: `scale(${zoom})`,\n transformOrigin: '0 0',\n width: draggedItem.width,\n }}\n >\n <ReportItemRenderer item={draggedItem}>\n {ReportItem => (\n <ReportItem\n isDragging={isDragging}\n item={mergedItem}\n itemAccessor={itemAccessor}\n zoom={zoom}\n />\n )}\n </ReportItemRenderer>\n </ItemPositioner>\n {additionalitems.map(ii => {\n const __itemStyle = {\n x: itemStyle.x - ((draggedItem.left - ii.left) * zoom),\n y: itemStyle.y - ((draggedItem.top - ii.top) * zoom),\n };\n return (\n <ItemPositioner\n key={ii.id}\n classNames={`reportItem${isDragging ? ' isDraggingLayerElement' : ''}`}\n style={{\n ...layerStyles(__itemStyle),\n cursor: isDragging ? 'grabbing' : 'pointer',\n height: ii.height,\n outlineColor: '#4277ff',\n transform: `scale(${zoom})`,\n transformOrigin: '0 0',\n width: ii.width,\n }}\n >\n <ReportItemRenderer item={ii}>\n {ReportItem => (\n <ReportItem\n isDragging={isDragging}\n item={ii}\n itemAccessor={itemAccessor}\n zoom={zoom}\n />\n )}\n </ReportItemRenderer>\n </ItemPositioner>\n );\n })}\n </>\n );\n};\n\nDraggableItemLayer.propTypes = {\n guides: PropTypes.shape({}),\n pageRefs: PropTypes.shape({}),\n pages: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n};\n\nexport default memo(DraggableItemLayer);\n"],"names":["layerStyles","x","y","left","pointerEvents","position","top","zIndex","getDraggedItem","item","defaultItem","details","id","getMemoizedDraggedItem","memoizeOne","getAdditionalItems","activeElems","__itemId","_pages","_acceptedItems","length","index","findIndex","aE","act","slice","items","map","_i","_item","reduce","acc","curr","find","el","undefined","defItem","itemType","getItemStyles","initialOffset","currentOffset","ref","pageGuides","zoom","current","dropTargetPosition","getBoundingClientRect","finalX","finalY","initialX","initialY","newYposition","newXposition","newItem","_guides","calculateGuidePositions","match","proximityListener","newActiveBoxLeft","newActiveBoxTop","haveMatch","Object","keys","haveXMatch","haveYMatch","forEach","axis","activeBoxGuides","matchedArray","proximity","activeBoxProximityIndex","activeBoxIndex","matchedBoxProximityIndex","matchedBoxIndex","value","DraggableItemLayer","guides","pageRefs","pages","useDragLayer","monitor","getSourceClientOffset","getInitialSourceClientOffset","isDragging","getItem","getItemType","activeElement","useBuilderStore","state","acceptedItems","usePropStore","itemAccessor","draggedItem","pageID","element","document","elementFromPoint","closest","getAttribute","itemStyle","additionalitems","mergedItem","getMergedItem","_jsxs","_jsx","cursor","height","outlineColor","transform","transformOrigin","width","ReportItem","ii","__itemStyle","propTypes","PropTypes","shape","arrayOf","memo"],"mappings":"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"}
|
|
@@ -62,7 +62,9 @@ var ChartPie = function ChartPie() {
|
|
|
62
62
|
};
|
|
63
63
|
|
|
64
64
|
var Chart = function Chart(_ref) {
|
|
65
|
-
var
|
|
65
|
+
var _ref$item = _ref.item;
|
|
66
|
+
_ref$item = _ref$item === void 0 ? {} : _ref$item;
|
|
67
|
+
var chartType = _ref$item.chartType;
|
|
66
68
|
return chartType === 'column' ? /*#__PURE__*/jsx(ChartColumn, {}) : /*#__PURE__*/jsx(ChartPie, {});
|
|
67
69
|
};
|
|
68
70
|
|
|
@@ -71,9 +73,6 @@ Chart.propTypes = {
|
|
|
71
73
|
chartType: PropTypes.string
|
|
72
74
|
})
|
|
73
75
|
};
|
|
74
|
-
Chart.defaultProps = {
|
|
75
|
-
item: {}
|
|
76
|
-
};
|
|
77
76
|
var settings = [{
|
|
78
77
|
key: 'chartType',
|
|
79
78
|
label: 'Chart Type',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chart.js","sources":["../../../../src/components/Elements/Chart.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n BarChart, Bar, PieChart, Pie, XAxis, YAxis, Legend, ResponsiveContainer, Cell,\n} from 'recharts';\nimport * as icons from '../../utils/icons';\n\nconst COLORS = ['#0088FE', '#00C49F', '#FFBB28', '#FF8042'];\n\nconst data = [\n { name: 'Page A', value: 2400 },\n { name: 'Page B', value: 1398 },\n { name: 'Page C', value: 9800 },\n { name: 'Page D', value: 3908 },\n];\n\nconst ChartColumn = () => (\n <ResponsiveContainer>\n <BarChart\n data={data}\n height={300}\n width={400}\n >\n <XAxis dataKey=\"name\" />\n <YAxis />\n <Bar\n dataKey=\"value\"\n fill=\"#8884d8\"\n isAnimationActive={false}\n />\n </BarChart>\n </ResponsiveContainer>\n);\n\nconst ChartPie = () => (\n <ResponsiveContainer>\n <PieChart\n height={300}\n width={400}\n >\n <Pie\n data={data}\n dataKey=\"value\"\n isAnimationActive={false}\n >\n {data.map((entry, index) => (\n <Cell\n key={`cell-${index.toString()}`}\n fill={COLORS[index % COLORS.length]}\n />\n ))}\n </Pie>\n <Legend height={36} />\n </PieChart>\n </ResponsiveContainer>\n);\n\nconst Chart = ({ item: { chartType } }) => (\n chartType === 'column' ? <ChartColumn /> : <ChartPie />\n);\n\nChart.propTypes = {\n item: PropTypes.shape({\n chartType: PropTypes.string,\n }),\n};\n\
|
|
1
|
+
{"version":3,"file":"Chart.js","sources":["../../../../src/components/Elements/Chart.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n BarChart, Bar, PieChart, Pie, XAxis, YAxis, Legend, ResponsiveContainer, Cell,\n} from 'recharts';\nimport * as icons from '../../utils/icons';\n\nconst COLORS = ['#0088FE', '#00C49F', '#FFBB28', '#FF8042'];\n\nconst data = [\n { name: 'Page A', value: 2400 },\n { name: 'Page B', value: 1398 },\n { name: 'Page C', value: 9800 },\n { name: 'Page D', value: 3908 },\n];\n\nconst ChartColumn = () => (\n <ResponsiveContainer>\n <BarChart\n data={data}\n height={300}\n width={400}\n >\n <XAxis dataKey=\"name\" />\n <YAxis />\n <Bar\n dataKey=\"value\"\n fill=\"#8884d8\"\n isAnimationActive={false}\n />\n </BarChart>\n </ResponsiveContainer>\n);\n\nconst ChartPie = () => (\n <ResponsiveContainer>\n <PieChart\n height={300}\n width={400}\n >\n <Pie\n data={data}\n dataKey=\"value\"\n isAnimationActive={false}\n >\n {data.map((entry, index) => (\n <Cell\n key={`cell-${index.toString()}`}\n fill={COLORS[index % COLORS.length]}\n />\n ))}\n </Pie>\n <Legend height={36} />\n </PieChart>\n </ResponsiveContainer>\n);\n\nconst Chart = ({ item: { chartType } = {} }) => (\n chartType === 'column' ? <ChartColumn /> : <ChartPie />\n);\n\nChart.propTypes = {\n item: PropTypes.shape({\n chartType: PropTypes.string,\n }),\n};\n\nconst settings = [\n {\n key: 'chartType',\n label: 'Chart Type',\n options: [\n {\n icon: icons.pie,\n name: 'pie',\n title: 'Pie Chart',\n },\n {\n icon: icons.column,\n name: 'column',\n title: 'Column Chart',\n },\n ],\n section: 'GENERAL',\n type: 'selectBox',\n },\n];\n\nexport const details = {\n chartType: 'pie',\n height: 300,\n itemType: 'graphic',\n width: 420,\n};\n\nexport default {\n Component: memo(Chart),\n details,\n itemType: 'graphic',\n settings,\n};\n"],"names":["COLORS","data","name","value","ChartColumn","_jsx","_jsxs","ChartPie","map","entry","index","length","toString","Chart","item","chartType","propTypes","PropTypes","shape","string","settings","key","label","options","icon","icons","title","section","type","details","height","itemType","width","Component","memo"],"mappings":"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"}
|
|
@@ -43,8 +43,9 @@ var settings = [{
|
|
|
43
43
|
}
|
|
44
44
|
}];
|
|
45
45
|
var IconElement = function IconElement(_ref2) {
|
|
46
|
-
var _ref2$item = _ref2.item
|
|
47
|
-
|
|
46
|
+
var _ref2$item = _ref2.item;
|
|
47
|
+
_ref2$item = _ref2$item === void 0 ? {} : _ref2$item;
|
|
48
|
+
var iconFillColor = _ref2$item.iconFillColor,
|
|
48
49
|
iconType = _ref2$item.iconType,
|
|
49
50
|
opacity = _ref2$item.opacity;
|
|
50
51
|
var Icon = iconSelector[iconType];
|
|
@@ -64,9 +65,6 @@ IconElement.propTypes = {
|
|
|
64
65
|
width: PropTypes.number
|
|
65
66
|
})
|
|
66
67
|
};
|
|
67
|
-
IconElement.defaultProps = {
|
|
68
|
-
item: {}
|
|
69
|
-
};
|
|
70
68
|
var details = {
|
|
71
69
|
height: 200,
|
|
72
70
|
iconFillColor: '#000000',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Icon.js","sources":["../../../../src/components/Elements/Icon.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { fieldSet } from '../../utils/staticSettings';\nimport * as icons from '../../utils/iconSelector';\n\nconst ITEM_TYPE = 'icon';\nconst iconStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst settings = [\n {\n key: 'iconType',\n label: 'Icon Type',\n section: 'GENERAL',\n type: 'iconSelectBox',\n },\n {\n ...fieldSet('DETAILS', 'Icon Style'),\n },\n {\n key: 'iconFillColor',\n label: 'Color',\n section: 'DETAILS',\n type: 'colorPicker',\n },\n {\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'DETAILS',\n type: 'slider',\n },\n {\n key: 'sizeSettings',\n label: 'Size',\n section: 'DETAILS',\n type: 'sizeSettings',\n value: (_, { height, width }) => `${width}x${height}`,\n },\n];\n\nexport const IconElement = ({\n item: {\n iconFillColor,\n iconType,\n opacity,\n },\n}) => {\n const Icon = icons[iconType];\n return (<Icon style={{ fill: iconFillColor, fillOpacity: opacity, ...iconStyle }} />);\n};\n\nIconElement.propTypes = {\n item: PropTypes.shape({\n height: PropTypes.number,\n iconFillColor: PropTypes.string,\n iconType: PropTypes.string,\n opacity: PropTypes.number,\n width: PropTypes.number,\n }),\n};\n\
|
|
1
|
+
{"version":3,"file":"Icon.js","sources":["../../../../src/components/Elements/Icon.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { fieldSet } from '../../utils/staticSettings';\nimport * as icons from '../../utils/iconSelector';\n\nconst ITEM_TYPE = 'icon';\nconst iconStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst settings = [\n {\n key: 'iconType',\n label: 'Icon Type',\n section: 'GENERAL',\n type: 'iconSelectBox',\n },\n {\n ...fieldSet('DETAILS', 'Icon Style'),\n },\n {\n key: 'iconFillColor',\n label: 'Color',\n section: 'DETAILS',\n type: 'colorPicker',\n },\n {\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'DETAILS',\n type: 'slider',\n },\n {\n key: 'sizeSettings',\n label: 'Size',\n section: 'DETAILS',\n type: 'sizeSettings',\n value: (_, { height, width }) => `${width}x${height}`,\n },\n];\n\nexport const IconElement = ({\n item: {\n iconFillColor,\n iconType,\n opacity,\n } = {},\n}) => {\n const Icon = icons[iconType];\n return (<Icon style={{ fill: iconFillColor, fillOpacity: opacity, ...iconStyle }} />);\n};\n\nIconElement.propTypes = {\n item: PropTypes.shape({\n height: PropTypes.number,\n iconFillColor: PropTypes.string,\n iconType: PropTypes.string,\n opacity: PropTypes.number,\n width: PropTypes.number,\n }),\n};\n\nconst details = {\n height: 200,\n iconFillColor: '#000000',\n iconType: 'heart',\n itemType: ITEM_TYPE,\n opacity: 1,\n width: 200,\n};\n\nexport default {\n Component: memo(IconElement),\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","iconStyle","height","width","settings","key","label","section","type","fieldSet","range","value","_","IconElement","item","iconFillColor","iconType","opacity","Icon","icons","_jsx","fill","fillOpacity","propTypes","PropTypes","shape","number","string","details","itemType","Component","memo"],"mappings":";;;;;;;;;;;;AAKA,IAAMA,SAAS,GAAG,MAAlB;AACA,IAAMC,SAAS,GAAG;AAChBC,EAAAA,MAAM,EAAE,MADQ;AAEhBC,EAAAA,KAAK,EAAE;AAFS,CAAlB;AAKA,IAAMC,QAAQ,GAAG,CACf;AACEC,EAAAA,GAAG,EAAE,UADP;AAEEC,EAAAA,KAAK,EAAE,WAFT;AAGEC,EAAAA,OAAO,EAAE,SAHX;AAIEC,EAAAA,IAAI,EAAE;AAJR,CADe,oBAQVC,QAAQ,CAAC,SAAD,EAAY,YAAZ,CARE,GAUf;AACEJ,EAAAA,GAAG,EAAE,eADP;AAEEC,EAAAA,KAAK,EAAE,OAFT;AAGEC,EAAAA,OAAO,EAAE,SAHX;AAIEC,EAAAA,IAAI,EAAE;AAJR,CAVe,EAgBf;AACEH,EAAAA,GAAG,EAAE,SADP;AAEEC,EAAAA,KAAK,EAAE,SAFT;AAGEI,EAAAA,KAAK,EAAE,CAAC,CAAD,EAAI,GAAJ,CAHT;AAIEH,EAAAA,OAAO,EAAE,SAJX;AAKEC,EAAAA,IAAI,EAAE;AALR,CAhBe,EAuBf;AACEH,EAAAA,GAAG,EAAE,cADP;AAEEC,EAAAA,KAAK,EAAE,MAFT;AAGEC,EAAAA,OAAO,EAAE,SAHX;AAIEC,EAAAA,IAAI,EAAE,cAJR;AAKEG,EAAAA,KAAK,EAAE,eAACC,CAAD;AAAA,QAAMV,MAAN,QAAMA,MAAN;AAAA,QAAcC,KAAd,QAAcA,KAAd;AAAA,qBAA6BA,KAA7B,cAAsCD,MAAtC;AAAA;AALT,CAvBe,CAAjB;IAgCaW,WAAW,GAAG,SAAdA,WAAc,QAMrB;AAAA,yBALJC,IAKI;AAAA,uCADA,EACA;AAAA,MAJFC,aAIE,cAJFA,aAIE;AAAA,MAHFC,QAGE,cAHFA,QAGE;AAAA,MAFFC,OAEE,cAFFA,OAEE;AACJ,MAAMC,IAAI,GAAGC,YAAK,CAACH,QAAD,CAAlB;AACA,sBAAQI,IAAC,IAAD;AAAM,IAAA,KAAK;AAAIC,MAAAA,IAAI,EAAEN,aAAV;AAAyBO,MAAAA,WAAW,EAAEL;AAAtC,OAAkDhB,SAAlD;AAAX,IAAR;AACD;AAEDY,WAAW,CAACU,SAAZ,GAAwB;AACtBT,EAAAA,IAAI,EAAEU,SAAS,CAACC,KAAV,CAAgB;AACpBvB,IAAAA,MAAM,EAAEsB,SAAS,CAACE,MADE;AAEpBX,IAAAA,aAAa,EAAES,SAAS,CAACG,MAFL;AAGpBX,IAAAA,QAAQ,EAAEQ,SAAS,CAACG,MAHA;AAIpBV,IAAAA,OAAO,EAAEO,SAAS,CAACE,MAJC;AAKpBvB,IAAAA,KAAK,EAAEqB,SAAS,CAACE;AALG,GAAhB;AADgB,CAAxB;AAUA,IAAME,OAAO,GAAG;AACd1B,EAAAA,MAAM,EAAE,GADM;AAEda,EAAAA,aAAa,EAAE,SAFD;AAGdC,EAAAA,QAAQ,EAAE,OAHI;AAIda,EAAAA,QAAQ,EAAE7B,SAJI;AAKdiB,EAAAA,OAAO,EAAE,CALK;AAMdd,EAAAA,KAAK,EAAE;AANO,CAAhB;AASA,WAAe;AACb2B,EAAAA,SAAS,eAAEC,IAAI,CAAClB,WAAD,CADF;AAEbe,EAAAA,OAAO,EAAPA,OAFa;AAGbC,EAAAA,QAAQ,EAAE7B,SAHG;AAIbI,EAAAA,QAAQ,EAARA;AAJa,CAAf;;;;;"}
|
|
@@ -21,7 +21,7 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
21
21
|
|
|
22
22
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
23
23
|
var ITEM_TYPE = 'image';
|
|
24
|
-
var DEFAULT_LOGO_SRC = 'https://
|
|
24
|
+
var DEFAULT_LOGO_SRC = 'https://cdn.jotfor.ms/assets/resources/icon/jotform-logomark-transparent-400x400.png';
|
|
25
25
|
var imageWrapperStyle = {
|
|
26
26
|
height: 'inherit',
|
|
27
27
|
width: 'inherit'
|
|
@@ -86,7 +86,7 @@ var settings = [{
|
|
|
86
86
|
type: 'slider'
|
|
87
87
|
}, {
|
|
88
88
|
key: 'url',
|
|
89
|
-
label: 'Enter
|
|
89
|
+
label: 'Enter URL',
|
|
90
90
|
section: 'ENTER URL',
|
|
91
91
|
showWhen: {
|
|
92
92
|
url: ''
|
|
@@ -95,8 +95,12 @@ var settings = [{
|
|
|
95
95
|
useImageSizeUpdate: true
|
|
96
96
|
}];
|
|
97
97
|
var ImageElement = function ImageElement(_ref2) {
|
|
98
|
-
var item = _ref2.item,
|
|
99
|
-
|
|
98
|
+
var _ref2$item = _ref2.item,
|
|
99
|
+
item = _ref2$item === void 0 ? {
|
|
100
|
+
opacity: 1
|
|
101
|
+
} : _ref2$item,
|
|
102
|
+
_ref2$itemAccessor = _ref2.itemAccessor,
|
|
103
|
+
itemAccessor = _ref2$itemAccessor === void 0 ? function () {} : _ref2$itemAccessor;
|
|
100
104
|
|
|
101
105
|
var _useState = useState(true),
|
|
102
106
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -113,10 +117,11 @@ var ImageElement = function ImageElement(_ref2) {
|
|
|
113
117
|
url = item.url;
|
|
114
118
|
var additionalProps = itemAccessor(item);
|
|
115
119
|
var defaultURL = (additionalProps === null || additionalProps === void 0 ? void 0 : additionalProps.defaultURL) || DEFAULT_LOGO_SRC;
|
|
120
|
+
var imageUrl = (additionalProps === null || additionalProps === void 0 ? void 0 : additionalProps.url) || url;
|
|
116
121
|
useEffect(function () {
|
|
117
122
|
setIsLoading(true);
|
|
118
123
|
setIsErrored(false);
|
|
119
|
-
}, [
|
|
124
|
+
}, [imageUrl, setIsLoading, setIsErrored]); // TODO :: do we want to show a loading placeholder?
|
|
120
125
|
|
|
121
126
|
return /*#__PURE__*/jsxs(Fragment, {
|
|
122
127
|
children: [/*#__PURE__*/jsx("div", {
|
|
@@ -132,7 +137,7 @@ var ImageElement = function ImageElement(_ref2) {
|
|
|
132
137
|
onLoad: function onLoad() {
|
|
133
138
|
return setIsLoading(false);
|
|
134
139
|
},
|
|
135
|
-
src:
|
|
140
|
+
src: imageUrl || defaultURL,
|
|
136
141
|
style: _objectSpread(_objectSpread({}, imageStyle), {}, {
|
|
137
142
|
borderRadius: "".concat(roundedCorners, "px"),
|
|
138
143
|
display: isErrored ? 'none' : '',
|
|
@@ -161,12 +166,6 @@ ImageElement.propTypes = {
|
|
|
161
166
|
}),
|
|
162
167
|
itemAccessor: func
|
|
163
168
|
};
|
|
164
|
-
ImageElement.defaultProps = {
|
|
165
|
-
item: {
|
|
166
|
-
opacity: 1
|
|
167
|
-
},
|
|
168
|
-
itemAccessor: function itemAccessor() {}
|
|
169
|
-
};
|
|
170
169
|
var details = {
|
|
171
170
|
height: 400,
|
|
172
171
|
itemType: ITEM_TYPE,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Image.js","sources":["../../../../src/components/Elements/Image.js"],"sourcesContent":["/* eslint max-len: [\"error\", { \"code\": 120 }] */\nimport { memo, useState, useEffect } from 'react';\nimport {\n func,\n number,\n oneOfType,\n shape,\n string,\n} from 'prop-types';\n\nconst ITEM_TYPE = 'image';\n\nconst DEFAULT_LOGO_SRC = 'https://
|
|
1
|
+
{"version":3,"file":"Image.js","sources":["../../../../src/components/Elements/Image.js"],"sourcesContent":["/* eslint max-len: [\"error\", { \"code\": 120 }] */\nimport { memo, useState, useEffect } from 'react';\nimport {\n func,\n number,\n oneOfType,\n shape,\n string,\n} from 'prop-types';\n\nconst ITEM_TYPE = 'image';\n\nconst DEFAULT_LOGO_SRC = 'https://cdn.jotfor.ms/assets/resources/icon/jotform-logomark-transparent-400x400.png';\n\nconst imageWrapperStyle = {\n height: 'inherit',\n width: 'inherit',\n};\n\nconst imageStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst settings = [\n {\n hideWhen: {\n url: '',\n },\n ifValueEquals: {\n '': {\n height: {\n cast: 'integer',\n value: 400,\n },\n width: {\n cast: 'integer',\n value: 400,\n },\n },\n },\n key: 'url',\n section: 'GENERAL',\n type: 'imageThumbnailWithDelete',\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'sizeSettings',\n label: 'Size',\n section: 'GENERAL',\n type: 'sizeSettings',\n value: (_, { height, width }) => `${width}x${height}`,\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'roundedCorners',\n label: 'Rounded Corners',\n range: [0, 30],\n section: 'GENERAL',\n showWhen: {\n shapeType: 'rectangle',\n },\n simple: true,\n type: 'slider',\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'GENERAL',\n type: 'slider',\n },\n {\n key: 'url',\n label: 'Enter URL',\n section: 'ENTER URL',\n showWhen: { url: '' },\n type: 'enterImageURL',\n useImageSizeUpdate: true,\n },\n];\n\nexport const ImageElement = ({\n item = { opacity: 1 },\n itemAccessor = () => {},\n}) => {\n const [isLoading, setIsLoading] = useState(true);\n const [isErrored, setIsErrored] = useState(false);\n\n const {\n opacity,\n roundedCorners,\n url,\n } = item;\n\n const additionalProps = itemAccessor(item);\n const defaultURL = additionalProps?.defaultURL || DEFAULT_LOGO_SRC;\n const imageUrl = additionalProps?.url || url;\n\n useEffect(() => {\n setIsLoading(true);\n setIsErrored(false);\n }, [imageUrl, setIsLoading, setIsErrored]);\n\n // TODO :: do we want to show a loading placeholder?\n\n return (\n <>\n <div\n style={{\n ...imageWrapperStyle,\n display: isLoading || isErrored ? 'none' : 'block',\n }}\n >\n <img\n alt=\"reportImage\"\n onError={() => {\n setIsLoading(false);\n setIsErrored(true);\n }}\n onLoad={() => setIsLoading(false)}\n src={imageUrl || defaultURL}\n style={{\n ...imageStyle,\n borderRadius: `${roundedCorners}px`,\n display: isErrored ? 'none' : '',\n opacity: parseFloat(opacity),\n }}\n />\n </div>\n {isErrored && (\n <div\n style={{\n ...imageWrapperStyle,\n background: '#fafafa',\n paddingTop: '40%',\n textAlign: 'center',\n }}\n >\n Image was not loaded!\n </div>\n )}\n </>\n );\n};\n\nImageElement.propTypes = {\n item: shape({\n defaultURL: string,\n height: oneOfType([\n number,\n string,\n ]),\n id: string,\n opacity: oneOfType([\n number,\n string,\n ]),\n roundedCorners: oneOfType([\n number,\n string,\n ]),\n url: string,\n width: oneOfType([\n number,\n string,\n ]),\n }),\n itemAccessor: func,\n};\n\nconst details = {\n height: 400,\n itemType: ITEM_TYPE,\n opacity: 1,\n roundedCorners: 0,\n url: '',\n width: 400,\n};\n\nexport default {\n Component: memo(ImageElement),\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","DEFAULT_LOGO_SRC","imageWrapperStyle","height","width","imageStyle","settings","hideWhen","url","ifValueEquals","cast","value","key","section","type","label","_","range","showWhen","shapeType","simple","useImageSizeUpdate","ImageElement","item","opacity","itemAccessor","useState","isLoading","setIsLoading","isErrored","setIsErrored","roundedCorners","additionalProps","defaultURL","imageUrl","useEffect","_jsxs","_jsx","display","borderRadius","parseFloat","background","paddingTop","textAlign","propTypes","shape","string","oneOfType","number","id","func","details","itemType","Component","memo"],"mappings":"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"}
|
|
@@ -2,8 +2,9 @@ import { memo, useRef, useCallback, useEffect } from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import TextEditor from '../TextEditor/TextEditor.js';
|
|
4
4
|
import { fontTypes } from '../../constants/fonts.js';
|
|
5
|
-
import {
|
|
5
|
+
import { useBuilderStore } from '../../contexts/BuilderContext.js';
|
|
6
6
|
import { divider } from '../../utils/staticSettings.js';
|
|
7
|
+
import { useTranslatedTexts } from '../../utils/hooks.js';
|
|
7
8
|
import { jsx } from 'react/jsx-runtime';
|
|
8
9
|
|
|
9
10
|
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; }
|
|
@@ -31,18 +32,24 @@ var defaultItem = {
|
|
|
31
32
|
value: ''
|
|
32
33
|
};
|
|
33
34
|
var RichTextElement = function RichTextElement(_ref) {
|
|
34
|
-
var isSelected = _ref.isSelected,
|
|
35
|
-
_ref$
|
|
36
|
-
|
|
35
|
+
var _ref$isSelected = _ref.isSelected,
|
|
36
|
+
isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected,
|
|
37
|
+
_ref$item = _ref.item;
|
|
38
|
+
_ref$item = _ref$item === void 0 ? defaultItem : _ref$item;
|
|
39
|
+
var fontFamily = _ref$item.fontFamily,
|
|
37
40
|
id = _ref$item.id,
|
|
38
41
|
isLocked = _ref$item.isLocked,
|
|
39
42
|
opacity = _ref$item.opacity,
|
|
40
43
|
value = _ref$item.value,
|
|
41
|
-
onItemChange = _ref.onItemChange
|
|
44
|
+
_ref$onItemChange = _ref.onItemChange,
|
|
45
|
+
onItemChange = _ref$onItemChange === void 0 ? function () {} : _ref$onItemChange;
|
|
42
46
|
var reportItem = useRef({});
|
|
47
|
+
var isTextEditorOpen = useBuilderStore(function (state) {
|
|
48
|
+
return state.isTextEditorOpen;
|
|
49
|
+
});
|
|
43
50
|
|
|
44
|
-
var
|
|
45
|
-
|
|
51
|
+
var _useTranslatedTexts = useTranslatedTexts(),
|
|
52
|
+
CLICK_TO_EDIT_TEXT = _useTranslatedTexts.CLICK_TO_EDIT_TEXT;
|
|
46
53
|
|
|
47
54
|
var textStyle = {
|
|
48
55
|
fontFamily: fontFamily,
|
|
@@ -54,7 +61,7 @@ var RichTextElement = function RichTextElement(_ref) {
|
|
|
54
61
|
}, {
|
|
55
62
|
value: newValue
|
|
56
63
|
});
|
|
57
|
-
}, [id]);
|
|
64
|
+
}, [id, onItemChange]);
|
|
58
65
|
|
|
59
66
|
var onFocus = function onFocus(e) {
|
|
60
67
|
e.currentTarget.parentElement.setAttribute('draggable', false);
|
|
@@ -75,7 +82,7 @@ var RichTextElement = function RichTextElement(_ref) {
|
|
|
75
82
|
handleSave: handleSave,
|
|
76
83
|
isLocked: isLocked,
|
|
77
84
|
isSelected: isSelected,
|
|
78
|
-
placeholder:
|
|
85
|
+
placeholder: CLICK_TO_EDIT_TEXT
|
|
79
86
|
})
|
|
80
87
|
});
|
|
81
88
|
};
|
|
@@ -90,11 +97,6 @@ RichTextElement.propTypes = {
|
|
|
90
97
|
}),
|
|
91
98
|
onItemChange: PropTypes.func
|
|
92
99
|
};
|
|
93
|
-
RichTextElement.defaultProps = {
|
|
94
|
-
isSelected: false,
|
|
95
|
-
item: {},
|
|
96
|
-
onItemChange: function onItemChange() {}
|
|
97
|
-
};
|
|
98
100
|
var details = {
|
|
99
101
|
height: 65,
|
|
100
102
|
itemType: ITEM_TYPE,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RichText.js","sources":["../../../../src/components/Elements/RichText.js"],"sourcesContent":["import {\n memo, useEffect, useRef, useCallback,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport TextEditor from '../TextEditor';\nimport { fontTypes } from '../../constants/fonts';\nimport {
|
|
1
|
+
{"version":3,"file":"RichText.js","sources":["../../../../src/components/Elements/RichText.js"],"sourcesContent":["import {\n memo, useEffect, useRef, useCallback,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport TextEditor from '../TextEditor';\nimport { fontTypes } from '../../constants/fonts';\nimport { useBuilderStore } from '../../contexts/BuilderContext';\nimport { divider } from '../../utils/staticSettings';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst ITEM_TYPE = 'text';\n\nconst settings = [\n {\n key: 'fontFamily',\n label: 'Font Family',\n options: fontTypes.fonts,\n section: 'GENERAL',\n type: 'dropdown',\n },\n {\n ...divider('GENERAL'),\n },\n {\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'GENERAL',\n type: 'slider',\n },\n];\n\nconst defaultItem = {\n fontFamily: 'Circular',\n opacity: 1,\n value: '',\n};\n\nexport const RichTextElement = ({\n isSelected = false,\n item: {\n fontFamily,\n id,\n isLocked,\n opacity,\n value,\n } = defaultItem,\n onItemChange = () => {},\n}) => {\n const reportItem = useRef({});\n const isTextEditorOpen = useBuilderStore(state => state.isTextEditorOpen);\n const { CLICK_TO_EDIT_TEXT } = useTranslatedTexts();\n\n const textStyle = {\n fontFamily,\n opacity,\n };\n\n const handleSave = useCallback(newValue => {\n onItemChange(\n { id },\n { value: newValue },\n );\n }, [id, onItemChange]);\n\n const onFocus = e => {\n e.currentTarget.parentElement.setAttribute('draggable', false);\n };\n\n useEffect(() => {\n if (!isTextEditorOpen) {\n reportItem.current.parentElement.setAttribute('draggable', true);\n }\n }, [isTextEditorOpen]);\n\n return (\n <div\n ref={reportItem}\n className=\"reportItemInner f-height\"\n onFocus={onFocus}\n style={textStyle}\n >\n <TextEditor\n content={value}\n handleSave={handleSave}\n isLocked={isLocked}\n isSelected={isSelected}\n placeholder={CLICK_TO_EDIT_TEXT}\n />\n </div>\n );\n};\n\nRichTextElement.propTypes = {\n isSelected: PropTypes.bool,\n item: PropTypes.shape({\n fontFamily: PropTypes.string,\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n opacity: PropTypes.number,\n value: PropTypes.string,\n }),\n onItemChange: PropTypes.func,\n};\n\nconst details = {\n height: 65,\n itemType: ITEM_TYPE,\n width: 350,\n};\n\nexport default {\n Component: memo(RichTextElement),\n defaultItem,\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","settings","key","label","options","fontTypes","fonts","section","type","divider","range","defaultItem","fontFamily","opacity","value","RichTextElement","isSelected","item","id","isLocked","onItemChange","reportItem","useRef","isTextEditorOpen","useBuilderStore","state","useTranslatedTexts","CLICK_TO_EDIT_TEXT","textStyle","handleSave","useCallback","newValue","onFocus","e","currentTarget","parentElement","setAttribute","useEffect","current","_jsx","propTypes","PropTypes","bool","shape","string","number","func","details","height","itemType","width","Component","memo"],"mappings":"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"}
|
|
@@ -356,7 +356,8 @@ var defaultItem = {
|
|
|
356
356
|
};
|
|
357
357
|
var ShapeElement = function ShapeElement(_ref2) {
|
|
358
358
|
var _ref2$item = _ref2.item;
|
|
359
|
-
|
|
359
|
+
_ref2$item = _ref2$item === void 0 ? defaultItem : _ref2$item;
|
|
360
|
+
_ref2$item.height;
|
|
360
361
|
var lineDirection = _ref2$item.lineDirection,
|
|
361
362
|
lineSize = _ref2$item.lineSize,
|
|
362
363
|
lineType = _ref2$item.lineType,
|
|
@@ -421,9 +422,6 @@ ShapeElement.propTypes = {
|
|
|
421
422
|
width: PropTypes.number
|
|
422
423
|
})
|
|
423
424
|
};
|
|
424
|
-
ShapeElement.defaultProps = {
|
|
425
|
-
item: _objectSpread({}, defaultItem)
|
|
426
|
-
};
|
|
427
425
|
var details = {
|
|
428
426
|
height: 200,
|
|
429
427
|
itemType: ITEM_TYPE,
|