@workflow/web 4.0.1-beta.22 → 4.0.1-beta.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +5 -5
- package/.next/fallback-build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/server/app/_global-error/page/build-manifest.json +3 -3
- package/.next/server/app/_global-error.html +2 -2
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page/build-manifest.json +3 -3
- package/.next/server/app/_not-found/page/server-reference-manifest.json +18 -18
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page/build-manifest.json +3 -3
- package/.next/server/app/page/server-reference-manifest.json +19 -19
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/run/[runId]/page/build-manifest.json +3 -3
- package/.next/server/app/run/[runId]/page/server-reference-manifest.json +19 -19
- package/.next/server/app/run/[runId]/page.js.nft.json +1 -1
- package/.next/server/app/run/[runId]/page_client-reference-manifest.js +1 -1
- package/.next/server/chunks/ssr/6f243_streamdown_dist_code-block-IT6T5CEO_5126e4d3.js +141 -0
- package/.next/server/chunks/ssr/6f243_streamdown_dist_code-block-IT6T5CEO_5126e4d3.js.map +1 -0
- package/.next/server/chunks/ssr/6f243_streamdown_dist_mermaid-VLURNSYL_9196f878.js +3 -0
- package/.next/server/chunks/ssr/6f243_streamdown_dist_mermaid-VLURNSYL_9196f878.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0b625b89._.js +20 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0b625b89._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__2168651f._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__2168651f._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__25c4ca9a._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__25c4ca9a._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__d416fa5e._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__d416fa5e._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__e576a2e1._.js +7 -7
- package/.next/server/chunks/ssr/[root-of-the-server]__e576a2e1._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__f238920e._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__f238920e._.js.map +1 -0
- package/.next/server/chunks/ssr/_73d9d1d2._.js +8 -0
- package/.next/server/chunks/ssr/_73d9d1d2._.js.map +1 -0
- package/.next/server/chunks/ssr/_af28dabd._.js +1 -1
- package/.next/server/chunks/ssr/_af28dabd._.js.map +1 -1
- package/.next/server/chunks/ssr/_bff7cae2._.js +1 -1
- package/.next/server/chunks/ssr/_bff7cae2._.js.map +1 -1
- package/.next/server/chunks/ssr/{_c8bf1458._.js → _ce81e446._.js} +3 -3
- package/.next/server/chunks/ssr/{_c8bf1458._.js.map → _ce81e446._.js.map} +1 -1
- package/.next/server/chunks/ssr/{node_modules__pnpm_1053b681._.js → node_modules__pnpm_f298fb32._.js} +2 -2
- package/.next/server/chunks/ssr/packages_web_src_19bb3951._.js +1 -1
- package/.next/server/chunks/ssr/packages_web_src_19bb3951._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_web_src_app_page_tsx_cd282e82._.js +2 -2
- package/.next/server/chunks/ssr/packages_web_src_app_page_tsx_cd282e82._.js.map +1 -1
- package/.next/server/middleware-build-manifest.js +3 -3
- package/.next/server/pages/500.html +2 -2
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +20 -20
- package/.next/static/chunks/0170442250d0d197.js +3 -0
- package/.next/static/chunks/050a53a61e5e2460.js +1 -0
- package/.next/static/chunks/0807db8fd89b4be6.js +1 -0
- package/.next/static/chunks/08ed7a5affa5aee0.js +21 -0
- package/.next/static/chunks/1432ad27401a7e47.js +1 -0
- package/.next/static/chunks/163fa6140215b388.css +3 -0
- package/.next/static/chunks/{f71c82ee950bb628.js → 1fc8ab18b8905b92.js} +1 -1
- package/.next/static/chunks/{7923b4297b28749b.css → 220345de3b9d49d5.css} +0 -1
- package/.next/static/chunks/{c4653dabfa8c5536.js → 298f13f3e64963bb.js} +3 -3
- package/.next/static/chunks/2c0fbde1a0975e33.js +5 -0
- package/.next/static/chunks/{8d32c2bf0f991bbb.js → 3578235c395ce702.js} +1 -1
- package/.next/static/chunks/4731ef7b3abe3f84.js +1 -0
- package/.next/static/chunks/{5cc4b7d8f173d21f.js → 5b454d96e1a464e6.js} +2 -2
- package/.next/static/chunks/6f04dbb31b3b2afc.css +1 -0
- package/.next/static/chunks/8331ced066b7d7a3.js +139 -0
- package/.next/static/chunks/{c41b2f1bfdc5f91e.js → 9e4f9d9be33a8436.js} +1 -1
- package/.next/static/chunks/{36a636d76f662255.js → d322dd03d7afd673.js} +1 -1
- package/.next/static/chunks/{turbopack-444344f6e8c5b8fb.js → turbopack-5bab4060acaecce6.js} +1 -1
- package/.next/static/chunks/{turbopack-fcbada14c092d574.js → turbopack-b873adab9cda5434.js} +1 -1
- package/.next/trace +1 -1
- package/.next/trace-build +1 -1
- package/package.json +5 -4
- package/.next/server/chunks/ssr/[root-of-the-server]__1365a866._.js +0 -159
- package/.next/server/chunks/ssr/[root-of-the-server]__1365a866._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__65e98dcf._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__65e98dcf._.js.map +0 -1
- package/.next/static/chunks/4cc8e6fbfadefe1c.js +0 -1
- package/.next/static/chunks/998975f01526efbb.js +0 -1
- package/.next/static/chunks/ab6cd88fb6e08748.js +0 -1
- package/.next/static/chunks/affb91574db5b135.js +0 -154
- package/.next/static/chunks/b39dd1bd2af229c0.css +0 -3
- package/.next/static/chunks/c72c95cb5a7775b3.js +0 -5
- /package/.next/server/chunks/ssr/{node_modules__pnpm_1053b681._.js.map → node_modules__pnpm_f298fb32._.js.map} +0 -0
- /package/.next/static/{ieavtosUwWbQ98kcW2Cp7 → SXofRbhw5afEl7lezkj_x}/_buildManifest.js +0 -0
- /package/.next/static/{ieavtosUwWbQ98kcW2Cp7 → SXofRbhw5afEl7lezkj_x}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{ieavtosUwWbQ98kcW2Cp7 → SXofRbhw5afEl7lezkj_x}/_ssgManifest.js +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
module.exports=[762587,a=>{"use strict";var b=a.i(857446);a.i(580551);var c=a.i(285993),d=a.i(624282),e=a.i(721578),f=a.i(735835),g=a.i(119615),h=a.i(207973),i=a.i(622427);let j=(0,i.default)("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);var k=a.i(322178),l=a.i(139274);let m=(0,i.default)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);var n=a.i(630135),o=a.i(67659),p=a.i(253220),q=a.i(95811),r=a.i(135321),s=a.i(397494),t=a.i(676653);let u=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("rounded-lg border bg-card text-card-foreground shadow-sm",a),...c}));u.displayName="Card",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("flex flex-col space-y-1.5 p-6",a),...c})).displayName="CardHeader",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("text-2xl font-semibold leading-none tracking-tight",a),...c})).displayName="CardTitle",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("text-sm text-muted-foreground",a),...c})).displayName="CardDescription";let v=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("p-6 pt-0",a),...c}));v.displayName="CardContent",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("flex items-center p-6 pt-0",a),...c})).displayName="CardFooter";var w=a.i(315330);let x=p.forwardRef(({className:a,href:c,children:d,...e},f)=>{let g=c.startsWith("http")?c:`https://useworkflow.dev/docs/${c.replace(/^\//,"")}`;return(0,b.jsx)(w.default,{href:g,className:(0,t.cn)("font-medium underline underline-offset-4 transition-colors",a),style:{color:"var(--ds-blue-600)"},target:"_blank",rel:"noopener noreferrer",ref:f,...e,children:d})});x.displayName="DocsLink";var y=a.i(794851);let z=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{className:"relative w-full overflow-auto",children:(0,b.jsx)("table",{ref:d,className:(0,t.cn)("w-full caption-bottom text-sm",a),...c})}));z.displayName="Table";let A=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("thead",{ref:d,className:(0,t.cn)("[&_tr]:border-b",a),...c}));A.displayName="TableHeader";let B=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("tbody",{ref:d,className:(0,t.cn)("[&_tr:last-child]:border-0",a),...c}));B.displayName="TableBody",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("tfoot",{ref:d,className:(0,t.cn)("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",a),...c})).displayName="TableFooter";let C=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("tr",{ref:d,className:(0,t.cn)("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",a),...c}));C.displayName="TableRow";let D=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("th",{ref:d,className:(0,t.cn)("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",a),...c}));D.displayName="TableHead";let E=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("td",{ref:d,className:(0,t.cn)("p-4 align-middle [&:has([role=checkbox])]:pr-0",a),...c}));E.displayName="TableCell",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("caption",{ref:d,className:(0,t.cn)("mt-4 text-sm text-muted-foreground",a),...c})).displayName="TableCaption";var F=a.i(393557),G=a.i(508624),H=a.i(432320),I=a.i(315244),J=a.i(433105);function K({rows:a=t.DEFAULT_PAGE_SIZE,variant:c="runs"}){return(0,b.jsx)(u,{className:"overflow-hidden mt-4 bg-background",children:(0,b.jsxs)(v,{className:"p-0",children:[(()=>{switch(c){case"runs":return(0,b.jsxs)("div",{className:"grid grid-cols-[1fr_1.5fr_0.8fr_1fr_1fr_40px] items-center gap-4 py-3 px-4 border-b",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-20"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-14"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-12"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-14"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-20"}),(0,b.jsx)("div",{className:"w-6"})]});case"hooks":return(0,b.jsxs)("div",{className:"grid grid-cols-[1.2fr_1.2fr_0.8fr_1fr_0.5fr_40px] items-center gap-4 py-3 px-4 border-b",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-16"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-14"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-12"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-14"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-20"}),(0,b.jsx)("div",{className:"w-6"})]});case"workflows":return(0,b.jsxs)("div",{className:"grid grid-cols-[1fr_1.5fr_0.5fr] items-center gap-4 py-3 px-4 border-b",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-20"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-10"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-12 mx-auto"})]});default:return null}})(),Array.from({length:a},(a,d)=>(a=>{switch(c){case"runs":return(0,b.jsxs)("div",{className:"grid grid-cols-[1fr_1.5fr_0.8fr_1fr_1fr_40px] items-center gap-4 py-3 px-4",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-4/5"}),(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)(J.Skeleton,{className:"h-3 w-14"}),(0,b.jsx)(J.Skeleton,{className:"h-2 w-8"})]}),(0,b.jsx)(J.Skeleton,{className:"h-3 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-3 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-6 w-6 rounded"})]},`skeleton-row-${a}`);case"hooks":return(0,b.jsxs)("div",{className:"grid grid-cols-[1.2fr_1.2fr_0.8fr_1fr_0.5fr_40px] items-center gap-4 py-3 px-4",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-4/5"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-4/5"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-3 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-8"}),(0,b.jsx)(J.Skeleton,{className:"h-6 w-6 rounded"})]},`skeleton-row-${a}`);case"workflows":return(0,b.jsxs)("div",{className:"grid grid-cols-[1fr_1.5fr_0.5fr] items-center gap-4 py-3 px-4",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-4/5"}),(0,b.jsx)(J.Skeleton,{className:"h-5 w-16 rounded-full mx-auto"})]},`skeleton-row-${a}`);default:return null}})(d))]})})}function L({config:a,runId:c,onHookClick:d,selectedHookId:i}){let[t,w]=(0,p.useState)(()=>new Date),J=(0,p.useMemo)(()=>(0,G.worldConfigToEnvMap)(a),[a]),{data:L,error:M,nextPage:N,previousPage:O,hasNextPage:P,hasPreviousPage:Q,reload:R,pageInfo:S}=(0,e.useWorkflowHooks)(J,{runId:c,sortOrder:"desc"}),T=(0,f.useHookActions)({env:J,callbacks:{onSuccess:R}}),U=L.isLoading,V=L.data??[],[W,X]=(0,p.useState)(new Map);return(0,p.useEffect)(()=>{V.length&&(async()=>{let a=new Map;for(let b of V)a.set(b.hookId,{count:0,hasMore:!1,loading:!0});X(a);let b=await Promise.allSettled(V.map(async a=>{try{let b=await (0,g.fetchEventsByCorrelationId)(J,a.hookId,{sortOrder:"asc",limit:100});if(!b.success)return{hookId:a.hookId,count:Error(b.error?.message||"Failed to fetch events"),hasMore:!1};let c=b.data,d=c.data.filter(a=>"hook_received"===a.eventType).length;return{hookId:a.hookId,count:d,hasMore:c.hasMore}}catch(b){return{hookId:a.hookId,count:b,hasMore:!1}}}));X(a=>{let c=new Map(a);for(let a=0;a<b.length;a++){let d=b[a],e=V[a].hookId;"fulfilled"===d.status?c.set(d.value.hookId,{count:d.value.count,hasMore:d.value.hasMore,loading:!1}):c.set(e,{count:0,hasMore:!1,loading:!1})}return c})})()},[V,J]),(0,b.jsxs)("div",{children:[(0,b.jsx)(f.HookResolveModalWrapper,{hookActions:T}),(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-end gap-2",children:[(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"Last refreshed"}),t&&(0,b.jsx)(I.RelativeTime,{date:t,className:"text-sm text-muted-foreground",type:"distance"})]}),(0,b.jsx)("div",{className:"flex items-center gap-4",children:(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:()=>{w(()=>new Date),R()},disabled:U,children:[(0,b.jsx)(m,{className:U?"animate-spin":""}),"Refresh"]})}),(0,b.jsx)(F.TooltipContent,{children:"Note that this resets pages"})]})})]}),M?(0,b.jsxs)(r.Alert,{variant:"destructive",children:[(0,b.jsx)(h.AlertCircle,{className:"h-4 w-4"}),(0,b.jsx)(r.AlertTitle,{children:"Error loading hooks"}),(0,b.jsx)(r.AlertDescription,{children:(0,e.getErrorMessage)(M)})]}):U||V&&0!==V.length?U&&!L?.data?(0,b.jsx)(K,{variant:"hooks"}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{className:"overflow-hidden mt-4 bg-background",children:(0,b.jsx)(v,{className:"p-0 max-h-[calc(100vh-280px)] overflow-auto",children:(0,b.jsxs)(z,{children:[(0,b.jsx)(A,{children:(0,b.jsxs)(C,{children:[(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Hook ID"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Run ID"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Token"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Created"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Invocations"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10 w-10"})]})}),(0,b.jsx)(B,{children:V.map(a=>(0,b.jsxs)(C,{className:"cursor-pointer group relative",onClick:()=>d(a.hookId,a.runId),"data-selected":a.hookId===i,children:[(0,b.jsx)(E,{className:"font-mono text-xs py-2",children:(0,b.jsx)(H.CopyableText,{text:a.hookId,overlay:!0,children:a.hookId})}),(0,b.jsx)(E,{className:"font-mono text-xs py-2",children:(0,b.jsx)(H.CopyableText,{text:a.runId,overlay:!0,children:a.runId})}),(0,b.jsx)(E,{className:"font-mono text-xs py-2",children:(0,b.jsx)(H.CopyableText,{text:a.token,overlay:!0,children:(0,b.jsx)("span",{className:"text-muted-foreground",children:"••••••••••••"})})}),(0,b.jsx)(E,{className:"py-2 text-muted-foreground text-xs",children:a.createdAt?(0,b.jsx)(I.RelativeTime,{date:a.createdAt}):"-"}),(0,b.jsx)(E,{className:"py-2",children:(a=>{let c=W.get(a.hookId);if(!c||c.loading)return(0,b.jsx)("span",{className:"text-muted-foreground text-xs",children:"..."});if(c.count instanceof Error)return(0,b.jsx)("span",{className:"text-muted-foreground",children:"Error"});if(0===c.count)return(0,b.jsx)("span",{className:"text-muted-foreground",children:"0"});let d=c.hasMore?`${c.count}+`:`${c.count}`;return c.hasMore?(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"font-semibold cursor-help",children:d})}),(0,b.jsx)(F.TooltipContent,{className:"max-w-xs",children:(0,b.jsx)("div",{className:"text-xs",children:"Showing first 100 invocations. There may be more."})})]}):(0,b.jsx)("span",{className:"font-semibold",children:d})})(a)}),(0,b.jsx)(E,{className:"py-2",children:(0,b.jsxs)(y.DropdownMenu,{children:[(0,b.jsx)(y.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsx)(s.Button,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:a=>a.stopPropagation(),children:(0,b.jsx)(l.MoreHorizontal,{className:"h-4 w-4"})})}),(0,b.jsxs)(y.DropdownMenuContent,{align:"end",children:[(0,b.jsx)(f.ResolveHookDropdownItem,{hook:a,stopPropagation:!0,onResolveClick:T.openResolveModal,DropdownMenuItem:y.DropdownMenuItem}),(0,b.jsxs)(y.DropdownMenuItem,{onClick:async b=>{b.stopPropagation();try{let b=await (0,e.recreateRun)(J,a.runId);q.toast.success("New run started",{description:`Run ID: ${b}`}),R()}catch(a){q.toast.error("Failed to re-run",{description:a instanceof Error?a.message:"Unknown error"})}},children:[(0,b.jsx)(n.RotateCw,{className:"h-4 w-4 mr-2"}),"Replay Run"]}),(0,b.jsxs)(y.DropdownMenuItem,{onClick:async b=>{b.stopPropagation();try{await (0,e.cancelRun)(J,a.runId),q.toast.success("Run cancelled"),R()}catch(a){q.toast.error("Failed to cancel",{description:a instanceof Error?a.message:"Unknown error"})}},children:[(0,b.jsx)(o.XCircle,{className:"h-4 w-4 mr-2"}),"Cancel"]})]})]})})]},a.hookId))})]})})}),(0,b.jsxs)("div",{className:"flex items-center justify-between mt-4",children:[(0,b.jsx)("div",{className:"text-sm text-muted-foreground",children:S}),(0,b.jsxs)("div",{className:"flex gap-2 items-center",children:[(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:O,disabled:!Q,children:[(0,b.jsx)(j,{}),"Previous"]}),(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:N,disabled:!P,children:["Next",(0,b.jsx)(k.ChevronRight,{})]})]})]})]}):(0,b.jsxs)("div",{className:"text-center py-8 text-muted-foreground",children:["No active hooks found. ",(0,b.jsx)("br",{}),(0,b.jsx)(x,{href:"https://useworkflow.dev/docs/api-reference/workflow/create-hook",children:"Learn how to create a hook"})]})]})}var M=a.i(538015),N=a.i(343451),O=a.i(58761);let P=(0,i.default)("ArrowDownAZ",[["path",{d:"m3 16 4 4 4-4",key:"1co6wj"}],["path",{d:"M7 20V4",key:"1yoxec"}],["path",{d:"M20 8h-5",key:"1vsyxs"}],["path",{d:"M15 10V6.5a2.5 2.5 0 0 1 5 0V10",key:"ag13bf"}],["path",{d:"M15 14h5l-5 6h5",key:"ur5jdg"}]]),Q=(0,i.default)("ArrowUpAZ",[["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}],["path",{d:"M20 8h-5",key:"1vsyxs"}],["path",{d:"M15 10V6.5a2.5 2.5 0 0 1 5 0V10",key:"ag13bf"}],["path",{d:"M15 14h5l-5 6h5",key:"ur5jdg"}]]);var R=a.i(175196),S=a.i(84819),T=a.i(93354),U=a.i(303872);function V({env:a,runId:c,runStatus:d,onSuccess:e,showDebugActions:f}){let[g,h]=(0,p.useState)(void 0),[i,j]=(0,p.useState)(!0),[k,l]=(0,p.useState)(void 0),m=k?.status||d;return(0,p.useEffect)(()=>{j(!0),Promise.all([(0,O.fetchRun)(a,c,"none"),(0,N.fetchEvents)(a,c,{limit:1e3,sortOrder:"desc"})]).then(([a,b])=>{a.success&&l(a.data),b.success&&h(b.data.data)}).catch(a=>{console.error("Failed to fetch run or events:",a)}).finally(()=>{j(!1)})},[a,c]),(0,b.jsx)(U.RunActionsDropdownItems,{env:a,runId:c,runStatus:m,events:g,eventsLoading:i,stopPropagation:!0,callbacks:{onSuccess:e},showDebugActions:f})}function W({env:a,runId:c,runStatus:d,onSuccess:e,showDebugActions:f}){let[g,h]=(0,p.useState)(!1);return(0,b.jsxs)(y.DropdownMenu,{open:g,onOpenChange:h,children:[(0,b.jsx)(y.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsx)(s.Button,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:a=>a.stopPropagation(),children:(0,b.jsx)(l.MoreHorizontal,{className:"h-4 w-4"})})}),g&&(0,b.jsx)(y.DropdownMenuContent,{align:"end",children:(0,b.jsx)(V,{env:a,runId:c,runStatus:d,onSuccess:e,showDebugActions:f})})]})}let X={pending:{label:"Pending",color:"bg-neutral-600 dark:bg-neutral-400"},running:{label:"Running",color:"bg-blue-600 dark:bg-blue-400"},completed:{label:"Completed",color:"bg-green-600 dark:bg-green-400"},failed:{label:"Failed",color:"bg-red-600 dark:bg-red-400"},paused:{label:"Paused",color:"bg-yellow-600 dark:bg-yellow-400"},cancelled:{label:"Cancelled",color:"bg-gray-600 dark:bg-gray-400"}};function Y({workflowNameFilter:a,status:c,seenWorkflowNames:d,sortOrder:e,loading:f,statusFilterRequiresWorkflowNameFilter:g,onWorkflowChange:h,onStatusChange:i,onSortToggle:j,onRefresh:k,lastRefreshTime:l}){return(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-end gap-2",children:[(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"Last refreshed"}),l&&(0,b.jsx)(I.RelativeTime,{date:l,className:"text-sm text-muted-foreground",type:"distance"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-4",children:[(0,b.jsxs)(R.Select,{value:a??"all",onValueChange:h,disabled:f,children:[(0,b.jsx)(R.SelectTrigger,{className:"w-[180px] h-9",children:(0,b.jsx)(R.SelectValue,{placeholder:"Filter by workflow"})}),(0,b.jsxs)(R.SelectContent,{children:[(0,b.jsx)(R.SelectItem,{value:"all",children:"All Workflows"}),Array.from(d).sort().map(a=>(0,b.jsx)(R.SelectItem,{value:a,children:(0,M.parseWorkflowName)(a)?.shortName||a},a))]})]}),(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("div",{children:(0,b.jsxs)(R.Select,{value:c||"all",onValueChange:i,disabled:f||g&&!a,children:[(0,b.jsx)(R.SelectTrigger,{className:"w-[140px] h-9",children:(0,b.jsx)(R.SelectValue,{placeholder:"Filter by status"})}),(0,b.jsxs)(R.SelectContent,{children:[(0,b.jsx)(R.SelectItem,{value:"all",children:"Any status"}),Object.entries(X).map(([a,{label:c,color:d}])=>(0,b.jsx)(R.SelectItem,{value:a,children:(0,b.jsxs)("div",{className:"flex items-center",children:[(0,b.jsx)("span",{className:`${d} size-1.5 rounded-full mr-2`}),c]})},a))]})]})})}),(0,b.jsx)(F.TooltipContent,{children:g&&"all"===a?"Select a workflow first to filter by status":"Filter runs by status"})]}),(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:j,disabled:f,children:["desc"===e?(0,b.jsx)(P,{className:"h-4 w-4"}):(0,b.jsx)(Q,{className:"h-4 w-4"}),"desc"===e?"Newest":"Oldest"]})}),(0,b.jsx)(F.TooltipContent,{children:"desc"===e?"Showing newest first":"Showing oldest first"})]}),(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:k,disabled:f,children:[(0,b.jsx)(m,{className:f?"animate-spin":""}),"Refresh"]})}),(0,b.jsx)(F.TooltipContent,{children:"Note that this resets pages"})]})]})]})}function Z({config:a,onRunClick:c}){let f,g,i,l,m,n,o=(0,d.useSearchParams)(),q=(f=(0,d.useRouter)(),g=(0,d.usePathname)(),i=(0,d.useSearchParams)(),(0,p.useCallback)(a=>{let b=new URLSearchParams(i.toString());"all"===a?(b.delete("workflow"),b.delete("status")):b.set("workflow",a),f.push(`${g}?${b.toString()}`)},[f,g,i])),t=(l=(0,d.useRouter)(),m=(0,d.usePathname)(),n=(0,d.useSearchParams)(),(0,p.useCallback)(a=>{let b=new URLSearchParams(n.toString());"all"===a?b.delete("status"):b.set("status",a),l.push(`${m}?${b.toString()}`)},[l,m,n])),w=o.get("status"),x=Object.keys(X),y="all"===w||w&&x.includes(w)?w:void 0,F=o.get("workflow"),J="1"===o.get("debug"),[L,N]=(0,p.useState)("desc"),[O,P]=(0,p.useState)(()=>new Date),Q=(0,p.useMemo)(()=>(0,G.worldConfigToEnvMap)(a),[a]),R="local"===a.backend||!a.backend,{data:U,isLoading:V}=(0,S.useDataDirInfo)(a.dataDir),Z=a.backend?.includes("vercel")||!1,[$,_]=(0,p.useState)(new Set),{data:aa,error:ab,nextPage:ac,previousPage:ad,hasNextPage:ae,hasPreviousPage:af,reload:ag,pageInfo:ah}=(0,e.useWorkflowRuns)(Q,{sortOrder:L,workflowName:"all"===F?void 0:F,status:"all"===y?void 0:y}),ai=R&&(!U?.dataDir||!aa?.data?.length)&&!V;(0,p.useEffect)(()=>{if(aa.data&&aa.data.length>0){let a=new Set(aa.data.map(a=>a.workflowName));_(b=>{let c=new Set(b);for(let b of a)c.add(b);return c})}},[aa.data]);let aj=aa.isLoading,ak=(0,p.useCallback)(()=>{P(()=>new Date),ag()},[ag]);(0,p.useEffect)(()=>{if(ai){let a=setInterval(()=>{ak()},3e3);return()=>clearInterval(a)}},[ai,ak]);let al=(0,b.jsx)("code",{className:"font-mono",children:U?.shortName||"current directory"});return(0,b.jsxs)("div",{children:[(0,b.jsx)(Y,{workflowNameFilter:F,status:y,seenWorkflowNames:$,sortOrder:L,loading:aj,statusFilterRequiresWorkflowNameFilter:Z,onWorkflowChange:q,onStatusChange:t,onSortToggle:()=>{N(a=>"desc"===a?"asc":"desc")},onRefresh:ak,lastRefreshTime:O}),ab?(0,b.jsxs)(r.Alert,{variant:"destructive",children:[(0,b.jsx)(h.AlertCircle,{className:"h-4 w-4"}),(0,b.jsx)(r.AlertTitle,{children:"Error loading runs"}),(0,b.jsx)(r.AlertDescription,{children:(0,e.getErrorMessage)(ab)})]}):aj&&!aa?.data?(0,b.jsx)(K,{}):aj||aa.data&&0!==aa.data.length?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{className:"overflow-hidden mt-4 bg-background",children:(0,b.jsx)(v,{className:"p-0 max-h-[calc(100vh-280px)] overflow-auto",children:(0,b.jsxs)(z,{children:[(0,b.jsx)(A,{children:(0,b.jsxs)(C,{children:[(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Workflow"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Run ID"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Status"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Started"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Completed"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10 w-10"})]})}),(0,b.jsx)(B,{children:aa.data?.map(a=>(0,b.jsxs)(C,{className:"cursor-pointer group relative",onClick:()=>c(a.runId),children:[(0,b.jsx)(E,{className:"py-2",children:(0,b.jsx)(H.CopyableText,{text:a.workflowName,overlay:!0,children:(0,M.parseWorkflowName)(a.workflowName)?.shortName||"?"})}),(0,b.jsx)(E,{className:"font-mono text-xs py-2",children:(0,b.jsx)(H.CopyableText,{text:a.runId,overlay:!0,children:a.runId})}),(0,b.jsx)(E,{className:"py-2",children:(0,b.jsx)(T.StatusBadge,{status:a.status,context:a,durationMs:a.startedAt?(a.completedAt?new Date(a.completedAt).getTime():Date.now())-new Date(a.startedAt).getTime():void 0})}),(0,b.jsx)(E,{className:"py-2 text-muted-foreground text-xs",children:a.startedAt?(0,b.jsx)(I.RelativeTime,{date:a.startedAt}):"-"}),(0,b.jsx)(E,{className:"py-2 text-muted-foreground text-xs",children:a.completedAt?(0,b.jsx)(I.RelativeTime,{date:a.completedAt}):"-"}),(0,b.jsx)(E,{className:"py-2",children:(0,b.jsx)(W,{env:Q,runId:a.runId,runStatus:a.status,onSuccess:ak,showDebugActions:J})})]},a.runId))})]})})}),(0,b.jsxs)("div",{className:"flex items-center justify-between mt-4",children:[(0,b.jsx)("div",{className:"text-sm text-muted-foreground",children:ah}),(0,b.jsxs)("div",{className:"flex gap-2 items-center",children:[(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:ad,disabled:!af,children:[(0,b.jsx)(j,{}),"Previous"]}),(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:ac,disabled:!ae,children:["Next",(0,b.jsx)(k.ChevronRight,{})]})]})]})]}):(0,b.jsxs)("div",{className:"text-sm text-center py-8 text-muted-foreground flex flex-col items-center justify-center gap-3",children:[(0,b.jsxs)("span",{className:"text-sm",children:["No workflow runs found",ai?(0,b.jsxs)(b.Fragment,{children:[" in ",al]}):"","."]}),ai&&(0,b.jsx)("span",{className:"text-sm flex items-center gap-2",children:"This view will update once you run a workflow."})]})]})}var $=a.i(725538),_=a.i(60408);let aa=(0,i.default)("Workflow",[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]]);var ab=a.i(706998),ac=a.i(904730),ad=a.i(559653),ae=a.i(840861),af=a.i(333702),ag=a.i(192534),ah=a.i(984295),ai=a.i(443343),aj=a.i(665106),ak=a.i(549033),al=a.i(200866),am=a.i(518243),an=a.i(8930),ao=a.i(513358),ap=a.i(516164),aq=a.i(523776),ar="Dialog",[as,at]=(0,af.createContextScope)(ar),[au,av]=as(ar),aw=a=>{let{__scopeDialog:c,children:d,open:e,defaultOpen:f,onOpenChange:g,modal:h=!0}=a,i=p.useRef(null),j=p.useRef(null),[k,l]=(0,ah.useControllableState)({prop:e,defaultProp:f??!1,onChange:g,caller:ar});return(0,b.jsx)(au,{scope:c,triggerRef:i,contentRef:j,contentId:(0,ag.useId)(),titleId:(0,ag.useId)(),descriptionId:(0,ag.useId)(),open:k,onOpenChange:l,onOpenToggle:p.useCallback(()=>l(a=>!a),[l]),modal:h,children:d})};aw.displayName=ar;var ax="DialogTrigger";p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=av(ax,d),g=(0,ae.useComposedRefs)(c,f.triggerRef);return(0,b.jsx)(am.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":f.open,"aria-controls":f.contentId,"data-state":aR(f.open),...e,ref:g,onClick:(0,ad.composeEventHandlers)(a.onClick,f.onOpenToggle)})}).displayName=ax;var ay="DialogPortal",[az,aA]=as(ay,{forceMount:void 0}),aB=a=>{let{__scopeDialog:c,forceMount:d,children:e,container:f}=a,g=av(ay,c);return(0,b.jsx)(az,{scope:c,forceMount:d,children:p.Children.map(e,a=>(0,b.jsx)(al.Presence,{present:d||g.open,children:(0,b.jsx)(ak.Portal,{asChild:!0,container:f,children:a})}))})};aB.displayName=ay;var aC="DialogOverlay",aD=p.forwardRef((a,c)=>{let d=aA(aC,a.__scopeDialog),{forceMount:e=d.forceMount,...f}=a,g=av(aC,a.__scopeDialog);return g.modal?(0,b.jsx)(al.Presence,{present:e||g.open,children:(0,b.jsx)(aF,{...f,ref:c})}):null});aD.displayName=aC;var aE=(0,aq.createSlot)("DialogOverlay.RemoveScroll"),aF=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=av(aC,d);return(0,b.jsx)(ao.RemoveScroll,{as:aE,allowPinchZoom:!0,shards:[f.contentRef],children:(0,b.jsx)(am.Primitive.div,{"data-state":aR(f.open),...e,ref:c,style:{pointerEvents:"auto",...e.style}})})}),aG="DialogContent",aH=p.forwardRef((a,c)=>{let d=aA(aG,a.__scopeDialog),{forceMount:e=d.forceMount,...f}=a,g=av(aG,a.__scopeDialog);return(0,b.jsx)(al.Presence,{present:e||g.open,children:g.modal?(0,b.jsx)(aI,{...f,ref:c}):(0,b.jsx)(aJ,{...f,ref:c})})});aH.displayName=aG;var aI=p.forwardRef((a,c)=>{let d=av(aG,a.__scopeDialog),e=p.useRef(null),f=(0,ae.useComposedRefs)(c,d.contentRef,e);return p.useEffect(()=>{let a=e.current;if(a)return(0,ap.hideOthers)(a)},[]),(0,b.jsx)(aK,{...a,ref:f,trapFocus:d.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,ad.composeEventHandlers)(a.onCloseAutoFocus,a=>{a.preventDefault(),d.triggerRef.current?.focus()}),onPointerDownOutside:(0,ad.composeEventHandlers)(a.onPointerDownOutside,a=>{let b=a.detail.originalEvent,c=0===b.button&&!0===b.ctrlKey;(2===b.button||c)&&a.preventDefault()}),onFocusOutside:(0,ad.composeEventHandlers)(a.onFocusOutside,a=>a.preventDefault())})}),aJ=p.forwardRef((a,c)=>{let d=av(aG,a.__scopeDialog),e=p.useRef(!1),f=p.useRef(!1);return(0,b.jsx)(aK,{...a,ref:c,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:b=>{a.onCloseAutoFocus?.(b),b.defaultPrevented||(e.current||d.triggerRef.current?.focus(),b.preventDefault()),e.current=!1,f.current=!1},onInteractOutside:b=>{a.onInteractOutside?.(b),b.defaultPrevented||(e.current=!0,"pointerdown"===b.detail.originalEvent.type&&(f.current=!0));let c=b.target;d.triggerRef.current?.contains(c)&&b.preventDefault(),"focusin"===b.detail.originalEvent.type&&f.current&&b.preventDefault()}})}),aK=p.forwardRef((a,c)=>{let{__scopeDialog:d,trapFocus:e,onOpenAutoFocus:f,onCloseAutoFocus:g,...h}=a,i=av(aG,d),j=p.useRef(null),k=(0,ae.useComposedRefs)(c,j);return(0,an.useFocusGuards)(),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aj.FocusScope,{asChild:!0,loop:!0,trapped:e,onMountAutoFocus:f,onUnmountAutoFocus:g,children:(0,b.jsx)(ai.DismissableLayer,{role:"dialog",id:i.contentId,"aria-describedby":i.descriptionId,"aria-labelledby":i.titleId,"data-state":aR(i.open),...h,ref:k,onDismiss:()=>i.onOpenChange(!1)})}),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aV,{titleId:i.titleId}),(0,b.jsx)(aW,{contentRef:j,descriptionId:i.descriptionId})]})]})}),aL="DialogTitle",aM=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=av(aL,d);return(0,b.jsx)(am.Primitive.h2,{id:f.titleId,...e,ref:c})});aM.displayName=aL;var aN="DialogDescription",aO=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=av(aN,d);return(0,b.jsx)(am.Primitive.p,{id:f.descriptionId,...e,ref:c})});aO.displayName=aN;var aP="DialogClose",aQ=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=av(aP,d);return(0,b.jsx)(am.Primitive.button,{type:"button",...e,ref:c,onClick:(0,ad.composeEventHandlers)(a.onClick,()=>f.onOpenChange(!1))})});function aR(a){return a?"open":"closed"}aQ.displayName=aP;var aS="DialogTitleWarning",[aT,aU]=(0,af.createContext)(aS,{contentName:aG,titleName:aL,docsSlug:"dialog"}),aV=({titleId:a})=>{let b=aU(aS),c=`\`${b.contentName}\` requires a \`${b.titleName}\` for the component to be accessible for screen reader users.
|
|
1
|
+
module.exports=[762587,a=>{"use strict";var b=a.i(857446);a.i(580551);var c=a.i(285993),d=a.i(624282),e=a.i(721578),f=a.i(735835),g=a.i(901897),h=a.i(207973),i=a.i(622427);let j=(0,i.default)("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);var k=a.i(322178),l=a.i(139274);let m=(0,i.default)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);var n=a.i(630135),o=a.i(67659),p=a.i(253220),q=a.i(95811),r=a.i(135321),s=a.i(397494),t=a.i(676653);let u=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("rounded-lg border bg-card text-card-foreground shadow-sm",a),...c}));u.displayName="Card",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("flex flex-col space-y-1.5 p-6",a),...c})).displayName="CardHeader",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("text-2xl font-semibold leading-none tracking-tight",a),...c})).displayName="CardTitle",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("text-sm text-muted-foreground",a),...c})).displayName="CardDescription";let v=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("p-6 pt-0",a),...c}));v.displayName="CardContent",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{ref:d,className:(0,t.cn)("flex items-center p-6 pt-0",a),...c})).displayName="CardFooter";var w=a.i(315330);let x=p.forwardRef(({className:a,href:c,children:d,...e},f)=>{let g=c.startsWith("http")?c:`https://useworkflow.dev/docs/${c.replace(/^\//,"")}`;return(0,b.jsx)(w.default,{href:g,className:(0,t.cn)("font-medium underline underline-offset-4 transition-colors",a),style:{color:"var(--ds-blue-600)"},target:"_blank",rel:"noopener noreferrer",ref:f,...e,children:d})});x.displayName="DocsLink";var y=a.i(794851);let z=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("div",{className:"relative w-full overflow-auto",children:(0,b.jsx)("table",{ref:d,className:(0,t.cn)("w-full caption-bottom text-sm",a),...c})}));z.displayName="Table";let A=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("thead",{ref:d,className:(0,t.cn)("[&_tr]:border-b",a),...c}));A.displayName="TableHeader";let B=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("tbody",{ref:d,className:(0,t.cn)("[&_tr:last-child]:border-0",a),...c}));B.displayName="TableBody",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("tfoot",{ref:d,className:(0,t.cn)("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",a),...c})).displayName="TableFooter";let C=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("tr",{ref:d,className:(0,t.cn)("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",a),...c}));C.displayName="TableRow";let D=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("th",{ref:d,className:(0,t.cn)("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",a),...c}));D.displayName="TableHead";let E=p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("td",{ref:d,className:(0,t.cn)("p-4 align-middle [&:has([role=checkbox])]:pr-0",a),...c}));E.displayName="TableCell",p.forwardRef(({className:a,...c},d)=>(0,b.jsx)("caption",{ref:d,className:(0,t.cn)("mt-4 text-sm text-muted-foreground",a),...c})).displayName="TableCaption";var F=a.i(393557),G=a.i(508624),H=a.i(432320),I=a.i(315244),J=a.i(433105);function K({rows:a=t.DEFAULT_PAGE_SIZE,variant:c="runs"}){return(0,b.jsx)(u,{className:"overflow-hidden mt-4 bg-background",children:(0,b.jsxs)(v,{className:"p-0",children:[(()=>{switch(c){case"runs":return(0,b.jsxs)("div",{className:"grid grid-cols-[1fr_1.5fr_0.8fr_1fr_1fr_40px] items-center gap-4 py-3 px-4 border-b",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-20"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-14"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-12"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-14"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-20"}),(0,b.jsx)("div",{className:"w-6"})]});case"hooks":return(0,b.jsxs)("div",{className:"grid grid-cols-[1.2fr_1.2fr_0.8fr_1fr_0.5fr_40px] items-center gap-4 py-3 px-4 border-b",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-16"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-14"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-12"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-14"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-20"}),(0,b.jsx)("div",{className:"w-6"})]});case"workflows":return(0,b.jsxs)("div",{className:"grid grid-cols-[1fr_1.5fr_0.5fr] items-center gap-4 py-3 px-4 border-b",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-20"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-10"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-12 mx-auto"})]});default:return null}})(),Array.from({length:a},(a,d)=>(a=>{switch(c){case"runs":return(0,b.jsxs)("div",{className:"grid grid-cols-[1fr_1.5fr_0.8fr_1fr_1fr_40px] items-center gap-4 py-3 px-4",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-4/5"}),(0,b.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,b.jsx)(J.Skeleton,{className:"h-3 w-14"}),(0,b.jsx)(J.Skeleton,{className:"h-2 w-8"})]}),(0,b.jsx)(J.Skeleton,{className:"h-3 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-3 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-6 w-6 rounded"})]},`skeleton-row-${a}`);case"hooks":return(0,b.jsxs)("div",{className:"grid grid-cols-[1.2fr_1.2fr_0.8fr_1fr_0.5fr_40px] items-center gap-4 py-3 px-4",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-4/5"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-4/5"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-3 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-8"}),(0,b.jsx)(J.Skeleton,{className:"h-6 w-6 rounded"})]},`skeleton-row-${a}`);case"workflows":return(0,b.jsxs)("div",{className:"grid grid-cols-[1fr_1.5fr_0.5fr] items-center gap-4 py-3 px-4",children:[(0,b.jsx)(J.Skeleton,{className:"h-4 w-3/4"}),(0,b.jsx)(J.Skeleton,{className:"h-4 w-4/5"}),(0,b.jsx)(J.Skeleton,{className:"h-5 w-16 rounded-full mx-auto"})]},`skeleton-row-${a}`);default:return null}})(d))]})})}function L({config:a,runId:c,onHookClick:d,selectedHookId:i}){let[t,w]=(0,p.useState)(()=>new Date),J=(0,p.useMemo)(()=>(0,G.worldConfigToEnvMap)(a),[a]),{data:L,error:M,nextPage:N,previousPage:O,hasNextPage:P,hasPreviousPage:Q,reload:R,pageInfo:S}=(0,e.useWorkflowHooks)(J,{runId:c,sortOrder:"desc"}),T=(0,f.useHookActions)({env:J,callbacks:{onSuccess:R}}),U=L.isLoading,V=L.data??[],[W,X]=(0,p.useState)(new Map);return(0,p.useEffect)(()=>{V.length&&(async()=>{let a=new Map;for(let b of V)a.set(b.hookId,{count:0,hasMore:!1,loading:!0});X(a);let b=await Promise.allSettled(V.map(async a=>{try{let b=await (0,g.fetchEventsByCorrelationId)(J,a.hookId,{sortOrder:"asc",limit:100});if(!b.success)return{hookId:a.hookId,count:Error(b.error?.message||"Failed to fetch events"),hasMore:!1};let c=b.data,d=c.data.filter(a=>"hook_received"===a.eventType).length;return{hookId:a.hookId,count:d,hasMore:c.hasMore}}catch(b){return{hookId:a.hookId,count:b,hasMore:!1}}}));X(a=>{let c=new Map(a);for(let a=0;a<b.length;a++){let d=b[a],e=V[a].hookId;"fulfilled"===d.status?c.set(d.value.hookId,{count:d.value.count,hasMore:d.value.hasMore,loading:!1}):c.set(e,{count:0,hasMore:!1,loading:!1})}return c})})()},[V,J]),(0,b.jsxs)("div",{children:[(0,b.jsx)(f.HookResolveModalWrapper,{hookActions:T}),(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-end gap-2",children:[(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"Last refreshed"}),t&&(0,b.jsx)(I.RelativeTime,{date:t,className:"text-sm text-muted-foreground",type:"distance"})]}),(0,b.jsx)("div",{className:"flex items-center gap-4",children:(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:()=>{w(()=>new Date),R()},disabled:U,children:[(0,b.jsx)(m,{className:U?"animate-spin":""}),"Refresh"]})}),(0,b.jsx)(F.TooltipContent,{children:"Note that this resets pages"})]})})]}),M?(0,b.jsxs)(r.Alert,{variant:"destructive",children:[(0,b.jsx)(h.AlertCircle,{className:"h-4 w-4"}),(0,b.jsx)(r.AlertTitle,{children:"Error loading hooks"}),(0,b.jsx)(r.AlertDescription,{children:(0,e.getErrorMessage)(M)})]}):U||V&&0!==V.length?U&&!L?.data?(0,b.jsx)(K,{variant:"hooks"}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{className:"overflow-hidden mt-4 bg-background",children:(0,b.jsx)(v,{className:"p-0 max-h-[calc(100vh-280px)] overflow-auto",children:(0,b.jsxs)(z,{children:[(0,b.jsx)(A,{children:(0,b.jsxs)(C,{children:[(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Hook ID"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Run ID"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Token"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Created"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Invocations"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10 w-10"})]})}),(0,b.jsx)(B,{children:V.map(a=>(0,b.jsxs)(C,{className:"cursor-pointer group relative",onClick:()=>d(a.hookId,a.runId),"data-selected":a.hookId===i,children:[(0,b.jsx)(E,{className:"font-mono text-xs py-2",children:(0,b.jsx)(H.CopyableText,{text:a.hookId,overlay:!0,children:a.hookId})}),(0,b.jsx)(E,{className:"font-mono text-xs py-2",children:(0,b.jsx)(H.CopyableText,{text:a.runId,overlay:!0,children:a.runId})}),(0,b.jsx)(E,{className:"font-mono text-xs py-2",children:(0,b.jsx)(H.CopyableText,{text:a.token,overlay:!0,children:(0,b.jsx)("span",{className:"text-muted-foreground",children:"••••••••••••"})})}),(0,b.jsx)(E,{className:"py-2 text-muted-foreground text-xs",children:a.createdAt?(0,b.jsx)(I.RelativeTime,{date:a.createdAt}):"-"}),(0,b.jsx)(E,{className:"py-2",children:(a=>{let c=W.get(a.hookId);if(!c||c.loading)return(0,b.jsx)("span",{className:"text-muted-foreground text-xs",children:"..."});if(c.count instanceof Error)return(0,b.jsx)("span",{className:"text-muted-foreground",children:"Error"});if(0===c.count)return(0,b.jsx)("span",{className:"text-muted-foreground",children:"0"});let d=c.hasMore?`${c.count}+`:`${c.count}`;return c.hasMore?(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("span",{className:"font-semibold cursor-help",children:d})}),(0,b.jsx)(F.TooltipContent,{className:"max-w-xs",children:(0,b.jsx)("div",{className:"text-xs",children:"Showing first 100 invocations. There may be more."})})]}):(0,b.jsx)("span",{className:"font-semibold",children:d})})(a)}),(0,b.jsx)(E,{className:"py-2",children:(0,b.jsxs)(y.DropdownMenu,{children:[(0,b.jsx)(y.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsx)(s.Button,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:a=>a.stopPropagation(),children:(0,b.jsx)(l.MoreHorizontal,{className:"h-4 w-4"})})}),(0,b.jsxs)(y.DropdownMenuContent,{align:"end",children:[(0,b.jsx)(f.ResolveHookDropdownItem,{hook:a,stopPropagation:!0,onResolveClick:T.openResolveModal,DropdownMenuItem:y.DropdownMenuItem}),(0,b.jsxs)(y.DropdownMenuItem,{onClick:async b=>{b.stopPropagation();try{let b=await (0,e.recreateRun)(J,a.runId);q.toast.success("New run started",{description:`Run ID: ${b}`}),R()}catch(a){q.toast.error("Failed to re-run",{description:a instanceof Error?a.message:"Unknown error"})}},children:[(0,b.jsx)(n.RotateCw,{className:"h-4 w-4 mr-2"}),"Replay Run"]}),(0,b.jsxs)(y.DropdownMenuItem,{onClick:async b=>{b.stopPropagation();try{await (0,e.cancelRun)(J,a.runId),q.toast.success("Run cancelled"),R()}catch(a){q.toast.error("Failed to cancel",{description:a instanceof Error?a.message:"Unknown error"})}},children:[(0,b.jsx)(o.XCircle,{className:"h-4 w-4 mr-2"}),"Cancel"]})]})]})})]},a.hookId))})]})})}),(0,b.jsxs)("div",{className:"flex items-center justify-between mt-4",children:[(0,b.jsx)("div",{className:"text-sm text-muted-foreground",children:S}),(0,b.jsxs)("div",{className:"flex gap-2 items-center",children:[(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:O,disabled:!Q,children:[(0,b.jsx)(j,{}),"Previous"]}),(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:N,disabled:!P,children:["Next",(0,b.jsx)(k.ChevronRight,{})]})]})]})]}):(0,b.jsxs)("div",{className:"text-center py-8 text-muted-foreground",children:["No active hooks found. ",(0,b.jsx)("br",{}),(0,b.jsx)(x,{href:"https://useworkflow.dev/docs/api-reference/workflow/create-hook",children:"Learn how to create a hook"})]})]})}var M=a.i(538015),N=a.i(353384),O=a.i(553080);let P=(0,i.default)("ArrowDownAZ",[["path",{d:"m3 16 4 4 4-4",key:"1co6wj"}],["path",{d:"M7 20V4",key:"1yoxec"}],["path",{d:"M20 8h-5",key:"1vsyxs"}],["path",{d:"M15 10V6.5a2.5 2.5 0 0 1 5 0V10",key:"ag13bf"}],["path",{d:"M15 14h5l-5 6h5",key:"ur5jdg"}]]),Q=(0,i.default)("ArrowUpAZ",[["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}],["path",{d:"M20 8h-5",key:"1vsyxs"}],["path",{d:"M15 10V6.5a2.5 2.5 0 0 1 5 0V10",key:"ag13bf"}],["path",{d:"M15 14h5l-5 6h5",key:"ur5jdg"}]]);var R=a.i(302260),S=a.i(175196),T=a.i(84819),U=a.i(26790);function V({selectionCount:a,onClearSelection:c,actions:d,itemLabel:e="items",className:f}){if(0===a)return null;let g=1===a?e.replace(/s$/,""):e;return(0,b.jsxs)("div",{className:(0,t.cn)("fixed bottom-6 left-1/2 -translate-x-1/2 z-50","flex items-center gap-3 px-4 py-2.5 rounded-lg","bg-primary text-primary-foreground shadow-lg","animate-in fade-in slide-in-from-bottom-4 duration-200",f),children:[(0,b.jsxs)("span",{className:"text-sm font-medium",children:[a," ",g," selected"]}),d&&(0,b.jsx)("div",{className:"flex items-center gap-2 border-l border-primary-foreground/20 pl-3",children:d}),(0,b.jsxs)(s.Button,{variant:"ghost",size:"sm",className:"h-7 px-2 text-primary-foreground hover:bg-primary-foreground/10 hover:text-primary-foreground",onClick:c,children:[(0,b.jsx)(U.X,{className:"h-4 w-4"}),(0,b.jsx)("span",{className:"sr-only",children:"Clear selection"})]})]})}var W=a.i(93354),X=a.i(303872),Y=a.i(784145),Z=a.i(600980),$=a.i(338032),_=a.i(926133),aa=a.i(532718),ab=a.i(496443),ac=a.i(925182),ad="Checkbox",[ae,af]=(0,Z.createContextScope)(ad),[ag,ah]=ae(ad),ai=p.forwardRef((a,c)=>{let{__scopeCheckbox:d,name:e,checked:f,defaultChecked:g,required:h,disabled:i,value:j="on",onCheckedChange:k,form:l,...m}=a,[n,o]=p.useState(null),q=(0,Y.useComposedRefs)(c,a=>o(a)),r=p.useRef(!1),s=!n||l||!!n.closest("form"),[t=!1,u]=(0,_.useControllableState)({prop:f,defaultProp:g,onChange:k}),v=p.useRef(t);return p.useEffect(()=>{let a=n?.form;if(a){let b=()=>u(v.current);return a.addEventListener("reset",b),()=>a.removeEventListener("reset",b)}},[n,u]),(0,b.jsxs)(ag,{scope:d,state:t,disabled:i,children:[(0,b.jsx)(ac.Primitive.button,{type:"button",role:"checkbox","aria-checked":am(t)?"mixed":t,"aria-required":h,"data-state":an(t),"data-disabled":i?"":void 0,disabled:i,value:j,...m,ref:q,onKeyDown:(0,$.composeEventHandlers)(a.onKeyDown,a=>{"Enter"===a.key&&a.preventDefault()}),onClick:(0,$.composeEventHandlers)(a.onClick,a=>{u(a=>!!am(a)||!a),s&&(r.current=a.isPropagationStopped(),r.current||a.stopPropagation())})}),s&&(0,b.jsx)(al,{control:n,bubbles:!r.current,name:e,value:j,checked:t,required:h,disabled:i,form:l,style:{transform:"translateX(-100%)"},defaultChecked:!am(g)&&g})]})});ai.displayName=ad;var aj="CheckboxIndicator",ak=p.forwardRef((a,c)=>{let{__scopeCheckbox:d,forceMount:e,...f}=a,g=ah(aj,d);return(0,b.jsx)(ab.Presence,{present:e||am(g.state)||!0===g.state,children:(0,b.jsx)(ac.Primitive.span,{"data-state":an(g.state),"data-disabled":g.disabled?"":void 0,...f,ref:c,style:{pointerEvents:"none",...a.style}})})});ak.displayName=aj;var al=a=>{let c,{control:d,checked:e,bubbles:f=!0,defaultChecked:g,...h}=a,i=p.useRef(null),j=(c=p.useRef({value:e,previous:e}),p.useMemo(()=>(c.current.value!==e&&(c.current.previous=c.current.value,c.current.value=e),c.current.previous),[e])),k=(0,aa.useSize)(d);p.useEffect(()=>{let a=i.current,b=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set;if(j!==e&&b){let c=new Event("click",{bubbles:f});a.indeterminate=am(e),b.call(a,!am(e)&&e),a.dispatchEvent(c)}},[j,e,f]);let l=p.useRef(!am(e)&&e);return(0,b.jsx)("input",{type:"checkbox","aria-hidden":!0,defaultChecked:g??l.current,...h,tabIndex:-1,ref:i,style:{...a.style,...k,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})};function am(a){return"indeterminate"===a}function an(a){return am(a)?"indeterminate":a?"checked":"unchecked"}var ao=a.i(602774);let ap=(0,i.default)("Minus",[["path",{d:"M5 12h14",key:"1ays0h"}]]),aq=p.forwardRef(({className:a,checked:c,indeterminate:d,onCheckedChange:e,...f},g)=>{let h=p.useId(),i=f.id??h;return(0,b.jsx)("label",{htmlFor:i,className:"p-2 -m-2 inline-flex items-center justify-center cursor-pointer",onClick:a=>a.stopPropagation(),onKeyDown:a=>a.stopPropagation(),children:(0,b.jsx)(ai,{ref:g,id:i,checked:d?"indeterminate":c??!1,onCheckedChange:a=>{e?.(!0===a)},className:(0,t.cn)("peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background","disabled:cursor-not-allowed disabled:opacity-50","data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground","data-[state=indeterminate]:bg-primary data-[state=indeterminate]:text-primary-foreground",a),...f,children:(0,b.jsx)(ak,{className:"flex items-center justify-center text-current",children:d?(0,b.jsx)(ap,{className:"h-3.5 w-3.5"}):(0,b.jsx)(ao.Check,{className:"h-3.5 w-3.5"})})})})});function ar({env:a,runId:c,runStatus:d,onSuccess:e,showDebugActions:f}){let[g,h]=(0,p.useState)(void 0),[i,j]=(0,p.useState)(!0),[k,l]=(0,p.useState)(void 0),m=k?.status||d;return(0,p.useEffect)(()=>{j(!0),Promise.all([(0,O.fetchRun)(a,c,"none"),(0,N.fetchEvents)(a,c,{limit:1e3,sortOrder:"desc"})]).then(([a,b])=>{a.success&&l(a.data),b.success&&h(b.data.data)}).catch(a=>{console.error("Failed to fetch run or events:",a)}).finally(()=>{j(!1)})},[a,c]),(0,b.jsx)(X.RunActionsDropdownItems,{env:a,runId:c,runStatus:m,events:g,eventsLoading:i,stopPropagation:!0,callbacks:{onSuccess:e},showDebugActions:f})}function as({env:a,runId:c,runStatus:d,onSuccess:e,showDebugActions:f}){let[g,h]=(0,p.useState)(!1);return(0,b.jsxs)(y.DropdownMenu,{open:g,onOpenChange:h,children:[(0,b.jsx)(y.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsx)(s.Button,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:a=>a.stopPropagation(),children:(0,b.jsx)(l.MoreHorizontal,{className:"h-4 w-4"})})}),g&&(0,b.jsx)(y.DropdownMenuContent,{align:"end",children:(0,b.jsx)(ar,{env:a,runId:c,runStatus:d,onSuccess:e,showDebugActions:f})})]})}aq.displayName="Checkbox";let at={pending:{label:"Pending",color:"bg-neutral-600 dark:bg-neutral-400"},running:{label:"Running",color:"bg-blue-600 dark:bg-blue-400"},completed:{label:"Completed",color:"bg-green-600 dark:bg-green-400"},failed:{label:"Failed",color:"bg-red-600 dark:bg-red-400"},paused:{label:"Paused",color:"bg-yellow-600 dark:bg-yellow-400"},cancelled:{label:"Cancelled",color:"bg-gray-600 dark:bg-gray-400"}};function au({workflowNameFilter:a,status:c,seenWorkflowNames:d,sortOrder:e,loading:f,statusFilterRequiresWorkflowNameFilter:g,onWorkflowChange:h,onStatusChange:i,onSortToggle:j,onRefresh:k,lastRefreshTime:l}){return(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-end gap-2",children:[(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"Last refreshed"}),l&&(0,b.jsx)(I.RelativeTime,{date:l,className:"text-sm text-muted-foreground",type:"distance"})]}),(0,b.jsxs)("div",{className:"flex items-center gap-4",children:[(0,b.jsxs)(S.Select,{value:a??"all",onValueChange:h,disabled:f,children:[(0,b.jsx)(S.SelectTrigger,{className:"w-[180px] h-9",children:(0,b.jsx)(S.SelectValue,{placeholder:"Filter by workflow"})}),(0,b.jsxs)(S.SelectContent,{children:[(0,b.jsx)(S.SelectItem,{value:"all",children:"All Workflows"}),Array.from(d).sort().map(a=>(0,b.jsx)(S.SelectItem,{value:a,children:(0,M.parseWorkflowName)(a)?.shortName||a},a))]})]}),(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{asChild:!0,children:(0,b.jsx)("div",{children:(0,b.jsxs)(S.Select,{value:c||"all",onValueChange:i,disabled:f||g&&!a,children:[(0,b.jsx)(S.SelectTrigger,{className:"w-[140px] h-9",children:(0,b.jsx)(S.SelectValue,{placeholder:"Filter by status"})}),(0,b.jsxs)(S.SelectContent,{children:[(0,b.jsx)(S.SelectItem,{value:"all",children:"Any status"}),Object.entries(at).map(([a,{label:c,color:d}])=>(0,b.jsx)(S.SelectItem,{value:a,children:(0,b.jsxs)("div",{className:"flex items-center",children:[(0,b.jsx)("span",{className:`${d} size-1.5 rounded-full mr-2`}),c]})},a))]})]})})}),(0,b.jsx)(F.TooltipContent,{children:g&&"all"===a?"Select a workflow first to filter by status":"Filter runs by status"})]}),(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:j,disabled:f,children:["desc"===e?(0,b.jsx)(P,{className:"h-4 w-4"}):(0,b.jsx)(Q,{className:"h-4 w-4"}),"desc"===e?"Newest":"Oldest"]})}),(0,b.jsx)(F.TooltipContent,{children:"desc"===e?"Showing newest first":"Showing oldest first"})]}),(0,b.jsxs)(F.Tooltip,{children:[(0,b.jsx)(F.TooltipTrigger,{asChild:!0,children:(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:k,disabled:f,children:[(0,b.jsx)(m,{className:f?"animate-spin":""}),"Refresh"]})}),(0,b.jsx)(F.TooltipContent,{children:"Note that this resets pages"})]})]})]})}function av({config:a,onRunClick:c}){let f,g,i,l,m,n,t=(0,d.useSearchParams)(),w=(f=(0,d.useRouter)(),g=(0,d.usePathname)(),i=(0,d.useSearchParams)(),(0,p.useCallback)(a=>{let b=new URLSearchParams(i.toString());"all"===a?(b.delete("workflow"),b.delete("status")):b.set("workflow",a),f.push(`${g}?${b.toString()}`)},[f,g,i])),x=(l=(0,d.useRouter)(),m=(0,d.usePathname)(),n=(0,d.useSearchParams)(),(0,p.useCallback)(a=>{let b=new URLSearchParams(n.toString());"all"===a?b.delete("status"):b.set("status",a),l.push(`${m}?${b.toString()}`)},[l,m,n])),y=t.get("status"),F=Object.keys(at),J="all"===y||y&&F.includes(y)?y:void 0,L=t.get("workflow"),N="1"===t.get("debug"),[O,P]=(0,p.useState)("desc"),[Q,S]=(0,p.useState)(()=>new Date),U=(0,p.useMemo)(()=>(0,G.worldConfigToEnvMap)(a),[a]),X="local"===a.backend||!a.backend,{data:Y,isLoading:Z}=(0,T.useDataDirInfo)(a.dataDir),$=a.backend?.includes("vercel")||!1,[_,aa]=(0,p.useState)(new Set),{data:ab,error:ac,nextPage:ad,previousPage:ae,hasNextPage:af,hasPreviousPage:ag,reload:ah,pageInfo:ai}=(0,e.useWorkflowRuns)(U,{sortOrder:O,workflowName:"all"===L?void 0:L,status:"all"===J?void 0:J}),aj=function({getItemId:a}){let[b,c]=(0,p.useState)(new Set),d=(0,p.useCallback)(c=>b.has(a(c)),[b,a]),e=(0,p.useCallback)(b=>{let d=a(b);c(a=>{let b=new Set(a);return b.has(d)?b.delete(d):b.add(d),b})},[a]),f=(0,p.useCallback)(b=>{c(new Set(b.map(a)))},[a]),g=(0,p.useCallback)(()=>{c(new Set)},[]),h=(0,p.useCallback)(c=>0!==c.length&&c.every(c=>b.has(a(c))),[b,a]),i=(0,p.useCallback)(c=>{if(0===c.length)return!1;let d=c.some(c=>b.has(a(c))),e=c.every(c=>b.has(a(c)));return d&&!e},[b,a]),j=(0,p.useCallback)(a=>{h(a)?g():f(a)},[h,g,f]),k=(0,p.useCallback)(a=>{c(b=>{let c=new Set(b);return c.add(a),c})},[]),l=(0,p.useCallback)(a=>{c(b=>{let c=new Set(b);return c.delete(a),c})},[]),m=b.size;return(0,p.useMemo)(()=>({selectedIds:b,isSelected:d,toggleSelection:e,selectAll:f,clearSelection:g,toggleSelectAll:j,selectionCount:m,isAllSelected:h,isSomeSelected:i,selectById:k,deselectById:l}),[b,d,e,f,g,j,m,h,i,k,l])}({getItemId:a=>a.runId}),ak=ab.data??[],[al,am]=(0,p.useState)(!1),an=X&&(!Y?.dataDir||!ab?.data?.length)&&!Z;(0,p.useEffect)(()=>{if(ab.data&&ab.data.length>0){let a=new Set(ab.data.map(a=>a.workflowName));aa(b=>{let c=new Set(b);for(let b of a)c.add(b);return c})}},[ab.data]);let ao=ab.isLoading,ap=(0,p.useCallback)(()=>{S(()=>new Date),ah()},[ah]),ar=(0,p.useMemo)(()=>ak.filter(a=>aj.selectedIds.has(a.runId)),[ak,aj.selectedIds]),av=(0,p.useMemo)(()=>ar.filter(a=>"pending"===a.status||"running"===a.status),[ar]),aw=av.length>0,ax=(0,p.useCallback)(async()=>{if(!al&&0!==av.length){am(!0);try{let a=await Promise.allSettled(av.map(a=>(0,e.cancelRun)(U,a.runId))),b=a.filter(a=>"fulfilled"===a.status).length,c=a.filter(a=>"rejected"===a.status).length;0===c?q.toast.success(`Cancelled ${b} run${1!==b?"s":""}`):0===b?q.toast.error(`Failed to cancel ${c} run${1!==c?"s":""}`):q.toast.warning(`Cancelled ${b} run${1!==b?"s":""}, ${c} failed`),aj.clearSelection(),ap()}catch(a){q.toast.error("Failed to cancel runs",{description:a instanceof Error?a.message:"Unknown error"})}finally{am(!1)}}},[U,av,al,aj,ap]);(0,p.useEffect)(()=>{if(an){let a=setInterval(()=>{ap()},3e3);return()=>clearInterval(a)}},[an,ap]),(0,p.useEffect)(()=>{let a=()=>{"visible"===document.visibilityState&&Q&&Date.now()-Q.getTime()>=1e4&&ap()};return document.addEventListener("visibilitychange",a),()=>{document.removeEventListener("visibilitychange",a)}},[Q,ap]);let ay=(0,b.jsx)("code",{className:"font-mono",children:Y?.shortName||"current directory"});return(0,b.jsxs)("div",{children:[(0,b.jsx)(au,{workflowNameFilter:L,status:J,seenWorkflowNames:_,sortOrder:O,loading:ao,statusFilterRequiresWorkflowNameFilter:$,onWorkflowChange:w,onStatusChange:x,onSortToggle:()=>{P(a=>"desc"===a?"asc":"desc")},onRefresh:ap,lastRefreshTime:Q}),ac?(0,b.jsxs)(r.Alert,{variant:"destructive",children:[(0,b.jsx)(h.AlertCircle,{className:"h-4 w-4"}),(0,b.jsx)(r.AlertTitle,{children:"Error loading runs"}),(0,b.jsx)(r.AlertDescription,{children:(0,e.getErrorMessage)(ac)})]}):ao&&!ab?.data?(0,b.jsx)(K,{}):ao||ab.data&&0!==ab.data.length?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{className:"overflow-hidden mt-4 bg-background",children:(0,b.jsx)(v,{className:"p-0 max-h-[calc(100vh-280px)] overflow-auto",children:(0,b.jsxs)(z,{children:[(0,b.jsx)(A,{children:(0,b.jsxs)(C,{children:[(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10 w-10",children:(0,b.jsx)(aq,{checked:aj.isAllSelected(ak),indeterminate:aj.isSomeSelected(ak),onCheckedChange:()=>aj.toggleSelectAll(ak),"aria-label":"Select all runs"})}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Workflow"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Run ID"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Status"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Started"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Completed"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10 w-10"})]})}),(0,b.jsx)(B,{children:ak.map(a=>(0,b.jsxs)(C,{className:"cursor-pointer group relative",onClick:()=>c(a.runId),"data-selected":aj.isSelected(a),children:[(0,b.jsx)(E,{className:"py-2",children:(0,b.jsx)(aq,{checked:aj.isSelected(a),onCheckedChange:()=>aj.toggleSelection(a),"aria-label":`Select run ${a.runId}`})}),(0,b.jsx)(E,{className:"py-2",children:(0,b.jsx)(H.CopyableText,{text:a.workflowName,overlay:!0,children:(0,M.parseWorkflowName)(a.workflowName)?.shortName||"?"})}),(0,b.jsx)(E,{className:"font-mono text-xs py-2",children:(0,b.jsx)(H.CopyableText,{text:a.runId,overlay:!0,children:a.runId})}),(0,b.jsx)(E,{className:"py-2",children:(0,b.jsx)(W.StatusBadge,{status:a.status,context:a,durationMs:a.startedAt?(a.completedAt?new Date(a.completedAt).getTime():Date.now())-new Date(a.startedAt).getTime():void 0})}),(0,b.jsx)(E,{className:"py-2 text-muted-foreground text-xs",children:a.startedAt?(0,b.jsx)(I.RelativeTime,{date:a.startedAt}):"-"}),(0,b.jsx)(E,{className:"py-2 text-muted-foreground text-xs",children:a.completedAt?(0,b.jsx)(I.RelativeTime,{date:a.completedAt}):"-"}),(0,b.jsx)(E,{className:"py-2",children:(0,b.jsx)(as,{env:U,runId:a.runId,runStatus:a.status,onSuccess:ap,showDebugActions:N})})]},a.runId))})]})})}),(0,b.jsxs)("div",{className:"flex items-center justify-between mt-4",children:[(0,b.jsx)("div",{className:"text-sm text-muted-foreground",children:ai}),(0,b.jsxs)("div",{className:"flex gap-2 items-center",children:[(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:ae,disabled:!ag,children:[(0,b.jsx)(j,{}),"Previous"]}),(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:ad,disabled:!af,children:["Next",(0,b.jsx)(k.ChevronRight,{})]})]})]})]}):(0,b.jsxs)("div",{className:"text-sm text-center py-8 text-muted-foreground flex flex-col items-center justify-center gap-3",children:[(0,b.jsxs)("span",{className:"text-sm",children:["No workflow runs found",an?(0,b.jsxs)(b.Fragment,{children:[" in ",ay]}):"","."]}),an&&(0,b.jsx)("span",{className:"text-sm flex items-center gap-2",children:"This view will update once you run a workflow."})]}),(0,b.jsx)(V,{selectionCount:aj.selectionCount,onClearSelection:aj.clearSelection,itemLabel:"runs",actions:aw&&(0,b.jsxs)(s.Button,{variant:"ghost",size:"sm",className:"h-7 text-primary-foreground hover:bg-primary-foreground/10 hover:text-primary-foreground",onClick:ax,disabled:al,children:[al?(0,b.jsx)(R.Loader2,{className:"h-4 w-4 mr-1 animate-spin"}):(0,b.jsx)(o.XCircle,{className:"h-4 w-4 mr-1"}),"Cancel"," ",av.length!==aj.selectionCount?`${av.length} `:"",al?"cancelling...":""]})})]})}var aw=a.i(725538);a.i(92552);var ax=a.i(487582),ay=a.i(60408);let az=(0,i.default)("Workflow",[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]]);var aA=a.i(706998),aB=a.i(904730),aC=a.i(559653),aD=a.i(840861),aE=a.i(333702),aF=a.i(192534),aG=a.i(984295),aH=a.i(443343),aI=a.i(665106),aJ=a.i(549033),aK=a.i(200866),aL=a.i(518243),aM=a.i(8930),aN=a.i(513358),aO=a.i(516164),aP=a.i(523776),aQ="Dialog",[aR,aS]=(0,aE.createContextScope)(aQ),[aT,aU]=aR(aQ),aV=a=>{let{__scopeDialog:c,children:d,open:e,defaultOpen:f,onOpenChange:g,modal:h=!0}=a,i=p.useRef(null),j=p.useRef(null),[k,l]=(0,aG.useControllableState)({prop:e,defaultProp:f??!1,onChange:g,caller:aQ});return(0,b.jsx)(aT,{scope:c,triggerRef:i,contentRef:j,contentId:(0,aF.useId)(),titleId:(0,aF.useId)(),descriptionId:(0,aF.useId)(),open:k,onOpenChange:l,onOpenToggle:p.useCallback(()=>l(a=>!a),[l]),modal:h,children:d})};aV.displayName=aQ;var aW="DialogTrigger";p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=aU(aW,d),g=(0,aD.useComposedRefs)(c,f.triggerRef);return(0,b.jsx)(aL.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":f.open,"aria-controls":f.contentId,"data-state":be(f.open),...e,ref:g,onClick:(0,aC.composeEventHandlers)(a.onClick,f.onOpenToggle)})}).displayName=aW;var aX="DialogPortal",[aY,aZ]=aR(aX,{forceMount:void 0}),a$=a=>{let{__scopeDialog:c,forceMount:d,children:e,container:f}=a,g=aU(aX,c);return(0,b.jsx)(aY,{scope:c,forceMount:d,children:p.Children.map(e,a=>(0,b.jsx)(aK.Presence,{present:d||g.open,children:(0,b.jsx)(aJ.Portal,{asChild:!0,container:f,children:a})}))})};a$.displayName=aX;var a_="DialogOverlay",a0=p.forwardRef((a,c)=>{let d=aZ(a_,a.__scopeDialog),{forceMount:e=d.forceMount,...f}=a,g=aU(a_,a.__scopeDialog);return g.modal?(0,b.jsx)(aK.Presence,{present:e||g.open,children:(0,b.jsx)(a2,{...f,ref:c})}):null});a0.displayName=a_;var a1=(0,aP.createSlot)("DialogOverlay.RemoveScroll"),a2=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=aU(a_,d);return(0,b.jsx)(aN.RemoveScroll,{as:a1,allowPinchZoom:!0,shards:[f.contentRef],children:(0,b.jsx)(aL.Primitive.div,{"data-state":be(f.open),...e,ref:c,style:{pointerEvents:"auto",...e.style}})})}),a3="DialogContent",a4=p.forwardRef((a,c)=>{let d=aZ(a3,a.__scopeDialog),{forceMount:e=d.forceMount,...f}=a,g=aU(a3,a.__scopeDialog);return(0,b.jsx)(aK.Presence,{present:e||g.open,children:g.modal?(0,b.jsx)(a5,{...f,ref:c}):(0,b.jsx)(a6,{...f,ref:c})})});a4.displayName=a3;var a5=p.forwardRef((a,c)=>{let d=aU(a3,a.__scopeDialog),e=p.useRef(null),f=(0,aD.useComposedRefs)(c,d.contentRef,e);return p.useEffect(()=>{let a=e.current;if(a)return(0,aO.hideOthers)(a)},[]),(0,b.jsx)(a7,{...a,ref:f,trapFocus:d.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,aC.composeEventHandlers)(a.onCloseAutoFocus,a=>{a.preventDefault(),d.triggerRef.current?.focus()}),onPointerDownOutside:(0,aC.composeEventHandlers)(a.onPointerDownOutside,a=>{let b=a.detail.originalEvent,c=0===b.button&&!0===b.ctrlKey;(2===b.button||c)&&a.preventDefault()}),onFocusOutside:(0,aC.composeEventHandlers)(a.onFocusOutside,a=>a.preventDefault())})}),a6=p.forwardRef((a,c)=>{let d=aU(a3,a.__scopeDialog),e=p.useRef(!1),f=p.useRef(!1);return(0,b.jsx)(a7,{...a,ref:c,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:b=>{a.onCloseAutoFocus?.(b),b.defaultPrevented||(e.current||d.triggerRef.current?.focus(),b.preventDefault()),e.current=!1,f.current=!1},onInteractOutside:b=>{a.onInteractOutside?.(b),b.defaultPrevented||(e.current=!0,"pointerdown"===b.detail.originalEvent.type&&(f.current=!0));let c=b.target;d.triggerRef.current?.contains(c)&&b.preventDefault(),"focusin"===b.detail.originalEvent.type&&f.current&&b.preventDefault()}})}),a7=p.forwardRef((a,c)=>{let{__scopeDialog:d,trapFocus:e,onOpenAutoFocus:f,onCloseAutoFocus:g,...h}=a,i=aU(a3,d),j=p.useRef(null),k=(0,aD.useComposedRefs)(c,j);return(0,aM.useFocusGuards)(),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aI.FocusScope,{asChild:!0,loop:!0,trapped:e,onMountAutoFocus:f,onUnmountAutoFocus:g,children:(0,b.jsx)(aH.DismissableLayer,{role:"dialog",id:i.contentId,"aria-describedby":i.descriptionId,"aria-labelledby":i.titleId,"data-state":be(i.open),...h,ref:k,onDismiss:()=>i.onOpenChange(!1)})}),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(bi,{titleId:i.titleId}),(0,b.jsx)(bj,{contentRef:j,descriptionId:i.descriptionId})]})]})}),a8="DialogTitle",a9=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=aU(a8,d);return(0,b.jsx)(aL.Primitive.h2,{id:f.titleId,...e,ref:c})});a9.displayName=a8;var ba="DialogDescription",bb=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=aU(ba,d);return(0,b.jsx)(aL.Primitive.p,{id:f.descriptionId,...e,ref:c})});bb.displayName=ba;var bc="DialogClose",bd=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=aU(bc,d);return(0,b.jsx)(aL.Primitive.button,{type:"button",...e,ref:c,onClick:(0,aC.composeEventHandlers)(a.onClick,()=>f.onOpenChange(!1))})});function be(a){return a?"open":"closed"}bd.displayName=bc;var bf="DialogTitleWarning",[bg,bh]=(0,aE.createContext)(bf,{contentName:a3,titleName:a8,docsSlug:"dialog"}),bi=({titleId:a})=>{let b=bh(bf),c=`\`${b.contentName}\` requires a \`${b.titleName}\` for the component to be accessible for screen reader users.
|
|
2
2
|
|
|
3
3
|
If you want to hide the \`${b.titleName}\`, you can wrap it with our VisuallyHidden component.
|
|
4
4
|
|
|
5
|
-
For more information, see https://radix-ui.com/primitives/docs/components/${b.docsSlug}`;return p.useEffect(()=>{a&&(document.getElementById(a)||console.error(c))},[c,a]),null},
|
|
5
|
+
For more information, see https://radix-ui.com/primitives/docs/components/${b.docsSlug}`;return p.useEffect(()=>{a&&(document.getElementById(a)||console.error(c))},[c,a]),null},bj=({contentRef:a,descriptionId:b})=>{let c=bh("DialogDescriptionWarning"),d=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${c.contentName}}.`;return p.useEffect(()=>{let c=a.current?.getAttribute("aria-describedby");b&&c&&(document.getElementById(b)||console.warn(d))},[d,a,b]),null},bk=a.i(930840),bk=bk;function bl({...a}){return(0,b.jsx)(aV,{"data-slot":"sheet",...a})}function bm({...a}){return(0,b.jsx)(a$,{"data-slot":"sheet-portal",...a})}function bn({className:a,...c}){return(0,b.jsx)(a0,{"data-slot":"sheet-overlay",className:(0,t.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",a),...c})}function bo({className:a,children:c,side:d="right",...e}){return(0,b.jsxs)(bm,{children:[(0,b.jsx)(bn,{}),(0,b.jsxs)(a4,{"data-slot":"sheet-content",className:(0,t.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500","right"===d&&"data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm","left"===d&&"data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm","top"===d&&"data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b","bottom"===d&&"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",a),...e,children:[c,(0,b.jsxs)(bd,{className:"ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none",children:[(0,b.jsx)(bk.default,{className:"size-4"}),(0,b.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function bp({className:a,...c}){return(0,b.jsx)("div",{"data-slot":"sheet-header",className:(0,t.cn)("flex flex-col gap-1.5 p-4",a),...c})}function bq({className:a,...c}){return(0,b.jsx)(a9,{"data-slot":"sheet-title",className:(0,t.cn)("text-foreground font-semibold",a),...c})}function br({className:a,...c}){return(0,b.jsx)(bb,{"data-slot":"sheet-description",className:(0,t.cn)("text-muted-foreground text-sm",a),...c})}var bs=a.i(691435);function bt({config:a,onWorkflowSelect:c}){let[d,e]=(0,p.useState)(!1),[f,g]=(0,p.useState)(null),{manifest:i,loading:j,error:k}=(0,bs.useWorkflowGraphManifest)(a),l=i?Object.values(i.workflows):[],m=(0,p.useMemo)(()=>[...l].sort((a,b)=>a.workflowName.localeCompare(b.workflowName)),[l]),n=(0,p.useMemo)(()=>f?.nodes.filter(a=>"step"===a.data.nodeKind).length??0,[f]);return j?(0,b.jsx)(K,{variant:"workflows",rows:6}):k?(0,b.jsxs)(r.Alert,{variant:"destructive",children:[(0,b.jsx)(h.AlertCircle,{className:"h-4 w-4"}),(0,b.jsx)(r.AlertTitle,{children:"Error Loading Workflows"}),(0,b.jsx)(r.AlertDescription,{children:k.message})]}):0===l.length?(0,b.jsx)(u,{children:(0,b.jsxs)(v,{className:"p-12 text-center",children:[(0,b.jsx)(az,{className:"mx-auto h-12 w-12 text-muted-foreground mb-4"}),(0,b.jsx)("h3",{className:"text-lg font-semibold mb-2",children:"No Workflows Found"}),(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"No workflow definitions were found in the graph manifest."})]})}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(u,{className:"overflow-hidden bg-background",children:(0,b.jsx)(v,{className:"p-0 max-h-[calc(100vh-200px)] overflow-auto",children:(0,b.jsxs)(z,{children:[(0,b.jsx)(A,{children:(0,b.jsxs)(C,{children:[(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Workflow"}),(0,b.jsx)(D,{className:"sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"File"}),(0,b.jsx)(D,{className:"text-center sticky top-0 bg-background z-10 border-b shadow-sm h-10",children:"Steps"})]})}),(0,b.jsx)(B,{children:m.map(a=>{let d=a.nodes.filter(a=>"step"===a.data.nodeKind).length;return(0,b.jsxs)(C,{className:"cursor-pointer",onClick:()=>{g(a),e(!0),c?.(a.workflowName)},children:[(0,b.jsx)(E,{className:"py-2",children:(0,b.jsx)("span",{className:"font-medium",children:a.workflowName})}),(0,b.jsx)(E,{className:"py-2",children:(0,b.jsx)("code",{className:"text-xs text-muted-foreground",children:a.filePath})}),(0,b.jsx)(E,{className:"text-center py-2",children:(0,b.jsxs)(aB.Badge,{variant:"secondary",className:"gap-1",children:[(0,b.jsx)(ay.GitBranch,{className:"h-3 w-3"}),d," ",(0,ax.pluralize)("step","steps",d)]})})]},a.workflowId)})})]})})}),(0,b.jsx)(bl,{open:d,onOpenChange:e,children:(0,b.jsxs)(bo,{side:"right",className:"w-[75vw] max-w-[75vw] sm:max-w-[75vw]",children:[(0,b.jsxs)(bp,{children:[(0,b.jsxs)(bq,{className:"flex items-center gap-2",children:[(0,b.jsx)(az,{className:"h-5 w-5"}),f?.workflowName]}),f&&(0,b.jsx)(br,{asChild:!0,children:(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)("code",{className:"text-xs",children:f.filePath}),(0,b.jsx)("div",{children:(0,b.jsxs)(aB.Badge,{variant:"outline",className:"gap-1",children:[(0,b.jsx)(ay.GitBranch,{className:"h-3 w-3"}),n," ",(0,ax.pluralize)("step","steps",n)]})})]})})]}),(0,b.jsx)("div",{className:"mt-6 h-[calc(100vh-180px)]",children:f&&(0,b.jsx)(aA.WorkflowGraphViewer,{workflow:f})})]})})]})}var bu=a.i(47318);function bv(){let a=(0,d.useRouter)(),e=(0,G.useQueryParamConfig)(),[f]=(0,bu.useSidebarState)(),[g]=(0,bu.useHookIdState)(),[h,i]=(0,bu.useTabState)(),j="local"===e.backend;return(0,b.jsx)("div",{className:"max-w-7xl mx-auto px-4",children:(0,b.jsxs)(aw.Tabs,{value:h,onValueChange:i,className:"w-full",children:[(0,b.jsxs)(aw.TabsList,{className:"mb-4",children:[(0,b.jsx)(aw.TabsTrigger,{value:"runs",children:"Runs"}),(0,b.jsx)(aw.TabsTrigger,{value:"hooks",children:"Hooks"}),j&&(0,b.jsx)(aw.TabsTrigger,{value:"workflows",children:"Workflows"})]}),(0,b.jsx)(aw.TabsContent,{value:"runs",children:(0,b.jsx)(c.ErrorBoundary,{title:"Runs Error",description:"Failed to load workflow runs. Please try refreshing the page.",children:(0,b.jsx)(av,{config:e,onRunClick:(b,c)=>{c?a.push((0,G.buildUrlWithConfig)(`/run/${b}/streams/${c}`,e)):a.push((0,G.buildUrlWithConfig)(`/run/${b}`,e))}})})}),(0,b.jsx)(aw.TabsContent,{value:"hooks",children:(0,b.jsx)(c.ErrorBoundary,{title:"Hooks Error",description:"Failed to load hooks. Please try refreshing the page.",children:(0,b.jsx)(L,{config:e,onHookClick:(b,c)=>{b?a.push((0,G.buildUrlWithConfig)(`/run/${c}`,e,{sidebar:"hook",hookId:b})):a.push((0,G.buildUrlWithConfig)(`/run/${c}`,e))},selectedHookId:"hook"===f&&g?g:void 0})})}),j&&(0,b.jsx)(aw.TabsContent,{value:"workflows",children:(0,b.jsx)(c.ErrorBoundary,{title:"Workflows Error",description:"Failed to load workflow graph data. Please try refreshing the page.",children:(0,b.jsx)(bt,{config:e})})})]})})}a.s(["default",()=>bv],762587)}];
|
|
6
6
|
|
|
7
7
|
//# sourceMappingURL=packages_web_src_app_page_tsx_cd282e82._.js.map
|