@payloadcms/richtext-lexical 4.0.0-canary.2 → 4.0.0-internal.011fd46

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 (150) hide show
  1. package/dist/exports/client/Field-VQX3RNMF.js +2 -0
  2. package/dist/exports/client/{Field-G5Z2HM5Y.js.map → Field-VQX3RNMF.js.map} +3 -3
  3. package/dist/exports/client/bundled.css +1 -1
  4. package/dist/exports/client/chunk-X3D4LZS7.js +2 -0
  5. package/dist/exports/client/chunk-X3D4LZS7.js.map +7 -0
  6. package/dist/exports/client/index.js +22 -20
  7. package/dist/exports/client/index.js.map +4 -4
  8. package/dist/features/blockquote/markdownTransformer.d.ts +1 -1
  9. package/dist/features/blockquote/markdownTransformer.d.ts.map +1 -1
  10. package/dist/features/blockquote/markdownTransformer.js.map +1 -1
  11. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.d.ts +1 -1
  12. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.d.ts.map +1 -1
  13. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js +1 -1
  14. package/dist/features/blocks/client/markdown/getLexicalToMarkdown.js.map +1 -1
  15. package/dist/features/blocks/client/markdown/getMarkdownToLexical.d.ts +1 -1
  16. package/dist/features/blocks/client/markdown/getMarkdownToLexical.d.ts.map +1 -1
  17. package/dist/features/blocks/client/markdown/getMarkdownToLexical.js +1 -1
  18. package/dist/features/blocks/client/markdown/getMarkdownToLexical.js.map +1 -1
  19. package/dist/features/blocks/client/markdown/markdownTransformer.d.ts +1 -2
  20. package/dist/features/blocks/client/markdown/markdownTransformer.d.ts.map +1 -1
  21. package/dist/features/blocks/client/markdown/markdownTransformer.js.map +1 -1
  22. package/dist/features/blocks/server/markdown/markdownTransformer.d.ts +1 -1
  23. package/dist/features/blocks/server/markdown/markdownTransformer.d.ts.map +1 -1
  24. package/dist/features/blocks/server/markdown/markdownTransformer.js.map +1 -1
  25. package/dist/features/converters/lexicalToMarkdown/index.d.ts.map +1 -1
  26. package/dist/features/converters/lexicalToMarkdown/index.js +1 -1
  27. package/dist/features/converters/lexicalToMarkdown/index.js.map +1 -1
  28. package/dist/features/converters/markdownToLexical/index.js +1 -1
  29. package/dist/features/converters/markdownToLexical/index.js.map +1 -1
  30. package/dist/features/experimental_table/markdownTransformer.d.ts +1 -1
  31. package/dist/features/experimental_table/markdownTransformer.d.ts.map +1 -1
  32. package/dist/features/experimental_table/markdownTransformer.js +1 -1
  33. package/dist/features/experimental_table/markdownTransformer.js.map +1 -1
  34. package/dist/features/format/bold/markdownTransformers.d.ts +1 -1
  35. package/dist/features/format/bold/markdownTransformers.d.ts.map +1 -1
  36. package/dist/features/format/bold/markdownTransformers.js.map +1 -1
  37. package/dist/features/format/inlineCode/markdownTransformers.d.ts +1 -1
  38. package/dist/features/format/inlineCode/markdownTransformers.d.ts.map +1 -1
  39. package/dist/features/format/inlineCode/markdownTransformers.js.map +1 -1
  40. package/dist/features/format/italic/markdownTransformers.d.ts +1 -1
  41. package/dist/features/format/italic/markdownTransformers.d.ts.map +1 -1
  42. package/dist/features/format/italic/markdownTransformers.js.map +1 -1
  43. package/dist/features/format/strikethrough/markdownTransformers.d.ts +1 -1
  44. package/dist/features/format/strikethrough/markdownTransformers.d.ts.map +1 -1
  45. package/dist/features/format/strikethrough/markdownTransformers.js.map +1 -1
  46. package/dist/features/heading/markdownTransformer.d.ts +1 -1
  47. package/dist/features/heading/markdownTransformer.d.ts.map +1 -1
  48. package/dist/features/heading/markdownTransformer.js.map +1 -1
  49. package/dist/features/horizontalRule/client/markdownTransformer.d.ts +1 -1
  50. package/dist/features/horizontalRule/client/markdownTransformer.d.ts.map +1 -1
  51. package/dist/features/horizontalRule/client/markdownTransformer.js.map +1 -1
  52. package/dist/features/horizontalRule/server/markdownTransformer.d.ts +1 -1
  53. package/dist/features/horizontalRule/server/markdownTransformer.d.ts.map +1 -1
  54. package/dist/features/horizontalRule/server/markdownTransformer.js.map +1 -1
  55. package/dist/features/link/markdownTransformer.d.ts +1 -1
  56. package/dist/features/link/markdownTransformer.d.ts.map +1 -1
  57. package/dist/features/link/markdownTransformer.js.map +1 -1
  58. package/dist/features/link/markdownTransformer.spec.js +1 -1
  59. package/dist/features/link/markdownTransformer.spec.js.map +1 -1
  60. package/dist/features/lists/checklist/markdownTransformers.d.ts +1 -1
  61. package/dist/features/lists/checklist/markdownTransformers.d.ts.map +1 -1
  62. package/dist/features/lists/checklist/markdownTransformers.js.map +1 -1
  63. package/dist/features/lists/orderedList/markdownTransformer.d.ts +1 -1
  64. package/dist/features/lists/orderedList/markdownTransformer.d.ts.map +1 -1
  65. package/dist/features/lists/orderedList/markdownTransformer.js.map +1 -1
  66. package/dist/features/lists/shared/markdown.d.ts +1 -1
  67. package/dist/features/lists/shared/markdown.d.ts.map +1 -1
  68. package/dist/features/lists/shared/markdown.js.map +1 -1
  69. package/dist/features/lists/unorderedList/markdownTransformer.d.ts +1 -1
  70. package/dist/features/lists/unorderedList/markdownTransformer.d.ts.map +1 -1
  71. package/dist/features/lists/unorderedList/markdownTransformer.js.map +1 -1
  72. package/dist/features/toolbars/shared/useToolbarStates.d.ts.map +1 -1
  73. package/dist/features/toolbars/shared/useToolbarStates.js +3 -1
  74. package/dist/features/toolbars/shared/useToolbarStates.js.map +1 -1
  75. package/dist/features/typesClient.d.ts +1 -1
  76. package/dist/features/typesClient.d.ts.map +1 -1
  77. package/dist/features/typesClient.js.map +1 -1
  78. package/dist/features/typesServer.d.ts +1 -1
  79. package/dist/features/typesServer.d.ts.map +1 -1
  80. package/dist/features/typesServer.js.map +1 -1
  81. package/dist/features/upload/server/markdownTransformer.d.ts +1 -1
  82. package/dist/features/upload/server/markdownTransformer.d.ts.map +1 -1
  83. package/dist/features/upload/server/markdownTransformer.js.map +1 -1
  84. package/dist/field/bundled.css +1 -1
  85. package/dist/field/index.css +3 -4
  86. package/dist/index.d.ts +2 -2
  87. package/dist/index.d.ts.map +1 -1
  88. package/dist/index.js +2 -2
  89. package/dist/index.js.map +1 -1
  90. package/dist/lexical/plugins/MarkdownShortcut/index.d.ts.map +1 -1
  91. package/dist/lexical/plugins/MarkdownShortcut/index.js +1 -1
  92. package/dist/lexical/plugins/MarkdownShortcut/index.js.map +1 -1
  93. package/dist/lexical/utils/markdown/createBlockNode.d.ts +1 -1
  94. package/dist/lexical/utils/markdown/createBlockNode.d.ts.map +1 -1
  95. package/dist/lexical/utils/markdown/createBlockNode.js.map +1 -1
  96. package/dist/lexical/utils/markdown/normalizeMarkdown.d.ts +28 -0
  97. package/dist/lexical/utils/markdown/normalizeMarkdown.d.ts.map +1 -0
  98. package/dist/lexical/utils/markdown/normalizeMarkdown.js +95 -0
  99. package/dist/lexical/utils/markdown/normalizeMarkdown.js.map +1 -0
  100. package/dist/lexical-proxy/@lexical-markdown.d.ts +40 -1
  101. package/dist/lexical-proxy/@lexical-markdown.d.ts.map +1 -1
  102. package/dist/lexical-proxy/@lexical-markdown.js +56 -1
  103. package/dist/lexical-proxy/@lexical-markdown.js.map +1 -1
  104. package/dist/lexical-proxy/@lexical-markdown.spec.js +89 -0
  105. package/dist/lexical-proxy/@lexical-markdown.spec.js.map +1 -0
  106. package/dist/utilities/fieldsDrawer/index.css +0 -4
  107. package/package.json +21 -25
  108. package/dist/exports/client/Field-G5Z2HM5Y.js +0 -2
  109. package/dist/exports/client/chunk-LH634DPU.js +0 -12
  110. package/dist/exports/client/chunk-LH634DPU.js.map +0 -7
  111. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.d.ts +0 -2
  112. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.d.ts.map +0 -1
  113. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js +0 -2
  114. package/dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js.map +0 -1
  115. package/dist/packages/@lexical/markdown/MarkdownExport.d.ts +0 -14
  116. package/dist/packages/@lexical/markdown/MarkdownExport.d.ts.map +0 -1
  117. package/dist/packages/@lexical/markdown/MarkdownExport.js +0 -213
  118. package/dist/packages/@lexical/markdown/MarkdownExport.js.map +0 -1
  119. package/dist/packages/@lexical/markdown/MarkdownImport.d.ts +0 -19
  120. package/dist/packages/@lexical/markdown/MarkdownImport.d.ts.map +0 -1
  121. package/dist/packages/@lexical/markdown/MarkdownImport.js +0 -198
  122. package/dist/packages/@lexical/markdown/MarkdownImport.js.map +0 -1
  123. package/dist/packages/@lexical/markdown/MarkdownShortcuts.d.ts +0 -11
  124. package/dist/packages/@lexical/markdown/MarkdownShortcuts.d.ts.map +0 -1
  125. package/dist/packages/@lexical/markdown/MarkdownShortcuts.js +0 -304
  126. package/dist/packages/@lexical/markdown/MarkdownShortcuts.js.map +0 -1
  127. package/dist/packages/@lexical/markdown/MarkdownTransformers.d.ts +0 -147
  128. package/dist/packages/@lexical/markdown/MarkdownTransformers.d.ts.map +0 -1
  129. package/dist/packages/@lexical/markdown/MarkdownTransformers.js +0 -268
  130. package/dist/packages/@lexical/markdown/MarkdownTransformers.js.map +0 -1
  131. package/dist/packages/@lexical/markdown/importTextFormatTransformer.d.ts +0 -22
  132. package/dist/packages/@lexical/markdown/importTextFormatTransformer.d.ts.map +0 -1
  133. package/dist/packages/@lexical/markdown/importTextFormatTransformer.js +0 -91
  134. package/dist/packages/@lexical/markdown/importTextFormatTransformer.js.map +0 -1
  135. package/dist/packages/@lexical/markdown/importTextMatchTransformer.d.ts +0 -21
  136. package/dist/packages/@lexical/markdown/importTextMatchTransformer.d.ts.map +0 -1
  137. package/dist/packages/@lexical/markdown/importTextMatchTransformer.js +0 -54
  138. package/dist/packages/@lexical/markdown/importTextMatchTransformer.js.map +0 -1
  139. package/dist/packages/@lexical/markdown/importTextTransformers.d.ts +0 -18
  140. package/dist/packages/@lexical/markdown/importTextTransformers.d.ts.map +0 -1
  141. package/dist/packages/@lexical/markdown/importTextTransformers.js +0 -54
  142. package/dist/packages/@lexical/markdown/importTextTransformers.js.map +0 -1
  143. package/dist/packages/@lexical/markdown/index.d.ts +0 -29
  144. package/dist/packages/@lexical/markdown/index.d.ts.map +0 -1
  145. package/dist/packages/@lexical/markdown/index.js +0 -39
  146. package/dist/packages/@lexical/markdown/index.js.map +0 -1
  147. package/dist/packages/@lexical/markdown/utils.d.ts +0 -34
  148. package/dist/packages/@lexical/markdown/utils.d.ts.map +0 -1
  149. package/dist/packages/@lexical/markdown/utils.js +0 -267
  150. package/dist/packages/@lexical/markdown/utils.js.map +0 -1
