@pie-lib/editable-html-tip-tap 1.0.20 → 1.0.21-next.6053

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 (101) hide show
  1. package/CHANGELOG.md +7 -73
  2. package/LICENSE.md +5 -0
  3. package/NEXT.CHANGELOG.json +1 -0
  4. package/lib/components/CharacterPicker.js +20 -60
  5. package/lib/components/CharacterPicker.js.map +1 -1
  6. package/lib/components/EditableHtml.js +50 -121
  7. package/lib/components/EditableHtml.js.map +1 -1
  8. package/lib/components/MenuBar.js +96 -128
  9. package/lib/components/MenuBar.js.map +1 -1
  10. package/lib/components/TiptapContainer.js +162 -45
  11. package/lib/components/TiptapContainer.js.map +1 -1
  12. package/lib/components/characters/characterUtils.js +4 -7
  13. package/lib/components/characters/characterUtils.js.map +1 -1
  14. package/lib/components/characters/custom-popper.js +22 -51
  15. package/lib/components/characters/custom-popper.js.map +1 -1
  16. package/lib/components/common/done-button.js +17 -36
  17. package/lib/components/common/done-button.js.map +1 -1
  18. package/lib/components/common/toolbar-buttons.js +57 -107
  19. package/lib/components/common/toolbar-buttons.js.map +1 -1
  20. package/lib/components/icons/CssIcon.js +14 -26
  21. package/lib/components/icons/CssIcon.js.map +1 -1
  22. package/lib/components/icons/RespArea.js +23 -46
  23. package/lib/components/icons/RespArea.js.map +1 -1
  24. package/lib/components/icons/TableIcons.js +20 -36
  25. package/lib/components/icons/TableIcons.js.map +1 -1
  26. package/lib/components/icons/TextAlign.js +16 -53
  27. package/lib/components/icons/TextAlign.js.map +1 -1
  28. package/lib/components/image/AltDialog.js +18 -49
  29. package/lib/components/image/AltDialog.js.map +1 -1
  30. package/lib/components/image/ImageToolbar.js +50 -90
  31. package/lib/components/image/ImageToolbar.js.map +1 -1
  32. package/lib/components/image/InsertImageHandler.js +17 -35
  33. package/lib/components/image/InsertImageHandler.js.map +1 -1
  34. package/lib/components/media/MediaDialog.js +195 -309
  35. package/lib/components/media/MediaDialog.js.map +1 -1
  36. package/lib/components/media/MediaToolbar.js +39 -66
  37. package/lib/components/media/MediaToolbar.js.map +1 -1
  38. package/lib/components/media/MediaWrapper.js +30 -56
  39. package/lib/components/media/MediaWrapper.js.map +1 -1
  40. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js +21 -36
  41. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +1 -1
  42. package/lib/components/respArea/DragInTheBlank/choice.js +215 -262
  43. package/lib/components/respArea/DragInTheBlank/choice.js.map +1 -1
  44. package/lib/components/respArea/ExplicitConstructedResponse.js +11 -33
  45. package/lib/components/respArea/ExplicitConstructedResponse.js.map +1 -1
  46. package/lib/components/respArea/InlineDropdown.js +19 -41
  47. package/lib/components/respArea/InlineDropdown.js.map +1 -1
  48. package/lib/components/respArea/ToolbarIcon.js +21 -45
  49. package/lib/components/respArea/ToolbarIcon.js.map +1 -1
  50. package/lib/constants.js +3 -5
  51. package/lib/constants.js.map +1 -1
  52. package/lib/extensions/component.js +94 -148
  53. package/lib/extensions/component.js.map +1 -1
  54. package/lib/extensions/css.js +9 -44
  55. package/lib/extensions/css.js.map +1 -1
  56. package/lib/extensions/custom-toolbar-wrapper.js +66 -94
  57. package/lib/extensions/custom-toolbar-wrapper.js.map +1 -1
  58. package/lib/extensions/extended-table.js +2 -6
  59. package/lib/extensions/extended-table.js.map +1 -1
  60. package/lib/extensions/image.js +4 -17
  61. package/lib/extensions/image.js.map +1 -1
  62. package/lib/extensions/index.js +11 -21
  63. package/lib/extensions/index.js.map +1 -1
  64. package/lib/extensions/math.js +45 -96
  65. package/lib/extensions/math.js.map +1 -1
  66. package/lib/extensions/media.js +21 -59
  67. package/lib/extensions/media.js.map +1 -1
  68. package/lib/extensions/responseArea.js +43 -89
  69. package/lib/extensions/responseArea.js.map +1 -1
  70. package/lib/index.js +3 -11
  71. package/lib/index.js.map +1 -1
  72. package/lib/styles/editorContainerStyles.js +2 -7
  73. package/lib/styles/editorContainerStyles.js.map +1 -1
  74. package/lib/theme.js +2 -3
  75. package/lib/theme.js.map +1 -1
  76. package/lib/utils/size.js +2 -10
  77. package/lib/utils/size.js.map +1 -1
  78. package/package.json +15 -13
  79. package/src/components/EditableHtml.jsx +21 -33
  80. package/src/components/MenuBar.jsx +66 -37
  81. package/src/components/TiptapContainer.jsx +133 -34
  82. package/src/components/characters/custom-popper.js +18 -28
  83. package/src/components/common/done-button.jsx +15 -26
  84. package/src/components/common/toolbar-buttons.jsx +28 -44
  85. package/src/components/icons/CssIcon.jsx +11 -13
  86. package/src/components/icons/RespArea.jsx +16 -16
  87. package/src/components/icons/TableIcons.jsx +15 -16
  88. package/src/components/icons/TextAlign.jsx +3 -3
  89. package/src/components/image/AltDialog.jsx +6 -6
  90. package/src/components/image/ImageToolbar.jsx +28 -29
  91. package/src/components/media/MediaDialog.js +61 -78
  92. package/src/components/media/MediaToolbar.jsx +30 -37
  93. package/src/components/media/MediaWrapper.jsx +12 -16
  94. package/src/components/respArea/DragInTheBlank/DragInTheBlank.jsx +5 -4
  95. package/src/components/respArea/DragInTheBlank/choice.jsx +191 -185
  96. package/src/components/respArea/ToolbarIcon.jsx +13 -15
  97. package/src/extensions/component.jsx +61 -89
  98. package/src/extensions/css.js +6 -5
  99. package/src/extensions/custom-toolbar-wrapper.jsx +61 -81
  100. package/lib/__tests__/utils.js +0 -106
  101. package/src/__tests__/utils.js +0 -36
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/styles/editorContainerStyles.js"],"names":["styles","theme","root","position","padding","border","borderRadius","cursor","wordBreak","overflow","maxHeight","marginTop","margin","marginBottom","lineHeight","textWrap","fontSize","backgroundColor","color","background","fontFamily","borderLeft","paddingLeft","borderTop","tableLayout","width","borderCollapse","text","textAlign","children","editorHolder","overflowY","disabledScrollbar","display","scrollbarWidth","error","palette","main","noBorder","noPadding","toolbarOnTop"],"mappings":"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","sourcesContent":["import { color } from '@pie-lib/render-ui';\nimport { primary } from '../theme';\n\nconst styles = (theme) => ({\n root: {\n position: 'relative',\n padding: '0px',\n border: '1px solid #ccc',\n borderRadius: '4px',\n cursor: 'text',\n '& [data-slate-editor=\"true\"]': {\n wordBreak: 'break-word',\n overflow: 'visible',\n maxHeight: '500px',\n // needed in order to be able to put the focus before a void element when it is the first one in the editor\n padding: '5px',\n },\n\n '&:first-child': {\n marginTop: 0,\n },\n\n '& ul, & ol': {\n padding: '0 1rem',\n margin: '1.25rem 1rem 1.25rem 0.4rem',\n },\n\n '& ul li p, & ol li p': {\n marginTop: '0.25em',\n marginBottom: '0.25em',\n },\n\n '& h1, & h2, & h3, & h4, & h5, & h6': {\n lineHeight: 1.1,\n marginTop: '2.5rem',\n textWrap: 'pretty',\n },\n\n '& h1, & h2': {\n marginTop: '3.5rem',\n marginBottom: '1.5rem',\n },\n\n '& h1': {\n fontSize: '1.4rem',\n },\n\n '& h2': {\n fontSize: '1.2rem',\n },\n\n '& h3': {\n fontSize: '1.1rem',\n },\n\n '& h4, & h5, & h6': {\n fontSize: '1rem',\n },\n\n '& code': {\n backgroundColor: 'var(--purple-light)',\n borderRadius: '0.4rem',\n color: 'var(--black)',\n fontSize: '0.85rem',\n padding: '0.25em 0.3em',\n },\n\n '& pre': {\n background: 'var(--black)',\n borderRadius: '0.5rem',\n color: 'var(--white)',\n fontFamily: \"'JetBrainsMono', monospace\",\n margin: '1.5rem 0',\n padding: '0.75rem 1rem',\n\n '& code': {\n background: 'none',\n color: 'inherit',\n fontSize: '0.8rem',\n padding: 0,\n },\n },\n\n '& blockquote': {\n borderLeft: '3px solid var(--gray-3)',\n margin: '1.5rem 0',\n paddingLeft: '1rem',\n },\n\n '& hr': {\n border: 'none',\n borderTop: '1px solid var(--gray-2)',\n margin: '2rem 0',\n },\n\n '& table': {\n tableLayout: 'fixed',\n width: '100%',\n borderCollapse: 'collapse',\n color: color.text(),\n backgroundColor: color.background(),\n },\n '& table:not([border=\"1\"]) tr': {\n borderTop: '1px solid #dfe2e5',\n },\n '& td, th': {\n padding: '.6em 1em',\n textAlign: 'center',\n },\n '& table:not([border=\"1\"]) td, th': {\n border: '1px solid #dfe2e5',\n },\n },\n children: {\n padding: '10px 16px',\n },\n editorHolder: {\n position: 'relative',\n padding: '0px',\n overflowY: 'auto',\n color: color.text(),\n backgroundColor: color.background(),\n },\n disabledScrollbar: {\n '&::-webkit-scrollbar': {\n display: 'none',\n },\n scrollbarWidth: 'none',\n '-ms-overflow-style': 'none',\n },\n error: {\n border: `2px solid ${theme.palette.error.main} !important`,\n },\n noBorder: {\n border: 'none',\n },\n noPadding: {\n padding: 0,\n },\n toolbarOnTop: {\n marginTop: '45px',\n },\n});\n\nexport default styles;\n"],"file":"editorContainerStyles.js"}
1
+ {"version":3,"file":"editorContainerStyles.js","names":["_renderUi","require","_theme","styles","theme","root","position","padding","border","borderRadius","cursor","wordBreak","overflow","maxHeight","marginTop","margin","marginBottom","lineHeight","textWrap","fontSize","backgroundColor","color","background","fontFamily","borderLeft","paddingLeft","borderTop","tableLayout","width","borderCollapse","text","textAlign","children","editorHolder","overflowY","disabledScrollbar","display","scrollbarWidth","error","concat","palette","main","noBorder","noPadding","toolbarOnTop","_default","exports"],"sources":["../../src/styles/editorContainerStyles.js"],"sourcesContent":["import { color } from '@pie-lib/render-ui';\nimport { primary } from '../theme';\n\nconst styles = (theme) => ({\n root: {\n position: 'relative',\n padding: '0px',\n border: '1px solid #ccc',\n borderRadius: '4px',\n cursor: 'text',\n '& [data-slate-editor=\"true\"]': {\n wordBreak: 'break-word',\n overflow: 'visible',\n maxHeight: '500px',\n // needed in order to be able to put the focus before a void element when it is the first one in the editor\n padding: '5px',\n },\n\n '&:first-child': {\n marginTop: 0,\n },\n\n '& ul, & ol': {\n padding: '0 1rem',\n margin: '1.25rem 1rem 1.25rem 0.4rem',\n },\n\n '& ul li p, & ol li p': {\n marginTop: '0.25em',\n marginBottom: '0.25em',\n },\n\n '& h1, & h2, & h3, & h4, & h5, & h6': {\n lineHeight: 1.1,\n marginTop: '2.5rem',\n textWrap: 'pretty',\n },\n\n '& h1, & h2': {\n marginTop: '3.5rem',\n marginBottom: '1.5rem',\n },\n\n '& h1': {\n fontSize: '1.4rem',\n },\n\n '& h2': {\n fontSize: '1.2rem',\n },\n\n '& h3': {\n fontSize: '1.1rem',\n },\n\n '& h4, & h5, & h6': {\n fontSize: '1rem',\n },\n\n '& code': {\n backgroundColor: 'var(--purple-light)',\n borderRadius: '0.4rem',\n color: 'var(--black)',\n fontSize: '0.85rem',\n padding: '0.25em 0.3em',\n },\n\n '& pre': {\n background: 'var(--black)',\n borderRadius: '0.5rem',\n color: 'var(--white)',\n fontFamily: \"'JetBrainsMono', monospace\",\n margin: '1.5rem 0',\n padding: '0.75rem 1rem',\n\n '& code': {\n background: 'none',\n color: 'inherit',\n fontSize: '0.8rem',\n padding: 0,\n },\n },\n\n '& blockquote': {\n borderLeft: '3px solid var(--gray-3)',\n margin: '1.5rem 0',\n paddingLeft: '1rem',\n },\n\n '& hr': {\n border: 'none',\n borderTop: '1px solid var(--gray-2)',\n margin: '2rem 0',\n },\n\n '& table': {\n tableLayout: 'fixed',\n width: '100%',\n borderCollapse: 'collapse',\n color: color.text(),\n backgroundColor: color.background(),\n },\n '& table:not([border=\"1\"]) tr': {\n borderTop: '1px solid #dfe2e5',\n },\n '& td, th': {\n padding: '.6em 1em',\n textAlign: 'center',\n },\n '& table:not([border=\"1\"]) td, th': {\n border: '1px solid #dfe2e5',\n },\n },\n children: {\n padding: '10px 16px',\n },\n editorHolder: {\n position: 'relative',\n padding: '0px',\n overflowY: 'auto',\n color: color.text(),\n backgroundColor: color.background(),\n },\n disabledScrollbar: {\n '&::-webkit-scrollbar': {\n display: 'none',\n },\n scrollbarWidth: 'none',\n '-ms-overflow-style': 'none',\n },\n error: {\n border: `2px solid ${theme.palette.error.main} !important`,\n },\n noBorder: {\n border: 'none',\n },\n noPadding: {\n padding: 0,\n },\n toolbarOnTop: {\n marginTop: '45px',\n },\n});\n\nexport default styles;\n"],"mappings":"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","ignoreList":[]}
package/lib/theme.js CHANGED
@@ -4,6 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.primary = void 0;
7
- var primary = '#304ffe';
8
- exports.primary = primary;
9
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy90aGVtZS5qcyJdLCJuYW1lcyI6WyJwcmltYXJ5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBTyxJQUFNQSxPQUFPLEdBQUcsU0FBaEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgcHJpbWFyeSA9ICcjMzA0ZmZlJztcbiJdfQ==
7
+ var primary = exports.primary = '#304ffe';
8
+ //# sourceMappingURL=theme.js.map
package/lib/theme.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/theme.js"],"names":["primary"],"mappings":";;;;;;AAAO,IAAMA,OAAO,GAAG,SAAhB","sourcesContent":["export const primary = '#304ffe';\n"],"file":"theme.js"}
1
+ {"version":3,"file":"theme.js","names":["primary","exports"],"sources":["../src/theme.js"],"sourcesContent":["export const primary = '#304ffe';\n"],"mappings":";;;;;;AAAO,IAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,SAAS","ignoreList":[]}
package/lib/utils/size.js CHANGED
@@ -4,31 +4,23 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.valueToSize = void 0;
7
-
8
- var valueToSize = function valueToSize(v) {
7
+ var valueToSize = exports.valueToSize = function valueToSize(v) {
9
8
  if (!v) {
10
9
  return;
11
10
  }
12
-
13
11
  var calcRegex = /^calc\((.*)\)$/;
14
-
15
12
  if (typeof v === 'string') {
16
13
  if (v.endsWith('%')) {
17
14
  return undefined;
18
15
  }
19
-
20
16
  if (v.endsWith('px') || v.endsWith('vh') || v.endsWith('vw') || v.endsWith('ch') || v.endsWith('em') || v.match(calcRegex)) {
21
17
  return v;
22
18
  }
23
-
24
19
  var value = parseInt(v, 10);
25
20
  return Number.isNaN(value) ? value : "".concat(value, "px");
26
21
  }
27
-
28
22
  if (typeof v === 'number') {
29
23
  return "".concat(v, "px");
30
24
  }
31
25
  };
32
-
33
- exports.valueToSize = valueToSize;
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9zaXplLmpzIl0sIm5hbWVzIjpbInZhbHVlVG9TaXplIiwidiIsImNhbGNSZWdleCIsImVuZHNXaXRoIiwidW5kZWZpbmVkIiwibWF0Y2giLCJ2YWx1ZSIsInBhcnNlSW50IiwiTnVtYmVyIiwiaXNOYU4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBTyxJQUFNQSxXQUFXLEdBQUcsU0FBZEEsV0FBYyxDQUFDQyxDQUFELEVBQU87QUFDaEMsTUFBSSxDQUFDQSxDQUFMLEVBQVE7QUFDTjtBQUNEOztBQUVELE1BQU1DLFNBQVMsR0FBRyxnQkFBbEI7O0FBRUEsTUFBSSxPQUFPRCxDQUFQLEtBQWEsUUFBakIsRUFBMkI7QUFDekIsUUFBSUEsQ0FBQyxDQUFDRSxRQUFGLENBQVcsR0FBWCxDQUFKLEVBQXFCO0FBQ25CLGFBQU9DLFNBQVA7QUFDRDs7QUFFRCxRQUNFSCxDQUFDLENBQUNFLFFBQUYsQ0FBVyxJQUFYLEtBQ0FGLENBQUMsQ0FBQ0UsUUFBRixDQUFXLElBQVgsQ0FEQSxJQUVBRixDQUFDLENBQUNFLFFBQUYsQ0FBVyxJQUFYLENBRkEsSUFHQUYsQ0FBQyxDQUFDRSxRQUFGLENBQVcsSUFBWCxDQUhBLElBSUFGLENBQUMsQ0FBQ0UsUUFBRixDQUFXLElBQVgsQ0FKQSxJQUtBRixDQUFDLENBQUNJLEtBQUYsQ0FBUUgsU0FBUixDQU5GLEVBT0U7QUFDQSxhQUFPRCxDQUFQO0FBQ0Q7O0FBRUQsUUFBTUssS0FBSyxHQUFHQyxRQUFRLENBQUNOLENBQUQsRUFBSSxFQUFKLENBQXRCO0FBRUEsV0FBT08sTUFBTSxDQUFDQyxLQUFQLENBQWFILEtBQWIsSUFBc0JBLEtBQXRCLGFBQWlDQSxLQUFqQyxPQUFQO0FBQ0Q7O0FBRUQsTUFBSSxPQUFPTCxDQUFQLEtBQWEsUUFBakIsRUFBMkI7QUFDekIscUJBQVVBLENBQVY7QUFDRDtBQUNGLENBL0JNIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IHZhbHVlVG9TaXplID0gKHYpID0+IHtcbiAgaWYgKCF2KSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgY2FsY1JlZ2V4ID0gL15jYWxjXFwoKC4qKVxcKSQvO1xuXG4gIGlmICh0eXBlb2YgdiA9PT0gJ3N0cmluZycpIHtcbiAgICBpZiAodi5lbmRzV2l0aCgnJScpKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHYuZW5kc1dpdGgoJ3B4JykgfHxcbiAgICAgIHYuZW5kc1dpdGgoJ3ZoJykgfHxcbiAgICAgIHYuZW5kc1dpdGgoJ3Z3JykgfHxcbiAgICAgIHYuZW5kc1dpdGgoJ2NoJykgfHxcbiAgICAgIHYuZW5kc1dpdGgoJ2VtJykgfHxcbiAgICAgIHYubWF0Y2goY2FsY1JlZ2V4KVxuICAgICkge1xuICAgICAgcmV0dXJuIHY7XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWUgPSBwYXJzZUludCh2LCAxMCk7XG5cbiAgICByZXR1cm4gTnVtYmVyLmlzTmFOKHZhbHVlKSA/IHZhbHVlIDogYCR7dmFsdWV9cHhgO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB2ID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiBgJHt2fXB4YDtcbiAgfVxufTtcbiJdfQ==
26
+ //# sourceMappingURL=size.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/size.js"],"names":["valueToSize","v","calcRegex","endsWith","undefined","match","value","parseInt","Number","isNaN"],"mappings":";;;;;;;AAAO,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD,EAAO;AAChC,MAAI,CAACA,CAAL,EAAQ;AACN;AACD;;AAED,MAAMC,SAAS,GAAG,gBAAlB;;AAEA,MAAI,OAAOD,CAAP,KAAa,QAAjB,EAA2B;AACzB,QAAIA,CAAC,CAACE,QAAF,CAAW,GAAX,CAAJ,EAAqB;AACnB,aAAOC,SAAP;AACD;;AAED,QACEH,CAAC,CAACE,QAAF,CAAW,IAAX,KACAF,CAAC,CAACE,QAAF,CAAW,IAAX,CADA,IAEAF,CAAC,CAACE,QAAF,CAAW,IAAX,CAFA,IAGAF,CAAC,CAACE,QAAF,CAAW,IAAX,CAHA,IAIAF,CAAC,CAACE,QAAF,CAAW,IAAX,CAJA,IAKAF,CAAC,CAACI,KAAF,CAAQH,SAAR,CANF,EAOE;AACA,aAAOD,CAAP;AACD;;AAED,QAAMK,KAAK,GAAGC,QAAQ,CAACN,CAAD,EAAI,EAAJ,CAAtB;AAEA,WAAOO,MAAM,CAACC,KAAP,CAAaH,KAAb,IAAsBA,KAAtB,aAAiCA,KAAjC,OAAP;AACD;;AAED,MAAI,OAAOL,CAAP,KAAa,QAAjB,EAA2B;AACzB,qBAAUA,CAAV;AACD;AACF,CA/BM","sourcesContent":["export const valueToSize = (v) => {\n if (!v) {\n return;\n }\n\n const calcRegex = /^calc\\((.*)\\)$/;\n\n if (typeof v === 'string') {\n if (v.endsWith('%')) {\n return undefined;\n }\n\n if (\n v.endsWith('px') ||\n v.endsWith('vh') ||\n v.endsWith('vw') ||\n v.endsWith('ch') ||\n v.endsWith('em') ||\n v.match(calcRegex)\n ) {\n return v;\n }\n\n const value = parseInt(v, 10);\n\n return Number.isNaN(value) ? value : `${value}px`;\n }\n\n if (typeof v === 'number') {\n return `${v}px`;\n }\n};\n"],"file":"size.js"}
1
+ {"version":3,"file":"size.js","names":["valueToSize","exports","v","calcRegex","endsWith","undefined","match","value","parseInt","Number","isNaN","concat"],"sources":["../../src/utils/size.js"],"sourcesContent":["export const valueToSize = (v) => {\n if (!v) {\n return;\n }\n\n const calcRegex = /^calc\\((.*)\\)$/;\n\n if (typeof v === 'string') {\n if (v.endsWith('%')) {\n return undefined;\n }\n\n if (\n v.endsWith('px') ||\n v.endsWith('vh') ||\n v.endsWith('vw') ||\n v.endsWith('ch') ||\n v.endsWith('em') ||\n v.match(calcRegex)\n ) {\n return v;\n }\n\n const value = parseInt(v, 10);\n\n return Number.isNaN(value) ? value : `${value}px`;\n }\n\n if (typeof v === 'number') {\n return `${v}px`;\n }\n};\n"],"mappings":";;;;;;AAAO,IAAMA,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,SAAdA,WAAWA,CAAIE,CAAC,EAAK;EAChC,IAAI,CAACA,CAAC,EAAE;IACN;EACF;EAEA,IAAMC,SAAS,GAAG,gBAAgB;EAElC,IAAI,OAAOD,CAAC,KAAK,QAAQ,EAAE;IACzB,IAAIA,CAAC,CAACE,QAAQ,CAAC,GAAG,CAAC,EAAE;MACnB,OAAOC,SAAS;IAClB;IAEA,IACEH,CAAC,CAACE,QAAQ,CAAC,IAAI,CAAC,IAChBF,CAAC,CAACE,QAAQ,CAAC,IAAI,CAAC,IAChBF,CAAC,CAACE,QAAQ,CAAC,IAAI,CAAC,IAChBF,CAAC,CAACE,QAAQ,CAAC,IAAI,CAAC,IAChBF,CAAC,CAACE,QAAQ,CAAC,IAAI,CAAC,IAChBF,CAAC,CAACI,KAAK,CAACH,SAAS,CAAC,EAClB;MACA,OAAOD,CAAC;IACV;IAEA,IAAMK,KAAK,GAAGC,QAAQ,CAACN,CAAC,EAAE,EAAE,CAAC;IAE7B,OAAOO,MAAM,CAACC,KAAK,CAACH,KAAK,CAAC,GAAGA,KAAK,MAAAI,MAAA,CAAMJ,KAAK,OAAI;EACnD;EAEA,IAAI,OAAOL,CAAC,KAAK,QAAQ,EAAE;IACzB,UAAAS,MAAA,CAAUT,CAAC;EACb;AACF,CAAC","ignoreList":[]}
package/package.json CHANGED
@@ -1,20 +1,22 @@
1
1
  {
2
2
  "name": "@pie-lib/editable-html-tip-tap",
3
- "version": "1.0.20",
3
+ "version": "1.0.21-next.6053+fbf4a810",
4
4
  "description": "",
5
5
  "license": "ISC",
6
6
  "main": "lib/index.js",
7
7
  "module": "src/index.jsx",
8
8
  "author": "pie-framework developers",
9
9
  "dependencies": {
10
- "@material-ui/core": "^3.8.3",
11
- "@material-ui/icons": "^3.0.2",
12
- "@material-ui/styles": "^3.0.0-alpha.10",
13
- "@pie-lib/drag": "^2.22.1",
14
- "@pie-lib/math-input": "6.31.1-beta-1",
15
- "@pie-lib/math-rendering": "^3.22.1",
16
- "@pie-lib/math-toolbar": "1.31.2-beta.3",
17
- "@pie-lib/render-ui": "^4.35.1",
10
+ "@dnd-kit/core": "6.1.0",
11
+ "@dnd-kit/modifiers": "9.0.0",
12
+ "@dnd-kit/utilities": "3.2.2",
13
+ "@mui/icons-material": "^7.3.4",
14
+ "@mui/material": "^7.3.4",
15
+ "@pie-lib/drag": "2.22.4-next.0",
16
+ "@pie-lib/math-input": "6.31.2-next.212+fbf4a810",
17
+ "@pie-lib/math-rendering": "3.22.3-next.0",
18
+ "@pie-lib/math-toolbar": "1.31.3-next.203+fbf4a810",
19
+ "@pie-lib/render-ui": "4.35.4-next.0",
18
20
  "@tiptap/core": "3.0.9",
19
21
  "@tiptap/extension-character-count": "3.0.9",
20
22
  "@tiptap/extension-color": "3.0.9",
@@ -56,15 +58,15 @@
56
58
  },
57
59
  "devDependencies": {
58
60
  "@pie-framework/mathquill": "^1.1.3",
59
- "react": "18.2.0",
60
- "react-dom": "18.2.0"
61
+ "react": "^18.2.0",
62
+ "react-dom": "^18.2.0"
61
63
  },
62
64
  "peerDependencies": {
63
- "react": "18.2.0"
65
+ "react": "^18.2.0"
64
66
  },
65
67
  "publishConfig": {
66
68
  "access": "public"
67
69
  },
68
- "gitHead": "ff5ec2ebe11110b7652812a10c6dc230f08e12cb",
70
+ "gitHead": "fbf4a810003eeb0a0e984ff8f55362ad94cf4b71",
69
71
  "scripts": {}
70
72
  }
@@ -1,5 +1,4 @@
1
1
  import React, { useEffect, useMemo, useState } from 'react';
2
- import classNames from 'classnames';
3
2
  import { EditorContent, useEditor, useEditorState } from '@tiptap/react';
4
3
  import StarterKit from '@tiptap/starter-kit';
5
4
  import { TextStyleKit } from '@tiptap/extension-text-style';
@@ -8,7 +7,7 @@ import SuperScript from '@tiptap/extension-superscript';
8
7
  import SubScript from '@tiptap/extension-subscript';
9
8
  import TextAlign from '@tiptap/extension-text-align';
10
9
  import Image from '@tiptap/extension-image';
11
- import { withStyles } from '@material-ui/core/styles';
10
+ import { styled } from '@mui/material/styles';
12
11
 
13
12
  import ExtendedTable from '../extensions/extended-table';
14
13
  import { TableRow } from '@tiptap/extension-table-row';
@@ -93,7 +92,7 @@ export const EditableHtml = (props) => {
93
92
  const { showParagraphs, separateParagraphs } = props.pluginProps || {};
94
93
  const [pendingImages, setPendingImages] = useState([]);
95
94
  const [scheduled, setScheduled] = useState(false);
96
- const { classes, toolbarOpts } = props;
95
+ const { toolbarOpts } = props;
97
96
 
98
97
  const toolbarOptsToUse = {
99
98
  ...defaultToolbarOpts,
@@ -317,19 +316,14 @@ export const EditableHtml = (props) => {
317
316
  editor={editor}
318
317
  >
319
318
  {editor && (
320
- <EditorContent
319
+ <StyledEditorContent
321
320
  style={{
322
321
  minHeight: sizeStyle.minHeight,
323
322
  height: sizeStyle.height,
324
323
  maxHeight: sizeStyle.maxHeight,
325
324
  }}
326
- className={classNames(
327
- {
328
- [classes.showParagraph]: showParagraphs && !showParagraphs.disabled,
329
- [classes.separateParagraph]: separateParagraphs && !separateParagraphs.disabled,
330
- },
331
- classes.root,
332
- )}
325
+ showParagraph={showParagraphs && !showParagraphs.disabled}
326
+ separateParagraph={separateParagraphs && !separateParagraphs.disabled}
333
327
  editor={editor}
334
328
  />
335
329
  )}
@@ -337,38 +331,32 @@ export const EditableHtml = (props) => {
337
331
  );
338
332
  };
339
333
 
340
- const StyledEditor = withStyles({
341
- root: {
334
+ const StyledEditorContent = styled(EditorContent, {
335
+ shouldForwardProp: (prop) => !['showParagraph', 'separateParagraph'].includes(prop),
336
+ })(({ showParagraph, separateParagraph }) => ({
337
+ outline: 'none !important',
338
+ '& .ProseMirror': {
339
+ padding: '5px',
340
+ maxHeight: '500px',
342
341
  outline: 'none !important',
343
- '& .ProseMirror': {
344
- padding: '5px',
345
- maxHeight: '500px',
346
- outline: 'none !important',
347
- position: 'initial',
348
- '& > p': {
349
- margin: '0',
350
- },
342
+ position: 'initial',
343
+ '& > p': {
344
+ margin: '0',
351
345
  },
352
- },
353
- showParagraph: {
354
- '& .ProseMirror': {
355
- // a p that has a p after it
346
+ ...(showParagraph && {
356
347
  '& > p:has(+ p)::after': {
357
348
  display: 'block',
358
349
  content: '"¶"',
359
350
  fontSize: '1em',
360
351
  color: '#146EB3',
361
352
  },
362
- },
363
- },
364
- separateParagraph: {
365
- '& .ProseMirror': {
366
- // a p that has a p after it
353
+ }),
354
+ ...(separateParagraph && {
367
355
  '& > div:has(+ div)': {
368
356
  marginBottom: '1em',
369
357
  },
370
- },
358
+ }),
371
359
  },
372
- })(EditableHtml);
360
+ }));
373
361
 
374
- export default StyledEditor;
362
+ export default EditableHtml;
@@ -1,23 +1,23 @@
1
1
  import React, { useMemo, useState } from 'react';
2
2
  import classNames from 'classnames';
3
- import { withStyles } from '@material-ui/core/styles';
3
+ import { styled, useTheme } from '@mui/material/styles';
4
4
  import { NodeSelection } from 'prosemirror-state';
5
5
 
6
- import Bold from '@material-ui/icons/FormatBold';
7
- import Italic from '@material-ui/icons/FormatItalic';
8
- import Strikethrough from '@material-ui/icons/FormatStrikethrough';
9
- import Code from '@material-ui/icons/Code';
10
- import GridOn from '@material-ui/icons/GridOn';
11
- import BulletedListIcon from '@material-ui/icons/FormatListBulleted';
12
- import NumberedListIcon from '@material-ui/icons/FormatListNumbered';
13
- import Underline from '@material-ui/icons/FormatUnderlined';
14
- import Functions from '@material-ui/icons/Functions';
15
- import ImageIcon from '@material-ui/icons/Image';
16
- import Redo from '@material-ui/icons/Redo';
17
- import Undo from '@material-ui/icons/Undo';
18
- import TheatersIcon from '@material-ui/icons/Theaters';
19
- import VolumeUpIcon from '@material-ui/icons/VolumeUp';
20
- import BorderAll from '@material-ui/icons/BorderAll';
6
+ import Bold from '@mui/icons-material/FormatBold';
7
+ import Italic from '@mui/icons-material/FormatItalic';
8
+ import Strikethrough from '@mui/icons-material/FormatStrikethrough';
9
+ import Code from '@mui/icons-material/Code';
10
+ import GridOn from '@mui/icons-material/GridOn';
11
+ import BulletedListIcon from '@mui/icons-material/FormatListBulleted';
12
+ import NumberedListIcon from '@mui/icons-material/FormatListNumbered';
13
+ import Underline from '@mui/icons-material/FormatUnderlined';
14
+ import Functions from '@mui/icons-material/Functions';
15
+ import ImageIcon from '@mui/icons-material/Image';
16
+ import Redo from '@mui/icons-material/Redo';
17
+ import Undo from '@mui/icons-material/Undo';
18
+ import TheatersIcon from '@mui/icons-material/Theaters';
19
+ import VolumeUpIcon from '@mui/icons-material/VolumeUp';
20
+ import BorderAll from '@mui/icons-material/BorderAll';
21
21
 
22
22
  import { EditorContent, useEditorState } from '@tiptap/react';
23
23
 
@@ -536,18 +536,49 @@ function MenuBar({ editor, classes, activePlugins, toolbarOpts: toolOpts, respon
536
536
  );
537
537
  }
538
538
 
539
- const style = (theme) => ({
540
- defaultToolbar: {
539
+ // Wrapper component that provides classes object using styled API
540
+ const StyledMenuBar = (props) => {
541
+ const theme = useTheme();
542
+
543
+ const classes = {
544
+ defaultToolbar: 'defaultToolbar',
545
+ buttonsContainer: 'buttonsContainer',
546
+ button: 'button',
547
+ active: 'active',
548
+ disabled: 'disabled',
549
+ isActive: 'isActive',
550
+ toolbar: 'toolbar',
551
+ toolbarWithNoDone: 'toolbarWithNoDone',
552
+ toolbarTop: 'toolbarTop',
553
+ toolbarRight: 'toolbarRight',
554
+ fullWidth: 'fullWidth',
555
+ hidden: 'hidden',
556
+ autoWidth: 'autoWidth',
557
+ focused: 'focused',
558
+ iconRoot: 'iconRoot',
559
+ label: 'label',
560
+ shared: 'shared',
561
+ };
562
+
563
+ return (
564
+ <StyledMenuBarRoot>
565
+ <MenuBar {...props} classes={classes} />
566
+ </StyledMenuBarRoot>
567
+ );
568
+ };
569
+
570
+ const StyledMenuBarRoot = styled('div')(({ theme }) => ({
571
+ '& .defaultToolbar': {
541
572
  display: 'flex',
542
573
  width: '100%',
543
574
  justifyContent: 'space-between',
544
575
  },
545
- buttonsContainer: {
576
+ '& .buttonsContainer': {
546
577
  alignItems: 'center',
547
578
  display: 'flex',
548
579
  width: '100%',
549
580
  },
550
- button: {
581
+ '& .button': {
551
582
  color: 'grey',
552
583
  display: 'inline-flex',
553
584
  padding: '2px',
@@ -561,21 +592,21 @@ const style = (theme) => ({
561
592
  outline: `2px solid ${theme.palette.grey[700]}`,
562
593
  },
563
594
  },
564
- active: {
595
+ '& .active': {
565
596
  color: 'black',
566
597
  },
567
- disabled: {
598
+ '& .disabled': {
568
599
  opacity: 0.7,
569
600
  cursor: 'not-allowed',
570
601
  '& :hover': {
571
602
  color: 'grey',
572
603
  },
573
604
  },
574
- isActive: {
605
+ '& .isActive': {
575
606
  background: 'var(--purple)',
576
607
  color: 'var(--white)',
577
608
  },
578
- toolbar: {
609
+ '& .toolbar': {
579
610
  position: 'absolute',
580
611
  zIndex: 20,
581
612
  cursor: 'pointer',
@@ -591,42 +622,40 @@ const style = (theme) => ({
591
622
  opacity: 0,
592
623
  pointerEvents: 'none',
593
624
  },
594
- toolbarWithNoDone: {
625
+ '& .toolbarWithNoDone': {
595
626
  minWidth: '265px',
596
627
  },
597
- toolbarTop: {
628
+ '& .toolbarTop': {
598
629
  top: '-45px',
599
630
  },
600
- toolbarRight: {
631
+ '& .toolbarRight': {
601
632
  right: 0,
602
633
  },
603
- fullWidth: {
634
+ '& .fullWidth': {
604
635
  width: '100%',
605
636
  },
606
- hidden: {
637
+ '& .hidden': {
607
638
  visibility: 'hidden',
608
639
  },
609
- autoWidth: {
640
+ '& .autoWidth': {
610
641
  width: 'auto',
611
642
  },
612
- focused: {
643
+ '& .focused': {
613
644
  opacity: 1,
614
645
  pointerEvents: 'auto',
615
646
  },
616
- iconRoot: {
647
+ '& .iconRoot': {
617
648
  width: '28px',
618
649
  height: '28px',
619
650
  padding: '4px',
620
651
  verticalAlign: 'top',
621
652
  },
622
- label: {
653
+ '& .label': {
623
654
  color: 'var(--editable-html-toolbar-check, #00bb00)',
624
655
  },
625
- shared: {
656
+ '& .shared': {
626
657
  display: 'flex',
627
658
  },
628
- });
629
-
630
- const StyledMenuBar = withStyles(style, { index: 1000 })(MenuBar);
659
+ }));
631
660
 
632
661
  export default StyledMenuBar;
@@ -1,17 +1,136 @@
1
1
  import React, { useEffect, useMemo } from 'react';
2
- import classNames from 'classnames';
3
- import { withStyles } from '@material-ui/core/styles';
4
-
5
- import styles from '../styles/editorContainerStyles';
2
+ import { styled } from '@mui/material/styles';
3
+ import { color } from '@pie-lib/render-ui';
6
4
  import { valueToSize } from '../utils/size';
7
5
 
8
6
  import StyledMenuBar from './MenuBar';
9
7
 
8
+ const StyledRoot = styled('div', {
9
+ shouldForwardProp: (prop) => !['noBorder', 'error'].includes(prop),
10
+ })(({ theme, noBorder, error }) => ({
11
+ position: 'relative',
12
+ padding: '0px',
13
+ border: noBorder ? 'none' : '1px solid #ccc',
14
+ borderRadius: '4px',
15
+ cursor: 'text',
16
+ '& [data-slate-editor="true"]': {
17
+ wordBreak: 'break-word',
18
+ overflow: 'visible',
19
+ maxHeight: '500px',
20
+ padding: '5px',
21
+ },
22
+ '&:first-child': {
23
+ marginTop: 0,
24
+ },
25
+ '& ul, & ol': {
26
+ padding: '0 1rem',
27
+ margin: '1.25rem 1rem 1.25rem 0.4rem',
28
+ },
29
+ '& ul li p, & ol li p': {
30
+ marginTop: '0.25em',
31
+ marginBottom: '0.25em',
32
+ },
33
+ '& h1, & h2, & h3, & h4, & h5, & h6': {
34
+ lineHeight: 1.1,
35
+ marginTop: '2.5rem',
36
+ textWrap: 'pretty',
37
+ },
38
+ '& h1, & h2': {
39
+ marginTop: '3.5rem',
40
+ marginBottom: '1.5rem',
41
+ },
42
+ '& h1': {
43
+ fontSize: '1.4rem',
44
+ },
45
+ '& h2': {
46
+ fontSize: '1.2rem',
47
+ },
48
+ '& h3': {
49
+ fontSize: '1.1rem',
50
+ },
51
+ '& h4, & h5, & h6': {
52
+ fontSize: '1rem',
53
+ },
54
+ '& code': {
55
+ backgroundColor: 'var(--purple-light)',
56
+ borderRadius: '0.4rem',
57
+ color: 'var(--black)',
58
+ fontSize: '0.85rem',
59
+ padding: '0.25em 0.3em',
60
+ },
61
+ '& pre': {
62
+ background: 'var(--black)',
63
+ borderRadius: '0.5rem',
64
+ color: 'var(--white)',
65
+ fontFamily: '\'JetBrainsMono\', monospace',
66
+ margin: '1.5rem 0',
67
+ padding: '0.75rem 1rem',
68
+ '& code': {
69
+ background: 'none',
70
+ color: 'inherit',
71
+ fontSize: '0.8rem',
72
+ padding: 0,
73
+ },
74
+ },
75
+ '& blockquote': {
76
+ borderLeft: '3px solid var(--gray-3)',
77
+ margin: '1.5rem 0',
78
+ paddingLeft: '1rem',
79
+ },
80
+ '& hr': {
81
+ border: 'none',
82
+ borderTop: '1px solid var(--gray-2)',
83
+ margin: '2rem 0',
84
+ },
85
+ '& table': {
86
+ tableLayout: 'fixed',
87
+ width: '100%',
88
+ borderCollapse: 'collapse',
89
+ color: color.text(),
90
+ backgroundColor: color.background(),
91
+ },
92
+ '& table:not([border="1"]) tr': {
93
+ borderTop: '1px solid #dfe2e5',
94
+ },
95
+ '& td, th': {
96
+ padding: '.6em 1em',
97
+ textAlign: 'center',
98
+ },
99
+ '& table:not([border="1"]) td, th': {
100
+ border: '1px solid #dfe2e5',
101
+ },
102
+ ...(error && {
103
+ border: `2px solid ${theme.palette.error.main} !important`,
104
+ }),
105
+ }));
106
+
107
+ const StyledEditorHolder = styled('div', {
108
+ shouldForwardProp: (prop) => prop !== 'disableScrollbar',
109
+ })(({ disableScrollbar }) => ({
110
+ position: 'relative',
111
+ padding: '0px',
112
+ overflowY: 'auto',
113
+ color: color.text(),
114
+ backgroundColor: color.background(),
115
+ ...(disableScrollbar && {
116
+ '&::-webkit-scrollbar': {
117
+ display: 'none',
118
+ },
119
+ scrollbarWidth: 'none',
120
+ '-ms-overflow-style': 'none',
121
+ }),
122
+ }));
123
+
124
+ const StyledChildren = styled('div', {
125
+ shouldForwardProp: (prop) => prop !== 'noPadding',
126
+ })(({ noPadding }) => ({
127
+ padding: noPadding ? 0 : '10px 16px',
128
+ }));
129
+
10
130
  function TiptapContainer(props) {
11
131
  const {
12
132
  editor,
13
133
  disabled,
14
- classes,
15
134
  children,
16
135
  disableScrollbar,
17
136
  activePlugins,
@@ -26,10 +145,6 @@ function TiptapContainer(props) {
26
145
  maxHeight,
27
146
  } = props;
28
147
 
29
- const holderNames = classNames(classes.editorHolder, {
30
- [classes.disabledScrollbar]: disableScrollbar,
31
- });
32
-
33
148
  useEffect(() => {
34
149
  if (editor && autoFocus) {
35
150
  Promise.resolve().then(() => {
@@ -51,29 +166,15 @@ function TiptapContainer(props) {
51
166
  );
52
167
 
53
168
  return (
54
- <div
55
- className={classNames(
56
- {
57
- [classes.noBorder]: toolbarOpts && toolbarOpts.noBorder,
58
- [classes.error]: toolbarOpts && toolbarOpts.error,
59
- },
60
- classes.root,
61
- props.className,
62
- )}
169
+ <StyledRoot
170
+ noBorder={toolbarOpts && toolbarOpts.noBorder}
171
+ error={toolbarOpts && toolbarOpts.error}
172
+ className={props.className}
63
173
  style={{ width: sizeStyle.width, minWidth: sizeStyle.minWidth, maxWidth: sizeStyle.maxWidth }}
64
174
  >
65
- <div className={holderNames}>
66
- <div
67
- className={classNames(
68
- {
69
- [classes.noPadding]: toolbarOpts && toolbarOpts.noPadding,
70
- },
71
- classes.children,
72
- )}
73
- >
74
- {children}
75
- </div>
76
- </div>
175
+ <StyledEditorHolder disableScrollbar={disableScrollbar}>
176
+ <StyledChildren noPadding={toolbarOpts && toolbarOpts.noPadding}>{children}</StyledChildren>
177
+ </StyledEditorHolder>
77
178
 
78
179
  {editor && (
79
180
  <StyledMenuBar
@@ -84,10 +185,8 @@ function TiptapContainer(props) {
84
185
  onChange={props.onChange}
85
186
  />
86
187
  )}
87
- </div>
188
+ </StyledRoot>
88
189
  );
89
190
  }
90
191
 
91
- const EditorContainer = withStyles(styles)(TiptapContainer);
92
-
93
- export default EditorContainer;
192
+ export default TiptapContainer;