diff options
| author | おさむのひと <46447427+samunohito@users.noreply.github.com> | 2025-04-29 08:15:09 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-29 08:15:09 +0900 |
| commit | 7e8cc4d7c0a86ad0bf71a727fb16132e8bc180a8 (patch) | |
| tree | 32566ed4917ac80de0d4a1095f5442923e29a8fb /packages/backend/src/server/api/endpoint-base.ts | |
| parent | enhance(frontend): disable router view transition (diff) | |
| download | sharkey-7e8cc4d7c0a86ad0bf71a727fb16132e8bc180a8.tar.gz sharkey-7e8cc4d7c0a86ad0bf71a727fb16132e8bc180a8.tar.bz2 sharkey-7e8cc4d7c0a86ad0bf71a727fb16132e8bc180a8.zip | |
fix: 添付ファイルのあるリクエストを受けたときの初動を改善 (#15896)
* wip
* ロールポリシーの値も参照するように
* エンドポイントのテストを追加
* fix review
* add spdx
* fix CHANGELOG.md
* fix test
* regenerate
* add log
* Revert "add log"
This reverts commit 4b2bf59a609b85ca0bfcc9b71438db782f11983d.
* add log
* fix
* Revert "add log"
This reverts commit c5a73d57da0f30ec5215e08a8b4d78785cce48d1.
Diffstat (limited to 'packages/backend/src/server/api/endpoint-base.ts')
| -rw-r--r-- | packages/backend/src/server/api/endpoint-base.ts | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/packages/backend/src/server/api/endpoint-base.ts b/packages/backend/src/server/api/endpoint-base.ts index e061aa3a8e..b063487305 100644 --- a/packages/backend/src/server/api/endpoint-base.ts +++ b/packages/backend/src/server/api/endpoint-base.ts @@ -21,23 +21,23 @@ ajv.addFormat('misskey:id', /^[a-zA-Z0-9]+$/); export type Response = Record<string, any> | void; -type File = { +export type AttachmentFile = { name: string | null; path: string; }; // TODO: paramsの型をT['params']のスキーマ定義から推論する type Executor<T extends IEndpointMeta, Ps extends Schema> = - (params: SchemaType<Ps>, user: T['requireCredential'] extends true ? MiLocalUser : MiLocalUser | null, token: MiAccessToken | null, file?: File, cleanup?: () => any, ip?: string | null, headers?: Record<string, string> | null) => - Promise<T['res'] extends undefined ? Response : SchemaType<NonNullable<T['res']>>>; + (params: SchemaType<Ps>, user: T['requireCredential'] extends true ? MiLocalUser : MiLocalUser | null, token: MiAccessToken | null, file?: AttachmentFile, cleanup?: () => any, ip?: string | null, headers?: Record<string, string> | null) => + Promise<T['res'] extends undefined ? Response : SchemaType<NonNullable<T['res']>>>; export abstract class Endpoint<T extends IEndpointMeta, Ps extends Schema> { - public exec: (params: any, user: T['requireCredential'] extends true ? MiLocalUser : MiLocalUser | null, token: MiAccessToken | null, file?: File, ip?: string | null, headers?: Record<string, string> | null) => Promise<any>; + public exec: (params: any, user: T['requireCredential'] extends true ? MiLocalUser : MiLocalUser | null, token: MiAccessToken | null, file?: AttachmentFile, ip?: string | null, headers?: Record<string, string> | null) => Promise<any>; constructor(meta: T, paramDef: Ps, cb: Executor<T, Ps>) { const validate = ajv.compile(paramDef); - this.exec = (params: any, user: T['requireCredential'] extends true ? MiLocalUser : MiLocalUser | null, token: MiAccessToken | null, file?: File, ip?: string | null, headers?: Record<string, string> | null) => { + this.exec = (params: any, user: T['requireCredential'] extends true ? MiLocalUser : MiLocalUser | null, token: MiAccessToken | null, file?: AttachmentFile, ip?: string | null, headers?: Record<string, string> | null) => { let cleanup: undefined | (() => void) = undefined; if (meta.requireFile) { |