@@ -0,0 +1,89 @@
1
+ import { createHeadlessEditor } from '@lexical/headless';
2
+ import { LinkNode } from '@lexical/link';
3
+ import { ListItemNode, ListNode } from '@lexical/list';
4
+ import { HeadingNode, QuoteNode } from '@lexical/rich-text';
5
+ import { $getRoot, $isElementNode, $isLineBreakNode } from 'lexical';
6
+ import { describe, expect, it } from 'vitest';
7
+ import { $convertFromMarkdownString, $convertToMarkdownString } from './@lexical-markdown.js';
8
+ function createEditor() {
9
+ return createHeadlessEditor({
10
+ nodes: [HeadingNode, QuoteNode, ListNode, ListItemNode, LinkNode]
11
+ });
12
+ }
13
+ function importMarkdown(markdown) {
14
+ const editor = createEditor();
15
+ editor.update(() => $convertFromMarkdownString(markdown), {
16
+ discrete: true
17
+ });
18
+ let result = {
19
+ hasLineBreak: false,
20
+ textContent: ''
21
+ };
22
+ editor.getEditorState().read(() => {
23
+ const firstChild = $getRoot().getFirstChild();
24
+ if (!$isElementNode(firstChild)) {
25
+ throw new Error('Expected an element block');
26
+ }
27
+ result = {
28
+ hasLineBreak: firstChild.getChildren().some(child => $isLineBreakNode(child)),
29
+ textContent: firstChild.getTextContent()
30
+ };
31
+ });
32
+ return result;
33
+ }
34
+ function roundTrip(markdown) {
35
+ const editor = createEditor();
36
+ editor.update(() => $convertFromMarkdownString(markdown), {
37
+ discrete: true
38
+ });
39
+ let output = '';
40
+ editor.getEditorState().read(() => {
41
+ output = $convertToMarkdownString();
42
+ });
43
+ return output;
44
+ }
45
+ // These tests guard the behavior that originally motivated dropping Payload's
46
+ // vendored @lexical/markdown fork: hard line breaks must survive markdown
47
+ // import (and round trip) even when adjacent lines are merged by default. The
48
+ // fix now lives in the upstream package (lexical 0.45, facebook/lexical#8402);
49
+ // these assert it still holds through Payload's wrapper.
50
+ describe('markdown hard line break import', () => {
51
+ it('should import a trailing-space hard break as a line break node with the marker stripped', () => {
52
+ const {
53
+ hasLineBreak,
54
+ textContent
55
+ } = importMarkdown(['foo ', 'bar'].join('\n'));
56
+ expect(hasLineBreak).toBe(true);
57
+ expect(textContent).toBe('foo\nbar');
58
+ });
59
+ it('should import a backslash hard break as a line break node with the marker stripped', () => {
60
+ const {
61
+ hasLineBreak,
62
+ textContent
63
+ } = importMarkdown('foo\\\nbar');
64
+ expect(hasLineBreak).toBe(true);
65
+ expect(textContent).toBe('foo\nbar');
66
+ });
67
+ });
68
+ describe('markdown hard line break round trip', () => {
69
+ it('should round trip a trailing-space hard break', () => {
70
+ const md = ['foo ', 'bar'].join('\n');
71
+ expect(roundTrip(md)).toBe(md);
72
+ });
73
+ it('should round trip a backslash hard break', () => {
74
+ const md = 'foo\\\nbar';
75
+ expect(roundTrip(md)).toBe(md);
76
+ });
77
+ it('should not introduce a hard break for a soft wrap', () => {
78
+ expect(roundTrip(['foo', 'bar'].join('\n'))).toBe('foo bar');
79
+ });
80
+ it('should round trip a hard break after formatted text', () => {
81
+ const md = '**foo** \nbar';
82
+ expect(roundTrip(md)).toBe(md);
83
+ });
84
+ it('should round trip a hard break after a link', () => {
85
+ const md = '[foo](https://payloadcms.com) \nbar';
86
+ expect(roundTrip(md)).toBe(md);
87
+ });
88
+ });
89
+ //# sourceMappingURL=@lexical-markdown.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"@lexical-markdown.spec.js","names":["createHeadlessEditor","LinkNode","ListItemNode","ListNode","HeadingNode","QuoteNode","$getRoot","$isElementNode","$isLineBreakNode","describe","expect","it","$convertFromMarkdownString","$convertToMarkdownString","createEditor","nodes","importMarkdown","markdown","editor","update","discrete","result","hasLineBreak","textContent","getEditorState","read","firstChild","getFirstChild","Error","getChildren","some","child","getTextContent","roundTrip","output","join","toBe","md"],"sources":["../../src/lexical-proxy/@lexical-markdown.spec.ts"],"sourcesContent":["import { createHeadlessEditor } from '@lexical/headless'\nimport { LinkNode } from '@lexical/link'\nimport { ListItemNode, ListNode } from '@lexical/list'\nimport { HeadingNode, QuoteNode } from '@lexical/rich-text'\nimport { $getRoot, $isElementNode, $isLineBreakNode } from 'lexical'\nimport { describe, expect, it } from 'vitest'\n\nimport { $convertFromMarkdownString, $convertToMarkdownString } from './@lexical-markdown.js'\n\nfunction createEditor() {\n return createHeadlessEditor({\n nodes: [HeadingNode, QuoteNode, ListNode, ListItemNode, LinkNode],\n })\n}\n\nfunction importMarkdown(markdown: string): { hasLineBreak: boolean; textContent: string } {\n const editor = createEditor()\n editor.update(() => $convertFromMarkdownString(markdown), { discrete: true })\n let result = { hasLineBreak: false, textContent: '' }\n editor.getEditorState().read(() => {\n const firstChild = $getRoot().getFirstChild()\n if (!$isElementNode(firstChild)) {\n throw new Error('Expected an element block')\n }\n result = {\n hasLineBreak: firstChild.getChildren().some((child) => $isLineBreakNode(child)),\n textContent: firstChild.getTextContent(),\n }\n })\n return result\n}\n\nfunction roundTrip(markdown: string): string {\n const editor = createEditor()\n editor.update(() => $convertFromMarkdownString(markdown), { discrete: true })\n let output = ''\n editor.getEditorState().read(() => {\n output = $convertToMarkdownString()\n })\n return output\n}\n\n// These tests guard the behavior that originally motivated dropping Payload's\n// vendored @lexical/markdown fork: hard line breaks must survive markdown\n// import (and round trip) even when adjacent lines are merged by default. The\n// fix now lives in the upstream package (lexical 0.45, facebook/lexical#8402);\n// these assert it still holds through Payload's wrapper.\ndescribe('markdown hard line break import', () => {\n it('should import a trailing-space hard break as a line break node with the marker stripped', () => {\n const { hasLineBreak, textContent } = importMarkdown(['foo ', 'bar'].join('\\n'))\n\n expect(hasLineBreak).toBe(true)\n expect(textContent).toBe('foo\\nbar')\n })\n\n it('should import a backslash hard break as a line break node with the marker stripped', () => {\n const { hasLineBreak, textContent } = importMarkdown('foo\\\\\\nbar')\n\n expect(hasLineBreak).toBe(true)\n expect(textContent).toBe('foo\\nbar')\n })\n})\n\ndescribe('markdown hard line break round trip', () => {\n it('should round trip a trailing-space hard break', () => {\n const md = ['foo ', 'bar'].join('\\n')\n expect(roundTrip(md)).toBe(md)\n })\n\n it('should round trip a backslash hard break', () => {\n const md = 'foo\\\\\\nbar'\n expect(roundTrip(md)).toBe(md)\n })\n\n it('should not introduce a hard break for a soft wrap', () => {\n expect(roundTrip(['foo', 'bar'].join('\\n'))).toBe('foo bar')\n })\n\n it('should round trip a hard break after formatted text', () => {\n const md = '**foo** \\nbar'\n expect(roundTrip(md)).toBe(md)\n })\n\n it('should round trip a hard break after a link', () => {\n const md = '[foo](https://payloadcms.com) \\nbar'\n expect(roundTrip(md)).toBe(md)\n })\n})\n"],"mappings":"AAAA,SAASA,oBAAoB,QAAQ;AACrC,SAASC,QAAQ,QAAQ;AACzB,SAASC,YAAY,EAAEC,QAAQ,QAAQ;AACvC,SAASC,WAAW,EAAEC,SAAS,QAAQ;AACvC,SAASC,QAAQ,EAAEC,cAAc,EAAEC,gBAAgB,QAAQ;AAC3D,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,QAAQ;AAErC,SAASC,0BAA0B,EAAEC,wBAAwB,QAAQ;AAErE,SAASC,aAAA;EACP,OAAOd,oBAAA,CAAqB;IAC1Be,KAAA,EAAO,CAACX,WAAA,EAAaC,SAAA,EAAWF,QAAA,EAAUD,YAAA,EAAcD,QAAA;EAC1D;AACF;AAEA,SAASe,eAAeC,QAAgB;EACtC,MAAMC,MAAA,GAASJ,YAAA;EACfI,MAAA,CAAOC,MAAM,CAAC,MAAMP,0BAAA,CAA2BK,QAAA,GAAW;IAAEG,QAAA,EAAU;EAAK;EAC3E,IAAIC,MAAA,GAAS;IAAEC,YAAA,EAAc;IAAOC,WAAA,EAAa;EAAG;EACpDL,MAAA,CAAOM,cAAc,GAAGC,IAAI,CAAC;IAC3B,MAAMC,UAAA,GAAapB,QAAA,GAAWqB,aAAa;IAC3C,IAAI,CAACpB,cAAA,CAAemB,UAAA,GAAa;MAC/B,MAAM,IAAIE,KAAA,CAAM;IAClB;IACAP,MAAA,GAAS;MACPC,YAAA,EAAcI,UAAA,CAAWG,WAAW,GAAGC,IAAI,CAAEC,KAAA,IAAUvB,gBAAA,CAAiBuB,KAAA;MACxER,WAAA,EAAaG,UAAA,CAAWM,cAAc;IACxC;EACF;EACA,OAAOX,MAAA;AACT;AAEA,SAASY,UAAUhB,QAAgB;EACjC,MAAMC,MAAA,GAASJ,YAAA;EACfI,MAAA,CAAOC,MAAM,CAAC,MAAMP,0BAAA,CAA2BK,QAAA,GAAW;IAAEG,QAAA,EAAU;EAAK;EAC3E,IAAIc,MAAA,GAAS;EACbhB,MAAA,CAAOM,cAAc,GAAGC,IAAI,CAAC;IAC3BS,MAAA,GAASrB,wBAAA;EACX;EACA,OAAOqB,MAAA;AACT;AAEA;AACA;AACA;AACA;AACA;AACAzB,QAAA,CAAS,mCAAmC;EAC1CE,EAAA,CAAG,2FAA2F;IAC5F,MAAM;MAAEW,YAAY;MAAEC;IAAW,CAAE,GAAGP,cAAA,CAAe,CAAC,SAAS,MAAM,CAACmB,IAAI,CAAC;IAE3EzB,MAAA,CAAOY,YAAA,EAAcc,IAAI,CAAC;IAC1B1B,MAAA,CAAOa,WAAA,EAAaa,IAAI,CAAC;EAC3B;EAEAzB,EAAA,CAAG,sFAAsF;IACvF,MAAM;MAAEW,YAAY;MAAEC;IAAW,CAAE,GAAGP,cAAA,CAAe;IAErDN,MAAA,CAAOY,YAAA,EAAcc,IAAI,CAAC;IAC1B1B,MAAA,CAAOa,WAAA,EAAaa,IAAI,CAAC;EAC3B;AACF;AAEA3B,QAAA,CAAS,uCAAuC;EAC9CE,EAAA,CAAG,iDAAiD;IAClD,MAAM0B,EAAA,GAAK,CAAC,SAAS,MAAM,CAACF,IAAI,CAAC;IACjCzB,MAAA,CAAOuB,SAAA,CAAUI,EAAA,GAAKD,IAAI,CAACC,EAAA;EAC7B;EAEA1B,EAAA,CAAG,4CAA4C;IAC7C,MAAM0B,EAAA,GAAK;IACX3B,MAAA,CAAOuB,SAAA,CAAUI,EAAA,GAAKD,IAAI,CAACC,EAAA;EAC7B;EAEA1B,EAAA,CAAG,qDAAqD;IACtDD,MAAA,CAAOuB,SAAA,CAAU,CAAC,OAAO,MAAM,CAACE,IAAI,CAAC,QAAQC,IAAI,CAAC;EACpD;EAEAzB,EAAA,CAAG,uDAAuD;IACxD,MAAM0B,EAAA,GAAK;IACX3B,MAAA,CAAOuB,SAAA,CAAUI,EAAA,GAAKD,IAAI,CAACC,EAAA;EAC7B;EAEA1B,EAAA,CAAG,+CAA+C;IAChD,MAAM0B,EAAA,GAAK;IACX3B,MAAA,CAAOuB,SAAA,CAAUI,EAAA,GAAKD,IAAI,CAACC,EAAA;EAC7B;AACF","ignoreList":[]}
@@ -9,8 +9,4 @@
9
9
  padding: var(--spacer-3);
10
10
  }
11
11
  }
12
-
13
- .fields-drawer .radio-group .field-description {
14
- margin-top: var(--spacer-2);
15
- }
16
12
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/richtext-lexical",
3
- "version": "4.0.0-canary.2",
3
+ "version": "4.0.0-internal.011fd46",
4
4
  "description": "The officially supported Lexical richtext adapter for Payload",
5
5
  "homepage": "https://payloadcms.com",
6
6
  "repository": {
@@ -178,11 +178,6 @@
178
178
  "types": "./dist/lexical-proxy/@lexical-react/LexicalContentEditable.d.ts",
179
179
  "default": "./dist/lexical-proxy/@lexical-react/LexicalContentEditable.js"
180
180
  },
181
- "./lexical/react/LexicalContextMenuPlugin": {
182
- "import": "./dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js",
183
- "types": "./dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.d.ts",
184
- "default": "./dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js"
185
- },
186
181
  "./lexical/react/LexicalNodeContextMenuPlugin": {
187
182
  "import": "./dist/lexical-proxy/@lexical-react/LexicalNodeContextMenuPlugin.js",
188
183
  "types": "./dist/lexical-proxy/@lexical-react/LexicalNodeContextMenuPlugin.d.ts",
@@ -348,24 +343,25 @@
348
343
  ]
349
344
  },
350
345
  "dependencies": {
351
- "@lexical/clipboard": "0.41.0",
352
- "@lexical/headless": "0.41.0",
353
- "@lexical/html": "0.41.0",
354
- "@lexical/link": "0.41.0",
355
- "@lexical/list": "0.41.0",
356
- "@lexical/mark": "0.41.0",
357
- "@lexical/react": "0.41.0",
358
- "@lexical/rich-text": "0.41.0",
359
- "@lexical/selection": "0.41.0",
360
- "@lexical/table": "0.41.0",
361
- "@lexical/utils": "0.41.0",
346
+ "@lexical/clipboard": "0.45.0",
347
+ "@lexical/headless": "0.45.0",
348
+ "@lexical/html": "0.45.0",
349
+ "@lexical/link": "0.45.0",
350
+ "@lexical/list": "0.45.0",
351
+ "@lexical/mark": "0.45.0",
352
+ "@lexical/markdown": "0.45.0",
353
+ "@lexical/react": "0.45.0",
354
+ "@lexical/rich-text": "0.45.0",
355
+ "@lexical/selection": "0.45.0",
356
+ "@lexical/table": "0.45.0",
357
+ "@lexical/utils": "0.45.0",
362
358
  "acorn": "8.16.0",
363
359
  "bson-objectid": "2.0.4",
364
360
  "csstype": "3.2.3",
365
361
  "dequal": "2.0.3",
366
362
  "escape-html": "1.0.3",
367
363
  "jsox": "1.2.125",
368
- "lexical": "0.41.0",
364
+ "lexical": "0.45.0",
369
365
  "mdast-util-from-markdown": "2.0.3",
370
366
  "mdast-util-mdx-jsx": "3.2.0",
371
367
  "micromark-extension-mdx-jsx": "3.0.2",
@@ -373,8 +369,8 @@
373
369
  "react-error-boundary": "6.1.1",
374
370
  "ts-essentials": "10.0.3",
375
371
  "uuid": "14.0.0",
376
- "@payloadcms/translations": "4.0.0-canary.2",
377
- "@payloadcms/ui": "4.0.0-canary.2"
372
+ "@payloadcms/ui": "4.0.0-internal.011fd46",
373
+ "@payloadcms/translations": "4.0.0-internal.011fd46"
378
374
  },
379
375
  "devDependencies": {
380
376
  "@babel/cli": "7.27.2",
@@ -382,7 +378,7 @@
382
378
  "@babel/preset-env": "7.27.2",
383
379
  "@babel/preset-react": "7.27.1",
384
380
  "@babel/preset-typescript": "7.27.1",
385
- "@lexical/eslint-plugin": "0.41.0",
381
+ "@lexical/eslint-plugin": "0.45.0",
386
382
  "@types/escape-html": "1.0.4",
387
383
  "@types/json-schema": "7.0.15",
388
384
  "@types/node": "24.12.3",
@@ -393,16 +389,16 @@
393
389
  "esbuild": "0.27.1",
394
390
  "esbuild-sass-plugin": "3.3.1",
395
391
  "swc-plugin-transform-remove-imports": "8.3.0",
396
- "payload": "4.0.0-canary.2",
397
- "@payloadcms/eslint-config": "3.28.0"
392
+ "@payloadcms/eslint-config": "3.28.0",
393
+ "payload": "4.0.0-internal.011fd46"
398
394
  },
399
395
  "peerDependencies": {
400
396
  "@faceless-ui/modal": "3.0.0",
401
397
  "@faceless-ui/scroll-info": "2.0.0",
402
398
  "react": "^19.0.1 || ^19.1.2 || ^19.2.1",
403
399
  "react-dom": "^19.0.1 || ^19.1.2 || ^19.2.1",
404
- "@payloadcms/next": "4.0.0-canary.2",
405
- "payload": "4.0.0-canary.2"
400
+ "@payloadcms/next": "4.0.0-internal.011fd46",
401
+ "payload": "4.0.0-internal.011fd46"
406
402
  },
