@jotforminc/dnd-builder 2.5.1 → 2.5.2

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 CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [2.5.2](https://github.com/jotform/dnd-builder/compare/v2.5.1...v2.5.2) (2023-03-02)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * **static-scene:** use hoc for pan pinch zoom ([708a3a9](https://github.com/jotform/dnd-builder/commit/708a3a9abc28cafed950a917a9cf2f3a87a3563d))
11
+ * **withZoomPanPinchHOC:** renaming & test fix ([f70566e](https://github.com/jotform/dnd-builder/commit/f70566ec1bfce45330914dca725281d22b08fa4f))
12
+
5
13
  ### [2.5.1](https://github.com/jotform/dnd-builder/compare/v2.5.0...v2.5.1) (2023-03-01)
6
14
 
7
15
 
@@ -43,7 +43,7 @@ var PageItem = reactSortableHoc.SortableElement(function (_ref) {
43
43
  children: order
44
44
  }), /*#__PURE__*/jsxRuntime.jsx("div", {
45
45
  className: "thumbnailFrame o-hidden",
46
- children: /*#__PURE__*/jsxRuntime.jsx(StaticPage, {
46
+ children: /*#__PURE__*/jsxRuntime.jsx(StaticPage['default'], {
47
47
  acceptedItems: acceptedItems,
48
48
  additionalPageItems: additionalPageItems,
49
49
  hashCode: hashCode,
@@ -1 +1 @@
1
- {"version":3,"file":"PageItem.js","sources":["../../../../../src/components/Panels/AllSlidesPanel/PageItem.js"],"sourcesContent":["import { memo } from 'react';\nimport { SortableElement } from 'react-sortable-hoc';\nimport classNames from 'classnames';\nimport StaticPage from '../../Preview/StaticPage';\nimport PageThumbnailActions from './PageThumbnailActions';\n\nconst PageItem = SortableElement(({\n acceptedItems,\n additionalPageItems,\n hashCode,\n isSelected,\n itemAccessor,\n onAnEventTrigger,\n onPageAdd,\n onPageClick,\n onPageDuplicate,\n onPageRemove,\n order,\n page,\n style,\n}) => {\n const onKeyDown = f => f;\n return (\n <div\n className={(\n classNames('thumbnailWrapper d-flex dir-col a-center j-center p-relative', { isSelected })\n )}\n data-id={page.id}\n data-order={order}\n onClick={onPageClick}\n onKeyDown={onKeyDown}\n >\n <div className=\"thumbnailOrder\">{order}</div>\n <div className=\"thumbnailFrame o-hidden\">\n <StaticPage\n acceptedItems={acceptedItems}\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n items={page.items}\n style={style}\n />\n </div>\n <PageThumbnailActions\n onAnEventTrigger={onAnEventTrigger}\n onPageAdd={onPageAdd}\n onPageDuplicate={onPageDuplicate}\n onPageRemove={onPageRemove}\n order={order}\n page={page}\n />\n </div>\n );\n});\n\nexport default memo(PageItem);\n"],"names":["PageItem","SortableElement","acceptedItems","additionalPageItems","hashCode","isSelected","itemAccessor","onAnEventTrigger","onPageAdd","onPageClick","onPageDuplicate","onPageRemove","order","page","style","onKeyDown","f","_jsxs","classNames","id","_jsx","items","memo"],"mappings":";;;;;;;;;;;;;AAMA,IAAMA,QAAQ,GAAGC,gCAAe,CAAC,gBAc3B;AAAA,MAbJC,aAaI,QAbJA,aAaI;AAAA,MAZJC,mBAYI,QAZJA,mBAYI;AAAA,MAXJC,QAWI,QAXJA,QAWI;AAAA,MAVJC,UAUI,QAVJA,UAUI;AAAA,MATJC,YASI,QATJA,YASI;AAAA,MARJC,gBAQI,QARJA,gBAQI;AAAA,MAPJC,SAOI,QAPJA,SAOI;AAAA,MANJC,WAMI,QANJA,WAMI;AAAA,MALJC,eAKI,QALJA,eAKI;AAAA,MAJJC,YAII,QAJJA,YAII;AAAA,MAHJC,KAGI,QAHJA,KAGI;AAAA,MAFJC,IAEI,QAFJA,IAEI;AAAA,MADJC,KACI,QADJA,KACI;;AACJ,MAAMC,SAAS,GAAG,SAAZA,SAAY,CAAAC,CAAC;AAAA,WAAIA,CAAJ;AAAA,GAAnB;;AACA,sBACEC;AACE,IAAA,SAAS,EACPC,8BAAU,CAAC,8DAAD,EAAiE;AAAEb,MAAAA,UAAU,EAAVA;AAAF,KAAjE,CAFd;AAIE,eAASQ,IAAI,CAACM,EAJhB;AAKE,kBAAYP,KALd;AAME,IAAA,OAAO,EAAEH,WANX;AAOE,IAAA,SAAS,EAAEM,SAPb;AAAA,4BASEK;AAAK,MAAA,SAAS,EAAC,gBAAf;AAAA,gBAAiCR;AAAjC,MATF,eAUEQ;AAAK,MAAA,SAAS,EAAC,yBAAf;AAAA,6BACEA,eAAC,UAAD;AACE,QAAA,aAAa,EAAElB,aADjB;AAEE,QAAA,mBAAmB,EAAEC,mBAFvB;AAGE,QAAA,QAAQ,EAAEC,QAHZ;AAIE,QAAA,YAAY,EAAEE,YAJhB;AAKE,QAAA,KAAK,EAAEO,IAAI,CAACQ,KALd;AAME,QAAA,KAAK,EAAEP;AANT;AADF,MAVF,eAoBEM,eAAC,oBAAD;AACE,MAAA,gBAAgB,EAAEb,gBADpB;AAEE,MAAA,SAAS,EAAEC,SAFb;AAGE,MAAA,eAAe,EAAEE,eAHnB;AAIE,MAAA,YAAY,EAAEC,YAJhB;AAKE,MAAA,KAAK,EAAEC,KALT;AAME,MAAA,IAAI,EAAEC;AANR,MApBF;AAAA,IADF;AA+BD,CA/C+B,CAAhC;AAiDA,8BAAeS,UAAI,CAACtB,QAAD,CAAnB;;;;"}
1
+ {"version":3,"file":"PageItem.js","sources":["../../../../../src/components/Panels/AllSlidesPanel/PageItem.js"],"sourcesContent":["import { memo } from 'react';\nimport { SortableElement } from 'react-sortable-hoc';\nimport classNames from 'classnames';\nimport StaticPage from '../../Preview/StaticPage';\nimport PageThumbnailActions from './PageThumbnailActions';\n\nconst PageItem = SortableElement(({\n acceptedItems,\n additionalPageItems,\n hashCode,\n isSelected,\n itemAccessor,\n onAnEventTrigger,\n onPageAdd,\n onPageClick,\n onPageDuplicate,\n onPageRemove,\n order,\n page,\n style,\n}) => {\n const onKeyDown = f => f;\n return (\n <div\n className={(\n classNames('thumbnailWrapper d-flex dir-col a-center j-center p-relative', { isSelected })\n )}\n data-id={page.id}\n data-order={order}\n onClick={onPageClick}\n onKeyDown={onKeyDown}\n >\n <div className=\"thumbnailOrder\">{order}</div>\n <div className=\"thumbnailFrame o-hidden\">\n <StaticPage\n acceptedItems={acceptedItems}\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n items={page.items}\n style={style}\n />\n </div>\n <PageThumbnailActions\n onAnEventTrigger={onAnEventTrigger}\n onPageAdd={onPageAdd}\n onPageDuplicate={onPageDuplicate}\n onPageRemove={onPageRemove}\n order={order}\n page={page}\n />\n </div>\n );\n});\n\nexport default memo(PageItem);\n"],"names":["PageItem","SortableElement","acceptedItems","additionalPageItems","hashCode","isSelected","itemAccessor","onAnEventTrigger","onPageAdd","onPageClick","onPageDuplicate","onPageRemove","order","page","style","onKeyDown","f","_jsxs","classNames","id","_jsx","StaticPage","items","memo"],"mappings":";;;;;;;;;;;;;AAMA,IAAMA,QAAQ,GAAGC,gCAAe,CAAC,gBAc3B;AAAA,MAbJC,aAaI,QAbJA,aAaI;AAAA,MAZJC,mBAYI,QAZJA,mBAYI;AAAA,MAXJC,QAWI,QAXJA,QAWI;AAAA,MAVJC,UAUI,QAVJA,UAUI;AAAA,MATJC,YASI,QATJA,YASI;AAAA,MARJC,gBAQI,QARJA,gBAQI;AAAA,MAPJC,SAOI,QAPJA,SAOI;AAAA,MANJC,WAMI,QANJA,WAMI;AAAA,MALJC,eAKI,QALJA,eAKI;AAAA,MAJJC,YAII,QAJJA,YAII;AAAA,MAHJC,KAGI,QAHJA,KAGI;AAAA,MAFJC,IAEI,QAFJA,IAEI;AAAA,MADJC,KACI,QADJA,KACI;;AACJ,MAAMC,SAAS,GAAG,SAAZA,SAAY,CAAAC,CAAC;AAAA,WAAIA,CAAJ;AAAA,GAAnB;;AACA,sBACEC;AACE,IAAA,SAAS,EACPC,8BAAU,CAAC,8DAAD,EAAiE;AAAEb,MAAAA,UAAU,EAAVA;AAAF,KAAjE,CAFd;AAIE,eAASQ,IAAI,CAACM,EAJhB;AAKE,kBAAYP,KALd;AAME,IAAA,OAAO,EAAEH,WANX;AAOE,IAAA,SAAS,EAAEM,SAPb;AAAA,4BASEK;AAAK,MAAA,SAAS,EAAC,gBAAf;AAAA,gBAAiCR;AAAjC,MATF,eAUEQ;AAAK,MAAA,SAAS,EAAC,yBAAf;AAAA,6BACEA,eAACC,qBAAD;AACE,QAAA,aAAa,EAAEnB,aADjB;AAEE,QAAA,mBAAmB,EAAEC,mBAFvB;AAGE,QAAA,QAAQ,EAAEC,QAHZ;AAIE,QAAA,YAAY,EAAEE,YAJhB;AAKE,QAAA,KAAK,EAAEO,IAAI,CAACS,KALd;AAME,QAAA,KAAK,EAAER;AANT;AADF,MAVF,eAoBEM,eAAC,oBAAD;AACE,MAAA,gBAAgB,EAAEb,gBADpB;AAEE,MAAA,SAAS,EAAEC,SAFb;AAGE,MAAA,eAAe,EAAEE,eAHnB;AAIE,MAAA,YAAY,EAAEC,YAJhB;AAKE,MAAA,KAAK,EAAEC,KALT;AAME,MAAA,IAAI,EAAEC;AANR,MApBF;AAAA,IADF;AA+BD,CA/C+B,CAAhC;AAiDA,8BAAeU,UAAI,CAACvB,QAAD,CAAnB;;;;"}
@@ -46,7 +46,7 @@ var SortablePageItem = reactSortableHoc.SortableElement(function (_ref) {
46
46
  children: order
47
47
  }), /*#__PURE__*/jsxRuntime.jsx("div", {
48
48
  className: "thumbnailFrame o-hidden",
49
- children: /*#__PURE__*/jsxRuntime.jsx(StaticPage, {
49
+ children: /*#__PURE__*/jsxRuntime.jsx(StaticPage['default'], {
50
50
  acceptedItems: acceptedItems,
51
51
  additionalPageItems: additionalPageItems,
52
52
  hashCode: hashCode,
@@ -1 +1 @@
1
- {"version":3,"file":"SortablePageItem.js","sources":["../../../../../src/components/Panels/SlidesPanel/SortablePageItem.js"],"sourcesContent":["import { memo } from 'react';\nimport { SortableElement } from 'react-sortable-hoc';\nimport classNames from 'classnames';\nimport StaticPage from '../../Preview/StaticPage';\nimport PageThumbnailActions from './PageThumbnailActions';\n\nconst SortablePageItem = SortableElement(({\n acceptedItems,\n additionalPageItems,\n disableInteraction,\n hashCode,\n isSelected,\n itemAccessor,\n onAnEventTrigger,\n onPageAdd,\n onPageClick,\n onPageDuplicate,\n onPageRemove,\n order,\n page,\n pageContainerStyle,\n style,\n}) => {\n const onKeyDown = f => f;\n return (\n <div\n className={classNames('thumbnailWrapper d-flex a-center j-between', { isSelected })}\n data-id={page.id}\n data-order={order}\n onClick={onPageClick}\n onKeyDown={onKeyDown}\n style={style}\n >\n <div className=\"thumbnailOrder\">{order}</div>\n <div className=\"thumbnailFrame o-hidden\">\n <StaticPage\n acceptedItems={acceptedItems}\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n items={page.items}\n style={pageContainerStyle}\n />\n </div>\n <PageThumbnailActions\n disableInteraction={disableInteraction}\n onAnEventTrigger={onAnEventTrigger}\n onPageAdd={onPageAdd}\n onPageDuplicate={onPageDuplicate}\n onPageRemove={onPageRemove}\n order={order}\n page={page}\n />\n </div>\n );\n});\n\nexport default memo(SortablePageItem);\n"],"names":["SortablePageItem","SortableElement","acceptedItems","additionalPageItems","disableInteraction","hashCode","isSelected","itemAccessor","onAnEventTrigger","onPageAdd","onPageClick","onPageDuplicate","onPageRemove","order","page","pageContainerStyle","style","onKeyDown","f","_jsxs","classNames","id","_jsx","items","memo"],"mappings":";;;;;;;;;;;;;AAMA,IAAMA,gBAAgB,GAAGC,gCAAe,CAAC,gBAgBnC;AAAA,MAfJC,aAeI,QAfJA,aAeI;AAAA,MAdJC,mBAcI,QAdJA,mBAcI;AAAA,MAbJC,kBAaI,QAbJA,kBAaI;AAAA,MAZJC,QAYI,QAZJA,QAYI;AAAA,MAXJC,UAWI,QAXJA,UAWI;AAAA,MAVJC,YAUI,QAVJA,YAUI;AAAA,MATJC,gBASI,QATJA,gBASI;AAAA,MARJC,SAQI,QARJA,SAQI;AAAA,MAPJC,WAOI,QAPJA,WAOI;AAAA,MANJC,eAMI,QANJA,eAMI;AAAA,MALJC,YAKI,QALJA,YAKI;AAAA,MAJJC,KAII,QAJJA,KAII;AAAA,MAHJC,IAGI,QAHJA,IAGI;AAAA,MAFJC,kBAEI,QAFJA,kBAEI;AAAA,MADJC,KACI,QADJA,KACI;;AACJ,MAAMC,SAAS,GAAG,SAAZA,SAAY,CAAAC,CAAC;AAAA,WAAIA,CAAJ;AAAA,GAAnB;;AACA,sBACEC;AACE,IAAA,SAAS,EAAEC,8BAAU,CAAC,4CAAD,EAA+C;AAAEd,MAAAA,UAAU,EAAVA;AAAF,KAA/C,CADvB;AAEE,eAASQ,IAAI,CAACO,EAFhB;AAGE,kBAAYR,KAHd;AAIE,IAAA,OAAO,EAAEH,WAJX;AAKE,IAAA,SAAS,EAAEO,SALb;AAME,IAAA,KAAK,EAAED,KANT;AAAA,4BAQEM;AAAK,MAAA,SAAS,EAAC,gBAAf;AAAA,gBAAiCT;AAAjC,MARF,eASES;AAAK,MAAA,SAAS,EAAC,yBAAf;AAAA,6BACEA,eAAC,UAAD;AACE,QAAA,aAAa,EAAEpB,aADjB;AAEE,QAAA,mBAAmB,EAAEC,mBAFvB;AAGE,QAAA,QAAQ,EAAEE,QAHZ;AAIE,QAAA,YAAY,EAAEE,YAJhB;AAKE,QAAA,KAAK,EAAEO,IAAI,CAACS,KALd;AAME,QAAA,KAAK,EAAER;AANT;AADF,MATF,eAmBEO,eAAC,oBAAD;AACE,MAAA,kBAAkB,EAAElB,kBADtB;AAEE,MAAA,gBAAgB,EAAEI,gBAFpB;AAGE,MAAA,SAAS,EAAEC,SAHb;AAIE,MAAA,eAAe,EAAEE,eAJnB;AAKE,MAAA,YAAY,EAAEC,YALhB;AAME,MAAA,KAAK,EAAEC,KANT;AAOE,MAAA,IAAI,EAAEC;AAPR,MAnBF;AAAA,IADF;AA+BD,CAjDuC,CAAxC;AAmDA,sCAAeU,UAAI,CAACxB,gBAAD,CAAnB;;;;"}
1
+ {"version":3,"file":"SortablePageItem.js","sources":["../../../../../src/components/Panels/SlidesPanel/SortablePageItem.js"],"sourcesContent":["import { memo } from 'react';\nimport { SortableElement } from 'react-sortable-hoc';\nimport classNames from 'classnames';\nimport StaticPage from '../../Preview/StaticPage';\nimport PageThumbnailActions from './PageThumbnailActions';\n\nconst SortablePageItem = SortableElement(({\n acceptedItems,\n additionalPageItems,\n disableInteraction,\n hashCode,\n isSelected,\n itemAccessor,\n onAnEventTrigger,\n onPageAdd,\n onPageClick,\n onPageDuplicate,\n onPageRemove,\n order,\n page,\n pageContainerStyle,\n style,\n}) => {\n const onKeyDown = f => f;\n return (\n <div\n className={classNames('thumbnailWrapper d-flex a-center j-between', { isSelected })}\n data-id={page.id}\n data-order={order}\n onClick={onPageClick}\n onKeyDown={onKeyDown}\n style={style}\n >\n <div className=\"thumbnailOrder\">{order}</div>\n <div className=\"thumbnailFrame o-hidden\">\n <StaticPage\n acceptedItems={acceptedItems}\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n items={page.items}\n style={pageContainerStyle}\n />\n </div>\n <PageThumbnailActions\n disableInteraction={disableInteraction}\n onAnEventTrigger={onAnEventTrigger}\n onPageAdd={onPageAdd}\n onPageDuplicate={onPageDuplicate}\n onPageRemove={onPageRemove}\n order={order}\n page={page}\n />\n </div>\n );\n});\n\nexport default memo(SortablePageItem);\n"],"names":["SortablePageItem","SortableElement","acceptedItems","additionalPageItems","disableInteraction","hashCode","isSelected","itemAccessor","onAnEventTrigger","onPageAdd","onPageClick","onPageDuplicate","onPageRemove","order","page","pageContainerStyle","style","onKeyDown","f","_jsxs","classNames","id","_jsx","StaticPage","items","memo"],"mappings":";;;;;;;;;;;;;AAMA,IAAMA,gBAAgB,GAAGC,gCAAe,CAAC,gBAgBnC;AAAA,MAfJC,aAeI,QAfJA,aAeI;AAAA,MAdJC,mBAcI,QAdJA,mBAcI;AAAA,MAbJC,kBAaI,QAbJA,kBAaI;AAAA,MAZJC,QAYI,QAZJA,QAYI;AAAA,MAXJC,UAWI,QAXJA,UAWI;AAAA,MAVJC,YAUI,QAVJA,YAUI;AAAA,MATJC,gBASI,QATJA,gBASI;AAAA,MARJC,SAQI,QARJA,SAQI;AAAA,MAPJC,WAOI,QAPJA,WAOI;AAAA,MANJC,eAMI,QANJA,eAMI;AAAA,MALJC,YAKI,QALJA,YAKI;AAAA,MAJJC,KAII,QAJJA,KAII;AAAA,MAHJC,IAGI,QAHJA,IAGI;AAAA,MAFJC,kBAEI,QAFJA,kBAEI;AAAA,MADJC,KACI,QADJA,KACI;;AACJ,MAAMC,SAAS,GAAG,SAAZA,SAAY,CAAAC,CAAC;AAAA,WAAIA,CAAJ;AAAA,GAAnB;;AACA,sBACEC;AACE,IAAA,SAAS,EAAEC,8BAAU,CAAC,4CAAD,EAA+C;AAAEd,MAAAA,UAAU,EAAVA;AAAF,KAA/C,CADvB;AAEE,eAASQ,IAAI,CAACO,EAFhB;AAGE,kBAAYR,KAHd;AAIE,IAAA,OAAO,EAAEH,WAJX;AAKE,IAAA,SAAS,EAAEO,SALb;AAME,IAAA,KAAK,EAAED,KANT;AAAA,4BAQEM;AAAK,MAAA,SAAS,EAAC,gBAAf;AAAA,gBAAiCT;AAAjC,MARF,eASES;AAAK,MAAA,SAAS,EAAC,yBAAf;AAAA,6BACEA,eAACC,qBAAD;AACE,QAAA,aAAa,EAAErB,aADjB;AAEE,QAAA,mBAAmB,EAAEC,mBAFvB;AAGE,QAAA,QAAQ,EAAEE,QAHZ;AAIE,QAAA,YAAY,EAAEE,YAJhB;AAKE,QAAA,KAAK,EAAEO,IAAI,CAACU,KALd;AAME,QAAA,KAAK,EAAET;AANT;AADF,MATF,eAmBEO,eAAC,oBAAD;AACE,MAAA,kBAAkB,EAAElB,kBADtB;AAEE,MAAA,gBAAgB,EAAEI,gBAFpB;AAGE,MAAA,SAAS,EAAEC,SAHb;AAIE,MAAA,eAAe,EAAEE,eAJnB;AAKE,MAAA,YAAY,EAAEC,YALhB;AAME,MAAA,KAAK,EAAEC,KANT;AAOE,MAAA,IAAI,EAAEC;AAPR,MAnBF;AAAA,IADF;AA+BD,CAjDuC,CAAxC;AAmDA,sCAAeW,UAAI,CAACzB,gBAAD,CAAnB;;;;"}
@@ -1,5 +1,7 @@
1
1
  'use strict';
2
2
 
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
3
5
  require('core-js/modules/es.array.filter.js');
4
6
  require('core-js/modules/es.array.map.js');
5
7
  var React = require('react');
@@ -8,6 +10,7 @@ var classNames = require('../../constants/classNames.js');
8
10
  var ReportItemRenderer = require('../Builder/ReportItemRenderer.js');
9
11
  var StaticItem = require('./StaticItem.js');
10
12
  var getMergedItem = require('../../utils/getMergedItem.js');
13
+ var withZoomPanPinchHOC = require('../withZoomPanPinchHOC.js');
11
14
  var jsxRuntime = require('react/jsx-runtime');
12
15
 
13
16
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -65,6 +68,8 @@ StaticPage.defaultProps = {
65
68
  style: {}
66
69
  };
67
70
  var StaticPage$1 = /*#__PURE__*/React.memo(StaticPage);
71
+ var StaticPageWithZoomPanPinch = withZoomPanPinchHOC(StaticPage);
68
72
 
69
- module.exports = StaticPage$1;
73
+ exports.StaticPageWithZoomPanPinch = StaticPageWithZoomPanPinch;
74
+ exports.default = StaticPage$1;
70
75
  //# sourceMappingURL=StaticPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StaticPage.js","sources":["../../../../src/components/Preview/StaticPage.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport * as classNames from '../../constants/classNames';\nimport ReportItemRenderer from '../Builder/ReportItemRenderer';\nimport StaticItem from './StaticItem';\nimport getMergedItem from '../../utils/getMergedItem';\n\nconst StaticPage = ({\n acceptedItems,\n additionalPageItems,\n hashCode,\n itemAccessor,\n items,\n style,\n}) => (\n <div\n className={classNames.pageContainer}\n style={style}\n >\n <div className=\"jfReport-hider o-hidden f-all p-relative\">\n {items.filter(item => (\n item.isVisible !== undefined\n ? item.isVisible\n : true\n )).map(item => {\n const mergedItem = getMergedItem(item, acceptedItems);\n return (\n <StaticItem\n key={item.id}\n hashCode={hashCode}\n item={item}\n >\n <ReportItemRenderer\n item={item}\n >\n {ReportItem => (\n <ReportItem\n item={mergedItem}\n itemAccessor={itemAccessor}\n />\n )}\n </ReportItemRenderer>\n </StaticItem>\n );\n })}\n {additionalPageItems}\n </div>\n </div>\n);\n\nStaticPage.propTypes = {\n acceptedItems: PropTypes.shape({}),\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n hashCode: PropTypes.string,\n itemAccessor: PropTypes.func,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n style: PropTypes.shape({}),\n};\n\nStaticPage.defaultProps = {\n acceptedItems: {},\n additionalPageItems: [],\n hashCode: '',\n itemAccessor: () => {},\n items: [],\n style: {},\n};\n\nexport default memo(StaticPage);\n"],"names":["StaticPage","acceptedItems","additionalPageItems","hashCode","itemAccessor","items","style","_jsx","classNames","_jsxs","filter","item","isVisible","undefined","map","mergedItem","getMergedItem","ReportItem","id","propTypes","PropTypes","shape","arrayOf","node","string","func","defaultProps","memo"],"mappings":";;;;;;;;;;;;;;;;AAOA,IAAMA,UAAU,GAAG,SAAbA,UAAa;AAAA,MACjBC,aADiB,QACjBA,aADiB;AAAA,MAEjBC,mBAFiB,QAEjBA,mBAFiB;AAAA,MAGjBC,QAHiB,QAGjBA,QAHiB;AAAA,MAIjBC,YAJiB,QAIjBA,YAJiB;AAAA,MAKjBC,KALiB,QAKjBA,KALiB;AAAA,MAMjBC,KANiB,QAMjBA,KANiB;AAAA,sBAQjBC;AACE,IAAA,SAAS,EAAEC,wBADb;AAEE,IAAA,KAAK,EAAEF,KAFT;AAAA,2BAIEG;AAAK,MAAA,SAAS,EAAC,0CAAf;AAAA,iBACGJ,KAAK,CAACK,MAAN,CAAa,UAAAC,IAAI;AAAA,eAChBA,IAAI,CAACC,SAAL,KAAmBC,SAAnB,GACIF,IAAI,CAACC,SADT,GAEI,IAHY;AAAA,OAAjB,EAIEE,GAJF,CAIM,UAAAH,IAAI,EAAI;AACb,YAAMI,UAAU,GAAGC,aAAa,CAACL,IAAD,EAAOV,aAAP,CAAhC;AACA,4BACEM,eAAC,UAAD;AAEE,UAAA,QAAQ,EAAEJ,QAFZ;AAGE,UAAA,IAAI,EAAEQ,IAHR;AAAA,iCAKEJ,eAAC,kBAAD;AACE,YAAA,IAAI,EAAEI,IADR;AAAA,sBAGG,kBAAAM,UAAU;AAAA,kCACTV,eAAC,UAAD;AACE,gBAAA,IAAI,EAAEQ,UADR;AAEE,gBAAA,YAAY,EAAEX;AAFhB,gBADS;AAAA;AAHb;AALF,WACOO,IAAI,CAACO,EADZ,CADF;AAkBD,OAxBA,CADH,EA0BGhB,mBA1BH;AAAA;AAJF,IARiB;AAAA,CAAnB;;AA2CAF,UAAU,CAACmB,SAAX,GAAuB;AACrBlB,EAAAA,aAAa,EAAEmB,6BAAS,CAACC,KAAV,CAAgB,EAAhB,CADM;AAErBnB,EAAAA,mBAAmB,EAAEkB,6BAAS,CAACE,OAAV,CAAkBF,6BAAS,CAACG,IAA5B,CAFA;AAGrBpB,EAAAA,QAAQ,EAAEiB,6BAAS,CAACI,MAHC;AAIrBpB,EAAAA,YAAY,EAAEgB,6BAAS,CAACK,IAJH;AAKrBpB,EAAAA,KAAK,EAAEe,6BAAS,CAACE,OAAV,CAAkBF,6BAAS,CAACC,KAAV,CAAgB,EAAhB,CAAlB,CALc;AAMrBf,EAAAA,KAAK,EAAEc,6BAAS,CAACC,KAAV,CAAgB,EAAhB;AANc,CAAvB;AASArB,UAAU,CAAC0B,YAAX,GAA0B;AACxBzB,EAAAA,aAAa,EAAE,EADS;AAExBC,EAAAA,mBAAmB,EAAE,EAFG;AAGxBC,EAAAA,QAAQ,EAAE,EAHc;AAIxBC,EAAAA,YAAY,EAAE,wBAAM,EAJI;AAKxBC,EAAAA,KAAK,EAAE,EALiB;AAMxBC,EAAAA,KAAK,EAAE;AANiB,CAA1B;AASA,gCAAeqB,UAAI,CAAC3B,UAAD,CAAnB;;;;"}
1
+ {"version":3,"file":"StaticPage.js","sources":["../../../../src/components/Preview/StaticPage.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport * as classNames from '../../constants/classNames';\nimport ReportItemRenderer from '../Builder/ReportItemRenderer';\nimport StaticItem from './StaticItem';\nimport getMergedItem from '../../utils/getMergedItem';\nimport withZoomPanPinchHOC from '../withZoomPanPinchHOC';\n\nconst StaticPage = ({\n acceptedItems,\n additionalPageItems,\n hashCode,\n itemAccessor,\n items,\n style,\n}) => (\n <div\n className={classNames.pageContainer}\n style={style}\n >\n <div className=\"jfReport-hider o-hidden f-all p-relative\">\n {items.filter(item => (\n item.isVisible !== undefined\n ? item.isVisible\n : true\n )).map(item => {\n const mergedItem = getMergedItem(item, acceptedItems);\n return (\n <StaticItem\n key={item.id}\n hashCode={hashCode}\n item={item}\n >\n <ReportItemRenderer\n item={item}\n >\n {ReportItem => (\n <ReportItem\n item={mergedItem}\n itemAccessor={itemAccessor}\n />\n )}\n </ReportItemRenderer>\n </StaticItem>\n );\n })}\n {additionalPageItems}\n </div>\n </div>\n);\n\nStaticPage.propTypes = {\n acceptedItems: PropTypes.shape({}),\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n hashCode: PropTypes.string,\n itemAccessor: PropTypes.func,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n style: PropTypes.shape({}),\n};\n\nStaticPage.defaultProps = {\n acceptedItems: {},\n additionalPageItems: [],\n hashCode: '',\n itemAccessor: () => {},\n items: [],\n style: {},\n};\n\nexport default memo(StaticPage);\nexport const StaticPageWithZoomPanPinch = withZoomPanPinchHOC(StaticPage);\n"],"names":["StaticPage","acceptedItems","additionalPageItems","hashCode","itemAccessor","items","style","_jsx","classNames","_jsxs","filter","item","isVisible","undefined","map","mergedItem","getMergedItem","ReportItem","id","propTypes","PropTypes","shape","arrayOf","node","string","func","defaultProps","memo","StaticPageWithZoomPanPinch","withZoomPanPinchHOC"],"mappings":";;;;;;;;;;;;;;;;;;;AAQA,IAAMA,UAAU,GAAG,SAAbA,UAAa;AAAA,MACjBC,aADiB,QACjBA,aADiB;AAAA,MAEjBC,mBAFiB,QAEjBA,mBAFiB;AAAA,MAGjBC,QAHiB,QAGjBA,QAHiB;AAAA,MAIjBC,YAJiB,QAIjBA,YAJiB;AAAA,MAKjBC,KALiB,QAKjBA,KALiB;AAAA,MAMjBC,KANiB,QAMjBA,KANiB;AAAA,sBAQjBC;AACE,IAAA,SAAS,EAAEC,wBADb;AAEE,IAAA,KAAK,EAAEF,KAFT;AAAA,2BAIEG;AAAK,MAAA,SAAS,EAAC,0CAAf;AAAA,iBACGJ,KAAK,CAACK,MAAN,CAAa,UAAAC,IAAI;AAAA,eAChBA,IAAI,CAACC,SAAL,KAAmBC,SAAnB,GACIF,IAAI,CAACC,SADT,GAEI,IAHY;AAAA,OAAjB,EAIEE,GAJF,CAIM,UAAAH,IAAI,EAAI;AACb,YAAMI,UAAU,GAAGC,aAAa,CAACL,IAAD,EAAOV,aAAP,CAAhC;AACA,4BACEM,eAAC,UAAD;AAEE,UAAA,QAAQ,EAAEJ,QAFZ;AAGE,UAAA,IAAI,EAAEQ,IAHR;AAAA,iCAKEJ,eAAC,kBAAD;AACE,YAAA,IAAI,EAAEI,IADR;AAAA,sBAGG,kBAAAM,UAAU;AAAA,kCACTV,eAAC,UAAD;AACE,gBAAA,IAAI,EAAEQ,UADR;AAEE,gBAAA,YAAY,EAAEX;AAFhB,gBADS;AAAA;AAHb;AALF,WACOO,IAAI,CAACO,EADZ,CADF;AAkBD,OAxBA,CADH,EA0BGhB,mBA1BH;AAAA;AAJF,IARiB;AAAA,CAAnB;;AA2CAF,UAAU,CAACmB,SAAX,GAAuB;AACrBlB,EAAAA,aAAa,EAAEmB,6BAAS,CAACC,KAAV,CAAgB,EAAhB,CADM;AAErBnB,EAAAA,mBAAmB,EAAEkB,6BAAS,CAACE,OAAV,CAAkBF,6BAAS,CAACG,IAA5B,CAFA;AAGrBpB,EAAAA,QAAQ,EAAEiB,6BAAS,CAACI,MAHC;AAIrBpB,EAAAA,YAAY,EAAEgB,6BAAS,CAACK,IAJH;AAKrBpB,EAAAA,KAAK,EAAEe,6BAAS,CAACE,OAAV,CAAkBF,6BAAS,CAACC,KAAV,CAAgB,EAAhB,CAAlB,CALc;AAMrBf,EAAAA,KAAK,EAAEc,6BAAS,CAACC,KAAV,CAAgB,EAAhB;AANc,CAAvB;AASArB,UAAU,CAAC0B,YAAX,GAA0B;AACxBzB,EAAAA,aAAa,EAAE,EADS;AAExBC,EAAAA,mBAAmB,EAAE,EAFG;AAGxBC,EAAAA,QAAQ,EAAE,EAHc;AAIxBC,EAAAA,YAAY,EAAE,wBAAM,EAJI;AAKxBC,EAAAA,KAAK,EAAE,EALiB;AAMxBC,EAAAA,KAAK,EAAE;AANiB,CAA1B;AASA,gCAAeqB,UAAI,CAAC3B,UAAD,CAAnB;IACa4B,0BAA0B,GAAGC,mBAAmB,CAAC7B,UAAD;;;;;"}
@@ -9,7 +9,6 @@ require('core-js/modules/es.regexp.to-string.js');
9
9
  var React = require('react');
10
10
  var PropTypes = require('prop-types');
11
11
  var classNames$1 = require('classnames');
12
- var reactZoomPanPinch = require('react-zoom-pan-pinch');
13
12
  var classNames = require('../../constants/classNames.js');
14
13
  var StaticPage = require('./StaticPage.js');
15
14
  var propContext = require('../../utils/propContext.js');
@@ -43,7 +42,6 @@ var StaticScene = function StaticScene(_ref) {
43
42
  presentationPage = _ref.presentationPage;
44
43
 
45
44
  var _usePresentationConte = presentationContext.usePresentationContext(),
46
- fittedZoom = _usePresentationConte.fittedZoom,
47
45
  isFullscreen = _usePresentationConte.isFullscreen,
48
46
  showControlsInFullScreen = _usePresentationConte.showControlsInFullScreen;
49
47
 
@@ -76,7 +74,7 @@ var StaticScene = function StaticScene(_ref) {
76
74
 
77
75
  React.useEffect(function () {
78
76
  transformRefs.current = transformRefs.current.slice(0, pages.length);
79
- }, [pages]);
77
+ }, [pages.length]);
80
78
  var pageContainerStyles = React.useMemo(function () {
81
79
  return {
82
80
  height: height,
@@ -95,11 +93,7 @@ var StaticScene = function StaticScene(_ref) {
95
93
  React.useEffect(function () {
96
94
  if (transformRefs.current.length > 0) {
97
95
  for (var i = 0; i < pages.length; i++) {
98
- if (mode !== 'print') {
99
- transformRefs.current[i].centerView(zoom);
100
- } else {
101
- transformRefs.current[i].setTransform(0, 0, 1);
102
- }
96
+ transformRefs.current[i].centerView(zoom);
103
97
  }
104
98
  }
105
99
  }, [pages.length, zoom, isFullscreen, mode]);
@@ -123,40 +117,18 @@ var StaticScene = function StaticScene(_ref) {
123
117
 
124
118
  return /*#__PURE__*/jsxRuntime.jsx("div", {
125
119
  className: classNames__default['default']((_cNames = {}, _defineProperty(_cNames, classNames.page, true), _defineProperty(_cNames, string.slugify(reportLayout), true), _defineProperty(_cNames, "activePage", index === presentationPage), _cNames)),
126
- children: /*#__PURE__*/jsxRuntime.jsx(reactZoomPanPinch.TransformWrapper, {
127
- ref: function ref(element) {
120
+ children: /*#__PURE__*/jsxRuntime.jsx(StaticPage.StaticPageWithZoomPanPinch, {
121
+ acceptedItems: acceptedItems,
122
+ additionalPageItems: additionalPageItems,
123
+ handleZoom: handleZoom,
124
+ hashCode: hashCode,
125
+ itemAccessor: itemAccessor,
126
+ items: page.items,
127
+ mode: mode,
128
+ refSetter: function refSetter(element) {
128
129
  transformRefs.current[index] = element;
129
130
  },
130
- centerOnInit: true,
131
- centerZoomedOut: true,
132
- disablePadding: true,
133
- doubleClick: {
134
- step: 0.2
135
- },
136
- initialScale: zoom,
137
- maxScale: 2,
138
- minScale: 0.5,
139
- onZoom: handleZoom,
140
- panning: {
141
- disabled: zoom <= fittedZoom
142
- },
143
- pinch: {
144
- step: 1
145
- },
146
- children: /*#__PURE__*/jsxRuntime.jsx(reactZoomPanPinch.TransformComponent, {
147
- wrapperStyle: {
148
- height: '100%',
149
- width: '100%'
150
- },
151
- children: /*#__PURE__*/jsxRuntime.jsx(StaticPage, {
152
- acceptedItems: acceptedItems,
153
- additionalPageItems: additionalPageItems,
154
- hashCode: hashCode,
155
- itemAccessor: itemAccessor,
156
- items: page.items,
157
- style: style
158
- })
159
- })
131
+ style: style
160
132
  })
161
133
  }, "page_".concat(index.toString()));
162
134
  })
@@ -1 +1 @@
1
- {"version":3,"file":"StaticScene.js","sources":["../../../../src/components/Preview/StaticScene.js"],"sourcesContent":["import {\n useCallback, useEffect, useMemo, useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport cNames from 'classnames';\nimport { TransformWrapper, TransformComponent } from 'react-zoom-pan-pinch';\nimport * as classNames from '../../constants/classNames';\nimport StaticPage from './StaticPage';\nimport { usePropContext } from '../../utils/propContext';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { slugify } from '../../utils/string';\nimport { usePageTransition } from '../../utils/hooks';\nimport { usePresentationContext } from '../../utils/presentationContext';\nimport ZoomControls from '../Builder/ZoomControls';\n\nconst StaticScene = ({\n additionalPageItems,\n gesture,\n hashCode,\n hideZoom,\n itemAccessor,\n lastScrollPosition,\n mode,\n pages,\n presentationPage,\n}) => {\n const { fittedZoom, isFullscreen, showControlsInFullScreen } = usePresentationContext();\n const { acceptedItems, settings } = usePropContext();\n const { setZoom, zoom } = useBuilderContext();\n const viewPortRef = useRef({});\n const transformRefs = useRef([]);\n\n const {\n reportBackgroundColor,\n reportLayout = 'A4 Landscape',\n reportLayoutHeight = 794,\n reportLayoutWidth = 1123,\n reportPageTransition = 'noAnimation',\n } = settings;\n const width = parseInt(reportLayoutWidth, 10);\n const height = parseInt(reportLayoutHeight, 10);\n\n useEffect(() => {\n if (viewPortRef.current) {\n viewPortRef.current.scrollTop = lastScrollPosition;\n }\n }, []); // set last scroll position after changing mode\n\n useEffect(() => {\n transformRefs.current = transformRefs.current.slice(0, pages.length);\n }, [pages]);\n\n const pageContainerStyles = useMemo(() => ({\n height,\n width,\n }), [width, height]);\n\n const transitionStyle = usePageTransition(reportPageTransition, presentationPage);\n\n const handleZoom = useCallback(zoomPanPinch => {\n const fixedValue = parseFloat(zoomPanPinch.state.scale.toFixed(2));\n const roundValue = parseFloat((Math.round((fixedValue * 100)) / 100).toFixed(1));\n if (roundValue <= 2 && roundValue >= 0.5) {\n setZoom(roundValue);\n }\n }, []);\n\n useEffect(() => {\n if (transformRefs.current.length > 0) {\n for (let i = 0; i < pages.length; i++) {\n if (mode !== 'print') {\n transformRefs.current[i].centerView(zoom);\n } else {\n transformRefs.current[i].setTransform(0, 0, 1);\n }\n }\n }\n }, [pages.length, zoom, isFullscreen, mode]);\n\n return (\n <main\n className={classNames.mainWrapper}\n >\n <div\n ref={viewPortRef}\n className={classNames.viewport}\n {...gesture()}\n >\n <div\n className={`${classNames.canvas} ${reportPageTransition}`}\n style={transitionStyle}\n >\n {pages.map((page, index) => {\n const { backgroundColor } = page;\n const style = {\n ...pageContainerStyles,\n backgroundColor: backgroundColor ? backgroundColor : reportBackgroundColor || '#fff',\n };\n return (\n <div\n key={`page_${index.toString()}`}\n className={cNames({\n [classNames.page]: true,\n [slugify(reportLayout)]: true,\n activePage: index === presentationPage,\n })}\n >\n <TransformWrapper\n ref={element => { transformRefs.current[index] = element; }}\n centerOnInit={true}\n centerZoomedOut={true}\n disablePadding={true}\n doubleClick={{\n step: 0.2,\n }}\n initialScale={zoom}\n maxScale={2}\n minScale={0.5}\n onZoom={handleZoom}\n panning={{\n disabled: zoom <= fittedZoom,\n }}\n pinch={{\n step: 1,\n }}\n >\n <TransformComponent\n wrapperStyle={{ height: '100%', width: '100%' }}\n >\n <StaticPage\n acceptedItems={acceptedItems}\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n items={page.items}\n style={style}\n />\n </TransformComponent>\n </TransformWrapper>\n </div>\n );\n })}\n </div>\n </div>\n <ZoomControls\n pages={pages}\n showZoom={(!isFullscreen || (isFullscreen && showControlsInFullScreen)) && !hideZoom}\n />\n </main>\n );\n};\n\nStaticScene.propTypes = {\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n gesture: PropTypes.func,\n hashCode: PropTypes.string,\n hideZoom: PropTypes.bool,\n itemAccessor: PropTypes.func,\n lastScrollPosition: PropTypes.number,\n mode: PropTypes.string,\n pages: PropTypes.arrayOf(PropTypes.shape({})),\n presentationPage: PropTypes.number,\n};\n\nStaticScene.defaultProps = {\n additionalPageItems: [],\n gesture: () => {},\n hashCode: '',\n hideZoom: false,\n itemAccessor: () => {},\n lastScrollPosition: 0,\n mode: 'preview',\n pages: [],\n presentationPage: 0,\n};\n\nexport default StaticScene;\n"],"names":["StaticScene","additionalPageItems","gesture","hashCode","hideZoom","itemAccessor","lastScrollPosition","mode","pages","presentationPage","usePresentationContext","fittedZoom","isFullscreen","showControlsInFullScreen","usePropContext","acceptedItems","settings","useBuilderContext","setZoom","zoom","viewPortRef","useRef","transformRefs","reportBackgroundColor","reportLayout","reportLayoutHeight","reportLayoutWidth","reportPageTransition","width","parseInt","height","useEffect","current","scrollTop","slice","length","pageContainerStyles","useMemo","transitionStyle","usePageTransition","handleZoom","useCallback","zoomPanPinch","fixedValue","parseFloat","state","scale","toFixed","roundValue","Math","round","i","centerView","setTransform","_jsxs","classNames","_jsx","map","page","index","backgroundColor","style","cNames","slugify","TransformWrapper","element","step","disabled","TransformComponent","items","toString","propTypes","PropTypes","arrayOf","node","func","string","bool","number","shape","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"StaticScene.js","sources":["../../../../src/components/Preview/StaticScene.js"],"sourcesContent":["import {\n useCallback, useEffect, useMemo, useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport cNames from 'classnames';\nimport * as classNames from '../../constants/classNames';\nimport { StaticPageWithZoomPanPinch } from './StaticPage';\nimport { usePropContext } from '../../utils/propContext';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { slugify } from '../../utils/string';\nimport { usePageTransition } from '../../utils/hooks';\nimport { usePresentationContext } from '../../utils/presentationContext';\nimport ZoomControls from '../Builder/ZoomControls';\n\nconst StaticScene = ({\n additionalPageItems,\n gesture,\n hashCode,\n hideZoom,\n itemAccessor,\n lastScrollPosition,\n mode,\n pages,\n presentationPage,\n}) => {\n const { isFullscreen, showControlsInFullScreen } = usePresentationContext();\n const { acceptedItems, settings } = usePropContext();\n const { setZoom, zoom } = useBuilderContext();\n const viewPortRef = useRef({});\n const transformRefs = useRef([]);\n\n const {\n reportBackgroundColor,\n reportLayout = 'A4 Landscape',\n reportLayoutHeight = 794,\n reportLayoutWidth = 1123,\n reportPageTransition = 'noAnimation',\n } = settings;\n const width = parseInt(reportLayoutWidth, 10);\n const height = parseInt(reportLayoutHeight, 10);\n\n useEffect(() => {\n if (viewPortRef.current) {\n viewPortRef.current.scrollTop = lastScrollPosition;\n }\n }, []); // set last scroll position after changing mode\n\n useEffect(() => {\n transformRefs.current = transformRefs.current.slice(0, pages.length);\n }, [pages.length]);\n\n const pageContainerStyles = useMemo(() => ({\n height,\n width,\n }), [width, height]);\n\n const transitionStyle = usePageTransition(reportPageTransition, presentationPage);\n\n const handleZoom = useCallback(zoomPanPinch => {\n const fixedValue = parseFloat(zoomPanPinch.state.scale.toFixed(2));\n const roundValue = parseFloat((Math.round((fixedValue * 100)) / 100).toFixed(1));\n if (roundValue <= 2 && roundValue >= 0.5) {\n setZoom(roundValue);\n }\n }, []);\n\n useEffect(() => {\n if (transformRefs.current.length > 0) {\n for (let i = 0; i < pages.length; i++) {\n transformRefs.current[i].centerView(zoom);\n }\n }\n }, [pages.length, zoom, isFullscreen, mode]);\n\n return (\n <main\n className={classNames.mainWrapper}\n >\n <div\n ref={viewPortRef}\n className={classNames.viewport}\n {...gesture()}\n >\n <div\n className={`${classNames.canvas} ${reportPageTransition}`}\n style={transitionStyle}\n >\n {pages.map((page, index) => {\n const { backgroundColor } = page;\n const style = {\n ...pageContainerStyles,\n backgroundColor: backgroundColor ? backgroundColor : reportBackgroundColor || '#fff',\n };\n return (\n <div\n key={`page_${index.toString()}`}\n className={cNames({\n [classNames.page]: true,\n [slugify(reportLayout)]: true,\n activePage: index === presentationPage,\n })}\n >\n <StaticPageWithZoomPanPinch\n acceptedItems={acceptedItems}\n additionalPageItems={additionalPageItems}\n handleZoom={handleZoom}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n items={page.items}\n mode={mode}\n refSetter={element => { transformRefs.current[index] = element; }}\n style={style}\n />\n </div>\n );\n })}\n </div>\n </div>\n <ZoomControls\n pages={pages}\n showZoom={(!isFullscreen || (isFullscreen && showControlsInFullScreen)) && !hideZoom}\n />\n </main>\n );\n};\n\nStaticScene.propTypes = {\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n gesture: PropTypes.func,\n hashCode: PropTypes.string,\n hideZoom: PropTypes.bool,\n itemAccessor: PropTypes.func,\n lastScrollPosition: PropTypes.number,\n mode: PropTypes.string,\n pages: PropTypes.arrayOf(PropTypes.shape({})),\n presentationPage: PropTypes.number,\n};\n\nStaticScene.defaultProps = {\n additionalPageItems: [],\n gesture: () => {},\n hashCode: '',\n hideZoom: false,\n itemAccessor: () => {},\n lastScrollPosition: 0,\n mode: 'preview',\n pages: [],\n presentationPage: 0,\n};\n\nexport default StaticScene;\n"],"names":["StaticScene","additionalPageItems","gesture","hashCode","hideZoom","itemAccessor","lastScrollPosition","mode","pages","presentationPage","usePresentationContext","isFullscreen","showControlsInFullScreen","usePropContext","acceptedItems","settings","useBuilderContext","setZoom","zoom","viewPortRef","useRef","transformRefs","reportBackgroundColor","reportLayout","reportLayoutHeight","reportLayoutWidth","reportPageTransition","width","parseInt","height","useEffect","current","scrollTop","slice","length","pageContainerStyles","useMemo","transitionStyle","usePageTransition","handleZoom","useCallback","zoomPanPinch","fixedValue","parseFloat","state","scale","toFixed","roundValue","Math","round","i","centerView","_jsxs","classNames","_jsx","map","page","index","backgroundColor","style","cNames","slugify","StaticPageWithZoomPanPinch","items","element","toString","propTypes","PropTypes","arrayOf","node","func","string","bool","number","shape","defaultProps"],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ 'use strict';
2
+
3
+ var PropTypes = require('prop-types');
4
+ var reactZoomPanPinch = require('react-zoom-pan-pinch');
5
+ var builderContext = require('../utils/builderContext.js');
6
+ var presentationContext = require('../utils/presentationContext.js');
7
+ var jsxRuntime = require('react/jsx-runtime');
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; }
10
+
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
+
13
+ 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; }
14
+
15
+ var withZoomPanPinchHOC = function withZoomPanPinchHOC(WrappedComponent) {
16
+ var ZoomPanPinchHOC = function ZoomPanPinchHOC(props) {
17
+ var handleZoom = props.handleZoom,
18
+ mode = props.mode,
19
+ refSetter = props.refSetter;
20
+
21
+ var _useBuilderContext = builderContext.useBuilderContext(),
22
+ zoom = _useBuilderContext.zoom;
23
+
24
+ var _usePresentationConte = presentationContext.usePresentationContext(),
25
+ fittedZoom = _usePresentationConte.fittedZoom;
26
+
27
+ if (mode === 'print') {
28
+ return /*#__PURE__*/jsxRuntime.jsx(WrappedComponent, _objectSpread({}, props));
29
+ }
30
+
31
+ return /*#__PURE__*/jsxRuntime.jsx(reactZoomPanPinch.TransformWrapper, {
32
+ ref: refSetter,
33
+ centerOnInit: true,
34
+ centerZoomedOut: true,
35
+ disablePadding: true,
36
+ doubleClick: {
37
+ step: 0.2
38
+ },
39
+ initialScale: zoom,
40
+ maxScale: 2,
41
+ minScale: 0.5,
42
+ onZoom: handleZoom,
43
+ panning: {
44
+ disabled: zoom <= fittedZoom
45
+ },
46
+ pinch: {
47
+ step: 1
48
+ },
49
+ children: /*#__PURE__*/jsxRuntime.jsx(reactZoomPanPinch.TransformComponent, {
50
+ wrapperStyle: {
51
+ height: '100%',
52
+ width: '100%'
53
+ },
54
+ children: /*#__PURE__*/jsxRuntime.jsx(WrappedComponent, _objectSpread({}, props))
55
+ })
56
+ });
57
+ };
58
+
59
+ ZoomPanPinchHOC.propTypes = {
60
+ handleZoom: PropTypes.func.isRequired,
61
+ mode: PropTypes.string,
62
+ refSetter: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
63
+ current: PropTypes.any
64
+ })]).isRequired
65
+ };
66
+ ZoomPanPinchHOC.defaultProps = {
67
+ mode: ''
68
+ };
69
+ return ZoomPanPinchHOC;
70
+ };
71
+
72
+ module.exports = withZoomPanPinchHOC;
73
+ //# sourceMappingURL=withZoomPanPinchHOC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withZoomPanPinchHOC.js","sources":["../../../src/components/withZoomPanPinchHOC.js"],"sourcesContent":["import {\n string, func, any, oneOfType, shape,\n} from 'prop-types';\nimport { TransformWrapper, TransformComponent } from 'react-zoom-pan-pinch';\nimport { useBuilderContext } from '../utils/builderContext';\nimport { usePresentationContext } from '../utils/presentationContext';\n\nconst withZoomPanPinchHOC = WrappedComponent => {\n const ZoomPanPinchHOC = props => {\n const { handleZoom, mode, refSetter } = props;\n\n const { zoom } = useBuilderContext();\n const { fittedZoom } = usePresentationContext();\n\n if (mode === 'print') {\n return <WrappedComponent {...props} />;\n }\n\n return (\n <TransformWrapper\n ref={refSetter}\n centerOnInit={true}\n centerZoomedOut={true}\n disablePadding={true}\n doubleClick={{\n step: 0.2,\n }}\n initialScale={zoom}\n maxScale={2}\n minScale={0.5}\n onZoom={handleZoom}\n panning={{\n disabled: zoom <= fittedZoom,\n }}\n pinch={{\n step: 1,\n }}\n >\n <TransformComponent\n wrapperStyle={{ height: '100%', width: '100%' }}\n >\n <WrappedComponent {...props} />\n </TransformComponent>\n </TransformWrapper>\n );\n };\n\n ZoomPanPinchHOC.propTypes = {\n handleZoom: func.isRequired,\n mode: string,\n refSetter: oneOfType([\n func,\n shape({ current: any }),\n ]).isRequired,\n };\n\n ZoomPanPinchHOC.defaultProps = {\n mode: '',\n };\n\n return ZoomPanPinchHOC;\n};\n\nexport default withZoomPanPinchHOC;\n"],"names":["withZoomPanPinchHOC","WrappedComponent","ZoomPanPinchHOC","props","handleZoom","mode","refSetter","useBuilderContext","zoom","usePresentationContext","fittedZoom","_jsx","TransformWrapper","step","disabled","TransformComponent","height","width","propTypes","func","isRequired","string","oneOfType","shape","current","any","defaultProps"],"mappings":";;;;;;;;;;;;;;IAOMA,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAAC,gBAAgB,EAAI;AAC9C,MAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK,EAAI;AAC/B,QAAQC,UAAR,GAAwCD,KAAxC,CAAQC,UAAR;AAAA,QAAoBC,IAApB,GAAwCF,KAAxC,CAAoBE,IAApB;AAAA,QAA0BC,SAA1B,GAAwCH,KAAxC,CAA0BG,SAA1B;;AAEA,6BAAiBC,gCAAiB,EAAlC;AAAA,QAAQC,IAAR,sBAAQA,IAAR;;AACA,gCAAuBC,0CAAsB,EAA7C;AAAA,QAAQC,UAAR,yBAAQA,UAAR;;AAEA,QAAIL,IAAI,KAAK,OAAb,EAAsB;AACpB,0BAAOM,eAAC,gBAAD,oBAAsBR,KAAtB,EAAP;AACD;;AAED,wBACEQ,eAACC,kCAAD;AACE,MAAA,GAAG,EAAEN,SADP;AAEE,MAAA,YAAY,EAAE,IAFhB;AAGE,MAAA,eAAe,EAAE,IAHnB;AAIE,MAAA,cAAc,EAAE,IAJlB;AAKE,MAAA,WAAW,EAAE;AACXO,QAAAA,IAAI,EAAE;AADK,OALf;AAQE,MAAA,YAAY,EAAEL,IARhB;AASE,MAAA,QAAQ,EAAE,CATZ;AAUE,MAAA,QAAQ,EAAE,GAVZ;AAWE,MAAA,MAAM,EAAEJ,UAXV;AAYE,MAAA,OAAO,EAAE;AACPU,QAAAA,QAAQ,EAAEN,IAAI,IAAIE;AADX,OAZX;AAeE,MAAA,KAAK,EAAE;AACLG,QAAAA,IAAI,EAAE;AADD,OAfT;AAAA,6BAmBEF,eAACI,oCAAD;AACE,QAAA,YAAY,EAAE;AAAEC,UAAAA,MAAM,EAAE,MAAV;AAAkBC,UAAAA,KAAK,EAAE;AAAzB,SADhB;AAAA,+BAGEN,eAAC,gBAAD,oBAAsBR,KAAtB;AAHF;AAnBF,MADF;AA2BD,GArCD;;AAuCAD,EAAAA,eAAe,CAACgB,SAAhB,GAA4B;AAC1Bd,IAAAA,UAAU,EAAEe,cAAI,CAACC,UADS;AAE1Bf,IAAAA,IAAI,EAAEgB,gBAFoB;AAG1Bf,IAAAA,SAAS,EAAEgB,mBAAS,CAAC,CACnBH,cADmB,EAEnBI,eAAK,CAAC;AAAEC,MAAAA,OAAO,EAAEC;AAAX,KAAD,CAFc,CAAD,CAAT,CAGRL;AANuB,GAA5B;AASAlB,EAAAA,eAAe,CAACwB,YAAhB,GAA+B;AAC7BrB,IAAAA,IAAI,EAAE;AADuB,GAA/B;AAIA,SAAOH,eAAP;AACD;;;;"}
@@ -6,6 +6,7 @@ import { pageContainer } from '../../constants/classNames.js';
6
6
  import ReportItemRenderer from '../Builder/ReportItemRenderer.js';
7
7
  import StaticItem from './StaticItem.js';
8
8
  import getMergedItem from '../../utils/getMergedItem.js';
9
+ import withZoomPanPinchHOC from '../withZoomPanPinchHOC.js';
9
10
  import { jsx, jsxs } from 'react/jsx-runtime';
10
11
 
11
12
  var StaticPage = function StaticPage(_ref) {
@@ -59,6 +60,8 @@ StaticPage.defaultProps = {
59
60
  style: {}
60
61
  };
61
62
  var StaticPage$1 = /*#__PURE__*/memo(StaticPage);
63
+ var StaticPageWithZoomPanPinch = withZoomPanPinchHOC(StaticPage);
62
64
 
63
65
  export default StaticPage$1;
66
+ export { StaticPageWithZoomPanPinch };
64
67
  //# sourceMappingURL=StaticPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StaticPage.js","sources":["../../../../src/components/Preview/StaticPage.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport * as classNames from '../../constants/classNames';\nimport ReportItemRenderer from '../Builder/ReportItemRenderer';\nimport StaticItem from './StaticItem';\nimport getMergedItem from '../../utils/getMergedItem';\n\nconst StaticPage = ({\n acceptedItems,\n additionalPageItems,\n hashCode,\n itemAccessor,\n items,\n style,\n}) => (\n <div\n className={classNames.pageContainer}\n style={style}\n >\n <div className=\"jfReport-hider o-hidden f-all p-relative\">\n {items.filter(item => (\n item.isVisible !== undefined\n ? item.isVisible\n : true\n )).map(item => {\n const mergedItem = getMergedItem(item, acceptedItems);\n return (\n <StaticItem\n key={item.id}\n hashCode={hashCode}\n item={item}\n >\n <ReportItemRenderer\n item={item}\n >\n {ReportItem => (\n <ReportItem\n item={mergedItem}\n itemAccessor={itemAccessor}\n />\n )}\n </ReportItemRenderer>\n </StaticItem>\n );\n })}\n {additionalPageItems}\n </div>\n </div>\n);\n\nStaticPage.propTypes = {\n acceptedItems: PropTypes.shape({}),\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n hashCode: PropTypes.string,\n itemAccessor: PropTypes.func,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n style: PropTypes.shape({}),\n};\n\nStaticPage.defaultProps = {\n acceptedItems: {},\n additionalPageItems: [],\n hashCode: '',\n itemAccessor: () => {},\n items: [],\n style: {},\n};\n\nexport default memo(StaticPage);\n"],"names":["StaticPage","acceptedItems","additionalPageItems","hashCode","itemAccessor","items","style","_jsx","classNames","_jsxs","filter","item","isVisible","undefined","map","mergedItem","getMergedItem","ReportItem","id","propTypes","PropTypes","shape","arrayOf","node","string","func","defaultProps","memo"],"mappings":";;;;;;;;;;AAOA,IAAMA,UAAU,GAAG,SAAbA,UAAa;AAAA,MACjBC,aADiB,QACjBA,aADiB;AAAA,MAEjBC,mBAFiB,QAEjBA,mBAFiB;AAAA,MAGjBC,QAHiB,QAGjBA,QAHiB;AAAA,MAIjBC,YAJiB,QAIjBA,YAJiB;AAAA,MAKjBC,KALiB,QAKjBA,KALiB;AAAA,MAMjBC,KANiB,QAMjBA,KANiB;AAAA,sBAQjBC;AACE,IAAA,SAAS,EAAEC,aADb;AAEE,IAAA,KAAK,EAAEF,KAFT;AAAA,2BAIEG;AAAK,MAAA,SAAS,EAAC,0CAAf;AAAA,iBACGJ,KAAK,CAACK,MAAN,CAAa,UAAAC,IAAI;AAAA,eAChBA,IAAI,CAACC,SAAL,KAAmBC,SAAnB,GACIF,IAAI,CAACC,SADT,GAEI,IAHY;AAAA,OAAjB,EAIEE,GAJF,CAIM,UAAAH,IAAI,EAAI;AACb,YAAMI,UAAU,GAAGC,aAAa,CAACL,IAAD,EAAOV,aAAP,CAAhC;AACA,4BACEM,IAAC,UAAD;AAEE,UAAA,QAAQ,EAAEJ,QAFZ;AAGE,UAAA,IAAI,EAAEQ,IAHR;AAAA,iCAKEJ,IAAC,kBAAD;AACE,YAAA,IAAI,EAAEI,IADR;AAAA,sBAGG,kBAAAM,UAAU;AAAA,kCACTV,IAAC,UAAD;AACE,gBAAA,IAAI,EAAEQ,UADR;AAEE,gBAAA,YAAY,EAAEX;AAFhB,gBADS;AAAA;AAHb;AALF,WACOO,IAAI,CAACO,EADZ,CADF;AAkBD,OAxBA,CADH,EA0BGhB,mBA1BH;AAAA;AAJF,IARiB;AAAA,CAAnB;;AA2CAF,UAAU,CAACmB,SAAX,GAAuB;AACrBlB,EAAAA,aAAa,EAAEmB,SAAS,CAACC,KAAV,CAAgB,EAAhB,CADM;AAErBnB,EAAAA,mBAAmB,EAAEkB,SAAS,CAACE,OAAV,CAAkBF,SAAS,CAACG,IAA5B,CAFA;AAGrBpB,EAAAA,QAAQ,EAAEiB,SAAS,CAACI,MAHC;AAIrBpB,EAAAA,YAAY,EAAEgB,SAAS,CAACK,IAJH;AAKrBpB,EAAAA,KAAK,EAAEe,SAAS,CAACE,OAAV,CAAkBF,SAAS,CAACC,KAAV,CAAgB,EAAhB,CAAlB,CALc;AAMrBf,EAAAA,KAAK,EAAEc,SAAS,CAACC,KAAV,CAAgB,EAAhB;AANc,CAAvB;AASArB,UAAU,CAAC0B,YAAX,GAA0B;AACxBzB,EAAAA,aAAa,EAAE,EADS;AAExBC,EAAAA,mBAAmB,EAAE,EAFG;AAGxBC,EAAAA,QAAQ,EAAE,EAHc;AAIxBC,EAAAA,YAAY,EAAE,wBAAM,EAJI;AAKxBC,EAAAA,KAAK,EAAE,EALiB;AAMxBC,EAAAA,KAAK,EAAE;AANiB,CAA1B;AASA,gCAAeqB,IAAI,CAAC3B,UAAD,CAAnB;;;;"}
1
+ {"version":3,"file":"StaticPage.js","sources":["../../../../src/components/Preview/StaticPage.js"],"sourcesContent":["import { memo } from 'react';\nimport PropTypes from 'prop-types';\nimport * as classNames from '../../constants/classNames';\nimport ReportItemRenderer from '../Builder/ReportItemRenderer';\nimport StaticItem from './StaticItem';\nimport getMergedItem from '../../utils/getMergedItem';\nimport withZoomPanPinchHOC from '../withZoomPanPinchHOC';\n\nconst StaticPage = ({\n acceptedItems,\n additionalPageItems,\n hashCode,\n itemAccessor,\n items,\n style,\n}) => (\n <div\n className={classNames.pageContainer}\n style={style}\n >\n <div className=\"jfReport-hider o-hidden f-all p-relative\">\n {items.filter(item => (\n item.isVisible !== undefined\n ? item.isVisible\n : true\n )).map(item => {\n const mergedItem = getMergedItem(item, acceptedItems);\n return (\n <StaticItem\n key={item.id}\n hashCode={hashCode}\n item={item}\n >\n <ReportItemRenderer\n item={item}\n >\n {ReportItem => (\n <ReportItem\n item={mergedItem}\n itemAccessor={itemAccessor}\n />\n )}\n </ReportItemRenderer>\n </StaticItem>\n );\n })}\n {additionalPageItems}\n </div>\n </div>\n);\n\nStaticPage.propTypes = {\n acceptedItems: PropTypes.shape({}),\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n hashCode: PropTypes.string,\n itemAccessor: PropTypes.func,\n items: PropTypes.arrayOf(PropTypes.shape({})),\n style: PropTypes.shape({}),\n};\n\nStaticPage.defaultProps = {\n acceptedItems: {},\n additionalPageItems: [],\n hashCode: '',\n itemAccessor: () => {},\n items: [],\n style: {},\n};\n\nexport default memo(StaticPage);\nexport const StaticPageWithZoomPanPinch = withZoomPanPinchHOC(StaticPage);\n"],"names":["StaticPage","acceptedItems","additionalPageItems","hashCode","itemAccessor","items","style","_jsx","classNames","_jsxs","filter","item","isVisible","undefined","map","mergedItem","getMergedItem","ReportItem","id","propTypes","PropTypes","shape","arrayOf","node","string","func","defaultProps","memo","StaticPageWithZoomPanPinch","withZoomPanPinchHOC"],"mappings":";;;;;;;;;;;AAQA,IAAMA,UAAU,GAAG,SAAbA,UAAa;AAAA,MACjBC,aADiB,QACjBA,aADiB;AAAA,MAEjBC,mBAFiB,QAEjBA,mBAFiB;AAAA,MAGjBC,QAHiB,QAGjBA,QAHiB;AAAA,MAIjBC,YAJiB,QAIjBA,YAJiB;AAAA,MAKjBC,KALiB,QAKjBA,KALiB;AAAA,MAMjBC,KANiB,QAMjBA,KANiB;AAAA,sBAQjBC;AACE,IAAA,SAAS,EAAEC,aADb;AAEE,IAAA,KAAK,EAAEF,KAFT;AAAA,2BAIEG;AAAK,MAAA,SAAS,EAAC,0CAAf;AAAA,iBACGJ,KAAK,CAACK,MAAN,CAAa,UAAAC,IAAI;AAAA,eAChBA,IAAI,CAACC,SAAL,KAAmBC,SAAnB,GACIF,IAAI,CAACC,SADT,GAEI,IAHY;AAAA,OAAjB,EAIEE,GAJF,CAIM,UAAAH,IAAI,EAAI;AACb,YAAMI,UAAU,GAAGC,aAAa,CAACL,IAAD,EAAOV,aAAP,CAAhC;AACA,4BACEM,IAAC,UAAD;AAEE,UAAA,QAAQ,EAAEJ,QAFZ;AAGE,UAAA,IAAI,EAAEQ,IAHR;AAAA,iCAKEJ,IAAC,kBAAD;AACE,YAAA,IAAI,EAAEI,IADR;AAAA,sBAGG,kBAAAM,UAAU;AAAA,kCACTV,IAAC,UAAD;AACE,gBAAA,IAAI,EAAEQ,UADR;AAEE,gBAAA,YAAY,EAAEX;AAFhB,gBADS;AAAA;AAHb;AALF,WACOO,IAAI,CAACO,EADZ,CADF;AAkBD,OAxBA,CADH,EA0BGhB,mBA1BH;AAAA;AAJF,IARiB;AAAA,CAAnB;;AA2CAF,UAAU,CAACmB,SAAX,GAAuB;AACrBlB,EAAAA,aAAa,EAAEmB,SAAS,CAACC,KAAV,CAAgB,EAAhB,CADM;AAErBnB,EAAAA,mBAAmB,EAAEkB,SAAS,CAACE,OAAV,CAAkBF,SAAS,CAACG,IAA5B,CAFA;AAGrBpB,EAAAA,QAAQ,EAAEiB,SAAS,CAACI,MAHC;AAIrBpB,EAAAA,YAAY,EAAEgB,SAAS,CAACK,IAJH;AAKrBpB,EAAAA,KAAK,EAAEe,SAAS,CAACE,OAAV,CAAkBF,SAAS,CAACC,KAAV,CAAgB,EAAhB,CAAlB,CALc;AAMrBf,EAAAA,KAAK,EAAEc,SAAS,CAACC,KAAV,CAAgB,EAAhB;AANc,CAAvB;AASArB,UAAU,CAAC0B,YAAX,GAA0B;AACxBzB,EAAAA,aAAa,EAAE,EADS;AAExBC,EAAAA,mBAAmB,EAAE,EAFG;AAGxBC,EAAAA,QAAQ,EAAE,EAHc;AAIxBC,EAAAA,YAAY,EAAE,wBAAM,EAJI;AAKxBC,EAAAA,KAAK,EAAE,EALiB;AAMxBC,EAAAA,KAAK,EAAE;AANiB,CAA1B;AASA,gCAAeqB,IAAI,CAAC3B,UAAD,CAAnB;IACa4B,0BAA0B,GAAGC,mBAAmB,CAAC7B,UAAD;;;;;"}
@@ -7,9 +7,8 @@ import 'core-js/modules/es.regexp.to-string.js';
7
7
  import { useRef, useEffect, useMemo, useCallback } from 'react';
8
8
  import PropTypes from 'prop-types';
9
9
  import classNames from 'classnames';
10
- import { TransformWrapper, TransformComponent } from 'react-zoom-pan-pinch';
11
10
  import { mainWrapper, canvas, viewport, page } from '../../constants/classNames.js';
12
- import StaticPage from './StaticPage.js';
11
+ import { StaticPageWithZoomPanPinch } from './StaticPage.js';
13
12
  import { usePropContext } from '../../utils/propContext.js';
14
13
  import { useBuilderContext } from '../../utils/builderContext.js';
15
14
  import { slugify } from '../../utils/string.js';
@@ -36,7 +35,6 @@ var StaticScene = function StaticScene(_ref) {
36
35
  presentationPage = _ref.presentationPage;
37
36
 
38
37
  var _usePresentationConte = usePresentationContext(),
39
- fittedZoom = _usePresentationConte.fittedZoom,
40
38
  isFullscreen = _usePresentationConte.isFullscreen,
41
39
  showControlsInFullScreen = _usePresentationConte.showControlsInFullScreen;
42
40
 
@@ -69,7 +67,7 @@ var StaticScene = function StaticScene(_ref) {
69
67
 
70
68
  useEffect(function () {
71
69
  transformRefs.current = transformRefs.current.slice(0, pages.length);
72
- }, [pages]);
70
+ }, [pages.length]);
73
71
  var pageContainerStyles = useMemo(function () {
74
72
  return {
75
73
  height: height,
@@ -88,11 +86,7 @@ var StaticScene = function StaticScene(_ref) {
88
86
  useEffect(function () {
89
87
  if (transformRefs.current.length > 0) {
90
88
  for (var i = 0; i < pages.length; i++) {
91
- if (mode !== 'print') {
92
- transformRefs.current[i].centerView(zoom);
93
- } else {
94
- transformRefs.current[i].setTransform(0, 0, 1);
95
- }
89
+ transformRefs.current[i].centerView(zoom);
96
90
  }
97
91
  }
98
92
  }, [pages.length, zoom, isFullscreen, mode]);
@@ -116,40 +110,18 @@ var StaticScene = function StaticScene(_ref) {
116
110
 
117
111
  return /*#__PURE__*/jsx("div", {
118
112
  className: classNames((_cNames = {}, _defineProperty(_cNames, page, true), _defineProperty(_cNames, slugify(reportLayout), true), _defineProperty(_cNames, "activePage", index === presentationPage), _cNames)),
119
- children: /*#__PURE__*/jsx(TransformWrapper, {
120
- ref: function ref(element) {
113
+ children: /*#__PURE__*/jsx(StaticPageWithZoomPanPinch, {
114
+ acceptedItems: acceptedItems,
115
+ additionalPageItems: additionalPageItems,
116
+ handleZoom: handleZoom,
117
+ hashCode: hashCode,
118
+ itemAccessor: itemAccessor,
119
+ items: page$1.items,
120
+ mode: mode,
121
+ refSetter: function refSetter(element) {
121
122
  transformRefs.current[index] = element;
122
123
  },
123
- centerOnInit: true,
124
- centerZoomedOut: true,
125
- disablePadding: true,
126
- doubleClick: {
127
- step: 0.2
128
- },
129
- initialScale: zoom,
130
- maxScale: 2,
131
- minScale: 0.5,
132
- onZoom: handleZoom,
133
- panning: {
134
- disabled: zoom <= fittedZoom
135
- },
136
- pinch: {
137
- step: 1
138
- },
139
- children: /*#__PURE__*/jsx(TransformComponent, {
140
- wrapperStyle: {
141
- height: '100%',
142
- width: '100%'
143
- },
144
- children: /*#__PURE__*/jsx(StaticPage, {
145
- acceptedItems: acceptedItems,
146
- additionalPageItems: additionalPageItems,
147
- hashCode: hashCode,
148
- itemAccessor: itemAccessor,
149
- items: page$1.items,
150
- style: style
151
- })
152
- })
124
+ style: style
153
125
  })
154
126
  }, "page_".concat(index.toString()));
155
127
  })
@@ -1 +1 @@
1
- {"version":3,"file":"StaticScene.js","sources":["../../../../src/components/Preview/StaticScene.js"],"sourcesContent":["import {\n useCallback, useEffect, useMemo, useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport cNames from 'classnames';\nimport { TransformWrapper, TransformComponent } from 'react-zoom-pan-pinch';\nimport * as classNames from '../../constants/classNames';\nimport StaticPage from './StaticPage';\nimport { usePropContext } from '../../utils/propContext';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { slugify } from '../../utils/string';\nimport { usePageTransition } from '../../utils/hooks';\nimport { usePresentationContext } from '../../utils/presentationContext';\nimport ZoomControls from '../Builder/ZoomControls';\n\nconst StaticScene = ({\n additionalPageItems,\n gesture,\n hashCode,\n hideZoom,\n itemAccessor,\n lastScrollPosition,\n mode,\n pages,\n presentationPage,\n}) => {\n const { fittedZoom, isFullscreen, showControlsInFullScreen } = usePresentationContext();\n const { acceptedItems, settings } = usePropContext();\n const { setZoom, zoom } = useBuilderContext();\n const viewPortRef = useRef({});\n const transformRefs = useRef([]);\n\n const {\n reportBackgroundColor,\n reportLayout = 'A4 Landscape',\n reportLayoutHeight = 794,\n reportLayoutWidth = 1123,\n reportPageTransition = 'noAnimation',\n } = settings;\n const width = parseInt(reportLayoutWidth, 10);\n const height = parseInt(reportLayoutHeight, 10);\n\n useEffect(() => {\n if (viewPortRef.current) {\n viewPortRef.current.scrollTop = lastScrollPosition;\n }\n }, []); // set last scroll position after changing mode\n\n useEffect(() => {\n transformRefs.current = transformRefs.current.slice(0, pages.length);\n }, [pages]);\n\n const pageContainerStyles = useMemo(() => ({\n height,\n width,\n }), [width, height]);\n\n const transitionStyle = usePageTransition(reportPageTransition, presentationPage);\n\n const handleZoom = useCallback(zoomPanPinch => {\n const fixedValue = parseFloat(zoomPanPinch.state.scale.toFixed(2));\n const roundValue = parseFloat((Math.round((fixedValue * 100)) / 100).toFixed(1));\n if (roundValue <= 2 && roundValue >= 0.5) {\n setZoom(roundValue);\n }\n }, []);\n\n useEffect(() => {\n if (transformRefs.current.length > 0) {\n for (let i = 0; i < pages.length; i++) {\n if (mode !== 'print') {\n transformRefs.current[i].centerView(zoom);\n } else {\n transformRefs.current[i].setTransform(0, 0, 1);\n }\n }\n }\n }, [pages.length, zoom, isFullscreen, mode]);\n\n return (\n <main\n className={classNames.mainWrapper}\n >\n <div\n ref={viewPortRef}\n className={classNames.viewport}\n {...gesture()}\n >\n <div\n className={`${classNames.canvas} ${reportPageTransition}`}\n style={transitionStyle}\n >\n {pages.map((page, index) => {\n const { backgroundColor } = page;\n const style = {\n ...pageContainerStyles,\n backgroundColor: backgroundColor ? backgroundColor : reportBackgroundColor || '#fff',\n };\n return (\n <div\n key={`page_${index.toString()}`}\n className={cNames({\n [classNames.page]: true,\n [slugify(reportLayout)]: true,\n activePage: index === presentationPage,\n })}\n >\n <TransformWrapper\n ref={element => { transformRefs.current[index] = element; }}\n centerOnInit={true}\n centerZoomedOut={true}\n disablePadding={true}\n doubleClick={{\n step: 0.2,\n }}\n initialScale={zoom}\n maxScale={2}\n minScale={0.5}\n onZoom={handleZoom}\n panning={{\n disabled: zoom <= fittedZoom,\n }}\n pinch={{\n step: 1,\n }}\n >\n <TransformComponent\n wrapperStyle={{ height: '100%', width: '100%' }}\n >\n <StaticPage\n acceptedItems={acceptedItems}\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n items={page.items}\n style={style}\n />\n </TransformComponent>\n </TransformWrapper>\n </div>\n );\n })}\n </div>\n </div>\n <ZoomControls\n pages={pages}\n showZoom={(!isFullscreen || (isFullscreen && showControlsInFullScreen)) && !hideZoom}\n />\n </main>\n );\n};\n\nStaticScene.propTypes = {\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n gesture: PropTypes.func,\n hashCode: PropTypes.string,\n hideZoom: PropTypes.bool,\n itemAccessor: PropTypes.func,\n lastScrollPosition: PropTypes.number,\n mode: PropTypes.string,\n pages: PropTypes.arrayOf(PropTypes.shape({})),\n presentationPage: PropTypes.number,\n};\n\nStaticScene.defaultProps = {\n additionalPageItems: [],\n gesture: () => {},\n hashCode: '',\n hideZoom: false,\n itemAccessor: () => {},\n lastScrollPosition: 0,\n mode: 'preview',\n pages: [],\n presentationPage: 0,\n};\n\nexport default StaticScene;\n"],"names":["StaticScene","additionalPageItems","gesture","hashCode","hideZoom","itemAccessor","lastScrollPosition","mode","pages","presentationPage","usePresentationContext","fittedZoom","isFullscreen","showControlsInFullScreen","usePropContext","acceptedItems","settings","useBuilderContext","setZoom","zoom","viewPortRef","useRef","transformRefs","reportBackgroundColor","reportLayout","reportLayoutHeight","reportLayoutWidth","reportPageTransition","width","parseInt","height","useEffect","current","scrollTop","slice","length","pageContainerStyles","useMemo","transitionStyle","usePageTransition","handleZoom","useCallback","zoomPanPinch","fixedValue","parseFloat","state","scale","toFixed","roundValue","Math","round","i","centerView","setTransform","_jsxs","classNames","_jsx","map","page","index","backgroundColor","style","cNames","slugify","element","step","disabled","items","toString","propTypes","PropTypes","arrayOf","node","func","string","bool","number","shape","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"StaticScene.js","sources":["../../../../src/components/Preview/StaticScene.js"],"sourcesContent":["import {\n useCallback, useEffect, useMemo, useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport cNames from 'classnames';\nimport * as classNames from '../../constants/classNames';\nimport { StaticPageWithZoomPanPinch } from './StaticPage';\nimport { usePropContext } from '../../utils/propContext';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { slugify } from '../../utils/string';\nimport { usePageTransition } from '../../utils/hooks';\nimport { usePresentationContext } from '../../utils/presentationContext';\nimport ZoomControls from '../Builder/ZoomControls';\n\nconst StaticScene = ({\n additionalPageItems,\n gesture,\n hashCode,\n hideZoom,\n itemAccessor,\n lastScrollPosition,\n mode,\n pages,\n presentationPage,\n}) => {\n const { isFullscreen, showControlsInFullScreen } = usePresentationContext();\n const { acceptedItems, settings } = usePropContext();\n const { setZoom, zoom } = useBuilderContext();\n const viewPortRef = useRef({});\n const transformRefs = useRef([]);\n\n const {\n reportBackgroundColor,\n reportLayout = 'A4 Landscape',\n reportLayoutHeight = 794,\n reportLayoutWidth = 1123,\n reportPageTransition = 'noAnimation',\n } = settings;\n const width = parseInt(reportLayoutWidth, 10);\n const height = parseInt(reportLayoutHeight, 10);\n\n useEffect(() => {\n if (viewPortRef.current) {\n viewPortRef.current.scrollTop = lastScrollPosition;\n }\n }, []); // set last scroll position after changing mode\n\n useEffect(() => {\n transformRefs.current = transformRefs.current.slice(0, pages.length);\n }, [pages.length]);\n\n const pageContainerStyles = useMemo(() => ({\n height,\n width,\n }), [width, height]);\n\n const transitionStyle = usePageTransition(reportPageTransition, presentationPage);\n\n const handleZoom = useCallback(zoomPanPinch => {\n const fixedValue = parseFloat(zoomPanPinch.state.scale.toFixed(2));\n const roundValue = parseFloat((Math.round((fixedValue * 100)) / 100).toFixed(1));\n if (roundValue <= 2 && roundValue >= 0.5) {\n setZoom(roundValue);\n }\n }, []);\n\n useEffect(() => {\n if (transformRefs.current.length > 0) {\n for (let i = 0; i < pages.length; i++) {\n transformRefs.current[i].centerView(zoom);\n }\n }\n }, [pages.length, zoom, isFullscreen, mode]);\n\n return (\n <main\n className={classNames.mainWrapper}\n >\n <div\n ref={viewPortRef}\n className={classNames.viewport}\n {...gesture()}\n >\n <div\n className={`${classNames.canvas} ${reportPageTransition}`}\n style={transitionStyle}\n >\n {pages.map((page, index) => {\n const { backgroundColor } = page;\n const style = {\n ...pageContainerStyles,\n backgroundColor: backgroundColor ? backgroundColor : reportBackgroundColor || '#fff',\n };\n return (\n <div\n key={`page_${index.toString()}`}\n className={cNames({\n [classNames.page]: true,\n [slugify(reportLayout)]: true,\n activePage: index === presentationPage,\n })}\n >\n <StaticPageWithZoomPanPinch\n acceptedItems={acceptedItems}\n additionalPageItems={additionalPageItems}\n handleZoom={handleZoom}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n items={page.items}\n mode={mode}\n refSetter={element => { transformRefs.current[index] = element; }}\n style={style}\n />\n </div>\n );\n })}\n </div>\n </div>\n <ZoomControls\n pages={pages}\n showZoom={(!isFullscreen || (isFullscreen && showControlsInFullScreen)) && !hideZoom}\n />\n </main>\n );\n};\n\nStaticScene.propTypes = {\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n gesture: PropTypes.func,\n hashCode: PropTypes.string,\n hideZoom: PropTypes.bool,\n itemAccessor: PropTypes.func,\n lastScrollPosition: PropTypes.number,\n mode: PropTypes.string,\n pages: PropTypes.arrayOf(PropTypes.shape({})),\n presentationPage: PropTypes.number,\n};\n\nStaticScene.defaultProps = {\n additionalPageItems: [],\n gesture: () => {},\n hashCode: '',\n hideZoom: false,\n itemAccessor: () => {},\n lastScrollPosition: 0,\n mode: 'preview',\n pages: [],\n presentationPage: 0,\n};\n\nexport default StaticScene;\n"],"names":["StaticScene","additionalPageItems","gesture","hashCode","hideZoom","itemAccessor","lastScrollPosition","mode","pages","presentationPage","usePresentationContext","isFullscreen","showControlsInFullScreen","usePropContext","acceptedItems","settings","useBuilderContext","setZoom","zoom","viewPortRef","useRef","transformRefs","reportBackgroundColor","reportLayout","reportLayoutHeight","reportLayoutWidth","reportPageTransition","width","parseInt","height","useEffect","current","scrollTop","slice","length","pageContainerStyles","useMemo","transitionStyle","usePageTransition","handleZoom","useCallback","zoomPanPinch","fixedValue","parseFloat","state","scale","toFixed","roundValue","Math","round","i","centerView","_jsxs","classNames","_jsx","map","page","index","backgroundColor","style","cNames","slugify","items","element","toString","propTypes","PropTypes","arrayOf","node","func","string","bool","number","shape","defaultProps"],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import { func, string, oneOfType, shape, any } from 'prop-types';
2
+ import { TransformWrapper, TransformComponent } from 'react-zoom-pan-pinch';
3
+ import { useBuilderContext } from '../utils/builderContext.js';
4
+ import { usePresentationContext } from '../utils/presentationContext.js';
5
+ import { jsx } from 'react/jsx-runtime';
6
+
7
+ 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
+
9
+ 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; }
10
+
11
+ 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; }
12
+
13
+ var withZoomPanPinchHOC = function withZoomPanPinchHOC(WrappedComponent) {
14
+ var ZoomPanPinchHOC = function ZoomPanPinchHOC(props) {
15
+ var handleZoom = props.handleZoom,
16
+ mode = props.mode,
17
+ refSetter = props.refSetter;
18
+
19
+ var _useBuilderContext = useBuilderContext(),
20
+ zoom = _useBuilderContext.zoom;
21
+
22
+ var _usePresentationConte = usePresentationContext(),
23
+ fittedZoom = _usePresentationConte.fittedZoom;
24
+
25
+ if (mode === 'print') {
26
+ return /*#__PURE__*/jsx(WrappedComponent, _objectSpread({}, props));
27
+ }
28
+
29
+ return /*#__PURE__*/jsx(TransformWrapper, {
30
+ ref: refSetter,
31
+ centerOnInit: true,
32
+ centerZoomedOut: true,
33
+ disablePadding: true,
34
+ doubleClick: {
35
+ step: 0.2
36
+ },
37
+ initialScale: zoom,
38
+ maxScale: 2,
39
+ minScale: 0.5,
40
+ onZoom: handleZoom,
41
+ panning: {
42
+ disabled: zoom <= fittedZoom
43
+ },
44
+ pinch: {
45
+ step: 1
46
+ },
47
+ children: /*#__PURE__*/jsx(TransformComponent, {
48
+ wrapperStyle: {
49
+ height: '100%',
50
+ width: '100%'
51
+ },
52
+ children: /*#__PURE__*/jsx(WrappedComponent, _objectSpread({}, props))
53
+ })
54
+ });
55
+ };
56
+
57
+ ZoomPanPinchHOC.propTypes = {
58
+ handleZoom: func.isRequired,
59
+ mode: string,
60
+ refSetter: oneOfType([func, shape({
61
+ current: any
62
+ })]).isRequired
63
+ };
64
+ ZoomPanPinchHOC.defaultProps = {
65
+ mode: ''
66
+ };
67
+ return ZoomPanPinchHOC;
68
+ };
69
+
70
+ export default withZoomPanPinchHOC;
71
+ //# sourceMappingURL=withZoomPanPinchHOC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withZoomPanPinchHOC.js","sources":["../../../src/components/withZoomPanPinchHOC.js"],"sourcesContent":["import {\n string, func, any, oneOfType, shape,\n} from 'prop-types';\nimport { TransformWrapper, TransformComponent } from 'react-zoom-pan-pinch';\nimport { useBuilderContext } from '../utils/builderContext';\nimport { usePresentationContext } from '../utils/presentationContext';\n\nconst withZoomPanPinchHOC = WrappedComponent => {\n const ZoomPanPinchHOC = props => {\n const { handleZoom, mode, refSetter } = props;\n\n const { zoom } = useBuilderContext();\n const { fittedZoom } = usePresentationContext();\n\n if (mode === 'print') {\n return <WrappedComponent {...props} />;\n }\n\n return (\n <TransformWrapper\n ref={refSetter}\n centerOnInit={true}\n centerZoomedOut={true}\n disablePadding={true}\n doubleClick={{\n step: 0.2,\n }}\n initialScale={zoom}\n maxScale={2}\n minScale={0.5}\n onZoom={handleZoom}\n panning={{\n disabled: zoom <= fittedZoom,\n }}\n pinch={{\n step: 1,\n }}\n >\n <TransformComponent\n wrapperStyle={{ height: '100%', width: '100%' }}\n >\n <WrappedComponent {...props} />\n </TransformComponent>\n </TransformWrapper>\n );\n };\n\n ZoomPanPinchHOC.propTypes = {\n handleZoom: func.isRequired,\n mode: string,\n refSetter: oneOfType([\n func,\n shape({ current: any }),\n ]).isRequired,\n };\n\n ZoomPanPinchHOC.defaultProps = {\n mode: '',\n };\n\n return ZoomPanPinchHOC;\n};\n\nexport default withZoomPanPinchHOC;\n"],"names":["withZoomPanPinchHOC","WrappedComponent","ZoomPanPinchHOC","props","handleZoom","mode","refSetter","useBuilderContext","zoom","usePresentationContext","fittedZoom","_jsx","step","disabled","height","width","propTypes","func","isRequired","string","oneOfType","shape","current","any","defaultProps"],"mappings":";;;;;;;;;;;;IAOMA,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAAC,gBAAgB,EAAI;AAC9C,MAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK,EAAI;AAC/B,QAAQC,UAAR,GAAwCD,KAAxC,CAAQC,UAAR;AAAA,QAAoBC,IAApB,GAAwCF,KAAxC,CAAoBE,IAApB;AAAA,QAA0BC,SAA1B,GAAwCH,KAAxC,CAA0BG,SAA1B;;AAEA,6BAAiBC,iBAAiB,EAAlC;AAAA,QAAQC,IAAR,sBAAQA,IAAR;;AACA,gCAAuBC,sBAAsB,EAA7C;AAAA,QAAQC,UAAR,yBAAQA,UAAR;;AAEA,QAAIL,IAAI,KAAK,OAAb,EAAsB;AACpB,0BAAOM,IAAC,gBAAD,oBAAsBR,KAAtB,EAAP;AACD;;AAED,wBACEQ,IAAC,gBAAD;AACE,MAAA,GAAG,EAAEL,SADP;AAEE,MAAA,YAAY,EAAE,IAFhB;AAGE,MAAA,eAAe,EAAE,IAHnB;AAIE,MAAA,cAAc,EAAE,IAJlB;AAKE,MAAA,WAAW,EAAE;AACXM,QAAAA,IAAI,EAAE;AADK,OALf;AAQE,MAAA,YAAY,EAAEJ,IARhB;AASE,MAAA,QAAQ,EAAE,CATZ;AAUE,MAAA,QAAQ,EAAE,GAVZ;AAWE,MAAA,MAAM,EAAEJ,UAXV;AAYE,MAAA,OAAO,EAAE;AACPS,QAAAA,QAAQ,EAAEL,IAAI,IAAIE;AADX,OAZX;AAeE,MAAA,KAAK,EAAE;AACLE,QAAAA,IAAI,EAAE;AADD,OAfT;AAAA,6BAmBED,IAAC,kBAAD;AACE,QAAA,YAAY,EAAE;AAAEG,UAAAA,MAAM,EAAE,MAAV;AAAkBC,UAAAA,KAAK,EAAE;AAAzB,SADhB;AAAA,+BAGEJ,IAAC,gBAAD,oBAAsBR,KAAtB;AAHF;AAnBF,MADF;AA2BD,GArCD;;AAuCAD,EAAAA,eAAe,CAACc,SAAhB,GAA4B;AAC1BZ,IAAAA,UAAU,EAAEa,IAAI,CAACC,UADS;AAE1Bb,IAAAA,IAAI,EAAEc,MAFoB;AAG1Bb,IAAAA,SAAS,EAAEc,SAAS,CAAC,CACnBH,IADmB,EAEnBI,KAAK,CAAC;AAAEC,MAAAA,OAAO,EAAEC;AAAX,KAAD,CAFc,CAAD,CAAT,CAGRL;AANuB,GAA5B;AASAhB,EAAAA,eAAe,CAACsB,YAAhB,GAA+B;AAC7BnB,IAAAA,IAAI,EAAE;AADuB,GAA/B;AAIA,SAAOH,eAAP;AACD;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jotforminc/dnd-builder",
3
- "version": "2.5.1",
3
+ "version": "2.5.2",
4
4
  "files": [
5
5
  "lib"
6
6
  ],