perf(*): 创作工作台 - 优化首页按需加载与画布交互并修复历史迁移冲突
This commit is contained in:
@@ -37,6 +37,18 @@ export type RemoteUserDataSnapshot = {
|
||||
projects: CanvasProject[];
|
||||
};
|
||||
|
||||
export type CanvasLibrarySummary = Pick<CanvasProject, "id" | "projectId" | "title" | "createdAt" | "updatedAt"> & {
|
||||
nodeCount: number;
|
||||
previewNodes: CanvasProject["nodes"];
|
||||
};
|
||||
|
||||
export function listRemoteCanvasProjectsPage(options: { page: number; pageSize: number; projectId?: string; query?: string; sort?: string; signal?: AbortSignal }) {
|
||||
return request<{ projects: CanvasLibrarySummary[]; page: number; pageSize: number; total: number; hasMore: boolean }>(api.get("/canvas-projects", {
|
||||
signal: options.signal,
|
||||
params: compactApiParams({ page: options.page, page_size: options.pageSize, project_id: options.projectId, q: options.query, sort: options.sort }),
|
||||
}));
|
||||
}
|
||||
|
||||
export function getRemoteUserDataSnapshot() {
|
||||
return request<RemoteUserDataSnapshot>(api.get("/user-data/snapshot"));
|
||||
}
|
||||
@@ -85,6 +97,10 @@ export function getRemoteAsset(id: string) {
|
||||
return request<{ asset: Asset }>(api.get(`/assets/${encodeURIComponent(id)}`));
|
||||
}
|
||||
|
||||
export function getRemoteAssetsByIds(ids: string[]) {
|
||||
return request<{ assets: Asset[] }>(api.post("/assets/batch", { ids }));
|
||||
}
|
||||
|
||||
export function upsertRemoteAsset(asset: Asset) {
|
||||
return request<{ asset: RemoteUserDataSummary }>(api.put(`/assets/${encodeURIComponent(asset.id)}`, { asset }));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user