feat(web): folder-sync checkboxes + per-account mapping API client
This commit is contained in:
@@ -33,6 +33,8 @@ export interface Account {
|
||||
skipped: number
|
||||
errors: number
|
||||
last_error?: string
|
||||
folder_mapping?: Record<string, string>
|
||||
excluded_folders?: string[]
|
||||
}
|
||||
|
||||
export interface TaskDetail {
|
||||
@@ -104,6 +106,20 @@ export const probeFolders = (
|
||||
export const setFolderMapping = (taskId: number, mapping: Record<string, string>) =>
|
||||
api(`/api/tasks/${taskId}/folder-mapping`, { ...jsonBody({ mapping }), method: 'PUT' })
|
||||
|
||||
export const probeAccountFolders = (taskId: number, accId: number) =>
|
||||
api<ProbeResult>(`/api/tasks/${taskId}/accounts/${accId}/probe`, { method: 'POST' })
|
||||
|
||||
export const setAccountFolderMapping = (
|
||||
taskId: number,
|
||||
accId: number,
|
||||
mapping: Record<string, string>,
|
||||
excluded: string[],
|
||||
) =>
|
||||
api(`/api/tasks/${taskId}/accounts/${accId}/folder-mapping`, {
|
||||
...jsonBody({ mapping, excluded }),
|
||||
method: 'PUT',
|
||||
})
|
||||
|
||||
export const listTasks = () => api<Task[]>('/api/tasks')
|
||||
|
||||
export const getTask = (id: number) => api<TaskDetail>(`/api/tasks/${id}`)
|
||||
|
||||
Reference in New Issue
Block a user