diff --git a/src/lib/components/icons/Bars3BottomLeft.svelte b/src/lib/components/icons/Bars3BottomLeft.svelte new file mode 100644 index 000000000..9a0886cd0 --- /dev/null +++ b/src/lib/components/icons/Bars3BottomLeft.svelte @@ -0,0 +1,12 @@ + + + diff --git a/src/lib/components/notes/NoteEditor.svelte b/src/lib/components/notes/NoteEditor.svelte index 36651d2a0..30effb7dc 100644 --- a/src/lib/components/notes/NoteEditor.svelte +++ b/src/lib/components/notes/NoteEditor.svelte @@ -14,7 +14,7 @@ import { config, settings, showSidebar } from '$lib/stores'; import { goto } from '$app/navigation'; - import { compressImage } from '$lib/utils'; + import { compressImage, copyToClipboard } from '$lib/utils'; import { WEBUI_API_BASE_URL } from '$lib/constants'; import { uploadFile } from '$lib/apis/files'; @@ -58,6 +58,10 @@ import RecordMenu from './RecordMenu.svelte'; import NoteMenu from './Notes/NoteMenu.svelte'; import EllipsisHorizontal from '../icons/EllipsisHorizontal.svelte'; + import Sparkles from '../icons/Sparkles.svelte'; + import SparklesSolid from '../icons/SparklesSolid.svelte'; + import Tooltip from '../common/Tooltip.svelte'; + import Bars3BottomLeft from '../icons/Bars3BottomLeft.svelte'; export let id: null | string = null; @@ -79,6 +83,8 @@ let files = []; + let selectedVersion = 'note'; + let recording = false; let displayMediaRecord = false; @@ -135,6 +141,8 @@ init(); } + const versionToggleHandler = () => {}; + const uploadFileHandler = async (file) => { const tempItemId = uuidv4(); const fileItem = { @@ -434,6 +442,16 @@ onDownload={(type) => { downloadHandler(type); }} + onCopyToClipboard={async () => { + const res = await copyToClipboard(note.data.content.md).catch((error) => { + toast.error(`${error}`); + return null; + }); + + if (res) { + toast.success($i18n.t('Copied to clipboard')); + } + }} onDelete={() => { showDeleteConfirm = true; }} @@ -465,7 +483,7 @@ -