@jotforminc/dnd-builder 2.9.13 → 2.9.16

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 (44) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/lib/cjs/components/Builder/Builder.js +48 -50
  3. package/lib/cjs/components/Builder/Builder.js.map +1 -1
  4. package/lib/cjs/components/Builder/DndWrapper.js +14 -16
  5. package/lib/cjs/components/Builder/DndWrapper.js.map +1 -1
  6. package/lib/cjs/components/Builder/Element.js +19 -15
  7. package/lib/cjs/components/Builder/Element.js.map +1 -1
  8. package/lib/cjs/components/Builder/Page.js +15 -11
  9. package/lib/cjs/components/Builder/Page.js.map +1 -1
  10. package/lib/cjs/components/Builder/Scene.js +2 -2
  11. package/lib/cjs/components/Builder/Scene.js.map +1 -1
  12. package/lib/cjs/components/DraggableItem/DraggableItem.js +44 -31
  13. package/lib/cjs/components/DraggableItem/DraggableItem.js.map +1 -1
  14. package/lib/cjs/components/DraggableItem/DraggableItemLayer.js +2 -2
  15. package/lib/cjs/components/DraggableItem/DraggableItemLayer.js.map +1 -1
  16. package/lib/cjs/components/Elements/Image.js +4 -3
  17. package/lib/cjs/components/Elements/Image.js.map +1 -1
  18. package/lib/cjs/components/Report.js +10 -9
  19. package/lib/cjs/components/Report.js.map +1 -1
  20. package/lib/cjs/components/ReportWrapper.js +10 -12
  21. package/lib/cjs/components/ReportWrapper.js.map +1 -1
  22. package/lib/cjs/styles/_jfPrint.scss +12 -0
  23. package/lib/esm/components/Builder/Builder.js +48 -50
  24. package/lib/esm/components/Builder/Builder.js.map +1 -1
  25. package/lib/esm/components/Builder/DndWrapper.js +8 -7
  26. package/lib/esm/components/Builder/DndWrapper.js.map +1 -1
  27. package/lib/esm/components/Builder/Element.js +18 -14
  28. package/lib/esm/components/Builder/Element.js.map +1 -1
  29. package/lib/esm/components/Builder/Page.js +16 -12
  30. package/lib/esm/components/Builder/Page.js.map +1 -1
  31. package/lib/esm/components/Builder/Scene.js +2 -2
  32. package/lib/esm/components/Builder/Scene.js.map +1 -1
  33. package/lib/esm/components/DraggableItem/DraggableItem.js +43 -30
  34. package/lib/esm/components/DraggableItem/DraggableItem.js.map +1 -1
  35. package/lib/esm/components/DraggableItem/DraggableItemLayer.js +1 -1
  36. package/lib/esm/components/DraggableItem/DraggableItemLayer.js.map +1 -1
  37. package/lib/esm/components/Elements/Image.js +4 -3
  38. package/lib/esm/components/Elements/Image.js.map +1 -1
  39. package/lib/esm/components/Report.js +10 -9
  40. package/lib/esm/components/Report.js.map +1 -1
  41. package/lib/esm/components/ReportWrapper.js +10 -12
  42. package/lib/esm/components/ReportWrapper.js.map +1 -1
  43. package/lib/esm/styles/_jfPrint.scss +12 -0
  44. package/package.json +10 -7
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","sources":["../../../../src/components/Elements/Image.js"],"sourcesContent":["/* eslint max-len: [\"error\", { \"code\": 120 }] */\nimport { memo, useState, useEffect } from 'react';\nimport {\n func,\n number,\n oneOfType,\n shape,\n string,\n} from 'prop-types';\n\nconst ITEM_TYPE = 'image';\n\nconst DEFAULT_LOGO_SRC = 'https://www.jotform.com/resources/assets/icon/jotform-logomark-transparent-400x400.png';\n\nconst imageWrapperStyle = {\n height: 'inherit',\n width: 'inherit',\n};\n\nconst imageStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst settings = [\n {\n hideWhen: {\n url: '',\n },\n ifValueEquals: {\n '': {\n height: {\n cast: 'integer',\n value: 400,\n },\n width: {\n cast: 'integer',\n value: 400,\n },\n },\n },\n key: 'url',\n section: 'GENERAL',\n type: 'imageThumbnailWithDelete',\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'sizeSettings',\n label: 'Size',\n section: 'GENERAL',\n type: 'sizeSettings',\n value: (_, { height, width }) => `${width}x${height}`,\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'roundedCorners',\n label: 'Rounded Corners',\n range: [0, 30],\n section: 'GENERAL',\n showWhen: {\n shapeType: 'rectangle',\n },\n simple: true,\n type: 'slider',\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'GENERAL',\n type: 'slider',\n },\n {\n key: 'url',\n label: 'Enter URL',\n section: 'ENTER URL',\n showWhen: { url: '' },\n type: 'enterImageURL',\n useImageSizeUpdate: true,\n },\n];\n\nexport const ImageElement = ({ item, itemAccessor }) => {\n const [isLoading, setIsLoading] = useState(true);\n const [isErrored, setIsErrored] = useState(false);\n\n const {\n opacity,\n roundedCorners,\n url,\n } = item;\n\n const additionalProps = itemAccessor(item);\n const defaultURL = additionalProps?.defaultURL || DEFAULT_LOGO_SRC;\n\n useEffect(() => {\n setIsLoading(true);\n setIsErrored(false);\n }, [url, setIsLoading, setIsErrored]);\n\n // TODO :: do we want to show a loading placeholder?\n\n return (\n <>\n <div\n style={{\n ...imageWrapperStyle,\n display: isLoading || isErrored ? 'none' : 'block',\n }}\n >\n <img\n alt=\"reportImage\"\n onError={() => {\n setIsLoading(false);\n setIsErrored(true);\n }}\n onLoad={() => setIsLoading(false)}\n src={url || defaultURL}\n style={{\n ...imageStyle,\n borderRadius: `${roundedCorners}px`,\n display: isErrored ? 'none' : '',\n opacity: parseFloat(opacity),\n }}\n />\n </div>\n {isErrored && (\n <div\n style={{\n ...imageWrapperStyle,\n background: '#fafafa',\n paddingTop: '40%',\n textAlign: 'center',\n }}\n >\n Image was not loaded!\n </div>\n )}\n </>\n );\n};\n\nImageElement.propTypes = {\n item: shape({\n defaultURL: string,\n height: oneOfType([\n number,\n string,\n ]),\n id: string,\n opacity: oneOfType([\n number,\n string,\n ]),\n roundedCorners: oneOfType([\n number,\n string,\n ]),\n url: string,\n width: oneOfType([\n number,\n string,\n ]),\n }),\n itemAccessor: func,\n};\n\nImageElement.defaultProps = {\n item: {\n opacity: 1,\n },\n itemAccessor: () => {},\n};\n\nconst details = {\n height: 400,\n itemType: ITEM_TYPE,\n opacity: 1,\n roundedCorners: 0,\n url: '',\n width: 400,\n};\n\nexport default {\n Component: memo(ImageElement),\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","DEFAULT_LOGO_SRC","imageWrapperStyle","height","width","imageStyle","settings","hideWhen","url","ifValueEquals","cast","value","key","section","type","label","_","range","showWhen","shapeType","simple","useImageSizeUpdate","ImageElement","item","itemAccessor","useState","isLoading","setIsLoading","isErrored","setIsErrored","opacity","roundedCorners","additionalProps","defaultURL","useEffect","_jsxs","_jsx","display","borderRadius","parseFloat","background","paddingTop","textAlign","propTypes","shape","string","oneOfType","number","id","func","defaultProps","details","itemType","Component","memo"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAMA,SAAS,GAAG,OAAlB;AAEA,IAAMC,gBAAgB,GAAG,wFAAzB;AAEA,IAAMC,iBAAiB,GAAG;AACxBC,EAAAA,MAAM,EAAE,SADgB;AAExBC,EAAAA,KAAK,EAAE;AAFiB,CAA1B;AAKA,IAAMC,UAAU,GAAG;AACjBF,EAAAA,MAAM,EAAE,MADS;AAEjBC,EAAAA,KAAK,EAAE;AAFU,CAAnB;AAKA,IAAME,QAAQ,GAAG,CACf;AACEC,EAAAA,QAAQ,EAAE;AACRC,IAAAA,GAAG,EAAE;AADG,GADZ;AAIEC,EAAAA,aAAa,EAAE;AACb,QAAI;AACFN,MAAAA,MAAM,EAAE;AACNO,QAAAA,IAAI,EAAE,SADA;AAENC,QAAAA,KAAK,EAAE;AAFD,OADN;AAKFP,MAAAA,KAAK,EAAE;AACLM,QAAAA,IAAI,EAAE,SADD;AAELC,QAAAA,KAAK,EAAE;AAFF;AALL;AADS,GAJjB;AAgBEC,EAAAA,GAAG,EAAE,KAhBP;AAiBEC,EAAAA,OAAO,EAAE,SAjBX;AAkBEC,EAAAA,IAAI,EAAE;AAlBR,CADe,EAqBf;AACEP,EAAAA,QAAQ,EAAE;AACRC,IAAAA,GAAG,EAAE;AADG,GADZ;AAIEI,EAAAA,GAAG,EAAE,cAJP;AAKEG,EAAAA,KAAK,EAAE,MALT;AAMEF,EAAAA,OAAO,EAAE,SANX;AAOEC,EAAAA,IAAI,EAAE,cAPR;AAQEH,EAAAA,KAAK,EAAE,eAACK,CAAD;AAAA,QAAMb,MAAN,QAAMA,MAAN;AAAA,QAAcC,KAAd,QAAcA,KAAd;AAAA,qBAA6BA,KAA7B,cAAsCD,MAAtC;AAAA;AART,CArBe,EA+Bf;AACEI,EAAAA,QAAQ,EAAE;AACRC,IAAAA,GAAG,EAAE;AADG,GADZ;AAIEI,EAAAA,GAAG,EAAE,gBAJP;AAKEG,EAAAA,KAAK,EAAE,iBALT;AAMEE,EAAAA,KAAK,EAAE,CAAC,CAAD,EAAI,EAAJ,CANT;AAOEJ,EAAAA,OAAO,EAAE,SAPX;AAQEK,EAAAA,QAAQ,EAAE;AACRC,IAAAA,SAAS,EAAE;AADH,GARZ;AAWEC,EAAAA,MAAM,EAAE,IAXV;AAYEN,EAAAA,IAAI,EAAE;AAZR,CA/Be,EA6Cf;AACEP,EAAAA,QAAQ,EAAE;AACRC,IAAAA,GAAG,EAAE;AADG,GADZ;AAIEI,EAAAA,GAAG,EAAE,SAJP;AAKEG,EAAAA,KAAK,EAAE,SALT;AAMEE,EAAAA,KAAK,EAAE,CAAC,CAAD,EAAI,GAAJ,CANT;AAOEJ,EAAAA,OAAO,EAAE,SAPX;AAQEC,EAAAA,IAAI,EAAE;AARR,CA7Ce,EAuDf;AACEF,EAAAA,GAAG,EAAE,KADP;AAEEG,EAAAA,KAAK,EAAE,WAFT;AAGEF,EAAAA,OAAO,EAAE,WAHX;AAIEK,EAAAA,QAAQ,EAAE;AAAEV,IAAAA,GAAG,EAAE;AAAP,GAJZ;AAKEM,EAAAA,IAAI,EAAE,eALR;AAMEO,EAAAA,kBAAkB,EAAE;AANtB,CAvDe,CAAjB;IAiEaC,YAAY,GAAG,SAAfA,YAAe,QAA4B;AAAA,MAAzBC,IAAyB,SAAzBA,IAAyB;AAAA,MAAnBC,YAAmB,SAAnBA,YAAmB;;AACtD,kBAAkCC,cAAQ,CAAC,IAAD,CAA1C;AAAA;AAAA,MAAOC,SAAP;AAAA,MAAkBC,YAAlB;;AACA,mBAAkCF,cAAQ,CAAC,KAAD,CAA1C;AAAA;AAAA,MAAOG,SAAP;AAAA,MAAkBC,YAAlB;;AAEA,MACEC,OADF,GAIIP,IAJJ,CACEO,OADF;AAAA,MAEEC,cAFF,GAIIR,IAJJ,CAEEQ,cAFF;AAAA,MAGEvB,GAHF,GAIIe,IAJJ,CAGEf,GAHF;AAMA,MAAMwB,eAAe,GAAGR,YAAY,CAACD,IAAD,CAApC;AACA,MAAMU,UAAU,GAAG,CAAAD,eAAe,SAAf,IAAAA,eAAe,WAAf,YAAAA,eAAe,CAAEC,UAAjB,KAA+BhC,gBAAlD;AAEAiC,EAAAA,eAAS,CAAC,YAAM;AACdP,IAAAA,YAAY,CAAC,IAAD,CAAZ;AACAE,IAAAA,YAAY,CAAC,KAAD,CAAZ;AACD,GAHQ,EAGN,CAACrB,GAAD,EAAMmB,YAAN,EAAoBE,YAApB,CAHM,CAAT,CAbsD;;AAoBtD,sBACEM;AAAA,4BACEC;AACE,MAAA,KAAK,kCACAlC,iBADA;AAEHmC,QAAAA,OAAO,EAAEX,SAAS,IAAIE,SAAb,GAAyB,MAAzB,GAAkC;AAFxC,QADP;AAAA,6BAMEQ;AACE,QAAA,GAAG,EAAC,aADN;AAEE,QAAA,OAAO,EAAE,mBAAM;AACbT,UAAAA,YAAY,CAAC,KAAD,CAAZ;AACAE,UAAAA,YAAY,CAAC,IAAD,CAAZ;AACD,SALH;AAME,QAAA,MAAM,EAAE;AAAA,iBAAMF,YAAY,CAAC,KAAD,CAAlB;AAAA,SANV;AAOE,QAAA,GAAG,EAAEnB,GAAG,IAAIyB,UAPd;AAQE,QAAA,KAAK,kCACA5B,UADA;AAEHiC,UAAAA,YAAY,YAAKP,cAAL,OAFT;AAGHM,UAAAA,OAAO,EAAET,SAAS,GAAG,MAAH,GAAY,EAH3B;AAIHE,UAAAA,OAAO,EAAES,UAAU,CAACT,OAAD;AAJhB;AARP;AANF,MADF,EAuBGF,SAAS,iBACRQ;AACE,MAAA,KAAK,kCACAlC,iBADA;AAEHsC,QAAAA,UAAU,EAAE,SAFT;AAGHC,QAAAA,UAAU,EAAE,KAHT;AAIHC,QAAAA,SAAS,EAAE;AAJR,QADP;AAAA;AAAA,MAxBJ;AAAA,IADF;AAsCD;AAEDpB,YAAY,CAACqB,SAAb,GAAyB;AACvBpB,EAAAA,IAAI,EAAEqB,eAAK,CAAC;AACVX,IAAAA,UAAU,EAAEY,gBADF;AAEV1C,IAAAA,MAAM,EAAE2C,mBAAS,CAAC,CAChBC,gBADgB,EAEhBF,gBAFgB,CAAD,CAFP;AAMVG,IAAAA,EAAE,EAAEH,gBANM;AAOVf,IAAAA,OAAO,EAAEgB,mBAAS,CAAC,CACjBC,gBADiB,EAEjBF,gBAFiB,CAAD,CAPR;AAWVd,IAAAA,cAAc,EAAEe,mBAAS,CAAC,CACxBC,gBADwB,EAExBF,gBAFwB,CAAD,CAXf;AAeVrC,IAAAA,GAAG,EAAEqC,gBAfK;AAgBVzC,IAAAA,KAAK,EAAE0C,mBAAS,CAAC,CACfC,gBADe,EAEfF,gBAFe,CAAD;AAhBN,GAAD,CADY;AAsBvBrB,EAAAA,YAAY,EAAEyB;AAtBS,CAAzB;AAyBA3B,YAAY,CAAC4B,YAAb,GAA4B;AAC1B3B,EAAAA,IAAI,EAAE;AACJO,IAAAA,OAAO,EAAE;AADL,GADoB;AAI1BN,EAAAA,YAAY,EAAE,wBAAM;AAJM,CAA5B;AAOA,IAAM2B,OAAO,GAAG;AACdhD,EAAAA,MAAM,EAAE,GADM;AAEdiD,EAAAA,QAAQ,EAAEpD,SAFI;AAGd8B,EAAAA,OAAO,EAAE,CAHK;AAIdC,EAAAA,cAAc,EAAE,CAJF;AAKdvB,EAAAA,GAAG,EAAE,EALS;AAMdJ,EAAAA,KAAK,EAAE;AANO,CAAhB;AASA,YAAe;AACbiD,EAAAA,SAAS,eAAEC,UAAI,CAAChC,YAAD,CADF;AAEb6B,EAAAA,OAAO,EAAPA,OAFa;AAGbC,EAAAA,QAAQ,EAAEpD,SAHG;AAIbM,EAAAA,QAAQ,EAARA;AAJa,CAAf;;;;;"}
1
+ {"version":3,"file":"Image.js","sources":["../../../../src/components/Elements/Image.js"],"sourcesContent":["/* eslint max-len: [\"error\", { \"code\": 120 }] */\nimport { memo, useState, useEffect } from 'react';\nimport {\n func,\n number,\n oneOfType,\n shape,\n string,\n} from 'prop-types';\n\nconst ITEM_TYPE = 'image';\n\nconst DEFAULT_LOGO_SRC = 'https://cdn.jotfor.ms/assets/resources/icon/jotform-logomark-transparent-400x400.png';\n\nconst imageWrapperStyle = {\n height: 'inherit',\n width: 'inherit',\n};\n\nconst imageStyle = {\n height: '100%',\n width: '100%',\n};\n\nconst settings = [\n {\n hideWhen: {\n url: '',\n },\n ifValueEquals: {\n '': {\n height: {\n cast: 'integer',\n value: 400,\n },\n width: {\n cast: 'integer',\n value: 400,\n },\n },\n },\n key: 'url',\n section: 'GENERAL',\n type: 'imageThumbnailWithDelete',\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'sizeSettings',\n label: 'Size',\n section: 'GENERAL',\n type: 'sizeSettings',\n value: (_, { height, width }) => `${width}x${height}`,\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'roundedCorners',\n label: 'Rounded Corners',\n range: [0, 30],\n section: 'GENERAL',\n showWhen: {\n shapeType: 'rectangle',\n },\n simple: true,\n type: 'slider',\n },\n {\n hideWhen: {\n url: '',\n },\n key: 'opacity',\n label: 'Opacity',\n range: [0, 100],\n section: 'GENERAL',\n type: 'slider',\n },\n {\n key: 'url',\n label: 'Enter URL',\n section: 'ENTER URL',\n showWhen: { url: '' },\n type: 'enterImageURL',\n useImageSizeUpdate: true,\n },\n];\n\nexport const ImageElement = ({ item, itemAccessor }) => {\n const [isLoading, setIsLoading] = useState(true);\n const [isErrored, setIsErrored] = useState(false);\n\n const {\n opacity,\n roundedCorners,\n url,\n } = item;\n\n const additionalProps = itemAccessor(item);\n const defaultURL = additionalProps?.defaultURL || DEFAULT_LOGO_SRC;\n const imageUrl = additionalProps?.url || url;\n\n useEffect(() => {\n setIsLoading(true);\n setIsErrored(false);\n }, [imageUrl, setIsLoading, setIsErrored]);\n\n // TODO :: do we want to show a loading placeholder?\n\n return (\n <>\n <div\n style={{\n ...imageWrapperStyle,\n display: isLoading || isErrored ? 'none' : 'block',\n }}\n >\n <img\n alt=\"reportImage\"\n onError={() => {\n setIsLoading(false);\n setIsErrored(true);\n }}\n onLoad={() => setIsLoading(false)}\n src={imageUrl || defaultURL}\n style={{\n ...imageStyle,\n borderRadius: `${roundedCorners}px`,\n display: isErrored ? 'none' : '',\n opacity: parseFloat(opacity),\n }}\n />\n </div>\n {isErrored && (\n <div\n style={{\n ...imageWrapperStyle,\n background: '#fafafa',\n paddingTop: '40%',\n textAlign: 'center',\n }}\n >\n Image was not loaded!\n </div>\n )}\n </>\n );\n};\n\nImageElement.propTypes = {\n item: shape({\n defaultURL: string,\n height: oneOfType([\n number,\n string,\n ]),\n id: string,\n opacity: oneOfType([\n number,\n string,\n ]),\n roundedCorners: oneOfType([\n number,\n string,\n ]),\n url: string,\n width: oneOfType([\n number,\n string,\n ]),\n }),\n itemAccessor: func,\n};\n\nImageElement.defaultProps = {\n item: {\n opacity: 1,\n },\n itemAccessor: () => {},\n};\n\nconst details = {\n height: 400,\n itemType: ITEM_TYPE,\n opacity: 1,\n roundedCorners: 0,\n url: '',\n width: 400,\n};\n\nexport default {\n Component: memo(ImageElement),\n details,\n itemType: ITEM_TYPE,\n settings,\n};\n"],"names":["ITEM_TYPE","DEFAULT_LOGO_SRC","imageWrapperStyle","height","width","imageStyle","settings","hideWhen","url","ifValueEquals","cast","value","key","section","type","label","_","range","showWhen","shapeType","simple","useImageSizeUpdate","ImageElement","item","itemAccessor","useState","isLoading","setIsLoading","isErrored","setIsErrored","opacity","roundedCorners","additionalProps","defaultURL","imageUrl","useEffect","_jsxs","_jsx","display","borderRadius","parseFloat","background","paddingTop","textAlign","propTypes","shape","string","oneOfType","number","id","func","defaultProps","details","itemType","Component","memo"],"mappings":"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"}
@@ -39,8 +39,10 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
39
39
 
40
40
  var Report = function Report(_ref) {
41
41
  var leftPanelConfig = _ref.leftPanelConfig,
42
- mode = _ref.mode,
43
- newReportsAppTexts = _ref.reportsAppTexts,
42
+ _ref$mode = _ref.mode,
43
+ mode = _ref$mode === void 0 ? 'customize' : _ref$mode,
44
+ _ref$reportsAppTexts = _ref.reportsAppTexts,
45
+ newReportsAppTexts = _ref$reportsAppTexts === void 0 ? texts['default'] : _ref$reportsAppTexts,
44
46
  props = _objectWithoutProperties(_ref, _excluded);
45
47
 
46
48
  var _useState = React.useState(mode),
@@ -58,11 +60,13 @@ var Report = function Report(_ref) {
58
60
  }, [newReportsAppTexts]);
59
61
  React.useEffect(function () {
60
62
  if (['customize', 'preview'].indexOf(viewMode) > -1) {
61
- setLastScrollPosition(document.querySelector('.jfReport-viewport').scrollTop);
63
+ var _document$querySelect;
64
+
65
+ setLastScrollPosition(((_document$querySelect = document.querySelector('.jfReport-viewport')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.scrollTop) || 0);
62
66
  }
63
67
 
64
68
  setViewMode(mode);
65
- }, [mode]);
69
+ }, [mode, viewMode]);
66
70
 
