diff --git a/packages/dashboard-v2/src/appUtils.js b/packages/dashboard-v2/src/appUtils.js index 1dd29ec..6c0d603 100644 --- a/packages/dashboard-v2/src/appUtils.js +++ b/packages/dashboard-v2/src/appUtils.js @@ -123,13 +123,22 @@ export const apiHandler = { newKey: encode(newKey) }) }, - updateMetadata: (bucket, key, metadata) => { - return api.post( + updateMetadata: async (bucket, key, metadata) => { + let prefix = '' + if (key.includes('/')) { + prefix = key.replace(key.split('/').pop(), '') + } + + const resp = await api.post( `/buckets/${bucket}/${encode(key)}`, { customMetadata: metadata } ) + + if (resp.status === 200) { + return mapFile(resp.data, prefix) + } }, multipartCreate: (file, key, bucket) => { return api.post(`/buckets/${bucket}/multipart/create`, null, { @@ -193,7 +202,7 @@ export const apiHandler = { let contentFolders = [] while (truncated) { - const response = await this.listObjects(bucket, prefix, delimiter, cursor) + const response = await apiHandler.listObjects(bucket, prefix, delimiter, cursor) truncated = response.data.truncated cursor = response.data.cursor diff --git a/packages/dashboard-v2/src/components/files/FileOptions.vue b/packages/dashboard-v2/src/components/files/FileOptions.vue index 27d3521..05ffd84 100644 --- a/packages/dashboard-v2/src/components/files/FileOptions.vue +++ b/packages/dashboard-v2/src/components/files/FileOptions.vue @@ -77,6 +77,13 @@ export default defineComponent({ this.$bus.emit('fetchFiles') this.reset() + this.q.notify({ + group: false, + icon: 'done', // we add an icon + spinner: false, // we reset the spinner setting so the icon can be displayed + message: 'File renamed!', + timeout: 2500 // we will timeout it in 2.5s + }) }, deleteConfirm: async function() { this.deleteModal = false @@ -90,7 +97,7 @@ export default defineComponent({ timeout: 0 }) - console.log(this.deleteFolderContents) + // console.log(this.deleteFolderContents) for (const [i, innerFile] of this.deleteFolderContents.entries()) { if (innerFile.key) { await apiHandler.deleteObject(innerFile.key, this.selectedBucket) diff --git a/packages/dashboard-v2/src/components/main/LeftSidebar.vue b/packages/dashboard-v2/src/components/main/LeftSidebar.vue index bf91a51..474f6d0 100644 --- a/packages/dashboard-v2/src/components/main/LeftSidebar.vue +++ b/packages/dashboard-v2/src/components/main/LeftSidebar.vue @@ -1,24 +1,33 @@ @@ -39,37 +80,51 @@ import { useMainStore } from "stores/main-store"; import CreateFolder from "components/files/CreateFolder.vue"; export default defineComponent({ - name: 'LeftSidebar', + name: "LeftSidebar", + data: function() { + return { + alert: false, + firstTimeAlert: true + }; + }, components: { CreateFolder }, methods: { gotoEmail: function() { - if(this.selectedApp !== 'email') - this.changeApp('email') + if (this.selectedApp !== "email") + this.changeApp("email"); }, gotoFiles: function() { - if(this.selectedApp !== 'files') - this.changeApp('files') + if (this.selectedApp !== "files") + this.changeApp("files"); }, changeApp: function(app) { - this.$router.push({ name: `${app}-home`, params: { bucket: this.selectedBucket }}) + this.$router.push({ name: `${app}-home`, params: { bucket: this.selectedBucket } }); } }, computed: { - selectedBucket: function () { - return this.$route.params.bucket + selectedBucket: function() { + return this.$route.params.bucket; }, - selectedApp: function () { - return this.$route.name.split('-')[0] + selectedApp: function() { + return this.$route.name.split("-")[0]; + } + }, + mounted: function() { + const alertSeen = localStorage.getItem("DASH_V2_ALERT"); + + if (!alertSeen) { + this.alert = true; + localStorage.setItem("DASH_V2_ALERT", true); } }, setup() { const mainStore = useMainStore(); return { - mainStore, + mainStore }; - }, -}) + } +}); diff --git a/packages/dashboard-v2/src/pages/files/FilesFolderPage.vue b/packages/dashboard-v2/src/pages/files/FilesFolderPage.vue index 74db2a6..84b6c98 100644 --- a/packages/dashboard-v2/src/pages/files/FilesFolderPage.vue +++ b/packages/dashboard-v2/src/pages/files/FilesFolderPage.vue @@ -17,6 +17,7 @@ :rows-per-page-options="[0]" column-sort-order="da" :flat="true" + table-class="file-list" @row-dblclick="openRowClick" @row-click="openRowDlbClick" > @@ -265,3 +266,25 @@ export default defineComponent({ }, }) + +