@jotforminc/dnd-builder 2.3.0 → 2.4.3

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 (58) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/lib/cjs/assets/svg/page_settings.svg.js +4 -26
  3. package/lib/cjs/assets/svg/page_settings.svg.js.map +1 -1
  4. package/lib/cjs/assets/svg/presentation/enter_fullscreen.svg.js +6 -3
  5. package/lib/cjs/assets/svg/presentation/enter_fullscreen.svg.js.map +1 -1
  6. package/lib/cjs/assets/svg/presentation/exit_fullscreen.svg.js +7 -4
  7. package/lib/cjs/assets/svg/presentation/exit_fullscreen.svg.js.map +1 -1
  8. package/lib/cjs/components/Builder/ZoomControls.js +3 -3
  9. package/lib/cjs/components/Builder/ZoomControls.js.map +1 -1
  10. package/lib/cjs/components/Panels/RightPanel/RightPanel.js +1 -1
  11. package/lib/cjs/components/Panels/RightPanel/RightPanel.js.map +1 -1
  12. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js +1 -1
  13. package/lib/cjs/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  14. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -2
  15. package/lib/cjs/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
  16. package/lib/cjs/components/TextEditor/QuillEditor.js +9 -3
  17. package/lib/cjs/components/TextEditor/QuillEditor.js.map +1 -1
  18. package/lib/cjs/components/TextEditor/TextEditor.js +2 -2
  19. package/lib/cjs/components/TextEditor/TextEditor.js.map +1 -1
  20. package/lib/cjs/styles/_jfDarkTheme.scss +1 -1
  21. package/lib/cjs/styles/_jfLightTheme.scss +1 -1
  22. package/lib/cjs/styles/_jfReportsFloatings.scss +61 -32
  23. package/lib/cjs/styles/_jfReportsPages.scss +7 -2
  24. package/lib/cjs/styles/_jfReportsPanelElements.scss +12 -8
  25. package/lib/cjs/styles/_jfReportsPanels.scss +1 -1
  26. package/lib/cjs/styles/_jfReportsReportItem.scss +21 -7
  27. package/lib/cjs/styles/_jfReportsSVG.scss +1 -1
  28. package/lib/cjs/styles/_jfReportsTextEditor.scss +76 -29
  29. package/lib/cjs/styles/_jfReportsVariables.scss +2 -2
  30. package/lib/esm/assets/svg/page_settings.svg.js +4 -26
  31. package/lib/esm/assets/svg/page_settings.svg.js.map +1 -1
  32. package/lib/esm/assets/svg/presentation/enter_fullscreen.svg.js +6 -3
  33. package/lib/esm/assets/svg/presentation/enter_fullscreen.svg.js.map +1 -1
  34. package/lib/esm/assets/svg/presentation/exit_fullscreen.svg.js +7 -4
  35. package/lib/esm/assets/svg/presentation/exit_fullscreen.svg.js.map +1 -1
  36. package/lib/esm/components/Builder/ZoomControls.js +3 -3
  37. package/lib/esm/components/Builder/ZoomControls.js.map +1 -1
  38. package/lib/esm/components/Panels/RightPanel/RightPanel.js +1 -1
  39. package/lib/esm/components/Panels/RightPanel/RightPanel.js.map +1 -1
  40. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js +1 -1
  41. package/lib/esm/components/Panels/SlidesPanel/SlidesPanel.js.map +1 -1
  42. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js +2 -2
  43. package/lib/esm/components/TextEditor/CustomToolbar/CustomToolbar.js.map +1 -1
  44. package/lib/esm/components/TextEditor/QuillEditor.js +8 -3
  45. package/lib/esm/components/TextEditor/QuillEditor.js.map +1 -1
  46. package/lib/esm/components/TextEditor/TextEditor.js +2 -2
  47. package/lib/esm/components/TextEditor/TextEditor.js.map +1 -1
  48. package/lib/esm/styles/_jfDarkTheme.scss +1 -1
  49. package/lib/esm/styles/_jfLightTheme.scss +1 -1
  50. package/lib/esm/styles/_jfReportsFloatings.scss +61 -32
  51. package/lib/esm/styles/_jfReportsPages.scss +7 -2
  52. package/lib/esm/styles/_jfReportsPanelElements.scss +12 -8
  53. package/lib/esm/styles/_jfReportsPanels.scss +1 -1
  54. package/lib/esm/styles/_jfReportsReportItem.scss +21 -7
  55. package/lib/esm/styles/_jfReportsSVG.scss +1 -1
  56. package/lib/esm/styles/_jfReportsTextEditor.scss +76 -29
  57. package/lib/esm/styles/_jfReportsVariables.scss +2 -2
  58. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -2,6 +2,41 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [2.4.3](https://github.com/jotform/dnd-builder/compare/v2.4.2...v2.4.3) (2022-08-04)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * **elements:** page actions hover fix ([e471646](https://github.com/jotform/dnd-builder/commit/e4716467b7e59f6af27fde46233b06f4718bf1d5))
11
+ * style lint ([66fcc51](https://github.com/jotform/dnd-builder/commit/66fcc51a6262d7202afb46ea0c135894d0263a2a))
12
+
13
+ ### [2.4.2](https://github.com/jotform/dnd-builder/compare/v2.4.1...v2.4.2) (2022-07-20)
14
+
15
+
16
+ ### Bug Fixes
17
+
18
+ * **context-menu:** fix context menu spacing ([e802453](https://github.com/jotform/dnd-builder/commit/e802453919842cf4d9f4a9ec928b093a287c0f3b))
19
+
20
+ ### [2.4.1](https://github.com/jotform/dnd-builder/compare/v2.4.0...v2.4.1) (2022-06-29)
21
+
22
+
23
+ ### Bug Fixes
24
+
25
+ * **panels:** return close button ([9094afe](https://github.com/jotform/dnd-builder/commit/9094afe680b32720441e51949665b24b550d96eb))
26
+
27
+ ## [2.4.0](https://github.com/jotform/dnd-builder/compare/v2.2.1...v2.4.0) (2022-06-29)
28
+
29
+
30
+ ### Features
31
+
32
+ * **buildercontext:** add callback for right panel ([1dde660](https://github.com/jotform/dnd-builder/commit/1dde66089df4846ff973fcc99620cec6f3cf6e82))
33
+
34
+
35
+ ### Bug Fixes
36
+
37
+ * hide toggle panel buttons when panel is open ([3081e80](https://github.com/jotform/dnd-builder/commit/3081e8000613acb68d42837fb99b5bfd8d8ec2b2))
38
+ * **TextEditor:** purify about content ([0fcad20](https://github.com/jotform/dnd-builder/commit/0fcad2075116cf5365fc42facbd5aa6adae25db8))
39
+
5
40
  ### [2.3.0](https://github.com/jotform/dnd-builder/compare/v2.2.1...v2.3.0) (2022-06-24)
6
41
 
7
42
 
@@ -2,39 +2,17 @@
2
2
 
3
3
  var React = require('react');
4
4
 
5
- var _mask, _path, _path2, _path3;
5
+ var _path;
6
6
 
7
7
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
8
8
 
9
9
  function SvgPageSettings(props) {
10
10
  return /*#__PURE__*/React.createElement("svg", _extends({
11
- viewBox: "0 0 11 13",
11
+ viewBox: "0 0 12 13",
12
12
  fill: "none",
13
13
  xmlns: "http://www.w3.org/2000/svg"
14
- }, props), _mask || (_mask = /*#__PURE__*/React.createElement("mask", {
15
- id: "page_settings_svg__a",
16
- maskUnits: "userSpaceOnUse",
17
- x: 0,
18
- y: 1.371,
19
- width: 11,
20
- height: 12,
21
- fill: "#000"
22
- }, /*#__PURE__*/React.createElement("path", {
23
- fill: "#fff",
24
- d: "M0 1.371h11v12H0z"
25
- }), /*#__PURE__*/React.createElement("path", {
26
- fillRule: "evenodd",
27
- clipRule: "evenodd",
28
- d: "M8.262 6.214a.869.869 0 00-.23.408c-.067.265-.24.378-.436.378h-.192c-.197 0-.37-.113-.436-.378a.875.875 0 00-1.299-.539c-.234.14-.436.099-.576-.04l-.135-.136c-.14-.14-.182-.342-.041-.576a.875.875 0 00-.539-1.299C4.113 3.965 4 3.792 4 3.596v-.192c0-.197.114-.37.378-.436a.87.87 0 00.626-.597H6.83A1.312 1.312 0 108.262 4.57v1.645zm0 1.625c-.218.114-.45.161-.666.161h-.192a1.417 1.417 0 01-1.246-.729.333.333 0 00-.376-.156 1.417 1.417 0 01-1.396-.366l-.134-.134a1.418 1.418 0 01-.367-1.398.333.333 0 00-.156-.375A1.416 1.416 0 013 3.596v-.192a1.417 1.417 0 01.439-1.033H1.734A.734.734 0 001 3.106v8.16c0 .405.329.734.734.734h5.794a.734.734 0 00.734-.734V7.839z"
29
- }))), _path || (_path = /*#__PURE__*/React.createElement("path", {
30
- clipRule: "evenodd",
31
- d: "M8.262 6.214a.869.869 0 00-.23.408c-.067.265-.24.378-.436.378h-.192c-.197 0-.37-.113-.436-.378a.875.875 0 00-1.299-.539c-.234.14-.436.099-.576-.04l-.135-.136c-.14-.14-.182-.342-.041-.576a.875.875 0 00-.539-1.299C4.113 3.965 4 3.792 4 3.596v-.192c0-.197.114-.37.378-.436a.87.87 0 00.626-.597H6.83A1.312 1.312 0 108.262 4.57v1.645zm0 1.625c-.218.114-.45.161-.666.161h-.192a1.417 1.417 0 01-1.246-.729.333.333 0 00-.376-.156 1.417 1.417 0 01-1.396-.366l-.134-.134a1.418 1.418 0 01-.367-1.398.333.333 0 00-.156-.375A1.416 1.416 0 013 3.596v-.192a1.417 1.417 0 01.439-1.033H1.734A.734.734 0 001 3.106v8.16c0 .405.329.734.734.734h5.794a.734.734 0 00.734-.734V7.839z"
32
- })), _path2 || (_path2 = /*#__PURE__*/React.createElement("path", {
33
- d: "M8.032 6.622l.97.242-.97-.242zm.23-.408l.706.71.294-.294v-.416h-1zm-1.294.408l.97-.242-.97.242zm-1.299-.539l-.514-.857h-.001l.515.857zm-.576-.04l-.707.706.707-.707zm-.135-.136l.707-.707-.001-.002-.706.709zm-.041-.576l.857.515-.857-.515zm-.539-1.299l-.242.97.242-.97zm0-1.064l-.242-.97.242.97zm.626-.597v-1h-.742l-.215.711.957.29zm1.826 0l.511.86 3.126-1.86H6.83v1zM8.262 4.57h1V2.625l-1.581 1.13.581.814zm0 3.27h1V6.186l-1.464.767.464.886zm-1.753-.15l-.627.778.627-.778zm-.351-.418l.872-.49-.872.49zm-.376-.156l-.27-.962.27.962zm-.542.047l.106-.994-.106.994zm-.854-.413l-.707.708.707-.708zm-.134-.134l.707-.707-.001-.001-.706.708zm-.414-.854l.994-.106-.994.106zm.047-.544l.962.27-.962-.27zm-.156-.375l-.49.872.49-.872zm-.418-.351l.779-.628-.779.628zm.001-1.983l-.778-.628.778.628zm.127-.137l.688.726 1.82-1.726H3.438v1zm5.563 4.493a.137.137 0 01-.035.059l-1.41-1.418c-.234.233-.41.53-.495.874l1.94.485zM7.596 8c.294 0 .617-.087.895-.311.277-.224.436-.524.511-.825l-1.94-.485a.494.494 0 01.173-.247.584.584 0 01.36-.132v2zm-.192 0h.192V6h-.192v2zM5.998 6.863c.075.302.234.602.511.826.278.224.601.311.895.311V6c.097 0 .235.03.36.132.126.1.165.212.174.248l-1.94.483zm.185.078a.125.125 0 01-.185-.077l1.94-.484a1.875 1.875 0 00-2.783-1.154L6.183 6.94zm-1.797-.192c.209.209.499.375.854.413.353.038.678-.062.944-.221l-1.03-1.715c.032-.02.14-.07.298-.052.16.017.28.092.348.161L4.386 6.75zm-.135-.135l.135.135L5.8 5.335 5.665 5.2 4.25 6.614zm-.192-1.798c-.16.266-.26.591-.221.945.038.356.205.646.414.854l1.412-1.417a.585.585 0 01.162.35.495.495 0 01-.052.298l-1.715-1.03zm.077.186a.125.125 0 01-.077-.186l1.715 1.03A1.875 1.875 0 004.62 3.062l-.485 1.94zM3 3.596c0 .294.087.617.311.895.224.277.524.436.825.511l.485-1.94a.494.494 0 01.247.173.584.584 0 01.132.36H3zm0-.192v.192h2v-.192H3zm1.136-1.406c-.3.075-.6.234-.824.51-.224.278-.312.6-.312.896h2a.584.584 0 01-.132.361.494.494 0 01-.247.173l-.485-1.94zm-.09.084a.12.12 0 01.032-.05.133.133 0 01.058-.034l.484 1.94A1.87 1.87 0 005.962 2.66l-1.915-.578zm.958 1.29H6.83v-2H5.004v2zm1.315-1.86A2.312 2.312 0 005.188 3.5h2c0-.113.059-.213.153-.27L6.32 1.513zM5.188 3.5A2.312 2.312 0 007.5 5.813v-2a.312.312 0 01-.313-.313h-2zM7.5 5.813c.5 0 .965-.16 1.344-.43L7.68 3.754a.307.307 0 01-.181.058v2zm-.238-1.244v1.645h2V4.57h-2zM7.8 6.953A.437.437 0 017.595 7v2c.36 0 .753-.078 1.13-.276l-.928-1.771zM7.595 7h-.192v2h.192V7zm-.192 0a.417.417 0 01-.267-.09L5.882 8.467c.48.388 1.034.533 1.522.533V7zm-.267-.09a.436.436 0 01-.107-.128l-1.744.979c.143.255.339.5.596.706L7.137 6.91zm-.107-.128a1.333 1.333 0 00-1.518-.63l.54 1.926a.667.667 0 01-.766-.317l1.744-.98zm-1.518-.63a.436.436 0 01-.166.016l-.212 1.989c.327.035.637 0 .918-.079l-.54-1.925zm-.166.016a.418.418 0 01-.253-.126L3.68 7.457c.347.346.841.634 1.455.7l.212-1.99zm-.253-.126l-.134-.134-1.414 1.414.134.135 1.414-1.415zm-.135-.135a.418.418 0 01-.126-.252l-1.989.213c.066.615.357 1.11.702 1.455l1.413-1.416zm-.126-.252a.436.436 0 01.015-.167l-1.925-.541c-.08.282-.114.593-.079.921l1.989-.213zm.015-.167a1.333 1.333 0 00-.629-1.518L3.24 5.714a.667.667 0 01-.318-.767l1.925.54zM4.218 3.97a.437.437 0 01-.128-.107L2.533 5.119c.207.256.451.452.707.595l.978-1.744zm-.128-.107A.417.417 0 014 3.596H2c0 .488.145 1.042.533 1.523L4.09 3.863zM4 3.596v-.192H2v.192h2zm0-.192c0-.1.029-.192.09-.267L2.534 1.88A2.417 2.417 0 002 3.404h2zm.09-.267a.413.413 0 01.037-.04L2.751 1.646c-.076.072-.148.15-.217.234L4.09 3.137zm-2.356.234H3.44v-2H1.734v2zM2 3.106a.266.266 0 01-.266.265v-2C.777 1.371 0 2.148 0 3.106h2zm0 8.16v-8.16H0v8.16h2zM1.734 11c.147 0 .266.119.266.266H0C0 12.223.777 13 1.734 13v-2zm5.794 0H1.734v2h5.794v-2zm-.266.266c0-.147.12-.266.266-.266v2c.958 0 1.734-.777 1.734-1.734h-2zm0-3.427v3.427h2V7.839h-2z",
34
- fill: "#fff",
35
- mask: "url(#page_settings_svg__a)"
36
- })), _path3 || (_path3 = /*#__PURE__*/React.createElement("path", {
37
- d: "M10.622 2.968a.875.875 0 01-.539-1.299c.141-.234.099-.437-.04-.576L9.906.958c-.14-.14-.342-.182-.576-.041A.875.875 0 018.032.378C7.966.113 7.792 0 7.596 0h-.192c-.197 0-.37.113-.436.378a.875.875 0 01-1.299.539c-.234-.141-.437-.099-.576.04l-.136.136c-.139.139-.181.342-.04.576a.875.875 0 01-.539 1.299c-.264.066-.378.239-.378.436v.192c0 .197.113.37.378.436.57.143.84.795.539 1.299-.141.234-.099.437.04.576l.136.135c.14.14.342.182.576.041a.875.875 0 011.299.539c.066.265.24.378.436.378h.192c.197 0 .37-.113.436-.378a.875.875 0 011.299-.539c.234.14.436.099.576-.04l.135-.136c.14-.14.182-.342.041-.576a.875.875 0 01.539-1.299c.265-.066.378-.24.378-.436v-.192c0-.197-.114-.37-.378-.436zM7.5 4.813a1.312 1.312 0 110-2.625 1.312 1.312 0 010 2.624z"
14
+ }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
15
+ d: "M11.351 5.096a1.5 1.5 0 01-.922-2.227c.241-.402.168-.749-.07-.987l-.233-.233c-.239-.238-.585-.31-.987-.07A1.5 1.5 0 016.912.656c-.113-.455-.41-.648-.748-.648h-.328c-.338 0-.634.193-.748.648a1.5 1.5 0 01-2.227.923c-.402-.242-.749-.169-.988.07l-.232.232c-.238.239-.311.586-.07.988A1.5 1.5 0 01.65 5.096c-.454.113-.649.41-.649.747v.329c0 .337.194.634.649.748a1.5 1.5 0 01.922 2.226c-.241.402-.168.749.07.987l.233.233c.24.24.587.311.987.07a1.5 1.5 0 012.227.923c.113.455.41.649.748.649h.328c.338 0 .634-.194.748-.65a1.5 1.5 0 012.227-.922c.401.241.748.17.987-.07l.232-.233c.239-.238.311-.585.07-.987a1.5 1.5 0 01.923-2.226c.455-.114.649-.41.649-.748v-.329c0-.338-.195-.634-.649-.747zM6 8.258a2.25 2.25 0 110-4.5 2.25 2.25 0 010 4.5z"
38
16
  })));
39
17
  }
40
18
 
@@ -1 +1 @@
1
- {"version":3,"file":"page_settings.svg.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"page_settings.svg.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  var React = require('react');
4
4
 
5
- var _path, _path2;
5
+ var _path, _path2, _path3;
6
6
 
7
7
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
8
8
 
@@ -12,10 +12,13 @@ function SvgEnterFullscreen(props) {
12
12
  fill: "none",
13
13
  xmlns: "http://www.w3.org/2000/svg"
14
14
  }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
15
- d: "M11.825 0c.643 0 1.163.52 1.163 1.163V3.49a.499.499 0 01-.997 0V1.163a.166.166 0 00-.166-.166H9.499a.499.499 0 010-.997h2.326zM1.487 8.012c.275 0 .498.223.498.498v2.327c0 .091.075.166.167.166h2.326a.499.499 0 010 .997H2.152c-.643 0-1.164-.52-1.164-1.163V8.51c0-.275.223-.498.499-.498z",
15
+ d: "M1.627 7.534a.621.621 0 00-.629.629l.027 3.16v.01c.003.35.29.637.64.64l3.17.027a.621.621 0 00.629-.629.647.647 0 00-.64-.64l-2.536-.02-.022-2.537a.647.647 0 00-.64-.64z",
16
16
  fill: "#fff"
17
17
  })), _path2 || (_path2 = /*#__PURE__*/React.createElement("path", {
18
- d: "M1.92 11.069a.545.545 0 010-.771l2.088-2.089a.545.545 0 01.771.772l-2.088 2.088a.545.545 0 01-.772 0zM12.057.931a.545.545 0 010 .771L9.97 3.791a.545.545 0 01-.771-.772L11.286.931a.545.545 0 01.771 0z",
18
+ d: "M1.953 10.06a.696.696 0 00.984.985L6.22 7.764a.696.696 0 00-.985-.985l-3.281 3.282zM12.37 4.466a.621.621 0 00.628-.629l-.027-3.16v-.01a.647.647 0 00-.64-.64L9.162 0a.621.621 0 00-.629.629c.003.35.29.636.64.64l2.536.02.022 2.537c.003.35.289.637.64.64z",
19
+ fill: "#fff"
20
+ })), _path3 || (_path3 = /*#__PURE__*/React.createElement("path", {
21
+ d: "M12.043 1.94a.696.696 0 00-.984-.985L7.777 4.236a.696.696 0 00.985.985l3.281-3.282z",
19
22
  fill: "#fff"
20
23
  })));
21
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"enter_fullscreen.svg.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"enter_fullscreen.svg.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,20 +2,23 @@
2
2
 
3
3
  var React = require('react');
4
4
 
5
- var _path, _path2;
5
+ var _path, _path2, _path3;
6
6
 
7
7
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
8
8
 
9
9
  function SvgExitFullscreen(props) {
10
10
  return /*#__PURE__*/React.createElement("svg", _extends({
11
- viewBox: "0 0 12 12",
11
+ viewBox: "0 0 13 12",
12
12
  fill: "none",
13
13
  xmlns: "http://www.w3.org/2000/svg"
14
14
  }, props), _path || (_path = /*#__PURE__*/React.createElement("path", {
15
- d: "M2.83 8.004c.644 0 1.166.522 1.166 1.165v2.332a.5.5 0 11-.999 0V9.169a.167.167 0 00-.166-.166H.5a.5.5 0 010-1h2.33zM8.504 0a.5.5 0 01.5.5v2.33c0 .093.074.167.166.167h2.332a.5.5 0 010 1H9.169A1.166 1.166 0 018.004 2.83V.5a.5.5 0 01.5-.5z",
15
+ d: "M8.203.959a.621.621 0 00-.629.629l.027 3.16v.01c.003.35.289.637.64.64l3.17.027a.621.621 0 00.629-.63.647.647 0 00-.64-.639l-2.536-.021-.022-2.537a.647.647 0 00-.64-.64z",
16
16
  fill: "#fff"
17
17
  })), _path2 || (_path2 = /*#__PURE__*/React.createElement("path", {
18
- d: "M8.937 3.063a.547.547 0 010-.773L11.029.198a.547.547 0 01.773.773L9.71 3.063a.546.546 0 01-.773 0zM3.063 8.937a.547.547 0 010 .773L.971 11.802a.546.546 0 11-.773-.773L2.29 8.937a.547.547 0 01.773 0z",
18
+ d: "M8.529 3.485a.696.696 0 00.984.985l3.281-3.282a.693.693 0 000-.984.696.696 0 00-.984 0L8.529 3.485zM5.793 11.041a.621.621 0 00.63-.629l-.028-3.16v-.01a.647.647 0 00-.64-.64l-3.17-.027a.621.621 0 00-.629.63c.003.35.29.636.64.639l2.536.021.022 2.537c.003.35.29.636.64.64z",
19
+ fill: "#fff"
20
+ })), _path3 || (_path3 = /*#__PURE__*/React.createElement("path", {
21
+ d: "M5.468 8.515a.696.696 0 00-.985-.985l-3.281 3.282a.696.696 0 10.984.984l3.282-3.281z",
19
22
  fill: "#fff"
20
23
  })));
21
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"exit_fullscreen.svg.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"exit_fullscreen.svg.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -76,9 +76,9 @@ var ZoomControls = function ZoomControls(_ref) {
76
76
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
77
77
  className: "floatingController forZoom".concat(!showZoom ? ' hidden' : ''),
78
78
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
79
- className: "floatingController-container",
79
+ className: "floatingController-container isGray",
80
80
  children: [/*#__PURE__*/jsxRuntime.jsx("button", {
81
- className: "controllerItem isGray",
81
+ className: "controllerItem isWhite",
82
82
  onClick: increaseZoom,
83
83
  title: ZOOM_IN,
84
84
  type: "button",
@@ -89,7 +89,7 @@ var ZoomControls = function ZoomControls(_ref) {
89
89
  className: "controllerIndicator",
90
90
  children: [zoomValue, "%"]
91
91
  }), /*#__PURE__*/jsxRuntime.jsx("button", {
92
- className: "controllerItem isGray",
92
+ className: "controllerItem isWhite",
93
93
  onClick: decreaseZoom,
94
94
  title: ZOOM_OUT,
95
95
  type: "button",
@@ -1 +1 @@
1
- {"version":3,"file":"ZoomControls.js","sources":["../../../../src/components/Builder/ZoomControls.js"],"sourcesContent":["import { useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport * as icons from '../../utils/icons';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { usePropContext } from '../../utils/propContext';\nimport {\n ZOOM_STEP,\n ZOOM_MIN,\n ZOOM_MAX,\n ZOOM_MULTIPLIER,\n} from '../../constants/zoom';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst ZoomControls = ({\n mode,\n showZoom,\n}) => {\n const { setZoom, zoom } = useBuilderContext();\n const {\n onAnEventTrigger,\n settings,\n } = usePropContext();\n const { reportLayoutHeight = 794, reportLayoutWidth = 1123 } = settings;\n const isModeCustomize = mode === 'customize';\n const decreaseZoom = () => {\n onAnEventTrigger('zoomOut', 'report');\n if (zoom > (ZOOM_STEP + ZOOM_MIN)) {\n setZoom(parseFloat((zoom - ZOOM_STEP).toFixed(1)), isModeCustomize, reportLayoutWidth);\n }\n };\n const increaseZoom = () => {\n onAnEventTrigger('zoomIn', 'report');\n if (zoom < (ZOOM_MAX)) {\n setZoom(parseFloat((zoom + ZOOM_STEP).toFixed(1)), isModeCustomize, reportLayoutWidth);\n }\n };\n const fitZoom = () => {\n const { innerHeight, innerWidth } = window;\n const newScale = Math.min(\n (innerWidth - 400) / reportLayoutWidth,\n innerHeight / reportLayoutHeight,\n );\n let newZoom = Math.floor(newScale * 10) / 10;\n if (newZoom < 0.5) newZoom = 0.5;\n if (newZoom > 1) newZoom = 1;\n onAnEventTrigger('fitZoom', 'report');\n setZoom(newZoom, isModeCustomize, reportLayoutWidth);\n };\n\n const zoomValue = useMemo(() => {\n return Number.isNaN(zoom) ? 100 : (zoom * ZOOM_MULTIPLIER).toFixed(0);\n }, [zoom, ZOOM_MULTIPLIER]);\n\n const { FIT_TO_SCENE, ZOOM_IN, ZOOM_OUT } = useTranslatedTexts();\n\n return (\n <div className={`floatingController forZoom${!showZoom ? ' hidden' : ''}`}>\n <div className=\"floatingController-container\">\n <button\n className=\"controllerItem isGray\"\n onClick={increaseZoom}\n title={ZOOM_IN}\n type=\"button\"\n >\n <icons.plus className=\"jfReportSVG controllerItem-icon\" />\n </button>\n <div className=\"controllerIndicator\">\n {zoomValue}\n %\n </div>\n <button\n className=\"controllerItem isGray\"\n onClick={decreaseZoom}\n title={ZOOM_OUT}\n type=\"button\"\n >\n <icons.minus className=\"jfReportSVG controllerItem-icon\" />\n </button>\n </div>\n <div className=\"floatingController-container\">\n <button\n className=\"controllerItem isSingle\"\n onClick={fitZoom}\n title={FIT_TO_SCENE}\n type=\"button\"\n >\n <icons.fit className=\"jfReportSVG icon-fit\" />\n </button>\n </div>\n </div>\n );\n};\n\nZoomControls.propTypes = {\n mode: PropTypes.string,\n showZoom: PropTypes.bool,\n};\n\nZoomControls.defaultProps = {\n mode: '',\n showZoom: true,\n};\n\nexport default ZoomControls;\n"],"names":["ZoomControls","mode","showZoom","useBuilderContext","setZoom","zoom","usePropContext","onAnEventTrigger","settings","reportLayoutHeight","reportLayoutWidth","isModeCustomize","decreaseZoom","ZOOM_STEP","ZOOM_MIN","parseFloat","toFixed","increaseZoom","ZOOM_MAX","fitZoom","window","innerHeight","innerWidth","newScale","Math","min","newZoom","floor","zoomValue","useMemo","Number","isNaN","ZOOM_MULTIPLIER","useTranslatedTexts","FIT_TO_SCENE","ZOOM_IN","ZOOM_OUT","_jsxs","_jsx","icons.plus","icons.minus","icons.fit","propTypes","PropTypes","string","bool","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"ZoomControls.js","sources":["../../../../src/components/Builder/ZoomControls.js"],"sourcesContent":["import { useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport * as icons from '../../utils/icons';\nimport { useBuilderContext } from '../../utils/builderContext';\nimport { usePropContext } from '../../utils/propContext';\nimport {\n ZOOM_STEP,\n ZOOM_MIN,\n ZOOM_MAX,\n ZOOM_MULTIPLIER,\n} from '../../constants/zoom';\nimport { useTranslatedTexts } from '../../utils/hooks';\n\nconst ZoomControls = ({\n mode,\n showZoom,\n}) => {\n const { setZoom, zoom } = useBuilderContext();\n const {\n onAnEventTrigger,\n settings,\n } = usePropContext();\n const { reportLayoutHeight = 794, reportLayoutWidth = 1123 } = settings;\n const isModeCustomize = mode === 'customize';\n const decreaseZoom = () => {\n onAnEventTrigger('zoomOut', 'report');\n if (zoom > (ZOOM_STEP + ZOOM_MIN)) {\n setZoom(parseFloat((zoom - ZOOM_STEP).toFixed(1)), isModeCustomize, reportLayoutWidth);\n }\n };\n const increaseZoom = () => {\n onAnEventTrigger('zoomIn', 'report');\n if (zoom < (ZOOM_MAX)) {\n setZoom(parseFloat((zoom + ZOOM_STEP).toFixed(1)), isModeCustomize, reportLayoutWidth);\n }\n };\n const fitZoom = () => {\n const { innerHeight, innerWidth } = window;\n const newScale = Math.min(\n (innerWidth - 400) / reportLayoutWidth,\n innerHeight / reportLayoutHeight,\n );\n let newZoom = Math.floor(newScale * 10) / 10;\n if (newZoom < 0.5) newZoom = 0.5;\n if (newZoom > 1) newZoom = 1;\n onAnEventTrigger('fitZoom', 'report');\n setZoom(newZoom, isModeCustomize, reportLayoutWidth);\n };\n\n const zoomValue = useMemo(() => {\n return Number.isNaN(zoom) ? 100 : (zoom * ZOOM_MULTIPLIER).toFixed(0);\n }, [zoom, ZOOM_MULTIPLIER]);\n\n const { FIT_TO_SCENE, ZOOM_IN, ZOOM_OUT } = useTranslatedTexts();\n\n return (\n <div className={`floatingController forZoom${!showZoom ? ' hidden' : ''}`}>\n <div className=\"floatingController-container isGray\">\n <button\n className=\"controllerItem isWhite\"\n onClick={increaseZoom}\n title={ZOOM_IN}\n type=\"button\"\n >\n <icons.plus className=\"jfReportSVG controllerItem-icon\" />\n </button>\n <div className=\"controllerIndicator\">\n {zoomValue}\n %\n </div>\n <button\n className=\"controllerItem isWhite\"\n onClick={decreaseZoom}\n title={ZOOM_OUT}\n type=\"button\"\n >\n <icons.minus className=\"jfReportSVG controllerItem-icon\" />\n </button>\n </div>\n <div className=\"floatingController-container\">\n <button\n className=\"controllerItem isSingle\"\n onClick={fitZoom}\n title={FIT_TO_SCENE}\n type=\"button\"\n >\n <icons.fit className=\"jfReportSVG icon-fit\" />\n </button>\n </div>\n </div>\n );\n};\n\nZoomControls.propTypes = {\n mode: PropTypes.string,\n showZoom: PropTypes.bool,\n};\n\nZoomControls.defaultProps = {\n mode: '',\n showZoom: true,\n};\n\nexport default ZoomControls;\n"],"names":["ZoomControls","mode","showZoom","useBuilderContext","setZoom","zoom","usePropContext","onAnEventTrigger","settings","reportLayoutHeight","reportLayoutWidth","isModeCustomize","decreaseZoom","ZOOM_STEP","ZOOM_MIN","parseFloat","toFixed","increaseZoom","ZOOM_MAX","fitZoom","window","innerHeight","innerWidth","newScale","Math","min","newZoom","floor","zoomValue","useMemo","Number","isNaN","ZOOM_MULTIPLIER","useTranslatedTexts","FIT_TO_SCENE","ZOOM_IN","ZOOM_OUT","_jsxs","_jsx","icons.plus","icons.minus","icons.fit","propTypes","PropTypes","string","bool","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;IAaMA,YAAY,GAAG,SAAfA,YAAe,OAGf;AAAA,MAFJC,IAEI,QAFJA,IAEI;AAAA,MADJC,QACI,QADJA,QACI;;AACJ,2BAA0BC,gCAAiB,EAA3C;AAAA,MAAQC,OAAR,sBAAQA,OAAR;AAAA,MAAiBC,MAAjB,sBAAiBA,IAAjB;;AACA,wBAGIC,0BAAc,EAHlB;AAAA,MACEC,gBADF,mBACEA,gBADF;AAAA,MAEEC,QAFF,mBAEEA,QAFF;;AAIA,8BAA+DA,QAA/D,CAAQC,kBAAR;AAAA,MAAQA,kBAAR,sCAA6B,GAA7B;AAAA,+BAA+DD,QAA/D,CAAkCE,iBAAlC;AAAA,MAAkCA,iBAAlC,uCAAsD,IAAtD;AACA,MAAMC,eAAe,GAAGV,IAAI,KAAK,WAAjC;;AACA,MAAMW,YAAY,GAAG,SAAfA,YAAe,GAAM;AACzBL,IAAAA,gBAAgB,CAAC,SAAD,EAAY,QAAZ,CAAhB;;AACA,QAAIF,MAAI,GAAIQ,cAAS,GAAGC,aAAxB,EAAmC;AACjCV,MAAAA,OAAO,CAACW,UAAU,CAAC,CAACV,MAAI,GAAGQ,cAAR,EAAmBG,OAAnB,CAA2B,CAA3B,CAAD,CAAX,EAA4CL,eAA5C,EAA6DD,iBAA7D,CAAP;AACD;AACF,GALD;;AAMA,MAAMO,YAAY,GAAG,SAAfA,YAAe,GAAM;AACzBV,IAAAA,gBAAgB,CAAC,QAAD,EAAW,QAAX,CAAhB;;AACA,QAAIF,MAAI,GAAIa,aAAZ,EAAuB;AACrBd,MAAAA,OAAO,CAACW,UAAU,CAAC,CAACV,MAAI,GAAGQ,cAAR,EAAmBG,OAAnB,CAA2B,CAA3B,CAAD,CAAX,EAA4CL,eAA5C,EAA6DD,iBAA7D,CAAP;AACD;AACF,GALD;;AAMA,MAAMS,OAAO,GAAG,SAAVA,OAAU,GAAM;AACpB,kBAAoCC,MAApC;AAAA,QAAQC,WAAR,WAAQA,WAAR;AAAA,QAAqBC,UAArB,WAAqBA,UAArB;AACA,QAAMC,QAAQ,GAAGC,IAAI,CAACC,GAAL,CACf,CAACH,UAAU,GAAG,GAAd,IAAqBZ,iBADN,EAEfW,WAAW,GAAGZ,kBAFC,CAAjB;AAIA,QAAIiB,OAAO,GAAGF,IAAI,CAACG,KAAL,CAAWJ,QAAQ,GAAG,EAAtB,IAA4B,EAA1C;AACA,QAAIG,OAAO,GAAG,GAAd,EAAmBA,OAAO,GAAG,GAAV;AACnB,QAAIA,OAAO,GAAG,CAAd,EAAiBA,OAAO,GAAG,CAAV;AACjBnB,IAAAA,gBAAgB,CAAC,SAAD,EAAY,QAAZ,CAAhB;AACAH,IAAAA,OAAO,CAACsB,OAAD,EAAUf,eAAV,EAA2BD,iBAA3B,CAAP;AACD,GAXD;;AAaA,MAAMkB,SAAS,GAAGC,aAAO,CAAC,YAAM;AAC9B,WAAOC,MAAM,CAACC,KAAP,CAAa1B,MAAb,IAAqB,GAArB,GAA2B,CAACA,MAAI,GAAG2B,oBAAR,EAAyBhB,OAAzB,CAAiC,CAAjC,CAAlC;AACD,GAFwB,EAEtB,CAACX,MAAD,EAAO2B,oBAAP,CAFsB,CAAzB;;AAIA,4BAA4CC,wBAAkB,EAA9D;AAAA,MAAQC,YAAR,uBAAQA,YAAR;AAAA,MAAsBC,OAAtB,uBAAsBA,OAAtB;AAAA,MAA+BC,QAA/B,uBAA+BA,QAA/B;;AAEA,sBACEC;AAAK,IAAA,SAAS,sCAA+B,CAACnC,QAAD,GAAY,SAAZ,GAAwB,EAAvD,CAAd;AAAA,4BACEmC;AAAK,MAAA,SAAS,EAAC,qCAAf;AAAA,8BACEC;AACE,QAAA,SAAS,EAAC,wBADZ;AAEE,QAAA,OAAO,EAAErB,YAFX;AAGE,QAAA,KAAK,EAAEkB,OAHT;AAIE,QAAA,IAAI,EAAC,QAJP;AAAA,+BAMEG,eAACC,IAAD;AAAY,UAAA,SAAS,EAAC;AAAtB;AANF,QADF,eASEF;AAAK,QAAA,SAAS,EAAC,qBAAf;AAAA,mBACGT,SADH;AAAA,QATF,eAaEU;AACE,QAAA,SAAS,EAAC,wBADZ;AAEE,QAAA,OAAO,EAAE1B,YAFX;AAGE,QAAA,KAAK,EAAEwB,QAHT;AAIE,QAAA,IAAI,EAAC,QAJP;AAAA,+BAMEE,eAACE,KAAD;AAAa,UAAA,SAAS,EAAC;AAAvB;AANF,QAbF;AAAA,MADF,eAuBEF;AAAK,MAAA,SAAS,EAAC,8BAAf;AAAA,6BACEA;AACE,QAAA,SAAS,EAAC,yBADZ;AAEE,QAAA,OAAO,EAAEnB,OAFX;AAGE,QAAA,KAAK,EAAEe,YAHT;AAIE,QAAA,IAAI,EAAC,QAJP;AAAA,+BAMEI,eAACG,UAAD;AAAW,UAAA,SAAS,EAAC;AAArB;AANF;AADF,MAvBF;AAAA,IADF;AAoCD;;AAEDzC,YAAY,CAAC0C,SAAb,GAAyB;AACvBzC,EAAAA,IAAI,EAAE0C,6BAAS,CAACC,MADO;AAEvB1C,EAAAA,QAAQ,EAAEyC,6BAAS,CAACE;AAFG,CAAzB;AAKA7C,YAAY,CAAC8C,YAAb,GAA4B;AAC1B7C,EAAAA,IAAI,EAAE,EADoB;AAE1BC,EAAAA,QAAQ,EAAE;AAFgB,CAA5B;;;;"}
@@ -199,7 +199,7 @@ var RightPanel = function RightPanel(_ref) {
199
199
  children: /*#__PURE__*/jsxRuntime.jsxs(Panel, {
200
200
  ref: panelRef,
201
201
  additionalClassName: panelAdditionalClassName,
202
- children: [isSlidesPanelOpen || isRightPanelOpen ? null : /*#__PURE__*/jsxRuntime.jsx(RightPanelToggler, {}), /*#__PURE__*/jsxRuntime.jsx("div", {
202
+ children: [isSlidesPanelOpen ? null : /*#__PURE__*/jsxRuntime.jsx(RightPanelToggler, {}), /*#__PURE__*/jsxRuntime.jsx("div", {
203
203
  className: "toolItemWrapper f-height d-flex dir-col",
204
204
  children: /*#__PURE__*/jsxRuntime.jsxs(Section, {
205
205
  title: title,
@@ -1 +1 @@
1
- {"version":3,"file":"RightPanel.js","sources":["../../../../../src/components/Panels/RightPanel/RightPanel.js"],"sourcesContent":["import {\n memo,\n useEffect,\n useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport Panel from '../../Builder/Panel';\nimport Section from '../../Builder/Section';\nimport Layout from '../../../constants/reportSettings';\nimport Page from '../../../constants/pageSettings';\nimport { useBuilderContext } from '../../../utils/builderContext';\nimport { usePropContext } from '../../../utils/propContext';\nimport { findItemById, getTabsWithSettings } from '../../../utils/functions';\nimport { useTranslatedTexts } from '../../../utils/hooks';\nimport {\n REPORT_SETTINGS_ITEM_TYPE, PAGE_SETTINGS_ITEM_TYPE,\n} from '../../../constants/itemTypes';\nimport Tabs from '../../Builder/Tabs';\nimport Settings from './Settings';\nimport RightPanelToggler from './RightPanelToggler';\nimport { capitalize } from '../../../utils/string';\n\nconst exceptionalClasses = [\n 'pageSettingSideBtn', 'paneClose', 'paneToggler', 'forZoom', 'jSheetContextMenu',\n];\n\nconst RightPanel = ({\n itemAccessor,\n onItemChange,\n onPageChange,\n onSettingChange,\n pages,\n}) => {\n const {\n activeTab,\n editedElement,\n isRightPanelOpen,\n isSlidesPanelOpen,\n setActiveElement,\n setActiveTab,\n setIsRightPanelOpen,\n } = useBuilderContext();\n const { acceptedItems, settings: layoutSettings } = usePropContext();\n const panelRef = useRef(null);\n const { LAYOUT_SETTINGS, PAGE_SETTINGS, SETTINGS } = useTranslatedTexts();\n const settingMap = {\n i_: {\n details: id => {\n const item = findItemById(id, pages);\n return item;\n },\n settings: item => {\n return acceptedItems[item.itemType];\n },\n title: item => {\n return `${capitalize(acceptedItems[item.itemType].title || item.itemType)} ${SETTINGS}`;\n },\n updater: onItemChange,\n },\n l_: {\n details: () => {\n return {\n ...layoutSettings,\n id: REPORT_SETTINGS_ITEM_TYPE,\n itemType: REPORT_SETTINGS_ITEM_TYPE,\n };\n },\n settings: () => {\n return acceptedItems[REPORT_SETTINGS_ITEM_TYPE] || Layout;\n },\n title: () => LAYOUT_SETTINGS,\n updater: onSettingChange,\n },\n p_: {\n details: id => {\n return {\n backgroundColor: layoutSettings.reportBackgroundColor,\n ...pages.find(page => page.id === id),\n itemType: PAGE_SETTINGS_ITEM_TYPE,\n };\n },\n settings: () => {\n const pageItem = acceptedItems[PAGE_SETTINGS_ITEM_TYPE] || Page;\n return {\n ...pageItem,\n settings: pageItem.settings.map(setting => {\n if (setting.key === 'pageLayer') {\n return { ...setting, setActiveElement, updater: onItemChange };\n }\n return setting;\n }) || Page.settings,\n };\n },\n title: () => PAGE_SETTINGS,\n updater: onPageChange,\n },\n };\n\n let editedEl;\n let editedElId;\n let selectedItem;\n let element;\n let updateFunc;\n let title;\n\n const panelConfig = () => {\n selectedItem = editedEl.details(editedElId);\n element = editedEl.settings(selectedItem);\n updateFunc = editedEl.updater;\n title = editedEl.title(selectedItem);\n };\n\n const fallback = () => {\n setActiveElement(null);\n editedEl = settingMap.l_;\n editedElId = editedElement.substr(2);\n panelConfig();\n };\n\n try {\n editedEl = settingMap[editedElement.substr(0, 2)];\n editedElId = editedElement.substr(2);\n const checkSelectedItem = editedEl.details(editedElId);\n if (Object.keys(checkSelectedItem).length === 0) {\n fallback();\n } else {\n panelConfig();\n }\n } catch (e) {\n fallback();\n }\n\n // Tabs\n const tabsWithSettings = getTabsWithSettings(element, selectedItem, itemAccessor);\n const tabs = Object.keys(tabsWithSettings);\n\n useEffect(() => {\n const currentTab = tabs[activeTab.right];\n if (!tabsWithSettings[currentTab]) {\n // This is due to conditionaly hiding tabs\n setActiveTab('right', 0);\n }\n }, [activeTab, tabs]);\n\n // Panel className\n const panelAdditionalClassName = classNames(\n 'jfReport-settings forSettings f-height',\n {\n isIdle: !isRightPanelOpen,\n otherOpened: isSlidesPanelOpen,\n },\n );\n\n const onClickOutsideForPanel = e => {\n if (editedElement.substr(0, 2) === 'i_'\n || panelRef.current.contains(e.target)\n || panelRef.current.contains(document.activeElement)\n || Array.from(e.target.classList).some(xClass => exceptionalClasses.includes(xClass))\n || exceptionalClasses.some(xClass => e.target.closest(`.${xClass}`))\n ) {\n return;\n }\n setIsRightPanelOpen(false);\n setActiveElement(null);\n };\n\n useEffect(() => {\n if (isRightPanelOpen) window.addEventListener('click', onClickOutsideForPanel, false);\n return () => {\n window.removeEventListener('click', onClickOutsideForPanel, false);\n };\n }, [isRightPanelOpen]);\n\n return (\n <>\n <Panel\n ref={panelRef}\n additionalClassName={panelAdditionalClassName}\n >\n {(isSlidesPanelOpen || isRightPanelOpen) ? null : <RightPanelToggler />}\n <div className=\"toolItemWrapper f-height d-flex dir-col\">\n <Section title={title}>\n <Tabs\n panel=\"right\"\n tabs={tabs}\n />\n <Settings\n key={selectedItem.id}\n element={element}\n item={selectedItem}\n itemAccessor={itemAccessor}\n onChange={updateFunc}\n settings={tabsWithSettings}\n tabs={tabs}\n />\n </Section>\n </div>\n </Panel>\n </>\n );\n};\n\nRightPanel.propTypes = {\n itemAccessor: PropTypes.func,\n onItemChange: PropTypes.func,\n onPageChange: PropTypes.func,\n onSettingChange: PropTypes.func,\n pages: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n};\n\nRightPanel.defaultProps = {\n itemAccessor: () => { },\n onItemChange: () => { },\n onPageChange: () => { },\n onSettingChange: () => { },\n pages: [],\n};\n\nexport default memo(RightPanel);\n"],"names":["exceptionalClasses","RightPanel","itemAccessor","onItemChange","onPageChange","onSettingChange","pages","useBuilderContext","activeTab","editedElement","isRightPanelOpen","isSlidesPanelOpen","setActiveElement","setActiveTab","setIsRightPanelOpen","usePropContext","acceptedItems","layoutSettings","settings","panelRef","useRef","useTranslatedTexts","LAYOUT_SETTINGS","PAGE_SETTINGS","SETTINGS","settingMap","i_","details","id","item","findItemById","itemType","title","capitalize","updater","l_","REPORT_SETTINGS_ITEM_TYPE","Layout","p_","backgroundColor","reportBackgroundColor","find","page","PAGE_SETTINGS_ITEM_TYPE","pageItem","Page","map","setting","key","editedEl","editedElId","selectedItem","element","updateFunc","panelConfig","fallback","substr","checkSelectedItem","Object","keys","length","e","tabsWithSettings","getTabsWithSettings","tabs","useEffect","currentTab","right","panelAdditionalClassName","classNames","isIdle","otherOpened","onClickOutsideForPanel","current","contains","target","document","activeElement","Array","from","classList","some","xClass","includes","closest","window","addEventListener","removeEventListener","_jsx","_jsxs","propTypes","PropTypes","func","arrayOf","shape","defaultProps","memo"],"mappings":"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"}
1
+ {"version":3,"file":"RightPanel.js","sources":["../../../../../src/components/Panels/RightPanel/RightPanel.js"],"sourcesContent":["import {\n memo,\n useEffect,\n useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport Panel from '../../Builder/Panel';\nimport Section from '../../Builder/Section';\nimport Layout from '../../../constants/reportSettings';\nimport Page from '../../../constants/pageSettings';\nimport { useBuilderContext } from '../../../utils/builderContext';\nimport { usePropContext } from '../../../utils/propContext';\nimport { findItemById, getTabsWithSettings } from '../../../utils/functions';\nimport { useTranslatedTexts } from '../../../utils/hooks';\nimport {\n REPORT_SETTINGS_ITEM_TYPE, PAGE_SETTINGS_ITEM_TYPE,\n} from '../../../constants/itemTypes';\nimport Tabs from '../../Builder/Tabs';\nimport Settings from './Settings';\nimport RightPanelToggler from './RightPanelToggler';\nimport { capitalize } from '../../../utils/string';\n\nconst exceptionalClasses = [\n 'pageSettingSideBtn', 'paneClose', 'paneToggler', 'forZoom', 'jSheetContextMenu',\n];\n\nconst RightPanel = ({\n itemAccessor,\n onItemChange,\n onPageChange,\n onSettingChange,\n pages,\n}) => {\n const {\n activeTab,\n editedElement,\n isRightPanelOpen,\n isSlidesPanelOpen,\n setActiveElement,\n setActiveTab,\n setIsRightPanelOpen,\n } = useBuilderContext();\n const { acceptedItems, settings: layoutSettings } = usePropContext();\n const panelRef = useRef(null);\n const { LAYOUT_SETTINGS, PAGE_SETTINGS, SETTINGS } = useTranslatedTexts();\n const settingMap = {\n i_: {\n details: id => {\n const item = findItemById(id, pages);\n return item;\n },\n settings: item => {\n return acceptedItems[item.itemType];\n },\n title: item => {\n return `${capitalize(acceptedItems[item.itemType].title || item.itemType)} ${SETTINGS}`;\n },\n updater: onItemChange,\n },\n l_: {\n details: () => {\n return {\n ...layoutSettings,\n id: REPORT_SETTINGS_ITEM_TYPE,\n itemType: REPORT_SETTINGS_ITEM_TYPE,\n };\n },\n settings: () => {\n return acceptedItems[REPORT_SETTINGS_ITEM_TYPE] || Layout;\n },\n title: () => LAYOUT_SETTINGS,\n updater: onSettingChange,\n },\n p_: {\n details: id => {\n return {\n backgroundColor: layoutSettings.reportBackgroundColor,\n ...pages.find(page => page.id === id),\n itemType: PAGE_SETTINGS_ITEM_TYPE,\n };\n },\n settings: () => {\n const pageItem = acceptedItems[PAGE_SETTINGS_ITEM_TYPE] || Page;\n return {\n ...pageItem,\n settings: pageItem.settings.map(setting => {\n if (setting.key === 'pageLayer') {\n return { ...setting, setActiveElement, updater: onItemChange };\n }\n return setting;\n }) || Page.settings,\n };\n },\n title: () => PAGE_SETTINGS,\n updater: onPageChange,\n },\n };\n\n let editedEl;\n let editedElId;\n let selectedItem;\n let element;\n let updateFunc;\n let title;\n\n const panelConfig = () => {\n selectedItem = editedEl.details(editedElId);\n element = editedEl.settings(selectedItem);\n updateFunc = editedEl.updater;\n title = editedEl.title(selectedItem);\n };\n\n const fallback = () => {\n setActiveElement(null);\n editedEl = settingMap.l_;\n editedElId = editedElement.substr(2);\n panelConfig();\n };\n\n try {\n editedEl = settingMap[editedElement.substr(0, 2)];\n editedElId = editedElement.substr(2);\n const checkSelectedItem = editedEl.details(editedElId);\n if (Object.keys(checkSelectedItem).length === 0) {\n fallback();\n } else {\n panelConfig();\n }\n } catch (e) {\n fallback();\n }\n\n // Tabs\n const tabsWithSettings = getTabsWithSettings(element, selectedItem, itemAccessor);\n const tabs = Object.keys(tabsWithSettings);\n\n useEffect(() => {\n const currentTab = tabs[activeTab.right];\n if (!tabsWithSettings[currentTab]) {\n // This is due to conditionaly hiding tabs\n setActiveTab('right', 0);\n }\n }, [activeTab, tabs]);\n\n // Panel className\n const panelAdditionalClassName = classNames(\n 'jfReport-settings forSettings f-height',\n {\n isIdle: !isRightPanelOpen,\n otherOpened: isSlidesPanelOpen,\n },\n );\n\n const onClickOutsideForPanel = e => {\n if (editedElement.substr(0, 2) === 'i_'\n || panelRef.current.contains(e.target)\n || panelRef.current.contains(document.activeElement)\n || Array.from(e.target.classList).some(xClass => exceptionalClasses.includes(xClass))\n || exceptionalClasses.some(xClass => e.target.closest(`.${xClass}`))\n ) {\n return;\n }\n setIsRightPanelOpen(false);\n setActiveElement(null);\n };\n\n useEffect(() => {\n if (isRightPanelOpen) window.addEventListener('click', onClickOutsideForPanel, false);\n return () => {\n window.removeEventListener('click', onClickOutsideForPanel, false);\n };\n }, [isRightPanelOpen]);\n\n return (\n <>\n <Panel\n ref={panelRef}\n additionalClassName={panelAdditionalClassName}\n >\n {isSlidesPanelOpen ? null : <RightPanelToggler />}\n <div className=\"toolItemWrapper f-height d-flex dir-col\">\n <Section title={title}>\n <Tabs\n panel=\"right\"\n tabs={tabs}\n />\n <Settings\n key={selectedItem.id}\n element={element}\n item={selectedItem}\n itemAccessor={itemAccessor}\n onChange={updateFunc}\n settings={tabsWithSettings}\n tabs={tabs}\n />\n </Section>\n </div>\n </Panel>\n </>\n );\n};\n\nRightPanel.propTypes = {\n itemAccessor: PropTypes.func,\n onItemChange: PropTypes.func,\n onPageChange: PropTypes.func,\n onSettingChange: PropTypes.func,\n pages: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n};\n\nRightPanel.defaultProps = {\n itemAccessor: () => { },\n onItemChange: () => { },\n onPageChange: () => { },\n onSettingChange: () => { },\n pages: [],\n};\n\nexport default memo(RightPanel);\n"],"names":["exceptionalClasses","RightPanel","itemAccessor","onItemChange","onPageChange","onSettingChange","pages","useBuilderContext","activeTab","editedElement","isRightPanelOpen","isSlidesPanelOpen","setActiveElement","setActiveTab","setIsRightPanelOpen","usePropContext","acceptedItems","layoutSettings","settings","panelRef","useRef","useTranslatedTexts","LAYOUT_SETTINGS","PAGE_SETTINGS","SETTINGS","settingMap","i_","details","id","item","findItemById","itemType","title","capitalize","updater","l_","REPORT_SETTINGS_ITEM_TYPE","Layout","p_","backgroundColor","reportBackgroundColor","find","page","PAGE_SETTINGS_ITEM_TYPE","pageItem","Page","map","setting","key","editedEl","editedElId","selectedItem","element","updateFunc","panelConfig","fallback","substr","checkSelectedItem","Object","keys","length","e","tabsWithSettings","getTabsWithSettings","tabs","useEffect","currentTab","right","panelAdditionalClassName","classNames","isIdle","otherOpened","onClickOutsideForPanel","current","contains","target","document","activeElement","Array","from","classList","some","xClass","includes","closest","window","addEventListener","removeEventListener","_jsx","_jsxs","propTypes","PropTypes","func","arrayOf","shape","defaultProps","memo"],"mappings":"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"}
@@ -103,7 +103,7 @@ var SlidesPanel = function SlidesPanel(_ref) {
103
103
  return /*#__PURE__*/jsxRuntime.jsxs(Panel, {
104
104
  additionalClassName: panelAdditionalClassName,
105
105
  onAnimationEnd: onAnimationEnd,
106
- children: [isSlidesPanelOpen || isRightPanelOpen ? null : /*#__PURE__*/jsxRuntime.jsx(SlidesPanelToggler, {
106
+ children: [isRightPanelOpen ? null : /*#__PURE__*/jsxRuntime.jsx(SlidesPanelToggler, {
107
107
  onClosePanel: onClosePanel
108
108
  }), (isSlidesPanelOpen || !isSlidesPanelOpen && !animationEnd) && /*#__PURE__*/jsxRuntime.jsx("div", {
109
109
  className: "toolItemWrapper f-height d-flex dir-col",
@@ -1 +1 @@
1
- {"version":3,"file":"SlidesPanel.js","sources":["../../../../../src/components/Panels/SlidesPanel/SlidesPanel.js"],"sourcesContent":["import { memo, useCallback, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { FixedSizeList } from 'react-window';\nimport Panel from '../../Builder/Panel';\nimport SortablePageList from './SortablePageList';\nimport Section from '../../Builder/Section';\nimport { useBuilderContext } from '../../../utils/builderContext';\nimport { usePropContext } from '../../../utils/propContext';\nimport { arrayMove } from '../../../utils/functions';\nimport SlidesPanelToggler from './SlidesPanelToggler';\nimport ListWrapper from './ListWrapper';\nimport Button from '../../Settings/Button';\nimport { useClickOutsideListener, useTranslatedTexts } from '../../../utils/hooks';\n\nconst SlidesPanel = ({\n additionalPageItems,\n hashCode,\n itemAccessor,\n onPageAdd,\n onPageDuplicate,\n onPageOrdersChange,\n onPageRemove,\n pages,\n}) => {\n const {\n isRightPanelOpen,\n isSlidesPanelOpen,\n setIsAllSlidesPanelOpen,\n setIsSlidesPanelOpen,\n } = useBuilderContext();\n const {\n acceptedItems,\n disableInteraction,\n onAnEventTrigger,\n settings: reportSettings,\n useExperimentalFeatures,\n } = usePropContext();\n const [animationEnd, setAnimationEnd] = useState(true);\n\n const pageGetter = useCallback(index => {\n return pages[index];\n }, [pages]);\n\n const onPageSort = useCallback(({ newIndex, oldIndex }, nativeEvent, ref) => {\n const instance = ref.getWrappedInstance();\n const list = instance.sortablePageListRef.current;\n\n const newPageOrders = arrayMove(pages, oldIndex, newIndex).reduce((acc, page, index) => {\n acc[page.id] = { order: index + 1 };\n return acc;\n }, {});\n\n onPageOrdersChange(newPageOrders);\n onAnEventTrigger('sortPageFromSlides');\n\n list.forceUpdate();\n }, [pages]);\n\n // Panel className\n const panelAdditionalClassName = classNames(\n 'jfReport-settings forSlides f-height',\n {\n isIdle: !isSlidesPanelOpen,\n otherOpened: isRightPanelOpen,\n },\n );\n\n const onClosePanel = () => {\n setAnimationEnd(false);\n setIsSlidesPanelOpen(false);\n };\n\n const onAnimationEnd = useCallback(() => {\n if (!isSlidesPanelOpen) {\n setAnimationEnd(true);\n }\n }, [isSlidesPanelOpen]);\n\n useClickOutsideListener(\n ['jfReport-canvas', 'jfReport-viewport', 'jfReport-pageInfo'],\n isSlidesPanelOpen,\n onClosePanel,\n );\n\n const { SLIDES } = useTranslatedTexts();\n\n return (\n <Panel\n additionalClassName={panelAdditionalClassName}\n onAnimationEnd={onAnimationEnd}\n >\n {(isSlidesPanelOpen || isRightPanelOpen)\n ? null\n : <SlidesPanelToggler onClosePanel={onClosePanel} />}\n {(isSlidesPanelOpen || (!isSlidesPanelOpen && !animationEnd)) && (\n <div className=\"toolItemWrapper f-height d-flex dir-col\">\n <Section\n additionalComponent={useExperimentalFeatures ? (\n <Button\n classNames=\"jfReportButton isAccent showAll\"\n icon=\"allSlides\"\n onClick={() => setIsAllSlidesPanelOpen(true)}\n title=\"Show All\"\n />\n ) : null}\n icon=\"slides\"\n title={SLIDES}\n >\n <div className=\"toolItem-tabContent hasInnerScroll\">\n <ListWrapper\n acceptedItems={acceptedItems}\n additionalPageItems={additionalPageItems}\n component={SortablePageList(FixedSizeList)}\n disableInteraction={disableInteraction}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n onAnEventTrigger={onAnEventTrigger}\n onPageAdd={onPageAdd}\n onPageDuplicate={onPageDuplicate}\n onPageRemove={onPageRemove}\n onSortEnd={onPageSort}\n pageCount={pages.length}\n pageGetter={pageGetter}\n reportSettings={reportSettings}\n />\n </div>\n </Section>\n </div>\n )}\n </Panel>\n );\n};\n\nSlidesPanel.propTypes = {\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n hashCode: PropTypes.string,\n itemAccessor: PropTypes.func,\n onPageAdd: PropTypes.func,\n onPageDuplicate: PropTypes.func,\n onPageOrdersChange: PropTypes.func,\n onPageRemove: PropTypes.func,\n pages: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n};\n\nSlidesPanel.defaultProps = {\n additionalPageItems: [],\n hashCode: '',\n itemAccessor: () => { },\n onPageAdd: () => { },\n onPageDuplicate: () => { },\n onPageOrdersChange: () => { },\n onPageRemove: () => { },\n pages: [],\n};\n\nexport default memo(SlidesPanel);\n"],"names":["SlidesPanel","additionalPageItems","hashCode","itemAccessor","onPageAdd","onPageDuplicate","onPageOrdersChange","onPageRemove","pages","useBuilderContext","isRightPanelOpen","isSlidesPanelOpen","setIsAllSlidesPanelOpen","setIsSlidesPanelOpen","usePropContext","acceptedItems","disableInteraction","onAnEventTrigger","reportSettings","settings","useExperimentalFeatures","useState","animationEnd","setAnimationEnd","pageGetter","useCallback","index","onPageSort","nativeEvent","ref","newIndex","oldIndex","instance","getWrappedInstance","list","sortablePageListRef","current","newPageOrders","arrayMove","reduce","acc","page","id","order","forceUpdate","panelAdditionalClassName","classNames","isIdle","otherOpened","onClosePanel","onAnimationEnd","useClickOutsideListener","useTranslatedTexts","SLIDES","_jsxs","_jsx","SortablePageList","FixedSizeList","length","propTypes","PropTypes","arrayOf","node","string","func","shape","defaultProps","memo"],"mappings":"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"}
1
+ {"version":3,"file":"SlidesPanel.js","sources":["../../../../../src/components/Panels/SlidesPanel/SlidesPanel.js"],"sourcesContent":["import { memo, useCallback, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { FixedSizeList } from 'react-window';\nimport Panel from '../../Builder/Panel';\nimport SortablePageList from './SortablePageList';\nimport Section from '../../Builder/Section';\nimport { useBuilderContext } from '../../../utils/builderContext';\nimport { usePropContext } from '../../../utils/propContext';\nimport { arrayMove } from '../../../utils/functions';\nimport SlidesPanelToggler from './SlidesPanelToggler';\nimport ListWrapper from './ListWrapper';\nimport Button from '../../Settings/Button';\nimport { useClickOutsideListener, useTranslatedTexts } from '../../../utils/hooks';\n\nconst SlidesPanel = ({\n additionalPageItems,\n hashCode,\n itemAccessor,\n onPageAdd,\n onPageDuplicate,\n onPageOrdersChange,\n onPageRemove,\n pages,\n}) => {\n const {\n isRightPanelOpen,\n isSlidesPanelOpen,\n setIsAllSlidesPanelOpen,\n setIsSlidesPanelOpen,\n } = useBuilderContext();\n const {\n acceptedItems,\n disableInteraction,\n onAnEventTrigger,\n settings: reportSettings,\n useExperimentalFeatures,\n } = usePropContext();\n const [animationEnd, setAnimationEnd] = useState(true);\n\n const pageGetter = useCallback(index => {\n return pages[index];\n }, [pages]);\n\n const onPageSort = useCallback(({ newIndex, oldIndex }, nativeEvent, ref) => {\n const instance = ref.getWrappedInstance();\n const list = instance.sortablePageListRef.current;\n\n const newPageOrders = arrayMove(pages, oldIndex, newIndex).reduce((acc, page, index) => {\n acc[page.id] = { order: index + 1 };\n return acc;\n }, {});\n\n onPageOrdersChange(newPageOrders);\n onAnEventTrigger('sortPageFromSlides');\n\n list.forceUpdate();\n }, [pages]);\n\n // Panel className\n const panelAdditionalClassName = classNames(\n 'jfReport-settings forSlides f-height',\n {\n isIdle: !isSlidesPanelOpen,\n otherOpened: isRightPanelOpen,\n },\n );\n\n const onClosePanel = () => {\n setAnimationEnd(false);\n setIsSlidesPanelOpen(false);\n };\n\n const onAnimationEnd = useCallback(() => {\n if (!isSlidesPanelOpen) {\n setAnimationEnd(true);\n }\n }, [isSlidesPanelOpen]);\n\n useClickOutsideListener(\n ['jfReport-canvas', 'jfReport-viewport', 'jfReport-pageInfo'],\n isSlidesPanelOpen,\n onClosePanel,\n );\n\n const { SLIDES } = useTranslatedTexts();\n\n return (\n <Panel\n additionalClassName={panelAdditionalClassName}\n onAnimationEnd={onAnimationEnd}\n >\n {isRightPanelOpen\n ? null\n : <SlidesPanelToggler onClosePanel={onClosePanel} />}\n {(isSlidesPanelOpen || (!isSlidesPanelOpen && !animationEnd)) && (\n <div className=\"toolItemWrapper f-height d-flex dir-col\">\n <Section\n additionalComponent={useExperimentalFeatures ? (\n <Button\n classNames=\"jfReportButton isAccent showAll\"\n icon=\"allSlides\"\n onClick={() => setIsAllSlidesPanelOpen(true)}\n title=\"Show All\"\n />\n ) : null}\n icon=\"slides\"\n title={SLIDES}\n >\n <div className=\"toolItem-tabContent hasInnerScroll\">\n <ListWrapper\n acceptedItems={acceptedItems}\n additionalPageItems={additionalPageItems}\n component={SortablePageList(FixedSizeList)}\n disableInteraction={disableInteraction}\n hashCode={hashCode}\n itemAccessor={itemAccessor}\n onAnEventTrigger={onAnEventTrigger}\n onPageAdd={onPageAdd}\n onPageDuplicate={onPageDuplicate}\n onPageRemove={onPageRemove}\n onSortEnd={onPageSort}\n pageCount={pages.length}\n pageGetter={pageGetter}\n reportSettings={reportSettings}\n />\n </div>\n </Section>\n </div>\n )}\n </Panel>\n );\n};\n\nSlidesPanel.propTypes = {\n additionalPageItems: PropTypes.arrayOf(PropTypes.node),\n hashCode: PropTypes.string,\n itemAccessor: PropTypes.func,\n onPageAdd: PropTypes.func,\n onPageDuplicate: PropTypes.func,\n onPageOrdersChange: PropTypes.func,\n onPageRemove: PropTypes.func,\n pages: PropTypes.arrayOf(\n PropTypes.shape({}),\n ),\n};\n\nSlidesPanel.defaultProps = {\n additionalPageItems: [],\n hashCode: '',\n itemAccessor: () => { },\n onPageAdd: () => { },\n onPageDuplicate: () => { },\n onPageOrdersChange: () => { },\n onPageRemove: () => { },\n pages: [],\n};\n\nexport default memo(SlidesPanel);\n"],"names":["SlidesPanel","additionalPageItems","hashCode","itemAccessor","onPageAdd","onPageDuplicate","onPageOrdersChange","onPageRemove","pages","useBuilderContext","isRightPanelOpen","isSlidesPanelOpen","setIsAllSlidesPanelOpen","setIsSlidesPanelOpen","usePropContext","acceptedItems","disableInteraction","onAnEventTrigger","reportSettings","settings","useExperimentalFeatures","useState","animationEnd","setAnimationEnd","pageGetter","useCallback","index","onPageSort","nativeEvent","ref","newIndex","oldIndex","instance","getWrappedInstance","list","sortablePageListRef","current","newPageOrders","arrayMove","reduce","acc","page","id","order","forceUpdate","panelAdditionalClassName","classNames","isIdle","otherOpened","onClosePanel","onAnimationEnd","useClickOutsideListener","useTranslatedTexts","SLIDES","_jsxs","_jsx","SortablePageList","FixedSizeList","length","propTypes","PropTypes","arrayOf","node","string","func","shape","defaultProps","memo"],"mappings":"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"}
@@ -60,8 +60,8 @@ var CustomToolbar = function CustomToolbar(_ref) {
60
60
  isOpened: isOpened
61
61
  }),
62
62
  style: {
63
- maxWidth: isOpened ? 'none' : '100%',
64
- minWidth: "".concat(itemWidth, "px")
63
+ maxWidth: isOpened ? 'none' : '100%' // minWidth: `${itemWidth}px`,
64
+
65
65
  },
66
66
  children: [/*#__PURE__*/jsxRuntime.jsx("select", {
67
67
  "aria-label": "Size",
@@ -1 +1 @@
1
- {"version":3,"file":"CustomToolbar.js","sources":["../../../../../src/components/TextEditor/CustomToolbar/CustomToolbar.js"],"sourcesContent":["import {\n useState, useCallback, useLayoutEffect, useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { fontSizes } from '../../../constants/fonts';\n\nconst SELECT_WIDTH = 70;\nconst BUTTON_WIDTH = 26;\nconst BAR_WIDTH = SELECT_WIDTH + (BUTTON_WIDTH * 8);\n\nconst CustomToolbar = ({ itemWidth }) => {\n const overflow = BAR_WIDTH > itemWidth;\n const [isOpened, setIsOpened] = useState(overflow ? false : true);\n const onClickMore = useCallback(() => setIsOpened(true), []);\n const wrapper = useRef();\n\n function getVisibleClass(limit) {\n return overflow && itemWidth < limit ? ' hiddenVisibility' : '';\n }\n\n useLayoutEffect(() => {\n if (!isOpened || wrapper.current === null) return;\n Array.from(wrapper.current.children).forEach(el => el.classList.remove('hiddenVisibility'));\n }, [isOpened]);\n\n return (\n <div\n ref={wrapper}\n className={classNames('toolbarWrapper p-absolute d-flex', { isOpened })}\n style={{\n maxWidth: isOpened ? 'none' : '100%',\n minWidth: `${itemWidth}px`,\n }}\n >\n <select\n aria-label=\"Size\"\n className=\"ql-size ql-select ql-textselect\"\n defaultValue=\"16px\"\n onChange={e => e.persist()}\n >\n {fontSizes.map(size => (\n <option\n key={size}\n value={`${size}px`}\n >\n {size}\n px\n </option>\n ))}\n </select>\n <div className=\"ql-divider\" />\n <button\n aria-label=\"Bold\"\n className={`ql-bold ql-button${getVisibleClass(SELECT_WIDTH + BUTTON_WIDTH)}`}\n type=\"button\"\n />\n <button\n aria-label=\"Italic\"\n className={`ql-italic ql-button${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 2))}`}\n type=\"button\"\n />\n <button\n aria-label=\"Underline\"\n className={`ql-underline ql-button${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 3))}`}\n type=\"button\"\n />\n <select\n aria-label=\"Text Color\"\n className={`ql-color ql-select${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 4))}`}\n defaultValue=\"\"\n onChange={e => e.persist()}\n />\n <div className=\"ql-divider\" />\n <select\n aria-label=\"Alignment\"\n className={`ql-align ql-select${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 5))}`}\n defaultValue=\"\"\n onChange={e => e.persist()}\n />\n <button\n aria-label=\"Ordered List\"\n className={`ql-list ql-button${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 6))}`}\n type=\"button\"\n value=\"ordered\"\n />\n <button\n aria-label=\"Bullet List\"\n className={`ql-list ql-button${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 7))}`}\n type=\"button\"\n value=\"bullet\"\n />\n <button\n aria-label=\"Link\"\n className={`ql-link ql-button${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 8))}`}\n type=\"button\"\n />\n {overflow && !isOpened && (\n <button\n aria-label=\"More Options\"\n className=\"qlMore\"\n onClick={onClickMore}\n type=\"button\"\n >\n &gt;&gt;\n </button>\n )}\n </div>\n );\n};\n\nCustomToolbar.propTypes = {\n itemWidth: PropTypes.number,\n};\n\nCustomToolbar.defaultProps = {\n itemWidth: 0,\n};\n\nexport default CustomToolbar;\n"],"names":["SELECT_WIDTH","BUTTON_WIDTH","BAR_WIDTH","CustomToolbar","itemWidth","overflow","useState","isOpened","setIsOpened","onClickMore","useCallback","wrapper","useRef","getVisibleClass","limit","useLayoutEffect","current","Array","from","children","forEach","el","classList","remove","_jsxs","classNames","maxWidth","minWidth","_jsx","e","persist","fontSizes","map","size","propTypes","PropTypes","number","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"CustomToolbar.js","sources":["../../../../../src/components/TextEditor/CustomToolbar/CustomToolbar.js"],"sourcesContent":["import {\n useState, useCallback, useLayoutEffect, useRef,\n} from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { fontSizes } from '../../../constants/fonts';\n\nconst SELECT_WIDTH = 70;\nconst BUTTON_WIDTH = 26;\nconst BAR_WIDTH = SELECT_WIDTH + (BUTTON_WIDTH * 8);\n\nconst CustomToolbar = ({ itemWidth }) => {\n const overflow = BAR_WIDTH > itemWidth;\n const [isOpened, setIsOpened] = useState(overflow ? false : true);\n const onClickMore = useCallback(() => setIsOpened(true), []);\n const wrapper = useRef();\n\n function getVisibleClass(limit) {\n return overflow && itemWidth < limit ? ' hiddenVisibility' : '';\n }\n\n useLayoutEffect(() => {\n if (!isOpened || wrapper.current === null) return;\n Array.from(wrapper.current.children).forEach(el => el.classList.remove('hiddenVisibility'));\n }, [isOpened]);\n\n return (\n <div\n ref={wrapper}\n className={classNames('toolbarWrapper p-absolute d-flex', { isOpened })}\n style={{\n maxWidth: isOpened ? 'none' : '100%',\n // minWidth: `${itemWidth}px`,\n }}\n >\n <select\n aria-label=\"Size\"\n className=\"ql-size ql-select ql-textselect\"\n defaultValue=\"16px\"\n onChange={e => e.persist()}\n >\n {fontSizes.map(size => (\n <option\n key={size}\n value={`${size}px`}\n >\n {size}\n px\n </option>\n ))}\n </select>\n <div className=\"ql-divider\" />\n <button\n aria-label=\"Bold\"\n className={`ql-bold ql-button${getVisibleClass(SELECT_WIDTH + BUTTON_WIDTH)}`}\n type=\"button\"\n />\n <button\n aria-label=\"Italic\"\n className={`ql-italic ql-button${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 2))}`}\n type=\"button\"\n />\n <button\n aria-label=\"Underline\"\n className={`ql-underline ql-button${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 3))}`}\n type=\"button\"\n />\n <select\n aria-label=\"Text Color\"\n className={`ql-color ql-select${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 4))}`}\n defaultValue=\"\"\n onChange={e => e.persist()}\n />\n <div className=\"ql-divider\" />\n <select\n aria-label=\"Alignment\"\n className={`ql-align ql-select${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 5))}`}\n defaultValue=\"\"\n onChange={e => e.persist()}\n />\n <button\n aria-label=\"Ordered List\"\n className={`ql-list ql-button${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 6))}`}\n type=\"button\"\n value=\"ordered\"\n />\n <button\n aria-label=\"Bullet List\"\n className={`ql-list ql-button${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 7))}`}\n type=\"button\"\n value=\"bullet\"\n />\n <button\n aria-label=\"Link\"\n className={`ql-link ql-button${getVisibleClass(SELECT_WIDTH + (BUTTON_WIDTH * 8))}`}\n type=\"button\"\n />\n {overflow && !isOpened && (\n <button\n aria-label=\"More Options\"\n className=\"qlMore\"\n onClick={onClickMore}\n type=\"button\"\n >\n &gt;&gt;\n </button>\n )}\n </div>\n );\n};\n\nCustomToolbar.propTypes = {\n itemWidth: PropTypes.number,\n};\n\nCustomToolbar.defaultProps = {\n itemWidth: 0,\n};\n\nexport default CustomToolbar;\n"],"names":["SELECT_WIDTH","BUTTON_WIDTH","BAR_WIDTH","CustomToolbar","itemWidth","overflow","useState","isOpened","setIsOpened","onClickMore","useCallback","wrapper","useRef","getVisibleClass","limit","useLayoutEffect","current","Array","from","children","forEach","el","classList","remove","_jsxs","classNames","maxWidth","_jsx","e","persist","fontSizes","map","size","propTypes","PropTypes","number","defaultProps"],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  require('core-js/modules/es.array.map.js');
4
4
  var React = require('react');
5
5
  var ReactQuill = require('react-quill');
6
+ var domPurify = require('dompurify');
6
7
  var PropTypes = require('prop-types');
7
8
  var textEditorConstants = require('./textEditorConstants.js');
8
9
  var fonts = require('../../constants/fonts.js');
@@ -13,6 +14,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
13
14
 
14
15
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
15
16
  var ReactQuill__default = /*#__PURE__*/_interopDefaultLegacy(ReactQuill);
17
+ var domPurify__default = /*#__PURE__*/_interopDefaultLegacy(domPurify);
16
18
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
17
19
 
18
20
  function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
@@ -73,6 +75,11 @@ var QuillEditor = /*#__PURE__*/function (_React$PureComponent) {
73
75
  }
74
76
  });
75
77
 
78
+ _defineProperty(_assertThisInitialized(_this), "handleSetContent", function (value) {
79
+ var setContent = _this.props.setContent;
80
+ setContent(domPurify__default['default'].sanitize(value));
81
+ });
82
+
76
83
  _this.quill = /*#__PURE__*/React__default['default'].createRef();
77
84
  return _this;
78
85
  }
@@ -96,8 +103,7 @@ var QuillEditor = /*#__PURE__*/function (_React$PureComponent) {
96
103
  value: function render() {
97
104
  var _this$props2 = this.props,
98
105
  content = _this$props2.content,
99
- placeholder = _this$props2.placeholder,
100
- setContent = _this$props2.setContent;
106
+ placeholder = _this$props2.placeholder;
101
107
  return /*#__PURE__*/jsxRuntime.jsx("div", {
102
108
  className: "f-all",
103
109
  onKeyDown: this.handleKeyDown,
@@ -105,7 +111,7 @@ var QuillEditor = /*#__PURE__*/function (_React$PureComponent) {
105
111
  ref: this.quill,
106
112
  formats: QuillEditor.formats,
107
113
  modules: QuillEditor.modules,
108
- onChange: setContent,
114
+ onChange: this.handleSetContent,
109
115
  placeholder: placeholder,
110
116
  preserveWhitespace: true,
111
117
  value: content
@@ -1 +1 @@
1
- {"version":3,"file":"QuillEditor.js","sources":["../../../../src/components/TextEditor/QuillEditor.js"],"sourcesContent":["import React from 'react';\nimport ReactQuill from 'react-quill';\nimport PropTypes from 'prop-types';\nimport { formats, modules } from './textEditorConstants';\nimport { fontSizes } from '../../constants/fonts';\nimport 'react-quill/dist/quill.snow.css';\n\nconst Size = ReactQuill.Quill.import('attributors/style/size');\nSize.whitelist = fontSizes.map(s => `${s}px`);\nReactQuill.Quill.register(Size, true);\n\nclass QuillEditor extends React.PureComponent {\n constructor(props) {\n super(props);\n\n this.quill = React.createRef();\n }\n\n componentDidMount() {\n if (this.quill.current !== null) {\n const { content } = this.props;\n const editor = this.quill.current.getEditor();\n editor.setSelection(0, content.length);\n }\n }\n\n componentWillUnmount() {\n this.saveAndQuit();\n }\n\n saveAndQuit = () => {\n const { content, handleSave, setIsTextEditorOpen } = this.props;\n setIsTextEditorOpen(false);\n handleSave(content);\n }\n\n handleKeyDown = e => {\n e.stopPropagation();\n if (e.keyCode === 27) {\n this.saveAndQuit();\n }\n }\n\n render() {\n const {\n content,\n placeholder,\n setContent,\n } = this.props;\n\n return (\n <div\n className=\"f-all\"\n onKeyDown={this.handleKeyDown}\n >\n <ReactQuill\n ref={this.quill}\n formats={QuillEditor.formats}\n modules={QuillEditor.modules}\n onChange={setContent}\n placeholder={placeholder}\n preserveWhitespace\n value={content}\n />\n </div>\n );\n }\n}\n\nQuillEditor.modules = modules;\nQuillEditor.formats = formats;\n\nQuillEditor.propTypes = {\n content: PropTypes.string,\n handleSave: PropTypes.func,\n placeholder: PropTypes.string,\n setContent: PropTypes.func,\n setIsTextEditorOpen: PropTypes.func,\n};\n\nQuillEditor.defaultProps = {\n content: '',\n handleSave: () => {},\n placeholder: 'Click to edit text',\n setContent: () => {},\n setIsTextEditorOpen: () => {},\n};\n\nexport default QuillEditor;\n"],"names":["Size","ReactQuill","Quill","import","whitelist","fontSizes","map","s","register","QuillEditor","props","content","handleSave","setIsTextEditorOpen","e","stopPropagation","keyCode","saveAndQuit","quill","React","createRef","current","editor","getEditor","setSelection","length","placeholder","setContent","_jsx","handleKeyDown","formats","modules","PureComponent","propTypes","PropTypes","string","func","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"QuillEditor.js","sources":["../../../../src/components/TextEditor/QuillEditor.js"],"sourcesContent":["import React from 'react';\nimport ReactQuill from 'react-quill';\nimport domPurify from 'dompurify';\nimport PropTypes from 'prop-types';\nimport { formats, modules } from './textEditorConstants';\nimport { fontSizes } from '../../constants/fonts';\nimport 'react-quill/dist/quill.snow.css';\n\nconst Size = ReactQuill.Quill.import('attributors/style/size');\nSize.whitelist = fontSizes.map(s => `${s}px`);\nReactQuill.Quill.register(Size, true);\n\nclass QuillEditor extends React.PureComponent {\n constructor(props) {\n super(props);\n\n this.quill = React.createRef();\n }\n\n componentDidMount() {\n if (this.quill.current !== null) {\n const { content } = this.props;\n const editor = this.quill.current.getEditor();\n editor.setSelection(0, content.length);\n }\n }\n\n componentWillUnmount() {\n this.saveAndQuit();\n }\n\n saveAndQuit = () => {\n const { content, handleSave, setIsTextEditorOpen } = this.props;\n setIsTextEditorOpen(false);\n handleSave(content);\n }\n\n handleKeyDown = e => {\n e.stopPropagation();\n if (e.keyCode === 27) {\n this.saveAndQuit();\n }\n }\n\n handleSetContent = value => {\n const { setContent } = this.props;\n setContent(domPurify.sanitize(value));\n }\n\n render() {\n const { content, placeholder } = this.props;\n\n return (\n <div\n className=\"f-all\"\n onKeyDown={this.handleKeyDown}\n >\n <ReactQuill\n ref={this.quill}\n formats={QuillEditor.formats}\n modules={QuillEditor.modules}\n onChange={this.handleSetContent}\n placeholder={placeholder}\n preserveWhitespace\n value={content}\n />\n </div>\n );\n }\n}\n\nQuillEditor.modules = modules;\nQuillEditor.formats = formats;\n\nQuillEditor.propTypes = {\n content: PropTypes.string,\n handleSave: PropTypes.func,\n placeholder: PropTypes.string,\n setContent: PropTypes.func,\n setIsTextEditorOpen: PropTypes.func,\n};\n\nQuillEditor.defaultProps = {\n content: '',\n handleSave: () => {},\n placeholder: 'Click to edit text',\n setContent: () => {},\n setIsTextEditorOpen: () => {},\n};\n\nexport default QuillEditor;\n"],"names":["Size","ReactQuill","Quill","import","whitelist","fontSizes","map","s","register","QuillEditor","props","content","handleSave","setIsTextEditorOpen","e","stopPropagation","keyCode","saveAndQuit","value","setContent","domPurify","sanitize","quill","React","createRef","current","editor","getEditor","setSelection","length","placeholder","_jsx","handleKeyDown","formats","modules","handleSetContent","PureComponent","propTypes","PropTypes","string","func","defaultProps"],"mappings":"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"}
@@ -31,7 +31,7 @@ var TextEditor = function TextEditor(_ref) {
31
31
  isSelected = _ref.isSelected,
32
32
  placeholder = _ref.placeholder;
33
33
 
34
- var _useState = React.useState(content),
34
+ var _useState = React.useState(domPurify__default['default'].sanitize(content)),
35
35
  _useState2 = _slicedToArray(_useState, 2),
36
36
  _content = _useState2[0],
37
37
  setContent = _useState2[1];
@@ -47,7 +47,7 @@ var TextEditor = function TextEditor(_ref) {
47
47
  }, [isSelected, isLocked]);
48
48
  var isNotEmpty = React.useMemo(function () {
49
49
  var el = document.createElement('div');
50
- el.innerHTML = domPurify__default['default'].sanitize(_content);
50
+ el.innerHTML = _content;
51
51
  return !!el.innerText;
52
52
  }, [_content]);
53
53
  return isSelected && isTextEditorOpen ? /*#__PURE__*/jsxRuntime.jsx(QuillEditor, {
@@ -1 +1 @@
1
- {"version":3,"file":"TextEditor.js","sources":["../../../../src/components/TextEditor/TextEditor.js"],"sourcesContent":["import { useCallback, useMemo, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport domPurify from 'dompurify';\nimport QuillEditor from './QuillEditor';\nimport { useBuilderContext } from '../../utils/builderContext';\n\nconst TextEditor = ({\n content,\n handleSave,\n isLocked,\n isSelected,\n placeholder,\n}) => {\n const [_content, setContent] = useState(content);\n\n const { isTextEditorOpen, setIsTextEditorOpen } = useBuilderContext();\n\n const onClick = useCallback(() => {\n if (isSelected && !isLocked) {\n setIsTextEditorOpen(true);\n }\n }, [isSelected, isLocked]);\n\n const isNotEmpty = useMemo(() => {\n const el = document.createElement('div');\n el.innerHTML = domPurify.sanitize(_content);\n return !!el.innerText;\n }, [_content]);\n\n return isSelected && isTextEditorOpen ? (\n <QuillEditor\n content={_content}\n handleSave={handleSave}\n placeholder={placeholder}\n setContent={setContent}\n setIsTextEditorOpen={setIsTextEditorOpen}\n />\n ) : (\n <div\n className={`f-all ql-editor${isNotEmpty ? '' : ' isEmptyTextElement'}`}\n dangerouslySetInnerHTML={{\n __html: isNotEmpty ? _content : placeholder,\n }}\n onClick={onClick}\n onKeyDown={() => {}}\n />\n );\n};\n\nTextEditor.propTypes = {\n content: PropTypes.string,\n handleSave: PropTypes.func,\n isLocked: PropTypes.bool,\n isSelected: PropTypes.bool,\n placeholder: PropTypes.string,\n};\n\nTextEditor.defaultProps = {\n content: '',\n handleSave: () => {},\n isLocked: false,\n isSelected: false,\n placeholder: 'Click to edit text',\n};\n\nexport default TextEditor;\n"],"names":["TextEditor","content","handleSave","isLocked","isSelected","placeholder","useState","_content","setContent","useBuilderContext","isTextEditorOpen","setIsTextEditorOpen","onClick","useCallback","isNotEmpty","useMemo","el","document","createElement","innerHTML","domPurify","sanitize","innerText","_jsx","__html","propTypes","PropTypes","string","func","bool","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;IAMMA,UAAU,GAAG,SAAbA,UAAa,OAMb;AAAA,MALJC,OAKI,QALJA,OAKI;AAAA,MAJJC,UAII,QAJJA,UAII;AAAA,MAHJC,QAGI,QAHJA,QAGI;AAAA,MAFJC,UAEI,QAFJA,UAEI;AAAA,MADJC,WACI,QADJA,WACI;;AACJ,kBAA+BC,cAAQ,CAACL,OAAD,CAAvC;AAAA;AAAA,MAAOM,QAAP;AAAA,MAAiBC,UAAjB;;AAEA,2BAAkDC,gCAAiB,EAAnE;AAAA,MAAQC,gBAAR,sBAAQA,gBAAR;AAAA,MAA0BC,mBAA1B,sBAA0BA,mBAA1B;;AAEA,MAAMC,OAAO,GAAGC,iBAAW,CAAC,YAAM;AAChC,QAAIT,UAAU,IAAI,CAACD,QAAnB,EAA6B;AAC3BQ,MAAAA,mBAAmB,CAAC,IAAD,CAAnB;AACD;AACF,GAJ0B,EAIxB,CAACP,UAAD,EAAaD,QAAb,CAJwB,CAA3B;AAMA,MAAMW,UAAU,GAAGC,aAAO,CAAC,YAAM;AAC/B,QAAMC,EAAE,GAAGC,QAAQ,CAACC,aAAT,CAAuB,KAAvB,CAAX;AACAF,IAAAA,EAAE,CAACG,SAAH,GAAeC,6BAAS,CAACC,QAAV,CAAmBd,QAAnB,CAAf;AACA,WAAO,CAAC,CAACS,EAAE,CAACM,SAAZ;AACD,GAJyB,EAIvB,CAACf,QAAD,CAJuB,CAA1B;AAMA,SAAOH,UAAU,IAAIM,gBAAd,gBACLa,eAAC,WAAD;AACE,IAAA,OAAO,EAAEhB,QADX;AAEE,IAAA,UAAU,EAAEL,UAFd;AAGE,IAAA,WAAW,EAAEG,WAHf;AAIE,IAAA,UAAU,EAAEG,UAJd;AAKE,IAAA,mBAAmB,EAAEG;AALvB,IADK,gBASLY;AACE,IAAA,SAAS,2BAAoBT,UAAU,GAAG,EAAH,GAAQ,qBAAtC,CADX;AAEE,IAAA,uBAAuB,EAAE;AACvBU,MAAAA,MAAM,EAAEV,UAAU,GAAGP,QAAH,GAAcF;AADT,KAF3B;AAKE,IAAA,OAAO,EAAEO,OALX;AAME,IAAA,SAAS,EAAE,qBAAM;AANnB,IATF;AAkBD;;AAEDZ,UAAU,CAACyB,SAAX,GAAuB;AACrBxB,EAAAA,OAAO,EAAEyB,6BAAS,CAACC,MADE;AAErBzB,EAAAA,UAAU,EAAEwB,6BAAS,CAACE,IAFD;AAGrBzB,EAAAA,QAAQ,EAAEuB,6BAAS,CAACG,IAHC;AAIrBzB,EAAAA,UAAU,EAAEsB,6BAAS,CAACG,IAJD;AAKrBxB,EAAAA,WAAW,EAAEqB,6BAAS,CAACC;AALF,CAAvB;AAQA3B,UAAU,CAAC8B,YAAX,GAA0B;AACxB7B,EAAAA,OAAO,EAAE,EADe;AAExBC,EAAAA,UAAU,EAAE,sBAAM,EAFM;AAGxBC,EAAAA,QAAQ,EAAE,KAHc;AAIxBC,EAAAA,UAAU,EAAE,KAJY;AAKxBC,EAAAA,WAAW,EAAE;AALW,CAA1B;;;;"}
1
+ {"version":3,"file":"TextEditor.js","sources":["../../../../src/components/TextEditor/TextEditor.js"],"sourcesContent":["import { useCallback, useMemo, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport domPurify from 'dompurify';\nimport QuillEditor from './QuillEditor';\nimport { useBuilderContext } from '../../utils/builderContext';\n\nconst TextEditor = ({\n content,\n handleSave,\n isLocked,\n isSelected,\n placeholder,\n}) => {\n const [_content, setContent] = useState(domPurify.sanitize(content));\n\n const { isTextEditorOpen, setIsTextEditorOpen } = useBuilderContext();\n\n const onClick = useCallback(() => {\n if (isSelected && !isLocked) {\n setIsTextEditorOpen(true);\n }\n }, [isSelected, isLocked]);\n\n const isNotEmpty = useMemo(() => {\n const el = document.createElement('div');\n el.innerHTML = _content;\n return !!el.innerText;\n }, [_content]);\n\n return isSelected && isTextEditorOpen ? (\n <QuillEditor\n content={_content}\n handleSave={handleSave}\n placeholder={placeholder}\n setContent={setContent}\n setIsTextEditorOpen={setIsTextEditorOpen}\n />\n ) : (\n <div\n className={`f-all ql-editor${isNotEmpty ? '' : ' isEmptyTextElement'}`}\n dangerouslySetInnerHTML={{\n __html: isNotEmpty ? _content : placeholder,\n }}\n onClick={onClick}\n onKeyDown={() => {}}\n />\n );\n};\n\nTextEditor.propTypes = {\n content: PropTypes.string,\n handleSave: PropTypes.func,\n isLocked: PropTypes.bool,\n isSelected: PropTypes.bool,\n placeholder: PropTypes.string,\n};\n\nTextEditor.defaultProps = {\n content: '',\n handleSave: () => {},\n isLocked: false,\n isSelected: false,\n placeholder: 'Click to edit text',\n};\n\nexport default TextEditor;\n"],"names":["TextEditor","content","handleSave","isLocked","isSelected","placeholder","useState","domPurify","sanitize","_content","setContent","useBuilderContext","isTextEditorOpen","setIsTextEditorOpen","onClick","useCallback","isNotEmpty","useMemo","el","document","createElement","innerHTML","innerText","_jsx","__html","propTypes","PropTypes","string","func","bool","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;IAMMA,UAAU,GAAG,SAAbA,UAAa,OAMb;AAAA,MALJC,OAKI,QALJA,OAKI;AAAA,MAJJC,UAII,QAJJA,UAII;AAAA,MAHJC,QAGI,QAHJA,QAGI;AAAA,MAFJC,UAEI,QAFJA,UAEI;AAAA,MADJC,WACI,QADJA,WACI;;AACJ,kBAA+BC,cAAQ,CAACC,6BAAS,CAACC,QAAV,CAAmBP,OAAnB,CAAD,CAAvC;AAAA;AAAA,MAAOQ,QAAP;AAAA,MAAiBC,UAAjB;;AAEA,2BAAkDC,gCAAiB,EAAnE;AAAA,MAAQC,gBAAR,sBAAQA,gBAAR;AAAA,MAA0BC,mBAA1B,sBAA0BA,mBAA1B;;AAEA,MAAMC,OAAO,GAAGC,iBAAW,CAAC,YAAM;AAChC,QAAIX,UAAU,IAAI,CAACD,QAAnB,EAA6B;AAC3BU,MAAAA,mBAAmB,CAAC,IAAD,CAAnB;AACD;AACF,GAJ0B,EAIxB,CAACT,UAAD,EAAaD,QAAb,CAJwB,CAA3B;AAMA,MAAMa,UAAU,GAAGC,aAAO,CAAC,YAAM;AAC/B,QAAMC,EAAE,GAAGC,QAAQ,CAACC,aAAT,CAAuB,KAAvB,CAAX;AACAF,IAAAA,EAAE,CAACG,SAAH,GAAeZ,QAAf;AACA,WAAO,CAAC,CAACS,EAAE,CAACI,SAAZ;AACD,GAJyB,EAIvB,CAACb,QAAD,CAJuB,CAA1B;AAMA,SAAOL,UAAU,IAAIQ,gBAAd,gBACLW,eAAC,WAAD;AACE,IAAA,OAAO,EAAEd,QADX;AAEE,IAAA,UAAU,EAAEP,UAFd;AAGE,IAAA,WAAW,EAAEG,WAHf;AAIE,IAAA,UAAU,EAAEK,UAJd;AAKE,IAAA,mBAAmB,EAAEG;AALvB,IADK,gBASLU;AACE,IAAA,SAAS,2BAAoBP,UAAU,GAAG,EAAH,GAAQ,qBAAtC,CADX;AAEE,IAAA,uBAAuB,EAAE;AACvBQ,MAAAA,MAAM,EAAER,UAAU,GAAGP,QAAH,GAAcJ;AADT,KAF3B;AAKE,IAAA,OAAO,EAAES,OALX;AAME,IAAA,SAAS,EAAE,qBAAM;AANnB,IATF;AAkBD;;AAEDd,UAAU,CAACyB,SAAX,GAAuB;AACrBxB,EAAAA,OAAO,EAAEyB,6BAAS,CAACC,MADE;AAErBzB,EAAAA,UAAU,EAAEwB,6BAAS,CAACE,IAFD;AAGrBzB,EAAAA,QAAQ,EAAEuB,6BAAS,CAACG,IAHC;AAIrBzB,EAAAA,UAAU,EAAEsB,6BAAS,CAACG,IAJD;AAKrBxB,EAAAA,WAAW,EAAEqB,6BAAS,CAACC;AALF,CAAvB;AAQA3B,UAAU,CAAC8B,YAAX,GAA0B;AACxB7B,EAAAA,OAAO,EAAE,EADe;AAExBC,EAAAA,UAAU,EAAE,sBAAM,EAFM;AAGxBC,EAAAA,QAAQ,EAAE,KAHc;AAIxBC,EAAAA,UAAU,EAAE,KAJY;AAKxBC,EAAAA,WAAW,EAAE;AALW,CAA1B;;;;"}
@@ -388,7 +388,7 @@
388
388
  }
389
389
 
390
390
  .forSlides .paneToggler {
391
- background-color: #404651;
391
+ background-color: #343C6A;
392
392
  }
393
393
 
394
394
 
@@ -291,7 +291,7 @@
291
291
  }
292
292
 
293
293
  .forSlides .paneToggler {
294
- background-color: #2E354A;
294
+ background-color: #343C6A;
295
295
  }
296
296
 
297
297