@jotforminc/dnd-builder 2.9.15 → 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 +2 -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 +1 -1
  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 +1 -1
  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
@@ -33,8 +33,10 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
33
33
 
34
34
  var Report = function Report(_ref) {
35
35
  var leftPanelConfig = _ref.leftPanelConfig,
36
- mode = _ref.mode,
37
- newReportsAppTexts = _ref.reportsAppTexts,
36
+ _ref$mode = _ref.mode,
37
+ mode = _ref$mode === void 0 ? 'customize' : _ref$mode,
38
+ _ref$reportsAppTexts = _ref.reportsAppTexts,
39
+ newReportsAppTexts = _ref$reportsAppTexts === void 0 ? ALL_TEXTS : _ref$reportsAppTexts,
38
40
  props = _objectWithoutProperties(_ref, _excluded);
39
41
 
40
42
  var _useState = useState(mode),
@@ -52,11 +54,13 @@ var Report = function Report(_ref) {
52
54
  }, [newReportsAppTexts]);
53
55
  useEffect(function () {
54
56
  if (['customize', 'preview'].indexOf(viewMode) > -1) {
55
- setLastScrollPosition(document.querySelector('.jfReport-viewport').scrollTop);
57
+ var _document$querySelect;
58
+
59
+ setLastScrollPosition(((_document$querySelect = document.querySelector('.jfReport-viewport')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.scrollTop) || 0);
56
60
  }
57
61
 
58
62
  setViewMode(mode);
59
- }, [mode]);
63
+ }, [mode, viewMode]);
60
64
 
