diff options
| author | zyoshoka <107108195+zyoshoka@users.noreply.github.com> | 2024-03-30 13:51:53 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-30 13:51:53 +0900 |
| commit | b35ae97ba7b57ae2b04eb0cc25dd3360e321e537 (patch) | |
| tree | 322b4c657fa6dc09a6cff5fb8b97906c45879ed4 /packages/backend/src/server/api/endpoints | |
| parent | fix: report progress out of 100% in CleanRemoteFilesProcessorService (#13633) (diff) | |
| download | sharkey-b35ae97ba7b57ae2b04eb0cc25dd3360e321e537.tar.gz sharkey-b35ae97ba7b57ae2b04eb0cc25dd3360e321e537.tar.bz2 sharkey-b35ae97ba7b57ae2b04eb0cc25dd3360e321e537.zip | |
fix(backend): better `notes/translate` error response (#13631)
* fix(backend): better `notes/translate` error response
* Update CHANGELOG.md
* test(backend): perform administrative operations as `root`
---------
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
Diffstat (limited to 'packages/backend/src/server/api/endpoints')
| -rw-r--r-- | packages/backend/src/server/api/endpoints/notes/translate.ts | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/packages/backend/src/server/api/endpoints/notes/translate.ts b/packages/backend/src/server/api/endpoints/notes/translate.ts index 78812351f4..38a9660aa2 100644 --- a/packages/backend/src/server/api/endpoints/notes/translate.ts +++ b/packages/backend/src/server/api/endpoints/notes/translate.ts @@ -21,7 +21,7 @@ export const meta = { res: { type: 'object', - optional: false, nullable: false, + optional: true, nullable: false, properties: { sourceLang: { type: 'string' }, text: { type: 'string' }, @@ -39,6 +39,11 @@ export const meta = { code: 'NO_SUCH_NOTE', id: 'bea9b03f-36e0-49c5-a4db-627a029f8971', }, + cannotTranslateInvisibleNote: { + message: 'Cannot translate invisible note.', + code: 'CANNOT_TRANSLATE_INVISIBLE_NOTE', + id: 'ea29f2ca-c368-43b3-aaf1-5ac3e74bbe5d', + }, }, } as const; @@ -72,17 +77,17 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- }); if (!(await this.noteEntityService.isVisibleForMe(note, me.id))) { - return 204; // TODO: 良い感じのエラー返す + throw new ApiError(meta.errors.cannotTranslateInvisibleNote); } if (note.text == null) { - return 204; + return; } const instance = await this.metaService.fetch(); if (instance.deeplAuthKey == null) { - return 204; // TODO: 良い感じのエラー返す + throw new ApiError(meta.errors.unavailable); } let targetLang = ps.targetLang; |