payload-richtext-tiptap 0.0.41 → 0.0.42

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 (77) hide show
  1. package/dist/src/fields/TiptapEditor/Components.d.ts.map +1 -1
  2. package/dist/src/fields/TiptapEditor/Components.js +3 -3
  3. package/dist/src/fields/TiptapEditor/Components.js.map +1 -1
  4. package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.d.ts +4 -0
  5. package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.d.ts.map +1 -0
  6. package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.js +208 -0
  7. package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.js.map +1 -0
  8. package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.d.ts +5 -0
  9. package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.d.ts.map +1 -0
  10. package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.js +123 -0
  11. package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.js.map +1 -0
  12. package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.d.ts +10 -0
  13. package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.d.ts.map +1 -0
  14. package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.js +29 -0
  15. package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.js.map +1 -0
  16. package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.d.ts +5 -0
  17. package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.d.ts.map +1 -0
  18. package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.js +123 -0
  19. package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.js.map +1 -0
  20. package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.d.ts +4 -0
  21. package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.d.ts.map +1 -0
  22. package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.js +260 -0
  23. package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.js.map +1 -0
  24. package/dist/src/fields/TiptapEditor/extensions/AICommand/index.d.ts +2 -0
  25. package/dist/src/fields/TiptapEditor/extensions/AICommand/index.d.ts.map +1 -0
  26. package/dist/src/fields/TiptapEditor/extensions/AICommand/index.js +3 -0
  27. package/dist/src/fields/TiptapEditor/extensions/AICommand/index.js.map +1 -0
  28. package/dist/src/fields/TiptapEditor/extensions/AICommand/types.d.ts +22 -0
  29. package/dist/src/fields/TiptapEditor/extensions/AICommand/types.d.ts.map +1 -0
  30. package/dist/src/fields/TiptapEditor/extensions/AICommand/types.js +3 -0
  31. package/dist/src/fields/TiptapEditor/extensions/AICommand/types.js.map +1 -0
  32. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.d.ts.map +1 -1
  33. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.js +3 -2
  34. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.js.map +1 -1
  35. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.d.ts +2 -2
  36. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.d.ts.map +1 -1
  37. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.js +38 -21
  38. package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.js.map +1 -1
  39. package/dist/src/fields/TiptapEditor/extensions/extension-kit.d.ts +3 -1
  40. package/dist/src/fields/TiptapEditor/extensions/extension-kit.d.ts.map +1 -1
  41. package/dist/src/fields/TiptapEditor/extensions/extension-kit.js +22 -15
  42. package/dist/src/fields/TiptapEditor/extensions/extension-kit.js.map +1 -1
  43. package/dist/src/fields/TiptapEditor/extensions/index.d.ts +1 -0
  44. package/dist/src/fields/TiptapEditor/extensions/index.d.ts.map +1 -1
  45. package/dist/src/fields/TiptapEditor/extensions/index.js +1 -0
  46. package/dist/src/fields/TiptapEditor/extensions/index.js.map +1 -1
  47. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts +4 -1
  48. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts.map +1 -1
  49. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js +3 -2
  50. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js.map +1 -1
  51. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.d.ts +8 -0
  52. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.d.ts.map +1 -0
  53. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.js +94 -0
  54. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.js.map +1 -0
  55. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.d.ts +7 -0
  56. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.d.ts.map +1 -0
  57. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.js +193 -0
  58. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.js.map +1 -0
  59. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.d.ts +2 -0
  60. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.d.ts.map +1 -0
  61. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.js +3 -0
  62. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.js.map +1 -0
  63. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.d.ts.map +1 -1
  64. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js +29 -17
  65. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js.map +1 -1
  66. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.d.ts +3 -1
  67. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.d.ts.map +1 -1
  68. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.js +4 -3
  69. package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.js.map +1 -1
  70. package/dist/src/fields/TiptapEditor/lib/extract.d.ts.map +1 -1
  71. package/dist/src/fields/TiptapEditor/lib/extract.js +6 -5
  72. package/dist/src/fields/TiptapEditor/lib/extract.js.map +1 -1
  73. package/dist/src/fields/TiptapEditor/types.d.js +3 -0
  74. package/dist/src/fields/TiptapEditor/types.d.js.map +1 -0
  75. package/dist/src/styles.css +0 -4
  76. package/dist/tsconfig.tsbuildinfo +1 -1
  77. package/package.json +2 -1
@@ -1,6 +1,8 @@
1
+ import { openAssetHQType } from "../types.js";
1
2
  interface ExtensionKitProps {
2
3
  dir?: "rtl" | "ltr";
4
+ openAssetHQHandler: openAssetHQType;
3
5
  }
4
- export declare const ExtensionKit: ({ dir }: ExtensionKitProps) => (import("@tiptap/core").Extension<any, any> | import("@tiptap/core").Node<any, any> | import("@tiptap/core").Mark<import("@tiptap/extension-subscript").SubscriptExtensionOptions, any>)[];
6
+ export declare const ExtensionKit: ({ dir, openAssetHQHandler, }: ExtensionKitProps) => (import("@tiptap/core").Extension<any, any> | import("@tiptap/core").Node<any, any> | import("@tiptap/core").Mark<import("@tiptap/extension-subscript").SubscriptExtensionOptions, any>)[];
5
7
  export default ExtensionKit;
6
8
  //# sourceMappingURL=extension-kit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension-kit.d.ts","sourceRoot":"","sources":["../../../../../src/fields/TiptapEditor/extensions/extension-kit.ts"],"names":[],"mappings":"AA0DA,UAAU,iBAAiB;IACzB,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;CACrB;AAED,eAAO,MAAM,YAAY,YAAa,iBAAiB,+LA6GtD,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"extension-kit.d.ts","sourceRoot":"","sources":["../../../../../src/fields/TiptapEditor/extensions/extension-kit.ts"],"names":[],"mappings":"AAuDA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAI9C,UAAU,iBAAiB;IACzB,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACpB,kBAAkB,EAAE,eAAe,CAAC;CACrC;AAED,eAAO,MAAM,YAAY,iCAGtB,iBAAiB,+LAsHnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1,14 +1,16 @@
1
- import { BlockquoteFigure, CharacterCount, Color, Document, Dropcursor, Figcaption, FileHandler, Focus, FontFamily, FontSize, Heading, Highlight, HorizontalRule, ImageBlock, Link, Placeholder, Selection, SlashCommand, StarterKit, Subscript, Superscript, Table, TableOfContents, TableCell, TableHeader, TableRow, TextAlign, TextStyle, TrailingNode, Typography, Underline, // emojiSuggestion,
2
- Columns, Column, TaskItem, TaskList, Twitter, Tiktok, Instagram, Facebook, Linkedin, Youtube, InsideLinks } from "./index.js";
1
+ import { AICommand, BlockquoteFigure, CharacterCount, Color, Column, // emojiSuggestion,
2
+ Columns, Document, Dropcursor, Facebook, Figcaption, FileHandler, Focus, FontFamily, FontSize, Heading, Highlight, HorizontalRule, ImageBlock, InsideLinks, Instagram, Link, Linkedin, Placeholder, Selection, SlashCommand, StarterKit, Subscript, Superscript, Table, TableCell, TableHeader, TableOfContents, TableRow, TaskItem, TaskList, TextAlign, TextStyle, Tiktok, TrailingNode, Twitter, Typography, Underline, Youtube } from "./index.js";
3
3
  import { CodeBlockLowlight } from "@tiptap/extension-code-block-lowlight";
4
- import { ImageUpload } from "./ImageUpload/ImageUpload.js";
5
- import { TableOfContentsNode } from "./TableOfContentsNode/TableOfContentsNode.js";
6
4
  import lowlight from "lowlight";
7
5
  import TextDirection from "tiptap-text-direction";
8
- import API from "../lib/api.js";
6
+ import { ImageUpload } from "./ImageUpload/ImageUpload.js";
7
+ import { TableOfContentsNode } from "./TableOfContentsNode/TableOfContentsNode.js";
9
8
  import History from "@tiptap/extension-history";
9
+ import API from "../lib/api.js";
10
10
  import { Iframe } from "./Iframe/iframe.js";
