summaryrefslogtreecommitdiff
path: root/packages/backend/src/server
diff options
context:
space:
mode:
authorHazelnoot <acomputerdog@gmail.com>2025-05-12 00:23:59 -0400
committerHazelnoot <acomputerdog@gmail.com>2025-05-12 21:48:21 -0400
commite7ee2cc398dd1bf9d04c30ebacff85c113714d15 (patch)
tree36ccce4f4ed2c783a5492ca8c4354bba559fe47d /packages/backend/src/server
parentmerge: Add "is from local bubble instance" role condition (!1011) (diff)
downloadsharkey-e7ee2cc398dd1bf9d04c30ebacff85c113714d15.tar.gz
sharkey-e7ee2cc398dd1bf9d04c30ebacff85c113714d15.tar.bz2
sharkey-e7ee2cc398dd1bf9d04c30ebacff85c113714d15.zip
add configurable timeout for note translations
Diffstat (limited to 'packages/backend/src/server')
-rw-r--r--packages/backend/src/server/api/endpoints/admin/meta.ts5
-rw-r--r--packages/backend/src/server/api/endpoints/admin/update-meta.ts5
-rw-r--r--packages/backend/src/server/api/endpoints/notes/translate.ts2
3 files changed, 12 insertions, 0 deletions
diff --git a/packages/backend/src/server/api/endpoints/admin/meta.ts b/packages/backend/src/server/api/endpoints/admin/meta.ts
index f059a3ed4d..13022f43a0 100644
--- a/packages/backend/src/server/api/endpoints/admin/meta.ts
+++ b/packages/backend/src/server/api/endpoints/admin/meta.ts
@@ -445,6 +445,10 @@ export const meta = {
type: 'string',
optional: false, nullable: true,
},
+ translationTimeout: {
+ type: 'number',
+ optional: false, nullable: false,
+ },
deeplAuthKey: {
type: 'string',
optional: false, nullable: true,
@@ -723,6 +727,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
objectStorageUseProxy: instance.objectStorageUseProxy,
objectStorageSetPublicRead: instance.objectStorageSetPublicRead,
objectStorageS3ForcePathStyle: instance.objectStorageS3ForcePathStyle,
+ translationTimeout: instance.translationTimeout,
deeplAuthKey: instance.deeplAuthKey,
deeplIsPro: instance.deeplIsPro,
deeplFreeMode: instance.deeplFreeMode,
diff --git a/packages/backend/src/server/api/endpoints/admin/update-meta.ts b/packages/backend/src/server/api/endpoints/admin/update-meta.ts
index eb73c4b616..090681c134 100644
--- a/packages/backend/src/server/api/endpoints/admin/update-meta.ts
+++ b/packages/backend/src/server/api/endpoints/admin/update-meta.ts
@@ -103,6 +103,7 @@ export const paramDef = {
type: 'string',
},
},
+ translationTimeout: { type: 'number' },
deeplAuthKey: { type: 'string', nullable: true },
deeplIsPro: { type: 'boolean' },
deeplFreeMode: { type: 'boolean' },
@@ -560,6 +561,10 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
set.objectStorageS3ForcePathStyle = ps.objectStorageS3ForcePathStyle;
}
+ if (ps.translationTimeout !== undefined) {
+ set.translationTimeout = ps.translationTimeout;
+ }
+
if (ps.deeplAuthKey !== undefined) {
if (ps.deeplAuthKey === '') {
set.deeplAuthKey = null;
diff --git a/packages/backend/src/server/api/endpoints/notes/translate.ts b/packages/backend/src/server/api/endpoints/notes/translate.ts
index 39119bc206..843a4ef01c 100644
--- a/packages/backend/src/server/api/endpoints/notes/translate.ts
+++ b/packages/backend/src/server/api/endpoints/notes/translate.ts
@@ -116,6 +116,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
Accept: 'application/json, */*',
},
body: params.toString(),
+ timeout: this.serverSettings.translationTimeout,
});
if (this.serverSettings.deeplAuthKey) {
const json = (await res.json()) as {
@@ -165,6 +166,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
format: 'text',
api_key: this.serverSettings.libreTranslateKey ?? '',
}),
+ timeout: this.serverSettings.translationTimeout,
});
const json = (await res.json()) as {