61
65
  var customProps = _objectSpread(_objectSpread({}, props), {}, {
62
66
  lastScrollPosition: lastScrollPosition,
@@ -88,6 +92,8 @@ var Report = function Report(_ref) {
88
92
  };
89
93
 
90
94
  Report.propTypes = {
95
+ leftPanelConfig: PropTypes.any,
96
+
91
97
  /** Conditionally rendering different modes */
92
98
  mode: PropTypes.oneOf(['customize', 'preview', 'print', 'presentation']),
93
99
 
@@ -98,11 +104,6 @@ Report.propTypes = {
98
104
  reportsAppTexts: PropTypes.shape({}),
99
105
  theme: PropTypes.oneOf(['lightMode', 'darkMode'])
100
106
  };
101
- Report.defaultProps = {
102
- mode: 'customize',
103
- reportsAppTexts: ALL_TEXTS,
104
- theme: 'lightMode'
105
- };
106
107
 
107
108
  export default Report;
108
109
  //# 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,QAAQ,CAACJ,IAAD,CAAxC;AAAA;AAAA,MAAOK,QAAP;AAAA,MAAiBC,WAAjB;;AACA,mBAAoDF,QAAQ,CAAC,CAAD,CAA5D;AAAA;AAAA,MAAOG,kBAAP;AAAA,MAA2BC,qBAA3B;;AAEAC,EAAAA,SAAS,CAAC,YAAM;AACdC,IAAAA,kBAAkB,CAACC,QAAnB,CAA4BV,kBAA5B;AACD,GAFQ,EAEN,CAACA,kBAAD,CAFM,CAAT;AAIAQ,EAAAA,SAAS,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,IAAC,OAAD,oBAAaD,WAAb,EAAP;AACD;;AACD,SAAK,cAAL;AAAqB;AACnB,4BAAOC,IAAC,YAAD,oBAAkBd,KAAlB,EAAP;AACD;;AACD,SAAK,OAAL;AAAc;AACZ,4BAAOc,IAAC,KAAD,oBAAWd,KAAX,EAAP;AACD;;AACD,SAAK,WAAL;AACA;AAAS;AACP,4BAAOc,IAAC,OAAD,oBAAaD,WAAb,EAAP;AACD;AAbH;AAeD;;AAEDlB,MAAM,CAACoB,SAAP,GAAmB;AACjB;AACAlB,EAAAA,IAAI,EAAEmB,SAAS,CAACC,KAAV,CAAgB,CAAC,WAAD,EAAc,SAAd,EAAyB,OAAzB,EAAkC,cAAlC,CAAhB,CAFW;;AAGjB;AACF;AACA;AACA;AACElB,EAAAA,eAAe,EAAEiB,SAAS,CAACE,KAAV,CAAgB,EAAhB,CAPA;AAQjBC,EAAAA,KAAK,EAAEH,SAAS,CAACC,KAAV,CAAgB,CAAC,WAAD,EAAc,UAAd,CAAhB;AARU,CAAnB;AAWAtB,MAAM,CAACyB,YAAP,GAAsB;AACpBvB,EAAAA,IAAI,EAAE,WADc;AAEpBE,EAAAA,eAAe,EAAfA,SAFoB;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,SAElC;AAAA,MADDE,KACC;;AACJ,kBAAgCC,QAAQ,CAACJ,IAAD,CAAxC;AAAA;AAAA,MAAOK,QAAP;AAAA,MAAiBC,WAAjB;;AACA,mBAAoDF,QAAQ,CAAC,CAAD,CAA5D;AAAA;AAAA,MAAOG,kBAAP;AAAA,MAA2BC,qBAA3B;;AAEAC,EAAAA,SAAS,CAAC,YAAM;AACdC,IAAAA,kBAAkB,CAACC,QAAnB,CAA4BT,kBAA5B;AACD,GAFQ,EAEN,CAACA,kBAAD,CAFM,CAAT;AAIAO,EAAAA,SAAS,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,IAAC,OAAD,oBAAaD,WAAb,EAAP;AACD;;AACD,SAAK,cAAL;AAAqB;AACnB,4BACEC,IAAC,YAAD,oBACMd,KADN,EADF;AAKD;;AACD,SAAK,OAAL;AAAc;AACZ,4BACEc,IAAC,KAAD,oBACMd,KADN,EADF;AAKD;;AACD,SAAK,WAAL;AACA;AAAS;AACP,4BAAOc,IAAC,OAAD,oBAAaD,WAAb,EAAP;AACD;AArBH;AAuBD;;AAEDlB,MAAM,CAACoB,SAAP,GAAmB;AACjBnB,EAAAA,eAAe,EAAEoB,SAAS,CAACC,GADV;;AAEjB;AACApB,EAAAA,IAAI,EAAEmB,SAAS,CAACE,KAAV,CAAgB,CAAC,WAAD,EAAc,SAAd,EAAyB,OAAzB,EAAkC,cAAlC,CAAhB,CAHW;;AAIjB;AACF;AACA;AACA;AACEpB,EAAAA,eAAe,EAAEkB,SAAS,CAACG,KAAV,CAAgB,EAAhB,CARA;AASjBC,EAAAA,KAAK,EAAEJ,SAAS,CAACE,KAAV,CAAgB,CAAC,WAAD,EAAc,UAAd,CAAhB;AATU,CAAnB;;;;"}
@@ -11,10 +11,14 @@ var getModeClass = function getModeClass(mode) {
11
11
  };
12
12
 
13
13
  var ReportWrapper = function ReportWrapper(_ref) {
14
- var children = _ref.children,
15
- mode = _ref.mode,
16
- pageCount = _ref.pageCount,
17
- theme = _ref.theme;
14
+ var _ref$children = _ref.children,
15
+ children = _ref$children === void 0 ? null : _ref$children,
16
+ _ref$mode = _ref.mode,
17
+ mode = _ref$mode === void 0 ? '' : _ref$mode,
18
+ _ref$pageCount = _ref.pageCount,
19
+ pageCount = _ref$pageCount === void 0 ? 0 : _ref$pageCount,
20
+ _ref$theme = _ref.theme,
21
+ theme = _ref$theme === void 0 ? 'lightMode' : _ref$theme;
18
22
 
19
23
  var _useBuilderContext = useBuilderContext(),
20
24
  isAllSlidesPanelOpen = _useBuilderContext.isAllSlidesPanelOpen,
@@ -54,7 +58,7 @@ var ReportWrapper = function ReportWrapper(_ref) {
54
58
  }
55
59
 
56
60
  decidedWhichPanelToOpen.current = true;
57
- }, [mode, pageCount]);
61
+ }, [mode, pageCount, isLeftPanelOpen, isSlidesPanelOpen, setIsLeftPanelOpen, setIsSlidesPanelOpen]);
58
62
  var wrapperClass = classNames('jfReport', 'f-height', 'd-flex', getModeClass(mode), isLeftPanelOpen === true ? 'leftPaneIsActive' : '', isRightPanelOpen === true || isSlidesPanelOpen === true ? 'rightPaneIsActive' : '', isSlidesPanelOpen === true ? 'slidesPaneIsActive' : '', isAllSlidesPanelOpen === true ? 'allSlidesPaneIsActive' : '', theme);