67
71
  var customProps = _objectSpread(_objectSpread({}, props), {}, {
68
72
  lastScrollPosition: lastScrollPosition,
@@ -94,6 +98,8 @@ var Report = function Report(_ref) {
94
98
  };
95
99
 
96
100
  Report.propTypes = {
101
+ leftPanelConfig: PropTypes__default['default'].any,
102
+
97
103
  /** Conditionally rendering different modes */
98
104
  mode: PropTypes__default['default'].oneOf(['customize', 'preview', 'print', 'presentation']),
99
105
 
@@ -104,11 +110,6 @@ Report.propTypes = {
104
110
  reportsAppTexts: PropTypes__default['default'].shape({}),
105
111
  theme: PropTypes__default['default'].oneOf(['lightMode', 'darkMode'])
106
112
  };
107
- Report.defaultProps = {
108
- mode: 'customize',
109
- reportsAppTexts: texts['default'],
110
- theme: 'lightMode'
111
- };
112
113
 
113
114
  module.exports = Report;
114
115
  //# sourceMappingURL=Report.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Report.js","sources":["../../../src/components/Report.js"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Builder from './Builder';\nimport Presentation from './Presentation/Presentation';\nimport Preview from './Preview';\nimport Print from './Print';\nimport reportsAppTexts, { SharingTextsModule } from '../constants/texts';\n\nconst Report = ({\n leftPanelConfig,\n mode,\n reportsAppTexts: newReportsAppTexts,\n ...props\n}) => {\n const [viewMode, setViewMode] = useState(mode);\n const [lastScrollPosition, setLastScrollPosition] = useState(0);\n\n useEffect(() => {\n SharingTextsModule.setTexts(newReportsAppTexts);\n }, [newReportsAppTexts]);\n\n useEffect(() => {\n if (['customize', 'preview'].indexOf(viewMode) > -1) {\n setLastScrollPosition(document.querySelector('.jfReport-viewport').scrollTop);\n }\n setViewMode(mode);\n }, [mode]);\n\n const customProps = { ...props, lastScrollPosition, leftPanelConfig };\n\n switch (viewMode) {\n case 'preview': {\n return <Preview {...customProps} />;\n }\n case 'presentation': {\n return <Presentation {...props} />;\n }\n case 'print': {\n return <Print {...props} />;\n }\n case 'customize':\n default: {\n return <Builder {...customProps} />;\n }\n }\n};\n\nReport.propTypes = {\n /** Conditionally rendering different modes */\n mode: PropTypes.oneOf(['customize', 'preview', 'print', 'presentation']),\n /**\n It can be changed static texts or translated which use in the library.\n New texts are set when you pass again.\n */\n reportsAppTexts: PropTypes.shape({}),\n theme: PropTypes.oneOf(['lightMode', 'darkMode']),\n};\n\nReport.defaultProps = {\n mode: 'customize',\n reportsAppTexts,\n theme: 'lightMode',\n};\n\nexport default Report;\n"],"names":["Report","leftPanelConfig","mode","newReportsAppTexts","reportsAppTexts","props","useState","viewMode","setViewMode","lastScrollPosition","setLastScrollPosition","useEffect","SharingTextsModule","setTexts","indexOf","document","querySelector","scrollTop","customProps","_jsx","propTypes","PropTypes","oneOf","shape","theme","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAQMA,MAAM,GAAG,SAATA,MAAS,OAKT;AAAA,MAJJC,eAII,QAJJA,eAII;AAAA,MAHJC,IAGI,QAHJA,IAGI;AAAA,MAFaC,kBAEb,QAFJC,eAEI;AAAA,MADDC,KACC;;AACJ,kBAAgCC,cAAQ,CAACJ,IAAD,CAAxC;AAAA;AAAA,MAAOK,QAAP;AAAA,MAAiBC,WAAjB;;AACA,mBAAoDF,cAAQ,CAAC,CAAD,CAA5D;AAAA;AAAA,MAAOG,kBAAP;AAAA,MAA2BC,qBAA3B;;AAEAC,EAAAA,eAAS,CAAC,YAAM;AACdC,IAAAA,wBAAkB,CAACC,QAAnB,CAA4BV,kBAA5B;AACD,GAFQ,EAEN,CAACA,kBAAD,CAFM,CAAT;AAIAQ,EAAAA,eAAS,CAAC,YAAM;AACd,QAAI,CAAC,WAAD,EAAc,SAAd,EAAyBG,OAAzB,CAAiCP,QAAjC,IAA6C,CAAC,CAAlD,EAAqD;AACnDG,MAAAA,qBAAqB,CAACK,QAAQ,CAACC,aAAT,CAAuB,oBAAvB,EAA6CC,SAA9C,CAArB;AACD;;AACDT,IAAAA,WAAW,CAACN,IAAD,CAAX;AACD,GALQ,EAKN,CAACA,IAAD,CALM,CAAT;;AAOA,MAAMgB,WAAW,mCAAQb,KAAR;AAAeI,IAAAA,kBAAkB,EAAlBA,kBAAf;AAAmCR,IAAAA,eAAe,EAAfA;AAAnC,IAAjB;;AAEA,UAAQM,QAAR;AACE,SAAK,SAAL;AAAgB;AACd,4BAAOY,eAAC,OAAD,oBAAaD,WAAb,EAAP;AACD;;AACD,SAAK,cAAL;AAAqB;AACnB,4BAAOC,eAAC,YAAD,oBAAkBd,KAAlB,EAAP;AACD;;AACD,SAAK,OAAL;AAAc;AACZ,4BAAOc,eAAC,KAAD,oBAAWd,KAAX,EAAP;AACD;;AACD,SAAK,WAAL;AACA;AAAS;AACP,4BAAOc,eAAC,OAAD,oBAAaD,WAAb,EAAP;AACD;AAbH;AAeD;;AAEDlB,MAAM,CAACoB,SAAP,GAAmB;AACjB;AACAlB,EAAAA,IAAI,EAAEmB,6BAAS,CAACC,KAAV,CAAgB,CAAC,WAAD,EAAc,SAAd,EAAyB,OAAzB,EAAkC,cAAlC,CAAhB,CAFW;;AAGjB;AACF;AACA;AACA;AACElB,EAAAA,eAAe,EAAEiB,6BAAS,CAACE,KAAV,CAAgB,EAAhB,CAPA;AAQjBC,EAAAA,KAAK,EAAEH,6BAAS,CAACC,KAAV,CAAgB,CAAC,WAAD,EAAc,UAAd,CAAhB;AARU,CAAnB;AAWAtB,MAAM,CAACyB,YAAP,GAAsB;AACpBvB,EAAAA,IAAI,EAAE,WADc;AAEpBE,EAAAA,eAAe,EAAfA,gBAFoB;AAGpBoB,EAAAA,KAAK,EAAE;AAHa,CAAtB;;;;"}
1
+ {"version":3,"file":"Report.js","sources":["../../../src/components/Report.js"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Builder from './Builder';\nimport Presentation from './Presentation/Presentation';\nimport Preview from './Preview';\nimport Print from './Print';\nimport reportsAppTexts, { SharingTextsModule } from '../constants/texts';\n\nconst Report = ({\n leftPanelConfig,\n mode = 'customize',\n reportsAppTexts: newReportsAppTexts = reportsAppTexts,\n ...props\n}) => {\n const [viewMode, setViewMode] = useState(mode);\n const [lastScrollPosition, setLastScrollPosition] = useState(0);\n\n useEffect(() => {\n SharingTextsModule.setTexts(newReportsAppTexts);\n }, [newReportsAppTexts]);\n\n useEffect(() => {\n if (['customize', 'preview'].indexOf(viewMode) > -1) {\n setLastScrollPosition(document.querySelector('.jfReport-viewport')?.scrollTop || 0);\n }\n setViewMode(mode);\n }, [mode, viewMode]);\n\n const customProps = {\n ...props,\n lastScrollPosition,\n leftPanelConfig,\n };\n\n switch (viewMode) {\n case 'preview': {\n return <Preview {...customProps} />;\n }\n case 'presentation': {\n return (\n <Presentation\n {...props}\n />\n );\n }\n case 'print': {\n return (\n <Print\n {...props}\n />\n );\n }\n case 'customize':\n default: {\n return <Builder {...customProps} />;\n }\n }\n};\n\nReport.propTypes = {\n leftPanelConfig: PropTypes.any,\n /** Conditionally rendering different modes */\n mode: PropTypes.oneOf(['customize', 'preview', 'print', 'presentation']),\n /**\n It can be changed static texts or translated which use in the library.\n New texts are set when you pass again.\n */\n reportsAppTexts: PropTypes.shape({}),\n theme: PropTypes.oneOf(['lightMode', 'darkMode']),\n};\n\nexport default Report;\n"],"names":["Report","leftPanelConfig","mode","reportsAppTexts","newReportsAppTexts","props","useState","viewMode","setViewMode","lastScrollPosition","setLastScrollPosition","useEffect","SharingTextsModule","setTexts","indexOf","document","querySelector","scrollTop","customProps","_jsx","propTypes","PropTypes","any","oneOf","shape","theme"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAQMA,MAAM,GAAG,SAATA,MAAS,OAKT;AAAA,MAJJC,eAII,QAJJA,eAII;AAAA,uBAHJC,IAGI;AAAA,MAHJA,IAGI,0BAHG,WAGH;AAAA,kCAFJC,eAEI;AAAA,MAFaC,kBAEb,qCAFkCD,gBAElC;AAAA,MADDE,KACC;;AACJ,kBAAgCC,cAAQ,CAACJ,IAAD,CAAxC;AAAA;AAAA,MAAOK,QAAP;AAAA,MAAiBC,WAAjB;;AACA,mBAAoDF,cAAQ,CAAC,CAAD,CAA5D;AAAA;AAAA,MAAOG,kBAAP;AAAA,MAA2BC,qBAA3B;;AAEAC,EAAAA,eAAS,CAAC,YAAM;AACdC,IAAAA,wBAAkB,CAACC,QAAnB,CAA4BT,kBAA5B;AACD,GAFQ,EAEN,CAACA,kBAAD,CAFM,CAAT;AAIAO,EAAAA,eAAS,CAAC,YAAM;AACd,QAAI,CAAC,WAAD,EAAc,SAAd,EAAyBG,OAAzB,CAAiCP,QAAjC,IAA6C,CAAC,CAAlD,EAAqD;AAAA;;AACnDG,MAAAA,qBAAqB,CAAC,0BAAAK,QAAQ,CAACC,aAAT,CAAuB,oBAAvB,iFAA8CC,SAA9C,KAA2D,CAA5D,CAArB;AACD;;AACDT,IAAAA,WAAW,CAACN,IAAD,CAAX;AACD,GALQ,EAKN,CAACA,IAAD,EAAOK,QAAP,CALM,CAAT;;AAOA,MAAMW,WAAW,mCACZb,KADY;AAEfI,IAAAA,kBAAkB,EAAlBA,kBAFe;AAGfR,IAAAA,eAAe,EAAfA;AAHe,IAAjB;;AAMA,UAAQM,QAAR;AACE,SAAK,SAAL;AAAgB;AACd,4BAAOY,eAAC,OAAD,oBAAaD,WAAb,EAAP;AACD;;AACD,SAAK,cAAL;AAAqB;AACnB,4BACEC,eAAC,YAAD,oBACMd,KADN,EADF;AAKD;;AACD,SAAK,OAAL;AAAc;AACZ,4BACEc,eAAC,KAAD,oBACMd,KADN,EADF;AAKD;;AACD,SAAK,WAAL;AACA;AAAS;AACP,4BAAOc,eAAC,OAAD,oBAAaD,WAAb,EAAP;AACD;AArBH;AAuBD;;AAEDlB,MAAM,CAACoB,SAAP,GAAmB;AACjBnB,EAAAA,eAAe,EAAEoB,6BAAS,CAACC,GADV;;AAEjB;AACApB,EAAAA,IAAI,EAAEmB,6BAAS,CAACE,KAAV,CAAgB,CAAC,WAAD,EAAc,SAAd,EAAyB,OAAzB,EAAkC,cAAlC,CAAhB,CAHW;;AAIjB;AACF;AACA;AACA;AACEpB,EAAAA,eAAe,EAAEkB,6BAAS,CAACG,KAAV,CAAgB,EAAhB,CARA;AASjBC,EAAAA,KAAK,EAAEJ,6BAAS,CAACE,KAAV,CAAgB,CAAC,WAAD,EAAc,UAAd,CAAhB;AATU,CAAnB;;;;"}
@@ -18,10 +18,14 @@ var getModeClass = function getModeClass(mode) {
18
18
  };
19
19
 
20
20
  var ReportWrapper = function ReportWrapper(_ref) {
21
- var children = _ref.children,
22
- mode = _ref.mode,
23
- pageCount = _ref.pageCount,
24
- theme = _ref.theme;
21
+ var _ref$children = _ref.children,
22
+ children = _ref$children === void 0 ? null : _ref$children,
23
+ _ref$mode = _ref.mode,
24
+ mode = _ref$mode === void 0 ? '' : _ref$mode,
25
+ _ref$pageCount = _ref.pageCount,
26
+ pageCount = _ref$pageCount === void 0 ? 0 : _ref$pageCount,
27
+ _ref$theme = _ref.theme,
28
+ theme = _ref$theme === void 0 ? 'lightMode' : _ref$theme;
25
29
 
26
30
  var _useBuilderContext = builderContext.useBuilderContext(),
27
31
  isAllSlidesPanelOpen = _useBuilderContext.isAllSlidesPanelOpen,
@@ -61,7 +65,7 @@ var ReportWrapper = function ReportWrapper(_ref) {
61
65
  }
62
66
 
63
67
  decidedWhichPanelToOpen.current = true;
64
- }, [mode, pageCount]);
68
+ }, [mode, pageCount, isLeftPanelOpen, isSlidesPanelOpen, setIsLeftPanelOpen, setIsSlidesPanelOpen]);
65
69
  var wrapperClass = classNames__default['default']('jfReport', 'f-height', 'd-flex', getModeClass(mode), isLeftPanelOpen === true ? 'leftPaneIsActive' : '', isRightPanelOpen === true || isSlidesPanelOpen === true ? 'rightPaneIsActive' : '', isSlidesPanelOpen === true ? 'slidesPaneIsActive' : '', isAllSlidesPanelOpen === true ? 'allSlidesPaneIsActive' : '', theme);
66
70
  return /*#__PURE__*/jsxRuntime.jsx("div", {
67
71
  className: wrapperClass,
@@ -70,17 +74,11 @@ var ReportWrapper = function ReportWrapper(_ref) {
70
74
  };
71
75
 
72
76
  ReportWrapper.propTypes = {
73
- children: PropTypes__default['default'].any,
77
+ children: PropTypes__default['default'].node,
74
78
  mode: PropTypes__default['default'].string,
75
79
  pageCount: PropTypes__default['default'].number,
76
80
  theme: PropTypes__default['default'].oneOf(['lightMode', 'darkMode'])
77
81
  };
78
- ReportWrapper.defaultProps = {
79
- children: null,
80
- mode: '',
81
- pageCount: 0,
82
- theme: 'lightMode'
83
- };
84
82
  var ReportWrapper$1 = /*#__PURE__*/React.memo(ReportWrapper);
85
83
 
86
84
  module.exports = ReportWrapper$1;
@@ -1 +1 @@
1
- {"version":3,"file":"ReportWrapper.js","sources":["../../../src/components/ReportWrapper.js"],"sourcesContent":["import { memo, useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { useBuilderContext } from '../utils/builderContext';\nimport { useFitZoom } from '../utils/hooks';\nimport { usePropContext } from '../utils/propContext';\n\nconst getModeClass = mode => `${mode}Mode`;\n\nconst ReportWrapper = ({\n children,\n mode,\n pageCount,\n theme,\n}) => {\n const {\n isAllSlidesPanelOpen,\n isLeftPanelOpen,\n isRightPanelOpen,\n isSlidesPanelOpen,\n setIsLeftPanelOpen,\n setIsSlidesPanelOpen,\n setZoom,\n } = useBuilderContext();\n const { settings } = usePropContext();\n const decidedWhichPanelToOpen = useRef(false);\n\n useFitZoom({\n handler: setZoom,\n isModeCustomize: mode === 'customize',\n settings,\n });\n\n useEffect(() => {\n if (mode !== 'customize' || decidedWhichPanelToOpen.current) {\n return;\n }\n\n if (pageCount > 1) {\n if (isLeftPanelOpen) {\n setIsLeftPanelOpen(false);\n }\n setIsSlidesPanelOpen(true);\n } else {\n if (isSlidesPanelOpen) {\n setIsSlidesPanelOpen(false);\n }\n setIsLeftPanelOpen(true);\n }\n\n decidedWhichPanelToOpen.current = true;\n }, [mode, pageCount]);\n\n const wrapperClass = classNames(\n 'jfReport',\n 'f-height',\n 'd-flex',\n getModeClass(mode),\n isLeftPanelOpen === true ? 'leftPaneIsActive' : '',\n isRightPanelOpen === true || isSlidesPanelOpen === true ? 'rightPaneIsActive' : '',\n isSlidesPanelOpen === true ? 'slidesPaneIsActive' : '',\n isAllSlidesPanelOpen === true ? 'allSlidesPaneIsActive' : '',\n theme,\n );\n return (\n <div\n className={wrapperClass}\n >\n {children}\n </div>\n );\n};\n\nReportWrapper.propTypes = {\n children: PropTypes.any,\n mode: PropTypes.string,\n pageCount: PropTypes.number,\n theme: PropTypes.oneOf(['lightMode', 'darkMode']),\n};\n\nReportWrapper.defaultProps = {\n children: null,\n mode: '',\n pageCount: 0,\n theme: 'lightMode',\n};\n\nexport default memo(ReportWrapper);\n"],"names":["getModeClass","mode","ReportWrapper","children","pageCount","theme","useBuilderContext","isAllSlidesPanelOpen","isLeftPanelOpen","isRightPanelOpen","isSlidesPanelOpen","setIsLeftPanelOpen","setIsSlidesPanelOpen","setZoom","usePropContext","settings","decidedWhichPanelToOpen","useRef","useFitZoom","handler","isModeCustomize","useEffect","current","wrapperClass","classNames","_jsx","propTypes","PropTypes","any","string","number","oneOf","defaultProps","memo"],"mappings":";;;;;;;;;;;;;;;AAOA,IAAMA,YAAY,GAAG,SAAfA,YAAe,CAAAC,IAAI;AAAA,mBAAOA,IAAP;AAAA,CAAzB;;AAEA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,OAKhB;AAAA,MAJJC,QAII,QAJJA,QAII;AAAA,MAHJF,IAGI,QAHJA,IAGI;AAAA,MAFJG,SAEI,QAFJA,SAEI;AAAA,MADJC,KACI,QADJA,KACI;;AACJ,2BAQIC,gCAAiB,EARrB;AAAA,MACEC,oBADF,sBACEA,oBADF;AAAA,MAEEC,eAFF,sBAEEA,eAFF;AAAA,MAGEC,gBAHF,sBAGEA,gBAHF;AAAA,MAIEC,iBAJF,sBAIEA,iBAJF;AAAA,MAKEC,kBALF,sBAKEA,kBALF;AAAA,MAMEC,oBANF,sBAMEA,oBANF;AAAA,MAOEC,OAPF,sBAOEA,OAPF;;AASA,wBAAqBC,0BAAc,EAAnC;AAAA,MAAQC,QAAR,mBAAQA,QAAR;;AACA,MAAMC,uBAAuB,GAAGC,YAAM,CAAC,KAAD,CAAtC;AAEAC,EAAAA,gBAAU,CAAC;AACTC,IAAAA,OAAO,EAAEN,OADA;AAETO,IAAAA,eAAe,EAAEnB,IAAI,KAAK,WAFjB;AAGTc,IAAAA,QAAQ,EAARA;AAHS,GAAD,CAAV;AAMAM,EAAAA,eAAS,CAAC,YAAM;AACd,QAAIpB,IAAI,KAAK,WAAT,IAAwBe,uBAAuB,CAACM,OAApD,EAA6D;AAC3D;AACD;;AAED,QAAIlB,SAAS,GAAG,CAAhB,EAAmB;AACjB,UAAII,eAAJ,EAAqB;AACnBG,QAAAA,kBAAkB,CAAC,KAAD,CAAlB;AACD;;AACDC,MAAAA,oBAAoB,CAAC,IAAD,CAApB;AACD,KALD,MAKO;AACL,UAAIF,iBAAJ,EAAuB;AACrBE,QAAAA,oBAAoB,CAAC,KAAD,CAApB;AACD;;AACDD,MAAAA,kBAAkB,CAAC,IAAD,CAAlB;AACD;;AAEDK,IAAAA,uBAAuB,CAACM,OAAxB,GAAkC,IAAlC;AACD,GAlBQ,EAkBN,CAACrB,IAAD,EAAOG,SAAP,CAlBM,CAAT;AAoBA,MAAMmB,YAAY,GAAGC,8BAAU,CAC7B,UAD6B,EAE7B,UAF6B,EAG7B,QAH6B,EAI7BxB,YAAY,CAACC,IAAD,CAJiB,EAK7BO,eAAe,KAAK,IAApB,GAA2B,kBAA3B,GAAgD,EALnB,EAM7BC,gBAAgB,KAAK,IAArB,IAA6BC,iBAAiB,KAAK,IAAnD,GAA0D,mBAA1D,GAAgF,EANnD,EAO7BA,iBAAiB,KAAK,IAAtB,GAA6B,oBAA7B,GAAoD,EAPvB,EAQ7BH,oBAAoB,KAAK,IAAzB,GAAgC,uBAAhC,GAA0D,EAR7B,EAS7BF,KAT6B,CAA/B;AAWA,sBACEoB;AACE,IAAA,SAAS,EAAEF,YADb;AAAA,cAGGpB;AAHH,IADF;AAOD,CA9DD;;AAgEAD,aAAa,CAACwB,SAAd,GAA0B;AACxBvB,EAAAA,QAAQ,EAAEwB,6BAAS,CAACC,GADI;AAExB3B,EAAAA,IAAI,EAAE0B,6BAAS,CAACE,MAFQ;AAGxBzB,EAAAA,SAAS,EAAEuB,6BAAS,CAACG,MAHG;AAIxBzB,EAAAA,KAAK,EAAEsB,6BAAS,CAACI,KAAV,CAAgB,CAAC,WAAD,EAAc,UAAd,CAAhB;AAJiB,CAA1B;AAOA7B,aAAa,CAAC8B,YAAd,GAA6B;AAC3B7B,EAAAA,QAAQ,EAAE,IADiB;AAE3BF,EAAAA,IAAI,EAAE,EAFqB;AAG3BG,EAAAA,SAAS,EAAE,CAHgB;AAI3BC,EAAAA,KAAK,EAAE;AAJoB,CAA7B;AAOA,mCAAe4B,UAAI,CAAC/B,aAAD,CAAnB;;;;"}
1
+ {"version":3,"file":"ReportWrapper.js","sources":["../../../src/components/ReportWrapper.js"],"sourcesContent":["import { memo, useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { useBuilderContext } from '../utils/builderContext';\nimport { useFitZoom } from '../utils/hooks';\nimport { usePropContext } from '../utils/propContext';\n\nconst getModeClass = mode => `${mode}Mode`;\n\nconst ReportWrapper = ({\n children = null,\n mode = '',\n pageCount = 0,\n theme = 'lightMode',\n}) => {\n const {\n isAllSlidesPanelOpen,\n isLeftPanelOpen,\n isRightPanelOpen,\n isSlidesPanelOpen,\n setIsLeftPanelOpen,\n setIsSlidesPanelOpen,\n setZoom,\n } = useBuilderContext();\n const { settings } = usePropContext();\n const decidedWhichPanelToOpen = useRef(false);\n\n useFitZoom({\n handler: setZoom,\n isModeCustomize: mode === 'customize',\n settings,\n });\n\n useEffect(() => {\n if (mode !== 'customize' || decidedWhichPanelToOpen.current) {\n return;\n }\n\n if (pageCount > 1) {\n if (isLeftPanelOpen) {\n setIsLeftPanelOpen(false);\n }\n setIsSlidesPanelOpen(true);\n } else {\n if (isSlidesPanelOpen) {\n setIsSlidesPanelOpen(false);\n }\n setIsLeftPanelOpen(true);\n }\n\n decidedWhichPanelToOpen.current = true;\n }, [\n mode,\n pageCount,\n isLeftPanelOpen,\n isSlidesPanelOpen,\n setIsLeftPanelOpen,\n setIsSlidesPanelOpen,\n ]);\n\n const wrapperClass = classNames(\n 'jfReport',\n 'f-height',\n 'd-flex',\n getModeClass(mode),\n isLeftPanelOpen === true ? 'leftPaneIsActive' : '',\n isRightPanelOpen === true || isSlidesPanelOpen === true ? 'rightPaneIsActive' : '',\n isSlidesPanelOpen === true ? 'slidesPaneIsActive' : '',\n isAllSlidesPanelOpen === true ? 'allSlidesPaneIsActive' : '',\n theme,\n );\n return (\n <div\n className={wrapperClass}\n >\n {children}\n </div>\n );\n};\n\nReportWrapper.propTypes = {\n children: PropTypes.node,\n mode: PropTypes.string,\n pageCount: PropTypes.number,\n theme: PropTypes.oneOf(['lightMode', 'darkMode']),\n};\n\nexport default memo(ReportWrapper);\n"],"names":["getModeClass","mode","ReportWrapper","children","pageCount","theme","useBuilderContext","isAllSlidesPanelOpen","isLeftPanelOpen","isRightPanelOpen","isSlidesPanelOpen","setIsLeftPanelOpen","setIsSlidesPanelOpen","setZoom","usePropContext","settings","decidedWhichPanelToOpen","useRef","useFitZoom","handler","isModeCustomize","useEffect","current","wrapperClass","classNames","_jsx","propTypes","PropTypes","node","string","number","oneOf","memo"],"mappings":";;;;;;;;;;;;;;;AAOA,IAAMA,YAAY,GAAG,SAAfA,YAAe,CAAAC,IAAI;AAAA,mBAAOA,IAAP;AAAA,CAAzB;;AAEA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,OAKhB;AAAA,2BAJJC,QAII;AAAA,MAJJA,QAII,8BAJO,IAIP;AAAA,uBAHJF,IAGI;AAAA,MAHJA,IAGI,0BAHG,EAGH;AAAA,4BAFJG,SAEI;AAAA,MAFJA,SAEI,+BAFQ,CAER;AAAA,wBADJC,KACI;AAAA,MADJA,KACI,2BADI,WACJ;;AACJ,2BAQIC,gCAAiB,EARrB;AAAA,MACEC,oBADF,sBACEA,oBADF;AAAA,MAEEC,eAFF,sBAEEA,eAFF;AAAA,MAGEC,gBAHF,sBAGEA,gBAHF;AAAA,MAIEC,iBAJF,sBAIEA,iBAJF;AAAA,MAKEC,kBALF,sBAKEA,kBALF;AAAA,MAMEC,oBANF,sBAMEA,oBANF;AAAA,MAOEC,OAPF,sBAOEA,OAPF;;AASA,wBAAqBC,0BAAc,EAAnC;AAAA,MAAQC,QAAR,mBAAQA,QAAR;;AACA,MAAMC,uBAAuB,GAAGC,YAAM,CAAC,KAAD,CAAtC;AAEAC,EAAAA,gBAAU,CAAC;AACTC,IAAAA,OAAO,EAAEN,OADA;AAETO,IAAAA,eAAe,EAAEnB,IAAI,KAAK,WAFjB;AAGTc,IAAAA,QAAQ,EAARA;AAHS,GAAD,CAAV;AAMAM,EAAAA,eAAS,CAAC,YAAM;AACd,QAAIpB,IAAI,KAAK,WAAT,IAAwBe,uBAAuB,CAACM,OAApD,EAA6D;AAC3D;AACD;;AAED,QAAIlB,SAAS,GAAG,CAAhB,EAAmB;AACjB,UAAII,eAAJ,EAAqB;AACnBG,QAAAA,kBAAkB,CAAC,KAAD,CAAlB;AACD;;AACDC,MAAAA,oBAAoB,CAAC,IAAD,CAApB;AACD,KALD,MAKO;AACL,UAAIF,iBAAJ,EAAuB;AACrBE,QAAAA,oBAAoB,CAAC,KAAD,CAApB;AACD;;AACDD,MAAAA,kBAAkB,CAAC,IAAD,CAAlB;AACD;;AAEDK,IAAAA,uBAAuB,CAACM,OAAxB,GAAkC,IAAlC;AACD,GAlBQ,EAkBN,CACDrB,IADC,EAEDG,SAFC,EAGDI,eAHC,EAIDE,iBAJC,EAKDC,kBALC,EAMDC,oBANC,CAlBM,CAAT;AA2BA,MAAMW,YAAY,GAAGC,8BAAU,CAC7B,UAD6B,EAE7B,UAF6B,EAG7B,QAH6B,EAI7BxB,YAAY,CAACC,IAAD,CAJiB,EAK7BO,eAAe,KAAK,IAApB,GAA2B,kBAA3B,GAAgD,EALnB,EAM7BC,gBAAgB,KAAK,IAArB,IAA6BC,iBAAiB,KAAK,IAAnD,GAA0D,mBAA1D,GAAgF,EANnD,EAO7BA,iBAAiB,KAAK,IAAtB,GAA6B,oBAA7B,GAAoD,EAPvB,EAQ7BH,oBAAoB,KAAK,IAAzB,GAAgC,uBAAhC,GAA0D,EAR7B,EAS7BF,KAT6B,CAA/B;AAWA,sBACEoB;AACE,IAAA,SAAS,EAAEF,YADb;AAAA,cAGGpB;AAHH,IADF;AAOD,CArED;;AAuEAD,aAAa,CAACwB,SAAd,GAA0B;AACxBvB,EAAAA,QAAQ,EAAEwB,6BAAS,CAACC,IADI;AAExB3B,EAAAA,IAAI,EAAE0B,6BAAS,CAACE,MAFQ;AAGxBzB,EAAAA,SAAS,EAAEuB,6BAAS,CAACG,MAHG;AAIxBzB,EAAAA,KAAK,EAAEsB,6BAAS,CAACI,KAAV,CAAgB,CAAC,WAAD,EAAc,UAAd,CAAhB;AAJiB,CAA1B;AAOA,mCAAeC,UAAI,CAAC9B,aAAD,CAAnB;;;;"}
@@ -27,6 +27,18 @@
27
27
 
28
28
  display: block;
29
29
  }
30
+ .jfReport.printMode [id*="presentation-page-"] {
31
+ width: 100% !important;
32
+ height: 100% !important;
33
+ page-break-after: always !important;
34
+ break-after: always !important;
35
+
36
+ &:last-child {
37
+ page-break-after: auto !important;
38
+ break-after: auto !important;
39
+ }
40
+ }
41
+
30
42
  .jfReport.printMode .jfReport-col {
31
43
  display: block;
32
44
  }
@@ -21,30 +21,54 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
21
21
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
22
22
 
23
23
  var Builder = function Builder(_ref) {
24
- var acceptedItems = _ref.acceptedItems,
25
- additionalPageItems = _ref.additionalPageItems,
26
- disableInteraction = _ref.disableInteraction,
27
- itemAccessor = _ref.itemAccessor,
28
- lastScrollPosition = _ref.lastScrollPosition,
29
- leftPanelConfig = _ref.leftPanelConfig,
30
- onAnEventTrigger = _ref.onAnEventTrigger,
31
- onItemAdd = _ref.onItemAdd,
32
- onItemChange = _ref.onItemChange,
33
- onItemMove = _ref.onItemMove,
34
- onItemRemove = _ref.onItemRemove,
35
- onItemResize = _ref.onItemResize,
36
- onItemsMove = _ref.onItemsMove,
37
- onPageAdd = _ref.onPageAdd,
38
- onPageChange = _ref.onPageChange,
39
- onPageDuplicate = _ref.onPageDuplicate,
40
- onPageOrdersChange = _ref.onPageOrdersChange,
41
- onPageRemove = _ref.onPageRemove,
42
- onRightPanelsToggled = _ref.onRightPanelsToggled,
43
- onSettingChange = _ref.onSettingChange,
44
- pages = _ref.pages,
45
- settings = _ref.settings,
46
- theme = _ref.theme,
47
- useExperimentalFeatures = _ref.useExperimentalFeatures,
24
+ var _ref$acceptedItems = _ref.acceptedItems,
25
+ acceptedItems = _ref$acceptedItems === void 0 ? {} : _ref$acceptedItems,
26
+ _ref$additionalPageIt = _ref.additionalPageItems,
27
+ additionalPageItems = _ref$additionalPageIt === void 0 ? [] : _ref$additionalPageIt,
28
+ _ref$disableInteracti = _ref.disableInteraction,
29
+ disableInteraction = _ref$disableInteracti === void 0 ? [] : _ref$disableInteracti,
30
+ _ref$itemAccessor = _ref.itemAccessor,
31
+ itemAccessor = _ref$itemAccessor === void 0 ? function () {} : _ref$itemAccessor,
32
+ _ref$lastScrollPositi = _ref.lastScrollPosition,
33
+ lastScrollPosition = _ref$lastScrollPositi === void 0 ? 0 : _ref$lastScrollPositi,
34
+ _ref$leftPanelConfig = _ref.leftPanelConfig,
35
+ leftPanelConfig = _ref$leftPanelConfig === void 0 ? [] : _ref$leftPanelConfig,
36
+ _ref$onAnEventTrigger = _ref.onAnEventTrigger,
37
+ onAnEventTrigger = _ref$onAnEventTrigger === void 0 ? function () {} : _ref$onAnEventTrigger,
38
+ _ref$onItemAdd = _ref.onItemAdd,
39
+ onItemAdd = _ref$onItemAdd === void 0 ? function () {} : _ref$onItemAdd,
40
+ _ref$onItemChange = _ref.onItemChange,
41
+ onItemChange = _ref$onItemChange === void 0 ? function () {} : _ref$onItemChange,
42
+ _ref$onItemMove = _ref.onItemMove,
43
+ onItemMove = _ref$onItemMove === void 0 ? function () {} : _ref$onItemMove,
44
+ _ref$onItemRemove = _ref.onItemRemove,
45
+ onItemRemove = _ref$onItemRemove === void 0 ? function () {} : _ref$onItemRemove,
46
+ _ref$onItemResize = _ref.onItemResize,
47
+ onItemResize = _ref$onItemResize === void 0 ? function () {} : _ref$onItemResize,
48
+ _ref$onItemsMove = _ref.onItemsMove,
49
+ onItemsMove = _ref$onItemsMove === void 0 ? function () {} : _ref$onItemsMove,
50
+ _ref$onPageAdd = _ref.onPageAdd,
51
+ onPageAdd = _ref$onPageAdd === void 0 ? function () {} : _ref$onPageAdd,
52
+ _ref$onPageChange = _ref.onPageChange,
53
+ onPageChange = _ref$onPageChange === void 0 ? function () {} : _ref$onPageChange,
54
+ _ref$onPageDuplicate = _ref.onPageDuplicate,
55
+ onPageDuplicate = _ref$onPageDuplicate === void 0 ? function () {} : _ref$onPageDuplicate,
56
+ _ref$onPageOrdersChan = _ref.onPageOrdersChange,
57
+ onPageOrdersChange = _ref$onPageOrdersChan === void 0 ? function () {} : _ref$onPageOrdersChan,
58
+ _ref$onPageRemove = _ref.onPageRemove,
59
+ onPageRemove = _ref$onPageRemove === void 0 ? function () {} : _ref$onPageRemove,
60
+ _ref$onRightPanelsTog = _ref.onRightPanelsToggled,
61
+ onRightPanelsToggled = _ref$onRightPanelsTog === void 0 ? function () {} : _ref$onRightPanelsTog,
62
+ _ref$onSettingChange = _ref.onSettingChange,
63
+ onSettingChange = _ref$onSettingChange === void 0 ? function () {} : _ref$onSettingChange,
64
+ _ref$pages = _ref.pages,
65
+ pages = _ref$pages === void 0 ? [] : _ref$pages,
66
+ _ref$settings = _ref.settings,
67
+ settings = _ref$settings === void 0 ? {} : _ref$settings,
68
+ _ref$theme = _ref.theme,
69
+ theme = _ref$theme === void 0 ? 'lightMode' : _ref$theme,
70
+ _ref$useExperimentalF = _ref.useExperimentalFeatures,
71
+ useExperimentalFeatures = _ref$useExperimentalF === void 0 ? false : _ref$useExperimentalF,
48
72
  otherProps = _objectWithoutProperties(_ref, _excluded);
49
73
 
50
74
  var hashCode = objectHash(otherProps);
@@ -180,32 +204,6 @@ Builder.propTypes = {
180
204
  theme: PropTypes.oneOf(['lightMode', 'darkMode']),
181
205
  useExperimentalFeatures: PropTypes.bool
182
206
  };
183
- Builder.defaultProps = {
184
- acceptedItems: {},
185
- additionalPageItems: [],
186
- disableInteraction: [],
187
- itemAccessor: function itemAccessor() {},
188
- lastScrollPosition: 0,
189
- leftPanelConfig: [],
190
- onAnEventTrigger: function onAnEventTrigger() {},
191
- onItemAdd: function onItemAdd() {},
192
- onItemChange: function onItemChange() {},
193
- onItemMove: function onItemMove() {},
194
- onItemRemove: function onItemRemove() {},
195
- onItemResize: function onItemResize() {},
196
- onItemsMove: function onItemsMove() {},
197
- onPageAdd: function onPageAdd() {},
198
- onPageChange: function onPageChange() {},
199
- onPageDuplicate: function onPageDuplicate() {},
200
- onPageOrdersChange: function onPageOrdersChange() {},
201
- onPageRemove: function onPageRemove() {},
202
- onRightPanelsToggled: function onRightPanelsToggled() {},
203
- onSettingChange: function onSettingChange() {},
204
- pages: [],
205
- settings: {},
206
- theme: 'lightMode',
207
- useExperimentalFeatures: false
208
- };
209
207
 
210
208
  export default Builder;
211
209
  //# sourceMappingURL=Builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Builder.js","sources":["../../../../src/components/Builder/Builder.js"],"sourcesContent":["import { StrictMode } from 'react';\nimport PropTypes from 'prop-types';\nimport objectHash from 'object-hash';\nimport DndWrapper from './DndWrapper';\nimport { BuilderProvider } from '../../utils/builderContext';\nimport { PropProvider } from '../../utils/propContext';\nimport ReportWrapper from '../ReportWrapper';\nimport Scene from './Scene';\nimport RightPanel from '../Panels/RightPanel';\nimport LeftPanel from '../Panels/LeftPanel';\nimport SlidesPanel from '../Panels/SlidesPanel';\nimport AllSlidesPanel from '../Panels/AllSlidesPanel';\nimport { leftPanelConfigPropType } from '../../constants/propTypes';\n\nimport '../../styles/jfReportsBundle.scss';\n\nconst Builder = ({\n acceptedItems,\n additionalPageItems,\n disableInteraction,\n itemAccessor,\n lastScrollPosition,\n leftPanelConfig,\n onAnEventTrigger,\n onItemAdd,\n onItemChange,\n onItemMove,\n onItemRemove,\n onItemResize,\n onItemsMove,\n onPageAdd,\n onPageChange,\n onPageDuplicate,\n onPageOrdersChange,\n onPageRemove,\n onRightPanelsToggled,\n onSettingChange,\n pages,\n settings,\n theme,\n useExperimentalFeatures,\n ...otherProps\n}) => {\n const hashCode = objectHash(otherProps);\n\n return (\n <StrictMode>\n <BuilderProvider onRightPanelsToggled={onRightPanelsToggled}>\n <PropProvider\n acceptedItems={acceptedItems}\n disableInteraction={disableInteraction}\n onAnEventTrigger={onAnEventTrigger}\n settings={settings}\n useExperimentalFeatures={useExperimentalFeatures}\n >\n <ReportWrapper\n mode=\"customize\"\n pageCount={pages.length}\n theme={theme}\n >\n <DndWrapper>\n <LeftPanel\n leftPanelConfig={leftPanelConfig}\n onItemAdd={onItemAdd}\n />\n <Scene\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n lastScrollPosition={lastScrollPosition}\n onItemAdd={onItemAdd}\n onItemChange={onItemChange}\n onItemMove={onItemMove}\n onItemRemove={onItemRemove}\n onItemResize={onItemResize}\n onItemsMove={onItemsMove}\n onPageAdd={onPageAdd}\n onPageChange={onPageChange}\n onPageDuplicate={onPageDuplicate}\n onPageOrdersChange={onPageOrdersChange}\n onPageRemove={onPageRemove}\n pages={pages}\n />\n </DndWrapper>\n <RightPanel\n itemAccessor={itemAccessor}\n onItemChange={onItemChange}\n onPageChange={onPageChange}\n onSettingChange={onSettingChange}\n pages={pages}\n />\n <SlidesPanel\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n onPageAdd={onPageAdd}\n onPageDuplicate={onPageDuplicate}\n onPageOrdersChange={onPageOrdersChange}\n onPageRemove={onPageRemove}\n pages={pages}\n />\n {useExperimentalFeatures && (\n <AllSlidesPanel\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n onPageAdd={onPageAdd}\n onPageDuplicate={onPageDuplicate}\n onPageOrdersChange={onPageOrdersChange}\n onPageRemove={onPageRemove}\n pages={pages}\n />\n )}\n </ReportWrapper>\n </PropProvider>\n </BuilderProvider>\n </StrictMode>\n );\n};\n\nBuilder.propTypes = {\n /** Items for to render in the report */\n acceptedItems: PropTypes.shape({}),\n /** Array of React components to render statically on each page (eg. watermark) */\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n disableInteraction: PropTypes.arrayOf(PropTypes.string),\n /** To pass in extra props to items selectively */\n itemAccessor: PropTypes.func,\n lastScrollPosition: PropTypes.number,\n leftPanelConfig: leftPanelConfigPropType,\n /** To track and log user actions */\n onAnEventTrigger: PropTypes.func,\n /** Function called upon adding an item */\n onItemAdd: PropTypes.func,\n /** Function called upon editing an item */\n onItemChange: PropTypes.func,\n /** Function called upon moving an item */\n onItemMove: PropTypes.func,\n /** Function called upon removing an item */\n onItemRemove: PropTypes.func,\n /** Function called upon resizing an item */\n onItemResize: PropTypes.func,\n onItemsMove: PropTypes.func,\n /** Function called upon adding a page */\n onPageAdd: PropTypes.func,\n /** Function called upon editing a page */\n onPageChange: PropTypes.func,\n /** Function called upon duplicating a page */\n onPageDuplicate: PropTypes.func,\n /** Function called upon reordering pages */\n onPageOrdersChange: PropTypes.func,\n /** Function called upon removing a page */\n onPageRemove: PropTypes.func,\n /** Function called when the slides or the right panel is\n * toggled takes a boolean value to indicate whether or\n * not the panel is toggled open.\n */\n onRightPanelsToggled: PropTypes.func,\n /** Function called upon editing a general report setting */\n onSettingChange: PropTypes.func,\n /** Array of pages with their settings and items */\n pages: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n /** General report settings such as layout size and background color */\n settings: PropTypes.shape({}),\n /** Theme */\n theme: PropTypes.oneOf(['lightMode', 'darkMode']),\n useExperimentalFeatures: PropTypes.bool,\n};\n\nBuilder.defaultProps = {\n acceptedItems: {},\n additionalPageItems: [],\n disableInteraction: [],\n itemAccessor: () => { },\n lastScrollPosition: 0,\n leftPanelConfig: [],\n onAnEventTrigger: () => { },\n onItemAdd: () => { },\n onItemChange: () => { },\n onItemMove: () => { },\n onItemRemove: () => { },\n onItemResize: () => { },\n onItemsMove: () => { },\n onPageAdd: () => { },\n onPageChange: () => { },\n onPageDuplicate: () => { },\n onPageOrdersChange: () => { },\n onPageRemove: () => { },\n onRightPanelsToggled: () => { },\n onSettingChange: () => { },\n pages: [],\n settings: {},\n theme: 'lightMode',\n useExperimentalFeatures: false,\n};\n\nexport default Builder;\n"],"names":["Builder","acceptedItems","additionalPageItems","disableInteraction","itemAccessor","lastScrollPosition","leftPanelConfig","onAnEventTrigger","onItemAdd","onItemChange","onItemMove","onItemRemove","onItemResize","onItemsMove","onPageAdd","onPageChange","onPageDuplicate","onPageOrdersChange","onPageRemove","onRightPanelsToggled","onSettingChange","pages","settings","theme","useExperimentalFeatures","otherProps","hashCode","objectHash","_jsx","_jsxs","length","propTypes","PropTypes","shape","arrayOf","node","string","func","number","leftPanelConfigPropType","oneOf","bool","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"Builder.js","sources":["../../../../src/components/Builder/Builder.js"],"sourcesContent":["import { StrictMode } from 'react';\nimport PropTypes from 'prop-types';\nimport objectHash from 'object-hash';\nimport DndWrapper from './DndWrapper';\nimport { BuilderProvider } from '../../utils/builderContext';\nimport { PropProvider } from '../../utils/propContext';\nimport ReportWrapper from '../ReportWrapper';\nimport Scene from './Scene';\nimport RightPanel from '../Panels/RightPanel';\nimport LeftPanel from '../Panels/LeftPanel';\nimport SlidesPanel from '../Panels/SlidesPanel';\nimport AllSlidesPanel from '../Panels/AllSlidesPanel';\nimport { leftPanelConfigPropType } from '../../constants/propTypes';\nimport '../../styles/jfReportsBundle.scss';\n\nconst Builder = ({\n acceptedItems = {},\n additionalPageItems = [],\n disableInteraction = [],\n itemAccessor = () => {},\n lastScrollPosition = 0,\n leftPanelConfig = [],\n onAnEventTrigger = () => {},\n onItemAdd = () => {},\n onItemChange = () => {},\n onItemMove = () => {},\n onItemRemove = () => {},\n onItemResize = () => {},\n onItemsMove = () => {},\n onPageAdd = () => {},\n onPageChange = () => {},\n onPageDuplicate = () => {},\n onPageOrdersChange = () => {},\n onPageRemove = () => {},\n onRightPanelsToggled = () => {},\n onSettingChange = () => {},\n pages = [],\n settings = {},\n theme = 'lightMode',\n useExperimentalFeatures = false,\n ...otherProps\n}) => {\n const hashCode = objectHash(otherProps);\n\n return (\n <StrictMode>\n <BuilderProvider onRightPanelsToggled={onRightPanelsToggled}>\n <PropProvider\n acceptedItems={acceptedItems}\n disableInteraction={disableInteraction}\n onAnEventTrigger={onAnEventTrigger}\n settings={settings}\n useExperimentalFeatures={useExperimentalFeatures}\n >\n <ReportWrapper\n mode=\"customize\"\n pageCount={pages.length}\n theme={theme}\n >\n <DndWrapper>\n <LeftPanel\n leftPanelConfig={leftPanelConfig}\n onItemAdd={onItemAdd}\n />\n <Scene\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n lastScrollPosition={lastScrollPosition}\n onItemAdd={onItemAdd}\n onItemChange={onItemChange}\n onItemMove={onItemMove}\n onItemRemove={onItemRemove}\n onItemResize={onItemResize}\n onItemsMove={onItemsMove}\n onPageAdd={onPageAdd}\n onPageChange={onPageChange}\n onPageDuplicate={onPageDuplicate}\n onPageOrdersChange={onPageOrdersChange}\n onPageRemove={onPageRemove}\n pages={pages}\n />\n </DndWrapper>\n <RightPanel\n itemAccessor={itemAccessor}\n onItemChange={onItemChange}\n onPageChange={onPageChange}\n onSettingChange={onSettingChange}\n pages={pages}\n />\n <SlidesPanel\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n onPageAdd={onPageAdd}\n onPageDuplicate={onPageDuplicate}\n onPageOrdersChange={onPageOrdersChange}\n onPageRemove={onPageRemove}\n pages={pages}\n />\n {useExperimentalFeatures && (\n <AllSlidesPanel\n additionalPageItems={additionalPageItems}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n onPageAdd={onPageAdd}\n onPageDuplicate={onPageDuplicate}\n onPageOrdersChange={onPageOrdersChange}\n onPageRemove={onPageRemove}\n pages={pages}\n />\n )}\n </ReportWrapper>\n </PropProvider>\n </BuilderProvider>\n </StrictMode>\n );\n};\n\nBuilder.propTypes = {\n /** Items for to render in the report */\n acceptedItems: PropTypes.shape({}),\n /** Array of React components to render statically on each page (eg. watermark) */\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n disableInteraction: PropTypes.arrayOf(PropTypes.string),\n /** To pass in extra props to items selectively */\n itemAccessor: PropTypes.func,\n lastScrollPosition: PropTypes.number,\n leftPanelConfig: leftPanelConfigPropType,\n /** To track and log user actions */\n onAnEventTrigger: PropTypes.func,\n /** Function called upon adding an item */\n onItemAdd: PropTypes.func,\n /** Function called upon editing an item */\n onItemChange: PropTypes.func,\n /** Function called upon moving an item */\n onItemMove: PropTypes.func,\n /** Function called upon removing an item */\n onItemRemove: PropTypes.func,\n /** Function called upon resizing an item */\n onItemResize: PropTypes.func,\n onItemsMove: PropTypes.func,\n /** Function called upon adding a page */\n onPageAdd: PropTypes.func,\n /** Function called upon editing a page */\n onPageChange: PropTypes.func,\n /** Function called upon duplicating a page */\n onPageDuplicate: PropTypes.func,\n /** Function called upon reordering pages */\n onPageOrdersChange: PropTypes.func,\n /** Function called upon removing a page */\n onPageRemove: PropTypes.func,\n /** Function called when the slides or the right panel is\n * toggled takes a boolean value to indicate whether or\n * not the panel is toggled open.\n */\n onRightPanelsToggled: PropTypes.func,\n /** Function called upon editing a general report setting */\n onSettingChange: PropTypes.func,\n /** Array of pages with their settings and items */\n pages: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n /** General report settings such as layout size and background color */\n settings: PropTypes.shape({}),\n /** Theme */\n theme: PropTypes.oneOf(['lightMode', 'darkMode']),\n useExperimentalFeatures: PropTypes.bool,\n};\n\nexport default Builder;\n"],"names":["Builder","acceptedItems","additionalPageItems","disableInteraction","itemAccessor","lastScrollPosition","leftPanelConfig","onAnEventTrigger","onItemAdd","onItemChange","onItemMove","onItemRemove","onItemResize","onItemsMove","onPageAdd","onPageChange","onPageDuplicate","onPageOrdersChange","onPageRemove","onRightPanelsToggled","onSettingChange","pages","settings","theme","useExperimentalFeatures","otherProps","hashCode","objectHash","_jsx","_jsxs","length","propTypes","PropTypes","shape","arrayOf","node","string","func","number","leftPanelConfigPropType","oneOf","bool"],"mappings":"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"}
@@ -1,16 +1,18 @@
1
1
  import PropTypes from 'prop-types';
2
- import HTML5Backend from 'react-dnd-html5-backend-cjs';
3
- import { DndProvider } from 'react-dnd-cjs';
4
- import MultiBackend, { MouseTransition, TouchTransition } from 'react-dnd-multi-backend';
5
- import TouchBackend from 'react-dnd-touch-backend-cjs';
2
+ import { DndProvider } from 'react-dnd';
3
+ import { HTML5Backend } from 'react-dnd-html5-backend';
4
+ import { MultiBackend, MouseTransition, TouchTransition } from 'react-dnd-multi-backend';
5
+ import { TouchBackend } from 'react-dnd-touch-backend';
6
6
  import { jsx } from 'react/jsx-runtime';
7
7
 
8
- var HTML5toTouch = {
8
+ var MultiBackendOptions = {
9
9
  backends: [{
10
10
  backend: HTML5Backend,
11
+ id: 'html5',
11
12
  transition: MouseTransition
12
13
  }, {
13
14
  backend: TouchBackend,
15
+ id: 'touch',
14
16
  options: {
15
17
  delayTouchStart: 135,
16
18
  enableMouseEvents: true
@@ -25,8 +27,7 @@ var DndWrapper = function DndWrapper(_ref) {
25
27
  if (!children) return null;
26
28
  return /*#__PURE__*/jsx(DndProvider, {
27
29
  backend: MultiBackend,
28
- context: window,
29
- options: HTML5toTouch,
30
+ options: MultiBackendOptions,
30
31
  children: children
31
32
  });
32
33
  };
@@ -1 +1 @@
1
- {"version":3,"file":"DndWrapper.js","sources":["../../../../src/components/Builder/DndWrapper.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport HTML5Backend from 'react-dnd-html5-backend-cjs';\nimport { DndProvider } from 'react-dnd-cjs';\nimport MultiBackend, { TouchTransition, MouseTransition } from 'react-dnd-multi-backend';\nimport TouchBackend from 'react-dnd-touch-backend-cjs';\n\nconst HTML5toTouch = {\n backends: [\n {\n backend: HTML5Backend,\n transition: MouseTransition,\n },\n {\n backend: TouchBackend,\n options: {\n delayTouchStart: 135,\n enableMouseEvents: true,\n },\n preview: true,\n transition: TouchTransition,\n },\n ],\n};\n\nconst DndWrapper = ({ children }) => {\n if (!children) return null;\n\n return (\n <DndProvider\n backend={MultiBackend}\n context={window}\n options={HTML5toTouch}\n >\n {children}\n </DndProvider>\n );\n};\n\nDndWrapper.propTypes = {\n children: PropTypes.node,\n};\n\nDndWrapper.defaultProps = {\n children: null,\n};\n\nexport default DndWrapper;\n"],"names":["HTML5toTouch","backends","backend","HTML5Backend","transition","MouseTransition","TouchBackend","options","delayTouchStart","enableMouseEvents","preview","TouchTransition","DndWrapper","children","_jsx","MultiBackend","window","propTypes","PropTypes","node","defaultProps"],"mappings":";;;;;;;AAMA,IAAMA,YAAY,GAAG;AACnBC,EAAAA,QAAQ,EAAE,CACR;AACEC,IAAAA,OAAO,EAAEC,YADX;AAEEC,IAAAA,UAAU,EAAEC;AAFd,GADQ,EAKR;AACEH,IAAAA,OAAO,EAAEI,YADX;AAEEC,IAAAA,OAAO,EAAE;AACPC,MAAAA,eAAe,EAAE,GADV;AAEPC,MAAAA,iBAAiB,EAAE;AAFZ,KAFX;AAMEC,IAAAA,OAAO,EAAE,IANX;AAOEN,IAAAA,UAAU,EAAEO;AAPd,GALQ;AADS,CAArB;;IAkBMC,UAAU,GAAG,SAAbA,UAAa,OAAkB;AAAA,MAAfC,QAAe,QAAfA,QAAe;AACnC,MAAI,CAACA,QAAL,EAAe,OAAO,IAAP;AAEf,sBACEC,IAAC,WAAD;AACE,IAAA,OAAO,EAAEC,YADX;AAEE,IAAA,OAAO,EAAEC,MAFX;AAGE,IAAA,OAAO,EAAEhB,YAHX;AAAA,cAKGa;AALH,IADF;AASD;;AAEDD,UAAU,CAACK,SAAX,GAAuB;AACrBJ,EAAAA,QAAQ,EAAEK,SAAS,CAACC;AADC,CAAvB;AAIAP,UAAU,CAACQ,YAAX,GAA0B;AACxBP,EAAAA,QAAQ,EAAE;AADc,CAA1B;;;;"}
1
+ {"version":3,"file":"DndWrapper.js","sources":["../../../../src/components/Builder/DndWrapper.js"],"sourcesContent":["import PropTypes from 'prop-types';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\nimport { MouseTransition, TouchTransition, MultiBackend } from 'react-dnd-multi-backend';\nimport { TouchBackend } from 'react-dnd-touch-backend';\n\nconst MultiBackendOptions = {\n backends: [\n {\n backend: HTML5Backend,\n id: 'html5',\n transition: MouseTransition,\n },\n {\n backend: TouchBackend,\n id: 'touch',\n options: {\n delayTouchStart: 135,\n enableMouseEvents: true,\n },\n preview: true,\n transition: TouchTransition,\n },\n ],\n};\n\nconst DndWrapper = ({ children }) => {\n if (!children) return null;\n\n return (\n <DndProvider\n backend={MultiBackend}\n options={MultiBackendOptions}\n >\n {children}\n </DndProvider>\n );\n};\n\nDndWrapper.propTypes = {\n children: PropTypes.node,\n};\n\nDndWrapper.defaultProps = {\n children: null,\n};\n\nexport default DndWrapper;\n"],"names":["MultiBackendOptions","backends","backend","HTML5Backend","id","transition","MouseTransition","TouchBackend","options","delayTouchStart","enableMouseEvents","preview","TouchTransition","DndWrapper","children","_jsx","MultiBackend","propTypes","PropTypes","node","defaultProps"],"mappings":";;;;;;;AAMA,IAAMA,mBAAmB,GAAG;AAC1BC,EAAAA,QAAQ,EAAE,CACR;AACEC,IAAAA,OAAO,EAAEC,YADX;AAEEC,IAAAA,EAAE,EAAE,OAFN;AAGEC,IAAAA,UAAU,EAAEC;AAHd,GADQ,EAMR;AACEJ,IAAAA,OAAO,EAAEK,YADX;AAEEH,IAAAA,EAAE,EAAE,OAFN;AAGEI,IAAAA,OAAO,EAAE;AACPC,MAAAA,eAAe,EAAE,GADV;AAEPC,MAAAA,iBAAiB,EAAE;AAFZ,KAHX;AAOEC,IAAAA,OAAO,EAAE,IAPX;AAQEN,IAAAA,UAAU,EAAEO;AARd,GANQ;AADgB,CAA5B;;IAoBMC,UAAU,GAAG,SAAbA,UAAa,OAAkB;AAAA,MAAfC,QAAe,QAAfA,QAAe;AACnC,MAAI,CAACA,QAAL,EAAe,OAAO,IAAP;AAEf,sBACEC,IAAC,WAAD;AACE,IAAA,OAAO,EAAEC,YADX;AAEE,IAAA,OAAO,EAAEhB,mBAFX;AAAA,cAIGc;AAJH,IADF;AAQD;;AAEDD,UAAU,CAACI,SAAX,GAAuB;AACrBH,EAAAA,QAAQ,EAAEI,SAAS,CAACC;AADC,CAAvB;AAIAN,UAAU,CAACO,YAAX,GAA0B;AACxBN,EAAAA,QAAQ,EAAE;AADc,CAA1B;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { memo, useEffect } from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import { useDrag } from 'react-dnd-cjs';
4
- import { getEmptyImage } from 'react-dnd-html5-backend-cjs';
3
+ import { useDrag } from 'react-dnd';
4
+ import { getEmptyImage } from 'react-dnd-html5-backend';
5
5
  import { DROPPABLE_ITEM_TYPE } from '../../constants/itemTypes.js';
6
6
  import { getExactIconType, getMostVisiblePage, getAvailableCoordinate } from '../../utils/functions.js';
7
7
  import generateId from '../../utils/generateId.js';
@@ -46,17 +46,21 @@ var Element = function Element(_ref) {
46
46
  zoom = _ref.zoom,
47
47
  additionalData = _objectWithoutProperties(_ref, _excluded);
48
48
 
49
- var _useDrag = useDrag({
50
- collect: function collect(monitor) {
51
- return {
52
- isDragging: monitor.isDragging()
53
- };
54
- },
55
- item: _objectSpread({
56
- itemType: itemType,
57
- type: DROPPABLE_ITEM_TYPE
58
- }, additionalData)
59
- }),
49
+ var _useDrag = useDrag(function () {
50
+ return {
51
+ collect: function collect(monitor) {
52
+ return {
53
+ isDragging: monitor.isDragging()
54
+ };
55
+ },
56
+ item: function item() {
57
+ return _objectSpread({
58
+ itemType: itemType
59
+ }, additionalData);
60
+ },
61
+ type: itemType !== null && itemType !== void 0 ? itemType : DROPPABLE_ITEM_TYPE
62
+ };
63
+ }, [itemType, additionalData]),
60
64
  _useDrag2 = _slicedToArray(_useDrag, 3),
61
65
  isDragging = _useDrag2[0].isDragging,
62
66
  drag = _useDrag2[1],
@@ -66,7 +70,7 @@ var Element = function Element(_ref) {
66
70
  preview(getEmptyImage(), {
67
71
  captureDraggingState: true
68
72
  });
69
- });
73
+ }, [preview]);
70
74
 
71
75
  var onElementClick = function onElementClick() {
72
76
  var itemID = generateId();
@@ -1 +1 @@
1
- {"version":3,"file":"Element.js","sources":["../../../../src/components/Builder/Element.js"],"sourcesContent":["import { useEffect, memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd-cjs';\nimport { getEmptyImage } from 'react-dnd-html5-backend-cjs';\nimport { DROPPABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getMostVisiblePage, getExactIconType, getAvailableCoordinate,\n} from '../../utils/functions';\nimport generateId from '../../utils/generateId';\nimport * as icons from '../../utils/icons';\n\nconst Element = ({\n acceptedItems,\n icon,\n iconType,\n itemType,\n onAnEventTrigger,\n onItemAdd,\n setActiveElement,\n setIsRightPanelOpen,\n title,\n zoom,\n ...additionalData\n}) => {\n const [{ isDragging }, drag, preview] = useDrag({\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n item: {\n itemType,\n type: DROPPABLE_ITEM_TYPE,\n ...additionalData,\n },\n });\n\n useEffect(() => {\n preview(getEmptyImage(), { captureDraggingState: true });\n });\n\n const onElementClick = () => {\n const itemID = generateId();\n const page = getMostVisiblePage();\n let left = 0;\n let top = 0;\n if (page) { // for test\n [left, top] = getAvailableCoordinate(page, zoom);\n }\n onItemAdd({\n ...acceptedItems[itemType].details,\n ...additionalData,\n id: itemID,\n left,\n pageID: page.id,\n top,\n });\n onAnEventTrigger('reportItemAdd', itemType);\n setActiveElement(itemID);\n setIsRightPanelOpen(true);\n };\n\n const onElementOtherActions = () => {};\n\n const exactIconType = getExactIconType(iconType);\n const Icon = icons[exactIconType] ? icons[exactIconType] : icons.label;\n return (\n <>\n <div\n ref={drag}\n className=\"toolItem d-flex a-center js-toolItem\"\n onClick={onElementClick}\n onKeyDown={onElementOtherActions}\n style={{ opacity: isDragging ? 0.5 : 1 }}\n title={title}\n >\n <span className=\"toolItem-icon d-flex j-center a-center\">\n {icon ? icon : (\n <Icon className={`jfReportSVG icon-question icon-${iconType}`} />\n )}\n </span>\n <span className=\"js-toolItemName toolItem-name d-flex a-center\">\n { title }\n </span>\n </div>\n </>\n );\n};\n\nElement.propTypes = {\n acceptedItems: PropTypes.shape({}),\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n iconType: PropTypes.string,\n itemType: PropTypes.string,\n onAnEventTrigger: PropTypes.func,\n onItemAdd: PropTypes.func,\n setActiveElement: PropTypes.func,\n setIsRightPanelOpen: PropTypes.func,\n title: PropTypes.string,\n zoom: PropTypes.number,\n};\n\nElement.defaultProps = {\n acceptedItems: {},\n icon: null,\n iconType: '',\n itemType: '',\n onAnEventTrigger: () => {},\n onItemAdd: () => {},\n setActiveElement: () => {},\n setIsRightPanelOpen: () => {},\n title: '',\n zoom: 1,\n};\n\nexport default memo(Element);\n"],"names":["Element","acceptedItems","icon","iconType","itemType","onAnEventTrigger","onItemAdd","setActiveElement","setIsRightPanelOpen","title","zoom","additionalData","useDrag","collect","monitor","isDragging","item","type","DROPPABLE_ITEM_TYPE","drag","preview","useEffect","getEmptyImage","captureDraggingState","onElementClick","itemID","generateId","page","getMostVisiblePage","left","top","getAvailableCoordinate","details","id","pageID","onElementOtherActions","exactIconType","getExactIconType","Icon","icons","_jsx","_jsxs","opacity","propTypes","PropTypes","shape","oneOfType","element","func","string","number","defaultProps","memo"],"mappings":"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"}
1
+ {"version":3,"file":"Element.js","sources":["../../../../src/components/Builder/Element.js"],"sourcesContent":["import { useEffect, memo } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDrag } from 'react-dnd';\nimport { getEmptyImage } from 'react-dnd-html5-backend';\nimport { DROPPABLE_ITEM_TYPE } from '../../constants/itemTypes';\nimport {\n getMostVisiblePage, getExactIconType, getAvailableCoordinate,\n} from '../../utils/functions';\nimport generateId from '../../utils/generateId';\nimport * as icons from '../../utils/icons';\n\nconst Element = ({\n acceptedItems,\n icon,\n iconType,\n itemType,\n onAnEventTrigger,\n onItemAdd,\n setActiveElement,\n setIsRightPanelOpen,\n title,\n zoom,\n ...additionalData\n}) => {\n const [{ isDragging }, drag, preview] = useDrag(() => ({\n collect: monitor => ({\n isDragging: monitor.isDragging(),\n }),\n\n item: () => ({\n itemType,\n ...additionalData,\n }),\n\n type: itemType ?? DROPPABLE_ITEM_TYPE,\n }), [itemType, additionalData]);\n\n useEffect(() => {\n preview(getEmptyImage(), { captureDraggingState: true });\n }, [preview]);\n\n const onElementClick = () => {\n const itemID = generateId();\n const page = getMostVisiblePage();\n let left = 0;\n let top = 0;\n if (page) { // for test\n [left, top] = getAvailableCoordinate(page, zoom);\n }\n onItemAdd({\n ...acceptedItems[itemType].details,\n ...additionalData,\n id: itemID,\n left,\n pageID: page.id,\n top,\n });\n onAnEventTrigger('reportItemAdd', itemType);\n setActiveElement(itemID);\n setIsRightPanelOpen(true);\n };\n\n const onElementOtherActions = () => {};\n\n const exactIconType = getExactIconType(iconType);\n const Icon = icons[exactIconType] ? icons[exactIconType] : icons.label;\n return (\n <>\n <div\n ref={drag}\n className=\"toolItem d-flex a-center js-toolItem\"\n onClick={onElementClick}\n onKeyDown={onElementOtherActions}\n style={{ opacity: isDragging ? 0.5 : 1 }}\n title={title}\n >\n <span className=\"toolItem-icon d-flex j-center a-center\">\n {icon ? icon : (\n <Icon className={`jfReportSVG icon-question icon-${iconType}`} />\n )}\n </span>\n <span className=\"js-toolItemName toolItem-name d-flex a-center\">\n { title }\n </span>\n </div>\n </>\n );\n};\n\nElement.propTypes = {\n acceptedItems: PropTypes.shape({}),\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n iconType: PropTypes.string,\n itemType: PropTypes.string,\n onAnEventTrigger: PropTypes.func,\n onItemAdd: PropTypes.func,\n setActiveElement: PropTypes.func,\n setIsRightPanelOpen: PropTypes.func,\n title: PropTypes.string,\n zoom: PropTypes.number,\n};\n\nElement.defaultProps = {\n acceptedItems: {},\n icon: null,\n iconType: '',\n itemType: '',\n onAnEventTrigger: () => {},\n onItemAdd: () => {},\n setActiveElement: () => {},\n setIsRightPanelOpen: () => {},\n title: '',\n zoom: 1,\n};\n\nexport default memo(Element);\n"],"names":["Element","acceptedItems","icon","iconType","itemType","onAnEventTrigger","onItemAdd","setActiveElement","setIsRightPanelOpen","title","zoom","additionalData","useDrag","collect","monitor","isDragging","item","type","DROPPABLE_ITEM_TYPE","drag","preview","useEffect","getEmptyImage","captureDraggingState","onElementClick","itemID","generateId","page","getMostVisiblePage","left","top","getAvailableCoordinate","details","id","pageID","onElementOtherActions","exactIconType","getExactIconType","Icon","icons","_jsx","_jsxs","opacity","propTypes","PropTypes","shape","oneOfType","element","func","string","number","defaultProps","memo"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { memo, useState, useRef } from 'react';
1
+ import { memo, useState, useRef, useMemo } from 'react';
2
2
  import PropTypes from 'prop-types';
3
- import { useDrop } from 'react-dnd-cjs';
3
+ import { useDrop } from 'react-dnd';
4
4
  import { ACCEPTED_TYPES } from '../../constants/itemTypes.js';
5
5
  import AlignmentGuides from '../AlignmentGuides.js';
6
6
  import ReportItemsWrapper from '../ReportItemsWrapper.js';
@@ -102,16 +102,20 @@ var Page = function Page(_ref) {
102
102
  }
103
103
  };
104
104
 
105
- var _useDrop = useDrop({
106
- accept: ACCEPTED_TYPES,
107
- collect: function collect(monitor) {
108
- return {
109
- isOver: monitor.isOver()
110
- };
111
- },
112
- drop: onDrop,
113
- hover: onHover
114
- }),
105
+ var dropConfig = useMemo(function () {
106
+ return {
107
+ accept: ACCEPTED_TYPES,
108
+ collect: function collect(monitor) {
109
+ return {
110
+ isOver: monitor.isOver()
111
+ };
112
+ },
113
+ drop: onDrop,
114
+ hover: onHover
115
+ };
116
+ }, [onDrop, onHover]);
117
+
118
+ var _useDrop = useDrop(dropConfig),
115
119
  _useDrop2 = _slicedToArray(_useDrop, 2),
116
120
  isOver = _useDrop2[0].isOver,
117
121
  drop = _useDrop2[1];