@toptal/picasso-rich-text-editor 4.2.1 → 5.0.1

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 (79) hide show
  1. package/LexicalEditor/styles.d.ts +1 -1
  2. package/LexicalEditor/styles.js +11 -4
  3. package/LexicalEditor/styles.js.map +1 -1
  4. package/LexicalEditor/utils/cleanup-html-output.js +2 -0
  5. package/LexicalEditor/utils/cleanup-html-output.js.map +1 -1
  6. package/LexicalEditor/utils/cleanup-html-output.test.js +12 -0
  7. package/LexicalEditor/utils/cleanup-html-output.test.js.map +1 -1
  8. package/LexicalEditor/utils/create-lexical-theme.js +2 -0
  9. package/LexicalEditor/utils/create-lexical-theme.js.map +1 -1
  10. package/LexicalEditor/utils/hasChildDOMNodeTag.d.ts +2 -0
  11. package/LexicalEditor/utils/hasChildDOMNodeTag.js +12 -0
  12. package/LexicalEditor/utils/hasChildDOMNodeTag.js.map +1 -0
  13. package/LexicalEditor/utils/hasChildDOMNodeTag.test.d.ts +1 -0
  14. package/LexicalEditor/utils/hasChildDOMNodeTag.test.js +39 -0
  15. package/LexicalEditor/utils/hasChildDOMNodeTag.test.js.map +1 -0
  16. package/LexicalEditor/utils/index.d.ts +1 -0
  17. package/LexicalEditor/utils/index.js +1 -0
  18. package/LexicalEditor/utils/index.js.map +1 -1
  19. package/LexicalEditorToolbarPlugin/LexicalEditorToolbarPlugin.js +16 -2
  20. package/LexicalEditorToolbarPlugin/LexicalEditorToolbarPlugin.js.map +1 -1
  21. package/RichText/components/CodeBlock.d.ts +6 -0
  22. package/RichText/components/CodeBlock.js +10 -0
  23. package/RichText/components/CodeBlock.js.map +1 -0
  24. package/RichText/components/index.d.ts +2 -0
  25. package/RichText/components/index.js +2 -0
  26. package/RichText/components/index.js.map +1 -1
  27. package/RichText/components/styles.d.ts +4 -10
  28. package/RichText/components/styles.js +17 -0
  29. package/RichText/components/styles.js.map +1 -1
  30. package/RichText/hooks/useRichText/useRichText.js +2 -2
  31. package/RichText/hooks/useRichText/useRichText.js.map +1 -1
  32. package/RichText/types.d.ts +1 -1
  33. package/RichTextEditorToolbar/RichTextEditorToolbar.js +5 -4
  34. package/RichTextEditorToolbar/RichTextEditorToolbar.js.map +1 -1
  35. package/index.d.ts +1 -1
  36. package/index.js +1 -1
  37. package/index.js.map +1 -1
  38. package/package.json +2 -2
  39. package/plugins/CodeBlockPlugin/CodeBlockButton.d.ts +6 -0
  40. package/plugins/CodeBlockPlugin/CodeBlockButton.js +98 -0
  41. package/plugins/CodeBlockPlugin/CodeBlockButton.js.map +1 -0
  42. package/plugins/CodeBlockPlugin/CodeBlockPlugin.d.ts +8 -0
  43. package/plugins/CodeBlockPlugin/CodeBlockPlugin.js +43 -0
  44. package/plugins/CodeBlockPlugin/CodeBlockPlugin.js.map +1 -0
  45. package/plugins/CodeBlockPlugin/index.d.ts +1 -0
  46. package/plugins/CodeBlockPlugin/index.js +2 -0
  47. package/plugins/CodeBlockPlugin/index.js.map +1 -0
  48. package/plugins/CodeBlockPlugin/nodes/CodeBlockNode.d.ts +18 -0
  49. package/plugins/CodeBlockPlugin/nodes/CodeBlockNode.js +135 -0
  50. package/plugins/CodeBlockPlugin/nodes/CodeBlockNode.js.map +1 -0
  51. package/plugins/CodeBlockPlugin/nodes/CodeBlockTextNode.d.ts +14 -0
  52. package/plugins/CodeBlockPlugin/nodes/CodeBlockTextNode.js +43 -0
  53. package/plugins/CodeBlockPlugin/nodes/CodeBlockTextNode.js.map +1 -0
  54. package/plugins/CodeBlockPlugin/nodes/index.d.ts +8 -0
  55. package/plugins/CodeBlockPlugin/nodes/index.js +15 -0
  56. package/plugins/CodeBlockPlugin/nodes/index.js.map +1 -0
  57. package/plugins/CodeBlockPlugin/utils/getFirstCodeNodeOfLine.d.ts +4 -0
  58. package/plugins/CodeBlockPlugin/utils/getFirstCodeNodeOfLine.js +12 -0
  59. package/plugins/CodeBlockPlugin/utils/getFirstCodeNodeOfLine.js.map +1 -0
  60. package/plugins/CodeBlockPlugin/utils/getFirstCodeNodeOfLine.test.d.ts +1 -0
  61. package/plugins/CodeBlockPlugin/utils/getFirstCodeNodeOfLine.test.js +66 -0
  62. package/plugins/CodeBlockPlugin/utils/getFirstCodeNodeOfLine.test.js.map +1 -0
  63. package/plugins/CodeBlockPlugin/utils/index.d.ts +1 -0
  64. package/plugins/CodeBlockPlugin/utils/index.js +2 -0
  65. package/plugins/CodeBlockPlugin/utils/index.js.map +1 -0
  66. package/plugins/CodePlugin/CodeButton.js +3 -2
  67. package/plugins/CodePlugin/CodeButton.js.map +1 -1
  68. package/plugins/ImagePlugin/components/ImagePluginButton/ImagePluginButton.js +2 -2
  69. package/plugins/ImagePlugin/components/ImagePluginButton/ImagePluginButton.js.map +1 -1
  70. package/plugins/LinkPlugin/LinkPluginButton.js +3 -2
  71. package/plugins/LinkPlugin/LinkPluginButton.js.map +1 -1
  72. package/plugins/api.d.ts +2 -0
  73. package/plugins/api.js +9 -2
  74. package/plugins/api.js.map +1 -1
  75. package/plugins/index.d.ts +1 -0
  76. package/plugins/index.js +1 -0
  77. package/plugins/index.js.map +1 -1
  78. package/utils/html-to-hast.js +1 -0
  79. package/utils/html-to-hast.js.map +1 -1
