diff --git a/apps/storage/apps/web/src/lib/components/files/ShareModal.svelte b/apps/storage/apps/web/src/lib/components/files/ShareModal.svelte new file mode 100644 index 000000000..df8c6ab0a --- /dev/null +++ b/apps/storage/apps/web/src/lib/components/files/ShareModal.svelte @@ -0,0 +1,386 @@ + + +{#if open} + +{/if} + + diff --git a/apps/storage/apps/web/src/routes/files/+page.svelte b/apps/storage/apps/web/src/routes/files/+page.svelte index 3e245987d..dec8b5079 100644 --- a/apps/storage/apps/web/src/routes/files/+page.svelte +++ b/apps/storage/apps/web/src/routes/files/+page.svelte @@ -14,8 +14,10 @@ import FileSkeletonGrid from '$lib/components/files/FileSkeletonGrid.svelte'; import FileSkeletonList from '$lib/components/files/FileSkeletonList.svelte'; import EmptyState from '$lib/components/files/EmptyState.svelte'; + import ShareModal from '$lib/components/files/ShareModal.svelte'; let previewFile = $state(null); + let shareTarget = $state<{ fileId?: string; folderId?: string; name: string } | null>(null); let showUploadZone = $state(false); let showNewFolderModal = $state(false); let uploading = $state(false); @@ -75,11 +77,9 @@ } break; case 'share': - // TODO: Open share modal - toastStore.info('Teilen-Funktion kommt bald'); + shareTarget = { fileId: file.id, name: file.name }; break; case 'move': - // TODO: Open move modal toastStore.info('Verschieben-Funktion kommt bald'); break; } @@ -115,7 +115,7 @@ } break; case 'share': - toastStore.info('Teilen-Funktion kommt bald'); + shareTarget = { folderId: folder.id, name: folder.name }; break; case 'move': toastStore.info('Verschieben-Funktion kommt bald'); @@ -303,6 +303,14 @@ }} /> + (shareTarget = null)} +/> +