59
63
  return /*#__PURE__*/jsx("div", {
60
64
  className: wrapperClass,
@@ -63,17 +67,11 @@ var ReportWrapper = function ReportWrapper(_ref) {
63
67
  };
64
68
 
65
69
  ReportWrapper.propTypes = {
66
- children: PropTypes.any,
70
+ children: PropTypes.node,
67
71
  mode: PropTypes.string,
68
72
  pageCount: PropTypes.number,
69
73
  theme: PropTypes.oneOf(['lightMode', 'darkMode'])
70
74
  };
71
- ReportWrapper.defaultProps = {
72
- children: null,
73
- mode: '',
74
- pageCount: 0,
75
- theme: 'lightMode'
76
- };
77
75
  var ReportWrapper$1 = /*#__PURE__*/memo(ReportWrapper);
78
76
 
79
77
  export default 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,iBAAiB,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,cAAc,EAAnC;AAAA,MAAQC,QAAR,mBAAQA,QAAR;;AACA,MAAMC,uBAAuB,GAAGC,MAAM,CAAC,KAAD,CAAtC;AAEAC,EAAAA,UAAU,CAAC;AACTC,IAAAA,OAAO,EAAEN,OADA;AAETO,IAAAA,eAAe,EAAEnB,IAAI,KAAK,WAFjB;AAGTc,IAAAA,QAAQ,EAARA;AAHS,GAAD,CAAV;AAMAM,EAAAA,SAAS,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,UAAU,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,SAAS,CAACC,GADI;AAExB3B,EAAAA,IAAI,EAAE0B,SAAS,CAACE,MAFQ;AAGxBzB,EAAAA,SAAS,EAAEuB,SAAS,CAACG,MAHG;AAIxBzB,EAAAA,KAAK,EAAEsB,SAAS,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,IAAI,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,iBAAiB,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,cAAc,EAAnC;AAAA,MAAQC,QAAR,mBAAQA,QAAR;;AACA,MAAMC,uBAAuB,GAAGC,MAAM,CAAC,KAAD,CAAtC;AAEAC,EAAAA,UAAU,CAAC;AACTC,IAAAA,OAAO,EAAEN,OADA;AAETO,IAAAA,eAAe,EAAEnB,IAAI,KAAK,WAFjB;AAGTc,IAAAA,QAAQ,EAARA;AAHS,GAAD,CAAV;AAMAM,EAAAA,SAAS,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,UAAU,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,SAAS,CAACC,IADI;AAExB3B,EAAAA,IAAI,EAAE0B,SAAS,CAACE,MAFQ;AAGxBzB,EAAAA,SAAS,EAAEuB,SAAS,CAACG,MAHG;AAIxBzB,EAAAA,KAAK,EAAEsB,SAAS,CAACI,KAAV,CAAgB,CAAC,WAAD,EAAc,UAAd,CAAhB;AAJiB,CAA1B;AAOA,mCAAeC,IAAI,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
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jotforminc/dnd-builder",
3
- "version": "2.9.15",
3
+ "version": "2.9.16",
4
4
  "files": [
5
5
  "lib"
6
6
  ],
@@ -19,13 +19,13 @@
19
19
  "object-hash": "2.1.1",
20
20
  "prop-types": "15.7.2",
21
21
  "re-resizable": "6.9.0",
22
- "react": "17.0.1",
23
22
  "react-color": "2.19.3",
24
- "react-dnd-cjs": "9.5.1",
25
- "react-dnd-html5-backend-cjs": "9.5.1",
26
- "react-dnd-multi-backend": "4.0.0",
27
- "react-dnd-touch-backend-cjs": "9.5.1",
28
- "react-dom": "17.0.1",
23
+ "react": "18.3.0",
24
+ "react-dom": "18.3.0",
25
+ "react-dnd": "14.0.4",
26
+ "react-dnd-html5-backend": "14.0.2",
27
+ "react-dnd-multi-backend": "7.1.3",
28
+ "react-dnd-touch-backend": "11.1.3",
29
29
  "react-modal": "3.12.1",
30
30
  "react-quill": "1.3.5",
31
31
  "react-sortable-hoc": "2.0.0",
@@ -35,6 +35,9 @@
35
35
  "regenerator-runtime": "0.13.7"
36
36
  },
37
37
  "devDependencies": {
38
+ "react-dnd": "14.0.4",
39
+ "react-dnd-html5-backend": "14.0.2",
40
+ "react-dnd-touch-backend": "11.1.3",
38
41
  "@babel/core": "7.12.17",
39
42
  "@babel/helper-builder-react-jsx-experimental": "7.12.11",
40
43
  "@babel/plugin-proposal-export-default-from": "7.12.13",