@@ -1,3 +1,3 @@
1
1
  import type { Theme } from '@material-ui/core/styles';
2
- declare const _default: (theme: Theme) => import("@material-ui/styles").StyleRules<{}, "italic" | "bold" | "code" | "ol" | "ul" | "contentEditable" | "placeholder" | "paragraph" | "listItem" | "customEmoji" | "editorContainer">;
2
+ declare const _default: (theme: Theme) => import("@material-ui/styles").StyleRules<{}, "italic" | "bold" | "code" | "ol" | "ul" | "contentEditable" | "placeholder" | "paragraph" | "listItem" | "customEmoji" | "codeBlock" | "codeBlockText" | "editorContainer">;
3
3
  export default _default;
@@ -1,14 +1,14 @@
1
1
  import { createStyles } from '@material-ui/core/styles';
2
2
  import { rem } from '@toptal/picasso-shared';
3
- import { codeStyles } from '../RichText/components/styles';
3
+ import { codeBlockStyles, codeStyles } from '../RichText/components/styles';
4
4
  const margins = {
5
- '& p': {
5
+ '& p, & code[dir]': {
6
6
  margin: '0.5rem 0',
7
7
  },
8
8
  '& h3': {
9
9
  margin: '1rem 0 0.5rem',
10
10
  },
11
- '& p:first-child, & h3:first-child': {
11
+ '& p:first-child, & h3:first-child, & code[dir]:first-child': {
12
12
  margin: '0 0 0.5rem',
13
13
  },
14
14
  '& li:not(:last-child)': {
@@ -81,7 +81,7 @@ export default (theme) => {
81
81
  top: '0px',
82
82
  left: '0px',
83
83
  userSelect: 'none',
84
- whiteSpace: 'nowrap',
84
+ whiteSpace: 'normal',
85
85
  display: 'inline-block',
86
86
  pointerEvents: 'none',
87
87
  },
@@ -134,6 +134,13 @@ export default (theme) => {
134
134
  },
135
135
  },
136
136
  code: codeStyles(theme),
137
+ codeBlock: codeBlockStyles(theme),
138
+ codeBlockText: {
139
+ fontFamily: 'inherit',
140
+ fontSize: 'inherit',
141
+ lineHeight: 'inherit',
142
+ color: 'inherit',
143
+ },
137
144
  });
138
145
  };
