@jotforminc/dnd-builder 3.7.1 → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/lib/cjs/assets/svg/carets_from_center.svg.js +23 -0
  3. package/lib/cjs/assets/svg/carets_from_center.svg.js.map +1 -0
  4. package/lib/cjs/assets/svg/carets_to_center.svg.js +23 -0
  5. package/lib/cjs/assets/svg/carets_to_center.svg.js.map +1 -0
  6. package/lib/cjs/components/DraggableItem/DraggableItem.js +40 -0
  7. package/lib/cjs/components/DraggableItem/DraggableItem.js.map +1 -1
  8. package/lib/cjs/components/DraggableItem/DraggableItemActions.js +21 -9
  9. package/lib/cjs/components/DraggableItem/DraggableItemActions.js.map +1 -1
  10. package/lib/cjs/components/Panels/LeftPanel/Elements.js +30 -5
  11. package/lib/cjs/components/Panels/LeftPanel/Elements.js.map +1 -1
  12. package/lib/cjs/contexts/BuilderContext.js +18 -4
  13. package/lib/cjs/contexts/BuilderContext.js.map +1 -1
  14. package/lib/cjs/contexts/PropContext.js +0 -1
  15. package/lib/cjs/contexts/PropContext.js.map +1 -1
  16. package/lib/cjs/styles/_jfDarkTheme.scss +8 -0
  17. package/lib/cjs/styles/_jfLightTheme.scss +8 -0
  18. package/lib/cjs/styles/_jfReportsPanelElements.scss +12 -0
  19. package/lib/cjs/styles/_jfReportsPanels.scss +19 -0
  20. package/lib/cjs/styles/_jfReportsReportItem.scss +38 -0
  21. package/lib/cjs/styles/_jfReportsSVG.scss +5 -0
  22. package/lib/cjs/utils/getDefaultPresentationActions.js +4 -4
  23. package/lib/cjs/utils/getDefaultPresentationActions.js.map +1 -1
  24. package/lib/cjs/utils/icons.js +4 -0
  25. package/lib/cjs/utils/icons.js.map +1 -1
  26. package/lib/esm/assets/svg/carets_from_center.svg.js +21 -0
  27. package/lib/esm/assets/svg/carets_from_center.svg.js.map +1 -0
  28. package/lib/esm/assets/svg/carets_to_center.svg.js +21 -0
  29. package/lib/esm/assets/svg/carets_to_center.svg.js.map +1 -0
  30. package/lib/esm/components/DraggableItem/DraggableItem.js +41 -1
  31. package/lib/esm/components/DraggableItem/DraggableItem.js.map +1 -1
  32. package/lib/esm/components/DraggableItem/DraggableItemActions.js +21 -9
  33. package/lib/esm/components/DraggableItem/DraggableItemActions.js.map +1 -1
  34. package/lib/esm/components/Panels/LeftPanel/Elements.js +30 -5
  35. package/lib/esm/components/Panels/LeftPanel/Elements.js.map +1 -1
  36. package/lib/esm/contexts/BuilderContext.js +18 -4
  37. package/lib/esm/contexts/BuilderContext.js.map +1 -1
  38. package/lib/esm/contexts/PropContext.js +0 -1
  39. package/lib/esm/contexts/PropContext.js.map +1 -1
  40. package/lib/esm/styles/_jfDarkTheme.scss +8 -0
  41. package/lib/esm/styles/_jfLightTheme.scss +8 -0
  42. package/lib/esm/styles/_jfReportsPanelElements.scss +12 -0
  43. package/lib/esm/styles/_jfReportsPanels.scss +19 -0
  44. package/lib/esm/styles/_jfReportsReportItem.scss +38 -0
  45. package/lib/esm/styles/_jfReportsSVG.scss +5 -0
  46. package/lib/esm/utils/getDefaultPresentationActions.js +4 -4
  47. package/lib/esm/utils/getDefaultPresentationActions.js.map +1 -1
  48. package/lib/esm/utils/icons.js +2 -0
  49. package/lib/esm/utils/icons.js.map +1 -1
  50. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,21 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [3.8.0](https://github.com/jotform/dnd-builder/compare/v3.7.1...v3.8.0) (2026-04-27)
6
+
7
+
8
+ ### Features
9
+
10
+ * **dnd-builder:** dynamic positioning for item actions ([f6e6185](https://github.com/jotform/dnd-builder/commit/f6e6185c5f996f2ffe2d1265e46017f32e836664))
11
+ * sub section support in left panel ([9e15812](https://github.com/jotform/dnd-builder/commit/9e158126e5a6e4e4e85b63501362b28bdbe64885))
12
+
13
+
14
+ ### Bug Fixes
15
+
16
+ * **dnd-builder:** presentation expand/collapse icons change ([2454090](https://github.com/jotform/dnd-builder/commit/2454090fcfe93bd85a729abc0b993da862ce58e0))
17
+ * **dnd-builder:** sketch-picker and input updates ([2c8e92e](https://github.com/jotform/dnd-builder/commit/2c8e92ef921763ee8997351f09160dc11158704c))
18
+ * duplicate selector fix ([b72b52d](https://github.com/jotform/dnd-builder/commit/b72b52dcbca61f2258e31640b3ec60639992116c))
19
+
5
20
  ## [3.7.1](https://github.com/jotform/dnd-builder/compare/v3.7.0...v3.7.1) (2026-04-20)
6
21
 
7
22
 
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+
5
+ var _path;
6
+
7
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
8
+
9
+ function SvgCaretsFromCenter(props) {
10
+ return /*#__PURE__*/React.createElement("svg", _extends({
11
+ xmlns: "http://www.w3.org/2000/svg",
12
+ viewBox: "0 0 32 32",
13
+ fill: "none"
14
+ }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
15
+ fillRule: "evenodd",
16
+ clipRule: "evenodd",
17
+ d: "M9.333 2.667H4c-.736 0-1.333.597-1.333 1.333v5.333a1.333 1.333 0 002.276.943l1.724-1.724 4.39 4.39a1.333 1.333 0 101.886-1.885l-4.39-4.39 1.723-1.724a1.333 1.333 0 00-.943-2.276zm13.334 0a1.333 1.333 0 00-.943 2.276l1.724 1.724-4.39 4.39a1.333 1.333 0 101.885 1.886l4.39-4.39 1.724 1.723a1.333 1.333 0 002.276-.943V4c0-.736-.597-1.333-1.333-1.333h-5.333zm-9.724 18.276a1.333 1.333 0 10-1.886-1.886l-4.39 4.39-1.724-1.723a1.333 1.333 0 00-2.276.943V28c0 .736.597 1.334 1.333 1.334h5.333a1.333 1.333 0 00.943-2.277l-1.724-1.724 4.39-4.39zm6.114-1.886c.52-.52 1.365-.52 1.886 0l4.39 4.39 1.724-1.723a1.333 1.333 0 012.276.943V28c0 .736-.597 1.334-1.333 1.334h-5.333a1.333 1.333 0 01-.943-2.277l1.724-1.723-4.39-4.391a1.333 1.333 0 010-1.886z",
18
+ fill: "#000"
19
+ })));
20
+ }
21
+
22
+ module.exports = SvgCaretsFromCenter;
23
+ //# sourceMappingURL=carets_from_center.svg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"carets_from_center.svg.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+
5
+ var _path;
6
+
7
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
8
+
9
+ function SvgCaretsToCenter(props) {
10
+ return /*#__PURE__*/React.createElement("svg", _extends({
11
+ xmlns: "http://www.w3.org/2000/svg",
12
+ viewBox: "0 0 32 32",
13
+ fill: "none"
14
+ }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
15
+ fillRule: "evenodd",
16
+ clipRule: "evenodd",
17
+ d: "M3.057 3.057c.52-.52 1.365-.52 1.886 0l4.39 4.39 1.724-1.723a1.333 1.333 0 012.276.943V12c0 .736-.597 1.334-1.333 1.334H6.667a1.333 1.333 0 01-.943-2.277l1.724-1.724-4.39-4.39a1.333 1.333 0 010-1.886zm3.61 15.61a1.333 1.333 0 00-.943 2.276l1.724 1.724-4.39 4.39a1.333 1.333 0 101.885 1.886l4.39-4.39 1.724 1.723a1.333 1.333 0 002.276-.943V20c0-.736-.597-1.333-1.333-1.333H6.667zm18.666 0H20c-.736 0-1.333.597-1.333 1.333v5.333a1.333 1.333 0 002.276.943l1.724-1.724 4.39 4.39a1.333 1.333 0 001.886-1.885l-4.39-4.39 1.723-1.724a1.333 1.333 0 00-.943-2.276zM19.49 5.435a1.333 1.333 0 011.453.289l1.724 1.724 4.39-4.39a1.333 1.333 0 011.886 1.885l-4.39 4.39 1.723 1.724a1.333 1.333 0 01-.943 2.277H20A1.333 1.333 0 0118.667 12V6.667c0-.54.324-1.026.823-1.232z",
18
+ fill: "#000"
19
+ })));
20
+ }
21
+
22
+ module.exports = SvgCaretsToCenter;
23
+ //# sourceMappingURL=carets_to_center.svg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"carets_to_center.svg.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  require('core-js/modules/es.array.concat.js');
4
+ require('core-js/modules/es.array.find.js');
4
5
  var React = require('react');
5
6
  var PropTypes = require('prop-types');
6
7
  var reactDnd = require('react-dnd');
@@ -80,6 +81,12 @@ var DraggableItemContent = function DraggableItemContent(_ref) {
80
81
  var onItemResize = PropContext.usePropStore(function (state) {
81
82
  return state.onItemResize;
82
83
  });
84
+ var pages = PropContext.usePropStore(function (state) {
85
+ return state.pages;
86
+ });
87
+ var settings = PropContext.usePropStore(function (state) {
88
+ return state.settings;
89
+ });
83
90
  var activeElements = BuilderContext.useBuilderStore(function (state) {
84
91
  return state.activeElements;
85
92
  });
@@ -107,6 +114,9 @@ var DraggableItemContent = function DraggableItemContent(_ref) {
107
114
  var zoom = BuilderContext.useBuilderStore(function (state) {
108
115
  return state.zoom;
109
116
  });
117
+ var setToolbarPosition = BuilderContext.useBuilderStore(function (state) {
118
+ return state.setToolbarPosition;
119
+ });
110
120
  var isSelected = functions.isSelectedItem(_item2.id, activeElements);
111
121
 
112
122
  var select = function select(event) {
@@ -304,6 +314,36 @@ var DraggableItemContent = function DraggableItemContent(_ref) {
304
314
  width: stateWidth
305
315
  });
306
316
  }, [_item2, stateHeight, stateLeft, stateTop, stateWidth]);
317
+ React.useLayoutEffect(function () {
318
+ if (!isSelected) return;
319
+ var THRESHOLD = 80;
320
+ var currentPage = pages === null || pages === void 0 ? void 0 : pages.find(function (p) {
321
+ return p.id === pageID;
322
+ });
323
+ var pageWidth = parseInt((currentPage === null || currentPage === void 0 ? void 0 : currentPage.reportLayoutWidth) || (settings === null || settings === void 0 ? void 0 : settings.reportLayoutWidth) || '1123', 10);
324
+ var pageHeight = parseInt((currentPage === null || currentPage === void 0 ? void 0 : currentPage.reportLayoutHeight) || (settings === null || settings === void 0 ? void 0 : settings.reportLayoutHeight) || '794', 10);
325
+ var itemRight = stateLeft + stateWidth;
326
+ var itemBottom = stateTop + stateHeight;
327
+ var verticalAlignment = stateHeight > stateWidth;
328
+
329
+ var getVerticalPosition = function getVerticalPosition() {
330
+ if (stateLeft < THRESHOLD) return 'right-align';
331
+ if (pageWidth - itemRight < THRESHOLD) return 'left-align';
332
+ return 'right-align';
333
+ };
334
+
335
+ var getHorizontalPosition = function getHorizontalPosition() {
336
+ if (stateTop < THRESHOLD) return 'bottom-align';
337
+ if (pageHeight - itemBottom < THRESHOLD) return 'top-align';
338
+ return 'top-align';
339
+ };
340
+
341
+ var toolbarPosition = verticalAlignment ? getVerticalPosition() : getHorizontalPosition();
342
+ setToolbarPosition({
343
+ itemId: id,
344
+ position: toolbarPosition
345
+ });
346
+ }, [id, isSelected, pageID, pages, settings, setToolbarPosition, stateHeight, stateLeft, stateTop, stateWidth]);
307
347
  return /*#__PURE__*/jsxRuntime.jsx(ItemPositioner, {
308
348
  classNames: "reportItemWrapper".concat(isSelected ? ' isSelected' : ''),
309
349
  dataItemId: id,
@@ -1 +1 @@
1
- {"version":3,"file":"DraggableItem.js","sources":["../../../../src/components/DraggableItem/DraggableItem.js"],"sourcesContent":["import {\n useEffect, useState, memo, useMemo,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport ItemPositioner from '../ItemPositioner';\nimport { DRAGGABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getStyles, getPosition, isSelectedItem, getMatchesForItem, roundPositionValues,\n} from '../../utils/functions';\nimport PageItemResizer from '../PageItemResizer';\nimport ErrorBoundary from '../ErrorBoundary/ErrorBoundary';\nimport * as classNames from '../../constants/classNames';\nimport generateId from '../../utils/generateId';\nimport {\n addEventListenerForSidebar,\n removeEventListenerForSidebar,\n} from '../../utils/scrollZoneFunctions';\nimport { useBuilderStore } from '../../contexts/BuilderContext';\nimport { usePropStore } from '../../contexts/PropContext';\n\nconst reportItemStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst DraggableItemContent = ({\n children = null,\n item = {},\n}) => {\n const {\n height,\n id,\n isLocked,\n left,\n pageID,\n top,\n width,\n } = item;\n\n const [\n {\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n },\n setResizeSize,\n ] = useState({\n height,\n left,\n top,\n width,\n });\n\n const onAnEventTrigger = usePropStore(state => state.onAnEventTrigger);\n const onItemAdd = usePropStore(state => state.onItemAdd);\n const onItemResize = usePropStore(state => state.onItemResize);\n\n const activeElements = useBuilderStore(state => state.activeElements);\n const setActiveElements = useBuilderStore(state => state.setActiveElements);\n const setContextMenuProps = useBuilderStore(state => state.setContextMenuProps);\n const isTextEditorOpen = useBuilderStore(state => state.isTextEditorOpen);\n const setIsRightPanelOpen = useBuilderStore(state => state.setIsRightPanelOpen);\n const setIsResize = useBuilderStore(state => state.setIsResize);\n const setMatches = useBuilderStore(state => state.setMatches);\n const guides = useBuilderStore(state => state.guides);\n const zoom = useBuilderStore(state => state.zoom);\n\n const isSelected = isSelectedItem(item.id, activeElements);\n\n const select = event => {\n if (!isSelected) {\n if (!event || !event.metaKey) { // Single item selected\n setActiveElements(id, true);\n if (isLocked) {\n setIsRightPanelOpen(false);\n }\n } else {\n // Multiple items selected\n setActiveElements(id, false, false);\n setIsRightPanelOpen(false);\n }\n }\n };\n\n const canDrag = !item.isLocked && !isTextEditorOpen;\n\n const [{ isDragging }, drag, preview] = useDrag(() => ({\n canDrag: () => canDrag,\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n end: (_item, monitor) => {\n const dropResult = monitor.getDropResult();\n if (dropResult && dropResult[id]) {\n const { left: dropLeft, top: dropTop } = dropResult[id];\n setResizeSize(prev => {\n return {\n height: prev.height,\n left: dropLeft,\n top: dropTop,\n width: prev.width,\n };\n });\n }\n removeEventListenerForSidebar();\n },\n isDragging: () => isSelected,\n item: () => {\n select();\n addEventListenerForSidebar();\n return item;\n },\n type: DRAGGABLE_ITEM_TYPE,\n }), [\n item,\n canDrag,\n id,\n isSelected,\n ]);\n\n useEffect(() => {\n if (preview) {\n preview(getEmptyImage(), { captureDraggingState: true });\n }\n }, [preview]);\n\n useEffect(() => {\n setResizeSize(prev => {\n if (prev.left !== left || prev.top !== top || prev.width !== width || prev.height !== height) {\n return {\n ...prev,\n height,\n left,\n top,\n width,\n };\n }\n\n return prev;\n });\n }, [left, top, width, height]);\n\n const onResizeStop = () => {\n setIsResize(false);\n setMatches({});\n onItemResize(item, roundPositionValues({\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n }));\n };\n\n const onResize = (deltaWidth, deltaHeight, direction) => {\n setIsResize(true);\n\n const isLeft = /left/i.test(direction);\n const isTop = /top/i.test(direction);\n const isRight = /right/i.test(direction);\n const isBottom = /bottom/i.test(direction);\n\n const activeItem = {\n ...item,\n height: item.height + deltaHeight,\n left: isLeft ? item.left - deltaWidth : item.left,\n top: isTop ? item.top - deltaHeight : item.top,\n width: item.width + deltaWidth,\n };\n\n const newMatches = getMatchesForItem(activeItem, guides, zoom, direction);\n setMatches(newMatches);\n\n const snapX = newMatches?.x?.intersection / zoom;\n const snapY = newMatches?.y?.intersection / zoom;\n\n const rightEdge = item.left + item.width;\n const bottomEdge = item.top + item.height;\n\n const getWidth = () => {\n if (!snapX) return activeItem.width;\n return isRight ? snapX - item.left : rightEdge - snapX;\n };\n\n const getHeight = () => {\n if (!snapY) return activeItem.height;\n return isBottom ? snapY - item.top : bottomEdge - snapY;\n };\n\n const getLeft = () => {\n if (snapX && isLeft) return snapX;\n return isLeft ? activeItem.left : item.left;\n };\n\n const getTop = () => {\n if (snapY && isTop) return snapY;\n return isTop ? activeItem.top : item.top;\n };\n\n setResizeSize({\n height: getHeight(),\n left: getLeft(),\n top: getTop(),\n width: getWidth(),\n });\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 modifiedItem = useMemo(() => ({\n ...item,\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n }), [item, stateHeight, stateLeft, stateTop, stateWidth]);\n\n return (\n <ItemPositioner\n classNames={`reportItemWrapper${isSelected ? ' isSelected' : ''}`}\n dataItemId={id}\n style={{\n ...getStyles(left, top, isDragging),\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n }}\n >\n <ErrorBoundary\n item={item}\n level=\"item\"\n >\n <div\n ref={drag}\n className={`${classNames.reportItem}${isLocked ? ' isLocked' : ''}`}\n onContextMenu={onContextMenuClick}\n onDoubleClick={onDoubleClick}\n onDragStart={duplicateWithAltKey}\n onMouseDown={select}\n style={reportItemStyle}\n >\n {children}\n </div>\n {!isDragging && isSelected && (\n <PageItemResizer\n item={modifiedItem}\n onResize={onResize}\n onResizeStop={onResizeStop}\n />\n )}\n </ErrorBoundary>\n </ItemPositioner>\n );\n};\n\nconst DraggableItem = ({ children, item }) => (\n <DraggableItemContent item={item}>\n {children}\n </DraggableItemContent>\n);\n\nDraggableItem.propTypes = {\n children: PropTypes.any,\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};\n\nDraggableItemContent.propTypes = DraggableItem.propTypes;\n\nexport default memo(DraggableItem);\n"],"names":["reportItemStyle","height","width","DraggableItemContent","children","item","id","isLocked","left","pageID","top","useState","stateHeight","stateLeft","stateTop","stateWidth","setResizeSize","onAnEventTrigger","usePropStore","state","onItemAdd","onItemResize","activeElements","useBuilderStore","setActiveElements","setContextMenuProps","isTextEditorOpen","setIsRightPanelOpen","setIsResize","setMatches","guides","zoom","isSelected","isSelectedItem","select","event","metaKey","canDrag","useDrag","collect","monitor","isDragging","end","_item","dropResult","getDropResult","dropLeft","dropTop","prev","removeEventListenerForSidebar","addEventListenerForSidebar","type","DRAGGABLE_ITEM_TYPE","drag","preview","useEffect","getEmptyImage","captureDraggingState","onResizeStop","roundPositionValues","onResize","deltaWidth","deltaHeight","direction","isLeft","test","isTop","isRight","isBottom","activeItem","newMatches","getMatchesForItem","snapX","x","intersection","snapY","y","rightEdge","bottomEdge","getWidth","getHeight","getLeft","getTop","onContextMenuClick","e","target","contentEditable","preventDefault","itemType","position","getPosition","onDoubleClick","duplicateWithAltKey","altKey","itemID","generateId","itemToAdd","setTimeout","modifiedItem","useMemo","_jsx","getStyles","_jsxs","classNames","DraggableItem","propTypes","PropTypes","any","shape","oneOfType","number","string","bool","memo"],"mappings":"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"}
1
+ {"version":3,"file":"DraggableItem.js","sources":["../../../../src/components/DraggableItem/DraggableItem.js"],"sourcesContent":["import {\n useEffect, useLayoutEffect, useState, memo, useMemo,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport ItemPositioner from '../ItemPositioner';\nimport { DRAGGABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getStyles, getPosition, isSelectedItem, getMatchesForItem, roundPositionValues,\n} from '../../utils/functions';\nimport PageItemResizer from '../PageItemResizer';\nimport ErrorBoundary from '../ErrorBoundary/ErrorBoundary';\nimport * as classNames from '../../constants/classNames';\nimport generateId from '../../utils/generateId';\nimport {\n addEventListenerForSidebar,\n removeEventListenerForSidebar,\n} from '../../utils/scrollZoneFunctions';\nimport { useBuilderStore } from '../../contexts/BuilderContext';\nimport { usePropStore } from '../../contexts/PropContext';\n\nconst reportItemStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst DraggableItemContent = ({\n children = null,\n item = {},\n}) => {\n const {\n height,\n id,\n isLocked,\n left,\n pageID,\n top,\n width,\n } = item;\n\n const [\n {\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n },\n setResizeSize,\n ] = useState({\n height,\n left,\n top,\n width,\n });\n\n const onAnEventTrigger = usePropStore(state => state.onAnEventTrigger);\n const onItemAdd = usePropStore(state => state.onItemAdd);\n const onItemResize = usePropStore(state => state.onItemResize);\n const pages = usePropStore(state => state.pages);\n const settings = usePropStore(state => state.settings);\n\n const activeElements = useBuilderStore(state => state.activeElements);\n const setActiveElements = useBuilderStore(state => state.setActiveElements);\n const setContextMenuProps = useBuilderStore(state => state.setContextMenuProps);\n const isTextEditorOpen = useBuilderStore(state => state.isTextEditorOpen);\n const setIsRightPanelOpen = useBuilderStore(state => state.setIsRightPanelOpen);\n const setIsResize = useBuilderStore(state => state.setIsResize);\n const setMatches = useBuilderStore(state => state.setMatches);\n const guides = useBuilderStore(state => state.guides);\n const zoom = useBuilderStore(state => state.zoom);\n\n const setToolbarPosition = useBuilderStore(state => state.setToolbarPosition);\n\n const isSelected = isSelectedItem(item.id, activeElements);\n\n const select = event => {\n if (!isSelected) {\n if (!event || !event.metaKey) { // Single item selected\n setActiveElements(id, true);\n if (isLocked) {\n setIsRightPanelOpen(false);\n }\n } else {\n // Multiple items selected\n setActiveElements(id, false, false);\n setIsRightPanelOpen(false);\n }\n }\n };\n\n const canDrag = !item.isLocked && !isTextEditorOpen;\n\n const [{ isDragging }, drag, preview] = useDrag(() => ({\n canDrag: () => canDrag,\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n end: (_item, monitor) => {\n const dropResult = monitor.getDropResult();\n if (dropResult && dropResult[id]) {\n const { left: dropLeft, top: dropTop } = dropResult[id];\n setResizeSize(prev => {\n return {\n height: prev.height,\n left: dropLeft,\n top: dropTop,\n width: prev.width,\n };\n });\n }\n removeEventListenerForSidebar();\n },\n isDragging: () => isSelected,\n item: () => {\n select();\n addEventListenerForSidebar();\n return item;\n },\n type: DRAGGABLE_ITEM_TYPE,\n }), [\n item,\n canDrag,\n id,\n isSelected,\n ]);\n\n useEffect(() => {\n if (preview) {\n preview(getEmptyImage(), { captureDraggingState: true });\n }\n }, [preview]);\n\n useEffect(() => {\n setResizeSize(prev => {\n if (prev.left !== left || prev.top !== top || prev.width !== width || prev.height !== height) {\n return {\n ...prev,\n height,\n left,\n top,\n width,\n };\n }\n\n return prev;\n });\n }, [left, top, width, height]);\n\n const onResizeStop = () => {\n setIsResize(false);\n setMatches({});\n onItemResize(item, roundPositionValues({\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n }));\n };\n\n const onResize = (deltaWidth, deltaHeight, direction) => {\n setIsResize(true);\n\n const isLeft = /left/i.test(direction);\n const isTop = /top/i.test(direction);\n const isRight = /right/i.test(direction);\n const isBottom = /bottom/i.test(direction);\n\n const activeItem = {\n ...item,\n height: item.height + deltaHeight,\n left: isLeft ? item.left - deltaWidth : item.left,\n top: isTop ? item.top - deltaHeight : item.top,\n width: item.width + deltaWidth,\n };\n\n const newMatches = getMatchesForItem(activeItem, guides, zoom, direction);\n setMatches(newMatches);\n\n const snapX = newMatches?.x?.intersection / zoom;\n const snapY = newMatches?.y?.intersection / zoom;\n\n const rightEdge = item.left + item.width;\n const bottomEdge = item.top + item.height;\n\n const getWidth = () => {\n if (!snapX) return activeItem.width;\n return isRight ? snapX - item.left : rightEdge - snapX;\n };\n\n const getHeight = () => {\n if (!snapY) return activeItem.height;\n return isBottom ? snapY - item.top : bottomEdge - snapY;\n };\n\n const getLeft = () => {\n if (snapX && isLeft) return snapX;\n return isLeft ? activeItem.left : item.left;\n };\n\n const getTop = () => {\n if (snapY && isTop) return snapY;\n return isTop ? activeItem.top : item.top;\n };\n\n setResizeSize({\n height: getHeight(),\n left: getLeft(),\n top: getTop(),\n width: getWidth(),\n });\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 modifiedItem = useMemo(() => ({\n ...item,\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n }), [item, stateHeight, stateLeft, stateTop, stateWidth]);\n\n useLayoutEffect(() => {\n if (!isSelected) return;\n const THRESHOLD = 80;\n\n const currentPage = pages?.find(p => p.id === pageID);\n\n const pageWidth = parseInt(currentPage?.reportLayoutWidth || settings?.reportLayoutWidth || '1123', 10);\n const pageHeight = parseInt(currentPage?.reportLayoutHeight || settings?.reportLayoutHeight || '794', 10);\n\n const itemRight = stateLeft + stateWidth;\n const itemBottom = stateTop + stateHeight;\n\n const verticalAlignment = stateHeight > stateWidth;\n\n const getVerticalPosition = () => {\n if (stateLeft < THRESHOLD) return 'right-align';\n if (pageWidth - itemRight < THRESHOLD) return 'left-align';\n return 'right-align';\n };\n\n const getHorizontalPosition = () => {\n if (stateTop < THRESHOLD) return 'bottom-align';\n if (pageHeight - itemBottom < THRESHOLD) return 'top-align';\n return 'top-align';\n };\n\n const toolbarPosition = verticalAlignment ? getVerticalPosition() : getHorizontalPosition();\n setToolbarPosition({ itemId: id, position: toolbarPosition });\n }, [id, isSelected, pageID, pages, settings, setToolbarPosition, stateHeight, stateLeft, stateTop, stateWidth]);\n\n return (\n <ItemPositioner\n classNames={`reportItemWrapper${isSelected ? ' isSelected' : ''}`}\n dataItemId={id}\n style={{\n ...getStyles(left, top, isDragging),\n height: stateHeight,\n left: stateLeft,\n top: stateTop,\n width: stateWidth,\n }}\n >\n <ErrorBoundary\n item={item}\n level=\"item\"\n >\n <div\n ref={drag}\n className={`${classNames.reportItem}${isLocked ? ' isLocked' : ''}`}\n onContextMenu={onContextMenuClick}\n onDoubleClick={onDoubleClick}\n onDragStart={duplicateWithAltKey}\n onMouseDown={select}\n style={reportItemStyle}\n >\n {children}\n </div>\n {!isDragging && isSelected && (\n <PageItemResizer\n item={modifiedItem}\n onResize={onResize}\n onResizeStop={onResizeStop}\n />\n )}\n </ErrorBoundary>\n </ItemPositioner>\n );\n};\n\nconst DraggableItem = ({ children, item }) => (\n <DraggableItemContent item={item}>\n {children}\n </DraggableItemContent>\n);\n\nDraggableItem.propTypes = {\n children: PropTypes.any,\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};\n\nDraggableItemContent.propTypes = DraggableItem.propTypes;\n\nexport default memo(DraggableItem);\n"],"names":["reportItemStyle","height","width","DraggableItemContent","children","item","id","isLocked","left","pageID","top","useState","stateHeight","stateLeft","stateTop","stateWidth","setResizeSize","onAnEventTrigger","usePropStore","state","onItemAdd","onItemResize","pages","settings","activeElements","useBuilderStore","setActiveElements","setContextMenuProps","isTextEditorOpen","setIsRightPanelOpen","setIsResize","setMatches","guides","zoom","setToolbarPosition","isSelected","isSelectedItem","select","event","metaKey","canDrag","useDrag","collect","monitor","isDragging","end","_item","dropResult","getDropResult","dropLeft","dropTop","prev","removeEventListenerForSidebar","addEventListenerForSidebar","type","DRAGGABLE_ITEM_TYPE","drag","preview","useEffect","getEmptyImage","captureDraggingState","onResizeStop","roundPositionValues","onResize","deltaWidth","deltaHeight","direction","isLeft","test","isTop","isRight","isBottom","activeItem","newMatches","getMatchesForItem","snapX","x","intersection","snapY","y","rightEdge","bottomEdge","getWidth","getHeight","getLeft","getTop","onContextMenuClick","e","target","contentEditable","preventDefault","itemType","position","getPosition","onDoubleClick","duplicateWithAltKey","altKey","itemID","generateId","itemToAdd","setTimeout","modifiedItem","useMemo","useLayoutEffect","THRESHOLD","currentPage","find","p","pageWidth","parseInt","reportLayoutWidth","pageHeight","reportLayoutHeight","itemRight","itemBottom","verticalAlignment","getVerticalPosition","getHorizontalPosition","toolbarPosition","itemId","_jsx","getStyles","_jsxs","classNames","DraggableItem","propTypes","PropTypes","any","shape","oneOfType","number","string","bool","memo"],"mappings":"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"}
@@ -16,10 +16,23 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
16
16
  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; }
17
17
 
18
18
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
+ var DEFAULT_TOOLBAR_ALIGN = 'right-align';
19
20
 
20
- var DraggableItemActions = function DraggableItemActions() {
21
- var _reportItemToolbarPos;
21
+ var toolbarAlignForItem = function toolbarAlignForItem(state, selectedId) {
22
+ var _state$toolbarPositio;
23
+
24
+ var _ref = (_state$toolbarPositio = state.toolbarPosition) !== null && _state$toolbarPositio !== void 0 ? _state$toolbarPositio : {},
25
+ itemId = _ref.itemId,
26
+ position = _ref.position;
27
+
28
+ if (itemId == null || itemId === '' || String(itemId) !== String(selectedId)) {
29
+ return DEFAULT_TOOLBAR_ALIGN;
30
+ }
22
31
 
32
+ return position !== null && position !== void 0 ? position : DEFAULT_TOOLBAR_ALIGN;
33
+ };
34
+
35
+ var DraggableItemActions = function DraggableItemActions() {
23
36
  var _useTranslatedTexts = hooks.useTranslatedTexts(),
24
37
  DELETE_ITEM = _useTranslatedTexts.DELETE_ITEM,
25
38
  DUPLICATE_ITEM = _useTranslatedTexts.DUPLICATE_ITEM,
@@ -50,12 +63,11 @@ var DraggableItemActions = function DraggableItemActions() {
50
63
  var selectedElements = hooks.useSelectedElements();
51
64
  var item = selectedElements[0]; // ACTIONS WORKS ONLY FOR ONE ITEM
52
65
 
53
- var isLocked = item.isLocked,
54
- itemType = item.itemType;
55
- var reportItemToolbarPosition = PropContext.usePropStore(function (state) {
56
- return state.reportItemToolbarPosition;
66
+ var isLocked = item.isLocked;
67
+ var itemId = item === null || item === void 0 ? void 0 : item.id;
68
+ var position = BuilderContext.useBuilderStore(function (s) {
69
+ return toolbarAlignForItem(s, itemId);
57
70
  });
58
- var toolbarPosition = (reportItemToolbarPosition === null || reportItemToolbarPosition === void 0 ? void 0 : (_reportItemToolbarPos = reportItemToolbarPosition.toolbarPositionByItemType) === null || _reportItemToolbarPos === void 0 ? void 0 : _reportItemToolbarPos[itemType]) || 'right-align';
59
71
 
60
72
  var changeLockStatus = function changeLockStatus() {
61
73
  onAnEventTrigger(isLocked ? 'unlockReportItem' : 'lockReportItem', item.itemType);
@@ -95,7 +107,7 @@ var DraggableItemActions = function DraggableItemActions() {
95
107
 
96
108
  if (isLocked) {
97
109
  return /*#__PURE__*/jsxRuntime.jsx("div", {
98
- className: "report-item-toolbar isLocked forLocked ".concat(toolbarPosition),
110
+ className: "report-item-toolbar isLocked forLocked ".concat(position),
99
111
  children: /*#__PURE__*/jsxRuntime.jsx("button", {
100
112
  className: "report-item-toolbar-item",
101
113
  onClick: changeLockStatus,
@@ -108,7 +120,7 @@ var DraggableItemActions = function DraggableItemActions() {
108
120
  }
109
121
 
110
122
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
111
- className: "report-item-toolbar ".concat(toolbarPosition),
123
+ className: "report-item-toolbar ".concat(position),
112
124
  children: [/*#__PURE__*/jsxRuntime.jsx("button", {
113
125
  className: "report-item-toolbar-item",
114
126
  onClick: openSettings,
@@ -1 +1 @@
1
- {"version":3,"file":"DraggableItemActions.js","sources":["../../../../src/components/DraggableItem/DraggableItemActions.js"],"sourcesContent":["import * as icons from '../../utils/icons';\nimport { useSelectedElements, useTranslatedTexts } from '../../utils/hooks';\nimport { usePropStore } from '../../contexts/PropContext';\nimport { useBuilderStore } from '../../contexts/BuilderContext';\nimport generateId from '../../utils/generateId';\n\nconst DraggableItemActions = () => {\n const {\n DELETE_ITEM,\n DUPLICATE_ITEM,\n ITEM_SETTINGS,\n LOCK_ITEM,\n } = useTranslatedTexts();\n\n const onAnEventTrigger = usePropStore(state => state.onAnEventTrigger);\n const onItemChange = usePropStore(state => state.onItemChange);\n const onItemRemove = usePropStore(state => state.onItemRemove);\n const onItemAdd = usePropStore(state => state.onItemAdd);\n\n const setActiveElements = useBuilderStore(state => state.setActiveElements);\n const resetActiveElements = useBuilderStore(state => state.resetActiveElements);\n const setIsRightPanelOpen = useBuilderStore(state => state.setIsRightPanelOpen);\n\n const selectedElements = useSelectedElements();\n const item = selectedElements[0]; // ACTIONS WORKS ONLY FOR ONE ITEM\n\n const { isLocked, itemType } = item;\n\n const reportItemToolbarPosition = usePropStore(state => state.reportItemToolbarPosition);\n const toolbarPosition = reportItemToolbarPosition?.toolbarPositionByItemType?.[itemType] || 'right-align';\n\n const changeLockStatus = () => {\n onAnEventTrigger(isLocked ? 'unlockReportItem' : 'lockReportItem', item.itemType);\n onItemChange({ id: item.id }, { isLocked: isLocked ? false : true });\n if (!isLocked) {\n setIsRightPanelOpen(false);\n }\n };\n\n const deleteItem = () => {\n setIsRightPanelOpen(false);\n resetActiveElements();\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 setActiveElements(itemID, true);\n setIsRightPanelOpen(true);\n };\n\n const openSettings = () => {\n setIsRightPanelOpen(true);\n };\n\n if (isLocked) {\n return (\n <div className={`report-item-toolbar isLocked forLocked ${toolbarPosition}`}>\n <button\n className=\"report-item-toolbar-item\"\n onClick={changeLockStatus}\n type=\"button\"\n >\n <icons.lock className=\"toolbar-icon\" />\n </button>\n </div>\n );\n }\n return (\n <div className={`report-item-toolbar ${toolbarPosition}`}>\n <button\n className=\"report-item-toolbar-item\"\n onClick={openSettings}\n title={ITEM_SETTINGS}\n type=\"button\"\n >\n <icons.settings className=\"toolbar-icon\" />\n </button>\n <button\n className=\"report-item-toolbar-item\"\n onClick={duplicateItem}\n title={DUPLICATE_ITEM}\n type=\"button\"\n >\n <icons.duplicate className=\"toolbar-icon\" />\n </button>\n <button\n className=\"report-item-toolbar-item\"\n onClick={changeLockStatus}\n title={LOCK_ITEM}\n type=\"button\"\n >\n <icons.unlock className=\"toolbar-icon\" />\n </button>\n <button\n className=\"report-item-toolbar-item error\"\n onClick={deleteItem}\n title={DELETE_ITEM}\n type=\"button\"\n >\n <icons.trash className=\"toolbar-icon\" />\n </button>\n </div>\n );\n};\n\nexport default DraggableItemActions;\n"],"names":["DraggableItemActions","useTranslatedTexts","DELETE_ITEM","DUPLICATE_ITEM","ITEM_SETTINGS","LOCK_ITEM","onAnEventTrigger","usePropStore","state","onItemChange","onItemRemove","onItemAdd","setActiveElements","useBuilderStore","resetActiveElements","setIsRightPanelOpen","selectedElements","useSelectedElements","item","isLocked","itemType","reportItemToolbarPosition","toolbarPosition","toolbarPositionByItemType","changeLockStatus","id","deleteItem","duplicateItem","itemID","generateId","left","top","openSettings","_jsx","icons.lock","_jsxs","icons.settings","icons.duplicate","icons.unlock","icons.trash"],"mappings":"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"}
1
+ {"version":3,"file":"DraggableItemActions.js","sources":["../../../../src/components/DraggableItem/DraggableItemActions.js"],"sourcesContent":["import * as icons from '../../utils/icons';\nimport { useSelectedElements, useTranslatedTexts } from '../../utils/hooks';\nimport { usePropStore } from '../../contexts/PropContext';\nimport { useBuilderStore } from '../../contexts/BuilderContext';\nimport generateId from '../../utils/generateId';\n\nconst DEFAULT_TOOLBAR_ALIGN = 'right-align';\n\nconst toolbarAlignForItem = (state, selectedId) => {\n const { itemId, position } = state.toolbarPosition ?? {};\n if (itemId == null || itemId === '' || String(itemId) !== String(selectedId)) {\n return DEFAULT_TOOLBAR_ALIGN;\n }\n return position ?? DEFAULT_TOOLBAR_ALIGN;\n};\n\nconst DraggableItemActions = () => {\n const {\n DELETE_ITEM,\n DUPLICATE_ITEM,\n ITEM_SETTINGS,\n LOCK_ITEM,\n } = useTranslatedTexts();\n\n const onAnEventTrigger = usePropStore(state => state.onAnEventTrigger);\n const onItemChange = usePropStore(state => state.onItemChange);\n const onItemRemove = usePropStore(state => state.onItemRemove);\n const onItemAdd = usePropStore(state => state.onItemAdd);\n\n const setActiveElements = useBuilderStore(state => state.setActiveElements);\n const resetActiveElements = useBuilderStore(state => state.resetActiveElements);\n const setIsRightPanelOpen = useBuilderStore(state => state.setIsRightPanelOpen);\n\n const selectedElements = useSelectedElements();\n const item = selectedElements[0]; // ACTIONS WORKS ONLY FOR ONE ITEM\n\n const { isLocked } = item;\n\n const itemId = item?.id;\n const position = useBuilderStore(s => toolbarAlignForItem(s, itemId));\n\n const changeLockStatus = () => {\n onAnEventTrigger(isLocked ? 'unlockReportItem' : 'lockReportItem', item.itemType);\n onItemChange({ id: item.id }, { isLocked: isLocked ? false : true });\n if (!isLocked) {\n setIsRightPanelOpen(false);\n }\n };\n\n const deleteItem = () => {\n setIsRightPanelOpen(false);\n resetActiveElements();\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 setActiveElements(itemID, true);\n setIsRightPanelOpen(true);\n };\n\n const openSettings = () => {\n setIsRightPanelOpen(true);\n };\n\n if (isLocked) {\n return (\n <div className={`report-item-toolbar isLocked forLocked ${position}`}>\n <button\n className=\"report-item-toolbar-item\"\n onClick={changeLockStatus}\n type=\"button\"\n >\n <icons.lock className=\"toolbar-icon\" />\n </button>\n </div>\n );\n }\n return (\n <div className={`report-item-toolbar ${position}`}>\n <button\n className=\"report-item-toolbar-item\"\n onClick={openSettings}\n title={ITEM_SETTINGS}\n type=\"button\"\n >\n <icons.settings className=\"toolbar-icon\" />\n </button>\n <button\n className=\"report-item-toolbar-item\"\n onClick={duplicateItem}\n title={DUPLICATE_ITEM}\n type=\"button\"\n >\n <icons.duplicate className=\"toolbar-icon\" />\n </button>\n <button\n className=\"report-item-toolbar-item\"\n onClick={changeLockStatus}\n title={LOCK_ITEM}\n type=\"button\"\n >\n <icons.unlock className=\"toolbar-icon\" />\n </button>\n <button\n className=\"report-item-toolbar-item error\"\n onClick={deleteItem}\n title={DELETE_ITEM}\n type=\"button\"\n >\n <icons.trash className=\"toolbar-icon\" />\n </button>\n </div>\n );\n};\n\nexport default DraggableItemActions;\n"],"names":["DEFAULT_TOOLBAR_ALIGN","toolbarAlignForItem","state","selectedId","toolbarPosition","itemId","position","String","DraggableItemActions","useTranslatedTexts","DELETE_ITEM","DUPLICATE_ITEM","ITEM_SETTINGS","LOCK_ITEM","onAnEventTrigger","usePropStore","onItemChange","onItemRemove","onItemAdd","setActiveElements","useBuilderStore","resetActiveElements","setIsRightPanelOpen","selectedElements","useSelectedElements","item","isLocked","id","s","changeLockStatus","itemType","deleteItem","duplicateItem","itemID","generateId","left","top","openSettings","_jsx","icons.lock","_jsxs","icons.settings","icons.duplicate","icons.unlock","icons.trash"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  'use strict';
2
2
 
3
+ require('core-js/modules/es.array.concat.js');
3
4
  require('core-js/modules/es.array.filter.js');
4
5
  require('core-js/modules/es.array.includes.js');
5
6
  require('core-js/modules/es.array.map.js');
@@ -72,6 +73,15 @@ var Elements = function Elements() {
72
73
  var elementWillBeUsed = React.useMemo(function () {
73
74
  return Array.isArray(elements) ? elements : [];
74
75
  }, [elements]);
76
+ var flatElements = React.useMemo(function () {
77
+ return elementWillBeUsed.reduce(function (acc, item) {
78
+ if (Array.isArray(item.elements)) {
79
+ return acc.concat(item.elements);
80
+ }
81
+
82
+ return acc.concat(item);
83
+ }, []);
84
+ }, [elementWillBeUsed]);
75
85
 
76
86
  var _useState = React.useState(elementWillBeUsed),
77
87
  _useState2 = _slicedToArray(_useState, 2),
@@ -87,11 +97,28 @@ var Elements = function Elements() {
87
97
  return;
88
98
  }
89
99
 
90
- var filteredElements = elementWillBeUsed === null || elementWillBeUsed === void 0 ? void 0 : elementWillBeUsed.filter(function (element) {
100
+ var filteredElements = flatElements.filter(function (element) {
91
101
  return element.title.toLowerCase().includes(value.toLowerCase());
92
102
  });
93
103
  setSearchElements(filteredElements);
94
- }, [elementWillBeUsed]);
104
+ }, [elementWillBeUsed, flatElements]);
105
+ var renderElements = React.useCallback(function (items) {
106
+ return items.map(function (item, index) {
107
+ if (Array.isArray(item.elements)) {
108
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
109
+ className: "toolItem-subSection",
110
+ children: [/*#__PURE__*/jsxRuntime.jsx("span", {
111
+ className: "toolItem-subSection-title",
112
+ children: item.title
113
+ }), item.elements.map(function (el, elIndex) {
114
+ return /*#__PURE__*/jsxRuntime.jsx(Element, _objectSpread({}, el), elIndex.toString());
115
+ })]
116
+ }, item.section || index);
117
+ }
118
+
119
+ return /*#__PURE__*/jsxRuntime.jsx(Element, _objectSpread({}, item), index.toString());
120
+ });
121
+ }, []);
95
122
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
96
123
  className: "toolItemWrapper f-height d-flex dir-col o-auto p-relative",
97
124
  children: [/*#__PURE__*/jsxRuntime.jsx(LeftPanelCloser, {}), /*#__PURE__*/jsxRuntime.jsxs(Section, {
@@ -103,9 +130,7 @@ var Elements = function Elements() {
103
130
  onSearch: filterElementsBySearch
104
131
  }), /*#__PURE__*/jsxRuntime.jsx("div", {
105
132
  className: "toolItem-tabContent",
106
- children: searchElements.length > 0 ? searchElements.map(function (element, index) {
107
- return /*#__PURE__*/jsxRuntime.jsx(Element, _objectSpread({}, element), index.toString());
108
- }) : /*#__PURE__*/jsxRuntime.jsx("div", {
133
+ children: searchElements.length > 0 ? renderElements(searchElements) : /*#__PURE__*/jsxRuntime.jsx("div", {
109
134
  className: "no-search-result-text",
110
135
  children: NO_RESULT
111
136
  })
@@ -1 +1 @@
1
- {"version":3,"file":"Elements.js","sources":["../../../../../src/components/Panels/LeftPanel/Elements.js"],"sourcesContent":["import {\n memo,\n useState,\n useMemo,\n useCallback,\n useEffect,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport Section from '../../Builder/Section';\nimport Element from '../../Builder/Element';\nimport { leftPanelConfigPropType } from '../../../constants/propTypes';\nimport LeftPanelCloser from './LeftPanelCloser';\nimport { useBuilderStore } from '../../../contexts/BuilderContext';\nimport Tabs from '../../Builder/Tabs';\nimport { getTabsWithElements } from '../../../utils/functions';\nimport { useTranslatedTexts } from '../../../utils/hooks';\nimport SearchInput from '../../Builder/SearchInput';\nimport { usePropStore } from '../../../contexts/PropContext';\n\nconst Elements = () => {\n const leftPanelConfig = usePropStore(state => state.leftPanelConfig);\n const activeTab = useBuilderStore(state => state.activeTab);\n const { ADD_ELEMENT, NO_RESULT } = useTranslatedTexts();\n\n // Tabs\n const tabDetails = getTabsWithElements(leftPanelConfig);\n const tabs = useMemo(() => {\n return Object.keys(tabDetails);\n }, [tabDetails]);\n\n const {\n elements = {},\n hasSearch = false,\n } = useMemo(() => {\n return tabDetails[tabs[activeTab.left]] || {};\n }, [activeTab.left, tabDetails, tabs]);\n\n const elementWillBeUsed = useMemo(() => {\n return Array.isArray(elements) ? elements : [];\n }, [elements]);\n\n const [searchElements, setSearchElements] = useState(elementWillBeUsed);\n\n useEffect(() => {\n setSearchElements(elementWillBeUsed);\n }, [elementWillBeUsed]);\n\n const filterElementsBySearch = useCallback(value => {\n if (value === '') {\n setSearchElements(elementWillBeUsed);\n return;\n }\n const filteredElements = elementWillBeUsed?.filter(element => element.title.toLowerCase().includes(value.toLowerCase()));\n setSearchElements(filteredElements);\n }, [elementWillBeUsed]);\n\n return (\n <div className=\"toolItemWrapper f-height d-flex dir-col o-auto p-relative\">\n <LeftPanelCloser />\n <Section\n title={ADD_ELEMENT}\n >\n <Tabs\n panel=\"left\"\n tabs={tabs}\n />\n {hasSearch && (\n <SearchInput onSearch={filterElementsBySearch} />\n )}\n <div className=\"toolItem-tabContent\">\n {searchElements.length > 0 ? searchElements.map((element, index) => (\n <Element\n key={index.toString()}\n {...element}\n />\n )) : (\n <div className=\"no-search-result-text\">{NO_RESULT}</div>\n )}\n </div>\n </Section>\n </div>\n );\n};\n\nElements.propTypes = {\n acceptedItems: PropTypes.shape({}),\n leftPanelConfig: leftPanelConfigPropType,\n onAnEventTrigger: PropTypes.func,\n onItemAdd: PropTypes.func,\n};\n\nexport default memo(Elements);\n"],"names":["Elements","leftPanelConfig","usePropStore","state","activeTab","useBuilderStore","useTranslatedTexts","ADD_ELEMENT","NO_RESULT","tabDetails","getTabsWithElements","tabs","useMemo","Object","keys","left","elements","hasSearch","elementWillBeUsed","Array","isArray","useState","searchElements","setSearchElements","useEffect","filterElementsBySearch","useCallback","value","filteredElements","filter","element","title","toLowerCase","includes","_jsxs","_jsx","length","map","index","toString","propTypes","acceptedItems","PropTypes","shape","leftPanelConfigPropType","onAnEventTrigger","func","onItemAdd","memo"],"mappings":"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"}
1
+ {"version":3,"file":"Elements.js","sources":["../../../../../src/components/Panels/LeftPanel/Elements.js"],"sourcesContent":["import {\n memo,\n useState,\n useMemo,\n useCallback,\n useEffect,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport Section from '../../Builder/Section';\nimport Element from '../../Builder/Element';\nimport { leftPanelConfigPropType } from '../../../constants/propTypes';\nimport LeftPanelCloser from './LeftPanelCloser';\nimport { useBuilderStore } from '../../../contexts/BuilderContext';\nimport Tabs from '../../Builder/Tabs';\nimport { getTabsWithElements } from '../../../utils/functions';\nimport { useTranslatedTexts } from '../../../utils/hooks';\nimport SearchInput from '../../Builder/SearchInput';\nimport { usePropStore } from '../../../contexts/PropContext';\n\nconst Elements = () => {\n const leftPanelConfig = usePropStore(state => state.leftPanelConfig);\n const activeTab = useBuilderStore(state => state.activeTab);\n const { ADD_ELEMENT, NO_RESULT } = useTranslatedTexts();\n\n // Tabs\n const tabDetails = getTabsWithElements(leftPanelConfig);\n const tabs = useMemo(() => {\n return Object.keys(tabDetails);\n }, [tabDetails]);\n\n const {\n elements = {},\n hasSearch = false,\n } = useMemo(() => {\n return tabDetails[tabs[activeTab.left]] || {};\n }, [activeTab.left, tabDetails, tabs]);\n\n const elementWillBeUsed = useMemo(() => {\n return Array.isArray(elements) ? elements : [];\n }, [elements]);\n\n const flatElements = useMemo(() => {\n return elementWillBeUsed.reduce((acc, item) => {\n if (Array.isArray(item.elements)) {\n return acc.concat(item.elements);\n }\n return acc.concat(item);\n }, []);\n }, [elementWillBeUsed]);\n\n const [searchElements, setSearchElements] = useState(elementWillBeUsed);\n\n useEffect(() => {\n setSearchElements(elementWillBeUsed);\n }, [elementWillBeUsed]);\n\n const filterElementsBySearch = useCallback(value => {\n if (value === '') {\n setSearchElements(elementWillBeUsed);\n return;\n }\n const filteredElements = flatElements.filter(element => element.title.toLowerCase().includes(value.toLowerCase()));\n setSearchElements(filteredElements);\n }, [elementWillBeUsed, flatElements]);\n\n const renderElements = useCallback(items => {\n return items.map((item, index) => {\n if (Array.isArray(item.elements)) {\n return (\n <div\n key={item.section || index}\n className=\"toolItem-subSection\"\n >\n <span className=\"toolItem-subSection-title\">{item.title}</span>\n {item.elements.map((el, elIndex) => (\n <Element\n key={elIndex.toString()}\n {...el}\n />\n ))}\n </div>\n );\n }\n return (\n <Element\n key={index.toString()}\n {...item}\n />\n );\n });\n }, []);\n\n return (\n <div className=\"toolItemWrapper f-height d-flex dir-col o-auto p-relative\">\n <LeftPanelCloser />\n <Section\n title={ADD_ELEMENT}\n >\n <Tabs\n panel=\"left\"\n tabs={tabs}\n />\n {hasSearch && (\n <SearchInput onSearch={filterElementsBySearch} />\n )}\n <div className=\"toolItem-tabContent\">\n {searchElements.length > 0 ? renderElements(searchElements) : (\n <div className=\"no-search-result-text\">{NO_RESULT}</div>\n )}\n </div>\n </Section>\n </div>\n );\n};\n\nElements.propTypes = {\n acceptedItems: PropTypes.shape({}),\n leftPanelConfig: leftPanelConfigPropType,\n onAnEventTrigger: PropTypes.func,\n onItemAdd: PropTypes.func,\n};\n\nexport default memo(Elements);\n"],"names":["Elements","leftPanelConfig","usePropStore","state","activeTab","useBuilderStore","useTranslatedTexts","ADD_ELEMENT","NO_RESULT","tabDetails","getTabsWithElements","tabs","useMemo","Object","keys","left","elements","hasSearch","elementWillBeUsed","Array","isArray","flatElements","reduce","acc","item","concat","useState","searchElements","setSearchElements","useEffect","filterElementsBySearch","useCallback","value","filteredElements","filter","element","title","toLowerCase","includes","renderElements","items","map","index","_jsxs","_jsx","el","elIndex","toString","section","length","propTypes","acceptedItems","PropTypes","shape","leftPanelConfigPropType","onAnEventTrigger","func","onItemAdd","memo"],"mappings":"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"}
@@ -259,6 +259,16 @@ var builderStore = function builderStore(props) {
259
259
  overedPageId: overPageId
260
260
  });
261
261
  },
262
+ setToolbarPosition: function setToolbarPosition(_ref) {
263
+ var itemId = _ref.itemId,
264
+ position = _ref.position;
265
+ set({
266
+ toolbarPosition: {
267
+ itemId: itemId,
268
+ position: position
269
+ }
270
+ });
271
+ },
262
272
  setVisiblePageOrder: function setVisiblePageOrder(visiblePageOrder) {
263
273
  set({
264
274
  visiblePageOrder: visiblePageOrder
@@ -292,6 +302,10 @@ var builderStore = function builderStore(props) {
292
302
  shouldFitZoomInitially: !!props.defaultZoom,
293
303
  shouldShowRightPanelInitially: (_props$shouldShowRigh = props.shouldShowRightPanelInitially) !== null && _props$shouldShowRigh !== void 0 ? _props$shouldShowRigh : true,
294
304
  slidesListType: props.slidesListType || panel.SLIDES_LIST_TYPE_MAP.PANEL,
305
+ toolbarPosition: props.toolbarPosition || {
306
+ itemId: '',
307
+ position: 'right-align'
308
+ },
295
309
  visiblePageOrder: 1,
296
310
  zoom: (_props$defaultZoom = props.defaultZoom) !== null && _props$defaultZoom !== void 0 ? _props$defaultZoom : 0.8
297
311
  };
@@ -299,10 +313,10 @@ var builderStore = function builderStore(props) {
299
313
  };
300
314
 
301
315
  var BuilderContext = /*#__PURE__*/React.createContext(null);
302
- var BuilderProvider = function BuilderProvider(_ref) {
303
- var children = _ref.children;
304
- _ref.value;
305
- var props = _objectWithoutProperties(_ref, _excluded);
316
+ var BuilderProvider = function BuilderProvider(_ref2) {
317
+ var children = _ref2.children;
318
+ _ref2.value;
319
+ var props = _objectWithoutProperties(_ref2, _excluded);
306
320
 
307
321
  var storeRef = React.useRef();
308
322
 
@@ -1 +1 @@
1
- {"version":3,"file":"BuilderContext.js","sources":["../../../src/contexts/BuilderContext.js"],"sourcesContent":["/* eslint-disable complexity */\nimport { createContext, useContext, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { createStore, useStore } from 'zustand';\nimport { SLIDES_LIST_TYPE_MAP } from '../constants/panel';\n\nconst builderStore = props => {\n return createStore((set, get) => ({\n activeElements: props.activeElement || [],\n activeTab: props.activeTab || { left: 0, right: 0 },\n clickOutsideIgnoreSelectors: props.clickOutsideIgnoreSelectors || [],\n contextMenuProps: props.contextMenuProps || false,\n editedElement: props.editedElement || 'l_layout',\n guides: {},\n isLeftPanelOpen: props.isLeftPanelOpen || false,\n isResize: false,\n isRightPanelOpen: props.isRightPanelOpen || false,\n isSlidesNavigatorOpen: props.isSlidesNavigatorOpen || false,\n isSlidesPanelOpen: props.isSlidesPanelOpen || false,\n isTextEditorOpen: props.isTextEditorOpen || false,\n lastScrollPosition: props.lastScrollPosition || 0,\n matches: {},\n onRightPanelsToggled: props.onRightPanelsToggled || (() => {}),\n overedPageId: props.activePageId || null,\n resetActiveElements: props.resetActiveElements || (() => {\n set({ activeElements: [], editedElement: 'l_layout' });\n }),\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n setActiveElements: props.setActiveElements || ((itemID, edit = true, replace = true) => {\n const { activeElements } = get();\n set({\n activeElements: replace ? [itemID] : [...activeElements, itemID],\n ...edit ? { editedElement: !itemID ? 'l_layout' : `i_${itemID}` } : {},\n });\n }),\n setActiveElementsSelection: props.setActiveElementsSelection || (itemIDs => {\n if (!itemIDs || itemIDs.length === 0) {\n set({ activeElements: [], editedElement: 'l_layout' });\n } else if (itemIDs.length === 1) {\n set({\n activeElements: itemIDs,\n editedElement: `i_${itemIDs[0]}`,\n });\n } else {\n set({ activeElements: itemIDs });\n }\n }),\n setActiveTab: props.setActiveTab || ((panel, tabIndex) => {\n const { activeTab } = get();\n set({ activeTab: { ...activeTab, [panel]: tabIndex } });\n }),\n setContextMenuProps: status => {\n set({ contextMenuProps: status });\n },\n setEditedElement: id => {\n set({ editedElement: id });\n },\n setGuides: guides => {\n set({ guides });\n },\n setIsLeftPanelOpen: props.setIsLeftPanelOpen || (status => {\n const {\n isEnoughCanvasSize,\n isSlidesNavigatorOpen: previousIsSlidesNavigatorOpen,\n restoreSlidesNavigatorWhenLeftCloses,\n } = get();\n\n if (status) {\n if (previousIsSlidesNavigatorOpen) {\n set({\n isLeftPanelOpen: true,\n isSlidesNavigatorOpen: false,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: true,\n ...!isEnoughCanvasSize && { isRightPanelOpen: false },\n });\n } else {\n set({\n isLeftPanelOpen: true,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n ...!isEnoughCanvasSize && { isRightPanelOpen: false },\n });\n }\n return;\n }\n\n if (restoreSlidesNavigatorWhenLeftCloses) {\n set({\n isLeftPanelOpen: false,\n isSlidesNavigatorOpen: true,\n restoreSlidesNavigatorWhenLeftCloses: false,\n });\n return;\n }\n\n set({ isLeftPanelOpen: false });\n }),\n setIsResize: status => {\n set({ isResize: status });\n },\n setIsRightPanelOpen: props.setIsRightPanelOpen || (status => {\n const { isEnoughCanvasSize, onRightPanelsToggled } = get();\n set({\n isRightPanelOpen: status,\n ...status && !isEnoughCanvasSize && {\n isLeftPanelOpen: false,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n },\n ...status && { isSlidesPanelOpen: false },\n });\n onRightPanelsToggled(status);\n }),\n setIsSlidesNavigatorOpen: status => {\n const {\n isLeftPanelOpen: previousIsLeftPanelOpen,\n restoreLeftPanelWhenNavigatorCloses,\n } = get();\n\n if (status) {\n if (previousIsLeftPanelOpen) {\n set({\n isLeftPanelOpen: false,\n isSlidesNavigatorOpen: true,\n restoreLeftPanelWhenNavigatorCloses: true,\n restoreSlidesNavigatorWhenLeftCloses: false,\n });\n } else {\n set({\n isSlidesNavigatorOpen: true,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n });\n }\n return;\n }\n\n if (restoreLeftPanelWhenNavigatorCloses) {\n set({\n isLeftPanelOpen: true,\n isSlidesNavigatorOpen: false,\n restoreLeftPanelWhenNavigatorCloses: false,\n });\n return;\n }\n\n set({\n isSlidesNavigatorOpen: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n });\n },\n setIsSlidesPanelOpen: props.setIsSlidesPanelOpen || (status => {\n const { isEnoughCanvasSize, onRightPanelsToggled } = get();\n set({\n isSlidesPanelOpen: status,\n ...status && !isEnoughCanvasSize && {\n isLeftPanelOpen: false,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n },\n ...status && { isRightPanelOpen: false },\n });\n onRightPanelsToggled(status);\n }),\n setIsTextEditorOpen: status => {\n set({ isTextEditorOpen: status });\n },\n setMatches: matches => {\n set({ matches });\n },\n setOutPage: outPageId => {\n set({ overedPageId: outPageId });\n },\n setOverPage: overPageId => {\n set({ overedPageId: overPageId });\n },\n setVisiblePageOrder: visiblePageOrder => {\n set({ visiblePageOrder });\n },\n setZoom: (zoom, layoutWidth) => {\n set({ zoom });\n if (layoutWidth && get().mode === 'customize') {\n const { clientWidth: paneWidth } = document.querySelector('.jfReport-pane .toolItemWrapper');\n const sceneWidth = parseInt(layoutWidth, 10) * zoom;\n if (window.innerWidth - sceneWidth + 100 > (paneWidth * 2)) {\n set({ isEnoughCanvasSize: true });\n } else {\n set({\n isEnoughCanvasSize: false,\n isLeftPanelOpen: false,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n });\n }\n }\n },\n shouldFitZoomInitially: !!props.defaultZoom,\n shouldShowRightPanelInitially: props.shouldShowRightPanelInitially ?? true,\n slidesListType: props.slidesListType || SLIDES_LIST_TYPE_MAP.PANEL,\n visiblePageOrder: 1,\n zoom: props.defaultZoom ?? 0.8,\n }));\n};\n\nconst BuilderContext = createContext(null);\n\nexport const BuilderProvider = ({ children, value, ...props }) => {\n const storeRef = useRef();\n if (!storeRef.current) {\n storeRef.current = builderStore(props);\n }\n\n return (\n <BuilderContext.Provider value={storeRef.current}>\n {children}\n </BuilderContext.Provider>\n );\n};\n\nBuilderProvider.propTypes = {\n children: PropTypes.any,\n value: PropTypes.object,\n};\n\nexport const BuilderConsumer = BuilderContext.Consumer;\n\nexport const useBuilderStore = selector => {\n const context = useContext(BuilderContext);\n if (!context) {\n throw new Error('useBuilderStore must be used with BuilderProvider!');\n }\n return useStore(context, selector);\n};\n"],"names":["builderStore","props","createStore","set","get","activeElements","activeElement","activeTab","left","right","clickOutsideIgnoreSelectors","contextMenuProps","editedElement","guides","isLeftPanelOpen","isResize","isRightPanelOpen","isSlidesNavigatorOpen","isSlidesPanelOpen","isTextEditorOpen","lastScrollPosition","matches","onRightPanelsToggled","overedPageId","activePageId","resetActiveElements","restoreLeftPanelWhenNavigatorCloses","restoreSlidesNavigatorWhenLeftCloses","setActiveElements","itemID","edit","replace","setActiveElementsSelection","itemIDs","length","setActiveTab","panel","tabIndex","setContextMenuProps","status","setEditedElement","id","setGuides","setIsLeftPanelOpen","isEnoughCanvasSize","previousIsSlidesNavigatorOpen","setIsResize","setIsRightPanelOpen","setIsSlidesNavigatorOpen","previousIsLeftPanelOpen","setIsSlidesPanelOpen","setIsTextEditorOpen","setMatches","setOutPage","outPageId","setOverPage","overPageId","setVisiblePageOrder","visiblePageOrder","setZoom","zoom","layoutWidth","mode","document","querySelector","paneWidth","clientWidth","sceneWidth","parseInt","window","innerWidth","shouldFitZoomInitially","defaultZoom","shouldShowRightPanelInitially","slidesListType","SLIDES_LIST_TYPE_MAP","PANEL","BuilderContext","createContext","BuilderProvider","children","value","storeRef","useRef","current","_jsx","propTypes","PropTypes","any","object","Consumer","useBuilderStore","selector","context","useContext","Error","useStore"],"mappings":"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"}
1
+ {"version":3,"file":"BuilderContext.js","sources":["../../../src/contexts/BuilderContext.js"],"sourcesContent":["/* eslint-disable complexity */\nimport { createContext, useContext, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { createStore, useStore } from 'zustand';\nimport { SLIDES_LIST_TYPE_MAP } from '../constants/panel';\n\nconst builderStore = props => {\n return createStore((set, get) => ({\n activeElements: props.activeElement || [],\n activeTab: props.activeTab || { left: 0, right: 0 },\n clickOutsideIgnoreSelectors: props.clickOutsideIgnoreSelectors || [],\n contextMenuProps: props.contextMenuProps || false,\n editedElement: props.editedElement || 'l_layout',\n guides: {},\n isLeftPanelOpen: props.isLeftPanelOpen || false,\n isResize: false,\n isRightPanelOpen: props.isRightPanelOpen || false,\n isSlidesNavigatorOpen: props.isSlidesNavigatorOpen || false,\n isSlidesPanelOpen: props.isSlidesPanelOpen || false,\n isTextEditorOpen: props.isTextEditorOpen || false,\n lastScrollPosition: props.lastScrollPosition || 0,\n matches: {},\n onRightPanelsToggled: props.onRightPanelsToggled || (() => {}),\n overedPageId: props.activePageId || null,\n resetActiveElements: props.resetActiveElements || (() => {\n set({ activeElements: [], editedElement: 'l_layout' });\n }),\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n setActiveElements: props.setActiveElements || ((itemID, edit = true, replace = true) => {\n const { activeElements } = get();\n set({\n activeElements: replace ? [itemID] : [...activeElements, itemID],\n ...edit ? { editedElement: !itemID ? 'l_layout' : `i_${itemID}` } : {},\n });\n }),\n setActiveElementsSelection: props.setActiveElementsSelection || (itemIDs => {\n if (!itemIDs || itemIDs.length === 0) {\n set({ activeElements: [], editedElement: 'l_layout' });\n } else if (itemIDs.length === 1) {\n set({\n activeElements: itemIDs,\n editedElement: `i_${itemIDs[0]}`,\n });\n } else {\n set({ activeElements: itemIDs });\n }\n }),\n setActiveTab: props.setActiveTab || ((panel, tabIndex) => {\n const { activeTab } = get();\n set({ activeTab: { ...activeTab, [panel]: tabIndex } });\n }),\n setContextMenuProps: status => {\n set({ contextMenuProps: status });\n },\n setEditedElement: id => {\n set({ editedElement: id });\n },\n setGuides: guides => {\n set({ guides });\n },\n setIsLeftPanelOpen: props.setIsLeftPanelOpen || (status => {\n const {\n isEnoughCanvasSize,\n isSlidesNavigatorOpen: previousIsSlidesNavigatorOpen,\n restoreSlidesNavigatorWhenLeftCloses,\n } = get();\n\n if (status) {\n if (previousIsSlidesNavigatorOpen) {\n set({\n isLeftPanelOpen: true,\n isSlidesNavigatorOpen: false,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: true,\n ...!isEnoughCanvasSize && { isRightPanelOpen: false },\n });\n } else {\n set({\n isLeftPanelOpen: true,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n ...!isEnoughCanvasSize && { isRightPanelOpen: false },\n });\n }\n return;\n }\n\n if (restoreSlidesNavigatorWhenLeftCloses) {\n set({\n isLeftPanelOpen: false,\n isSlidesNavigatorOpen: true,\n restoreSlidesNavigatorWhenLeftCloses: false,\n });\n return;\n }\n\n set({ isLeftPanelOpen: false });\n }),\n setIsResize: status => {\n set({ isResize: status });\n },\n setIsRightPanelOpen: props.setIsRightPanelOpen || (status => {\n const { isEnoughCanvasSize, onRightPanelsToggled } = get();\n set({\n isRightPanelOpen: status,\n ...status && !isEnoughCanvasSize && {\n isLeftPanelOpen: false,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n },\n ...status && { isSlidesPanelOpen: false },\n });\n onRightPanelsToggled(status);\n }),\n setIsSlidesNavigatorOpen: status => {\n const {\n isLeftPanelOpen: previousIsLeftPanelOpen,\n restoreLeftPanelWhenNavigatorCloses,\n } = get();\n\n if (status) {\n if (previousIsLeftPanelOpen) {\n set({\n isLeftPanelOpen: false,\n isSlidesNavigatorOpen: true,\n restoreLeftPanelWhenNavigatorCloses: true,\n restoreSlidesNavigatorWhenLeftCloses: false,\n });\n } else {\n set({\n isSlidesNavigatorOpen: true,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n });\n }\n return;\n }\n\n if (restoreLeftPanelWhenNavigatorCloses) {\n set({\n isLeftPanelOpen: true,\n isSlidesNavigatorOpen: false,\n restoreLeftPanelWhenNavigatorCloses: false,\n });\n return;\n }\n\n set({\n isSlidesNavigatorOpen: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n });\n },\n setIsSlidesPanelOpen: props.setIsSlidesPanelOpen || (status => {\n const { isEnoughCanvasSize, onRightPanelsToggled } = get();\n set({\n isSlidesPanelOpen: status,\n ...status && !isEnoughCanvasSize && {\n isLeftPanelOpen: false,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n },\n ...status && { isRightPanelOpen: false },\n });\n onRightPanelsToggled(status);\n }),\n setIsTextEditorOpen: status => {\n set({ isTextEditorOpen: status });\n },\n setMatches: matches => {\n set({ matches });\n },\n setOutPage: outPageId => {\n set({ overedPageId: outPageId });\n },\n setOverPage: overPageId => {\n set({ overedPageId: overPageId });\n },\n setToolbarPosition: ({ itemId, position }) => {\n set({ toolbarPosition: { itemId, position } });\n },\n setVisiblePageOrder: visiblePageOrder => {\n set({ visiblePageOrder });\n },\n setZoom: (zoom, layoutWidth) => {\n set({ zoom });\n if (layoutWidth && get().mode === 'customize') {\n const { clientWidth: paneWidth } = document.querySelector('.jfReport-pane .toolItemWrapper');\n const sceneWidth = parseInt(layoutWidth, 10) * zoom;\n if (window.innerWidth - sceneWidth + 100 > (paneWidth * 2)) {\n set({ isEnoughCanvasSize: true });\n } else {\n set({\n isEnoughCanvasSize: false,\n isLeftPanelOpen: false,\n restoreLeftPanelWhenNavigatorCloses: false,\n restoreSlidesNavigatorWhenLeftCloses: false,\n });\n }\n }\n },\n shouldFitZoomInitially: !!props.defaultZoom,\n shouldShowRightPanelInitially: props.shouldShowRightPanelInitially ?? true,\n slidesListType: props.slidesListType || SLIDES_LIST_TYPE_MAP.PANEL,\n toolbarPosition: props.toolbarPosition || { itemId: '', position: 'right-align' },\n visiblePageOrder: 1,\n zoom: props.defaultZoom ?? 0.8,\n }));\n};\n\nconst BuilderContext = createContext(null);\n\nexport const BuilderProvider = ({ children, value, ...props }) => {\n const storeRef = useRef();\n if (!storeRef.current) {\n storeRef.current = builderStore(props);\n }\n\n return (\n <BuilderContext.Provider value={storeRef.current}>\n {children}\n </BuilderContext.Provider>\n );\n};\n\nBuilderProvider.propTypes = {\n children: PropTypes.any,\n value: PropTypes.object,\n};\n\nexport const BuilderConsumer = BuilderContext.Consumer;\n\nexport const useBuilderStore = selector => {\n const context = useContext(BuilderContext);\n if (!context) {\n throw new Error('useBuilderStore must be used with BuilderProvider!');\n }\n return useStore(context, selector);\n};\n"],"names":["builderStore","props","createStore","set","get","activeElements","activeElement","activeTab","left","right","clickOutsideIgnoreSelectors","contextMenuProps","editedElement","guides","isLeftPanelOpen","isResize","isRightPanelOpen","isSlidesNavigatorOpen","isSlidesPanelOpen","isTextEditorOpen","lastScrollPosition","matches","onRightPanelsToggled","overedPageId","activePageId","resetActiveElements","restoreLeftPanelWhenNavigatorCloses","restoreSlidesNavigatorWhenLeftCloses","setActiveElements","itemID","edit","replace","setActiveElementsSelection","itemIDs","length","setActiveTab","panel","tabIndex","setContextMenuProps","status","setEditedElement","id","setGuides","setIsLeftPanelOpen","isEnoughCanvasSize","previousIsSlidesNavigatorOpen","setIsResize","setIsRightPanelOpen","setIsSlidesNavigatorOpen","previousIsLeftPanelOpen","setIsSlidesPanelOpen","setIsTextEditorOpen","setMatches","setOutPage","outPageId","setOverPage","overPageId","setToolbarPosition","itemId","position","toolbarPosition","setVisiblePageOrder","visiblePageOrder","setZoom","zoom","layoutWidth","mode","document","querySelector","paneWidth","clientWidth","sceneWidth","parseInt","window","innerWidth","shouldFitZoomInitially","defaultZoom","shouldShowRightPanelInitially","slidesListType","SLIDES_LIST_TYPE_MAP","PANEL","BuilderContext","createContext","BuilderProvider","children","value","storeRef","useRef","current","_jsx","propTypes","PropTypes","any","object","Consumer","useBuilderStore","selector","context","useContext","Error","useStore"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAMA,YAAY,GAAG,SAAfA,YAAe,CAAAC,KAAK,EAAI;AAC5B,SAAOC,mBAAW,CAAC,UAACC,GAAD,EAAMC,GAAN;AAAA;;AAAA,WAAe;AAChCC,MAAAA,cAAc,EAAEJ,KAAK,CAACK,aAAN,IAAuB,EADP;AAEhCC,MAAAA,SAAS,EAAEN,KAAK,CAACM,SAAN,IAAmB;AAAEC,QAAAA,IAAI,EAAE,CAAR;AAAWC,QAAAA,KAAK,EAAE;AAAlB,OAFE;AAGhCC,MAAAA,2BAA2B,EAAET,KAAK,CAACS,2BAAN,IAAqC,EAHlC;AAIhCC,MAAAA,gBAAgB,EAAEV,KAAK,CAACU,gBAAN,IAA0B,KAJZ;AAKhCC,MAAAA,aAAa,EAAEX,KAAK,CAACW,aAAN,IAAuB,UALN;AAMhCC,MAAAA,MAAM,EAAE,EANwB;AAOhCC,MAAAA,eAAe,EAAEb,KAAK,CAACa,eAAN,IAAyB,KAPV;AAQhCC,MAAAA,QAAQ,EAAE,KARsB;AAShCC,MAAAA,gBAAgB,EAAEf,KAAK,CAACe,gBAAN,IAA0B,KATZ;AAUhCC,MAAAA,qBAAqB,EAAEhB,KAAK,CAACgB,qBAAN,IAA+B,KAVtB;AAWhCC,MAAAA,iBAAiB,EAAEjB,KAAK,CAACiB,iBAAN,IAA2B,KAXd;AAYhCC,MAAAA,gBAAgB,EAAElB,KAAK,CAACkB,gBAAN,IAA0B,KAZZ;AAahCC,MAAAA,kBAAkB,EAAEnB,KAAK,CAACmB,kBAAN,IAA4B,CAbhB;AAchCC,MAAAA,OAAO,EAAE,EAduB;AAehCC,MAAAA,oBAAoB,EAAErB,KAAK,CAACqB,oBAAN,IAA+B,YAAM,EAf3B;AAgBhCC,MAAAA,YAAY,EAAEtB,KAAK,CAACuB,YAAN,IAAsB,IAhBJ;AAiBhCC,MAAAA,mBAAmB,EAAExB,KAAK,CAACwB,mBAAN,IAA8B,YAAM;AACvDtB,QAAAA,GAAG,CAAC;AAAEE,UAAAA,cAAc,EAAE,EAAlB;AAAsBO,UAAAA,aAAa,EAAE;AAArC,SAAD,CAAH;AACD,OAnB+B;AAoBhCc,MAAAA,mCAAmC,EAAE,KApBL;AAqBhCC,MAAAA,oCAAoC,EAAE,KArBN;AAsBhCC,MAAAA,iBAAiB,EAAE3B,KAAK,CAAC2B,iBAAN,IAA4B,UAACC,MAAD,EAAyC;AAAA,YAAhCC,IAAgC,uEAAzB,IAAyB;AAAA,YAAnBC,OAAmB,uEAAT,IAAS;;AACtF,mBAA2B3B,GAAG,EAA9B;AAAA,YAAQC,cAAR,QAAQA,cAAR;;AACAF,QAAAA,GAAG;AACDE,UAAAA,cAAc,EAAE0B,OAAO,GAAG,CAACF,MAAD,CAAH,gCAAkBxB,cAAlB,IAAkCwB,MAAlC;AADtB,WAEEC,IAAI,GAAG;AAAElB,UAAAA,aAAa,EAAE,CAACiB,MAAD,GAAU,UAAV,eAA4BA,MAA5B;AAAjB,SAAH,GAA6D,EAFnE,EAAH;AAID,OA5B+B;AA6BhCG,MAAAA,0BAA0B,EAAE/B,KAAK,CAAC+B,0BAAN,IAAqC,UAAAC,OAAO,EAAI;AAC1E,YAAI,CAACA,OAAD,IAAYA,OAAO,CAACC,MAAR,KAAmB,CAAnC,EAAsC;AACpC/B,UAAAA,GAAG,CAAC;AAAEE,YAAAA,cAAc,EAAE,EAAlB;AAAsBO,YAAAA,aAAa,EAAE;AAArC,WAAD,CAAH;AACD,SAFD,MAEO,IAAIqB,OAAO,CAACC,MAAR,KAAmB,CAAvB,EAA0B;AAC/B/B,UAAAA,GAAG,CAAC;AACFE,YAAAA,cAAc,EAAE4B,OADd;AAEFrB,YAAAA,aAAa,cAAOqB,OAAO,CAAC,CAAD,CAAd;AAFX,WAAD,CAAH;AAID,SALM,MAKA;AACL9B,UAAAA,GAAG,CAAC;AAAEE,YAAAA,cAAc,EAAE4B;AAAlB,WAAD,CAAH;AACD;AACF,OAxC+B;AAyChCE,MAAAA,YAAY,EAAElC,KAAK,CAACkC,YAAN,IAAuB,UAACC,KAAD,EAAQC,QAAR,EAAqB;AACxD,oBAAsBjC,GAAG,EAAzB;AAAA,YAAQG,SAAR,SAAQA,SAAR;;AACAJ,QAAAA,GAAG,CAAC;AAAEI,UAAAA,SAAS,kCAAOA,SAAP,2BAAmB6B,KAAnB,EAA2BC,QAA3B;AAAX,SAAD,CAAH;AACD,OA5C+B;AA6ChCC,MAAAA,mBAAmB,EAAE,6BAAAC,MAAM,EAAI;AAC7BpC,QAAAA,GAAG,CAAC;AAAEQ,UAAAA,gBAAgB,EAAE4B;AAApB,SAAD,CAAH;AACD,OA/C+B;AAgDhCC,MAAAA,gBAAgB,EAAE,0BAAAC,EAAE,EAAI;AACtBtC,QAAAA,GAAG,CAAC;AAAES,UAAAA,aAAa,EAAE6B;AAAjB,SAAD,CAAH;AACD,OAlD+B;AAmDhCC,MAAAA,SAAS,EAAE,mBAAA7B,MAAM,EAAI;AACnBV,QAAAA,GAAG,CAAC;AAAEU,UAAAA,MAAM,EAANA;AAAF,SAAD,CAAH;AACD,OArD+B;AAsDhC8B,MAAAA,kBAAkB,EAAE1C,KAAK,CAAC0C,kBAAN,IAA6B,UAAAJ,MAAM,EAAI;AACzD,oBAIInC,GAAG,EAJP;AAAA,YACEwC,kBADF,SACEA,kBADF;AAAA,YAEyBC,6BAFzB,SAEE5B,qBAFF;AAAA,YAGEU,oCAHF,SAGEA,oCAHF;;AAMA,YAAIY,MAAJ,EAAY;AACV,cAAIM,6BAAJ,EAAmC;AACjC1C,YAAAA,GAAG;AACDW,cAAAA,eAAe,EAAE,IADhB;AAEDG,cAAAA,qBAAqB,EAAE,KAFtB;AAGDS,cAAAA,mCAAmC,EAAE,KAHpC;AAIDC,cAAAA,oCAAoC,EAAE;AAJrC,eAKE,CAACiB,kBAAD,IAAuB;AAAE5B,cAAAA,gBAAgB,EAAE;AAApB,aALzB,EAAH;AAOD,WARD,MAQO;AACLb,YAAAA,GAAG;AACDW,cAAAA,eAAe,EAAE,IADhB;AAEDY,cAAAA,mCAAmC,EAAE,KAFpC;AAGDC,cAAAA,oCAAoC,EAAE;AAHrC,eAIE,CAACiB,kBAAD,IAAuB;AAAE5B,cAAAA,gBAAgB,EAAE;AAApB,aAJzB,EAAH;AAMD;;AACD;AACD;;AAED,YAAIW,oCAAJ,EAA0C;AACxCxB,UAAAA,GAAG,CAAC;AACFW,YAAAA,eAAe,EAAE,KADf;AAEFG,YAAAA,qBAAqB,EAAE,IAFrB;AAGFU,YAAAA,oCAAoC,EAAE;AAHpC,WAAD,CAAH;AAKA;AACD;;AAEDxB,QAAAA,GAAG,CAAC;AAAEW,UAAAA,eAAe,EAAE;AAAnB,SAAD,CAAH;AACD,OA3F+B;AA4FhCgC,MAAAA,WAAW,EAAE,qBAAAP,MAAM,EAAI;AACrBpC,QAAAA,GAAG,CAAC;AAAEY,UAAAA,QAAQ,EAAEwB;AAAZ,SAAD,CAAH;AACD,OA9F+B;AA+FhCQ,MAAAA,mBAAmB,EAAE9C,KAAK,CAAC8C,mBAAN,IAA8B,UAAAR,MAAM,EAAI;AAC3D,oBAAqDnC,GAAG,EAAxD;AAAA,YAAQwC,kBAAR,SAAQA,kBAAR;AAAA,YAA4BtB,oBAA5B,SAA4BA,oBAA5B;;AACAnB,QAAAA,GAAG;AACDa,UAAAA,gBAAgB,EAAEuB;AADjB,WAEEA,MAAM,IAAI,CAACK,kBAAX,IAAiC;AAClC9B,UAAAA,eAAe,EAAE,KADiB;AAElCY,UAAAA,mCAAmC,EAAE,KAFH;AAGlCC,UAAAA,oCAAoC,EAAE;AAHJ,SAFnC,GAOEY,MAAM,IAAI;AAAErB,UAAAA,iBAAiB,EAAE;AAArB,SAPZ,EAAH;AASAI,QAAAA,oBAAoB,CAACiB,MAAD,CAApB;AACD,OA3G+B;AA4GhCS,MAAAA,wBAAwB,EAAE,kCAAAT,MAAM,EAAI;AAClC,oBAGInC,GAAG,EAHP;AAAA,YACmB6C,uBADnB,SACEnC,eADF;AAAA,YAEEY,mCAFF,SAEEA,mCAFF;;AAKA,YAAIa,MAAJ,EAAY;AACV,cAAIU,uBAAJ,EAA6B;AAC3B9C,YAAAA,GAAG,CAAC;AACFW,cAAAA,eAAe,EAAE,KADf;AAEFG,cAAAA,qBAAqB,EAAE,IAFrB;AAGFS,cAAAA,mCAAmC,EAAE,IAHnC;AAIFC,cAAAA,oCAAoC,EAAE;AAJpC,aAAD,CAAH;AAMD,WAPD,MAOO;AACLxB,YAAAA,GAAG,CAAC;AACFc,cAAAA,qBAAqB,EAAE,IADrB;AAEFS,cAAAA,mCAAmC,EAAE,KAFnC;AAGFC,cAAAA,oCAAoC,EAAE;AAHpC,aAAD,CAAH;AAKD;;AACD;AACD;;AAED,YAAID,mCAAJ,EAAyC;AACvCvB,UAAAA,GAAG,CAAC;AACFW,YAAAA,eAAe,EAAE,IADf;AAEFG,YAAAA,qBAAqB,EAAE,KAFrB;AAGFS,YAAAA,mCAAmC,EAAE;AAHnC,WAAD,CAAH;AAKA;AACD;;AAEDvB,QAAAA,GAAG,CAAC;AACFc,UAAAA,qBAAqB,EAAE,KADrB;AAEFU,UAAAA,oCAAoC,EAAE;AAFpC,SAAD,CAAH;AAID,OAjJ+B;AAkJhCuB,MAAAA,oBAAoB,EAAEjD,KAAK,CAACiD,oBAAN,IAA+B,UAAAX,MAAM,EAAI;AAC7D,oBAAqDnC,GAAG,EAAxD;AAAA,YAAQwC,kBAAR,SAAQA,kBAAR;AAAA,YAA4BtB,oBAA5B,SAA4BA,oBAA5B;;AACAnB,QAAAA,GAAG;AACDe,UAAAA,iBAAiB,EAAEqB;AADlB,WAEEA,MAAM,IAAI,CAACK,kBAAX,IAAiC;AAClC9B,UAAAA,eAAe,EAAE,KADiB;AAElCY,UAAAA,mCAAmC,EAAE,KAFH;AAGlCC,UAAAA,oCAAoC,EAAE;AAHJ,SAFnC,GAOEY,MAAM,IAAI;AAAEvB,UAAAA,gBAAgB,EAAE;AAApB,SAPZ,EAAH;AASAM,QAAAA,oBAAoB,CAACiB,MAAD,CAApB;AACD,OA9J+B;AA+JhCY,MAAAA,mBAAmB,EAAE,6BAAAZ,MAAM,EAAI;AAC7BpC,QAAAA,GAAG,CAAC;AAAEgB,UAAAA,gBAAgB,EAAEoB;AAApB,SAAD,CAAH;AACD,OAjK+B;AAkKhCa,MAAAA,UAAU,EAAE,oBAAA/B,OAAO,EAAI;AACrBlB,QAAAA,GAAG,CAAC;AAAEkB,UAAAA,OAAO,EAAPA;AAAF,SAAD,CAAH;AACD,OApK+B;AAqKhCgC,MAAAA,UAAU,EAAE,oBAAAC,SAAS,EAAI;AACvBnD,QAAAA,GAAG,CAAC;AAAEoB,UAAAA,YAAY,EAAE+B;AAAhB,SAAD,CAAH;AACD,OAvK+B;AAwKhCC,MAAAA,WAAW,EAAE,qBAAAC,UAAU,EAAI;AACzBrD,QAAAA,GAAG,CAAC;AAAEoB,UAAAA,YAAY,EAAEiC;AAAhB,SAAD,CAAH;AACD,OA1K+B;AA2KhCC,MAAAA,kBAAkB,EAAE,kCAA0B;AAAA,YAAvBC,MAAuB,QAAvBA,MAAuB;AAAA,YAAfC,QAAe,QAAfA,QAAe;AAC5CxD,QAAAA,GAAG,CAAC;AAAEyD,UAAAA,eAAe,EAAE;AAAEF,YAAAA,MAAM,EAANA,MAAF;AAAUC,YAAAA,QAAQ,EAARA;AAAV;AAAnB,SAAD,CAAH;AACD,OA7K+B;AA8KhCE,MAAAA,mBAAmB,EAAE,6BAAAC,gBAAgB,EAAI;AACvC3D,QAAAA,GAAG,CAAC;AAAE2D,UAAAA,gBAAgB,EAAhBA;AAAF,SAAD,CAAH;AACD,OAhL+B;AAiLhCC,MAAAA,OAAO,EAAE,iBAACC,IAAD,EAAOC,WAAP,EAAuB;AAC9B9D,QAAAA,GAAG,CAAC;AAAE6D,UAAAA,IAAI,EAAJA;AAAF,SAAD,CAAH;;AACA,YAAIC,WAAW,IAAI7D,GAAG,GAAG8D,IAAN,KAAe,WAAlC,EAA+C;AAC7C,sCAAmCC,QAAQ,CAACC,aAAT,CAAuB,iCAAvB,CAAnC;AAAA,cAAqBC,SAArB,yBAAQC,WAAR;;AACA,cAAMC,UAAU,GAAGC,QAAQ,CAACP,WAAD,EAAc,EAAd,CAAR,GAA4BD,IAA/C;;AACA,cAAIS,MAAM,CAACC,UAAP,GAAoBH,UAApB,GAAiC,GAAjC,GAAwCF,SAAS,GAAG,CAAxD,EAA4D;AAC1DlE,YAAAA,GAAG,CAAC;AAAEyC,cAAAA,kBAAkB,EAAE;AAAtB,aAAD,CAAH;AACD,WAFD,MAEO;AACLzC,YAAAA,GAAG,CAAC;AACFyC,cAAAA,kBAAkB,EAAE,KADlB;AAEF9B,cAAAA,eAAe,EAAE,KAFf;AAGFY,cAAAA,mCAAmC,EAAE,KAHnC;AAIFC,cAAAA,oCAAoC,EAAE;AAJpC,aAAD,CAAH;AAMD;AACF;AACF,OAjM+B;AAkMhCgD,MAAAA,sBAAsB,EAAE,CAAC,CAAC1E,KAAK,CAAC2E,WAlMA;AAmMhCC,MAAAA,6BAA6B,2BAAE5E,KAAK,CAAC4E,6BAAR,yEAAyC,IAnMtC;AAoMhCC,MAAAA,cAAc,EAAE7E,KAAK,CAAC6E,cAAN,IAAwBC,0BAAoB,CAACC,KApM7B;AAqMhCpB,MAAAA,eAAe,EAAE3D,KAAK,CAAC2D,eAAN,IAAyB;AAAEF,QAAAA,MAAM,EAAE,EAAV;AAAcC,QAAAA,QAAQ,EAAE;AAAxB,OArMV;AAsMhCG,MAAAA,gBAAgB,EAAE,CAtMc;AAuMhCE,MAAAA,IAAI,wBAAE/D,KAAK,CAAC2E,WAAR,mEAAuB;AAvMK,KAAf;AAAA,GAAD,CAAlB;AAyMD,CA1MD;;AA4MA,IAAMK,cAAc,gBAAGC,mBAAa,CAAC,IAAD,CAApC;IAEaC,eAAe,GAAG,SAAlBA,eAAkB,QAAmC;AAAA,MAAhCC,QAAgC,SAAhCA,QAAgC;AAAA,YAAtBC,KAAsB;AAAA,UAAZpF,KAAY;;AAChE,MAAMqF,QAAQ,GAAGC,YAAM,EAAvB;;AACA,MAAI,CAACD,QAAQ,CAACE,OAAd,EAAuB;AACrBF,IAAAA,QAAQ,CAACE,OAAT,GAAmBxF,YAAY,CAACC,KAAD,CAA/B;AACD;;AAED,sBACEwF,eAAC,cAAD,CAAgB,QAAhB;AAAyB,IAAA,KAAK,EAAEH,QAAQ,CAACE,OAAzC;AAAA,cACGJ;AADH,IADF;AAKD;AAEDD,eAAe,CAACO,SAAhB,GAA4B;AAC1BN,EAAAA,QAAQ,EAAEO,6BAAS,CAACC,GADM;AAE1BP,EAAAA,KAAK,EAAEM,6BAAS,CAACE;AAFS,CAA5B;AAK+BZ,cAAc,CAACa;IAEjCC,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,QAAQ,EAAI;AACzC,MAAMC,OAAO,GAAGC,gBAAU,CAACjB,cAAD,CAA1B;;AACA,MAAI,CAACgB,OAAL,EAAc;AACZ,UAAM,IAAIE,KAAJ,CAAU,oDAAV,CAAN;AACD;;AACD,SAAOC,gBAAQ,CAACH,OAAD,EAAUD,QAAV,CAAf;AACD;;;;;"}
@@ -46,7 +46,6 @@ var propStore = function propStore(props) {
46
46
  onSelectedItemsChanged: props.onSelectedItemsChanged || fn,
47
47
  onSettingChange: props.onSettingChange || fn,
48
48
  pages: props.pages || [],
49
- reportItemToolbarPosition: props.reportItemToolbarPosition || {},
50
49
  setAcceptedItems: function setAcceptedItems(acceptedItems) {
51
50
  set({
52
51
  acceptedItems: acceptedItems