Canvas: Add option to deploy latest draft
Change-Id: Ia74c64354e1f80ec794140ce406fb21c16feb0da
diff --git a/apps/canvas/config/src/graph.ts b/apps/canvas/config/src/graph.ts
index c2f8e05..a4634cb 100644
--- a/apps/canvas/config/src/graph.ts
+++ b/apps/canvas/config/src/graph.ts
@@ -609,6 +609,20 @@
}),
]);
+export const GraphConfigOrDraft = z.discriminatedUnion("type", [
+ z.object({
+ type: z.literal("graph"),
+ graph: GraphSchema,
+ }),
+ z.object({
+ type: z.literal("config"),
+ config: ConfigSchema,
+ }),
+ z.object({
+ type: z.literal("draft"),
+ }),
+]);
+
export type Edge = z.infer<typeof EdgeSchema>;
export type ViewportTransform = z.infer<typeof ViewportTransformSchema>;
export type Graph = z.infer<typeof GraphSchema>;
diff --git a/apps/canvas/config/src/index.ts b/apps/canvas/config/src/index.ts
index c10ce31..f6cc9a5 100644
--- a/apps/canvas/config/src/index.ts
+++ b/apps/canvas/config/src/index.ts
@@ -55,6 +55,7 @@
Edge,
GraphOrConfigSchema,
ViewportTransform,
+ GraphConfigOrDraft,
} from "./graph.js";
export { generateDodoConfig, configToGraph } from "./config.js";