| 1 | import type { AppBindings } from "./bridge"; |
| 2 | |
| 3 | export type PreviousDraftBindings = Pick<AppBindings,"OpenSessionDraft" | "OpenSessionDraftForTarget" | "RestoreSessionDraft" | "SaveSessionDraft" | "ListSessionDraftSummaries" | "DiscardSessionDraft" | "DismissSessionDraft" | "SetSessionDraftRestoreTarget" | "GetSessionDraft" | "GetDraftContext" | "GetSessionDraftState" | "ResumeDraftSubmission" | "BeginDraftSubmission" | "GetDraftSubmission" | "CancelDraftSubmission">; |
| 4 | |
| 5 | export function makeLazyPreviousDraftMock(): PreviousDraftBindings { |
| 6 | let loaded: Promise<PreviousDraftBindings> | undefined; |
| 7 | const names: (keyof PreviousDraftBindings)[] = ["OpenSessionDraft","OpenSessionDraftForTarget","RestoreSessionDraft","SaveSessionDraft","ListSessionDraftSummaries","DiscardSessionDraft","DismissSessionDraft","SetSessionDraftRestoreTarget","GetSessionDraft","GetDraftContext","GetSessionDraftState","ResumeDraftSubmission","BeginDraftSubmission","GetDraftSubmission","CancelDraftSubmission"]; |
| 8 | return Object.fromEntries(names.map(name=>[name,async (...args:unknown[])=> { |
| 9 | loaded ??= import("./previousDraftMock").then(module=>module.makePreviousDraftMock()); |
| 10 | const binding=await loaded; |
| 11 | return (binding[name] as (...args:unknown[])=>unknown).apply(binding,args); |
| 12 | }])) as unknown as PreviousDraftBindings; |
| 13 | } |
| 14 |