11
- export const ExtensionKit = ({ dir })=>[
11
+ import { Markdown } from "tiptap-markdown";
12
+ export const ExtensionKit = ({ dir, openAssetHQHandler })=>[
13
+ Markdown,
12
14
  Document,
13
15
  Columns,
14
16
  TaskList,
@@ -58,7 +60,9 @@ export const ExtensionKit = ({ dir })=>[
58
60
  }),
59
61
  TableOfContents,
60
62
  TableOfContentsNode,
61
- ImageUpload.configure({}),
63
+ ImageUpload.configure({
64
+ openAssetHQHandler
65
+ }),
62
66
  ImageBlock,
63
67
  FileHandler.configure({
64
68
  allowedMimeTypes: [
@@ -68,13 +72,15 @@ export const ExtensionKit = ({ dir })=>[
68
72
  "image/webp"
69
73
  ],
70
74
  onDrop: (currentEditor, files, pos)=>{
71
- files.forEach(async ()=>{
72
- const url = await API.uploadImage();
73
- currentEditor.chain().setImageBlockAt({
74
- pos,
75
- src: url
76
- }).focus().run();
77
- });
75
+ const file = files[0];
76
+ (async ()=>{
77
+ openAssetHQHandler((url)=>{
78
+ currentEditor.chain().setImageBlockAt({
79
+ pos,
80
+ src: url
81
+ }).focus().run();
82
+ }, file);
83
+ })();
78
84
  },
79
85
  onPaste: (currentEditor, files)=>{
80
86
  files.forEach(async ()=>{
@@ -135,7 +141,8 @@ export const ExtensionKit = ({ dir })=>[
135
141
  "heading",
136
142
  "paragraph"
137
143
  ]
138
- })
144
+ }),
145
+ AICommand
139
146
  ];
140
147
  export default ExtensionKit;
141
148
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/fields/TiptapEditor/extensions/extension-kit.ts"],"sourcesContent":["import {\n BlockquoteFigure,\n CharacterCount,\n Color,\n Document,\n Dropcursor,\n Emoji,\n Figcaption,\n FileHandler,\n Focus,\n FontFamily,\n FontSize,\n Heading,\n Highlight,\n HorizontalRule,\n ImageBlock,\n Link,\n Placeholder,\n Selection,\n SlashCommand,\n StarterKit,\n Subscript,\n Superscript,\n Table,\n TableOfContents,\n TableCell,\n TableHeader,\n TableRow,\n TextAlign,\n TextStyle,\n TrailingNode,\n Typography,\n Underline,\n // emojiSuggestion,\n Columns,\n Column,\n TaskItem,\n TaskList,\n Twitter,\n Tiktok,\n Instagram,\n Facebook,\n Linkedin,\n Youtube,\n Paragraph,\n InsideLinks,\n} from \"./index.js\";\n\nimport { CodeBlockLowlight } from \"@tiptap/extension-code-block-lowlight\";\nimport { ImageUpload } from \"./ImageUpload/ImageUpload.js\";\nimport { TableOfContentsNode } from \"./TableOfContentsNode/TableOfContentsNode.js\";\nimport lowlight from \"lowlight\";\nimport TextDirection from \"tiptap-text-direction\";\n\nimport API from \"../lib/api.js\";\nimport History from \"@tiptap/extension-history\";\nimport { Iframe } from \"./Iframe/iframe.js\";\n\ninterface ExtensionKitProps {\n dir?: \"rtl\" | \"ltr\";\n}\n\nexport const ExtensionKit = ({ dir }: ExtensionKitProps) => [\n Document,\n Columns,\n TaskList,\n TaskItem.configure({\n nested: true,\n }),\n Column,\n Selection,\n Heading.configure({\n levels: [1, 2, 3, 4, 5, 6],\n }),\n HorizontalRule,\n StarterKit.configure({\n document: false,\n dropcursor: false,\n heading: false,\n horizontalRule: false,\n blockquote: false,\n history: false,\n codeBlock: false,\n }),\n CodeBlockLowlight.configure({\n lowlight,\n defaultLanguage: null,\n }),\n TextStyle,\n FontSize,\n FontFamily,\n Color,\n TrailingNode,\n Link.configure({\n openOnClick: false,\n }),\n Highlight.configure({ multicolor: true }),\n Underline,\n CharacterCount.configure({ limit: 50000 }),\n TableOfContents,\n TableOfContentsNode,\n ImageUpload.configure({}),\n ImageBlock,\n FileHandler.configure({\n allowedMimeTypes: [\"image/png\", \"image/jpeg\", \"image/gif\", \"image/webp\"],\n onDrop: (currentEditor, files, pos) => {\n files.forEach(async () => {\n const url = await API.uploadImage();\n\n currentEditor.chain().setImageBlockAt({ pos, src: url }).focus().run();\n });\n },\n onPaste: (currentEditor, files) => {\n files.forEach(async () => {\n const url = await API.uploadImage();\n\n return currentEditor\n .chain()\n .setImageBlockAt({\n pos: currentEditor.state.selection.anchor,\n src: url,\n })\n .focus()\n .run();\n });\n },\n }),\n // Emoji.configure({\n // enableEmoticons: true,\n // suggestion: emojiSuggestion,\n // }),\n TextAlign.extend({\n addKeyboardShortcuts() {\n return {};\n },\n }).configure({\n types: [\"heading\", \"paragraph\"],\n }),\n Subscript,\n Superscript,\n Table,\n TableCell,\n TableHeader,\n TableRow,\n Typography,\n Placeholder.configure({\n includeChildren: true,\n showOnlyCurrent: false,\n placeholder: () => \"\",\n }),\n SlashCommand,\n Focus,\n Figcaption,\n BlockquoteFigure,\n Dropcursor.configure({\n width: 2,\n class: \"ProseMirror-dropcursor border-black\",\n }),\n History,\n Iframe,\n Twitter,\n Tiktok,\n Instagram,\n Facebook,\n Linkedin,\n Youtube,\n // Paragraph,\n InsideLinks,\n TextDirection.configure({\n types: [\"heading\", \"paragraph\"],\n }),\n];\n\nexport default ExtensionKit;\n"],"names":["BlockquoteFigure","CharacterCount","Color","Document","Dropcursor","Figcaption","FileHandler","Focus","FontFamily","FontSize","Heading","Highlight","HorizontalRule","ImageBlock","Link","Placeholder","Selection","SlashCommand","StarterKit","Subscript","Superscript","Table","TableOfContents","TableCell","TableHeader","TableRow","TextAlign","TextStyle","TrailingNode","Typography","Underline","Columns","Column","TaskItem","TaskList","Twitter","Tiktok","Instagram","Facebook","Linkedin","Youtube","InsideLinks","CodeBlockLowlight","ImageUpload","TableOfContentsNode","lowlight","TextDirection","API","History","Iframe","ExtensionKit","dir","configure","nested","levels","document","dropcursor","heading","horizontalRule","blockquote","history","codeBlock","defaultLanguage","openOnClick","multicolor","limit","allowedMimeTypes","onDrop","currentEditor","files","pos","forEach","url","uploadImage","chain","setImageBlockAt","src","focus","run","onPaste","state","selection","anchor","extend","addKeyboardShortcuts","types","includeChildren","showOnlyCurrent","placeholder","width","class"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../src/fields/TiptapEditor/extensions/extension-kit.ts"],"sourcesContent":["import {\n AICommand,\n BlockquoteFigure,\n CharacterCount,\n Color,\n Column,\n // emojiSuggestion,\n Columns,\n Document,\n Dropcursor,\n Facebook,\n Figcaption,\n FileHandler,\n Focus,\n FontFamily,\n FontSize,\n Heading,\n Highlight,\n HorizontalRule,\n ImageBlock,\n InsideLinks,\n Instagram,\n Link,\n Linkedin,\n Placeholder,\n Selection,\n SlashCommand,\n StarterKit,\n Subscript,\n Superscript,\n Table,\n TableCell,\n TableHeader,\n TableOfContents,\n TableRow,\n TaskItem,\n TaskList,\n TextAlign,\n TextStyle,\n Tiktok,\n TrailingNode,\n Twitter,\n Typography,\n Underline,\n Youtube,\n} from \"./index.js\";\n\nimport { CodeBlockLowlight } from \"@tiptap/extension-code-block-lowlight\";\nimport lowlight from \"lowlight\";\nimport TextDirection from \"tiptap-text-direction\";\nimport { ImageUpload } from \"./ImageUpload/ImageUpload.js\";\nimport { TableOfContentsNode } from \"./TableOfContentsNode/TableOfContentsNode.js\";\n\nimport History from \"@tiptap/extension-history\";\nimport API from \"../lib/api.js\";\nimport { openAssetHQType } from \"../types.js\";\nimport { Iframe } from \"./Iframe/iframe.js\";\nimport { Markdown } from \"tiptap-markdown\";\n\ninterface ExtensionKitProps {\n dir?: \"rtl\" | \"ltr\";\n openAssetHQHandler: openAssetHQType;\n}\n\nexport const ExtensionKit = ({\n dir,\n openAssetHQHandler,\n}: ExtensionKitProps) => [\n Markdown,\n Document,\n Columns,\n TaskList,\n TaskItem.configure({\n nested: true,\n }),\n Column,\n Selection,\n Heading.configure({\n levels: [1, 2, 3, 4, 5, 6],\n }),\n HorizontalRule,\n StarterKit.configure({\n document: false,\n dropcursor: false,\n heading: false,\n horizontalRule: false,\n blockquote: false,\n history: false,\n codeBlock: false,\n }),\n CodeBlockLowlight.configure({\n lowlight,\n defaultLanguage: null,\n }),\n TextStyle,\n FontSize,\n FontFamily,\n Color,\n TrailingNode,\n Link.configure({\n openOnClick: false,\n }),\n Highlight.configure({ multicolor: true }),\n Underline,\n CharacterCount.configure({ limit: 50000 }),\n TableOfContents,\n TableOfContentsNode,\n ImageUpload.configure({\n openAssetHQHandler,\n }),\n ImageBlock,\n FileHandler.configure({\n allowedMimeTypes: [\"image/png\", \"image/jpeg\", \"image/gif\", \"image/webp\"],\n onDrop: (currentEditor, files, pos) => {\n const file = files[0];\n (async () => {\n openAssetHQHandler((url) => {\n currentEditor\n .chain()\n .setImageBlockAt({ pos, src: url })\n .focus()\n .run();\n }, file);\n })();\n },\n onPaste: (currentEditor, files) => {\n files.forEach(async () => {\n const url = await API.uploadImage();\n\n return currentEditor\n .chain()\n .setImageBlockAt({\n pos: currentEditor.state.selection.anchor,\n src: url,\n })\n .focus()\n .run();\n });\n },\n }),\n // Emoji.configure({\n // enableEmoticons: true,\n // suggestion: emojiSuggestion,\n // }),\n TextAlign.extend({\n addKeyboardShortcuts() {\n return {};\n },\n }).configure({\n types: [\"heading\", \"paragraph\"],\n }),\n Subscript,\n Superscript,\n Table,\n TableCell,\n TableHeader,\n TableRow,\n Typography,\n Placeholder.configure({\n includeChildren: true,\n showOnlyCurrent: false,\n placeholder: () => \"\",\n }),\n SlashCommand,\n Focus,\n Figcaption,\n BlockquoteFigure,\n Dropcursor.configure({\n width: 2,\n class: \"ProseMirror-dropcursor border-black\",\n }),\n History,\n Iframe,\n Twitter,\n Tiktok,\n Instagram,\n Facebook,\n Linkedin,\n Youtube,\n // Paragraph,\n InsideLinks,\n TextDirection.configure({\n types: [\"heading\", \"paragraph\"],\n }),\n AICommand,\n];\n\nexport default ExtensionKit;\n"],"names":["AICommand","BlockquoteFigure","CharacterCount","Color","Column","Columns","Document","Dropcursor","Facebook","Figcaption","FileHandler","Focus","FontFamily","FontSize","Heading","Highlight","HorizontalRule","ImageBlock","InsideLinks","Instagram","Link","Linkedin","Placeholder","Selection","SlashCommand","StarterKit","Subscript","Superscript","Table","TableCell","TableHeader","TableOfContents","TableRow","TaskItem","TaskList","TextAlign","TextStyle","Tiktok","TrailingNode","Twitter","Typography","Underline","Youtube","CodeBlockLowlight","lowlight","TextDirection","ImageUpload","TableOfContentsNode","History","API","Iframe","Markdown","ExtensionKit","dir","openAssetHQHandler","configure","nested","levels","document","dropcursor","heading","horizontalRule","blockquote","history","codeBlock","defaultLanguage","openOnClick","multicolor","limit","allowedMimeTypes","onDrop","currentEditor","files","pos","file","url","chain","setImageBlockAt","src","focus","run","onPaste","forEach","uploadImage","state","selection","anchor","extend","addKeyboardShortcuts","types","includeChildren","showOnlyCurrent","placeholder","width","class"],"mappings":"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"}
@@ -39,6 +39,7 @@ export { Link } from "./Link/Link.js";
39
39
  export { ImageUpload } from "./ImageUpload/ImageUpload.js";
40
40
  export { ImageBlock } from "./ImageBlock/ImageBlock.js";
41
41
  export { Columns, Column } from "./MultiColumn/index.js";
42
+ export { AICommand } from "./AICommand/AICommand.js";
42
43
  export { Twitter, Linkedin, Tiktok, Facebook, Instagram, Youtube, } from "./SocialMedia/index.js";
43
44
  export { Paragraph } from "./Paragraph/Paragraph.js";
44
45
  export { InsideLinks } from "./InsideLinks/insideLinks.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/fields/TiptapEditor/extensions/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/fields/TiptapEditor/extensions/index.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,7 @@ export { Link } from "./Link/Link.js";
40
40
  export { ImageUpload } from "./ImageUpload/ImageUpload.js";
41
41
  export { ImageBlock } from "./ImageBlock/ImageBlock.js";
42
42
  export { Columns, Column } from "./MultiColumn/index.js";
43
+ export { AICommand } from "./AICommand/AICommand.js";
43
44
  export { Twitter, Linkedin, Tiktok, Facebook, Instagram, Youtube } from "./SocialMedia/index.js";
44
45
  export { Paragraph } from "./Paragraph/Paragraph.js";
45
46
  export { InsideLinks } from "./InsideLinks/insideLinks.js";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/fields/TiptapEditor/extensions/index.ts"],"sourcesContent":["// TODO: File causes circular dependency issue in ESLint\n/* eslint-disable */\nexport { StarterKit } from \"@tiptap/starter-kit\";\nexport { Highlight } from \"@tiptap/extension-highlight\";\nexport { CharacterCount } from \"@tiptap/extension-character-count\";\nexport { Underline } from \"@tiptap/extension-underline\";\nexport { Placeholder } from \"@tiptap/extension-placeholder\";\nexport { Emoji, gitHubEmojis } from \"@tiptap-pro/extension-emoji\";\nexport { TextAlign } from \"@tiptap/extension-text-align\";\nexport { TextStyle } from \"@tiptap/extension-text-style\";\nexport { FontFamily } from \"@tiptap/extension-font-family\";\nexport { Typography } from \"@tiptap/extension-typography\";\nexport { Color } from \"@tiptap/extension-color\";\nexport { FocusClasses as Focus } from \"@tiptap/extension-focus\";\nexport { Dropcursor } from \"@tiptap/extension-dropcursor\";\nexport { CollaborationCursor } from \"@tiptap/extension-collaboration-cursor\";\nexport { Subscript } from \"@tiptap/extension-subscript\";\nexport { TableOfContents } from \"@tiptap-pro/extension-table-of-contents\";\nexport { Superscript } from \"@tiptap/extension-superscript\";\nexport { CodeBlock } from \"@tiptap/extension-code-block\";\nexport { BulletList } from \"@tiptap/extension-bullet-list\";\nexport { OrderedList } from \"@tiptap/extension-ordered-list\";\nexport { Collaboration } from \"@tiptap/extension-collaboration\";\nexport { TaskItem } from \"@tiptap/extension-task-item\";\nexport { TaskList } from \"@tiptap/extension-task-list\";\nexport { FileHandler } from \"@tiptap-pro/extension-file-handler\";\n\nexport { Selection } from \"./Selection/Selection.js\";\nexport { Table, TableCell, TableHeader, TableRow } from \"./Table/index.js\";\nexport { HorizontalRule } from \"./HorizontalRule/HorizontalRule.js\";\nexport { Heading } from \"./Heading/Heading.js\";\nexport { Document } from \"./Document/Document.js\";\nexport { TrailingNode } from \"./TrailingNode/trailing-node.js\";\nexport { SlashCommand } from \"./SlashCommand/SlashCommand.js\";\nexport { FontSize } from \"./FontSize/FontSize.js\";\nexport { Figure } from \"./Figure/Figure.js\";\nexport { Figcaption } from \"./Figcaption/Figcaption.js\";\nexport { BlockquoteFigure } from \"./BlockquoteFigure/BlockquoteFigure.js\";\nexport { Quote } from \"./BlockquoteFigure/Quote/Quote.js\";\nexport { QuoteCaption } from \"./BlockquoteFigure/QuoteCaption/QuoteCaption.js\";\nexport { Link } from \"./Link/Link.js\";\nexport { ImageUpload } from \"./ImageUpload/ImageUpload.js\";\nexport { ImageBlock } from \"./ImageBlock/ImageBlock.js\";\nexport { Columns, Column } from \"./MultiColumn/index.js\";\nexport {\n Twitter,\n Linkedin,\n Tiktok,\n Facebook,\n Instagram,\n Youtube,\n} from \"./SocialMedia/index.js\";\nexport { Paragraph } from \"./Paragraph/Paragraph.js\";\nexport { InsideLinks } from \"./InsideLinks/insideLinks.js\";\n"],"names":["StarterKit","Highlight","CharacterCount","Underline","Placeholder","Emoji","gitHubEmojis","TextAlign","TextStyle","FontFamily","Typography","Color","FocusClasses","Focus","Dropcursor","CollaborationCursor","Subscript","TableOfContents","Superscript","CodeBlock","BulletList","OrderedList","Collaboration","TaskItem","TaskList","FileHandler","Selection","Table","TableCell","TableHeader","TableRow","HorizontalRule","Heading","Document","TrailingNode","SlashCommand","FontSize","Figure","Figcaption","BlockquoteFigure","Quote","QuoteCaption","Link","ImageUpload","ImageBlock","Columns","Column","Twitter","Linkedin","Tiktok","Facebook","Instagram","Youtube","Paragraph","InsideLinks"],"mappings":"AAAA,wDAAwD;AACxD,kBAAkB,GAClB,SAASA,UAAU,QAAQ,sBAAsB;AACjD,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,cAAc,QAAQ,oCAAoC;AACnE,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,WAAW,QAAQ,gCAAgC;AAC5D,SAASC,KAAK,EAAEC,YAAY,QAAQ,8BAA8B;AAClE,SAASC,SAAS,QAAQ,+BAA+B;AACzD,SAASC,SAAS,QAAQ,+BAA+B;AACzD,SAASC,UAAU,QAAQ,gCAAgC;AAC3D,SAASC,UAAU,QAAQ,+BAA+B;AAC1D,SAASC,KAAK,QAAQ,0BAA0B;AAChD,SAASC,gBAAgBC,KAAK,QAAQ,0BAA0B;AAChE,SAASC,UAAU,QAAQ,+BAA+B;AAC1D,SAASC,mBAAmB,QAAQ,yCAAyC;AAC7E,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,eAAe,QAAQ,0CAA0C;AAC1E,SAASC,WAAW,QAAQ,gCAAgC;AAC5D,SAASC,SAAS,QAAQ,+BAA+B;AACzD,SAASC,UAAU,QAAQ,gCAAgC;AAC3D,SAASC,WAAW,QAAQ,iCAAiC;AAC7D,SAASC,aAAa,QAAQ,kCAAkC;AAChE,SAASC,QAAQ,QAAQ,8BAA8B;AACvD,SAASC,QAAQ,QAAQ,8BAA8B;AACvD,SAASC,WAAW,QAAQ,qCAAqC;AAEjE,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SAASC,KAAK,EAAEC,SAAS,EAAEC,WAAW,EAAEC,QAAQ,QAAQ,mBAAmB;AAC3E,SAASC,cAAc,QAAQ,qCAAqC;AACpE,SAASC,OAAO,QAAQ,uBAAuB;AAC/C,SAASC,QAAQ,QAAQ,yBAAyB;AAClD,SAASC,YAAY,QAAQ,kCAAkC;AAC/D,SAASC,YAAY,QAAQ,iCAAiC;AAC9D,SAASC,QAAQ,QAAQ,yBAAyB;AAClD,SAASC,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,UAAU,QAAQ,6BAA6B;AACxD,SAASC,gBAAgB,QAAQ,yCAAyC;AAC1E,SAASC,KAAK,QAAQ,oCAAoC;AAC1D,SAASC,YAAY,QAAQ,kDAAkD;AAC/E,SAASC,IAAI,QAAQ,iBAAiB;AACtC,SAASC,WAAW,QAAQ,+BAA+B;AAC3D,SAASC,UAAU,QAAQ,6BAA6B;AACxD,SAASC,OAAO,EAAEC,MAAM,QAAQ,yBAAyB;AACzD,SACEC,OAAO,EACPC,QAAQ,EACRC,MAAM,EACNC,QAAQ,EACRC,SAAS,EACTC,OAAO,QACF,yBAAyB;AAChC,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SAASC,WAAW,QAAQ,+BAA+B"}
1
+ {"version":3,"sources":["../../../../../src/fields/TiptapEditor/extensions/index.ts"],"sourcesContent":["// TODO: File causes circular dependency issue in ESLint\n/* eslint-disable */\nexport { StarterKit } from \"@tiptap/starter-kit\";\nexport { Highlight } from \"@tiptap/extension-highlight\";\nexport { CharacterCount } from \"@tiptap/extension-character-count\";\nexport { Underline } from \"@tiptap/extension-underline\";\nexport { Placeholder } from \"@tiptap/extension-placeholder\";\nexport { Emoji, gitHubEmojis } from \"@tiptap-pro/extension-emoji\";\nexport { TextAlign } from \"@tiptap/extension-text-align\";\nexport { TextStyle } from \"@tiptap/extension-text-style\";\nexport { FontFamily } from \"@tiptap/extension-font-family\";\nexport { Typography } from \"@tiptap/extension-typography\";\nexport { Color } from \"@tiptap/extension-color\";\nexport { FocusClasses as Focus } from \"@tiptap/extension-focus\";\nexport { Dropcursor } from \"@tiptap/extension-dropcursor\";\nexport { CollaborationCursor } from \"@tiptap/extension-collaboration-cursor\";\nexport { Subscript } from \"@tiptap/extension-subscript\";\nexport { TableOfContents } from \"@tiptap-pro/extension-table-of-contents\";\nexport { Superscript } from \"@tiptap/extension-superscript\";\nexport { CodeBlock } from \"@tiptap/extension-code-block\";\nexport { BulletList } from \"@tiptap/extension-bullet-list\";\nexport { OrderedList } from \"@tiptap/extension-ordered-list\";\nexport { Collaboration } from \"@tiptap/extension-collaboration\";\nexport { TaskItem } from \"@tiptap/extension-task-item\";\nexport { TaskList } from \"@tiptap/extension-task-list\";\nexport { FileHandler } from \"@tiptap-pro/extension-file-handler\";\n\nexport { Selection } from \"./Selection/Selection.js\";\nexport { Table, TableCell, TableHeader, TableRow } from \"./Table/index.js\";\nexport { HorizontalRule } from \"./HorizontalRule/HorizontalRule.js\";\nexport { Heading } from \"./Heading/Heading.js\";\nexport { Document } from \"./Document/Document.js\";\nexport { TrailingNode } from \"./TrailingNode/trailing-node.js\";\nexport { SlashCommand } from \"./SlashCommand/SlashCommand.js\";\nexport { FontSize } from \"./FontSize/FontSize.js\";\nexport { Figure } from \"./Figure/Figure.js\";\nexport { Figcaption } from \"./Figcaption/Figcaption.js\";\nexport { BlockquoteFigure } from \"./BlockquoteFigure/BlockquoteFigure.js\";\nexport { Quote } from \"./BlockquoteFigure/Quote/Quote.js\";\nexport { QuoteCaption } from \"./BlockquoteFigure/QuoteCaption/QuoteCaption.js\";\nexport { Link } from \"./Link/Link.js\";\nexport { ImageUpload } from \"./ImageUpload/ImageUpload.js\";\nexport { ImageBlock } from \"./ImageBlock/ImageBlock.js\";\nexport { Columns, Column } from \"./MultiColumn/index.js\";\nexport { AICommand } from \"./AICommand/AICommand.js\";\nexport {\n Twitter,\n Linkedin,\n Tiktok,\n Facebook,\n Instagram,\n Youtube,\n} from \"./SocialMedia/index.js\";\nexport { Paragraph } from \"./Paragraph/Paragraph.js\";\nexport { InsideLinks } from \"./InsideLinks/insideLinks.js\";\n"],"names":["StarterKit","Highlight","CharacterCount","Underline","Placeholder","Emoji","gitHubEmojis","TextAlign","TextStyle","FontFamily","Typography","Color","FocusClasses","Focus","Dropcursor","CollaborationCursor","Subscript","TableOfContents","Superscript","CodeBlock","BulletList","OrderedList","Collaboration","TaskItem","TaskList","FileHandler","Selection","Table","TableCell","TableHeader","TableRow","HorizontalRule","Heading","Document","TrailingNode","SlashCommand","FontSize","Figure","Figcaption","BlockquoteFigure","Quote","QuoteCaption","Link","ImageUpload","ImageBlock","Columns","Column","AICommand","Twitter","Linkedin","Tiktok","Facebook","Instagram","Youtube","Paragraph","InsideLinks"],"mappings":"AAAA,wDAAwD;AACxD,kBAAkB,GAClB,SAASA,UAAU,QAAQ,sBAAsB;AACjD,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,cAAc,QAAQ,oCAAoC;AACnE,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,WAAW,QAAQ,gCAAgC;AAC5D,SAASC,KAAK,EAAEC,YAAY,QAAQ,8BAA8B;AAClE,SAASC,SAAS,QAAQ,+BAA+B;AACzD,SAASC,SAAS,QAAQ,+BAA+B;AACzD,SAASC,UAAU,QAAQ,gCAAgC;AAC3D,SAASC,UAAU,QAAQ,+BAA+B;AAC1D,SAASC,KAAK,QAAQ,0BAA0B;AAChD,SAASC,gBAAgBC,KAAK,QAAQ,0BAA0B;AAChE,SAASC,UAAU,QAAQ,+BAA+B;AAC1D,SAASC,mBAAmB,QAAQ,yCAAyC;AAC7E,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,eAAe,QAAQ,0CAA0C;AAC1E,SAASC,WAAW,QAAQ,gCAAgC;AAC5D,SAASC,SAAS,QAAQ,+BAA+B;AACzD,SAASC,UAAU,QAAQ,gCAAgC;AAC3D,SAASC,WAAW,QAAQ,iCAAiC;AAC7D,SAASC,aAAa,QAAQ,kCAAkC;AAChE,SAASC,QAAQ,QAAQ,8BAA8B;AACvD,SAASC,QAAQ,QAAQ,8BAA8B;AACvD,SAASC,WAAW,QAAQ,qCAAqC;AAEjE,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SAASC,KAAK,EAAEC,SAAS,EAAEC,WAAW,EAAEC,QAAQ,QAAQ,mBAAmB;AAC3E,SAASC,cAAc,QAAQ,qCAAqC;AACpE,SAASC,OAAO,QAAQ,uBAAuB;AAC/C,SAASC,QAAQ,QAAQ,yBAAyB;AAClD,SAASC,YAAY,QAAQ,kCAAkC;AAC/D,SAASC,YAAY,QAAQ,iCAAiC;AAC9D,SAASC,QAAQ,QAAQ,yBAAyB;AAClD,SAASC,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,UAAU,QAAQ,6BAA6B;AACxD,SAASC,gBAAgB,QAAQ,yCAAyC;AAC1E,SAASC,KAAK,QAAQ,oCAAoC;AAC1D,SAASC,YAAY,QAAQ,kDAAkD;AAC/E,SAASC,IAAI,QAAQ,iBAAiB;AACtC,SAASC,WAAW,QAAQ,+BAA+B;AAC3D,SAASC,UAAU,QAAQ,6BAA6B;AACxD,SAASC,OAAO,EAAEC,MAAM,QAAQ,yBAAyB;AACzD,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SACEC,OAAO,EACPC,QAAQ,EACRC,MAAM,EACNC,QAAQ,EACRC,SAAS,EACTC,OAAO,QACF,yBAAyB;AAChC,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SAASC,WAAW,QAAQ,+BAA+B"}
@@ -1,4 +1,7 @@
1
+ import { openAssetHQType } from "../../types.js";
1
2
  import { TiptapProps } from "./types.js";
2
- export declare const BlockEditor: ({ handleChange, content }: TiptapProps) => import("react").JSX.Element;
3
+ export declare const BlockEditor: ({ handleChange, content, openAssetHQHandler, }: TiptapProps & {
4
+ openAssetHQHandler: openAssetHQType;
5
+ }) => import("react").JSX.Element;
3
6
  export default BlockEditor;
4
7
  //# sourceMappingURL=BlockEditor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BlockEditor.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/BlockEditor.tsx"],"names":[],"mappings":"AAqBA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,eAAO,MAAM,WAAW,8BAA+B,WAAW,gCAyFjE,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"BlockEditor.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/BlockEditor.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAKjD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,eAAO,MAAM,WAAW,mDAIrB,WAAW,GAAG;IACf,kBAAkB,EAAE,eAAe,CAAC;CACrC,gCA0FA,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -16,12 +16,13 @@ import { Sidebar } from "../Sidebar/Sidebar.js";
16
16
  import { ContentItemMenu } from "../menus/ContentItemMenu/ContentItemMenu.js";
17
17
  import { TextMenu } from "../menus/TextMenu/TextMenu.js";
18
18
  import { LinkMenu } from "../menus/index.js";
19
- export const BlockEditor = ({ handleChange, content })=>{
19
+ export const BlockEditor = ({ handleChange, content, openAssetHQHandler })=>{
20
20
  const menuContainerRef = useRef(null);
21
21
  const editorRef = useRef(null);
22
22
  const { editor, users, characterCount, leftSidebar } = useBlockEditor({
23
23
  content: content,
24
- handleChange: handleChange
24
+ handleChange: handleChange,
25
+ openAssetHQHandler: openAssetHQHandler
25
26
  });
26
27
  const { code } = useLocale();
27
28
  const displayedUsers = users.slice(0, 3);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/BlockEditor.tsx"],"sourcesContent":["\"use client\";\nimport { EditorContent } from \"@tiptap/react\";\nimport { useEffect, useMemo, useRef } from \"react\";\n\nimport { useLocale } from \"@payloadcms/ui/providers/Locale\";\nimport { useTranslation } from \"@payloadcms/ui/providers/Translation\";\nimport { EditorContext } from \"../../context/EditorContext.js\";\nimport { IframeMenu } from \"../../extensions/Iframe/menus/index.js\";\nimport ImageBlockMenu from \"../../extensions/ImageBlock/components/ImageBlockMenu.js\";\nimport { InsideLinksMenu } from \"../../extensions/InsideLinks/menus/index.js\";\nimport { ColumnsMenu } from \"../../extensions/MultiColumn/menus/ColumnsMenu.js\";\nimport { SocialMediaMenu } from \"../../extensions/SocialMedia/menus/index.js\";\nimport {\n TableColumnMenu,\n TableRowMenu,\n} from \"../../extensions/Table/menus/index.js\";\nimport { useBlockEditor } from \"../../hooks/useBlockEditor.js\";\nimport { Sidebar } from \"../Sidebar/Sidebar.js\";\nimport { ContentItemMenu } from \"../menus/ContentItemMenu/ContentItemMenu.js\";\nimport { TextMenu } from \"../menus/TextMenu/TextMenu.js\";\nimport { LinkMenu } from \"../menus/index.js\";\nimport { TiptapProps } from \"./types.js\";\n\nexport const BlockEditor = ({ handleChange, content }: TiptapProps) => {\n const menuContainerRef = useRef(null);\n const editorRef = useRef<HTMLDivElement>(null);\n\n const { editor, users, characterCount, leftSidebar } = useBlockEditor({\n content: content,\n handleChange: handleChange,\n });\n\n const { code } = useLocale();\n\n const displayedUsers = users.slice(0, 3);\n\n const providerValue = useMemo(() => {\n return {};\n }, []);\n\n useEffect(() => {\n if (code === \"ar\" || code === \"fa\") {\n editor?.commands?.setTextDirection(\"rtl\");\n editor?.commands?.setContent(\"dwa\");\n }\n }, [code]);\n\n if (!editor) {\n return null;\n }\n const { i18n } = useTranslation();\n\n // Define the content for different languages\n const contentEn = \"للكتابة...\"; // Content for English or default language\n const contentAr = \"انقر هنا للكتابة...\"; // Content for Arabic language\n const contentFa = \"اینجا کلیک کنید تا شروع به نوشتن کنید...\";\n\n /*switch (i18n.language) {\n case 'ar':\n editor.commands.setContent(contentAr)\n break\n case 'fa':\n editor.commands.setContent(contentFa)\n break\n default:\n editor.commands.setContent(contentEn)\n }*/\n\n return (\n <EditorContext.Provider value={providerValue}>\n <div\n lang={i18n.language}\n className=\"flex h-full overflow-visible\"\n ref={menuContainerRef}\n >\n <Sidebar\n isOpen={leftSidebar.isOpen}\n onClose={leftSidebar.close}\n editor={editor}\n />\n <div className=\"relative flex flex-col flex-1 h-full justify-center items-center \">\n {/* <EditorHeader\n characters={characterCount.characters()}\n users={displayedUsers}\n words={characterCount.words()}\n isSidebarOpen={leftSidebar.isOpen}\n toggleSidebar={leftSidebar.toggle}\n /> */}\n <EditorContent\n editor={editor}\n ref={editorRef}\n lang={i18n.language}\n className=\"flex-1 overflow-y-visible w-full h-full outline-none outline-offset-0\"\n style={{\n outline: \"none\",\n }}\n />\n <ContentItemMenu editor={editor} />\n <LinkMenu editor={editor} appendTo={menuContainerRef} />\n\n <TextMenu editor={editor} />\n <IframeMenu editor={editor} appendTo={menuContainerRef} />\n <SocialMediaMenu editor={editor} appendTo={menuContainerRef} />\n <InsideLinksMenu editor={editor} appendTo={menuContainerRef} />\n <ColumnsMenu editor={editor} appendTo={menuContainerRef} />\n <TableRowMenu editor={editor} appendTo={menuContainerRef} />\n <TableColumnMenu editor={editor} appendTo={menuContainerRef} />\n <ImageBlockMenu editor={editor} appendTo={menuContainerRef} />\n </div>\n </div>\n </EditorContext.Provider>\n );\n};\n\nexport default BlockEditor;\n"],"names":["EditorContent","useEffect","useMemo","useRef","useLocale","useTranslation","EditorContext","IframeMenu","ImageBlockMenu","InsideLinksMenu","ColumnsMenu","SocialMediaMenu","TableColumnMenu","TableRowMenu","useBlockEditor","Sidebar","ContentItemMenu","TextMenu","LinkMenu","BlockEditor","handleChange","content","menuContainerRef","editorRef","editor","users","characterCount","leftSidebar","code","displayedUsers","slice","providerValue","commands","setTextDirection","setContent","i18n","contentEn","contentAr","contentFa","Provider","value","div","lang","language","className","ref","isOpen","onClose","close","style","outline","appendTo"],"mappings":"AAAA;;AACA,SAASA,aAAa,QAAQ,gBAAgB;AAC9C,SAASC,SAAS,EAAEC,OAAO,EAAEC,MAAM,QAAQ,QAAQ;AAEnD,SAASC,SAAS,QAAQ,kCAAkC;AAC5D,SAASC,cAAc,QAAQ,uCAAuC;AACtE,SAASC,aAAa,QAAQ,iCAAiC;AAC/D,SAASC,UAAU,QAAQ,yCAAyC;AACpE,OAAOC,oBAAoB,2DAA2D;AACtF,SAASC,eAAe,QAAQ,8CAA8C;AAC9E,SAASC,WAAW,QAAQ,oDAAoD;AAChF,SAASC,eAAe,QAAQ,8CAA8C;AAC9E,SACEC,eAAe,EACfC,YAAY,QACP,wCAAwC;AAC/C,SAASC,cAAc,QAAQ,gCAAgC;AAC/D,SAASC,OAAO,QAAQ,wBAAwB;AAChD,SAASC,eAAe,QAAQ,8CAA8C;AAC9E,SAASC,QAAQ,QAAQ,gCAAgC;AACzD,SAASC,QAAQ,QAAQ,oBAAoB;AAG7C,OAAO,MAAMC,cAAc,CAAC,EAAEC,YAAY,EAAEC,OAAO,EAAe;IAChE,MAAMC,mBAAmBnB,OAAO;IAChC,MAAMoB,YAAYpB,OAAuB;IAEzC,MAAM,EAAEqB,MAAM,EAAEC,KAAK,EAAEC,cAAc,EAAEC,WAAW,EAAE,GAAGb,eAAe;QACpEO,SAASA;QACTD,cAAcA;IAChB;IAEA,MAAM,EAAEQ,IAAI,EAAE,GAAGxB;IAEjB,MAAMyB,iBAAiBJ,MAAMK,KAAK,CAAC,GAAG;IAEtC,MAAMC,gBAAgB7B,QAAQ;QAC5B,OAAO,CAAC;IACV,GAAG,EAAE;IAELD,UAAU;QACR,IAAI2B,SAAS,QAAQA,SAAS,MAAM;YAClCJ,QAAQQ,UAAUC,iBAAiB;YACnCT,QAAQQ,UAAUE,WAAW;QAC/B;IACF,GAAG;QAACN;KAAK;IAET,IAAI,CAACJ,QAAQ;QACX,OAAO;IACT;IACA,MAAM,EAAEW,IAAI,EAAE,GAAG9B;IAEjB,6CAA6C;IAC7C,MAAM+B,YAAY,cAAc,0CAA0C;IAC1E,MAAMC,YAAY,uBAAuB,8BAA8B;IACvE,MAAMC,YAAY;IAElB;;;;;;;;;GASC,GAED,qBACE,KAAChC,cAAciC,QAAQ;QAACC,OAAOT;kBAC7B,cAAA,MAACU;YACCC,MAAMP,KAAKQ,QAAQ;YACnBC,WAAU;YACVC,KAAKvB;;8BAEL,KAACP;oBACC+B,QAAQnB,YAAYmB,MAAM;oBAC1BC,SAASpB,YAAYqB,KAAK;oBAC1BxB,QAAQA;;8BAEV,MAACiB;oBAAIG,WAAU;;sCAQb,KAAC5C;4BACCwB,QAAQA;4BACRqB,KAAKtB;4BACLmB,MAAMP,KAAKQ,QAAQ;4BACnBC,WAAU;4BACVK,OAAO;gCACLC,SAAS;4BACX;;sCAEF,KAAClC;4BAAgBQ,QAAQA;;sCACzB,KAACN;4BAASM,QAAQA;4BAAQ2B,UAAU7B;;sCAEpC,KAACL;4BAASO,QAAQA;;sCAClB,KAACjB;4BAAWiB,QAAQA;4BAAQ2B,UAAU7B;;sCACtC,KAACX;4BAAgBa,QAAQA;4BAAQ2B,UAAU7B;;sCAC3C,KAACb;4BAAgBe,QAAQA;4BAAQ2B,UAAU7B;;sCAC3C,KAACZ;4BAAYc,QAAQA;4BAAQ2B,UAAU7B;;sCACvC,KAACT;4BAAaW,QAAQA;4BAAQ2B,UAAU7B;;sCACxC,KAACV;4BAAgBY,QAAQA;4BAAQ2B,UAAU7B;;sCAC3C,KAACd;4BAAegB,QAAQA;4BAAQ2B,UAAU7B;;;;;;;AAKpD,EAAE;AAEF,eAAeH,YAAY"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/BlockEditor.tsx"],"sourcesContent":["\"use client\";\nimport { EditorContent } from \"@tiptap/react\";\nimport { useEffect, useMemo, useRef } from \"react\";\n\nimport { useLocale } from \"@payloadcms/ui/providers/Locale\";\nimport { useTranslation } from \"@payloadcms/ui/providers/Translation\";\nimport { EditorContext } from \"../../context/EditorContext.js\";\nimport { IframeMenu } from \"../../extensions/Iframe/menus/index.js\";\nimport ImageBlockMenu from \"../../extensions/ImageBlock/components/ImageBlockMenu.js\";\nimport { InsideLinksMenu } from \"../../extensions/InsideLinks/menus/index.js\";\nimport { ColumnsMenu } from \"../../extensions/MultiColumn/menus/ColumnsMenu.js\";\nimport { SocialMediaMenu } from \"../../extensions/SocialMedia/menus/index.js\";\nimport {\n TableColumnMenu,\n TableRowMenu,\n} from \"../../extensions/Table/menus/index.js\";\nimport { useBlockEditor } from \"../../hooks/useBlockEditor.js\";\nimport { openAssetHQType } from \"../../types.js\";\nimport { Sidebar } from \"../Sidebar/Sidebar.js\";\nimport { ContentItemMenu } from \"../menus/ContentItemMenu/ContentItemMenu.js\";\nimport { TextMenu } from \"../menus/TextMenu/TextMenu.js\";\nimport { LinkMenu } from \"../menus/index.js\";\nimport { TiptapProps } from \"./types.js\";\nexport const BlockEditor = ({\n handleChange,\n content,\n openAssetHQHandler,\n}: TiptapProps & {\n openAssetHQHandler: openAssetHQType;\n}) => {\n const menuContainerRef = useRef(null);\n const editorRef = useRef<HTMLDivElement>(null);\n\n const { editor, users, characterCount, leftSidebar } = useBlockEditor({\n content: content,\n handleChange: handleChange,\n openAssetHQHandler: openAssetHQHandler,\n });\n\n const { code } = useLocale();\n\n const displayedUsers = users.slice(0, 3);\n\n const providerValue = useMemo(() => {\n return {};\n }, []);\n\n useEffect(() => {\n if (code === \"ar\" || code === \"fa\") {\n editor?.commands?.setTextDirection(\"rtl\");\n editor?.commands?.setContent(\"dwa\");\n }\n }, [code]);\n\n if (!editor) {\n return null;\n }\n const { i18n } = useTranslation();\n\n // Define the content for different languages\n const contentEn = \"للكتابة...\"; // Content for English or default language\n const contentAr = \"انقر هنا للكتابة...\"; // Content for Arabic language\n const contentFa = \"اینجا کلیک کنید تا شروع به نوشتن کنید...\";\n\n /*switch (i18n.language) {\n case 'ar':\n editor.commands.setContent(contentAr)\n break\n case 'fa':\n editor.commands.setContent(contentFa)\n break\n default:\n editor.commands.setContent(contentEn)\n }*/\n\n return (\n <EditorContext.Provider value={providerValue}>\n <div\n lang={i18n.language}\n className=\"flex h-full overflow-visible\"\n ref={menuContainerRef}\n >\n <Sidebar\n isOpen={leftSidebar.isOpen}\n onClose={leftSidebar.close}\n editor={editor}\n />\n <div className=\"relative flex flex-col flex-1 h-full justify-center items-center \">\n {/* <EditorHeader\n characters={characterCount.characters()}\n users={displayedUsers}\n words={characterCount.words()}\n isSidebarOpen={leftSidebar.isOpen}\n toggleSidebar={leftSidebar.toggle}\n /> */}\n <EditorContent\n editor={editor}\n ref={editorRef}\n lang={i18n.language}\n className=\"flex-1 overflow-y-visible w-full h-full outline-none outline-offset-0\"\n style={{\n outline: \"none\",\n }}\n />\n <ContentItemMenu editor={editor} />\n <LinkMenu editor={editor} appendTo={menuContainerRef} />\n\n <TextMenu editor={editor} />\n <IframeMenu editor={editor} appendTo={menuContainerRef} />\n <SocialMediaMenu editor={editor} appendTo={menuContainerRef} />\n <InsideLinksMenu editor={editor} appendTo={menuContainerRef} />\n <ColumnsMenu editor={editor} appendTo={menuContainerRef} />\n <TableRowMenu editor={editor} appendTo={menuContainerRef} />\n <TableColumnMenu editor={editor} appendTo={menuContainerRef} />\n <ImageBlockMenu editor={editor} appendTo={menuContainerRef} />\n </div>\n </div>\n </EditorContext.Provider>\n );\n};\n\nexport default BlockEditor;\n"],"names":["EditorContent","useEffect","useMemo","useRef","useLocale","useTranslation","EditorContext","IframeMenu","ImageBlockMenu","InsideLinksMenu","ColumnsMenu","SocialMediaMenu","TableColumnMenu","TableRowMenu","useBlockEditor","Sidebar","ContentItemMenu","TextMenu","LinkMenu","BlockEditor","handleChange","content","openAssetHQHandler","menuContainerRef","editorRef","editor","users","characterCount","leftSidebar","code","displayedUsers","slice","providerValue","commands","setTextDirection","setContent","i18n","contentEn","contentAr","contentFa","Provider","value","div","lang","language","className","ref","isOpen","onClose","close","style","outline","appendTo"],"mappings":"AAAA;;AACA,SAASA,aAAa,QAAQ,gBAAgB;AAC9C,SAASC,SAAS,EAAEC,OAAO,EAAEC,MAAM,QAAQ,QAAQ;AAEnD,SAASC,SAAS,QAAQ,kCAAkC;AAC5D,SAASC,cAAc,QAAQ,uCAAuC;AACtE,SAASC,aAAa,QAAQ,iCAAiC;AAC/D,SAASC,UAAU,QAAQ,yCAAyC;AACpE,OAAOC,oBAAoB,2DAA2D;AACtF,SAASC,eAAe,QAAQ,8CAA8C;AAC9E,SAASC,WAAW,QAAQ,oDAAoD;AAChF,SAASC,eAAe,QAAQ,8CAA8C;AAC9E,SACEC,eAAe,EACfC,YAAY,QACP,wCAAwC;AAC/C,SAASC,cAAc,QAAQ,gCAAgC;AAE/D,SAASC,OAAO,QAAQ,wBAAwB;AAChD,SAASC,eAAe,QAAQ,8CAA8C;AAC9E,SAASC,QAAQ,QAAQ,gCAAgC;AACzD,SAASC,QAAQ,QAAQ,oBAAoB;AAE7C,OAAO,MAAMC,cAAc,CAAC,EAC1BC,YAAY,EACZC,OAAO,EACPC,kBAAkB,EAGnB;IACC,MAAMC,mBAAmBpB,OAAO;IAChC,MAAMqB,YAAYrB,OAAuB;IAEzC,MAAM,EAAEsB,MAAM,EAAEC,KAAK,EAAEC,cAAc,EAAEC,WAAW,EAAE,GAAGd,eAAe;QACpEO,SAASA;QACTD,cAAcA;QACdE,oBAAoBA;IACtB;IAEA,MAAM,EAAEO,IAAI,EAAE,GAAGzB;IAEjB,MAAM0B,iBAAiBJ,MAAMK,KAAK,CAAC,GAAG;IAEtC,MAAMC,gBAAgB9B,QAAQ;QAC5B,OAAO,CAAC;IACV,GAAG,EAAE;IAELD,UAAU;QACR,IAAI4B,SAAS,QAAQA,SAAS,MAAM;YAClCJ,QAAQQ,UAAUC,iBAAiB;YACnCT,QAAQQ,UAAUE,WAAW;QAC/B;IACF,GAAG;QAACN;KAAK;IAET,IAAI,CAACJ,QAAQ;QACX,OAAO;IACT;IACA,MAAM,EAAEW,IAAI,EAAE,GAAG/B;IAEjB,6CAA6C;IAC7C,MAAMgC,YAAY,cAAc,0CAA0C;IAC1E,MAAMC,YAAY,uBAAuB,8BAA8B;IACvE,MAAMC,YAAY;IAElB;;;;;;;;;GASC,GAED,qBACE,KAACjC,cAAckC,QAAQ;QAACC,OAAOT;kBAC7B,cAAA,MAACU;YACCC,MAAMP,KAAKQ,QAAQ;YACnBC,WAAU;YACVC,KAAKvB;;8BAEL,KAACR;oBACCgC,QAAQnB,YAAYmB,MAAM;oBAC1BC,SAASpB,YAAYqB,KAAK;oBAC1BxB,QAAQA;;8BAEV,MAACiB;oBAAIG,WAAU;;sCAQb,KAAC7C;4BACCyB,QAAQA;4BACRqB,KAAKtB;4BACLmB,MAAMP,KAAKQ,QAAQ;4BACnBC,WAAU;4BACVK,OAAO;gCACLC,SAAS;4BACX;;sCAEF,KAACnC;4BAAgBS,QAAQA;;sCACzB,KAACP;4BAASO,QAAQA;4BAAQ2B,UAAU7B;;sCAEpC,KAACN;4BAASQ,QAAQA;;sCAClB,KAAClB;4BAAWkB,QAAQA;4BAAQ2B,UAAU7B;;sCACtC,KAACZ;4BAAgBc,QAAQA;4BAAQ2B,UAAU7B;;sCAC3C,KAACd;4BAAgBgB,QAAQA;4BAAQ2B,UAAU7B;;sCAC3C,KAACb;4BAAYe,QAAQA;4BAAQ2B,UAAU7B;;sCACvC,KAACV;4BAAaY,QAAQA;4BAAQ2B,UAAU7B;;sCACxC,KAACX;4BAAgBa,QAAQA;4BAAQ2B,UAAU7B;;sCAC3C,KAACf;4BAAeiB,QAAQA;4BAAQ2B,UAAU7B;;;;;;;AAKpD,EAAE;AAEF,eAAeJ,YAAY"}
@@ -0,0 +1,8 @@
1
+ import { Editor } from "@tiptap/react";
2
+ interface AIDraftSelectorCommandsProps {
3
+ editor: Editor;
4
+ onSelect: (value: string) => void;
5
+ }
6
+ declare const AIDraftSelectorCommands: ({ onSelect, editor, }: AIDraftSelectorCommandsProps) => import("react").JSX.Element;
7
+ export default AIDraftSelectorCommands;
8
+ //# sourceMappingURL=ai-draft-selector-commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-draft-selector-commands.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAqEvC,UAAU,4BAA4B;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED,QAAA,MAAM,uBAAuB,0BAG1B,4BAA4B,gCAkC9B,CAAC;AAEF,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,94 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useLocale } from "@payloadcms/ui/providers/Locale";
3
+ import { useAssistant } from "ai/react";
4
+ import { ArrowDownWideNarrow, CheckCheck, RefreshCcwDot, WrapText } from "lucide-react";
5
+ import { DropdownCategoryTitle } from "../../../ui/Dropdown/Dropdown.js";
6
+ import { Toolbar } from "../../../ui/Toolbar.js";
7
+ const draftPromptOptions = [
8
+ // {
9
+ // value: 'translate',
10
+ // label: 'Translate text',
11
+ // icon: WrapText,
12
+ // },
13
+ {
14
+ value: "brainstorm",
15
+ label: "Brainstorm Ideas...",
16
+ icon: WrapText,
17
+ prompt: "Brainstorm ideas on "
18
+ },
19
+ {
20
+ value: "blog",
21
+ label: "Blog post...",
22
+ icon: WrapText,
23
+ prompt: "Write a blog post about "
24
+ },
25
+ {
26
+ value: "outline",
27
+ label: "Outline...",
28
+ icon: RefreshCcwDot,
29
+ prompt: "Write an outline about "
30
+ },
31
+ {
32
+ value: "social",
33
+ label: "Social Media post...",
34
+ icon: CheckCheck,
35
+ prompt: "Write a social media post about "
36
+ },
37
+ {
38
+ value: "press",
39
+ label: "Press release...",
40
+ icon: ArrowDownWideNarrow,
41
+ prompt: "Write a press release about "
42
+ },
43
+ {
44
+ value: "creative",
45
+ label: "Creative Story...",
46
+ icon: WrapText,
47
+ prompt: "Write a creative story about "
48
+ },
49
+ {
50
+ value: "essay",
51
+ label: "Essay...",
52
+ icon: WrapText,
53
+ prompt: "Write an essay about "
54
+ }
55
+ ];
56
+ const AIDraftSelectorCommands = ({ onSelect, editor })=>{
57
+ const { status, messages, input, submitMessage, handleInputChange } = useAssistant({
58
+ api: "/api/assistant"
59
+ });
60
+ const { code } = useLocale();
61
+ return /*#__PURE__*/ _jsxs(_Fragment, {
62
+ children: [
63
+ /*#__PURE__*/ _jsx(DropdownCategoryTitle, {
64
+ children: "Draft with AI"
65
+ }),
66
+ /*#__PURE__*/ _jsx(Toolbar.Divider, {
67
+ horizontal: true
68
+ }),
69
+ draftPromptOptions.map((option)=>/*#__PURE__*/ _jsxs(Toolbar.Button, {
70
+ // onSelect={(value) => {
71
+ // const slice = editor.state.selection.content()
72
+ // const text = editor.storage.markdown.serializer.serialize(slice.content)
73
+ // onSelect(text, option.value)
74
+ // }}
75
+ onClick: ()=>{
76
+ const { from, to, empty } = editor.state.selection;
77
+ // const content = editor.state.doc.textBetween(from, to, " ");
78
+ onSelect(option.prompt);
79
+ },
80
+ className: " gap-2 px-4 w-full flex justify-start",
81
+ value: option.value,
82
+ children: [
83
+ /*#__PURE__*/ _jsx(option.icon, {
84
+ className: "h-4 w-4 text-blue-500"
85
+ }),
86
+ option.label
87
+ ]
88
+ }, option.value))
89
+ ]
90
+ });
91
+ };
92
+ export default AIDraftSelectorCommands;
93
+
94
+ //# sourceMappingURL=ai-draft-selector-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.tsx"],"sourcesContent":["import { useLocale } from \"@payloadcms/ui/providers/Locale\";\nimport { Editor } from \"@tiptap/react\";\nimport { useAssistant } from \"ai/react\";\nimport {\n ArrowDownWideNarrow,\n CheckCheck,\n RefreshCcwDot,\n WrapText,\n} from \"lucide-react\";\nimport { DropdownCategoryTitle } from \"../../../ui/Dropdown/Dropdown.js\";\nimport { Toolbar } from \"../../../ui/Toolbar.js\";\n\nconst draftPromptOptions = [\n // {\n // value: 'translate',\n // label: 'Translate text',\n // icon: WrapText,\n // },\n {\n value: \"brainstorm\",\n label: \"Brainstorm Ideas...\",\n\n icon: WrapText,\n prompt: \"Brainstorm ideas on \",\n },\n {\n value: \"blog\",\n label: \"Blog post...\",\n\n icon: WrapText,\n prompt: \"Write a blog post about \",\n },\n {\n value: \"outline\",\n label: \"Outline...\",\n\n icon: RefreshCcwDot,\n prompt: \"Write an outline about \",\n },\n\n {\n value: \"social\",\n label: \"Social Media post...\",\n\n icon: CheckCheck,\n prompt: \"Write a social media post about \",\n },\n {\n value: \"press\",\n label: \"Press release...\",\n\n icon: ArrowDownWideNarrow,\n prompt: \"Write a press release about \",\n },\n {\n value: \"creative\",\n label: \"Creative Story...\",\n\n icon: WrapText,\n prompt: \"Write a creative story about \",\n },\n {\n value: \"essay\",\n label: \"Essay...\",\n\n icon: WrapText,\n prompt: \"Write an essay about \",\n },\n];\n\ninterface AIDraftSelectorCommandsProps {\n editor: Editor;\n onSelect: (value: string) => void;\n}\n\nconst AIDraftSelectorCommands = ({\n onSelect,\n editor,\n}: AIDraftSelectorCommandsProps) => {\n const { status, messages, input, submitMessage, handleInputChange } =\n useAssistant({\n api: \"/api/assistant\",\n });\n const { code } = useLocale();\n\n return (\n <>\n <DropdownCategoryTitle>Draft with AI</DropdownCategoryTitle>\n <Toolbar.Divider horizontal />\n\n {draftPromptOptions.map((option) => (\n <Toolbar.Button\n // onSelect={(value) => {\n // const slice = editor.state.selection.content()\n // const text = editor.storage.markdown.serializer.serialize(slice.content)\n // onSelect(text, option.value)\n // }}\n onClick={() => {\n const { from, to, empty } = editor.state.selection;\n // const content = editor.state.doc.textBetween(from, to, \" \");\n onSelect(option.prompt);\n }}\n className=\" gap-2 px-4 w-full flex justify-start\"\n key={option.value}\n value={option.value}\n >\n <option.icon className=\"h-4 w-4 text-blue-500\" />\n {option.label}\n </Toolbar.Button>\n ))}\n </>\n );\n};\n\nexport default AIDraftSelectorCommands;\n"],"names":["useLocale","useAssistant","ArrowDownWideNarrow","CheckCheck","RefreshCcwDot","WrapText","DropdownCategoryTitle","Toolbar","draftPromptOptions","value","label","icon","prompt","AIDraftSelectorCommands","onSelect","editor","status","messages","input","submitMessage","handleInputChange","api","code","Divider","horizontal","map","option","Button","onClick","from","to","empty","state","selection","className"],"mappings":";AAAA,SAASA,SAAS,QAAQ,kCAAkC;AAE5D,SAASC,YAAY,QAAQ,WAAW;AACxC,SACEC,mBAAmB,EACnBC,UAAU,EACVC,aAAa,EACbC,QAAQ,QACH,eAAe;AACtB,SAASC,qBAAqB,QAAQ,mCAAmC;AACzE,SAASC,OAAO,QAAQ,yBAAyB;AAEjD,MAAMC,qBAAqB;IACzB,IAAI;IACJ,wBAAwB;IACxB,6BAA6B;IAC7B,oBAAoB;IACpB,KAAK;IACL;QACEC,OAAO;QACPC,OAAO;QAEPC,MAAMN;QACNO,QAAQ;IACV;IACA;QACEH,OAAO;QACPC,OAAO;QAEPC,MAAMN;QACNO,QAAQ;IACV;IACA;QACEH,OAAO;QACPC,OAAO;QAEPC,MAAMP;QACNQ,QAAQ;IACV;IAEA;QACEH,OAAO;QACPC,OAAO;QAEPC,MAAMR;QACNS,QAAQ;IACV;IACA;QACEH,OAAO;QACPC,OAAO;QAEPC,MAAMT;QACNU,QAAQ;IACV;IACA;QACEH,OAAO;QACPC,OAAO;QAEPC,MAAMN;QACNO,QAAQ;IACV;IACA;QACEH,OAAO;QACPC,OAAO;QAEPC,MAAMN;QACNO,QAAQ;IACV;CACD;AAOD,MAAMC,0BAA0B,CAAC,EAC/BC,QAAQ,EACRC,MAAM,EACuB;IAC7B,MAAM,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,KAAK,EAAEC,aAAa,EAAEC,iBAAiB,EAAE,GACjEnB,aAAa;QACXoB,KAAK;IACP;IACF,MAAM,EAAEC,IAAI,EAAE,GAAGtB;IAEjB,qBACE;;0BACE,KAACM;0BAAsB;;0BACvB,KAACC,QAAQgB,OAAO;gBAACC,UAAU;;YAE1BhB,mBAAmBiB,GAAG,CAAC,CAACC,uBACvB,MAACnB,QAAQoB,MAAM;oBACb,yBAAyB;oBACzB,mDAAmD;oBACnD,6EAA6E;oBAC7E,iCAAiC;oBACjC,KAAK;oBACLC,SAAS;wBACP,MAAM,EAAEC,IAAI,EAAEC,EAAE,EAAEC,KAAK,EAAE,GAAGhB,OAAOiB,KAAK,CAACC,SAAS;wBAClD,+DAA+D;wBAC/DnB,SAASY,OAAOd,MAAM;oBACxB;oBACAsB,WAAU;oBAEVzB,OAAOiB,OAAOjB,KAAK;;sCAEnB,KAACiB,OAAOf,IAAI;4BAACuB,WAAU;;wBACtBR,OAAOhB,KAAK;;mBAJRgB,OAAOjB,KAAK;;;AAS3B;AAEA,eAAeI,wBAAwB"}
@@ -0,0 +1,7 @@
1
+ import { Editor } from "@tiptap/react";
2
+ export type AICommandPanelProps = {
3
+ editor: Editor;
4
+ onOpenChange: (value: boolean) => void;
5
+ };
6
+ export declare const AICommandPanel: ({ editor, onOpenChange, }: AICommandPanelProps) => import("react").JSX.Element;
7
+ //# sourceMappingURL=AICommandPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AICommandPanel.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAA4B,MAAM,eAAe,CAAC;AAiBjE,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF,eAAO,MAAM,cAAc,8BAGxB,mBAAmB,gCAiMrB,CAAC"}
@@ -0,0 +1,193 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { useLocale } from "@payloadcms/ui/providers/Locale";
4
+ import { useEditor } from "@tiptap/react";
5
+ import { useCompletion } from "ai/react";
6
+ import { ArrowRight, Sparkles } from "lucide-react";
7
+ import { useCallback, useEffect, useRef, useState } from "react";
8
+ import TextareaAutosize from "react-textarea-autosize";
9
+ import { Markdown } from "tiptap-markdown";
10
+ import { getPrevText } from "../../../lib/utils/index.js";
11
+ import { isRTL } from "../../../lib/utils/isRtl.js";
12
+ import AICompletionCommands from "../../menus/TextMenu/components/ai-completion-command.js";
13
+ import { Surface } from "../../ui/Surface.js";
14
+ import { Toolbar } from "../../ui/Toolbar.js";
15
+ import CrazySpinner from "../../ui/crazy-spinner.js";
16
+ import { ScrollArea } from "../../ui/scroll-area.js";
17
+ import AIDraftSelectorCommands from "../../menus/TextMenu/components/ai-draft-selector-commands.js";
18
+ import StarterKit from "@tiptap/starter-kit";
19
+ export const AICommandPanel = ({ editor, onOpenChange })=>{
20
+ const [inputValue, setInputValue] = useState("");
21
+ const { code } = useLocale();
22
+ const { view } = editor;
23
+ const editorNode = view.dom;
24
+ const boundigClient = editorNode.getBoundingClientRect();
25
+ const inputRef = useRef(null);
26
+ // const { status, messages, input, submitMessage, handleInputChange } = useAssistant({
27
+ // // id: "novel",
28
+ // api: "/api/assistant",
29
+ // onResponse: (response) => {
30
+ // if (response.status === 429) {
31
+ // toast.error("You have reached your request limit for the day.");
32
+ // return;
33
+ // }
34
+ // },
35
+ // onError: (e) => {
36
+ // toast.error(e.message);
37
+ // },
38
+ // });
39
+ const { completion, complete, isLoading } = useCompletion({
40
+ // id: "novel",
41
+ api: "/api/generate",
42
+ onResponse: (response)=>{
43
+ if (response.status === 429) {
44
+ console.log("You have reached your request limit for the day.");
45
+ return;
46
+ }
47
+ },
48
+ onError: (e)=>{
49
+ console.log("ERROR", e.message);
50
+ }
51
+ });
52
+ const hasCompletion = completion.length > 0;
53
+ const handleClick = useCallback(()=>{
54
+ if (completion) {
55
+ return complete(completion, {
56
+ body: {
57
+ option: "zap",
58
+ command: inputValue,
59
+ language: code ?? "en"
60
+ }
61
+ }).then(()=>setInputValue(""));
62
+ }
63
+ const text = getPrevText(editor, {
64
+ chars: 5000
65
+ });
66
+ complete(text, {
67
+ body: {
68
+ option: "zap",
69
+ command: inputValue,
70
+ language: code ?? "en"
71
+ }
72
+ }).then(()=>setInputValue(""));
73
+ }, [
74
+ code,
75
+ inputValue
76
+ ]);
77
+ useEffect(()=>{
78
+ if (!isLoading && completion) {
79
+ const selection = editor.state.selection;
80
+ editor.chain().focus().insertContentAt(selection.to - 1, completion).insertContentAt(selection.to, " ").run();
81
+ }
82
+ }, [
83
+ completion,
84
+ isLoading
85
+ ]);
86
+ const editorMarkdown = useEditor({
87
+ content: completion ?? "",
88
+ autofocus: true,
89
+ onCreate: ({ editor })=>{
90
+ // provider?.on('synced', () => {
91
+ // if (editor.isEmpty) {
92
+ // editor.commands.setContent(initialContent)
93
+ // }
94
+ // })
95
+ },
96
+ extensions: [
97
+ StarterKit,
98
+ Markdown
99
+ ],
100
+ editorProps: {
101
+ attributes: {
102
+ autocomplete: "off",
103
+ autocorrect: "off",
104
+ autocapitalize: "off",
105
+ class: "min-h-full"
106
+ }
107
+ }
108
+ }, []);
109
+ return /*#__PURE__*/ _jsx(Surface, {
110
+ className: `p-2 min-w-[20rem] flex flex-col gap-2 `,
111
+ style: {
112
+ width: boundigClient?.width
113
+ },
114
+ children: /*#__PURE__*/ _jsxs(_Fragment, {
115
+ children: [
116
+ hasCompletion && /*#__PURE__*/ _jsx("div", {
117
+ className: "flex w-full",
118
+ children: /*#__PURE__*/ _jsx(ScrollArea, {
119
+ children: /*#__PURE__*/ _jsx("div", {
120
+ className: "prose p-2 px-4 prose-sm",
121
+ dir: isRTL(completion) ? "rtl" : "ltr"
122
+ })
123
+ })
124
+ }),
125
+ isLoading && /*#__PURE__*/ _jsxs("div", {
126
+ className: "flex h-12 w-full items-center px-4 text-sm font-medium text-muted-foreground text-blue-500",
127
+ style: {
128
+ width: boundigClient?.width
129
+ },
130
+ children: [
131
+ /*#__PURE__*/ _jsx(Sparkles, {
132
+ className: "mr-2 h-4 w-4 shrink-0 "
133
+ }),
134
+ "AI is thinking",
135
+ /*#__PURE__*/ _jsx("div", {
136
+ className: "ml-2 mt-1",
137
+ children: /*#__PURE__*/ _jsx(CrazySpinner, {})
138
+ })
139
+ ]
140
+ }),
141
+ !isLoading && /*#__PURE__*/ _jsxs(_Fragment, {
142
+ children: [
143
+ /*#__PURE__*/ _jsxs("div", {
144
+ className: "flex justify-between items-center ",
145
+ children: [
146
+ /*#__PURE__*/ _jsx(Sparkles, {
147
+ className: "mr-2 h-4 w-4 shrink-0 text-blue-500 "
148
+ }),
149
+ /*#__PURE__*/ _jsx(TextareaAutosize, {
150
+ ref: inputRef,
151
+ className: "w-full p-2 text-black bg-white rounded dark:bg-black dark:text-white focus:outline-none",
152
+ value: inputValue,
153
+ onChange: (e)=>{
154
+ setInputValue(e.target.value);
155
+ },
156
+ placeholder: hasCompletion ? "Tell AI what to do next" : "Ask AI to edit or generate...",
157
+ autoFocus: true,
158
+ // onFocus={() => {
159
+ // addAIHighlight(editor)}}
160
+ onKeyDown: (e)=>{
161
+ if (e.key === "Enter") handleClick();
162
+ }
163
+ }),
164
+ /*#__PURE__*/ _jsx(Toolbar.Button, {
165
+ // size="icon"
166
+ // className="absolute right-2 top-1/2 h-6 w-6 -translate-y-1/2 rounded-full bg-zinc-100 hover:bg-zinc-150"
167
+ onClick: handleClick,
168
+ children: /*#__PURE__*/ _jsx(ArrowRight, {})
169
+ })
170
+ ]
171
+ }),
172
+ hasCompletion ? /*#__PURE__*/ _jsx(AICompletionCommands, {
173
+ editor: editor,
174
+ onDiscard: ()=>{
175
+ editor.chain().unsetHighlight().focus().run();
176
+ onOpenChange(false);
177
+ },
178
+ completion: completion
179
+ }) : /*#__PURE__*/ _jsx(AIDraftSelectorCommands, {
180
+ editor: editor,
181
+ onSelect: (value)=>{
182
+ setInputValue(value);
183
+ inputRef.current.focus();
184
+ }
185
+ })
186
+ ]
187
+ })
188
+ ]
189
+ })
190
+ });
191
+ };
192
+
193
+ //# sourceMappingURL=AICommandPanel.js.map