@workflow/web 4.0.1-beta.21 → 4.0.1-beta.23
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 +2 -2
- package/.next/fallback-build-manifest.json +2 -2
- package/.next/prerender-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/server-reference-manifest.json +36 -21
- 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/server-reference-manifest.json +37 -22
- 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/server-reference-manifest.json +37 -22
- 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/[root-of-the-server]__1365a866._.js +3 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__1365a866._.js.map +1 -1
- 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/_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 +1 -1
- package/.next/server/chunks/ssr/_c8bf1458._.js.map +1 -1
- package/.next/server/chunks/ssr/packages_web_src_19bb3951._.js +3 -0
- package/.next/server/chunks/ssr/packages_web_src_19bb3951._.js.map +1 -0
- 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/chunks/ssr/packages_web_src_app_run_[runId]_page_tsx_c7d0b139._.js +1 -1
- package/.next/server/chunks/ssr/packages_web_src_app_run_[runId]_page_tsx_c7d0b139._.js.map +1 -1
- package/.next/server/pages/500.html +2 -2
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +56 -27
- package/.next/static/chunks/{1633a4677cb7eacd.js → 30b98d965a129331.js} +1 -1
- package/.next/static/chunks/{a2fdd31ef7d1ed50.js → 31d3eed44663a2d8.js} +3 -3
- package/.next/static/chunks/4b98d98ef7601f2c.js +1 -0
- package/.next/static/chunks/50691ade475383ae.js +5 -0
- package/.next/static/chunks/837b0d5cc6ee8f87.js +60 -0
- package/.next/static/chunks/8f6413f9323a44e5.js +14 -0
- package/.next/static/chunks/{d3781b000675e89a.js → ce42d7684243cb43.js} +1 -1
- package/.next/trace +1 -1
- package/.next/trace-build +1 -1
- package/package.json +4 -3
- package/.next/server/chunks/ssr/packages_web_src_components_ui_select_tsx_7c5238ef._.js +0 -3
- package/.next/server/chunks/ssr/packages_web_src_components_ui_select_tsx_7c5238ef._.js.map +0 -1
- package/.next/static/chunks/7993564ea9cd3862.js +0 -60
- package/.next/static/chunks/915c48af605695f8.js +0 -5
- package/.next/static/chunks/ebaf4c277606b4fc.js +0 -14
- /package/.next/static/{1Gd0u_mHFXgTr2DR4OTNR → Ven1ulyDX7wtUfVstJodR}/_buildManifest.js +0 -0
- /package/.next/static/{1Gd0u_mHFXgTr2DR4OTNR → Ven1ulyDX7wtUfVstJodR}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{1Gd0u_mHFXgTr2DR4OTNR → Ven1ulyDX7wtUfVstJodR}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[84819,a=>{"use strict";var b=a.i(29410),c=a.i(386021),d=(0,c.createServerReference)("00834893a4627c2e34d4e9f9af2b13ddcc5fa0d3c7",c.callServer,void 0,c.findSourceMapURL,"checkWorldsAvailability"),e=(0,c.createServerReference)("40c2efafd73cce5bffcdc92ad70f000ca36b42c1db",c.callServer,void 0,c.findSourceMapURL,"resolveDataDirInfo");function f(){return(0,b.default)("worlds-availability",d,{revalidateOnFocus:!1})}function g(a){return(0,b.default)(a?`data-dir-info:${a}`:"data-dir-info:cwd",()=>e(a),{revalidateOnFocus:!1})}a.s(["useDataDirInfo",()=>g,"useWorldsAvailability",()=>f],84819)},175196,8930,665106,a=>{"use strict";let b;var c=a.i(857446),d=a.i(253220),e=a.i(991307);function f(a,[b,c]){return Math.min(c,Math.max(b,a))}var g=a.i(559653),h=a.i(523358),i=a.i(840861),j=a.i(333702),k=a.i(539536),l=a.i(443343),m=0;function n(){d.useEffect(()=>{let a=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",a[0]??o()),document.body.insertAdjacentElement("beforeend",a[1]??o()),m++,()=>{1===m&&document.querySelectorAll("[data-radix-focus-guard]").forEach(a=>a.remove()),m--}},[])}function o(){let a=document.createElement("span");return a.setAttribute("data-radix-focus-guard",""),a.tabIndex=0,a.style.outline="none",a.style.opacity="0",a.style.position="fixed",a.style.pointerEvents="none",a}a.s(["useFocusGuards",()=>n],8930);var p=a.i(518243),q=a.i(393352),r="focusScope.autoFocusOnMount",s="focusScope.autoFocusOnUnmount",t={bubbles:!1,cancelable:!0},u=d.forwardRef((a,b)=>{let{loop:e=!1,trapped:f=!1,onMountAutoFocus:g,onUnmountAutoFocus:h,...j}=a,[k,l]=d.useState(null),m=(0,q.useCallbackRef)(g),n=(0,q.useCallbackRef)(h),o=d.useRef(null),u=(0,i.useComposedRefs)(b,a=>l(a)),z=d.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;d.useEffect(()=>{if(f){let a=function(a){if(z.paused||!k)return;let b=a.target;k.contains(b)?o.current=b:x(o.current,{select:!0})},b=function(a){if(z.paused||!k)return;let b=a.relatedTarget;null!==b&&(k.contains(b)||x(o.current,{select:!0}))};document.addEventListener("focusin",a),document.addEventListener("focusout",b);let c=new MutationObserver(function(a){if(document.activeElement===document.body)for(let b of a)b.removedNodes.length>0&&x(k)});return k&&c.observe(k,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",a),document.removeEventListener("focusout",b),c.disconnect()}}},[f,k,z.paused]),d.useEffect(()=>{if(k){y.add(z);let a=document.activeElement;if(!k.contains(a)){let b=new CustomEvent(r,t);k.addEventListener(r,m),k.dispatchEvent(b),b.defaultPrevented||(function(a,{select:b=!1}={}){let c=document.activeElement;for(let d of a)if(x(d,{select:b}),document.activeElement!==c)return}(v(k).filter(a=>"A"!==a.tagName),{select:!0}),document.activeElement===a&&x(k))}return()=>{k.removeEventListener(r,m),setTimeout(()=>{let b=new CustomEvent(s,t);k.addEventListener(s,n),k.dispatchEvent(b),b.defaultPrevented||x(a??document.body,{select:!0}),k.removeEventListener(s,n),y.remove(z)},0)}}},[k,m,n,z]);let A=d.useCallback(a=>{if(!e&&!f||z.paused)return;let b="Tab"===a.key&&!a.altKey&&!a.ctrlKey&&!a.metaKey,c=document.activeElement;if(b&&c){var d;let b,f=a.currentTarget,[g,h]=[w(b=v(d=f),d),w(b.reverse(),d)];g&&h?a.shiftKey||c!==h?a.shiftKey&&c===g&&(a.preventDefault(),e&&x(h,{select:!0})):(a.preventDefault(),e&&x(g,{select:!0})):c===f&&a.preventDefault()}},[e,f,z.paused]);return(0,c.jsx)(p.Primitive.div,{tabIndex:-1,...j,ref:u,onKeyDown:A})});function v(a){let b=[],c=document.createTreeWalker(a,NodeFilter.SHOW_ELEMENT,{acceptNode:a=>{let b="INPUT"===a.tagName&&"hidden"===a.type;return a.disabled||a.hidden||b?NodeFilter.FILTER_SKIP:a.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;c.nextNode();)b.push(c.currentNode);return b}function w(a,b){for(let c of a)if(!function(a,{upTo:b}){if("hidden"===getComputedStyle(a).visibility)return!0;for(;a&&(void 0===b||a!==b);){if("none"===getComputedStyle(a).display)return!0;a=a.parentElement}return!1}(c,{upTo:b}))return c}function x(a,{select:b=!1}={}){if(a&&a.focus){var c;let d=document.activeElement;a.focus({preventScroll:!0}),a!==d&&(c=a)instanceof HTMLInputElement&&"select"in c&&b&&a.select()}}u.displayName="FocusScope";var y=(b=[],{add(a){let c=b[0];a!==c&&c?.pause(),(b=z(b,a)).unshift(a)},remove(a){b=z(b,a),b[0]?.resume()}});function z(a,b){let c=[...a],d=c.indexOf(b);return -1!==d&&c.splice(d,1),c}a.s(["FocusScope",()=>u],665106);var A=a.i(192534),B=a.i(248968),C=a.i(549033),D=a.i(523776),E=a.i(984295),F=a.i(677482),G=a.i(721777),H=a.i(516164),I=a.i(513358),J=[" ","Enter","ArrowUp","ArrowDown"],K=[" ","Enter"],L="Select",[M,N,O]=(0,h.createCollection)(L),[P,Q]=(0,j.createContextScope)(L,[O,B.createPopperScope]),R=(0,B.createPopperScope)(),[S,T]=P(L),[U,V]=P(L),W=a=>{let{__scopeSelect:b,children:e,open:f,defaultOpen:g,onOpenChange:h,value:i,defaultValue:j,onValueChange:l,dir:m,name:n,autoComplete:o,disabled:p,required:q,form:r}=a,s=R(b),[t,u]=d.useState(null),[v,w]=d.useState(null),[x,y]=d.useState(!1),z=(0,k.useDirection)(m),[C,D]=(0,E.useControllableState)({prop:f,defaultProp:g??!1,onChange:h,caller:L}),[F,G]=(0,E.useControllableState)({prop:i,defaultProp:j,onChange:l,caller:L}),H=d.useRef(null),I=!t||r||!!t.closest("form"),[J,K]=d.useState(new Set),N=Array.from(J).map(a=>a.props.value).join(";");return(0,c.jsx)(B.Root,{...s,children:(0,c.jsxs)(S,{required:q,scope:b,trigger:t,onTriggerChange:u,valueNode:v,onValueNodeChange:w,valueNodeHasChildren:x,onValueNodeHasChildrenChange:y,contentId:(0,A.useId)(),value:F,onValueChange:G,open:C,onOpenChange:D,dir:z,triggerPointerDownPosRef:H,disabled:p,children:[(0,c.jsx)(M.Provider,{scope:b,children:(0,c.jsx)(U,{scope:a.__scopeSelect,onNativeOptionAdd:d.useCallback(a=>{K(b=>new Set(b).add(a))},[]),onNativeOptionRemove:d.useCallback(a=>{K(b=>{let c=new Set(b);return c.delete(a),c})},[]),children:e})}),I?(0,c.jsxs)(aH,{"aria-hidden":!0,required:q,tabIndex:-1,name:n,autoComplete:o,value:F,onChange:a=>G(a.target.value),disabled:p,form:r,children:[void 0===F?(0,c.jsx)("option",{value:""}):null,Array.from(J)]},N):null]})})};W.displayName=L;var X="SelectTrigger",Y=d.forwardRef((a,b)=>{let{__scopeSelect:e,disabled:f=!1,...h}=a,j=R(e),k=T(X,e),l=k.disabled||f,m=(0,i.useComposedRefs)(b,k.onTriggerChange),n=N(e),o=d.useRef("touch"),[q,r,s]=aJ(a=>{let b=n().filter(a=>!a.disabled),c=b.find(a=>a.value===k.value),d=aK(b,a,c);void 0!==d&&k.onValueChange(d.value)}),t=a=>{l||(k.onOpenChange(!0),s()),a&&(k.triggerPointerDownPosRef.current={x:Math.round(a.pageX),y:Math.round(a.pageY)})};return(0,c.jsx)(B.Anchor,{asChild:!0,...j,children:(0,c.jsx)(p.Primitive.button,{type:"button",role:"combobox","aria-controls":k.contentId,"aria-expanded":k.open,"aria-required":k.required,"aria-autocomplete":"none",dir:k.dir,"data-state":k.open?"open":"closed",disabled:l,"data-disabled":l?"":void 0,"data-placeholder":aI(k.value)?"":void 0,...h,ref:m,onClick:(0,g.composeEventHandlers)(h.onClick,a=>{a.currentTarget.focus(),"mouse"!==o.current&&t(a)}),onPointerDown:(0,g.composeEventHandlers)(h.onPointerDown,a=>{o.current=a.pointerType;let b=a.target;b.hasPointerCapture(a.pointerId)&&b.releasePointerCapture(a.pointerId),0===a.button&&!1===a.ctrlKey&&"mouse"===a.pointerType&&(t(a),a.preventDefault())}),onKeyDown:(0,g.composeEventHandlers)(h.onKeyDown,a=>{let b=""!==q.current;a.ctrlKey||a.altKey||a.metaKey||1!==a.key.length||r(a.key),(!b||" "!==a.key)&&J.includes(a.key)&&(t(),a.preventDefault())})})})});Y.displayName=X;var Z="SelectValue",$=d.forwardRef((a,b)=>{let{__scopeSelect:d,className:e,style:f,children:g,placeholder:h="",...j}=a,k=T(Z,d),{onValueNodeHasChildrenChange:l}=k,m=void 0!==g,n=(0,i.useComposedRefs)(b,k.onValueNodeChange);return(0,F.useLayoutEffect)(()=>{l(m)},[l,m]),(0,c.jsx)(p.Primitive.span,{...j,ref:n,style:{pointerEvents:"none"},children:aI(k.value)?(0,c.jsx)(c.Fragment,{children:h}):g})});$.displayName=Z;var _=d.forwardRef((a,b)=>{let{__scopeSelect:d,children:e,...f}=a;return(0,c.jsx)(p.Primitive.span,{"aria-hidden":!0,...f,ref:b,children:e||"▼"})});_.displayName="SelectIcon";var aa=a=>(0,c.jsx)(C.Portal,{asChild:!0,...a});aa.displayName="SelectPortal";var ab="SelectContent",ac=d.forwardRef((a,b)=>{let f=T(ab,a.__scopeSelect),[g,h]=d.useState();return((0,F.useLayoutEffect)(()=>{h(new DocumentFragment)},[]),f.open)?(0,c.jsx)(ag,{...a,ref:b}):g?e.createPortal((0,c.jsx)(ad,{scope:a.__scopeSelect,children:(0,c.jsx)(M.Slot,{scope:a.__scopeSelect,children:(0,c.jsx)("div",{children:a.children})})}),g):null});ac.displayName=ab;var[ad,ae]=P(ab),af=(0,D.createSlot)("SelectContent.RemoveScroll"),ag=d.forwardRef((a,b)=>{let{__scopeSelect:e,position:f="item-aligned",onCloseAutoFocus:h,onEscapeKeyDown:j,onPointerDownOutside:k,side:m,sideOffset:o,align:p,alignOffset:q,arrowPadding:r,collisionBoundary:s,collisionPadding:t,sticky:v,hideWhenDetached:w,avoidCollisions:x,...y}=a,z=T(ab,e),[A,B]=d.useState(null),[C,D]=d.useState(null),E=(0,i.useComposedRefs)(b,a=>B(a)),[F,G]=d.useState(null),[J,K]=d.useState(null),L=N(e),[M,O]=d.useState(!1),P=d.useRef(!1);d.useEffect(()=>{if(A)return(0,H.hideOthers)(A)},[A]),n();let Q=d.useCallback(a=>{let[b,...c]=L().map(a=>a.ref.current),[d]=c.slice(-1),e=document.activeElement;for(let c of a)if(c===e||(c?.scrollIntoView({block:"nearest"}),c===b&&C&&(C.scrollTop=0),c===d&&C&&(C.scrollTop=C.scrollHeight),c?.focus(),document.activeElement!==e))return},[L,C]),R=d.useCallback(()=>Q([F,A]),[Q,F,A]);d.useEffect(()=>{M&&R()},[M,R]);let{onOpenChange:S,triggerPointerDownPosRef:U}=z;d.useEffect(()=>{if(A){let a={x:0,y:0},b=b=>{a={x:Math.abs(Math.round(b.pageX)-(U.current?.x??0)),y:Math.abs(Math.round(b.pageY)-(U.current?.y??0))}},c=c=>{a.x<=10&&a.y<=10?c.preventDefault():A.contains(c.target)||S(!1),document.removeEventListener("pointermove",b),U.current=null};return null!==U.current&&(document.addEventListener("pointermove",b),document.addEventListener("pointerup",c,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",b),document.removeEventListener("pointerup",c,{capture:!0})}}},[A,S,U]),d.useEffect(()=>{let a=()=>S(!1);return window.addEventListener("blur",a),window.addEventListener("resize",a),()=>{window.removeEventListener("blur",a),window.removeEventListener("resize",a)}},[S]);let[V,W]=aJ(a=>{let b=L().filter(a=>!a.disabled),c=b.find(a=>a.ref.current===document.activeElement),d=aK(b,a,c);d&&setTimeout(()=>d.ref.current.focus())}),X=d.useCallback((a,b,c)=>{let d=!P.current&&!c;(void 0!==z.value&&z.value===b||d)&&(G(a),d&&(P.current=!0))},[z.value]),Y=d.useCallback(()=>A?.focus(),[A]),Z=d.useCallback((a,b,c)=>{let d=!P.current&&!c;(void 0!==z.value&&z.value===b||d)&&K(a)},[z.value]),$="popper"===f?ai:ah,_=$===ai?{side:m,sideOffset:o,align:p,alignOffset:q,arrowPadding:r,collisionBoundary:s,collisionPadding:t,sticky:v,hideWhenDetached:w,avoidCollisions:x}:{};return(0,c.jsx)(ad,{scope:e,content:A,viewport:C,onViewportChange:D,itemRefCallback:X,selectedItem:F,onItemLeave:Y,itemTextRefCallback:Z,focusSelectedItem:R,selectedItemText:J,position:f,isPositioned:M,searchRef:V,children:(0,c.jsx)(I.RemoveScroll,{as:af,allowPinchZoom:!0,children:(0,c.jsx)(u,{asChild:!0,trapped:z.open,onMountAutoFocus:a=>{a.preventDefault()},onUnmountAutoFocus:(0,g.composeEventHandlers)(h,a=>{z.trigger?.focus({preventScroll:!0}),a.preventDefault()}),children:(0,c.jsx)(l.DismissableLayer,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:j,onPointerDownOutside:k,onFocusOutside:a=>a.preventDefault(),onDismiss:()=>z.onOpenChange(!1),children:(0,c.jsx)($,{role:"listbox",id:z.contentId,"data-state":z.open?"open":"closed",dir:z.dir,onContextMenu:a=>a.preventDefault(),...y,..._,onPlaced:()=>O(!0),ref:E,style:{display:"flex",flexDirection:"column",outline:"none",...y.style},onKeyDown:(0,g.composeEventHandlers)(y.onKeyDown,a=>{let b=a.ctrlKey||a.altKey||a.metaKey;if("Tab"===a.key&&a.preventDefault(),b||1!==a.key.length||W(a.key),["ArrowUp","ArrowDown","Home","End"].includes(a.key)){let b=L().filter(a=>!a.disabled).map(a=>a.ref.current);if(["ArrowUp","End"].includes(a.key)&&(b=b.slice().reverse()),["ArrowUp","ArrowDown"].includes(a.key)){let c=a.target,d=b.indexOf(c);b=b.slice(d+1)}setTimeout(()=>Q(b)),a.preventDefault()}})})})})})})});ag.displayName="SelectContentImpl";var ah=d.forwardRef((a,b)=>{let{__scopeSelect:e,onPlaced:g,...h}=a,j=T(ab,e),k=ae(ab,e),[l,m]=d.useState(null),[n,o]=d.useState(null),q=(0,i.useComposedRefs)(b,a=>o(a)),r=N(e),s=d.useRef(!1),t=d.useRef(!0),{viewport:u,selectedItem:v,selectedItemText:w,focusSelectedItem:x}=k,y=d.useCallback(()=>{if(j.trigger&&j.valueNode&&l&&n&&u&&v&&w){let a=j.trigger.getBoundingClientRect(),b=n.getBoundingClientRect(),c=j.valueNode.getBoundingClientRect(),d=w.getBoundingClientRect();if("rtl"!==j.dir){let e=d.left-b.left,g=c.left-e,h=a.left-g,i=a.width+h,j=Math.max(i,b.width),k=f(g,[10,Math.max(10,window.innerWidth-10-j)]);l.style.minWidth=i+"px",l.style.left=k+"px"}else{let e=b.right-d.right,g=window.innerWidth-c.right-e,h=window.innerWidth-a.right-g,i=a.width+h,j=Math.max(i,b.width),k=f(g,[10,Math.max(10,window.innerWidth-10-j)]);l.style.minWidth=i+"px",l.style.right=k+"px"}let e=r(),h=window.innerHeight-20,i=u.scrollHeight,k=window.getComputedStyle(n),m=parseInt(k.borderTopWidth,10),o=parseInt(k.paddingTop,10),p=parseInt(k.borderBottomWidth,10),q=m+o+i+parseInt(k.paddingBottom,10)+p,t=Math.min(5*v.offsetHeight,q),x=window.getComputedStyle(u),y=parseInt(x.paddingTop,10),z=parseInt(x.paddingBottom,10),A=a.top+a.height/2-10,B=v.offsetHeight/2,C=m+o+(v.offsetTop+B);if(C<=A){let a=e.length>0&&v===e[e.length-1].ref.current;l.style.bottom="0px";let b=Math.max(h-A,B+(a?z:0)+(n.clientHeight-u.offsetTop-u.offsetHeight)+p);l.style.height=C+b+"px"}else{let a=e.length>0&&v===e[0].ref.current;l.style.top="0px";let b=Math.max(A,m+u.offsetTop+(a?y:0)+B);l.style.height=b+(q-C)+"px",u.scrollTop=C-A+u.offsetTop}l.style.margin="10px 0",l.style.minHeight=t+"px",l.style.maxHeight=h+"px",g?.(),requestAnimationFrame(()=>s.current=!0)}},[r,j.trigger,j.valueNode,l,n,u,v,w,j.dir,g]);(0,F.useLayoutEffect)(()=>y(),[y]);let[z,A]=d.useState();(0,F.useLayoutEffect)(()=>{n&&A(window.getComputedStyle(n).zIndex)},[n]);let B=d.useCallback(a=>{a&&!0===t.current&&(y(),x?.(),t.current=!1)},[y,x]);return(0,c.jsx)(aj,{scope:e,contentWrapper:l,shouldExpandOnScrollRef:s,onScrollButtonChange:B,children:(0,c.jsx)("div",{ref:m,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:z},children:(0,c.jsx)(p.Primitive.div,{...h,ref:q,style:{boxSizing:"border-box",maxHeight:"100%",...h.style}})})})});ah.displayName="SelectItemAlignedPosition";var ai=d.forwardRef((a,b)=>{let{__scopeSelect:d,align:e="start",collisionPadding:f=10,...g}=a,h=R(d);return(0,c.jsx)(B.Content,{...h,...g,ref:b,align:e,collisionPadding:f,style:{boxSizing:"border-box",...g.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ai.displayName="SelectPopperPosition";var[aj,ak]=P(ab,{}),al="SelectViewport",am=d.forwardRef((a,b)=>{let{__scopeSelect:e,nonce:f,...h}=a,j=ae(al,e),k=ak(al,e),l=(0,i.useComposedRefs)(b,j.onViewportChange),m=d.useRef(0);return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:f}),(0,c.jsx)(M.Slot,{scope:e,children:(0,c.jsx)(p.Primitive.div,{"data-radix-select-viewport":"",role:"presentation",...h,ref:l,style:{position:"relative",flex:1,overflow:"hidden auto",...h.style},onScroll:(0,g.composeEventHandlers)(h.onScroll,a=>{let b=a.currentTarget,{contentWrapper:c,shouldExpandOnScrollRef:d}=k;if(d?.current&&c){let a=Math.abs(m.current-b.scrollTop);if(a>0){let d=window.innerHeight-20,e=Math.max(parseFloat(c.style.minHeight),parseFloat(c.style.height));if(e<d){let f=e+a,g=Math.min(d,f),h=f-g;c.style.height=g+"px","0px"===c.style.bottom&&(b.scrollTop=h>0?h:0,c.style.justifyContent="flex-end")}}}m.current=b.scrollTop})})})]})});am.displayName=al;var an="SelectGroup",[ao,ap]=P(an);d.forwardRef((a,b)=>{let{__scopeSelect:d,...e}=a,f=(0,A.useId)();return(0,c.jsx)(ao,{scope:d,id:f,children:(0,c.jsx)(p.Primitive.div,{role:"group","aria-labelledby":f,...e,ref:b})})}).displayName=an;var aq="SelectLabel",ar=d.forwardRef((a,b)=>{let{__scopeSelect:d,...e}=a,f=ap(aq,d);return(0,c.jsx)(p.Primitive.div,{id:f.id,...e,ref:b})});ar.displayName=aq;var as="SelectItem",[at,au]=P(as),av=d.forwardRef((a,b)=>{let{__scopeSelect:e,value:f,disabled:h=!1,textValue:j,...k}=a,l=T(as,e),m=ae(as,e),n=l.value===f,[o,q]=d.useState(j??""),[r,s]=d.useState(!1),t=(0,i.useComposedRefs)(b,a=>m.itemRefCallback?.(a,f,h)),u=(0,A.useId)(),v=d.useRef("touch"),w=()=>{h||(l.onValueChange(f),l.onOpenChange(!1))};if(""===f)throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return(0,c.jsx)(at,{scope:e,value:f,disabled:h,textId:u,isSelected:n,onItemTextChange:d.useCallback(a=>{q(b=>b||(a?.textContent??"").trim())},[]),children:(0,c.jsx)(M.ItemSlot,{scope:e,value:f,disabled:h,textValue:o,children:(0,c.jsx)(p.Primitive.div,{role:"option","aria-labelledby":u,"data-highlighted":r?"":void 0,"aria-selected":n&&r,"data-state":n?"checked":"unchecked","aria-disabled":h||void 0,"data-disabled":h?"":void 0,tabIndex:h?void 0:-1,...k,ref:t,onFocus:(0,g.composeEventHandlers)(k.onFocus,()=>s(!0)),onBlur:(0,g.composeEventHandlers)(k.onBlur,()=>s(!1)),onClick:(0,g.composeEventHandlers)(k.onClick,()=>{"mouse"!==v.current&&w()}),onPointerUp:(0,g.composeEventHandlers)(k.onPointerUp,()=>{"mouse"===v.current&&w()}),onPointerDown:(0,g.composeEventHandlers)(k.onPointerDown,a=>{v.current=a.pointerType}),onPointerMove:(0,g.composeEventHandlers)(k.onPointerMove,a=>{v.current=a.pointerType,h?m.onItemLeave?.():"mouse"===v.current&&a.currentTarget.focus({preventScroll:!0})}),onPointerLeave:(0,g.composeEventHandlers)(k.onPointerLeave,a=>{a.currentTarget===document.activeElement&&m.onItemLeave?.()}),onKeyDown:(0,g.composeEventHandlers)(k.onKeyDown,a=>{(m.searchRef?.current===""||" "!==a.key)&&(K.includes(a.key)&&w()," "===a.key&&a.preventDefault())})})})})});av.displayName=as;var aw="SelectItemText",ax=d.forwardRef((a,b)=>{let{__scopeSelect:f,className:g,style:h,...j}=a,k=T(aw,f),l=ae(aw,f),m=au(aw,f),n=V(aw,f),[o,q]=d.useState(null),r=(0,i.useComposedRefs)(b,a=>q(a),m.onItemTextChange,a=>l.itemTextRefCallback?.(a,m.value,m.disabled)),s=o?.textContent,t=d.useMemo(()=>(0,c.jsx)("option",{value:m.value,disabled:m.disabled,children:s},m.value),[m.disabled,m.value,s]),{onNativeOptionAdd:u,onNativeOptionRemove:v}=n;return(0,F.useLayoutEffect)(()=>(u(t),()=>v(t)),[u,v,t]),(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(p.Primitive.span,{id:m.textId,...j,ref:r}),m.isSelected&&k.valueNode&&!k.valueNodeHasChildren?e.createPortal(j.children,k.valueNode):null]})});ax.displayName=aw;var ay="SelectItemIndicator",az=d.forwardRef((a,b)=>{let{__scopeSelect:d,...e}=a;return au(ay,d).isSelected?(0,c.jsx)(p.Primitive.span,{"aria-hidden":!0,...e,ref:b}):null});az.displayName=ay;var aA="SelectScrollUpButton",aB=d.forwardRef((a,b)=>{let e=ae(aA,a.__scopeSelect),f=ak(aA,a.__scopeSelect),[g,h]=d.useState(!1),j=(0,i.useComposedRefs)(b,f.onScrollButtonChange);return(0,F.useLayoutEffect)(()=>{if(e.viewport&&e.isPositioned){let a=function(){h(b.scrollTop>0)},b=e.viewport;return a(),b.addEventListener("scroll",a),()=>b.removeEventListener("scroll",a)}},[e.viewport,e.isPositioned]),g?(0,c.jsx)(aE,{...a,ref:j,onAutoScroll:()=>{let{viewport:a,selectedItem:b}=e;a&&b&&(a.scrollTop=a.scrollTop-b.offsetHeight)}}):null});aB.displayName=aA;var aC="SelectScrollDownButton",aD=d.forwardRef((a,b)=>{let e=ae(aC,a.__scopeSelect),f=ak(aC,a.__scopeSelect),[g,h]=d.useState(!1),j=(0,i.useComposedRefs)(b,f.onScrollButtonChange);return(0,F.useLayoutEffect)(()=>{if(e.viewport&&e.isPositioned){let a=function(){let a=b.scrollHeight-b.clientHeight;h(Math.ceil(b.scrollTop)<a)},b=e.viewport;return a(),b.addEventListener("scroll",a),()=>b.removeEventListener("scroll",a)}},[e.viewport,e.isPositioned]),g?(0,c.jsx)(aE,{...a,ref:j,onAutoScroll:()=>{let{viewport:a,selectedItem:b}=e;a&&b&&(a.scrollTop=a.scrollTop+b.offsetHeight)}}):null});aD.displayName=aC;var aE=d.forwardRef((a,b)=>{let{__scopeSelect:e,onAutoScroll:f,...h}=a,i=ae("SelectScrollButton",e),j=d.useRef(null),k=N(e),l=d.useCallback(()=>{null!==j.current&&(window.clearInterval(j.current),j.current=null)},[]);return d.useEffect(()=>()=>l(),[l]),(0,F.useLayoutEffect)(()=>{let a=k().find(a=>a.ref.current===document.activeElement);a?.ref.current?.scrollIntoView({block:"nearest"})},[k]),(0,c.jsx)(p.Primitive.div,{"aria-hidden":!0,...h,ref:b,style:{flexShrink:0,...h.style},onPointerDown:(0,g.composeEventHandlers)(h.onPointerDown,()=>{null===j.current&&(j.current=window.setInterval(f,50))}),onPointerMove:(0,g.composeEventHandlers)(h.onPointerMove,()=>{i.onItemLeave?.(),null===j.current&&(j.current=window.setInterval(f,50))}),onPointerLeave:(0,g.composeEventHandlers)(h.onPointerLeave,()=>{l()})})}),aF=d.forwardRef((a,b)=>{let{__scopeSelect:d,...e}=a;return(0,c.jsx)(p.Primitive.div,{"aria-hidden":!0,...e,ref:b})});aF.displayName="SelectSeparator";var aG="SelectArrow";d.forwardRef((a,b)=>{let{__scopeSelect:d,...e}=a,f=R(d),g=T(aG,d),h=ae(aG,d);return g.open&&"popper"===h.position?(0,c.jsx)(B.Arrow,{...f,...e,ref:b}):null}).displayName=aG;var aH=d.forwardRef(({__scopeSelect:a,value:b,...e},f)=>{let g,h=d.useRef(null),j=(0,i.useComposedRefs)(f,h),k=(g=d.useRef({value:b,previous:b}),d.useMemo(()=>(g.current.value!==b&&(g.current.previous=g.current.value,g.current.value=b),g.current.previous),[b]));return d.useEffect(()=>{let a=h.current;if(!a)return;let c=Object.getOwnPropertyDescriptor(window.HTMLSelectElement.prototype,"value").set;if(k!==b&&c){let d=new Event("change",{bubbles:!0});c.call(a,b),a.dispatchEvent(d)}},[k,b]),(0,c.jsx)(p.Primitive.select,{...e,style:{...G.VISUALLY_HIDDEN_STYLES,...e.style},ref:j,defaultValue:b})});function aI(a){return""===a||void 0===a}function aJ(a){let b=(0,q.useCallbackRef)(a),c=d.useRef(""),e=d.useRef(0),f=d.useCallback(a=>{let d=c.current+a;b(d),function a(b){c.current=b,window.clearTimeout(e.current),""!==b&&(e.current=window.setTimeout(()=>a(""),1e3))}(d)},[b]),g=d.useCallback(()=>{c.current="",window.clearTimeout(e.current)},[]);return d.useEffect(()=>()=>window.clearTimeout(e.current),[]),[c,f,g]}function aK(a,b,c){var d,e;let f=b.length>1&&Array.from(b).every(a=>a===b[0])?b[0]:b,g=c?a.indexOf(c):-1,h=(d=a,e=Math.max(g,0),d.map((a,b)=>d[(e+b)%d.length]));1===f.length&&(h=h.filter(a=>a!==c));let i=h.find(a=>a.textValue.toLowerCase().startsWith(f.toLowerCase()));return i!==c?i:void 0}aH.displayName="SelectBubbleInput";var aL=a.i(602774),aM=a.i(622427);let aN=(0,aM.default)("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]),aO=(0,aM.default)("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);var aP=a.i(676653);let aQ=d.forwardRef(({className:a,children:b,...d},e)=>(0,c.jsxs)(Y,{ref:e,className:(0,aP.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",a),...d,children:[b,(0,c.jsx)(_,{asChild:!0,children:(0,c.jsx)(aN,{className:"h-4 w-4 opacity-50"})})]}));aQ.displayName=Y.displayName;let aR=d.forwardRef(({className:a,...b},d)=>(0,c.jsx)(aB,{ref:d,className:(0,aP.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,c.jsx)(aO,{className:"h-4 w-4"})}));aR.displayName=aB.displayName;let aS=d.forwardRef(({className:a,...b},d)=>(0,c.jsx)(aD,{ref:d,className:(0,aP.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,c.jsx)(aN,{className:"h-4 w-4"})}));aS.displayName=aD.displayName;let aT=d.forwardRef(({className:a,children:b,position:d="popper",...e},f)=>(0,c.jsx)(aa,{children:(0,c.jsxs)(ac,{ref:f,className:(0,aP.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"===d&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:d,...e,children:[(0,c.jsx)(aR,{}),(0,c.jsx)(am,{className:(0,aP.cn)("p-1","popper"===d&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:b}),(0,c.jsx)(aS,{})]})}));aT.displayName=ac.displayName,d.forwardRef(({className:a,...b},d)=>(0,c.jsx)(ar,{ref:d,className:(0,aP.cn)("py-1.5 pl-8 pr-2 text-sm font-semibold",a),...b})).displayName=ar.displayName;let aU=d.forwardRef(({className:a,children:b,...d},e)=>(0,c.jsxs)(av,{ref:e,className:(0,aP.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",a),...d,children:[(0,c.jsx)("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,c.jsx)(az,{children:(0,c.jsx)(aL.Check,{className:"h-4 w-4"})})}),(0,c.jsx)(ax,{children:b})]}));aU.displayName=av.displayName,d.forwardRef(({className:a,...b},d)=>(0,c.jsx)(aF,{ref:d,className:(0,aP.cn)("-mx-1 my-1 h-px bg-muted",a),...b})).displayName=aF.displayName,a.s(["Select",()=>W,"SelectContent",()=>aT,"SelectItem",()=>aU,"SelectTrigger",()=>aQ,"SelectValue",()=>$],175196)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=packages_web_src_19bb3951._.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../packages/web/src/lib/hooks.ts","../../../../../../packages/web/src/lib/data%3Afc7477%20%3Ctext/javascript%3E","../../../../../../packages/web/src/lib/data%3A809292%20%3Ctext/javascript%3E","../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-focus-scope%401.1.7_%40types%2Breact-dom%4019.1.9_%40types%2Breact%4019.1.13__%40types%2B_cea28f406c9cc5cc3c981261c5b85faa/node_modules/%40radix-ui/react-focus-scope/dist/index.mjs","../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-focus-guards%401.1.3_%40types%2Breact%4019.1.13_react%4019.1.0/node_modules/%40radix-ui/react-focus-guards/dist/index.mjs","../../../../../../node_modules/.pnpm/%40radix-ui%2Bnumber%401.1.1/node_modules/%40radix-ui/number/dist/index.mjs","../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-select%402.2.6_%40types%2Breact-dom%4019.1.9_%40types%2Breact%4019.1.13__%40types%2Breact_6c4fa03dd780bb592c284d0b12606114/node_modules/%40radix-ui/react-select/dist/index.mjs","../../../../../../packages/web/src/components/ui/select.tsx","../../../../../../node_modules/.pnpm/%40radix-ui%2Breact-use-previous%401.1.1_%40types%2Breact%4019.1.13_react%4019.1.0/node_modules/%40radix-ui/react-use-previous/dist/index.mjs","../../../../../../node_modules/.pnpm/lucide-react%400.469.0_react%4019.1.0/node_modules/lucide-react/src/icons/chevron-up.ts","../../../../../../node_modules/.pnpm/lucide-react%400.469.0_react%4019.1.0/node_modules/lucide-react/src/icons/chevron-down.ts"],"sourcesContent":["'use client';\n\nimport useSWR from 'swr';\nimport {\n checkWorldsAvailability,\n resolveDataDirInfo,\n type WorkflowDataDirInfo,\n} from './config-world';\n\nexport function useWorldsAvailability() {\n return useSWR('worlds-availability', checkWorldsAvailability, {\n revalidateOnFocus: false,\n });\n}\n\n/**\n * Hook that resolves a dataDir path to WorkflowDataDirInfo.\n * Returns the projectDir, dataDir, and shortName for display purposes.\n */\nexport function useDataDirInfo(dataDir: string) {\n return useSWR<WorkflowDataDirInfo>(\n dataDir ? `data-dir-info:${dataDir}` : 'data-dir-info:cwd',\n () => resolveDataDirInfo(dataDir),\n {\n revalidateOnFocus: false,\n }\n );\n}\n","/* __next_internal_action_entry_do_not_use__ [{\"00834893a4627c2e34d4e9f9af2b13ddcc5fa0d3c7\":\"checkWorldsAvailability\"},\"packages/web/src/lib/config-world.ts\",\"\"] */\"use turbopack no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";export var checkWorldsAvailability=/*#__PURE__*/createServerReference(\"00834893a4627c2e34d4e9f9af2b13ddcc5fa0d3c7\",callServer,void 0,findSourceMapURL,\"checkWorldsAvailability\");","/* __next_internal_action_entry_do_not_use__ [{\"40c2efafd73cce5bffcdc92ad70f000ca36b42c1db\":\"resolveDataDirInfo\"},\"packages/web/src/lib/config-world.ts\",\"\"] */\"use turbopack no side effects\";import{createServerReference,callServer,findSourceMapURL}from\"private-next-rsc-action-client-wrapper\";export var resolveDataDirInfo=/*#__PURE__*/createServerReference(\"40c2efafd73cce5bffcdc92ad70f000ca36b42c1db\",callServer,void 0,findSourceMapURL,\"resolveDataDirInfo\");","\"use client\";\n\n// src/focus-scope.tsx\nimport * as React from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { jsx } from \"react/jsx-runtime\";\nvar AUTOFOCUS_ON_MOUNT = \"focusScope.autoFocusOnMount\";\nvar AUTOFOCUS_ON_UNMOUNT = \"focusScope.autoFocusOnUnmount\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar FOCUS_SCOPE_NAME = \"FocusScope\";\nvar FocusScope = React.forwardRef((props, forwardedRef) => {\n const {\n loop = false,\n trapped = false,\n onMountAutoFocus: onMountAutoFocusProp,\n onUnmountAutoFocus: onUnmountAutoFocusProp,\n ...scopeProps\n } = props;\n const [container, setContainer] = React.useState(null);\n const onMountAutoFocus = useCallbackRef(onMountAutoFocusProp);\n const onUnmountAutoFocus = useCallbackRef(onUnmountAutoFocusProp);\n const lastFocusedElementRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContainer(node));\n const focusScope = React.useRef({\n paused: false,\n pause() {\n this.paused = true;\n },\n resume() {\n this.paused = false;\n }\n }).current;\n React.useEffect(() => {\n if (trapped) {\n let handleFocusIn2 = function(event) {\n if (focusScope.paused || !container) return;\n const target = event.target;\n if (container.contains(target)) {\n lastFocusedElementRef.current = target;\n } else {\n focus(lastFocusedElementRef.current, { select: true });\n }\n }, handleFocusOut2 = function(event) {\n if (focusScope.paused || !container) return;\n const relatedTarget = event.relatedTarget;\n if (relatedTarget === null) return;\n if (!container.contains(relatedTarget)) {\n focus(lastFocusedElementRef.current, { select: true });\n }\n }, handleMutations2 = function(mutations) {\n const focusedElement = document.activeElement;\n if (focusedElement !== document.body) return;\n for (const mutation of mutations) {\n if (mutation.removedNodes.length > 0) focus(container);\n }\n };\n var handleFocusIn = handleFocusIn2, handleFocusOut = handleFocusOut2, handleMutations = handleMutations2;\n document.addEventListener(\"focusin\", handleFocusIn2);\n document.addEventListener(\"focusout\", handleFocusOut2);\n const mutationObserver = new MutationObserver(handleMutations2);\n if (container) mutationObserver.observe(container, { childList: true, subtree: true });\n return () => {\n document.removeEventListener(\"focusin\", handleFocusIn2);\n document.removeEventListener(\"focusout\", handleFocusOut2);\n mutationObserver.disconnect();\n };\n }\n }, [trapped, container, focusScope.paused]);\n React.useEffect(() => {\n if (container) {\n focusScopesStack.add(focusScope);\n const previouslyFocusedElement = document.activeElement;\n const hasFocusedCandidate = container.contains(previouslyFocusedElement);\n if (!hasFocusedCandidate) {\n const mountEvent = new CustomEvent(AUTOFOCUS_ON_MOUNT, EVENT_OPTIONS);\n container.addEventListener(AUTOFOCUS_ON_MOUNT, onMountAutoFocus);\n container.dispatchEvent(mountEvent);\n if (!mountEvent.defaultPrevented) {\n focusFirst(removeLinks(getTabbableCandidates(container)), { select: true });\n if (document.activeElement === previouslyFocusedElement) {\n focus(container);\n }\n }\n }\n return () => {\n container.removeEventListener(AUTOFOCUS_ON_MOUNT, onMountAutoFocus);\n setTimeout(() => {\n const unmountEvent = new CustomEvent(AUTOFOCUS_ON_UNMOUNT, EVENT_OPTIONS);\n container.addEventListener(AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);\n container.dispatchEvent(unmountEvent);\n if (!unmountEvent.defaultPrevented) {\n focus(previouslyFocusedElement ?? document.body, { select: true });\n }\n container.removeEventListener(AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);\n focusScopesStack.remove(focusScope);\n }, 0);\n };\n }\n }, [container, onMountAutoFocus, onUnmountAutoFocus, focusScope]);\n const handleKeyDown = React.useCallback(\n (event) => {\n if (!loop && !trapped) return;\n if (focusScope.paused) return;\n const isTabKey = event.key === \"Tab\" && !event.altKey && !event.ctrlKey && !event.metaKey;\n const focusedElement = document.activeElement;\n if (isTabKey && focusedElement) {\n const container2 = event.currentTarget;\n const [first, last] = getTabbableEdges(container2);\n const hasTabbableElementsInside = first && last;\n if (!hasTabbableElementsInside) {\n if (focusedElement === container2) event.preventDefault();\n } else {\n if (!event.shiftKey && focusedElement === last) {\n event.preventDefault();\n if (loop) focus(first, { select: true });\n } else if (event.shiftKey && focusedElement === first) {\n event.preventDefault();\n if (loop) focus(last, { select: true });\n }\n }\n }\n },\n [loop, trapped, focusScope.paused]\n );\n return /* @__PURE__ */ jsx(Primitive.div, { tabIndex: -1, ...scopeProps, ref: composedRefs, onKeyDown: handleKeyDown });\n});\nFocusScope.displayName = FOCUS_SCOPE_NAME;\nfunction focusFirst(candidates, { select = false } = {}) {\n const previouslyFocusedElement = document.activeElement;\n for (const candidate of candidates) {\n focus(candidate, { select });\n if (document.activeElement !== previouslyFocusedElement) return;\n }\n}\nfunction getTabbableEdges(container) {\n const candidates = getTabbableCandidates(container);\n const first = findVisible(candidates, container);\n const last = findVisible(candidates.reverse(), container);\n return [first, last];\n}\nfunction getTabbableCandidates(container) {\n const nodes = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node) => {\n const isHiddenInput = node.tagName === \"INPUT\" && node.type === \"hidden\";\n if (node.disabled || node.hidden || isHiddenInput) return NodeFilter.FILTER_SKIP;\n return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;\n }\n });\n while (walker.nextNode()) nodes.push(walker.currentNode);\n return nodes;\n}\nfunction findVisible(elements, container) {\n for (const element of elements) {\n if (!isHidden(element, { upTo: container })) return element;\n }\n}\nfunction isHidden(node, { upTo }) {\n if (getComputedStyle(node).visibility === \"hidden\") return true;\n while (node) {\n if (upTo !== void 0 && node === upTo) return false;\n if (getComputedStyle(node).display === \"none\") return true;\n node = node.parentElement;\n }\n return false;\n}\nfunction isSelectableInput(element) {\n return element instanceof HTMLInputElement && \"select\" in element;\n}\nfunction focus(element, { select = false } = {}) {\n if (element && element.focus) {\n const previouslyFocusedElement = document.activeElement;\n element.focus({ preventScroll: true });\n if (element !== previouslyFocusedElement && isSelectableInput(element) && select)\n element.select();\n }\n}\nvar focusScopesStack = createFocusScopesStack();\nfunction createFocusScopesStack() {\n let stack = [];\n return {\n add(focusScope) {\n const activeFocusScope = stack[0];\n if (focusScope !== activeFocusScope) {\n activeFocusScope?.pause();\n }\n stack = arrayRemove(stack, focusScope);\n stack.unshift(focusScope);\n },\n remove(focusScope) {\n stack = arrayRemove(stack, focusScope);\n stack[0]?.resume();\n }\n };\n}\nfunction arrayRemove(array, item) {\n const updatedArray = [...array];\n const index = updatedArray.indexOf(item);\n if (index !== -1) {\n updatedArray.splice(index, 1);\n }\n return updatedArray;\n}\nfunction removeLinks(items) {\n return items.filter((item) => item.tagName !== \"A\");\n}\nvar Root = FocusScope;\nexport {\n FocusScope,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/focus-guards.tsx\nimport * as React from \"react\";\nvar count = 0;\nfunction FocusGuards(props) {\n useFocusGuards();\n return props.children;\n}\nfunction useFocusGuards() {\n React.useEffect(() => {\n const edgeGuards = document.querySelectorAll(\"[data-radix-focus-guard]\");\n document.body.insertAdjacentElement(\"afterbegin\", edgeGuards[0] ?? createFocusGuard());\n document.body.insertAdjacentElement(\"beforeend\", edgeGuards[1] ?? createFocusGuard());\n count++;\n return () => {\n if (count === 1) {\n document.querySelectorAll(\"[data-radix-focus-guard]\").forEach((node) => node.remove());\n }\n count--;\n };\n }, []);\n}\nfunction createFocusGuard() {\n const element = document.createElement(\"span\");\n element.setAttribute(\"data-radix-focus-guard\", \"\");\n element.tabIndex = 0;\n element.style.outline = \"none\";\n element.style.opacity = \"0\";\n element.style.position = \"fixed\";\n element.style.pointerEvents = \"none\";\n return element;\n}\nexport {\n FocusGuards,\n FocusGuards as Root,\n useFocusGuards\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/core/number/src/number.ts\nfunction clamp(value, [min, max]) {\n return Math.min(max, Math.max(min, value));\n}\nexport {\n clamp\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/select.tsx\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { clamp } from \"@radix-ui/number\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { useId } from \"@radix-ui/react-id\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { VISUALLY_HIDDEN_STYLES } from \"@radix-ui/react-visually-hidden\";\nimport { hideOthers } from \"aria-hidden\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar OPEN_KEYS = [\" \", \"Enter\", \"ArrowUp\", \"ArrowDown\"];\nvar SELECTION_KEYS = [\" \", \"Enter\"];\nvar SELECT_NAME = \"Select\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(SELECT_NAME);\nvar [createSelectContext, createSelectScope] = createContextScope(SELECT_NAME, [\n createCollectionScope,\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar [SelectProvider, useSelectContext] = createSelectContext(SELECT_NAME);\nvar [SelectNativeOptionsProvider, useSelectNativeOptionsContext] = createSelectContext(SELECT_NAME);\nvar Select = (props) => {\n const {\n __scopeSelect,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n value: valueProp,\n defaultValue,\n onValueChange,\n dir,\n name,\n autoComplete,\n disabled,\n required,\n form\n } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const [trigger, setTrigger] = React.useState(null);\n const [valueNode, setValueNode] = React.useState(null);\n const [valueNodeHasChildren, setValueNodeHasChildren] = React.useState(false);\n const direction = useDirection(dir);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: SELECT_NAME\n });\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n caller: SELECT_NAME\n });\n const triggerPointerDownPosRef = React.useRef(null);\n const isFormControl = trigger ? form || !!trigger.closest(\"form\") : true;\n const [nativeOptionsSet, setNativeOptionsSet] = React.useState(/* @__PURE__ */ new Set());\n const nativeSelectKey = Array.from(nativeOptionsSet).map((option) => option.props.value).join(\";\");\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsxs(\n SelectProvider,\n {\n required,\n scope: __scopeSelect,\n trigger,\n onTriggerChange: setTrigger,\n valueNode,\n onValueNodeChange: setValueNode,\n valueNodeHasChildren,\n onValueNodeHasChildrenChange: setValueNodeHasChildren,\n contentId: useId(),\n value,\n onValueChange: setValue,\n open,\n onOpenChange: setOpen,\n dir: direction,\n triggerPointerDownPosRef,\n disabled,\n children: [\n /* @__PURE__ */ jsx(Collection.Provider, { scope: __scopeSelect, children: /* @__PURE__ */ jsx(\n SelectNativeOptionsProvider,\n {\n scope: props.__scopeSelect,\n onNativeOptionAdd: React.useCallback((option) => {\n setNativeOptionsSet((prev) => new Set(prev).add(option));\n }, []),\n onNativeOptionRemove: React.useCallback((option) => {\n setNativeOptionsSet((prev) => {\n const optionsSet = new Set(prev);\n optionsSet.delete(option);\n return optionsSet;\n });\n }, []),\n children\n }\n ) }),\n isFormControl ? /* @__PURE__ */ jsxs(\n SelectBubbleInput,\n {\n \"aria-hidden\": true,\n required,\n tabIndex: -1,\n name,\n autoComplete,\n value,\n onChange: (event) => setValue(event.target.value),\n disabled,\n form,\n children: [\n value === void 0 ? /* @__PURE__ */ jsx(\"option\", { value: \"\" }) : null,\n Array.from(nativeOptionsSet)\n ]\n },\n nativeSelectKey\n ) : null\n ]\n }\n ) });\n};\nSelect.displayName = SELECT_NAME;\nvar TRIGGER_NAME = \"SelectTrigger\";\nvar SelectTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, disabled = false, ...triggerProps } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const context = useSelectContext(TRIGGER_NAME, __scopeSelect);\n const isDisabled = context.disabled || disabled;\n const composedRefs = useComposedRefs(forwardedRef, context.onTriggerChange);\n const getItems = useCollection(__scopeSelect);\n const pointerTypeRef = React.useRef(\"touch\");\n const [searchRef, handleTypeaheadSearch, resetTypeahead] = useTypeaheadSearch((search) => {\n const enabledItems = getItems().filter((item) => !item.disabled);\n const currentItem = enabledItems.find((item) => item.value === context.value);\n const nextItem = findNextItem(enabledItems, search, currentItem);\n if (nextItem !== void 0) {\n context.onValueChange(nextItem.value);\n }\n });\n const handleOpen = (pointerEvent) => {\n if (!isDisabled) {\n context.onOpenChange(true);\n resetTypeahead();\n }\n if (pointerEvent) {\n context.triggerPointerDownPosRef.current = {\n x: Math.round(pointerEvent.pageX),\n y: Math.round(pointerEvent.pageY)\n };\n }\n };\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"combobox\",\n \"aria-controls\": context.contentId,\n \"aria-expanded\": context.open,\n \"aria-required\": context.required,\n \"aria-autocomplete\": \"none\",\n dir: context.dir,\n \"data-state\": context.open ? \"open\" : \"closed\",\n disabled: isDisabled,\n \"data-disabled\": isDisabled ? \"\" : void 0,\n \"data-placeholder\": shouldShowPlaceholder(context.value) ? \"\" : void 0,\n ...triggerProps,\n ref: composedRefs,\n onClick: composeEventHandlers(triggerProps.onClick, (event) => {\n event.currentTarget.focus();\n if (pointerTypeRef.current !== \"mouse\") {\n handleOpen(event);\n }\n }),\n onPointerDown: composeEventHandlers(triggerProps.onPointerDown, (event) => {\n pointerTypeRef.current = event.pointerType;\n const target = event.target;\n if (target.hasPointerCapture(event.pointerId)) {\n target.releasePointerCapture(event.pointerId);\n }\n if (event.button === 0 && event.ctrlKey === false && event.pointerType === \"mouse\") {\n handleOpen(event);\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(triggerProps.onKeyDown, (event) => {\n const isTypingAhead = searchRef.current !== \"\";\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);\n if (isTypingAhead && event.key === \" \") return;\n if (OPEN_KEYS.includes(event.key)) {\n handleOpen();\n event.preventDefault();\n }\n })\n }\n ) });\n }\n);\nSelectTrigger.displayName = TRIGGER_NAME;\nvar VALUE_NAME = \"SelectValue\";\nvar SelectValue = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, className, style, children, placeholder = \"\", ...valueProps } = props;\n const context = useSelectContext(VALUE_NAME, __scopeSelect);\n const { onValueNodeHasChildrenChange } = context;\n const hasChildren = children !== void 0;\n const composedRefs = useComposedRefs(forwardedRef, context.onValueNodeChange);\n useLayoutEffect(() => {\n onValueNodeHasChildrenChange(hasChildren);\n }, [onValueNodeHasChildrenChange, hasChildren]);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n ...valueProps,\n ref: composedRefs,\n style: { pointerEvents: \"none\" },\n children: shouldShowPlaceholder(context.value) ? /* @__PURE__ */ jsx(Fragment, { children: placeholder }) : children\n }\n );\n }\n);\nSelectValue.displayName = VALUE_NAME;\nvar ICON_NAME = \"SelectIcon\";\nvar SelectIcon = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, children, ...iconProps } = props;\n return /* @__PURE__ */ jsx(Primitive.span, { \"aria-hidden\": true, ...iconProps, ref: forwardedRef, children: children || \"\\u25BC\" });\n }\n);\nSelectIcon.displayName = ICON_NAME;\nvar PORTAL_NAME = \"SelectPortal\";\nvar SelectPortal = (props) => {\n return /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, ...props });\n};\nSelectPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"SelectContent\";\nvar SelectContent = React.forwardRef(\n (props, forwardedRef) => {\n const context = useSelectContext(CONTENT_NAME, props.__scopeSelect);\n const [fragment, setFragment] = React.useState();\n useLayoutEffect(() => {\n setFragment(new DocumentFragment());\n }, []);\n if (!context.open) {\n const frag = fragment;\n return frag ? ReactDOM.createPortal(\n /* @__PURE__ */ jsx(SelectContentProvider, { scope: props.__scopeSelect, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeSelect, children: /* @__PURE__ */ jsx(\"div\", { children: props.children }) }) }),\n frag\n ) : null;\n }\n return /* @__PURE__ */ jsx(SelectContentImpl, { ...props, ref: forwardedRef });\n }\n);\nSelectContent.displayName = CONTENT_NAME;\nvar CONTENT_MARGIN = 10;\nvar [SelectContentProvider, useSelectContentContext] = createSelectContext(CONTENT_NAME);\nvar CONTENT_IMPL_NAME = \"SelectContentImpl\";\nvar Slot = createSlot(\"SelectContent.RemoveScroll\");\nvar SelectContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSelect,\n position = \"item-aligned\",\n onCloseAutoFocus,\n onEscapeKeyDown,\n onPointerDownOutside,\n //\n // PopperContent props\n side,\n sideOffset,\n align,\n alignOffset,\n arrowPadding,\n collisionBoundary,\n collisionPadding,\n sticky,\n hideWhenDetached,\n avoidCollisions,\n //\n ...contentProps\n } = props;\n const context = useSelectContext(CONTENT_NAME, __scopeSelect);\n const [content, setContent] = React.useState(null);\n const [viewport, setViewport] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));\n const [selectedItem, setSelectedItem] = React.useState(null);\n const [selectedItemText, setSelectedItemText] = React.useState(\n null\n );\n const getItems = useCollection(__scopeSelect);\n const [isPositioned, setIsPositioned] = React.useState(false);\n const firstValidItemFoundRef = React.useRef(false);\n React.useEffect(() => {\n if (content) return hideOthers(content);\n }, [content]);\n useFocusGuards();\n const focusFirst = React.useCallback(\n (candidates) => {\n const [firstItem, ...restItems] = getItems().map((item) => item.ref.current);\n const [lastItem] = restItems.slice(-1);\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate?.scrollIntoView({ block: \"nearest\" });\n if (candidate === firstItem && viewport) viewport.scrollTop = 0;\n if (candidate === lastItem && viewport) viewport.scrollTop = viewport.scrollHeight;\n candidate?.focus();\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n },\n [getItems, viewport]\n );\n const focusSelectedItem = React.useCallback(\n () => focusFirst([selectedItem, content]),\n [focusFirst, selectedItem, content]\n );\n React.useEffect(() => {\n if (isPositioned) {\n focusSelectedItem();\n }\n }, [isPositioned, focusSelectedItem]);\n const { onOpenChange, triggerPointerDownPosRef } = context;\n React.useEffect(() => {\n if (content) {\n let pointerMoveDelta = { x: 0, y: 0 };\n const handlePointerMove = (event) => {\n pointerMoveDelta = {\n x: Math.abs(Math.round(event.pageX) - (triggerPointerDownPosRef.current?.x ?? 0)),\n y: Math.abs(Math.round(event.pageY) - (triggerPointerDownPosRef.current?.y ?? 0))\n };\n };\n const handlePointerUp = (event) => {\n if (pointerMoveDelta.x <= 10 && pointerMoveDelta.y <= 10) {\n event.preventDefault();\n } else {\n if (!content.contains(event.target)) {\n onOpenChange(false);\n }\n }\n document.removeEventListener(\"pointermove\", handlePointerMove);\n triggerPointerDownPosRef.current = null;\n };\n if (triggerPointerDownPosRef.current !== null) {\n document.addEventListener(\"pointermove\", handlePointerMove);\n document.addEventListener(\"pointerup\", handlePointerUp, { capture: true, once: true });\n }\n return () => {\n document.removeEventListener(\"pointermove\", handlePointerMove);\n document.removeEventListener(\"pointerup\", handlePointerUp, { capture: true });\n };\n }\n }, [content, onOpenChange, triggerPointerDownPosRef]);\n React.useEffect(() => {\n const close = () => onOpenChange(false);\n window.addEventListener(\"blur\", close);\n window.addEventListener(\"resize\", close);\n return () => {\n window.removeEventListener(\"blur\", close);\n window.removeEventListener(\"resize\", close);\n };\n }, [onOpenChange]);\n const [searchRef, handleTypeaheadSearch] = useTypeaheadSearch((search) => {\n const enabledItems = getItems().filter((item) => !item.disabled);\n const currentItem = enabledItems.find((item) => item.ref.current === document.activeElement);\n const nextItem = findNextItem(enabledItems, search, currentItem);\n if (nextItem) {\n setTimeout(() => nextItem.ref.current.focus());\n }\n });\n const itemRefCallback = React.useCallback(\n (node, value, disabled) => {\n const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;\n const isSelectedItem = context.value !== void 0 && context.value === value;\n if (isSelectedItem || isFirstValidItem) {\n setSelectedItem(node);\n if (isFirstValidItem) firstValidItemFoundRef.current = true;\n }\n },\n [context.value]\n );\n const handleItemLeave = React.useCallback(() => content?.focus(), [content]);\n const itemTextRefCallback = React.useCallback(\n (node, value, disabled) => {\n const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;\n const isSelectedItem = context.value !== void 0 && context.value === value;\n if (isSelectedItem || isFirstValidItem) {\n setSelectedItemText(node);\n }\n },\n [context.value]\n );\n const SelectPosition = position === \"popper\" ? SelectPopperPosition : SelectItemAlignedPosition;\n const popperContentProps = SelectPosition === SelectPopperPosition ? {\n side,\n sideOffset,\n align,\n alignOffset,\n arrowPadding,\n collisionBoundary,\n collisionPadding,\n sticky,\n hideWhenDetached,\n avoidCollisions\n } : {};\n return /* @__PURE__ */ jsx(\n SelectContentProvider,\n {\n scope: __scopeSelect,\n content,\n viewport,\n onViewportChange: setViewport,\n itemRefCallback,\n selectedItem,\n onItemLeave: handleItemLeave,\n itemTextRefCallback,\n focusSelectedItem,\n selectedItemText,\n position,\n isPositioned,\n searchRef,\n children: /* @__PURE__ */ jsx(RemoveScroll, { as: Slot, allowPinchZoom: true, children: /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n trapped: context.open,\n onMountAutoFocus: (event) => {\n event.preventDefault();\n },\n onUnmountAutoFocus: composeEventHandlers(onCloseAutoFocus, (event) => {\n context.trigger?.focus({ preventScroll: true });\n event.preventDefault();\n }),\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: true,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: (event) => event.preventDefault(),\n onDismiss: () => context.onOpenChange(false),\n children: /* @__PURE__ */ jsx(\n SelectPosition,\n {\n role: \"listbox\",\n id: context.contentId,\n \"data-state\": context.open ? \"open\" : \"closed\",\n dir: context.dir,\n onContextMenu: (event) => event.preventDefault(),\n ...contentProps,\n ...popperContentProps,\n onPlaced: () => setIsPositioned(true),\n ref: composedRefs,\n style: {\n // flex layout so we can place the scroll buttons properly\n display: \"flex\",\n flexDirection: \"column\",\n // reset the outline by default as the content MAY get focused\n outline: \"none\",\n ...contentProps.style\n },\n onKeyDown: composeEventHandlers(contentProps.onKeyDown, (event) => {\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n if (event.key === \"Tab\") event.preventDefault();\n if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);\n if ([\"ArrowUp\", \"ArrowDown\", \"Home\", \"End\"].includes(event.key)) {\n const items = getItems().filter((item) => !item.disabled);\n let candidateNodes = items.map((item) => item.ref.current);\n if ([\"ArrowUp\", \"End\"].includes(event.key)) {\n candidateNodes = candidateNodes.slice().reverse();\n }\n if ([\"ArrowUp\", \"ArrowDown\"].includes(event.key)) {\n const currentElement = event.target;\n const currentIndex = candidateNodes.indexOf(currentElement);\n candidateNodes = candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n event.preventDefault();\n }\n })\n }\n )\n }\n )\n }\n ) })\n }\n );\n }\n);\nSelectContentImpl.displayName = CONTENT_IMPL_NAME;\nvar ITEM_ALIGNED_POSITION_NAME = \"SelectItemAlignedPosition\";\nvar SelectItemAlignedPosition = React.forwardRef((props, forwardedRef) => {\n const { __scopeSelect, onPlaced, ...popperProps } = props;\n const context = useSelectContext(CONTENT_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(CONTENT_NAME, __scopeSelect);\n const [contentWrapper, setContentWrapper] = React.useState(null);\n const [content, setContent] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));\n const getItems = useCollection(__scopeSelect);\n const shouldExpandOnScrollRef = React.useRef(false);\n const shouldRepositionRef = React.useRef(true);\n const { viewport, selectedItem, selectedItemText, focusSelectedItem } = contentContext;\n const position = React.useCallback(() => {\n if (context.trigger && context.valueNode && contentWrapper && content && viewport && selectedItem && selectedItemText) {\n const triggerRect = context.trigger.getBoundingClientRect();\n const contentRect = content.getBoundingClientRect();\n const valueNodeRect = context.valueNode.getBoundingClientRect();\n const itemTextRect = selectedItemText.getBoundingClientRect();\n if (context.dir !== \"rtl\") {\n const itemTextOffset = itemTextRect.left - contentRect.left;\n const left = valueNodeRect.left - itemTextOffset;\n const leftDelta = triggerRect.left - left;\n const minContentWidth = triggerRect.width + leftDelta;\n const contentWidth = Math.max(minContentWidth, contentRect.width);\n const rightEdge = window.innerWidth - CONTENT_MARGIN;\n const clampedLeft = clamp(left, [\n CONTENT_MARGIN,\n // Prevents the content from going off the starting edge of the\n // viewport. It may still go off the ending edge, but this can be\n // controlled by the user since they may want to manage overflow in a\n // specific way.\n // https://github.com/radix-ui/primitives/issues/2049\n Math.max(CONTENT_MARGIN, rightEdge - contentWidth)\n ]);\n contentWrapper.style.minWidth = minContentWidth + \"px\";\n contentWrapper.style.left = clampedLeft + \"px\";\n } else {\n const itemTextOffset = contentRect.right - itemTextRect.right;\n const right = window.innerWidth - valueNodeRect.right - itemTextOffset;\n const rightDelta = window.innerWidth - triggerRect.right - right;\n const minContentWidth = triggerRect.width + rightDelta;\n const contentWidth = Math.max(minContentWidth, contentRect.width);\n const leftEdge = window.innerWidth - CONTENT_MARGIN;\n const clampedRight = clamp(right, [\n CONTENT_MARGIN,\n Math.max(CONTENT_MARGIN, leftEdge - contentWidth)\n ]);\n contentWrapper.style.minWidth = minContentWidth + \"px\";\n contentWrapper.style.right = clampedRight + \"px\";\n }\n const items = getItems();\n const availableHeight = window.innerHeight - CONTENT_MARGIN * 2;\n const itemsHeight = viewport.scrollHeight;\n const contentStyles = window.getComputedStyle(content);\n const contentBorderTopWidth = parseInt(contentStyles.borderTopWidth, 10);\n const contentPaddingTop = parseInt(contentStyles.paddingTop, 10);\n const contentBorderBottomWidth = parseInt(contentStyles.borderBottomWidth, 10);\n const contentPaddingBottom = parseInt(contentStyles.paddingBottom, 10);\n const fullContentHeight = contentBorderTopWidth + contentPaddingTop + itemsHeight + contentPaddingBottom + contentBorderBottomWidth;\n const minContentHeight = Math.min(selectedItem.offsetHeight * 5, fullContentHeight);\n const viewportStyles = window.getComputedStyle(viewport);\n const viewportPaddingTop = parseInt(viewportStyles.paddingTop, 10);\n const viewportPaddingBottom = parseInt(viewportStyles.paddingBottom, 10);\n const topEdgeToTriggerMiddle = triggerRect.top + triggerRect.height / 2 - CONTENT_MARGIN;\n const triggerMiddleToBottomEdge = availableHeight - topEdgeToTriggerMiddle;\n const selectedItemHalfHeight = selectedItem.offsetHeight / 2;\n const itemOffsetMiddle = selectedItem.offsetTop + selectedItemHalfHeight;\n const contentTopToItemMiddle = contentBorderTopWidth + contentPaddingTop + itemOffsetMiddle;\n const itemMiddleToContentBottom = fullContentHeight - contentTopToItemMiddle;\n const willAlignWithoutTopOverflow = contentTopToItemMiddle <= topEdgeToTriggerMiddle;\n if (willAlignWithoutTopOverflow) {\n const isLastItem = items.length > 0 && selectedItem === items[items.length - 1].ref.current;\n contentWrapper.style.bottom = \"0px\";\n const viewportOffsetBottom = content.clientHeight - viewport.offsetTop - viewport.offsetHeight;\n const clampedTriggerMiddleToBottomEdge = Math.max(\n triggerMiddleToBottomEdge,\n selectedItemHalfHeight + // viewport might have padding bottom, include it to avoid a scrollable viewport\n (isLastItem ? viewportPaddingBottom : 0) + viewportOffsetBottom + contentBorderBottomWidth\n );\n const height = contentTopToItemMiddle + clampedTriggerMiddleToBottomEdge;\n contentWrapper.style.height = height + \"px\";\n } else {\n const isFirstItem = items.length > 0 && selectedItem === items[0].ref.current;\n contentWrapper.style.top = \"0px\";\n const clampedTopEdgeToTriggerMiddle = Math.max(\n topEdgeToTriggerMiddle,\n contentBorderTopWidth + viewport.offsetTop + // viewport might have padding top, include it to avoid a scrollable viewport\n (isFirstItem ? viewportPaddingTop : 0) + selectedItemHalfHeight\n );\n const height = clampedTopEdgeToTriggerMiddle + itemMiddleToContentBottom;\n contentWrapper.style.height = height + \"px\";\n viewport.scrollTop = contentTopToItemMiddle - topEdgeToTriggerMiddle + viewport.offsetTop;\n }\n contentWrapper.style.margin = `${CONTENT_MARGIN}px 0`;\n contentWrapper.style.minHeight = minContentHeight + \"px\";\n contentWrapper.style.maxHeight = availableHeight + \"px\";\n onPlaced?.();\n requestAnimationFrame(() => shouldExpandOnScrollRef.current = true);\n }\n }, [\n getItems,\n context.trigger,\n context.valueNode,\n contentWrapper,\n content,\n viewport,\n selectedItem,\n selectedItemText,\n context.dir,\n onPlaced\n ]);\n useLayoutEffect(() => position(), [position]);\n const [contentZIndex, setContentZIndex] = React.useState();\n useLayoutEffect(() => {\n if (content) setContentZIndex(window.getComputedStyle(content).zIndex);\n }, [content]);\n const handleScrollButtonChange = React.useCallback(\n (node) => {\n if (node && shouldRepositionRef.current === true) {\n position();\n focusSelectedItem?.();\n shouldRepositionRef.current = false;\n }\n },\n [position, focusSelectedItem]\n );\n return /* @__PURE__ */ jsx(\n SelectViewportProvider,\n {\n scope: __scopeSelect,\n contentWrapper,\n shouldExpandOnScrollRef,\n onScrollButtonChange: handleScrollButtonChange,\n children: /* @__PURE__ */ jsx(\n \"div\",\n {\n ref: setContentWrapper,\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n position: \"fixed\",\n zIndex: contentZIndex\n },\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...popperProps,\n ref: composedRefs,\n style: {\n // When we get the height of the content, it includes borders. If we were to set\n // the height without having `boxSizing: 'border-box'` it would be too big.\n boxSizing: \"border-box\",\n // We need to ensure the content doesn't get taller than the wrapper\n maxHeight: \"100%\",\n ...popperProps.style\n }\n }\n )\n }\n )\n }\n );\n});\nSelectItemAlignedPosition.displayName = ITEM_ALIGNED_POSITION_NAME;\nvar POPPER_POSITION_NAME = \"SelectPopperPosition\";\nvar SelectPopperPosition = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeSelect,\n align = \"start\",\n collisionPadding = CONTENT_MARGIN,\n ...popperProps\n } = props;\n const popperScope = usePopperScope(__scopeSelect);\n return /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n ...popperScope,\n ...popperProps,\n ref: forwardedRef,\n align,\n collisionPadding,\n style: {\n // Ensure border-box for floating-ui calculations\n boxSizing: \"border-box\",\n ...popperProps.style,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-select-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-select-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-select-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-select-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-select-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }\n }\n );\n});\nSelectPopperPosition.displayName = POPPER_POSITION_NAME;\nvar [SelectViewportProvider, useSelectViewportContext] = createSelectContext(CONTENT_NAME, {});\nvar VIEWPORT_NAME = \"SelectViewport\";\nvar SelectViewport = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, nonce, ...viewportProps } = props;\n const contentContext = useSelectContentContext(VIEWPORT_NAME, __scopeSelect);\n const viewportContext = useSelectViewportContext(VIEWPORT_NAME, __scopeSelect);\n const composedRefs = useComposedRefs(forwardedRef, contentContext.onViewportChange);\n const prevScrollTopRef = React.useRef(0);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n \"style\",\n {\n dangerouslySetInnerHTML: {\n __html: `[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`\n },\n nonce\n }\n ),\n /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeSelect, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-radix-select-viewport\": \"\",\n role: \"presentation\",\n ...viewportProps,\n ref: composedRefs,\n style: {\n // we use position: 'relative' here on the `viewport` so that when we call\n // `selectedItem.offsetTop` in calculations, the offset is relative to the viewport\n // (independent of the scrollUpButton).\n position: \"relative\",\n flex: 1,\n // Viewport should only be scrollable in the vertical direction.\n // This won't work in vertical writing modes, so we'll need to\n // revisit this if/when that is supported\n // https://developer.chrome.com/blog/vertical-form-controls\n overflow: \"hidden auto\",\n ...viewportProps.style\n },\n onScroll: composeEventHandlers(viewportProps.onScroll, (event) => {\n const viewport = event.currentTarget;\n const { contentWrapper, shouldExpandOnScrollRef } = viewportContext;\n if (shouldExpandOnScrollRef?.current && contentWrapper) {\n const scrolledBy = Math.abs(prevScrollTopRef.current - viewport.scrollTop);\n if (scrolledBy > 0) {\n const availableHeight = window.innerHeight - CONTENT_MARGIN * 2;\n const cssMinHeight = parseFloat(contentWrapper.style.minHeight);\n const cssHeight = parseFloat(contentWrapper.style.height);\n const prevHeight = Math.max(cssMinHeight, cssHeight);\n if (prevHeight < availableHeight) {\n const nextHeight = prevHeight + scrolledBy;\n const clampedNextHeight = Math.min(availableHeight, nextHeight);\n const heightDiff = nextHeight - clampedNextHeight;\n contentWrapper.style.height = clampedNextHeight + \"px\";\n if (contentWrapper.style.bottom === \"0px\") {\n viewport.scrollTop = heightDiff > 0 ? heightDiff : 0;\n contentWrapper.style.justifyContent = \"flex-end\";\n }\n }\n }\n }\n prevScrollTopRef.current = viewport.scrollTop;\n })\n }\n ) })\n ] });\n }\n);\nSelectViewport.displayName = VIEWPORT_NAME;\nvar GROUP_NAME = \"SelectGroup\";\nvar [SelectGroupContextProvider, useSelectGroupContext] = createSelectContext(GROUP_NAME);\nvar SelectGroup = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...groupProps } = props;\n const groupId = useId();\n return /* @__PURE__ */ jsx(SelectGroupContextProvider, { scope: __scopeSelect, id: groupId, children: /* @__PURE__ */ jsx(Primitive.div, { role: \"group\", \"aria-labelledby\": groupId, ...groupProps, ref: forwardedRef }) });\n }\n);\nSelectGroup.displayName = GROUP_NAME;\nvar LABEL_NAME = \"SelectLabel\";\nvar SelectLabel = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...labelProps } = props;\n const groupContext = useSelectGroupContext(LABEL_NAME, __scopeSelect);\n return /* @__PURE__ */ jsx(Primitive.div, { id: groupContext.id, ...labelProps, ref: forwardedRef });\n }\n);\nSelectLabel.displayName = LABEL_NAME;\nvar ITEM_NAME = \"SelectItem\";\nvar [SelectItemContextProvider, useSelectItemContext] = createSelectContext(ITEM_NAME);\nvar SelectItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSelect,\n value,\n disabled = false,\n textValue: textValueProp,\n ...itemProps\n } = props;\n const context = useSelectContext(ITEM_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ITEM_NAME, __scopeSelect);\n const isSelected = context.value === value;\n const [textValue, setTextValue] = React.useState(textValueProp ?? \"\");\n const [isFocused, setIsFocused] = React.useState(false);\n const composedRefs = useComposedRefs(\n forwardedRef,\n (node) => contentContext.itemRefCallback?.(node, value, disabled)\n );\n const textId = useId();\n const pointerTypeRef = React.useRef(\"touch\");\n const handleSelect = () => {\n if (!disabled) {\n context.onValueChange(value);\n context.onOpenChange(false);\n }\n };\n if (value === \"\") {\n throw new Error(\n \"A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.\"\n );\n }\n return /* @__PURE__ */ jsx(\n SelectItemContextProvider,\n {\n scope: __scopeSelect,\n value,\n disabled,\n textId,\n isSelected,\n onItemTextChange: React.useCallback((node) => {\n setTextValue((prevTextValue) => prevTextValue || (node?.textContent ?? \"\").trim());\n }, []),\n children: /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeSelect,\n value,\n disabled,\n textValue,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"option\",\n \"aria-labelledby\": textId,\n \"data-highlighted\": isFocused ? \"\" : void 0,\n \"aria-selected\": isSelected && isFocused,\n \"data-state\": isSelected ? \"checked\" : \"unchecked\",\n \"aria-disabled\": disabled || void 0,\n \"data-disabled\": disabled ? \"\" : void 0,\n tabIndex: disabled ? void 0 : -1,\n ...itemProps,\n ref: composedRefs,\n onFocus: composeEventHandlers(itemProps.onFocus, () => setIsFocused(true)),\n onBlur: composeEventHandlers(itemProps.onBlur, () => setIsFocused(false)),\n onClick: composeEventHandlers(itemProps.onClick, () => {\n if (pointerTypeRef.current !== \"mouse\") handleSelect();\n }),\n onPointerUp: composeEventHandlers(itemProps.onPointerUp, () => {\n if (pointerTypeRef.current === \"mouse\") handleSelect();\n }),\n onPointerDown: composeEventHandlers(itemProps.onPointerDown, (event) => {\n pointerTypeRef.current = event.pointerType;\n }),\n onPointerMove: composeEventHandlers(itemProps.onPointerMove, (event) => {\n pointerTypeRef.current = event.pointerType;\n if (disabled) {\n contentContext.onItemLeave?.();\n } else if (pointerTypeRef.current === \"mouse\") {\n event.currentTarget.focus({ preventScroll: true });\n }\n }),\n onPointerLeave: composeEventHandlers(itemProps.onPointerLeave, (event) => {\n if (event.currentTarget === document.activeElement) {\n contentContext.onItemLeave?.();\n }\n }),\n onKeyDown: composeEventHandlers(itemProps.onKeyDown, (event) => {\n const isTypingAhead = contentContext.searchRef?.current !== \"\";\n if (isTypingAhead && event.key === \" \") return;\n if (SELECTION_KEYS.includes(event.key)) handleSelect();\n if (event.key === \" \") event.preventDefault();\n })\n }\n )\n }\n )\n }\n );\n }\n);\nSelectItem.displayName = ITEM_NAME;\nvar ITEM_TEXT_NAME = \"SelectItemText\";\nvar SelectItemText = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, className, style, ...itemTextProps } = props;\n const context = useSelectContext(ITEM_TEXT_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ITEM_TEXT_NAME, __scopeSelect);\n const itemContext = useSelectItemContext(ITEM_TEXT_NAME, __scopeSelect);\n const nativeOptionsContext = useSelectNativeOptionsContext(ITEM_TEXT_NAME, __scopeSelect);\n const [itemTextNode, setItemTextNode] = React.useState(null);\n const composedRefs = useComposedRefs(\n forwardedRef,\n (node) => setItemTextNode(node),\n itemContext.onItemTextChange,\n (node) => contentContext.itemTextRefCallback?.(node, itemContext.value, itemContext.disabled)\n );\n const textContent = itemTextNode?.textContent;\n const nativeOption = React.useMemo(\n () => /* @__PURE__ */ jsx(\"option\", { value: itemContext.value, disabled: itemContext.disabled, children: textContent }, itemContext.value),\n [itemContext.disabled, itemContext.value, textContent]\n );\n const { onNativeOptionAdd, onNativeOptionRemove } = nativeOptionsContext;\n useLayoutEffect(() => {\n onNativeOptionAdd(nativeOption);\n return () => onNativeOptionRemove(nativeOption);\n }, [onNativeOptionAdd, onNativeOptionRemove, nativeOption]);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(Primitive.span, { id: itemContext.textId, ...itemTextProps, ref: composedRefs }),\n itemContext.isSelected && context.valueNode && !context.valueNodeHasChildren ? ReactDOM.createPortal(itemTextProps.children, context.valueNode) : null\n ] });\n }\n);\nSelectItemText.displayName = ITEM_TEXT_NAME;\nvar ITEM_INDICATOR_NAME = \"SelectItemIndicator\";\nvar SelectItemIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...itemIndicatorProps } = props;\n const itemContext = useSelectItemContext(ITEM_INDICATOR_NAME, __scopeSelect);\n return itemContext.isSelected ? /* @__PURE__ */ jsx(Primitive.span, { \"aria-hidden\": true, ...itemIndicatorProps, ref: forwardedRef }) : null;\n }\n);\nSelectItemIndicator.displayName = ITEM_INDICATOR_NAME;\nvar SCROLL_UP_BUTTON_NAME = \"SelectScrollUpButton\";\nvar SelectScrollUpButton = React.forwardRef((props, forwardedRef) => {\n const contentContext = useSelectContentContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);\n const viewportContext = useSelectViewportContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);\n const [canScrollUp, setCanScrollUp] = React.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);\n useLayoutEffect(() => {\n if (contentContext.viewport && contentContext.isPositioned) {\n let handleScroll2 = function() {\n const canScrollUp2 = viewport.scrollTop > 0;\n setCanScrollUp(canScrollUp2);\n };\n var handleScroll = handleScroll2;\n const viewport = contentContext.viewport;\n handleScroll2();\n viewport.addEventListener(\"scroll\", handleScroll2);\n return () => viewport.removeEventListener(\"scroll\", handleScroll2);\n }\n }, [contentContext.viewport, contentContext.isPositioned]);\n return canScrollUp ? /* @__PURE__ */ jsx(\n SelectScrollButtonImpl,\n {\n ...props,\n ref: composedRefs,\n onAutoScroll: () => {\n const { viewport, selectedItem } = contentContext;\n if (viewport && selectedItem) {\n viewport.scrollTop = viewport.scrollTop - selectedItem.offsetHeight;\n }\n }\n }\n ) : null;\n});\nSelectScrollUpButton.displayName = SCROLL_UP_BUTTON_NAME;\nvar SCROLL_DOWN_BUTTON_NAME = \"SelectScrollDownButton\";\nvar SelectScrollDownButton = React.forwardRef((props, forwardedRef) => {\n const contentContext = useSelectContentContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);\n const viewportContext = useSelectViewportContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);\n const [canScrollDown, setCanScrollDown] = React.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);\n useLayoutEffect(() => {\n if (contentContext.viewport && contentContext.isPositioned) {\n let handleScroll2 = function() {\n const maxScroll = viewport.scrollHeight - viewport.clientHeight;\n const canScrollDown2 = Math.ceil(viewport.scrollTop) < maxScroll;\n setCanScrollDown(canScrollDown2);\n };\n var handleScroll = handleScroll2;\n const viewport = contentContext.viewport;\n handleScroll2();\n viewport.addEventListener(\"scroll\", handleScroll2);\n return () => viewport.removeEventListener(\"scroll\", handleScroll2);\n }\n }, [contentContext.viewport, contentContext.isPositioned]);\n return canScrollDown ? /* @__PURE__ */ jsx(\n SelectScrollButtonImpl,\n {\n ...props,\n ref: composedRefs,\n onAutoScroll: () => {\n const { viewport, selectedItem } = contentContext;\n if (viewport && selectedItem) {\n viewport.scrollTop = viewport.scrollTop + selectedItem.offsetHeight;\n }\n }\n }\n ) : null;\n});\nSelectScrollDownButton.displayName = SCROLL_DOWN_BUTTON_NAME;\nvar SelectScrollButtonImpl = React.forwardRef((props, forwardedRef) => {\n const { __scopeSelect, onAutoScroll, ...scrollIndicatorProps } = props;\n const contentContext = useSelectContentContext(\"SelectScrollButton\", __scopeSelect);\n const autoScrollTimerRef = React.useRef(null);\n const getItems = useCollection(__scopeSelect);\n const clearAutoScrollTimer = React.useCallback(() => {\n if (autoScrollTimerRef.current !== null) {\n window.clearInterval(autoScrollTimerRef.current);\n autoScrollTimerRef.current = null;\n }\n }, []);\n React.useEffect(() => {\n return () => clearAutoScrollTimer();\n }, [clearAutoScrollTimer]);\n useLayoutEffect(() => {\n const activeItem = getItems().find((item) => item.ref.current === document.activeElement);\n activeItem?.ref.current?.scrollIntoView({ block: \"nearest\" });\n }, [getItems]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"aria-hidden\": true,\n ...scrollIndicatorProps,\n ref: forwardedRef,\n style: { flexShrink: 0, ...scrollIndicatorProps.style },\n onPointerDown: composeEventHandlers(scrollIndicatorProps.onPointerDown, () => {\n if (autoScrollTimerRef.current === null) {\n autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);\n }\n }),\n onPointerMove: composeEventHandlers(scrollIndicatorProps.onPointerMove, () => {\n contentContext.onItemLeave?.();\n if (autoScrollTimerRef.current === null) {\n autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);\n }\n }),\n onPointerLeave: composeEventHandlers(scrollIndicatorProps.onPointerLeave, () => {\n clearAutoScrollTimer();\n })\n }\n );\n});\nvar SEPARATOR_NAME = \"SelectSeparator\";\nvar SelectSeparator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...separatorProps } = props;\n return /* @__PURE__ */ jsx(Primitive.div, { \"aria-hidden\": true, ...separatorProps, ref: forwardedRef });\n }\n);\nSelectSeparator.displayName = SEPARATOR_NAME;\nvar ARROW_NAME = \"SelectArrow\";\nvar SelectArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const context = useSelectContext(ARROW_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ARROW_NAME, __scopeSelect);\n return context.open && contentContext.position === \"popper\" ? /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef }) : null;\n }\n);\nSelectArrow.displayName = ARROW_NAME;\nvar BUBBLE_INPUT_NAME = \"SelectBubbleInput\";\nvar SelectBubbleInput = React.forwardRef(\n ({ __scopeSelect, value, ...props }, forwardedRef) => {\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const prevValue = usePrevious(value);\n React.useEffect(() => {\n const select = ref.current;\n if (!select) return;\n const selectProto = window.HTMLSelectElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n selectProto,\n \"value\"\n );\n const setValue = descriptor.set;\n if (prevValue !== value && setValue) {\n const event = new Event(\"change\", { bubbles: true });\n setValue.call(select, value);\n select.dispatchEvent(event);\n }\n }, [prevValue, value]);\n return /* @__PURE__ */ jsx(\n Primitive.select,\n {\n ...props,\n style: { ...VISUALLY_HIDDEN_STYLES, ...props.style },\n ref: composedRefs,\n defaultValue: value\n }\n );\n }\n);\nSelectBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction shouldShowPlaceholder(value) {\n return value === \"\" || value === void 0;\n}\nfunction useTypeaheadSearch(onSearchChange) {\n const handleSearchChange = useCallbackRef(onSearchChange);\n const searchRef = React.useRef(\"\");\n const timerRef = React.useRef(0);\n const handleTypeaheadSearch = React.useCallback(\n (key) => {\n const search = searchRef.current + key;\n handleSearchChange(search);\n (function updateSearch(value) {\n searchRef.current = value;\n window.clearTimeout(timerRef.current);\n if (value !== \"\") timerRef.current = window.setTimeout(() => updateSearch(\"\"), 1e3);\n })(search);\n },\n [handleSearchChange]\n );\n const resetTypeahead = React.useCallback(() => {\n searchRef.current = \"\";\n window.clearTimeout(timerRef.current);\n }, []);\n React.useEffect(() => {\n return () => window.clearTimeout(timerRef.current);\n }, []);\n return [searchRef, handleTypeaheadSearch, resetTypeahead];\n}\nfunction findNextItem(items, search, currentItem) {\n const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n const normalizedSearch = isRepeated ? search[0] : search;\n const currentItemIndex = currentItem ? items.indexOf(currentItem) : -1;\n let wrappedItems = wrapArray(items, Math.max(currentItemIndex, 0));\n const excludeCurrentItem = normalizedSearch.length === 1;\n if (excludeCurrentItem) wrappedItems = wrappedItems.filter((v) => v !== currentItem);\n const nextItem = wrappedItems.find(\n (item) => item.textValue.toLowerCase().startsWith(normalizedSearch.toLowerCase())\n );\n return nextItem !== currentItem ? nextItem : void 0;\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root2 = Select;\nvar Trigger = SelectTrigger;\nvar Value = SelectValue;\nvar Icon = SelectIcon;\nvar Portal = SelectPortal;\nvar Content2 = SelectContent;\nvar Viewport = SelectViewport;\nvar Group = SelectGroup;\nvar Label = SelectLabel;\nvar Item = SelectItem;\nvar ItemText = SelectItemText;\nvar ItemIndicator = SelectItemIndicator;\nvar ScrollUpButton = SelectScrollUpButton;\nvar ScrollDownButton = SelectScrollDownButton;\nvar Separator = SelectSeparator;\nvar Arrow2 = SelectArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n Group,\n Icon,\n Item,\n ItemIndicator,\n ItemText,\n Label,\n Portal,\n Root2 as Root,\n ScrollDownButton,\n ScrollUpButton,\n Select,\n SelectArrow,\n SelectContent,\n SelectGroup,\n SelectIcon,\n SelectItem,\n SelectItemIndicator,\n SelectItemText,\n SelectLabel,\n SelectPortal,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n SelectViewport,\n Separator,\n Trigger,\n Value,\n Viewport,\n createSelectScope\n};\n//# sourceMappingURL=index.mjs.map\n","'use client';\n\nimport * as SelectPrimitive from '@radix-ui/react-select';\nimport { Check, ChevronDown, ChevronUp } from 'lucide-react';\nimport * as React from 'react';\n\nimport { cn } from '@/lib/utils';\n\nconst Select = SelectPrimitive.Root;\n\nconst SelectGroup = SelectPrimitive.Group;\n\nconst SelectValue = SelectPrimitive.Value;\n\nconst SelectTrigger = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n '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',\n className\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDown className=\"h-4 w-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n));\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName;\n\nconst SelectScrollUpButton = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.ScrollUpButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollUpButton\n ref={ref}\n className={cn(\n 'flex cursor-default items-center justify-center py-1',\n className\n )}\n {...props}\n >\n <ChevronUp className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollUpButton>\n));\nSelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;\n\nconst SelectScrollDownButton = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.ScrollDownButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollDownButton\n ref={ref}\n className={cn(\n 'flex cursor-default items-center justify-center py-1',\n className\n )}\n {...props}\n >\n <ChevronDown className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollDownButton>\n));\nSelectScrollDownButton.displayName =\n SelectPrimitive.ScrollDownButton.displayName;\n\nconst SelectContent = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\n>(({ className, children, position = 'popper', ...props }, ref) => (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n ref={ref}\n className={cn(\n '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',\n position === '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',\n className\n )}\n position={position}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n 'p-1',\n position === 'popper' &&\n 'h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]'\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n));\nSelectContent.displayName = SelectPrimitive.Content.displayName;\n\nconst SelectLabel = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Label\n ref={ref}\n className={cn('py-1.5 pl-8 pr-2 text-sm font-semibold', className)}\n {...props}\n />\n));\nSelectLabel.displayName = SelectPrimitive.Label.displayName;\n\nconst SelectItem = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Item\n ref={ref}\n className={cn(\n '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',\n className\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <Check className=\"h-4 w-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n));\nSelectItem.displayName = SelectPrimitive.Item.displayName;\n\nconst SelectSeparator = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Separator\n ref={ref}\n className={cn('-mx-1 my-1 h-px bg-muted', className)}\n {...props}\n />\n));\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName;\n\nexport {\n Select,\n SelectGroup,\n SelectValue,\n SelectTrigger,\n SelectContent,\n SelectLabel,\n SelectItem,\n SelectSeparator,\n SelectScrollUpButton,\n SelectScrollDownButton,\n};\n","// packages/react/use-previous/src/use-previous.tsx\nimport * as React from \"react\";\nfunction usePrevious(value) {\n const ref = React.useRef({ value, previous: value });\n return React.useMemo(() => {\n if (ref.current.value !== value) {\n ref.current.previous = ref.current.value;\n ref.current.value = value;\n }\n return ref.current.previous;\n }, [value]);\n}\nexport {\n usePrevious\n};\n//# sourceMappingURL=index.mjs.map\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name ChevronUp\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/chevron-up\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ChevronUp = createLucideIcon('ChevronUp', [['path', { d: 'm18 15-6-6-6 6', key: '153udz' }]]);\n\nexport default ChevronUp;\n","import createLucideIcon from '../createLucideIcon';\n\n/**\n * @component @name ChevronDown\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview  - https://lucide.dev/icons/chevron-down\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ChevronDown = createLucideIcon('ChevronDown', [\n ['path', { d: 'm6 9 6 6 6-6', key: 'qrunsl' }],\n]);\n\nexport default ChevronDown;\n"],"names":[],"mappings":"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","ignoreList":[3,4,5,6,8,9,10]}
|
|
@@ -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(169998),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(550104),O=a.i(161518);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(93354),T=a.i(303872);function U({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)(T.RunActionsDropdownItems,{env:a,runId:c,runStatus:m,events:g,eventsLoading:i,stopPropagation:!0,callbacks:{onSuccess:e},showDebugActions:f})}function V({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)(U,{env:a,runId:c,runStatus:d,onSuccess:e,showDebugActions:f})})]})}let W={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 X({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(W).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 Y({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"),y=Object.keys(W),F="all"===w||w&&y.includes(w)?w:void 0,J=o.get("workflow"),L="1"===o.get("debug"),[N,O]=(0,p.useState)("desc"),[P,Q]=(0,p.useState)(()=>new Date),R=(0,p.useMemo)(()=>(0,G.worldConfigToEnvMap)(a),[a]),T=a.backend?.includes("vercel")||!1,[U,Y]=(0,p.useState)(new Set),{data:Z,error:$,nextPage:_,previousPage:aa,hasNextPage:ab,hasPreviousPage:ac,reload:ad,pageInfo:ae}=(0,e.useWorkflowRuns)(R,{sortOrder:N,workflowName:"all"===J?void 0:J,status:"all"===F?void 0:F});(0,p.useEffect)(()=>{if(Z.data&&Z.data.length>0){let a=new Set(Z.data.map(a=>a.workflowName));Y(b=>{let c=new Set(b);for(let b of a)c.add(b);return c})}},[Z.data]);let af=Z.isLoading;return(0,b.jsxs)("div",{children:[(0,b.jsx)(X,{workflowNameFilter:J,status:F,seenWorkflowNames:U,sortOrder:N,loading:af,statusFilterRequiresWorkflowNameFilter:T,onWorkflowChange:q,onStatusChange:t,onSortToggle:()=>{O(a=>"desc"===a?"asc":"desc")},onRefresh:()=>{Q(()=>new Date),ad()},lastRefreshTime:P}),$?(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)($)})]}):af&&!Z?.data?(0,b.jsx)(K,{}):af||Z.data&&0!==Z.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:Z.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)(S.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)(V,{env:R,runId:a.runId,runStatus:a.status,onSuccess:ad,showDebugActions:L})})]},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:ae}),(0,b.jsxs)("div",{className:"flex gap-2 items-center",children:[(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:aa,disabled:!ac,children:[(0,b.jsx)(j,{}),"Previous"]}),(0,b.jsxs)(s.Button,{variant:"outline",size:"sm",onClick:_,disabled:!ab,children:["Next",(0,b.jsx)(k.ChevronRight,{})]})]})]})]}):(0,b.jsxs)("div",{className:"text-center py-8 text-muted-foreground",children:["No workflow runs found. ",(0,b.jsx)("br",{}),(0,b.jsx)(x,{href:"https://useworkflow.dev/docs/foundations/workflows-and-steps",children:"Learn how to create a workflow"})]})]})}var Z=a.i(725538),$=a.i(60408);let _=(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":aQ(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}),aA=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})}))})};aA.displayName=ax;var aB="DialogOverlay",aC=p.forwardRef((a,c)=>{let d=az(aB,a.__scopeDialog),{forceMount:e=d.forceMount,...f}=a,g=au(aB,a.__scopeDialog);return g.modal?(0,b.jsx)(ak.Presence,{present:e||g.open,children:(0,b.jsx)(aE,{...f,ref:c})}):null});aC.displayName=aB;var aD=(0,ap.createSlot)("DialogOverlay.RemoveScroll"),aE=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=au(aB,d);return(0,b.jsx)(an.RemoveScroll,{as:aD,allowPinchZoom:!0,shards:[f.contentRef],children:(0,b.jsx)(al.Primitive.div,{"data-state":aQ(f.open),...e,ref:c,style:{pointerEvents:"auto",...e.style}})})}),aF="DialogContent",aG=p.forwardRef((a,c)=>{let d=az(aF,a.__scopeDialog),{forceMount:e=d.forceMount,...f}=a,g=au(aF,a.__scopeDialog);return(0,b.jsx)(ak.Presence,{present:e||g.open,children:g.modal?(0,b.jsx)(aH,{...f,ref:c}):(0,b.jsx)(aI,{...f,ref:c})})});aG.displayName=aF;var aH=p.forwardRef((a,c)=>{let d=au(aF,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)(aJ,{...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())})}),aI=p.forwardRef((a,c)=>{let d=au(aF,a.__scopeDialog),e=p.useRef(!1),f=p.useRef(!1);return(0,b.jsx)(aJ,{...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()}})}),aJ=p.forwardRef((a,c)=>{let{__scopeDialog:d,trapFocus:e,onOpenAutoFocus:f,onCloseAutoFocus:g,...h}=a,i=au(aF,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":aQ(i.open),...h,ref:k,onDismiss:()=>i.onOpenChange(!1)})}),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aU,{titleId:i.titleId}),(0,b.jsx)(aV,{contentRef:j,descriptionId:i.descriptionId})]})]})}),aK="DialogTitle",aL=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=au(aK,d);return(0,b.jsx)(al.Primitive.h2,{id:f.titleId,...e,ref:c})});aL.displayName=aK;var aM="DialogDescription",aN=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=au(aM,d);return(0,b.jsx)(al.Primitive.p,{id:f.descriptionId,...e,ref:c})});aN.displayName=aM;var aO="DialogClose",aP=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=au(aO,d);return(0,b.jsx)(al.Primitive.button,{type:"button",...e,ref:c,onClick:(0,ac.composeEventHandlers)(a.onClick,()=>f.onOpenChange(!1))})});function aQ(a){return a?"open":"closed"}aP.displayName=aO;var aR="DialogTitleWarning",[aS,aT]=(0,ae.createContext)(aR,{contentName:aF,titleName:aK,docsSlug:"dialog"}),aU=({titleId:a})=>{let b=aT(aR),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(979444),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(764012),O=a.i(109201);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(92552);var _=a.i(487582),aa=a.i(60408);let ab=(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 ac=a.i(706998),ad=a.i(904730),ae=a.i(559653),af=a.i(840861),ag=a.i(333702),ah=a.i(192534),ai=a.i(984295),aj=a.i(443343),ak=a.i(665106),al=a.i(549033),am=a.i(200866),an=a.i(518243),ao=a.i(8930),ap=a.i(513358),aq=a.i(516164),ar=a.i(523776),as="Dialog",[at,au]=(0,ag.createContextScope)(as),[av,aw]=at(as),ax=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,ai.useControllableState)({prop:e,defaultProp:f??!1,onChange:g,caller:as});return(0,b.jsx)(av,{scope:c,triggerRef:i,contentRef:j,contentId:(0,ah.useId)(),titleId:(0,ah.useId)(),descriptionId:(0,ah.useId)(),open:k,onOpenChange:l,onOpenToggle:p.useCallback(()=>l(a=>!a),[l]),modal:h,children:d})};ax.displayName=as;var ay="DialogTrigger";p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=aw(ay,d),g=(0,af.useComposedRefs)(c,f.triggerRef);return(0,b.jsx)(an.Primitive.button,{type:"button","aria-haspopup":"dialog","aria-expanded":f.open,"aria-controls":f.contentId,"data-state":aS(f.open),...e,ref:g,onClick:(0,ae.composeEventHandlers)(a.onClick,f.onOpenToggle)})}).displayName=ay;var az="DialogPortal",[aA,aB]=at(az,{forceMount:void 0}),aC=a=>{let{__scopeDialog:c,forceMount:d,children:e,container:f}=a,g=aw(az,c);return(0,b.jsx)(aA,{scope:c,forceMount:d,children:p.Children.map(e,a=>(0,b.jsx)(am.Presence,{present:d||g.open,children:(0,b.jsx)(al.Portal,{asChild:!0,container:f,children:a})}))})};aC.displayName=az;var aD="DialogOverlay",aE=p.forwardRef((a,c)=>{let d=aB(aD,a.__scopeDialog),{forceMount:e=d.forceMount,...f}=a,g=aw(aD,a.__scopeDialog);return g.modal?(0,b.jsx)(am.Presence,{present:e||g.open,children:(0,b.jsx)(aG,{...f,ref:c})}):null});aE.displayName=aD;var aF=(0,ar.createSlot)("DialogOverlay.RemoveScroll"),aG=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=aw(aD,d);return(0,b.jsx)(ap.RemoveScroll,{as:aF,allowPinchZoom:!0,shards:[f.contentRef],children:(0,b.jsx)(an.Primitive.div,{"data-state":aS(f.open),...e,ref:c,style:{pointerEvents:"auto",...e.style}})})}),aH="DialogContent",aI=p.forwardRef((a,c)=>{let d=aB(aH,a.__scopeDialog),{forceMount:e=d.forceMount,...f}=a,g=aw(aH,a.__scopeDialog);return(0,b.jsx)(am.Presence,{present:e||g.open,children:g.modal?(0,b.jsx)(aJ,{...f,ref:c}):(0,b.jsx)(aK,{...f,ref:c})})});aI.displayName=aH;var aJ=p.forwardRef((a,c)=>{let d=aw(aH,a.__scopeDialog),e=p.useRef(null),f=(0,af.useComposedRefs)(c,d.contentRef,e);return p.useEffect(()=>{let a=e.current;if(a)return(0,aq.hideOthers)(a)},[]),(0,b.jsx)(aL,{...a,ref:f,trapFocus:d.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:(0,ae.composeEventHandlers)(a.onCloseAutoFocus,a=>{a.preventDefault(),d.triggerRef.current?.focus()}),onPointerDownOutside:(0,ae.composeEventHandlers)(a.onPointerDownOutside,a=>{let b=a.detail.originalEvent,c=0===b.button&&!0===b.ctrlKey;(2===b.button||c)&&a.preventDefault()}),onFocusOutside:(0,ae.composeEventHandlers)(a.onFocusOutside,a=>a.preventDefault())})}),aK=p.forwardRef((a,c)=>{let d=aw(aH,a.__scopeDialog),e=p.useRef(!1),f=p.useRef(!1);return(0,b.jsx)(aL,{...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()}})}),aL=p.forwardRef((a,c)=>{let{__scopeDialog:d,trapFocus:e,onOpenAutoFocus:f,onCloseAutoFocus:g,...h}=a,i=aw(aH,d),j=p.useRef(null),k=(0,af.useComposedRefs)(c,j);return(0,ao.useFocusGuards)(),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(ak.FocusScope,{asChild:!0,loop:!0,trapped:e,onMountAutoFocus:f,onUnmountAutoFocus:g,children:(0,b.jsx)(aj.DismissableLayer,{role:"dialog",id:i.contentId,"aria-describedby":i.descriptionId,"aria-labelledby":i.titleId,"data-state":aS(i.open),...h,ref:k,onDismiss:()=>i.onOpenChange(!1)})}),(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(aW,{titleId:i.titleId}),(0,b.jsx)(aX,{contentRef:j,descriptionId:i.descriptionId})]})]})}),aM="DialogTitle",aN=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=aw(aM,d);return(0,b.jsx)(an.Primitive.h2,{id:f.titleId,...e,ref:c})});aN.displayName=aM;var aO="DialogDescription",aP=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=aw(aO,d);return(0,b.jsx)(an.Primitive.p,{id:f.descriptionId,...e,ref:c})});aP.displayName=aO;var aQ="DialogClose",aR=p.forwardRef((a,c)=>{let{__scopeDialog:d,...e}=a,f=aw(aQ,d);return(0,b.jsx)(an.Primitive.button,{type:"button",...e,ref:c,onClick:(0,ae.composeEventHandlers)(a.onClick,()=>f.onOpenChange(!1))})});function aS(a){return a?"open":"closed"}aR.displayName=aQ;var aT="DialogTitleWarning",[aU,aV]=(0,ag.createContext)(aT,{contentName:aH,titleName:aM,docsSlug:"dialog"}),aW=({titleId:a})=>{let b=aV(aT),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},aX=({contentRef:a,descriptionId:b})=>{let c=aV("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},aY=a.i(930840),aY=aY;function aZ({...a}){return(0,b.jsx)(ax,{"data-slot":"sheet",...a})}function a$({...a}){return(0,b.jsx)(aC,{"data-slot":"sheet-portal",...a})}function a_({className:a,...c}){return(0,b.jsx)(aE,{"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 a0({className:a,children:c,side:d="right",...e}){return(0,b.jsxs)(a$,{children:[(0,b.jsx)(a_,{}),(0,b.jsxs)(aI,{"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)(aR,{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)(aY.default,{className:"size-4"}),(0,b.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function a1({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 a2({className:a,...c}){return(0,b.jsx)(aN,{"data-slot":"sheet-title",className:(0,t.cn)("text-foreground font-semibold",a),...c})}function a3({className:a,...c}){return(0,b.jsx)(aP,{"data-slot":"sheet-description",className:(0,t.cn)("text-muted-foreground text-sm",a),...c})}var a4=a.i(691435);function a5({config:a,onWorkflowSelect:c}){let[d,e]=(0,p.useState)(!1),[f,g]=(0,p.useState)(null),{manifest:i,loading:j,error:k}=(0,a4.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)(ab,{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)(ad.Badge,{variant:"secondary",className:"gap-1",children:[(0,b.jsx)(aa.GitBranch,{className:"h-3 w-3"}),d," ",(0,_.pluralize)("step","steps",d)]})})]},a.workflowId)})})]})})}),(0,b.jsx)(aZ,{open:d,onOpenChange:e,children:(0,b.jsxs)(a0,{side:"right",className:"w-[75vw] max-w-[75vw] sm:max-w-[75vw]",children:[(0,b.jsxs)(a1,{children:[(0,b.jsxs)(a2,{className:"flex items-center gap-2",children:[(0,b.jsx)(ab,{className:"h-5 w-5"}),f?.workflowName]}),f&&(0,b.jsx)(a3,{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)(ad.Badge,{variant:"outline",className:"gap-1",children:[(0,b.jsx)(aa.GitBranch,{className:"h-3 w-3"}),n," ",(0,_.pluralize)("step","steps",n)]})})]})})]}),(0,b.jsx)("div",{className:"mt-6 h-[calc(100vh-180px)]",children:f&&(0,b.jsx)(ac.WorkflowGraphViewer,{workflow:f})})]})})]})}var a6=a.i(47318);function a7(){let a=(0,d.useRouter)(),e=(0,G.useQueryParamConfig)(),[f]=(0,a6.useSidebarState)(),[g]=(0,a6.useHookIdState)(),[h,i]=(0,a6.useTabState)(),j="local"===e.backend;return(0,b.jsx)("div",{className:"max-w-7xl mx-auto px-4",children:(0,b.jsxs)($.Tabs,{value:h,onValueChange:i,className:"w-full",children:[(0,b.jsxs)($.TabsList,{className:"mb-4",children:[(0,b.jsx)($.TabsTrigger,{value:"runs",children:"Runs"}),(0,b.jsx)($.TabsTrigger,{value:"hooks",children:"Hooks"}),j&&(0,b.jsx)($.TabsTrigger,{value:"workflows",children:"Workflows"})]}),(0,b.jsx)($.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)(Z,{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)($.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)($.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)(a5,{config:e})})})]})})}a.s(["default",()=>a7],762587)}];
|
|
6
6
|
|
|
7
7
|
//# sourceMappingURL=packages_web_src_app_page_tsx_cd282e82._.js.map
|