From 14fb95c79849fad5673784a4cebd8e0f555d39a4 Mon Sep 17 00:00:00 2001 From: mattyatea Date: Sat, 6 Jan 2024 20:01:55 +0900 Subject: [PATCH] fix --- .../src/components/MkDrive.folder.vue | 216 +++++++++--------- 1 file changed, 104 insertions(+), 112 deletions(-) diff --git a/packages/frontend/src/components/MkDrive.folder.vue b/packages/frontend/src/components/MkDrive.folder.vue index fb6a2cc31b..dcd7da7b83 100644 --- a/packages/frontend/src/components/MkDrive.folder.vue +++ b/packages/frontend/src/components/MkDrive.folder.vue @@ -146,19 +146,19 @@ function onDrop(ev: DragEvent) { if (driveFile != null && driveFile !== '') { const file = JSON.parse(driveFile); emit('removeFile', file.id); - if (props.selectedFiles.length > 0) { - props.selectedFiles.forEach((e)=>{ + if (props.selectedFiles.length > 0) { + props.selectedFiles.forEach((e) => { misskeyApi('drive/files/update', { - fileId: e.id, - folderId: props.folder.id, - }); - }) - }else{ + fileId: e.id, + folderId: props.folder.id, + }); + }); + } else { misskeyApi('drive/files/update', { - fileId: file.id, - folderId: props.folder.id, - }); - } + fileId: file.id, + folderId: props.folder.id, + }); + } } //#endregion @@ -234,119 +234,111 @@ function rename() { function deleteFolder() { misskeyApi('drive/folders/show', { - folderId: props.folder.id, - }).then(async (r) => { + folderId: props.folder.id, + }).then(async (r) => { + if (r.foldersCount > 0) { + await os.alert({ + type: 'error', + title: i18n.ts.unableToDelete, + text: 'フォルダ内にフォルダが存在するため、削除できません。 \n フォルダ内のフォルダを削除してから試してみてください。', + }); + } - if (r.foldersCount > 0) { - await os.alert({ - type: 'error', - title: i18n.ts.unableToDelete, - text: 'フォルダ内にフォルダが存在するため、削除できません。 \n フォルダ内のフォルダを削除してから試してみてください。', - }); - } + if (r.filesCount > 0) { + const { canceled } = await os.confirm({ + type: 'warning', + text: i18n.t('driveFolderDeleteConfirm', { name: props.folder.name }), + }); - if (r.filesCount > 0) { - - const {canceled} = await os.confirm({ - type: 'warning', - text: i18n.t('driveFolderDeleteConfirm', {name: props.folder.name}), - }); - - if (canceled) return; - - let allResults = []; - let Result = await os.api('drive/files', {folderId: props.folder.id, limit: 31}); - allResults = allResults.concat(Result) - while (Result.length >= 31) { - const untilId = Result[Result.length - 1].id; - Result = await os.api('drive/files', { folderId: props.folder.id, limit: 31, untilId }); - allResults = allResults.concat(Result); // pushをconcatに変更 - } - allResults.forEach((r,i)=>{ - os.api('drive/files/delete',{fileId: r.id}) - }) + if (canceled) return; + let allResults = []; + let Result = await misskeyApi('drive/files', { folderId: props.folder.id, limit: 31 }); + allResults = allResults.concat(Result); + while (Result.length >= 31) { + const untilId = Result[Result.length - 1].id; + Result = await misskeyApi('drive/files', { folderId: props.folder.id, limit: 31, untilId }); + allResults = allResults.concat(Result); // pushをconcatに変更 + } + allResults.forEach((r, i) => { + misskeyApi('drive/files/delete', { fileId: r.id }); + }); misskeyApi('drive/folders/show', { - folderId: props.folder.id, - }).then(async (r) =>{ - if (r.filesCount > 0) { - - let allResults = []; - let Result = await os.api('drive/files', {folderId: props.folder.id, limit: 31}); - allResults = allResults.concat(Result) - while (Result.length >= 31) { - const untilId = Result[Result.length - 1].id; - Result = await os.api('drive/files', { folderId: props.folder.id, limit: 31, untilId }); - allResults = allResults.concat(Result); - } - allResults.forEach((r,i)=>{ - os.api('drive/files/delete',{fileId: r.id}) - }) + folderId: props.folder.id, + }).then(async (r) => { + if (r.filesCount > 0) { + let allResults = []; + let Result = await misskeyApi('drive/files', { folderId: props.folder.id, limit: 31 }); + allResults = allResults.concat(Result); + while (Result.length >= 31) { + const untilId = Result[Result.length - 1].id; + Result = await misskeyApi('drive/files', { folderId: props.folder.id, limit: 31, untilId }); + allResults = allResults.concat(Result); + } + allResults.forEach((r, i) => { + misskeyApi('drive/files/delete', { fileId: r.id }); + }); misskeyApi('drive/folders/delete', { - folderId: props.folder.id, - }).then(() => { - if (defaultStore.state.uploadFolder === props.folder.id) { - defaultStore.set('uploadFolder', null); - } - }).catch(err => { - switch (err.id) { - case 'b0fc8a17-963c-405d-bfbc-859a487295e1': - os.alert({ - type: 'error', - title: i18n.ts.unableToDelete, - text: i18n.ts.hasChildFilesOrFolders, - }); - break; - default: - os.alert({ - type: 'error', - text: i18n.ts.unableToDelete, - }); - } - }); + folderId: props.folder.id, + }).then(() => { + if (defaultStore.state.uploadFolder === props.folder.id) { + defaultStore.set('uploadFolder', null); + } + }).catch(err => { + switch (err.id) { + case 'b0fc8a17-963c-405d-bfbc-859a487295e1': + os.alert({ + type: 'error', + title: i18n.ts.unableToDelete, + text: i18n.ts.hasChildFilesOrFolders, + }); + break; + default: + os.alert({ + type: 'error', + text: i18n.ts.unableToDelete, + }); + } + }); misskeyApi('drive/folders/delete', { - folderId: props.folder.id, - }) - }else{ + folderId: props.folder.id, + }); + } else { misskeyApi('drive/folders/delete', { - folderId: props.folder.id, - }) - } - }) - - } else { - - await misskeyApi('drive/folders/delete', { - folderId: props.folder.id, - }).then(() => { - if (defaultStore.state.uploadFolder === props.folder.id) { - defaultStore.set('uploadFolder', null); - } - }).catch(err => { - switch (err.id) { - case 'b0fc8a17-963c-405d-bfbc-859a487295e1': - os.alert({ - type: 'error', - title: i18n.ts.unableToDelete, - text: i18n.ts.hasChildFilesOrFolders, - }); - break; - default: - os.alert({ - type: 'error', - text: i18n.ts.unableToDelete, - }); - } - }); - } - }) - + folderId: props.folder.id, + }); + } + }); + } else { + await misskeyApi('drive/folders/delete', { + folderId: props.folder.id, + }).then(() => { + if (defaultStore.state.uploadFolder === props.folder.id) { + defaultStore.set('uploadFolder', null); + } + }).catch(err => { + switch (err.id) { + case 'b0fc8a17-963c-405d-bfbc-859a487295e1': + os.alert({ + type: 'error', + title: i18n.ts.unableToDelete, + text: i18n.ts.hasChildFilesOrFolders, + }); + break; + default: + os.alert({ + type: 'error', + text: i18n.ts.unableToDelete, + }); + } + }); + } + }); } - function setAsUploadFolder() { defaultStore.set('uploadFolder', props.folder.id); }