feat: add admin file view presets

This commit is contained in:
Lan
2026-06-03 07:01:38 +08:00
parent db3bf25d66
commit 40e7f5deef
6 changed files with 516 additions and 0 deletions
+35
View File
@@ -12,6 +12,9 @@ import type {
AdminFileMetadataRequest,
AdminFilePolicyActionRequest,
AdminFilePreviewResponse,
AdminFileViewPreset,
AdminFileViewPresetRequest,
AdminFileViewPresetsResponse,
ApiResponse,
ChunkUploadCompleteRequest,
ChunkUploadInitRequest,
@@ -190,6 +193,24 @@ export class FileService {
}
}
static async getAdminFileViewPresets(): Promise<ApiResponse<AdminFileViewPresetsResponse>> {
return api.get('/admin/file/view-presets')
}
static async saveAdminFileViewPreset(
data: AdminFileViewPresetRequest
): Promise<ApiResponse<AdminFileViewPreset>> {
try {
return await api.patch('/admin/file/view-presets', data)
} catch (error: unknown) {
if (!isMethodFallbackError(error)) {
throw error
}
return api.post('/admin/file/view-presets', data)
}
}
static async updateAdminFiles(
data: AdminBatchUpdateFilesRequest
): Promise<ApiResponse<AdminBatchUpdateFilesResponse>> {
@@ -210,6 +231,20 @@ export class FileService {
})
}
static async deleteAdminFileViewPreset(id: string): Promise<ApiResponse> {
try {
return await api.delete('/admin/file/view-presets', {
data: { id }
})
} catch (error: unknown) {
if (!isMethodFallbackError(error)) {
throw error
}
return api.post('/admin/file/view-presets/delete', { id })
}
}
static async downloadAdminFile(
id: number
): Promise<{ data: Blob; headers: Record<string, string> }> {