feat(desktop): drop parked review flow, add publish management
SaaS 侧人工审核后才创建 publish job,desktop 不再做二次审核:移除 manual/waiting_user/parked/from_parked 状态机与 LeaseFromParked 查询, desktop client 只执行发布并新增"发布管理"页(待发布队列 / 历史 / 再次 发送)。同时抽离 @geo/publisher-platforms 共享适配器包、新增 Redis-based desktop_presence 与 publish_record_support,刷新 admin-web 发布弹窗与 媒体库;plan A / spec 文档同步口径。
This commit is contained in:
@@ -1,5 +1,11 @@
|
||||
import { contextBridge, ipcRenderer } from "electron/renderer";
|
||||
import type { DesktopAccountInfo, DesktopRuntimeSessionSyncRequest } from "@geo/shared-types";
|
||||
import type {
|
||||
CreatePublishJobResponse,
|
||||
DesktopAccountInfo,
|
||||
DesktopPublishTaskListResponse,
|
||||
DesktopRuntimeSessionSyncRequest,
|
||||
ListDesktopPublishTasksParams,
|
||||
} from "@geo/shared-types";
|
||||
import type { DesktopRuntimeSnapshot } from "../renderer/types";
|
||||
|
||||
const desktopBridge = {
|
||||
@@ -9,6 +15,8 @@ const desktopBridge = {
|
||||
ipcRenderer.invoke("desktop:runtime-snapshot") as Promise<DesktopRuntimeSnapshot>,
|
||||
bindPublishAccount: (platformId: string) =>
|
||||
ipcRenderer.invoke("desktop:bind-publish-account", platformId) as Promise<DesktopAccountInfo>,
|
||||
refreshRuntimeAccounts: () =>
|
||||
ipcRenderer.invoke("desktop:refresh-runtime-accounts") as Promise<null>,
|
||||
openPublishAccountConsole: (account: {
|
||||
id: string;
|
||||
platform: string;
|
||||
@@ -16,12 +24,16 @@ const desktopBridge = {
|
||||
displayName: string;
|
||||
}) =>
|
||||
ipcRenderer.invoke("desktop:open-publish-account-console", account) as Promise<null>,
|
||||
openTaskReview: (taskId: string) =>
|
||||
ipcRenderer.invoke("desktop:task-open-review", taskId) as Promise<null>,
|
||||
resolveParkedTask: (taskId: string, status: "succeeded" | "failed" | "unknown") =>
|
||||
ipcRenderer.invoke("desktop:task-resolve-parked", taskId, status) as Promise<null>,
|
||||
unbindPublishAccount: (accountId: string, syncVersion: number) =>
|
||||
ipcRenderer.invoke("desktop:unbind-publish-account", accountId, syncVersion) as Promise<null>,
|
||||
listPublishTasks: (params?: ListDesktopPublishTasksParams) =>
|
||||
ipcRenderer.invoke("desktop:list-publish-tasks", params) as Promise<DesktopPublishTaskListResponse>,
|
||||
retryPublishTask: (taskId: string) =>
|
||||
ipcRenderer.invoke("desktop:retry-publish-task", taskId) as Promise<CreatePublishJobResponse>,
|
||||
syncRuntimeSession: (session: DesktopRuntimeSessionSyncRequest | null) =>
|
||||
ipcRenderer.invoke("desktop:runtime-session-sync", session) as Promise<null>,
|
||||
releaseRuntimeSession: (revoke?: boolean) =>
|
||||
ipcRenderer.invoke("desktop:runtime-session-release", revoke) as Promise<null>,
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user