@jotforminc/dnd-builder 2.0.0-beta.0 → 2.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 +159 -0
- package/lib/cjs/assets/search.svg.js +6 -6
- package/lib/cjs/assets/svg/all_slides.svg.js +28 -34
- package/lib/cjs/assets/svg/all_slides.svg.js.map +1 -1
- package/lib/cjs/assets/svg/arrow_down.svg.js +6 -6
- package/lib/cjs/assets/svg/arrow_left.svg.js +6 -6
- package/lib/cjs/assets/svg/arrow_right.svg.js +6 -6
- package/lib/cjs/assets/svg/arrow_up.svg.js +6 -6
- package/lib/cjs/assets/svg/close.svg.js +6 -6
- package/lib/cjs/assets/svg/contextmenu/moveToBack.svg.js +18 -18
- package/lib/cjs/assets/svg/contextmenu/moveToBackward.svg.js +18 -18
- package/lib/cjs/assets/svg/contextmenu/moveToForward.svg.js +18 -18
- package/lib/cjs/assets/svg/contextmenu/moveToFront.svg.js +18 -18
- package/lib/cjs/assets/svg/customize.svg.js +6 -6
- package/lib/cjs/assets/svg/duplicate.svg.js +5 -5
- package/lib/cjs/assets/svg/fit_screen.svg.js +7 -9
- package/lib/cjs/assets/svg/fit_screen.svg.js.map +1 -1
- package/lib/cjs/assets/svg/heart_rating.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-arrow-diverge.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-arrow-down-left.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-arrow-down-right.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-arrow-down.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-arrow-left.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-arrow-right.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-arrow-up-left.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-arrow-up-right.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-down-circle.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-down-double.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-down.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-left-circle.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-left-double.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-left.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-right-circle.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-right-double.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-right.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-up-circle.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-up-double.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-caret-up.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-cloud.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-download.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-eye.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-folder.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-heart.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-home.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-thumbs-down.svg.js +6 -6
- package/lib/cjs/assets/svg/icon-selector/jfc_icon_solid-thumbs-up.svg.js +6 -6
- package/lib/cjs/assets/svg/loading_circle.svg.js +6 -6
- package/lib/cjs/assets/svg/minus.svg.js +11 -11
- package/lib/cjs/assets/svg/page-actions/duplicate_line.svg.js +5 -5
- package/lib/cjs/assets/svg/page-actions/trash_line.svg.js +5 -5
- package/lib/cjs/assets/svg/page_settings.svg.js +27 -33
- package/lib/cjs/assets/svg/page_settings.svg.js.map +1 -1
- package/lib/cjs/assets/svg/placeholder/bar.svg.js +14 -14
- package/lib/cjs/assets/svg/placeholder/basic.svg.js +47 -47
- package/lib/cjs/assets/svg/placeholder/column.svg.js +14 -14
- package/lib/cjs/assets/svg/placeholder/donut.svg.js +7 -7
- package/lib/cjs/assets/svg/placeholder/grid.svg.js +18 -18
- package/lib/cjs/assets/svg/placeholder/pie.svg.js +11 -13
- package/lib/cjs/assets/svg/placeholder/pie.svg.js.map +1 -1
- package/lib/cjs/assets/svg/plus.svg.js +5 -5
- package/lib/cjs/assets/svg/presentation/attachment.svg.js +6 -6
- package/lib/cjs/assets/svg/presentation/download.svg.js +5 -5
- package/lib/cjs/assets/svg/presentation/enter_fullscreen.svg.js +9 -11
- package/lib/cjs/assets/svg/presentation/enter_fullscreen.svg.js.map +1 -1
- package/lib/cjs/assets/svg/presentation/exit_fullscreen.svg.js +9 -11
- package/lib/cjs/assets/svg/presentation/exit_fullscreen.svg.js.map +1 -1
- package/lib/cjs/assets/svg/presentation/eye.svg.js +6 -6
- package/lib/cjs/assets/svg/presentation/key.svg.js +6 -6
- package/lib/cjs/assets/svg/presentation/pause.svg.js +6 -6
- package/lib/cjs/assets/svg/presentation/pen.svg.js +6 -6
- package/lib/cjs/assets/svg/presentation/play.svg.js +7 -7
- package/lib/cjs/assets/svg/presentation/print.svg.js +5 -5
- package/lib/cjs/assets/svg/presentation/share.svg.js +5 -5
- package/lib/cjs/assets/svg/rotate.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/align_center.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/align_left.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/align_right.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/chart_bar.svg.js +5 -16
- package/lib/cjs/assets/svg/settings/chart_bar.svg.js.map +1 -1
- package/lib/cjs/assets/svg/settings/chart_basic.svg.js +9 -11
- package/lib/cjs/assets/svg/settings/chart_basic.svg.js.map +1 -1
- package/lib/cjs/assets/svg/settings/chart_column.svg.js +12 -16
- package/lib/cjs/assets/svg/settings/chart_column.svg.js.map +1 -1
- package/lib/cjs/assets/svg/settings/chart_donut.svg.js +12 -16
- package/lib/cjs/assets/svg/settings/chart_donut.svg.js.map +1 -1
- package/lib/cjs/assets/svg/settings/chart_grid.svg.js +20 -28
- package/lib/cjs/assets/svg/settings/chart_grid.svg.js.map +1 -1
- package/lib/cjs/assets/svg/settings/chart_line.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/chart_pie.svg.js +12 -16
- package/lib/cjs/assets/svg/settings/chart_pie.svg.js.map +1 -1
- package/lib/cjs/assets/svg/settings/chart_textGrid.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/drag.svg.js +27 -37
- package/lib/cjs/assets/svg/settings/drag.svg.js.map +1 -1
- package/lib/cjs/assets/svg/settings/ellipse.svg.js +6 -6
- package/lib/cjs/assets/svg/settings/font_bold.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/font_italic.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/font_underline.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/layout.svg.js +12 -12
- package/lib/cjs/assets/svg/settings/line.svg.js +9 -9
- package/lib/cjs/assets/svg/settings/lock.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/rectangle.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/star.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/triangle.svg.js +5 -5
- package/lib/cjs/assets/svg/settings/unlock.svg.js +5 -5
- package/lib/cjs/assets/svg/settings.svg.js +5 -5
- package/lib/cjs/assets/svg/settings_toggle.svg.js +6 -6
- package/lib/cjs/assets/svg/slides.svg.js +14 -18
- package/lib/cjs/assets/svg/slides.svg.js.map +1 -1
- package/lib/cjs/assets/svg/star_rating.svg.js +5 -5
- package/lib/cjs/assets/svg/toolbox/email.svg.js +5 -5
- package/lib/cjs/assets/svg/toolbox/header.svg.js +5 -5
- package/lib/cjs/assets/svg/toolbox/icon.svg.js +13 -19
- package/lib/cjs/assets/svg/toolbox/icon.svg.js.map +1 -1
- package/lib/cjs/assets/svg/toolbox/image.svg.js +8 -18
- package/lib/cjs/assets/svg/toolbox/image.svg.js.map +1 -1
- package/lib/cjs/assets/svg/toolbox/label.svg.js +6 -6
- package/lib/cjs/assets/svg/toolbox/multiple_choice.svg.js +7 -9
- package/lib/cjs/assets/svg/toolbox/multiple_choice.svg.js.map +1 -1
- package/lib/cjs/assets/svg/toolbox/shapes.svg.js +11 -16
- package/lib/cjs/assets/svg/toolbox/shapes.svg.js.map +1 -1
- package/lib/cjs/assets/svg/toolbox/single_choice.svg.js +5 -5
- package/lib/cjs/assets/svg/toolbox/star.svg.js +5 -5
- package/lib/cjs/assets/svg/toolbox/table.svg.js +5 -5
- package/lib/cjs/assets/svg/toolbox/text.svg.js +5 -5
- package/lib/cjs/assets/svg/toolbox/text_element.svg.js +5 -5
- package/lib/cjs/assets/svg/trash.svg.js +5 -5
- package/lib/cjs/components/AlignmentGuides.js +0 -1
- package/lib/cjs/components/AlignmentGuides.js.map +1 -1
- package/lib/cjs/components/Builder/Builder.js +4 -4
- package/lib/cjs/components/Builder/Builder.js.map +1 -1
- package/lib/cjs/components/Builder/ContextMenu.js +2 -2
- package/lib/cjs/components/Builder/ContextMenu.js.map +1 -1
- package/lib/cjs/components/Builder/Element.js +5 -5
- package/lib/cjs/components/Builder/Element.js.map +1 -1
- package/lib/cjs/components/Builder/Page.js +2 -2
- package/lib/cjs/components/Builder/Page.js.map +1 -1
- package/lib/cjs/components/Builder/PageActions.js +0 -2
- package/lib/cjs/components/Builder/PageActions.js.map +1 -1
- package/lib/cjs/components/Builder/PageAdder.js.map +1 -1
- package/lib/cjs/components/Builder/Panel.js +1 -1
- package/lib/cjs/components/Builder/ReportItemRenderer.js.map +1 -1
- package/lib/cjs/components/Builder/Scene.js +5 -4
- package/lib/cjs/components/Builder/Scene.js.map +1 -1
- package/lib/cjs/components/Builder/SearchInput.js +1 -1
- package/lib/cjs/components/Builder/SearchInput.js.map +1 -1
- package/lib/cjs/components/Builder/Tabs.js.map +1 -1
- package/lib/cjs/components/Builder/ZoomControls.js.map +1 -1
- package/lib/cjs/components/DraggableItem/DraggableItem.js +2 -2
- package/lib/cjs/components/DraggableItem/DraggableItem.js.map +1 -1
- package/lib/cjs/components/DraggableItem/DraggableItemActions.js.map +1 -1
- package/lib/cjs/components/DraggableItem/DraggableItemLayer.js +2 -3
- package/lib/cjs/components/DraggableItem/DraggableItemLayer.js.map +1 -1
- package/lib/cjs/components/Elements/Icon.js +1 -1
- package/lib/cjs/components/Elements/Image.js +2 -2
- package/lib/cjs/components/Elements/Image.js.map +1 -1
- package/lib/cjs/components/Elements/RichText.js +2 -2
- package/lib/cjs/components/Elements/RichText.js.map +1 -1
- package/lib/cjs/components/Elements/Shapes.js +1 -1
- package/lib/cjs/components/ErrorBoundary.js +2 -2
- package/lib/cjs/components/ErrorBoundary.js.map +1 -1
- package/lib/cjs/components/PageItemResizer.js +2 -2
- package/lib/cjs/components/PageItemResizer.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js +2 -4
- package/lib/cjs/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
- package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js +1 -2
- package/lib/cjs/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
- package/lib/cjs/components/Panels/LeftPanel/Elements.js +2 -2
- package/lib/cjs/components/Panels/LeftPanel/Elements.js.map +1 -1
- package/lib/cjs/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
- package/lib/cjs/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
- package/lib/cjs/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
- package/lib/cjs/components/Panels/RightPanel/RightPanel.js +1 -1
- package/lib/cjs/components/Panels/RightPanel/RightPanel.js.map +1 -1
- package/lib/cjs/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
- package/lib/cjs/components/Panels/RightPanel/Settings.js +1 -1
- package/lib/cjs/components/Panels/RightPanel/Settings.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js +5 -5
- package/lib/cjs/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js +0 -1
- package/lib/cjs/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js +1 -2
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js +4 -4
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js +2 -2
- package/lib/cjs/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
- package/lib/cjs/components/Presentation/Presentation.js +5 -5
- package/lib/cjs/components/Presentation/Presentation.js.map +1 -1
- package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js +2 -3
- package/lib/cjs/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
- package/lib/cjs/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
- package/lib/cjs/components/Presentation/PresentationWrapper.js +1 -1
- package/lib/cjs/components/Presentation/PresentationWrapper.js.map +1 -1
- package/lib/cjs/components/Preview/Preview.js +6 -5
- package/lib/cjs/components/Preview/Preview.js.map +1 -1
- package/lib/cjs/components/Preview/StaticItem.js +1 -1
- package/lib/cjs/components/Preview/StaticItem.js.map +1 -1
- package/lib/cjs/components/Preview/StaticScene.js +1 -1
- package/lib/cjs/components/Preview/StaticScene.js.map +1 -1
- package/lib/cjs/components/Print/Print.js +1 -1
- package/lib/cjs/components/Print/PrintMode.js +3 -3
- package/lib/cjs/components/Print/PrintModeWithoutContext.js +3 -4
- package/lib/cjs/components/Print/PrintModeWithoutContext.js.map +1 -1
- package/lib/cjs/components/Report.js +9 -7
- package/lib/cjs/components/Report.js.map +1 -1
- package/lib/cjs/components/ReportItemsWrapper.js +0 -1
- package/lib/cjs/components/ReportItemsWrapper.js.map +1 -1
- package/lib/cjs/components/ReportWrapper.js +1 -1
- package/lib/cjs/components/ReportWrapper.js.map +1 -1
- package/lib/cjs/components/Settings/CheckboxGroup.js +1 -2
- package/lib/cjs/components/Settings/CheckboxGroup.js.map +1 -1
- package/lib/cjs/components/Settings/ColorPicker.js +1 -1
- package/lib/cjs/components/Settings/ColorPicker.js.map +1 -1
- package/lib/cjs/components/Settings/Dropdown.js +1 -1
- package/lib/cjs/components/Settings/Dropdown.js.map +1 -1
- package/lib/cjs/components/Settings/ImagePicker/EnterURL.js +1 -1
- package/lib/cjs/components/Settings/ImagePicker/EnterURL.js.map +1 -1
- package/lib/cjs/components/Settings/ImageUrl.js.map +1 -1
- package/lib/cjs/components/Settings/LayoutSizeSettings.js +2 -2
- package/lib/cjs/components/Settings/LayoutSizeSettings.js.map +1 -1
- package/lib/cjs/components/Settings/Orientation.js +1 -1
- package/lib/cjs/components/Settings/Orientation.js.map +1 -1
- package/lib/cjs/components/Settings/PageLayer/LayerItem.js.map +1 -1
- package/lib/cjs/components/Settings/PageLayer/PageLayer.js +1 -1
- package/lib/cjs/components/Settings/PageLayer/PageLayer.js.map +1 -1
- package/lib/cjs/components/Settings/SegmentControl.js +1 -1
- package/lib/cjs/components/Settings/SegmentControl.js.map +1 -1
- package/lib/cjs/components/Settings/SelectBox.js.map +1 -1
- package/lib/cjs/components/Settings/SettingsItemRenderer.js.map +1 -1
- package/lib/cjs/components/Settings/SizeSettings.js +2 -2
- package/lib/cjs/components/Settings/SizeSettings.js.map +1 -1
- package/lib/cjs/components/Settings/Slider.js.map +1 -1
- package/lib/cjs/components/Settings/Textbox.js +1 -1
- package/lib/cjs/components/Settings/Textbox.js.map +1 -1
- package/lib/cjs/components/Settings/Toggle.js.map +1 -1
- package/lib/cjs/components/StaticElements/StaticRichText.js +1 -1
- package/lib/cjs/components/StaticElements/StaticRichText.js.map +1 -1
- package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js +1 -1
- package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
- package/lib/cjs/components/TextEditor/TextEditor.js.map +1 -1
- package/lib/cjs/components/withClickOutside.js +1 -3
- package/lib/cjs/components/withClickOutside.js.map +1 -1
- package/lib/cjs/constants/fonts.js +2 -3
- package/lib/cjs/constants/fonts.js.map +1 -1
- package/lib/cjs/constants/pageSettings.js +1 -1
- package/lib/cjs/constants/reportLayoutSettings.js +2 -2
- package/lib/cjs/constants/reportLayoutSettings.js.map +1 -1
- package/lib/cjs/constants/reportSettings.js +5 -3
- package/lib/cjs/constants/reportSettings.js.map +1 -1
- package/lib/cjs/constants/staticProps.js +1 -1
- package/lib/cjs/styles/_jfDarkTheme.scss +55 -19
- package/lib/cjs/styles/_jfLightTheme.scss +65 -30
- package/lib/cjs/styles/_jfReportsAccordion.scss +1 -2
- package/lib/cjs/styles/_jfReportsChoice.scss +10 -9
- package/lib/cjs/styles/_jfReportsFonts.scss +19 -26
- package/lib/cjs/styles/_jfReportsPages.scss +2 -2
- package/lib/cjs/styles/_jfReportsPanelElements.scss +12 -10
- package/lib/cjs/styles/_jfReportsPanels.scss +1 -2
- package/lib/cjs/styles/_jfReportsSVG.scss +0 -4
- package/lib/cjs/styles/_jfReportsSortableList.scss +17 -14
- package/lib/cjs/styles/_jfReportsToggle.scss +1 -1
- package/lib/cjs/styles/_jfReportsVariables.scss +5 -1
- package/lib/cjs/utils/builderContext.js +4 -4
- package/lib/cjs/utils/builderContext.js.map +1 -1
- package/lib/cjs/utils/fontFallbackMap.js +2 -2
- package/lib/cjs/utils/fontFallbackMap.js.map +1 -1
- package/lib/cjs/utils/functions.js +3 -5
- package/lib/cjs/utils/functions.js.map +1 -1
- package/lib/cjs/utils/getMergedItem.js +1 -1
- package/lib/cjs/utils/getMergedItem.js.map +1 -1
- package/lib/cjs/utils/hooks.js +1 -1
- package/lib/cjs/utils/presentationContext.js +2 -2
- package/lib/cjs/utils/presentationContext.js.map +1 -1
- package/lib/cjs/utils/print.js +0 -1
- package/lib/cjs/utils/print.js.map +1 -1
- package/lib/cjs/utils/propContext.js +2 -2
- package/lib/cjs/utils/propContext.js.map +1 -1
- package/lib/cjs/utils/string.js +0 -1
- package/lib/cjs/utils/string.js.map +1 -1
- package/lib/esm/assets/search.svg.js +6 -6
- package/lib/esm/assets/svg/all_slides.svg.js +28 -34
- package/lib/esm/assets/svg/all_slides.svg.js.map +1 -1
- package/lib/esm/assets/svg/arrow_down.svg.js +6 -6
- package/lib/esm/assets/svg/arrow_left.svg.js +6 -6
- package/lib/esm/assets/svg/arrow_right.svg.js +6 -6
- package/lib/esm/assets/svg/arrow_up.svg.js +6 -6
- package/lib/esm/assets/svg/close.svg.js +6 -6
- package/lib/esm/assets/svg/contextmenu/moveToBack.svg.js +18 -18
- package/lib/esm/assets/svg/contextmenu/moveToBackward.svg.js +18 -18
- package/lib/esm/assets/svg/contextmenu/moveToForward.svg.js +18 -18
- package/lib/esm/assets/svg/contextmenu/moveToFront.svg.js +18 -18
- package/lib/esm/assets/svg/customize.svg.js +6 -6
- package/lib/esm/assets/svg/duplicate.svg.js +5 -5
- package/lib/esm/assets/svg/fit_screen.svg.js +7 -9
- package/lib/esm/assets/svg/fit_screen.svg.js.map +1 -1
- package/lib/esm/assets/svg/heart_rating.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-arrow-diverge.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-arrow-down-left.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-arrow-down-right.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-arrow-down.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-arrow-left.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-arrow-right.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-arrow-up-left.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-arrow-up-right.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-down-circle.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-down-double.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-down.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-left-circle.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-left-double.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-left.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-right-circle.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-right-double.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-right.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-up-circle.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-up-double.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-caret-up.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-cloud.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-download.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-eye.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-folder.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-heart.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-home.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-thumbs-down.svg.js +6 -6
- package/lib/esm/assets/svg/icon-selector/jfc_icon_solid-thumbs-up.svg.js +6 -6
- package/lib/esm/assets/svg/loading_circle.svg.js +6 -6
- package/lib/esm/assets/svg/minus.svg.js +11 -11
- package/lib/esm/assets/svg/page-actions/duplicate_line.svg.js +5 -5
- package/lib/esm/assets/svg/page-actions/trash_line.svg.js +5 -5
- package/lib/esm/assets/svg/page_settings.svg.js +27 -33
- package/lib/esm/assets/svg/page_settings.svg.js.map +1 -1
- package/lib/esm/assets/svg/placeholder/bar.svg.js +14 -14
- package/lib/esm/assets/svg/placeholder/basic.svg.js +47 -47
- package/lib/esm/assets/svg/placeholder/column.svg.js +14 -14
- package/lib/esm/assets/svg/placeholder/donut.svg.js +7 -7
- package/lib/esm/assets/svg/placeholder/grid.svg.js +18 -18
- package/lib/esm/assets/svg/placeholder/pie.svg.js +11 -13
- package/lib/esm/assets/svg/placeholder/pie.svg.js.map +1 -1
- package/lib/esm/assets/svg/plus.svg.js +5 -5
- package/lib/esm/assets/svg/presentation/attachment.svg.js +6 -6
- package/lib/esm/assets/svg/presentation/download.svg.js +5 -5
- package/lib/esm/assets/svg/presentation/enter_fullscreen.svg.js +9 -11
- package/lib/esm/assets/svg/presentation/enter_fullscreen.svg.js.map +1 -1
- package/lib/esm/assets/svg/presentation/exit_fullscreen.svg.js +9 -11
- package/lib/esm/assets/svg/presentation/exit_fullscreen.svg.js.map +1 -1
- package/lib/esm/assets/svg/presentation/eye.svg.js +6 -6
- package/lib/esm/assets/svg/presentation/key.svg.js +6 -6
- package/lib/esm/assets/svg/presentation/pause.svg.js +6 -6
- package/lib/esm/assets/svg/presentation/pen.svg.js +6 -6
- package/lib/esm/assets/svg/presentation/play.svg.js +7 -7
- package/lib/esm/assets/svg/presentation/print.svg.js +5 -5
- package/lib/esm/assets/svg/presentation/share.svg.js +5 -5
- package/lib/esm/assets/svg/rotate.svg.js +5 -5
- package/lib/esm/assets/svg/settings/align_center.svg.js +5 -5
- package/lib/esm/assets/svg/settings/align_left.svg.js +5 -5
- package/lib/esm/assets/svg/settings/align_right.svg.js +5 -5
- package/lib/esm/assets/svg/settings/chart_bar.svg.js +5 -16
- package/lib/esm/assets/svg/settings/chart_bar.svg.js.map +1 -1
- package/lib/esm/assets/svg/settings/chart_basic.svg.js +9 -11
- package/lib/esm/assets/svg/settings/chart_basic.svg.js.map +1 -1
- package/lib/esm/assets/svg/settings/chart_column.svg.js +12 -16
- package/lib/esm/assets/svg/settings/chart_column.svg.js.map +1 -1
- package/lib/esm/assets/svg/settings/chart_donut.svg.js +12 -16
- package/lib/esm/assets/svg/settings/chart_donut.svg.js.map +1 -1
- package/lib/esm/assets/svg/settings/chart_grid.svg.js +20 -28
- package/lib/esm/assets/svg/settings/chart_grid.svg.js.map +1 -1
- package/lib/esm/assets/svg/settings/chart_line.svg.js +5 -5
- package/lib/esm/assets/svg/settings/chart_pie.svg.js +12 -16
- package/lib/esm/assets/svg/settings/chart_pie.svg.js.map +1 -1
- package/lib/esm/assets/svg/settings/chart_textGrid.svg.js +5 -5
- package/lib/esm/assets/svg/settings/drag.svg.js +27 -37
- package/lib/esm/assets/svg/settings/drag.svg.js.map +1 -1
- package/lib/esm/assets/svg/settings/ellipse.svg.js +6 -6
- package/lib/esm/assets/svg/settings/font_bold.svg.js +5 -5
- package/lib/esm/assets/svg/settings/font_italic.svg.js +5 -5
- package/lib/esm/assets/svg/settings/font_underline.svg.js +5 -5
- package/lib/esm/assets/svg/settings/layout.svg.js +12 -12
- package/lib/esm/assets/svg/settings/line.svg.js +9 -9
- package/lib/esm/assets/svg/settings/lock.svg.js +5 -5
- package/lib/esm/assets/svg/settings/rectangle.svg.js +5 -5
- package/lib/esm/assets/svg/settings/star.svg.js +5 -5
- package/lib/esm/assets/svg/settings/triangle.svg.js +5 -5
- package/lib/esm/assets/svg/settings/unlock.svg.js +5 -5
- package/lib/esm/assets/svg/settings.svg.js +5 -5
- package/lib/esm/assets/svg/settings_toggle.svg.js +6 -6
- package/lib/esm/assets/svg/slides.svg.js +14 -18
- package/lib/esm/assets/svg/slides.svg.js.map +1 -1
- package/lib/esm/assets/svg/star_rating.svg.js +5 -5
- package/lib/esm/assets/svg/toolbox/email.svg.js +5 -5
- package/lib/esm/assets/svg/toolbox/header.svg.js +5 -5
- package/lib/esm/assets/svg/toolbox/icon.svg.js +13 -19
- package/lib/esm/assets/svg/toolbox/icon.svg.js.map +1 -1
- package/lib/esm/assets/svg/toolbox/image.svg.js +8 -18
- package/lib/esm/assets/svg/toolbox/image.svg.js.map +1 -1
- package/lib/esm/assets/svg/toolbox/label.svg.js +6 -6
- package/lib/esm/assets/svg/toolbox/multiple_choice.svg.js +7 -9
- package/lib/esm/assets/svg/toolbox/multiple_choice.svg.js.map +1 -1
- package/lib/esm/assets/svg/toolbox/shapes.svg.js +11 -16
- package/lib/esm/assets/svg/toolbox/shapes.svg.js.map +1 -1
- package/lib/esm/assets/svg/toolbox/single_choice.svg.js +5 -5
- package/lib/esm/assets/svg/toolbox/star.svg.js +5 -5
- package/lib/esm/assets/svg/toolbox/table.svg.js +5 -5
- package/lib/esm/assets/svg/toolbox/text.svg.js +5 -5
- package/lib/esm/assets/svg/toolbox/text_element.svg.js +5 -5
- package/lib/esm/assets/svg/trash.svg.js +5 -5
- package/lib/esm/components/AlignmentGuides.js +0 -1
- package/lib/esm/components/AlignmentGuides.js.map +1 -1
- package/lib/esm/components/Builder/Builder.js +4 -4
- package/lib/esm/components/Builder/Builder.js.map +1 -1
- package/lib/esm/components/Builder/ContextMenu.js +2 -2
- package/lib/esm/components/Builder/ContextMenu.js.map +1 -1
- package/lib/esm/components/Builder/Element.js +5 -5
- package/lib/esm/components/Builder/Element.js.map +1 -1
- package/lib/esm/components/Builder/Page.js +2 -2
- package/lib/esm/components/Builder/Page.js.map +1 -1
- package/lib/esm/components/Builder/PageActions.js +0 -2
- package/lib/esm/components/Builder/PageActions.js.map +1 -1
- package/lib/esm/components/Builder/PageAdder.js.map +1 -1
- package/lib/esm/components/Builder/Panel.js +1 -1
- package/lib/esm/components/Builder/ReportItemRenderer.js.map +1 -1
- package/lib/esm/components/Builder/Scene.js +5 -4
- package/lib/esm/components/Builder/Scene.js.map +1 -1
- package/lib/esm/components/Builder/SearchInput.js +1 -1
- package/lib/esm/components/Builder/SearchInput.js.map +1 -1
- package/lib/esm/components/Builder/Tabs.js.map +1 -1
- package/lib/esm/components/Builder/ZoomControls.js.map +1 -1
- package/lib/esm/components/DraggableItem/DraggableItem.js +2 -2
- package/lib/esm/components/DraggableItem/DraggableItem.js.map +1 -1
- package/lib/esm/components/DraggableItem/DraggableItemActions.js.map +1 -1
- package/lib/esm/components/DraggableItem/DraggableItemLayer.js +2 -3
- package/lib/esm/components/DraggableItem/DraggableItemLayer.js.map +1 -1
- package/lib/esm/components/Elements/Icon.js +1 -1
- package/lib/esm/components/Elements/Image.js +2 -2
- package/lib/esm/components/Elements/Image.js.map +1 -1
- package/lib/esm/components/Elements/RichText.js +2 -2
- package/lib/esm/components/Elements/RichText.js.map +1 -1
- package/lib/esm/components/Elements/Shapes.js +1 -1
- package/lib/esm/components/ErrorBoundary.js +2 -2
- package/lib/esm/components/ErrorBoundary.js.map +1 -1
- package/lib/esm/components/PageItemResizer.js +2 -2
- package/lib/esm/components/PageItemResizer.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js +2 -4
- package/lib/esm/components/Panels/AllSlidesPanel/AllSlidesPanel.js.map +1 -1
- package/lib/esm/components/Panels/AllSlidesPanel/PageList.js +1 -2
- package/lib/esm/components/Panels/AllSlidesPanel/PageList.js.map +1 -1
- package/lib/esm/components/Panels/LeftPanel/Elements.js +2 -2
- package/lib/esm/components/Panels/LeftPanel/Elements.js.map +1 -1
- package/lib/esm/components/Panels/LeftPanel/LeftPanel.js.map +1 -1
- package/lib/esm/components/Panels/LeftPanel/LeftPanelCloser.js.map +1 -1
- package/lib/esm/components/Panels/LeftPanel/LeftPanelOpener.js.map +1 -1
- package/lib/esm/components/Panels/RightPanel/RightPanel.js +1 -1
- package/lib/esm/components/Panels/RightPanel/RightPanel.js.map +1 -1
- package/lib/esm/components/Panels/RightPanel/RightPanelToggler.js.map +1 -1
- package/lib/esm/components/Panels/RightPanel/Settings.js +1 -1
- package/lib/esm/components/Panels/RightPanel/Settings.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js +5 -5
- package/lib/esm/components/Panels/SlidesPanel/ListWrapper.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js +0 -1
- package/lib/esm/components/Panels/SlidesPanel/PageThumbnailActions.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js +1 -2
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SlidesPanelToggler.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js +4 -4
- package/lib/esm/components/Panels/SlidesPanel/SortablePageItemRenderer.js.map +1 -1
- package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js +2 -2
- package/lib/esm/components/Panels/SlidesPanel/SortablePageList.js.map +1 -1
- package/lib/esm/components/Presentation/Presentation.js +5 -5
- package/lib/esm/components/Presentation/Presentation.js.map +1 -1
- package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js +2 -3
- package/lib/esm/components/Presentation/PresentationBar/PresentationActions.js.map +1 -1
- package/lib/esm/components/Presentation/PresentationBar/PresentationBar.js.map +1 -1
- package/lib/esm/components/Presentation/PresentationWrapper.js +1 -1
- package/lib/esm/components/Presentation/PresentationWrapper.js.map +1 -1
- package/lib/esm/components/Preview/Preview.js +6 -5
- package/lib/esm/components/Preview/Preview.js.map +1 -1
- package/lib/esm/components/Preview/StaticItem.js +1 -1
- package/lib/esm/components/Preview/StaticItem.js.map +1 -1
- package/lib/esm/components/Preview/StaticScene.js +1 -1
- package/lib/esm/components/Preview/StaticScene.js.map +1 -1
- package/lib/esm/components/Print/Print.js +1 -1
- package/lib/esm/components/Print/PrintMode.js +3 -3
- package/lib/esm/components/Print/PrintModeWithoutContext.js +3 -4
- package/lib/esm/components/Print/PrintModeWithoutContext.js.map +1 -1
- package/lib/esm/components/Report.js +9 -7
- package/lib/esm/components/Report.js.map +1 -1
- package/lib/esm/components/ReportItemsWrapper.js +0 -1
- package/lib/esm/components/ReportItemsWrapper.js.map +1 -1
- package/lib/esm/components/ReportWrapper.js +1 -1
- package/lib/esm/components/ReportWrapper.js.map +1 -1
- package/lib/esm/components/Settings/CheckboxGroup.js +1 -2
- package/lib/esm/components/Settings/CheckboxGroup.js.map +1 -1
- package/lib/esm/components/Settings/ColorPicker.js +1 -1
- package/lib/esm/components/Settings/ColorPicker.js.map +1 -1
- package/lib/esm/components/Settings/Dropdown.js +1 -1
- package/lib/esm/components/Settings/Dropdown.js.map +1 -1
- package/lib/esm/components/Settings/ImagePicker/EnterURL.js +1 -1
- package/lib/esm/components/Settings/ImagePicker/EnterURL.js.map +1 -1
- package/lib/esm/components/Settings/ImageUrl.js.map +1 -1
- package/lib/esm/components/Settings/LayoutSizeSettings.js +2 -2
- package/lib/esm/components/Settings/LayoutSizeSettings.js.map +1 -1
- package/lib/esm/components/Settings/Orientation.js +1 -1
- package/lib/esm/components/Settings/Orientation.js.map +1 -1
- package/lib/esm/components/Settings/PageLayer/LayerItem.js.map +1 -1
- package/lib/esm/components/Settings/PageLayer/PageLayer.js +1 -1
- package/lib/esm/components/Settings/PageLayer/PageLayer.js.map +1 -1
- package/lib/esm/components/Settings/SegmentControl.js +1 -1
- package/lib/esm/components/Settings/SegmentControl.js.map +1 -1
- package/lib/esm/components/Settings/SelectBox.js.map +1 -1
- package/lib/esm/components/Settings/SettingsItemRenderer.js.map +1 -1
- package/lib/esm/components/Settings/SizeSettings.js +2 -2
- package/lib/esm/components/Settings/SizeSettings.js.map +1 -1
- package/lib/esm/components/Settings/Slider.js.map +1 -1
- package/lib/esm/components/Settings/Textbox.js +1 -1
- package/lib/esm/components/Settings/Textbox.js.map +1 -1
- package/lib/esm/components/Settings/Toggle.js.map +1 -1
- package/lib/esm/components/StaticElements/StaticRichText.js +1 -1
- package/lib/esm/components/StaticElements/StaticRichText.js.map +1 -1
- package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js +1 -1
- package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
- package/lib/esm/components/TextEditor/TextEditor.js.map +1 -1
- package/lib/esm/components/withClickOutside.js +1 -3
- package/lib/esm/components/withClickOutside.js.map +1 -1
- package/lib/esm/constants/fonts.js +2 -3
- package/lib/esm/constants/fonts.js.map +1 -1
- package/lib/esm/constants/pageSettings.js +1 -1
- package/lib/esm/constants/reportLayoutSettings.js +2 -2
- package/lib/esm/constants/reportLayoutSettings.js.map +1 -1
- package/lib/esm/constants/reportSettings.js +5 -3
- package/lib/esm/constants/reportSettings.js.map +1 -1
- package/lib/esm/constants/staticProps.js +1 -1
- package/lib/esm/styles/_jfDarkTheme.scss +55 -19
- package/lib/esm/styles/_jfLightTheme.scss +65 -30
- package/lib/esm/styles/_jfReportsAccordion.scss +1 -2
- package/lib/esm/styles/_jfReportsChoice.scss +10 -9
- package/lib/esm/styles/_jfReportsFonts.scss +19 -26
- package/lib/esm/styles/_jfReportsPages.scss +2 -2
- package/lib/esm/styles/_jfReportsPanelElements.scss +12 -10
- package/lib/esm/styles/_jfReportsPanels.scss +1 -2
- package/lib/esm/styles/_jfReportsSVG.scss +0 -4
- package/lib/esm/styles/_jfReportsSortableList.scss +17 -14
- package/lib/esm/styles/_jfReportsToggle.scss +1 -1
- package/lib/esm/styles/_jfReportsVariables.scss +5 -1
- package/lib/esm/utils/builderContext.js +4 -4
- package/lib/esm/utils/builderContext.js.map +1 -1
- package/lib/esm/utils/fontFallbackMap.js +2 -2
- package/lib/esm/utils/fontFallbackMap.js.map +1 -1
- package/lib/esm/utils/functions.js +3 -5
- package/lib/esm/utils/functions.js.map +1 -1
- package/lib/esm/utils/getMergedItem.js +1 -1
- package/lib/esm/utils/getMergedItem.js.map +1 -1
- package/lib/esm/utils/hooks.js +1 -1
- package/lib/esm/utils/presentationContext.js +2 -2
- package/lib/esm/utils/presentationContext.js.map +1 -1
- package/lib/esm/utils/print.js +0 -1
- package/lib/esm/utils/print.js.map +1 -1
- package/lib/esm/utils/propContext.js +2 -2
- package/lib/esm/utils/propContext.js.map +1 -1
- package/lib/esm/utils/string.js +0 -1
- package/lib/esm/utils/string.js.map +1 -1
- package/package.json +3 -6
|
@@ -16,7 +16,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
16
16
|
|
|
17
17
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
18
18
|
|
|
19
|
-
function _iterableToArrayLimit(arr, i) {
|
|
19
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
20
20
|
|
|
21
21
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
22
22
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchInput.js","sources":["../../../../src/components/Builder/SearchInput.js"],"sourcesContent":["import {\n useCallback,\n useEffect,\n useRef,\n useState,\n useMemo,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport Fuse from 'fuse.js/dist/fuse.common';\nimport SearchIcon from '../../assets/search.svg';\nimport CrossIcon from '../../assets/svg/close.svg';\n\nconst SearchInput = ({\n elements,\n searchKeys,\n setElements,\n}) => {\n const searchInputRef = useRef(null);\n const [searchValue, setSearchValue] = useState('');\n\n const searchEngine = useMemo(() => {\n return new Fuse(elements, { keys: searchKeys, threshold: 0.4 });\n }, [elements, searchKeys]);\n\n useEffect(() => {\n setElements(elements);\n setSearchValue('');\n }, [elements]);\n\n const onSearchButtonClick = useCallback(() => {\n if (searchValue) {\n setSearchValue('');\n setElements(elements);\n }\n if (searchInputRef.current) {\n searchInputRef.current.focus();\n }\n }, [searchValue]);\n\n const onSearchChange = useCallback(e => {\n const _searchValue = e.target.value;\n setSearchValue(_searchValue);\n\n if (!_searchValue || !searchKeys) {\n return setElements(elements);\n }\n\n const filteredElements = searchEngine.search(_searchValue).map(i => i.item);\n\n setElements(filteredElements.length ? filteredElements : 'noResult');\n }, [elements, searchKeys]);\n\n const handleKeyDown = useCallback(e => {\n e.stopPropagation();\n if (e.key === 'Escape' && searchInputRef.current) {\n setSearchValue('');\n setElements(elements);\n searchInputRef.current.blur();\n }\n }, [elements]);\n\n return (\n <div className=\"jfReport-searchContainer\">\n <div className=\"jfReport-search p-relative\">\n <input\n ref={searchInputRef}\n className=\"js-searchInput section-search-input\"\n onChange={onSearchChange}\n onKeyDown={handleKeyDown}\n placeholder=\"Search\"\n type=\"text\"\n value={searchValue}\n />\n <button\n className=\"section-search-button search-icon\"\n onClick={onSearchButtonClick}\n type=\"button\"\n >\n <SearchIcon className=\"section-search-icon\" />\n </button>\n {searchValue && (\n <button\n className=\"section-search-button search-delete\"\n onClick={onSearchButtonClick}\n type=\"button\"\n >\n <CrossIcon className=\"section-search-icon delete\" />\n </button>\n )}\n </div>\n </div>\n );\n};\n\nSearchInput.propTypes = {\n elements: PropTypes.arrayOf(PropTypes.shape({})),\n searchKeys: PropTypes.arrayOf(PropTypes.shape({\n name: PropTypes.string,\n weight: PropTypes.number,\n })),\n setElements: PropTypes.func,\n};\n\nSearchInput.defaultProps = {\n elements: [],\n searchKeys: [],\n setElements: f => f,\n};\n\nexport default SearchInput;\n"],"names":["SearchInput","elements","searchKeys","setElements","searchInputRef","useRef","useState","searchValue","setSearchValue","searchEngine","useMemo","Fuse","keys","threshold","useEffect","onSearchButtonClick","useCallback","current","focus","onSearchChange","e","_searchValue","target","value","filteredElements","search","map","i","item","length","handleKeyDown","stopPropagation","key","blur","_jsx","_jsxs","SearchIcon","CrossIcon","propTypes","PropTypes","arrayOf","shape","name","string","weight","number","func","defaultProps","f"],"mappings":";;;;;;;;;;;;;;;;;;;;;;IAYMA,WAAW,GAAG,SAAdA,WAAc,OAId;AAAA,MAHJC,QAGI,QAHJA,QAGI;AAAA,MAFJC,UAEI,QAFJA,UAEI;AAAA,MADJC,WACI,QADJA,WACI;AACJ,MAAMC,cAAc,GAAGC,MAAM,CAAC,IAAD,CAA7B;;
|
|
1
|
+
{"version":3,"file":"SearchInput.js","sources":["../../../../src/components/Builder/SearchInput.js"],"sourcesContent":["import {\n useCallback,\n useEffect,\n useRef,\n useState,\n useMemo,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport Fuse from 'fuse.js/dist/fuse.common';\nimport SearchIcon from '../../assets/search.svg';\nimport CrossIcon from '../../assets/svg/close.svg';\n\nconst SearchInput = ({\n elements,\n searchKeys,\n setElements,\n}) => {\n const searchInputRef = useRef(null);\n const [searchValue, setSearchValue] = useState('');\n\n const searchEngine = useMemo(() => {\n return new Fuse(elements, { keys: searchKeys, threshold: 0.4 });\n }, [elements, searchKeys]);\n\n useEffect(() => {\n setElements(elements);\n setSearchValue('');\n }, [elements]);\n\n const onSearchButtonClick = useCallback(() => {\n if (searchValue) {\n setSearchValue('');\n setElements(elements);\n }\n if (searchInputRef.current) {\n searchInputRef.current.focus();\n }\n }, [searchValue]);\n\n const onSearchChange = useCallback(e => {\n const _searchValue = e.target.value;\n setSearchValue(_searchValue);\n\n if (!_searchValue || !searchKeys) {\n return setElements(elements);\n }\n\n const filteredElements = searchEngine.search(_searchValue).map(i => i.item);\n\n setElements(filteredElements.length ? filteredElements : 'noResult');\n }, [elements, searchKeys]);\n\n const handleKeyDown = useCallback(e => {\n e.stopPropagation();\n if (e.key === 'Escape' && searchInputRef.current) {\n setSearchValue('');\n setElements(elements);\n searchInputRef.current.blur();\n }\n }, [elements]);\n\n return (\n <div className=\"jfReport-searchContainer\">\n <div className=\"jfReport-search p-relative\">\n <input\n ref={searchInputRef}\n className=\"js-searchInput section-search-input\"\n onChange={onSearchChange}\n onKeyDown={handleKeyDown}\n placeholder=\"Search\"\n type=\"text\"\n value={searchValue}\n />\n <button\n className=\"section-search-button search-icon\"\n onClick={onSearchButtonClick}\n type=\"button\"\n >\n <SearchIcon className=\"section-search-icon\" />\n </button>\n {searchValue && (\n <button\n className=\"section-search-button search-delete\"\n onClick={onSearchButtonClick}\n type=\"button\"\n >\n <CrossIcon className=\"section-search-icon delete\" />\n </button>\n )}\n </div>\n </div>\n );\n};\n\nSearchInput.propTypes = {\n elements: PropTypes.arrayOf(PropTypes.shape({})),\n searchKeys: PropTypes.arrayOf(PropTypes.shape({\n name: PropTypes.string,\n weight: PropTypes.number,\n })),\n setElements: PropTypes.func,\n};\n\nSearchInput.defaultProps = {\n elements: [],\n searchKeys: [],\n setElements: f => f,\n};\n\nexport default SearchInput;\n"],"names":["SearchInput","elements","searchKeys","setElements","searchInputRef","useRef","useState","searchValue","setSearchValue","searchEngine","useMemo","Fuse","keys","threshold","useEffect","onSearchButtonClick","useCallback","current","focus","onSearchChange","e","_searchValue","target","value","filteredElements","search","map","i","item","length","handleKeyDown","stopPropagation","key","blur","_jsx","_jsxs","SearchIcon","CrossIcon","propTypes","PropTypes","arrayOf","shape","name","string","weight","number","func","defaultProps","f"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.js","sources":["../../../../src/components/Builder/Tabs.js"],"sourcesContent":["import { Fragment, memo, useCallback } from 'react';\nimport PropTypes from 'prop-types';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { usePropContext } from '../../utils/propContext';\n\nconst Tabs = ({ panel, tabs }) => {\n const {\n activeTab,\n isLeftPanelOpen,\n isRightPanelOpen,\n setActiveTab,\n } = useBuilderContext();\n const {\n onAnEventTrigger,\n } = usePropContext();\n\n const setCurrentTab = useCallback((index, tab) => {\n setActiveTab(panel, index);\n onAnEventTrigger('settingTabChanged', tab);\n }, [setActiveTab, onAnEventTrigger, panel]);\n\n return (\n tabs.length > 1 && (\n <div\n className={`toolTabs d-flex p-relative ${panel}`}\n data-tab={tabs.length}\n >\n { tabs.map((tab, index) => {\n const checked = activeTab[panel] === index\n && ((panel === 'left' && isLeftPanelOpen) || (panel === 'right' && isRightPanelOpen));\n return (\n <Fragment key={tab}>\n <input\n checked={checked}\n className=\"toolTabs-tab\"\n id={tab}\n name=\"tabs\"\n onChange={() => setCurrentTab(index, tab)}\n tab-count={index}\n type=\"radio\"\n />\n <label\n className=\"t-normal js-tabLabel\"\n htmlFor={tab}\n >\n <span>\n {tab}\n </span>\n </label>\n </Fragment>\n );\n })}\n <div\n className=\"toolTabs-indicator p-absolute\"\n data-tab={tabs.length}\n />\n </div>\n )\n );\n};\n\nTabs.propTypes = {\n panel: PropTypes.string.isRequired,\n tabs: PropTypes.arrayOf(PropTypes.string),\n};\n\nTabs.defaultProps = {\n tabs: [],\n};\n\nexport default memo(Tabs);\n"],"names":["Tabs","panel","tabs","useBuilderContext","activeTab","isLeftPanelOpen","isRightPanelOpen","setActiveTab","usePropContext","onAnEventTrigger","setCurrentTab","useCallback","index","tab","length","_jsxs","map","checked","_jsx","propTypes","PropTypes","string","isRequired","arrayOf","defaultProps","memo"],"mappings":";;;;;;;AAKA,IAAMA,IAAI,GAAG,SAAPA,IAAO,OAAqB;AAAA,MAAlBC,KAAkB,QAAlBA,KAAkB;AAAA,MAAXC,IAAW,QAAXA,IAAW;;
|
|
1
|
+
{"version":3,"file":"Tabs.js","sources":["../../../../src/components/Builder/Tabs.js"],"sourcesContent":["import { Fragment, memo, useCallback } from 'react';\nimport PropTypes from 'prop-types';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { usePropContext } from '../../utils/propContext';\n\nconst Tabs = ({ panel, tabs }) => {\n const {\n activeTab,\n isLeftPanelOpen,\n isRightPanelOpen,\n setActiveTab,\n } = useBuilderContext();\n const {\n onAnEventTrigger,\n } = usePropContext();\n\n const setCurrentTab = useCallback((index, tab) => {\n setActiveTab(panel, index);\n onAnEventTrigger('settingTabChanged', tab);\n }, [setActiveTab, onAnEventTrigger, panel]);\n\n return (\n tabs.length > 1 && (\n <div\n className={`toolTabs d-flex p-relative ${panel}`}\n data-tab={tabs.length}\n >\n { tabs.map((tab, index) => {\n const checked = activeTab[panel] === index\n && ((panel === 'left' && isLeftPanelOpen) || (panel === 'right' && isRightPanelOpen));\n return (\n <Fragment key={tab}>\n <input\n checked={checked}\n className=\"toolTabs-tab\"\n id={tab}\n name=\"tabs\"\n onChange={() => setCurrentTab(index, tab)}\n tab-count={index}\n type=\"radio\"\n />\n <label\n className=\"t-normal js-tabLabel\"\n htmlFor={tab}\n >\n <span>\n {tab}\n </span>\n </label>\n </Fragment>\n );\n })}\n <div\n className=\"toolTabs-indicator p-absolute\"\n data-tab={tabs.length}\n />\n </div>\n )\n );\n};\n\nTabs.propTypes = {\n panel: PropTypes.string.isRequired,\n tabs: PropTypes.arrayOf(PropTypes.string),\n};\n\nTabs.defaultProps = {\n tabs: [],\n};\n\nexport default memo(Tabs);\n"],"names":["Tabs","panel","tabs","useBuilderContext","activeTab","isLeftPanelOpen","isRightPanelOpen","setActiveTab","usePropContext","onAnEventTrigger","setCurrentTab","useCallback","index","tab","length","_jsxs","map","checked","_jsx","propTypes","PropTypes","string","isRequired","arrayOf","defaultProps","memo"],"mappings":";;;;;;;AAKA,IAAMA,IAAI,GAAG,SAAPA,IAAO,OAAqB;AAAA,MAAlBC,KAAkB,QAAlBA,KAAkB;AAAA,MAAXC,IAAW,QAAXA,IAAW;;AAChC,2BAKIC,iBAAiB,EALrB;AAAA,MACEC,SADF,sBACEA,SADF;AAAA,MAEEC,eAFF,sBAEEA,eAFF;AAAA,MAGEC,gBAHF,sBAGEA,gBAHF;AAAA,MAIEC,YAJF,sBAIEA,YAJF;;AAMA,wBAEIC,cAAc,EAFlB;AAAA,MACEC,gBADF,mBACEA,gBADF;;AAIA,MAAMC,aAAa,GAAGC,WAAW,CAAC,UAACC,KAAD,EAAQC,GAAR,EAAgB;AAChDN,IAAAA,YAAY,CAACN,KAAD,EAAQW,KAAR,CAAZ;AACAH,IAAAA,gBAAgB,CAAC,mBAAD,EAAsBI,GAAtB,CAAhB;AACD,GAHgC,EAG9B,CAACN,YAAD,EAAeE,gBAAf,EAAiCR,KAAjC,CAH8B,CAAjC;AAKA,SACEC,IAAI,CAACY,MAAL,GAAc,CAAd,iBACEC;AACE,IAAA,SAAS,uCAAgCd,KAAhC,CADX;AAEE,gBAAUC,IAAI,CAACY,MAFjB;AAAA,eAIIZ,IAAI,CAACc,GAAL,CAAS,UAACH,GAAD,EAAMD,KAAN,EAAgB;AACzB,UAAMK,OAAO,GAAGb,SAAS,CAACH,KAAD,CAAT,KAAqBW,KAArB,KACTX,KAAK,KAAK,MAAV,IAAoBI,eAArB,IAA0CJ,KAAK,KAAK,OAAV,IAAqBK,gBADrD,CAAhB;AAEA,0BACES,KAAC,QAAD;AAAA,gCACEG;AACE,UAAA,OAAO,EAAED,OADX;AAEE,UAAA,SAAS,EAAC,cAFZ;AAGE,UAAA,EAAE,EAAEJ,GAHN;AAIE,UAAA,IAAI,EAAC,MAJP;AAKE,UAAA,QAAQ,EAAE;AAAA,mBAAMH,aAAa,CAACE,KAAD,EAAQC,GAAR,CAAnB;AAAA,WALZ;AAME,uBAAWD,KANb;AAOE,UAAA,IAAI,EAAC;AAPP,UADF,eAUEM;AACE,UAAA,SAAS,EAAC,sBADZ;AAEE,UAAA,OAAO,EAAEL,GAFX;AAAA,iCAIEK;AAAA,sBACGL;AADH;AAJF,UAVF;AAAA,SAAeA,GAAf,CADF;AAqBD,KAxBC,CAJJ,eA6BEK;AACE,MAAA,SAAS,EAAC,+BADZ;AAEE,kBAAUhB,IAAI,CAACY;AAFjB,MA7BF;AAAA,IAFJ;AAsCD,CAtDD;;AAwDAd,IAAI,CAACmB,SAAL,GAAiB;AACflB,EAAAA,KAAK,EAAEmB,SAAS,CAACC,MAAV,CAAiBC,UADT;AAEfpB,EAAAA,IAAI,EAAEkB,SAAS,CAACG,OAAV,CAAkBH,SAAS,CAACC,MAA5B;AAFS,CAAjB;AAKArB,IAAI,CAACwB,YAAL,GAAoB;AAClBtB,EAAAA,IAAI,EAAE;AADY,CAApB;AAIA,0BAAeuB,IAAI,CAACzB,IAAD,CAAnB;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ZoomControls.js","sources":["../../../../src/components/Builder/ZoomControls.js"],"sourcesContent":["import { useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport * as icons from '../../utils/icons';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { usePropContext } from '../../utils/propContext';\nimport {\n ZOOM_STEP,\n ZOOM_MIN,\n ZOOM_MAX,\n ZOOM_MULTIPLIER,\n} from '../../constants/zoom';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst ZoomControls = ({\n mode,\n showZoom,\n}) => {\n const { setZoom, zoom } = useBuilderContext();\n const {\n onAnEventTrigger,\n settings,\n } = usePropContext();\n const { reportLayoutHeight = 794, reportLayoutWidth = 1123 } = settings;\n const isModeCustomize = mode === 'customize';\n const decreaseZoom = () => {\n onAnEventTrigger('zoomOut', 'report');\n if (zoom > (ZOOM_STEP + ZOOM_MIN)) {\n setZoom(parseFloat((zoom - ZOOM_STEP).toFixed(1)), isModeCustomize, reportLayoutWidth);\n }\n };\n const increaseZoom = () => {\n onAnEventTrigger('zoomIn', 'report');\n if (zoom < (ZOOM_MAX)) {\n setZoom(parseFloat((zoom + ZOOM_STEP).toFixed(1)), isModeCustomize, reportLayoutWidth);\n }\n };\n const fitZoom = () => {\n const { innerHeight, innerWidth } = window;\n const newScale = Math.min(\n (innerWidth - 400) / reportLayoutWidth,\n innerHeight / reportLayoutHeight,\n );\n let newZoom = Math.floor(newScale * 10) / 10;\n if (newZoom < 0.5) newZoom = 0.5;\n if (newZoom > 1) newZoom = 1;\n onAnEventTrigger('fitZoom', 'report');\n setZoom(newZoom, isModeCustomize, reportLayoutWidth);\n };\n\n const zoomValue = useMemo(() => {\n return Number.isNaN(zoom) ? 100 : (zoom * ZOOM_MULTIPLIER).toFixed(0);\n }, [zoom, ZOOM_MULTIPLIER]);\n\n const { FIT_TO_SCENE, ZOOM_IN, ZOOM_OUT } = useTranslatedTexts();\n\n return (\n <div className={`floatingController forZoom${!showZoom ? ' hidden' : ''}`}>\n <div className=\"floatingController-container\">\n <button\n className=\"controllerItem isGray\"\n onClick={increaseZoom}\n title={ZOOM_IN}\n type=\"button\"\n >\n <icons.plus className=\"jfReportSVG controllerItem-icon\" />\n </button>\n <div className=\"controllerIndicator\">\n {zoomValue}\n %\n </div>\n <button\n className=\"controllerItem isGray\"\n onClick={decreaseZoom}\n title={ZOOM_OUT}\n type=\"button\"\n >\n <icons.minus className=\"jfReportSVG controllerItem-icon\" />\n </button>\n </div>\n <div className=\"floatingController-container\">\n <button\n className=\"controllerItem isSingle\"\n onClick={fitZoom}\n title={FIT_TO_SCENE}\n type=\"button\"\n >\n <icons.fit className=\"jfReportSVG icon-fit\" />\n </button>\n </div>\n </div>\n );\n};\n\nZoomControls.propTypes = {\n mode: PropTypes.string,\n showZoom: PropTypes.bool,\n};\n\nZoomControls.defaultProps = {\n mode: '',\n showZoom: true,\n};\n\nexport default ZoomControls;\n"],"names":["ZoomControls","mode","showZoom","useBuilderContext","setZoom","zoom","usePropContext","onAnEventTrigger","settings","reportLayoutHeight","reportLayoutWidth","isModeCustomize","decreaseZoom","ZOOM_STEP","ZOOM_MIN","parseFloat","toFixed","increaseZoom","ZOOM_MAX","fitZoom","window","innerHeight","innerWidth","newScale","Math","min","newZoom","floor","zoomValue","useMemo","Number","isNaN","ZOOM_MULTIPLIER","useTranslatedTexts","FIT_TO_SCENE","ZOOM_IN","ZOOM_OUT","_jsxs","_jsx","icons.plus","icons.minus","icons.fit","propTypes","PropTypes","string","bool","defaultProps"],"mappings":";;;;;;;;;;;;;;IAaMA,YAAY,GAAG,SAAfA,YAAe,OAGf;AAAA,MAFJC,IAEI,QAFJA,IAEI;AAAA,MADJC,QACI,QADJA,QACI;;
|
|
1
|
+
{"version":3,"file":"ZoomControls.js","sources":["../../../../src/components/Builder/ZoomControls.js"],"sourcesContent":["import { useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport * as icons from '../../utils/icons';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { usePropContext } from '../../utils/propContext';\nimport {\n ZOOM_STEP,\n ZOOM_MIN,\n ZOOM_MAX,\n ZOOM_MULTIPLIER,\n} from '../../constants/zoom';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst ZoomControls = ({\n mode,\n showZoom,\n}) => {\n const { setZoom, zoom } = useBuilderContext();\n const {\n onAnEventTrigger,\n settings,\n } = usePropContext();\n const { reportLayoutHeight = 794, reportLayoutWidth = 1123 } = settings;\n const isModeCustomize = mode === 'customize';\n const decreaseZoom = () => {\n onAnEventTrigger('zoomOut', 'report');\n if (zoom > (ZOOM_STEP + ZOOM_MIN)) {\n setZoom(parseFloat((zoom - ZOOM_STEP).toFixed(1)), isModeCustomize, reportLayoutWidth);\n }\n };\n const increaseZoom = () => {\n onAnEventTrigger('zoomIn', 'report');\n if (zoom < (ZOOM_MAX)) {\n setZoom(parseFloat((zoom + ZOOM_STEP).toFixed(1)), isModeCustomize, reportLayoutWidth);\n }\n };\n const fitZoom = () => {\n const { innerHeight, innerWidth } = window;\n const newScale = Math.min(\n (innerWidth - 400) / reportLayoutWidth,\n innerHeight / reportLayoutHeight,\n );\n let newZoom = Math.floor(newScale * 10) / 10;\n if (newZoom < 0.5) newZoom = 0.5;\n if (newZoom > 1) newZoom = 1;\n onAnEventTrigger('fitZoom', 'report');\n setZoom(newZoom, isModeCustomize, reportLayoutWidth);\n };\n\n const zoomValue = useMemo(() => {\n return Number.isNaN(zoom) ? 100 : (zoom * ZOOM_MULTIPLIER).toFixed(0);\n }, [zoom, ZOOM_MULTIPLIER]);\n\n const { FIT_TO_SCENE, ZOOM_IN, ZOOM_OUT } = useTranslatedTexts();\n\n return (\n <div className={`floatingController forZoom${!showZoom ? ' hidden' : ''}`}>\n <div className=\"floatingController-container\">\n <button\n className=\"controllerItem isGray\"\n onClick={increaseZoom}\n title={ZOOM_IN}\n type=\"button\"\n >\n <icons.plus className=\"jfReportSVG controllerItem-icon\" />\n </button>\n <div className=\"controllerIndicator\">\n {zoomValue}\n %\n </div>\n <button\n className=\"controllerItem isGray\"\n onClick={decreaseZoom}\n title={ZOOM_OUT}\n type=\"button\"\n >\n <icons.minus className=\"jfReportSVG controllerItem-icon\" />\n </button>\n </div>\n <div className=\"floatingController-container\">\n <button\n className=\"controllerItem isSingle\"\n onClick={fitZoom}\n title={FIT_TO_SCENE}\n type=\"button\"\n >\n <icons.fit className=\"jfReportSVG icon-fit\" />\n </button>\n </div>\n </div>\n );\n};\n\nZoomControls.propTypes = {\n mode: PropTypes.string,\n showZoom: PropTypes.bool,\n};\n\nZoomControls.defaultProps = {\n mode: '',\n showZoom: true,\n};\n\nexport default ZoomControls;\n"],"names":["ZoomControls","mode","showZoom","useBuilderContext","setZoom","zoom","usePropContext","onAnEventTrigger","settings","reportLayoutHeight","reportLayoutWidth","isModeCustomize","decreaseZoom","ZOOM_STEP","ZOOM_MIN","parseFloat","toFixed","increaseZoom","ZOOM_MAX","fitZoom","window","innerHeight","innerWidth","newScale","Math","min","newZoom","floor","zoomValue","useMemo","Number","isNaN","ZOOM_MULTIPLIER","useTranslatedTexts","FIT_TO_SCENE","ZOOM_IN","ZOOM_OUT","_jsxs","_jsx","icons.plus","icons.minus","icons.fit","propTypes","PropTypes","string","bool","defaultProps"],"mappings":"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"}
|
|
@@ -19,7 +19,7 @@ import generateId from '../../utils/generateId.js';
|
|
|
19
19
|
import { addEventListenerForSidebar, removeEventListenerForSidebar } from '../../utils/scrollZoneFunctions.js';
|
|
20
20
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
21
21
|
|
|
22
|
-
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; }
|
|
22
|
+
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; }
|
|
23
23
|
|
|
24
24
|
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; }
|
|
25
25
|
|
|
@@ -33,7 +33,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
33
33
|
|
|
34
34
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
35
35
|
|
|
36
|
-
function _iterableToArrayLimit(arr, i) {
|
|
36
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
37
37
|
|
|
38
38
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
39
39
|
var exceptionalClassesForClickOutside = ['contextMenu-itemLabel', 'contextMenu-item'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DraggableItem.js","sources":["../../../../src/components/DraggableItem/DraggableItem.js"],"sourcesContent":["import { useEffect, useState, memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd-cjs';\nimport { getEmptyImage } from 'react-dnd-html5-backend-cjs';\nimport isEqual from 'lodash.isequal';\nimport ItemPositioner from '../ItemPositioner';\nimport { DRAGGABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getStyles,\n getPosition, calculateGuidePositions, proximityListener,\n} from '../../utils/functions';\nimport PageItemResizer from '../PageItemResizer';\nimport ErrorBoundary from '../ErrorBoundary';\nimport * as classNames from '../../constants/classNames';\nimport generateId from '../../utils/generateId';\nimport {\n addEventListenerForSidebar,\n removeEventListenerForSidebar,\n} from '../../utils/scrollZoneFunctions';\n\nconst exceptionalClassesForClickOutside = ['contextMenu-itemLabel', 'contextMenu-item'];\nconst reportItemStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst DraggableItem = ({\n children,\n guides,\n isMultipleItemSelected,\n isResize,\n isRightPanelOpen,\n isSelected,\n isTextEditorOpen,\n item,\n matches,\n onAnEventTrigger,\n onItemAdd,\n onItemChange,\n onItemRemove,\n onItemResize,\n setActiveElement,\n setContextMenuProps,\n setIsResize,\n setIsRightPanelOpen,\n setMatches,\n zoom,\n}) => {\n const {\n height,\n id,\n isLocked,\n left,\n pageID,\n top,\n width,\n } = item;\n\n const select = event => {\n if (!isSelected) {\n if (!event || !event.metaKey) {\n if (isLocked) {\n setActiveElement(id, false);\n setIsRightPanelOpen(false);\n } else {\n setActiveElement(id);\n }\n } else {\n setActiveElement(id, undefined, true);\n }\n }\n };\n\n const [{ isDragging }, drag, preview] = useDrag({\n begin: () => {\n if (!isSelected) select();\n addEventListenerForSidebar();\n },\n canDrag: (!item.isLocked && !isTextEditorOpen) ? true : false,\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n end: () => {\n removeEventListenerForSidebar();\n },\n isDragging: () => {\n return (isMultipleItemSelected && isSelected) || (!isMultipleItemSelected && isSelected);\n },\n item: {\n height,\n id,\n left,\n top,\n type: DRAGGABLE_ITEM_TYPE,\n width,\n },\n });\n\n const [\n {\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n },\n setResizeSize,\n ] = useState({\n height,\n left,\n top,\n width,\n });\n\n useEffect(() => {\n preview(getEmptyImage(), { captureDraggingState: true });\n if (width !== stateWidth || height !== stateHeight || left !== stateLeft || top !== stateTop) {\n setResizeSize({\n height,\n left,\n top,\n width,\n });\n }\n }, [width, height, left, top]);\n\n const onResizeStop = (deltaWidth, deltaHeight, direction) => {\n const activeItem = {\n ...item,\n height: item.height + deltaHeight,\n width: item.width + deltaWidth,\n };\n if (/left/i.test(direction)) activeItem.left = activeItem.left - deltaWidth;\n if (/top/i.test(direction)) activeItem.top = activeItem.top - deltaHeight;\n let newActiveBoxLeft = activeItem.left;\n let newActiveBoxTop = activeItem.top;\n Object.keys(matches).forEach(axis => {\n const { activeBoxGuides, matchedArray, proximity } = matches[axis];\n const activeBoxProximityIndex = proximity.activeBoxIndex;\n const matchedBoxProximityIndex = proximity.matchedBoxIndex;\n if (axis === 'x') {\n if (activeBoxGuides[activeBoxProximityIndex] > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxLeft = activeItem.left - proximity.value;\n } else {\n newActiveBoxLeft = activeItem.left + proximity.value;\n }\n } else if (activeBoxGuides[activeBoxProximityIndex]\n > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxTop = activeItem.top - proximity.value;\n } else {\n newActiveBoxTop = activeItem.top + proximity.value;\n }\n });\n\n let newResizeSize = {\n height: activeItem.height,\n left: activeItem.left,\n top: activeItem.top,\n width: activeItem.width,\n };\n\n if (!(/top/i.test(direction) && /left/i.test(direction))) {\n newResizeSize = {\n ...newResizeSize,\n height: newResizeSize.height + (newActiveBoxTop - activeItem.top),\n width: newResizeSize.width + (newActiveBoxLeft - activeItem.left),\n };\n }\n if (/top/i.test(direction) && newActiveBoxTop !== newResizeSize.top) {\n newResizeSize.top = newActiveBoxTop;\n }\n if (/left/i.test(direction) && newActiveBoxLeft !== newResizeSize.left) {\n newResizeSize.left = newActiveBoxLeft;\n }\n setIsResize(false);\n onItemResize(item, newResizeSize);\n };\n\n const onResize = (deltaWidth, deltaHeight, direction) => {\n if (!isResize) { setIsResize(true); }\n const activeItem = {\n ...item,\n height: item.height + deltaHeight,\n width: item.width + deltaWidth,\n };\n if (/left/i.test(direction)) activeItem.left = activeItem.left - deltaWidth;\n if (/top/i.test(direction)) activeItem.top = activeItem.top - deltaHeight;\n const _guides = {\n ...guides,\n [item.id]: {\n ...guides[item.id],\n x: calculateGuidePositions(activeItem, 'x', zoom),\n y: calculateGuidePositions(activeItem, 'y', zoom),\n },\n };\n setMatches(proximityListener(item.id, _guides));\n setResizeSize({\n height: activeItem.height,\n left: activeItem.left,\n top: activeItem.top,\n width: activeItem.width,\n });\n };\n\n const deleteItem = () => {\n setIsRightPanelOpen(false);\n setActiveElement(null);\n onItemRemove(item);\n onAnEventTrigger('removeItem', item.itemType);\n };\n\n const duplicateItem = () => {\n const itemID = generateId();\n onItemAdd({\n ...item,\n id: itemID,\n left: item.left + 50,\n top: item.top + 50,\n });\n onAnEventTrigger('duplicateItem', item.itemType);\n setActiveElement(itemID);\n if (!isRightPanelOpen) {\n setIsRightPanelOpen(true);\n }\n };\n\n const onClickOutside = event => {\n // clickoutside should not work for scrollbar\n const viewPort = document.querySelector('.jfReport-viewport');\n const { clientHeight, offsetHeight } = viewPort;\n const headerHeight = window.innerHeight - offsetHeight;\n if (event.clientY - headerHeight >= clientHeight\n || Array.from(event.target.classList)\n .some(xClass => exceptionalClassesForClickOutside.includes(xClass))) {\n return;\n }\n setIsRightPanelOpen(false);\n setActiveElement(null);\n };\n\n const onContextMenuClick = e => {\n if (\n e.target.contentEditable === 'true'\n || isTextEditorOpen\n ) {\n // Dont override behaviour on text edits.\n return;\n }\n\n e.preventDefault();\n onAnEventTrigger('openContextMenu', item.itemType);\n setContextMenuProps({\n id,\n pageID,\n position: getPosition(e),\n });\n };\n\n const onDoubleClick = e => {\n if (\n e.target.contentEditable === 'true'\n || isTextEditorOpen\n ) {\n // Dont override behaviour on text edits.\n return;\n }\n\n setIsRightPanelOpen(true);\n };\n\n const duplicateWithAltKey = e => {\n if (e.altKey) {\n const itemID = generateId();\n const itemToAdd = item;\n setTimeout(() => {\n onItemAdd({\n ...itemToAdd,\n id: itemID,\n left: itemToAdd.left,\n top: itemToAdd.top,\n });\n onAnEventTrigger('duplicateItem', itemToAdd.itemType);\n });\n }\n };\n\n const changeLockStatus = () => {\n onAnEventTrigger(item.isLocked ? 'unlockReportItem' : 'lockReportItem', item.itemType);\n onItemChange({ id: item.id }, { isLocked: item.isLocked ? false : true });\n if (!item.isLocked) {\n setActiveElement(item.id, false);\n setIsRightPanelOpen(false);\n }\n };\n\n return (\n <ErrorBoundary>\n <ItemPositioner\n classNames={`reportItemWrapper${isSelected ? ' isSelected' : ''}`}\n style={{\n ...getStyles(left, top, isDragging),\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n }}\n >\n <div\n ref={drag}\n className={`${classNames.reportItem}${isLocked ? ' isLocked' : ''}`}\n onClick={select}\n onContextMenu={onContextMenuClick}\n onDoubleClick={onDoubleClick}\n onDragStart={duplicateWithAltKey}\n onKeyDown={() => {}}\n style={reportItemStyle}\n >\n {children}\n </div>\n </ItemPositioner>\n <PageItemResizer\n changeLockStatus={changeLockStatus}\n deleteItem={deleteItem}\n duplicateItem={duplicateItem}\n isDragging={isDragging}\n isMultipleItemSelected={isMultipleItemSelected}\n isRightPanelOpen={isRightPanelOpen}\n isSelectedElement={isSelected}\n isTextEditorOpen={isTextEditorOpen}\n item={item}\n onClickOutside={onClickOutside}\n onResize={onResize}\n onResizeStop={onResizeStop}\n pageID={pageID}\n setActiveElement={setActiveElement}\n setIsRightPanelOpen={setIsRightPanelOpen}\n stateHeight={stateHeight}\n stateLeft={stateLeft}\n stateTop={stateTop}\n stateWidth={stateWidth}\n zoom={zoom}\n />\n </ErrorBoundary>\n );\n};\n\nDraggableItem.propTypes = {\n children: PropTypes.any,\n guides: PropTypes.shape({}),\n isMultipleItemSelected: PropTypes.bool,\n isResize: PropTypes.bool,\n isRightPanelOpen: PropTypes.bool,\n isSelected: PropTypes.bool,\n isTextEditorOpen: PropTypes.bool,\n item: PropTypes.shape({\n height: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n itemType: PropTypes.string,\n left: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n pageID: PropTypes.string,\n top: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n width: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n matches: PropTypes.shape({}),\n onAnEventTrigger: PropTypes.func,\n onItemAdd: PropTypes.func,\n onItemChange: PropTypes.func,\n onItemRemove: PropTypes.func,\n onItemResize: PropTypes.func,\n setActiveElement: PropTypes.func,\n setContextMenuProps: PropTypes.func,\n setIsResize: PropTypes.func,\n setIsRightPanelOpen: PropTypes.func,\n setMatches: PropTypes.func,\n zoom: PropTypes.number,\n};\n\nDraggableItem.defaultProps = {\n children: null,\n guides: {},\n isMultipleItemSelected: false,\n isResize: false,\n isRightPanelOpen: false,\n isSelected: false,\n isTextEditorOpen: false,\n item: {},\n matches: {},\n onAnEventTrigger: () => {},\n onItemAdd: () => {},\n onItemChange: () => {},\n onItemRemove: () => {},\n onItemResize: () => {},\n setActiveElement: () => {},\n setContextMenuProps: () => {},\n setIsResize: () => {},\n setIsRightPanelOpen: () => {},\n setMatches: () => {},\n zoom: 1,\n};\n\n// avoid unnecessary renders while resizing\nconst areEqual = (prevProps, nextProps) => {\n if (prevProps.hashCode !== nextProps.hashCode) return false;\n if (!isEqual(prevProps.item, nextProps.item)) return false;\n if (prevProps.matches !== nextProps.matches) return false;\n if (prevProps.isTextEditorOpen !== nextProps.isTextEditorOpen) return false;\n if ((prevProps.isSelected && nextProps.isSelected) || prevProps.isResize !== nextProps.isResize) {\n return false;\n }\n if (prevProps.isSelected !== nextProps.isSelected) return false;\n return true;\n};\n\nexport default memo(DraggableItem, areEqual);\n"],"names":["exceptionalClassesForClickOutside","reportItemStyle","height","width","DraggableItem","children","guides","isMultipleItemSelected","isResize","isRightPanelOpen","isSelected","isTextEditorOpen","item","matches","onAnEventTrigger","onItemAdd","onItemChange","onItemRemove","onItemResize","setActiveElement","setContextMenuProps","setIsResize","setIsRightPanelOpen","setMatches","zoom","id","isLocked","left","pageID","top","select","event","metaKey","undefined","useDrag","begin","addEventListenerForSidebar","canDrag","collect","monitor","isDragging","end","removeEventListenerForSidebar","type","DRAGGABLE_ITEM_TYPE","drag","preview","useState","stateHeight","stateLeft","stateTop","stateWidth","setResizeSize","useEffect","getEmptyImage","captureDraggingState","onResizeStop","deltaWidth","deltaHeight","direction","activeItem","test","newActiveBoxLeft","newActiveBoxTop","Object","keys","forEach","axis","activeBoxGuides","matchedArray","proximity","activeBoxProximityIndex","activeBoxIndex","matchedBoxProximityIndex","matchedBoxIndex","value","newResizeSize","onResize","_guides","x","calculateGuidePositions","y","proximityListener","deleteItem","itemType","duplicateItem","itemID","generateId","onClickOutside","viewPort","document","querySelector","clientHeight","offsetHeight","headerHeight","window","innerHeight","clientY","Array","from","target","classList","some","xClass","includes","onContextMenuClick","e","contentEditable","preventDefault","position","getPosition","onDoubleClick","duplicateWithAltKey","altKey","itemToAdd","setTimeout","changeLockStatus","_jsxs","ErrorBoundary","_jsx","getStyles","classNames","propTypes","PropTypes","any","shape","bool","oneOfType","number","string","func","defaultProps","areEqual","prevProps","nextProps","hashCode","isEqual","memo"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DraggableItem.js","sources":["../../../../src/components/DraggableItem/DraggableItem.js"],"sourcesContent":["import { useEffect, useState, memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd-cjs';\nimport { getEmptyImage } from 'react-dnd-html5-backend-cjs';\nimport isEqual from 'lodash.isequal';\nimport ItemPositioner from '../ItemPositioner';\nimport { DRAGGABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getStyles,\n getPosition, calculateGuidePositions, proximityListener,\n} from '../../utils/functions';\nimport PageItemResizer from '../PageItemResizer';\nimport ErrorBoundary from '../ErrorBoundary';\nimport * as classNames from '../../constants/classNames';\nimport generateId from '../../utils/generateId';\nimport {\n addEventListenerForSidebar,\n removeEventListenerForSidebar,\n} from '../../utils/scrollZoneFunctions';\n\nconst exceptionalClassesForClickOutside = ['contextMenu-itemLabel', 'contextMenu-item'];\nconst reportItemStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst DraggableItem = ({\n children,\n guides,\n isMultipleItemSelected,\n isResize,\n isRightPanelOpen,\n isSelected,\n isTextEditorOpen,\n item,\n matches,\n onAnEventTrigger,\n onItemAdd,\n onItemChange,\n onItemRemove,\n onItemResize,\n setActiveElement,\n setContextMenuProps,\n setIsResize,\n setIsRightPanelOpen,\n setMatches,\n zoom,\n}) => {\n const {\n height,\n id,\n isLocked,\n left,\n pageID,\n top,\n width,\n } = item;\n\n const select = event => {\n if (!isSelected) {\n if (!event || !event.metaKey) {\n if (isLocked) {\n setActiveElement(id, false);\n setIsRightPanelOpen(false);\n } else {\n setActiveElement(id);\n }\n } else {\n setActiveElement(id, undefined, true);\n }\n }\n };\n\n const [{ isDragging }, drag, preview] = useDrag({\n begin: () => {\n if (!isSelected) select();\n addEventListenerForSidebar();\n },\n canDrag: (!item.isLocked && !isTextEditorOpen) ? true : false,\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n end: () => {\n removeEventListenerForSidebar();\n },\n isDragging: () => {\n return (isMultipleItemSelected && isSelected) || (!isMultipleItemSelected && isSelected);\n },\n item: {\n height,\n id,\n left,\n top,\n type: DRAGGABLE_ITEM_TYPE,\n width,\n },\n });\n\n const [\n {\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n },\n setResizeSize,\n ] = useState({\n height,\n left,\n top,\n width,\n });\n\n useEffect(() => {\n preview(getEmptyImage(), { captureDraggingState: true });\n if (width !== stateWidth || height !== stateHeight || left !== stateLeft || top !== stateTop) {\n setResizeSize({\n height,\n left,\n top,\n width,\n });\n }\n }, [width, height, left, top]);\n\n const onResizeStop = (deltaWidth, deltaHeight, direction) => {\n const activeItem = {\n ...item,\n height: item.height + deltaHeight,\n width: item.width + deltaWidth,\n };\n if (/left/i.test(direction)) activeItem.left = activeItem.left - deltaWidth;\n if (/top/i.test(direction)) activeItem.top = activeItem.top - deltaHeight;\n let newActiveBoxLeft = activeItem.left;\n let newActiveBoxTop = activeItem.top;\n Object.keys(matches).forEach(axis => {\n const { activeBoxGuides, matchedArray, proximity } = matches[axis];\n const activeBoxProximityIndex = proximity.activeBoxIndex;\n const matchedBoxProximityIndex = proximity.matchedBoxIndex;\n if (axis === 'x') {\n if (activeBoxGuides[activeBoxProximityIndex] > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxLeft = activeItem.left - proximity.value;\n } else {\n newActiveBoxLeft = activeItem.left + proximity.value;\n }\n } else if (activeBoxGuides[activeBoxProximityIndex]\n > matchedArray[matchedBoxProximityIndex]) {\n newActiveBoxTop = activeItem.top - proximity.value;\n } else {\n newActiveBoxTop = activeItem.top + proximity.value;\n }\n });\n\n let newResizeSize = {\n height: activeItem.height,\n left: activeItem.left,\n top: activeItem.top,\n width: activeItem.width,\n };\n\n if (!(/top/i.test(direction) && /left/i.test(direction))) {\n newResizeSize = {\n ...newResizeSize,\n height: newResizeSize.height + (newActiveBoxTop - activeItem.top),\n width: newResizeSize.width + (newActiveBoxLeft - activeItem.left),\n };\n }\n if (/top/i.test(direction) && newActiveBoxTop !== newResizeSize.top) {\n newResizeSize.top = newActiveBoxTop;\n }\n if (/left/i.test(direction) && newActiveBoxLeft !== newResizeSize.left) {\n newResizeSize.left = newActiveBoxLeft;\n }\n setIsResize(false);\n onItemResize(item, newResizeSize);\n };\n\n const onResize = (deltaWidth, deltaHeight, direction) => {\n if (!isResize) { setIsResize(true); }\n const activeItem = {\n ...item,\n height: item.height + deltaHeight,\n width: item.width + deltaWidth,\n };\n if (/left/i.test(direction)) activeItem.left = activeItem.left - deltaWidth;\n if (/top/i.test(direction)) activeItem.top = activeItem.top - deltaHeight;\n const _guides = {\n ...guides,\n [item.id]: {\n ...guides[item.id],\n x: calculateGuidePositions(activeItem, 'x', zoom),\n y: calculateGuidePositions(activeItem, 'y', zoom),\n },\n };\n setMatches(proximityListener(item.id, _guides));\n setResizeSize({\n height: activeItem.height,\n left: activeItem.left,\n top: activeItem.top,\n width: activeItem.width,\n });\n };\n\n const deleteItem = () => {\n setIsRightPanelOpen(false);\n setActiveElement(null);\n onItemRemove(item);\n onAnEventTrigger('removeItem', item.itemType);\n };\n\n const duplicateItem = () => {\n const itemID = generateId();\n onItemAdd({\n ...item,\n id: itemID,\n left: item.left + 50,\n top: item.top + 50,\n });\n onAnEventTrigger('duplicateItem', item.itemType);\n setActiveElement(itemID);\n if (!isRightPanelOpen) {\n setIsRightPanelOpen(true);\n }\n };\n\n const onClickOutside = event => {\n // clickoutside should not work for scrollbar\n const viewPort = document.querySelector('.jfReport-viewport');\n const { clientHeight, offsetHeight } = viewPort;\n const headerHeight = window.innerHeight - offsetHeight;\n if (event.clientY - headerHeight >= clientHeight\n || Array.from(event.target.classList)\n .some(xClass => exceptionalClassesForClickOutside.includes(xClass))) {\n return;\n }\n setIsRightPanelOpen(false);\n setActiveElement(null);\n };\n\n const onContextMenuClick = e => {\n if (\n e.target.contentEditable === 'true'\n || isTextEditorOpen\n ) {\n // Dont override behaviour on text edits.\n return;\n }\n\n e.preventDefault();\n onAnEventTrigger('openContextMenu', item.itemType);\n setContextMenuProps({\n id,\n pageID,\n position: getPosition(e),\n });\n };\n\n const onDoubleClick = e => {\n if (\n e.target.contentEditable === 'true'\n || isTextEditorOpen\n ) {\n // Dont override behaviour on text edits.\n return;\n }\n\n setIsRightPanelOpen(true);\n };\n\n const duplicateWithAltKey = e => {\n if (e.altKey) {\n const itemID = generateId();\n const itemToAdd = item;\n setTimeout(() => {\n onItemAdd({\n ...itemToAdd,\n id: itemID,\n left: itemToAdd.left,\n top: itemToAdd.top,\n });\n onAnEventTrigger('duplicateItem', itemToAdd.itemType);\n });\n }\n };\n\n const changeLockStatus = () => {\n onAnEventTrigger(item.isLocked ? 'unlockReportItem' : 'lockReportItem', item.itemType);\n onItemChange({ id: item.id }, { isLocked: item.isLocked ? false : true });\n if (!item.isLocked) {\n setActiveElement(item.id, false);\n setIsRightPanelOpen(false);\n }\n };\n\n return (\n <ErrorBoundary>\n <ItemPositioner\n classNames={`reportItemWrapper${isSelected ? ' isSelected' : ''}`}\n style={{\n ...getStyles(left, top, isDragging),\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n }}\n >\n <div\n ref={drag}\n className={`${classNames.reportItem}${isLocked ? ' isLocked' : ''}`}\n onClick={select}\n onContextMenu={onContextMenuClick}\n onDoubleClick={onDoubleClick}\n onDragStart={duplicateWithAltKey}\n onKeyDown={() => {}}\n style={reportItemStyle}\n >\n {children}\n </div>\n </ItemPositioner>\n <PageItemResizer\n changeLockStatus={changeLockStatus}\n deleteItem={deleteItem}\n duplicateItem={duplicateItem}\n isDragging={isDragging}\n isMultipleItemSelected={isMultipleItemSelected}\n isRightPanelOpen={isRightPanelOpen}\n isSelectedElement={isSelected}\n isTextEditorOpen={isTextEditorOpen}\n item={item}\n onClickOutside={onClickOutside}\n onResize={onResize}\n onResizeStop={onResizeStop}\n pageID={pageID}\n setActiveElement={setActiveElement}\n setIsRightPanelOpen={setIsRightPanelOpen}\n stateHeight={stateHeight}\n stateLeft={stateLeft}\n stateTop={stateTop}\n stateWidth={stateWidth}\n zoom={zoom}\n />\n </ErrorBoundary>\n );\n};\n\nDraggableItem.propTypes = {\n children: PropTypes.any,\n guides: PropTypes.shape({}),\n isMultipleItemSelected: PropTypes.bool,\n isResize: PropTypes.bool,\n isRightPanelOpen: PropTypes.bool,\n isSelected: PropTypes.bool,\n isTextEditorOpen: PropTypes.bool,\n item: PropTypes.shape({\n height: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n id: PropTypes.string,\n isLocked: PropTypes.bool,\n itemType: PropTypes.string,\n left: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n pageID: PropTypes.string,\n top: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n width: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.string,\n ]),\n }),\n matches: PropTypes.shape({}),\n onAnEventTrigger: PropTypes.func,\n onItemAdd: PropTypes.func,\n onItemChange: PropTypes.func,\n onItemRemove: PropTypes.func,\n onItemResize: PropTypes.func,\n setActiveElement: PropTypes.func,\n setContextMenuProps: PropTypes.func,\n setIsResize: PropTypes.func,\n setIsRightPanelOpen: PropTypes.func,\n setMatches: PropTypes.func,\n zoom: PropTypes.number,\n};\n\nDraggableItem.defaultProps = {\n children: null,\n guides: {},\n isMultipleItemSelected: false,\n isResize: false,\n isRightPanelOpen: false,\n isSelected: false,\n isTextEditorOpen: false,\n item: {},\n matches: {},\n onAnEventTrigger: () => {},\n onItemAdd: () => {},\n onItemChange: () => {},\n onItemRemove: () => {},\n onItemResize: () => {},\n setActiveElement: () => {},\n setContextMenuProps: () => {},\n setIsResize: () => {},\n setIsRightPanelOpen: () => {},\n setMatches: () => {},\n zoom: 1,\n};\n\n// avoid unnecessary renders while resizing\nconst areEqual = (prevProps, nextProps) => {\n if (prevProps.hashCode !== nextProps.hashCode) return false;\n if (!isEqual(prevProps.item, nextProps.item)) return false;\n if (prevProps.matches !== nextProps.matches) return false;\n if (prevProps.isTextEditorOpen !== nextProps.isTextEditorOpen) return false;\n if ((prevProps.isSelected && nextProps.isSelected) || prevProps.isResize !== nextProps.isResize) {\n return false;\n }\n if (prevProps.isSelected !== nextProps.isSelected) return false;\n return true;\n};\n\nexport default memo(DraggableItem, areEqual);\n"],"names":["exceptionalClassesForClickOutside","reportItemStyle","height","width","DraggableItem","children","guides","isMultipleItemSelected","isResize","isRightPanelOpen","isSelected","isTextEditorOpen","item","matches","onAnEventTrigger","onItemAdd","onItemChange","onItemRemove","onItemResize","setActiveElement","setContextMenuProps","setIsResize","setIsRightPanelOpen","setMatches","zoom","id","isLocked","left","pageID","top","select","event","metaKey","undefined","useDrag","begin","addEventListenerForSidebar","canDrag","collect","monitor","isDragging","end","removeEventListenerForSidebar","type","DRAGGABLE_ITEM_TYPE","drag","preview","useState","stateHeight","stateLeft","stateTop","stateWidth","setResizeSize","useEffect","getEmptyImage","captureDraggingState","onResizeStop","deltaWidth","deltaHeight","direction","activeItem","test","newActiveBoxLeft","newActiveBoxTop","Object","keys","forEach","axis","activeBoxGuides","matchedArray","proximity","activeBoxProximityIndex","activeBoxIndex","matchedBoxProximityIndex","matchedBoxIndex","value","newResizeSize","onResize","_guides","x","calculateGuidePositions","y","proximityListener","deleteItem","itemType","duplicateItem","itemID","generateId","onClickOutside","viewPort","document","querySelector","clientHeight","offsetHeight","headerHeight","window","innerHeight","clientY","Array","from","target","classList","some","xClass","includes","onContextMenuClick","e","contentEditable","preventDefault","position","getPosition","onDoubleClick","duplicateWithAltKey","altKey","itemToAdd","setTimeout","changeLockStatus","_jsxs","ErrorBoundary","_jsx","getStyles","classNames","propTypes","PropTypes","any","shape","bool","oneOfType","number","string","func","defaultProps","areEqual","prevProps","nextProps","hashCode","isEqual","memo"],"mappings":"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"}
|
|
@@ -1 +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\nDraggableItemActions.defaultProps = {\n changeLockStatus: () => {},\n deleteItem: () => {},\n duplicateItem: () => {},\n isLocked: false,\n isMultipleItemSelected: false,\n openSettings: () => {},\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","defaultProps","memo"],"mappings":";;;;;;;;;;AAKA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,OAOvB;AAAA,MANJC,gBAMI,QANJA,gBAMI;AAAA,MALJC,UAKI,QALJA,UAKI;AAAA,MAJJC,aAII,QAJJA,aAII;AAAA,MAHJC,QAGI,QAHJA,QAGI;AAAA,MAFJC,sBAEI,QAFJA,sBAEI;AAAA,MADJC,YACI,QADJA,YACI;;
|
|
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\nDraggableItemActions.defaultProps = {\n changeLockStatus: () => {},\n deleteItem: () => {},\n duplicateItem: () => {},\n isLocked: false,\n isMultipleItemSelected: false,\n openSettings: () => {},\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","defaultProps","memo"],"mappings":";;;;;;;;;;AAKA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,OAOvB;AAAA,MANJC,gBAMI,QANJA,gBAMI;AAAA,MALJC,UAKI,QALJA,UAKI;AAAA,MAJJC,aAII,QAJJA,aAII;AAAA,MAHJC,QAGI,QAHJA,QAGI;AAAA,MAFJC,sBAEI,QAFJA,sBAEI;AAAA,MADJC,YACI,QADJA,YACI;;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;AASArB,oBAAoB,CAACuB,YAArB,GAAoC;AAClCtB,EAAAA,gBAAgB,EAAE,4BAAM,EADU;AAElCC,EAAAA,UAAU,EAAE,sBAAM,EAFgB;AAGlCC,EAAAA,aAAa,EAAE,yBAAM,EAHa;AAIlCC,EAAAA,QAAQ,EAAE,KAJwB;AAKlCC,EAAAA,sBAAsB,EAAE,KALU;AAMlCC,EAAAA,YAAY,EAAE,wBAAM;AANc,CAApC;AASA,0CAAekB,IAAI,CAACxB,oBAAD,CAAnB;;;;"}
|
|
@@ -2,7 +2,6 @@ import 'core-js/modules/es.array.concat.js';
|
|
|
2
2
|
import 'core-js/modules/es.array.find.js';
|
|
3
3
|
import 'core-js/modules/es.array.find-index.js';
|
|
4
4
|
import 'core-js/modules/es.array.map.js';
|
|
5
|
-
import 'core-js/modules/es.array.reduce.js';
|
|
6
5
|
import 'core-js/modules/es.array.slice.js';
|
|
7
6
|
import 'core-js/modules/es.object.keys.js';
|
|
8
7
|
import 'core-js/modules/web.dom-collections.for-each.js';
|
|
@@ -24,13 +23,13 @@ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread n
|
|
|
24
23
|
|
|
25
24
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
26
25
|
|
|
27
|
-
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator
|
|
26
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
28
27
|
|
|
29
28
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
30
29
|
|
|
31
30
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
32
31
|
|
|
33
|
-
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; }
|
|
32
|
+
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; }
|
|
34
33
|
|
|
35
34
|
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
35
|
|
|
@@ -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-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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"}
|
|
@@ -5,7 +5,7 @@ import { fieldSet } from '../../utils/staticSettings.js';
|
|
|
5
5
|
import * as iconSelector from '../../utils/iconSelector.js';
|
|
6
6
|
import { jsx } from 'react/jsx-runtime';
|
|
7
7
|
|
|
8
|
-
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; }
|
|
8
|
+
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; }
|
|
9
9
|
|
|
10
10
|
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; }
|
|
11
11
|
|
|
@@ -3,7 +3,7 @@ import { memo, useState, useEffect } from 'react';
|
|
|
3
3
|
import { shape, string, oneOfType, number, func } from 'prop-types';
|
|
4
4
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
5
5
|
|
|
6
|
-
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; }
|
|
6
|
+
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; }
|
|
7
7
|
|
|
8
8
|
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; }
|
|
9
9
|
|
|
@@ -17,7 +17,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
17
17
|
|
|
18
18
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
19
19
|
|
|
20
|
-
function _iterableToArrayLimit(arr, i) {
|
|
20
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
21
21
|
|
|
22
22
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
23
23
|
var ITEM_TYPE = 'image';
|
|
@@ -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://www.jotform.com/resources/assets/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 = ({ item, itemAccessor }) => {\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\n useEffect(() => {\n setIsLoading(true);\n setIsErrored(false);\n }, [url, 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={url || 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\nImageElement.defaultProps = {\n item: {\n opacity: 1,\n },\n itemAccessor: () => {},\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","itemAccessor","useState","isLoading","setIsLoading","isErrored","setIsErrored","opacity","roundedCorners","additionalProps","defaultURL","useEffect","_jsxs","_jsx","display","borderRadius","parseFloat","background","paddingTop","textAlign","propTypes","shape","string","oneOfType","number","id","func","defaultProps","details","itemType","Component","memo"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAUA,IAAMA,SAAS,GAAG,OAAlB;AAEA,IAAMC,gBAAgB,GAAG,wFAAzB;AAEA,IAAMC,iBAAiB,GAAG;AACxBC,EAAAA,MAAM,EAAE,SADgB;AAExBC,EAAAA,KAAK,EAAE;AAFiB,CAA1B;AAKA,IAAMC,UAAU,GAAG;AACjBF,EAAAA,MAAM,EAAE,MADS;AAEjBC,EAAAA,KAAK,EAAE;AAFU,CAAnB;AAKA,IAAME,QAAQ,GAAG,CACf;AACEC,EAAAA,QAAQ,EAAE;AACRC,IAAAA,GAAG,EAAE;AADG,GADZ;AAIEC,EAAAA,aAAa,EAAE;AACb,QAAI;AACFN,MAAAA,MAAM,EAAE;AACNO,QAAAA,IAAI,EAAE,SADA;AAENC,QAAAA,KAAK,EAAE;AAFD,OADN;AAKFP,MAAAA,KAAK,EAAE;AACLM,QAAAA,IAAI,EAAE,SADD;AAELC,QAAAA,KAAK,EAAE;AAFF;AALL;AADS,GAJjB;AAgBEC,EAAAA,GAAG,EAAE,KAhBP;AAiBEC,EAAAA,OAAO,EAAE,SAjBX;AAkBEC,EAAAA,IAAI,EAAE;AAlBR,CADe,EAqBf;AACEP,EAAAA,QAAQ,EAAE;AACRC,IAAAA,GAAG,EAAE;AADG,GADZ;AAIEI,EAAAA,GAAG,EAAE,cAJP;AAKEG,EAAAA,KAAK,EAAE,MALT;AAMEF,EAAAA,OAAO,EAAE,SANX;AAOEC,EAAAA,IAAI,EAAE,cAPR;AAQEH,EAAAA,KAAK,EAAE,eAACK,CAAD;AAAA,QAAMb,MAAN,QAAMA,MAAN;AAAA,QAAcC,KAAd,QAAcA,KAAd;AAAA,qBAA6BA,KAA7B,cAAsCD,MAAtC;AAAA;AART,CArBe,EA+Bf;AACEI,EAAAA,QAAQ,EAAE;AACRC,IAAAA,GAAG,EAAE;AADG,GADZ;AAIEI,EAAAA,GAAG,EAAE,gBAJP;AAKEG,EAAAA,KAAK,EAAE,iBALT;AAMEE,EAAAA,KAAK,EAAE,CAAC,CAAD,EAAI,EAAJ,CANT;AAOEJ,EAAAA,OAAO,EAAE,SAPX;AAQEK,EAAAA,QAAQ,EAAE;AACRC,IAAAA,SAAS,EAAE;AADH,GARZ;AAWEC,EAAAA,MAAM,EAAE,IAXV;AAYEN,EAAAA,IAAI,EAAE;AAZR,CA/Be,EA6Cf;AACEP,EAAAA,QAAQ,EAAE;AACRC,IAAAA,GAAG,EAAE;AADG,GADZ;AAIEI,EAAAA,GAAG,EAAE,SAJP;AAKEG,EAAAA,KAAK,EAAE,SALT;AAMEE,EAAAA,KAAK,EAAE,CAAC,CAAD,EAAI,GAAJ,CANT;AAOEJ,EAAAA,OAAO,EAAE,SAPX;AAQEC,EAAAA,IAAI,EAAE;AARR,CA7Ce,EAuDf;AACEF,EAAAA,GAAG,EAAE,KADP;AAEEG,EAAAA,KAAK,EAAE,WAFT;AAGEF,EAAAA,OAAO,EAAE,WAHX;AAIEK,EAAAA,QAAQ,EAAE;AAAEV,IAAAA,GAAG,EAAE;AAAP,GAJZ;AAKEM,EAAAA,IAAI,EAAE,eALR;AAMEO,EAAAA,kBAAkB,EAAE;AANtB,CAvDe,CAAjB;IAiEaC,YAAY,GAAG,SAAfA,YAAe,QAA4B;AAAA,MAAzBC,IAAyB,SAAzBA,IAAyB;AAAA,MAAnBC,YAAmB,SAAnBA,YAAmB;;
|
|
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://www.jotform.com/resources/assets/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 = ({ item, itemAccessor }) => {\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\n useEffect(() => {\n setIsLoading(true);\n setIsErrored(false);\n }, [url, 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={url || 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\nImageElement.defaultProps = {\n item: {\n opacity: 1,\n },\n itemAccessor: () => {},\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","itemAccessor","useState","isLoading","setIsLoading","isErrored","setIsErrored","opacity","roundedCorners","additionalProps","defaultURL","useEffect","_jsxs","_jsx","display","borderRadius","parseFloat","background","paddingTop","textAlign","propTypes","shape","string","oneOfType","number","id","func","defaultProps","details","itemType","Component","memo"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { useBuilderContext } from '../../utils/builderContext.js';
|
|
|
6
6
|
import { divider } from '../../utils/staticSettings.js';
|
|
7
7
|
import { jsx } from 'react/jsx-runtime';
|
|
8
8
|
|
|
9
|
-
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; }
|
|
9
|
+
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; }
|
|
10
10
|
|
|
11
11
|
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; }
|
|
12
12
|
|
|
@@ -26,7 +26,7 @@ var settings = [{
|
|
|
26
26
|
type: 'slider'
|
|
27
27
|
}];
|
|
28
28
|
var defaultItem = {
|
|
29
|
-
fontFamily: 'Circular
|
|
29
|
+
fontFamily: 'Circular',
|
|
30
30
|
opacity: 1,
|
|
31
31
|
value: ''
|
|
32
32
|
};
|
|
@@ -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 { useBuilderContext } from '../../utils/builderContext';\nimport { divider } from '../../utils/staticSettings';\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
|
|
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 { useBuilderContext } from '../../utils/builderContext';\nimport { divider } from '../../utils/staticSettings';\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,\n item: {\n fontFamily,\n id,\n isLocked,\n opacity,\n value,\n },\n onItemChange,\n}) => {\n const reportItem = useRef({});\n const { isTextEditorOpen } = useBuilderContext();\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]);\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\nRichTextElement.defaultProps = {\n isSelected: false,\n item: {},\n onItemChange: () => { },\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","useBuilderContext","isTextEditorOpen","textStyle","handleSave","useCallback","newValue","onFocus","e","currentTarget","parentElement","setAttribute","useEffect","current","_jsx","propTypes","PropTypes","bool","shape","string","number","func","defaultProps","details","height","itemType","width","Component","memo"],"mappings":";;;;;;;;;;;;;AASA,IAAMA,SAAS,GAAG,MAAlB;AAEA,IAAMC,QAAQ,GAAG,CACf;AACEC,EAAAA,GAAG,EAAE,YADP;AAEEC,EAAAA,KAAK,EAAE,aAFT;AAGEC,EAAAA,OAAO,EAAEC,SAAS,CAACC,KAHrB;AAIEC,EAAAA,OAAO,EAAE,SAJX;AAKEC,EAAAA,IAAI,EAAE;AALR,CADe,oBASVC,OAAO,CAAC,SAAD,CATG,GAWf;AACEP,EAAAA,GAAG,EAAE,SADP;AAEEC,EAAAA,KAAK,EAAE,SAFT;AAGEO,EAAAA,KAAK,EAAE,CAAC,CAAD,EAAI,GAAJ,CAHT;AAIEH,EAAAA,OAAO,EAAE,SAJX;AAKEC,EAAAA,IAAI,EAAE;AALR,CAXe,CAAjB;AAoBA,IAAMG,WAAW,GAAG;AAClBC,EAAAA,UAAU,EAAE,UADM;AAElBC,EAAAA,OAAO,EAAE,CAFS;AAGlBC,EAAAA,KAAK,EAAE;AAHW,CAApB;IAMaC,eAAe,GAAG,SAAlBA,eAAkB,OAUzB;AAAA,MATJC,UASI,QATJA,UASI;AAAA,uBARJC,IAQI;AAAA,MAPFL,UAOE,aAPFA,UAOE;AAAA,MANFM,EAME,aANFA,EAME;AAAA,MALFC,QAKE,aALFA,QAKE;AAAA,MAJFN,OAIE,aAJFA,OAIE;AAAA,MAHFC,KAGE,aAHFA,KAGE;AAAA,MADJM,YACI,QADJA,YACI;AACJ,MAAMC,UAAU,GAAGC,MAAM,CAAC,EAAD,CAAzB;;AACA,2BAA6BC,iBAAiB,EAA9C;AAAA,MAAQC,gBAAR,sBAAQA,gBAAR;;AAEA,MAAMC,SAAS,GAAG;AAChBb,IAAAA,UAAU,EAAVA,UADgB;AAEhBC,IAAAA,OAAO,EAAPA;AAFgB,GAAlB;AAKA,MAAMa,UAAU,GAAGC,WAAW,CAAC,UAAAC,QAAQ,EAAI;AACzCR,IAAAA,YAAY,CACV;AAAEF,MAAAA,EAAE,EAAFA;AAAF,KADU,EAEV;AAAEJ,MAAAA,KAAK,EAAEc;AAAT,KAFU,CAAZ;AAID,GAL6B,EAK3B,CAACV,EAAD,CAL2B,CAA9B;;AAOA,MAAMW,OAAO,GAAG,SAAVA,OAAU,CAAAC,CAAC,EAAI;AACnBA,IAAAA,CAAC,CAACC,aAAF,CAAgBC,aAAhB,CAA8BC,YAA9B,CAA2C,WAA3C,EAAwD,KAAxD;AACD,GAFD;;AAIAC,EAAAA,SAAS,CAAC,YAAM;AACd,QAAI,CAACV,gBAAL,EAAuB;AACrBH,MAAAA,UAAU,CAACc,OAAX,CAAmBH,aAAnB,CAAiCC,YAAjC,CAA8C,WAA9C,EAA2D,IAA3D;AACD;AACF,GAJQ,EAIN,CAACT,gBAAD,CAJM,CAAT;AAMA,sBACEY;AACE,IAAA,GAAG,EAAEf,UADP;AAEE,IAAA,SAAS,EAAC,0BAFZ;AAGE,IAAA,OAAO,EAAEQ,OAHX;AAIE,IAAA,KAAK,EAAEJ,SAJT;AAAA,2BAMEW,IAAC,UAAD;AACE,MAAA,OAAO,EAAEtB,KADX;AAEE,MAAA,UAAU,EAAEY,UAFd;AAGE,MAAA,QAAQ,EAAEP,QAHZ;AAIE,MAAA,UAAU,EAAEH,UAJd;AAKE,MAAA,WAAW,EAAC;AALd;AANF,IADF;AAgBD;AAEDD,eAAe,CAACsB,SAAhB,GAA4B;AAC1BrB,EAAAA,UAAU,EAAEsB,SAAS,CAACC,IADI;AAE1BtB,EAAAA,IAAI,EAAEqB,SAAS,CAACE,KAAV,CAAgB;AACpB5B,IAAAA,UAAU,EAAE0B,SAAS,CAACG,MADF;AAEpBvB,IAAAA,EAAE,EAAEoB,SAAS,CAACG,MAFM;AAGpBtB,IAAAA,QAAQ,EAAEmB,SAAS,CAACC,IAHA;AAIpB1B,IAAAA,OAAO,EAAEyB,SAAS,CAACI,MAJC;AAKpB5B,IAAAA,KAAK,EAAEwB,SAAS,CAACG;AALG,GAAhB,CAFoB;AAS1BrB,EAAAA,YAAY,EAAEkB,SAAS,CAACK;AATE,CAA5B;AAYA5B,eAAe,CAAC6B,YAAhB,GAA+B;AAC7B5B,EAAAA,UAAU,EAAE,KADiB;AAE7BC,EAAAA,IAAI,EAAE,EAFuB;AAG7BG,EAAAA,YAAY,EAAE,wBAAM;AAHS,CAA/B;AAMA,IAAMyB,OAAO,GAAG;AACdC,EAAAA,MAAM,EAAE,EADM;AAEdC,EAAAA,QAAQ,EAAE/C,SAFI;AAGdgD,EAAAA,KAAK,EAAE;AAHO,CAAhB;AAMA,eAAe;AACbC,EAAAA,SAAS,eAAEC,IAAI,CAACnC,eAAD,CADF;AAEbJ,EAAAA,WAAW,EAAXA,WAFa;AAGbkC,EAAAA,OAAO,EAAPA,OAHa;AAIbE,EAAAA,QAAQ,EAAE/C,SAJG;AAKbC,EAAAA,QAAQ,EAARA;AALa,CAAf;;;;;"}
|
|
@@ -9,7 +9,7 @@ import SvgLine from '../../assets/svg/settings/line.svg.js';
|
|
|
9
9
|
import SvgTriangle from '../../assets/svg/settings/triangle.svg.js';
|
|
10
10
|
import SvgStar from '../../assets/svg/settings/star.svg.js';
|
|
11
11
|
|
|
12
|
-
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; }
|
|
12
|
+
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; }
|
|
13
13
|
|
|
14
14
|
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; }
|
|
15
15
|
|