diff --git a/src/lib/components/workspace/Prompts.svelte b/src/lib/components/workspace/Prompts.svelte
index c95dd1dba..4a4d1b55a 100644
--- a/src/lib/components/workspace/Prompts.svelte
+++ b/src/lib/components/workspace/Prompts.svelte
@@ -13,10 +13,12 @@
getPrompts,
getPromptList
} from '$lib/apis/prompts';
- import { capitalizeFirstLetter, slugify } from '$lib/utils';
+ import { capitalizeFirstLetter, slugify, copyToClipboard } from '$lib/utils';
import PromptMenu from './Prompts/PromptMenu.svelte';
import EllipsisHorizontal from '../icons/EllipsisHorizontal.svelte';
+ import Clipboard from '../icons/Clipboard.svelte';
+ import Check from '../icons/Check.svelte';
import DeleteConfirmDialog from '$lib/components/common/ConfirmDialog.svelte';
import Search from '../icons/Search.svelte';
import Plus from '../icons/Plus.svelte';
@@ -44,6 +46,7 @@
let tagsContainerElement: HTMLDivElement;
let viewOption = '';
+ let copiedId: string | null = null;
let filteredItems = [];
@@ -105,6 +108,16 @@
saveAs(blob, `prompt-export-${Date.now()}.json`);
};
+ const copyHandler = async (prompt) => {
+ const res = await copyToClipboard(prompt.content);
+ if (res) {
+ copiedId = prompt.command;
+ setTimeout(() => {
+ copiedId = null;
+ }, 2000);
+ }
+ };
+
const deleteHandler = async (prompt) => {
const command = prompt.command;
@@ -370,6 +383,23 @@
{:else}
+
+
+
{
shareHandler(prompt);