407
403
  "engines": {
408
404
  "node": ">=24.15.0"
@@ -1,2 +0,0 @@
1
- "use client";import{a as Be,e as Oe,g as $,h as K,j as Ie,k as Fe,l as $e,m as Ke,n as Se,o as Pe,p as je}from"./chunk-LH634DPU.js";import{a as Ae,b as P}from"./chunk-RJ5MAOKZ.js";import{jsx as L,jsxs as le}from"react/jsx-runtime";import{BulkUploadProvider as Zr,FieldDescription as en,FieldError as tn,FieldLabel as on,isFieldRTL as rn,RenderCustomComponent as At,useConfig as nn,useEditDepth as sn,useEffectEvent as ln,useField as an,useLocale as cn}from"@payloadcms/ui";import{mergeFieldStyles as un}from"@payloadcms/ui/shared";import{dequal as dn}from"dequal/lite";import Bt,{useCallback as Ot,useEffect as It,useMemo as fn,useState as Ft}from"react";import{ErrorBoundary as mn}from"react-error-boundary";import"./bundled.css";import{jsx as j}from"react/jsx-runtime";import{LexicalComposer as Vr}from"@lexical/react/LexicalComposer.js";import{useEditDepth as Wr}from"@payloadcms/ui";import*as _t from"react";import{useMemo as Yr}from"react";import{c as vr}from"react/compiler-runtime";import{jsx as C,jsxs as ie}from"react/jsx-runtime";import{useLexicalComposerContext as _r}from"@lexical/react/LexicalComposerContext.js";import{LexicalErrorBoundary as kr}from"@lexical/react/LexicalErrorBoundary.js";import{HistoryPlugin as Lr}from"@lexical/react/LexicalHistoryPlugin.js";import{OnChangePlugin as Dr}from"@lexical/react/LexicalOnChangePlugin.js";import{RichTextPlugin as Mr}from"@lexical/react/LexicalRichTextPlugin.js";import{useLexicalEditable as Ar}from"@lexical/react/useLexicalEditable";import{BLUR_COMMAND as Br,COMMAND_PRIORITY_LOW as Rt,FOCUS_COMMAND as Or}from"lexical";import*as Q from"react";import{useEffect as Ir,useState as Fr}from"react";import{jsx as ze}from"react/jsx-runtime";import"react";var z=({anchorElem:e,clientProps:t,plugin:o})=>o.position==="floatingAnchorElem"&&e?o.Component&&ze(o.Component,{anchorElem:e,clientProps:t}):o.Component&&ze(o.Component,{clientProps:t});import{c as zt}from"react/compiler-runtime";import{copyToClipboard as He}from"@lexical/clipboard";import{useLexicalComposerContext as Ht}from"@lexical/react/LexicalComposerContext.js";import{objectKlassEquals as Vt}from"@lexical/utils";import Ve from"bson-objectid";import{$getSelection as Wt,$isNodeSelection as Yt,COMMAND_PRIORITY_LOW as Gt,COPY_COMMAND as Ut}from"lexical";import{useEffect as Jt}from"react";var Te=e=>{if("fields"in e&&typeof e.fields=="object"&&e.fields!==null&&"id"in e.fields?e.fields.id=new Ve.default().toHexString():"id"in e&&(e.id=new Ve.default().toHexString()),e.children)for(let t of e.children)Te(t)};function We(){let e=zt(3),[t]=Ht(),o,r;return e[0]!==t?(o=()=>t.registerCommand(Ut,n=>{let c=Wt();if(Yt(c)){let s=c.getNodes()[0]?.exportJSON(),u=JSON.parse(JSON.stringify(s));Te(u);let d={namespace:t._config.namespace,nodes:[u]},m=JSON.stringify(d);return He(t,null,{"application/x-lexical-editor":m,"text/plain":""}).catch(qt),!0}return He(t,Vt(n,ClipboardEvent)?n:null).then(()=>{if(!(n instanceof ClipboardEvent)||!n.clipboardData)throw new Error("No clipboard event");let l=n.clipboardData.getData("application/x-lexical-editor");if(!l)return!0;let s=JSON.parse(l);for(let d of s.nodes)Te(d);let u=JSON.stringify(s);n.clipboardData.setData("application/x-lexical-editor",u)}).catch(l=>{throw n instanceof ClipboardEvent&&n.clipboardData?.setData("application/x-lexical-editor",""),l}),!0},Gt),r=[t],e[0]=t,e[1]=o,e[2]=r):(o=e[1],r=e[2]),Jt(o,r),null}function qt(e){throw e}import{c as Qt}from"react/compiler-runtime";import{useLexicalComposerContext as Xt}from"@lexical/react/LexicalComposerContext";import{$findMatchingParent as fe,mergeRegister as Zt}from"@lexical/utils";import{$createNodeSelection as eo,$getEditor as te,$getNearestNodeFromDOMNode as to,$getSelection as me,$isDecoratorNode as H,$isElementNode as Re,$isLineBreakNode as oo,$isNodeSelection as pe,$isRangeSelection as Ye,$isRootOrShadowRoot as ro,$isTextNode as no,$setSelection as Ge,CLICK_COMMAND as io,COMMAND_PRIORITY_LOW as Y,KEY_ARROW_DOWN_COMMAND as so,KEY_ARROW_UP_COMMAND as lo,KEY_BACKSPACE_COMMAND as ao,KEY_DELETE_COMMAND as co,SELECTION_CHANGE_COMMAND as uo}from"lexical";import{useEffect as fo}from"react";function Ue(){let e=Qt(3),[t]=Xt(),o=Eo,r,n;return e[0]!==t?(r=()=>Zt(t.registerCommand(io,xo,Y),t.registerCommand(co,o,Y),t.registerCommand(ao,o,Y),t.registerCommand(uo,yo,Y),t.registerCommand(lo,go,Y),t.registerCommand(so,mo,Y)),n=[t],e[0]=t,e[1]=r,e[2]=n):(r=e[1],n=e[2]),fo(r,n),null}function mo(e){let t=me();if(pe(t)){e.preventDefault();let l=t.getNodes()[0]?.getNextSibling();if(H(l)){let d=te().getElementByKey(l.getKey());return d&&oe({element:d,node:l}),!0}if(!Re(l))return!0;let s=l.getFirstDescendant()??l;return s&&(fe(s,ge)?.selectEnd(),e.preventDefault()),!0}if(!Ye(t))return!1;let r=(t.isBackward()?t.anchor:t.focus).getNode(),n=fe(r,po),c=n?.getNextSibling();if(!n||c!==Je(n))return!1;if(H(c)){let l=te().getElementByKey(c.getKey());if(l)return oe({element:l,node:c}),e.preventDefault(),!0}return!1}function po(e){return Je(e)!==null}function go(e){let t=me();if(pe(t)){let l=t.getNodes()[0]?.getPreviousSibling();if(H(l)){let d=te().getElementByKey(l.getKey());return d?(oe({element:d,node:l}),e.preventDefault(),!0):!1}if(!Re(l))return!1;let s=l.getLastDescendant()??l;return s?(fe(s,ge)?.selectStart(),e.preventDefault(),!0):!1}if(!Ye(t))return!1;let r=(t.isBackward()?t.anchor:t.focus).getNode(),n=fe(r,ho),c=n?.getPreviousSibling();if(!n||c!==qe(n))return!1;if(H(c)){let l=te().getElementByKey(c.getKey());if(l)return oe({element:l,node:c}),e.preventDefault(),!0}return!1}function ho(e){return qe(e)!==null}function yo(){let e=No();return document.querySelector(".decorator-selected")?.classList.remove("decorator-selected"),e?(e.element?.classList.add("decorator-selected"),!0):!1}function xo(e){document.querySelector(".decorator-selected")?.classList.remove("decorator-selected");let t=bo(e);if(!t)return!0;let{target:o}=e;return!(o instanceof HTMLElement)||o.isContentEditable||o.closest('button, textarea, input, .react-select, .code-editor, .no-select-decorator, [role="button"]')?Ge(null):oe(t),!0}function Eo(e){let t=me();return pe(t)?(e.preventDefault(),t.getNodes().forEach(Co),!0):!1}function Co(e){e.remove()}function bo(e){if(!(e.target instanceof HTMLElement))return;let t=e.target.closest('[data-lexical-decorator="true"]');if(!(t instanceof HTMLElement))return;let o=to(t);return H(o)?{element:t,node:o}:void 0}function No(){let e=me();if(!pe(e))return;let t=e.getNodes();if(t.length!==1)return;let o=t[0];return H(o)?{decorator:o,element:te().getElementByKey(o.getKey())}:void 0}function oe({element:e,node:t}){document.querySelector(".decorator-selected")?.classList.remove("decorator-selected");let o=eo();o.add(t.getKey()),Ge(o),e.scrollIntoView({behavior:"smooth",block:"nearest"}),e.classList.add("decorator-selected")}function ge(e){if(H(e)&&!e.isInline())return!0;if(!Re(e)||ro(e))return!1;let t=e.getFirstChild(),o=t===null||oo(t)||no(t)||t.isInline();return!e.isInline()&&e.canBeEmpty()!==!1&&o}function Je(e){let t=e.getNextSibling();for(;t!==null;){if(ge(t))return t;t=t.getNextSibling()}return null}function qe(e){let t=e.getPreviousSibling();for(;t!==null;){if(ge(t))return t;t=t.getPreviousSibling()}return null}import{jsx as ve}from"react/jsx-runtime";import{useLexicalComposerContext as vo}from"@lexical/react/LexicalComposerContext.js";import{$createParagraphNode as _o,isHTMLElement as ko}from"lexical";import*as et from"react";import{useCallback as Lo,useEffect as Ze,useRef as Do,useState as Mo}from"react";import{createPortal as Ao}from"react-dom";var G=(e,t,o,r,n=50,c=25)=>{let l=0;if(e&&!e.contains(r)){let{bottom:s,left:u,right:d,top:m}=e.getBoundingClientRect(),a=m+window.scrollY,i=s+window.scrollY;if(o<a-c||o>i+c||t<u-n||t>d+n)return-1;(t<u||t>d)&&(l=t<u?t-u:t-d)}return l};import{$getNodeByKey as ye}from"lexical";function U(e){let t=e.getBoundingClientRect(),o=getComputedStyle(e).getPropertyValue("transform");if(!o||o==="none")return t;let r=o.split(",").pop();return t.y=t.y-Number(r?.replace(")","")),t}function he(e){let t=(u,d)=>u?parseFloat(window.getComputedStyle(u)[d]):0,{marginBottom:o,marginTop:r}=window.getComputedStyle(e),n=t(e.previousElementSibling,"marginBottom"),c=t(e.nextElementSibling,"marginTop"),l=Math.max(parseFloat(r),n);return{marginBottom:Math.max(parseFloat(o),c),marginTop:l}}import{$getRoot as wo}from"lexical";function V(e){return e.getEditorState().read(()=>wo().getChildrenKeys())}var So=1,Po=-1,Qe=0,B={props:null,result:null};function To(e,t,o=20){let r=e.x-t.x,n=e.y-t.y;return r*r+n*n<=o*o}function J(e){let{anchorElem:t,cache_threshold:o=20,editor:r,fuzzy:n=!1,horizontalOffset:c=0,point:{x:l,y:s},startIndex:u=0,useEdgeAsDefault:d=!1}=e;if(o>0&&B.props&&B.result&&B.props.fuzzy===e.fuzzy&&B.props.horizontalOffset===e.horizontalOffset&&B.props.useEdgeAsDefault===e.useEdgeAsDefault&&To(B.props.point,e.point,o))return B.result;let m=t.getBoundingClientRect(),a=V(r),i={blockElem:null,blockNode:null,distance:1/0,foundAtIndex:-1,isFoundNodeEmptyParagraph:!1};return r.getEditorState().read(()=>{if(d){let p=r.getElementByKey(a[0]),g=r.getElementByKey(a[a.length-1]);if(p&&g){let[f,E]=[U(p),U(g)];if(s<f.top?(i.blockElem=p,i.distance=f.top-s,i.blockNode=ye(a[0]),i.foundAtIndex=0):s>E.bottom&&(i.distance=s-E.bottom,i.blockNode=ye(a[a.length-1]),i.blockElem=g,i.foundAtIndex=a.length-1),i?.blockElem)return{blockElem:null,isFoundNodeEmptyParagraph:!1}}}let x=u,y=Qe;for(;x>=0&&x<a.length;){let p=a[x],g=r.getElementByKey(p);if(g===null)break;let f=new K(l+c,s),E=Ke.fromDOMRect(U(g)),{marginBottom:h,marginTop:b}=he(g),_=E.generateNewRect({bottom:E.bottom+h,left:m.left,right:m.right,top:E.top-b}),{distance:w,isOnBottomSide:v,isOnTopSide:D}=_.distanceFromPoint(f);if(w===0){i.blockElem=g,i.blockNode=ye(p),i.foundAtIndex=x,i.distance=w,i.blockNode&&i.blockNode.getType()==="paragraph"&&i.blockNode.getTextContent()===""&&(!n&&!e.returnEmptyParagraphs&&(i.blockElem=null,i.blockNode=null),i.isFoundNodeEmptyParagraph=!0);break}else n&&w<i.distance&&(i.blockElem=g,i.blockNode=ye(p),i.distance=w,i.foundAtIndex=x);y===Qe&&(D?y=Po:v?y=So:y=1/0),x+=y}}),B.props=e,B.result={blockElem:i.blockElem,blockNode:i.blockNode,foundAtIndex:i.foundAtIndex,isFoundNodeEmptyParagraph:i.isFoundNodeEmptyParagraph},{blockElem:i.blockElem,blockNode:i.blockNode,foundAtIndex:i.foundAtIndex,isFoundNodeEmptyParagraph:i.isFoundNodeEmptyParagraph}}function xe(e,t){return!!e.closest(`.${t}`)}var Ro=["IMG","INPUT","TEXTAREA","SELECT","BUTTON","VIDEO","OBJECT","EMBED","IFRAME","HR"];function Xe(e){if(!e||Ro.includes(e.tagName)||e.offsetHeight===0||e.offsetWidth===0)return!1;let t=window.getComputedStyle(e);return!(t.display==="table-cell"||t.position==="absolute"||t.visibility==="hidden"||t.opacity==="0")}function Ee(e,t,o,r=0){if(!e){t.style.opacity="0",t.style.transform="translate(-10000px, -10000px)";return}let n=e.getBoundingClientRect(),c=window.getComputedStyle(e),l=t.getBoundingClientRect(),s=o.getBoundingClientRect(),u;if(["LexicalEditorTheme__block","LexicalEditorTheme__upload","LexicalEditorTheme__relationship"].some(a=>e.classList.contains(a)||e.firstElementChild?.classList.contains(a)))u=n.top+8-s.top;else{let a=Xe(e)?parseInt(c.lineHeight,10):0;u=n.top+(a-l.height)/2-s.top}let m=r;t.style.opacity="1",t.style.transform=`translate(${m}px, ${u}px)`}var Bo="add-block-menu",Ce=1/0;function Oo(e){return e===0?1/0:Ce>=0&&Ce<e?Ce:Math.floor(e/2)}function Io(e,t,o){let r=t.parentElement,{editorConfig:n}=P(),c=n?.admin?.hideGutter?-24:12,l=Do(null),[s,u]=Mo(null);Ze(()=>{function m(a){let i=a.target;if(!ko(i))return;let x=G(r,a.pageX,a.pageY,i);if(x===-1){u(null);return}if(xe(i,Bo))return;let y=V(e),{blockElem:p,blockNode:g,foundAtIndex:f}=J({anchorElem:t,cache_threshold:0,editor:e,horizontalOffset:-x,point:new K(a.x,a.y),returnEmptyParagraphs:!0,startIndex:Oo(y.length),useEdgeAsDefault:!1});Ce=f,p&&g&&(s?.node!==g||s?.elem!==p)&&u({elem:p,node:g})}return document?.addEventListener("mousemove",m),()=>{document?.removeEventListener("mousemove",m)}},[r,t,e,s]),Ze(()=>{l.current&&s?.node&&Ee(s?.elem,l.current,t,c)},[t,s,c]);let d=Lo(m=>{let a=s;a?.node&&(e.update(()=>{let i=!0;if((a?.node.getType()!=="paragraph"||a.node.getTextContent()!=="")&&(i=!1),!i){let x=_o();a?.node.insertAfter(x),setTimeout(()=>{a={elem:e.getElementByKey(x.getKey()),node:x},u(a)},0)}}),setTimeout(()=>{e.update(()=>{e.focus(),a?.node&&"select"in a.node&&typeof a.node.select=="function"&&a.node.select()})},1),setTimeout(()=>{e.dispatchCommand(Fe,{node:a?.node})},2),m.stopPropagation(),m.preventDefault())},[e,s]);return Ao(ve(et.Fragment,{children:ve("button",{"aria-label":"Add block",className:"icon add-block-menu",onClick:m=>{d(m)},ref:l,type:"button",children:ve("div",{className:o?"icon":""})})}),t)}function tt(e){let{anchorElem:t}=e,o=t===void 0?document.body:t,[r]=vo();return Io(r,o,r._editable)}import{jsx as be,jsxs as $o}from"react/jsx-runtime";import{useLexicalComposerContext as Ko}from"@lexical/react/LexicalComposerContext.js";import{eventFiles as nt}from"@lexical/rich-text";import{$getNearestNodeFromDOMNode as it,$getNodeByKey as jo,isHTMLElement as _e}from"lexical";import*as ut from"react";import{useEffect as ke,useRef as re,useState as st}from"react";import{createPortal as zo}from"react-dom";var ot=0,Fo=-24;var W=0;function rt(e,t,o,r,n,c,l,s,u,d=!1){let{height:m,top:a}=r.getBoundingClientRect(),{top:i,width:x}=l.getBoundingClientRect(),{marginBottom:y,marginTop:p}=he(r),g=a,f=c>=a+m/2+window.scrollY,E=!1;if(n?.elem)if(r!==n?.elem)(f&&n?.elem&&n?.elem===r.nextElementSibling||!f&&n?.elem&&n?.elem===r.previousElementSibling)&&(W++,W<200&&(E=!0));else{W++;let w=n?.boundingBox?.y,v=r.getBoundingClientRect().y;(f===n?.isBelow&&w===v||W<200)&&(E=!1)}if(E)return{isBelow:f,willStayInSamePosition:E};d?g+=m/2:f?g+=m+y/2:g-=p/2;let h=0;d||(f?h=-ot:h=ot);let b=g-i+h,_=Fo-t;return o.style.width=`calc(${x}px - ${e} - var(--spacer-5))`,o.style.opacity=".8",o.style.transform=`translate(${_}px, calc(${b}px - 2px))`,n?.elem&&(n.elem.style.opacity="",n?.elem===r?f?n.elem.style.marginTop="":n.elem.style.marginBottom="":(n.elem.style.marginBottom="",n.elem.style.marginTop="")),W=0,{isBelow:f,willStayInSamePosition:E}}var Ho="draggable-block-menu",lt="application/x-lexical-drag-block",ne=1/0;function at(e){return e===0?1/0:ne>=0&&ne<e?ne:Math.floor(e/2)}function Vo(e,t){let{transform:o}=t.style;e.setDragImage(t,0,0),setTimeout(()=>{t.style.transform=o})}function ct(e,t){e&&(e.style.opacity="0"),t&&(t.style.opacity="",t.style.marginBottom="",t.style.marginTop="")}function Wo(e,t,o){let r=t.parentElement,n=re(null),c=re(null),l=re(null),s=re(!1),u=re([]),[d,m]=st(null),[a,i]=st(null),{editorConfig:x}=P(),y=x?.admin?.hideGutter?-44:-8;ke(()=>{function f(E){let h=E.target;if(!_e(h))return;let b=G(r,E.pageX,E.pageY,h);if(b===-1){m(null);return}if(xe(h,Ho))return;let _=V(e),{blockElem:w,foundAtIndex:v,isFoundNodeEmptyParagraph:D}=J({anchorElem:t,cache_threshold:0,editor:e,horizontalOffset:-b,point:new K(E.x,E.y),startIndex:at(_.length),useEdgeAsDefault:!1,verbose:!1});ne=v,!(!w&&!D)&&d!==w&&m(w)}return document?.addEventListener("mousemove",f),()=>{document?.removeEventListener("mousemove",f)}},[r,t,e,d]),ke(()=>{n.current&&Ee(d,n.current,t,y)},[t,d,y]),ke(()=>{function f(h){if(!s.current)return!1;let[b]=nt(h);if(b)return!1;let{pageY:_,target:w}=h;if(!_e(w))return!1;let v=G(r,h.pageX,h.pageY,w,100,50),D=V(e),{blockElem:S,foundAtIndex:I,isFoundNodeEmptyParagraph:R}=J({anchorElem:t,editor:e,fuzzy:!0,horizontalOffset:-v,point:new K(h.x,h.y),startIndex:at(D.length),useEdgeAsDefault:!0,verbose:!0});ne=I;let F=c.current;if(S===null||F===null)return!1;if(h.preventDefault(),h.dataTransfer.dropEffect="move",d!==S){let{isBelow:k,willStayInSamePosition:M}=rt(x?.admin?.hideGutter?"0px":"var(--spacer-5)",y+(x?.admin?.hideGutter?n?.current?.getBoundingClientRect()?.width??0:-(n?.current?.getBoundingClientRect()?.width??0)),F,S,a,_,t,h,l,R);M||i({boundingBox:S.getBoundingClientRect(),elem:S,isBelow:k})}else a?.elem&&(ct(F,a.elem),i({boundingBox:S.getBoundingClientRect(),elem:S,isBelow:!1}));return!0}function E(h){if(!s.current)return!1;let[b]=nt(h);if(b)return!1;let{dataTransfer:_,pageY:w,target:v}=h,D=_?.getData(lt)||"";return e.update(()=>{let S=jo(D);if(!S||!_e(v))return!1;let I=G(r,h.pageX,h.pageY,v,100,50),{blockElem:R,isFoundNodeEmptyParagraph:F}=J({anchorElem:t,editor:e,fuzzy:!0,horizontalOffset:-I,point:new K(h.x,h.y),useEdgeAsDefault:!0});if(!R)return!1;let k=it(R);if(!k)return!1;if(k===S)return!0;let{height:M,top:ae}=U(R),Ne=w>=ae+M/2+window.scrollY;F?(k.insertBefore(S),k.remove()):Ne?k.insertAfter(S):k.insertBefore(S),d!==null&&m(null),document.querySelectorAll(".lexical-block-highlighter").forEach(T=>{T.remove()});let we=e.getElementByKey(S.getKey()),ce=setTimeout(()=>{let T=we?.getBoundingClientRect();if(!T)return;let N=document.createElement("div");N.className="lexical-block-highlighter",N.style.backgroundColor="var(--theme-elevation-1000",N.style.transition="opacity 0.5s ease-in-out",N.style.zIndex="1",N.style.pointerEvents="none",N.style.boxSizing="border-box",N.style.borderRadius="4px",N.style.position="absolute",document.body.appendChild(N),N.style.opacity="0.1",N.style.height=`${T.height+8}px`,N.style.width=`${T.width+8}px`,N.style.top=`${T.top+window.scrollY-4}px`,N.style.left=`${T.left-4}px`;let ue=setTimeout(()=>{N.style.opacity="0";let de=setTimeout(()=>{N.remove()},500);u.current.push(de)},1e3);u.current.push(ue)},120);u.current.push(ce)}),!0}return document.addEventListener("dragover",f),document.addEventListener("drop",E),()=>{document.removeEventListener("dragover",f),document.removeEventListener("drop",E),u.current.forEach(clearTimeout),u.current=[]}},[r,y,t,e,a,d,x?.admin?.hideGutter]);function p(f){let E=f.dataTransfer;if(!E||!d)return;Vo(E,d),E.effectAllowed="move";let h="";e.update(()=>{let b=it(d);b&&(h=b.getKey())}),s.current=!0,E.setData(lt,h)}function g(){s.current=!1,a?.elem&&ct(c.current,a?.elem)}return zo($o(ut.Fragment,{children:[be("button",{"aria-label":"Drag to move",className:"icon draggable-block-menu",draggable:!0,onDragEnd:g,onDragStart:p,ref:n,type:"button",children:be("div",{className:o?"icon":""})}),be("div",{className:"draggable-block-target-line",ref:c}),be("div",{className:"debug-highlight",ref:l})]}),t)}function dt(e){let{anchorElem:t}=e,o=t===void 0?document.body:t,[r]=Ko();return Wo(r,o,r._editable)}import{c as Yo}from"react/compiler-runtime";import{jsx as Le}from"react/jsx-runtime";import{useLexicalComposerContext as Go}from"@lexical/react/LexicalComposerContext";import{$createParagraphNode as Uo,$getRoot as Jo}from"lexical";import"react";var ft="insert-paragraph-at-end",mt=()=>{let e=Yo(2),[t]=Go(),{editorConfig:o}=P();if(o?.admin?.hideInsertParagraphAtEnd)return null;let r;return e[0]!==t?(r=Le("div",{"aria-label":"Insert Paragraph",className:ft,onClick:()=>{t.update(qo)},role:"button",tabIndex:0,children:Le("div",{className:`${ft}-inside`,children:Le("span",{children:"+"})})}),e[0]=t,e[1]=r):r=e[1],r};function qo(){let e=Uo();Jo().append(e),e.select()}import{c as Qo}from"react/compiler-runtime";import{useLexicalComposerContext as Xo}from"@lexical/react/LexicalComposerContext";import*as pt from"react";var gt=()=>{let e=Qo(4),{editorConfig:t}=P(),[o]=Xo(),r,n;return e[0]!==o||e[1]!==t.features.markdownTransformers?(r=()=>Be(o,t.features.markdownTransformers??[]),n=[o,t.features.markdownTransformers],e[0]=o,e[1]=t.features.markdownTransformers,e[2]=r,e[3]=n):(r=e[2],n=e[3]),pt.useEffect(r,n),null};import{c as Zo}from"react/compiler-runtime";import{useLexicalComposerContext as er}from"@lexical/react/LexicalComposerContext.js";import{useEffect as tr}from"react";function ht(){let e=Zo(5),[t]=er(),{currentView:o,views:r}=$(),n,c;return e[0]!==o||e[1]!==t||e[2]!==r?(n=()=>{r&&(o==="default"?r.default?Se(t,r.default?.nodes):Pe(t):r[o]&&(Pe(t),Se(t,r[o]?.nodes)))},c=[t,r,o],e[0]=o,e[1]=t,e[2]=r,e[3]=n,e[4]=c):(n=e[3],c=e[4]),tr(n,c),null}import{useLexicalComposerContext as or}from"@lexical/react/LexicalComposerContext";import{$getSelection as rr,$isRangeSelection as nr,RootNode as ir}from"lexical";import{useEffect as sr}from"react";function yt(){let[e]=or();return sr(()=>e.registerNodeTransform(ir,t=>{let o=rr();if(nr(o)){let r=o.anchor.getNode(),n=o.focus.getNode();(!r.isAttached()||!n.isAttached())&&(t.selectEnd(),console.warn("updateEditor: selection has been moved to the end of the editor because the previously selected nodes have been removed and selection wasn't moved to another node. Ensure selection changes after removing/replacing a selected node."))}return!1}),[e]),null}import{useLexicalComposerContext as lr}from"@lexical/react/LexicalComposerContext";import{$getSelection as ar,COMMAND_PRIORITY_LOW as cr,SELECT_ALL_COMMAND as ur}from"lexical";import{useEffect as dr}from"react";function xt(){let[e]=lr();return dr(()=>e.registerCommand(ur,()=>{if(ar())return!1;let o=document.activeElement;return o instanceof HTMLInputElement&&o.select(),!0},cr),[e]),null}import{jsx as q,jsxs as Ct}from"react/jsx-runtime";import{useLexicalComposerContext as mr}from"@lexical/react/LexicalComposerContext.js";import{useTranslation as bt}from"@payloadcms/ui";import{useCallback as pr,useMemo as gr,useState as hr}from"react";import"react";import*as Nt from"react-dom";import{c as fr}from"react/compiler-runtime";import"react";function Et(e,t){let o=fr(4),{maxLength:r,minLength:n}=t,c=r===void 0?75:r,l=n===void 0?1:n,s;return o[0]!==c||o[1]!==l||o[2]!==e?(s=u=>{let{query:d}=u,m="[^"+e+Ie+"\\s]",i=new RegExp("(^|\\s|\\()(["+e+"]((?:"+m+"){0,"+c+"}))$").exec(d);if(i!==null){let x=i[1],y=i[3];if(y.length>=l)return{leadOffset:i.index+x.length,matchingString:y,replaceableString:i[2]}}return null},o[0]=c,o[1]=l,o[2]=e,o[3]=s):s=o[3],s}var O="slash-menu-popup";function yr({isSelected:e,item:t,onClick:o,onMouseEnter:r,ref:n}){let{fieldProps:{featureClientSchemaMap:c,schemaPath:l}}=P(),{i18n:s}=bt(),u=`${O}__item ${O}__item-${t.key}`;e&&(u+=` ${O}__item--selected`);let d=t.key;return t.label&&(d=typeof t.label=="function"?t.label({featureClientSchemaMap:c,i18n:s,schemaPath:l}):t.label),d.length>25&&(d=d.substring(0,25)+"..."),Ct("button",{"aria-selected":e,className:u,id:O+"__item-"+t.key,onClick:o,onMouseEnter:r,ref:n,role:"option",tabIndex:-1,type:"button",children:[t?.Icon&&q(t.Icon,{}),q("span",{className:`${O}__item-text`,children:d})]},t.key)}function wt({anchorElem:e=document.body}){let[t]=mr(),[o,r]=hr(null),{editorConfig:n}=P(),{i18n:c}=bt(),{fieldProps:{featureClientSchemaMap:l,schemaPath:s}}=P(),u=Et("/",{minLength:0}),d=pr(()=>{let a=[];for(let i of n.features.slashMenu.dynamicGroups)if(o){let x=i({editor:t,queryString:o});a=a.concat(x)}return a},[t,o,n?.features]),m=gr(()=>{let a=[];for(let i of n?.features.slashMenu.groups??[])a.push(i);if(o){let i=o.toLowerCase().replace(/[\s\-_]/g,"");a=a.map(y=>{let p=y.items.filter(g=>{let f=g.key;return g.label&&(f=typeof g.label=="function"?g.label({featureClientSchemaMap:l,i18n:c,schemaPath:s}):g.label),new RegExp(o,"gi").exec(f)||f.toLowerCase().replace(/[\s\-_]/g,"").includes(i)?!0:g.keywords!=null?g.keywords.some(h=>new RegExp(o,"gi").exec(h)?!0:h.toLowerCase().replace(/[\s\-_]/g,"").includes(i)):!1});return p.length?{...y,items:p}:null}),a=a.filter(y=>y!=null);let x=d();for(let y of x){let p=a.find(g=>g.key===y.key);p?a=a.filter(g=>g.key!==y.key):p={...y,items:[]},p?.items?.length&&(p.items=p.items.concat(p.items)),a.push(p)}}return a},[o,n?.features.slashMenu.groups,d,l,c,s]);return q($e,{anchorElem:e,groups:m,menuRenderFn:(a,{selectedItemKey:i,selectItemAndCleanUp:x,setSelectedItemKey:y})=>a.current&&m.length?Nt.createPortal(q("div",{className:O,"data-theme":"dark",children:m.map(p=>{let g=p.key;return p.label&&l&&(g=typeof p.label=="function"?p.label({featureClientSchemaMap:l,i18n:c,schemaPath:s}):p.label),Ct("div",{className:`${O}__group ${O}__group-${p.key}`,children:[q("div",{className:`${O}__group-title`,children:g}),p.items.map((f,E)=>q(yr,{index:E,isSelected:i===f.key,item:f,onClick:()=>{y(f.key),x(f)},onMouseEnter:()=>{y(f.key)},ref:h=>{f.ref={current:h}}},f.key))]},p.key)})}),a.current):null,onQueryChange:r,triggerFn:u})}import{c as xr}from"react/compiler-runtime";import{useLexicalComposerContext as Er}from"@lexical/react/LexicalComposerContext";import{TEXT_TYPE_TO_FORMAT as Cr,TextNode as br}from"lexical";import{useEffect as Nr}from"react";function St(e){let t=xr(6),{features:o}=e,[r]=Er(),n;t[0]!==r||t[1]!==o.enabledFormats?(n=()=>{let l=wr(o.enabledFormats);if(l.length!==0)return r.registerNodeTransform(br,s=>{l.forEach(u=>{s.hasFormat(u)&&s.toggleFormat(u)})})},t[0]=r,t[1]=o.enabledFormats,t[2]=n):n=t[2];let c;return t[3]!==r||t[4]!==o?(c=[r,o],t[3]=r,t[4]=o,t[5]=c):c=t[5],Nr(n,c),null}function wr(e){let t=Object.keys(Cr),o=new Set(e);return t.filter(r=>!o.has(r))}import{c as Sr}from"react/compiler-runtime";import{jsx as Pt}from"react/jsx-runtime";import{useLexicalComposerContext as Pr}from"@lexical/react/LexicalComposerContext";import{ContentEditable as Tr}from"@lexical/react/LexicalContentEditable.js";import{useTranslation as Rr}from"@payloadcms/ui";import"react";function Tt(e){let t=Sr(5),{className:o,editorConfig:r}=e,{t:n}=Rr(),[,c]=Pr(),{getTheme:l}=c,s;if(t[0]!==o||t[1]!==r?.admin?.placeholder||t[2]!==l||t[3]!==n){let u=l();s=Pt(Tr,{"aria-placeholder":n("lexical:general:placeholder"),className:o??"ContentEditable__root",placeholder:Pt("p",{className:u?.placeholder,children:r?.admin?.placeholder??n("lexical:general:placeholder")})}),t[0]=o,t[1]=r?.admin?.placeholder,t[2]=l,t[3]=n,t[4]=s}else s=t[4];return s}var vt=e=>{let t=vr(13),{editorConfig:o,editorContainerRef:r,isSmallWidthViewport:n,onChange:c,rtl:l}=e,s=P(),[u]=_r(),d=Ar(),[m,a]=Fr(null),i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i=f=>{f!==null&&a(f)},t[0]=i):i=t[0];let x=i,y,p;t[1]!==u||t[2]!==s?(y=()=>{if(!s?.uuid){console.error("Lexical Editor must be used within an EditorConfigProvider");return}s?.parentEditor?.uuid&&s.parentEditor?.registerChild(s.uuid,s);let f=()=>{s.focusEditor(s)},E=()=>{s.blurEditor(s)},h=u.registerCommand(Or,()=>(f(),!0),Rt),b=u.registerCommand(Br,()=>(E(),!0),Rt);return()=>{h(),b(),s.parentEditor?.unregisterChild?.(s.uuid)}},p=[u,s],t[1]=u,t[2]=s,t[3]=y,t[4]=p):(y=t[3],p=t[4]),Ir(y,p);let g;return t[5]!==o||t[6]!==r||t[7]!==m||t[8]!==d||t[9]!==n||t[10]!==c||t[11]!==l?(g=ie(Q.Fragment,{children:[o.features.plugins?.map($r),ie("div",{className:"editor-container",dir:l?"rtl":void 0,ref:r,children:[o.features.plugins?.map(Kr),C(Mr,{contentEditable:C("div",{className:"editor-scroller",children:C("div",{className:"editor",ref:x,children:C(Tt,{editorConfig:o})})}),ErrorBoundary:kr}),C(yt,{}),d&&C(mt,{}),C(Ue,{}),C(We,{}),C(St,{features:o.features}),C(xt,{}),C(ht,{}),d&&C(Dr,{ignoreSelectionChange:!0,onChange:(f,E,h)=>{(!h.has("focus")||h.size>1)&&c?.(f,E,h)}}),m&&ie(Q.Fragment,{children:[!n&&d&&ie(Q.Fragment,{children:[o.admin?.hideDraggableBlockElement?null:C(dt,{anchorElem:m}),o.admin?.hideAddBlockButton?null:C(tt,{anchorElem:m})]}),o.features.plugins?.map(f=>{if(f.position==="floatingAnchorElem"&&!(f.desktopOnly===!0&&n))return C(z,{anchorElem:m,clientProps:f.clientProps,plugin:f},f.key)}),d&&C(Q.Fragment,{children:C(wt,{anchorElem:m})})]}),d&&ie(Q.Fragment,{children:[C(Lr,{}),o?.features?.markdownTransformers?.length>0&&C(gt,{})]}),o.features.plugins?.map(jr),o.features.plugins?.map(zr)]}),o.features.plugins?.map(Hr)]}),t[5]=o,t[6]=r,t[7]=m,t[8]=d,t[9]=n,t[10]=c,t[11]=l,t[12]=g):g=t[12],g};function $r(e){if(e.position==="aboveContainer")return C(z,{clientProps:e.clientProps,plugin:e},e.key)}function Kr(e){if(e.position==="top")return C(z,{clientProps:e.clientProps,plugin:e},e.key)}function jr(e){if(e.position==="normal")return C(z,{clientProps:e.clientProps,plugin:e},e.key)}function zr(e){if(e.position==="bottom")return C(z,{clientProps:e.clientProps,plugin:e},e.key)}function Hr(e){if(e.position==="belowContainer")return C(z,{clientProps:e.clientProps,plugin:e},e.key)}var kt=({children:e,providers:t})=>{if(!t?.length)return e;let o=t[0];return t.length>1?j(o,{children:j(kt,{providers:t.slice(1),children:e})}):j(o,{children:e})},Lt=e=>{let{composerKey:t,editorConfig:o,fieldProps:r,isSmallWidthViewport:n,onChange:c,readOnly:l,rtl:s,value:u}=e,{currentView:d,views:m}=$(),a=P(),i=Wr(),x=_t.useRef(null),y=Yr(()=>{if(u&&typeof u!="object")throw new Error("The value passed to the Lexical editor is not an object. This is not supported. Please remove the data from the field and start again. This is the value that was passed in: "+JSON.stringify(u));if(u&&Array.isArray(u)&&!("root"in u))throw new Error("You have tried to pass in data from the old Slate editor to the new Lexical editor. The data structure is different, thus you will have to migrate your data. We offer a one-line migration script which migrates all your rich text fields: https://payloadcms.com/docs/lexical/migration#migration-via-migration-script-recommended");if(u&&"jsonContent"in u)throw new Error("You have tried to pass in data from payload-plugin-lexical. The data structure is different, thus you will have to migrate your data. Migration guide: https://payloadcms.com/docs/lexical/migration#migrating-from-payload-plugin-lexical");let p=m?.[d]?.nodes;return{editable:l!==!0,editorState:u!=null?JSON.stringify(u):void 0,namespace:o.lexical.namespace,nodes:je({editorConfig:o,nodeViews:p}),onError:g=>{throw g},theme:o.lexical.theme}},[o,m,d]);return y?j(Vr,{initialConfig:y,children:j(Ae,{editorConfig:o,editorContainerRef:x,fieldProps:r,parentContext:a?.editDepth===i?a:void 0,children:j(kt,{providers:o.features.providers,children:j(vt,{editorConfig:o,editorContainerRef:x,isSmallWidthViewport:n,onChange:c,rtl:s})})})},t+y.editable+d):j("p",{children:"Loading..."})};import{c as Gr}from"react/compiler-runtime";import{jsx as X,jsxs as Ur}from"react/jsx-runtime";import{ChevronIcon as Jr,Popup as qr,PopupList as Dt}from"@payloadcms/ui";import"react";function Mt(){let e=Gr(5),{currentView:t,setCurrentView:o,views:r}=$();if(!r||Object.keys(r).length===0)return null;let n,c;if(e[0]!==t||e[1]!==o||e[2]!==r){c=Symbol.for("react.early_return_sentinel");e:{let l=Object.keys(r);if(!l.some(Xr)){c=null;break e}let u=["default",...l.filter(Qr)],d=t.charAt(0).toUpperCase()+t.slice(1);n=X("div",{className:"lexical-view-selector",children:X(qr,{button:Ur("button",{className:"lexical-view-selector__button",type:"button",children:[X("span",{className:"lexical-view-selector__label",children:d}),X(Jr,{className:"lexical-view-selector__icon"})]}),buttonType:"custom",horizontalAlign:"left",render:m=>{let{close:a}=m;return X(Dt.ButtonGroup,{children:u.map(i=>{let x=i.charAt(0).toUpperCase()+i.slice(1);return X(Dt.Button,{active:i===t,disabled:i===t,onClick:()=>{o?.(i),a()},children:x},i)})})},size:"large"})})}e[0]=t,e[1]=o,e[2]=r,e[3]=n,e[4]=c}else n=e[3],c=e[4];return c!==Symbol.for("react.early_return_sentinel")?c:n}function Qr(e){return e!=="default"}function Xr(e){return e!=="default"}var se="rich-text-lexical",pn=e=>{let{editorConfig:t,field:o,field:{admin:{className:r,description:n,readOnly:c}={},label:l,localized:s,required:u},path:d,readOnly:m,schemaPath:a,validate:i}=e,x=m||c,y=cn(),{config:{localization:p}}=nn(),g=rn({fieldLocalized:s,locale:y,localizationConfig:p||void 0}),f=sn(),{isControlledByParent:E}=$(),h=Ot((A,ee)=>typeof i=="function"?i(A,{...ee,required:u}):!0,[i,u]),{customComponents:{AfterInput:b,BeforeInput:_,Description:w,Error:v,Label:D}={},disabled:S,initialValue:I,path:R,setValue:F,showError:k,value:M}=an({potentiallyStalePath:d,validate:h}),ae=x||S,[Z,Ne]=Ft(!1),[De,we]=Ft(),ce=Bt.useRef(I),T=Bt.useRef(M);It(()=>{let A=()=>{let ee=window.matchMedia("(max-width: 768px)").matches;ee!==Z&&Ne(ee)};return A(),window.addEventListener("resize",A),()=>{window.removeEventListener("resize",A)}},[Z]);let N=["field-type",se,r,k&&"error",ae&&`${se}--read-only`,t?.admin?.hideGutter!==!0&&!Z?`${se}--show-gutter`:null].filter(Boolean).join(" "),ue=`${R}.${f}`,de=Oe(),$t=Ot(A=>{de(()=>{let Me=A.toJSON();T.current=Me,F(Me)})},[F,de]),Kt=fn(()=>un(o),[o]),jt=ln(A=>{T.current!==M&&!dn(T.current!=null?JSON.parse(JSON.stringify(T.current)):T.current,M)&&(ce.current=A,T.current=M,we(new Date))});return It(()=>{Object.is(I,ce.current)||jt(I)},[I]),le("div",{className:N,"data-field-path":R,"data-field-schemapath":a,"data-lexical-view":t?.view,style:Kt,children:[le("div",{className:`${se}__label-row`,children:[D||L(on,{label:l,localized:s,path:R,required:u}),!E&&L(Mt,{})]}),le("div",{className:`${se}__wrap`,children:[L(At,{CustomComponent:v,Fallback:L(tn,{path:R,showError:k})}),le(mn,{fallbackRender:gn,onReset:()=>{},children:[_,L(Zr,{drawerSlugPrefix:`lexical-${R}`,children:L(Lt,{composerKey:ue,editorConfig:t,fieldProps:e,isSmallWidthViewport:Z,onChange:$t,readOnly:ae,rtl:g,value:M},JSON.stringify({path:R,rerenderProviderKey:De}))}),b]}),L(At,{CustomComponent:w,Fallback:L(en,{description:n,path:R})})]})]},ue)};function gn({error:e}){return le("div",{className:"errorBoundary",role:"alert",children:[L("p",{children:"Something went wrong:"}),L("pre",{style:{color:"red"},children:e instanceof Error?e.message:String(e)})]})}var Pl=pn;export{Pl as RichText};
2
- //# sourceMappingURL=Field-G5Z2HM5Y.js.map
@@ -1,12 +0,0 @@
1
- var st=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";import{c as he}from"react/compiler-runtime";import{useRef as xe}from"react";function ro(r){let t=he(2),e=r===void 0?500:r,o=xe(void 0),n;return t[0]!==e?(n=s=>new Promise(i=>{let l=()=>{s(),i()};"requestIdleCallback"in window?("cancelIdleCallback"in window&&o.current!==void 0&&cancelIdleCallback(o.current),o.current=requestIdleCallback(l,{timeout:e})):Ee().then(l)}),t[0]=e,t[1]=n):n=t[1],n}function Ee(){return new Promise(r=>{setTimeout(r,100),requestAnimationFrame(()=>{setTimeout(r,0)})})}import{jsx as _e}from"react/jsx-runtime";import{useControllableState as Te}from"@payloadcms/ui";import{createContext as we,use as Ce,useMemo as Se}from"react";var ct=we({currentView:"default",inheritable:!1,setCurrentView:()=>{}}),fo=r=>{let t=Re(),e=r.currentView!==void 0,o=t.inheritable&&(!!t.views||!!t.hasExplicitCurrentView),n=e||t.inheritable&&!!t.hasExplicitCurrentView,{children:c,currentView:s,inheritable:i,views:l}={children:r.children,currentView:o?t.currentView:r.currentView,inheritable:t.inheritable||r.inheritable,views:o&&t.views?t.views:r.views},[a,u]=Te(s,"default"),p=l&&a!=="default"&&!l[a]?"default":a,m=Se(()=>{let g=l?l[p]:void 0;return{currentView:p,currentViewMap:g,hasExplicitCurrentView:n,inheritable:i,isControlledByParent:o,setCurrentView:u,views:l}},[p,i,n,o,u,l]);return _e(ct,{value:m,children:c})};function Re(){return Ce(ct)}var G=class{_x;_y;constructor(t,e){this._x=t,this._y=e}calcDeltaXTo({x:t}){return this.x-t}calcDeltaYTo({y:t}){return this.y-t}calcDistanceTo(t){return Math.sqrt(Math.pow(this.calcDeltaXTo(t),2)+Math.pow(this.calcDeltaYTo(t),2))}calcHorizontalDistanceTo(t){return Math.abs(this.calcDeltaXTo(t))}calcVerticalDistance(t){return Math.abs(this.calcDeltaYTo(t))}equals({x:t,y:e}){return this.x===t&&this.y===e}get x(){return this._x}get y(){return this._y}};function lt(r){return r instanceof G}import{jsx as Ve}from"react/jsx-runtime";import{useLexicalComposerContext as Xe}from"@lexical/react/LexicalComposerContext.js";import{mergeRegister as Ge}from"@lexical/utils";import{$getSelection as j,$isRangeSelection as W,$isTextNode as ze,COMMAND_PRIORITY_LOW as Ye,createCommand as je,getDOMSelection as We}from"lexical";import{useCallback as _t,useEffect as Tt,useState as qe}from"react";import*as Y from"react";import{c as pt}from"react/compiler-runtime";import{useLexicalComposerContext as gt}from"@lexical/react/LexicalComposerContext.js";import{mergeRegister as at}from"@lexical/utils";import{$getSelection as ht,$isRangeSelection as ye,$setSelection as be,COMMAND_PRIORITY_LOW as ft,COMMAND_PRIORITY_NORMAL as $,createCommand as ke,KEY_ARROW_DOWN_COMMAND as Oe,KEY_ARROW_UP_COMMAND as Ne,KEY_ENTER_COMMAND as Fe,KEY_ESCAPE_COMMAND as Ie,KEY_TAB_COMMAND as Me}from"lexical";import{useCallback as z,useEffect as k,useLayoutEffect as Ae,useMemo as De,useRef as Le,useState as $e}from"react";var Be="slash-menu-popup",ut=r=>{let t=document.getElementById("slash-menu");if(!t)return;let e=t.getBoundingClientRect();e.top+e.height>window.innerHeight&&t.scrollIntoView({block:"center"}),e.top<0&&t.scrollIntoView({block:"center"}),r.scrollIntoView({block:"nearest"})};function ve(r,t,e){let o=e;for(let n=o;n<=t.length;n++)r.substring(r.length-n)===t.substring(0,n)&&(o=n);return o}function Pe(r){let t=ht();if(!ye(t)||!t.isCollapsed())return;let e=t.anchor;if(e.type!=="text")return;let o=e.getNode();if(!o.isSimpleText())return;let n=e.offset,c=o.getTextContent().slice(0,n),s=r.replaceableString.length,i=ve(c,r.matchingString,s),l=n-i;if(l<0)return;let a;return l===0?[a]=o.splitText(n):[,a]=o.splitText(l,n),a}function He(r,t){let e=getComputedStyle(r),o=e.position==="absolute",n=t?/(auto|scroll|hidden)/:/(auto|scroll)/;if(e.position==="fixed")return document.body;for(let c=r;c=c.parentElement;)if(e=getComputedStyle(c),!(o&&e.position==="static")&&n.test(e.overflow+e.overflowY+e.overflowX))return c;return document.body}function dt(r,t){let e=r.getBoundingClientRect(),o=t.getBoundingClientRect();return e.top>o.top&&e.top<o.bottom}function Ke(r,t,e,o){let n=pt(7),[c]=gt(),s,i;n[0]!==c||n[1]!==e||n[2]!==o||n[3]!==r||n[4]!==t?(s=()=>{let l=t.current;if(l!=null&&r!=null){let a=c.getRootElement(),u=a!=null?He(a,!1):document.body,p=!1,m=dt(l,u),g=function(){p||(window.requestAnimationFrame(function(){e(),p=!1}),p=!0);let d=dt(l,u);d!==m&&(m=d,o?.(d))},f=new ResizeObserver(e);return window.addEventListener("resize",e),document.addEventListener("scroll",g,{capture:!0,passive:!0}),f.observe(l),()=>{f.disconnect(),window.removeEventListener("resize",e),document.removeEventListener("scroll",g,!0)}}},i=[c,o,e,r,t],n[0]=c,n[1]=e,n[2]=o,n[3]=r,n[4]=t,n[5]=s,n[6]=i):(s=n[5],i=n[6]),k(s,i)}var mt=ke("SCROLL_TYPEAHEAD_OPTION_INTO_VIEW_COMMAND");function xt({anchorElementRef:r,close:t,editor:e,groups:o,menuRenderFn:n,resolution:c,shouldSplitNodeWithQuery:s=!1}){let[i,l]=$e(null),a=c.match&&c.match.matchingString||"",u=z(f=>{let d=e.getRootElement();d!==null&&(d.setAttribute("aria-activedescendant",`${Be}__item-${f.key}`),l(f.key))},[e]),p=z(()=>{if(o!==null&&a!=null){let f=o.flatMap(d=>d.items);if(f.length){let d=f[0];u(d)}}},[o,u,a]);k(()=>{p()},[a,p]);let m=z(f=>{t(),e.update(()=>{let d=c.match!=null&&s?Pe(c.match):null;d&&d.remove()}),setTimeout(()=>{let d;e.read(()=>{d=ht()?.clone()}),e.update(()=>{d&&be(d)}),f.onSelect({editor:e,queryString:c.match?c.match.matchingString:""})},0)},[e,s,c.match,t]);k(()=>()=>{let f=e.getRootElement();f!==null&&f.removeAttribute("aria-activedescendant")},[e]),Ae(()=>{o===null?l(null):i===null&&p()},[o,i,u,p]),k(()=>at(e.registerCommand(mt,({item:f})=>f.ref&&f.ref.current!=null?(ut(f.ref.current),!0):!1,ft)),[e,u]),k(()=>at(e.registerCommand(Oe,f=>{let d=f;if(o!==null&&o.length&&i!==null){let h=o.flatMap(T=>T.items),x=h.findIndex(T=>T.key===i),E=x!==h.length-1?x+1:0,_=h[E];if(!_)return!1;u(_),_.ref!=null&&_.ref.current&&e.dispatchCommand(mt,{index:E,item:_}),d.preventDefault(),d.stopImmediatePropagation()}return!0},$),e.registerCommand(Ne,f=>{let d=f;if(o!==null&&o.length&&i!==null){let h=o.flatMap(T=>T.items),x=h.findIndex(T=>T.key===i),E=x!==0?x-1:h.length-1,_=h[E];if(!_)return!1;u(_),_.ref!=null&&_.ref.current&&ut(_.ref.current),d.preventDefault(),d.stopImmediatePropagation()}return!0},$),e.registerCommand(Ie,f=>{let d=f;return d.preventDefault(),d.stopImmediatePropagation(),t(),!0},ft),e.registerCommand(Me,f=>{let d=f;if(o===null||i===null)return!1;let x=o.flatMap(E=>E.items).find(E=>E.key===i);return x?(d.preventDefault(),d.stopImmediatePropagation(),m(x),!0):!1},$),e.registerCommand(Fe,f=>{if(o===null||i===null)return!1;let h=o.flatMap(x=>x.items).find(x=>x.key===i);return h?(f!==null&&(f.preventDefault(),f.stopImmediatePropagation()),m(h),!0):!1},$)),[m,t,e,o,i,u]);let g=De(()=>({groups:o,selectedItemKey:i,selectItemAndCleanUp:m,setSelectedItemKey:l}),[m,i,o]);return n(r,g,c.match?c.match.matchingString:"")}function Ue(r,t){t!=null&&(r.className=t),r.setAttribute("aria-label","Slash menu"),r.setAttribute("role","listbox"),r.style.display="block",r.style.position="absolute"}function Et(r,t,e,o){let n=pt(14),[c]=gt(),s;n[0]===Symbol.for("react.memo_cache_sentinel")?(s=st?document.createElement("div"):null,n[0]=s):s=n[0];let i=Le(s),l;n[1]!==r||n[2]!==o||n[3]!==c||n[4]!==t?(l=()=>{if(i.current===null||parent===void 0)return;let f=c.getRootElement(),d=i.current,h=d.firstChild;if(f!==null&&t!==null){let{height:x,width:E}=t.getRect(),{left:_,top:T}=t.getRect(),b=T;if(T=T-(r.getBoundingClientRect().top+window.scrollY),_=_-(r.getBoundingClientRect().left+window.scrollX),d.style.left=`${_+window.scrollX}px`,d.style.height=`${x}px`,d.style.width=`${E}px`,h!==null){let w=h.getBoundingClientRect(),L=w.height,S=w.width,X=f.getBoundingClientRect(),rt=document.dir==="rtl"||document.documentElement.dir==="rtl",de=r.getBoundingClientRect(),it=Math.max(0,X.left);if(!rt&&_+S>X.right)d.style.left=`${X.right-S+window.scrollX}px`;else if(rt&&w.left<it){let ge=it+S-de.left;d.style.left=`${ge+window.scrollX}px`}let me=b+L+32>window.innerHeight,pe=b<0;me&&!pe?d.style.top=`${T+32-L+window.scrollY-(x+24)}px`:d.style.top=`${T+window.scrollY+32}px`}d.isConnected||(Ue(d,o),r.append(d)),d.setAttribute("id","slash-menu"),i.current=d,f.setAttribute("aria-controls","slash-menu")}},n[1]=r,n[2]=o,n[3]=c,n[4]=t,n[5]=l):l=n[5];let a=l,u,p;n[6]!==c||n[7]!==a||n[8]!==t?(u=()=>{let f=c.getRootElement();if(t!==null)return a(),()=>{f!==null&&f.removeAttribute("aria-controls");let d=i.current;d!==null&&d.isConnected&&(d.remove(),d.removeAttribute("id"))}},p=[c,a,t],n[6]=c,n[7]=a,n[8]=t,n[9]=u,n[10]=p):(u=n[9],p=n[10]),k(u,p);let m;return n[11]!==t||n[12]!==e?(m=f=>{t!==null&&(f||e(null))},n[11]=t,n[12]=e,n[13]=m):m=n[13],Ke(t,i,a,m),i}var ko=`\\.,\\+\\*\\?\\$\\@\\|#{}\\(\\)\\^\\-\\[\\]\\\\/!%'"~=<>_:;`;function Qe(r){let t=r.anchor;if(t.type!=="text")return null;let e=t.getNode();if(!e.isSimpleText())return null;let o=t.offset;return e.getTextContent().slice(0,o)}function wt(r,t,e){let o=We(e);if(o===null||!o.isCollapsed)return!1;let n=o.anchorNode,c=r,s=o.anchorOffset;if(n==null||s==null)return!1;try{t.setStart(n,c),t.setEnd(n,s>1?s:1)}catch{return!1}return!0}function Je(r){let t;return r.getEditorState().read(()=>{let e=j();W(e)&&(t=Qe(e))}),t}function Ct(r,t){return t!==0?!1:r.getEditorState().read(()=>{let e=j();if(W(e)){let c=e.anchor.getNode().getPreviousSibling();return ze(c)&&c.isTextEntity()}return!1})}function St(r){Y.startTransition?Y.startTransition(r):r()}var Ze=je("ENABLE_SLASH_MENU_COMMAND");function Oo({anchorClassName:r,anchorElem:t,groups:e,menuRenderFn:o,onClose:n,onOpen:c,onQueryChange:s,triggerFn:i}){let[l]=Xe(),[a,u]=qe(null),p=Et(t,a,u,r),m=_t(()=>{u(null),n!=null&&a!==null&&n()},[n,a]),g=_t(f=>{u(f),c!=null&&a===null&&c(f)},[c,a]);return Tt(()=>Ge(l.registerCommand(Ze,({node:f})=>(l.getEditorState().read(()=>{let d={leadOffset:0,matchingString:"",replaceableString:""};if(!Ct(l,d.leadOffset)&&f!==null){let h=l._window??window,x=h.document.createRange();wt(d.leadOffset,x,h)!==null&&St(()=>g({getRect:()=>x.getBoundingClientRect(),match:d}));return}}),!0),Ye)),[l,g]),Tt(()=>{let f=()=>{l.getEditorState().read(()=>{let h=l._window??window,x=h.document.createRange(),E=j(),_=Je(l);if(!W(E)||!E.isCollapsed()||_===void 0||x===null){m();return}let T=i({editor:l,query:_});if(s(T?T.matchingString:null),T!==null&&!Ct(l,T.leadOffset)&&wt(T.leadOffset,x,h)!==null){St(()=>g({getRect:()=>x.getBoundingClientRect(),match:T}));return}m()})},d=l.registerUpdateListener(f);return()=>{d()}},[l,i,s,a,m,g]),p.current===null||a===null||l===null?null:Ve(xt,{anchorElementRef:p,close:m,editor:l,groups:e,menuRenderFn:o,resolution:a,shouldSplitNodeWithQuery:!0})}var Rt=class r{_bottom;_left;_right;_top;constructor(t,e,o,n){let[c,s]=e<=n?[e,n]:[n,e],[i,l]=t<=o?[t,o]:[o,t];this._top=c,this._right=l,this._left=i,this._bottom=s}static fromDOM(t){let{height:e,left:o,top:n,width:c}=t.getBoundingClientRect();return r.fromLWTH(o,c,n,e)}static fromDOMRect(t){let{height:e,left:o,top:n,width:c}=t;return r.fromLWTH(o,c,n,e)}static fromLTRB(t,e,o,n){return new r(t,e,o,n)}static fromLWTH(t,e,o,n){return new r(t,o,t+e,o+n)}static fromPoints(t,e){let{x:o,y:n}=t,{x:c,y:s}=e;return r.fromLTRB(o,n,c,s)}contains(t){if(lt(t)){let{x:s,y:i}=t,l=i<this._top,a=i>this._bottom,u=s<this._left,p=s>this._right;return{reason:{isOnBottomSide:a,isOnLeftSide:u,isOnRightSide:p,isOnTopSide:l},result:!l&&!a&&!u&&!p}}let{bottom:e,left:o,right:n,top:c}=t;return c>=this._top&&c<=this._bottom&&e>=this._top&&e<=this._bottom&&o>=this._left&&o<=this._right&&n>=this._left&&n<=this._right}distanceFromPoint(t){let e=this.contains(t);if(e.result)return{distance:0,isOnBottomSide:e.reason.isOnBottomSide,isOnLeftSide:e.reason.isOnLeftSide,isOnRightSide:e.reason.isOnRightSide,isOnTopSide:e.reason.isOnTopSide};let o=0,n=0;return t.x<this._left?o=this._left-t.x:t.x>this._right&&(o=t.x-this._right),t.y<this._top?n=this._top-t.y:t.y>this._bottom&&(n=t.y-this._bottom),{distance:Math.sqrt(o*o+n*n),isOnBottomSide:t.y>this._bottom,isOnLeftSide:t.x<this._left,isOnRightSide:t.x>this._right,isOnTopSide:t.y<this._top}}equals({bottom:t,left:e,right:o,top:n}){return n===this._top&&t===this._bottom&&e===this._left&&o===this._right}generateNewRect({bottom:t=this.bottom,left:e=this.left,right:o=this.right,top:n=this.top}){return new r(e,n,o,t)}intersectsWith(t){let{height:e,left:o,top:n,width:c}=t,{height:s,left:i,top:l,width:a}=this,u=o+c>=i+a?o+c:i+a,p=n+e>=l+s?n+e:l+s,m=o<=i?o:i,g=n<=l?n:l;return u-m<=c+a&&p-g<=e+s}get bottom(){return this._bottom}get height(){return Math.abs(this._bottom-this._top)}get left(){return this._left}get right(){return this._right}get top(){return this._top}get width(){return Math.abs(this._left-this._right)}};import q from"react";var A=new WeakMap;function Ao(r,t){A.has(r)||A.set(r,new Map);let e=A.get(r);for(let[o,n]of Object.entries(t))if(!(!n||typeof n!="object")){if(o==="blocks"){for(let[c,s]of Object.entries(n))e.set(`block:${c}`,s);continue}if(o==="inlineBlocks"){for(let[c,s]of Object.entries(n))e.set(`inlineBlock:${c}`,s);continue}e.set(o,n)}}function Do(r){A.delete(r)}function yt(r,t,e){let o=A.get(r);if(t==="block"&&e?.__fields?.blockType){let n=e.__fields.blockType;return o?.get(`block:${n}`)}if(t==="inlineBlock"&&e?.__fields?.blockType){let n=e.__fields.blockType;return o?.get(`inlineBlock:${n}`)}return o?.get(t)}function tn({node:r,nodeType:t}){if(!("getType"in r)||r.getType()!==t)return;let e=r;if(e.prototype._originalDecorate||(e.prototype._originalDecorate=e.prototype.decorate),e.prototype._originalCreateDOM||(e.prototype._originalCreateDOM=e.prototype.createDOM),e.prototype.decorate&&!e.prototype._decorateOverridden){e.prototype._decorateOverridden=!0;let o=!!e.prototype.createDOM;e.prototype.decorate=function(n,c){let s=yt(n,t,this);if(s){if(s.Component)return s.Component({config:c,editor:n,isEditor:!0,isJSXConverter:!1,node:this});if(s.createDOM&&s.html){let l=typeof s.html=="function"?s.html({config:c,editor:n,isEditor:!0,isJSXConverter:!1,node:this}):s.html;return q.createElement("span",{dangerouslySetInnerHTML:{__html:l}})}if(s.html&&o&&!s.createDOM)return q.createElement(q.Fragment);if(t==="block"){let l=s;if(l.Block||l.Label)return e.prototype._originalDecorate.call(this,n,c,l.Block,l.Label)}else if(t==="inlineBlock"){let l=s;if(l.Block||l.Label)return e.prototype._originalDecorate.call(this,n,c,l.Block,l.Label)}}return e.prototype._originalDecorate.call(this,n,c)}}e.prototype.createDOM&&!e.prototype._createDOMOverridden&&(e.prototype._createDOMOverridden=!0,e.prototype.createDOM=function(o,n){let c=yt(n,t,this);if(c){if(c.createDOM)return c.createDOM({config:o,editor:n,node:this});if(c.html){let s=typeof c.html=="function"?c.html({config:o,editor:n,isEditor:!0,isJSXConverter:!1,node:this}):c.html,i=document.createElement("div");return i.innerHTML=s,i.firstElementChild||i}}return e.prototype._originalCreateDOM.call(this,o,n)})}function Lo({editorConfig:r,nodeViews:t}){let e=en({nodes:r.features.nodes});if(t){let o=new Set;for(let[n,c]of Object.entries(t))!c||typeof c!="object"||(n==="blocks"&&Object.keys(c).length>0?o.add("block"):n==="inlineBlocks"&&Object.keys(c).length>0?o.add("inlineBlock"):o.add(n));for(let n of e)if("getType"in n){let c=n.getType();o.has(c)&&tn({node:n,nodeType:c})}}return e}function en({nodes:r}){return r.map(t=>"node"in t?t.node:t)}import{$getRoot as un,$isDecoratorNode as Ft,$isElementNode as P,$isLineBreakNode as dn,$isTextNode as H}from"lexical";import{$isListItemNode as nn,$isListNode as bt}from"@lexical/list";import{$isHeadingNode as on,$isQuoteNode as rn}from"@lexical/rich-text";import{$isParagraphNode as sn,$isTextNode as cn}from"lexical";var C={markdownFormatKind:null,regEx:/(?:)/,regExForAutoFormatting:/(?:)/,requiresParagraphStart:!1},R={...C,requiresParagraphStart:!0},Ho={...R,export:O(1),markdownFormatKind:"paragraphH1",regEx:/^# /,regExForAutoFormatting:/^# /},Ko={...R,export:O(2),markdownFormatKind:"paragraphH2",regEx:/^## /,regExForAutoFormatting:/^## /},Uo={...R,export:O(3),markdownFormatKind:"paragraphH3",regEx:/^### /,regExForAutoFormatting:/^### /},Vo={...R,export:O(4),markdownFormatKind:"paragraphH4",regEx:/^#### /,regExForAutoFormatting:/^#### /},Xo={...R,export:O(5),markdownFormatKind:"paragraphH5",regEx:/^##### /,regExForAutoFormatting:/^##### /},Go={...R,export:O(6),markdownFormatKind:"paragraphH6",regEx:/^###### /,regExForAutoFormatting:/^###### /},zo={...R,export:an,markdownFormatKind:"paragraphBlockQuote",regEx:/^> /,regExForAutoFormatting:/^> /},Yo={...R,export:Q,markdownFormatKind:"paragraphUnorderedList",regEx:/^(\s{0,10})- /,regExForAutoFormatting:/^(\s{0,10})- /},jo={...R,export:Q,markdownFormatKind:"paragraphUnorderedList",regEx:/^(\s{0,10})\* /,regExForAutoFormatting:/^(\s{0,10})\* /},Wo={...R,export:Q,markdownFormatKind:"paragraphOrderedList",regEx:/^(\s{0,10})(\d+)\.\s/,regExForAutoFormatting:/^(\s{0,10})(\d+)\.\s/},qo={...R,markdownFormatKind:"horizontalRule",regEx:/^\*\*\*$/,regExForAutoFormatting:/^\*\*\* /},Qo={...R,markdownFormatKind:"horizontalRule",regEx:/^---$/,regExForAutoFormatting:/^--- /},Jo={...C,exportFormat:"code",exportTag:"`",markdownFormatKind:"code",regEx:/(`)(\s*)([^`]*)(\s*)(`)()/,regExForAutoFormatting:/(`)(\s*\b)([^`]*)(\b\s*)(`)(\s)$/},Zo={...C,exportFormat:"bold",exportTag:"**",markdownFormatKind:"bold",regEx:/(\*\*)(\s*)([^*]*)(\s*)(\*\*)()/,regExForAutoFormatting:/(\*\*)(\s*\b)([^*]*)(\b\s*)(\*\*)(\s)$/},tr={...C,exportFormat:"italic",exportTag:"*",markdownFormatKind:"italic",regEx:/(\*)(\s*)([^*]*)(\s*)(\*)()/,regExForAutoFormatting:/(\*)(\s*\b)([^*]*)(\b\s*)(\*)(\s)$/},er={...C,exportFormat:"bold",exportTag:"_",markdownFormatKind:"bold",regEx:/(__)(\s*)([^_]*)(\s*)(__)()/,regExForAutoFormatting:/(__)(\s*)([^_]*)(\s*)(__)(\s)$/},nr={...C,exportFormat:"italic",exportTag:"_",markdownFormatKind:"italic",regEx:/(_)()([^_]*)()(_)()/,regExForAutoFormatting:/(_)()([^_]*)()(_)(\s)$/},or={...C,exportFormat:"underline",exportTag:"<u>",exportTagClose:"</u>",markdownFormatKind:"underline",regEx:/(<u>)(\s*)([^<]*)(\s*)(<\/u>)()/,regExForAutoFormatting:/(<u>)(\s*\b)([^<]*)(\b\s*)(<\/u>)(\s)$/},rr={...C,exportFormat:"strikethrough",exportTag:"~~",markdownFormatKind:"strikethrough",regEx:/(~~)(\s*)([^~]*)(\s*)(~~)()/,regExForAutoFormatting:/(~~)(\s*\b)([^~]*)(\b\s*)(~~)(\s)$/},ir={...C,markdownFormatKind:"strikethrough_italic_bold",regEx:/(~~_\*\*)(\s*\b)([^*_~]+)(\b\s*)(\*\*_~~)()/,regExForAutoFormatting:/(~~_\*\*)(\s*\b)([^*_~]+)(\b\s*)(\*\*_~~)(\s)$/},sr={...C,markdownFormatKind:"italic_bold",regEx:/(_\*\*)(\s*\b)([^*_]+)(\b\s*)(\*\*_)/,regExForAutoFormatting:/(_\*\*)(\s*\b)([^*_]+)(\b\s*)(\*\*_)(\s)$/},cr={...C,markdownFormatKind:"strikethrough_italic",regEx:/(~~_)(\s*)([^_~]+)(\s*)(_~~)/,regExForAutoFormatting:/(~~_)(\s*)([^_~]+)(\s*)(_~~)(\s)$/},lr={...C,markdownFormatKind:"strikethrough_bold",regEx:/(~~\*\*)(\s*\b)([^*~]+)(\b\s*)(\*\*~~)/,regExForAutoFormatting:/(~~\*\*)(\s*\b)([^*~]+)(\b\s*)(\*\*~~)(\s)$/},ar={...C,markdownFormatKind:"link",regEx:/(\[)([^\]]*)(\]\()([^)]*)(\)*)()/,regExForAutoFormatting:/(\[)([^\]]*)(\]\()([^)]*)(\)*)(\s)$/};function O(r){return(t,e)=>on(t)&&t.getTag()==="h"+r?"#".repeat(r)+" "+e(t):null}function Q(r,t){return bt(r)?kt(r,t,0):null}var ln=4;function kt(r,t,e){let o=[],n=r.getChildren(),c=0;for(let s of n)if(nn(s)){if(s.getChildrenSize()===1){let a=s.getFirstChild();if(bt(a)){o.push(kt(a,t,e+1));continue}}let i=" ".repeat(e*ln),l=r.getListType()==="bullet"?"- ":`${r.getStart()+c}. `;o.push(i+l+t(s)),c++}return o.join(`
2
- `)}function an(r,t){return rn(r)?"> "+t(r):null}function B(r,t){let e={};for(let o of r){let n=t(o);n&&(e[n]?e[n].push(o):e[n]=[o])}return e}function N(r){let t=B(r,e=>e.type);return{element:t.element||[],multilineElement:t["multiline-element"]||[],textFormat:t["text-format"]||[],textMatch:t["text-match"]||[]}}var F=/[!-/:-@[-`{-~\s]/,fn=/^\s{0,3}$/;function D(r){if(!sn(r))return!1;let t=r.getFirstChild();return t==null||r.getChildrenSize()===1&&cn(t)&&fn.test(t.getTextContent())}function It(r,t=!1){let e=N(r),o=[...e.multilineElement,...e.element],n=!t,c=e.textFormat.filter(s=>s.format.length===1).sort((s,i)=>s.format.includes("code")&&!i.format.includes("code")?1:!s.format.includes("code")&&i.format.includes("code")?-1:0);return s=>{let i=[],l=(s||un()).getChildren();return l.forEach((a,u)=>{let p=mn(a,o,c,e.textMatch);p!=null&&i.push(n&&u>0&&!D(a)&&!D(l[u-1])?`
3
- `.concat(p):p)}),i.join(`
4
- `)}}function mn(r,t,e,o){for(let n of t){if(!n.export)continue;let c=n.export(r,s=>K(s,e,o));if(c!=null)return c}return P(r)?K(r,e,o):Ft(r)?r.getTextContent():null}function K(r,t,e,o,n){let c=[],s=r.getChildren();o||(o=[]),n||(n=[]);t:for(let i of s){for(let l of e){if(!l.export)continue;let a=l.export(i,u=>K(u,t,e,o,[...n,...o]),(u,p)=>Ot(u,p,t,o,n));if(a!=null){c.push(a);continue t}}dn(i)?c.push(`
5
- `):H(i)?c.push(Ot(i,i.getTextContent(),t,o,n)):P(i)?c.push(K(i,t,e,o,n)):Ft(i)&&c.push(i.getTextContent())}return c.join("")}function Ot(r,t,e,o,n){let c=t.trim(),s=c;r.hasFormat("code")||(s=s.replace(/([*_`~\\])/g,"\\$1"));let i="",l="",a="",u=Nt(r,!0),p=Nt(r,!1),m=new Set;for(let g of e){let f=g.format[0],d=g.tag;v(r,f)&&!m.has(f)&&(m.add(f),(!v(u,f)||!o.find(h=>h.tag===d))&&(o.push({format:f,tag:d}),i+=d))}for(let g=0;g<o.length;g++){let f=o[g],d=v(r,f.format),h=v(p,f.format);if(d&&h)continue;let x=[...o];for(;x.length>g;){let E=x.pop();n&&E&&n.find(_=>_.tag===E.tag)||(E&&typeof E.tag=="string"&&(d?h||(a+=E.tag):l+=E.tag),o.pop())}break}return s=i+s+a,l+t.replace(c,()=>s)}function Nt(r,t){let e=t?r.getPreviousSibling():r.getNextSibling();if(!e){let o=r.getParentOrThrow();o.isInline()&&(e=t?o.getPreviousSibling():o.getNextSibling())}for(;e;){if(P(e)){if(!e.isInline())break;let o=t?e.getLastDescendant():e.getFirstDescendant();if(H(o))return o;e=t?e.getPreviousSibling():e.getNextSibling()}if(H(e))return e;if(!P(e))return null}return null}function v(r,t){return H(r)&&r.hasFormat(t)}import{$isListItemNode as gn,$isListNode as $t}from"@lexical/list";import{$isQuoteNode as hn}from"@lexical/rich-text";import{$findMatchingParent as xn}from"@lexical/utils";import{$createLineBreakNode as En,$createParagraphNode as _n,$createTextNode as Tn,$getRoot as wn,$getSelection as Cn,$isParagraphNode as Sn}from"lexical";import{$isTextNode as I}from"lexical";function Mt(r,t){let e=r.getTextContent(),o=pn(e,t);if(!o)return null;let n=o.index||0,c=n+o[0].length,s=t.transformersByTag[o[1]];return{endIndex:c,match:o,startIndex:n,transformer:s}}function pn(r,t){let e=r.match(t.openTagsRegExp);if(e==null)return null;for(let o of e){let n=o.replace(/^\s/,""),c=t.fullMatchRegExpByTag[n];if(c==null)continue;let s=r.match(c),i=t.transformersByTag[n];if(s!=null&&i!=null){if(i.intraword!==!1)return s;let{index:l=0}=s,a=r[l-1],u=r[l+s[0].length];if((!a||F.test(a))&&(!u||F.test(u)))return s}}return null}function At(r,t,e,o,n){let c=r.getTextContent(),s,i,l;if(n[0]===c?l=r:t===0?[l,s]=r.splitText(e):[i,l,s]=r.splitText(t,e),l.setTextContent(n[2]),o)for(let a of o.format)l.hasFormat(a)||l.toggleFormat(a);return{nodeAfter:s,nodeBefore:i,transformedNode:l}}function Dt(r,t){let e=r,o,n,c,s;for(let i of t){if(!i.replace||!i.importRegExp)continue;let l=e.getTextContent().match(i.importRegExp);if(!l)continue;let a=l.index||0,u=i.getEndIndex?i.getEndIndex(e,l):a+l[0].length;u!==!1&&(o===void 0||n===void 0||a<o&&u>n)&&(o=a,n=u,c=i,s=l)}return o===void 0||n===void 0||c===void 0||s===void 0?null:{endIndex:n,match:s,startIndex:o,transformer:c}}function Lt(r,t,e,o,n){let c,s,i;if(t===0?[i,c]=r.splitText(e):[s,i,c]=r.splitText(t,e),!o.replace)return null;let l=i?o.replace(i,n):void 0;return{nodeAfter:c,nodeBefore:s,transformedNode:l||void 0}}function y(r,t,e){let o=Mt(r,t),n=Dt(r,e);if(o&&n&&(o.startIndex<=n.startIndex&&o.endIndex>=n.endIndex?n=null:o=null),o){let i=At(r,o.startIndex,o.endIndex,o.transformer,o.match);i.nodeAfter&&I(i.nodeAfter)&&!i.nodeAfter.hasFormat("code")&&y(i.nodeAfter,t,e),i.nodeBefore&&I(i.nodeBefore)&&!i.nodeBefore.hasFormat("code")&&y(i.nodeBefore,t,e),i.transformedNode&&I(i.transformedNode)&&!i.transformedNode.hasFormat("code")&&y(i.transformedNode,t,e)}else if(n){let i=Lt(r,n.startIndex,n.endIndex,n.transformer,n.match);if(!i)return;i.nodeAfter&&I(i.nodeAfter)&&!i.nodeAfter.hasFormat("code")&&y(i.nodeAfter,t,e),i.nodeBefore&&I(i.nodeBefore)&&!i.nodeBefore.hasFormat("code")&&y(i.nodeBefore,t,e),i.transformedNode&&I(i.transformedNode)&&!i.transformedNode.hasFormat("code")&&y(i.transformedNode,t,e)}let s=r.getTextContent().replace(/\\([*_`~])/g,"$1");r.setTextContent(s)}function Bt(r,t=!1){let e=N(r),o=bn(e.textFormat);return(n,c)=>{let s=n.split(`
6
- `),i=s.length,l=c||wn();l.clear();for(let u=0;u<i;u++){let p=s[u],[m,g]=Rn(s,u,e.multilineElement,l);if(m){u=g;continue}yn(p,l,e.element,o,e.textMatch)}let a=l.getChildren();for(let u of a)!t&&D(u)&&l.getChildrenSize()>1&&u.remove();Cn()!==null&&l.selectStart()}}function Rn(r,t,e,o){for(let n of e){let{handleImportAfterStartMatch:c,regExpEnd:s,regExpStart:i,replace:l}=n,a=r[t]?.match(i);if(!a)continue;if(c){let f=c({lines:r,rootNode:o,startLineIndex:t,startMatch:a,transformer:n});if(f===null)continue;if(f)return f}let u=typeof s=="object"&&"regExp"in s?s.regExp:s,p=s&&typeof s=="object"&&"optional"in s?s.optional:!s,m=t,g=r.length;for(;m<g;){let f=u?r[m]?.match(u):null;if(!f&&(!p||p&&m<g-1)){m++;continue}if(f&&t===m&&f.index===a.index){m++;continue}let d=[];if(f&&t===m)d.push(r[t].slice(a[0].length,-f[0].length));else for(let h=t;h<=m;h++){let x=r[h];if(h===t){let E=x.slice(a[0].length);d.push(E)}else if(h===m&&f){let E=x.slice(0,-f[0].length);d.push(E)}else d.push(x)}if(l(o,null,a,f,d,!0)!==!1)return[!0,m];break}}return[!1,t]}function yn(r,t,e,o,n){let c=Tn(r),s=_n();s.append(c),t.append(s);for(let{regExp:i,replace:l}of e){let a=r.match(i);if(a&&(c.setTextContent(r.slice(a[0].length)),l(s,[c],a,!0)!==!1))break}if(y(c,o,n),s.isAttached()&&r.length>0){let i=s.getPreviousSibling();if(Sn(i)||hn(i)||$t(i)){let l=i;if($t(i)){let a=i.getLastDescendant();a==null?l=null:l=xn(a,gn)}l!=null&&l.getTextContentSize()>0&&(l.splice(l.getChildrenSize(),0,[En(),...s.getChildren()]),s.remove())}}}function bn(r){let t={},e={},o=[],n="(?<![\\\\])";for(let c of r){let{tag:s}=c;t[s]=c;let i=s.replace(/([*^+])/g,"\\$1");o.push(i),s.length===1?e[s]=new RegExp(`(?<![\\\\${i}])(${i})((\\\\${i})?.*?[^${i}\\s](\\\\${i})?)((?<!\\\\)|(?<=\\\\\\\\))(${i})(?![\\\\${i}])`):e[s]=new RegExp(`(?<!\\\\)(${i})((\\\\${i})?.*?[^\\s](\\\\${i})?)((?<!\\\\)|(?<=\\\\\\\\))(${i})(?!\\\\)`)}return{fullMatchRegExpByTag:e,openTagsRegExp:new RegExp(`${n}(${o.join("|")})`,"g"),transformersByTag:t}}import{$createRangeSelection as kn,$getSelection as J,$isLineBreakNode as On,$isRangeSelection as Z,$isRootOrShadowRoot as Pt,$isTextNode as Ht,$setSelection as Nn}from"lexical";function Fn(r,t,e,o){let n=r.getParent();if(!Pt(n)||r.getFirstChild()!==t)return!1;let c=t.getTextContent();if(c[e-1]!==" ")return!1;for(let{regExp:s,replace:i}of o){let l=c.match(s);if(l&&l[0].length===(l[0].endsWith(" ")?e:e-1)){let a=t.getNextSiblings(),[u,p]=t.splitText(e);u?.remove();let m=p?[p,...a]:a;if(i(r,m,l,!1)!==!1)return!0}}return!1}function In(r,t,e,o){let n=r.getParent();if(!Pt(n)||r.getFirstChild()!==t)return!1;let c=t.getTextContent();if(c[e-1]!==" ")return!1;for(let{regExpEnd:s,regExpStart:i,replace:l}of o){if(s&&!("optional"in s)||s&&"optional"in s&&!s.optional)continue;let a=c.match(i);if(a&&a[0].length===(a[0].endsWith(" ")?e:e-1)){let u=t.getNextSiblings(),[p,m]=t.splitText(e);p?.remove();let g=m?[m,...u]:u;if(l(r,g,a,null,null,!1)!==!1)return!0}}return!1}function Mn(r,t,e){let o=r.getTextContent(),n=o[t-1],c=e[n];if(c==null)return!1;t<o.length&&(o=o.slice(0,t));for(let s of c){if(!s.replace||!s.regExp)continue;let i=o.match(s.regExp);if(i===null)continue;let l=i.index||0,a=l+i[0].length,u;return l===0?[u]=r.splitText(a):[,u]=r.splitText(l,a),u&&(u.selectNext(0,0),s.replace(u,i)),!0}return!1}function An(r,t,e){let o=r.getTextContent(),n=t-1,c=o[n],s=e[c];if(!s)return!1;for(let i of s){let{tag:l}=i,a=l.length,u=n-a+1;if(a>1&&!Kt(o,u,l,0,a)||o[u-1]===" ")continue;let p=o[n+1];if(i.intraword===!1&&p&&!F.test(p))continue;let m=r,g=m,f=vt(o,u,l),d=g;for(;f<0&&(d=d.getPreviousSibling())&&!On(d);)if(Ht(d)){let S=d.getTextContent();g=d,f=vt(S,S.length,l)}if(f<0||g===m&&f+a===u)continue;let h=g.getTextContent();if(f>0&&h[f-1]===c)continue;let x=h[f-1];if(i.intraword===!1&&x&&!F.test(x))continue;let E=m.getTextContent(),_=E.slice(0,u)+E.slice(n+1);m.setTextContent(_);let T=g===m?_:h;g.setTextContent(T.slice(0,f)+T.slice(f+a));let b=J(),w=kn();Nn(w);let L=n-a*(g===m?2:1)+1;w.anchor.set(g.__key,f,"text"),w.focus.set(m.__key,L,"text");for(let S of i.format)w.hasFormat(S)||w.formatText(S);w.anchor.set(w.focus.key,w.focus.offset,w.focus.type);for(let S of i.format)w.hasFormat(S)&&w.toggleFormat(S);return Z(b)&&(w.format=b.format),!0}return!1}function vt(r,t,e){let o=e.length;for(let n=t;n>=o;n--){let c=n-o;if(Kt(r,c,e,0,o)&&r[c+o]!==" ")return c}return-1}function Kt(r,t,e,o,n){for(let c=0;c<n;c++)if(r[t+c]!==e[o+c])return!1;return!0}function Ir(r,t=U){let e=N(t),o=B(e.textFormat,({tag:s})=>s[s.length-1]),n=B(e.textMatch,({trigger:s})=>s);for(let s of t){let i=s.type;if(i==="element"||i==="text-match"||i==="multiline-element"){let l=s.dependencies;for(let a of l)if(!r.hasNode(a))throw new Error("MarkdownShortcuts: missing dependency %s for transformer. Ensure node dependency is included in editor initial config."+a.getType())}}let c=(s,i,l)=>{Fn(s,i,l,e.element)||In(s,i,l,e.multilineElement)||Mn(i,l,n)||An(i,l,o)};return r.registerUpdateListener(({dirtyLeaves:s,editorState:i,prevEditorState:l,tags:a})=>{if(a.has("collaboration")||a.has("historic")||r.isComposing())return;let u=i.read(J),p=l.read(J);if(!Z(p)||!Z(u)||!u.isCollapsed()||u.is(p))return;let m=u.anchor.key,g=u.anchor.offset,f=i._nodeMap.get(m);!Ht(f)||!s.has(m)||g!==1&&g>p.anchor.offset+1||r.update(()=>{if(f.hasFormat("code"))return;let d=f.getParent();d!==null&&c(d,f,u.anchor.offset)})})}import{$createListItemNode as Dn,$createListNode as Ln,$isListItemNode as $n,$isListNode as M,ListItemNode as et,ListNode as nt}from"@lexical/list";import{$createHeadingNode as Bn,$createQuoteNode as vn,$isHeadingNode as Pn,$isQuoteNode as Ut,HeadingNode as Hn,QuoteNode as Kn}from"@lexical/rich-text";import{$createLineBreakNode as Un}from"lexical";var Vt=/^[\t ]*$/,Yt=/^(\s*)(\d+)\.\s/,jt=/^(\s*)[-*+]\s/,Wt=/^(\s*)(?:-\s)?\s?(\[(\s|x)?\])\s/i,tt=/^(#{1,6})\s/,qt=/^>\s/,Vn=/^[ \t]*(\\`\\`\\`|```)(\w+)?/,Xt=/[ \t]*(\\`\\`\\`|```)$/,Xn=/^[ \t]*```[^`]+(?:(?:`{1,2}|`{4,})[^`]+)*```(?:[^`]|$)/,Gn=/^\|(.+)\|\s?$/,zn=/^(\| ?:?-*:? ?)+\|\s?$/,Gt=/^[ \t]*<[a-z_][\w-]*(?:\s[^<>]*)?\/?>/i,zt=/^[ \t]*<\/[a-z_][\w-]*\s*>/i,Yn=r=>(t,e,o)=>{let n=r(o);n.append(...e),t.replace(n),n.select(0,0)},Qt=4;function jn(r){let t=r.match(/\t/g),e=r.match(/ /g),o=0;return t&&(o+=t.length),e&&(o+=Math.floor(e.length/Qt)),o}var ot=r=>(t,e,o)=>{let n=t.getPreviousSibling(),c=t.getNextSibling(),s=Dn(r==="check"?o[3]==="x":void 0);if(M(c)&&c.getListType()===r){let l=c.getFirstChild();l!==null?l.insertBefore(s):c.append(s),t.remove()}else if(M(n)&&n.getListType()===r)n.append(s),t.remove();else{let l=Ln(r,r==="number"?Number(o[2]):void 0);l.append(s),t.replace(l)}s.append(...e),s.select(0,0);let i=jn(o[1]);i&&s.setIndent(i)},V=(r,t,e)=>{let o=[],n=r.getChildren(),c=0;for(let s of n)if($n(s)){if(s.getChildrenSize()===1){let u=s.getFirstChild();if(M(u)){o.push(V(u,t,e+1));continue}}let i=" ".repeat(e*Qt),l=r.getListType(),a=l==="number"?`${r.getStart()+c}. `:l==="check"?`- [${s.getChecked()?"x":" "}] `:"- ";o.push(i+a+t(s)),c++}return o.join(`
7
- `)},Jt={type:"element",dependencies:[Hn],export:(r,t)=>{if(!Pn(r))return null;let e=Number(r.getTag().slice(1));return"#".repeat(e)+" "+t(r)},regExp:tt,replace:Yn(r=>{let t="h"+r[1].length;return Bn(t)})},Zt={type:"element",dependencies:[Kn],export:(r,t)=>{if(!Ut(r))return null;let e=t(r).split(`
8
- `),o=[];for(let n of e)o.push("> "+n);return o.join(`
9
- `)},regExp:qt,replace:(r,t,e,o)=>{if(o){let c=r.getPreviousSibling();if(Ut(c)){c.splice(c.getChildrenSize(),0,[Un(),...t]),c.select(0,0),r.remove();return}}let n=vn();n.append(...t),r.replace(n),n.select(0,0)}},te={type:"element",dependencies:[nt,et],export:(r,t)=>M(r)?V(r,t,0):null,regExp:jt,replace:ot("bullet")},Wn={type:"element",dependencies:[nt,et],export:(r,t)=>M(r)?V(r,t,0):null,regExp:Wt,replace:ot("check")},ee={type:"element",dependencies:[nt,et],export:(r,t)=>M(r)?V(r,t,0):null,regExp:Yt,replace:ot("number")},ne={type:"text-format",format:["code"],tag:"`"},oe={type:"text-format",format:["highlight"],tag:"=="},re={type:"text-format",format:["bold","italic"],tag:"***"},ie={type:"text-format",format:["bold","italic"],intraword:!1,tag:"___"},se={type:"text-format",format:["bold"],tag:"**"},ce={type:"text-format",format:["bold"],intraword:!1,tag:"__"},le={type:"text-format",format:["strikethrough"],tag:"~~"},ae={type:"text-format",format:["italic"],tag:"*"},fe={type:"text-format",format:["italic"],intraword:!1,tag:"_"};function ue(r,t){let e=r.split(`
10
- `),o=!1,n=[],c=0;for(let s=0;s<e.length;s++){let i=e[s],l=n[n.length-1];if(Xn.test(i)){n.push(i);continue}if(Xt.test(i)){c===0&&(o=!0),c===1&&(o=!1),c>0&&c--,n.push(i);continue}if(Vn.test(i)){o=!0,c++,n.push(i);continue}if(o){n.push(i);continue}Vt.test(i)||Vt.test(l)||!l||tt.test(l)||tt.test(i)||qt.test(i)||Yt.test(i)||jt.test(i)||Wt.test(i)||Gn.test(i)||zn.test(i)||!t||Gt.test(i)||zt.test(i)||Gt.test(l)||zt.test(l)||Xt.test(l)?n.push(i):n[n.length-1]=l+" "+i.trim()}return n.join(`
11
- `)}var qn=[Jt,Zt,te,ee],Qn=[],Jn=[ne,re,ie,se,ce,oe,ae,fe,le],Zn=[],U=[...qn,...Qn,...Jn,...Zn];function Hr(r,t=U,e,o=!1,n=!0){let c=o?r:ue(r,n);return Bt(t,o)(c,e)}function Kr(r=U,t,e=!1){return It(r,e)(t)}export{Ir as a,Hr as b,Kr as c,st as d,ro as e,fo as f,Re as g,G as h,lt as i,ko as j,Ze as k,Oo as l,Rt as m,Ao as n,Do as o,Lo as p};
12
- //# sourceMappingURL=chunk-LH634DPU.js.map