import { useState } from "react"; import { runDemo } from "../content/api"; import type { DemoResult, SimpleWorkflowCard, WorkflowCard } from "../content/types"; interface WorkflowShowcaseProps { demoWorkflows: WorkflowCard[]; creatorWorkflows: SimpleWorkflowCard[]; enterpriseWorkflows: SimpleWorkflowCard[]; demoMode: boolean; } export function WorkflowShowcase({ demoWorkflows, creatorWorkflows, enterpriseWorkflows, demoMode, }: WorkflowShowcaseProps) { const [selectedId, setSelectedId] = useState(demoWorkflows[0]?.id ?? ""); const [result, setResult] = useState(null); const [loading, setLoading] = useState(false); async function handleRun(workflowId: string) { setSelectedId(workflowId); setLoading(true); try { const response = await runDemo(workflowId); setResult(response.result); } finally { setLoading(false); } } return (

Controlled demo workflows

{demoMode ? "Demo responses are simulated from local metadata so the Space remains polished without private infrastructure." : "Responses can be switched to live behavior later without changing the surface model."}

{demoWorkflows.map((workflow) => (

{workflow.title}

{workflow.route}

{workflow.summary}

{workflow.outcome}

))}

Demo console

{selectedId || "select a workflow"}
{result ? (
{result.headline}

{result.details}

{result.artifact}
) : (

Select a workflow to view the simulated output contract.

)}

Creator workflows

{creatorWorkflows.map((workflow) => (

{workflow.title}

{workflow.summary}

))}

Enterprise / VoiceOps workflows

{enterpriseWorkflows.map((workflow) => (

{workflow.title}

{workflow.summary}

))}
); }