From da547422915dd4d49e4a7050f8db6dd5a3d7239b Mon Sep 17 00:00:00 2001 From: Marie Date: Wed, 7 May 2025 09:06:50 +0200 Subject: [PATCH 1/2] add boolean to ignore folderId sorting, show all files on drive cleaner --- .../backend/src/server/api/endpoints/drive/files.ts | 11 +++++++---- .../frontend/src/pages/settings/drive-cleaner.vue | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/backend/src/server/api/endpoints/drive/files.ts b/packages/backend/src/server/api/endpoints/drive/files.ts index 5df212415d..ed07d0ff9f 100644 --- a/packages/backend/src/server/api/endpoints/drive/files.ts +++ b/packages/backend/src/server/api/endpoints/drive/files.ts @@ -46,6 +46,7 @@ export const paramDef = { type: { type: 'string', nullable: true, pattern: /^[a-zA-Z\/\-*]+$/.toString().slice(1, -1) }, sort: { type: 'string', nullable: true, enum: ['+createdAt', '-createdAt', '+name', '-name', '+size', '-size', null] }, searchQuery: { type: 'string', default: '' }, + notShowAll: { type: 'boolean', default: true }, }, required: [], } as const; @@ -63,10 +64,12 @@ export default class extends Endpoint { // eslint- const query = this.queryService.makePaginationQuery(this.driveFilesRepository.createQueryBuilder('file'), ps.sinceId, ps.untilId) .andWhere('file.userId = :userId', { userId: me.id }); - if (ps.folderId) { - query.andWhere('file.folderId = :folderId', { folderId: ps.folderId }); - } else { - query.andWhere('file.folderId IS NULL'); + if (ps.notShowAll) { + if (ps.folderId) { + query.andWhere('file.folderId = :folderId', { folderId: ps.folderId }); + } else { + query.andWhere('file.folderId IS NULL'); + } } if (ps.searchQuery.length > 0) { diff --git a/packages/frontend/src/pages/settings/drive-cleaner.vue b/packages/frontend/src/pages/settings/drive-cleaner.vue index 1ad3613e4b..b10b661ba3 100644 --- a/packages/frontend/src/pages/settings/drive-cleaner.vue +++ b/packages/frontend/src/pages/settings/drive-cleaner.vue @@ -68,7 +68,7 @@ const sortMode = ref('+size'); const pagination = { endpoint: 'drive/files' as const, limit: 10, - params: computed(() => ({ sort: sortMode.value })), + params: computed(() => ({ sort: sortMode.value, notShowAll: false })), offsetMode: true, }; From 6b6dd372cb67002bbb5442fec6f90fb46922d45c Mon Sep 17 00:00:00 2001 From: Marie Date: Wed, 7 May 2025 10:48:09 +0200 Subject: [PATCH 2/2] up --- packages/backend/src/server/api/endpoints/drive/files.ts | 4 ++-- packages/frontend/src/pages/settings/drive-cleaner.vue | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/backend/src/server/api/endpoints/drive/files.ts b/packages/backend/src/server/api/endpoints/drive/files.ts index ed07d0ff9f..26b7b32001 100644 --- a/packages/backend/src/server/api/endpoints/drive/files.ts +++ b/packages/backend/src/server/api/endpoints/drive/files.ts @@ -46,7 +46,7 @@ export const paramDef = { type: { type: 'string', nullable: true, pattern: /^[a-zA-Z\/\-*]+$/.toString().slice(1, -1) }, sort: { type: 'string', nullable: true, enum: ['+createdAt', '-createdAt', '+name', '-name', '+size', '-size', null] }, searchQuery: { type: 'string', default: '' }, - notShowAll: { type: 'boolean', default: true }, + showAll: { type: 'boolean', default: false }, }, required: [], } as const; @@ -64,7 +64,7 @@ export default class extends Endpoint { // eslint- const query = this.queryService.makePaginationQuery(this.driveFilesRepository.createQueryBuilder('file'), ps.sinceId, ps.untilId) .andWhere('file.userId = :userId', { userId: me.id }); - if (ps.notShowAll) { + if (!ps.showAll) { if (ps.folderId) { query.andWhere('file.folderId = :folderId', { folderId: ps.folderId }); } else { diff --git a/packages/frontend/src/pages/settings/drive-cleaner.vue b/packages/frontend/src/pages/settings/drive-cleaner.vue index b10b661ba3..cc5ac87f3b 100644 --- a/packages/frontend/src/pages/settings/drive-cleaner.vue +++ b/packages/frontend/src/pages/settings/drive-cleaner.vue @@ -68,7 +68,7 @@ const sortMode = ref('+size'); const pagination = { endpoint: 'drive/files' as const, limit: 10, - params: computed(() => ({ sort: sortMode.value, notShowAll: false })), + params: computed(() => ({ sort: sortMode.value, showAll: true })), offsetMode: true, };