139
146
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/LexicalEditor/styles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/LexicalEditor/styles.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ const replacementMap = [
7
7
  { parentTag: 'i', childTag: 'em', nodeToRemove: NodeTypes.Parent },
8
8
  { parentTag: 'b', childTag: 'strong', nodeToRemove: NodeTypes.Parent },
9
9
  { parentTag: 'p', childTag: 'span', nodeToRemove: NodeTypes.Child },
10
+ { parentTag: 'pre', childTag: 'span', nodeToRemove: NodeTypes.Child },
11
+ { parentTag: 'code', childTag: 'span', nodeToRemove: NodeTypes.Child },
10
12
  { parentTag: 'h3', childTag: 'span', nodeToRemove: NodeTypes.Child },
11
13
  { parentTag: 'li', childTag: 'span', nodeToRemove: NodeTypes.Child },
12
14
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"cleanup-html-output.js","sourceRoot":"","sources":["../../../src/LexicalEditor/utils/cleanup-html-output.ts"],"names":[],"mappings":"AAAA,IAAK,SAGJ;AAHD,WAAK,SAAS;IACZ,8BAAiB,CAAA;IACjB,4BAAe,CAAA;AACjB,CAAC,EAHI,SAAS,KAAT,SAAS,QAGb;AAQD,MAAM,cAAc,GAAuB;IACzC,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,CAAC,MAAM,EAAE;IAClE,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,CAAC,MAAM,EAAE;IACtE,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,KAAK,EAAE;IACnE,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,KAAK,EAAE;IACpE,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,KAAK,EAAE;CACrE,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,OAAa,EAAE,EAAE;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAA;IAEjC,IAAI,MAAM,EAAE;QACV,MAAM,CAAC,UAAW,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAChD,MAAM,CAAC,UAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;KACvC;AACH,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,CAAC,OAAa,EAAE,EAAE;IACpC,OAAO,OAAO,CAAC,UAAU,EAAE;QACzB,IAAI,OAAO,CAAC,UAAU,EAAE;YACtB,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;SAC7D;KACF;IAED,OAAO,CAAC,UAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;AAC1C,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,OAAiB,EAAY,EAAE;IACtD,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;QACvC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,eAAe,CAAA;QAE7D,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;;YAC1C,MAAM,gBAAgB,GACpB,MAAA,OAAO,CAAC,aAAa,0CAAE,OAAO,CAAC,iBAAiB,EAAE,CAAA;YAEpD,IACE,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,QAAQ;gBAC1C,gBAAgB,KAAK,SAAS,EAC9B;gBACA,IAAI,YAAY,KAAK,SAAS,CAAC,MAAM,EAAE;oBACrC,YAAY,CAAC,OAAO,CAAC,CAAA;iBACtB;gBAED,IAAI,YAAY,KAAK,SAAS,CAAC,KAAK,EAAE;oBACpC,WAAW,CAAC,OAAO,CAAC,CAAA;iBACrB;aACF;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,CACrB,OAAiB,EACjB,GAAW,EACX,QAAoC,EAC1B,EAAE;IACZ,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAA;IAE9D,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAE1B,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,OAAiB,EAAY,EAAE;IACvD,MAAM,MAAM,GAAG,IAAI,CAAA;IAEnB,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE;QACxC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QAEhD,OAAO,UAAU,CAAC,UAAU,EAAE;YAC5B,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;SAC9C;QAED,IAAI,UAAU,CAAC,UAAU,EAAE;YACzB,UAAU,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;SAC3D;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,OAAiB,EAAY,EAAE;IACvD,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;;QACrD,MAAM,SAAS,GAAG,IAAI,CAAC,UAAqB,CAAA;QAE5C,IAAI,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,CAAC,MAAM,MAAK,CAAC,EAAE;YACpC,MAAM,UAAU,GAAG,SAAS,CAAC,sBAAsB,CAAA;YAEnD,IAAI,UAAU,EAAE;gBACd,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;gBAC3B,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;gBAC5B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,0CAAE,WAAW,CAAC,SAAS,CAAC,CAAA;aAC9C;SACF;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAU,EAAE;IACxD,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAA;IAE9B,MAAM,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;IAEzD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;SACxB,GAAG,CAAC,eAAe,CAAC;SACpB,GAAG,CAAC,gBAAgB,CAAC;SACrB,GAAG,CAAC,gBAAgB,CAAC,CAAA;IAExB,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAA;IAErC,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
1
+ {"version":3,"file":"cleanup-html-output.js","sourceRoot":"","sources":["../../../src/LexicalEditor/utils/cleanup-html-output.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,18 @@ const testCases = [
16
16
  ],
17
17
  ['<span>', '<h3> > <span>', '<h3><span>test</span></h3>', '<h3>test</h3>'],
18
18
  ['<span>', '<p> > <span>', '<p><span>test</span></p>', '<p>test</p>'],
19
+ [
20
+ '<span>',
21
+ '<pre> > <span>',
22
+ '<pre><span>test</span></pre>',
23
+ '<pre>test</pre>',
24
+ ],
25
+ [
26
+ '<span>',
27
+ '<code> > <span>',
28
+ '<code><span>test</span></code>',
29
+ '<code>test</code>',
30
+ ],
19
31
  [
20
32
  'multiple <span> tags',
21
33
  '<p> > <span>',
@@ -1 +1 @@
1
- {"version":3,"file":"cleanup-html-output.test.js","sourceRoot":"","sources":["../../../src/LexicalEditor/utils/cleanup-html-output.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,wBAAwB;AACxB,8EAA8E;AAC9E,MAAM,SAAS,GAAG;IAChB;QACE,KAAK;QACL,YAAY;QACZ,oCAAoC;QACpC,6BAA6B;KAC9B;IACD;QACE,KAAK;QACL,gBAAgB;QAChB,uDAAuD;QACvD,gDAAgD;KACjD;IACD,CAAC,QAAQ,EAAE,eAAe,EAAE,4BAA4B,EAAE,eAAe,CAAC;IAC1E,CAAC,QAAQ,EAAE,cAAc,EAAE,0BAA0B,EAAE,aAAa,CAAC;IACrE;QACE,sBAAsB;QACtB,cAAc;QACd,mEAAmE;QACnE,kCAAkC;KACnC;CACF,CAAA;AAED,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAChB,iCAAiC,EACjC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;QAEvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC/B,CAAC,CACF,CAAA;IAED,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,MAAM,GAAG,iBAAiB,CAC9B,mFAAmF,CACpF,CAAA;QAED,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CACjB,0DAA0D,CAC3D,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,MAAM,GAAG,iBAAiB,CAAC;;;;;;;;;KAShC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAErB,MAAM,QAAQ,GAAG;;;;;;;;;KAShB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAEpB,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"cleanup-html-output.test.js","sourceRoot":"","sources":["../../../src/LexicalEditor/utils/cleanup-html-output.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,wBAAwB;AACxB,8EAA8E;AAC9E,MAAM,SAAS,GAAG;IAChB;QACE,KAAK;QACL,YAAY;QACZ,oCAAoC;QACpC,6BAA6B;KAC9B;IACD;QACE,KAAK;QACL,gBAAgB;QAChB,uDAAuD;QACvD,gDAAgD;KACjD;IACD,CAAC,QAAQ,EAAE,eAAe,EAAE,4BAA4B,EAAE,eAAe,CAAC;IAC1E,CAAC,QAAQ,EAAE,cAAc,EAAE,0BAA0B,EAAE,aAAa,CAAC;IACrE;QACE,QAAQ;QACR,gBAAgB;QAChB,8BAA8B;QAC9B,iBAAiB;KAClB;IACD;QACE,QAAQ;QACR,iBAAiB;QACjB,gCAAgC;QAChC,mBAAmB;KACpB;IACD;QACE,sBAAsB;QACtB,cAAc;QACd,mEAAmE;QACnE,kCAAkC;KACnC;CACF,CAAA;AAED,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAChB,iCAAiC,EACjC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;QAEvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC/B,CAAC,CACF,CAAA;IAED,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,MAAM,GAAG,iBAAiB,CAC9B,mFAAmF,CACpF,CAAA;QAED,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CACjB,0DAA0D,CAC3D,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,MAAM,GAAG,iBAAiB,CAAC;;;;;;;;;KAShC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAErB,MAAM,QAAQ,GAAG;;;;;;;;;KAShB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAEpB,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -19,6 +19,8 @@ export const createLexicalTheme = ({ typographyClassNames, classes, }) => {
19
19
  ol: classes.ol,
20
20
  },
21
21
  customEmoji: classes.customEmoji,
22
+ codeBlock: classes.codeBlock,
23
+ codeBlockText: classes.codeBlockText,
22
24
  };
23
25
  return theme;
24
26
  };
@@ -1 +1 @@
1
- {"version":3,"file":"create-lexical-theme.js","sourceRoot":"","sources":["../../../src/LexicalEditor/utils/create-lexical-theme.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,oBAAoB,EACpB,OAAO,GACD,EAAE,EAAE;IACV,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAC7B,EAAE,MAAM,EAAE,CAAC,EAAE,EACb,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,KAAK,GAAG,CAAC,EAAE,CAC1C,CAAA;IAED,MAAM,KAAK,GAAuB;QAChC,IAAI,EAAE,oBAAoB;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,IAAI,EAAE;YACJ,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB;QAED,IAAI,EAAE;YACJ,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE;gBACN,QAAQ,EAAE,kBAAkB;aAC7B;YACD,OAAO,EAAE,YAAY;YACrB,OAAO,EAAE,YAAY;YACrB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,EAAE,EAAE,OAAO,CAAC,EAAE;SACf;QACD,WAAW,EAAE,OAAO,CAAC,WAAW;KACjC,CAAA;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
1
+ {"version":3,"file":"create-lexical-theme.js","sourceRoot":"","sources":["../../../src/LexicalEditor/utils/create-lexical-theme.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,oBAAoB,EACpB,OAAO,GACD,EAAE,EAAE;IACV,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAC7B,EAAE,MAAM,EAAE,CAAC,EAAE,EACb,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,KAAK,GAAG,CAAC,EAAE,CAC1C,CAAA;IAED,MAAM,KAAK,GAAuB;QAChC,IAAI,EAAE,oBAAoB;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,IAAI,EAAE;YACJ,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB;QAED,IAAI,EAAE;YACJ,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE;gBACN,QAAQ,EAAE,kBAAkB;aAC7B;YACD,OAAO,EAAE,YAAY;YACrB,OAAO,EAAE,YAAY;YACrB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,EAAE,EAAE,OAAO,CAAC,EAAE;SACf;QACD,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,aAAa,EAAE,OAAO,CAAC,aAAa;KACrC,CAAA;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ declare const hasChildDOMNodeTag: (node: Node, tagName: string) => boolean;
2
+ export default hasChildDOMNodeTag;
@@ -0,0 +1,12 @@
1
+ import { isHTMLElement } from '@lexical/utils';
2
+ const hasChildDOMNodeTag = (node, tagName) => {
3
+ for (const child of Array.from(node.childNodes)) {
4
+ if (isHTMLElement(child) && child.tagName === tagName) {
5
+ return true;
6
+ }
7
+ hasChildDOMNodeTag(child, tagName);
8
+ }
9
+ return false;
10
+ };
11
+ export default hasChildDOMNodeTag;
12
+ //# sourceMappingURL=hasChildDOMNodeTag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasChildDOMNodeTag.js","sourceRoot":"","sources":["../../../src/LexicalEditor/utils/hasChildDOMNodeTag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE9C,MAAM,kBAAkB,GAAG,CAAC,IAAU,EAAE,OAAe,EAAE,EAAE;IACzD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;QAC/C,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE;YACrD,OAAO,IAAI,CAAA;SACZ;QAED,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;KACnC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,eAAe,kBAAkB,CAAA"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,39 @@
1
+ // eslint-disable-next-line import/no-extraneous-dependencies
2
+ import { JSDOM } from 'jsdom';
3
+ import hasChildDOMNodeTag from './hasChildDOMNodeTag';
4
+ describe('hasChildDOMNodeTag', () => {
5
+ const { document } = new JSDOM('').window;
6
+ describe('when node has no children', () => {
7
+ it('returns false', () => {
8
+ const node = document.createElement('div');
9
+ expect(hasChildDOMNodeTag(node, 'SPAN')).toBe(false);
10
+ });
11
+ });
12
+ describe('when node does not have child with specific tag', () => {
13
+ it('returns false', () => {
14
+ const node = document.createElement('div');
15
+ const child = document.createElement('p');
16
+ node.appendChild(child);
17
+ expect(hasChildDOMNodeTag(node, 'SPAN')).toBe(false);
18
+ });
19
+ });
20
+ describe('when node has a child with the specific tag', () => {
21
+ it('returns true', () => {
22
+ const node = document.createElement('div');
23
+ const child = document.createElement('span');
24
+ node.appendChild(child);
25
+ expect(hasChildDOMNodeTag(node, 'SPAN')).toBe(true);
26
+ });
27
+ });
28
+ describe('when node has a nested child with the specific tag', () => {
29
+ it('returns false', () => {
30
+ const node = document.createElement('div');
31
+ const child = document.createElement('p');
32
+ const nestedChild = document.createElement('span');
33
+ child.appendChild(nestedChild);
34
+ node.appendChild(child);
35
+ expect(hasChildDOMNodeTag(node, 'SPAN')).toBe(false);
36
+ });
37
+ });
38
+ });
39
+ //# sourceMappingURL=hasChildDOMNodeTag.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasChildDOMNodeTag.test.js","sourceRoot":"","sources":["../../../src/LexicalEditor/utils/hasChildDOMNodeTag.test.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAE7B,OAAO,kBAAkB,MAAM,sBAAsB,CAAA;AAErD,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAA;IAEzC,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;YACvB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YAE1C,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAC/D,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;YACvB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;YAEzC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YAEvB,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,6CAA6C,EAAE,GAAG,EAAE;QAC3D,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;YACtB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;YAE5C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YAEvB,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAClE,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;YACvB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;YACzC,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;YAElD,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;YAC9B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YAEvB,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -2,6 +2,7 @@ export { registerLexicalEvents } from './register-lexical-events';
2
2
  export { synchronizeToolbarState } from './synchronize-toolbar-state';
3
3
  export { toolbarStateReducer } from './toolbar-state';
4
4
  export { getLexicalNode } from './get-lexical-node';
5
+ export { getSelectedNode } from './get-selected-node';
5
6
  export { createLexicalTheme } from './create-lexical-theme';
6
7
  export { getDomValue } from './get-dom-value';
7
8
  export { setEditorValue } from './set-editor-value';
@@ -2,6 +2,7 @@ export { registerLexicalEvents } from './register-lexical-events';
2
2
  export { synchronizeToolbarState } from './synchronize-toolbar-state';
3
3
  export { toolbarStateReducer } from './toolbar-state';
4
4
  export { getLexicalNode } from './get-lexical-node';
5
+ export { getSelectedNode } from './get-selected-node';
5
6
  export { createLexicalTheme } from './create-lexical-theme';
6
7
  export { getDomValue } from './get-dom-value';
7
8
  export { setEditorValue } from './set-editor-value';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/LexicalEditor/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/LexicalEditor/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA"}
@@ -1,13 +1,16 @@
1
1
  import { INSERT_ORDERED_LIST_COMMAND, INSERT_UNORDERED_LIST_COMMAND, REMOVE_LIST_COMMAND, } from '@lexical/list';
2
2
  import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext';
3
- import { $createHeadingNode } from '@lexical/rich-text';
3
+ import { $createHeadingNode, $isHeadingNode } from '@lexical/rich-text';
4
4
  import { $setBlocksType } from '@lexical/selection';
5
5
  import { $createParagraphNode, $getSelection, $isRangeSelection, FORMAT_TEXT_COMMAND, } from 'lexical';
6
6
  import React, { useEffect, useReducer } from 'react';
7
- import { registerLexicalEvents, synchronizeToolbarState, toolbarStateReducer, } from '../LexicalEditor/utils';
7
+ import { registerLexicalEvents, synchronizeToolbarState, toolbarStateReducer, getSelectedNode, } from '../LexicalEditor/utils';
8
8
  import RichTextEditorToolbar, { ALLOWED_HEADER_TYPE, } from '../RichTextEditorToolbar';
9
+ import { useRTEPluginContext, useRTEUpdate } from '../plugins/api';
10
+ import { $isCodeBlockNode } from '../plugins/CodeBlockPlugin/nodes';
9
11
  const LexicalEditorToolbarPlugin = ({ disabled = false, toolbarRef, testIds, id, }) => {
10
12
  const [editor] = useLexicalComposerContext();
13
+ const { setDisabledFormatting } = useRTEPluginContext();
11
14
  const [{ bold, italic, list, header }, dispatch] = useReducer(toolbarStateReducer, {
12
15
  bold: false,
13
16
  italic: false,
@@ -20,6 +23,17 @@ const LexicalEditorToolbarPlugin = ({ disabled = false, toolbarRef, testIds, id,
20
23
  updateToolbar: () => synchronizeToolbarState(dispatch, editor),
21
24
  });
22
25
  }, [dispatch, editor]);
26
+ useRTEUpdate(() => {
27
+ const selection = $getSelection();
28
+ if ($isRangeSelection(selection)) {
29
+ const node = getSelectedNode(selection);
30
+ const parent = node.getParent();
31
+ const isCodeBlockSelected = $isCodeBlockNode(parent) || $isCodeBlockNode(node);
32
+ const isHeadingSelected = $isHeadingNode(node) || $isHeadingNode(parent);
33
+ // prevent formatting inside
34
+ setDisabledFormatting(isCodeBlockSelected || isHeadingSelected);
35
+ }
36
+ });
23
37
  const handleBoldClick = () => {
24
38
  editor.dispatchCommand(FORMAT_TEXT_COMMAND, 'bold');
25
39
  };
@@ -1 +1 @@
1
- {"version":3,"file":"LexicalEditorToolbarPlugin.js","sourceRoot":"","sources":["../../src/LexicalEditorToolbarPlugin/LexicalEditorToolbarPlugin.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LexicalEditorToolbarPlugin.js","sourceRoot":"","sources":["../../src/LexicalEditorToolbarPlugin/LexicalEditorToolbarPlugin.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { ReactNode } from 'react';
2
+ declare type Props = {
3
+ children?: ReactNode;
4
+ };
5
+ declare const CodeBlockComponent: ({ children }: Props) => JSX.Element;
6
+ export default CodeBlockComponent;
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { makeStyles } from '@material-ui/core/styles';
3
+ import styles from './styles';
4
+ const useStyles = makeStyles(styles, { name: 'PicassoCode' });
5
+ const CodeBlockComponent = ({ children }) => {
6
+ const classes = useStyles();
7
+ return React.createElement("pre", { className: classes.codeBlock }, children);
8
+ };
9
+ export default CodeBlockComponent;
10
+ //# sourceMappingURL=CodeBlock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeBlock.js","sourceRoot":"","sources":["../../../src/RichText/components/CodeBlock.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,MAAM,MAAM,UAAU,CAAA;AAM7B,MAAM,SAAS,GAAG,UAAU,CAAQ,MAAM,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAA;AAEpE,MAAM,kBAAkB,GAAG,CAAC,EAAE,QAAQ,EAAS,EAAE,EAAE;IACjD,MAAM,OAAO,GAAG,SAAS,EAAE,CAAA;IAE3B,OAAO,6BAAK,SAAS,EAAE,OAAO,CAAC,SAAS,IAAG,QAAQ,CAAO,CAAA;AAC5D,CAAC,CAAA;AAED,eAAe,kBAAkB,CAAA"}
@@ -1,2 +1,4 @@
1
1
  export { default as Emoji } from './Emoji';
2
2
  export { default as Image } from './Image';
3
+ export { default as CodeBlock } from './CodeBlock';
4
+ export { default as Code } from './Code';
@@ -1,3 +1,5 @@
1
1
  export { default as Emoji } from './Emoji';
2
2
  export { default as Image } from './Image';
3
+ export { default as CodeBlock } from './CodeBlock';
4
+ export { default as Code } from './Code';
3
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/RichText/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/RichText/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAA"}
@@ -1,12 +1,6 @@
1
1
  import type { Theme } from '@material-ui/core/styles';
2
- export declare const codeStyles: ({ palette, typography }: Theme) => {
3
- color: string;
4
- backgroundColor: string | undefined;
5
- border: string;
6
- borderRadius: string;
7
- padding: string;
8
- fontSize: string;
9
- fontFamily: string;
10
- };
11
- declare const _default: (theme: Theme) => import("@material-ui/styles").StyleRules<{}, "code">;
2
+ import type { CSSProperties } from '@material-ui/core/styles/withStyles';
3
+ export declare const codeStyles: ({ palette, typography }: Theme) => CSSProperties;
4
+ export declare const codeBlockStyles: ({ palette, sizes, typography, }: Theme) => CSSProperties;
5
+ declare const _default: (theme: Theme) => import("@material-ui/styles").StyleRules<{}, "code" | "codeBlock">;
12
6
  export default _default;
@@ -1,4 +1,5 @@
1
1
  import { createStyles } from '@material-ui/core/styles';
2
+ import { rem } from '@toptal/picasso-shared';
2
3
  export const codeStyles = ({ palette, typography }) => ({
3
4
  color: palette.red.main,
4
5
  backgroundColor: palette.grey.lighter,
@@ -7,8 +8,24 @@ export const codeStyles = ({ palette, typography }) => ({
7
8
  padding: '1px 0.25rem',
8
9
  fontSize: typography.fontSizes.xsmall,
9
10
  fontFamily: 'monospace',
11
+ textWrap: 'wrap',
12
+ wordBreak: 'break-word',
13
+ });
14
+ export const codeBlockStyles = ({ palette, sizes, typography, }) => ({
15
+ backgroundColor: palette.grey.lighter,
16
+ borderRadius: sizes.borderRadius.small,
17
+ padding: '0.25rem 0.5rem',
18
+ display: 'block',
19
+ fontFamily: 'monospace',
20
+ fontSize: typography.fontSizes.xxsmall,
21
+ lineHeight: rem('18px'),
22
+ color: palette.common.black,
23
+ textWrap: 'wrap',
24
+ wordBreak: 'break-word',
25
+ margin: 0,
10
26
  });
11
27
  export default (theme) => createStyles({
12
28
  code: codeStyles(theme),
29
+ codeBlock: codeBlockStyles(theme),
13
30
  });
14
31
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/RichText/components/styles.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,EAAS,EAAE,EAAE,CAAC,CAAC;IAC7D,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI;IACvB,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;IACrC,MAAM,EAAE,aAAa,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;IACzC,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,aAAa;IACtB,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM;IACrC,UAAU,EAAE,WAAW;CACxB,CAAC,CAAA;AAEF,eAAe,CAAC,KAAY,EAAE,EAAE,CAC9B,YAAY,CAAC;IACX,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC;CACxB,CAAC,CAAA"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/RichText/components/styles.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvD,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAE5C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,EAAS,EAAiB,EAAE,CAAC,CAAC;IAC5E,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI;IACvB,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;IACrC,MAAM,EAAE,aAAa,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;IACzC,YAAY,EAAE,KAAK;IACnB,OAAO,EAAE,aAAa;IACtB,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM;IACrC,UAAU,EAAE,WAAW;IACvB,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,YAAY;CACxB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAC9B,OAAO,EACP,KAAK,EACL,UAAU,GACJ,EAAiB,EAAE,CAAC,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;IACrC,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK;IACtC,OAAO,EAAE,gBAAgB;IACzB,OAAO,EAAE,OAAO;IAChB,UAAU,EAAE,WAAW;IACvB,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,OAAO;IACtC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK;IAC3B,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,YAAY;IACvB,MAAM,EAAE,CAAC;CACV,CAAC,CAAA;AAEF,eAAe,CAAC,KAAY,EAAE,EAAE,CAC9B,YAAY,CAAC;IACX,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC;IACvB,SAAS,EAAE,eAAe,CAAC,KAAK,CAAC;CAClC,CAAC,CAAA"}
@@ -16,9 +16,8 @@ import Container from '@toptal/picasso/Container';
16
16
  import List from '@toptal/picasso/List';
17
17
  import ListItem from '@toptal/picasso/ListItem';
18
18
  import Link from '@toptal/picasso/Link';
19
- import { Emoji, Image } from '../../components';
19
+ import { Emoji, Image, Code, CodeBlock } from '../../components';
20
20
  import { isCustomEmoji } from '../../../utils';
21
- import Code from '../../components/Code';
22
21
  // List internaly passes another props to ListItem
23
22
  const Li = (_a) => {
24
23
  var { children } = _a, props = __rest(_a, ["children"]);
@@ -51,6 +50,7 @@ const componentMap = {
51
50
  a: A,
52
51
  img: Img,
53
52
  code: Code,
53
+ pre: CodeBlock,
54
54
  };
55
55
  const picassoMapper = (child) => {
56
56
  var _a, _b;
@@ -1 +1 @@
1
- {"version":3,"file":"useRichText.js","sourceRoot":"","sources":["../../../../src/RichText/hooks/useRichText/useRichText.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useRichText.js","sourceRoot":"","sources":["../../../../src/RichText/hooks/useRichText/useRichText.tsx"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ export declare type TextType = {
4
4
  };
5
5
  export declare type ElementType = {
6
6
  type: 'element';
7
- tagName: 'p' | 'h3' | 'strong' | 'em' | 'ul' | 'ol' | 'li' | 'br' | 'a' | 'img' | 'code';
7
+ tagName: 'p' | 'h3' | 'strong' | 'em' | 'ul' | 'ol' | 'li' | 'br' | 'a' | 'img' | 'code' | 'pre';
8
8
  properties: {};
9
9
  children: ASTChildType[];
10
10
  };
@@ -3,7 +3,7 @@ import { Bold16, Container, Italic16, ListOrdered16, ListUnordered16, Select, }
3
3
  import { useMultipleForwardRefs } from '@toptal/picasso/utils';
4
4
  import cx from 'classnames';
5
5
  import React, { forwardRef } from 'react';
6
- import { useToolbarPortalRegister } from '../plugins/api';
6
+ import { useRTEPluginContext, useToolbarPortalRegister } from '../plugins/api';
7
7
  import TextEditorButton from '../RichTextEditorButton';
8
8
  import styles from './styles';
9
9
  const useStyles = makeStyles(styles, {
@@ -13,9 +13,10 @@ export const ALLOWED_HEADER_TYPE = '3';
13
13
  export const RichTextEditorToolbar = forwardRef(function RichTextEditorToolbar(props, ref) {
14
14
  const { disabled, format, onBoldClick, onItalicClick, onHeaderChange, onUnorderedClick, onOrderedClick, testIds, id, } = props;
15
15
  const { setToolbarPortalEl } = useToolbarPortalRegister();
16
+ const { disabledFormatting } = useRTEPluginContext();
16
17
  const toolbarRef = useMultipleForwardRefs([ref, setToolbarPortalEl]);
17
18
  const classes = useStyles(props);
18
- const isHeadingFormat = format.header === ALLOWED_HEADER_TYPE;
19
+ const isInlineFormattingDisabled = disabled || disabledFormatting;
19
20
  return (React.createElement(Container, { ref: toolbarRef, id: `${id}toolbar`, className: classes.toolbar },
20
21
  React.createElement(Container, { className: cx(classes.group, {
21
22
  groupDisabled: disabled,
@@ -25,8 +26,8 @@ export const RichTextEditorToolbar = forwardRef(function RichTextEditorToolbar(p
25
26
  { value: '', text: 'normal' },
26
27
  ], size: 'small', menuWidth: '123px', className: classes.select, disabled: disabled, "data-testid": testIds === null || testIds === void 0 ? void 0 : testIds.headerSelect })),
27
28
  React.createElement(Container, { className: classes.group },
28
- React.createElement(TextEditorButton, { icon: React.createElement(Bold16, null), onClick: onBoldClick, active: isHeadingFormat ? false : format.bold, disabled: isHeadingFormat || disabled, "data-testid": testIds === null || testIds === void 0 ? void 0 : testIds.boldButton }),
29
- React.createElement(TextEditorButton, { icon: React.createElement(Italic16, null), onClick: onItalicClick, active: isHeadingFormat ? false : format.italic, disabled: isHeadingFormat || disabled, "data-testid": testIds === null || testIds === void 0 ? void 0 : testIds.italicButton })),
29
+ React.createElement(TextEditorButton, { icon: React.createElement(Bold16, null), onClick: onBoldClick, active: isInlineFormattingDisabled ? false : format.bold, disabled: isInlineFormattingDisabled, "data-testid": testIds === null || testIds === void 0 ? void 0 : testIds.boldButton }),
30
+ React.createElement(TextEditorButton, { icon: React.createElement(Italic16, null), onClick: onItalicClick, active: isInlineFormattingDisabled ? false : format.italic, disabled: isInlineFormattingDisabled, "data-testid": testIds === null || testIds === void 0 ? void 0 : testIds.italicButton })),
30
31
  React.createElement(Container, { className: classes.group },
31
32
  React.createElement(TextEditorButton, { icon: React.createElement(ListUnordered16, null), onClick: onUnorderedClick, active: format.list === 'bullet', disabled: disabled, "data-testid": testIds === null || testIds === void 0 ? void 0 : testIds.unorderedListButton }),
32
33
  React.createElement(TextEditorButton, { icon: React.createElement(ListOrdered16, null), onClick: onOrderedClick, active: format.list === 'ordered', disabled: disabled, "data-testid": testIds === null || testIds === void 0 ? void 0 : testIds.orderedListButton }))));
@@ -1 +1 @@
1
- {"version":3,"file":"RichTextEditorToolbar.js","sourceRoot":"","sources":["../../src/RichTextEditorToolbar/RichTextEditorToolbar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RichTextEditorToolbar.js","sourceRoot":"","sources":["../../src/RichTextEditorToolbar/RichTextEditorToolbar.tsx"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -2,5 +2,5 @@ export { default as RichTextEditor } from './RichTextEditor';
2
2
  export type { RichTextEditorProps, RichTextEditorChangeHandler, } from './RichTextEditor';
3
3
  export { default as RichText } from './RichText';
4
4
  export type { RichTextProps, ASTType } from './RichText';
5
- export { ImagePlugin, EmojiPlugin, LinkPlugin, CodePlugin } from './plugins';
5
+ export { ImagePlugin, EmojiPlugin, LinkPlugin, CodePlugin, CodeBlockPlugin, } from './plugins';
6
6
  export type { UploadedImage, CustomEmoji, CustomEmojiGroup } from './plugins';
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
1
  export { default as RichTextEditor } from './RichTextEditor';
2
2
  export { default as RichText } from './RichText';
3
- export { ImagePlugin, EmojiPlugin, LinkPlugin, CodePlugin } from './plugins';
3
+ export { ImagePlugin, EmojiPlugin, LinkPlugin, CodePlugin, CodeBlockPlugin, } from './plugins';
4
4
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAK5D,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAA;AAEhD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAK5D,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAA;AAEhD,OAAO,EACL,WAAW,EACX,WAAW,EACX,UAAU,EACV,UAAU,EACV,eAAe,GAChB,MAAM,WAAW,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toptal/picasso-rich-text-editor",
3
- "version": "4.2.1",
3
+ "version": "5.0.1",
4
4
  "description": "Picasso rich text editor",
5
5
  "author": "Toptal",
6
6
  "homepage": "https://github.com/toptal/picasso/tree/master/packages/picasso-rich-text-editor#readme",
@@ -23,7 +23,7 @@
23
23
  "url": "https://github.com/toptal/picasso/issues"
24
24
  },
25
25
  "peerDependencies": {
26
- "@toptal/picasso": "^37.1.0",
26
+ "@toptal/picasso": "^37.3.0",
27
27
  "@toptal/picasso-shared": "^12.0.0",
28
28
  "@material-ui/core": "4.12.4",
29
29
  "@lexical/utils": "0.11.2",
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export declare type Props = {
3
+ 'data-testid'?: string;
4
+ };
5
+ declare const CodeBlockButton: ({ "data-testid": testId }: Props) => JSX.Element;
6
+ export default CodeBlockButton;