From 4f20b4322262fc4921772ec283bff3a4a494f87d Mon Sep 17 00:00:00 2001 From: Philipinho <16838612+Philipinho@users.noreply.github.com> Date: Fri, 6 Feb 2026 12:14:33 -0800 Subject: [PATCH] - Add insert below and copy option --- .../editor/components/ai-menu/ai-menu.tsx | 17 ++++++++++++++++- .../editor/components/ai-menu/command-items.ts | 8 ++++++-- apps/server/src/ee | 2 +- 3 files changed, 23 insertions(+), 4 deletions(-) diff --git a/apps/client/src/features/editor/components/ai-menu/ai-menu.tsx b/apps/client/src/features/editor/components/ai-menu/ai-menu.tsx index ffc3f622..5ad1ebf3 100644 --- a/apps/client/src/features/editor/components/ai-menu/ai-menu.tsx +++ b/apps/client/src/features/editor/components/ai-menu/ai-menu.tsx @@ -128,7 +128,7 @@ const EditorAiMenu = ({ editor }: EditorAiMenuProps): JSX.Element | null => { if (item.id === "back") { return setActiveCommandSet("main"); } - if (item.id === "result-insert") { + if (item.id === "result-replace") { const chain = editor.chain().focus(); if (lastAction.action === AiAction.CONTINUE_WRITING) { @@ -139,6 +139,21 @@ const EditorAiMenu = ({ editor }: EditorAiMenuProps): JSX.Element | null => { return setShowAiMenu(false); } + if (item.id === "result-insert-below") { + editor + .chain() + .focus() + .setTextSelection(editor.state.selection.to) + .insertContent(marked.parse(output)) + .run(); + + return setShowAiMenu(false); + } + if (item.id === "result-copy") { + navigator.clipboard.writeText(output); + + return setShowAiMenu(false); + } if (item.id === "result-discard") { setOutput(""); diff --git a/apps/client/src/features/editor/components/ai-menu/command-items.ts b/apps/client/src/features/editor/components/ai-menu/command-items.ts index f9ffd76f..41b53579 100644 --- a/apps/client/src/features/editor/components/ai-menu/command-items.ts +++ b/apps/client/src/features/editor/components/ai-menu/command-items.ts @@ -1,7 +1,6 @@ import { AiAction } from "@/ee/ai/types/ai.types"; import { IconSparkles, - IconCheck, IconArrowsMaximize, IconArrowsMinimize, IconWriting, @@ -12,6 +11,9 @@ import { IconTrash, IconRefresh, IconChevronLeft, + IconCheck, + IconArrowDownLeft, + IconCopy, } from "@tabler/icons-react"; interface CommandItem { @@ -139,7 +141,9 @@ const translateItems: CommandItem[] = [ }, ]; const resultItems: CommandItem[] = [ - { id: "result-insert", name: "Insert", icon: IconCheck }, + { id: "result-replace", name: "Replace", icon: IconCheck }, + { id: "result-insert-below", name: "Insert below", icon: IconArrowDownLeft }, + { id: "result-copy", name: "Copy", icon: IconCopy }, { id: "result-discard", name: "Discard", icon: IconTrash }, { id: "result-try-again", diff --git a/apps/server/src/ee b/apps/server/src/ee index 6d3eb76d..3a4b47ec 160000 --- a/apps/server/src/ee +++ b/apps/server/src/ee @@ -1 +1 @@ -Subproject commit 6d3eb76d4ef04ad84fb9a5e724de6f94343921cc +Subproject commit 3a4b47ec30fce1ee8eb633e805f01835f029b665