@workflow/web 4.0.1-beta.7 → 4.0.1-beta.8

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.
Files changed (32) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +7 -7
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/server/app/_not-found/page.js +1 -1
  6. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  7. package/.next/server/app/page.js +1 -1
  8. package/.next/server/app/page.js.nft.json +1 -1
  9. package/.next/server/app/page_client-reference-manifest.js +1 -1
  10. package/.next/server/app/run/[runId]/page.js +2 -2
  11. package/.next/server/app/run/[runId]/page.js.nft.json +1 -1
  12. package/.next/server/app/run/[runId]/page_client-reference-manifest.js +1 -1
  13. package/.next/server/app/run/[runId]/streams/[streamId]/page.js +1 -1
  14. package/.next/server/app/run/[runId]/streams/[streamId]/page.js.nft.json +1 -1
  15. package/.next/server/app/run/[runId]/streams/[streamId]/page_client-reference-manifest.js +1 -1
  16. package/.next/server/chunks/{910.js → 134.js} +4 -4
  17. package/.next/server/chunks/701.js +1 -1
  18. package/.next/server/pages/500.html +1 -1
  19. package/.next/server/server-reference-manifest.js +1 -1
  20. package/.next/server/server-reference-manifest.json +1 -1
  21. package/.next/static/chunks/426-0784ba3ecf0e6d86.js +1 -0
  22. package/.next/static/chunks/app/layout-e3b18068e089126f.js +1 -0
  23. package/.next/static/chunks/app/page-797f11dc406cf1d5.js +1 -0
  24. package/.next/static/chunks/app/run/[runId]/{page-8efd19c9397988db.js → page-5bd19893cc2c11c5.js} +1 -1
  25. package/.next/static/chunks/app/run/[runId]/streams/[streamId]/{page-a467453890419d95.js → page-f339767d4463460e.js} +1 -1
  26. package/.next/trace +20 -20
  27. package/package.json +4 -4
  28. package/.next/static/chunks/617-9852d1dec9970af4.js +0 -1
  29. package/.next/static/chunks/app/layout-cbeec5bd379efacd.js +0 -1
  30. package/.next/static/chunks/app/page-f99d16dfe9e892cc.js +0 -1
  31. /package/.next/static/{i6LtFXJZ0N6Pry_U6y_fL → kRJ3iFJ3qMj0SwQ6GOGlX}/_buildManifest.js +0 -0
  32. /package/.next/static/{i6LtFXJZ0N6Pry_U6y_fL → kRJ3iFJ3qMj0SwQ6GOGlX}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[974],{5988:(e,s,t)=>{"use strict";t.d(s,{s:()=>o});var a=t(5386),r=t(1049),l=t(5505),n=t(4773),d=t(8257);function o(e){let{date:s,className:t="",type:o="relative"}=e,[,i]=(0,n.useState)(Date.now()),c="relative"===o?(0,r.o)(new Date(s),new Date):(0,l.B)(new Date(s),{addSuffix:!0}),h=new Date(s).toLocaleString(void 0,{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:"short"});return(0,n.useEffect)(()=>{let e=setInterval(()=>{i(Date.now())},1e3);return()=>clearInterval(e)},[]),(0,a.jsxs)(d.m_,{children:[(0,a.jsx)(d.k$,{asChild:!0,children:(0,a.jsx)("span",{className:"".concat(t," cursor-help border-b border-dotted"),children:c})}),(0,a.jsx)(d.ZI,{children:(0,a.jsx)("p",{children:h})})]})}},6634:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>Z});var a=t(5386),r=t(3283),l=t(7394),n=t(6006),d=t(1280),o=t(316),i=t(3039),c=t(8258);let h=(0,c.A)("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]),u=(0,c.A)("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);var x=t(4773),m=t(7122),f=t(6016),j=t(8414),p=t.n(j),g=t(2287);let w=x.forwardRef((e,s)=>{let{className:t,href:r,children:l,...n}=e,d=r.startsWith("http")?r:"https://useworkflow.dev/docs/".concat(r.replace(/^\//,""));return(0,a.jsx)(p(),{href:d,className:(0,g.cn)("font-medium underline underline-offset-4 transition-colors",t),style:{color:"var(--ds-blue-600)"},target:"_blank",rel:"noopener noreferrer",ref:s,...n,children:l})});w.displayName="DocsLink";let N=x.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,a.jsx)("div",{className:"relative w-full overflow-auto",children:(0,a.jsx)("table",{ref:s,className:(0,g.cn)("w-full caption-bottom text-sm",t),...r})})});N.displayName="Table";let b=x.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,a.jsx)("thead",{ref:s,className:(0,g.cn)("[&_tr]:border-b",t),...r})});b.displayName="TableHeader";let v=x.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,a.jsx)("tbody",{ref:s,className:(0,g.cn)("[&_tr:last-child]:border-0",t),...r})});v.displayName="TableBody",x.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,a.jsx)("tfoot",{ref:s,className:(0,g.cn)("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",t),...r})}).displayName="TableFooter";let k=x.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,a.jsx)("tr",{ref:s,className:(0,g.cn)("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",t),...r})});k.displayName="TableRow";let y=x.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,a.jsx)("th",{ref:s,className:(0,g.cn)("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",t),...r})});y.displayName="TableHead";let C=x.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,a.jsx)("td",{ref:s,className:(0,g.cn)("p-4 align-middle [&:has([role=checkbox])]:pr-0",t),...r})});C.displayName="TableCell",x.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,a.jsx)("caption",{ref:s,className:(0,g.cn)("mt-4 text-sm text-muted-foreground",t),...r})}).displayName="TableCaption";var I=t(8257),R=t(8052),S=t(5988);function A(e){let{className:s,...t}=e;return(0,a.jsx)("div",{className:(0,g.cn)("animate-pulse rounded-md bg-muted",s),...t})}let M=e=>{let{rows:s}=e;return Array.from({length:s},(e,s)=>(0,a.jsxs)("div",{className:"flex gap-4 py-3",children:[(0,a.jsx)(A,{className:"h-4 w-1/4"}),(0,a.jsx)(A,{className:"h-4 w-1/4"}),(0,a.jsx)(A,{className:"h-4 w-1/6"}),(0,a.jsx)(A,{className:"h-4 w-1/6"}),(0,a.jsx)(A,{className:"h-4 w-1/6"})]},"skeleton-row-".concat(s)))};function _(e){let{title:s,rows:t=g.yQ,bodyOnly:r=!1}=e;return r?(0,a.jsx)(M,{rows:t}):(0,a.jsxs)("div",{className:"w-full",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[s?(0,a.jsx)(A,{className:"h-6 w-32"}):(0,a.jsx)(A,{className:"h-6 w-48"}),(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[(0,a.jsx)(A,{className:"h-4 w-24"}),(0,a.jsx)(A,{className:"h-9 w-24"})]})]}),(0,a.jsxs)("div",{className:"space-y-3",style:{minHeight:"512px"},children:[(0,a.jsxs)("div",{className:"flex gap-4 pb-3 border-b",children:[(0,a.jsx)(A,{className:"h-4 w-1/4"}),(0,a.jsx)(A,{className:"h-4 w-1/4"}),(0,a.jsx)(A,{className:"h-4 w-1/6"}),(0,a.jsx)(A,{className:"h-4 w-1/6"}),(0,a.jsx)(A,{className:"h-4 w-1/6"})]}),(0,a.jsx)(M,{rows:t})]})]})}function P(e){var s;let{config:t,runId:r,onHookClick:l,selectedHookId:c}=e,[j,p]=(0,x.useState)(()=>new Date),g=(0,x.useMemo)(()=>(0,R.nO)(t),[t]),{data:A,error:M,nextPage:P,previousPage:L,hasNextPage:D,hasPreviousPage:$,reload:z,pageInfo:E}=(0,n.LK)(g,{runId:r,sortOrder:"desc"}),F=A.isLoading,T=null!=(s=A.data)?s:[],[Z,O]=(0,x.useState)(new Map);return((0,x.useEffect)(()=>{T.length&&(async()=>{let e=new Map;for(let s of T)e.set(s.hookId,{count:0,hasMore:!1,loading:!0});O(e);let s=await Promise.allSettled(T.map(async e=>{try{let t=await (0,d.u)(g,e.hookId,{sortOrder:"asc",limit:100});if(!t.success){var s;return{hookId:e.hookId,count:Error((null==(s=t.error)?void 0:s.message)||"Failed to fetch events"),hasMore:!1}}let a=t.data,r=a.data.filter(e=>"hook_received"===e.eventType).length;return{hookId:e.hookId,count:r,hasMore:a.hasMore}}catch(s){return{hookId:e.hookId,count:s,hasMore:!1}}}));O(e=>{let t=new Map(e);for(let e=0;e<s.length;e++){let a=s[e],r=T[e].hookId;"fulfilled"===a.status?t.set(a.value.hookId,{count:a.value.count,hasMore:a.value.hasMore,loading:!1}):t.set(r,{count:0,hasMore:!1,loading:!1})}return t})})()},[T,g]),!F||(null==A?void 0:A.data))?(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center justify-between my-4",children:[(0,a.jsx)("h2",{className:"text-2xl my-2 font-semibold leading-none tracking-tight",children:"Hooks"}),(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[j&&(0,a.jsx)(S.s,{date:j,className:"text-sm text-muted-foreground",type:"distance"}),(0,a.jsxs)(I.m_,{children:[(0,a.jsx)(I.k$,{asChild:!0,children:(0,a.jsxs)(f.$,{variant:"outline",size:"sm",onClick:()=>{p(()=>new Date),z()},disabled:F,children:[(0,a.jsx)(o.A,{className:F?"animate-spin":""}),"Refresh"]})}),(0,a.jsx)(I.ZI,{children:"Note that this resets pages"})]})]})]}),M?(0,a.jsxs)(m.Fc,{variant:"destructive",children:[(0,a.jsx)(i.A,{className:"h-4 w-4"}),(0,a.jsx)(m.XL,{children:"Error loading hooks"}),(0,a.jsx)(m.TN,{children:(0,n.u1)(M)})]}):F||T&&0!==T.length?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(N,{children:[(0,a.jsx)(b,{children:(0,a.jsxs)(k,{children:[(0,a.jsx)(y,{children:"Hook ID"}),(0,a.jsx)(y,{children:"Run ID"}),(0,a.jsx)(y,{children:"Token"}),(0,a.jsx)(y,{children:"Created"}),(0,a.jsx)(y,{children:"Invocations"})]})}),(0,a.jsx)(v,{children:T.map(e=>(0,a.jsxs)(k,{className:"cursor-pointer group relative",onClick:()=>l(e.hookId,e.runId),"data-selected":e.hookId===c,children:[(0,a.jsx)(C,{className:"font-mono text-xs",children:e.hookId}),(0,a.jsx)(C,{className:"font-mono text-xs",children:e.runId}),(0,a.jsxs)(C,{className:"font-mono text-xs",children:[e.token.substring(0,12),"..."]}),(0,a.jsx)(C,{children:e.createdAt?(0,a.jsx)(S.s,{date:e.createdAt}):"-"}),(0,a.jsx)(C,{children:(e=>{let s=Z.get(e.hookId);if(!s||s.loading)return(0,a.jsx)("span",{className:"text-muted-foreground text-xs",children:"..."});if(s.count instanceof Error)return(0,a.jsx)("span",{className:"text-muted-foreground",children:"Error"});if(0===s.count)return(0,a.jsx)("span",{className:"text-muted-foreground",children:"0"});let t=s.hasMore?"".concat(s.count,"+"):"".concat(s.count);return s.hasMore?(0,a.jsxs)(I.m_,{children:[(0,a.jsx)(I.k$,{asChild:!0,children:(0,a.jsx)("span",{className:"font-semibold cursor-help",children:t})}),(0,a.jsx)(I.ZI,{children:(0,a.jsx)("div",{className:"text-xs",children:"Showing first 100 invocations. There may be more."})})]}):(0,a.jsx)("span",{className:"font-semibold",children:t})})(e)})]},e.hookId))})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between mt-4",children:[(0,a.jsx)("div",{className:"text-sm text-muted-foreground",children:E}),(0,a.jsxs)("div",{className:"flex gap-2 items-center",children:[(0,a.jsxs)(f.$,{variant:"outline",size:"sm",onClick:L,disabled:!$,children:[(0,a.jsx)(h,{}),"Previous"]}),(0,a.jsxs)(f.$,{variant:"outline",size:"sm",onClick:P,disabled:!D,children:["Next",(0,a.jsx)(u,{})]})]})]})]}):(0,a.jsxs)("div",{className:"text-center py-8 text-muted-foreground",children:["No active hooks found."," ",(0,a.jsx)(w,{href:"https://useworkflow.dev/docs/api-reference/workflow/create-hook",children:"Learn how to create a hook"})]})]}):(0,a.jsx)(_,{title:"Hooks"})}var L=t(2931);let D=(0,c.A)("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"}]]),$=(0,c.A)("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 z=t(9432),E=t(6810);let F={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 T(e){var s,t;let{config:l,onRunClick:d}=e,c=(0,r.useRouter)(),j=(0,r.usePathname)(),p=(0,r.useSearchParams)(),g=p.get("status"),A=Object.keys(F),M="all"===g||g&&A.includes(g)?g:void 0,P=p.get("workflow"),[T,Z]=(0,x.useState)("desc"),[O,U]=(0,x.useState)(()=>new Date),H=(0,x.useMemo)(()=>(0,R.nO)(l),[l]),V=null==(s=l.backend)?void 0:s.includes("vercel"),[q,W]=(0,x.useState)(new Set),{data:J,error:B,nextPage:K,previousPage:X,hasNextPage:Q,hasPreviousPage:Y,reload:G,pageInfo:ee}=(0,n.b_)(H,{sortOrder:T,workflowName:"all"===P?void 0:P,status:"all"===M?void 0:M});(0,x.useEffect)(()=>{if(J.data&&J.data.length>0){let e=new Set(J.data.map(e=>e.workflowName));W(s=>{let t=new Set(s);for(let s of e)t.add(s);return t})}},[J.data]);let es=J.isLoading,et=(0,x.useCallback)((e,s)=>{let t=new URLSearchParams(p.toString());return t.set(e,s),t.toString()},[p]);return!es||(null==J?void 0:J.data)?(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center justify-between my-4",children:[(0,a.jsxs)("h2",{className:"text-2xl my-2 font-semibold leading-none tracking-tight flex gap-4 items-end",children:[(0,a.jsx)("span",{className:"flex items-center gap-2",children:"Runs"}),O&&(0,a.jsx)(S.s,{date:O,className:"text-sm text-muted-foreground",type:"distance"})]}),(0,a.jsx)("div",{className:"flex items-center gap-4",children:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(z.l6,{value:null!=P?P:"all",onValueChange:e=>{if("all"===e){let e=new URLSearchParams(p.toString());e.delete("workflow"),e.delete("status"),c.push("".concat(j,"?").concat(e.toString()))}else c.push("".concat(j,"?").concat(et("workflow",e)))},disabled:es,children:[(0,a.jsx)(z.bq,{className:"w-[180px] h-9",children:(0,a.jsx)(z.yv,{placeholder:"Filter by workflow"})}),(0,a.jsxs)(z.gC,{children:[(0,a.jsx)(z.eb,{value:"all",children:"All Workflows"}),Array.from(q).sort().map(e=>{var s;return(0,a.jsx)(z.eb,{value:e,children:(null==(s=(0,L.s)(e))?void 0:s.shortName)||e},e)})]})]}),(0,a.jsxs)(I.m_,{children:[(0,a.jsx)(I.k$,{asChild:!0,children:(0,a.jsx)("div",{children:(0,a.jsxs)(z.l6,{value:M||"all",onValueChange:e=>{if("all"===e){let e=new URLSearchParams(p.toString());e.delete("status"),c.push("".concat(j,"?").concat(e.toString()))}else c.push("".concat(j,"?").concat(et("status",e)))},disabled:es||V&&!P,children:[(0,a.jsx)(z.bq,{className:"w-[140px] h-9",children:(0,a.jsx)(z.yv,{placeholder:"Filter by status"})}),(0,a.jsxs)(z.gC,{children:[(0,a.jsx)(z.eb,{value:"all",children:"Any status"}),Object.entries(F).map(e=>{let[s,{label:t,color:r}]=e;return(0,a.jsx)(z.eb,{value:s,children:(0,a.jsxs)("div",{className:"flex items-center",children:[(0,a.jsx)("span",{className:"".concat(r," size-1.5 rounded-full mr-2")}),t]})},s)})]})]})})}),(0,a.jsx)(I.ZI,{children:V&&"all"===P?"Select a workflow first to filter by status":"Filter runs by status"})]}),(0,a.jsxs)(I.m_,{children:[(0,a.jsx)(I.k$,{asChild:!0,children:(0,a.jsxs)(f.$,{variant:"outline",size:"sm",onClick:()=>{Z(e=>"desc"===e?"asc":"desc")},disabled:es,children:["desc"===T?(0,a.jsx)(D,{className:"h-4 w-4"}):(0,a.jsx)($,{className:"h-4 w-4"}),"desc"===T?"Newest":"Oldest"]})}),(0,a.jsx)(I.ZI,{children:"desc"===T?"Showing newest first":"Showing oldest first"})]}),(0,a.jsxs)(I.m_,{children:[(0,a.jsx)(I.k$,{asChild:!0,children:(0,a.jsxs)(f.$,{variant:"outline",size:"sm",onClick:()=>{U(()=>new Date),G()},disabled:es,children:[(0,a.jsx)(o.A,{className:es?"animate-spin":""}),"Refresh"]})}),(0,a.jsx)(I.ZI,{children:"Note that this resets pages"})]})]})})]}),B?(0,a.jsxs)(m.Fc,{variant:"destructive",children:[(0,a.jsx)(i.A,{className:"h-4 w-4"}),(0,a.jsx)(m.XL,{children:"Error loading runs"}),(0,a.jsx)(m.TN,{children:(0,n.u1)(B)})]}):es||J.data&&0!==J.data.length?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(N,{children:[(0,a.jsx)(b,{children:(0,a.jsxs)(k,{children:[(0,a.jsx)(y,{children:"Workflow"}),(0,a.jsx)(y,{children:"Run ID"}),(0,a.jsx)(y,{children:"Status"}),(0,a.jsx)(y,{children:"Started"}),(0,a.jsx)(y,{children:"Completed"})]})}),(0,a.jsx)(v,{children:null==(t=J.data)?void 0:t.map(e=>{var s;return(0,a.jsxs)(k,{className:"cursor-pointer group relative",onClick:()=>d(e.runId),children:[(0,a.jsx)(C,{children:(null==(s=(0,L.s)(e.workflowName))?void 0:s.shortName)||"?"}),(0,a.jsx)(C,{className:"font-mono text-xs",children:e.runId}),(0,a.jsx)(C,{children:(0,a.jsx)(E.W,{status:e.status,context:e})}),(0,a.jsx)(C,{children:e.startedAt?(0,a.jsx)(S.s,{date:e.startedAt}):"-"}),(0,a.jsx)(C,{children:e.completedAt?(0,a.jsx)(S.s,{date:e.completedAt}):"-"})]},e.runId)})})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between mt-4",children:[(0,a.jsx)("div",{className:"text-sm text-muted-foreground",children:ee}),(0,a.jsxs)("div",{className:"flex gap-2 items-center",children:[(0,a.jsxs)(f.$,{variant:"outline",size:"sm",onClick:X,disabled:!Y,children:[(0,a.jsx)(h,{}),"Previous"]}),(0,a.jsxs)(f.$,{variant:"outline",size:"sm",onClick:K,disabled:!Q,children:["Next",(0,a.jsx)(u,{})]})]})]})]}):(0,a.jsxs)("div",{className:"text-center py-8 text-muted-foreground",children:["No workflow runs found."," ",(0,a.jsx)(w,{href:"https://useworkflow.dev/docs/foundations/workflows-and-steps",children:"Learn how to create a workflow"})]})]}):(0,a.jsx)(_,{title:"Runs"})}function Z(){let e=(0,r.useRouter)(),s=(0,r.useSearchParams)(),t=(0,R.Nt)(),n=s.get("sidebar"),d=s.get("hookId")||s.get("hook");return(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsx)(l.t,{title:"Runs Error",description:"Failed to load workflow runs. Please try refreshing the page.",children:(0,a.jsx)(T,{config:t,onRunClick:(s,a)=>{a?e.push((0,R.g0)("/run/".concat(s,"/streams/").concat(a),t)):e.push((0,R.g0)("/run/".concat(s),t))}})}),(0,a.jsx)(l.t,{title:"Hooks Error",description:"Failed to load hooks. Please try refreshing the page.",children:(0,a.jsx)(P,{config:t,onHookClick:(s,a)=>{s?e.push((0,R.g0)("/run/".concat(a),t,{sidebar:"hook",hookId:s})):e.push((0,R.g0)("/run/".concat(a),t))},selectedHookId:"hook"===n&&d?d:void 0})})]})}},6741:(e,s,t)=>{Promise.resolve().then(t.bind(t,6634))},6810:(e,s,t)=>{"use strict";t.d(s,{W:()=>l});var a=t(5386),r=t(8257);function l(e){let{status:s,context:t,className:l}=e,n=()=>{switch(s){case"running":return"text-blue-600 dark:text-blue-400";case"completed":return"text-green-600 dark:text-green-400";case"failed":return"text-red-600 dark:text-red-400";case"cancelled":return"text-yellow-600 dark:text-yellow-400";case"pending":return"text-gray-600 dark:text-gray-400";case"paused":return"text-orange-600 dark:text-orange-400";default:return"text-gray-500 dark:text-gray-400"}};if("failed"===s&&(null==t?void 0:t.error)){let e="string"==typeof t.error?t.error:t.error instanceof Error?t.error.message:JSON.stringify(t.error);return(0,a.jsxs)(r.m_,{children:[(0,a.jsx)(r.k$,{asChild:!0,children:(0,a.jsx)("span",{className:"".concat(l," border-b border-dotted cursor-help ").concat(n()),children:s})}),(0,a.jsx)(r.ZI,{className:"max-w-md",children:(0,a.jsx)("p",{className:"text-xs whitespace-pre-wrap break-words",children:e})})]})}return(0,a.jsx)("span",{className:"".concat(l," ").concat(n()),children:s})}},8257:(e,s,t)=>{"use strict";t.d(s,{ZI:()=>i,k$:()=>o,m_:()=>d});var a=t(5386),r=t(7384),l=t(4773),n=t(2287);r.Kq;let d=r.bL,o=r.l9,i=l.forwardRef((e,s)=>{let{className:t,sideOffset:l=4,...d}=e;return(0,a.jsx)(r.UC,{ref:s,sideOffset:l,className:(0,n.cn)("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...d})});i.displayName=r.UC.displayName},9432:(e,s,t)=>{"use strict";t.d(s,{bq:()=>u,eb:()=>j,gC:()=>f,l6:()=>c,yv:()=>h});var a=t(5386),r=t(9961),l=t(406),n=t(7163),d=t(7536),o=t(4773),i=t(2287);let c=r.bL;r.YJ;let h=r.WT,u=o.forwardRef((e,s)=>{let{className:t,children:n,...d}=e;return(0,a.jsxs)(r.l9,{ref:s,className:(0,i.cn)("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",t),...d,children:[n,(0,a.jsx)(r.In,{asChild:!0,children:(0,a.jsx)(l.A,{className:"h-4 w-4 opacity-50"})})]})});u.displayName=r.l9.displayName;let x=o.forwardRef((e,s)=>{let{className:t,...l}=e;return(0,a.jsx)(r.PP,{ref:s,className:(0,i.cn)("flex cursor-default items-center justify-center py-1",t),...l,children:(0,a.jsx)(n.A,{className:"h-4 w-4"})})});x.displayName=r.PP.displayName;let m=o.forwardRef((e,s)=>{let{className:t,...n}=e;return(0,a.jsx)(r.wn,{ref:s,className:(0,i.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,a.jsx)(l.A,{className:"h-4 w-4"})})});m.displayName=r.wn.displayName;let f=o.forwardRef((e,s)=>{let{className:t,children:l,position:n="popper",...d}=e;return(0,a.jsx)(r.ZL,{children:(0,a.jsxs)(r.UC,{ref:s,className:(0,i.cn)("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===n&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:n,...d,children:[(0,a.jsx)(x,{}),(0,a.jsx)(r.LM,{className:(0,i.cn)("p-1","popper"===n&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:l}),(0,a.jsx)(m,{})]})})});f.displayName=r.UC.displayName,o.forwardRef((e,s)=>{let{className:t,...l}=e;return(0,a.jsx)(r.JU,{ref:s,className:(0,i.cn)("py-1.5 pl-8 pr-2 text-sm font-semibold",t),...l})}).displayName=r.JU.displayName;let j=o.forwardRef((e,s)=>{let{className:t,children:l,...n}=e;return(0,a.jsxs)(r.q7,{ref:s,className:(0,i.cn)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...n,children:[(0,a.jsx)("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,a.jsx)(r.VF,{children:(0,a.jsx)(d.A,{className:"h-4 w-4"})})}),(0,a.jsx)(r.p4,{children:l})]})});j.displayName=r.q7.displayName,o.forwardRef((e,s)=>{let{className:t,...l}=e;return(0,a.jsx)(r.wv,{ref:s,className:(0,i.cn)("-mx-1 my-1 h-px bg-muted",t),...l})}).displayName=r.wv.displayName}},e=>{e.O(0,[246,703,337,829,81,690,426,909,624,358],()=>e(e.s=6741)),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[417],{5988:(e,t,s)=>{"use strict";s.d(t,{s:()=>o});var r=s(5386),a=s(1049),n=s(5505),l=s(4773),d=s(8257);function o(e){let{date:t,className:s="",type:o="relative"}=e,[,c]=(0,l.useState)(Date.now()),i="relative"===o?(0,a.o)(new Date(t),new Date):(0,n.B)(new Date(t),{addSuffix:!0}),u=new Date(t).toLocaleString(void 0,{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:"short"});return(0,l.useEffect)(()=>{let e=setInterval(()=>{c(Date.now())},1e3);return()=>clearInterval(e)},[]),(0,r.jsxs)(d.m_,{children:[(0,r.jsx)(d.k$,{asChild:!0,children:(0,r.jsx)("span",{className:"".concat(s," cursor-help border-b border-dotted"),children:i})}),(0,r.jsx)(d.ZI,{children:(0,r.jsx)("p",{children:u})})]})}},6810:(e,t,s)=>{"use strict";s.d(t,{W:()=>n});var r=s(5386),a=s(8257);function n(e){let{status:t,context:s,className:n}=e,l=()=>{switch(t){case"running":return"text-blue-600 dark:text-blue-400";case"completed":return"text-green-600 dark:text-green-400";case"failed":return"text-red-600 dark:text-red-400";case"cancelled":return"text-yellow-600 dark:text-yellow-400";case"pending":return"text-gray-600 dark:text-gray-400";case"paused":return"text-orange-600 dark:text-orange-400";default:return"text-gray-500 dark:text-gray-400"}};if("failed"===t&&(null==s?void 0:s.error)){let e="string"==typeof s.error?s.error:s.error instanceof Error?s.error.message:JSON.stringify(s.error);return(0,r.jsxs)(a.m_,{children:[(0,r.jsx)(a.k$,{asChild:!0,children:(0,r.jsx)("span",{className:"".concat(n," border-b border-dotted cursor-help ").concat(l()),children:t})}),(0,r.jsx)(a.ZI,{className:"max-w-md",children:(0,r.jsx)("p",{className:"text-xs whitespace-pre-wrap break-words",children:e})})]})}return(0,r.jsx)("span",{className:"".concat(n," ").concat(l()),children:t})}},7307:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>P});var r=s(5386),a=s(3283),n=s(7394),l=s(2931),d=s(9373),o=s(3039),c=s(4773),i=s(8150),u=s(7122),x=s(2382),h=s(6016),m=s(2287);function f(e){let{...t}=e;return(0,r.jsx)(x.bL,{"data-slot":"alert-dialog",...t})}function j(e){let{...t}=e;return(0,r.jsx)(x.ZL,{"data-slot":"alert-dialog-portal",...t})}function g(e){let{className:t,...s}=e;return(0,r.jsx)(x.hJ,{"data-slot":"alert-dialog-overlay",className:(0,m.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",t),...s})}function p(e){let{className:t,...s}=e;return(0,r.jsxs)(j,{children:[(0,r.jsx)(g,{}),(0,r.jsx)(x.UC,{"data-slot":"alert-dialog-content",className:(0,m.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",t),...s})]})}function v(e){let{className:t,...s}=e;return(0,r.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,m.cn)("flex flex-col gap-2 text-center sm:text-left",t),...s})}function w(e){let{className:t,...s}=e;return(0,r.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,m.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t),...s})}function N(e){let{className:t,...s}=e;return(0,r.jsx)(x.hE,{"data-slot":"alert-dialog-title",className:(0,m.cn)("text-lg font-semibold",t),...s})}function y(e){let{className:t,...s}=e;return(0,r.jsx)(x.VY,{"data-slot":"alert-dialog-description",className:(0,m.cn)("text-muted-foreground text-sm",t),...s})}function b(e){let{className:t,...s}=e;return(0,r.jsx)(x.rc,{className:(0,m.cn)((0,h.r)(),t),...s})}function k(e){let{className:t,...s}=e;return(0,r.jsx)(x.ZD,{className:(0,m.cn)((0,h.r)({variant:"outline"}),t),...s})}var C=s(8052),R=s(7960),I=s(8649),A=s(8257);function E(e){let{canCancel:t,cancelling:s,cancelDisabledReason:a,onCancel:n}=e;return(0,r.jsxs)(A.m_,{children:[(0,r.jsx)(A.k$,{asChild:!0,children:(0,r.jsx)("span",{children:(0,r.jsxs)(h.$,{variant:"outline",size:"sm",onClick:n,disabled:!t||s,children:[(0,r.jsx)(I.A,{className:"h-4 w-4"}),s?"Cancelling...":"Cancel"]})})}),a&&(0,r.jsx)(A.ZI,{children:(0,r.jsx)("p",{children:a})})]})}var S=s(7536),_=s(2737);function D(e){let{text:t,children:s,className:a}=e,[n,l]=(0,c.useState)(!1),d=async()=>{try{await navigator.clipboard.writeText(t),l(!0),setTimeout(()=>l(!1),2e3)}catch(e){console.error("Failed to copy text:",e)}};return(0,r.jsxs)("div",{className:(0,m.cn)("flex items-center gap-2 group",a),children:[s,(0,r.jsxs)(A.m_,{children:[(0,r.jsx)(A.k$,{asChild:!0,children:(0,r.jsx)("button",{type:"button",onClick:d,className:"opacity-0 group-hover:opacity-100 transition-opacity","aria-label":"Copy to clipboard",children:n?(0,r.jsx)(S.A,{className:"h-3 w-3 text-green-600"}):(0,r.jsx)(_.A,{className:"h-3 w-3 text-muted-foreground hover:text-foreground"})})}),(0,r.jsx)(A.ZI,{children:(0,r.jsx)("p",{children:n?"Copied!":"Copy to clipboard"})})]})]})}function z(e){let{hasError:t,errorMessage:s}=e;return(0,r.jsx)("div",{className:"flex items-center gap-2",children:(0,r.jsxs)(A.m_,{children:[(0,r.jsx)(A.k$,{asChild:!0,children:(0,r.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,r.jsx)("div",{className:"w-2 h-2 rounded-full ".concat(t?"bg-red-500":"bg-green-500 animate-pulse")}),(0,r.jsx)("span",{className:"text-xs $\n hasError\n ? 'text-red-600 dark:text-red-400'\n : 'text-muted-foreground'",children:t?"Error":"Live"})]})}),(0,r.jsx)(A.ZI,{children:(0,r.jsx)("p",{children:t?"Error updating data: ".concat(s):"Content updates every ".concat(m.Oc/1e3," seconds")})})]})})}var Z=s(5988),$=s(4692);function F(e){let{canRerun:t,rerunning:s,rerunDisabledReason:a,onRerun:n}=e;return(0,r.jsxs)(A.m_,{children:[(0,r.jsx)(A.k$,{asChild:!0,children:(0,r.jsx)("span",{children:(0,r.jsxs)(h.$,{variant:"outline",size:"sm",onClick:n,disabled:!t||s,children:[(0,r.jsx)($.A,{className:"h-4 w-4"}),s?"Re-running...":"Re-run"]})})}),a&&(0,r.jsx)(A.ZI,{children:(0,r.jsx)("p",{children:a})})]})}var L=s(6810);function O(e){var t;let{config:s,runId:n,selectedId:x}=e,h=(0,a.useRouter)(),[m,j]=(0,c.useState)(!1),[g,I]=(0,c.useState)(!1),[A,S]=(0,c.useState)(!1),[_,$]=(0,c.useState)(!1),O=(0,c.useMemo)(()=>(0,C.nO)(s),[s]),{run:P,steps:T,hooks:W,events:J,loading:U,error:B,update:K}=(0,d.Qz)(O,n,{live:!0}),M=null!=P?P:{},Q=async()=>{if(!m)try{j(!0),S(!1),await (0,d.Su)(O,n),await K(),i.oR.success("Run cancelled successfully")}catch(e){console.error("Failed to cancel run:",e),i.oR.error("Failed to cancel run",{description:e instanceof Error?e.message:"An unknown error occurred"})}finally{j(!1)}},q=async()=>{if(!g)try{I(!0),$(!1);let e=await (0,d.Ns)(O,M.runId);i.oR.success("New run started successfully",{description:"Run ID: ".concat(e)}),h.push((0,C.g0)("/run/".concat(e),s))}catch(e){console.error("Failed to re-run workflow:",e),i.oR.error("Failed to start new run",{description:e instanceof Error?e.message:"An unknown error occurred"})}finally{I(!1),$(!1)}};if(B&&!P)return(0,r.jsxs)(u.Fc,{variant:"destructive",className:"m-4",children:[(0,r.jsx)(o.A,{className:"h-4 w-4"}),(0,r.jsx)(u.XL,{children:"Error loading workflow run"}),(0,r.jsx)(u.TN,{children:B.message})]});let V=(null==(t=(0,l.s)(M.workflowName))?void 0:t.shortName)||"?",X="pending"===M.status||"running"===M.status,Y=m?"Cancelling run...":"completed"===M.status?"Run has already completed":"failed"===M.status?"Run has already failed":"cancelled"===M.status?"Run has already been cancelled":"",G="pending"===M.status||"running"===M.status;return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(f,{open:A,onOpenChange:S,children:(0,r.jsxs)(p,{children:[(0,r.jsxs)(v,{children:[(0,r.jsx)(N,{children:"Cancel Workflow Run?"}),(0,r.jsx)(y,{children:"This will stop the workflow execution immediately, and no further steps will be executed. Partial workflow execution may occur. Are you sure you want to cancel the run?"})]}),(0,r.jsxs)(w,{children:[(0,r.jsx)(k,{children:"Keep Running"}),(0,r.jsx)(b,{onClick:Q,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Cancel Run"})]})]})}),(0,r.jsx)(f,{open:_,onOpenChange:$,children:(0,r.jsxs)(p,{children:[(0,r.jsxs)(v,{children:[(0,r.jsx)(N,{children:"Re-run Workflow?"}),(0,r.jsx)(y,{children:"This can potentially re-run code that is meant to only execute once. Are you sure you want to re-run the workflow?"})]}),(0,r.jsxs)(w,{children:[(0,r.jsx)(k,{children:"Cancel"}),(0,r.jsx)(b,{onClick:q,children:"Re-run Workflow"})]})]})}),(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsx)(R.E,{href:(0,C.g0)("/",s)}),(0,r.jsxs)("div",{className:"space-y-4 pb-6 border-b",children:[(0,r.jsxs)("div",{className:"flex items-start justify-between",children:[(0,r.jsx)("div",{className:"mb-6",children:(0,r.jsx)("h1",{className:"text-2xl font-semibold",children:V})}),(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,r.jsx)(z,{hasError:!1,errorMessage:""}),(0,r.jsx)(F,{canRerun:!U&&!G&&!g,rerunning:g,rerunDisabledReason:g?"Re-running workflow...":U?"Loading run data...":G?"Cannot re-run while workflow is still running":"",onRerun:()=>{$(!0)}}),(0,r.jsx)(E,{canCancel:X,cancelling:m,cancelDisabledReason:Y,onCancel:()=>{S(!0)}})]})]}),(0,r.jsxs)("div",{className:"flex items-start gap-8",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-xs text-muted-foreground",children:"Status"}),(0,r.jsx)(L.W,{status:M.status||"...",context:M})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-xs text-muted-foreground",children:"Run ID"}),(0,r.jsx)(D,{text:M.runId,children:(0,r.jsx)("div",{className:"text-sm mt-0.5 font-mono",children:M.runId})})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-xs text-muted-foreground",children:"Queued"}),(0,r.jsx)("div",{className:"text-sm",children:M.createdAt?(0,r.jsx)(Z.s,{date:M.createdAt}):"-"})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-xs text-muted-foreground",children:"Started"}),(0,r.jsx)("div",{className:"text-sm",children:M.startedAt?(0,r.jsx)(Z.s,{date:M.startedAt}):"-"})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-xs text-muted-foreground",children:"Completed"}),(0,r.jsx)("div",{className:"text-sm",children:M.completedAt?(0,r.jsx)(Z.s,{date:M.completedAt}):"-"})]})]})]}),(0,r.jsx)(d.J9,{error:B,steps:T,events:J,hooks:W,env:O,run:M,isLoading:U})]})]})}function P(){let e=(0,a.useParams)(),t=(0,a.useSearchParams)(),s=(0,C.Nt)(),l=e.runId,d=t.get("stepId")||t.get("step"),o=t.get("eventId")||t.get("event"),c=t.get("hookId")||t.get("hook");return(0,r.jsx)(n.t,{title:"Run Detail Error",description:"Failed to load run details. Please try navigating back to the home page.",children:(0,r.jsx)(O,{config:s,runId:l,selectedId:d||o||c||void 0})})}},7960:(e,t,s)=>{"use strict";s.d(t,{E:()=>d});var r=s(5386),a=s(7437),n=s(8414),l=s.n(n);function d(e){let{href:t,label:s="Back"}=e;return(0,r.jsxs)(l(),{href:t,className:"inline-flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors mb-2",children:[(0,r.jsx)(a.A,{className:"h-4 w-4"}),s]})}},8252:(e,t,s)=>{Promise.resolve().then(s.bind(s,7307))},8257:(e,t,s)=>{"use strict";s.d(t,{ZI:()=>c,k$:()=>o,m_:()=>d});var r=s(5386),a=s(7384),n=s(4773),l=s(2287);a.Kq;let d=a.bL,o=a.l9,c=n.forwardRef((e,t)=>{let{className:s,sideOffset:n=4,...d}=e;return(0,r.jsx)(a.UC,{ref:t,sideOffset:n,className:(0,l.cn)("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",s),...d})});c.displayName=a.UC.displayName}},e=>{e.O(0,[246,703,337,829,81,383,617,909,624,358],()=>e(e.s=8252)),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[417],{5988:(e,t,s)=>{"use strict";s.d(t,{s:()=>o});var r=s(5386),a=s(1049),n=s(5505),l=s(4773),d=s(8257);function o(e){let{date:t,className:s="",type:o="relative"}=e,[,c]=(0,l.useState)(Date.now()),i="relative"===o?(0,a.o)(new Date(t),new Date):(0,n.B)(new Date(t),{addSuffix:!0}),u=new Date(t).toLocaleString(void 0,{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:"short"});return(0,l.useEffect)(()=>{let e=setInterval(()=>{c(Date.now())},1e3);return()=>clearInterval(e)},[]),(0,r.jsxs)(d.m_,{children:[(0,r.jsx)(d.k$,{asChild:!0,children:(0,r.jsx)("span",{className:"".concat(s," cursor-help border-b border-dotted"),children:i})}),(0,r.jsx)(d.ZI,{children:(0,r.jsx)("p",{children:u})})]})}},6810:(e,t,s)=>{"use strict";s.d(t,{W:()=>n});var r=s(5386),a=s(8257);function n(e){let{status:t,context:s,className:n}=e,l=()=>{switch(t){case"running":return"text-blue-600 dark:text-blue-400";case"completed":return"text-green-600 dark:text-green-400";case"failed":return"text-red-600 dark:text-red-400";case"cancelled":return"text-yellow-600 dark:text-yellow-400";case"pending":return"text-gray-600 dark:text-gray-400";case"paused":return"text-orange-600 dark:text-orange-400";default:return"text-gray-500 dark:text-gray-400"}};if("failed"===t&&(null==s?void 0:s.error)){let e="string"==typeof s.error?s.error:s.error instanceof Error?s.error.message:JSON.stringify(s.error);return(0,r.jsxs)(a.m_,{children:[(0,r.jsx)(a.k$,{asChild:!0,children:(0,r.jsx)("span",{className:"".concat(n," border-b border-dotted cursor-help ").concat(l()),children:t})}),(0,r.jsx)(a.ZI,{className:"max-w-md",children:(0,r.jsx)("p",{className:"text-xs whitespace-pre-wrap break-words",children:e})})]})}return(0,r.jsx)("span",{className:"".concat(n," ").concat(l()),children:t})}},7307:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>P});var r=s(5386),a=s(3283),n=s(7394),l=s(2931),d=s(6006),o=s(3039),c=s(4773),i=s(8150),u=s(7122),x=s(2382),h=s(6016),m=s(2287);function f(e){let{...t}=e;return(0,r.jsx)(x.bL,{"data-slot":"alert-dialog",...t})}function j(e){let{...t}=e;return(0,r.jsx)(x.ZL,{"data-slot":"alert-dialog-portal",...t})}function g(e){let{className:t,...s}=e;return(0,r.jsx)(x.hJ,{"data-slot":"alert-dialog-overlay",className:(0,m.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",t),...s})}function p(e){let{className:t,...s}=e;return(0,r.jsxs)(j,{children:[(0,r.jsx)(g,{}),(0,r.jsx)(x.UC,{"data-slot":"alert-dialog-content",className:(0,m.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",t),...s})]})}function v(e){let{className:t,...s}=e;return(0,r.jsx)("div",{"data-slot":"alert-dialog-header",className:(0,m.cn)("flex flex-col gap-2 text-center sm:text-left",t),...s})}function w(e){let{className:t,...s}=e;return(0,r.jsx)("div",{"data-slot":"alert-dialog-footer",className:(0,m.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t),...s})}function N(e){let{className:t,...s}=e;return(0,r.jsx)(x.hE,{"data-slot":"alert-dialog-title",className:(0,m.cn)("text-lg font-semibold",t),...s})}function y(e){let{className:t,...s}=e;return(0,r.jsx)(x.VY,{"data-slot":"alert-dialog-description",className:(0,m.cn)("text-muted-foreground text-sm",t),...s})}function b(e){let{className:t,...s}=e;return(0,r.jsx)(x.rc,{className:(0,m.cn)((0,h.r)(),t),...s})}function k(e){let{className:t,...s}=e;return(0,r.jsx)(x.ZD,{className:(0,m.cn)((0,h.r)({variant:"outline"}),t),...s})}var C=s(8052),R=s(7960),I=s(8649),A=s(8257);function E(e){let{canCancel:t,cancelling:s,cancelDisabledReason:a,onCancel:n}=e;return(0,r.jsxs)(A.m_,{children:[(0,r.jsx)(A.k$,{asChild:!0,children:(0,r.jsx)("span",{children:(0,r.jsxs)(h.$,{variant:"outline",size:"sm",onClick:n,disabled:!t||s,children:[(0,r.jsx)(I.A,{className:"h-4 w-4"}),s?"Cancelling...":"Cancel"]})})}),a&&(0,r.jsx)(A.ZI,{children:(0,r.jsx)("p",{children:a})})]})}var S=s(7536),_=s(2737);function D(e){let{text:t,children:s,className:a}=e,[n,l]=(0,c.useState)(!1),d=async()=>{try{await navigator.clipboard.writeText(t),l(!0),setTimeout(()=>l(!1),2e3)}catch(e){console.error("Failed to copy text:",e)}};return(0,r.jsxs)("div",{className:(0,m.cn)("flex items-center gap-2 group",a),children:[s,(0,r.jsxs)(A.m_,{children:[(0,r.jsx)(A.k$,{asChild:!0,children:(0,r.jsx)("button",{type:"button",onClick:d,className:"opacity-0 group-hover:opacity-100 transition-opacity","aria-label":"Copy to clipboard",children:n?(0,r.jsx)(S.A,{className:"h-3 w-3 text-green-600"}):(0,r.jsx)(_.A,{className:"h-3 w-3 text-muted-foreground hover:text-foreground"})})}),(0,r.jsx)(A.ZI,{children:(0,r.jsx)("p",{children:n?"Copied!":"Copy to clipboard"})})]})]})}function z(e){let{hasError:t,errorMessage:s}=e;return(0,r.jsx)("div",{className:"flex items-center gap-2",children:(0,r.jsxs)(A.m_,{children:[(0,r.jsx)(A.k$,{asChild:!0,children:(0,r.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,r.jsx)("div",{className:"w-2 h-2 rounded-full ".concat(t?"bg-red-500":"bg-green-500 animate-pulse")}),(0,r.jsx)("span",{className:"text-xs $\n hasError\n ? 'text-red-600 dark:text-red-400'\n : 'text-muted-foreground'",children:t?"Error":"Live"})]})}),(0,r.jsx)(A.ZI,{children:(0,r.jsx)("p",{children:t?"Error updating data: ".concat(s):"Content updates every ".concat(m.Oc/1e3," seconds")})})]})})}var Z=s(5988),$=s(4692);function F(e){let{canRerun:t,rerunning:s,rerunDisabledReason:a,onRerun:n}=e;return(0,r.jsxs)(A.m_,{children:[(0,r.jsx)(A.k$,{asChild:!0,children:(0,r.jsx)("span",{children:(0,r.jsxs)(h.$,{variant:"outline",size:"sm",onClick:n,disabled:!t||s,children:[(0,r.jsx)($.A,{className:"h-4 w-4"}),s?"Re-running...":"Re-run"]})})}),a&&(0,r.jsx)(A.ZI,{children:(0,r.jsx)("p",{children:a})})]})}var L=s(6810);function O(e){var t;let{config:s,runId:n,selectedId:x}=e,h=(0,a.useRouter)(),[m,j]=(0,c.useState)(!1),[g,I]=(0,c.useState)(!1),[A,S]=(0,c.useState)(!1),[_,$]=(0,c.useState)(!1),O=(0,c.useMemo)(()=>(0,C.nO)(s),[s]),{run:P,steps:T,hooks:W,events:J,loading:U,error:B,update:K}=(0,d.Qz)(O,n,{live:!0}),M=null!=P?P:{},Q=async()=>{if(!m)try{j(!0),S(!1),await (0,d.Su)(O,n),await K(),i.oR.success("Run cancelled successfully")}catch(e){console.error("Failed to cancel run:",e),i.oR.error("Failed to cancel run",{description:e instanceof Error?e.message:"An unknown error occurred"})}finally{j(!1)}},q=async()=>{if(!g)try{I(!0),$(!1);let e=await (0,d.Ns)(O,M.runId);i.oR.success("New run started successfully",{description:"Run ID: ".concat(e)}),h.push((0,C.g0)("/run/".concat(e),s))}catch(e){console.error("Failed to re-run workflow:",e),i.oR.error("Failed to start new run",{description:e instanceof Error?e.message:"An unknown error occurred"})}finally{I(!1),$(!1)}};if(B&&!P)return(0,r.jsxs)(u.Fc,{variant:"destructive",className:"m-4",children:[(0,r.jsx)(o.A,{className:"h-4 w-4"}),(0,r.jsx)(u.XL,{children:"Error loading workflow run"}),(0,r.jsx)(u.TN,{children:B.message})]});let V=(null==(t=(0,l.s)(M.workflowName))?void 0:t.shortName)||"?",X="pending"===M.status||"running"===M.status,Y=m?"Cancelling run...":"completed"===M.status?"Run has already completed":"failed"===M.status?"Run has already failed":"cancelled"===M.status?"Run has already been cancelled":"",G="pending"===M.status||"running"===M.status;return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(f,{open:A,onOpenChange:S,children:(0,r.jsxs)(p,{children:[(0,r.jsxs)(v,{children:[(0,r.jsx)(N,{children:"Cancel Workflow Run?"}),(0,r.jsx)(y,{children:"This will stop the workflow execution immediately, and no further steps will be executed. Partial workflow execution may occur. Are you sure you want to cancel the run?"})]}),(0,r.jsxs)(w,{children:[(0,r.jsx)(k,{children:"Keep Running"}),(0,r.jsx)(b,{onClick:Q,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Cancel Run"})]})]})}),(0,r.jsx)(f,{open:_,onOpenChange:$,children:(0,r.jsxs)(p,{children:[(0,r.jsxs)(v,{children:[(0,r.jsx)(N,{children:"Re-run Workflow?"}),(0,r.jsx)(y,{children:"This can potentially re-run code that is meant to only execute once. Are you sure you want to re-run the workflow?"})]}),(0,r.jsxs)(w,{children:[(0,r.jsx)(k,{children:"Cancel"}),(0,r.jsx)(b,{onClick:q,children:"Re-run Workflow"})]})]})}),(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsx)(R.E,{href:(0,C.g0)("/",s)}),(0,r.jsxs)("div",{className:"space-y-4 pb-6 border-b",children:[(0,r.jsxs)("div",{className:"flex items-start justify-between",children:[(0,r.jsx)("div",{className:"mb-6",children:(0,r.jsx)("h1",{className:"text-2xl font-semibold",children:V})}),(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,r.jsx)(z,{hasError:!1,errorMessage:""}),(0,r.jsx)(F,{canRerun:!U&&!G&&!g,rerunning:g,rerunDisabledReason:g?"Re-running workflow...":U?"Loading run data...":G?"Cannot re-run while workflow is still running":"",onRerun:()=>{$(!0)}}),(0,r.jsx)(E,{canCancel:X,cancelling:m,cancelDisabledReason:Y,onCancel:()=>{S(!0)}})]})]}),(0,r.jsxs)("div",{className:"flex items-start gap-8",children:[(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-xs text-muted-foreground",children:"Status"}),(0,r.jsx)(L.W,{status:M.status||"...",context:M})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-xs text-muted-foreground",children:"Run ID"}),(0,r.jsx)(D,{text:M.runId,children:(0,r.jsx)("div",{className:"text-sm mt-0.5 font-mono",children:M.runId})})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-xs text-muted-foreground",children:"Queued"}),(0,r.jsx)("div",{className:"text-sm",children:M.createdAt?(0,r.jsx)(Z.s,{date:M.createdAt}):"-"})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-xs text-muted-foreground",children:"Started"}),(0,r.jsx)("div",{className:"text-sm",children:M.startedAt?(0,r.jsx)(Z.s,{date:M.startedAt}):"-"})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)("div",{className:"text-xs text-muted-foreground",children:"Completed"}),(0,r.jsx)("div",{className:"text-sm",children:M.completedAt?(0,r.jsx)(Z.s,{date:M.completedAt}):"-"})]})]})]}),(0,r.jsx)(d.J9,{error:B,steps:T,events:J,hooks:W,env:O,run:M,isLoading:U})]})]})}function P(){let e=(0,a.useParams)(),t=(0,a.useSearchParams)(),s=(0,C.Nt)(),l=e.runId,d=t.get("stepId")||t.get("step"),o=t.get("eventId")||t.get("event"),c=t.get("hookId")||t.get("hook");return(0,r.jsx)(n.t,{title:"Run Detail Error",description:"Failed to load run details. Please try navigating back to the home page.",children:(0,r.jsx)(O,{config:s,runId:l,selectedId:d||o||c||void 0})})}},7960:(e,t,s)=>{"use strict";s.d(t,{E:()=>d});var r=s(5386),a=s(7437),n=s(8414),l=s.n(n);function d(e){let{href:t,label:s="Back"}=e;return(0,r.jsxs)(l(),{href:t,className:"inline-flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors mb-2",children:[(0,r.jsx)(a.A,{className:"h-4 w-4"}),s]})}},8252:(e,t,s)=>{Promise.resolve().then(s.bind(s,7307))},8257:(e,t,s)=>{"use strict";s.d(t,{ZI:()=>c,k$:()=>o,m_:()=>d});var r=s(5386),a=s(7384),n=s(4773),l=s(2287);a.Kq;let d=a.bL,o=a.l9,c=n.forwardRef((e,t)=>{let{className:s,sideOffset:n=4,...d}=e;return(0,r.jsx)(a.UC,{ref:t,sideOffset:n,className:(0,l.cn)("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",s),...d})});c.displayName=a.UC.displayName}},e=>{e.O(0,[246,703,337,829,81,383,426,909,624,358],()=>e(e.s=8252)),_N_E=e.O()}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[627],{3686:(e,t,r)=>{Promise.resolve().then(r.bind(r,8462))},7437:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(8258).A)("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},7960:(e,t,r)=>{"use strict";r.d(t,{E:()=>l});var s=r(5386),a=r(7437),n=r(8414),c=r.n(n);function l(e){let{href:t,label:r="Back"}=e;return(0,s.jsxs)(c(),{href:t,className:"inline-flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors mb-2",children:[(0,s.jsx)(a.A,{className:"h-4 w-4"}),r]})}},8462:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>x});var s=r(5386),a=r(3283),n=r(4773),c=r(7394),l=r(9373),i=r(2338),d=r(8052),o=r(7960);function u(e){let{env:t,streamId:r}=e,c=(0,a.useParams)().runId,[u,x]=(0,n.useState)([]),[m,h]=(0,n.useState)(!0),[f,g]=(0,n.useState)(null),j=(0,n.useRef)(null),p=(0,n.useRef)(null),v=(0,n.useRef)(0);(0,n.useEffect)(()=>{j.current&&(j.current.scrollTop=j.current.scrollHeight)},[u.length]),(0,n.useEffect)(()=>{let e=!0;p.current=new AbortController;let s=()=>{e&&h(!1)},a=t=>{if(e&&t){let e=v.current++;x(r=>[...r,{id:e,text:t}])}},n=async(e,t)=>{for(;;){var r;if(null==(r=p.current)?void 0:r.signal.aborted)break;let{value:n,done:c}=await e.read();if(c){s();break}n&&n.byteLength>0&&a(t.decode(n,{stream:!0}))}};return(async()=>{try{let e=(await (0,l.bv)(t,r)).getReader(),s=new TextDecoder;await n(e,s)}catch(t){e&&(g(t instanceof Error?t.message:String(t)),h(!1))}})(),()=>{e=!1,p.current&&p.current.abort()}},[t,r]);let b=c?(0,d.g0)("/run/".concat(c),t):(0,d.g0)("/",t);return(0,s.jsxs)("div",{className:"space-y-6",children:[(0,s.jsx)(o.E,{href:b}),(0,s.jsxs)(i.Zp,{children:[(0,s.jsx)(i.aR,{children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)(i.ZB,{className:"font-mono text-sm",children:r}),(0,s.jsx)("div",{className:"flex items-center gap-2",children:(0,s.jsx)("span",{className:"text-sm ".concat(m?"text-green-600 dark:text-green-400":"text-gray-600 dark:text-gray-400"),children:m?"● Live":"● Closed"})})]})}),(0,s.jsx)(i.Wu,{children:(0,s.jsx)("div",{ref:j,className:"bg-black text-green-400 font-mono text-sm p-4 rounded-md h-[600px] overflow-auto whitespace-pre-wrap break-words",children:f?(0,s.jsxs)("div",{className:"text-red-400",children:[(0,s.jsx)("div",{children:"Error reading stream:"}),(0,s.jsx)("div",{children:f})]}):0===u.length?(0,s.jsx)("div",{className:"text-gray-500",children:m?"Waiting for stream data...":"Stream is empty"}):(0,s.jsx)(s.Fragment,{children:u.map(e=>(0,s.jsx)("span",{children:e.text},"".concat(r,"-chunk-").concat(e.id)))})})})]})]})}function x(){let e=(0,a.useParams)(),t=(0,d.Nt)(),r=(0,n.useMemo)(()=>(0,d.nO)(t),[t]),l=e.streamId;return(0,s.jsx)(c.t,{title:"Stream Error",description:"Failed to load stream data. Please try navigating back and selecting the stream again.",children:(0,s.jsx)(u,{env:r,streamId:l})})}}},e=>{e.O(0,[246,703,829,617,909,624,358],()=>e(e.s=3686)),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[627],{3686:(e,t,r)=>{Promise.resolve().then(r.bind(r,8462))},7437:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(8258).A)("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},7960:(e,t,r)=>{"use strict";r.d(t,{E:()=>l});var s=r(5386),a=r(7437),n=r(8414),c=r.n(n);function l(e){let{href:t,label:r="Back"}=e;return(0,s.jsxs)(c(),{href:t,className:"inline-flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors mb-2",children:[(0,s.jsx)(a.A,{className:"h-4 w-4"}),r]})}},8462:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>x});var s=r(5386),a=r(3283),n=r(4773),c=r(7394),l=r(6006),i=r(2338),d=r(8052),o=r(7960);function u(e){let{env:t,streamId:r}=e,c=(0,a.useParams)().runId,[u,x]=(0,n.useState)([]),[m,h]=(0,n.useState)(!0),[f,g]=(0,n.useState)(null),j=(0,n.useRef)(null),p=(0,n.useRef)(null),v=(0,n.useRef)(0);(0,n.useEffect)(()=>{j.current&&(j.current.scrollTop=j.current.scrollHeight)},[u.length]),(0,n.useEffect)(()=>{let e=!0;p.current=new AbortController;let s=()=>{e&&h(!1)},a=t=>{if(e&&t){let e=v.current++;x(r=>[...r,{id:e,text:t}])}},n=async(e,t)=>{for(;;){var r;if(null==(r=p.current)?void 0:r.signal.aborted)break;let{value:n,done:c}=await e.read();if(c){s();break}n&&n.byteLength>0&&a(t.decode(n,{stream:!0}))}};return(async()=>{try{let e=(await (0,l.bv)(t,r)).getReader(),s=new TextDecoder;await n(e,s)}catch(t){e&&(g(t instanceof Error?t.message:String(t)),h(!1))}})(),()=>{e=!1,p.current&&p.current.abort()}},[t,r]);let b=c?(0,d.g0)("/run/".concat(c),t):(0,d.g0)("/",t);return(0,s.jsxs)("div",{className:"space-y-6",children:[(0,s.jsx)(o.E,{href:b}),(0,s.jsxs)(i.Zp,{children:[(0,s.jsx)(i.aR,{children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)(i.ZB,{className:"font-mono text-sm",children:r}),(0,s.jsx)("div",{className:"flex items-center gap-2",children:(0,s.jsx)("span",{className:"text-sm ".concat(m?"text-green-600 dark:text-green-400":"text-gray-600 dark:text-gray-400"),children:m?"● Live":"● Closed"})})]})}),(0,s.jsx)(i.Wu,{children:(0,s.jsx)("div",{ref:j,className:"bg-black text-green-400 font-mono text-sm p-4 rounded-md h-[600px] overflow-auto whitespace-pre-wrap break-words",children:f?(0,s.jsxs)("div",{className:"text-red-400",children:[(0,s.jsx)("div",{children:"Error reading stream:"}),(0,s.jsx)("div",{children:f})]}):0===u.length?(0,s.jsx)("div",{className:"text-gray-500",children:m?"Waiting for stream data...":"Stream is empty"}):(0,s.jsx)(s.Fragment,{children:u.map(e=>(0,s.jsx)("span",{children:e.text},"".concat(r,"-chunk-").concat(e.id)))})})})]})]})}function x(){let e=(0,a.useParams)(),t=(0,d.Nt)(),r=(0,n.useMemo)(()=>(0,d.nO)(t),[t]),l=e.streamId;return(0,s.jsx)(c.t,{title:"Stream Error",description:"Failed to load stream data. Please try navigating back and selecting the stream again.",children:(0,s.jsx)(u,{env:r,streamId:l})})}}},e=>{e.O(0,[246,703,829,426,909,624,358],()=>e(e.s=3686)),_N_E=e.O()}]);