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.
- package/dist/src/fields/TiptapEditor/Components.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/Components.js +3 -3
- package/dist/src/fields/TiptapEditor/Components.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.d.ts +4 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.js +208 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.d.ts +5 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.js +123 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AIMenuList.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.d.ts +10 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.js +29 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/CommandButton.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.d.ts +5 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.js +123 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/MenuList.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.d.ts +4 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.js +260 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/index.d.ts +2 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/index.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/index.js +3 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/index.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/types.d.ts +22 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/types.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/types.js +3 -0
- package/dist/src/fields/TiptapEditor/extensions/AICommand/types.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.js +3 -2
- package/dist/src/fields/TiptapEditor/extensions/ImageUpload/ImageUpload.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.d.ts +2 -2
- package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.js +38 -21
- package/dist/src/fields/TiptapEditor/extensions/ImageUpload/view/ImageUpload.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/extension-kit.d.ts +3 -1
- package/dist/src/fields/TiptapEditor/extensions/extension-kit.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/extension-kit.js +22 -15
- package/dist/src/fields/TiptapEditor/extensions/extension-kit.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/index.d.ts +1 -0
- package/dist/src/fields/TiptapEditor/extensions/index.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/index.js +1 -0
- package/dist/src/fields/TiptapEditor/extensions/index.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts +4 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js +3 -2
- package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.d.ts +8 -0
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.js +94 -0
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-draft-selector-commands.js.map +1 -0
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.d.ts +7 -0
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.js +193 -0
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.js.map +1 -0
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.d.ts +2 -0
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.js +3 -0
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/index.js.map +1 -0
- package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js +29 -17
- package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js.map +1 -1
- package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.d.ts +3 -1
- package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.js +4 -3
- package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.js.map +1 -1
- package/dist/src/fields/TiptapEditor/lib/extract.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/lib/extract.js +6 -5
- package/dist/src/fields/TiptapEditor/lib/extract.js.map +1 -1
- package/dist/src/fields/TiptapEditor/types.d.js +3 -0
- package/dist/src/fields/TiptapEditor/types.d.js.map +1 -0
- package/dist/src/styles.css +0 -4
- package/dist/tsconfig.tsbuildinfo +1 -1
- 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":"
|
|
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,
|
|
2
|
-
Columns,
|
|
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
|
|
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
|
-
|
|
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
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
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
|
|
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
|
|
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":"
|
|
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\";\
|
|
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
|