From e0937ed233b8a943fa2471c30454df78414a01eb Mon Sep 17 00:00:00 2001 From: Leo Vasanko Date: Sun, 1 Feb 2026 03:27:13 +0000 Subject: [PATCH] Automatically navigate into newly uploaded folders. --- frontend/src/components/UploadButton.vue | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/frontend/src/components/UploadButton.vue b/frontend/src/components/UploadButton.vue index 25797e0..7b8a398 100644 --- a/frontend/src/components/UploadButton.vue +++ b/frontend/src/components/UploadButton.vue @@ -13,7 +13,9 @@ import { useMainStore } from '@/stores/main' import { Doc } from '@/repositories/Document' import { collator } from '@/utils'; import { onMounted, onUnmounted, reactive, ref } from 'vue' +import { useRouter } from 'vue-router' +const router = useRouter() const fileInput = ref() const folderInput = ref() const store = useMainStore() @@ -73,14 +75,18 @@ function uploadHandler(event: Event) { const uploadFiles = (infiles: File[]) => { const loc = props.path!.join('/') let files = [] + let folderName = '' for (const file of infiles) { + const relPath = file.webkitRelativePath || file.name + if (!folderName && file.webkitRelativePath) folderName = relPath.split('/')[0] ?? '' files.push({ file, - cloudName: loc + '/' + (file.webkitRelativePath || file.name), + cloudName: loc + '/' + relPath, cloudPos: 0, }) } uploadCloudFiles(files) + if (folderName) router.push('/' + (loc ? loc + '/' : '') + folderName + '/') } const uploadCloudFiles = (files: CloudFile[]) => { const dotfiles = files.filter(f => f.cloudName.includes('/.'))