@xfey/tutti 0.1.110 → 0.1.111

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/README.md +1 -1
  2. package/dist/chat-assistant/index.js +7 -0
  3. package/dist/collaboration-ingestion/external-source.js +2 -0
  4. package/dist/collaboration-ingestion/main-chat.js +9 -2
  5. package/dist/collaboration-ingestion/types.d.ts +1 -0
  6. package/dist/control-plane/scratchpad-source-messages.js +9 -3
  7. package/dist/control-plane/task-source-context-types.d.ts +1 -1
  8. package/dist/control-plane/task-source-context.js +4 -2
  9. package/dist/server-shell/cli/relay-registration.js +1 -0
  10. package/dist/server-shell/http/routes/agent-context-reference-routes.js +1 -3
  11. package/node_modules/@tutti/relay-client/dist/host-control.d.ts +1 -0
  12. package/node_modules/@tutti/relay-client/dist/host-control.js +3 -0
  13. package/node_modules/@tutti/shared/dist/schemas/api/clarifications.d.ts +1 -0
  14. package/node_modules/@tutti/shared/dist/schemas/api/messages.d.ts +4 -0
  15. package/node_modules/@tutti/shared/dist/schemas/api/messages.js +1 -0
  16. package/node_modules/@tutti/shared/dist/schemas/api/viewer-reference.d.ts +1 -0
  17. package/node_modules/@tutti/shared/dist/schemas/internal/platform-integration.d.ts +43 -2
  18. package/node_modules/@tutti/shared/dist/schemas/internal/platform-integration.js +14 -2
  19. package/package.json +1 -1
  20. package/prompts/chat-assistant.md +1 -0
  21. package/prompts/procedures/scratchpad-refresh.md +22 -2
  22. package/prompts/procedures/task-compile.md +1 -0
  23. package/prompts/runs/task-execute.md +2 -0
  24. package/web/assets/{homepage-motion-scene-rxYjg-zc.js → homepage-motion-scene-TmkKf8wQ.js} +1 -1
  25. package/web/assets/{index-BrKWdtKZ.js → index-B1oL1p9_.js} +2 -2
  26. package/web/index.html +1 -1
@@ -47,7 +47,7 @@ Error generating stack: `+e.message+`
47
47
  `},id=function(){var e=parseInt(document.body.getAttribute(`data-scroll-locked`)||`0`,10);return isFinite(e)?e:0},ad=function(){I.useEffect(function(){return document.body.setAttribute(nd,(id()+1).toString()),function(){var e=id()-1;e<=0?document.body.removeAttribute(nd):document.body.setAttribute(nd,e.toString())}},[])},od=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?`margin`:r;ad();var a=I.useMemo(function(){return ed(i)},[i]);return I.createElement(td,{styles:rd(a,!t,i,n?``:`!important`)})},sd=!1;if(typeof window<`u`)try{var cd=Object.defineProperty({},`passive`,{get:function(){return sd=!0,!0}});window.addEventListener(`test`,cd,cd),window.removeEventListener(`test`,cd,cd)}catch{sd=!1}var ld=sd?{passive:!1}:!1,ud=function(e){return e.tagName===`TEXTAREA`},dd=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!==`hidden`&&!(n.overflowY===n.overflowX&&!ud(e)&&n[t]===`visible`)},fd=function(e){return dd(e,`overflowY`)},pd=function(e){return dd(e,`overflowX`)},md=function(e,t){var n=t.ownerDocument,r=t;do{if(typeof ShadowRoot<`u`&&r instanceof ShadowRoot&&(r=r.host),_d(e,r)){var i=vd(e,r);if(i[1]>i[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},hd=function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]},gd=function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]},_d=function(e,t){return e===`v`?fd(t):pd(t)},vd=function(e,t){return e===`v`?hd(t):gd(t)},yd=function(e,t){return e===`h`&&t===`rtl`?-1:1},bd=function(e,t,n,r,i){var a=yd(e,window.getComputedStyle(t).direction),o=a*r,s=n.target,c=t.contains(s),l=!1,u=o>0,d=0,f=0;do{if(!s)break;var p=vd(e,s),m=p[0],h=p[1]-p[2]-a*m;(m||h)&&_d(e,s)&&(d+=h,f+=m);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&o>d)||!u&&(i&&Math.abs(f)<1||!i&&-o>f))&&(l=!0),l},xd=function(e){return`changedTouches`in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Sd=function(e){return[e.deltaX,e.deltaY]},Cd=function(e){return e&&`current`in e?e.current:e},wd=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Td=function(e){return`
48
48
  .block-interactivity-${e} {pointer-events: none;}
49
49
  .allow-interactivity-${e} {pointer-events: all;}
50
- `},Ed=0,Dd=[];function Od(e){var t=I.useRef([]),n=I.useRef([0,0]),r=I.useRef(),i=I.useState(Ed++)[0],a=I.useState(Xu)[0],o=I.useRef(e);I.useEffect(function(){o.current=e},[e]),I.useEffect(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=Tu([e.lockRef.current],(e.shards||[]).map(Cd),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=I.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=xd(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=md(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=md(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return bd(h,t,e,h===`h`?s:c,!0)},[]),c=I.useCallback(function(e){var n=e;if(!(!Dd.length||Dd[Dd.length-1]!==a)){var r=`deltaY`in n?Sd(n):xd(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&wd(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(Cd).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),l=I.useCallback(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:kd(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=I.useCallback(function(e){n.current=xd(e),r.current=void 0},[]),d=I.useCallback(function(t){l(t.type,Sd(t),t.target,s(t,e.lockRef.current))},[]),f=I.useCallback(function(t){l(t.type,xd(t),t.target,s(t,e.lockRef.current))},[]);I.useEffect(function(){return Dd.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener(`wheel`,c,ld),document.addEventListener(`touchmove`,c,ld),document.addEventListener(`touchstart`,u,ld),function(){Dd=Dd.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,c,ld),document.removeEventListener(`touchmove`,c,ld),document.removeEventListener(`touchstart`,u,ld)}},[]);var p=e.removeScrollBar,m=e.inert;return I.createElement(I.Fragment,null,m?I.createElement(a,{styles:Td(i)}):null,p?I.createElement(od,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function kd(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var Ad=zu(Bu,Od),jd=I.forwardRef(function(e,t){return I.createElement(Hu,Cu({},e,{ref:t,sideCar:Ad}))});jd.classNames=Hu.classNames;var Md=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},Nd=new WeakMap,Pd=new WeakMap,Fd={},Id=0,Ld=function(e){return e&&(e.host||Ld(e.parentNode))},Rd=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=Ld(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},zd=function(e,t,n,r){var i=Rd(t,Array.isArray(e)?e:[e]);Fd[n]||(Fd[n]=new WeakMap);var a=Fd[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(Nd.get(e)||0)+1,l=(a.get(e)||0)+1;Nd.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Pd.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),Id++,function(){o.forEach(function(e){var t=Nd.get(e)-1,i=a.get(e)-1;Nd.set(e,t),a.set(e,i),t||(Pd.has(e)||e.removeAttribute(r),Pd.delete(e)),i||e.removeAttribute(n)}),Id--,Id||(Nd=new WeakMap,Nd=new WeakMap,Pd=new WeakMap,Fd={})}},Bd=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||Md(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),zd(r,i,n,`aria-hidden`)):function(){return null}},Vd=Object.defineProperty,Hd=(e,t)=>Vd(e,`name`,{value:t,configurable:!0}),Ud=`Dialog`,[Wd,Gd]=el(Ud),[Kd,qd]=Wd(Ud),Jd=Hd(e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!0}=e,s=I.useRef(null),c=I.useRef(null),[l,u]=gl({prop:r,defaultProp:i??!1,onChange:a,caller:Ud}),[d,f]=I.useState(0),[p,m]=I.useState(0);return(0,L.jsx)(Kd,{scope:t,triggerRef:s,contentRef:c,contentId:sl(),titleId:sl(),descriptionId:sl(),titlePresent:d>0,descriptionPresent:p>0,setTitleCount:f,setDescriptionCount:m,open:l,onOpenChange:u,onOpenToggle:I.useCallback(()=>u(e=>!e),[u]),modal:o,children:n})},`Dialog`),Yd=`DialogPortal`,[Xd,Zd]=Wd(Yd,{forceMount:void 0}),Qd=Hd(e=>{let{__scopeDialog:t,forceMount:n,children:r,container:i}=e,a=qd(Yd,t);return(0,L.jsx)(Xd,{scope:t,forceMount:n,children:I.Children.map(r,e=>(0,L.jsx)(uu,{present:n||a.open,children:(0,L.jsx)(ou,{asChild:!0,container:i,children:e})}))})},`DialogPortal`),$d=`DialogOverlay`,ef=I.forwardRef(Hd(function(e,t){let n=Zd($d,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=qd($d,e.__scopeDialog);return a.modal?(0,L.jsx)(uu,{present:r||a.open,children:(0,L.jsx)(nf,{...i,ref:t})}):null},`DialogOverlay`)),tf=sc(`DialogOverlay.RemoveScroll`),nf=I.forwardRef(Hd(function(e,t){let{__scopeDialog:n,...r}=e,i=qd($d,n),a=ic(t,Ll());return(0,L.jsx)(jd,{as:tf,allowPinchZoom:!0,shards:[i.contentRef],children:(0,L.jsx)(wl.div,{"data-state":hf(i.open),...r,ref:a,style:{pointerEvents:`auto`,...r.style}})})},`DialogOverlayImpl`)),rf=`DialogContent`,af=I.forwardRef(Hd(function(e,t){let n=Zd(rf,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=qd(rf,e.__scopeDialog);return(0,L.jsx)(uu,{present:r||a.open,children:a.modal?(0,L.jsx)(of,{...i,ref:t}):(0,L.jsx)(sf,{...i,ref:t})})},`DialogContent`)),of=I.forwardRef(Hd(function(e,t){let n=qd(rf,e.__scopeDialog),r=I.useRef(null),i=ic(t,n.contentRef,r);return I.useEffect(()=>{let e=r.current;if(e)return Bd(e)},[]),(0,L.jsx)(cf,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:Kc(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:Kc(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()}),onFocusOutside:Kc(e.onFocusOutside,e=>e.preventDefault())})},`DialogContentModal`)),sf=I.forwardRef(Hd(function(e,t){let n=qd(rf,e.__scopeDialog),r=I.useRef(!1),i=I.useRef(!1);return(0,L.jsx)(cf,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})},`DialogContentNonModal`)),cf=I.forwardRef(Hd(function(e,t){let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,...o}=e,s=qd(rf,n);return xu(),(0,L.jsx)(L.Fragment,{children:(0,L.jsx)(ql,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,L.jsx)(Il,{role:`dialog`,id:s.contentId,"aria-describedby":s.descriptionPresent?s.descriptionId:void 0,"aria-labelledby":s.titlePresent?s.titleId:void 0,"data-state":hf(s.open),...o,ref:t,deferPointerDownOutside:!0,onDismiss:()=>s.onOpenChange(!1)})})})},`DialogContentImpl`)),lf=`DialogTitle`,uf=I.forwardRef(Hd(function(e,t){let{__scopeDialog:n,...r}=e,i=qd(lf,n),{setTitleCount:a}=i;return nl(()=>(a(e=>e+1),()=>a(e=>e-1)),[a]),(0,L.jsx)(wl.h2,{id:i.titleId,...r,ref:t})},`DialogTitle`)),df=`DialogDescription`,ff=I.forwardRef(Hd(function(e,t){let{__scopeDialog:n,...r}=e,i=qd(df,n),{setDescriptionCount:a}=i;return nl(()=>(a(e=>e+1),()=>a(e=>e-1)),[a]),(0,L.jsx)(wl.p,{id:i.descriptionId,...r,ref:t})},`DialogDescription`)),pf=`DialogClose`,mf=I.forwardRef(Hd(function(e,t){let{__scopeDialog:n,...r}=e,i=qd(pf,n);return(0,L.jsx)(wl.button,{type:`button`,...r,ref:t,onClick:Kc(e.onClick,()=>i.onOpenChange(!1))})},`DialogClose`));function hf(e){return e?`open`:`closed`}Hd(hf,`getState`);function gf({brand:e,visual:t,auth:n,mobileAuth:r,footer:i,className:a,...o}){return(0,L.jsxs)(`section`,{className:V(`homepage-entry`,a),...o,children:[(0,L.jsxs)(`div`,{className:`homepage-entry-desktop`,children:[(0,L.jsxs)(`section`,{className:`homepage-entry-visual-column`,"aria-label":`Tutti product preview`,children:[(0,L.jsx)(`div`,{className:`homepage-entry-brand`,children:e}),(0,L.jsx)(`div`,{className:`homepage-entry-visual`,children:t})]}),(0,L.jsxs)(`aside`,{className:`homepage-entry-auth-rail`,"aria-label":`Sign in to Tutti`,children:[(0,L.jsx)(`div`,{className:`homepage-entry-auth-content`,children:n}),i===void 0?null:(0,L.jsx)(`div`,{className:`homepage-entry-auth-footnote`,children:i})]})]}),(0,L.jsxs)(`section`,{className:`homepage-entry-mobile`,"aria-label":`Sign in to Tutti`,children:[(0,L.jsx)(`div`,{className:`product-appbar`,children:e}),(0,L.jsx)(`div`,{className:`auth-shell`,children:r}),i===void 0?null:(0,L.jsx)(`div`,{className:`homepage-entry-mobile-footnote`,children:i})]})]})}function _f({className:e,...t}){return(0,L.jsx)(`p`,{className:V(`product-entry-footnote`,e),...t})}function vf({title:e,description:t,children:n,action:r,feedback:i,secondaryAction:a,className:o,...s}){return(0,L.jsxs)(`form`,{className:V(`product-entry-auth-form`,o),...s,children:[(0,L.jsxs)(`header`,{className:`product-entry-auth-header`,children:[(0,L.jsx)(`h1`,{children:e}),(0,L.jsx)(`p`,{children:t})]}),(0,L.jsx)(`div`,{className:`product-entry-auth-body`,children:n}),a===void 0?null:(0,L.jsx)(`div`,{className:`product-entry-auth-secondary`,children:a}),i===void 0?null:(0,L.jsx)(`div`,{className:`product-entry-auth-feedback`,children:i}),(0,L.jsx)(`footer`,{className:`product-entry-auth-footer`,children:r})]})}var yf=40.1,bf=yf+.6,xf={openingFadeEnd:1.05,chatEnd:7.45,scratchpadPanEnd:8.8,scratchpadEnd:17.8,runCursorStart:17.95,runCursorArrive:18.65,runClickStart:18.67,runEnd:18.9,executionPrepareEnd:20.35,executionImplementEnd:24.55,executionValidateEnd:26.35,executionComplete:28.15,executionEnd:28.95,fullWorkspace:30.95,artifactLive:30.55,artifactClick:32.65,artifactScroll:36.1,artifactScrollEnd:39.55,finalHoldEnd:yf,fadeEnd:bf},Sf={centerX:.325,centerY:.25,scale:1.62},Cf={centerX:.325,centerY:.47,scale:1.64},wf={centerX:.855,centerY:.23,scale:1.72},Tf={centerX:.855,centerY:.35,scale:1.72},Ef={centerX:.855,centerY:.79,scale:1.72},Df={centerX:.5,centerY:.5,scale:1},Of=[{start:1.35,end:5.95,from:Sf,to:Cf,linearPosition:!0},{start:7.45,end:8.8,from:Cf,to:wf},{start:8.8,end:14.3,from:wf,to:Tf,linearPosition:!0},{start:14.6,end:17.8,from:Tf,to:Ef},{start:xf.executionEnd,end:xf.fullWorkspace,from:Ef,to:Df}];function kf(e,t=0,n=1){return Math.min(n,Math.max(t,e))}function Af(e){return 1-(1-kf(e))**3}function jf(e){let t=kf(e);return t<.5?4*t*t*t:1-(-2*t+2)**3/2}function Mf(e){let t=kf(e);return t<.5?16*t**5:1-(-2*t+2)**5/2}function Nf(e,t,n,r=Af){let i=Math.max(.001,n-t);return r(kf((e-t)/i))}function Pf(e,t,n){return e+(t-e)*n}function Ff(e,t){let n=kf((t-e.start)/Math.max(.001,e.end-e.start)),r=e.linearPosition?n:Mf(n);return{centerX:Pf(e.from.centerX,e.to.centerX,r),centerY:Pf(e.from.centerY,e.to.centerY,r),scale:Pf(e.from.scale,e.to.scale,e.linearPosition?n:jf(n))}}function If(e){if(e<Of[0].start)return Sf;for(let t of Of)if(e<=t.end)return e<t.start?t.from:Ff(t,e);return Df}function Lf(e){return e>=xf.executionComplete?{id:`complete`,label:`Task completed`}:e>=xf.executionValidateEnd?{id:`update`,label:`Synchronizing project`}:e>=xf.executionImplementEnd?{id:`validate`,label:`Validating result`}:e>=xf.executionPrepareEnd?{id:`implement`,label:`Implementing with Codex`}:{id:`prepare`,label:`Preparing workspace`}}function Rf(e){return Nf(e,xf.artifactScroll,xf.artifactScrollEnd,jf)}function zf(e){return 1-Nf(e,yf,bf,jf)}var Bf=1500,Vf=1e3,Hf=2.5,Uf=`(min-width: 980px) and (prefers-reduced-motion: no-preference)`,Wf=(0,I.lazy)(async()=>({default:(await xo(()=>import(`./homepage-motion-scene-rxYjg-zc.js`),[])).HomepageMotionScene}));function Gf(e){let[t,n]=(0,I.useState)(()=>typeof window>`u`||typeof window.matchMedia!=`function`?!0:window.matchMedia(e).matches);return(0,I.useEffect)(()=>{if(typeof window.matchMedia!=`function`)return;let t=window.matchMedia(e),r=()=>n(t.matches);return r(),t.addEventListener(`change`,r),()=>t.removeEventListener(`change`,r)},[e]),t}function Kf(){return Gf(Uf)}function qf(e,t){let[n,r]=(0,I.useState)({elapsed:0,cycle:0}),i=(0,I.useRef)(null),a=bf+t;return(0,I.useEffect)(()=>{if(!e){i.current=null;return}let t=0,n=e=>{let o=i.current??e;i.current=e;let s=Math.min(.1,(e-o)/1e3);r(e=>{let t=e.elapsed+s;return t<a?{...e,elapsed:t}:{elapsed:t%a,cycle:e.cycle+1}}),t=window.requestAnimationFrame(n)};return t=window.requestAnimationFrame(n),()=>window.cancelAnimationFrame(t)},[a,e]),{cycle:n.cycle,time:Math.min(n.elapsed,bf)}}function Jf(e,t){let[n,r]=(0,I.useState)(0),i=(0,I.useRef)(t),a=(0,I.useRef)(!1);return i.current=t,(0,I.useEffect)(()=>{if(r(0),a.current=!1,!e)return;let t=0,n=null,o=e=>{n??=e;let s=Math.min((e-n)/1e3,bf);if(r(s),s>=bf){a.current||(a.current=!0,i.current());return}t=window.requestAnimationFrame(o)};return t=window.requestAnimationFrame(o),()=>window.cancelAnimationFrame(t)},[e]),n}function Yf(e){let t=(0,I.useRef)(null),[n,r]=(0,I.useState)(0);return(0,I.useLayoutEffect)(()=>{if(!e)return;let n=t.current;if(n===null)return;let i=()=>{let e=n.getBoundingClientRect(),t=Math.min(e.width/Bf,e.height/Vf);r(Number.isFinite(t)?t:0)};if(i(),typeof ResizeObserver>`u`)return;let a=new ResizeObserver(i);return a.observe(n),()=>a.disconnect()},[e]),{frameRef:t,masterScale:n}}function Xf({assets:e,enabled:t,sceneKey:n,time:r,className:i,...a}){let{frameRef:o,masterScale:s}=Yf(t);return t?(0,L.jsx)(`div`,{ref:o,className:V(`homepage-motion-frame`,i),...a,children:(0,L.jsx)(`div`,{className:`homepage-motion-master`,style:{"--homepage-motion-scale":s},children:(0,L.jsx)(I.Suspense,{fallback:null,children:(0,L.jsx)(Wf,{time:r,assets:e},n)})})}):null}function Zf({assets:e,idleSeconds:t=Hf,className:n,...r}){let i=Kf(),a=qf(i,Math.max(0,t));return(0,L.jsx)(Xf,{...r,assets:e,enabled:i,sceneKey:a.cycle,time:a.time,className:n})}function Qf({assets:e,onComplete:t,className:n,...r}){let i=Kf(),a=Jf(i,(0,I.useCallback)(()=>t(),[t]));return(0,L.jsx)(Xf,{...r,assets:e,enabled:i,time:a,className:n})}function $f({onOpen:e,onDismiss:t,className:n,...r}){return(0,L.jsxs)(`aside`,{className:V(`product-tour-pill`,n),"aria-label":`Product tour`,...r,children:[(0,L.jsxs)(Tc,{type:`button`,className:`product-tour-pill-open`,onClick:e,children:[(0,L.jsx)(`span`,{className:`product-tour-pill-icon`,"aria-hidden":`true`,children:(0,L.jsx)(ua,{})}),(0,L.jsxs)(`span`,{className:`product-tour-pill-copy`,children:[(0,L.jsx)(`strong`,{children:`New to Tutti?`}),(0,L.jsx)(`span`,{children:`Take a tour`})]})]}),(0,L.jsx)(Cc,{type:`button`,className:`product-tour-pill-dismiss`,label:`Dismiss product tour`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`}),onClick:t})]})}function ep({assets:e,open:t,onOpenChange:n}){let r=Kf();return(0,I.useEffect)(()=>{t&&!r&&n(!1)},[r,n,t]),r?(0,L.jsx)(Jd,{open:t,onOpenChange:n,children:(0,L.jsxs)(Qd,{children:[(0,L.jsx)(ef,{className:`product-tour-dialog-overlay`}),(0,L.jsxs)(af,{className:`product-tour-dialog-content`,onInteractOutside:e=>e.preventDefault(),onPointerDownOutside:e=>e.preventDefault(),children:[(0,L.jsx)(uf,{className:`product-tour-dialog-title`,children:`Welcome to Tutti`}),(0,L.jsx)(mf,{asChild:!0,children:(0,L.jsx)(Cc,{type:`button`,className:`product-tour-dialog-close`,label:`Close product tour`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`})})}),t?(0,L.jsx)(Qf,{className:`product-tour-dialog-motion`,assets:e,onComplete:()=>n(!1)}):null]})]})}):null}function tp({asChild:e=!1,className:t,...n}){return(0,L.jsx)(e?cc:`section`,{className:V(`product-card`,t),...n})}function np({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`product-card-header`,t),...n,children:e})}function rp({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`product-card-body`,t),...n,children:e})}function ip({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`product-card-feedback`,t),...n,children:e})}function ap({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`product-card-footer`,t),...n,children:e})}function op({title:e,description:t,children:n,action:r,feedback:i,secondaryAction:a,size:o=`standard`,className:s,...c}){return(0,L.jsx)(tp,{className:V(`entry-card auth-card`,o===`wide`?`is-wide`:void 0,s),asChild:!0,children:(0,L.jsxs)(`form`,{...c,children:[(0,L.jsx)(`section`,{className:`auth-card-intro`,children:(0,L.jsxs)(np,{className:`auth-card-header`,children:[(0,L.jsx)(`h1`,{children:e}),(0,L.jsx)(`p`,{children:t})]})}),(0,L.jsx)(`section`,{className:`auth-card-action`,children:(0,L.jsxs)(`div`,{className:`auth-card-action-content`,children:[(0,L.jsx)(rp,{children:n}),a===void 0?null:(0,L.jsx)(`div`,{className:`auth-card-secondary`,children:a}),i===void 0?null:(0,L.jsx)(ip,{children:i}),(0,L.jsx)(ap,{children:r})]})})]})})}function sp({projectName:e,hostLabel:t,hostOnline:n=!1,members:r,invitedBy:i,className:a,...o}){return(0,L.jsxs)(`section`,{className:V(`invite-summary`,a),"aria-label":`Project invitation`,...o,children:[(0,L.jsxs)(`div`,{className:`invite-project`,children:[(0,L.jsx)(`h2`,{children:e}),(0,L.jsxs)(`p`,{className:V(`project-line`,n?`is-online`:`is-offline`),children:[(0,L.jsx)(`span`,{className:`status-dot`,"aria-hidden":`true`}),t]})]}),r===void 0?null:(0,L.jsx)(`div`,{className:`invite-members`,children:r}),i===void 0?null:(0,L.jsxs)(`div`,{className:`invite-meta`,children:[(0,L.jsx)(`span`,{children:`Invited by`}),(0,L.jsx)(`strong`,{children:i})]})]})}function cp({label:e,value:t,action:n,className:r,...i}){return(0,L.jsxs)(`div`,{className:V(`account-row`,r),...i,children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`span`,{children:e}),(0,L.jsx)(`strong`,{children:t})]}),n]})}function lp({title:e,accountName:t,accountAction:n,children:r,className:i,...a}){return(0,L.jsxs)(tp,{className:V(`project-center-card`,i),...a,children:[(0,L.jsxs)(`header`,{className:`project-center-card-header`,children:[(0,L.jsx)(`h1`,{children:e}),t===void 0&&n===void 0?null:(0,L.jsxs)(`div`,{className:`project-center-account`,"aria-label":t===void 0?`Page actions`:`Signed in user`,children:[t===void 0?null:(0,L.jsx)(`span`,{className:`project-center-account-name`,children:t}),n]})]}),r]})}function up({action:e,description:t,descriptionId:n,disabledTrigger:r=!1,className:i,...a}){return(0,L.jsx)(`div`,{className:V(`project-center-header-action`,i),...a,children:t===void 0?e:(0,L.jsx)(kc,{content:t,disabledTrigger:r,side:`bottom`,...n===void 0?{}:{contentId:n},children:e})})}function dp({items:e,className:t,...n}){return(0,L.jsx)(`nav`,{className:V(`project-scope-navigation`,t),"aria-label":`Project scope`,...n,children:(0,L.jsx)(`ul`,{children:e.map(e=>(0,L.jsx)(`li`,{children:(0,L.jsx)(`a`,{href:e.href,"aria-current":e.current===!0?`page`:void 0,...e.current!==!0&&e.onClick===void 0?{}:{onClick:t=>{e.current===!0&&t.preventDefault(),e.onClick?.(t)}},children:e.label})},e.id))})})}function fp({items:e,action:t,className:n,...r}){return(0,L.jsxs)(`section`,{className:V(`project-scope-toolbar`,n),...r,children:[(0,L.jsx)(dp,{items:e}),(0,L.jsx)(`div`,{className:`project-scope-toolbar-action`,children:t})]})}function pp({command:e,terminalLabel:t=`Install and start in your terminal`,copyLabel:n=`Copy`,copyAriaLabel:r=`Copy launch command`,commandAriaLabel:i=`Launch command`,onCopyCommand:a,className:o,...s}){return(0,L.jsxs)(`section`,{className:V(`project-launch-terminal`,o),...s,children:[(0,L.jsxs)(`div`,{className:`project-launch-terminal-bar`,children:[(0,L.jsx)(`span`,{children:t}),a===void 0?null:(0,L.jsxs)(Tc,{className:`project-launch-copy-button`,type:`button`,"aria-label":r,onClick:()=>a(e),children:[(0,L.jsx)(ha,{"aria-hidden":`true`}),n]})]}),(0,L.jsx)(`pre`,{className:`project-launch-command-block`,"aria-label":i,children:(0,L.jsx)(`code`,{children:(0,L.jsxs)(`span`,{className:`project-launch-command-line`,children:[(0,L.jsx)(`span`,{className:`project-launch-command-prompt`,"aria-hidden":`true`,children:`>`}),(0,L.jsx)(`span`,{children:e})]})})})]})}function mp({open:e,onOpenChange:t,status:n=`opening`,description:r,command:i,onCopyCommand:a,retryHref:o,onRetry:s}){return(0,L.jsx)(xp,{open:e,onOpenChange:t,title:`Projects on this computer`,description:n===`opening`?`Opening Tutti…`:`Tutti did not open in this tab.`,className:`project-local-handoff-dialog-card`,children:(0,L.jsxs)(`div`,{className:`project-local-handoff-dialog-body`,children:[(0,L.jsxs)(`div`,{className:`project-local-handoff-intro`,children:[(0,L.jsx)(`span`,{className:`project-local-handoff-icon`,"aria-hidden":`true`,children:(0,L.jsx)(eo,{})}),(0,L.jsx)(`p`,{children:r})]}),(0,L.jsx)(pp,{command:i,...a===void 0?{}:{onCopyCommand:a}}),n!==`failed`||o===void 0?null:(0,L.jsx)(`div`,{className:`project-local-handoff-actions`,children:(0,L.jsx)(wc,{asChild:!0,children:(0,L.jsxs)(`a`,{href:o,...s===void 0?{}:{onClick:s},children:[(0,L.jsx)(Ha,{"aria-hidden":`true`}),`Retry`]})})})]})})}function hp({open:e,onOpenChange:t,projectName:n,state:r,command:i,unavailableMessage:a,onCopyCommand:o}){let s=r===`loading`?{icon:(0,L.jsx)(Ha,{"aria-hidden":`true`}),message:`Reading the connection state from the running Host…`}:r===`pairing_required`?{icon:(0,L.jsx)(eo,{"aria-hidden":`true`}),message:`In the target Feishu group, send this command once.`}:r===`connected`?{icon:(0,L.jsx)(Va,{"aria-hidden":`true`}),message:`This project is connected to its Feishu project group.`}:r===`not_recoverable`?{icon:(0,L.jsx)(ua,{"aria-hidden":`true`}),message:`The previous pairing command is no longer available. Stop and Resume this project to issue a new one.`}:r===`account_handoff_required`?{icon:(0,L.jsx)(ua,{"aria-hidden":`true`}),message:`This Host needs a fresh Tutti account handoff. Sign in to Local Console again, then Stop and Resume the project.`}:{icon:(0,L.jsx)(ua,{"aria-hidden":`true`}),message:a??`The Feishu connection state is temporarily unavailable. Try again from Connect.`};return(0,L.jsx)(xp,{open:e,onOpenChange:t,title:`Feishu connection`,description:`Connect ${n} to a Feishu project group.`,className:`project-local-handoff-dialog-card`,children:(0,L.jsxs)(`div`,{className:`project-local-handoff-dialog-body`,children:[(0,L.jsxs)(`div`,{className:`project-local-handoff-intro`,"aria-live":`polite`,children:[(0,L.jsx)(`span`,{className:`project-local-handoff-icon`,"aria-hidden":`true`,children:s.icon}),(0,L.jsx)(`p`,{children:s.message})]}),r===`pairing_required`&&i!==void 0?(0,L.jsx)(pp,{command:i,terminalLabel:`Send in the target Feishu group`,copyAriaLabel:`Copy connection command`,commandAriaLabel:`Connection command`,...o===void 0?{}:{onCopyCommand:o}}):null]})})}function gp({children:e,className:t,...n}){return(0,L.jsx)(`ul`,{className:V(`project-list`,t),"aria-label":`Recent projects`,...n,children:e})}function _p({children:e,className:t,...n}){return(0,L.jsx)(`section`,{className:V(`project-list-surface`,t),...n,children:(0,L.jsx)(gp,{children:e})})}function vp({status:e,className:t,...n}){let r=e===`online`?`Online`:e===`connecting`?`Connecting`:e===`stopped`?`Stopped`:e===`offline`?`Offline`:`Status unknown`,i=e===`online`?(0,L.jsx)(Va,{"aria-hidden":`true`}):e===`connecting`?(0,L.jsx)(Ha,{"aria-hidden":`true`}):e===`stopped`?(0,L.jsx)(za,{"aria-hidden":`true`}):e===`offline`?(0,L.jsx)(ro,{"aria-hidden":`true`}):(0,L.jsx)(ua,{"aria-hidden":`true`});return(0,L.jsx)(`span`,{className:V(`project-list-status-icon`,`is-${e}`,t),"aria-label":r,role:`img`,...n,children:i})}function yp({title:e,status:t,details:n,className:r,disabled:i,...a}){return(0,L.jsx)(`li`,{className:`project-list-item`,children:(0,L.jsxs)(`button`,{className:V(`project-list-row`,t===`online`||t===`connecting`?`is-active`:`is-inactive`,r),type:`button`,disabled:i,...a,children:[(0,L.jsx)(vp,{status:t}),(0,L.jsx)(`span`,{className:`project-list-identity`,children:(0,L.jsx)(`strong`,{children:e})}),n.map(e=>(0,L.jsxs)(`span`,{className:`project-list-detail`,children:[(0,L.jsx)(`small`,{children:e.label}),(0,L.jsx)(`strong`,{children:e.value})]},e.label)),(0,L.jsx)(na,{"aria-hidden":`true`})]})})}function bp({children:e,className:t,...n}){return(0,L.jsx)(`li`,{className:V(`project-list-item project-list-state-row`,t),...n,children:e})}function xp({open:e,onOpenChange:t,title:n,description:r,children:i,closeDisabled:a=!1,explicitCloseOnly:o=!1,className:s}){return(0,L.jsxs)(Jd,{open:e,onOpenChange:e=>{(e||!a)&&t(e)},children:[(0,L.jsx)(ef,{className:`product-entry-dialog-overlay`}),(0,L.jsx)(af,{asChild:!0,onEscapeKeyDown:e=>{(a||o)&&e.preventDefault()},onInteractOutside:e=>{(a||o)&&e.preventDefault()},onPointerDownOutside:e=>{(a||o)&&e.preventDefault()},children:(0,L.jsxs)(tp,{className:V(`product-entry-dialog-card`,s),children:[(0,L.jsxs)(`header`,{className:`product-entry-dialog-header`,children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(uf,{children:n}),r===void 0?null:(0,L.jsx)(ff,{children:r})]}),(0,L.jsx)(mf,{asChild:!0,children:(0,L.jsx)(Cc,{type:`button`,label:`Close`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`}),disabled:a})})]}),i]})})]})}function Sp({open:e,onOpenChange:t,inputLabel:n,placeholder:r,value:i,error:a,actionLabel:o=`Continue`,onValueChange:s,className:c,...l}){return(0,L.jsx)(xp,{open:e,onOpenChange:t,title:`Join a project`,description:`Paste an invitation link or the full invitation message.`,className:`project-join-dialog-card`,children:(0,L.jsxs)(`form`,{className:V(`project-join-dialog-form`,c),...l,children:[(0,L.jsxs)(`div`,{className:`project-join-dialog-body`,children:[(0,L.jsx)(Mc,{type:`text`,"aria-label":n,value:i,onChange:e=>s(e.target.value),autoFocus:!0,...r===void 0?{}:{placeholder:r}}),a==null?null:(0,L.jsx)(Lc,{children:a})]}),(0,L.jsx)(`footer`,{className:`project-join-dialog-actions`,children:(0,L.jsxs)(wc,{type:`submit`,disabled:i.trim()===``,children:[o,(0,L.jsx)(na,{"aria-hidden":`true`})]})})]})})}function Cp({open:e,onOpenChange:t,steps:n,currentStep:r,children:i,action:a,backAction:o,feedback:s,closeDisabled:c=!1,explicitCloseOnly:l=!1,className:u,...d}){return(0,L.jsxs)(xp,{open:e,onOpenChange:t,title:`New project`,description:`Step ${r+1} of ${n.length}`,closeDisabled:c,explicitCloseOnly:l,className:`local-console-create-card`,children:[(0,L.jsx)(`ol`,{className:`local-console-create-steps`,"aria-label":`New project steps`,children:n.map((e,t)=>(0,L.jsxs)(`li`,{className:V(t===r?`is-current`:void 0,t<r?`is-complete`:void 0),"aria-current":t===r?`step`:void 0,children:[(0,L.jsx)(`span`,{"aria-hidden":`true`,children:t+1}),(0,L.jsx)(`small`,{children:e})]},e))}),(0,L.jsxs)(`form`,{className:V(`local-console-create-form`,u),...d,children:[(0,L.jsx)(`div`,{className:`local-console-create-body`,children:i}),s===void 0?null:(0,L.jsx)(`div`,{className:`local-console-create-feedback`,children:s}),(0,L.jsxs)(`footer`,{className:`local-console-create-actions`,children:[(0,L.jsx)(`div`,{children:o}),(0,L.jsx)(`div`,{children:a})]})]})]})}function wp({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`local-console-form-grid`,t),...n,children:e})}function Tp({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`local-console-inline-actions`,t),...n,children:e})}function Ep({title:e,description:t,children:n,className:r,...i}){return(0,L.jsxs)(`section`,{className:V(`local-console-field-group`,r),...i,children:[(0,L.jsxs)(`header`,{children:[(0,L.jsx)(`strong`,{children:e}),t===void 0?null:(0,L.jsx)(`small`,{children:t})]}),(0,L.jsx)(`div`,{className:`local-console-field-group-body`,children:n})]})}function Dp({value:e,onValueChange:t,className:n,...r}){let i=[{value:`standalone`,title:`Tutti Workspace`,description:`Use Tutti's browser workspace for team collaboration.`},{value:`feishu`,title:`Feishu`,description:`Use a Feishu project group as the collaboration surface.`}];return(0,L.jsxs)(`fieldset`,{className:V(`local-console-surface-selector`,n),...r,children:[(0,L.jsx)(`legend`,{children:`Collaboration surface`}),(0,L.jsx)(`div`,{children:i.map(n=>(0,L.jsxs)(`label`,{className:V(`local-console-surface-option`,e===n.value&&`is-selected`),children:[(0,L.jsx)(`input`,{type:`radio`,name:`local-console-project-surface`,value:n.value,checked:e===n.value,onChange:()=>t(n.value)}),(0,L.jsxs)(`span`,{children:[(0,L.jsx)(`strong`,{children:n.title}),(0,L.jsx)(`small`,{children:n.description})]})]},n.value))})]})}function Op({path:e,className:t,...n}){let r=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`)),i=r>0&&r<e.length-1;return(0,L.jsx)(`span`,{className:V(`local-console-project-path`,t),title:e,...n,children:i?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`span`,{className:`local-console-project-path-prefix`,children:e.slice(0,r)}),(0,L.jsx)(`span`,{className:`local-console-project-path-separator`,children:e[r]}),(0,L.jsx)(`span`,{className:`local-console-project-path-name`,children:e.slice(r+1)})]}):(0,L.jsx)(`span`,{className:`local-console-project-path-name`,children:e})})}function kp({title:e,status:t,path:n,createdLabel:r,modelLabel:i,surfaceLabel:a,actions:o,className:s,...c}){return(0,L.jsx)(`li`,{className:V(`project-list-item`,`local-console-project-item`,s),...c,children:(0,L.jsxs)(`div`,{className:V(`local-console-project-row`,t===`stopped`?`is-inactive`:`is-active`),children:[(0,L.jsx)(vp,{status:t}),(0,L.jsxs)(`span`,{className:`project-list-identity`,children:[(0,L.jsx)(`span`,{className:`local-console-project-title`,children:(0,L.jsx)(`strong`,{children:e})}),i===void 0&&a===void 0?null:(0,L.jsxs)(`span`,{className:`local-console-project-signals`,children:[i===void 0?null:(0,L.jsx)(`small`,{className:`local-console-provider-model`,children:i}),a===void 0?null:(0,L.jsx)(`small`,{className:`local-console-project-surface`,children:a})]})]}),(0,L.jsxs)(`span`,{className:`local-console-project-metadata`,children:[(0,L.jsx)(`strong`,{className:`local-console-project-date`,children:r}),(0,L.jsx)(Op,{path:n})]}),(0,L.jsx)(`span`,{className:`local-console-project-actions`,children:o})]})})}function Ap(e,t){let n=t||{};return(e[e.length-1]===``?[...e,``]:e).join((n.padRight?` `:``)+`,`+(n.padLeft===!1?``:` `)).trim()}var jp=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Mp=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Np={};function Pp(e,t){return((t||Np).jsx?Mp:jp).test(e)}var Fp=/[ \t\n\f\r]/g;function Ip(e){return typeof e==`object`?e.type===`text`?Lp(e.value):!1:Lp(e)}function Lp(e){return e.replace(Fp,``)===``}var Rp=class{constructor(e,t,n){this.normal=t,this.property=e,n&&(this.space=n)}};Rp.prototype.normal={},Rp.prototype.property={},Rp.prototype.space=void 0;function zp(e,t){let n={},r={};for(let t of e)Object.assign(n,t.property),Object.assign(r,t.normal);return new Rp(n,r,t)}function Bp(e){return e.toLowerCase()}var Vp=class{constructor(e,t){this.attribute=t,this.property=e}};Vp.prototype.attribute=``,Vp.prototype.booleanish=!1,Vp.prototype.boolean=!1,Vp.prototype.commaOrSpaceSeparated=!1,Vp.prototype.commaSeparated=!1,Vp.prototype.defined=!1,Vp.prototype.mustUseProperty=!1,Vp.prototype.number=!1,Vp.prototype.overloadedBoolean=!1,Vp.prototype.property=``,Vp.prototype.spaceSeparated=!1,Vp.prototype.space=void 0;var Hp=s({boolean:()=>Wp,booleanish:()=>Gp,commaOrSpaceSeparated:()=>Yp,commaSeparated:()=>Jp,number:()=>W,overloadedBoolean:()=>Kp,spaceSeparated:()=>qp}),Up=0,Wp=Xp(),Gp=Xp(),Kp=Xp(),W=Xp(),qp=Xp(),Jp=Xp(),Yp=Xp();function Xp(){return 2**++Up}var Zp=Object.keys(Hp),Qp=class extends Vp{constructor(e,t,n,r){let i=-1;if(super(e,t),$p(this,`space`,r),typeof n==`number`)for(;++i<Zp.length;){let e=Zp[i];$p(this,Zp[i],(n&Hp[e])===Hp[e])}}};Qp.prototype.defined=!0;function $p(e,t,n){n&&(e[t]=n)}function em(e){let t={},n={};for(let[r,i]of Object.entries(e.properties)){let a=new Qp(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[Bp(r)]=r,n[Bp(a.attribute)]=r}return new Rp(t,n,e.space)}var tm=em({properties:{ariaActiveDescendant:null,ariaAtomic:Gp,ariaAutoComplete:null,ariaBusy:Gp,ariaChecked:Gp,ariaColCount:W,ariaColIndex:W,ariaColSpan:W,ariaControls:qp,ariaCurrent:null,ariaDescribedBy:qp,ariaDetails:null,ariaDisabled:Gp,ariaDropEffect:qp,ariaErrorMessage:null,ariaExpanded:Gp,ariaFlowTo:qp,ariaGrabbed:Gp,ariaHasPopup:null,ariaHidden:Gp,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:qp,ariaLevel:W,ariaLive:null,ariaModal:Gp,ariaMultiLine:Gp,ariaMultiSelectable:Gp,ariaOrientation:null,ariaOwns:qp,ariaPlaceholder:null,ariaPosInSet:W,ariaPressed:Gp,ariaReadOnly:Gp,ariaRelevant:null,ariaRequired:Gp,ariaRoleDescription:qp,ariaRowCount:W,ariaRowIndex:W,ariaRowSpan:W,ariaSelected:Gp,ariaSetSize:W,ariaSort:null,ariaValueMax:W,ariaValueMin:W,ariaValueNow:W,ariaValueText:null,role:null},transform(e,t){return t===`role`?t:`aria-`+t.slice(4).toLowerCase()}});function nm(e,t){return t in e?e[t]:t}function rm(e,t){return nm(e,t.toLowerCase())}var im=em({attributes:{acceptcharset:`accept-charset`,classname:`class`,htmlfor:`for`,httpequiv:`http-equiv`},mustUseProperty:[`checked`,`multiple`,`muted`,`selected`],properties:{abbr:null,accept:Jp,acceptCharset:qp,accessKey:qp,action:null,allow:null,allowFullScreen:Wp,allowPaymentRequest:Wp,allowUserMedia:Wp,alt:null,as:null,async:Wp,autoCapitalize:null,autoComplete:qp,autoFocus:Wp,autoPlay:Wp,blocking:qp,capture:null,charSet:null,checked:Wp,cite:null,className:qp,cols:W,colSpan:null,content:null,contentEditable:Gp,controls:Wp,controlsList:qp,coords:W|Jp,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Wp,defer:Wp,dir:null,dirName:null,disabled:Wp,download:Kp,draggable:Gp,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Wp,formTarget:null,headers:qp,height:W,hidden:Kp,high:W,href:null,hrefLang:null,htmlFor:qp,httpEquiv:qp,id:null,imageSizes:null,imageSrcSet:null,inert:Wp,inputMode:null,integrity:null,is:null,isMap:Wp,itemId:null,itemProp:qp,itemRef:qp,itemScope:Wp,itemType:qp,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Wp,low:W,manifest:null,max:null,maxLength:W,media:null,method:null,min:null,minLength:W,multiple:Wp,muted:Wp,name:null,nonce:null,noModule:Wp,noValidate:Wp,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Wp,optimum:W,pattern:null,ping:qp,placeholder:null,playsInline:Wp,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Wp,referrerPolicy:null,rel:qp,required:Wp,reversed:Wp,rows:W,rowSpan:W,sandbox:qp,scope:null,scoped:Wp,seamless:Wp,selected:Wp,shadowRootClonable:Wp,shadowRootDelegatesFocus:Wp,shadowRootMode:null,shape:null,size:W,sizes:null,slot:null,span:W,spellCheck:Gp,src:null,srcDoc:null,srcLang:null,srcSet:null,start:W,step:null,style:null,tabIndex:W,target:null,title:null,translate:null,type:null,typeMustMatch:Wp,useMap:null,value:Gp,width:W,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:qp,axis:null,background:null,bgColor:null,border:W,borderColor:null,bottomMargin:W,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Wp,declare:Wp,event:null,face:null,frame:null,frameBorder:null,hSpace:W,leftMargin:W,link:null,longDesc:null,lowSrc:null,marginHeight:W,marginWidth:W,noResize:Wp,noHref:Wp,noShade:Wp,noWrap:Wp,object:null,profile:null,prompt:null,rev:null,rightMargin:W,rules:null,scheme:null,scrolling:Gp,standby:null,summary:null,text:null,topMargin:W,valueType:null,version:null,vAlign:null,vLink:null,vSpace:W,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Wp,disableRemotePlayback:Wp,prefix:null,property:null,results:W,security:null,unselectable:null},space:`html`,transform:rm}),am=em({attributes:{accentHeight:`accent-height`,alignmentBaseline:`alignment-baseline`,arabicForm:`arabic-form`,baselineShift:`baseline-shift`,capHeight:`cap-height`,className:`class`,clipPath:`clip-path`,clipRule:`clip-rule`,colorInterpolation:`color-interpolation`,colorInterpolationFilters:`color-interpolation-filters`,colorProfile:`color-profile`,colorRendering:`color-rendering`,crossOrigin:`crossorigin`,dataType:`datatype`,dominantBaseline:`dominant-baseline`,enableBackground:`enable-background`,fillOpacity:`fill-opacity`,fillRule:`fill-rule`,floodColor:`flood-color`,floodOpacity:`flood-opacity`,fontFamily:`font-family`,fontSize:`font-size`,fontSizeAdjust:`font-size-adjust`,fontStretch:`font-stretch`,fontStyle:`font-style`,fontVariant:`font-variant`,fontWeight:`font-weight`,glyphName:`glyph-name`,glyphOrientationHorizontal:`glyph-orientation-horizontal`,glyphOrientationVertical:`glyph-orientation-vertical`,hrefLang:`hreflang`,horizAdvX:`horiz-adv-x`,horizOriginX:`horiz-origin-x`,horizOriginY:`horiz-origin-y`,imageRendering:`image-rendering`,letterSpacing:`letter-spacing`,lightingColor:`lighting-color`,markerEnd:`marker-end`,markerMid:`marker-mid`,markerStart:`marker-start`,navDown:`nav-down`,navDownLeft:`nav-down-left`,navDownRight:`nav-down-right`,navLeft:`nav-left`,navNext:`nav-next`,navPrev:`nav-prev`,navRight:`nav-right`,navUp:`nav-up`,navUpLeft:`nav-up-left`,navUpRight:`nav-up-right`,onAbort:`onabort`,onActivate:`onactivate`,onAfterPrint:`onafterprint`,onBeforePrint:`onbeforeprint`,onBegin:`onbegin`,onCancel:`oncancel`,onCanPlay:`oncanplay`,onCanPlayThrough:`oncanplaythrough`,onChange:`onchange`,onClick:`onclick`,onClose:`onclose`,onCopy:`oncopy`,onCueChange:`oncuechange`,onCut:`oncut`,onDblClick:`ondblclick`,onDrag:`ondrag`,onDragEnd:`ondragend`,onDragEnter:`ondragenter`,onDragExit:`ondragexit`,onDragLeave:`ondragleave`,onDragOver:`ondragover`,onDragStart:`ondragstart`,onDrop:`ondrop`,onDurationChange:`ondurationchange`,onEmptied:`onemptied`,onEnd:`onend`,onEnded:`onended`,onError:`onerror`,onFocus:`onfocus`,onFocusIn:`onfocusin`,onFocusOut:`onfocusout`,onHashChange:`onhashchange`,onInput:`oninput`,onInvalid:`oninvalid`,onKeyDown:`onkeydown`,onKeyPress:`onkeypress`,onKeyUp:`onkeyup`,onLoad:`onload`,onLoadedData:`onloadeddata`,onLoadedMetadata:`onloadedmetadata`,onLoadStart:`onloadstart`,onMessage:`onmessage`,onMouseDown:`onmousedown`,onMouseEnter:`onmouseenter`,onMouseLeave:`onmouseleave`,onMouseMove:`onmousemove`,onMouseOut:`onmouseout`,onMouseOver:`onmouseover`,onMouseUp:`onmouseup`,onMouseWheel:`onmousewheel`,onOffline:`onoffline`,onOnline:`ononline`,onPageHide:`onpagehide`,onPageShow:`onpageshow`,onPaste:`onpaste`,onPause:`onpause`,onPlay:`onplay`,onPlaying:`onplaying`,onPopState:`onpopstate`,onProgress:`onprogress`,onRateChange:`onratechange`,onRepeat:`onrepeat`,onReset:`onreset`,onResize:`onresize`,onScroll:`onscroll`,onSeeked:`onseeked`,onSeeking:`onseeking`,onSelect:`onselect`,onShow:`onshow`,onStalled:`onstalled`,onStorage:`onstorage`,onSubmit:`onsubmit`,onSuspend:`onsuspend`,onTimeUpdate:`ontimeupdate`,onToggle:`ontoggle`,onUnload:`onunload`,onVolumeChange:`onvolumechange`,onWaiting:`onwaiting`,onZoom:`onzoom`,overlinePosition:`overline-position`,overlineThickness:`overline-thickness`,paintOrder:`paint-order`,panose1:`panose-1`,pointerEvents:`pointer-events`,referrerPolicy:`referrerpolicy`,renderingIntent:`rendering-intent`,shapeRendering:`shape-rendering`,stopColor:`stop-color`,stopOpacity:`stop-opacity`,strikethroughPosition:`strikethrough-position`,strikethroughThickness:`strikethrough-thickness`,strokeDashArray:`stroke-dasharray`,strokeDashOffset:`stroke-dashoffset`,strokeLineCap:`stroke-linecap`,strokeLineJoin:`stroke-linejoin`,strokeMiterLimit:`stroke-miterlimit`,strokeOpacity:`stroke-opacity`,strokeWidth:`stroke-width`,tabIndex:`tabindex`,textAnchor:`text-anchor`,textDecoration:`text-decoration`,textRendering:`text-rendering`,transformOrigin:`transform-origin`,typeOf:`typeof`,underlinePosition:`underline-position`,underlineThickness:`underline-thickness`,unicodeBidi:`unicode-bidi`,unicodeRange:`unicode-range`,unitsPerEm:`units-per-em`,vAlphabetic:`v-alphabetic`,vHanging:`v-hanging`,vIdeographic:`v-ideographic`,vMathematical:`v-mathematical`,vectorEffect:`vector-effect`,vertAdvY:`vert-adv-y`,vertOriginX:`vert-origin-x`,vertOriginY:`vert-origin-y`,wordSpacing:`word-spacing`,writingMode:`writing-mode`,xHeight:`x-height`,playbackOrder:`playbackorder`,timelineBegin:`timelinebegin`},properties:{about:Yp,accentHeight:W,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:W,amplitude:W,arabicForm:null,ascent:W,attributeName:null,attributeType:null,azimuth:W,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:W,by:null,calcMode:null,capHeight:W,className:qp,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:W,diffuseConstant:W,direction:null,display:null,dur:null,divisor:W,dominantBaseline:null,download:Wp,dx:null,dy:null,edgeMode:null,editable:null,elevation:W,enableBackground:null,end:null,event:null,exponent:W,externalResourcesRequired:null,fill:null,fillOpacity:W,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Jp,g2:Jp,glyphName:Jp,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:W,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:W,horizOriginX:W,horizOriginY:W,id:null,ideographic:W,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:W,k:W,k1:W,k2:W,k3:W,k4:W,kernelMatrix:Yp,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:W,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:W,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:W,overlineThickness:W,paintOrder:null,panose1:null,path:null,pathLength:W,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:qp,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:W,pointsAtY:W,pointsAtZ:W,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Yp,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Yp,rev:Yp,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Yp,requiredFeatures:Yp,requiredFonts:Yp,requiredFormats:Yp,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:W,specularExponent:W,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:W,strikethroughThickness:W,string:null,stroke:null,strokeDashArray:Yp,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:W,strokeOpacity:W,strokeWidth:null,style:null,surfaceScale:W,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Yp,tabIndex:W,tableValues:null,target:null,targetX:W,targetY:W,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Yp,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:W,underlineThickness:W,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:W,values:null,vAlphabetic:W,vMathematical:W,vectorEffect:null,vHanging:W,vIdeographic:W,version:null,vertAdvY:W,vertOriginX:W,vertOriginY:W,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:W,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:`svg`,transform:nm}),om=em({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:`xlink`,transform(e,t){return`xlink:`+t.slice(5).toLowerCase()}}),sm=em({attributes:{xmlnsxlink:`xmlns:xlink`},properties:{xmlnsXLink:null,xmlns:null},space:`xmlns`,transform:rm}),cm=em({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:`xml`,transform(e,t){return`xml:`+t.slice(3).toLowerCase()}}),lm={classId:`classID`,dataType:`datatype`,itemId:`itemID`,strokeDashArray:`strokeDasharray`,strokeDashOffset:`strokeDashoffset`,strokeLineCap:`strokeLinecap`,strokeLineJoin:`strokeLinejoin`,strokeMiterLimit:`strokeMiterlimit`,typeOf:`typeof`,xLinkActuate:`xlinkActuate`,xLinkArcRole:`xlinkArcrole`,xLinkHref:`xlinkHref`,xLinkRole:`xlinkRole`,xLinkShow:`xlinkShow`,xLinkTitle:`xlinkTitle`,xLinkType:`xlinkType`,xmlnsXLink:`xmlnsXlink`},um=/[A-Z]/g,dm=/-[a-z]/g,fm=/^data[-\w.:]+$/i;function pm(e,t){let n=Bp(t),r=t,i=Vp;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)===`data`&&fm.test(t)){if(t.charAt(4)===`-`){let e=t.slice(5).replace(dm,hm);r=`data`+e.charAt(0).toUpperCase()+e.slice(1)}else{let e=t.slice(4);if(!dm.test(e)){let n=e.replace(um,mm);n.charAt(0)!==`-`&&(n=`-`+n),t=`data`+n}}i=Qp}return new i(r,t)}function mm(e){return`-`+e.toLowerCase()}function hm(e){return e.charAt(1).toUpperCase()}var gm=zp([tm,im,om,sm,cm],`html`),_m=zp([tm,am,om,sm,cm],`svg`);function vm(e){return e.join(` `).trim()}var ym=o(((e,t)=>{var n=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,r=/\n/g,i=/^\s*/,a=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,o=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,c=/^[;\s]*/,l=/^\s+|\s+$/g,u=`
50
+ `},Ed=0,Dd=[];function Od(e){var t=I.useRef([]),n=I.useRef([0,0]),r=I.useRef(),i=I.useState(Ed++)[0],a=I.useState(Xu)[0],o=I.useRef(e);I.useEffect(function(){o.current=e},[e]),I.useEffect(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=Tu([e.lockRef.current],(e.shards||[]).map(Cd),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=I.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=xd(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=md(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=md(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return bd(h,t,e,h===`h`?s:c,!0)},[]),c=I.useCallback(function(e){var n=e;if(!(!Dd.length||Dd[Dd.length-1]!==a)){var r=`deltaY`in n?Sd(n):xd(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&wd(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(Cd).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),l=I.useCallback(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:kd(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=I.useCallback(function(e){n.current=xd(e),r.current=void 0},[]),d=I.useCallback(function(t){l(t.type,Sd(t),t.target,s(t,e.lockRef.current))},[]),f=I.useCallback(function(t){l(t.type,xd(t),t.target,s(t,e.lockRef.current))},[]);I.useEffect(function(){return Dd.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener(`wheel`,c,ld),document.addEventListener(`touchmove`,c,ld),document.addEventListener(`touchstart`,u,ld),function(){Dd=Dd.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,c,ld),document.removeEventListener(`touchmove`,c,ld),document.removeEventListener(`touchstart`,u,ld)}},[]);var p=e.removeScrollBar,m=e.inert;return I.createElement(I.Fragment,null,m?I.createElement(a,{styles:Td(i)}):null,p?I.createElement(od,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function kd(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var Ad=zu(Bu,Od),jd=I.forwardRef(function(e,t){return I.createElement(Hu,Cu({},e,{ref:t,sideCar:Ad}))});jd.classNames=Hu.classNames;var Md=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},Nd=new WeakMap,Pd=new WeakMap,Fd={},Id=0,Ld=function(e){return e&&(e.host||Ld(e.parentNode))},Rd=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=Ld(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},zd=function(e,t,n,r){var i=Rd(t,Array.isArray(e)?e:[e]);Fd[n]||(Fd[n]=new WeakMap);var a=Fd[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(Nd.get(e)||0)+1,l=(a.get(e)||0)+1;Nd.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Pd.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),Id++,function(){o.forEach(function(e){var t=Nd.get(e)-1,i=a.get(e)-1;Nd.set(e,t),a.set(e,i),t||(Pd.has(e)||e.removeAttribute(r),Pd.delete(e)),i||e.removeAttribute(n)}),Id--,Id||(Nd=new WeakMap,Nd=new WeakMap,Pd=new WeakMap,Fd={})}},Bd=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||Md(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),zd(r,i,n,`aria-hidden`)):function(){return null}},Vd=Object.defineProperty,Hd=(e,t)=>Vd(e,`name`,{value:t,configurable:!0}),Ud=`Dialog`,[Wd,Gd]=el(Ud),[Kd,qd]=Wd(Ud),Jd=Hd(e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!0}=e,s=I.useRef(null),c=I.useRef(null),[l,u]=gl({prop:r,defaultProp:i??!1,onChange:a,caller:Ud}),[d,f]=I.useState(0),[p,m]=I.useState(0);return(0,L.jsx)(Kd,{scope:t,triggerRef:s,contentRef:c,contentId:sl(),titleId:sl(),descriptionId:sl(),titlePresent:d>0,descriptionPresent:p>0,setTitleCount:f,setDescriptionCount:m,open:l,onOpenChange:u,onOpenToggle:I.useCallback(()=>u(e=>!e),[u]),modal:o,children:n})},`Dialog`),Yd=`DialogPortal`,[Xd,Zd]=Wd(Yd,{forceMount:void 0}),Qd=Hd(e=>{let{__scopeDialog:t,forceMount:n,children:r,container:i}=e,a=qd(Yd,t);return(0,L.jsx)(Xd,{scope:t,forceMount:n,children:I.Children.map(r,e=>(0,L.jsx)(uu,{present:n||a.open,children:(0,L.jsx)(ou,{asChild:!0,container:i,children:e})}))})},`DialogPortal`),$d=`DialogOverlay`,ef=I.forwardRef(Hd(function(e,t){let n=Zd($d,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=qd($d,e.__scopeDialog);return a.modal?(0,L.jsx)(uu,{present:r||a.open,children:(0,L.jsx)(nf,{...i,ref:t})}):null},`DialogOverlay`)),tf=sc(`DialogOverlay.RemoveScroll`),nf=I.forwardRef(Hd(function(e,t){let{__scopeDialog:n,...r}=e,i=qd($d,n),a=ic(t,Ll());return(0,L.jsx)(jd,{as:tf,allowPinchZoom:!0,shards:[i.contentRef],children:(0,L.jsx)(wl.div,{"data-state":hf(i.open),...r,ref:a,style:{pointerEvents:`auto`,...r.style}})})},`DialogOverlayImpl`)),rf=`DialogContent`,af=I.forwardRef(Hd(function(e,t){let n=Zd(rf,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=qd(rf,e.__scopeDialog);return(0,L.jsx)(uu,{present:r||a.open,children:a.modal?(0,L.jsx)(of,{...i,ref:t}):(0,L.jsx)(sf,{...i,ref:t})})},`DialogContent`)),of=I.forwardRef(Hd(function(e,t){let n=qd(rf,e.__scopeDialog),r=I.useRef(null),i=ic(t,n.contentRef,r);return I.useEffect(()=>{let e=r.current;if(e)return Bd(e)},[]),(0,L.jsx)(cf,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:Kc(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:Kc(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()}),onFocusOutside:Kc(e.onFocusOutside,e=>e.preventDefault())})},`DialogContentModal`)),sf=I.forwardRef(Hd(function(e,t){let n=qd(rf,e.__scopeDialog),r=I.useRef(!1),i=I.useRef(!1);return(0,L.jsx)(cf,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})},`DialogContentNonModal`)),cf=I.forwardRef(Hd(function(e,t){let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,...o}=e,s=qd(rf,n);return xu(),(0,L.jsx)(L.Fragment,{children:(0,L.jsx)(ql,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,L.jsx)(Il,{role:`dialog`,id:s.contentId,"aria-describedby":s.descriptionPresent?s.descriptionId:void 0,"aria-labelledby":s.titlePresent?s.titleId:void 0,"data-state":hf(s.open),...o,ref:t,deferPointerDownOutside:!0,onDismiss:()=>s.onOpenChange(!1)})})})},`DialogContentImpl`)),lf=`DialogTitle`,uf=I.forwardRef(Hd(function(e,t){let{__scopeDialog:n,...r}=e,i=qd(lf,n),{setTitleCount:a}=i;return nl(()=>(a(e=>e+1),()=>a(e=>e-1)),[a]),(0,L.jsx)(wl.h2,{id:i.titleId,...r,ref:t})},`DialogTitle`)),df=`DialogDescription`,ff=I.forwardRef(Hd(function(e,t){let{__scopeDialog:n,...r}=e,i=qd(df,n),{setDescriptionCount:a}=i;return nl(()=>(a(e=>e+1),()=>a(e=>e-1)),[a]),(0,L.jsx)(wl.p,{id:i.descriptionId,...r,ref:t})},`DialogDescription`)),pf=`DialogClose`,mf=I.forwardRef(Hd(function(e,t){let{__scopeDialog:n,...r}=e,i=qd(pf,n);return(0,L.jsx)(wl.button,{type:`button`,...r,ref:t,onClick:Kc(e.onClick,()=>i.onOpenChange(!1))})},`DialogClose`));function hf(e){return e?`open`:`closed`}Hd(hf,`getState`);function gf({brand:e,visual:t,auth:n,mobileAuth:r,footer:i,className:a,...o}){return(0,L.jsxs)(`section`,{className:V(`homepage-entry`,a),...o,children:[(0,L.jsxs)(`div`,{className:`homepage-entry-desktop`,children:[(0,L.jsxs)(`section`,{className:`homepage-entry-visual-column`,"aria-label":`Tutti product preview`,children:[(0,L.jsx)(`div`,{className:`homepage-entry-brand`,children:e}),(0,L.jsx)(`div`,{className:`homepage-entry-visual`,children:t})]}),(0,L.jsxs)(`aside`,{className:`homepage-entry-auth-rail`,"aria-label":`Sign in to Tutti`,children:[(0,L.jsx)(`div`,{className:`homepage-entry-auth-content`,children:n}),i===void 0?null:(0,L.jsx)(`div`,{className:`homepage-entry-auth-footnote`,children:i})]})]}),(0,L.jsxs)(`section`,{className:`homepage-entry-mobile`,"aria-label":`Sign in to Tutti`,children:[(0,L.jsx)(`div`,{className:`product-appbar`,children:e}),(0,L.jsx)(`div`,{className:`auth-shell`,children:r}),i===void 0?null:(0,L.jsx)(`div`,{className:`homepage-entry-mobile-footnote`,children:i})]})]})}function _f({className:e,...t}){return(0,L.jsx)(`p`,{className:V(`product-entry-footnote`,e),...t})}function vf({title:e,description:t,children:n,action:r,feedback:i,secondaryAction:a,className:o,...s}){return(0,L.jsxs)(`form`,{className:V(`product-entry-auth-form`,o),...s,children:[(0,L.jsxs)(`header`,{className:`product-entry-auth-header`,children:[(0,L.jsx)(`h1`,{children:e}),(0,L.jsx)(`p`,{children:t})]}),(0,L.jsx)(`div`,{className:`product-entry-auth-body`,children:n}),a===void 0?null:(0,L.jsx)(`div`,{className:`product-entry-auth-secondary`,children:a}),i===void 0?null:(0,L.jsx)(`div`,{className:`product-entry-auth-feedback`,children:i}),(0,L.jsx)(`footer`,{className:`product-entry-auth-footer`,children:r})]})}var yf=40.1,bf=yf+.6,xf={openingFadeEnd:1.05,chatEnd:7.45,scratchpadPanEnd:8.8,scratchpadEnd:17.8,runCursorStart:17.95,runCursorArrive:18.65,runClickStart:18.67,runEnd:18.9,executionPrepareEnd:20.35,executionImplementEnd:24.55,executionValidateEnd:26.35,executionComplete:28.15,executionEnd:28.95,fullWorkspace:30.95,artifactLive:30.55,artifactClick:32.65,artifactScroll:36.1,artifactScrollEnd:39.55,finalHoldEnd:yf,fadeEnd:bf},Sf={centerX:.325,centerY:.25,scale:1.62},Cf={centerX:.325,centerY:.47,scale:1.64},wf={centerX:.855,centerY:.23,scale:1.72},Tf={centerX:.855,centerY:.35,scale:1.72},Ef={centerX:.855,centerY:.79,scale:1.72},Df={centerX:.5,centerY:.5,scale:1},Of=[{start:1.35,end:5.95,from:Sf,to:Cf,linearPosition:!0},{start:7.45,end:8.8,from:Cf,to:wf},{start:8.8,end:14.3,from:wf,to:Tf,linearPosition:!0},{start:14.6,end:17.8,from:Tf,to:Ef},{start:xf.executionEnd,end:xf.fullWorkspace,from:Ef,to:Df}];function kf(e,t=0,n=1){return Math.min(n,Math.max(t,e))}function Af(e){return 1-(1-kf(e))**3}function jf(e){let t=kf(e);return t<.5?4*t*t*t:1-(-2*t+2)**3/2}function Mf(e){let t=kf(e);return t<.5?16*t**5:1-(-2*t+2)**5/2}function Nf(e,t,n,r=Af){let i=Math.max(.001,n-t);return r(kf((e-t)/i))}function Pf(e,t,n){return e+(t-e)*n}function Ff(e,t){let n=kf((t-e.start)/Math.max(.001,e.end-e.start)),r=e.linearPosition?n:Mf(n);return{centerX:Pf(e.from.centerX,e.to.centerX,r),centerY:Pf(e.from.centerY,e.to.centerY,r),scale:Pf(e.from.scale,e.to.scale,e.linearPosition?n:jf(n))}}function If(e){if(e<Of[0].start)return Sf;for(let t of Of)if(e<=t.end)return e<t.start?t.from:Ff(t,e);return Df}function Lf(e){return e>=xf.executionComplete?{id:`complete`,label:`Task completed`}:e>=xf.executionValidateEnd?{id:`update`,label:`Synchronizing project`}:e>=xf.executionImplementEnd?{id:`validate`,label:`Validating result`}:e>=xf.executionPrepareEnd?{id:`implement`,label:`Implementing with Codex`}:{id:`prepare`,label:`Preparing workspace`}}function Rf(e){return Nf(e,xf.artifactScroll,xf.artifactScrollEnd,jf)}function zf(e){return 1-Nf(e,yf,bf,jf)}var Bf=1500,Vf=1e3,Hf=2.5,Uf=`(min-width: 980px) and (prefers-reduced-motion: no-preference)`,Wf=(0,I.lazy)(async()=>({default:(await xo(()=>import(`./homepage-motion-scene-TmkKf8wQ.js`),[])).HomepageMotionScene}));function Gf(e){let[t,n]=(0,I.useState)(()=>typeof window>`u`||typeof window.matchMedia!=`function`?!0:window.matchMedia(e).matches);return(0,I.useEffect)(()=>{if(typeof window.matchMedia!=`function`)return;let t=window.matchMedia(e),r=()=>n(t.matches);return r(),t.addEventListener(`change`,r),()=>t.removeEventListener(`change`,r)},[e]),t}function Kf(){return Gf(Uf)}function qf(e,t){let[n,r]=(0,I.useState)({elapsed:0,cycle:0}),i=(0,I.useRef)(null),a=bf+t;return(0,I.useEffect)(()=>{if(!e){i.current=null;return}let t=0,n=e=>{let o=i.current??e;i.current=e;let s=Math.min(.1,(e-o)/1e3);r(e=>{let t=e.elapsed+s;return t<a?{...e,elapsed:t}:{elapsed:t%a,cycle:e.cycle+1}}),t=window.requestAnimationFrame(n)};return t=window.requestAnimationFrame(n),()=>window.cancelAnimationFrame(t)},[a,e]),{cycle:n.cycle,time:Math.min(n.elapsed,bf)}}function Jf(e,t){let[n,r]=(0,I.useState)(0),i=(0,I.useRef)(t),a=(0,I.useRef)(!1);return i.current=t,(0,I.useEffect)(()=>{if(r(0),a.current=!1,!e)return;let t=0,n=null,o=e=>{n??=e;let s=Math.min((e-n)/1e3,bf);if(r(s),s>=bf){a.current||(a.current=!0,i.current());return}t=window.requestAnimationFrame(o)};return t=window.requestAnimationFrame(o),()=>window.cancelAnimationFrame(t)},[e]),n}function Yf(e){let t=(0,I.useRef)(null),[n,r]=(0,I.useState)(0);return(0,I.useLayoutEffect)(()=>{if(!e)return;let n=t.current;if(n===null)return;let i=()=>{let e=n.getBoundingClientRect(),t=Math.min(e.width/Bf,e.height/Vf);r(Number.isFinite(t)?t:0)};if(i(),typeof ResizeObserver>`u`)return;let a=new ResizeObserver(i);return a.observe(n),()=>a.disconnect()},[e]),{frameRef:t,masterScale:n}}function Xf({assets:e,enabled:t,sceneKey:n,time:r,className:i,...a}){let{frameRef:o,masterScale:s}=Yf(t);return t?(0,L.jsx)(`div`,{ref:o,className:V(`homepage-motion-frame`,i),...a,children:(0,L.jsx)(`div`,{className:`homepage-motion-master`,style:{"--homepage-motion-scale":s},children:(0,L.jsx)(I.Suspense,{fallback:null,children:(0,L.jsx)(Wf,{time:r,assets:e},n)})})}):null}function Zf({assets:e,idleSeconds:t=Hf,className:n,...r}){let i=Kf(),a=qf(i,Math.max(0,t));return(0,L.jsx)(Xf,{...r,assets:e,enabled:i,sceneKey:a.cycle,time:a.time,className:n})}function Qf({assets:e,onComplete:t,className:n,...r}){let i=Kf(),a=Jf(i,(0,I.useCallback)(()=>t(),[t]));return(0,L.jsx)(Xf,{...r,assets:e,enabled:i,time:a,className:n})}function $f({onOpen:e,onDismiss:t,className:n,...r}){return(0,L.jsxs)(`aside`,{className:V(`product-tour-pill`,n),"aria-label":`Product tour`,...r,children:[(0,L.jsxs)(Tc,{type:`button`,className:`product-tour-pill-open`,onClick:e,children:[(0,L.jsx)(`span`,{className:`product-tour-pill-icon`,"aria-hidden":`true`,children:(0,L.jsx)(ua,{})}),(0,L.jsxs)(`span`,{className:`product-tour-pill-copy`,children:[(0,L.jsx)(`strong`,{children:`New to Tutti?`}),(0,L.jsx)(`span`,{children:`Take a tour`})]})]}),(0,L.jsx)(Cc,{type:`button`,className:`product-tour-pill-dismiss`,label:`Dismiss product tour`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`}),onClick:t})]})}function ep({assets:e,open:t,onOpenChange:n}){let r=Kf();return(0,I.useEffect)(()=>{t&&!r&&n(!1)},[r,n,t]),r?(0,L.jsx)(Jd,{open:t,onOpenChange:n,children:(0,L.jsxs)(Qd,{children:[(0,L.jsx)(ef,{className:`product-tour-dialog-overlay`}),(0,L.jsxs)(af,{className:`product-tour-dialog-content`,onInteractOutside:e=>e.preventDefault(),onPointerDownOutside:e=>e.preventDefault(),children:[(0,L.jsx)(uf,{className:`product-tour-dialog-title`,children:`Welcome to Tutti`}),(0,L.jsx)(mf,{asChild:!0,children:(0,L.jsx)(Cc,{type:`button`,className:`product-tour-dialog-close`,label:`Close product tour`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`})})}),t?(0,L.jsx)(Qf,{className:`product-tour-dialog-motion`,assets:e,onComplete:()=>n(!1)}):null]})]})}):null}function tp({asChild:e=!1,className:t,...n}){return(0,L.jsx)(e?cc:`section`,{className:V(`product-card`,t),...n})}function np({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`product-card-header`,t),...n,children:e})}function rp({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`product-card-body`,t),...n,children:e})}function ip({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`product-card-feedback`,t),...n,children:e})}function ap({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`product-card-footer`,t),...n,children:e})}function op({title:e,description:t,children:n,action:r,feedback:i,secondaryAction:a,size:o=`standard`,className:s,...c}){return(0,L.jsx)(tp,{className:V(`entry-card auth-card`,o===`wide`?`is-wide`:void 0,s),asChild:!0,children:(0,L.jsxs)(`form`,{...c,children:[(0,L.jsx)(`section`,{className:`auth-card-intro`,children:(0,L.jsxs)(np,{className:`auth-card-header`,children:[(0,L.jsx)(`h1`,{children:e}),(0,L.jsx)(`p`,{children:t})]})}),(0,L.jsx)(`section`,{className:`auth-card-action`,children:(0,L.jsxs)(`div`,{className:`auth-card-action-content`,children:[(0,L.jsx)(rp,{children:n}),a===void 0?null:(0,L.jsx)(`div`,{className:`auth-card-secondary`,children:a}),i===void 0?null:(0,L.jsx)(ip,{children:i}),(0,L.jsx)(ap,{children:r})]})})]})})}function sp({projectName:e,hostLabel:t,hostOnline:n=!1,members:r,invitedBy:i,className:a,...o}){return(0,L.jsxs)(`section`,{className:V(`invite-summary`,a),"aria-label":`Project invitation`,...o,children:[(0,L.jsxs)(`div`,{className:`invite-project`,children:[(0,L.jsx)(`h2`,{children:e}),(0,L.jsxs)(`p`,{className:V(`project-line`,n?`is-online`:`is-offline`),children:[(0,L.jsx)(`span`,{className:`status-dot`,"aria-hidden":`true`}),t]})]}),r===void 0?null:(0,L.jsx)(`div`,{className:`invite-members`,children:r}),i===void 0?null:(0,L.jsxs)(`div`,{className:`invite-meta`,children:[(0,L.jsx)(`span`,{children:`Invited by`}),(0,L.jsx)(`strong`,{children:i})]})]})}function cp({label:e,value:t,action:n,className:r,...i}){return(0,L.jsxs)(`div`,{className:V(`account-row`,r),...i,children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`span`,{children:e}),(0,L.jsx)(`strong`,{children:t})]}),n]})}function lp({title:e,accountName:t,accountAction:n,children:r,className:i,...a}){return(0,L.jsxs)(tp,{className:V(`project-center-card`,i),...a,children:[(0,L.jsxs)(`header`,{className:`project-center-card-header`,children:[(0,L.jsx)(`h1`,{children:e}),t===void 0&&n===void 0?null:(0,L.jsxs)(`div`,{className:`project-center-account`,"aria-label":t===void 0?`Page actions`:`Signed in user`,children:[t===void 0?null:(0,L.jsx)(`span`,{className:`project-center-account-name`,children:t}),n]})]}),r]})}function up({action:e,description:t,descriptionId:n,disabledTrigger:r=!1,className:i,...a}){return(0,L.jsx)(`div`,{className:V(`project-center-header-action`,i),...a,children:t===void 0?e:(0,L.jsx)(kc,{content:t,disabledTrigger:r,side:`bottom`,...n===void 0?{}:{contentId:n},children:e})})}function dp({items:e,className:t,...n}){return(0,L.jsx)(`nav`,{className:V(`project-scope-navigation`,t),"aria-label":`Project scope`,...n,children:(0,L.jsx)(`ul`,{children:e.map(e=>(0,L.jsx)(`li`,{children:(0,L.jsx)(`a`,{href:e.href,"aria-current":e.current===!0?`page`:void 0,...e.current!==!0&&e.onClick===void 0?{}:{onClick:t=>{e.current===!0&&t.preventDefault(),e.onClick?.(t)}},children:e.label})},e.id))})})}function fp({items:e,action:t,className:n,...r}){return(0,L.jsxs)(`section`,{className:V(`project-scope-toolbar`,n),...r,children:[(0,L.jsx)(dp,{items:e}),(0,L.jsx)(`div`,{className:`project-scope-toolbar-action`,children:t})]})}function pp({command:e,terminalLabel:t=`Install and start in your terminal`,copyLabel:n=`Copy`,copyAriaLabel:r=`Copy launch command`,commandAriaLabel:i=`Launch command`,onCopyCommand:a,className:o,...s}){return(0,L.jsxs)(`section`,{className:V(`project-launch-terminal`,o),...s,children:[(0,L.jsxs)(`div`,{className:`project-launch-terminal-bar`,children:[(0,L.jsx)(`span`,{children:t}),a===void 0?null:(0,L.jsxs)(Tc,{className:`project-launch-copy-button`,type:`button`,"aria-label":r,onClick:()=>a(e),children:[(0,L.jsx)(ha,{"aria-hidden":`true`}),n]})]}),(0,L.jsx)(`pre`,{className:`project-launch-command-block`,"aria-label":i,children:(0,L.jsx)(`code`,{children:(0,L.jsxs)(`span`,{className:`project-launch-command-line`,children:[(0,L.jsx)(`span`,{className:`project-launch-command-prompt`,"aria-hidden":`true`,children:`>`}),(0,L.jsx)(`span`,{children:e})]})})})]})}function mp({open:e,onOpenChange:t,status:n=`opening`,description:r,command:i,onCopyCommand:a,retryHref:o,onRetry:s}){return(0,L.jsx)(xp,{open:e,onOpenChange:t,title:`Projects on this computer`,description:n===`opening`?`Opening Tutti…`:`Tutti did not open in this tab.`,className:`project-local-handoff-dialog-card`,children:(0,L.jsxs)(`div`,{className:`project-local-handoff-dialog-body`,children:[(0,L.jsxs)(`div`,{className:`project-local-handoff-intro`,children:[(0,L.jsx)(`span`,{className:`project-local-handoff-icon`,"aria-hidden":`true`,children:(0,L.jsx)(eo,{})}),(0,L.jsx)(`p`,{children:r})]}),(0,L.jsx)(pp,{command:i,...a===void 0?{}:{onCopyCommand:a}}),n!==`failed`||o===void 0?null:(0,L.jsx)(`div`,{className:`project-local-handoff-actions`,children:(0,L.jsx)(wc,{asChild:!0,children:(0,L.jsxs)(`a`,{href:o,...s===void 0?{}:{onClick:s},children:[(0,L.jsx)(Ha,{"aria-hidden":`true`}),`Retry`]})})})]})})}function hp({open:e,onOpenChange:t,projectName:n,state:r,command:i,unavailableMessage:a,onCopyCommand:o}){let s=r===`loading`?{icon:(0,L.jsx)(Ha,{"aria-hidden":`true`}),message:`Reading the connection state from the running Host…`}:r===`pairing_required`?{icon:(0,L.jsx)(eo,{"aria-hidden":`true`}),message:`In the target Feishu group, send this command once.`}:r===`connected`?{icon:(0,L.jsx)(Va,{"aria-hidden":`true`}),message:`This project is connected to its Feishu project group.`}:r===`not_recoverable`?{icon:(0,L.jsx)(ua,{"aria-hidden":`true`}),message:`The previous pairing command is no longer available. Stop and Resume this project to issue a new one.`}:r===`account_handoff_required`?{icon:(0,L.jsx)(ua,{"aria-hidden":`true`}),message:`This Host needs a fresh Tutti account handoff. Sign in to Local Console again, then Stop and Resume the project.`}:{icon:(0,L.jsx)(ua,{"aria-hidden":`true`}),message:a??`The Feishu connection state is temporarily unavailable. Try again from Connect.`};return(0,L.jsx)(xp,{open:e,onOpenChange:t,title:`Feishu connection`,description:`Connect ${n} to a Feishu project group.`,className:`project-local-handoff-dialog-card`,children:(0,L.jsxs)(`div`,{className:`project-local-handoff-dialog-body`,children:[(0,L.jsxs)(`div`,{className:`project-local-handoff-intro`,"aria-live":`polite`,children:[(0,L.jsx)(`span`,{className:`project-local-handoff-icon`,"aria-hidden":`true`,children:s.icon}),(0,L.jsx)(`p`,{children:s.message})]}),r===`pairing_required`&&i!==void 0?(0,L.jsx)(pp,{command:i,terminalLabel:`Send in the target Feishu group`,copyAriaLabel:`Copy connection command`,commandAriaLabel:`Connection command`,...o===void 0?{}:{onCopyCommand:o}}):null]})})}function gp({children:e,className:t,...n}){return(0,L.jsx)(`ul`,{className:V(`project-list`,t),"aria-label":`Recent projects`,...n,children:e})}function _p({children:e,className:t,...n}){return(0,L.jsx)(`section`,{className:V(`project-list-surface`,t),...n,children:(0,L.jsx)(gp,{children:e})})}function vp({status:e,className:t,...n}){let r=e===`online`?`Online`:e===`connecting`?`Connecting`:e===`stopped`?`Stopped`:e===`offline`?`Offline`:`Status unknown`,i=e===`online`?(0,L.jsx)(Va,{"aria-hidden":`true`}):e===`connecting`?(0,L.jsx)(Ha,{"aria-hidden":`true`}):e===`stopped`?(0,L.jsx)(za,{"aria-hidden":`true`}):e===`offline`?(0,L.jsx)(ro,{"aria-hidden":`true`}):(0,L.jsx)(ua,{"aria-hidden":`true`});return(0,L.jsx)(`span`,{className:V(`project-list-status-icon`,`is-${e}`,t),"aria-label":r,role:`img`,...n,children:i})}function yp({title:e,status:t,details:n,className:r,disabled:i,...a}){return(0,L.jsx)(`li`,{className:`project-list-item`,children:(0,L.jsxs)(`button`,{className:V(`project-list-row`,t===`online`||t===`connecting`?`is-active`:`is-inactive`,r),type:`button`,disabled:i,...a,children:[(0,L.jsx)(vp,{status:t}),(0,L.jsx)(`span`,{className:`project-list-identity`,children:(0,L.jsx)(`strong`,{children:e})}),n.map(e=>(0,L.jsxs)(`span`,{className:`project-list-detail`,children:[(0,L.jsx)(`small`,{children:e.label}),(0,L.jsx)(`strong`,{children:e.value})]},e.label)),(0,L.jsx)(na,{"aria-hidden":`true`})]})})}function bp({children:e,className:t,...n}){return(0,L.jsx)(`li`,{className:V(`project-list-item project-list-state-row`,t),...n,children:e})}function xp({open:e,onOpenChange:t,title:n,description:r,children:i,closeDisabled:a=!1,explicitCloseOnly:o=!1,className:s}){return(0,L.jsxs)(Jd,{open:e,onOpenChange:e=>{(e||!a)&&t(e)},children:[(0,L.jsx)(ef,{className:`product-entry-dialog-overlay`}),(0,L.jsx)(af,{asChild:!0,onEscapeKeyDown:e=>{(a||o)&&e.preventDefault()},onInteractOutside:e=>{(a||o)&&e.preventDefault()},onPointerDownOutside:e=>{(a||o)&&e.preventDefault()},children:(0,L.jsxs)(tp,{className:V(`product-entry-dialog-card`,s),children:[(0,L.jsxs)(`header`,{className:`product-entry-dialog-header`,children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(uf,{children:n}),r===void 0?null:(0,L.jsx)(ff,{children:r})]}),(0,L.jsx)(mf,{asChild:!0,children:(0,L.jsx)(Cc,{type:`button`,label:`Close`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`}),disabled:a})})]}),i]})})]})}function Sp({open:e,onOpenChange:t,inputLabel:n,placeholder:r,value:i,error:a,actionLabel:o=`Continue`,onValueChange:s,className:c,...l}){return(0,L.jsx)(xp,{open:e,onOpenChange:t,title:`Join a project`,description:`Paste an invitation link or the full invitation message.`,className:`project-join-dialog-card`,children:(0,L.jsxs)(`form`,{className:V(`project-join-dialog-form`,c),...l,children:[(0,L.jsxs)(`div`,{className:`project-join-dialog-body`,children:[(0,L.jsx)(Mc,{type:`text`,"aria-label":n,value:i,onChange:e=>s(e.target.value),autoFocus:!0,...r===void 0?{}:{placeholder:r}}),a==null?null:(0,L.jsx)(Lc,{children:a})]}),(0,L.jsx)(`footer`,{className:`project-join-dialog-actions`,children:(0,L.jsxs)(wc,{type:`submit`,disabled:i.trim()===``,children:[o,(0,L.jsx)(na,{"aria-hidden":`true`})]})})]})})}function Cp({open:e,onOpenChange:t,steps:n,currentStep:r,children:i,action:a,backAction:o,feedback:s,closeDisabled:c=!1,explicitCloseOnly:l=!1,className:u,...d}){return(0,L.jsxs)(xp,{open:e,onOpenChange:t,title:`New project`,description:`Step ${r+1} of ${n.length}`,closeDisabled:c,explicitCloseOnly:l,className:`local-console-create-card`,children:[(0,L.jsx)(`ol`,{className:`local-console-create-steps`,"aria-label":`New project steps`,children:n.map((e,t)=>(0,L.jsxs)(`li`,{className:V(t===r?`is-current`:void 0,t<r?`is-complete`:void 0),"aria-current":t===r?`step`:void 0,children:[(0,L.jsx)(`span`,{"aria-hidden":`true`,children:t+1}),(0,L.jsx)(`small`,{children:e})]},e))}),(0,L.jsxs)(`form`,{className:V(`local-console-create-form`,u),...d,children:[(0,L.jsx)(`div`,{className:`local-console-create-body`,children:i}),s===void 0?null:(0,L.jsx)(`div`,{className:`local-console-create-feedback`,children:s}),(0,L.jsxs)(`footer`,{className:`local-console-create-actions`,children:[(0,L.jsx)(`div`,{children:o}),(0,L.jsx)(`div`,{children:a})]})]})]})}function wp({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`local-console-form-grid`,t),...n,children:e})}function Tp({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`local-console-inline-actions`,t),...n,children:e})}function Ep({title:e,description:t,children:n,className:r,...i}){return(0,L.jsxs)(`section`,{className:V(`local-console-field-group`,r),...i,children:[(0,L.jsxs)(`header`,{children:[(0,L.jsx)(`strong`,{children:e}),t===void 0?null:(0,L.jsx)(`small`,{children:t})]}),(0,L.jsx)(`div`,{className:`local-console-field-group-body`,children:n})]})}function Dp({value:e,onValueChange:t,className:n,...r}){let i=[{value:`standalone`,title:`Tutti Workspace`,description:`Use Tutti's browser workspace for team collaboration.`},{value:`feishu`,title:`Feishu`,description:`Use a Feishu project group as the collaboration surface.`}];return(0,L.jsxs)(`fieldset`,{className:V(`local-console-surface-selector`,n),...r,children:[(0,L.jsx)(`legend`,{children:`Collaboration surface`}),(0,L.jsx)(`div`,{children:i.map(n=>(0,L.jsxs)(`label`,{className:V(`local-console-surface-option`,e===n.value&&`is-selected`),children:[(0,L.jsx)(`input`,{type:`radio`,name:`local-console-project-surface`,value:n.value,checked:e===n.value,onChange:()=>t(n.value)}),(0,L.jsxs)(`span`,{children:[(0,L.jsx)(`strong`,{children:n.title}),(0,L.jsx)(`small`,{children:n.description})]})]},n.value))})]})}function Op({path:e,className:t,...n}){let r=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`)),i=r>0&&r<e.length-1;return(0,L.jsx)(`span`,{className:V(`local-console-project-path`,t),title:e,...n,children:i?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`span`,{className:`local-console-project-path-prefix`,children:e.slice(0,r)}),(0,L.jsx)(`span`,{className:`local-console-project-path-separator`,children:e[r]}),(0,L.jsx)(`span`,{className:`local-console-project-path-name`,children:e.slice(r+1)})]}):(0,L.jsx)(`span`,{className:`local-console-project-path-name`,children:e})})}function kp({title:e,status:t,path:n,createdLabel:r,modelLabel:i,surfaceLabel:a,actions:o,className:s,...c}){return(0,L.jsx)(`li`,{className:V(`project-list-item`,`local-console-project-item`,s),...c,children:(0,L.jsxs)(`div`,{className:V(`local-console-project-row`,t===`stopped`?`is-inactive`:`is-active`),children:[(0,L.jsx)(vp,{status:t}),(0,L.jsxs)(`span`,{className:`project-list-identity`,children:[(0,L.jsx)(`span`,{className:`local-console-project-title`,children:(0,L.jsx)(`strong`,{children:e})}),i===void 0&&a===void 0?null:(0,L.jsxs)(`span`,{className:`local-console-project-signals`,children:[i===void 0?null:(0,L.jsx)(`small`,{className:`local-console-provider-model`,children:i}),a===void 0?null:(0,L.jsx)(`small`,{className:`local-console-project-surface`,children:a})]})]}),(0,L.jsxs)(`span`,{className:`local-console-project-metadata`,children:[(0,L.jsx)(`strong`,{className:`local-console-project-date`,children:r}),(0,L.jsx)(Op,{path:n})]}),(0,L.jsx)(`span`,{className:`local-console-project-actions`,children:o})]})})}function Ap(e,t){let n=t||{};return(e[e.length-1]===``?[...e,``]:e).join((n.padRight?` `:``)+`,`+(n.padLeft===!1?``:` `)).trim()}var jp=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Mp=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Np={};function Pp(e,t){return((t||Np).jsx?Mp:jp).test(e)}var Fp=/[ \t\n\f\r]/g;function Ip(e){return typeof e==`object`?e.type===`text`?Lp(e.value):!1:Lp(e)}function Lp(e){return e.replace(Fp,``)===``}var Rp=class{constructor(e,t,n){this.normal=t,this.property=e,n&&(this.space=n)}};Rp.prototype.normal={},Rp.prototype.property={},Rp.prototype.space=void 0;function zp(e,t){let n={},r={};for(let t of e)Object.assign(n,t.property),Object.assign(r,t.normal);return new Rp(n,r,t)}function Bp(e){return e.toLowerCase()}var Vp=class{constructor(e,t){this.attribute=t,this.property=e}};Vp.prototype.attribute=``,Vp.prototype.booleanish=!1,Vp.prototype.boolean=!1,Vp.prototype.commaOrSpaceSeparated=!1,Vp.prototype.commaSeparated=!1,Vp.prototype.defined=!1,Vp.prototype.mustUseProperty=!1,Vp.prototype.number=!1,Vp.prototype.overloadedBoolean=!1,Vp.prototype.property=``,Vp.prototype.spaceSeparated=!1,Vp.prototype.space=void 0;var Hp=s({boolean:()=>Wp,booleanish:()=>Gp,commaOrSpaceSeparated:()=>Yp,commaSeparated:()=>Jp,number:()=>W,overloadedBoolean:()=>Kp,spaceSeparated:()=>qp}),Up=0,Wp=Xp(),Gp=Xp(),Kp=Xp(),W=Xp(),qp=Xp(),Jp=Xp(),Yp=Xp();function Xp(){return 2**++Up}var Zp=Object.keys(Hp),Qp=class extends Vp{constructor(e,t,n,r){let i=-1;if(super(e,t),$p(this,`space`,r),typeof n==`number`)for(;++i<Zp.length;){let e=Zp[i];$p(this,Zp[i],(n&Hp[e])===Hp[e])}}};Qp.prototype.defined=!0;function $p(e,t,n){n&&(e[t]=n)}function em(e){let t={},n={};for(let[r,i]of Object.entries(e.properties)){let a=new Qp(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[Bp(r)]=r,n[Bp(a.attribute)]=r}return new Rp(t,n,e.space)}var tm=em({properties:{ariaActiveDescendant:null,ariaAtomic:Gp,ariaAutoComplete:null,ariaBusy:Gp,ariaChecked:Gp,ariaColCount:W,ariaColIndex:W,ariaColSpan:W,ariaControls:qp,ariaCurrent:null,ariaDescribedBy:qp,ariaDetails:null,ariaDisabled:Gp,ariaDropEffect:qp,ariaErrorMessage:null,ariaExpanded:Gp,ariaFlowTo:qp,ariaGrabbed:Gp,ariaHasPopup:null,ariaHidden:Gp,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:qp,ariaLevel:W,ariaLive:null,ariaModal:Gp,ariaMultiLine:Gp,ariaMultiSelectable:Gp,ariaOrientation:null,ariaOwns:qp,ariaPlaceholder:null,ariaPosInSet:W,ariaPressed:Gp,ariaReadOnly:Gp,ariaRelevant:null,ariaRequired:Gp,ariaRoleDescription:qp,ariaRowCount:W,ariaRowIndex:W,ariaRowSpan:W,ariaSelected:Gp,ariaSetSize:W,ariaSort:null,ariaValueMax:W,ariaValueMin:W,ariaValueNow:W,ariaValueText:null,role:null},transform(e,t){return t===`role`?t:`aria-`+t.slice(4).toLowerCase()}});function nm(e,t){return t in e?e[t]:t}function rm(e,t){return nm(e,t.toLowerCase())}var im=em({attributes:{acceptcharset:`accept-charset`,classname:`class`,htmlfor:`for`,httpequiv:`http-equiv`},mustUseProperty:[`checked`,`multiple`,`muted`,`selected`],properties:{abbr:null,accept:Jp,acceptCharset:qp,accessKey:qp,action:null,allow:null,allowFullScreen:Wp,allowPaymentRequest:Wp,allowUserMedia:Wp,alt:null,as:null,async:Wp,autoCapitalize:null,autoComplete:qp,autoFocus:Wp,autoPlay:Wp,blocking:qp,capture:null,charSet:null,checked:Wp,cite:null,className:qp,cols:W,colSpan:null,content:null,contentEditable:Gp,controls:Wp,controlsList:qp,coords:W|Jp,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Wp,defer:Wp,dir:null,dirName:null,disabled:Wp,download:Kp,draggable:Gp,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Wp,formTarget:null,headers:qp,height:W,hidden:Kp,high:W,href:null,hrefLang:null,htmlFor:qp,httpEquiv:qp,id:null,imageSizes:null,imageSrcSet:null,inert:Wp,inputMode:null,integrity:null,is:null,isMap:Wp,itemId:null,itemProp:qp,itemRef:qp,itemScope:Wp,itemType:qp,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Wp,low:W,manifest:null,max:null,maxLength:W,media:null,method:null,min:null,minLength:W,multiple:Wp,muted:Wp,name:null,nonce:null,noModule:Wp,noValidate:Wp,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Wp,optimum:W,pattern:null,ping:qp,placeholder:null,playsInline:Wp,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Wp,referrerPolicy:null,rel:qp,required:Wp,reversed:Wp,rows:W,rowSpan:W,sandbox:qp,scope:null,scoped:Wp,seamless:Wp,selected:Wp,shadowRootClonable:Wp,shadowRootDelegatesFocus:Wp,shadowRootMode:null,shape:null,size:W,sizes:null,slot:null,span:W,spellCheck:Gp,src:null,srcDoc:null,srcLang:null,srcSet:null,start:W,step:null,style:null,tabIndex:W,target:null,title:null,translate:null,type:null,typeMustMatch:Wp,useMap:null,value:Gp,width:W,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:qp,axis:null,background:null,bgColor:null,border:W,borderColor:null,bottomMargin:W,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Wp,declare:Wp,event:null,face:null,frame:null,frameBorder:null,hSpace:W,leftMargin:W,link:null,longDesc:null,lowSrc:null,marginHeight:W,marginWidth:W,noResize:Wp,noHref:Wp,noShade:Wp,noWrap:Wp,object:null,profile:null,prompt:null,rev:null,rightMargin:W,rules:null,scheme:null,scrolling:Gp,standby:null,summary:null,text:null,topMargin:W,valueType:null,version:null,vAlign:null,vLink:null,vSpace:W,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Wp,disableRemotePlayback:Wp,prefix:null,property:null,results:W,security:null,unselectable:null},space:`html`,transform:rm}),am=em({attributes:{accentHeight:`accent-height`,alignmentBaseline:`alignment-baseline`,arabicForm:`arabic-form`,baselineShift:`baseline-shift`,capHeight:`cap-height`,className:`class`,clipPath:`clip-path`,clipRule:`clip-rule`,colorInterpolation:`color-interpolation`,colorInterpolationFilters:`color-interpolation-filters`,colorProfile:`color-profile`,colorRendering:`color-rendering`,crossOrigin:`crossorigin`,dataType:`datatype`,dominantBaseline:`dominant-baseline`,enableBackground:`enable-background`,fillOpacity:`fill-opacity`,fillRule:`fill-rule`,floodColor:`flood-color`,floodOpacity:`flood-opacity`,fontFamily:`font-family`,fontSize:`font-size`,fontSizeAdjust:`font-size-adjust`,fontStretch:`font-stretch`,fontStyle:`font-style`,fontVariant:`font-variant`,fontWeight:`font-weight`,glyphName:`glyph-name`,glyphOrientationHorizontal:`glyph-orientation-horizontal`,glyphOrientationVertical:`glyph-orientation-vertical`,hrefLang:`hreflang`,horizAdvX:`horiz-adv-x`,horizOriginX:`horiz-origin-x`,horizOriginY:`horiz-origin-y`,imageRendering:`image-rendering`,letterSpacing:`letter-spacing`,lightingColor:`lighting-color`,markerEnd:`marker-end`,markerMid:`marker-mid`,markerStart:`marker-start`,navDown:`nav-down`,navDownLeft:`nav-down-left`,navDownRight:`nav-down-right`,navLeft:`nav-left`,navNext:`nav-next`,navPrev:`nav-prev`,navRight:`nav-right`,navUp:`nav-up`,navUpLeft:`nav-up-left`,navUpRight:`nav-up-right`,onAbort:`onabort`,onActivate:`onactivate`,onAfterPrint:`onafterprint`,onBeforePrint:`onbeforeprint`,onBegin:`onbegin`,onCancel:`oncancel`,onCanPlay:`oncanplay`,onCanPlayThrough:`oncanplaythrough`,onChange:`onchange`,onClick:`onclick`,onClose:`onclose`,onCopy:`oncopy`,onCueChange:`oncuechange`,onCut:`oncut`,onDblClick:`ondblclick`,onDrag:`ondrag`,onDragEnd:`ondragend`,onDragEnter:`ondragenter`,onDragExit:`ondragexit`,onDragLeave:`ondragleave`,onDragOver:`ondragover`,onDragStart:`ondragstart`,onDrop:`ondrop`,onDurationChange:`ondurationchange`,onEmptied:`onemptied`,onEnd:`onend`,onEnded:`onended`,onError:`onerror`,onFocus:`onfocus`,onFocusIn:`onfocusin`,onFocusOut:`onfocusout`,onHashChange:`onhashchange`,onInput:`oninput`,onInvalid:`oninvalid`,onKeyDown:`onkeydown`,onKeyPress:`onkeypress`,onKeyUp:`onkeyup`,onLoad:`onload`,onLoadedData:`onloadeddata`,onLoadedMetadata:`onloadedmetadata`,onLoadStart:`onloadstart`,onMessage:`onmessage`,onMouseDown:`onmousedown`,onMouseEnter:`onmouseenter`,onMouseLeave:`onmouseleave`,onMouseMove:`onmousemove`,onMouseOut:`onmouseout`,onMouseOver:`onmouseover`,onMouseUp:`onmouseup`,onMouseWheel:`onmousewheel`,onOffline:`onoffline`,onOnline:`ononline`,onPageHide:`onpagehide`,onPageShow:`onpageshow`,onPaste:`onpaste`,onPause:`onpause`,onPlay:`onplay`,onPlaying:`onplaying`,onPopState:`onpopstate`,onProgress:`onprogress`,onRateChange:`onratechange`,onRepeat:`onrepeat`,onReset:`onreset`,onResize:`onresize`,onScroll:`onscroll`,onSeeked:`onseeked`,onSeeking:`onseeking`,onSelect:`onselect`,onShow:`onshow`,onStalled:`onstalled`,onStorage:`onstorage`,onSubmit:`onsubmit`,onSuspend:`onsuspend`,onTimeUpdate:`ontimeupdate`,onToggle:`ontoggle`,onUnload:`onunload`,onVolumeChange:`onvolumechange`,onWaiting:`onwaiting`,onZoom:`onzoom`,overlinePosition:`overline-position`,overlineThickness:`overline-thickness`,paintOrder:`paint-order`,panose1:`panose-1`,pointerEvents:`pointer-events`,referrerPolicy:`referrerpolicy`,renderingIntent:`rendering-intent`,shapeRendering:`shape-rendering`,stopColor:`stop-color`,stopOpacity:`stop-opacity`,strikethroughPosition:`strikethrough-position`,strikethroughThickness:`strikethrough-thickness`,strokeDashArray:`stroke-dasharray`,strokeDashOffset:`stroke-dashoffset`,strokeLineCap:`stroke-linecap`,strokeLineJoin:`stroke-linejoin`,strokeMiterLimit:`stroke-miterlimit`,strokeOpacity:`stroke-opacity`,strokeWidth:`stroke-width`,tabIndex:`tabindex`,textAnchor:`text-anchor`,textDecoration:`text-decoration`,textRendering:`text-rendering`,transformOrigin:`transform-origin`,typeOf:`typeof`,underlinePosition:`underline-position`,underlineThickness:`underline-thickness`,unicodeBidi:`unicode-bidi`,unicodeRange:`unicode-range`,unitsPerEm:`units-per-em`,vAlphabetic:`v-alphabetic`,vHanging:`v-hanging`,vIdeographic:`v-ideographic`,vMathematical:`v-mathematical`,vectorEffect:`vector-effect`,vertAdvY:`vert-adv-y`,vertOriginX:`vert-origin-x`,vertOriginY:`vert-origin-y`,wordSpacing:`word-spacing`,writingMode:`writing-mode`,xHeight:`x-height`,playbackOrder:`playbackorder`,timelineBegin:`timelinebegin`},properties:{about:Yp,accentHeight:W,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:W,amplitude:W,arabicForm:null,ascent:W,attributeName:null,attributeType:null,azimuth:W,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:W,by:null,calcMode:null,capHeight:W,className:qp,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:W,diffuseConstant:W,direction:null,display:null,dur:null,divisor:W,dominantBaseline:null,download:Wp,dx:null,dy:null,edgeMode:null,editable:null,elevation:W,enableBackground:null,end:null,event:null,exponent:W,externalResourcesRequired:null,fill:null,fillOpacity:W,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Jp,g2:Jp,glyphName:Jp,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:W,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:W,horizOriginX:W,horizOriginY:W,id:null,ideographic:W,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:W,k:W,k1:W,k2:W,k3:W,k4:W,kernelMatrix:Yp,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:W,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:W,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:W,overlineThickness:W,paintOrder:null,panose1:null,path:null,pathLength:W,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:qp,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:W,pointsAtY:W,pointsAtZ:W,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Yp,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Yp,rev:Yp,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Yp,requiredFeatures:Yp,requiredFonts:Yp,requiredFormats:Yp,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:W,specularExponent:W,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:W,strikethroughThickness:W,string:null,stroke:null,strokeDashArray:Yp,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:W,strokeOpacity:W,strokeWidth:null,style:null,surfaceScale:W,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Yp,tabIndex:W,tableValues:null,target:null,targetX:W,targetY:W,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Yp,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:W,underlineThickness:W,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:W,values:null,vAlphabetic:W,vMathematical:W,vectorEffect:null,vHanging:W,vIdeographic:W,version:null,vertAdvY:W,vertOriginX:W,vertOriginY:W,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:W,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:`svg`,transform:nm}),om=em({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:`xlink`,transform(e,t){return`xlink:`+t.slice(5).toLowerCase()}}),sm=em({attributes:{xmlnsxlink:`xmlns:xlink`},properties:{xmlnsXLink:null,xmlns:null},space:`xmlns`,transform:rm}),cm=em({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:`xml`,transform(e,t){return`xml:`+t.slice(3).toLowerCase()}}),lm={classId:`classID`,dataType:`datatype`,itemId:`itemID`,strokeDashArray:`strokeDasharray`,strokeDashOffset:`strokeDashoffset`,strokeLineCap:`strokeLinecap`,strokeLineJoin:`strokeLinejoin`,strokeMiterLimit:`strokeMiterlimit`,typeOf:`typeof`,xLinkActuate:`xlinkActuate`,xLinkArcRole:`xlinkArcrole`,xLinkHref:`xlinkHref`,xLinkRole:`xlinkRole`,xLinkShow:`xlinkShow`,xLinkTitle:`xlinkTitle`,xLinkType:`xlinkType`,xmlnsXLink:`xmlnsXlink`},um=/[A-Z]/g,dm=/-[a-z]/g,fm=/^data[-\w.:]+$/i;function pm(e,t){let n=Bp(t),r=t,i=Vp;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)===`data`&&fm.test(t)){if(t.charAt(4)===`-`){let e=t.slice(5).replace(dm,hm);r=`data`+e.charAt(0).toUpperCase()+e.slice(1)}else{let e=t.slice(4);if(!dm.test(e)){let n=e.replace(um,mm);n.charAt(0)!==`-`&&(n=`-`+n),t=`data`+n}}i=Qp}return new i(r,t)}function mm(e){return`-`+e.toLowerCase()}function hm(e){return e.charAt(1).toUpperCase()}var gm=zp([tm,im,om,sm,cm],`html`),_m=zp([tm,am,om,sm,cm],`svg`);function vm(e){return e.join(` `).trim()}var ym=o(((e,t)=>{var n=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,r=/\n/g,i=/^\s*/,a=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,o=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,c=/^[;\s]*/,l=/^\s+|\s+$/g,u=`
51
51
  `,d=`/`,f=`*`,p=``,m=`comment`,h=`declaration`;function g(e,t){if(typeof e!=`string`)throw TypeError(`First argument must be a string`);if(!e)return[];t||={};var l=1,g=1;function v(e){var t=e.match(r);t&&(l+=t.length);var n=e.lastIndexOf(u);g=~n?e.length-n:g+e.length}function y(){var e={line:l,column:g};return function(t){return t.position=new b(e),C(),t}}function b(e){this.start=e,this.end={line:l,column:g},this.source=t.source}b.prototype.content=e;function x(n){var r=Error(t.source+`:`+l+`:`+g+`: `+n);if(r.reason=n,r.filename=t.source,r.line=l,r.column=g,r.source=e,!t.silent)throw r}function S(t){var n=t.exec(e);if(n){var r=n[0];return v(r),e=e.slice(r.length),n}}function C(){S(i)}function w(e){var t;for(e||=[];t=T();)t!==!1&&e.push(t);return e}function T(){var t=y();if(!(d!=e.charAt(0)||f!=e.charAt(1))){for(var n=2;p!=e.charAt(n)&&(f!=e.charAt(n)||d!=e.charAt(n+1));)++n;if(n+=2,p===e.charAt(n-1))return x(`End of comment missing`);var r=e.slice(2,n-2);return g+=2,v(r),e=e.slice(n),g+=2,t({type:m,comment:r})}}function E(){var e=y(),t=S(a);if(t){if(T(),!S(o))return x(`property missing ':'`);var r=S(s),i=e({type:h,property:_(t[0].replace(n,p)),value:r?_(r[0].replace(n,p)):p});return S(c),i}}function ee(){var e=[];w(e);for(var t;t=E();)t!==!1&&(e.push(t),w(e));return e}return C(),ee()}function _(e){return e?e.replace(l,p):p}t.exports=g})),bm=o((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,`__esModule`,{value:!0}),e.default=r;var n=t(ym());function r(e,t){let r=null;if(!e||typeof e!=`string`)return r;let i=(0,n.default)(e),a=typeof t==`function`;return i.forEach(e=>{if(e.type!==`declaration`)return;let{property:n,value:i}=e;a?t(n,i,e):i&&(r||={},r[n]=i)}),r}})),xm=o((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.camelCase=void 0;var t=/^--[a-zA-Z0-9_-]+$/,n=/-([a-z])/g,r=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,o=function(e){return!e||r.test(e)||t.test(e)},s=function(e,t){return t.toUpperCase()},c=function(e,t){return`${t}-`};e.camelCase=function(e,t){return t===void 0&&(t={}),o(e)?e:(e=e.toLowerCase(),e=t.reactCompat?e.replace(a,c):e.replace(i,c),e.replace(n,s))}})),Sm=o(((e,t)=>{var n=(e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(bm()),r=xm();function i(e,t){var i={};return!e||typeof e!=`string`||(0,n.default)(e,function(e,n){e&&n&&(i[(0,r.camelCase)(e,t)]=n)}),i}i.default=i,t.exports=i})),Cm=Tm(`end`),wm=Tm(`start`);function Tm(e){return t;function t(t){let n=t&&t.position&&t.position[e]||{};if(typeof n.line==`number`&&n.line>0&&typeof n.column==`number`&&n.column>0)return{line:n.line,column:n.column,offset:typeof n.offset==`number`&&n.offset>-1?n.offset:void 0}}}function Em(e){let t=wm(e),n=Cm(e);if(t&&n)return{start:t,end:n}}function Dm(e){return!e||typeof e!=`object`?``:`position`in e||`type`in e?km(e.position):`start`in e||`end`in e?km(e):`line`in e||`column`in e?Om(e):``}function Om(e){return Am(e&&e.line)+`:`+Am(e&&e.column)}function km(e){return Om(e&&e.start)+`-`+Om(e&&e.end)}function Am(e){return e&&typeof e==`number`?e:1}var jm=class extends Error{constructor(e,t,n){super(),typeof t==`string`&&(n=t,t=void 0);let r=``,i={},a=!1;if(t&&(i=`line`in t&&`column`in t||`start`in t&&`end`in t?{place:t}:`type`in t?{ancestors:[t],place:t.position}:{...t}),typeof e==`string`?r=e:!i.cause&&e&&(a=!0,r=e.message,i.cause=e),!i.ruleId&&!i.source&&typeof n==`string`){let e=n.indexOf(`:`);e===-1?i.ruleId=n:(i.source=n.slice(0,e),i.ruleId=n.slice(e+1))}if(!i.place&&i.ancestors&&i.ancestors){let e=i.ancestors[i.ancestors.length-1];e&&(i.place=e.position)}let o=i.place&&`start`in i.place?i.place.start:i.place;this.ancestors=i.ancestors||void 0,this.cause=i.cause||void 0,this.column=o?o.column:void 0,this.fatal=void 0,this.file=``,this.message=r,this.line=o?o.line:void 0,this.name=Dm(i.place)||`1:1`,this.place=i.place||void 0,this.reason=this.message,this.ruleId=i.ruleId||void 0,this.source=i.source||void 0,this.stack=a&&i.cause&&typeof i.cause.stack==`string`?i.cause.stack:``,this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}};jm.prototype.file=``,jm.prototype.name=``,jm.prototype.reason=``,jm.prototype.message=``,jm.prototype.stack=``,jm.prototype.column=void 0,jm.prototype.line=void 0,jm.prototype.ancestors=void 0,jm.prototype.cause=void 0,jm.prototype.fatal=void 0,jm.prototype.place=void 0,jm.prototype.ruleId=void 0,jm.prototype.source=void 0;var Mm=l(Sm(),1),Nm={}.hasOwnProperty,Pm=new Map,Fm=/[A-Z]/g,Im=new Set([`table`,`tbody`,`thead`,`tfoot`,`tr`]),Lm=new Set([`td`,`th`]),Rm=`https://github.com/syntax-tree/hast-util-to-jsx-runtime`;function zm(e,t){if(!t||t.Fragment===void 0)throw TypeError("Expected `Fragment` in options");let n=t.filePath||void 0,r;if(t.development){if(typeof t.jsxDEV!=`function`)throw TypeError("Expected `jsxDEV` in options when `development: true`");r=Xm(n,t.jsxDEV)}else{if(typeof t.jsx!=`function`)throw TypeError("Expected `jsx` in production options");if(typeof t.jsxs!=`function`)throw TypeError("Expected `jsxs` in production options");r=Ym(n,t.jsx,t.jsxs)}let i={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||`react`,evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space===`svg`?_m:gm,stylePropertyNameCase:t.stylePropertyNameCase||`dom`,tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=Bm(i,e,void 0);return a&&typeof a!=`string`?a:i.create(e,i.Fragment,{children:a||void 0},void 0)}function Bm(e,t,n){if(t.type===`element`)return Vm(e,t,n);if(t.type===`mdxFlowExpression`||t.type===`mdxTextExpression`)return Hm(e,t);if(t.type===`mdxJsxFlowElement`||t.type===`mdxJsxTextElement`)return Wm(e,t,n);if(t.type===`mdxjsEsm`)return Um(e,t);if(t.type===`root`)return Gm(e,t,n);if(t.type===`text`)return Km(e,t)}function Vm(e,t,n){let r=e.schema,i=r;t.tagName.toLowerCase()===`svg`&&r.space===`html`&&(i=_m,e.schema=i),e.ancestors.push(t);let a=nh(e,t.tagName,!1),o=Zm(e,t),s=$m(e,t);return Im.has(t.tagName)&&(s=s.filter(function(e){return typeof e==`string`?!Ip(e):!0})),qm(e,o,a,t),Jm(o,s),e.ancestors.pop(),e.schema=r,e.create(t,a,o,n)}function Hm(e,t){if(t.data&&t.data.estree&&e.evaluater){let n=t.data.estree.body[0];return n.type,e.evaluater.evaluateExpression(n.expression)}rh(e,t.position)}function Um(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);rh(e,t.position)}function Wm(e,t,n){let r=e.schema,i=r;t.name===`svg`&&r.space===`html`&&(i=_m,e.schema=i),e.ancestors.push(t);let a=t.name===null?e.Fragment:nh(e,t.name,!0),o=Qm(e,t),s=$m(e,t);return qm(e,o,a,t),Jm(o,s),e.ancestors.pop(),e.schema=r,e.create(t,a,o,n)}function Gm(e,t,n){let r={};return Jm(r,$m(e,t)),e.create(t,e.Fragment,r,n)}function Km(e,t){return t.value}function qm(e,t,n,r){typeof n!=`string`&&n!==e.Fragment&&e.passNode&&(t.node=r)}function Jm(e,t){if(t.length>0){let n=t.length>1?t:t[0];n&&(e.children=n)}}function Ym(e,t,n){return r;function r(e,r,i,a){let o=Array.isArray(i.children)?n:t;return a?o(r,i,a):o(r,i)}}function Xm(e,t){return n;function n(n,r,i,a){let o=Array.isArray(i.children),s=wm(n);return t(r,i,a,o,{columnNumber:s?s.column-1:void 0,fileName:e,lineNumber:s?s.line:void 0},void 0)}}function Zm(e,t){let n={},r,i;for(i in t.properties)if(i!==`children`&&Nm.call(t.properties,i)){let a=eh(e,i,t.properties[i]);if(a){let[i,o]=a;e.tableCellAlignToStyle&&i===`align`&&typeof o==`string`&&Lm.has(t.tagName)?r=o:n[i]=o}}if(r){let t=n.style||={};t[e.stylePropertyNameCase===`css`?`text-align`:`textAlign`]=r}return n}function Qm(e,t){let n={};for(let r of t.attributes)if(r.type===`mdxJsxExpressionAttribute`)if(r.data&&r.data.estree&&e.evaluater){let t=r.data.estree.body[0];t.type;let i=t.expression;i.type;let a=i.properties[0];a.type,Object.assign(n,e.evaluater.evaluateExpression(a.argument))}else rh(e,t.position);else{let i=r.name,a;if(r.value&&typeof r.value==`object`)if(r.value.data&&r.value.data.estree&&e.evaluater){let t=r.value.data.estree.body[0];t.type,a=e.evaluater.evaluateExpression(t.expression)}else rh(e,t.position);else a=r.value===null?!0:r.value;n[i]=a}return n}function $m(e,t){let n=[],r=-1,i=e.passKeys?new Map:Pm;for(;++r<t.children.length;){let a=t.children[r],o;if(e.passKeys){let e=a.type===`element`?a.tagName:a.type===`mdxJsxFlowElement`||a.type===`mdxJsxTextElement`?a.name:void 0;if(e){let t=i.get(e)||0;o=e+`-`+t,i.set(e,t+1)}}let s=Bm(e,a,o);s!==void 0&&n.push(s)}return n}function eh(e,t,n){let r=pm(e.schema,t);if(!(n==null||typeof n==`number`&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?Ap(n):vm(n)),r.property===`style`){let t=typeof n==`object`?n:th(e,String(n));return e.stylePropertyNameCase===`css`&&(t=ih(t)),[`style`,t]}return[e.elementAttributeNameCase===`react`&&r.space?lm[r.property]||r.property:r.attribute,n]}}function th(e,t){try{return(0,Mm.default)(t,{reactCompat:!0})}catch(t){if(e.ignoreInvalidStyle)return{};let n=t,r=new jm("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:n,ruleId:`style`,source:`hast-util-to-jsx-runtime`});throw r.file=e.filePath||void 0,r.url=Rm+`#cannot-parse-style-attribute`,r}}function nh(e,t,n){let r;if(!n)r={type:`Literal`,value:t};else if(t.includes(`.`)){let e=t.split(`.`),n=-1,i;for(;++n<e.length;){let t=Pp(e[n])?{type:`Identifier`,name:e[n]}:{type:`Literal`,value:e[n]};i=i?{type:`MemberExpression`,object:i,property:t,computed:!!(n&&t.type===`Literal`),optional:!1}:t}r=i}else r=Pp(t)&&!/^[a-z]/.test(t)?{type:`Identifier`,name:t}:{type:`Literal`,value:t};if(r.type===`Literal`){let t=r.value;return Nm.call(e.components,t)?e.components[t]:t}if(e.evaluater)return e.evaluater.evaluateExpression(r);rh(e)}function rh(e,t){let n=new jm("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:`mdx-estree`,source:`hast-util-to-jsx-runtime`});throw n.file=e.filePath||void 0,n.url=Rm+`#cannot-handle-mdx-estrees-without-createevaluater`,n}function ih(e){let t={},n;for(n in e)Nm.call(e,n)&&(t[ah(n)]=e[n]);return t}function ah(e){let t=e.replace(Fm,oh);return t.slice(0,3)===`ms-`&&(t=`-`+t),t}function oh(e){return`-`+e.toLowerCase()}var sh={action:[`form`],cite:[`blockquote`,`del`,`ins`,`q`],data:[`object`],formAction:[`button`,`input`],href:[`a`,`area`,`base`,`link`],icon:[`menuitem`],itemId:null,manifest:[`html`],ping:[`a`,`area`],poster:[`video`],src:[`audio`,`embed`,`iframe`,`img`,`input`,`script`,`source`,`track`,`video`]},ch={};function lh(e,t){let n=t||ch;return uh(e,typeof n.includeImageAlt==`boolean`?n.includeImageAlt:!0,typeof n.includeHtml==`boolean`?n.includeHtml:!0)}function uh(e,t,n){if(fh(e)){if(`value`in e)return e.type===`html`&&!n?``:e.value;if(t&&`alt`in e&&e.alt)return e.alt;if(`children`in e)return dh(e.children,t,n)}return Array.isArray(e)?dh(e,t,n):``}function dh(e,t,n){let r=[],i=-1;for(;++i<e.length;)r[i]=uh(e[i],t,n);return r.join(``)}function fh(e){return!!(e&&typeof e==`object`)}var ph=document.createElement(`i`);function mh(e){let t=`&`+e+`;`;ph.innerHTML=t;let n=ph.textContent;return n.charCodeAt(n.length-1)===59&&e!==`semi`||n===t?!1:n}function hh(e,t,n,r){let i=e.length,a=0,o;if(t=t<0?-t>i?0:i+t:t>i?i:t,n=n>0?n:0,r.length<1e4)o=Array.from(r),o.unshift(t,n),e.splice(...o);else for(n&&e.splice(t,n);a<r.length;)o=r.slice(a,a+1e4),o.unshift(t,0),e.splice(...o),a+=1e4,t+=1e4}function gh(e,t){return e.length>0?(hh(e,e.length,0,t),e):t}var _h={}.hasOwnProperty;function vh(e){let t={},n=-1;for(;++n<e.length;)yh(t,e[n]);return t}function yh(e,t){let n;for(n in t){let r=(_h.call(e,n)?e[n]:void 0)||(e[n]={}),i=t[n],a;if(i)for(a in i){_h.call(r,a)||(r[a]=[]);let e=i[a];bh(r[a],Array.isArray(e)?e:e?[e]:[])}}}function bh(e,t){let n=-1,r=[];for(;++n<t.length;)(t[n].add===`after`?e:r).push(t[n]);hh(e,0,0,r)}function xh(e,t){let n=Number.parseInt(e,t);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)==65535||(n&65535)==65534||n>1114111?`�`:String.fromCodePoint(n)}function Sh(e){return e.replace(/[\t\n\r ]+/g,` `).replace(/^ | $/g,``).toLowerCase().toUpperCase()}var Ch=Fh(/[A-Za-z]/),wh=Fh(/[\dA-Za-z]/),Th=Fh(/[#-'*+\--9=?A-Z^-~]/);function Eh(e){return e!==null&&(e<32||e===127)}var Dh=Fh(/\d/),Oh=Fh(/[\dA-Fa-f]/),kh=Fh(/[!-/:-@[-`{-~]/);function Ah(e){return e!==null&&e<-2}function jh(e){return e!==null&&(e<0||e===32)}function Mh(e){return e===-2||e===-1||e===32}var Nh=Fh(/\p{P}|\p{S}/u),Ph=Fh(/\s/);function Fh(e){return t;function t(t){return t!==null&&t>-1&&e.test(String.fromCharCode(t))}}function Ih(e){let t=[],n=-1,r=0,i=0;for(;++n<e.length;){let a=e.charCodeAt(n),o=``;if(a===37&&wh(e.charCodeAt(n+1))&&wh(e.charCodeAt(n+2)))i=2;else if(a<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(a))||(o=String.fromCharCode(a));else if(a>55295&&a<57344){let t=e.charCodeAt(n+1);a<56320&&t>56319&&t<57344?(o=String.fromCharCode(a,t),i=1):o=`�`}else o=String.fromCharCode(a);o&&=(t.push(e.slice(r,n),encodeURIComponent(o)),r=n+i+1,``),i&&=(n+=i,0)}return t.join(``)+e.slice(r)}function Lh(e,t,n,r){let i=r?r-1:1/0,a=0;return o;function o(r){return Mh(r)?(e.enter(n),s(r)):t(r)}function s(r){return Mh(r)&&a++<i?(e.consume(r),s):(e.exit(n),t(r))}}var Rh={tokenize:zh};function zh(e){let t=e.attempt(this.parser.constructs.contentInitial,r,i),n;return t;function r(n){if(n===null){e.consume(n);return}return e.enter(`lineEnding`),e.consume(n),e.exit(`lineEnding`),Lh(e,t,`linePrefix`)}function i(t){return e.enter(`paragraph`),a(t)}function a(t){let r=e.enter(`chunkText`,{contentType:`text`,previous:n});return n&&(n.next=r),n=r,o(t)}function o(t){if(t===null){e.exit(`chunkText`),e.exit(`paragraph`),e.consume(t);return}return Ah(t)?(e.consume(t),e.exit(`chunkText`),a):(e.consume(t),o)}}var Bh={tokenize:Hh},Vh={tokenize:Uh};function Hh(e){let t=this,n=[],r=0,i,a,o;return s;function s(i){if(r<n.length){let a=n[r];return t.containerState=a[1],e.attempt(a[0].continuation,c,l)(i)}return l(i)}function c(e){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,i&&v();let n=t.events.length,a=n,o;for(;a--;)if(t.events[a][0]===`exit`&&t.events[a][1].type===`chunkFlow`){o=t.events[a][1].end;break}_(r);let s=n;for(;s<t.events.length;)t.events[s][1].end={...o},s++;return hh(t.events,a+1,0,t.events.slice(n)),t.events.length=s,l(e)}return s(e)}function l(a){if(r===n.length){if(!i)return f(a);if(i.currentConstruct&&i.currentConstruct.concrete)return m(a);t.interrupt=!!(i.currentConstruct&&!i._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(Vh,u,d)(a)}function u(e){return i&&v(),_(r),f(e)}function d(e){return t.parser.lazy[t.now().line]=r!==n.length,o=t.now().offset,m(e)}function f(n){return t.containerState={},e.attempt(Vh,p,m)(n)}function p(e){return r++,n.push([t.currentConstruct,t.containerState]),f(e)}function m(n){if(n===null){i&&v(),_(0),e.consume(n);return}return i||=t.parser.flow(t.now()),e.enter(`chunkFlow`,{_tokenizer:i,contentType:`flow`,previous:a}),h(n)}function h(n){if(n===null){g(e.exit(`chunkFlow`),!0),_(0),e.consume(n);return}return Ah(n)?(e.consume(n),g(e.exit(`chunkFlow`)),r=0,t.interrupt=void 0,s):(e.consume(n),h)}function g(e,n){let s=t.sliceStream(e);if(n&&s.push(null),e.previous=a,a&&(a.next=e),a=e,i.defineSkip(e.start),i.write(s),t.parser.lazy[e.start.line]){let e=i.events.length;for(;e--;)if(i.events[e][1].start.offset<o&&(!i.events[e][1].end||i.events[e][1].end.offset>o))return;let n=t.events.length,a=n,s,c;for(;a--;)if(t.events[a][0]===`exit`&&t.events[a][1].type===`chunkFlow`){if(s){c=t.events[a][1].end;break}s=!0}for(_(r),e=n;e<t.events.length;)t.events[e][1].end={...c},e++;hh(t.events,a+1,0,t.events.slice(n)),t.events.length=e}}function _(r){let i=n.length;for(;i-- >r;){let r=n[i];t.containerState=r[1],r[0].exit.call(t,e)}n.length=r}function v(){i.write([null]),a=void 0,i=void 0,t.containerState._closeFlow=void 0}}function Uh(e,t,n){return Lh(e,e.attempt(this.parser.constructs.document,t,n),`linePrefix`,this.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)}function Wh(e){if(e===null||jh(e)||Ph(e))return 1;if(Nh(e))return 2}function Gh(e,t,n){let r=[],i=-1;for(;++i<e.length;){let a=e[i].resolveAll;a&&!r.includes(a)&&(t=a(t,n),r.push(a))}return t}var Kh={name:`attention`,resolveAll:qh,tokenize:Jh};function qh(e,t){let n=-1,r,i,a,o,s,c,l,u;for(;++n<e.length;)if(e[n][0]===`enter`&&e[n][1].type===`attentionSequence`&&e[n][1]._close){for(r=n;r--;)if(e[r][0]===`exit`&&e[r][1].type===`attentionSequence`&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[r][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;c=e[r][1].end.offset-e[r][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;let d={...e[r][1].end},f={...e[n][1].start};Yh(d,-c),Yh(f,c),o={type:c>1?`strongSequence`:`emphasisSequence`,start:d,end:{...e[r][1].end}},s={type:c>1?`strongSequence`:`emphasisSequence`,start:{...e[n][1].start},end:f},a={type:c>1?`strongText`:`emphasisText`,start:{...e[r][1].end},end:{...e[n][1].start}},i={type:c>1?`strong`:`emphasis`,start:{...o.start},end:{...s.end}},e[r][1].end={...o.start},e[n][1].start={...s.end},l=[],e[r][1].end.offset-e[r][1].start.offset&&(l=gh(l,[[`enter`,e[r][1],t],[`exit`,e[r][1],t]])),l=gh(l,[[`enter`,i,t],[`enter`,o,t],[`exit`,o,t],[`enter`,a,t]]),l=gh(l,Gh(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),l=gh(l,[[`exit`,a,t],[`enter`,s,t],[`exit`,s,t],[`exit`,i,t]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,l=gh(l,[[`enter`,e[n][1],t],[`exit`,e[n][1],t]])):u=0,hh(e,r-1,n-r+3,l),n=r+l.length-u-2;break}}for(n=-1;++n<e.length;)e[n][1].type===`attentionSequence`&&(e[n][1].type=`data`);return e}function Jh(e,t){let n=this.parser.constructs.attentionMarkers.null,r=this.previous,i=Wh(r),a;return o;function o(t){return a=t,e.enter(`attentionSequence`),s(t)}function s(o){if(o===a)return e.consume(o),s;let c=e.exit(`attentionSequence`),l=Wh(o),u=!l||l===2&&i||n.includes(o),d=!i||i===2&&l||n.includes(r);return c._open=!!(a===42?u:u&&(i||!d)),c._close=!!(a===42?d:d&&(l||!u)),t(o)}}function Yh(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}var Xh={name:`autolink`,tokenize:Zh};function Zh(e,t,n){let r=0;return i;function i(t){return e.enter(`autolink`),e.enter(`autolinkMarker`),e.consume(t),e.exit(`autolinkMarker`),e.enter(`autolinkProtocol`),a}function a(t){return Ch(t)?(e.consume(t),o):t===64?n(t):l(t)}function o(e){return e===43||e===45||e===46||wh(e)?(r=1,s(e)):l(e)}function s(t){return t===58?(e.consume(t),r=0,c):(t===43||t===45||t===46||wh(t))&&r++<32?(e.consume(t),s):(r=0,l(t))}function c(r){return r===62?(e.exit(`autolinkProtocol`),e.enter(`autolinkMarker`),e.consume(r),e.exit(`autolinkMarker`),e.exit(`autolink`),t):r===null||r===32||r===60||Eh(r)?n(r):(e.consume(r),c)}function l(t){return t===64?(e.consume(t),u):Th(t)?(e.consume(t),l):n(t)}function u(e){return wh(e)?d(e):n(e)}function d(n){return n===46?(e.consume(n),r=0,u):n===62?(e.exit(`autolinkProtocol`).type=`autolinkEmail`,e.enter(`autolinkMarker`),e.consume(n),e.exit(`autolinkMarker`),e.exit(`autolink`),t):f(n)}function f(t){if((t===45||wh(t))&&r++<63){let n=t===45?f:d;return e.consume(t),n}return n(t)}}var Qh={partial:!0,tokenize:$h};function $h(e,t,n){return r;function r(t){return Mh(t)?Lh(e,i,`linePrefix`)(t):i(t)}function i(e){return e===null||Ah(e)?t(e):n(e)}}var eg={continuation:{tokenize:ng},exit:rg,name:`blockQuote`,tokenize:tg};function tg(e,t,n){let r=this;return i;function i(t){if(t===62){let n=r.containerState;return n.open||=(e.enter(`blockQuote`,{_container:!0}),!0),e.enter(`blockQuotePrefix`),e.enter(`blockQuoteMarker`),e.consume(t),e.exit(`blockQuoteMarker`),a}return n(t)}function a(n){return Mh(n)?(e.enter(`blockQuotePrefixWhitespace`),e.consume(n),e.exit(`blockQuotePrefixWhitespace`),e.exit(`blockQuotePrefix`),t):(e.exit(`blockQuotePrefix`),t(n))}}function ng(e,t,n){let r=this;return i;function i(t){return Mh(t)?Lh(e,a,`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(t):a(t)}function a(r){return e.attempt(eg,t,n)(r)}}function rg(e){e.exit(`blockQuote`)}var ig={name:`characterEscape`,tokenize:ag};function ag(e,t,n){return r;function r(t){return e.enter(`characterEscape`),e.enter(`escapeMarker`),e.consume(t),e.exit(`escapeMarker`),i}function i(r){return kh(r)?(e.enter(`characterEscapeValue`),e.consume(r),e.exit(`characterEscapeValue`),e.exit(`characterEscape`),t):n(r)}}var og={name:`characterReference`,tokenize:sg};function sg(e,t,n){let r=this,i=0,a,o;return s;function s(t){return e.enter(`characterReference`),e.enter(`characterReferenceMarker`),e.consume(t),e.exit(`characterReferenceMarker`),c}function c(t){return t===35?(e.enter(`characterReferenceMarkerNumeric`),e.consume(t),e.exit(`characterReferenceMarkerNumeric`),l):(e.enter(`characterReferenceValue`),a=31,o=wh,u(t))}function l(t){return t===88||t===120?(e.enter(`characterReferenceMarkerHexadecimal`),e.consume(t),e.exit(`characterReferenceMarkerHexadecimal`),e.enter(`characterReferenceValue`),a=6,o=Oh,u):(e.enter(`characterReferenceValue`),a=7,o=Dh,u(t))}function u(s){if(s===59&&i){let i=e.exit(`characterReferenceValue`);return o===wh&&!mh(r.sliceSerialize(i))?n(s):(e.enter(`characterReferenceMarker`),e.consume(s),e.exit(`characterReferenceMarker`),e.exit(`characterReference`),t)}return o(s)&&i++<a?(e.consume(s),u):n(s)}}var cg={partial:!0,tokenize:dg},lg={concrete:!0,name:`codeFenced`,tokenize:ug};function ug(e,t,n){let r=this,i={partial:!0,tokenize:x},a=0,o=0,s;return c;function c(e){return l(e)}function l(t){let n=r.events[r.events.length-1];return a=n&&n[1].type===`linePrefix`?n[2].sliceSerialize(n[1],!0).length:0,s=t,e.enter(`codeFenced`),e.enter(`codeFencedFence`),e.enter(`codeFencedFenceSequence`),u(t)}function u(t){return t===s?(o++,e.consume(t),u):o<3?n(t):(e.exit(`codeFencedFenceSequence`),Mh(t)?Lh(e,d,`whitespace`)(t):d(t))}function d(n){return n===null||Ah(n)?(e.exit(`codeFencedFence`),r.interrupt?t(n):e.check(cg,h,b)(n)):(e.enter(`codeFencedFenceInfo`),e.enter(`chunkString`,{contentType:`string`}),f(n))}function f(t){return t===null||Ah(t)?(e.exit(`chunkString`),e.exit(`codeFencedFenceInfo`),d(t)):Mh(t)?(e.exit(`chunkString`),e.exit(`codeFencedFenceInfo`),Lh(e,p,`whitespace`)(t)):t===96&&t===s?n(t):(e.consume(t),f)}function p(t){return t===null||Ah(t)?d(t):(e.enter(`codeFencedFenceMeta`),e.enter(`chunkString`,{contentType:`string`}),m(t))}function m(t){return t===null||Ah(t)?(e.exit(`chunkString`),e.exit(`codeFencedFenceMeta`),d(t)):t===96&&t===s?n(t):(e.consume(t),m)}function h(t){return e.attempt(i,b,g)(t)}function g(t){return e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),_}function _(t){return a>0&&Mh(t)?Lh(e,v,`linePrefix`,a+1)(t):v(t)}function v(t){return t===null||Ah(t)?e.check(cg,h,b)(t):(e.enter(`codeFlowValue`),y(t))}function y(t){return t===null||Ah(t)?(e.exit(`codeFlowValue`),v(t)):(e.consume(t),y)}function b(n){return e.exit(`codeFenced`),t(n)}function x(e,t,n){let i=0;return a;function a(t){return e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),c}function c(t){return e.enter(`codeFencedFence`),Mh(t)?Lh(e,l,`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(t):l(t)}function l(t){return t===s?(e.enter(`codeFencedFenceSequence`),u(t)):n(t)}function u(t){return t===s?(i++,e.consume(t),u):i>=o?(e.exit(`codeFencedFenceSequence`),Mh(t)?Lh(e,d,`whitespace`)(t):d(t)):n(t)}function d(r){return r===null||Ah(r)?(e.exit(`codeFencedFence`),t(r)):n(r)}}}function dg(e,t,n){let r=this;return i;function i(t){return t===null?n(t):(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),a)}function a(e){return r.parser.lazy[r.now().line]?n(e):t(e)}}var fg={name:`codeIndented`,tokenize:mg},pg={partial:!0,tokenize:hg};function mg(e,t,n){let r=this;return i;function i(t){return e.enter(`codeIndented`),Lh(e,a,`linePrefix`,5)(t)}function a(e){let t=r.events[r.events.length-1];return t&&t[1].type===`linePrefix`&&t[2].sliceSerialize(t[1],!0).length>=4?o(e):n(e)}function o(t){return t===null?c(t):Ah(t)?e.attempt(pg,o,c)(t):(e.enter(`codeFlowValue`),s(t))}function s(t){return t===null||Ah(t)?(e.exit(`codeFlowValue`),o(t)):(e.consume(t),s)}function c(n){return e.exit(`codeIndented`),t(n)}}function hg(e,t,n){let r=this;return i;function i(t){return r.parser.lazy[r.now().line]?n(t):Ah(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),i):Lh(e,a,`linePrefix`,5)(t)}function a(e){let a=r.events[r.events.length-1];return a&&a[1].type===`linePrefix`&&a[2].sliceSerialize(a[1],!0).length>=4?t(e):Ah(e)?i(e):n(e)}}var gg={name:`codeText`,previous:vg,resolve:_g,tokenize:yg};function _g(e){let t=e.length-4,n=3,r,i;if((e[n][1].type===`lineEnding`||e[n][1].type===`space`)&&(e[t][1].type===`lineEnding`||e[t][1].type===`space`)){for(r=n;++r<t;)if(e[r][1].type===`codeTextData`){e[n][1].type=`codeTextPadding`,e[t][1].type=`codeTextPadding`,n+=2,t-=2;break}}for(r=n-1,t++;++r<=t;)i===void 0?r!==t&&e[r][1].type!==`lineEnding`&&(i=r):(r===t||e[r][1].type===`lineEnding`)&&(e[i][1].type=`codeTextData`,r!==i+2&&(e[i][1].end=e[r-1][1].end,e.splice(i+2,r-i-2),t-=r-i-2,r=i+2),i=void 0);return e}function vg(e){return e!==96||this.events[this.events.length-1][1].type===`characterEscape`}function yg(e,t,n){let r=0,i,a;return o;function o(t){return e.enter(`codeText`),e.enter(`codeTextSequence`),s(t)}function s(t){return t===96?(e.consume(t),r++,s):(e.exit(`codeTextSequence`),c(t))}function c(t){return t===null?n(t):t===32?(e.enter(`space`),e.consume(t),e.exit(`space`),c):t===96?(a=e.enter(`codeTextSequence`),i=0,u(t)):Ah(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),c):(e.enter(`codeTextData`),l(t))}function l(t){return t===null||t===32||t===96||Ah(t)?(e.exit(`codeTextData`),c(t)):(e.consume(t),l)}function u(n){return n===96?(e.consume(n),i++,u):i===r?(e.exit(`codeTextSequence`),e.exit(`codeText`),t(n)):(a.type=`codeTextData`,l(n))}}var bg=class{constructor(e){this.left=e?[...e]:[],this.right=[]}get(e){if(e<0||e>=this.left.length+this.right.length)throw RangeError("Cannot access index `"+e+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return e<this.left.length?this.left[e]:this.right[this.right.length-e+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(e,t){let n=t??1/0;return n<this.left.length?this.left.slice(e,n):e>this.left.length?this.right.slice(this.right.length-n+this.left.length,this.right.length-e+this.left.length).reverse():this.left.slice(e).concat(this.right.slice(this.right.length-n+this.left.length).reverse())}splice(e,t,n){let r=t||0;this.setCursor(Math.trunc(e));let i=this.right.splice(this.right.length-r,1/0);return n&&xg(this.left,n),i.reverse()}pop(){return this.setCursor(1/0),this.left.pop()}push(e){this.setCursor(1/0),this.left.push(e)}pushMany(e){this.setCursor(1/0),xg(this.left,e)}unshift(e){this.setCursor(0),this.right.push(e)}unshiftMany(e){this.setCursor(0),xg(this.right,e.reverse())}setCursor(e){if(!(e===this.left.length||e>this.left.length&&this.right.length===0||e<0&&this.left.length===0))if(e<this.left.length){let t=this.left.splice(e,1/0);xg(this.right,t.reverse())}else{let t=this.right.splice(this.left.length+this.right.length-e,1/0);xg(this.left,t.reverse())}}};function xg(e,t){let n=0;if(t.length<1e4)e.push(...t);else for(;n<t.length;)e.push(...t.slice(n,n+1e4)),n+=1e4}function Sg(e){let t={},n=-1,r,i,a,o,s,c,l,u=new bg(e);for(;++n<u.length;){for(;n in t;)n=t[n];if(r=u.get(n),n&&r[1].type===`chunkFlow`&&u.get(n-1)[1].type===`listItemPrefix`&&(c=r[1]._tokenizer.events,a=0,a<c.length&&c[a][1].type===`lineEndingBlank`&&(a+=2),a<c.length&&c[a][1].type===`content`))for(;++a<c.length&&c[a][1].type!==`content`;)c[a][1].type===`chunkText`&&(c[a][1]._isInFirstContentOfListItem=!0,a++);if(r[0]===`enter`)r[1].contentType&&(Object.assign(t,Cg(u,n)),n=t[n],l=!0);else if(r[1]._container){for(a=n,i=void 0;a--;)if(o=u.get(a),o[1].type===`lineEnding`||o[1].type===`lineEndingBlank`)o[0]===`enter`&&(i&&(u.get(i)[1].type=`lineEndingBlank`),o[1].type=`lineEnding`,i=a);else if(!(o[1].type===`linePrefix`||o[1].type===`listItemIndent`))break;i&&(r[1].end={...u.get(i)[1].start},s=u.slice(i,n),s.unshift(r),u.splice(i,n-i+1,s))}}return hh(e,0,1/0,u.slice(0)),!l}function Cg(e,t){let n=e.get(t)[1],r=e.get(t)[2],i=t-1,a=[],o=n._tokenizer;o||(o=r.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(o._contentTypeTextTrailing=!0));let s=o.events,c=[],l={},u,d,f=-1,p=n,m=0,h=0,g=[h];for(;p;){for(;e.get(++i)[1]!==p;);a.push(i),p._tokenizer||(u=r.sliceStream(p),p.next||u.push(null),d&&o.defineSkip(p.start),p._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=!0),o.write(u),p._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=void 0)),d=p,p=p.next}for(p=n;++f<s.length;)s[f][0]===`exit`&&s[f-1][0]===`enter`&&s[f][1].type===s[f-1][1].type&&s[f][1].start.line!==s[f][1].end.line&&(h=f+1,g.push(h),p._tokenizer=void 0,p.previous=void 0,p=p.next);for(o.events=[],p?(p._tokenizer=void 0,p.previous=void 0):g.pop(),f=g.length;f--;){let t=s.slice(g[f],g[f+1]),n=a.pop();c.push([n,n+t.length-1]),e.splice(n,2,t)}for(c.reverse(),f=-1;++f<c.length;)l[m+c[f][0]]=m+c[f][1],m+=c[f][1]-c[f][0]-1;return l}var wg={resolve:Eg,tokenize:Dg},Tg={partial:!0,tokenize:Og};function Eg(e){return Sg(e),e}function Dg(e,t){let n;return r;function r(t){return e.enter(`content`),n=e.enter(`chunkContent`,{contentType:`content`}),i(t)}function i(t){return t===null?a(t):Ah(t)?e.check(Tg,o,a)(t):(e.consume(t),i)}function a(n){return e.exit(`chunkContent`),e.exit(`content`),t(n)}function o(t){return e.consume(t),e.exit(`chunkContent`),n.next=e.enter(`chunkContent`,{contentType:`content`,previous:n}),n=n.next,i}}function Og(e,t,n){let r=this;return i;function i(t){return e.exit(`chunkContent`),e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),Lh(e,a,`linePrefix`)}function a(i){if(i===null||Ah(i))return n(i);let a=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes(`codeIndented`)&&a&&a[1].type===`linePrefix`&&a[2].sliceSerialize(a[1],!0).length>=4?t(i):e.interrupt(r.parser.constructs.flow,n,t)(i)}}function kg(e,t,n,r,i,a,o,s,c){let l=c||1/0,u=0;return d;function d(t){return t===60?(e.enter(r),e.enter(i),e.enter(a),e.consume(t),e.exit(a),f):t===null||t===32||t===41||Eh(t)?n(t):(e.enter(r),e.enter(o),e.enter(s),e.enter(`chunkString`,{contentType:`string`}),h(t))}function f(n){return n===62?(e.enter(a),e.consume(n),e.exit(a),e.exit(i),e.exit(r),t):(e.enter(s),e.enter(`chunkString`,{contentType:`string`}),p(n))}function p(t){return t===62?(e.exit(`chunkString`),e.exit(s),f(t)):t===null||t===60||Ah(t)?n(t):(e.consume(t),t===92?m:p)}function m(t){return t===60||t===62||t===92?(e.consume(t),p):p(t)}function h(i){return!u&&(i===null||i===41||jh(i))?(e.exit(`chunkString`),e.exit(s),e.exit(o),e.exit(r),t(i)):u<l&&i===40?(e.consume(i),u++,h):i===41?(e.consume(i),u--,h):i===null||i===32||i===40||Eh(i)?n(i):(e.consume(i),i===92?g:h)}function g(t){return t===40||t===41||t===92?(e.consume(t),h):h(t)}}function Ag(e,t,n,r,i,a){let o=this,s=0,c;return l;function l(t){return e.enter(r),e.enter(i),e.consume(t),e.exit(i),e.enter(a),u}function u(l){return s>999||l===null||l===91||l===93&&!c||l===94&&!s&&`_hiddenFootnoteSupport`in o.parser.constructs?n(l):l===93?(e.exit(a),e.enter(i),e.consume(l),e.exit(i),e.exit(r),t):Ah(l)?(e.enter(`lineEnding`),e.consume(l),e.exit(`lineEnding`),u):(e.enter(`chunkString`,{contentType:`string`}),d(l))}function d(t){return t===null||t===91||t===93||Ah(t)||s++>999?(e.exit(`chunkString`),u(t)):(e.consume(t),c||=!Mh(t),t===92?f:d)}function f(t){return t===91||t===92||t===93?(e.consume(t),s++,d):d(t)}}function jg(e,t,n,r,i,a){let o;return s;function s(t){return t===34||t===39||t===40?(e.enter(r),e.enter(i),e.consume(t),e.exit(i),o=t===40?41:t,c):n(t)}function c(n){return n===o?(e.enter(i),e.consume(n),e.exit(i),e.exit(r),t):(e.enter(a),l(n))}function l(t){return t===o?(e.exit(a),c(o)):t===null?n(t):Ah(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),Lh(e,l,`linePrefix`)):(e.enter(`chunkString`,{contentType:`string`}),u(t))}function u(t){return t===o||t===null||Ah(t)?(e.exit(`chunkString`),l(t)):(e.consume(t),t===92?d:u)}function d(t){return t===o||t===92?(e.consume(t),u):u(t)}}function Mg(e,t){let n;return r;function r(i){return Ah(i)?(e.enter(`lineEnding`),e.consume(i),e.exit(`lineEnding`),n=!0,r):Mh(i)?Lh(e,r,n?`linePrefix`:`lineSuffix`)(i):t(i)}}var Ng={name:`definition`,tokenize:Fg},Pg={partial:!0,tokenize:Ig};function Fg(e,t,n){let r=this,i;return a;function a(t){return e.enter(`definition`),o(t)}function o(t){return Ag.call(r,e,s,n,`definitionLabel`,`definitionLabelMarker`,`definitionLabelString`)(t)}function s(t){return i=Sh(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),t===58?(e.enter(`definitionMarker`),e.consume(t),e.exit(`definitionMarker`),c):n(t)}function c(t){return jh(t)?Mg(e,l)(t):l(t)}function l(t){return kg(e,u,n,`definitionDestination`,`definitionDestinationLiteral`,`definitionDestinationLiteralMarker`,`definitionDestinationRaw`,`definitionDestinationString`)(t)}function u(t){return e.attempt(Pg,d,d)(t)}function d(t){return Mh(t)?Lh(e,f,`whitespace`)(t):f(t)}function f(a){return a===null||Ah(a)?(e.exit(`definition`),r.parser.defined.push(i),t(a)):n(a)}}function Ig(e,t,n){return r;function r(t){return jh(t)?Mg(e,i)(t):n(t)}function i(t){return jg(e,a,n,`definitionTitle`,`definitionTitleMarker`,`definitionTitleString`)(t)}function a(t){return Mh(t)?Lh(e,o,`whitespace`)(t):o(t)}function o(e){return e===null||Ah(e)?t(e):n(e)}}var Lg={name:`hardBreakEscape`,tokenize:Rg};function Rg(e,t,n){return r;function r(t){return e.enter(`hardBreakEscape`),e.consume(t),i}function i(r){return Ah(r)?(e.exit(`hardBreakEscape`),t(r)):n(r)}}var zg={name:`headingAtx`,resolve:Bg,tokenize:Vg};function Bg(e,t){let n=e.length-2,r=3,i,a;return e[r][1].type===`whitespace`&&(r+=2),n-2>r&&e[n][1].type===`whitespace`&&(n-=2),e[n][1].type===`atxHeadingSequence`&&(r===n-1||n-4>r&&e[n-2][1].type===`whitespace`)&&(n-=r+1===n?2:4),n>r&&(i={type:`atxHeadingText`,start:e[r][1].start,end:e[n][1].end},a={type:`chunkText`,start:e[r][1].start,end:e[n][1].end,contentType:`text`},hh(e,r,n-r+1,[[`enter`,i,t],[`enter`,a,t],[`exit`,a,t],[`exit`,i,t]])),e}function Vg(e,t,n){let r=0;return i;function i(t){return e.enter(`atxHeading`),a(t)}function a(t){return e.enter(`atxHeadingSequence`),o(t)}function o(t){return t===35&&r++<6?(e.consume(t),o):t===null||jh(t)?(e.exit(`atxHeadingSequence`),s(t)):n(t)}function s(n){return n===35?(e.enter(`atxHeadingSequence`),c(n)):n===null||Ah(n)?(e.exit(`atxHeading`),t(n)):Mh(n)?Lh(e,s,`whitespace`)(n):(e.enter(`atxHeadingText`),l(n))}function c(t){return t===35?(e.consume(t),c):(e.exit(`atxHeadingSequence`),s(t))}function l(t){return t===null||t===35||jh(t)?(e.exit(`atxHeadingText`),s(t)):(e.consume(t),l)}}var Hg=`address.article.aside.base.basefont.blockquote.body.caption.center.col.colgroup.dd.details.dialog.dir.div.dl.dt.fieldset.figcaption.figure.footer.form.frame.frameset.h1.h2.h3.h4.h5.h6.head.header.hr.html.iframe.legend.li.link.main.menu.menuitem.nav.noframes.ol.optgroup.option.p.param.search.section.summary.table.tbody.td.tfoot.th.thead.title.tr.track.ul`.split(`.`),Ug=[`pre`,`script`,`style`,`textarea`],Wg={concrete:!0,name:`htmlFlow`,resolveTo:qg,tokenize:Jg},Gg={partial:!0,tokenize:Xg},Kg={partial:!0,tokenize:Yg};function qg(e){let t=e.length;for(;t--&&!(e[t][0]===`enter`&&e[t][1].type===`htmlFlow`););return t>1&&e[t-2][1].type===`linePrefix`&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function Jg(e,t,n){let r=this,i,a,o,s,c;return l;function l(e){return u(e)}function u(t){return e.enter(`htmlFlow`),e.enter(`htmlFlowData`),e.consume(t),d}function d(s){return s===33?(e.consume(s),f):s===47?(e.consume(s),a=!0,h):s===63?(e.consume(s),i=3,r.interrupt?t:P):Ch(s)?(e.consume(s),o=String.fromCharCode(s),g):n(s)}function f(a){return a===45?(e.consume(a),i=2,p):a===91?(e.consume(a),i=5,s=0,m):Ch(a)?(e.consume(a),i=4,r.interrupt?t:P):n(a)}function p(i){return i===45?(e.consume(i),r.interrupt?t:P):n(i)}function m(i){return i===`CDATA[`.charCodeAt(s++)?(e.consume(i),s===6?r.interrupt?t:D:m):n(i)}function h(t){return Ch(t)?(e.consume(t),o=String.fromCharCode(t),g):n(t)}function g(s){if(s===null||s===47||s===62||jh(s)){let c=s===47,l=o.toLowerCase();return!c&&!a&&Ug.includes(l)?(i=1,r.interrupt?t(s):D(s)):Hg.includes(o.toLowerCase())?(i=6,c?(e.consume(s),_):r.interrupt?t(s):D(s)):(i=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(s):a?v(s):y(s))}return s===45||wh(s)?(e.consume(s),o+=String.fromCharCode(s),g):n(s)}function _(i){return i===62?(e.consume(i),r.interrupt?t:D):n(i)}function v(t){return Mh(t)?(e.consume(t),v):E(t)}function y(t){return t===47?(e.consume(t),E):t===58||t===95||Ch(t)?(e.consume(t),b):Mh(t)?(e.consume(t),y):E(t)}function b(t){return t===45||t===46||t===58||t===95||wh(t)?(e.consume(t),b):x(t)}function x(t){return t===61?(e.consume(t),S):Mh(t)?(e.consume(t),x):y(t)}function S(t){return t===null||t===60||t===61||t===62||t===96?n(t):t===34||t===39?(e.consume(t),c=t,C):Mh(t)?(e.consume(t),S):w(t)}function C(t){return t===c?(e.consume(t),c=null,T):t===null||Ah(t)?n(t):(e.consume(t),C)}function w(t){return t===null||t===34||t===39||t===47||t===60||t===61||t===62||t===96||jh(t)?x(t):(e.consume(t),w)}function T(e){return e===47||e===62||Mh(e)?y(e):n(e)}function E(t){return t===62?(e.consume(t),ee):n(t)}function ee(t){return t===null||Ah(t)?D(t):Mh(t)?(e.consume(t),ee):n(t)}function D(t){return t===45&&i===2?(e.consume(t),te):t===60&&i===1?(e.consume(t),j):t===62&&i===4?(e.consume(t),F):t===63&&i===3?(e.consume(t),P):t===93&&i===5?(e.consume(t),N):Ah(t)&&(i===6||i===7)?(e.exit(`htmlFlowData`),e.check(Gg,ne,O)(t)):t===null||Ah(t)?(e.exit(`htmlFlowData`),O(t)):(e.consume(t),D)}function O(t){return e.check(Kg,k,ne)(t)}function k(t){return e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),A}function A(t){return t===null||Ah(t)?O(t):(e.enter(`htmlFlowData`),D(t))}function te(t){return t===45?(e.consume(t),P):D(t)}function j(t){return t===47?(e.consume(t),o=``,M):D(t)}function M(t){if(t===62){let n=o.toLowerCase();return Ug.includes(n)?(e.consume(t),F):D(t)}return Ch(t)&&o.length<8?(e.consume(t),o+=String.fromCharCode(t),M):D(t)}function N(t){return t===93?(e.consume(t),P):D(t)}function P(t){return t===62?(e.consume(t),F):t===45&&i===2?(e.consume(t),P):D(t)}function F(t){return t===null||Ah(t)?(e.exit(`htmlFlowData`),ne(t)):(e.consume(t),F)}function ne(n){return e.exit(`htmlFlow`),t(n)}}function Yg(e,t,n){let r=this;return i;function i(t){return Ah(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),a):n(t)}function a(e){return r.parser.lazy[r.now().line]?n(e):t(e)}}function Xg(e,t,n){return r;function r(r){return e.enter(`lineEnding`),e.consume(r),e.exit(`lineEnding`),e.attempt(Qh,t,n)}}var Zg={name:`htmlText`,tokenize:Qg};function Qg(e,t,n){let r=this,i,a,o;return s;function s(t){return e.enter(`htmlText`),e.enter(`htmlTextData`),e.consume(t),c}function c(t){return t===33?(e.consume(t),l):t===47?(e.consume(t),x):t===63?(e.consume(t),y):Ch(t)?(e.consume(t),w):n(t)}function l(t){return t===45?(e.consume(t),u):t===91?(e.consume(t),a=0,m):Ch(t)?(e.consume(t),v):n(t)}function u(t){return t===45?(e.consume(t),p):n(t)}function d(t){return t===null?n(t):t===45?(e.consume(t),f):Ah(t)?(o=d,j(t)):(e.consume(t),d)}function f(t){return t===45?(e.consume(t),p):d(t)}function p(e){return e===62?te(e):e===45?f(e):d(e)}function m(t){return t===`CDATA[`.charCodeAt(a++)?(e.consume(t),a===6?h:m):n(t)}function h(t){return t===null?n(t):t===93?(e.consume(t),g):Ah(t)?(o=h,j(t)):(e.consume(t),h)}function g(t){return t===93?(e.consume(t),_):h(t)}function _(t){return t===62?te(t):t===93?(e.consume(t),_):h(t)}function v(t){return t===null||t===62?te(t):Ah(t)?(o=v,j(t)):(e.consume(t),v)}function y(t){return t===null?n(t):t===63?(e.consume(t),b):Ah(t)?(o=y,j(t)):(e.consume(t),y)}function b(e){return e===62?te(e):y(e)}function x(t){return Ch(t)?(e.consume(t),S):n(t)}function S(t){return t===45||wh(t)?(e.consume(t),S):C(t)}function C(t){return Ah(t)?(o=C,j(t)):Mh(t)?(e.consume(t),C):te(t)}function w(t){return t===45||wh(t)?(e.consume(t),w):t===47||t===62||jh(t)?T(t):n(t)}function T(t){return t===47?(e.consume(t),te):t===58||t===95||Ch(t)?(e.consume(t),E):Ah(t)?(o=T,j(t)):Mh(t)?(e.consume(t),T):te(t)}function E(t){return t===45||t===46||t===58||t===95||wh(t)?(e.consume(t),E):ee(t)}function ee(t){return t===61?(e.consume(t),D):Ah(t)?(o=ee,j(t)):Mh(t)?(e.consume(t),ee):T(t)}function D(t){return t===null||t===60||t===61||t===62||t===96?n(t):t===34||t===39?(e.consume(t),i=t,O):Ah(t)?(o=D,j(t)):Mh(t)?(e.consume(t),D):(e.consume(t),k)}function O(t){return t===i?(e.consume(t),i=void 0,A):t===null?n(t):Ah(t)?(o=O,j(t)):(e.consume(t),O)}function k(t){return t===null||t===34||t===39||t===60||t===61||t===96?n(t):t===47||t===62||jh(t)?T(t):(e.consume(t),k)}function A(e){return e===47||e===62||jh(e)?T(e):n(e)}function te(r){return r===62?(e.consume(r),e.exit(`htmlTextData`),e.exit(`htmlText`),t):n(r)}function j(t){return e.exit(`htmlTextData`),e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),M}function M(t){return Mh(t)?Lh(e,N,`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(t):N(t)}function N(t){return e.enter(`htmlTextData`),o(t)}}var $g={name:`labelEnd`,resolveAll:r_,resolveTo:i_,tokenize:a_},e_={tokenize:o_},t_={tokenize:s_},n_={tokenize:c_};function r_(e){let t=-1,n=[];for(;++t<e.length;){let r=e[t][1];if(n.push(e[t]),r.type===`labelImage`||r.type===`labelLink`||r.type===`labelEnd`){let e=r.type===`labelImage`?4:2;r.type=`data`,t+=e}}return e.length!==n.length&&hh(e,0,e.length,n),e}function i_(e,t){let n=e.length,r=0,i,a,o,s;for(;n--;)if(i=e[n][1],a){if(i.type===`link`||i.type===`labelLink`&&i._inactive)break;e[n][0]===`enter`&&i.type===`labelLink`&&(i._inactive=!0)}else if(o){if(e[n][0]===`enter`&&(i.type===`labelImage`||i.type===`labelLink`)&&!i._balanced&&(a=n,i.type!==`labelLink`)){r=2;break}}else i.type===`labelEnd`&&(o=n);let c={type:e[a][1].type===`labelLink`?`link`:`image`,start:{...e[a][1].start},end:{...e[e.length-1][1].end}},l={type:`label`,start:{...e[a][1].start},end:{...e[o][1].end}},u={type:`labelText`,start:{...e[a+r+2][1].end},end:{...e[o-2][1].start}};return s=[[`enter`,c,t],[`enter`,l,t]],s=gh(s,e.slice(a+1,a+r+3)),s=gh(s,[[`enter`,u,t]]),s=gh(s,Gh(t.parser.constructs.insideSpan.null,e.slice(a+r+4,o-3),t)),s=gh(s,[[`exit`,u,t],e[o-2],e[o-1],[`exit`,l,t]]),s=gh(s,e.slice(o+1)),s=gh(s,[[`exit`,c,t]]),hh(e,a,e.length,s),e}function a_(e,t,n){let r=this,i=r.events.length,a,o;for(;i--;)if((r.events[i][1].type===`labelImage`||r.events[i][1].type===`labelLink`)&&!r.events[i][1]._balanced){a=r.events[i][1];break}return s;function s(t){return a?a._inactive?d(t):(o=r.parser.defined.includes(Sh(r.sliceSerialize({start:a.end,end:r.now()}))),e.enter(`labelEnd`),e.enter(`labelMarker`),e.consume(t),e.exit(`labelMarker`),e.exit(`labelEnd`),c):n(t)}function c(t){return t===40?e.attempt(e_,u,o?u:d)(t):t===91?e.attempt(t_,u,o?l:d)(t):o?u(t):d(t)}function l(t){return e.attempt(n_,u,d)(t)}function u(e){return t(e)}function d(e){return a._balanced=!0,n(e)}}function o_(e,t,n){return r;function r(t){return e.enter(`resource`),e.enter(`resourceMarker`),e.consume(t),e.exit(`resourceMarker`),i}function i(t){return jh(t)?Mg(e,a)(t):a(t)}function a(t){return t===41?u(t):kg(e,o,s,`resourceDestination`,`resourceDestinationLiteral`,`resourceDestinationLiteralMarker`,`resourceDestinationRaw`,`resourceDestinationString`,32)(t)}function o(t){return jh(t)?Mg(e,c)(t):u(t)}function s(e){return n(e)}function c(t){return t===34||t===39||t===40?jg(e,l,n,`resourceTitle`,`resourceTitleMarker`,`resourceTitleString`)(t):u(t)}function l(t){return jh(t)?Mg(e,u)(t):u(t)}function u(r){return r===41?(e.enter(`resourceMarker`),e.consume(r),e.exit(`resourceMarker`),e.exit(`resource`),t):n(r)}}function s_(e,t,n){let r=this;return i;function i(t){return Ag.call(r,e,a,o,`reference`,`referenceMarker`,`referenceString`)(t)}function a(e){return r.parser.defined.includes(Sh(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(e):n(e)}function o(e){return n(e)}}function c_(e,t,n){return r;function r(t){return e.enter(`reference`),e.enter(`referenceMarker`),e.consume(t),e.exit(`referenceMarker`),i}function i(r){return r===93?(e.enter(`referenceMarker`),e.consume(r),e.exit(`referenceMarker`),e.exit(`reference`),t):n(r)}}var l_={name:`labelStartImage`,resolveAll:$g.resolveAll,tokenize:u_};function u_(e,t,n){let r=this;return i;function i(t){return e.enter(`labelImage`),e.enter(`labelImageMarker`),e.consume(t),e.exit(`labelImageMarker`),a}function a(t){return t===91?(e.enter(`labelMarker`),e.consume(t),e.exit(`labelMarker`),e.exit(`labelImage`),o):n(t)}function o(e){return e===94&&`_hiddenFootnoteSupport`in r.parser.constructs?n(e):t(e)}}var d_={name:`labelStartLink`,resolveAll:$g.resolveAll,tokenize:f_};function f_(e,t,n){let r=this;return i;function i(t){return e.enter(`labelLink`),e.enter(`labelMarker`),e.consume(t),e.exit(`labelMarker`),e.exit(`labelLink`),a}function a(e){return e===94&&`_hiddenFootnoteSupport`in r.parser.constructs?n(e):t(e)}}var p_={name:`lineEnding`,tokenize:m_};function m_(e,t){return n;function n(n){return e.enter(`lineEnding`),e.consume(n),e.exit(`lineEnding`),Lh(e,t,`linePrefix`)}}var h_={name:`thematicBreak`,tokenize:g_};function g_(e,t,n){let r=0,i;return a;function a(t){return e.enter(`thematicBreak`),o(t)}function o(e){return i=e,s(e)}function s(a){return a===i?(e.enter(`thematicBreakSequence`),c(a)):r>=3&&(a===null||Ah(a))?(e.exit(`thematicBreak`),t(a)):n(a)}function c(t){return t===i?(e.consume(t),r++,c):(e.exit(`thematicBreakSequence`),Mh(t)?Lh(e,s,`whitespace`)(t):s(t))}}var __={continuation:{tokenize:x_},exit:C_,name:`list`,tokenize:b_},v_={partial:!0,tokenize:w_},y_={partial:!0,tokenize:S_};function b_(e,t,n){let r=this,i=r.events[r.events.length-1],a=i&&i[1].type===`linePrefix`?i[2].sliceSerialize(i[1],!0).length:0,o=0;return s;function s(t){let i=r.containerState.type||(t===42||t===43||t===45?`listUnordered`:`listOrdered`);if(i===`listUnordered`?!r.containerState.marker||t===r.containerState.marker:Dh(t)){if(r.containerState.type||(r.containerState.type=i,e.enter(i,{_container:!0})),i===`listUnordered`)return e.enter(`listItemPrefix`),t===42||t===45?e.check(h_,n,l)(t):l(t);if(!r.interrupt||t===49)return e.enter(`listItemPrefix`),e.enter(`listItemValue`),c(t)}return n(t)}function c(t){return Dh(t)&&++o<10?(e.consume(t),c):(!r.interrupt||o<2)&&(r.containerState.marker?t===r.containerState.marker:t===41||t===46)?(e.exit(`listItemValue`),l(t)):n(t)}function l(t){return e.enter(`listItemMarker`),e.consume(t),e.exit(`listItemMarker`),r.containerState.marker=r.containerState.marker||t,e.check(Qh,r.interrupt?n:u,e.attempt(v_,f,d))}function u(e){return r.containerState.initialBlankLine=!0,a++,f(e)}function d(t){return Mh(t)?(e.enter(`listItemPrefixWhitespace`),e.consume(t),e.exit(`listItemPrefixWhitespace`),f):n(t)}function f(n){return r.containerState.size=a+r.sliceSerialize(e.exit(`listItemPrefix`),!0).length,t(n)}}function x_(e,t,n){let r=this;return r.containerState._closeFlow=void 0,e.check(Qh,i,a);function i(n){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,Lh(e,t,`listItemIndent`,r.containerState.size+1)(n)}function a(n){return r.containerState.furtherBlankLines||!Mh(n)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,o(n)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(y_,t,o)(n))}function o(i){return r.containerState._closeFlow=!0,r.interrupt=void 0,Lh(e,e.attempt(__,t,n),`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(i)}}function S_(e,t,n){let r=this;return Lh(e,i,`listItemIndent`,r.containerState.size+1);function i(e){let i=r.events[r.events.length-1];return i&&i[1].type===`listItemIndent`&&i[2].sliceSerialize(i[1],!0).length===r.containerState.size?t(e):n(e)}}function C_(e){e.exit(this.containerState.type)}function w_(e,t,n){let r=this;return Lh(e,i,`listItemPrefixWhitespace`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:5);function i(e){let i=r.events[r.events.length-1];return!Mh(e)&&i&&i[1].type===`listItemPrefixWhitespace`?t(e):n(e)}}var T_={name:`setextUnderline`,resolveTo:E_,tokenize:D_};function E_(e,t){let n=e.length,r,i,a;for(;n--;)if(e[n][0]===`enter`){if(e[n][1].type===`content`){r=n;break}e[n][1].type===`paragraph`&&(i=n)}else e[n][1].type===`content`&&e.splice(n,1),!a&&e[n][1].type===`definition`&&(a=n);let o={type:`setextHeading`,start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type=`setextHeadingText`,a?(e.splice(i,0,[`enter`,o,t]),e.splice(a+1,0,[`exit`,e[r][1],t]),e[r][1].end={...e[a][1].end}):e[r][1]=o,e.push([`exit`,o,t]),e}function D_(e,t,n){let r=this,i;return a;function a(t){let a=r.events.length,s;for(;a--;)if(r.events[a][1].type!==`lineEnding`&&r.events[a][1].type!==`linePrefix`&&r.events[a][1].type!==`content`){s=r.events[a][1].type===`paragraph`;break}return!r.parser.lazy[r.now().line]&&(r.interrupt||s)?(e.enter(`setextHeadingLine`),i=t,o(t)):n(t)}function o(t){return e.enter(`setextHeadingLineSequence`),s(t)}function s(t){return t===i?(e.consume(t),s):(e.exit(`setextHeadingLineSequence`),Mh(t)?Lh(e,c,`lineSuffix`)(t):c(t))}function c(r){return r===null||Ah(r)?(e.exit(`setextHeadingLine`),t(r)):n(r)}}var O_={tokenize:k_};function k_(e){let t=this,n=e.attempt(Qh,r,e.attempt(this.parser.constructs.flowInitial,i,Lh(e,e.attempt(this.parser.constructs.flow,i,e.attempt(wg,i)),`linePrefix`)));return n;function r(r){if(r===null){e.consume(r);return}return e.enter(`lineEndingBlank`),e.consume(r),e.exit(`lineEndingBlank`),t.currentConstruct=void 0,n}function i(r){if(r===null){e.consume(r);return}return e.enter(`lineEnding`),e.consume(r),e.exit(`lineEnding`),t.currentConstruct=void 0,n}}var A_={resolveAll:P_()},j_=N_(`string`),M_=N_(`text`);function N_(e){return{resolveAll:P_(e===`text`?F_:void 0),tokenize:t};function t(t){let n=this,r=this.parser.constructs[e],i=t.attempt(r,a,o);return a;function a(e){return c(e)?i(e):o(e)}function o(e){if(e===null){t.consume(e);return}return t.enter(`data`),t.consume(e),s}function s(e){return c(e)?(t.exit(`data`),i(e)):(t.consume(e),s)}function c(e){if(e===null)return!0;let t=r[e],i=-1;if(t)for(;++i<t.length;){let e=t[i];if(!e.previous||e.previous.call(n,n.previous))return!0}return!1}}}function P_(e){return t;function t(t,n){let r=-1,i;for(;++r<=t.length;)i===void 0?t[r]&&t[r][1].type===`data`&&(i=r,r++):(!t[r]||t[r][1].type!==`data`)&&(r!==i+2&&(t[i][1].end=t[r-1][1].end,t.splice(i+2,r-i-2),r=i+2),i=void 0);return e?e(t,n):t}}function F_(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type===`lineEnding`)&&e[n-1][1].type===`data`){let r=e[n-1][1],i=t.sliceStream(r),a=i.length,o=-1,s=0,c;for(;a--;){let e=i[a];if(typeof e==`string`){for(o=e.length;e.charCodeAt(o-1)===32;)s++,o--;if(o)break;o=-1}else if(e===-2)c=!0,s++;else if(e!==-1){a++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(s=0),s){let i={type:n===e.length||c||s<2?`lineSuffix`:`hardBreakTrailing`,start:{_bufferIndex:a?o:r.start._bufferIndex+o,_index:r.start._index+a,line:r.end.line,column:r.end.column-s,offset:r.end.offset-s},end:{...r.end}};r.end={...i.start},r.start.offset===r.end.offset?Object.assign(r,i):(e.splice(n,0,[`enter`,i,t],[`exit`,i,t]),n+=2)}n++}return e}var I_=s({attentionMarkers:()=>W_,contentInitial:()=>R_,disable:()=>G_,document:()=>L_,flow:()=>B_,flowInitial:()=>z_,insideSpan:()=>U_,string:()=>V_,text:()=>H_}),L_={42:__,43:__,45:__,48:__,49:__,50:__,51:__,52:__,53:__,54:__,55:__,56:__,57:__,62:eg},R_={91:Ng},z_={[-2]:fg,[-1]:fg,32:fg},B_={35:zg,42:h_,45:[T_,h_],60:Wg,61:T_,95:h_,96:lg,126:lg},V_={38:og,92:ig},H_={[-5]:p_,[-4]:p_,[-3]:p_,33:l_,38:og,42:Kh,60:[Xh,Zg],91:d_,92:[Lg,ig],93:$g,95:Kh,96:gg},U_={null:[Kh,A_]},W_={null:[42,95]},G_={null:[]};function K_(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0},i={},a=[],o=[],s=[],c={attempt:C(x),check:C(S),consume:v,enter:y,exit:b,interrupt:C(S,{interrupt:!0})},l={code:null,containerState:{},defineSkip:h,events:[],now:m,parser:e,previous:null,sliceSerialize:f,sliceStream:p,write:d},u=t.tokenize.call(l,c);return t.resolveAll&&a.push(t),l;function d(e){return o=gh(o,e),g(),o[o.length-1]===null?(w(t,0),l.events=Gh(a,l.events,l),l.events):[]}function f(e,t){return J_(p(e),t)}function p(e){return q_(o,e)}function m(){let{_bufferIndex:e,_index:t,line:n,column:i,offset:a}=r;return{_bufferIndex:e,_index:t,line:n,column:i,offset:a}}function h(e){i[e.line]=e.column,E()}function g(){let e;for(;r._index<o.length;){let t=o[r._index];if(typeof t==`string`)for(e=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===e&&r._bufferIndex<t.length;)_(t.charCodeAt(r._bufferIndex));else _(t)}}function _(e){u=u(e)}function v(e){Ah(e)?(r.line++,r.column=1,r.offset+=e===-3?2:1,E()):e!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===o[r._index].length&&(r._bufferIndex=-1,r._index++)),l.previous=e}function y(e,t){let n=t||{};return n.type=e,n.start=m(),l.events.push([`enter`,n,l]),s.push(n),n}function b(e){let t=s.pop();return t.end=m(),l.events.push([`exit`,t,l]),t}function x(e,t){w(e,t.from)}function S(e,t){t.restore()}function C(e,t){return n;function n(n,r,i){let a,o,s,u;return Array.isArray(n)?f(n):`tokenize`in n?f([n]):d(n);function d(e){return t;function t(t){let n=t!==null&&e[t],r=t!==null&&e.null;return f([...Array.isArray(n)?n:n?[n]:[],...Array.isArray(r)?r:r?[r]:[]])(t)}}function f(e){return a=e,o=0,e.length===0?i:p(e[o])}function p(e){return n;function n(n){return u=T(),s=e,e.partial||(l.currentConstruct=e),e.name&&l.parser.constructs.disable.null.includes(e.name)?h(n):e.tokenize.call(t?Object.assign(Object.create(l),t):l,c,m,h)(n)}}function m(t){return e(s,u),r}function h(e){return u.restore(),++o<a.length?p(a[o]):i}}}function w(e,t){e.resolveAll&&!a.includes(e)&&a.push(e),e.resolve&&hh(l.events,t,l.events.length-t,e.resolve(l.events.slice(t),l)),e.resolveTo&&(l.events=e.resolveTo(l.events,l))}function T(){let e=m(),t=l.previous,n=l.currentConstruct,i=l.events.length,a=Array.from(s);return{from:i,restore:o};function o(){r=e,l.previous=t,l.currentConstruct=n,l.events.length=i,s=a,E()}}function E(){r.line in i&&r.column<2&&(r.column=i[r.line],r.offset+=i[r.line]-1)}}function q_(e,t){let n=t.start._index,r=t.start._bufferIndex,i=t.end._index,a=t.end._bufferIndex,o;if(n===i)o=[e[n].slice(r,a)];else{if(o=e.slice(n,i),r>-1){let e=o[0];typeof e==`string`?o[0]=e.slice(r):o.shift()}a>0&&o.push(e[i].slice(0,a))}return o}function J_(e,t){let n=-1,r=[],i;for(;++n<e.length;){let a=e[n],o;if(typeof a==`string`)o=a;else switch(a){case-5:o=`\r`;break;case-4:o=`
52
52
  `;break;case-3:o=`\r
53
53
  `;break;case-2:o=t?` `:` `;break;case-1:if(!t&&i)continue;o=` `;break;default:o=String.fromCharCode(a)}i=a===-2,r.push(o)}return r.join(``)}function Y_(e){let t={constructs:vh([I_,...(e||{}).extensions||[]]),content:n(Rh),defined:[],document:n(Bh),flow:n(O_),lazy:{},string:n(j_),text:n(M_)};return t;function n(e){return n;function n(n){return K_(t,e,n)}}}function X_(e){for(;!Sg(e););return e}var Z_=/[\0\t\n\r]/g;function Q_(){let e=1,t=``,n=!0,r;return i;function i(i,a,o){let s=[],c,l,u,d,f;for(i=t+(typeof i==`string`?i.toString():new TextDecoder(a||void 0).decode(i)),u=0,t=``,n&&=(i.charCodeAt(0)===65279&&u++,void 0);u<i.length;){if(Z_.lastIndex=u,c=Z_.exec(i),d=c&&c.index!==void 0?c.index:i.length,f=i.charCodeAt(d),!c){t=i.slice(u);break}if(f===10&&u===d&&r)s.push(-3),r=void 0;else switch(r&&=(s.push(-5),void 0),u<d&&(s.push(i.slice(u,d)),e+=d-u),f){case 0:s.push(65533),e++;break;case 9:for(l=Math.ceil(e/4)*4,s.push(-2);e++<l;)s.push(-1);break;case 10:s.push(-4),e=1;break;default:r=!0,e=1}u=d+1}return o&&(r&&s.push(-5),t&&s.push(t),s.push(null)),s}}var $_=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function ev(e){return e.replace($_,tv)}function tv(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){let e=n.charCodeAt(1),t=e===120||e===88;return xh(n.slice(t?2:1),t?16:10)}return mh(n)||e}var nv={}.hasOwnProperty;function rv(e,t,n){return t&&typeof t==`object`&&(n=t,t=void 0),iv(n)(X_(Y_(n).document().write(Q_()(e,t,!0))))}function iv(e){let t={transforms:[],canContainEols:[`emphasis`,`fragment`,`heading`,`paragraph`,`strong`],enter:{autolink:a(ye),autolinkProtocol:T,autolinkEmail:T,atxHeading:a(he),blockQuote:a(ue),characterEscape:T,characterReference:T,codeFenced:a(de),codeFencedFenceInfo:o,codeFencedFenceMeta:o,codeIndented:a(de,o),codeText:a(fe,o),codeTextData:T,data:T,codeFlowValue:T,definition:a(pe),definitionDestinationString:o,definitionLabelString:o,definitionTitleString:o,emphasis:a(me),hardBreakEscape:a(ge),hardBreakTrailing:a(ge),htmlFlow:a(_e,o),htmlFlowData:T,htmlText:a(_e,o),htmlTextData:T,image:a(ve),label:o,link:a(ye),listItem:a(xe),listItemValue:f,listOrdered:a(be,d),listUnordered:a(be),paragraph:a(Se),reference:re,referenceString:o,resourceDestinationString:o,resourceTitleString:o,setextHeading:a(he),strong:a(Ce),thematicBreak:a(Te)},exit:{atxHeading:c(),atxHeadingSequence:x,autolink:c(),autolinkEmail:le,autolinkProtocol:ce,blockQuote:c(),characterEscapeValue:E,characterReferenceMarkerHexadecimal:ae,characterReferenceMarkerNumeric:ae,characterReferenceValue:oe,characterReference:se,codeFenced:c(g),codeFencedFence:h,codeFencedFenceInfo:p,codeFencedFenceMeta:m,codeFlowValue:E,codeIndented:c(_),codeText:c(A),codeTextData:E,data:E,definition:c(),definitionDestinationString:b,definitionLabelString:v,definitionTitleString:y,emphasis:c(),hardBreakEscape:c(D),hardBreakTrailing:c(D),htmlFlow:c(O),htmlFlowData:E,htmlText:c(k),htmlTextData:E,image:c(j),label:N,labelText:M,lineEnding:ee,link:c(te),listItem:c(),listOrdered:c(),listUnordered:c(),paragraph:c(),referenceString:ie,resourceDestinationString:P,resourceTitleString:F,resource:ne,setextHeading:c(w),setextHeadingLineSequence:C,setextHeadingText:S,strong:c(),thematicBreak:c()}};ov(t,(e||{}).mdastExtensions||[]);let n={};return r;function r(e){let r={type:`root`,children:[]},a={stack:[r],tokenStack:[],config:t,enter:s,exit:l,buffer:o,resume:u,data:n},c=[],d=-1;for(;++d<e.length;)(e[d][1].type===`listOrdered`||e[d][1].type===`listUnordered`)&&(e[d][0]===`enter`?c.push(d):d=i(e,c.pop(),d));for(d=-1;++d<e.length;){let n=t[e[d][0]];nv.call(n,e[d][1].type)&&n[e[d][1].type].call(Object.assign({sliceSerialize:e[d][2].sliceSerialize},a),e[d][1])}if(a.tokenStack.length>0){let e=a.tokenStack[a.tokenStack.length-1];(e[1]||cv).call(a,void 0,e[0])}for(r.position={start:av(e.length>0?e[0][1].start:{line:1,column:1,offset:0}),end:av(e.length>0?e[e.length-2][1].end:{line:1,column:1,offset:0})},d=-1;++d<t.transforms.length;)r=t.transforms[d](r)||r;return r}function i(e,t,n){let r=t-1,i=-1,a=!1,o,s,c,l;for(;++r<=n;){let t=e[r];switch(t[1].type){case`listUnordered`:case`listOrdered`:case`blockQuote`:t[0]===`enter`?i++:i--,l=void 0;break;case`lineEndingBlank`:t[0]===`enter`&&(o&&!l&&!i&&!c&&(c=r),l=void 0);break;case`linePrefix`:case`listItemValue`:case`listItemMarker`:case`listItemPrefix`:case`listItemPrefixWhitespace`:break;default:l=void 0}if(!i&&t[0]===`enter`&&t[1].type===`listItemPrefix`||i===-1&&t[0]===`exit`&&(t[1].type===`listUnordered`||t[1].type===`listOrdered`)){if(o){let i=r;for(s=void 0;i--;){let t=e[i];if(t[1].type===`lineEnding`||t[1].type===`lineEndingBlank`){if(t[0]===`exit`)continue;s&&(e[s][1].type=`lineEndingBlank`,a=!0),t[1].type=`lineEnding`,s=i}else if(!(t[1].type===`linePrefix`||t[1].type===`blockQuotePrefix`||t[1].type===`blockQuotePrefixWhitespace`||t[1].type===`blockQuoteMarker`||t[1].type===`listItemIndent`))break}c&&(!s||c<s)&&(o._spread=!0),o.end=Object.assign({},s?e[s][1].start:t[1].end),e.splice(s||r,0,[`exit`,o,t[2]]),r++,n++}if(t[1].type===`listItemPrefix`){let i={type:`listItem`,_spread:!1,start:Object.assign({},t[1].start),end:void 0};o=i,e.splice(r,0,[`enter`,i,t[2]]),r++,n++,c=void 0,l=!0}}}return e[t][1]._spread=a,n}function a(e,t){return n;function n(n){s.call(this,e(n),n),t&&t.call(this,n)}}function o(){this.stack.push({type:`fragment`,children:[]})}function s(e,t,n){this.stack[this.stack.length-1].children.push(e),this.stack.push(e),this.tokenStack.push([t,n||void 0]),e.position={start:av(t.start),end:void 0}}function c(e){return t;function t(t){e&&e.call(this,t),l.call(this,t)}}function l(e,t){let n=this.stack.pop(),r=this.tokenStack.pop();if(r)r[0].type!==e.type&&(t?t.call(this,e,r[0]):(r[1]||cv).call(this,e,r[0]));else throw Error("Cannot close `"+e.type+"` ("+Dm({start:e.start,end:e.end})+`): it’s not open`);n.position.end=av(e.end)}function u(){return lh(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function f(e){if(this.data.expectingFirstListItemValue){let t=this.stack[this.stack.length-2];t.start=Number.parseInt(this.sliceSerialize(e),10),this.data.expectingFirstListItemValue=void 0}}function p(){let e=this.resume(),t=this.stack[this.stack.length-1];t.lang=e}function m(){let e=this.resume(),t=this.stack[this.stack.length-1];t.meta=e}function h(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function g(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,``),this.data.flowCodeInside=void 0}function _(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e.replace(/(\r?\n|\r)$/g,``)}function v(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.label=t,n.identifier=Sh(this.sliceSerialize(e)).toLowerCase()}function y(){let e=this.resume(),t=this.stack[this.stack.length-1];t.title=e}function b(){let e=this.resume(),t=this.stack[this.stack.length-1];t.url=e}function x(e){let t=this.stack[this.stack.length-1];t.depth||=this.sliceSerialize(e).length}function S(){this.data.setextHeadingSlurpLineEnding=!0}function C(e){let t=this.stack[this.stack.length-1];t.depth=this.sliceSerialize(e).codePointAt(0)===61?1:2}function w(){this.data.setextHeadingSlurpLineEnding=void 0}function T(e){let t=this.stack[this.stack.length-1].children,n=t[t.length-1];(!n||n.type!==`text`)&&(n=we(),n.position={start:av(e.start),end:void 0},t.push(n)),this.stack.push(n)}function E(e){let t=this.stack.pop();t.value+=this.sliceSerialize(e),t.position.end=av(e.end)}function ee(e){let n=this.stack[this.stack.length-1];if(this.data.atHardBreak){let t=n.children[n.children.length-1];t.position.end=av(e.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(n.type)&&(T.call(this,e),E.call(this,e))}function D(){this.data.atHardBreak=!0}function O(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function k(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function A(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function te(){let e=this.stack[this.stack.length-1];if(this.data.inReference){let t=this.data.referenceType||`shortcut`;e.type+=`Reference`,e.referenceType=t,delete e.url,delete e.title}else delete e.identifier,delete e.label;this.data.referenceType=void 0}function j(){let e=this.stack[this.stack.length-1];if(this.data.inReference){let t=this.data.referenceType||`shortcut`;e.type+=`Reference`,e.referenceType=t,delete e.url,delete e.title}else delete e.identifier,delete e.label;this.data.referenceType=void 0}function M(e){let t=this.sliceSerialize(e),n=this.stack[this.stack.length-2];n.label=ev(t),n.identifier=Sh(t).toLowerCase()}function N(){let e=this.stack[this.stack.length-1],t=this.resume(),n=this.stack[this.stack.length-1];this.data.inReference=!0,n.type===`link`?n.children=e.children:n.alt=t}function P(){let e=this.resume(),t=this.stack[this.stack.length-1];t.url=e}function F(){let e=this.resume(),t=this.stack[this.stack.length-1];t.title=e}function ne(){this.data.inReference=void 0}function re(){this.data.referenceType=`collapsed`}function ie(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.label=t,n.identifier=Sh(this.sliceSerialize(e)).toLowerCase(),this.data.referenceType=`full`}function ae(e){this.data.characterReferenceType=e.type}function oe(e){let t=this.sliceSerialize(e),n=this.data.characterReferenceType,r;n?(r=xh(t,n===`characterReferenceMarkerNumeric`?10:16),this.data.characterReferenceType=void 0):r=mh(t);let i=this.stack[this.stack.length-1];i.value+=r}function se(e){let t=this.stack.pop();t.position.end=av(e.end)}function ce(e){E.call(this,e);let t=this.stack[this.stack.length-1];t.url=this.sliceSerialize(e)}function le(e){E.call(this,e);let t=this.stack[this.stack.length-1];t.url=`mailto:`+this.sliceSerialize(e)}function ue(){return{type:`blockquote`,children:[]}}function de(){return{type:`code`,lang:null,meta:null,value:``}}function fe(){return{type:`inlineCode`,value:``}}function pe(){return{type:`definition`,identifier:``,label:null,title:null,url:``}}function me(){return{type:`emphasis`,children:[]}}function he(){return{type:`heading`,depth:0,children:[]}}function ge(){return{type:`break`}}function _e(){return{type:`html`,value:``}}function ve(){return{type:`image`,title:null,url:``,alt:null}}function ye(){return{type:`link`,title:null,url:``,children:[]}}function be(e){return{type:`list`,ordered:e.type===`listOrdered`,start:null,spread:e._spread,children:[]}}function xe(e){return{type:`listItem`,spread:e._spread,checked:null,children:[]}}function Se(){return{type:`paragraph`,children:[]}}function Ce(){return{type:`strong`,children:[]}}function we(){return{type:`text`,value:``}}function Te(){return{type:`thematicBreak`}}}function av(e){return{line:e.line,column:e.column,offset:e.offset}}function ov(e,t){let n=-1;for(;++n<t.length;){let r=t[n];Array.isArray(r)?ov(e,r):sv(e,r)}}function sv(e,t){let n;for(n in t)if(nv.call(t,n))switch(n){case`canContainEols`:{let r=t[n];r&&e[n].push(...r);break}case`transforms`:{let r=t[n];r&&e[n].push(...r);break}case`enter`:case`exit`:{let r=t[n];r&&Object.assign(e[n],r);break}}}function cv(e,t){throw Error(e?"Cannot close `"+e.type+"` ("+Dm({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+Dm({start:t.start,end:t.end})+`) is open`:"Cannot close document, a token (`"+t.type+"`, "+Dm({start:t.start,end:t.end})+`) is still open`)}function lv(e){let t=this;t.parser=n;function n(n){return rv(n,{...t.data(`settings`),...e,extensions:t.data(`micromarkExtensions`)||[],mdastExtensions:t.data(`fromMarkdownExtensions`)||[]})}}function uv(e,t){let n={type:`element`,tagName:`blockquote`,properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function dv(e,t){let n={type:`element`,tagName:`br`,properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:`text`,value:`
@@ -66,4 +66,4 @@ Error generating stack: `+e.message+`
66
66
  `)||T!==e.length||!t.endsWith(`
67
67
  `)||n!==t.length-1)return null;let r=e.slice(0,-1);if(!t.startsWith(r))return null;let i=t.slice(r.length,-1);return i===``?null:{nextValue:`${e}${i}`,nextCaret:e.length+i.length}},fe=(e,t,n,r=!1)=>{let i=b.current;if(i===null)return{nextValue:e,nextCaret:t};let a=n??i.finalData;return a!==void 0&&(b.current={...i,finalData:a}),a!==void 0&&a!==``&&e.slice(i.start,i.start+i.data.length)===i.data&&e.slice(i.start+i.data.length,i.start+i.data.length+a.length)===a?(b.current=null,{nextValue:`${e.slice(0,i.start)}${e.slice(i.start+i.data.length)}`,nextCaret:Math.max(i.start,t-i.data.length)}):a!==void 0&&a!==``&&e.slice(i.start,i.start+a.length)===a?(b.current=null,{nextValue:e,nextCaret:t}):(r&&a!==void 0&&(b.current=null),{nextValue:e,nextCaret:t})},pe=()=>{let t=h.current,n=t===null||!ne(t)?T:ie(t).end;if(Eb(e,n)!==null){w(!0),E(n),D(0),oe(n);return}let r=n===0?``:e[n-1]??``,i=r!==``&&Cb.test(r)?` @`:`@`,a=`${e.slice(0,n)}${i}${e.slice(n)}`,o=n+i.length;w(!0),E(o),D(0),ce(a,o)};(0,I.useEffect)(()=>{i===void 0||g.current===i||(g.current=i,pe())},[i]),(0,I.useEffect)(()=>{D(0)},[k?.start,k?.query]),(0,I.useLayoutEffect)(()=>{let t=h.current;if(t===null)return;let n=Db(e,k),r=Ab(n);if(!v.current){let i=F(t)!==e,a=t.querySelector(`[data-mention-value]`)!==null,o=(jb(n)||a)&&x.current!==r;(i||o)&&Mb(t,n),x.current=r,e===``&&(y.current=null,b.current=null)}_.current!==null&&(ae(t,_.current),_.current=null)},[k,e]);let me=({clearCompositionSeedOnMiss:e=!1,compositionData:t}={})=>{let n=h.current;if(n===null)return;let r=fe(F(n),ie(n).end,t,e);ce(r.nextValue,r.nextCaret)},he=n=>{if(v.current||Nb(n)){f?.(n);return}if(te){if(n.key===`ArrowDown`){n.preventDefault(),D(e=>(e+1)%A.length);return}if(n.key===`ArrowUp`){n.preventDefault(),D(e=>(e-1+A.length)%A.length);return}if(n.key===`Enter`&&!n.shiftKey&&!n.metaKey||n.key===`Tab`){let e=A[j];if(e===void 0)return;n.preventDefault(),se(e);return}}let i=h.current;if(i!==null&&(n.key===`Backspace`||n.key===`Delete`)){let t=ie(i);if(t.start!==t.end){n.preventDefault(),y.current=null,b.current=null,ce(`${e.slice(0,t.start)}${e.slice(t.end)}`,t.start);return}if(n.key===`Backspace`&&t.start>0&&e[t.start-1]===`
68
68
  `){n.preventDefault(),y.current=null,b.current=null,ce(`${e.slice(0,t.start-1)}${e.slice(t.start)}`,t.start-1);return}if(n.key===`Delete`&&e[t.start]===`
69
- `){n.preventDefault(),y.current=null,b.current=null,ce(`${e.slice(0,t.start)}${e.slice(t.start+1)}`,t.start);return}let r=Ob(e).find(r=>n.key===`Backspace`?t.start>r.start&&t.start<=r.end||t.start===r.end+1&&e[r.end]===` `:t.start>=r.start&&t.start<r.end);if(r!==void 0){n.preventDefault(),y.current=null,b.current=null;let i=n.key===`Backspace`&&t.start===r.end+1&&e[r.end]===` `?r.end+1:r.end;ce(`${e.slice(0,r.start)}${e.slice(i)}`,r.start);return}if(n.key===`Backspace`&&t.start>0){n.preventDefault(),y.current=null,b.current=null,ce(`${e.slice(0,t.start-1)}${e.slice(t.start)}`,t.start-1);return}if(n.key===`Delete`&&t.start<e.length){n.preventDefault(),y.current=null,b.current=null,ce(`${e.slice(0,t.start)}${e.slice(t.start+1)}`,t.start);return}}if(t&&n.key===`Enter`){if(n.preventDefault(),r&&!n.shiftKey&&!n.metaKey){i?.closest(`form`)?.requestSubmit();return}ue();return}if(!t&&n.key===`Enter`){n.preventDefault(),i?.closest(`form`)?.requestSubmit();return}f?.(n)},ge=t=>{if(v.current||Nb(t))return;let n=h.current;if(n===null)return;let r=F(n),i=ie(n).end,a=de(r,i),o=a?.nextValue??r,s=a?.nextCaret??i,c=Pb(t);if(c.inputType===`insertText`&&Fb(c.data)){let t=s-c.data.length,n=`${o.slice(0,t)}${o.slice(s)}`;y.current=t>=0&&n===e?{data:c.data,start:t,end:s,valueBefore:n,createdAt:Date.now()}:null}else y.current=null;let l=fe(o,s,void 0,!0);ce(l.nextValue,l.nextCaret)},_e=e=>{if(v.current||Nb(e))return;let t=Pb(e);if(t.inputType===`insertParagraph`||t.inputType===`insertLineBreak`){ue()&&e.preventDefault();return}y.current=null},ve=t=>{t.preventDefault();let n=t.clipboardData.getData(`text/plain`),r=h.current;if(r===null)return;let i=ie(r);ce(`${e.slice(0,i.start)}${n}${e.slice(i.end)}`,i.start+n.length)},ye=()=>{let e=h.current;e===null||!ne(e)||E(ie(e).end)},be=V(`mention-input-editor`,t?`is-multiline`:`is-singleline`,c),xe=te?(0,L.jsx)(`div`,{className:`mention-menu`,id:S,role:`listbox`,"aria-label":`Mention people`,children:A.map((e,t)=>(0,L.jsx)(`button`,{className:V(`mention-option`,t===j?`is-selected`:void 0),type:`button`,role:`option`,id:`${S}-option-${t}`,"aria-selected":t===j,onMouseEnter:()=>D(t),onMouseDown:t=>{t.preventDefault(),se(e)},children:(0,L.jsxs)(`span`,{className:`mention-option-text`,children:[`@`,e.handle]})},e.id))}):null,Se=a?.current;return(0,L.jsxs)(`span`,{className:V(`mention-input`,t?`is-multiline`:void 0),children:[(0,L.jsx)(`div`,{className:be,contentEditable:!N,role:`textbox`,"aria-label":P,"aria-multiline":t,"aria-disabled":N,"aria-expanded":te,...te?{"aria-controls":S}:{},...M===void 0?{}:{"aria-activedescendant":M},"data-placeholder":m.placeholder,"data-max-rows":n,onBlur:e=>{w(!1),l?.(e)},onClick:e=>{ye(),u?.(e)},onFocus:e=>{w(!0),ye(),d?.(e)},onCompositionStart:()=>{v.current=!0;let e=h.current,t=y.current;if(y.current=null,e!==null&&t!==null&&Date.now()-t.createdAt<500&&F(e).slice(t.start,t.end)===t.data){b.current=t,_.current=null,E(t.start),s(t.valueBefore);let n=Db(t.valueBefore,null);Mb(e,n),x.current=Ab(n),ae(e,t.start)}else b.current=null},onCompositionEnd:e=>{v.current=!1;let t=Pb(e);me(t.data===null?{}:{compositionData:t.data})},onBeforeInput:_e,onInput:ge,onKeyDown:he,onKeyUp:e=>{!v.current&&!Nb(e)&&ye(),p?.(e)},onPaste:ve,ref:h,suppressContentEditableWarning:!0}),Se==null?xe:(0,xl.createPortal)(xe,Se)]})}function zb(e){return(0,L.jsx)(Na,{...e})}function Bb({avatar:e,author:t,time:n,children:r,system:i=!1,className:a,...o}){return(0,L.jsxs)(`article`,{className:V(`message`,i?`is-system`:void 0,a),...o,children:[(0,L.jsxs)(`div`,{className:`message-byline`,children:[e,(0,L.jsxs)(`div`,{className:`message-meta`,children:[(0,L.jsx)(`span`,{className:`message-author`,children:t}),n===void 0?null:(0,L.jsx)(`span`,{className:`message-time`,children:n})]})]}),(0,L.jsx)(`div`,{className:`message-content`,children:(0,L.jsx)(`div`,{className:`message-card`,children:r})})]})}function Vb({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`message-markdown`,t),...n,children:(0,L.jsx)(fb,{components:Qb,children:e})})}function Hb({children:e}){return(0,L.jsx)(`p`,{children:Ib(e)})}function Ub({children:e}){return(0,L.jsx)(`li`,{children:Ib(e)})}function Wb({children:e}){return(0,L.jsx)(`strong`,{children:Ib(e)})}function Gb({children:e}){return(0,L.jsx)(`em`,{children:Ib(e)})}function Kb({children:e}){return(0,L.jsx)(`h1`,{children:Ib(e)})}function qb({children:e}){return(0,L.jsx)(`h2`,{children:Ib(e)})}function Jb({children:e}){return(0,L.jsx)(`h3`,{children:Ib(e)})}function Yb({children:e}){return(0,L.jsx)(`h4`,{children:Ib(e)})}function Xb({children:e}){return(0,L.jsx)(`h5`,{children:Ib(e)})}function Zb({children:e}){return(0,L.jsx)(`h6`,{children:Ib(e)})}var Qb={p:Hb,li:Ub,strong:Wb,em:Gb,h1:Kb,h2:qb,h3:Jb,h4:Yb,h5:Xb,h6:Zb};function $b({name:e,category:t,imageUrl:n,className:r,"aria-label":i,...a}){let o=t===`image`&&n!==void 0;return(0,L.jsx)(`button`,{type:`button`,"aria-label":i??`Open ${t===`image`?`image`:`file`} ${e}`,className:V(`reference-message-card`,t===`image`?`is-image`:`is-file`,r),...a,children:o?(0,L.jsx)(`img`,{className:`reference-message-image`,src:n,alt:e,loading:`lazy`,decoding:`async`}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`span`,{className:`reference-message-icon`,"aria-hidden":`true`,children:t===`image`?(0,L.jsx)(Ca,{}):(0,L.jsx)(ba,{})}),(0,L.jsx)(`span`,{className:`reference-message-main`,children:(0,L.jsx)(`strong`,{children:e})})]})})}function ex({children:e,composer:t,empty:n,title:r=`Chat`,subtitle:i,actions:a,streamRef:o,streamOverlay:s,onStreamScroll:c,dropUploadPending:l=!1,onDropFiles:u,className:d,...f}){return(0,L.jsxs)(yb,{className:V(`panel chat-panel chat-primary`,d),"aria-label":`Group chat`,dropLabel:`Drop references to upload`,pending:l,onFilesUpload:u,...f,children:[(0,L.jsxs)(`div`,{className:`panel-header`,children:[(0,L.jsxs)(`div`,{className:`panel-title`,children:[(0,L.jsx)(_o,{icon:(0,L.jsx)(zb,{"aria-hidden":`true`})}),(0,L.jsxs)(`div`,{className:`panel-title-copy`,children:[(0,L.jsx)(`h3`,{children:r}),i===void 0?null:(0,L.jsx)(`div`,{className:`panel-subtitle`,children:i})]})]}),a===void 0?null:(0,L.jsx)(`div`,{className:`panel-actions`,children:a})]}),(0,L.jsxs)(`div`,{className:`chat-stream-frame`,children:[(0,L.jsx)(`div`,{className:`chat-stream`,ref:o,onScroll:c,children:e??n}),s===void 0?null:(0,L.jsx)(`div`,{className:`chat-stream-overlay`,children:s})]}),t]})}function tx({value:e,placeholder:t,ariaLabel:n,maxLength:r,saving:i=!1,disabled:a=!1,allowEmpty:o=!1,onUpdate:s,className:c,...l}){let u=(0,I.useRef)(null),[d,f]=(0,I.useState)(!1),[p,m]=(0,I.useState)(e),[h,g]=(0,I.useState)(!1),_=i||h,v=!a&&!_&&s!==void 0,y=e.trim(),b=y.length===0;(0,I.useEffect)(()=>{d||m(e)},[d,e]),(0,I.useEffect)(()=>{d&&(u.current?.focus(),u.current?.select())},[d]);let x=()=>{m(e),f(!1)},S=()=>{let e=p.trim();if(!o&&e.length===0){x();return}if(e===y){f(!1);return}s===void 0||_||(g(!0),Promise.resolve(s(e)).then(()=>{f(!1)}).catch(()=>void 0).finally(()=>{g(!1)}))},C=e=>{if(e.key===`Enter`){e.preventDefault(),S();return}e.key===`Escape`&&(e.preventDefault(),x())};return(0,L.jsx)(`span`,{className:V(`inline-editable-text`,b?`is-empty`:void 0,d?`is-editing`:void 0,v?void 0:`is-disabled`,c),...l,children:d?(0,L.jsx)(`input`,{ref:u,className:`inline-editable-text-input`,"aria-label":n,value:p,maxLength:r,disabled:_,onBlur:S,onChange:e=>m(e.currentTarget.value),onKeyDown:C}):(0,L.jsx)(`button`,{className:`inline-editable-text-button`,type:`button`,"aria-label":n,disabled:!v,onClick:()=>f(!0),children:b?t:y})})}var nx={bare:``,quiet:`quiet-button`,pill:`pill-action`,action:`action-button`};function rx({variant:e=`pill`,label:t,pendingLabel:n=t,pending:r=!1,disabled:i=!1,iconOnly:a=!1,accept:o,icon:s,onFileUpload:c,className:l,...u}){let d=i||r||c===void 0,f=r?n:t,p=e=>{let t=e.currentTarget.files?.[0];e.currentTarget.value=``,t!==void 0&&c?.(t)};return(0,L.jsxs)(`label`,{...u,className:V(nx[e],d?`is-disabled`:void 0,l),"aria-disabled":d,"aria-busy":r,"aria-label":u[`aria-label`]??f,title:u.title??f,children:[(0,L.jsx)(`input`,{type:`file`,accept:o,disabled:d,onChange:p}),s??(r?(0,L.jsx)(Oa,{className:`is-spinning`,"aria-hidden":`true`}):(0,L.jsx)(ma,{"aria-hidden":`true`})),a?null:(0,L.jsx)(`span`,{children:f})]})}function ix({value:e,pending:t=!1,uploadPending:n=!1,placeholder:r=`Write a message`,mentionOptions:i,onValueChange:a,onComposerSubmit:o,onFileUpload:s,className:c,...l}){let[u,d]=(0,I.useState)(0),f=(0,I.useRef)(null);return(0,L.jsx)(`form`,{className:V(`composer`,c),"aria-label":`Message composer`,onSubmit:o,...l,children:(0,L.jsxs)(`div`,{className:`composer-input-shell`,ref:f,children:[(0,L.jsx)(Rb,{"aria-label":`Message`,placeholder:r,value:e,multiline:!0,maxRows:8,submitOnEnter:!0,mentionRequestKey:u,menuPortalTargetRef:f,...i===void 0?{}:{mentionOptions:i},onValueChange:a}),(0,L.jsxs)(`div`,{className:`composer-tools`,"aria-label":`Message tools`,children:[(0,L.jsx)(`button`,{className:`composer-tool-button composer-mention-button`,type:`button`,"aria-label":`Mention people`,title:`Mention people`,onClick:()=>d(e=>e+1),children:(0,L.jsx)(ra,{"aria-hidden":`true`})}),(0,L.jsx)(rx,{variant:`bare`,className:`composer-tool-button composer-upload-button`,label:`Upload image`,pendingLabel:`Uploading image`,pending:n,accept:`image/*`,icon:(0,L.jsx)(Ca,{"aria-hidden":`true`}),iconOnly:!0,onFileUpload:s}),(0,L.jsx)(rx,{variant:`bare`,className:`composer-tool-button composer-upload-button`,label:`Upload file`,pendingLabel:`Uploading file`,pending:n,icon:(0,L.jsx)(ba,{"aria-hidden":`true`}),iconOnly:!0,onFileUpload:s}),(0,L.jsx)(`button`,{className:`composer-tool-button composer-send-button`,type:`submit`,disabled:e.trim()===``||t,"aria-label":t?`Sending message`:`Send message`,title:t?`Sending message`:`Send message`,children:(0,L.jsx)(Ka,{"aria-hidden":`true`})})]})]})})}function ax(e){return(0,L.jsx)(Ia,{...e})}var ox={confirmed:(0,L.jsx)(oa,{"aria-hidden":`true`}),question:(0,L.jsx)(ua,{"aria-hidden":`true`}),"task-change":(0,L.jsx)(Za,{"aria-hidden":`true`})};function sx({kind:e,children:t,className:n,...r}){return(0,L.jsxs)(`div`,{className:V(`scratchpad-row`,`is-${e}`,n),...r,children:[(0,L.jsx)(`span`,{className:`scratchpad-marker`,"aria-hidden":`true`,children:ox[e]}),(0,L.jsx)(`p`,{children:t})]})}function cx({compiledTasks:e=[],onOpenCompiledTask:t}){return(0,L.jsxs)(`section`,{className:`scratchpad-submitted-receipt`,"aria-label":`Submitted to Worklist`,children:[(0,L.jsxs)(`div`,{className:`scratchpad-submitted-receipt-header`,children:[(0,L.jsx)(`strong`,{children:`Submitted to Worklist`}),(0,L.jsx)(oa,{className:`scratchpad-submitted-receipt-check`,"aria-hidden":`true`})]}),e.length===0?(0,L.jsxs)(`div`,{className:`scratchpad-submitted-empty`,role:`status`,children:[(0,L.jsx)(Za,{"aria-hidden":`true`}),(0,L.jsxs)(`span`,{className:`scratchpad-submitted-empty-copy`,children:[(0,L.jsx)(`span`,{children:`No new task created`}),(0,L.jsx)(`small`,{children:`This Scratchpad was submitted, but no Worklist task was added.`})]})]}):(0,L.jsx)(`div`,{className:`scratchpad-submitted-task-list`,children:e.map(e=>(0,L.jsxs)(`button`,{className:`scratchpad-submitted-task`,disabled:t===void 0,onClick:()=>t?.(e.taskId),type:`button`,children:[(0,L.jsxs)(`span`,{className:`scratchpad-submitted-task-copy`,children:[(0,L.jsx)(`span`,{children:e.title}),(0,L.jsx)(`small`,{children:e.moduleName})]}),(0,L.jsx)(ca,{"aria-hidden":`true`})]},e.taskId))})]})}function lx({title:e,summary:t,sections:n,updatedLabel:r,updatedLabelPrefix:i=`Updated`,footerNote:a,submitAvailable:o,pages:s,empty:c,actionsDisabled:l=!1,showSubmitAction:u=!0,compact:d=!1,syncPending:f=!1,submitPending:p=!1,onSubmitScratchpad:m,onOpenCompiledTask:h,className:g,..._}){let v=s!==void 0&&s.length>0,y=(0,I.useMemo)(()=>s!==void 0&&s.length>0?s:[{key:`current`,title:e,summary:t,sections:n,...r===void 0?{}:{updatedLabel:r},updatedLabelPrefix:i,...a===void 0?{}:{footerNote:a},...o===void 0?{}:{submitAvailable:o}}],[a,s,n,o,t,e,r,i]),b=Math.max(0,y.length-1),x=y[b]?.key,[S,C]=(0,I.useState)(b);(0,I.useEffect)(()=>{C(b)},[b,x]);let w=Math.min(S,Math.max(0,y.length-1)),T=y[w]??{key:`current`,title:e,summary:t,sections:n,...r===void 0?{}:{updatedLabel:r},updatedLabelPrefix:i,...a===void 0?{}:{footerNote:a},...o===void 0?{}:{submitAvailable:o}},E=f||p,ee=p?`Running`:f?`Refreshing`:`Run`,D=T.submitAvailable??T.sections.length>0,O=l||E||!D||T.submitted===!0;return(0,L.jsx)(go,{title:`Scratchpad`,icon:(0,L.jsx)(ax,{"aria-hidden":`true`}),className:V(`scratchpad-panel`,d?`is-compact`:void 0,g),"aria-busy":E,..._,children:(0,L.jsxs)(`div`,{className:`scratchpad-panel-body scratchpad`,children:[!v&&T.sections.length===0?c??(0,L.jsx)(`div`,{}):(0,L.jsxs)(`div`,{className:V(`scratchpad-content`,T.submitted===!0?`is-submitted`:void 0),children:[(0,L.jsx)(`div`,{className:`scratchpad-head`,children:(0,L.jsx)(`div`,{children:(0,L.jsx)(`h4`,{children:T.title})})}),(0,L.jsx)(`p`,{className:`scratchpad-summary`,children:T.summary}),T.sections.map(e=>(0,L.jsxs)(`section`,{className:`scratchpad-section`,"aria-labelledby":e.id,children:[(0,L.jsx)(`span`,{className:`scratchpad-label`,id:e.id,children:e.label}),(0,L.jsx)(`div`,{className:`scratchpad-list`,children:e.rows.map(t=>(0,L.jsx)(sx,{kind:t.kind,children:t.text},`${e.id}:${t.text}`))})]},e.id)),T.submitted===!0?(0,L.jsx)(cx,{compiledTasks:T.compiledTasks??[],...h===void 0?{}:{onOpenCompiledTask:h}}):null]},T.key),!d&&y.length>1?(0,L.jsx)(`div`,{className:`scratchpad-history-nav`,children:(0,L.jsx)(ho,{"aria-label":`Scratchpad history`,currentPage:w,maxVisible:7,pageAriaLabel:e=>`Scratchpad page ${e+1}`,pageCount:y.length,onPageChange:C})}):null,(0,L.jsxs)(`div`,{className:`scratchpad-footer`,children:[T.footerNote===void 0?null:(0,L.jsx)(`p`,{className:V(`scratchpad-footer-note`,T.footerNote.tone===`error`?`is-error`:void 0),title:T.footerNote.text,children:T.footerNote.text}),d?null:(0,L.jsx)(`div`,{className:`scratchpad-submit-context`,children:T.updatedLabel===void 0?null:(0,L.jsxs)(`span`,{className:`scratchpad-updated-at`,children:[(0,L.jsx)(`span`,{children:T.updatedLabelPrefix??`Updated`}),(0,L.jsx)(`span`,{children:T.updatedLabel})]})}),u?(0,L.jsx)(`div`,{className:`scratchpad-footer-actions`,children:(0,L.jsxs)(wc,{className:V(`scratchpad-submit-button`,E?`is-pending`:void 0),type:`button`,"aria-busy":E,disabled:O,onClick:m,children:[E?(0,L.jsx)(Oa,{"aria-hidden":`true`}):(0,L.jsx)(La,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:ee})]})}):null]})]})})}function ux(e){return e===`done`?(0,L.jsx)(oa,{"aria-hidden":`true`}):e===`failed`?(0,L.jsx)(da,{"aria-hidden":`true`}):e===`pending`?(0,L.jsx)(no,{"aria-hidden":`true`}):e===`running`?(0,L.jsx)(Oa,{"aria-hidden":`true`}):(0,L.jsx)(fa,{"aria-hidden":`true`})}function dx(e){return e===`complete`?`Complete`:e===`failed`?`Failed`:e===`pending`?`Needs input`:`Running`}function fx(e){return(0,L.jsx)(io,{"aria-hidden":`true`,"data-tone":e})}function px({title:e,summary:t,tone:n,steps:r,metaLabel:i,className:a,...o}){let s=i??dx(n),c=o[`aria-label`]??`${e}. ${s}. ${t}`;return(0,L.jsx)(go,{title:e,icon:fx(n),className:V(`execution-progress-panel`,`is-${n}`,a),"aria-label":c,...o,children:(0,L.jsx)(`div`,{className:`execution-progress-body`,children:(0,L.jsx)(`div`,{className:`execution-progress-list`,children:r.map(e=>(0,L.jsxs)(`div`,{className:V(`execution-progress-step`,`is-${e.status}`),children:[(0,L.jsx)(`span`,{className:V(`execution-progress-marker`,`is-${e.status}`),"aria-hidden":`true`,children:ux(e.status)}),(0,L.jsxs)(`span`,{className:`execution-progress-step-content`,children:[(0,L.jsxs)(`span`,{className:`execution-progress-step-title`,children:[(0,L.jsx)(`span`,{className:`execution-progress-step-label`,children:e.label}),e.elapsedLabel===void 0?null:(0,L.jsxs)(`span`,{className:`execution-progress-step-elapsed`,children:[` (`,e.elapsedLabel,`)`]})]}),e.detail===void 0&&e.detailPrefix===void 0?null:(0,L.jsxs)(`span`,{className:`execution-progress-step-detail`,children:[e.detailPrefix===void 0?null:(0,L.jsx)(`span`,{className:`execution-progress-step-detail-prefix`,children:e.detailPrefix}),e.detailPrefix===void 0||e.detail===void 0?null:(0,L.jsx)(`span`,{className:`execution-progress-step-detail-separator`,"aria-hidden":`true`,children:` · `}),e.detail]}),e.activityLabel===void 0?null:(0,L.jsx)(`span`,{className:`execution-progress-step-activity`,children:e.activityLabel}),e.metrics===void 0||e.metrics.length===0?null:(0,L.jsx)(`span`,{className:`execution-progress-step-metrics`,children:e.metrics.map(e=>(0,L.jsx)(`span`,{className:`execution-progress-step-metric`,children:e},e))})]})]},e.id))})})})}function mx({brand:e,projectName:t,meta:n,actions:r,activeTab:i,refreshing:a=!1,onSelectTab:o,onRefresh:s,children:c,className:l,...u}){return(0,L.jsx)(`main`,{className:V(`embedded-project-page`,l),...u,children:(0,L.jsxs)(`section`,{className:`embedded-project-surface`,children:[(0,L.jsxs)(`header`,{className:`embedded-project-header`,children:[(0,L.jsx)(`div`,{className:`embedded-project-brand`,children:e}),(0,L.jsxs)(`div`,{className:`embedded-project-identity`,children:[(0,L.jsx)(`h1`,{children:t}),n===void 0?null:(0,L.jsx)(`p`,{children:n})]}),r===void 0&&s===void 0?null:(0,L.jsxs)(`div`,{className:`embedded-project-actions`,children:[r,s===void 0?null:(0,L.jsx)(Tc,{"aria-label":a?`Refreshing project`:`Refresh project`,className:`embedded-project-refresh`,disabled:a,onClick:s,type:`button`,children:a?(0,L.jsx)(Oa,{"aria-hidden":`true`,className:`is-spinning`}):(0,L.jsx)(Ha,{"aria-hidden":`true`})})]})]}),i===void 0?null:(0,L.jsx)(`nav`,{className:`embedded-project-tabs`,"aria-label":`Project sections`,children:[`project`,`work`,`references`,`artifacts`].map(e=>(0,L.jsx)(`button`,{"aria-current":i===e?`page`:void 0,className:i===e?`is-active`:void 0,onClick:()=>o?.(e),type:`button`,children:e===`project`?`Project`:e===`work`?`Work`:e===`references`?`References`:`Artifacts`},e))}),(0,L.jsx)(`div`,{className:`embedded-project-body`,children:c})]})})}function hx({label:e,summary:t,tone:n=`neutral`,blockers:r=[]}){return(0,L.jsx)(go,{className:`embedded-project-status-panel`,icon:(0,L.jsx)(ea,{"aria-hidden":`true`}),title:`Project status`,action:(0,L.jsx)(Ec,{tone:n,children:e}),children:(0,L.jsxs)(`div`,{className:`embedded-project-status-body`,children:[(0,L.jsx)(`p`,{children:t}),r.length===0?null:(0,L.jsx)(`div`,{className:`embedded-project-blockers`,"aria-label":`Needs attention`,children:r.map(e=>(0,L.jsxs)(`article`,{children:[(0,L.jsx)(no,{"aria-hidden":`true`}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`span`,{children:e.label}),(0,L.jsx)(`strong`,{children:e.title}),(0,L.jsx)(`p`,{children:e.summary})]})]},e.key))})]})})}function gx({tone:e=`neutral`,compact:t=!1,asChild:n=!1,className:r,...i}){return(0,L.jsx)(n?cc:`div`,{className:V(`chat-event-card`,`is-${e}`,t?`is-compact`:void 0,r),...i})}function _x({as:e=`div`,icon:t,title:n,meta:r,action:i,className:a,...o}){return(0,L.jsxs)(e,{className:V(`chat-event-card-header`,a),...o,children:[(0,L.jsx)(vx,{children:t}),(0,L.jsxs)(`span`,{className:`chat-event-card-title`,children:[(0,L.jsx)(`strong`,{children:n}),r===void 0?null:(0,L.jsx)(`span`,{className:`chat-event-card-meta`,children:r})]}),i]})}function vx({className:e,...t}){return(0,L.jsx)(`span`,{className:V(`chat-event-card-status-icon`,e),...t})}function yx({className:e,...t}){return(0,L.jsx)(`div`,{className:V(`chat-event-card-body`,e),...t})}function bx({className:e,...t}){return(0,L.jsx)(`footer`,{className:V(`chat-event-card-footer`,e),...t})}function xx(e){return e===`done`?`success`:e===`failed`?`danger`:e===`pending`?`warning`:`neutral`}function Sx(e){return e===`done`?(0,L.jsx)(oa,{"aria-hidden":`true`}):e===`failed`?(0,L.jsx)(ao,{"aria-hidden":`true`}):(0,L.jsx)(ja,{"aria-hidden":`true`})}function Cx({title:e,summary:t,request:n,messages:r,draft:i,contextLabel:a,defaultOpen:o,readOnly:s=!1,replyCount:c,status:l,statusLabel:u,mentionOptions:d,sendPending:f=!1,submitPending:p=!1,onDraftChange:m,onSendMessage:h,onSubmitRound:g,className:_,...v}){let y=t.trim()===``?n:t,b=a===void 0?y:`${y} (${a})`,[x,S]=(0,I.useState)(o??!0),C=l??(s?`done`:`pending`),w=u??(s?`submitted`:`needs input`),T=c??r.length,E=p||T===0,ee=T===0?`No replies`:`${T} ${T===1?`reply`:`replies`}`,D=xx(C),O=`${w} · ${ee}`,k=(0,L.jsxs)(yx,{className:`chat-clarification-card-body`,children:[(0,L.jsx)(`div`,{className:`chat-event-thread`,children:r.map(e=>(0,L.jsxs)(`article`,{className:`chat-event-message`,children:[e.avatar,(0,L.jsxs)(`div`,{className:`chat-event-message-copy`,children:[(0,L.jsxs)(`div`,{className:`message-meta`,children:[(0,L.jsx)(`span`,{className:`message-author`,children:e.author}),e.time===void 0?null:(0,L.jsx)(`span`,{className:`message-time`,children:e.time})]}),(0,L.jsx)(`p`,{children:(0,L.jsx)(Lb,{children:e.body})})]})]},e.id))}),s?null:(0,L.jsx)(`form`,{className:`chat-event-composer`,"aria-label":`Round reply`,onSubmit:h,children:(0,L.jsxs)(`div`,{className:`composer-input-shell chat-event-composer-input-shell`,children:[(0,L.jsx)(Rb,{type:`text`,"aria-label":`Round message`,value:i,placeholder:`Reply in this round`,multiline:!0,maxRows:4,submitOnEnter:!0,...d===void 0?{}:{mentionOptions:d},onValueChange:m}),(0,L.jsx)(`div`,{className:`composer-tools chat-event-composer-tools`,"aria-label":`Round message tools`,children:(0,L.jsx)(`button`,{className:`composer-tool-button composer-send-button chat-event-send-button`,type:`submit`,disabled:i.trim()===``||f,"aria-label":f?`Sending round message`:`Send round message`,title:f?`Sending round message`:`Send round message`,children:(0,L.jsx)(Ka,{"aria-hidden":`true`})})})]})})]});return(0,L.jsx)(`article`,{className:V(`message is-chat-event`,_),...v,children:s?(0,L.jsx)(gx,{tone:D,asChild:!0,children:(0,L.jsxs)(`details`,{className:`chat-clarification-card`,open:x,"aria-label":b,onToggle:e=>S(e.currentTarget.open),children:[(0,L.jsx)(_x,{as:`summary`,icon:Sx(C),title:e,meta:O,action:(0,L.jsx)(`span`,{className:`chat-event-card-toggle`,"aria-hidden":`true`,children:(0,L.jsx)(sa,{})})}),k]})}):(0,L.jsx)(gx,{tone:D,asChild:!0,children:(0,L.jsxs)(`section`,{className:`chat-clarification-card is-fixed-open`,"aria-label":b,children:[(0,L.jsx)(_x,{icon:Sx(C),title:e,meta:O,tabIndex:-1,action:(0,L.jsxs)(wc,{className:`chat-event-primary-action`,type:`button`,"aria-label":T===0?`Reply before submitting round`:`Submit round`,"aria-busy":p,disabled:E,title:T===0?`Reply before submitting round`:`Submit round`,onClick:g,children:[p?(0,L.jsx)(Oa,{"aria-hidden":`true`}):(0,L.jsx)(oa,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{className:`button-label`,children:p?`Submitting`:`Submit`})]})}),k]})})})}function wx({decision:e,disabled:t,onDecide:n}){let r=e.tone===`primary`?wc:Tc,i=e.decisionId.startsWith(`allow`)?(0,L.jsx)(oa,{"aria-hidden":`true`}):(0,L.jsx)(ao,{"aria-hidden":`true`});return(0,L.jsxs)(r,{type:`button`,className:V(`chat-approval-card-decision`,e.tone===`primary`?`is-primary`:void 0,e.tone===`danger`?`is-danger`:void 0),disabled:t,onClick:()=>n(e.decisionId),children:[i,(0,L.jsx)(`span`,{className:`button-label`,children:e.label})]})}function Tx(e,t){return e===`pending`?`warning`:e===`resolved`?`success`:/expired|cancelled/iu.test(t)?`neutral`:`danger`}function Ex(e){return e===`success`?(0,L.jsx)(oa,{"aria-hidden":`true`}):e===`danger`?(0,L.jsx)(ao,{"aria-hidden":`true`}):e===`neutral`?(0,L.jsx)(pa,{"aria-hidden":`true`}):(0,L.jsx)(Ya,{"aria-hidden":`true`})}function Dx({title:e,summary:t,reason:n,status:r,statusLabel:i,detailLabel:a,detail:o,detailCode:s=!1,decisions:c=[],decisionPending:l=!1,resolutionLabel:u,defaultOpen:d,onDecide:f,className:p,...m}){let[h,g]=(0,I.useState)(d??r===`pending`),_=Tx(r,i),v=[...c].sort((e,t)=>e.tone===t.tone?0:e.tone===`primary`?-1:+(t.tone===`primary`)),y=r===`pending`&&f!==void 0?(0,L.jsx)(bx,{className:`chat-approval-card-actions`,children:v.map(e=>(0,L.jsx)(wx,{decision:e,disabled:l,onDecide:f},e.decisionId))}):null,b=(0,L.jsx)(yx,{className:`chat-approval-card-body`,children:(0,L.jsxs)(`div`,{className:`chat-approval-card-content`,children:[(0,L.jsx)(`p`,{className:`chat-approval-card-summary`,children:t}),n===void 0?null:(0,L.jsx)(`p`,{className:`chat-approval-card-reason`,children:n}),o===void 0?null:(0,L.jsxs)(`div`,{className:`chat-approval-card-detail`,children:[a===void 0?null:(0,L.jsx)(`span`,{className:`chat-approval-card-detail-label`,children:a}),s?(0,L.jsx)(`code`,{className:`chat-approval-card-detail-code`,children:o}):(0,L.jsx)(`span`,{className:`chat-approval-card-detail-text`,children:o})]}),r===`pending`||u===void 0?null:(0,L.jsx)(`p`,{className:`chat-approval-card-resolution`,children:u})]})});return(0,L.jsx)(`article`,{className:V(`message is-chat-event`,p),...m,children:r===`pending`?(0,L.jsx)(gx,{tone:_,asChild:!0,children:(0,L.jsxs)(`section`,{className:`chat-approval-card is-fixed-open`,"aria-label":t,children:[(0,L.jsx)(_x,{icon:Ex(_),title:e,meta:i,tabIndex:-1}),b,y]})}):(0,L.jsx)(gx,{tone:_,asChild:!0,children:(0,L.jsxs)(`details`,{className:`chat-approval-card`,open:h,"aria-label":t,onToggle:e=>g(e.currentTarget.open),children:[(0,L.jsx)(_x,{as:`summary`,icon:Ex(_),title:e,meta:i,action:(0,L.jsx)(`span`,{className:`chat-event-card-toggle`,"aria-hidden":`true`,children:(0,L.jsx)(sa,{})})}),b]})})})}function Ox({state:e,className:t,disabled:n,onClick:r,...i}){let a=e===`retrying`,o=e===`retried`,s=a?`Retrying`:o?`Retried`:`Retry`;return(0,L.jsxs)(Tc,{...i,onClick:r,className:V(`task-retry-action`,t),disabled:n===!0||r===void 0||a||o,"aria-label":s,"aria-busy":a?`true`:void 0,type:`button`,children:[a?(0,L.jsx)(Oa,{className:`is-spinning`,"aria-hidden":`true`}):o?(0,L.jsx)(oa,{"aria-hidden":`true`}):(0,L.jsx)(Wa,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:s})]})}function kx({status:e,title:t,taskId:n,taskTitle:r,summary:i,moduleName:a,finalNote:o,generatedFiles:s=[],errorCode:c,onOpenTask:l,retryState:u,onRetry:d,className:f,...p}){let m=o?.trim()??``,h=i.trim(),g=m.length>0?m:h,_=e===`completed`?`Task completed`:`Task failed`;return(0,L.jsx)(`article`,{className:V(`message is-chat-event is-task-result`,f),...p,children:(0,L.jsxs)(gx,{tone:e===`completed`?`success`:`danger`,className:V(`chat-task-result-card`,`is-${e}`),children:[(0,L.jsxs)(`button`,{className:`chat-task-result-card-open`,disabled:l===void 0,onClick:()=>l?.(n),type:`button`,"aria-label":`${t}: ${r}`,children:[(0,L.jsx)(vx,{"aria-hidden":`true`,children:e===`completed`?(0,L.jsx)(oa,{}):(0,L.jsx)(ao,{})}),(0,L.jsxs)(`span`,{className:`chat-task-result-card-main`,children:[(0,L.jsx)(`span`,{className:`chat-task-result-card-state`,children:_}),(0,L.jsx)(`strong`,{children:r}),a===void 0?null:(0,L.jsx)(`span`,{className:`chat-task-result-card-module`,children:a}),g.length===0?null:(0,L.jsx)(`span`,{className:`chat-task-result-card-summary`,children:g}),c===void 0?null:(0,L.jsx)(`span`,{className:`chat-task-result-card-error-code`,children:c}),s.length===0?null:(0,L.jsx)(`span`,{className:`chat-task-result-card-files`,"aria-label":`Generated files`,children:s.map(e=>(0,L.jsxs)(`span`,{className:`chat-task-result-card-file`,children:[(0,L.jsx)(ba,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:e.name})]},e.path))})]}),(0,L.jsx)(`span`,{className:`chat-task-result-card-arrow`,"aria-hidden":`true`,children:(0,L.jsx)(ca,{})})]}),u===void 0?null:(0,L.jsx)(`footer`,{className:`chat-task-result-card-actions`,children:(0,L.jsx)(Ox,{state:u,onClick:d})})]})})}function Ax({status:e}){return e===`done`?(0,L.jsx)(`span`,{className:`task-check`,"aria-hidden":`true`,children:(0,L.jsx)(oa,{})}):e===`pending`?(0,L.jsx)(`span`,{className:`task-check`,"aria-hidden":`true`,children:(0,L.jsx)(Pa,{})}):e===`failed`?(0,L.jsx)(`span`,{className:`task-check`,"aria-hidden":`true`,children:(0,L.jsx)(ao,{})}):e===`running`?(0,L.jsx)(`span`,{className:`task-check`,"aria-hidden":`true`,children:(0,L.jsx)(Oa,{})}):(0,L.jsx)(`span`,{className:`task-check`,"aria-hidden":`true`})}function jx({title:e,status:t,selected:n=!1,className:r,type:i=`button`,...a}){return(0,L.jsxs)(`button`,{className:V(`task-row`,n?`is-selected`:void 0,`is-${t}`,r),type:i,"aria-current":n?`true`:void 0,...a,children:[(0,L.jsx)(Ax,{status:t}),(0,L.jsx)(`div`,{className:`task-row-main`,children:(0,L.jsx)(`div`,{className:`task-title-line`,children:(0,L.jsx)(`strong`,{children:e})})})]})}function Mx({label:e,value:t,code:n=!1,status:r}){return(0,L.jsxs)(`div`,{className:`detail-row`,children:[(0,L.jsx)(`span`,{children:e}),r===void 0?n?(0,L.jsx)(`code`,{children:t}):(0,L.jsx)(`strong`,{children:t}):(0,L.jsx)(`strong`,{children:(0,L.jsx)(Oc,{status:r,children:t})})]})}function Nx({rows:e}){return(0,L.jsx)(L.Fragment,{children:e.map((e,t)=>(0,I.createElement)(Mx,{...e,key:`${e.label}-${t}`}))})}function Px({...e}){return(0,L.jsx)(jx,{...e})}function Fx({detail:e,placeholder:t,missingTaskId:n,stacked:r=!1}){if(e===void 0){let e=t?.title??(n===void 0?`No task selected`:`Task not found`),i=t?.description??(n===void 0?`Select a task to inspect its contract, latest result, and run history.`:`No task exists for ${n}. Select another task from the Worklist.`);return(0,L.jsxs)(`aside`,{className:V(`task-detail-card`,r?`is-stacked`:void 0),"aria-label":`Selected task details`,children:[(0,L.jsx)(`div`,{className:`task-detail-head`,children:(0,L.jsx)(`h4`,{children:e})}),(0,L.jsx)(`p`,{children:i})]})}return(0,L.jsxs)(`aside`,{className:V(`task-detail-card`,r?`is-stacked`:void 0),"aria-label":`Selected task details`,children:[(0,L.jsxs)(`div`,{className:`task-detail-head`,children:[(0,L.jsx)(Oc,{status:e.status,children:e.status}),(0,L.jsx)(`h4`,{children:e.title})]}),(0,L.jsx)(`p`,{children:e.summary}),(0,L.jsxs)(`section`,{className:`task-detail-section`,"aria-label":`Task contract`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`Task contract`}),(0,L.jsx)(Nx,{rows:e.contractRows})]}),(0,L.jsxs)(`section`,{className:`task-detail-section task-evidence-section`,"aria-label":`Evidence`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`Evidence`}),(0,L.jsx)(Nx,{rows:e.evidenceRows??e.resultRows})]}),e.retryAction===void 0?null:(0,L.jsx)(`div`,{className:`task-detail-retry-row`,children:(0,L.jsx)(Ox,{state:e.retryAction.state,onClick:e.retryAction.onRetry})}),(0,L.jsxs)(`section`,{className:`task-detail-section`,"aria-label":`Run result history`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`Run result history`}),e.runResults.length===0?(0,L.jsx)(`p`,{children:`No run result yet.`}):(0,L.jsx)(`div`,{className:`run-result-list`,children:e.runResults.map(e=>(0,L.jsx)(`article`,{className:`run-result-item`,children:(0,L.jsxs)(`div`,{className:`run-result-item-head`,children:[(0,L.jsxs)(`span`,{children:[(0,L.jsx)(`strong`,{children:e.title}),e.meta===void 0?null:(0,L.jsx)(`small`,{children:e.meta})]}),e.status===void 0?null:(0,L.jsx)(Oc,{status:e.status,children:e.status})]})},e.id))})]})]})}function Ix({modules:e,taskCount:t,detail:n,detailPlaceholder:r,layout:i=`split`,missingTaskId:a,runNote:o,onSelectTask:s,empty:c,className:l,...u}){let d=i===`stacked`;return(0,L.jsx)(go,{title:`Worklist`,icon:(0,L.jsx)(Da,{"aria-hidden":`true`}),action:(0,L.jsx)(`div`,{className:`worklist-header-summary`,children:(0,L.jsx)(`span`,{className:`mini-meta`,children:t===1?`1 task`:`${t} tasks`})}),className:V(`tasks worklist-page-panel`,l),...u,children:(0,L.jsxs)(`div`,{className:V(`worklist-page-body`,d?`is-stacked`:void 0),children:[o===void 0?null:(0,L.jsx)(`p`,{className:`worklist-run-note`,children:o}),e.length===0?(0,L.jsx)(`div`,{className:`worklist-page-empty`,children:c??(0,L.jsx)(`div`,{className:`reference-empty`,children:`No compiled tasks`})}):(0,L.jsxs)(`div`,{className:V(`task-board-body`,d?`is-stacked`:void 0),children:[(0,L.jsx)(`div`,{className:V(`task-list`,d?`is-stacked`:void 0),"aria-label":`Tasks`,children:e.map(e=>(0,L.jsxs)(`div`,{className:`task-section`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:e.label}),e.rows.map(e=>(0,L.jsx)(Px,{title:e.title,status:e.status,onClick:()=>s?.(e.id),...e.selected===void 0?{}:{selected:e.selected}},e.id))]},e.label))}),(0,L.jsx)(Fx,{...n===void 0?{}:{detail:n},...r===void 0?{}:{placeholder:r},...a===void 0?{}:{missingTaskId:a},stacked:d})]})]})})}function Lx({sections:e,statuses:t=[],className:n,...r}){return(0,L.jsxs)(`section`,{className:V(`settings-sheet`,n),"aria-labelledby":`settings-title`,...r,children:[(0,L.jsxs)(`header`,{className:`settings-sheet-head`,children:[(0,L.jsxs)(`div`,{className:`panel-title`,children:[(0,L.jsx)(_o,{icon:(0,L.jsx)(Ja,{"aria-hidden":`true`})}),(0,L.jsx)(`h3`,{id:`settings-title`,children:`Settings`})]}),t.length===0?null:(0,L.jsx)(`div`,{className:`panel-actions`,children:t.map(e=>(0,L.jsx)(Ec,{className:`task-tag`,tone:e.tone,children:e.label},e.label))})]}),e.map(e=>(0,L.jsxs)(`section`,{className:`settings-section`,id:e.id,"aria-label":e.title,children:[(0,L.jsx)(`div`,{className:`settings-section-title`,children:(0,L.jsx)(`h4`,{children:e.title})}),(0,L.jsx)(`div`,{className:`settings-section-body`,children:e.rows.map(e=>(0,L.jsxs)(`div`,{className:`settings-row`,children:[(0,L.jsx)(`span`,{className:`field-label`,children:e.label}),e.value===void 0?(0,L.jsx)(`span`,{}):e.plain===!0?(0,L.jsx)(`div`,{className:`settings-row-value`,children:e.value}):(0,L.jsx)(`strong`,{children:e.value})]},e.label))})]},e.id))]})}function Rx({value:e,options:t,maxLength:n,canEdit:r=!1,discovering:i=!1,saving:a=!1,onDiscover:o,onUpdate:s}){let[c,l]=(0,I.useState)(!1),[u,d]=(0,I.useState)(e),[f,p]=(0,I.useState)(e),m=u.trim(),h=i||a;return(0,I.useEffect)(()=>{c||(d(e),p(e))},[c,e]),!r||s===void 0?(0,L.jsx)(`span`,{className:`settings-model-readonly`,children:e}):c?(0,L.jsxs)(`form`,{className:`settings-model-editor`,"aria-label":`Change model`,onSubmit:e=>{e.preventDefault(),!(m.length===0||m===f||s===void 0)&&Promise.resolve(s(m,f)).then(e=>{e.kind===`saved`?l(!1):e.kind===`stale`&&p(e.currentValue)}).catch(()=>void 0)},children:[(0,L.jsx)(Pc,{autoComplete:`off`,"aria-label":`Model`,value:u,options:t,maxLength:n,maxVisibleOptions:8,disabled:a,onValueChange:d,placeholder:`Choose or enter a model`,autoFocus:!0}),(0,L.jsxs)(`div`,{className:`settings-model-editor-footer`,children:[(0,L.jsx)(`span`,{className:`settings-model-editor-status`,"aria-live":`polite`,children:i?`Loading models…`:`Choose a model or enter its name.`}),(0,L.jsxs)(`div`,{className:`settings-model-editor-actions`,children:[(0,L.jsx)(Tc,{className:`settings-model-editor-action`,type:`button`,disabled:a,onClick:()=>{d(e),p(e),l(!1)},children:`Cancel`}),(0,L.jsx)(wc,{className:`settings-model-editor-action`,type:`submit`,disabled:h||m.length===0||m===f,children:a?`Saving…`:`Save`})]})]})]}):(0,L.jsx)(`button`,{"aria-label":`Change model from ${e}`,className:`settings-value-button settings-model-change-button`,type:`button`,onClick:()=>{d(e),p(e),l(!0),Promise.resolve(o?.()).catch(()=>void 0)},children:e})}function zx({row:e}){return e.category===`image`?(0,L.jsx)(Ca,{"aria-hidden":`true`}):e.canPreview===!1?(0,L.jsx)(va,{"aria-hidden":`true`}):e.selected===!0?(0,L.jsx)(_a,{"aria-hidden":`true`}):e.extension===`md`||e.extension===`txt`?(0,L.jsx)(ya,{"aria-hidden":`true`}):(0,L.jsx)(ba,{"aria-hidden":`true`})}function Bx({row:e,onSelectFile:t}){return(0,L.jsxs)(`button`,{className:V(`reference-row`,e.selected===!0?`is-selected`:void 0),type:`button`,"aria-current":e.selected===!0?`true`:void 0,onClick:()=>t?.(e.path),children:[(0,L.jsx)(`span`,{className:`reference-file-icon`,"aria-hidden":`true`,children:(0,L.jsx)(zx,{row:e})}),(0,L.jsxs)(`span`,{className:`reference-row-main`,children:[(0,L.jsx)(`strong`,{children:e.name}),(0,L.jsx)(`span`,{children:e.meta})]})]})}function Vx({name:e,rows:t,onSelectFile:n}){return(0,L.jsxs)(`details`,{className:`reference-folder-group`,children:[(0,L.jsxs)(`summary`,{className:`reference-folder-head`,children:[(0,L.jsx)(`span`,{className:`reference-file-icon`,"aria-hidden":`true`,children:(0,L.jsx)(Sa,{})}),(0,L.jsxs)(`span`,{className:`reference-row-main`,children:[(0,L.jsx)(`strong`,{children:e}),(0,L.jsxs)(`span`,{children:[t.length,` `,t.length===1?`file`:`files`]})]})]}),(0,L.jsx)(`div`,{className:`reference-folder-files`,children:t.map(e=>(0,L.jsx)(Bx,{row:e,...n===void 0?{}:{onSelectFile:n}},e.path))})]})}function Hx(e){let t=new Map;for(let n of e){if(n.folderGroup===void 0)continue;let e=t.get(n.folderGroup)??[];e.push(n),t.set(n.folderGroup,e)}return[...t.entries()].map(([e,t])=>({name:e,rows:t}))}function Ux({files:e,detail:t,uploadPending:n=!1,fileSortMode:r=`time`,empty:i,beforeContent:a,onSelectFile:o,onUploadFile:s,onDropFiles:c,onFileSortModeChange:l,className:u,...d}){let f=e.filter(e=>e.category===`image`),p=e.filter(e=>e.category!==`image`),m=p.filter(e=>e.folderGroup===void 0),h=Hx(p),g=e=>(0,L.jsx)(`div`,{className:`reference-image-strip`,role:`list`,"aria-label":`Reference images`,onWheel:e=>{Math.abs(e.deltaY)>Math.abs(e.deltaX)&&(e.currentTarget.scrollLeft+=e.deltaY,e.preventDefault())},children:e.map(e=>(0,L.jsxs)(`button`,{className:V(`reference-image-tile`,e.selected===!0?`is-selected`:void 0),type:`button`,"aria-current":e.selected===!0?`true`:void 0,"aria-label":`Open ${e.name}`,onClick:()=>o?.(e.path),children:[e.thumbnailUrl===void 0?(0,L.jsx)(`span`,{className:`reference-image-tile-fallback`,"aria-hidden":`true`,children:(0,L.jsx)(Ca,{})}):(0,L.jsx)(`img`,{src:e.thumbnailUrl,alt:e.name,loading:`lazy`,decoding:`async`}),(0,L.jsx)(`span`,{children:e.name})]},e.path))}),_=e=>e.map(e=>(0,L.jsx)(Bx,{row:e,...o===void 0?{}:{onSelectFile:o}},e.path)),v=c??(s===void 0?void 0:e=>{for(let t of e)s(t)});return(0,L.jsxs)(yb,{className:V(`panel references-panel`,a===void 0?void 0:`has-before-content`,u),"aria-label":`References`,dropLabel:`Drop reference files to upload`,pending:n,onFilesUpload:v,...d,children:[(0,L.jsxs)(`div`,{className:`panel-header`,children:[(0,L.jsxs)(`div`,{className:`panel-title`,children:[(0,L.jsx)(_o,{icon:(0,L.jsx)(ya,{"aria-hidden":`true`})}),(0,L.jsx)(`h3`,{children:`References`})]}),s===void 0?null:(0,L.jsx)(`div`,{className:`panel-actions`,children:(0,L.jsx)(rx,{variant:`action`,className:`reference-upload-button`,label:`Upload`,pendingLabel:`Uploading`,pending:n,onFileUpload:s})})]}),a,(0,L.jsx)(`div`,{className:`reference-board-body`,children:e.length===0?(0,L.jsx)(`div`,{className:`reference-board-empty`,children:i??(0,L.jsx)(`div`,{className:`reference-empty`,children:`No reference files`})}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{className:`reference-list`,"aria-label":`Reference file list`,children:[f.length===0?null:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`div`,{className:`reference-section-label`,children:`Images`}),g(f)]}),p.length===0?null:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{className:`reference-files-head`,children:[(0,L.jsx)(`div`,{className:`reference-section-label`,children:`Files`}),l===void 0?null:(0,L.jsxs)(`div`,{className:`reference-list-toolbar`,role:`toolbar`,"aria-label":`Sort files`,children:[(0,L.jsx)(`button`,{className:V(`reference-sort-button`,r===`time`?`is-active`:void 0),type:`button`,"aria-label":`Sort files by upload time`,"aria-pressed":r===`time`,onClick:()=>l(`time`),children:(0,L.jsx)(pa,{"aria-hidden":`true`})}),(0,L.jsx)(`button`,{className:V(`reference-sort-button`,r===`type`?`is-active`:void 0),type:`button`,"aria-label":`Sort files by type`,"aria-pressed":r===`type`,onClick:()=>l(`type`),children:(0,L.jsx)($a,{"aria-hidden":`true`})})]})]}),_(m),h.map(e=>(0,L.jsx)(Vx,{name:e.name,rows:e.rows,...o===void 0?{}:{onSelectFile:o}},e.name))]})]}),(0,L.jsxs)(`aside`,{className:`reference-detail-card`,"aria-label":`Selected reference content`,children:[(0,L.jsxs)(`div`,{className:`reference-detail-head`,children:[(0,L.jsx)(`h4`,{children:t?.title??`No file selected`}),t?.meta===void 0?null:(0,L.jsx)(`p`,{children:t.meta})]}),(0,L.jsxs)(`div`,{className:`reference-detail-section`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`Summary`}),(0,L.jsx)(`p`,{className:`reference-summary`,children:t?.summary??`Summary not available yet`}),t?.summaryStatus===void 0?null:(0,L.jsx)(`p`,{className:`reference-summary-status`,children:t.summaryStatus})]}),(0,L.jsxs)(`div`,{className:`reference-detail-section`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`Content`}),t?.content===void 0?t?.imageUrl===void 0?(0,L.jsx)(`p`,{className:`reference-content`,children:t?.unavailableReason??`Select a reference file`}):(0,L.jsx)(`img`,{className:`reference-image-preview`,src:t.imageUrl,alt:t.title,decoding:`async`}):(0,L.jsx)(`pre`,{className:`reference-content`,children:(0,L.jsx)(`code`,{children:t.content})})]})]})]})})]})}function Wx(e){return e.status===`loading`?{status:`running`,label:`Loading`}:e.status===`not_declared`?{status:`todo`,label:`No artifact`}:e.status===`invalid`?{status:`failed`,label:`Invalid`}:e.status===`updating`?{status:`running`,label:`Updating`}:e.previewStatus===`ready`?null:e.previewStatus===`starting`?{status:`running`,label:`Starting`}:e.previewStatus===`failed`?{status:`failed`,label:`Failed`}:{status:`todo`,label:`Idle`}}function Gx({state:e,empty:t,emptyWatermark:n,iframeRef:r,onPreviewLoad:i}){if(e.status===`declared`&&e.previewStatus===`ready`&&e.previewUrl!==void 0)return(0,L.jsx)(`iframe`,{className:`artifact-iframe`,src:e.previewUrl,title:`${e.title} artifact preview`,sandbox:`allow-scripts allow-forms allow-same-origin`,referrerPolicy:`no-referrer`,ref:r,onLoad:i});let a,o=`neutral`;return e.status===`loading`?a=`Loading artifact`:e.status===`updating`?a=`Artifact is updating`:e.status===`not_declared`?a=`No artifact`:e.status===`invalid`?(o=`error`,a=`Invalid artifact. ${e.message}`):e.previewStatus===`starting`?a=`Preview is starting`:e.previewStatus===`failed`?(o=`error`,a=e.errorMessage??`Preview failed`):a=`Preview is idle`,(0,L.jsx)(`div`,{className:`artifact-empty-preview`,role:e.status===`invalid`?`alert`:void 0,children:t??(0,L.jsx)(oo,{tone:o,watermark:n,children:a})})}function Kx({state:e,error:t=null,empty:n,emptyWatermark:r,headerAction:i,iframeRef:a,onPreviewLoad:o,className:s,...c}){let l=t===null?e:{status:`invalid`,message:t},u=Wx(l);return(0,L.jsxs)(`section`,{className:V(`panel artifacts-panel`,s),"aria-label":`Artifacts`,...c,children:[(0,L.jsxs)(`div`,{className:`panel-header`,children:[(0,L.jsxs)(`div`,{className:`panel-title`,children:[(0,L.jsx)(_o,{icon:(0,L.jsx)(Fa,{"aria-hidden":`true`})}),(0,L.jsx)(`h3`,{children:`Artifacts`})]}),(0,L.jsxs)(`div`,{className:`panel-actions`,children:[i,u===null?null:(0,L.jsx)(Oc,{status:u.status,children:u.label})]})]}),(0,L.jsx)(`div`,{className:`artifact-board-body`,children:(0,L.jsx)(`div`,{className:`artifact-preview-frame`,"aria-label":`Current artifact`,children:(0,L.jsx)(Gx,{state:l,empty:n,emptyWatermark:r,...a===void 0?{}:{iframeRef:a},...o===void 0?{}:{onPreviewLoad:o}})})})]})}function qx(e){return e.accessibleName?.trim()||e.textExcerpt?.trim()||void 0}function Jx(e){let t=e.role?.trim()||e.tagName.trim()||e.elementKind,n=qx(e);return n===void 0?t:`${t} “${n}”`}function Yx({active:e,pending:t=!1,className:n,...r}){let i=(0,L.jsxs)(L.Fragment,{children:[e?(0,L.jsx)(oa,{"aria-hidden":`true`}):(0,L.jsx)(Ra,{"aria-hidden":`true`}),t?`Submitting…`:e?`Submit comments`:`Comments`]});return e?(0,L.jsx)(wc,{className:V(`artifact-comments-action`,`is-active`,n),type:`button`,...r,children:i}):(0,L.jsx)(Tc,{className:V(`artifact-comments-action`,n),type:`button`,...r,children:i})}function Xx({author:e,avatar:t,comment:n,annotations:r,selectedTarget:i,selectedTime:a,stale:o=!1,bridgeUnavailableReason:s,sendDisabledReason:c,onCommentChange:l,onAddAnnotation:u,onCancelSelection:d,onRemoveAnnotation:f,onReset:p,className:m,...h}){let g=i!==void 0&&n.trim().length>0&&!o;function _(e){e.preventDefault(),g&&u()}function v(e){e.key!==`Enter`||e.shiftKey||e.metaKey||e.nativeEvent.isComposing||(e.preventDefault(),g&&u())}return(0,L.jsxs)(`aside`,{className:V(`artifact-comments-rail`,m),"aria-label":`Artifact comments`,...h,children:[o?(0,L.jsxs)(`div`,{className:`artifact-comments-state is-warning`,role:`status`,children:[(0,L.jsx)(`strong`,{children:`Artifact updated`}),(0,L.jsx)(`span`,{children:`These comments belong to an earlier preview.`}),(0,L.jsx)(Tc,{type:`button`,onClick:p,children:`Start over`})]}):null,s===void 0?null:(0,L.jsxs)(`div`,{className:`artifact-comments-state is-warning`,role:`status`,children:[(0,L.jsx)(`strong`,{children:`Comments unavailable`}),(0,L.jsx)(`span`,{children:s})]}),c===void 0?null:(0,L.jsxs)(`div`,{className:`artifact-comments-state is-warning`,role:`status`,children:[(0,L.jsx)(`strong`,{children:`Comments cannot be submitted yet`}),(0,L.jsx)(`span`,{children:c})]}),r.map((n,r)=>(0,L.jsxs)(Bb,{"aria-label":`Comment ${r+1} on ${Jx(n.target)}`,author:e,avatar:t,className:`artifact-comment-card is-sent`,...n.time===void 0?{}:{time:n.time},children:[(0,L.jsx)(`p`,{children:n.comment}),(0,L.jsx)(Cc,{className:`artifact-comment-dismiss`,label:`Remove comment ${r+1}`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`}),type:`button`,onClick:()=>f(r)})]},n.key)),i===void 0||o?null:(0,L.jsxs)(Bb,{"aria-label":`Comment on ${Jx(i)}`,author:e,avatar:t,className:`artifact-comment-card is-composing`,...a===void 0?{}:{time:a},children:[(0,L.jsx)(Cc,{className:`artifact-comment-dismiss`,label:`Cancel selected element`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`}),type:`button`,onClick:d}),(0,L.jsx)(`form`,{className:`artifact-comment-composer composer`,onSubmit:_,children:(0,L.jsxs)(`div`,{className:`composer-input-shell`,children:[(0,L.jsx)(`textarea`,{"aria-label":`Comment for selected element`,autoFocus:!0,maxLength:1e3,placeholder:`Write a comment`,rows:1,value:n,onChange:e=>l(e.target.value),onKeyDown:v}),(0,L.jsx)(`div`,{className:`composer-tools`,children:(0,L.jsx)(`button`,{"aria-label":`Add comment`,className:`composer-tool-button composer-send-button`,disabled:!g,title:`Add comment`,type:`submit`,children:(0,L.jsx)(Ka,{"aria-hidden":`true`})})})]})})]})]})}function Zx({artifactTitle:e,summary:t,annotations:n,onViewAnnotation:r,className:i,...a}){let o=t?.trim()||n[0]?.comment.trim()||`Artifact feedback`;return(0,L.jsxs)(`details`,{className:V(`artifact-feedback-card`,i),...a,children:[(0,L.jsxs)(`summary`,{children:[(0,L.jsx)(Ma,{"aria-hidden":`true`}),(0,L.jsxs)(`span`,{className:`artifact-feedback-card-heading`,children:[(0,L.jsx)(`strong`,{children:e}),(0,L.jsxs)(`span`,{children:[n.length,` `,n.length===1?`note`:`notes`]}),(0,L.jsx)(`small`,{children:o})]}),(0,L.jsx)(sa,{className:`artifact-feedback-card-chevron`,"aria-hidden":`true`})]}),(0,L.jsxs)(`div`,{className:`artifact-feedback-card-body`,children:[t?.trim()?(0,L.jsx)(`p`,{className:`artifact-feedback-card-summary`,children:t}):null,(0,L.jsx)(`ol`,{children:n.map((e,t)=>(0,L.jsxs)(`li`,{children:[(0,L.jsx)(`span`,{className:`artifact-feedback-note-index`,children:t+1}),(0,L.jsxs)(`span`,{className:`artifact-feedback-note-copy`,children:[(0,L.jsx)(`strong`,{children:Jx(e.target)}),(0,L.jsx)(`small`,{children:e.documentUrl}),(0,L.jsx)(`span`,{children:e.comment}),e.canView&&r!==void 0?(0,L.jsxs)(`button`,{type:`button`,onClick:()=>r(t),children:[(0,L.jsx)(ka,{"aria-hidden":`true`}),`View in Artifact`]}):null]})]},`${e.documentUrl}:${t}`))})]})]})}function Qx({row:e}){return e.selected===!0?(0,L.jsx)(_a,{"aria-hidden":`true`}):(0,L.jsx)(Xa,{"aria-hidden":`true`})}function $x({skills:e,communityLinks:t=[],detail:n,uploadPending:r=!1,deletePending:i=!1,empty:a,onSelectSkill:o,onUploadSkill:s,onDeleteSkill:c,className:l,...u}){let d=e.find(e=>e.selected===!0)?.name,f=t.length>0;return(0,L.jsxs)(`section`,{className:V(`panel references-panel skills-panel`,l),"aria-label":`Skills`,...u,children:[(0,L.jsxs)(`div`,{className:`panel-header`,children:[(0,L.jsxs)(`div`,{className:`panel-title`,children:[(0,L.jsx)(_o,{icon:(0,L.jsx)(Xa,{"aria-hidden":`true`})}),(0,L.jsx)(`h3`,{children:`Skills`})]}),(0,L.jsx)(`div`,{className:`panel-actions`,children:(0,L.jsx)(rx,{variant:`action`,className:`reference-upload-button`,label:`Upload`,pendingLabel:`Uploading`,pending:r,accept:`.zip,application/zip,application/x-zip-compressed`,onFileUpload:s})})]}),(0,L.jsx)(`div`,{className:`reference-board-body`,children:e.length===0&&!f?(0,L.jsx)(`div`,{className:`reference-board-empty`,children:a??(0,L.jsx)(`div`,{className:`reference-empty`,children:`No skills`})}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{className:`reference-list`,"aria-label":`Skill list`,children:[f?(0,L.jsxs)(`div`,{className:`skill-community-section`,"aria-label":`Skill communities`,children:[(0,L.jsx)(`div`,{className:`reference-section-label`,children:`Skill communities`}),(0,L.jsx)(`div`,{className:`skill-community-grid`,children:t.map(e=>(0,L.jsxs)(`a`,{className:`skill-community-card`,href:e.href,target:`_blank`,rel:`noreferrer`,children:[(0,L.jsx)(`span`,{className:`skill-community-card-icon`,"aria-hidden":`true`,children:(0,L.jsx)(Ea,{})}),(0,L.jsx)(`span`,{className:`skill-community-card-main`,children:(0,L.jsx)(`strong`,{children:e.title})})]},e.href))})]}):null,e.length===0?null:(0,L.jsx)(`div`,{className:`reference-section-label`,children:`User skills`}),e.map(e=>(0,L.jsxs)(`button`,{className:V(`reference-row`,e.selected===!0?`is-selected`:void 0),type:`button`,"aria-label":`Select skill ${e.name}`,"aria-current":e.selected===!0?`true`:void 0,onClick:()=>o?.(e.name),children:[(0,L.jsx)(`span`,{className:`reference-file-icon`,"aria-hidden":`true`,children:(0,L.jsx)(Qx,{row:e})}),(0,L.jsxs)(`span`,{className:`reference-row-main`,children:[(0,L.jsx)(`strong`,{children:e.name}),(0,L.jsx)(`span`,{children:e.shortDescription??e.description})]})]},e.name))]}),(0,L.jsx)(`aside`,{className:`reference-detail-card`,"aria-label":`Selected skill content`,children:e.length===0?(0,L.jsx)(`div`,{className:`reference-board-empty`,children:a??(0,L.jsx)(`div`,{className:`reference-empty`,children:`No skills`})}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{className:`reference-detail-head skill-detail-head`,children:[(0,L.jsxs)(`div`,{className:`skill-detail-title`,children:[(0,L.jsx)(`h4`,{children:n?.title??`No skill selected`}),n?.description===void 0?null:(0,L.jsx)(`p`,{children:n.description}),n?.updatedLabel===void 0?null:(0,L.jsx)(`p`,{children:n.updatedLabel})]}),d===void 0||c===void 0?null:(0,L.jsxs)(Tc,{className:`skill-delete-button`,type:`button`,disabled:i,"aria-busy":i,onClick:()=>c(d),children:[(0,L.jsx)(to,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:i?`Deleting`:`Delete`})]})]}),(0,L.jsxs)(`div`,{className:`reference-detail-section`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`SKILL.md`}),n?.skillMd===void 0?(0,L.jsx)(`p`,{className:`reference-content`,children:n?.unavailableReason??`Select a skill`}):(0,L.jsx)(`pre`,{className:`reference-content`,children:(0,L.jsx)(`code`,{"aria-label":`Skill markdown for ${n.title}`,children:n.skillMd})})]})]})})]})})]})}function eS({label:e,children:t}){return(0,L.jsxs)(`section`,{className:`timeline-trace-section`,children:[(0,L.jsx)(`span`,{className:`timeline-trace-label`,children:e}),(0,L.jsx)(`div`,{className:`timeline-trace-section-body`,children:t})]})}function tS(e){return e.replaceAll(`_`,` `)}function nS(e){return e===`passed`?`success`:e===`failed`?`error`:`warning`}function rS(e){return e.status===`promoted`?`success`:e.status===`not_promoted`?`error`:`neutral`}function iS(e){if(e.skipReasonSummary!==void 0)return e.skipReasonSummary;switch(e.checks){case`passed`:return`All validation checks passed.`;case`failed`:return`Validation checks failed.`;case`skipped`:return`Validation was skipped.`}}function aS(e){if(e.summary!==void 0)return e.summary;switch(e.status){case`promoted`:return`Changes were promoted after verification.`;case`not_promoted`:return`Changes were not promoted.`;case`not_attempted`:return`Promotion was not attempted.`}}function oS(e){switch(e){case`added`:return`+`;case`modified`:return`~`;case`deleted`:return`-`;case`renamed`:return`~`;case`unknown`:return`?`}}var sS=3;function cS({expanded:e,collapsedLabel:t,expandedLabel:n,onClick:r}){return(0,L.jsxs)(`button`,{"aria-expanded":e,className:V(`timeline-trace-more`,e&&`is-expanded`),onClick:r,type:`button`,children:[(0,L.jsx)(`span`,{children:e?n:t}),(0,L.jsx)(sa,{"aria-hidden":`true`})]})}function lS({expanded:e,hiddenCount:t,label:n,onClick:r}){return t<=0?null:(0,L.jsx)(cS,{collapsedLabel:`Show ${t} more ${n}${t===1?``:`s`}`,expanded:e,expandedLabel:`Show fewer ${n}s`,onClick:r})}function uS(e){let t=[];return(e.origin!==void 0||e.decisions!==void 0||e.clarification!==void 0)&&t.push({id:`context`,label:`Context`,tone:`neutral`}),e.contract!==void 0&&t.push({id:`contract`,label:`Contract`,tone:`neutral`}),(e.result!==void 0||e.changes!==void 0)&&t.push({id:`result`,label:`Result`,tone:e.tone}),e.verification!==void 0&&t.push({id:`checks`,label:`Checks`,tone:nS(e.verification.checks)}),e.promotion!==void 0&&t.push({id:`promotion`,label:`Promotion`,tone:rS(e.promotion)}),e.checkpoint!==void 0&&t.push({id:`checkpoint`,label:`Checkpoint`,tone:e.tone}),t}function dS({trace:e}){let t=uS(e),n=e.links.filter(e=>e.onClick!==void 0),[r,i]=(0,I.useState)(()=>new Set),a=r.has(`origin`),o=r.has(`decisions`),s=r.has(`clarification-answers`),c=r.has(`scope`),l=r.has(`changes`),u=r.has(`checkpoint`),d=r.has(`generated-files`),f=e.origin?.snippets??[],p=e.decisions===void 0||o?e.decisions??[]:e.decisions.slice(0,sS),m=e.clarification?.answers===void 0||s?e.clarification?.answers??[]:e.clarification.answers.slice(0,sS),h=e.contract===void 0||c?e.contract?.scope??[]:e.contract.scope.slice(0,sS),g=e.checkpoint===void 0||u?e.checkpoint?.items??[]:e.checkpoint.items.slice(0,sS),_=e.checkpoint?.generatedFiles===void 0||d?e.checkpoint?.generatedFiles??[]:e.checkpoint.generatedFiles.slice(0,sS);function v(e){i(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}return(0,L.jsxs)(`div`,{className:V(`timeline-trace-card`,`is-${e.tone}`),children:[e.summary===void 0||e.result!==void 0?null:(0,L.jsx)(`p`,{className:`timeline-trace-summary`,children:e.summary}),t.length===0?null:(0,L.jsx)(`ol`,{className:`timeline-trace-path`,"aria-label":`Recorded task trace`,children:t.map(e=>(0,L.jsxs)(`li`,{className:`is-${e.tone}`,children:[(0,L.jsx)(`span`,{"aria-hidden":`true`}),(0,L.jsx)(`strong`,{children:e.label})]},e.id))}),e.origin===void 0?null:(0,L.jsxs)(eS,{label:`Origin`,children:[e.origin.title===void 0?null:(0,L.jsx)(`strong`,{className:`timeline-trace-title`,children:e.origin.title}),e.origin.summary===void 0?null:(0,L.jsx)(`p`,{children:e.origin.summary}),e.origin.unavailableReason===void 0?null:(0,L.jsx)(`small`,{className:`timeline-trace-muted`,children:e.origin.unavailableReason}),f.length>0?(0,L.jsx)(cS,{collapsedLabel:`Show ${f.length} source message${f.length===1?``:`s`}`,expanded:a,expandedLabel:`Show fewer source messages`,onClick:()=>v(`origin`)}):e.origin.sourceCount===void 0?null:(0,L.jsxs)(`small`,{className:`timeline-trace-muted`,children:[e.origin.sourceCount,` source message`,e.origin.sourceCount===1?``:`s`]}),!a||f.length===0?null:(0,L.jsx)(`ul`,{className:`timeline-trace-snippet-list`,children:f.map(e=>(0,L.jsx)(`li`,{className:`timeline-trace-snippet`,children:e.onClick===void 0?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`span`,{children:[e.author,` · `,e.createdAt]}),(0,L.jsx)(`p`,{children:e.body})]}):(0,L.jsxs)(`button`,{className:`timeline-trace-snippet-button`,onClick:e.onClick,type:`button`,children:[(0,L.jsxs)(`span`,{children:[e.author,` · `,e.createdAt]}),(0,L.jsx)(`p`,{children:e.body})]})},e.id))})]}),e.decisions===void 0||e.decisions.length===0?null:(0,L.jsxs)(eS,{label:`Accepted Context`,children:[(0,L.jsx)(`ul`,{className:`timeline-trace-list`,children:p.map(e=>(0,L.jsxs)(`li`,{children:[e.title===void 0?null:(0,L.jsx)(Ec,{tone:`neutral`,children:e.title}),(0,L.jsx)(`span`,{children:e.summary})]},e.id))}),(0,L.jsx)(lS,{expanded:o,hiddenCount:Math.max(e.decisions.length-sS,0),label:`context item`,onClick:()=>v(`decisions`)})]}),e.clarification===void 0?null:(0,L.jsxs)(eS,{label:`Clarification`,children:[e.clarification.title===void 0?null:(0,L.jsx)(`strong`,{className:`timeline-trace-title`,children:e.clarification.title}),e.clarification.summary===void 0?null:(0,L.jsx)(`p`,{children:e.clarification.summary}),e.clarification.request===void 0?null:(0,L.jsx)(`p`,{children:e.clarification.request}),e.clarification.status===void 0&&e.clarification.answerCount===void 0?null:(0,L.jsxs)(`div`,{className:`timeline-trace-inline`,children:[e.clarification.status===void 0?null:(0,L.jsx)(Ec,{tone:e.clarification.status===`active`?`warning`:`success`,children:e.clarification.status===`active`?`needs input`:`resolved`}),e.clarification.answerCount===void 0?null:(0,L.jsxs)(`small`,{className:`timeline-trace-muted`,children:[e.clarification.answerCount,` answer`,e.clarification.answerCount===1?``:`s`]})]}),e.clarification.answers===void 0||e.clarification.answers.length===0?null:(0,L.jsx)(`ul`,{className:`timeline-trace-snippet-list`,children:m.map(e=>(0,L.jsx)(`li`,{className:`timeline-trace-snippet`,children:e.onClick===void 0?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`span`,{children:[e.author,` · `,e.createdAt]}),(0,L.jsx)(`p`,{children:e.body})]}):(0,L.jsxs)(`button`,{className:`timeline-trace-snippet-button`,onClick:e.onClick,type:`button`,children:[(0,L.jsxs)(`span`,{children:[e.author,` · `,e.createdAt]}),(0,L.jsx)(`p`,{children:e.body})]})},e.id))}),e.clarification.answers===void 0?null:(0,L.jsx)(lS,{expanded:s,hiddenCount:Math.max(e.clarification.answers.length-sS,0),label:`answer`,onClick:()=>v(`clarification-answers`)})]}),e.contract===void 0?null:(0,L.jsxs)(eS,{label:`Contract`,children:[(0,L.jsx)(`p`,{children:e.contract.goal}),h.length===0?null:(0,L.jsx)(`ul`,{className:`timeline-trace-list is-bulleted`,children:h.map((e,t)=>(0,L.jsx)(`li`,{children:(0,L.jsx)(`span`,{children:e})},`scope-${t}`))}),(0,L.jsx)(lS,{expanded:c,hiddenCount:Math.max(e.contract.scope.length-sS,0),label:`scope item`,onClick:()=>v(`scope`)}),c&&e.contract.truncated===!0?(0,L.jsx)(`small`,{className:`timeline-trace-muted`,children:`Additional scope items are outside this bounded audit preview.`}):null]}),e.result===void 0?null:(0,L.jsxs)(eS,{label:`Result`,children:[(0,L.jsx)(`p`,{children:e.result.summary}),e.result.errorCode===void 0?null:(0,L.jsx)(`code`,{className:`timeline-trace-code`,children:e.result.errorCode})]}),e.changes===void 0?null:(0,L.jsxs)(eS,{label:`Changes`,children:[e.changes.items.length===0?(0,L.jsx)(`p`,{className:`timeline-trace-muted`,children:`No repo changes recorded.`}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(cS,{collapsedLabel:`Show ${e.changes.items.length} file change${e.changes.items.length===1?``:`s`}`,expanded:l,expandedLabel:`Show fewer file changes`,onClick:()=>v(`changes`)}),l?(0,L.jsx)(`ul`,{className:`timeline-trace-diff-list`,children:e.changes.items.map(e=>(0,L.jsxs)(`li`,{className:`is-${e.status}`,children:[(0,L.jsx)(`span`,{className:`timeline-trace-diff-mark`,children:oS(e.status)}),(0,L.jsx)(`code`,{children:e.previousPath===void 0?e.path:`${e.previousPath} -> ${e.path}`})]},`${e.status}:${e.path}`))}):null]}),l&&e.changes.totalCount>e.changes.items.length?(0,L.jsxs)(`small`,{className:`timeline-trace-muted`,children:[e.changes.totalCount-e.changes.items.length,` additional files are outside this bounded audit preview.`]}):null]}),e.verification===void 0?null:(0,L.jsx)(eS,{label:`Verification`,children:(0,L.jsxs)(`div`,{className:`timeline-trace-inline`,children:[(0,L.jsx)(Ec,{tone:nS(e.verification.checks),children:tS(e.verification.checks)}),(0,L.jsx)(`p`,{children:iS(e.verification)})]})}),e.promotion===void 0?null:(0,L.jsx)(eS,{label:`Promotion`,children:(0,L.jsxs)(`div`,{className:`timeline-trace-inline`,children:[(0,L.jsx)(Ec,{tone:rS(e.promotion),children:tS(e.promotion.status)}),(0,L.jsx)(`p`,{children:aS(e.promotion)})]})}),e.checkpoint===void 0?null:(0,L.jsxs)(eS,{label:`Checkpoint`,children:[(0,L.jsxs)(`div`,{className:`timeline-trace-counters`,children:[(0,L.jsxs)(`span`,{children:[e.checkpoint.counters.completed,` completed`]}),(0,L.jsxs)(`span`,{children:[e.checkpoint.counters.failed,` failed`]}),(0,L.jsxs)(`span`,{children:[e.checkpoint.counters.remaining,` remaining`]})]}),(0,L.jsx)(`ul`,{className:`timeline-trace-list`,children:g.map(e=>(0,L.jsxs)(`li`,{children:[(0,L.jsx)(Ec,{tone:e.status===`done`?`success`:`error`,children:e.status===`done`?`done`:`failed`}),(0,L.jsx)(`strong`,{children:e.title}),(0,L.jsx)(`span`,{children:e.summary})]},e.id))}),(0,L.jsx)(lS,{expanded:u,hiddenCount:Math.max(e.checkpoint.items.length-sS,0),label:`checkpoint item`,onClick:()=>v(`checkpoint`)}),e.checkpoint.generatedFiles===void 0||e.checkpoint.generatedFiles.length===0?null:(0,L.jsx)(`ul`,{className:`timeline-trace-file-list`,children:_.map(e=>(0,L.jsxs)(`li`,{children:[(0,L.jsx)(`strong`,{children:e.name}),(0,L.jsx)(`code`,{children:e.path})]},e.id))}),e.checkpoint.generatedFiles===void 0?null:(0,L.jsx)(lS,{expanded:d,hiddenCount:Math.max(e.checkpoint.generatedFiles.length-sS,0),label:`generated file`,onClick:()=>v(`generated-files`)}),(u||d)&&e.checkpoint.truncated===!0?(0,L.jsx)(`small`,{className:`timeline-trace-muted`,children:`Additional checkpoint evidence is outside this bounded audit preview.`}):null]}),n.length===0?null:(0,L.jsx)(eS,{label:`Links`,children:(0,L.jsx)(`div`,{className:`timeline-trace-links`,children:n.map(e=>(0,L.jsxs)(Tc,{className:`timeline-trace-link`,onClick:e.onClick,type:`button`,children:[(0,L.jsx)(ga,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:e.label})]},e.id))})})]})}function fS({item:e,expanded:t,active:n,onActivate:r,onToggle:i}){let a=e.trace,o=a!==void 0,s=e.tone??`neutral`,c=s===`error`?(0,L.jsx)(ao,{"aria-hidden":`true`}):s===`warning`?(0,L.jsx)(Pa,{"aria-hidden":`true`}):s===`sync`?(0,L.jsx)(Oa,{"aria-hidden":`true`}):(0,L.jsx)(oa,{"aria-hidden":`true`});return(0,L.jsxs)(`li`,{className:V(`timeline-event-item`,o?`has-trace`:void 0,t?`is-expanded`:void 0,n?`is-current`:void 0,e.tone===void 0?void 0:`is-${e.tone}`),id:`timeline-event-${e.id}`,children:[(0,L.jsx)(`time`,{className:`timeline-event-time`,children:e.occurredAt}),(0,L.jsx)(`div`,{className:`timeline-event-marker`,"aria-hidden":`true`}),(0,L.jsxs)(`div`,{className:`timeline-event-main`,children:[(0,L.jsxs)(`button`,{"aria-expanded":o?t:void 0,className:`timeline-event-toggle`,disabled:!o,onClick:()=>{r(),i()},type:`button`,children:[(0,L.jsx)(`span`,{className:V(`timeline-event-status-icon`,`is-${s}`),"aria-hidden":`true`,children:c}),(0,L.jsxs)(`span`,{className:`timeline-event-copy`,children:[(0,L.jsx)(`span`,{className:`timeline-event-stage`,children:e.stageLabel??(e.kind===`checkpoint`?`Checkpoint`:`Task event`)}),(0,L.jsxs)(`span`,{className:`timeline-event-title-line`,children:[(0,L.jsx)(`h4`,{children:e.taskTitle??e.title}),e.tokenLabel===void 0?null:(0,L.jsx)(`span`,{className:`timeline-event-token`,children:e.tokenLabel})]})]}),o?(0,L.jsx)(sa,{className:`timeline-event-chevron`,"aria-hidden":`true`}):null]}),a!==void 0&&t?(0,L.jsx)(dS,{trace:a}):null]})]})}function pS(e){let t=new Map;for(let n of e){let e=n.taskId===void 0?`event:${n.id}`:`task:${n.taskId}`,r=t.get(e);r===void 0?t.set(e,{id:e,title:n.taskTitle??n.title,...n.taskId===void 0?{}:{taskId:n.taskId},items:[n]}):r.items.push(n)}return[...t.values()]}function mS({tokenOverview:e,items:t,scoreUnits:n=[],empty:r,defaultExpandedItemIds:i,className:a,...o}){let[s,c]=(0,I.useState)(()=>new Set(i??[])),[l,u]=(0,I.useState)(()=>n.at(-1)?.id),[d,f]=(0,I.useState)(0),p=(0,I.useRef)(null),m=pS(t),h=new Set(t.flatMap(e=>e.taskId===void 0?[]:[e.taskId])).size;(0,I.useEffect)(()=>{if(n.length===0){u(void 0);return}(l===void 0||!n.some(e=>e.id===l))&&u(n.at(-1)?.id)},[l,n]),(0,I.useEffect)(()=>{let e=p.current;if(e===null)return;let t=e;t.scrollLeft=t.scrollWidth;function n(e){if(Math.abs(e.deltaY)<=Math.abs(e.deltaX))return;let n=Math.max(0,t.scrollWidth-t.clientWidth),r=Math.min(n,Math.max(0,t.scrollLeft+e.deltaY));r!==t.scrollLeft&&(e.preventDefault(),t.scrollLeft=r)}return t.addEventListener(`wheel`,n,{passive:!1}),()=>t.removeEventListener(`wheel`,n)},[n.length]),(0,I.useEffect)(()=>{let e=p.current;if(e===null)return;let t=()=>f(e.clientWidth);if(t(),typeof ResizeObserver>`u`)return window.addEventListener(`resize`,t),()=>window.removeEventListener(`resize`,t);let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[n.length]);function g(e,t=!1){u(e),t&&(c(t=>new Set(t).add(e)),window.requestAnimationFrame(()=>{document.getElementById(`timeline-event-${e}`)?.scrollIntoView({behavior:`smooth`,block:`center`})}))}function _(e){c(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}return(0,L.jsx)(go,{className:V(`timeline-panel`,a),title:`Timeline`,icon:(0,L.jsx)(aa,{"aria-hidden":`true`}),...o,children:(0,L.jsxs)(`div`,{className:`timeline-board-body`,children:[(0,L.jsxs)(`section`,{className:`timeline-events`,"aria-label":`Project timeline`,children:[(0,L.jsx)(`div`,{className:`timeline-audit-header`,children:(0,L.jsxs)(`div`,{className:`timeline-audit-intro`,children:[(0,L.jsx)(`h4`,{children:`Task traceability`}),(0,L.jsxs)(`div`,{className:`timeline-audit-meta`,"aria-label":`Timeline record summary`,children:[(0,L.jsx)(`span`,{children:h===1?`1 task`:`${h} tasks`}),(0,L.jsx)(`span`,{children:t.length===1?`1 record`:`${t.length} records`})]})]})}),t.length===0?r:(0,L.jsx)(`div`,{className:`timeline-task-groups`,children:m.map(e=>(0,L.jsxs)(`section`,{className:`timeline-task-group`,"aria-label":e.title,children:[(0,L.jsxs)(`header`,{className:`timeline-task-group-head`,children:[(0,L.jsx)(`span`,{children:e.taskId===void 0?`Project record`:`Task trace`}),(0,L.jsx)(`strong`,{children:e.title})]}),(0,L.jsx)(`ol`,{className:`timeline-event-list`,children:e.items.map(e=>(0,L.jsx)(fS,{active:l===e.id,expanded:s.has(e.id),item:e,onActivate:()=>g(e.id),onToggle:()=>_(e.id)},e.id))})]},e.id))})]}),(0,L.jsxs)(`section`,{className:`timeline-overview`,"aria-label":`Timeline score and token usage`,children:[n.length===0?null:(0,L.jsx)(`div`,{className:`timeline-score-index`,ref:p,role:`group`,"aria-label":`Timeline score index`,children:(0,L.jsx)(us,{"aria-label":`Timeline event score`,...l===void 0?{}:{activeUnitId:l},edgePadding:0,minimumWidth:d,onUnitSelect:e=>g(e,!0),openingBarline:`double`,openingClef:`treble`,horizontalSpacingScale:hs,reveal:!0,scale:ps,units:n})}),(0,L.jsxs)(`div`,{className:`timeline-overview-token`,"aria-label":`Total tokens`,children:[(0,L.jsx)(`span`,{children:`Total tokens`}),(0,L.jsx)(`strong`,{children:e.totalLabel})]})]})]})})}function hS(e){let t=(0,I.useId)();return(0,L.jsxs)(`section`,{className:`reference-connections`,"aria-label":`External References`,children:[(0,L.jsx)(`strong`,{children:`External References`}),(0,L.jsx)(`p`,{children:`Originals stay in Feishu. Tutti reads them when needed. Project files are listed below.`}),e.canManage?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`form`,{onSubmit:t=>{t.preventDefault(),e.onConnect()},children:[(0,L.jsxs)(`label`,{children:[(0,L.jsx)(`span`,{children:`Feishu document / file link or Docx ID`}),(0,L.jsx)(Mc,{"aria-describedby":t,placeholder:`Paste a Docx / Wiki / file link or Docx ID`,value:e.draft,autoComplete:`off`,autoCapitalize:`none`,spellCheck:!1,maxLength:2048,disabled:e.pending,onChange:t=>e.onDraftChange(t.target.value)})]}),(0,L.jsx)(`p`,{id:t,children:`Wiki links are supported when the linked page is a Docx document. Cloud file links must use /file/. You can also submit a link in the group with /tutti reference.`}),(0,L.jsx)(Sc,{type:`submit`,disabled:e.pending||e.draft.trim()===``,children:e.connecting?`Adding…`:`Add Reference`})]}),(0,L.jsx)(Sc,{disabled:e.pending,onClick:e.onAuthorize,children:`Authorize Docs`}),e.onAuthorizeFiles?(0,L.jsx)(Sc,{disabled:e.pending,onClick:e.onAuthorizeFiles,children:`Authorize cloud files`}):null,e.submissions?.length?(0,L.jsxs)(`section`,{"aria-label":`Pending Reference requests`,children:[(0,L.jsx)(`strong`,{children:`From the group — awaiting confirmation`}),(0,L.jsx)(`ul`,{children:e.submissions.map(t=>(0,L.jsxs)(`li`,{children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`strong`,{children:t.name}),(0,L.jsx)(`span`,{children:t.detail})]}),(0,L.jsx)(Sc,{disabled:e.pending,onClick:t.onConfirm,"aria-label":`Confirm ${t.name}`,children:`Confirm`})]},t.id))})]}):null]}):null,e.loading?(0,L.jsx)(`p`,{role:`status`,children:`Loading references…`}):null,e.feedback===void 0?null:(0,L.jsx)(`p`,{role:`status`,children:e.feedback}),e.error===void 0?null:(0,L.jsxs)(`div`,{role:`alert`,children:[(0,L.jsx)(`p`,{children:e.error}),(0,L.jsx)(Sc,{onClick:e.onReload,disabled:e.pending,children:`Reload references`})]}),e.items.length===0?null:(0,L.jsx)(`ul`,{children:e.items.map(e=>(0,L.jsx)(`li`,{children:(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`strong`,{children:e.name}),(0,L.jsx)(`span`,{children:e.status})]})},e.id))})]})}var gS=new Intl.NumberFormat(`en-US`),_S=Ws(`beethoven-ode-to-joy`);function vS(e){return[...e].reverse().map((e,t)=>{let n=_S.units[t%_S.units.length];if(n===void 0)throw Error(`Timeline score theme unexpectedly has no units`);return{...n,id:e.id,label:`Open ${e.stageLabel??e.title}`}})}function yS(e){return gS.format(e)}function bS(e){if(e!==void 0)switch(e){case`completed`:return`success`;case`failed`:return`error`;case`needs_human`:return`warning`}}function xS(e){if(e.kind===`task_accepted`)return`Task accepted`;if(e.kind===`checkpoint`)return`Checkpoint`;switch(e.update_state){case`completed`:return`Task completed`;case`failed`:return`Task failed`;case`needs_input`:return`Needs input`;default:return`Task update`}}function SS(e,t){let n=Date.parse(e.occurred_at),r=Date.parse(t.occurred_at),i=Number.isFinite(n)&&Number.isFinite(r)?r-n:t.occurred_at.localeCompare(e.occurred_at);return i===0?t.id.localeCompare(e.id):i}function CS(e,t={}){let n=e.token_usage?.total_tokens??0,r=bS(e.status),i={id:e.id,title:e.task_title??e.title,occurredAt:Lr(e.occurred_at),kind:e.kind,stageLabel:xS(e)};return r!==void 0&&(i.tone=r),n>0&&(i.tokenLabel=`${yS(n)} tokens`),e.task_id!==void 0&&(i.taskId=e.task_id),e.task_title!==void 0&&(i.taskTitle=e.task_title),e.trace_card!==void 0&&(i.trace=TS(e.trace_card,t)),i}function wS(e,t){if(e.kind===`worklist_task`&&e.task_id!==void 0){let n=t.onOpenWorklistTask,r=e.task_id;return n===void 0?void 0:()=>n(r)}if(e.kind===`chat_message`&&e.message_id!==void 0){let n=t.onOpenChatMessage,r=e.message_id;return n===void 0?void 0:()=>n(r)}if(e.kind===`reference_file`&&e.path!==void 0){let n=t.onOpenReferenceFile,r=e.path;return n===void 0?void 0:()=>n(r)}}function TS(e,t={}){return{tone:e.tone,...e.summary===void 0?{}:{summary:e.summary},...e.origin===void 0?{}:{origin:{...e.origin.title===void 0?{}:{title:e.origin.title},...e.origin.summary===void 0?{}:{summary:e.origin.summary},...e.origin.unavailable_reason===void 0?{}:{unavailableReason:e.origin.unavailable_reason},...e.origin.source_count===void 0?{}:{sourceCount:e.origin.source_count},...e.origin.snippets===void 0?{}:{snippets:e.origin.snippets.map(e=>({id:e.message_id,author:e.author,body:e.body,createdAt:Lr(e.created_at),...t.onOpenChatMessage===void 0?{}:{onClick:()=>t.onOpenChatMessage?.(e.message_id)}}))}}},...e.decisions===void 0?{}:{decisions:e.decisions.map((e,t)=>({id:`${t}:${e.source??`decision`}`,...e.title===void 0?{}:{title:e.title},summary:e.summary}))},...e.clarification===void 0?{}:{clarification:{...e.clarification.title===void 0?{}:{title:e.clarification.title},...e.clarification.summary===void 0?{}:{summary:e.clarification.summary},...e.clarification.request===void 0?{}:{request:e.clarification.request},...e.clarification.status===void 0?{}:{status:e.clarification.status},...e.clarification.answer_count===void 0?{}:{answerCount:e.clarification.answer_count},...e.clarification.answers===void 0?{}:{answers:e.clarification.answers.map(e=>({id:e.message_id,author:e.author,body:e.body,createdAt:Lr(e.created_at),...t.onOpenChatMessage===void 0?{}:{onClick:()=>t.onOpenChatMessage?.(e.message_id)}}))}}},...e.contract===void 0?{}:{contract:{goal:e.contract.goal,scope:e.contract.scope,...e.contract.truncated===void 0?{}:{truncated:e.contract.truncated}}},...e.result===void 0?{}:{result:{summary:e.result.summary,...e.result.error_code===void 0?{}:{errorCode:e.result.error_code}}},...e.changes===void 0?{}:{changes:{items:e.changes.items.map(e=>({status:e.status,path:e.path,...e.previous_path===void 0?{}:{previousPath:e.previous_path}})),totalCount:e.changes.total_count,truncated:e.changes.truncated}},...e.verification===void 0?{}:{verification:{checks:e.verification.checks,...e.verification.skip_reason_code===void 0?{}:{skipReasonCode:e.verification.skip_reason_code},...e.verification.skip_reason_summary===void 0?{}:{skipReasonSummary:e.verification.skip_reason_summary}}},...e.promotion===void 0?{}:{promotion:{status:e.promotion.status,...e.promotion.commit_short_oid===void 0?{}:{commitShortOid:e.promotion.commit_short_oid},...e.promotion.summary===void 0?{}:{summary:e.promotion.summary},...e.promotion.reason_code===void 0?{}:{reasonCode:e.promotion.reason_code}}},...e.checkpoint===void 0?{}:{checkpoint:{counters:e.checkpoint.counters,items:e.checkpoint.items.map(e=>({id:e.task_id,title:e.title,status:e.status,summary:e.summary})),...e.checkpoint.generated_files===void 0?{}:{generatedFiles:e.checkpoint.generated_files.map(e=>({id:e.path,name:e.name,path:e.path}))},...e.checkpoint.truncated===void 0?{}:{truncated:e.checkpoint.truncated}}},links:e.links.flatMap(e=>{let n=e.task_id??e.message_id??e.path,r=wS(e,t);return r===void 0?[]:[{id:`${e.kind}:${n??e.label}`,label:e.label,onClick:r}]})}}function ES(e,t={}){let n=e.usage_overview,r=[...e.items].sort(SS).map(e=>CS(e,t));return{tokenOverview:{totalLabel:yS(n.total_tokens)},items:r,scoreUnits:vS(r)}}var DS=[{id:`prepare`,label:`Preparing workspace`},{id:`implement`,label:`Implementing with Codex`},{id:`validate`,label:`Validating result`},{id:`save`,label:`Saving result`}],OS=[{id:`workspace_inspect`,summary:`inspecting the persistent project workspace`,displayStageId:`prepare`},{id:`artifact_candidate_validate`,summary:`validating the candidate Artifact preview`,displayStageId:`validate`},{id:`provider_task_run`,summary:`running Codex task implementation`,displayStageId:`implement`},{id:`provider_retry`,summary:`retrying Codex task after a transient provider failure`,displayStageId:`implement`},{id:`candidate_diff_collect`,summary:`collecting candidate changes`,displayStageId:`validate`},{id:`checks`,summary:`running project checks`,displayStageId:`validate`},{id:`post_checks_diff_collect`,summary:`rechecking candidate changes after checks`,displayStageId:`validate`},{id:`accepted_checkpoint`,summary:`saving the validated project state as an accepted checkpoint`,displayStageId:`save`},{id:`promotion_reconcile`,summary:`reconciling promotion after mainline changed`,displayStageId:`save`},{id:`self_correction`,summary:`retrying task implementation after pipeline feedback`,displayStageId:`implement`}],kS={scratchpad_refresh:{key:`scratchpad_refresh`,label:`Refreshing Scratchpad`,target:{kind:`scratchpad`}},project_context_bootstrap:{key:`project_context_bootstrap`,label:`Preparing project context`,target:{kind:`scratchpad`}},task_compile:{key:`task_compile`,label:`Compiling Worklist tasks`,target:{kind:`scratchpad`}},context_sync:{key:`context_sync`,label:`Synchronizing project context`,target:{kind:`worklist`}},reference_summary_refresh:{key:`reference_summary_refresh`,label:`Processing reference`,target:{kind:`references`}},recovery_check:{key:`recovery_check`,label:`Recovering workspace`,target:{kind:`worklist`}},follow_up_check:{key:`follow_up_check`,label:`Checking follow-up`,target:{kind:`worklist`}}},AS=`Tutti is working on`,jS=new Set([`scratchpad_refresh`]),MS=`task_compile`,NS=`project_context_bootstrap`,PS=3,FS={analyzing_task:`Analyzing the task`,searching_codebase:`Searching the codebase`,reading_files:`Reading project files`,planning:`Planning the next change`,editing_files:`Editing project files`,running_checks:`Running project checks`,running_command:`Running a project command`,using_tool:`Using a project tool`,waiting_for_approval:`Waiting for approval`,preparing_result:`Preparing the result`,reading_context:`Reading project context`,finalizing:`Preparing the result`};function IS(e){if(e===void 0)return null;if(typeof e==`number`)return Number.isFinite(e)?e:null;if(e instanceof Date)return e.getTime();let t=Date.parse(e);return Number.isNaN(t)?null:t}function LS(e){return IS(e.now)??Date.now()}function RS(e){if(e<60)return`${e}s`;let t=Math.floor(e/60),n=e%60;if(t<60)return`${t}m${n}s`;let r=Math.floor(t/60),i=t%60;return`${r}h${String(i).padStart(2,`0`)}m`}function zS(e,t){let n=IS(e);if(n!==null)return RS(Math.max(0,Math.floor((LS(t)-n)/1e3)))}function BS(e,t){return zS(e.active_activity?.started_at??e.runtime?.started_at,t)}function VS(e){let t=e.runtime;if(t===void 0)return;let n=e.active_activity?.activity_ref;if(!(n!==void 0&&t.activity_ref!==n))return t}function HS(e){if(e<1e3)return String(e);if(e<1e6){let t=e/1e3;return`${e<1e5?t.toFixed(1).replace(/\.0$/u,``):String(Math.round(t))}k`}return`${(e/1e6).toFixed(1).replace(/\.0$/u,``)}m`}function US(e){let t=WS(e);return t===void 0?[]:[t]}function WS(e){let t=e?.token_usage?.total_tokens;return t===void 0?void 0:`${HS(t)} tokens`}function GS(e){if(e?.current_action_detail!==void 0)return e.current_action_detail;let t=e?.current_action;return t===void 0?e?.token_usage===void 0?void 0:FS.analyzing_task:FS[t]}function KS(e,t){if(e?.current_action!==`analyzing_task`||e.current_action_started_at===void 0)return;let n=IS(e.current_action_started_at);if(n===null)return;let r=Math.max(0,Math.floor((LS(t)-n)/1e3));if(!(r<PS))return`Thinking for ${RS(r)}`}function qS(e){let t={};return e.active_activity?.activity_ref!==void 0&&(t.activityRef=e.active_activity.activity_ref),e.active_activity?.workflow_ref!==void 0&&(t.workflowRef=e.active_activity.workflow_ref),e.active_task?.id!==void 0&&(t.taskId=e.active_task.id),Object.keys(t).length===0?void 0:t}function JS(e,t,n){return e===`context_sync`&&t.last_conclusion?.task_id!==void 0?{kind:`task`,taskId:t.last_conclusion.task_id}:n.target}function YS(e){return OS[tC(e)]??OS[0]}function XS(e){return DS.findIndex(t=>t.id===e)}function ZS(e){return DS[XS(YS(e).displayStageId)]??DS[0]}function QS(e){if(e.status!==`running`||e.active_activity?.activity_kind!==`procedure`)return null;let t=e.active_activity.workflow_kind;if(t===void 0||jS.has(t))return null;let n=kS[t],r=JS(t,e,n);return{key:`procedure:${n.key}`,label:n.label,title:n.label,tone:`running`,target:r}}function $S(e,t){if(e.status!==`running`||e.active_activity?.activity_kind!==`procedure`)return null;let n=e.active_activity.workflow_kind;if(n===void 0||jS.has(n))return null;let r=kS[n],i=JS(n,e,r),a=qS(e),o=VS(e),s=n===MS?US(o):[],c=n===NS?`Creating project context for the first time`:void 0,l=zS(e.active_activity?.started_at??o?.started_at,t);return{key:`procedure:${r.key}`,title:AS,summary:e.summary,tone:`running`,metaLabel:r.label,completionTarget:i,...a===void 0?{}:{completionSource:a},steps:[{id:`procedure:${r.key}:active`,label:r.label,status:`running`,...l===void 0?{}:{elapsedLabel:l},...c===void 0?{}:{detail:c},...s.length===0?{}:{metrics:s}}]}}function eC(e){let t=e.indexOf(` - `);return t===-1?``:e.slice(t+3).trim().replace(/\.$/u,``)}function tC(e){let t=eC(e).toLocaleLowerCase();if(t===``)return 0;let n=OS.findIndex(e=>t.includes(e.summary.toLocaleLowerCase()));return n===-1?0:n}function nC(e,t){if(e.status!==`running`||e.active_task===void 0)return null;let n=XS(YS(e.summary).displayStageId),r=ZS(e.summary),i=qS(e),a=VS(e),o=BS(e,t);return{key:`run:${e.active_task.id}`,title:AS,summary:e.active_task.title,tone:`running`,metaLabel:r.label,completionTarget:{kind:`task`,taskId:e.active_task.id},...i===void 0?{}:{completionSource:i},steps:DS.map((e,r)=>{let i=r<n?`done`:r===n?`running`:`waiting`,s=r===n,c=e.id===`implement`,l=s&&c?GS(a):void 0,u=s&&c?WS(a):void 0,d=s&&c?KS(a,t):void 0;return{id:e.id,label:e.label,status:i,...s&&o!==void 0?{elapsedLabel:o}:{},...u===void 0?{}:{detailPrefix:u},...l===void 0?{}:{detail:l},...d===void 0?{}:{activityLabel:d}}})}}function rC(e,t){if(e.status!==`running`||e.active_activity?.workflow_kind!==`context_sync`||e.last_conclusion?.kind!==`completed`||e.last_conclusion.task_id===void 0)return null;let n=qS(e),r=BS(e,t);return{key:`context-sync:${e.last_conclusion.task_id}`,title:AS,summary:e.summary,tone:`running`,metaLabel:`Synchronizing context`,completionTarget:{kind:`task`,taskId:e.last_conclusion.task_id},...n===void 0?{}:{completionSource:n},steps:[{id:`task_complete`,label:`Task completed`,status:`done`},{id:`context_sync`,label:`Synchronizing project context`,status:`running`,...r===void 0?{}:{elapsedLabel:r}}]}}function iC(e){let t=e.blocked_by?.kind===`approval`?{kind:`approval`}:{kind:`clarification`};return{key:`pending:${e.blocked_by?.kind===`approval`?e.blocked_by.approval_id:e.blocked_by?.kind===`clarification`?e.blocked_by.round_id:e.updated_at}`,title:AS,summary:e.summary,tone:`pending`,metaLabel:`Needs input`,completionTarget:t,steps:[{id:`waiting_for_input`,label:`Needs input`,status:`pending`}]}}function aC(e){let t=e.last_conclusion?.task_id??(e.status===`failed`?e.active_task?.id:void 0);return t===void 0&&e.status!==`failed`?null:{key:`failed:${t??e.updated_at}`,title:AS,summary:e.last_conclusion?.summary??e.summary,tone:`failed`,metaLabel:`Failed`,...t===void 0?{}:{completionTarget:{kind:`task`,taskId:t}},steps:[{id:`run_failed`,label:`Run failed`,status:`failed`}]}}function oC(e,t={}){let n=nC(e,t);if(n!==null)return n;let r=rC(e,t);if(r!==null)return r;let i=$S(e,t);return i===null?e.status===`pending`?iC(e):e.status===`failed`?aC(e):null:i}function sC(e){let t=e.activeTaskCompileClarification&&!e.activeScratchpadRefreshFromSubmit&&!e.activeProjectContextBootstrap&&!e.activeTaskCompile,n=[],r=zS(e.startedAt,e);if(e.activeProjectContextBootstrap)n.push({id:`scratchpad_submit:project_context`,label:`Preparing project context`,status:`running`,...r===void 0?{}:{elapsedLabel:r},detail:`Creating project context for the first time`});else if(e.activeTaskCompile||e.activeScratchpadRefreshFromSubmit){let t=e.activeTaskCompile?US(e.runtime):[];n.push({id:`scratchpad_submit:task_compile`,label:`Compiling Worklist tasks`,status:`running`,...r===void 0?{}:{elapsedLabel:r},...t.length===0?{}:{metrics:t}})}else n.push({id:`scratchpad_submit:task_compile`,label:`Compiling Worklist tasks`,status:t?`done`:`running`});t&&n.push({id:`scratchpad_submit:needs_input`,label:`Needs input`,status:`pending`});let i=n.find(e=>e.status===`running`||e.status===`pending`)?.label??`Compiling Worklist tasks`;return{key:`scratchpad-submit`,title:AS,summary:t?`Task compilation needs a decision before Worklist can update.`:`Preparing the Scratchpad for formal tasks.`,tone:t?`pending`:`running`,metaLabel:t?`Needs input`:i,completionTarget:t?{kind:`clarification`}:{kind:`scratchpad`},steps:n}}function cC(e,t){return{...e,key:`${e.key}:complete`,title:AS,summary:t,tone:`complete`,metaLabel:`Complete`,steps:e.steps.map(e=>({...e,status:`done`}))}}function lC(e,t){let n=e.completionSource;return n===void 0?!0:n.activityRef===void 0?n.workflowRef===void 0?n.taskId===void 0?!0:t.task_id===n.taskId:t.workflow_ref===n.workflowRef:t.activity_ref===n.activityRef}function uC(e){if(e.status===`idle`)return[];let t=[];if(e.status===`pending`){let n=e.blocked_by?.kind===`approval`?{kind:`approval`}:{kind:`clarification`};t.push({key:`pending`,label:`Needs input`,title:`Needs input`,tone:`pending`,target:n})}let n=e.last_conclusion?.kind===`failed`?e.last_conclusion.task_id:e.status===`failed`?e.active_task?.id??e.last_conclusion?.task_id:void 0;if(n!==void 0&&t.push({key:`failed`,label:`Run failed`,tone:`failed`,target:{kind:`task`,taskId:n}}),e.status===`running`&&e.active_task!==void 0){let n=ZS(e.summary);t.push({key:`running`,label:n.label,title:n.label,tone:`running`,target:{kind:`task`,taskId:e.active_task.id}})}let r=QS(e);return r!==null&&t.push(r),t}var dC=`/assets/beethoven-symphony-5-opening-ypVy5SB4.svg`,fC=`/assets/beethoven-symphony-7-allegretto-B3bc-cZD.svg`,pC=`/assets/dvorak-symphony-9-largo-BEgNL3HB.svg`,mC=`/assets/mozart-symphony-18-allegro-B5-MrLL1.svg`,hC=`/assets/Tutti-square-BqFU7F0D.png`,gC=`/assets/Tutti-B7gEyTp1.png`,_C=`/assets/tutti_avatar-_0Yc-cMJ.png`,vC=`/assets/avatar-avery-CkLXb185.svg`,yC=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2080%2080'%20fill='none'%20shape-rendering='auto'%20aria-hidden='true'%3e%3c!--%20Generated%20by%20DiceBear%20(https://dicebear.com)%20--%3e%3cmetadata%20xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns%23'%20xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'%20xmlns:dc='http://purl.org/dc/elements/1.1/'%20xmlns:dcterms='http://purl.org/dc/terms/'%3e%3crdf:RDF%3e%3crdf:Description%3e%3cdc:title%3eDylan!%20The%20Avatar%20Generator%3c/dc:title%3e%3cdc:creator%3eNatalia%20Spivak%3c/dc:creator%3e%3cdc:source%20xsi:type='dcterms:URI'%3ehttps://www.figma.com/community/file/1356575240759683500%3c/dc:source%3e%3cdcterms:license%20xsi:type='dcterms:URI'%3ehttps://creativecommons.org/licenses/by/4.0/%3c/dcterms:license%3e%3cdc:rights%3eRemix%20of%20“Dylan!%20The%20Avatar%20Generator”%20(https://www.figma.com/community/file/1356575240759683500)%20by%20“Natalia%20Spivak”,%20licensed%20under%20“CC%20BY%204.0”%20(https://creativecommons.org/licenses/by/4.0/)%3c/dc:rights%3e%3c/rdf:Description%3e%3c/rdf:RDF%3e%3c/metadata%3e%3cdefs%3e%3cg%20id='mood-happy-7dff0831'%3e%3cpath%20d='M.04%2017.04c2.41%209.29%2015.16%2012.28%2022.34%206.67a14%2014%200%200%200%204.7-7.22c.36-1.28-1.57-1.8-1.93-.57-1.24%204.23-4.33%207.4-8.68%208.33-3.77.8-8.03-.1-11.05-2.52a10%2010%200%200%201-3.45-5.26c-.32-1.25-2.25-.72-1.93.53'%20fill='black'/%3e%3c/g%3e%3cg%20id='hair-shortCurls-7dff0831'%3e%3cpath%20d='m15.3%2027.49%201.58%204.38%201.06-9.52s2.27%201.27%203.44-.26.16-3.47.16-3.47%201.81.55%203.31-.8c1.87-1.67%201.26-3.46%201.26-3.46s1.71%201.9%204.5%201.1c2.77-.8%203.14-2.76%203.14-2.76s.56%202.18%203.4%202.12%203.2-2.01%203.2-2.01%200%202.43%202.43%203.14%203.43-1.24%203.43-1.24c0%20.02-.9%202.39.66%203.76%201.44%201.26%203.5.35%203.5.35s-.73%202.3.77%203.62c1.6%201.4%203.48.6%203.48.6l.77%208.34%201.8-3.8s1.4-.13%202.72.15c0%20.01%202.58-2.78%201.15-5.9s-3.64-2.86-3.64-2.86%201.95-3.05.13-5.65-4.94-1.96-4.94-1.96%201.18-3.52-1.68-5.27-5.92.46-5.92.46-.1-3.7-3.2-4.16c-3.26-.48-4.58%202.66-4.58%202.66s-1.35-2.89-4.14-2.44c-2.8.44-3.32%203.53-3.32%203.53S27.32%203.57%2024.92%205s-1.8%204.51-1.8%204.51-2.98-2.24-5.32-.23-.14%205.1-.14%205.1-3.87-1.12-5.04%201.8%201.66%204.95%201.66%204.95-5.35%201.16-2.82%207.33c0%200%20.6-.27%202.02-.62s1.8-.38%201.8-.38z'%20fill='%23000000'/%3e%3c/g%3e%3cclipPath%20id='clip-7dff0831'%3e%3crect%20width='80'%20height='80'%20rx='0'%20ry='0'/%3e%3c/clipPath%3e%3c/defs%3e%3cg%20clip-path='url(%23clip-7dff0831)'%3e%3crect%20width='80'%20height='80'%20fill='%23e5f4ec'/%3e%3cpath%20d='M19.07%2030.47s1.57-20.23%2021.59-20.23S62.3%2030.55%2062.3%2030.55s9.43-.8%209.43%207.6c0%208.42-9.28%207.13-9.28%207.13S60.9%2067.15%2042.03%2067.15c-21.11%200-23.4-20.8-23.4-20.8s-9%20.72-9.93-6.25c-1.08-8.2%2010.37-9.64%2010.37-9.64'%20fill='%23c26450'/%3e%3cpath%20d='m64.3%2039.49.46-.41.1-.09c.12-.1-.13.1-.02.02l.24-.17q.5-.35%201.06-.62l.26-.12.05-.02.05-.02.58-.21q.6-.18%201.2-.28c.52-.08.85-.76.7-1.23-.18-.56-.67-.8-1.23-.7a9.3%209.3%200%200%200-4.87%202.43c-.38.36-.4%201.06%200%201.4.4.36%201%20.4%201.4%200zm-51.8-1.16.14.01c-.27-.02-.11-.01-.04%200l.3.05.52.14.28.09.12.05c.02%200%20.22.09.06.02-.14-.1%200-.04.03-.03l.15.06.26.13.47.3.27.22q.47.38.83.83c.33.4%201.07.37%201.41%200%20.4-.43.36-.98%200-1.4a7.3%207.3%200%200%200-4.84-2.53c-.52-.06-1.02.5-1%201%20.03.59.44.94%201%201m18.3-1.9v4.54c0%20.52.46%201.02%201%201s1-.44%201-1V36.4c0-.52-.46-1.02-1-1s-1%20.44-1%201M49.2%2036l-.15%204.81a1%201%200%200%200%201%201c.56-.02.98-.44%201-1l.15-4.8a1%201%200%200%200-1-1%201%201%200%200%200-1%201'%20fill='black'/%3e%3cuse%20transform='translate(27.82%2026.75)'%20href='%23mood-happy-7dff0831'/%3e%3cuse%20transform='translate(3.78%202.95)'%20href='%23hair-shortCurls-7dff0831'/%3e%3c/g%3e%3c/svg%3e`,bC=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2080%2080'%20fill='none'%20shape-rendering='auto'%20aria-hidden='true'%3e%3c!--%20Generated%20by%20DiceBear%20(https://dicebear.com)%20--%3e%3cmetadata%20xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns%23'%20xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'%20xmlns:dc='http://purl.org/dc/elements/1.1/'%20xmlns:dcterms='http://purl.org/dc/terms/'%3e%3crdf:RDF%3e%3crdf:Description%3e%3cdc:title%3eDylan!%20The%20Avatar%20Generator%3c/dc:title%3e%3cdc:creator%3eNatalia%20Spivak%3c/dc:creator%3e%3cdc:source%20xsi:type='dcterms:URI'%3ehttps://www.figma.com/community/file/1356575240759683500%3c/dc:source%3e%3cdcterms:license%20xsi:type='dcterms:URI'%3ehttps://creativecommons.org/licenses/by/4.0/%3c/dcterms:license%3e%3cdc:rights%3eRemix%20of%20“Dylan!%20The%20Avatar%20Generator”%20(https://www.figma.com/community/file/1356575240759683500)%20by%20“Natalia%20Spivak”,%20licensed%20under%20“CC%20BY%204.0”%20(https://creativecommons.org/licenses/by/4.0/)%3c/dc:rights%3e%3c/rdf:Description%3e%3c/rdf:RDF%3e%3c/metadata%3e%3cdefs%3e%3cg%20id='mood-happy-46c131e2'%3e%3cpath%20d='M.04%2017.04c2.41%209.29%2015.16%2012.28%2022.34%206.67a14%2014%200%200%200%204.7-7.22c.36-1.28-1.57-1.8-1.93-.57-1.24%204.23-4.33%207.4-8.68%208.33-3.77.8-8.03-.1-11.05-2.52a10%2010%200%200%201-3.45-5.26c-.32-1.25-2.25-.72-1.93.53'%20fill='black'/%3e%3c/g%3e%3cg%20id='hair-fluffy-46c131e2'%3e%3cpath%20d='M16.45%2029.48s13.74%2023.53%203.86%2028.24C9.05%2063.08-1.2%2048.01.1%2036.77s10.96-16.35%2010.96-16.35-.58-9.5%209.2-15.04c9.78-5.55%2016.64.44%2016.64.44s8.06-5.9%2015.5-1.37c7.46%204.53%207.26%2014.68%207.26%2014.68s13.74-.56%2013.65%2016.47c-.08%2015.17-10.03%2022.94-16.8%2021.6-10.45-2.07%201.27-29.22%201.27-29.22s-14.4%201.04-20.14-9.75c0%200-4%205.95-9.7%208.62a32%2032%200%200%201-11.47%202.64z'%20fill='%231d5dff'/%3e%3c/g%3e%3cclipPath%20id='clip-46c131e2'%3e%3crect%20width='80'%20height='80'%20rx='0'%20ry='0'/%3e%3c/clipPath%3e%3c/defs%3e%3cg%20clip-path='url(%23clip-46c131e2)'%3e%3crect%20width='80'%20height='80'%20fill='%23fbf0d1'/%3e%3cpath%20d='M19.07%2030.47s1.57-20.23%2021.59-20.23S62.3%2030.55%2062.3%2030.55s9.43-.8%209.43%207.6c0%208.42-9.28%207.13-9.28%207.13S60.9%2067.15%2042.03%2067.15c-21.11%200-23.4-20.8-23.4-20.8s-9%20.72-9.93-6.25c-1.08-8.2%2010.37-9.64%2010.37-9.64'%20fill='%23c26450'/%3e%3cpath%20d='m64.3%2039.49.46-.41.1-.09c.12-.1-.13.1-.02.02l.24-.17q.5-.35%201.06-.62l.26-.12.05-.02.05-.02.58-.21q.6-.18%201.2-.28c.52-.08.85-.76.7-1.23-.18-.56-.67-.8-1.23-.7a9.3%209.3%200%200%200-4.87%202.43c-.38.36-.4%201.06%200%201.4.4.36%201%20.4%201.4%200zm-51.8-1.16.14.01c-.27-.02-.11-.01-.04%200l.3.05.52.14.28.09.12.05c.02%200%20.22.09.06.02-.14-.1%200-.04.03-.03l.15.06.26.13.47.3.27.22q.47.38.83.83c.33.4%201.07.37%201.41%200%20.4-.43.36-.98%200-1.4a7.3%207.3%200%200%200-4.84-2.53c-.52-.06-1.02.5-1%201%20.03.59.44.94%201%201m18.3-1.9v4.54c0%20.52.46%201.02%201%201s1-.44%201-1V36.4c0-.52-.46-1.02-1-1s-1%20.44-1%201M49.2%2036l-.15%204.81a1%201%200%200%200%201%201c.56-.02.98-.44%201-1l.15-4.8a1%201%200%200%200-1-1%201%201%200%200%200-1%201'%20fill='black'/%3e%3cuse%20transform='translate(27.82%2026.75)'%20href='%23mood-happy-46c131e2'/%3e%3cuse%20transform='translate(3.78%202.95)'%20href='%23hair-fluffy-46c131e2'/%3e%3c/g%3e%3c/svg%3e`,xC=`/assets/ode-to-joy-SNBUPr3-.svg`,SC=hC,CC=gC,wC=_C,TC={logoSrc:gC,tuttiAvatarSrc:_C,scoreSrc:xC,humanAvatars:{fey:yC,avery:vC,jun:bC}};function EC({onClick:e}){let t=(0,L.jsx)(Ac,{src:CC,label:`Tutti`});return e===void 0?t:(0,L.jsx)(jc,{logo:t,label:`Tutti Project Center`,onClick:e})}function DC({onClick:e,label:t}){return(0,L.jsx)(jc,{logo:(0,L.jsx)(Ac,{src:CC,className:`tutti-logo`}),...t===void 0?{}:{label:t},onClick:e})}var OC=`https://lets.tutti.now`,kC=`${OC}/start/create-a-project#connect-a-provider-and-choose-a-model`,AC={href:OC,target:`_blank`,rel:`noopener noreferrer`};function jC(){return(0,L.jsxs)(_f,{children:[`New to Tutti?`,` `,(0,L.jsx)(`a`,{...AC,"aria-label":`Read the Tutti documentation (opens in a new tab)`,children:`Read the docs`}),`.`]})}function MC(){return(0,L.jsx)(Bc,{...AC,label:`Support Center`,icon:(0,L.jsx)(ua,{"aria-hidden":`true`})})}var NC=[dC,fC,pC,mC];function PC(){return NC[Math.min(NC.length-1,Math.floor(Math.random()*NC.length))]}function FC({backgroundPattern:e,children:t,...n}){let[r]=(0,I.useState)(PC);return(0,L.jsx)(Gs,{...e===void 0?{backgroundImageSrc:r}:{backgroundPattern:e},...n,children:t})}function IC({actions:e,children:t,onBrandClick:n}){return(0,L.jsxs)(FC,{children:[(0,L.jsx)(Ks,{brand:(0,L.jsx)(DC,{onClick:n}),actions:e}),t]})}function LC({children:e,label:t,onBrandClick:n}){return(0,L.jsx)(IC,{onBrandClick:n,children:(0,L.jsx)(Js,{"aria-label":t,children:e})})}function RC({auth:e,mobileAuth:t,onBrandClick:n}){return(0,L.jsx)(FC,{backgroundPattern:`dots`,className:`homepage-entry-page`,children:(0,L.jsx)(gf,{brand:(0,L.jsx)(DC,{onClick:n}),visual:(0,L.jsx)(Zf,{assets:TC}),auth:e,mobileAuth:t,footer:(0,L.jsx)(jC,{})})})}function zC({phase:e,form:t,onChange:n}){return e===`code`?(0,L.jsx)(`div`,{className:`form-stack`,children:(0,L.jsx)(Ic,{label:`Email verification code`,children:(0,L.jsx)(Mc,{autoComplete:`one-time-code`,inputMode:`numeric`,type:`text`,value:t.code,onChange:e=>n({code:e.target.value}),placeholder:`Enter email code`,maxLength:6})})}):e===`profile`?(0,L.jsxs)(`div`,{className:`form-stack`,children:[(0,L.jsx)(Ic,{label:`Display name`,children:(0,L.jsx)(Mc,{autoComplete:`name`,type:`text`,value:t.displayName,onChange:e=>n({displayName:e.target.value}),placeholder:`username`})}),(0,L.jsx)(`p`,{className:`form-note`,children:`This name cannot be changed yet.`})]}):(0,L.jsx)(`div`,{className:`form-stack`,children:(0,L.jsx)(Ic,{label:`Email`,children:(0,L.jsx)(Mc,{autoComplete:`email`,type:`email`,value:t.email,onChange:e=>n({email:e.target.value}),placeholder:`alex@example.com`})})})}function BC({surface:e,phase:t,form:n,pending:r,error:i,submitDisabled:a,submitLabel:o,pendingLabel:s,onChange:c,onSubmit:l,onBack:u}){let d={title:t===`profile`?`Choose display name`:`Sign in`,description:t===`profile`?`Set the name your teammates will see.`:t===`code`?`Enter your email verification code.`:`Use your email to continue.`,onSubmit:l,action:(0,L.jsxs)(wc,{type:`submit`,disabled:a||r,children:[r?s??(t===`profile`?`Saving`:t===`code`?`Verifying`:`Sending code`):o??(t===`profile`?`Save name`:t===`code`?`Verify email code`:`Send code`),(0,L.jsx)(na,{"aria-hidden":`true`})]}),secondaryAction:t===`code`&&u!==void 0?(0,L.jsxs)(Tc,{type:`button`,onClick:u,disabled:r,children:[(0,L.jsx)(ta,{"aria-hidden":`true`}),`Change email`]}):void 0,feedback:i===null?void 0:(0,L.jsx)(Lc,{children:i}),children:(0,L.jsx)(zC,{phase:t,form:n,onChange:c})};return e===`card`?(0,L.jsx)(op,{...d}):(0,L.jsx)(vf,{...d})}function VC(e){return(0,L.jsx)(BC,{...e,surface:`card`})}function HC(e){return(0,L.jsx)(BC,{...e,surface:`rail`})}function UC({onBrandClick:e,...t}){return(0,L.jsx)(RC,{onBrandClick:e,auth:(0,L.jsx)(HC,{...t}),mobileAuth:(0,L.jsx)(VC,{...t})})}function WC({nextKind:e,actionPending:t,loginForm:n,onRetry:r,onAccept:i,onOpen:a}){if(e===`loading`)return(0,L.jsx)(Tc,{type:`button`,disabled:!0,children:`Loading`});if(e===`error`)return(0,L.jsx)(Tc,{type:`button`,onClick:r,children:`Retry`});if(e===`invalid_or_expired`)return(0,L.jsxs)(Tc,{type:`button`,disabled:!0,children:[(0,L.jsx)(no,{"aria-hidden":`true`}),`Invalid invite`]});if(e===`login_required`){let e=n?.phase===`profile`?`Save name`:n?.phase===`code`?`Verify email code`:`Send code`,r=n?.phase===`profile`?`Saving`:n?.phase===`code`?`Verifying`:`Sending code`;return(0,L.jsxs)(wc,{type:`submit`,disabled:t||n?.submitDisabled===!0,children:[t?r:e,(0,L.jsx)(na,{"aria-hidden":`true`})]})}return e===`accept_join`?(0,L.jsxs)(wc,{type:`button`,disabled:t,onClick:i,children:[t?`Joining`:`Accept and open workspace`,(0,L.jsx)(na,{"aria-hidden":`true`})]}):e===`open_workspace`?(0,L.jsxs)(wc,{type:`button`,disabled:t,onClick:a,children:[t?`Opening`:`Open workspace`,(0,L.jsx)(na,{"aria-hidden":`true`})]}):(0,L.jsxs)(Tc,{type:`button`,disabled:!0,children:[(0,L.jsx)(Ba,{"aria-hidden":`true`}),`Host offline`]})}function GC({nextKind:e,error:t}){return e===`loading`?null:e===`error`?(0,L.jsx)(oo,{tone:`error`,icon:(0,L.jsx)(no,{"aria-hidden":`true`}),children:t??`Invite unavailable`}):e===`invalid_or_expired`?(0,L.jsx)(oo,{tone:`error`,icon:(0,L.jsx)(no,{"aria-hidden":`true`}),children:`Join token is invalid or expired`}):e===`host_offline`?(0,L.jsx)(oo,{tone:`warning`,icon:(0,L.jsx)(Ba,{"aria-hidden":`true`}),children:`Host is offline`}):null}function KC({projectName:e,description:t,hostLabel:n,hostOnline:r,nextKind:i,accountLabel:a,membershipLabel:o,actionPending:s,error:c,loginForm:l,onBrandClick:u,onRetry:d,onAccept:f,onOpen:p}){let m=i===`login_required`&&l!==void 0;return(0,L.jsx)(LC,{label:`Join project`,onBrandClick:u,children:(0,L.jsxs)(op,{title:`Join project`,description:t,onSubmit:e=>{if(m){l.onSubmit(e);return}e.preventDefault()},action:(0,L.jsx)(WC,{nextKind:i,actionPending:m?l.pending:s,...m?{loginForm:l}:{},onAccept:f,onOpen:p,...d===void 0?{}:{onRetry:d}}),secondaryAction:m&&l.phase===`code`&&l.onBack!==void 0?(0,L.jsxs)(Tc,{type:`button`,onClick:l.onBack,disabled:l.pending,children:[(0,L.jsx)(ta,{"aria-hidden":`true`}),`Change email`]}):void 0,feedback:(0,L.jsxs)(L.Fragment,{children:[m&&l.error!==null?(0,L.jsx)(Lc,{children:l.error}):null,(0,L.jsx)(GC,{nextKind:i,error:c}),c===null||i===`error`?null:(0,L.jsx)(Lc,{children:c})]}),children:[(0,L.jsx)(sp,{projectName:e,hostLabel:n,hostOnline:r}),m?(0,L.jsx)(L.Fragment,{children:(0,L.jsx)(zC,{phase:l.phase,form:l.form,onChange:l.onChange})}):(0,L.jsx)(cp,{label:a===null?`Account`:`Signed in as`,value:a??`Sign in required`,action:o===null?null:(0,L.jsx)(`span`,{className:`quiet-link`,children:o})})]})})}var qC=`http://127.0.0.1:4370`;function JC(){let e=`https://tutti.now`;return typeof e==`string`?e:typeof window<`u`&&window.location.port!==`4372`?window.location.origin:qC}function YC(e){try{return new URL(e,JC()).toString()}catch{return e}}function XC({avatar:e,label:t,plain:n=!1,online:r=!1}){return(0,L.jsx)(Qs,{label:t,tone:e.color,plain:n,online:r,initials:e.initials,...e.kind===`image`?{imageUrl:YC(e.image_url)}:{}})}function ZC({label:e=`Tutti`}){return(0,L.jsx)(Qs,{label:e,tone:`green`,className:`is-system`,imageUrl:wC,icon:(0,L.jsx)(ia,{"aria-hidden":`true`})})}function QC({message:e}){return e.avatarKind===`tutti`?(0,L.jsx)(ZC,{label:e.author}):(0,L.jsx)(XC,{avatar:e.avatar??{kind:`initials`,initials:Zr(e.author),color:`blue`},label:e.author})}function $C({diagnostic:e,showMessage:t=!0}){let n=[[`Diagnostic ID`,e.diagnosticId],[`Web release`,e.webRelease],[`Stage`,e.stage],[`Error kind`,e.errorKind],[`HTTP status`,e.httpStatus?.toString()],[`Reason code`,e.reasonCode],[`Platform stage`,e.platformStage],[`Platform code`,e.platformCode?.toString()]].filter(e=>e[1]!==void 0);return(0,L.jsxs)(`div`,{className:`embedded-project-diagnostic`,children:[t?(0,L.jsx)(`p`,{children:e.message}):null,(0,L.jsx)(`dl`,{"aria-label":`Feishu diagnostic details`,children:n.map(([e,t])=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`dt`,{children:e}),(0,L.jsx)(`dd`,{children:t})]},e))})]})}function ew({state:e,onRetry:t,onBrandClick:n,onSelectTab:r,onSelectTask:i,onSelectReference:a,onSubmitScratchpad:o,onRoundDraftChange:s,onSendRoundMessage:c,onSubmitRound:l,onDecideApproval:u,onOpenInBrowser:d,browserOpenUrl:f,onBrowserOpenLinkClick:p,scratchpadSubmitPending:m=!1,roundSendPending:h=!1,roundSubmitPending:g=!1,approvalDecisionPending:_=!1,browserOpenPending:v=!1,documentConnections:y}){if(e.kind===`loading`)return(0,L.jsx)(mx,{brand:(0,L.jsx)(DC,{label:`Reload Tutti project`,onClick:n}),projectName:`Opening Tutti`,meta:`Feishu project`,children:(0,L.jsx)(so,{count:3})});if(e.kind===`error`)return(0,L.jsx)(mx,{brand:(0,L.jsx)(DC,{label:`Reload Tutti project`,onClick:n}),projectName:`Tutti isn’t available`,meta:`Feishu project`,onRefresh:t,children:(0,L.jsx)(oo,{icon:(0,L.jsx)(no,{"aria-hidden":`true`}),tone:`warning`,details:(0,L.jsx)($C,{diagnostic:e,showMessage:!1}),children:e.message})});let b=e.membershipLabel===`owner`?`Owner`:`Member`,x=`${e.accountName} · ${b} · Tutti ${e.hostVersion}`,S=e.activeClarification??null,C=e.clarificationMessages??[],w=e.activeApproval??null;return(0,L.jsxs)(mx,{activeTab:e.activeTab,actions:d===void 0?void 0:f===void 0?(0,L.jsxs)(Sc,{"aria-label":v?`Opening in browser`:`Open in browser`,className:`embedded-project-browser-action`,disabled:v,onClick:d,type:`button`,variant:`quiet`,children:[v?(0,L.jsx)(Oa,{"aria-hidden":`true`,className:`is-spinning`}):(0,L.jsx)(ga,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:v?`Opening`:`Open in browser`})]}):(0,L.jsx)(Sc,{asChild:!0,className:`embedded-project-browser-action`,variant:`quiet`,children:(0,L.jsxs)(`a`,{"aria-label":`Open in browser`,href:f,onClick:p,rel:`noopener noreferrer`,target:`_blank`,children:[(0,L.jsx)(ga,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:`Open in browser`})]})}),brand:(0,L.jsx)(DC,{label:`Reload Tutti project`,onClick:n}),projectName:e.projectName,meta:x,refreshing:e.refreshing,onRefresh:t,onSelectTab:r,children:[e.refreshMessage===void 0?null:(0,L.jsx)(`div`,{className:`embedded-project-refresh-message`,role:`status`,children:(0,L.jsx)($C,{diagnostic:e.refreshMessage})}),e.activeTab===`project`?(0,L.jsxs)(`div`,{className:`embedded-project-stack`,children:[(0,L.jsx)(hx,{...e.projectStatus}),S===null?null:(0,L.jsx)(Cx,{title:S.title,summary:S.summary,request:S.request,contextLabel:S.ownerLabel,messages:C.map(e=>({id:e.id,author:e.author,body:e.body,time:e.time,avatar:(0,L.jsx)(QC,{message:e})})),replyCount:C.filter(e=>e.messageKind===`user_text`).length,draft:e.roundDraft??``,defaultOpen:!0,readOnly:S.status!==`writable`,status:S.status===`writable`?`pending`:`done`,statusLabel:S.status===`writable`?`needs input`:`submitted`,sendPending:h,submitPending:g,onDraftChange:e=>s?.(e),onSendMessage:e=>{e.preventDefault(),c?.()},onSubmitRound:()=>l?.()}),w===null?null:(0,L.jsx)(Dx,{title:w.title,summary:w.summary,...w.reason===void 0?{}:{reason:w.reason},...w.detail===void 0?{}:{detail:w.detail,...w.detailLabel===void 0?{}:{detailLabel:w.detailLabel},...w.detailCode===void 0?{}:{detailCode:w.detailCode}},status:w.status,statusLabel:w.statusLabel,decisions:w.decisions,decisionPending:_,...w.resolutionLabel===void 0?{}:{resolutionLabel:w.resolutionLabel},onDecide:e=>u?.(w.approvalId,e)}),(0,L.jsx)(lx,{...e.scratchpad,empty:(0,L.jsx)(oo,{children:`Scratchpad is empty.`}),showSubmitAction:!0,submitPending:m,actionsDisabled:o===void 0,...o===void 0?{}:{onSubmitScratchpad:o},onOpenCompiledTask:i})]}):e.activeTab===`work`?(0,L.jsx)(`div`,{className:`embedded-project-work`,children:(0,L.jsx)(Ix,{layout:`stacked`,modules:e.worklist.modules,taskCount:e.worklist.taskCount,...e.worklist.detail===void 0?{}:{detail:e.worklist.detail},...e.worklist.detailPlaceholder===void 0?{}:{detailPlaceholder:e.worklist.detailPlaceholder},empty:(0,L.jsx)(oo,{children:`No compiled tasks.`}),onSelectTask:i})}):e.activeTab===`references`?(0,L.jsx)(`div`,{className:`embedded-project-references`,children:e.references.kind===`loading`?(0,L.jsx)(Ux,{beforeContent:y===void 0?void 0:(0,L.jsx)(hS,{...y}),files:[],empty:(0,L.jsx)(so,{count:3}),onSelectFile:a}):e.references.kind===`error`?(0,L.jsx)(Ux,{beforeContent:y===void 0?void 0:(0,L.jsx)(hS,{...y}),files:[],empty:(0,L.jsx)(oo,{icon:(0,L.jsx)(no,{"aria-hidden":`true`}),tone:`warning`,details:(0,L.jsx)($C,{diagnostic:e.references,showMessage:!1}),children:e.references.message}),onSelectFile:a}):(0,L.jsx)(Ux,{beforeContent:y===void 0?void 0:(0,L.jsx)(hS,{...y}),files:e.references.files,...e.references.detail===void 0?{}:{detail:e.references.detail},empty:(0,L.jsx)(oo,{children:`No reference files.`}),onSelectFile:a})}):(0,L.jsx)(`div`,{className:`embedded-project-artifacts`,children:(0,L.jsx)(Kx,{state:e.artifacts,error:e.artifactError??null})})]})}function tw({pending:e,onSignOut:t}){return(0,L.jsxs)(Tc,{type:`button`,onClick:t,disabled:e,children:[(0,L.jsx)(Aa,{"aria-hidden":`true`}),`Sign out`]})}function nw(e){return(e.status===`online`||e.status===`reconnecting`)&&e.provider_status===`configured`}function rw(e){return(e.status===`stopped`||e.status===`stale`||e.status===`relay-unavailable`)&&e.provider_status===`configured`}function iw(e){return e.status===`online`?`online`:e.status===`reconnecting`?`connecting`:`stopped`}function aw(e,t){let n=Date.parse(e.activity_at??``),r=Date.parse(t.activity_at??``),i=Number.isNaN(n)?0:n;return(Number.isNaN(r)?0:r)-i||e.display_name.localeCompare(t.display_name,`en`)||e.project_id.localeCompare(t.project_id,`en`)}function ow({project:e,pending:t,onLaunch:n,onOpen:r,onCopyInvite:i,onConnectFeishu:a,onStop:o}){return e.status===`online`||e.status===`reconnecting`?e.surface_profile.kind===`feishu`?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(wc,{type:`button`,disabled:t,onClick:a,children:[(0,L.jsx)(Ea,{"aria-hidden":`true`}),`Connect`]}),(0,L.jsxs)(Tc,{type:`button`,disabled:t,onClick:o,children:[(0,L.jsx)(Qa,{"aria-hidden":`true`}),`Stop`]})]}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(wc,{type:`button`,disabled:t||e.open_url===void 0,onClick:r,children:[(0,L.jsx)(na,{"aria-hidden":`true`}),`Open`]}),(0,L.jsxs)(Tc,{type:`button`,disabled:t,onClick:i,children:[(0,L.jsx)(Ea,{"aria-hidden":`true`}),`Invite`]}),(0,L.jsxs)(Tc,{type:`button`,disabled:t,onClick:o,children:[(0,L.jsx)(Qa,{"aria-hidden":`true`}),`Stop`]})]}):(0,L.jsxs)(Tc,{type:`button`,disabled:t||!rw(e),onClick:n,children:[(0,L.jsx)(Ua,{"aria-hidden":`true`}),`Resume`]})}function sw({createDisabled:e,packageUpdateAction:t,projectsLoading:n,onCreate:r,onPackageUpdate:i,onRefresh:a}){return(0,L.jsxs)(L.Fragment,{children:[t===void 0?null:(0,L.jsx)(up,{description:t.description,descriptionId:`local-console-package-update-description`,disabledTrigger:t.disabled,"aria-live":`polite`,action:(0,L.jsx)(Tc,{type:`button`,disabled:t.disabled,onClick:i,children:t.label})}),(0,L.jsx)(Cc,{type:`button`,label:`Refresh projects`,icon:(0,L.jsx)(Ha,{"aria-hidden":`true`}),disabled:n,onClick:a}),(0,L.jsxs)(wc,{type:`button`,disabled:e,onClick:r,children:[(0,L.jsx)(Ra,{"aria-hidden":`true`}),`New project`]})]})}function cw({version:e,accountName:t,projectCenterHref:n,form:r,models:i,projects:a,projectsLoading:o,sessionLoading:s,sessionError:c,createOpen:l,createStep:u,modelDiscoveryPending:d,launchPending:f,projectActionPending:p,signOutPending:m,packageUpdateAction:h,onChange:g,onCreateOpenChange:_,onCreateSubmit:v,onCreateBack:y,onChooseFolder:b,onRefresh:x,onLaunchExisting:S,onOpenProject:C,onCopyInvite:w,onConnectFeishu:T,onFeishuConnectionOpenChange:E,onCopyFeishuCommand:ee,onStopProject:D,onPackageUpdate:O,onSignOut:k,feishuConnection:A}){let te=[`Folder`,`Details`,`Provider`,`Model`,`Surface`],j=te.findIndex(e=>e.toLowerCase()===u),M=d||f,N=u===`folder`?r.workspacePath.trim()!==``:u===`details`?r.displayName.trim()!==``:u===`provider`?r.baseUrl.trim()!==``&&r.apiKey.trim()!==``:u===`model`?i.length>0&&r.model.trim()!==``:!0,P=a.filter(nw).sort(aw),F=a.filter(rw).sort(aw),ne=[...P,...F],re=e=>(0,I.createElement)(kp,{title:e.display_name,status:iw(e),path:e.workspace_path,createdLabel:Pr(e.created_at),...e.provider_model?.trim()?{modelLabel:e.provider_model.trim()}:{},...e.surface_profile.kind===`feishu`?{surfaceLabel:`Feishu`}:{},actions:(0,L.jsx)(ow,{project:e,pending:p===e.project_id,onLaunch:()=>S(e),onOpen:()=>C(e),onCopyInvite:()=>w(e),onConnectFeishu:()=>T(e),onStop:()=>D(e)}),key:e.project_id});return(0,L.jsx)(IC,{onBrandClick:x,children:(0,L.jsxs)(qs,{children:[(0,L.jsxs)(lp,{className:`local-console-card`,title:`Projects`,accountName:t,accountAction:(0,L.jsx)(tw,{pending:m,onSignOut:k}),"aria-label":`Tutti Local Console`,children:[(0,L.jsx)(fp,{items:[{id:`joined`,label:`Joined projects`,href:n},{id:`local`,label:`This computer`,href:`/console`,current:!0}],action:(0,L.jsx)(sw,{createDisabled:s||c!==null,projectsLoading:o,onCreate:()=>_(!0),onPackageUpdate:O,onRefresh:x,...h===void 0?{}:{packageUpdateAction:h}})}),(0,L.jsx)(_p,{"aria-label":`Projects on this computer`,children:o||s?(0,L.jsx)(bp,{"aria-label":`Loading local projects`,children:(0,L.jsx)(so,{})}):c===null?ne.length===0?(0,L.jsx)(bp,{children:(0,L.jsx)(oo,{children:`No available projects on this computer.`})}):ne.map(re):(0,L.jsx)(bp,{children:(0,L.jsx)(oo,{children:c})})}),e===void 0?null:(0,L.jsxs)(`footer`,{className:`local-console-version`,"aria-label":`Tutti version ${e}`,children:[`Tutti `,e]})]}),(0,L.jsxs)(Cp,{open:l,onOpenChange:_,steps:te,currentStep:Math.max(0,j),closeDisabled:M,explicitCloseOnly:!0,onSubmit:v,backAction:u===`folder`?void 0:(0,L.jsxs)(Tc,{type:`button`,disabled:M,onClick:y,children:[(0,L.jsx)(ta,{"aria-hidden":`true`}),`Back`]}),action:(0,L.jsxs)(wc,{type:`submit`,disabled:!N||M||s,children:[u===`surface`?(0,L.jsx)(Ua,{"aria-hidden":`true`}):(0,L.jsx)(na,{"aria-hidden":`true`}),u===`provider`&&d?`Checking provider`:u===`surface`?f?`Launching`:`Launch and continue`:`Continue`]}),children:[u===`folder`?(0,L.jsx)(Ep,{title:`Project folder`,description:`Choose an existing folder on this machine. It can be empty or contain an existing project.`,children:(0,L.jsxs)(Tp,{children:[(0,L.jsx)(Mc,{"aria-label":`Project folder`,autoComplete:`off`,value:r.workspacePath,onChange:e=>g({workspacePath:e.target.value}),placeholder:`Enter an absolute project folder path`,autoFocus:!0}),(0,L.jsxs)(Tc,{type:`button`,onClick:b,children:[(0,L.jsx)(xa,{"aria-hidden":`true`}),`Choose folder`]})]})}):null,u===`details`?(0,L.jsx)(Ep,{title:`Project details`,description:`Describe what you want to build with this project.`,children:(0,L.jsxs)(wp,{children:[(0,L.jsx)(Ic,{label:`Project name`,className:`local-console-field-wide`,children:(0,L.jsx)(Mc,{autoComplete:`off`,value:r.displayName,maxLength:80,onChange:e=>g({displayName:e.target.value}),placeholder:`Enter a project name`,autoFocus:!0})}),(0,L.jsx)(Ic,{label:`Project description (optional)`,className:`local-console-field-wide`,children:(0,L.jsx)(Nc,{value:r.description,maxLength:160,onChange:e=>g({description:e.target.value}),placeholder:`A short project description helps Tutti produce better code`})})]})}):null,u===`provider`?(0,L.jsx)(Ep,{title:`Provider`,description:(0,L.jsxs)(L.Fragment,{children:[`Enter an endpoint compatible with the`,` `,(0,L.jsx)(Rc,{href:kC,"aria-label":`Tutti Responses API provider guide (opens in a new tab)`,icon:(0,L.jsx)(ua,{"aria-hidden":`true`}),children:`OpenAI Responses API`}),`. Credentials stay only on this machine.`]}),children:(0,L.jsxs)(wp,{children:[(0,L.jsx)(Ic,{label:`Base URL`,children:(0,L.jsx)(Mc,{autoComplete:`off`,inputMode:`url`,type:`url`,value:r.baseUrl,onChange:e=>g({baseUrl:e.target.value}),placeholder:`Enter Provider Base URL`,autoFocus:!0})}),(0,L.jsx)(Ic,{label:`API key`,children:(0,L.jsx)(Mc,{autoComplete:`off`,type:`password`,value:r.apiKey,onChange:e=>g({apiKey:e.target.value}),placeholder:`Enter API key`})})]})}):null,u===`model`?(0,L.jsx)(Ep,{title:`Model`,description:`Choose an available model or type another model name.`,children:(0,L.jsx)(Ic,{label:`Model`,children:(0,L.jsx)(Pc,{autoComplete:`off`,value:r.model,options:i,maxVisibleOptions:8,onValueChange:e=>g({model:e}),placeholder:`Choose or enter a model`,autoFocus:!0})})}):null,u===`surface`?(0,L.jsx)(Ep,{title:`Where will this project be used?`,description:`Choose the collaboration surface for this project. This choice cannot be changed later.`,children:(0,L.jsx)(Dp,{value:r.surface,onValueChange:e=>g({surface:e})})}):null]}),A===null?null:(0,L.jsx)(hp,{open:!0,onOpenChange:E,projectName:A.projectName,state:A.state,...A.command===void 0?{}:{command:A.command},...A.unavailableMessage===void 0?{}:{unavailableMessage:A.unavailableMessage},onCopyCommand:ee})]})})}function lw({onBrandClick:e,sessionError:t=null,...n}){let r={...n,error:n.error??t};return(0,L.jsx)(RC,{onBrandClick:e,auth:(0,L.jsx)(HC,{...r}),mobileAuth:(0,L.jsx)(VC,{...r})})}function uw({account:e,projects:t,loading:n,error:r,openPending:i,logoutPending:a,joinLinkForm:o,joinOpen:s,localScopeHref:c,localHandoffOpen:l,localHandoffStatus:u,localHandoffRetryHref:d,onJoinOpenChange:f,onLocalHandoffOpenChange:p,onLocalScopeSelect:m,onCopyLaunchCommand:h,onBrandClick:g,onLogout:_,onOpenProject:v}){let y=[...t.filter(e=>e.hostStatus===`online`),...t.filter(e=>e.hostStatus===`unknown`),...t.filter(e=>e.hostStatus===`offline`)],b=e=>(0,L.jsx)(yp,{title:e.displayName,status:e.hostStatus,details:[{label:`Role`,value:e.membershipLabel},{label:`Opened`,value:e.lastOpenedLabel}],disabled:!e.canOpen||i,onClick:()=>v(e.relayProjectRef)},e.relayProjectRef);return(0,L.jsx)(IC,{onBrandClick:g,children:(0,L.jsxs)(qs,{children:[(0,L.jsxs)(lp,{title:`Projects`,...e===null?{}:{accountName:e.displayName,accountAction:(0,L.jsx)(tw,{pending:a,onSignOut:_})},"aria-label":`Project Center`,children:[(0,L.jsx)(fp,{items:[{id:`joined`,label:`Joined projects`,href:`/projects`,current:!0},{id:`local`,label:`This computer`,href:c,onClick:m}],action:(0,L.jsxs)(wc,{type:`button`,onClick:()=>f(!0),children:[(0,L.jsx)(Ra,{"aria-hidden":`true`}),`Join project`]})}),(0,L.jsx)(_p,{"aria-label":`Joined projects`,children:n?(0,L.jsx)(bp,{"aria-label":`Loading projects`,children:(0,L.jsx)(so,{})}):r===null?y.length===0?(0,L.jsx)(bp,{"aria-label":`No joined projects`,children:(0,L.jsx)(oo,{children:`No joined projects yet.`})}):y.map(b):(0,L.jsx)(bp,{"aria-label":`Project Center error`,children:(0,L.jsx)(oo,{tone:`error`,children:r})})})]}),(0,L.jsx)(Sp,{open:s,onOpenChange:f,inputLabel:`Invitation link or message`,placeholder:`Paste an invitation link or message`,value:o.value,error:o.error,onValueChange:o.onChange,"aria-label":`Join a project`,onSubmit:e=>{e.preventDefault(),o.onSubmit()}}),(0,L.jsx)(mp,{open:l,onOpenChange:p,status:u,description:u===`failed`?`Tutti did not return to this tab. Try again, or update and start Tutti with the command below.`:`Tutti runs locally to create and host projects. If it does not open, run this command in Terminal.`,command:`npm install -g @xfey/tutti && tutti`,onCopyCommand:h,retryHref:d,onRetry:m})]})})}function dw({form:e,pending:t,tokenMissing:n,onChange:r}){return(0,L.jsxs)(`div`,{className:`form-stack`,children:[(0,L.jsx)(Ic,{label:`Project name`,children:(0,L.jsx)(Mc,{autoComplete:`off`,disabled:t||n,type:`text`,value:e.projectName,onChange:e=>r({projectName:e.target.value}),placeholder:`tutti-default`})}),(0,L.jsx)(Ic,{label:`OpenAI API key`,children:(0,L.jsx)(Mc,{autoComplete:`off`,disabled:t||n,type:`password`,value:e.apiKey,onChange:e=>r({apiKey:e.target.value}),placeholder:`sk-...`})}),(0,L.jsx)(Ic,{label:`Base URL`,children:(0,L.jsx)(Mc,{autoComplete:`off`,disabled:t||n,type:`url`,value:e.baseUrl,onChange:e=>r({baseUrl:e.target.value}),placeholder:`https://api.openai.com/v1`})}),(0,L.jsx)(Ic,{label:`Default model`,children:(0,L.jsx)(Mc,{autoComplete:`off`,disabled:t||n,type:`text`,value:e.defaultModel,onChange:e=>r({defaultModel:e.target.value}),placeholder:`gpt-5.5`})})]})}function fw({form:e,statusLabel:t,configured:n,loading:r,pending:i,openProjectPending:a=!1,tokenMissing:o,error:s,success:c,onChange:l,onSubmit:u,onRetry:d,onBrandClick:f}){let p=i||a;return(0,L.jsx)(LC,{label:`Project setup`,onBrandClick:f,children:(0,L.jsxs)(op,{title:`Project setup`,description:`Configure the provider for this project.`,size:`wide`,onSubmit:u,action:o?(0,L.jsxs)(Tc,{type:`button`,disabled:!0,children:[(0,L.jsx)(no,{"aria-hidden":`true`}),`Missing token`]}):s!==null&&r?(0,L.jsx)(Tc,{type:`button`,onClick:d,children:`Retry`}):a?(0,L.jsxs)(Tc,{type:`button`,disabled:!0,children:[(0,L.jsx)(na,{"aria-hidden":`true`}),`Opening project`]}):(0,L.jsxs)(wc,{type:`submit`,disabled:i||e.apiKey.trim()===``||e.projectName.trim()===``,children:[i?`Saving`:`Save provider`,(0,L.jsx)(Ga,{"aria-hidden":`true`})]}),feedback:(0,L.jsxs)(L.Fragment,{children:[c===null?null:(0,L.jsx)(oo,{icon:(0,L.jsx)(la,{"aria-hidden":`true`}),children:c}),s===null?null:(0,L.jsx)(Lc,{children:s})]}),children:[(0,L.jsx)(sp,{projectName:`OpenAI provider`,hostLabel:t,hostOnline:n,members:(0,L.jsx)(Ta,{"aria-hidden":`true`})}),(0,L.jsx)(cp,{label:`Status`,value:r?`Loading`:t,action:n?(0,L.jsx)(la,{"aria-hidden":`true`}):null}),(0,L.jsx)(dw,{form:e,pending:p,tokenMissing:o,onChange:l})]})})}function pw({tone:e}){return e===`pending`?(0,L.jsx)(no,{"aria-hidden":`true`}):e===`failed`?(0,L.jsx)(da,{"aria-hidden":`true`}):e===`done`?(0,L.jsx)(oa,{"aria-hidden":`true`}):(0,L.jsx)(Oa,{"aria-hidden":`true`})}function mw({members:e}){return e===void 0||e.length===0?null:(0,L.jsx)($s,{"aria-label":`Members`,children:e.map(e=>(0,L.jsx)(XC,{avatar:e.avatar,label:e.displayName},e.key))})}function hw({activePage:e,statusShortcuts:t,unread:n,artifactSignal:r,mobileContext:i,rail:a,children:o,onOpenProjectCenter:s,onOpenChat:c,onOpenWorklist:l,onOpenReferences:u,onOpenArtifacts:d,onOpenSkills:f,onOpenTimeline:p,onOpenSettings:m,onActivateStatusShortcut:h,getStatusShortcutAriaControls:g}){let _=e!==`chat`&&n?.chat===!0,v=e!==`worklist`&&n?.worklist===!0,y=r?.status===`live`,b=e!==`references`&&n?.references===!0,x=e!==`skills`&&n?.skills===!0;return(0,L.jsx)(Ys,{children:(0,L.jsx)(Xs,{...a===void 0?{}:{rail:a},children:(0,L.jsx)(Zs,{className:`is-headerless`,sidebar:(0,L.jsxs)(zc,{brand:(0,L.jsx)(EC,{...s===void 0?{}:{onClick:s}}),mobileTitle:i.title,...i.meta===void 0?{}:{mobileMeta:i.meta},...i.action===void 0?{}:{mobileAction:i.action},...t.length===0?{}:{status:t.map(e=>(0,I.createElement)(Hc,{icon:(0,L.jsx)(pw,{tone:e.tone}),label:e.label,tone:e.tone,onClick:()=>h?.(e),...g?.(e)===void 0?{}:{"aria-controls":g(e)},key:e.key}))},footer:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(MC,{}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(qa,{"aria-hidden":`true`}),label:`Settings`,active:e===`settings`,onClick:e===`settings`?void 0:m})]}),children:[(0,L.jsx)(Vc,{icon:(0,L.jsx)(zb,{"aria-hidden":`true`}),label:`Chat`,active:e===`chat`,badge:_?{label:`Unread messages`}:!1,onClick:e===`chat`?void 0:c}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(Da,{"aria-hidden":`true`}),label:`Worklist`,active:e===`worklist`,badge:v?{label:`Unread worklist updates`}:!1,onClick:e===`worklist`?void 0:l}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(Fa,{"aria-hidden":`true`}),label:`Artifacts`,active:e===`artifacts`,badge:y?{label:`Live preview available`,text:`Live`,variant:`pill`}:!1,onClick:e===`artifacts`?void 0:d}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(ya,{"aria-hidden":`true`}),label:`References`,active:e===`references`,badge:b?{label:`New reference files`}:!1,onClick:e===`references`?void 0:u}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(Xa,{"aria-hidden":`true`}),label:`Skills`,active:e===`skills`,badge:x?{label:`New skill updates`}:!1,onClick:e===`skills`?void 0:f}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(aa,{"aria-hidden":`true`}),label:`Timeline`,active:e===`timeline`,onClick:e===`timeline`?void 0:p})]}),children:o})})})}function gw(){return(0,L.jsx)(Ac,{src:CC,className:`empty-state-brand-logo`})}function _w(e){return(0,L.jsx)(oo,{watermark:(0,L.jsx)(gw,{}),...e})}var vw=`tutti.execution-score-themes.v1`,yw=40,bw={assignments:[],bag:[]};function xw(){return{assignments:[],bag:[]}}function Sw(){try{return typeof window>`u`?null:window.sessionStorage}catch{return null}}function Cw(e,t){if(typeof e!=`object`||!e)return null;let n=e;if(!Array.isArray(n.assignments)||!Array.isArray(n.bag))return null;let r=n.assignments.filter(e=>typeof e==`object`&&!!e&&typeof e.identity==`string`&&t.has(String(e.themeId))),i=n.bag.filter(e=>typeof e==`string`&&t.has(e)),a=typeof n.recent==`string`&&t.has(n.recent)?n.recent:void 0;return{assignments:r,bag:i,...a===void 0?{}:{recent:a}}}function ww(e,t){if(e===null)return bw;try{let n=e.getItem(vw);return n===null?xw():Cw(JSON.parse(n),t)??xw()}catch{return bw}}function Tw(e,t){if(bw=t,e!==null)try{e.setItem(vw,JSON.stringify(t))}catch{}}function Ew(e,t,n){let r=e.map(e=>e.id);for(let e=r.length-1;e>0;--e){let t=Math.min(e,Math.max(0,Math.floor(n()*(e+1))));[r[e],r[t]]=[r[t],r[e]]}if(r.length>1&&r[0]===t){let e=r.findIndex(e=>e!==t);[r[0],r[e]]=[r[e],r[0]]}return r}function Dw(e,t={}){let n=t.themes??Us;if(n.length===0)throw Error(`Execution score themes are unavailable`);let r=new Map(n.map(e=>[e.id,e])),i=new Set(r.keys()),a=t.storage===void 0?Sw():t.storage,o=ww(a,i),s=o.assignments.find(t=>t.identity===e),c=s===void 0?void 0:r.get(s.themeId);if(c!==void 0)return c;let l=t.random??Math.random,u=o.bag.length>0?[...o.bag]:Ew(n,o.recent,l),d=u.shift(),f=d===void 0?void 0:r.get(d);if(f===void 0)throw Error(`Execution score themes are unavailable`);return Tw(a,{assignments:[...o.assignments,{identity:e,themeId:f.id}].slice(-yw),bag:u,recent:f.id}),f}function Ow(e){return`round-card-${e}`}function kw(e){return`approval-card-${e}`}function Aw(e){return`chat-message-${e}`}var jw=`workspace-scratchpad`,Mw=720,Nw=80,Pw=160,Fw=96,Iw=160,Lw=2;function Rw(e){return e.completionSource?.activityRef??e.completionSource?.workflowRef??e.completionSource?.taskId??e.key}function zw({progress:e}){let t=Rw(e),[n]=(0,I.useState)(()=>Dw(t)),r=(0,I.useRef)(t),i=(0,I.useRef)(e.tone),[a,o]=(0,I.useState)(null);if((0,I.useEffect)(()=>{let n=r.current,a=i.current;if(r.current=t,i.current=e.tone,e.tone!==`running`||a===`pending`||n===t){o(null);return}o(t);let s=window.setTimeout(()=>{o(e=>e===t?null:e)},Mw);return()=>{window.clearTimeout(s)}},[e.tone,t]),e.tone===`running`||e.tone===`pending`||e.tone===`complete`){let r=e.tone===`running`&&a===t,i=e.steps.find(e=>e.status===`running`||e.status===`pending`)??e.steps.at(-1),o=e.completionTarget?.kind===`task`?`Task completed`:`Procedure completed`,s=e.tone===`complete`?void 0:i?.detail??(e.tone===`pending`?e.summary:void 0),c=e.tone===`complete`?void 0:i?.detailPrefix,l=e.tone===`complete`?void 0:i?.activityLabel,u=e.tone===`complete`?void 0:i?.elapsedLabel,d=e.tone===`complete`?void 0:i?.metrics,f=e.tone===`running`&&i?.id===`implement`&&s!==void 0;return(0,L.jsx)(Ts,{stageLabel:r?`Loading the next movement…`:e.tone===`complete`?o:i?.label??e.summary,...r||s===void 0?{}:{stageDetail:s},...r||c===void 0?{}:{stageDetailPrefix:c},...r||l===void 0?{}:{stageActivity:l},...r||!f?{}:{detailMode:`live`},...r||u===void 0?{}:{elapsedLabel:u},...r||d===void 0?{}:{metrics:d},scoreLabel:r?`Loading the next movement score`:e.tone===`complete`?`${o} score cadence`:e.tone===`pending`?`Execution score paused while waiting for input`:`${i?.label??`Execution`} running score using ${n.shortName}`,state:r?`handoff`:e.tone===`complete`?`complete`:e.tone===`pending`?`paused`:`running`,units:n.units,playbackBpm:n.tempo,openingClef:n.clef,keySignatureFifths:n.keySignatureFifths,timeSignature:n.meter})}return(0,L.jsx)(px,{title:e.title,summary:e.summary,tone:e.tone,steps:e.steps,...e.metaLabel===void 0?{}:{metaLabel:e.metaLabel}})}function Bw(e){if(e===void 0)return null;let t=Date.parse(e);return Number.isNaN(t)?null:t}function Vw(e,t){if(e===null)return null;let n=Bw(e.requestedAt);if(n===null)return t.length;let r=t.findIndex(e=>{let t=Bw(e.createdAt);return t!==null&&t>n});return r===-1?t.length:r}function Hw(e,{focusSelector:t}={}){let n=typeof document>`u`?null:document.getElementById(e);n!==null&&(n.scrollIntoView({block:`center`}),t!==void 0&&n.querySelector(t)?.focus({preventScroll:!0}))}function Uw(e){return e.messageKind===`system_notice`&&e.workflowRef!==void 0&&(e.body.startsWith(`Worklist updated with `)||e.body===`Worklist is already covered by existing tasks.`)}function Ww(e,t){if(t===void 0)return;let n=t.label.trim(),r=t.handle?.trim()??n;if(n===``||r===``)return;let i=r.toLocaleLowerCase();e.has(i)||e.set(i,{id:t.id,label:n,handle:r})}function Gw({members:e,messages:t,clarificationMessagesByRoundId:n}){let r=new Map;Ww(r,{id:`tutti`,label:`Tutti`,handle:`tutti`});for(let t of e)Ww(r,{id:t.key,label:t.displayName});for(let e of t)Ww(r,{id:`message:${e.author}`,label:e.author,...e.avatarKind===`tutti`?{handle:`tutti`}:{}});for(let e of Object.values(n))for(let t of e)Ww(r,{id:`round-message:${t.author}`,label:t.author,...t.avatarKind===`tutti`?{handle:`tutti`}:{}});return[...r.values()]}function Kw({message:e}){return e.avatarKind===`tutti`?(0,L.jsx)(ZC,{label:e.author}):(0,L.jsx)(XC,{avatar:e.avatar??{kind:`initials`,initials:Zr(e.author),color:`blue`},label:e.author,online:e.online})}function qw({projectName:e,projectDescription:t=``,members:n,messages:r,scratchpad:i,executionProgress:a=null,activeApproval:o=null,activeClarification:s,clarificationMessagesByRoundId:c,statusShortcuts:l,unread:u,artifactSignal:d,draft:f,roundDraft:p,sendPending:m,scratchpadSyncPending:h=!1,scratchpadActionsDisabled:g=!1,scratchpadSubmitPending:_=!1,referenceUploadPending:v=!1,focusMessageId:y=null,messageHistoryIdentity:b=`latest`,initialMessagePosition:x=y===null?`latest`:`focus`,hasOlderMessages:S=!1,hasNewerMessages:C=!1,loadingOlderMessages:w=!1,loadingNewerMessages:T=!1,historyConnectedToLatest:E=!0,roundSendPending:ee=!1,roundSubmitPending:D=!1,submittedRoundId:O=null,approvalDecisionPending:k=!1,projectNameSaving:A=!1,projectDescriptionSaving:te=!1,loading:j=!1,unavailable:M=!1,onDraftChange:N,onMessageFocused:P,onInitialMessagePositioned:F,onLoadOlderMessages:ne,onLoadNewerMessages:re,onJumpToLatest:ie,onUploadReferenceFile:ae,onOpenReferenceFile:oe,onRoundDraftChange:se,onSendMessage:ce,onSendRoundMessage:le,onSubmitRound:ue,onDecideApproval:de,onSubmitScratchpad:fe,onUpdateProjectDisplayName:pe,onUpdateProjectDescription:me,onOpenProjectCenter:he,onOpenWorklist:ge,onOpenWorklistTask:_e,onRetryTask:ve,onOpenReferences:ye,onOpenArtifacts:be,onViewArtifactFeedback:xe,onOpenSkills:Se,onOpenTimeline:Ce,onOpenSettings:we,onActivateStatusShortcut:Te}){let[Ee,De]=(0,I.useState)(!1),Oe=(0,I.useRef)(null),ke=(0,I.useRef)(!1),Ae=(0,I.useRef)(null),je=(0,I.useRef)(null),Me=(0,I.useRef)(!0),Ne=(0,I.useRef)(void 0),Pe=(0,I.useRef)(b),Fe=(0,I.useRef)(null),Ie=(0,L.jsx)(tx,{className:`chat-project-title-edit`,value:e,placeholder:`Untitled project`,ariaLabel:`Edit project name`,maxLength:Nw,saving:A,disabled:j,...pe===void 0?{}:{onUpdate:pe}}),Le=(0,L.jsx)(tx,{className:`chat-project-description-edit`,value:t,placeholder:`Add a project description`,ariaLabel:`Edit project description`,maxLength:Pw,allowEmpty:!0,saving:te,disabled:j,...me===void 0?{}:{onUpdate:me}}),Re=s!==null&&r.some(e=>e.id===s.cardMessageId),ze=new Map;for(let e of r)e.clarificationCard!==void 0&&e.workflowRef!==void 0&&ze.set(e.workflowRef,e.clarificationCard.roundId);let Be=new Map;for(let e of r){if(!Uw(e)||e.workflowRef===void 0)continue;let t=ze.get(e.workflowRef);t!==void 0&&Be.set(t,{...e,id:`round-result:${e.id}`,messageKind:`agent_text`,author:`Tutti`,avatarKind:`tutti`,online:!1})}let Ve=e=>{let t=c[e]??[],n=Be.get(e);return n===void 0||t.some(e=>e.body===n.body)?t:[...t,n]},He=Gw({members:n,messages:r,clarificationMessagesByRoundId:c}),Ue=ae===void 0?void 0:e=>{for(let t of e)ae(t)};(0,I.useLayoutEffect)(()=>{Pe.current!==b&&(Pe.current=b,ke.current=!1,Ae.current=null,Ne.current=void 0)},[b]),(0,I.useLayoutEffect)(()=>{let e=Ae.current;if(e!==null){if(r[0]?.id!==e.firstMessageId){let t=Oe.current;t!==null&&(t.scrollTop=e.scrollTop+Math.max(0,t.scrollHeight-e.scrollHeight),Me.current=t.scrollHeight-t.clientHeight-t.scrollTop<=Lw),Ae.current=null;return}w||(Ae.current=null)}},[w,r]),(0,I.useEffect)(()=>{if(y===null||!r.some(e=>e.id===y))return;ke.current=!0,Hw(Aw(y));let e=Oe.current;e!==null&&(Me.current=e.scrollHeight-e.clientHeight-e.scrollTop<=Lw),P?.()},[y,r,P]),(0,I.useEffect)(()=>{if(ke.current||j||M||x!==`latest`||y!==null||r.length===0&&s===null&&o===null)return;let e=Oe.current;if(e===null)return;let t=window.requestAnimationFrame(()=>{e.scrollTop=e.scrollHeight,Me.current=!0,ke.current=!0});return()=>window.cancelAnimationFrame(t)},[o,s,y,j,r,M]),(0,I.useEffect)(()=>{if(ke.current||j||M||x!==`start`||y!==null)return;let e=Oe.current;if(e===null)return;let t=window.requestAnimationFrame(()=>{e.scrollTop=0,Me.current=e.scrollHeight<=e.clientHeight+Lw,ke.current=!0,F?.()});return()=>window.cancelAnimationFrame(t)},[y,x,j,r,F,M]);let We=()=>{if(!S||w||Ae.current!==null||ne===void 0)return;let e=Oe.current;e!==null&&(Ae.current={firstMessageId:r[0]?.id,scrollHeight:e.scrollHeight,scrollTop:e.scrollTop},ne())},Ge=()=>{!C||T||re===void 0||re()},Ke=e=>{let t=e.currentTarget;Me.current=t.scrollHeight-t.clientHeight-t.scrollTop<=Lw,je.current!==null&&window.cancelAnimationFrame(je.current),je.current=window.requestAnimationFrame(()=>{if(je.current=null,t.scrollTop<=Fw){We();return}t.scrollHeight-t.clientHeight-t.scrollTop<=Iw&&Ge()})};(0,I.useEffect)(()=>()=>{je.current!==null&&window.cancelAnimationFrame(je.current)},[]),(0,I.useEffect)(()=>{if(j||M||w||T||!ke.current)return;let e=Oe.current;if(e===null||e.scrollHeight>e.clientHeight+Lw)return;let t=window.requestAnimationFrame(()=>{S?We():C&&Ge()});return()=>window.cancelAnimationFrame(t)},[C,S,j,T,w,r,M]);let qe=r.at(-1)?.id;(0,I.useEffect)(()=>{let e=Ne.current;if(Ne.current=qe,e===void 0||e===qe||!E||!Me.current||!ke.current||Ae.current!==null)return;let t=Oe.current;if(t===null)return;let n=window.requestAnimationFrame(()=>{t.scrollTop=t.scrollHeight,Me.current=!0});return()=>window.cancelAnimationFrame(n)},[E,qe]);let Je=({key:e,roundId:t,title:n,summary:r,request:i,contextLabel:a,writable:o})=>{let s=Ve(t),c=s.filter(e=>e.messageKind===`user_text`).length;return(0,L.jsx)(Cx,{id:Ow(t),tabIndex:-1,title:n,summary:r,request:i,...a===void 0?{}:{contextLabel:a},messages:s.map(e=>({id:e.id,author:e.author,body:e.body,time:e.time,avatar:(0,L.jsx)(Kw,{message:e})})),replyCount:c,draft:o?p:``,defaultOpen:!0,readOnly:!o,status:o?`pending`:`done`,statusLabel:o?`needs input`:`submitted`,mentionOptions:He,sendPending:o&&ee,submitPending:o&&D,onDraftChange:se,onSendMessage:le,onSubmitRound:ue},`${e}:${o?`writable`:`sealed`}`)},Ye=e=>{if(e.target.kind===`approval`&&o!==null){if(!E){Fe.current=e,ie?.();return}Hw(kw(o.approvalId),{focusSelector:`.chat-event-card-header`});return}if(e.target.kind===`clarification`&&s!==null){if(!E&&!Re){Fe.current=e,ie?.();return}Hw(Ow(s.roundId),{focusSelector:`.chat-event-card-header`});return}if(e.target.kind===`scratchpad`){Hw(jw);return}Te?.(e)};(0,I.useEffect)(()=>{let e=Fe.current;if(!E||j||e===null)return;Fe.current=null;let t=window.requestAnimationFrame(()=>{e.target.kind===`approval`&&o!==null?Hw(kw(o.approvalId),{focusSelector:`.chat-event-card-header`}):e.target.kind===`clarification`&&s!==null&&Hw(Ow(s.roundId),{focusSelector:`.chat-event-card-header`})});return()=>window.cancelAnimationFrame(t)},[o,s,E,j,r]);let Xe=e=>s===null?null:Je({key:e,roundId:s.roundId,title:s.title,summary:s.summary,request:s.request,contextLabel:s.ownerLabel,writable:s.status===`writable`&&s.roundId!==O}),Ze=()=>o===null?null:(0,L.jsx)(Dx,{id:kw(o.approvalId),tabIndex:-1,title:o.title,summary:o.summary,...o.reason===void 0?{}:{reason:o.reason},...o.detail===void 0?{}:{detail:o.detail,...o.detailLabel===void 0?{}:{detailLabel:o.detailLabel},...o.detailCode===void 0?{}:{detailCode:o.detailCode}},status:o.status,statusLabel:o.statusLabel,decisions:o.decisions,decisionPending:k,...o.resolutionLabel===void 0?{}:{resolutionLabel:o.resolutionLabel},onDecide:e=>de?.(o.approvalId,e)},`approval:${o.approvalId}:${o.status}`),Qe=e=>{let t=e.clarificationCard;if(t===void 0)return null;let n=s!==null&&s.roundId===t.roundId;return Je({key:e.id,roundId:t.roundId,title:n&&s!==null?s.title:t.title??`Clarification round ${t.roundId.slice(-4)}`,summary:n&&s!==null?s.summary:t.summary,request:n&&s!==null?s.request:t.summary,...n&&s!==null?{contextLabel:s.ownerLabel}:{},writable:n&&t.status===`writable`&&t.roundId!==O})},$e=e=>{if(Uw(e)&&ze.has(e.workflowRef??``))return null;if(e.messageKind===`clarification_card`)return Qe(e);if(s!==null&&e.id===s.cardMessageId)return Xe(e.id);if(e.taskResult!==void 0)return(0,L.jsx)(kx,{id:Aw(e.id),tabIndex:-1,className:e.id===y?`is-focused`:void 0,title:e.taskResult.title,status:e.taskResult.status,taskId:e.taskResult.taskId,taskTitle:e.taskResult.taskTitle,summary:e.taskResult.summary,...e.taskResult.moduleName===void 0?{}:{moduleName:e.taskResult.moduleName},...e.taskResult.finalNote===void 0?{}:{finalNote:e.taskResult.finalNote},...e.taskResult.generatedFiles===void 0?{}:{generatedFiles:e.taskResult.generatedFiles},...e.taskResult.errorCode===void 0?{}:{errorCode:e.taskResult.errorCode},...e.taskResult.retryState===void 0?{}:{retryState:e.taskResult.retryState},...e.taskResult.retryState===void 0||e.taskResult.latestRunResultId===void 0||ve===void 0?{}:{onRetry:()=>ve(e.taskResult.taskId,e.taskResult.latestRunResultId)},..._e===void 0?{}:{onOpenTask:_e}},e.id);let t=e.referenceFile;return(0,L.jsx)(Bb,{id:Aw(e.id),tabIndex:-1,author:e.author,time:e.time,avatar:(0,L.jsx)(Kw,{message:e}),className:e.id===y?`is-focused`:void 0,children:e.artifactFeedback===void 0?t===void 0?e.messageKind===`agent_text`?(0,L.jsx)(Vb,{children:e.body}):(0,L.jsx)(`p`,{children:(0,L.jsx)(Lb,{children:e.body})}):(0,L.jsx)($b,{name:t.name,category:t.category,...t.imageUrl===void 0?{}:{imageUrl:t.imageUrl},onClick:()=>oe?.(t.path)}):(0,L.jsx)(Zx,{artifactTitle:e.artifactFeedback.artifactTitle,annotations:e.artifactFeedback.annotations,...e.artifactFeedback.summary===void 0?{}:{summary:e.artifactFeedback.summary},...xe===void 0?{}:{onViewAnnotation:t=>xe(e.id,t)}})},e.id)},et=E?Vw(o,r):null,tt=()=>{let e=s!==null&&(Re||E)||o!==null&&E;return r.length===0&&!e&&!w&&!T?(0,L.jsx)(_w,{children:`No messages yet`}):(0,L.jsxs)(L.Fragment,{children:[w?(0,L.jsx)(`div`,{className:`chat-history-status`,role:`status`,children:`Loading earlier messages…`}):null,!E||Re?null:Xe(`active-round`),r.map((e,t)=>(0,L.jsxs)(I.Fragment,{children:[et===t?Ze():null,$e(e)]},`timeline:${e.id}`)),et===r.length?Ze():null,T?(0,L.jsx)(`div`,{className:`chat-history-status`,role:`status`,children:`Loading newer messages…`}):null]})},nt=(e,t=!1)=>(0,L.jsx)(lx,{id:e,tabIndex:-1,compact:t,title:i.title,summary:i.summary,sections:i.sections,submitAvailable:i.submitAvailable,...i.pages===void 0?{}:{pages:i.pages},...i.footerNote===void 0?{}:{footerNote:i.footerNote},...i.updatedLabelPrefix===void 0?{}:{updatedLabelPrefix:i.updatedLabelPrefix},syncPending:h,actionsDisabled:g,submitPending:_,onSubmitScratchpad:fe,..._e===void 0?{}:{onOpenCompiledTask:_e},empty:(0,L.jsx)(_w,{children:`Scratchpad empty. Discuss more, tutti together!`}),...i.updatedLabel===void 0?{}:{updatedLabel:i.updatedLabel}}),rt=(0,L.jsx)(`div`,{className:`chat-panel-actions`,children:(0,L.jsx)(mw,{members:n})});return(0,L.jsxs)(hw,{activePage:`chat`,statusShortcuts:l,mobileContext:{title:e,action:(0,L.jsx)(Vc,{className:h?`mobile-scratchpad-trigger is-syncing`:`mobile-scratchpad-trigger`,type:`button`,label:Ee?`Close Scratchpad`:`Open Scratchpad`,active:Ee,"aria-expanded":Ee,"aria-controls":`${jw}-mobile-sheet`,icon:(0,L.jsx)(ax,{"aria-hidden":`true`}),onClick:()=>De(e=>!e)})},...u===void 0?{}:{unread:u},...d===void 0?{}:{artifactSignal:d},onOpenProjectCenter:he,onOpenWorklist:ge,onOpenReferences:ye,onOpenArtifacts:be,onOpenSkills:Se,onOpenTimeline:Ce,onOpenSettings:we,onActivateStatusShortcut:Ye,getStatusShortcutAriaControls:e=>e.target.kind===`approval`&&o!==null&&E?kw(o.approvalId):e.target.kind===`clarification`&&s!==null&&(E||Re)?Ow(s.roundId):e.target.kind===`scratchpad`?jw:void 0,children:[(0,L.jsxs)(`section`,{className:`workspace-grid is-tutti chat-workspace-grid`,"aria-label":`Chat workspace`,children:[j?(0,L.jsx)(ex,{title:Ie,subtitle:Le,actions:rt,children:(0,L.jsx)(so,{})}):M?(0,L.jsx)(ex,{title:Ie,subtitle:Le,actions:rt,children:(0,L.jsx)(_w,{children:`Workspace unavailable`})}):(0,L.jsx)(ex,{title:Ie,subtitle:Le,actions:rt,streamRef:Oe,onStreamScroll:Ke,streamOverlay:C&&ie!==void 0?(0,L.jsx)(Tc,{className:`chat-jump-latest`,type:`button`,onClick:ie,children:`Jump to latest`}):void 0,dropUploadPending:v,...Ue===void 0?{}:{onDropFiles:Ue},composer:(0,L.jsx)(ix,{value:f,pending:m,uploadPending:v,mentionOptions:He,onValueChange:N,onComposerSubmit:ce,...ae===void 0?{}:{onFileUpload:ae}}),empty:(0,L.jsx)(_w,{children:`No messages yet`}),children:tt()}),(0,L.jsxs)(`div`,{className:a===null?`chat-side-column`:`chat-side-column has-progress`,children:[nt(jw),a===null?null:(0,L.jsx)(zw,{progress:a})]})]}),Ee?(0,L.jsxs)(`div`,{className:`mobile-scratchpad-layer is-open`,id:`${jw}-mobile-sheet`,children:[(0,L.jsx)(`button`,{className:`mobile-scratchpad-backdrop`,type:`button`,"aria-label":`Close Scratchpad`,onClick:()=>De(!1)}),(0,L.jsxs)(`section`,{className:`mobile-scratchpad-card`,role:`dialog`,"aria-modal":`true`,"aria-label":`Scratchpad`,children:[(0,L.jsxs)(`div`,{className:`mobile-scratchpad-card-head`,children:[(0,L.jsx)(`h2`,{children:`Scratchpad`}),(0,L.jsx)(Cc,{className:`mobile-scratchpad-close`,type:`button`,label:`Close Scratchpad`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`}),onClick:()=>De(!1)})]}),(0,L.jsx)(`div`,{className:`mobile-scratchpad-card-body`,children:nt(`${jw}-mobile`,!0)})]})]}):null]})}function Jw({statusShortcuts:e,unread:t,state:n,loading:r=!1,unavailable:i=!1,feedback:a,iframeRef:o,onPreviewLoad:s,onOpenProjectCenter:c,onOpenChat:l,onOpenWorklist:u,onOpenReferences:d,onOpenSkills:f,onOpenTimeline:p,onOpenSettings:m,onActivateStatusShortcut:h}){let g=r?{status:`loading`}:i?{status:`not_declared`}:n,_=a?.supported===!0?(0,L.jsx)(Yx,{active:a.open,disabled:a.open?!a.canSubmit:!a.ready,...a.submitPending===void 0?{}:{pending:a.submitPending},title:a.open?a.submitDisabledReason??`Submit comments`:a.ready?`Comments`:a.unavailableReason??`Preparing comments`,onClick:a.open?a.onSubmit:a.onOpen}):void 0,v=a?.supported===!0?(0,L.jsx)(Vc,{type:`button`,label:a.open?`Submit comments`:`Comments`,active:a.open,disabled:a.open?!a.canSubmit:!a.ready,icon:a.open?(0,L.jsx)(oa,{"aria-hidden":`true`}):(0,L.jsx)(Ra,{"aria-hidden":`true`}),onClick:a.open?a.onSubmit:a.onOpen}):void 0,y=a?.open===!0?(0,L.jsx)(Xx,{...a.rail,author:a.author.displayName,avatar:(0,L.jsx)(XC,{avatar:a.author.avatar,label:a.author.displayName})}):void 0;return(0,L.jsx)(hw,{activePage:`artifacts`,statusShortcuts:e,mobileContext:{title:g.status===`declared`?g.title:`Artifacts`,...v===void 0?{}:{action:v}},...t===void 0?{}:{unread:t},artifactSignal:ti(g),...y===void 0?{}:{rail:y},onOpenProjectCenter:c,onOpenChat:l,onOpenWorklist:u,onOpenReferences:d,onOpenSkills:f,onOpenTimeline:p,onOpenSettings:m,onActivateStatusShortcut:h,children:(0,L.jsx)(`section`,{className:`workspace-grid artifacts-workspace-grid`,"aria-label":`Artifacts`,children:(0,L.jsx)(Kx,{state:g,..._===void 0?{}:{headerAction:_},...o===void 0?{}:{iframeRef:o},...s===void 0?{}:{onPreviewLoad:s},...i?{empty:(0,L.jsx)(_w,{children:`Workspace unavailable`})}:{},emptyWatermark:(0,L.jsx)(gw,{})})})})}function Yw({statusShortcuts:e,unread:t,artifactSignal:n,files:r,detail:i,uploadPending:a=!1,fileSortMode:o=`time`,loading:s=!1,unavailable:c=!1,onOpenProjectCenter:l,onOpenChat:u,onOpenWorklist:d,onOpenArtifacts:f,onOpenSkills:p,onOpenTimeline:m,onOpenSettings:h,onActivateStatusShortcut:g,onSelectFile:_,onUploadFile:v,onFileSortModeChange:y}){let b=s||c;return(0,L.jsx)(hw,{activePage:`references`,statusShortcuts:e,mobileContext:{title:`References`,action:(0,L.jsx)(rx,{variant:`bare`,className:`sidebar-button reference-upload-button`,label:`Upload reference`,pendingLabel:`Uploading reference`,pending:a,iconOnly:!0,onFileUpload:v})},...t===void 0?{}:{unread:t},...n===void 0?{}:{artifactSignal:n},onOpenProjectCenter:l,onOpenChat:u,onOpenWorklist:d,onOpenArtifacts:f,onOpenSkills:p,onOpenTimeline:m,onOpenSettings:h,onActivateStatusShortcut:g,children:(0,L.jsx)(`section`,{className:`workspace-grid references-workspace-grid`,"aria-label":`Reference files`,children:(0,L.jsx)(Ux,{files:b?[]:r,...s?{detail:{title:`Loading`,unavailableReason:`Loading`}}:c?{detail:{title:`References unavailable`,unavailableReason:`Workspace unavailable`}}:i===void 0?{}:{detail:i},uploadPending:a,fileSortMode:o,empty:s?(0,L.jsx)(_w,{children:`Loading reference files`}):c?(0,L.jsx)(_w,{children:`Workspace unavailable`}):(0,L.jsx)(_w,{children:`No reference files`}),onSelectFile:_,onUploadFile:v,...y===void 0?{}:{onFileSortModeChange:y}})})})}function Xw(e){return aT(e)&&!Zw(e)&&!lT(e)&&Symbol.asyncIterator in e}function Zw(e){return Array.isArray(e)}function Qw(e){return typeof e==`bigint`}function $w(e){return typeof e==`boolean`}function eT(e){return e instanceof globalThis.Date}function tT(e){return typeof e==`function`}function nT(e){return aT(e)&&!Zw(e)&&!lT(e)&&Symbol.iterator in e}function rT(e){return e===null}function iT(e){return typeof e==`number`}function aT(e){return typeof e==`object`&&!!e}function oT(e){return e instanceof globalThis.RegExp}function sT(e){return typeof e==`string`}function cT(e){return typeof e==`symbol`}function lT(e){return e instanceof globalThis.Uint8Array}function uT(e){return e===void 0}function dT(e){return e.map(e=>gT(e))}function fT(e){return new Date(e.getTime())}function pT(e){return new Uint8Array(e)}function mT(e){return new RegExp(e.source,e.flags)}function hT(e){let t={};for(let n of Object.getOwnPropertyNames(e))t[n]=gT(e[n]);for(let n of Object.getOwnPropertySymbols(e))t[n]=gT(e[n]);return t}function gT(e){return Zw(e)?dT(e):eT(e)?fT(e):lT(e)?pT(e):oT(e)?mT(e):aT(e)?hT(e):e}function _T(e){return gT(e)}function vT(e,t){return _T(t===void 0?e:{...t,...e})}function yT(e){return typeof e==`object`&&!!e}function bT(e){return globalThis.Array.isArray(e)&&!globalThis.ArrayBuffer.isView(e)}function xT(e){return e===void 0}function ST(e){return typeof e==`number`}var CT;(function(e){e.InstanceMode=`default`,e.ExactOptionalPropertyTypes=!1,e.AllowArrayObject=!1,e.AllowNaN=!1,e.AllowNullVoid=!1;function t(t,n){return e.ExactOptionalPropertyTypes?n in t:t[n]!==void 0}e.IsExactOptionalProperty=t;function n(t){let n=yT(t);return e.AllowArrayObject?n:n&&!bT(t)}e.IsObjectLike=n;function r(e){return n(e)&&!(e instanceof Date)&&!(e instanceof Uint8Array)}e.IsRecordLike=r;function i(t){return e.AllowNaN?ST(t):Number.isFinite(t)}e.IsNumberLike=i;function a(t){let n=xT(t);return e.AllowNullVoid?n||t===null:n}e.IsVoidLike=a})(CT||={});function wT(e){return globalThis.Object.freeze(e).map(e=>kT(e))}function TT(e){return e}function ET(e){return e}function DT(e){return e}function OT(e){let t={};for(let n of Object.getOwnPropertyNames(e))t[n]=kT(e[n]);for(let n of Object.getOwnPropertySymbols(e))t[n]=kT(e[n]);return globalThis.Object.freeze(t)}function kT(e){return Zw(e)?wT(e):eT(e)?TT(e):lT(e)?ET(e):oT(e)?DT(e):aT(e)?OT(e):e}function G(e,t){let n=t===void 0?e:{...t,...e};switch(CT.InstanceMode){case`freeze`:return kT(n);case`clone`:return _T(n);default:return n}}var AT=class extends Error{constructor(e){super(e)}},jT=Symbol.for(`TypeBox.Transform`),MT=Symbol.for(`TypeBox.Readonly`),NT=Symbol.for(`TypeBox.Optional`),PT=Symbol.for(`TypeBox.Hint`),K=Symbol.for(`TypeBox.Kind`);function FT(e){return aT(e)&&e[MT]===`Readonly`}function IT(e){return aT(e)&&e[NT]===`Optional`}function LT(e){return XT(e,`Any`)}function RT(e){return XT(e,`Argument`)}function zT(e){return XT(e,`Array`)}function BT(e){return XT(e,`AsyncIterator`)}function VT(e){return XT(e,`BigInt`)}function HT(e){return XT(e,`Boolean`)}function UT(e){return XT(e,`Computed`)}function WT(e){return XT(e,`Constructor`)}function GT(e){return XT(e,`Date`)}function KT(e){return XT(e,`Function`)}function qT(e){return XT(e,`Integer`)}function JT(e){return XT(e,`Intersect`)}function YT(e){return XT(e,`Iterator`)}function XT(e,t){return aT(e)&&K in e&&e[K]===t}function ZT(e){return $w(e)||iT(e)||sT(e)}function QT(e){return XT(e,`Literal`)}function $T(e){return XT(e,`MappedKey`)}function eE(e){return XT(e,`MappedResult`)}function tE(e){return XT(e,`Never`)}function nE(e){return XT(e,`Not`)}function rE(e){return XT(e,`Null`)}function iE(e){return XT(e,`Number`)}function aE(e){return XT(e,`Object`)}function oE(e){return XT(e,`Promise`)}function sE(e){return XT(e,`Record`)}function cE(e){return XT(e,`Ref`)}function lE(e){return XT(e,`RegExp`)}function uE(e){return XT(e,`String`)}function dE(e){return XT(e,`Symbol`)}function fE(e){return XT(e,`TemplateLiteral`)}function pE(e){return XT(e,`This`)}function mE(e){return aT(e)&&jT in e}function hE(e){return XT(e,`Tuple`)}function gE(e){return XT(e,`Undefined`)}function _E(e){return XT(e,`Union`)}function vE(e){return XT(e,`Uint8Array`)}function yE(e){return XT(e,`Unknown`)}function bE(e){return XT(e,`Unsafe`)}function xE(e){return XT(e,`Void`)}function SE(e){return aT(e)&&K in e&&sT(e[K])}function CE(e){return LT(e)||RT(e)||zT(e)||HT(e)||VT(e)||BT(e)||UT(e)||WT(e)||GT(e)||KT(e)||qT(e)||JT(e)||YT(e)||QT(e)||$T(e)||eE(e)||tE(e)||nE(e)||rE(e)||iE(e)||aE(e)||oE(e)||sE(e)||cE(e)||lE(e)||uE(e)||dE(e)||fE(e)||pE(e)||hE(e)||gE(e)||_E(e)||vE(e)||yE(e)||bE(e)||xE(e)||SE(e)}var wE=`Argument.Any.Array.AsyncIterator.BigInt.Boolean.Computed.Constructor.Date.Enum.Function.Integer.Intersect.Iterator.Literal.MappedKey.MappedResult.Not.Null.Number.Object.Promise.Record.Ref.RegExp.String.Symbol.TemplateLiteral.This.Tuple.Undefined.Union.Uint8Array.Unknown.Void`.split(`.`);function TE(e){try{return new RegExp(e),!0}catch{return!1}}function EE(e){if(!sT(e))return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n>=7&&n<=13||n===27||n===127)return!1}return!0}function DE(e){return AE(e)||ED(e)}function OE(e){return uT(e)||Qw(e)}function kE(e){return uT(e)||iT(e)}function AE(e){return uT(e)||$w(e)}function jE(e){return uT(e)||sT(e)}function ME(e){return uT(e)||sT(e)&&EE(e)&&TE(e)}function NE(e){return uT(e)||sT(e)&&EE(e)}function PE(e){return uT(e)||ED(e)}function FE(e){return aT(e)&&e[NT]===`Optional`}function IE(e){return XE(e,`Any`)&&jE(e.$id)}function LE(e){return XE(e,`Argument`)&&iT(e.index)}function RE(e){return XE(e,`Array`)&&e.type===`array`&&jE(e.$id)&&ED(e.items)&&kE(e.minItems)&&kE(e.maxItems)&&AE(e.uniqueItems)&&PE(e.contains)&&kE(e.minContains)&&kE(e.maxContains)}function zE(e){return XE(e,`AsyncIterator`)&&e.type===`AsyncIterator`&&jE(e.$id)&&ED(e.items)}function BE(e){return XE(e,`BigInt`)&&e.type===`bigint`&&jE(e.$id)&&OE(e.exclusiveMaximum)&&OE(e.exclusiveMinimum)&&OE(e.maximum)&&OE(e.minimum)&&OE(e.multipleOf)}function VE(e){return XE(e,`Boolean`)&&e.type===`boolean`&&jE(e.$id)}function HE(e){return XE(e,`Computed`)&&sT(e.target)&&Zw(e.parameters)&&e.parameters.every(e=>ED(e))}function UE(e){return XE(e,`Constructor`)&&e.type===`Constructor`&&jE(e.$id)&&Zw(e.parameters)&&e.parameters.every(e=>ED(e))&&ED(e.returns)}function WE(e){return XE(e,`Date`)&&e.type===`Date`&&jE(e.$id)&&kE(e.exclusiveMaximumTimestamp)&&kE(e.exclusiveMinimumTimestamp)&&kE(e.maximumTimestamp)&&kE(e.minimumTimestamp)&&kE(e.multipleOfTimestamp)}function GE(e){return XE(e,`Function`)&&e.type===`Function`&&jE(e.$id)&&Zw(e.parameters)&&e.parameters.every(e=>ED(e))&&ED(e.returns)}function KE(e){return XE(e,`Integer`)&&e.type===`integer`&&jE(e.$id)&&kE(e.exclusiveMaximum)&&kE(e.exclusiveMinimum)&&kE(e.maximum)&&kE(e.minimum)&&kE(e.multipleOf)}function qE(e){return aT(e)&&Object.entries(e).every(([e,t])=>EE(e)&&ED(t))}function JE(e){return XE(e,`Intersect`)&&!(sT(e.type)&&e.type!==`object`)&&Zw(e.allOf)&&e.allOf.every(e=>ED(e)&&!_D(e))&&jE(e.type)&&(AE(e.unevaluatedProperties)||PE(e.unevaluatedProperties))&&jE(e.$id)}function YE(e){return XE(e,`Iterator`)&&e.type===`Iterator`&&jE(e.$id)&&ED(e.items)}function XE(e,t){return aT(e)&&K in e&&e[K]===t}function ZE(e){return eD(e)&&sT(e.const)}function QE(e){return eD(e)&&iT(e.const)}function $E(e){return eD(e)&&$w(e.const)}function eD(e){return XE(e,`Literal`)&&jE(e.$id)&&tD(e.const)}function tD(e){return $w(e)||iT(e)||sT(e)}function nD(e){return XE(e,`MappedKey`)&&Zw(e.keys)&&e.keys.every(e=>iT(e)||sT(e))}function rD(e){return XE(e,`MappedResult`)&&qE(e.properties)}function iD(e){return XE(e,`Never`)&&aT(e.not)&&Object.getOwnPropertyNames(e.not).length===0}function aD(e){return XE(e,`Not`)&&ED(e.not)}function oD(e){return XE(e,`Null`)&&e.type===`null`&&jE(e.$id)}function sD(e){return XE(e,`Number`)&&e.type===`number`&&jE(e.$id)&&kE(e.exclusiveMaximum)&&kE(e.exclusiveMinimum)&&kE(e.maximum)&&kE(e.minimum)&&kE(e.multipleOf)}function cD(e){return XE(e,`Object`)&&e.type===`object`&&jE(e.$id)&&qE(e.properties)&&DE(e.additionalProperties)&&kE(e.minProperties)&&kE(e.maxProperties)}function lD(e){return XE(e,`Promise`)&&e.type===`Promise`&&jE(e.$id)&&ED(e.item)}function uD(e){return XE(e,`Record`)&&e.type===`object`&&jE(e.$id)&&DE(e.additionalProperties)&&aT(e.patternProperties)&&(e=>{let t=Object.getOwnPropertyNames(e.patternProperties);return t.length===1&&TE(t[0])&&aT(e.patternProperties)&&ED(e.patternProperties[t[0]])})(e)}function dD(e){return XE(e,`Ref`)&&jE(e.$id)&&sT(e.$ref)}function fD(e){return XE(e,`RegExp`)&&jE(e.$id)&&sT(e.source)&&sT(e.flags)&&kE(e.maxLength)&&kE(e.minLength)}function pD(e){return XE(e,`String`)&&e.type===`string`&&jE(e.$id)&&kE(e.minLength)&&kE(e.maxLength)&&ME(e.pattern)&&NE(e.format)}function mD(e){return XE(e,`Symbol`)&&e.type===`symbol`&&jE(e.$id)}function hD(e){return XE(e,`TemplateLiteral`)&&e.type===`string`&&sT(e.pattern)&&e.pattern[0]===`^`&&e.pattern[e.pattern.length-1]===`$`}function gD(e){return XE(e,`This`)&&jE(e.$id)&&sT(e.$ref)}function _D(e){return aT(e)&&jT in e}function vD(e){return XE(e,`Tuple`)&&e.type===`array`&&jE(e.$id)&&iT(e.minItems)&&iT(e.maxItems)&&e.minItems===e.maxItems&&(uT(e.items)&&uT(e.additionalItems)&&e.minItems===0||Zw(e.items)&&e.items.every(e=>ED(e)))}function yD(e){return XE(e,`Undefined`)&&e.type===`undefined`&&jE(e.$id)}function bD(e){return XE(e,`Union`)&&jE(e.$id)&&aT(e)&&Zw(e.anyOf)&&e.anyOf.every(e=>ED(e))}function xD(e){return XE(e,`Uint8Array`)&&e.type===`Uint8Array`&&jE(e.$id)&&kE(e.minByteLength)&&kE(e.maxByteLength)}function SD(e){return XE(e,`Unknown`)&&jE(e.$id)}function CD(e){return XE(e,`Unsafe`)}function wD(e){return XE(e,`Void`)&&e.type===`void`&&jE(e.$id)}function TD(e){return aT(e)&&K in e&&sT(e[K])&&!wE.includes(e[K])}function ED(e){return aT(e)&&(IE(e)||LE(e)||RE(e)||VE(e)||BE(e)||zE(e)||HE(e)||UE(e)||WE(e)||GE(e)||KE(e)||JE(e)||YE(e)||eD(e)||nD(e)||rD(e)||iD(e)||aD(e)||oD(e)||sD(e)||cD(e)||lD(e)||uD(e)||dD(e)||fD(e)||pD(e)||mD(e)||hD(e)||gD(e)||vD(e)||yD(e)||bD(e)||xD(e)||SD(e)||CD(e)||wD(e)||TD(e))}var DD=`(true|false)`,OD=`(0|[1-9][0-9]*)`,kD=`(.*)`,AD=`(?!.*)`;`${DD}`;var jD=`^${OD}$`,MD=`^${kD}$`,ND=`^${AD}$`;function PD(e,t){return e.includes(t)}function FD(e){return[...new Set(e)]}function ID(e,t){return e.filter(e=>t.includes(e))}function LD(e,t){return e.reduce((e,t)=>ID(e,t),t)}function RD(e){return e.length===1?e[0]:e.length>1?LD(e.slice(1),e[0]):[]}function zD(e){let t=[];for(let n of e)t.push(...n);return t}function BD(e){return G({[K]:`Any`},e)}function VD(e,t){return G({[K]:`Array`,type:`array`,items:e},t)}function HD(e){return G({[K]:`Argument`,index:e})}function UD(e,t){return G({[K]:`AsyncIterator`,type:`AsyncIterator`,items:e},t)}function WD(e,t,n){return G({[K]:`Computed`,target:e,parameters:t},n)}function GD(e,t){let{[t]:n,...r}=e;return r}function KD(e,t){return t.reduce((e,t)=>GD(e,t),e)}function qD(e){return G({[K]:`Never`,not:{}},e)}function JD(e){return G({[K]:`MappedResult`,properties:e})}function YD(e,t,n){return G({[K]:`Constructor`,type:`Constructor`,parameters:e,returns:t},n)}function XD(e,t,n){return G({[K]:`Function`,type:`Function`,parameters:e,returns:t},n)}function ZD(e,t){return G({[K]:`Union`,anyOf:e},t)}function QD(e){return e.some(e=>IT(e))}function $D(e){return e.map(e=>IT(e)?eO(e):e)}function eO(e){return KD(e,[NT])}function tO(e,t){return QD(e)?Vk(ZD($D(e),t)):ZD($D(e),t)}function nO(e,t){return e.length===1?G(e[0],t):e.length===0?qD(t):tO(e,t)}function rO(e,t){return e.length===0?qD(t):e.length===1?G(e[0],t):ZD(e,t)}var iO=class extends AT{};function aO(e){return e.replace(/\\\$/g,`$`).replace(/\\\*/g,`*`).replace(/\\\^/g,`^`).replace(/\\\|/g,`|`).replace(/\\\(/g,`(`).replace(/\\\)/g,`)`)}function oO(e,t,n){return e[t]===n&&e.charCodeAt(t-1)!==92}function sO(e,t){return oO(e,t,`(`)}function cO(e,t){return oO(e,t,`)`)}function lO(e,t){return oO(e,t,`|`)}function uO(e){if(!(sO(e,0)&&cO(e,e.length-1)))return!1;let t=0;for(let n=0;n<e.length;n++)if(sO(e,n)&&(t+=1),cO(e,n)&&--t,t===0&&n!==e.length-1)return!1;return!0}function dO(e){return e.slice(1,e.length-1)}function fO(e){let t=0;for(let n=0;n<e.length;n++)if(sO(e,n)&&(t+=1),cO(e,n)&&--t,lO(e,n)&&t===0)return!0;return!1}function pO(e){for(let t=0;t<e.length;t++)if(sO(e,t))return!0;return!1}function mO(e){let[t,n]=[0,0],r=[];for(let i=0;i<e.length;i++)if(sO(e,i)&&(t+=1),cO(e,i)&&--t,lO(e,i)&&t===0){let t=e.slice(n,i);t.length>0&&r.push(gO(t)),n=i+1}let i=e.slice(n);return i.length>0&&r.push(gO(i)),r.length===0?{type:`const`,const:``}:r.length===1?r[0]:{type:`or`,expr:r}}function hO(e){function t(e,t){if(!sO(e,t))throw new iO(`TemplateLiteralParser: Index must point to open parens`);let n=0;for(let r=t;r<e.length;r++)if(sO(e,r)&&(n+=1),cO(e,r)&&--n,n===0)return[t,r];throw new iO(`TemplateLiteralParser: Unclosed group parens in expression`)}function n(e,t){for(let n=t;n<e.length;n++)if(sO(e,n))return[t,n];return[t,e.length]}let r=[];for(let i=0;i<e.length;i++)if(sO(e,i)){let[n,a]=t(e,i),o=e.slice(n,a+1);r.push(gO(o)),i=a}else{let[t,a]=n(e,i),o=e.slice(t,a);o.length>0&&r.push(gO(o)),i=a-1}return r.length===0?{type:`const`,const:``}:r.length===1?r[0]:{type:`and`,expr:r}}function gO(e){return uO(e)?gO(dO(e)):fO(e)?mO(e):pO(e)?hO(e):{type:`const`,const:aO(e)}}function _O(e){return gO(e.slice(1,e.length-1))}var vO=class extends AT{};function yO(e){return e.type===`or`&&e.expr.length===2&&e.expr[0].type===`const`&&e.expr[0].const===`0`&&e.expr[1].type===`const`&&e.expr[1].const===`[1-9][0-9]*`}function bO(e){return e.type===`or`&&e.expr.length===2&&e.expr[0].type===`const`&&e.expr[0].const===`true`&&e.expr[1].type===`const`&&e.expr[1].const===`false`}function xO(e){return e.type===`const`&&e.const===`.*`}function SO(e){return yO(e)||xO(e)?!1:bO(e)?!0:e.type===`and`||e.type===`or`?e.expr.every(e=>SO(e)):e.type===`const`?!0:(()=>{throw new vO(`Unknown expression type`)})()}function CO(e){return SO(_O(e.pattern))}var wO=class extends AT{};function*TO(e){if(e.length===1)return yield*e[0];for(let t of e[0])for(let n of TO(e.slice(1)))yield`${t}${n}`}function*EO(e){return yield*TO(e.expr.map(e=>[...kO(e)]))}function*DO(e){for(let t of e.expr)yield*kO(t)}function*OO(e){return yield e.const}function*kO(e){return e.type===`and`?yield*EO(e):e.type===`or`?yield*DO(e):e.type===`const`?yield*OO(e):(()=>{throw new wO(`Unknown expression`)})()}function AO(e){let t=_O(e.pattern);return SO(t)?[...kO(t)]:[]}function jO(e,t){return G({[K]:`Literal`,const:e,type:typeof e},t)}function MO(e){return G({[K]:`Boolean`,type:`boolean`},e)}function NO(e){return G({[K]:`BigInt`,type:`bigint`},e)}function PO(e){return G({[K]:`Number`,type:`number`},e)}function FO(e){return G({[K]:`String`,type:`string`},e)}function*IO(e){let t=e.trim().replace(/"|'/g,``);return t===`boolean`?yield MO():t===`number`?yield PO():t===`bigint`?yield NO():t===`string`?yield FO():yield(()=>{let e=t.split(`|`).map(e=>jO(e.trim()));return e.length===0?qD():e.length===1?e[0]:nO(e)})()}function*LO(e){if(e[1]!==`{`)return yield*[jO(`$`),...RO(e.slice(1))];for(let t=2;t<e.length;t++)if(e[t]===`}`){let n=IO(e.slice(2,t)),r=RO(e.slice(t+1));return yield*[...n,...r]}yield jO(e)}function*RO(e){for(let t=0;t<e.length;t++)if(e[t]===`$`)return yield*[jO(e.slice(0,t)),...LO(e.slice(t))];yield jO(e)}function zO(e){return[...RO(e)]}var BO=class extends AT{};function VO(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function HO(e,t){return fE(e)?e.pattern.slice(1,e.pattern.length-1):_E(e)?`(${e.anyOf.map(e=>HO(e,t)).join(`|`)})`:iE(e)||qT(e)||VT(e)?`${t}${OD}`:uE(e)?`${t}${kD}`:QT(e)?`${t}${VO(e.const.toString())}`:HT(e)?`${t}${DD}`:(()=>{throw new BO(`Unexpected Kind '${e[K]}'`)})()}function UO(e){return`^${e.map(e=>HO(e,``)).join(``)}\$`}function WO(e){return nO(AO(e).map(e=>jO(e)))}function GO(e,t){let n=sT(e)?UO(zO(e)):UO(e);return G({[K]:`TemplateLiteral`,type:`string`,pattern:n},t)}function KO(e){return AO(e).map(e=>e.toString())}function qO(e){let t=[];for(let n of e)t.push(...YO(n));return t}function JO(e){return[e.toString()]}function YO(e){return[...new Set(fE(e)?KO(e):_E(e)?qO(e.anyOf):QT(e)?JO(e.const):iE(e)||qT(e)?[`[number]`]:[])]}function XO(e,t,n){let r={};for(let i of Object.getOwnPropertyNames(t))r[i]=uk(e,YO(t[i]),n);return r}function ZO(e,t,n){return XO(e,t.properties,n)}function QO(e,t,n){return JD(ZO(e,t,n))}function $O(e,t){return e.map(e=>sk(e,t))}function ek(e){return e.filter(e=>!tE(e))}function tk(e,t){return Xk(ek($O(e,t)))}function nk(e){return e.some(e=>tE(e))?[]:e}function rk(e,t){return nO(nk($O(e,t)))}function ik(e,t){return t in e?e[t]:t===`[number]`?nO(e):qD()}function ak(e,t){return t===`[number]`?e:qD()}function ok(e,t){return t in e?e[t]:qD()}function sk(e,t){return JT(e)?tk(e.allOf,t):_E(e)?rk(e.anyOf,t):hE(e)?ik(e.items??[],t):zT(e)?ak(e.items,t):aE(e)?ok(e.properties,t):qD()}function ck(e,t){return t.map(t=>sk(e,t))}function lk(e,t){return nO(ck(e,t))}function uk(e,t,n){if(cE(e)||cE(t)){if(!CE(e)||!CE(t))throw new AT(`Index types using Ref parameters require both Type and Key to be of TSchema`);return WD(`Index`,[e,t])}return eE(t)?QO(e,t,n):$T(t)?mk(e,t,n):G(CE(t)?lk(e,YO(t)):lk(e,t),n)}function dk(e,t,n){return{[t]:uk(e,[t],_T(n))}}function fk(e,t,n){return t.reduce((t,r)=>({...t,...dk(e,r,n)}),{})}function pk(e,t,n){return fk(e,t.keys,n)}function mk(e,t,n){return JD(pk(e,t,n))}function hk(e,t){return G({[K]:`Iterator`,type:`Iterator`,items:e},t)}function gk(e){return globalThis.Object.keys(e).filter(t=>!IT(e[t]))}function _k(e,t){let n=gk(e);return G(n.length>0?{[K]:`Object`,type:`object`,required:n,properties:e}:{[K]:`Object`,type:`object`,properties:e},t)}var vk=_k;function yk(e,t){return G({[K]:`Promise`,type:`Promise`,item:e},t)}function bk(e){return G(KD(e,[MT]))}function xk(e){return G({...e,[MT]:`Readonly`})}function Sk(e,t){return t===!1?bk(e):xk(e)}function Ck(e,t){let n=t??!0;return eE(e)?Ek(e,n):Sk(e,n)}function wk(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=Ck(e[r],t);return n}function Tk(e,t){return wk(e.properties,t)}function Ek(e,t){return JD(Tk(e,t))}function Dk(e,t){return G(e.length>0?{[K]:`Tuple`,type:`array`,items:e,additionalItems:!1,minItems:e.length,maxItems:e.length}:{[K]:`Tuple`,type:`array`,minItems:e.length,maxItems:e.length},t)}function Ok(e,t){return e in t?Fk(e,t[e]):JD(t)}function kk(e){return{[e]:jO(e)}}function Ak(e){let t={};for(let n of e)t[n]=jO(n);return t}function jk(e,t){return PD(t,e)?kk(e):Ak(t)}function Mk(e,t){return Ok(e,jk(e,t))}function Nk(e,t){return t.map(t=>Fk(e,t))}function Pk(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=Fk(e,t[r]);return n}function Fk(e,t){let n={...t};return IT(t)?Vk(Fk(e,KD(t,[NT]))):FT(t)?Ck(Fk(e,KD(t,[MT]))):eE(t)?Ok(e,t.properties):$T(t)?Mk(e,t.keys):WT(t)?YD(Nk(e,t.parameters),Fk(e,t.returns),n):KT(t)?XD(Nk(e,t.parameters),Fk(e,t.returns),n):BT(t)?UD(Fk(e,t.items),n):YT(t)?hk(Fk(e,t.items),n):JT(t)?Zk(Nk(e,t.allOf),n):_E(t)?rO(Nk(e,t.anyOf),n):hE(t)?Dk(Nk(e,t.items??[]),n):aE(t)?vk(Pk(e,t.properties),n):zT(t)?VD(Fk(e,t.items),n):oE(t)?yk(Fk(e,t.item),n):t}function Ik(e,t){let n={};for(let r of e)n[r]=Fk(r,t);return n}function Lk(e,t,n){let r=CE(e)?YO(e):e;return vk(Ik(r,t({[K]:`MappedKey`,keys:r})),n)}function Rk(e){return G(KD(e,[NT]))}function zk(e){return G({...e,[NT]:`Optional`})}function Bk(e,t){return t===!1?Rk(e):zk(e)}function Vk(e,t){let n=t??!0;return eE(e)?Wk(e,n):Bk(e,n)}function Hk(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=Vk(e[r],t);return n}function Uk(e,t){return Hk(e.properties,t)}function Wk(e,t){return JD(Uk(e,t))}function Gk(e,t={}){let n=e.every(e=>aE(e)),r=CE(t.unevaluatedProperties)?{unevaluatedProperties:t.unevaluatedProperties}:{};return G(t.unevaluatedProperties===!1||CE(t.unevaluatedProperties)||n?{...r,[K]:`Intersect`,type:`object`,allOf:e}:{...r,[K]:`Intersect`,allOf:e},t)}function Kk(e){return e.every(e=>IT(e))}function qk(e){return KD(e,[NT])}function Jk(e){return e.map(e=>IT(e)?qk(e):e)}function Yk(e,t){return Kk(e)?Vk(Gk(Jk(e),t)):Gk(Jk(e),t)}function Xk(e,t={}){if(e.length===1)return G(e[0],t);if(e.length===0)return qD(t);if(e.some(e=>mE(e)))throw Error(`Cannot intersect transform types`);return Yk(e,t)}function Zk(e,t){if(e.length===1)return G(e[0],t);if(e.length===0)return qD(t);if(e.some(e=>mE(e)))throw Error(`Cannot intersect transform types`);return Gk(e,t)}function Qk(...e){let[t,n]=typeof e[0]==`string`?[e[0],e[1]]:[e[0].$id,e[1]];if(typeof t!=`string`)throw new AT(`Ref: $ref must be a string`);return G({[K]:`Ref`,$ref:t},n)}function $k(e,t){return WD(`Awaited`,[WD(e,t)])}function eA(e){return WD(`Awaited`,[Qk(e)])}function tA(e){return Zk(iA(e))}function nA(e){return rO(iA(e))}function rA(e){return aA(e)}function iA(e){return e.map(e=>aA(e))}function aA(e,t){return G(UT(e)?$k(e.target,e.parameters):JT(e)?tA(e.allOf):_E(e)?nA(e.anyOf):oE(e)?rA(e.item):cE(e)?eA(e.$ref):e,t)}function oA(e){let t=[];for(let n of e)t.push(pA(n));return t}function sA(e){return zD(oA(e))}function cA(e){return RD(oA(e))}function lA(e){return e.map((e,t)=>t.toString())}function uA(e){return[`[number]`]}function dA(e){return globalThis.Object.getOwnPropertyNames(e)}function fA(e){return mA?globalThis.Object.getOwnPropertyNames(e).map(e=>e[0]===`^`&&e[e.length-1]===`$`?e.slice(1,e.length-1):e):[]}function pA(e){return JT(e)?sA(e.allOf):_E(e)?cA(e.anyOf):hE(e)?lA(e.items??[]):zT(e)?uA(e.items):aE(e)?dA(e.properties):sE(e)?fA(e.patternProperties):[]}var mA=!1;function hA(e,t){return WD(`KeyOf`,[WD(e,t)])}function gA(e){return WD(`KeyOf`,[Qk(e)])}function _A(e,t){return G(nO(vA(pA(e))),t)}function vA(e){return e.map(e=>e===`[number]`?PO():jO(e))}function yA(e,t){return UT(e)?hA(e.target,e.parameters):cE(e)?gA(e.$ref):eE(e)?SA(e,t):_A(e,t)}function bA(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=yA(e[r],_T(t));return n}function xA(e,t){return bA(e.properties,t)}function SA(e,t){return JD(xA(e,t))}function CA(e){let t=[];for(let n of e)t.push(...pA(n));return FD(t)}function wA(e){return e.filter(e=>!tE(e))}function TA(e,t){let n=[];for(let r of e)n.push(...ck(r,[t]));return wA(n)}function EA(e,t){let n={};for(let r of t)n[r]=Xk(TA(e,r));return n}function DA(e,t){return vk(EA(e,CA(e)),t)}function OA(e){return G({[K]:`Date`,type:`Date`},e)}function kA(e){return G({[K]:`Null`,type:`null`},e)}function AA(e){return G({[K]:`Symbol`,type:`symbol`},e)}function jA(e){return G({[K]:`Undefined`,type:`undefined`},e)}function MA(e){return G({[K]:`Uint8Array`,type:`Uint8Array`},e)}function NA(e){return G({[K]:`Unknown`},e)}function PA(e){return e.map(e=>LA(e,!1))}function FA(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=Ck(LA(e[n],!1));return t}function IA(e,t){return t===!0?e:Ck(e)}function LA(e,t){return Xw(e)||nT(e)?IA(BD(),t):Zw(e)?Ck(Dk(PA(e))):lT(e)?MA():eT(e)?OA():aT(e)?IA(vk(FA(e)),t):tT(e)?IA(XD([],NA()),t):uT(e)?jA():rT(e)?kA():cT(e)?AA():Qw(e)?NO():iT(e)||$w(e)||sT(e)?jO(e):vk({})}function RA(e,t){return G(LA(e,!0),t)}function zA(e,t){return WT(e)?Dk(e.parameters,t):qD(t)}function BA(e,t){if(uT(e))throw Error(`Enum undefined or empty`);let n=globalThis.Object.getOwnPropertyNames(e).filter(e=>isNaN(e)).map(t=>e[t]);return rO([...new Set(n)].map(e=>jO(e)),{...t,[PT]:`Enum`})}var VA=class extends AT{},q;(function(e){e[e.Union=0]=`Union`,e[e.True=1]=`True`,e[e.False=2]=`False`})(q||={});function HA(e){return e===q.False?e:q.True}function UA(e){throw new VA(e)}function WA(e){return iD(e)||JE(e)||bD(e)||SD(e)||IE(e)}function GA(e,t){return iD(t)?lj(e,t):JE(t)?aj(e,t):bD(t)?Kj(e,t):SD(t)?Jj(e,t):IE(t)?KA(e,t):UA(`StructuralRight`)}function KA(e,t){return q.True}function qA(e,t){return JE(t)?aj(e,t):bD(t)&&t.anyOf.some(e=>IE(e)||SD(e))?q.True:bD(t)?q.Union:SD(t)||IE(t)?q.True:q.Union}function JA(e,t){return SD(e)?q.False:IE(e)?q.Union:iD(e)?q.True:q.False}function YA(e,t){return cD(t)&&Ej(t)?q.True:WA(t)?GA(e,t):RE(t)?HA(Qj(e.items,t.items)):q.False}function XA(e,t){return WA(t)?GA(e,t):zE(t)?HA(Qj(e.items,t.items)):q.False}function ZA(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):BE(t)?q.True:q.False}function QA(e,t){return $E(e)||VE(e)?q.True:q.False}function $A(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):VE(t)?q.True:q.False}function ej(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):UE(t)?e.parameters.length>t.parameters.length?q.False:e.parameters.every((e,n)=>HA(Qj(t.parameters[n],e))===q.True)?HA(Qj(e.returns,t.returns)):q.False:q.False}function tj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):WE(t)?q.True:q.False}function nj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):GE(t)?e.parameters.length>t.parameters.length?q.False:e.parameters.every((e,n)=>HA(Qj(t.parameters[n],e))===q.True)?HA(Qj(e.returns,t.returns)):q.False:q.False}function rj(e,t){return eD(e)&&iT(e.const)||sD(e)||KE(e)?q.True:q.False}function ij(e,t){return KE(t)||sD(t)?q.True:WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):q.False}function aj(e,t){return t.allOf.every(t=>Qj(e,t)===q.True)?q.True:q.False}function oj(e,t){return e.allOf.some(e=>Qj(e,t)===q.True)?q.True:q.False}function sj(e,t){return WA(t)?GA(e,t):YE(t)?HA(Qj(e.items,t.items)):q.False}function cj(e,t){return eD(t)&&t.const===e.const?q.True:WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):pD(t)?Lj(e,t):sD(t)?mj(e,t):KE(t)?rj(e,t):VE(t)?QA(e,t):q.False}function lj(e,t){return q.False}function uj(e,t){return q.True}function dj(e){let[t,n]=[e,0];for(;aD(t);)t=t.not,n+=1;return n%2==0?t:NA()}function fj(e,t){return aD(e)?Qj(dj(e),t):aD(t)?Qj(e,dj(t)):UA(`Invalid fallthrough for Not`)}function pj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):oD(t)?q.True:q.False}function mj(e,t){return QE(e)||sD(e)||KE(e)?q.True:q.False}function hj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):KE(t)||sD(t)?q.True:q.False}function gj(e,t){return Object.getOwnPropertyNames(e.properties).length===t}function _j(e){return Ej(e)}function vj(e){return gj(e,0)||gj(e,1)&&`description`in e.properties&&bD(e.properties.description)&&e.properties.description.anyOf.length===2&&(pD(e.properties.description.anyOf[0])&&yD(e.properties.description.anyOf[1])||pD(e.properties.description.anyOf[1])&&yD(e.properties.description.anyOf[0]))}function yj(e){return gj(e,0)}function bj(e){return gj(e,0)}function xj(e){return gj(e,0)}function Sj(e){return gj(e,0)}function Cj(e){return Ej(e)}function wj(e){let t=PO();return gj(e,0)||gj(e,1)&&`length`in e.properties&&HA(Qj(e.properties.length,t))===q.True}function Tj(e){return gj(e,0)}function Ej(e){let t=PO();return gj(e,0)||gj(e,1)&&`length`in e.properties&&HA(Qj(e.properties.length,t))===q.True}function Dj(e){let t=XD([BD()],BD());return gj(e,0)||gj(e,1)&&`then`in e.properties&&HA(Qj(e.properties.then,t))===q.True}function Oj(e,t){return Qj(e,t)===q.False||FE(e)&&!FE(t)?q.False:q.True}function kj(e,t){return SD(e)?q.False:IE(e)?q.Union:iD(e)||ZE(e)&&_j(t)||QE(e)&&yj(t)||$E(e)&&bj(t)||mD(e)&&vj(t)||BE(e)&&xj(t)||pD(e)&&_j(t)||mD(e)&&vj(t)||sD(e)&&yj(t)||KE(e)&&yj(t)||VE(e)&&bj(t)||xD(e)&&Cj(t)||WE(e)&&Sj(t)||UE(e)&&Tj(t)||GE(e)&&wj(t)?q.True:uD(e)&&pD(Mj(e))?t[PT]===`Record`?q.True:q.False:uD(e)&&sD(Mj(e))&&gj(t,0)?q.True:q.False}function Aj(e,t){return WA(t)?GA(e,t):uD(t)?Pj(e,t):cD(t)?(()=>{for(let n of Object.getOwnPropertyNames(t.properties)){if(!(n in e.properties)&&!FE(t.properties[n]))return q.False;if(FE(t.properties[n]))return q.True;if(Oj(e.properties[n],t.properties[n])===q.False)return q.False}return q.True})():q.False}function jj(e,t){return WA(t)?GA(e,t):cD(t)&&Dj(t)?q.True:lD(t)?HA(Qj(e.item,t.item)):q.False}function Mj(e){return jD in e.patternProperties?PO():MD in e.patternProperties?FO():UA(`Unknown record key pattern`)}function Nj(e){return jD in e.patternProperties?e.patternProperties[jD]:MD in e.patternProperties?e.patternProperties[MD]:UA(`Unable to get record value schema`)}function Pj(e,t){let[n,r]=[Mj(t),Nj(t)];return ZE(e)&&sD(n)&&HA(Qj(e,r))===q.True?q.True:xD(e)&&sD(n)||pD(e)&&sD(n)||RE(e)&&sD(n)?Qj(e,r):cD(e)?(()=>{for(let t of Object.getOwnPropertyNames(e.properties))if(Oj(r,e.properties[t])===q.False)return q.False;return q.True})():q.False}function Fj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Qj(Nj(e),Nj(t)):q.False}function Ij(e,t){return Qj(fD(e)?FO():e,fD(t)?FO():t)}function Lj(e,t){return eD(e)&&sT(e.const)||pD(e)?q.True:q.False}function Rj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):pD(t)?q.True:q.False}function zj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):mD(t)?q.True:q.False}function Bj(e,t){return hD(e)?Qj(WO(e),t):hD(t)?Qj(e,WO(t)):UA(`Invalid fallthrough for TemplateLiteral`)}function Vj(e,t){return RE(t)&&e.items!==void 0&&e.items.every(e=>Qj(e,t.items)===q.True)}function Hj(e,t){return iD(e)?q.True:SD(e)?q.False:IE(e)?q.Union:q.False}function Uj(e,t){return WA(t)?GA(e,t):cD(t)&&Ej(t)||RE(t)&&Vj(e,t)?q.True:vD(t)?uT(e.items)&&!uT(t.items)||!uT(e.items)&&uT(t.items)?q.False:uT(e.items)&&!uT(t.items)||e.items.every((e,n)=>Qj(e,t.items[n])===q.True)?q.True:q.False:q.False}function Wj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):xD(t)?q.True:q.False}function Gj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):wD(t)?Xj(e,t):yD(t)?q.True:q.False}function Kj(e,t){return t.anyOf.some(t=>Qj(e,t)===q.True)?q.True:q.False}function qj(e,t){return e.anyOf.every(e=>Qj(e,t)===q.True)?q.True:q.False}function Jj(e,t){return q.True}function Yj(e,t){return iD(t)?lj(e,t):JE(t)?aj(e,t):bD(t)?Kj(e,t):IE(t)?KA(e,t):pD(t)?Lj(e,t):sD(t)?mj(e,t):KE(t)?rj(e,t):VE(t)?QA(e,t):RE(t)?JA(e,t):vD(t)?Hj(e,t):cD(t)?kj(e,t):SD(t)?q.True:q.False}function Xj(e,t){return yD(e)||yD(e)?q.True:q.False}function Zj(e,t){return JE(t)?aj(e,t):bD(t)?Kj(e,t):SD(t)?Jj(e,t):IE(t)?KA(e,t):cD(t)?kj(e,t):wD(t)?q.True:q.False}function Qj(e,t){return hD(e)||hD(t)?Bj(e,t):fD(e)||fD(t)?Ij(e,t):aD(e)||aD(t)?fj(e,t):IE(e)?qA(e,t):RE(e)?YA(e,t):BE(e)?ZA(e,t):VE(e)?$A(e,t):zE(e)?XA(e,t):UE(e)?ej(e,t):WE(e)?tj(e,t):GE(e)?nj(e,t):KE(e)?ij(e,t):JE(e)?oj(e,t):YE(e)?sj(e,t):eD(e)?cj(e,t):iD(e)?uj(e,t):oD(e)?pj(e,t):sD(e)?hj(e,t):cD(e)?Aj(e,t):uD(e)?Fj(e,t):pD(e)?Rj(e,t):mD(e)?zj(e,t):vD(e)?Uj(e,t):lD(e)?jj(e,t):xD(e)?Wj(e,t):yD(e)?Gj(e,t):bD(e)?qj(e,t):SD(e)?Yj(e,t):wD(e)?Zj(e,t):UA(`Unknown left type operand '${e[K]}'`)}function $j(e,t){return Qj(e,t)}function eM(e,t,n,r,i){let a={};for(let o of globalThis.Object.getOwnPropertyNames(e))a[o]=iM(e[o],t,n,r,_T(i));return a}function tM(e,t,n,r,i){return eM(e.properties,t,n,r,i)}function nM(e,t,n,r,i){return JD(tM(e,t,n,r,i))}function rM(e,t,n,r){let i=$j(e,t);return i===q.Union?rO([n,r]):i===q.True?n:r}function iM(e,t,n,r,i){return eE(e)?nM(e,t,n,r,i):$T(e)?G(cM(e,t,n,r,i)):G(rM(e,t,n,r),i)}function aM(e,t,n,r,i){return{[e]:iM(jO(e),t,n,r,_T(i))}}function oM(e,t,n,r,i){return e.reduce((e,a)=>({...e,...aM(a,t,n,r,i)}),{})}function sM(e,t,n,r,i){return oM(e.keys,t,n,r,i)}function cM(e,t,n,r,i){return JD(sM(e,t,n,r,i))}function lM(e,t){return dM(WO(e),t)}function uM(e,t){let n=e.filter(e=>$j(e,t)===q.False);return n.length===1?n[0]:rO(n)}function dM(e,t,n={}){return fE(e)?G(lM(e,t),n):eE(e)?G(mM(e,t),n):G(_E(e)?uM(e.anyOf,t):$j(e,t)===q.False?e:qD(),n)}function fM(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=dM(e[r],t);return n}function pM(e,t){return fM(e.properties,t)}function mM(e,t){return JD(pM(e,t))}function hM(e,t){return _M(WO(e),t)}function gM(e,t){let n=e.filter(e=>$j(e,t)!==q.False);return n.length===1?n[0]:rO(n)}function _M(e,t,n){return fE(e)?G(hM(e,t),n):eE(e)?G(bM(e,t),n):G(_E(e)?gM(e.anyOf,t):$j(e,t)===q.False?qD():e,n)}function vM(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=_M(e[r],t);return n}function yM(e,t){return vM(e.properties,t)}function bM(e,t){return JD(yM(e,t))}function xM(e,t){return WT(e)?G(e.returns,t):qD(t)}function SM(e){return Ck(Vk(e))}function CM(e,t,n){return G({[K]:`Record`,type:`object`,patternProperties:{[e]:t}},n)}function wM(e,t,n){let r={};for(let n of e)r[n]=t;return vk(r,{...n,[PT]:`Record`})}function TM(e,t,n){return CO(e)?wM(YO(e),t,n):CM(e.pattern,t,n)}function EM(e,t,n){return wM(YO(rO(e)),t,n)}function DM(e,t,n){return wM([e.toString()],t,n)}function OM(e,t,n){return CM(e.source,t,n)}function kM(e,t,n){return CM(uT(e.pattern)?MD:e.pattern,t,n)}function AM(e,t,n){return CM(MD,t,n)}function jM(e,t,n){return CM(ND,t,n)}function MM(e,t,n){return vk({true:t,false:t},n)}function NM(e,t,n){return CM(jD,t,n)}function PM(e,t,n){return CM(jD,t,n)}function FM(e,t,n={}){return _E(e)?EM(e.anyOf,t,n):fE(e)?TM(e,t,n):QT(e)?DM(e.const,t,n):HT(e)?MM(e,t,n):qT(e)?NM(e,t,n):iE(e)?PM(e,t,n):lE(e)?OM(e,t,n):uE(e)?kM(e,t,n):LT(e)?AM(e,t,n):tE(e)?jM(e,t,n):qD(n)}function IM(e){return globalThis.Object.getOwnPropertyNames(e.patternProperties)[0]}function LM(e){let t=IM(e);return t===MD?FO():t===jD?PO():FO({pattern:t})}function RM(e){return e.patternProperties[IM(e)]}function zM(e,t){return t.parameters=$M(e,t.parameters),t.returns=eN(e,t.returns),t}function BM(e,t){return t.parameters=$M(e,t.parameters),t.returns=eN(e,t.returns),t}function VM(e,t){return t.allOf=$M(e,t.allOf),t}function HM(e,t){return t.anyOf=$M(e,t.anyOf),t}function UM(e,t){return uT(t.items)||(t.items=$M(e,t.items)),t}function WM(e,t){return t.items=eN(e,t.items),t}function GM(e,t){return t.items=eN(e,t.items),t}function KM(e,t){return t.items=eN(e,t.items),t}function qM(e,t){return t.item=eN(e,t.item),t}function JM(e,t){let n=QM(e,t.properties);return{...t,...vk(n)}}function YM(e,t){let n=FM(eN(e,LM(t)),eN(e,RM(t)));return{...t,...n}}function XM(e,t){return t.index in e?e[t.index]:NA()}function ZM(e,t){let n=FT(t),r=IT(t),i=eN(e,t);return n&&r?SM(i):n&&!r?Ck(i):!n&&r?Vk(i):i}function QM(e,t){return globalThis.Object.getOwnPropertyNames(t).reduce((n,r)=>({...n,[r]:ZM(e,t[r])}),{})}function $M(e,t){return t.map(t=>eN(e,t))}function eN(e,t){return WT(t)?zM(e,t):KT(t)?BM(e,t):JT(t)?VM(e,t):_E(t)?HM(e,t):hE(t)?UM(e,t):zT(t)?WM(e,t):BT(t)?GM(e,t):YT(t)?KM(e,t):oE(t)?qM(e,t):aE(t)?JM(e,t):sE(t)?YM(e,t):RT(t)?XM(e,t):t}function tN(e,t){return eN(t,vT(e))}function nN(e){return G({[K]:`Integer`,type:`integer`},e)}function rN(e,t,n){return{[e]:mN(jO(e),t,_T(n))}}function iN(e,t,n){return e.reduce((e,r)=>({...e,...rN(r,t,n)}),{})}function aN(e,t,n){return iN(e.keys,t,n)}function oN(e,t,n){return JD(aN(e,t,n))}function sN(e){let[t,n]=[e.slice(0,1),e.slice(1)];return[t.toLowerCase(),n].join(``)}function cN(e){let[t,n]=[e.slice(0,1),e.slice(1)];return[t.toUpperCase(),n].join(``)}function lN(e){return e.toUpperCase()}function uN(e){return e.toLowerCase()}function dN(e,t,n){let r=_O(e.pattern);return SO(r)?GO([rO(pN([...kO(r)].map(e=>jO(e)),t))],n):{...e,pattern:fN(e.pattern,t)}}function fN(e,t){return typeof e==`string`?t===`Uncapitalize`?sN(e):t===`Capitalize`?cN(e):t===`Uppercase`?lN(e):t===`Lowercase`?uN(e):e:e.toString()}function pN(e,t){return e.map(e=>mN(e,t))}function mN(e,t,n={}){return $T(e)?oN(e,t,n):fE(e)?dN(e,t,n):_E(e)?rO(pN(e.anyOf,t),n):QT(e)?jO(fN(e.const,t),n):G(e,n)}function hN(e,t={}){return mN(e,`Capitalize`,t)}function gN(e,t={}){return mN(e,`Lowercase`,t)}function _N(e,t={}){return mN(e,`Uncapitalize`,t)}function vN(e,t={}){return mN(e,`Uppercase`,t)}function yN(e,t,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(e))r[i]=kN(e[i],t,_T(n));return r}function bN(e,t,n){return yN(e.properties,t,n)}function xN(e,t,n){return JD(bN(e,t,n))}function SN(e,t){return e.map(e=>ON(e,t))}function CN(e,t){return e.map(e=>ON(e,t))}function wN(e,t){let{[t]:n,...r}=e;return r}function TN(e,t){return t.reduce((e,t)=>wN(e,t),e)}function EN(e,t,n){let r=KD(e,[jT,`$id`,`required`,`properties`]);return vk(TN(n,t),r)}function DN(e){return rO(e.reduce((e,t)=>ZT(t)?[...e,jO(t)]:e,[]))}function ON(e,t){return JT(e)?Zk(SN(e.allOf,t)):_E(e)?rO(CN(e.anyOf,t)):aE(e)?EN(e,t,e.properties):vk({})}function kN(e,t,n){let r=Zw(t)?DN(t):t,i=CE(t)?YO(t):t,a=cE(e),o=cE(t);return eE(e)?xN(e,i,n):$T(t)?NN(e,t,n):a&&o||!a&&o||a&&!o?WD(`Omit`,[e,r],n):G({...ON(e,i),...n})}function AN(e,t,n){return{[t]:kN(e,[t],_T(n))}}function jN(e,t,n){return t.reduce((t,r)=>({...t,...AN(e,r,n)}),{})}function MN(e,t,n){return jN(e,t.keys,n)}function NN(e,t,n){return JD(MN(e,t,n))}function PN(e,t,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(e))r[i]=UN(e[i],t,_T(n));return r}function FN(e,t,n){return PN(e.properties,t,n)}function IN(e,t,n){return JD(FN(e,t,n))}function LN(e,t){return e.map(e=>HN(e,t))}function RN(e,t){return e.map(e=>HN(e,t))}function zN(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function BN(e,t,n){let r=KD(e,[jT,`$id`,`required`,`properties`]);return vk(zN(n,t),r)}function VN(e){return rO(e.reduce((e,t)=>ZT(t)?[...e,jO(t)]:e,[]))}function HN(e,t){return JT(e)?Zk(LN(e.allOf,t)):_E(e)?rO(RN(e.anyOf,t)):aE(e)?BN(e,t,e.properties):vk({})}function UN(e,t,n){let r=Zw(t)?VN(t):t,i=CE(t)?YO(t):t,a=cE(e),o=cE(t);return eE(e)?IN(e,i,n):$T(t)?qN(e,t,n):a&&o||!a&&o||a&&!o?WD(`Pick`,[e,r],n):G({...HN(e,i),...n})}function WN(e,t,n){return{[t]:UN(e,[t],_T(n))}}function GN(e,t,n){return t.reduce((t,r)=>({...t,...WN(e,r,n)}),{})}function KN(e,t,n){return GN(e,t.keys,n)}function qN(e,t,n){return JD(KN(e,t,n))}function JN(e,t){return WD(`Partial`,[WD(e,t)])}function YN(e){return WD(`Partial`,[Qk(e)])}function XN(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=Vk(e[n]);return t}function ZN(e,t){let n=KD(e,[jT,`$id`,`required`,`properties`]);return vk(XN(t),n)}function QN(e){return e.map(e=>$N(e))}function $N(e){return UT(e)?JN(e.target,e.parameters):cE(e)?YN(e.$ref):JT(e)?Zk(QN(e.allOf)):_E(e)?rO(QN(e.anyOf)):aE(e)?ZN(e,e.properties):VT(e)||HT(e)||qT(e)||QT(e)||rE(e)||iE(e)||uE(e)||dE(e)||gE(e)?e:vk({})}function eP(e,t){return eE(e)?rP(e,t):G({...$N(e),...t})}function tP(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=eP(e[r],_T(t));return n}function nP(e,t){return tP(e.properties,t)}function rP(e,t){return JD(nP(e,t))}function iP(e,t){return WD(`Required`,[WD(e,t)])}function aP(e){return WD(`Required`,[Qk(e)])}function oP(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=KD(e[n],[NT]);return t}function sP(e,t){let n=KD(e,[jT,`$id`,`required`,`properties`]);return vk(oP(t),n)}function cP(e){return e.map(e=>lP(e))}function lP(e){return UT(e)?iP(e.target,e.parameters):cE(e)?aP(e.$ref):JT(e)?Zk(cP(e.allOf)):_E(e)?rO(cP(e.anyOf)):aE(e)?sP(e,e.properties):VT(e)||HT(e)||qT(e)||QT(e)||rE(e)||iE(e)||uE(e)||dE(e)||gE(e)?e:vk({})}function uP(e,t){return eE(e)?pP(e,t):G({...lP(e),...t})}function dP(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=uP(e[r],t);return n}function fP(e,t){return dP(e.properties,t)}function pP(e,t){return JD(fP(e,t))}function mP(e,t){return t.map(t=>cE(t)?hP(e,t.$ref):IP(e,t))}function hP(e,t){return t in e?cE(e[t])?hP(e,e[t].$ref):IP(e,e[t]):qD()}function gP(e){return aA(e[0])}function _P(e){return uk(e[0],e[1])}function vP(e){return yA(e[0])}function yP(e){return eP(e[0])}function bP(e){return kN(e[0],e[1])}function xP(e){return UN(e[0],e[1])}function SP(e){return uP(e[0])}function CP(e,t,n){let r=mP(e,n);return t===`Awaited`?gP(r):t===`Index`?_P(r):t===`KeyOf`?vP(r):t===`Partial`?yP(r):t===`Omit`?bP(r):t===`Pick`?xP(r):t===`Required`?SP(r):qD()}function wP(e,t){return VD(IP(e,t))}function TP(e,t){return UD(IP(e,t))}function EP(e,t,n){return YD(FP(e,t),IP(e,n))}function DP(e,t,n){return XD(FP(e,t),IP(e,n))}function OP(e,t){return Zk(FP(e,t))}function kP(e,t){return hk(IP(e,t))}function AP(e,t){return vk(globalThis.Object.keys(t).reduce((n,r)=>({...n,[r]:IP(e,t[r])}),{}))}function jP(e,t){let[n,r]=[IP(e,RM(t)),IM(t)],i=vT(t);return i.patternProperties[r]=n,i}function MP(e,t){return cE(t)?{...hP(e,t.$ref),[jT]:t[jT]}:t}function NP(e,t){return Dk(FP(e,t))}function PP(e,t){return rO(FP(e,t))}function FP(e,t){return t.map(t=>IP(e,t))}function IP(e,t){return IT(t)?G(IP(e,KD(t,[NT])),t):FT(t)?G(IP(e,KD(t,[MT])),t):mE(t)?G(MP(e,t),t):zT(t)?G(wP(e,t.items),t):BT(t)?G(TP(e,t.items),t):UT(t)?G(CP(e,t.target,t.parameters)):WT(t)?G(EP(e,t.parameters,t.returns),t):KT(t)?G(DP(e,t.parameters,t.returns),t):JT(t)?G(OP(e,t.allOf),t):YT(t)?G(kP(e,t.items),t):aE(t)?G(AP(e,t.properties),t):sE(t)?G(jP(e,t)):hE(t)?G(NP(e,t.items||[]),t):_E(t)?G(PP(e,t.anyOf),t):t}function LP(e,t){return t in e?IP(e,e[t]):qD()}function RP(e){return globalThis.Object.getOwnPropertyNames(e).reduce((t,n)=>({...t,[n]:LP(e,n)}),{})}var zP=class{constructor(e){let t=RP(e),n=this.WithIdentifiers(t);this.$defs=n}Import(e,t){let n={...this.$defs,[e]:G(this.$defs[e],t)};return G({[K]:`Import`,$defs:n,$ref:e})}WithIdentifiers(e){return globalThis.Object.getOwnPropertyNames(e).reduce((t,n)=>({...t,[n]:{...e[n],$id:n}}),{})}};function BP(e){return new zP(e)}function VP(e,t){return G({[K]:`Not`,not:e},t)}function HP(e,t){return KT(e)?Dk(e.parameters,t):qD()}var UP=0;function WP(e,t={}){uT(t.$id)&&(t.$id=`T${UP++}`);let n=vT(e({[K]:`This`,$ref:`${t.$id}`}));return n.$id=t.$id,G({[PT]:`Recursive`,...n},t)}function GP(e,t){let n=sT(e)?new globalThis.RegExp(e):e;return G({[K]:`RegExp`,type:`RegExp`,source:n.source,flags:n.flags},t)}function KP(e){return JT(e)?e.allOf:_E(e)?e.anyOf:hE(e)?e.items??[]:[]}function qP(e){return KP(e)}function JP(e,t){return KT(e)?G(e.returns,t):qD(t)}var YP=class{constructor(e){this.schema=e}Decode(e){return new XP(this.schema,e)}},XP=class{constructor(e,t){this.schema=e,this.decode=t}EncodeTransform(e,t){let n={Encode:n=>t[jT].Encode(e(n)),Decode:e=>this.decode(t[jT].Decode(e))};return{...t,[jT]:n}}EncodeSchema(e,t){let n={Decode:this.decode,Encode:e};return{...t,[jT]:n}}Encode(e){return mE(this.schema)?this.EncodeTransform(e,this.schema):this.EncodeSchema(e,this.schema)}};function ZP(e){return new YP(e)}function QP(e={}){return G({[K]:e[K]??`Unsafe`},e)}function $P(e){return G({[K]:`Void`,type:`void`},e)}var J=s({Any:()=>BD,Argument:()=>HD,Array:()=>VD,AsyncIterator:()=>UD,Awaited:()=>aA,BigInt:()=>NO,Boolean:()=>MO,Capitalize:()=>hN,Composite:()=>DA,Const:()=>RA,Constructor:()=>YD,ConstructorParameters:()=>zA,Date:()=>OA,Enum:()=>BA,Exclude:()=>dM,Extends:()=>iM,Extract:()=>_M,Function:()=>XD,Index:()=>uk,InstanceType:()=>xM,Instantiate:()=>tN,Integer:()=>nN,Intersect:()=>Zk,Iterator:()=>hk,KeyOf:()=>yA,Literal:()=>jO,Lowercase:()=>gN,Mapped:()=>Lk,Module:()=>BP,Never:()=>qD,Not:()=>VP,Null:()=>kA,Number:()=>PO,Object:()=>vk,Omit:()=>kN,Optional:()=>Vk,Parameters:()=>HP,Partial:()=>eP,Pick:()=>UN,Promise:()=>yk,Readonly:()=>Ck,ReadonlyOptional:()=>SM,Record:()=>FM,Recursive:()=>WP,Ref:()=>Qk,RegExp:()=>GP,Required:()=>uP,Rest:()=>qP,ReturnType:()=>JP,String:()=>FO,Symbol:()=>AA,TemplateLiteral:()=>GO,Transform:()=>ZP,Tuple:()=>Dk,Uint8Array:()=>MA,Uncapitalize:()=>_N,Undefined:()=>jA,Union:()=>rO,Unknown:()=>NA,Unsafe:()=>QP,Uppercase:()=>vN,Void:()=>$P});function eF(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function tF(e,t){return J.String({pattern:`^${eF(e)}${Mt}$`,...t===void 0?{}:{description:t}})}var Y=J.String({minLength:1,description:`ISO 8601 date-time string`}),nF=J.String({minLength:1}),rF=J.Union([J.Literal(`standalone`),J.Literal(`feishu`)]);J.Object({kind:rF,version:J.Literal(1)},{additionalProperties:!1}),tF(Pt.project,`ProjectId`);var iF=tF(Pt.message,`MessageId`),aF=tF(Pt.taskModule,`TaskModuleId`),oF=tF(Pt.task,`TaskId`),sF=tF(Pt.runResult,`RunResultId`),cF=tF(Pt.recoverySummary,`RecoverySummaryId`),lF=tF(Pt.activity,`ActivityRef`),uF=tF(Pt.event,`EventRef`),dF=tF(Pt.workflowInvocation,`WorkflowInvocationRef`),fF=tF(Pt.clarificationThread,`ClarificationThreadRef`),pF=tF(Pt.clarificationRound,`ClarificationRoundRef`);tF(Pt.clarificationInteractionResponse,`ClarificationInteractionResponseId`);var mF=tF(Pt.approvalRequest,`ApprovalRequestId`),hF=tF(Pt.idempotency,`IdempotencyKey`),gF=tF(Pt.relayProject,`RelayProjectRef`),_F=tF(Pt.relayAccount,`RelayAccountRef`);tF(Pt.relayMembership,`RelayMembershipRef`),tF(Pt.relayAccountSession,`RelayAccountSessionRef`),tF(Pt.relayClientSession,`RelayClientSessionId`),tF(Pt.relayPlatformSessionBootstrap,`RelayPlatformSessionBootstrapRef`);var vF=tF(Pt.relayPlatformSession,`RelayPlatformSessionRef`),yF=tF(Pt.relayUpload,`RelayUploadRef`);tF(Pt.relayAuthChallenge,`RelayAuthChallengeRef`);var bF=tF(Pt.relayDesktopEntryContinuation,`RelayDesktopEntryContinuationRef`);tF(Pt.hostConnection,`HostConnectionRef`),tF(Pt.joinToken,`JoinTokenRef`);var xF=J.Union([J.Literal(`project_context_bootstrap`),J.Literal(`scratchpad_refresh`),J.Literal(`task_compile`),J.Literal(`context_sync`),J.Literal(`reference_summary_refresh`),J.Literal(`recovery_check`),J.Literal(`follow_up_check`)]);J.Object({cursor:J.Optional(nF),limit:J.Optional(J.Integer({minimum:1,maximum:200,default:50}))},{additionalProperties:!1});function SF(e){return J.Object({items:J.Array(e),page:J.Object({next_cursor:J.Optional(nF),has_more:J.Boolean(),limit:J.Integer({minimum:1,maximum:200})},{additionalProperties:!1})},{additionalProperties:!1})}function CF(e){return J.Object({items:J.Array(e),window:J.Object({older_cursor:J.Optional(nF),newer_cursor:J.Optional(nF),has_older:J.Boolean(),has_newer:J.Boolean(),limit:J.Integer({minimum:1,maximum:200})},{additionalProperties:!1})},{additionalProperties:!1})}var wF=J.Union([J.Object({kind:J.Literal(`all`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`workspace`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`session`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`bootstrap`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`messages`),scope:J.Literal(`main_chat`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`messages`),scope:J.Literal(`clarification_round`),round_id:pF},{additionalProperties:!1}),J.Object({kind:J.Literal(`scratchpad`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`worklist`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`read_state`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`task`),task_id:oF},{additionalProperties:!1}),J.Object({kind:J.Literal(`task_detail`),task_id:oF},{additionalProperties:!1}),J.Object({kind:J.Literal(`task_run_results`),task_id:oF},{additionalProperties:!1}),J.Object({kind:J.Literal(`clarification`),thread_id:J.Optional(fF),round_id:J.Optional(pF)},{additionalProperties:!1}),J.Object({kind:J.Literal(`execution_status`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`activity`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_config`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_usage`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`project_timeline`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`skills`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`artifacts`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`approval`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`viewer`),path:J.Optional(J.String({minLength:1}))},{additionalProperties:!1}),J.Object({kind:J.Literal(`recovery_summaries`)},{additionalProperties:!1})]);J.Object({kind:J.String({minLength:1})});var TF=J.Object({kind:J.Literal(`interrupted`),retry_with_new_command_id:J.Literal(!0)},{additionalProperties:!1});function EF(e){return J.Object({command_id:hF,issued_at:Y,payload:e},{additionalProperties:!1})}function DF(e){return J.Object({command_id:hF,disposition:e,invalidates:J.Optional(J.Array(wF))},{additionalProperties:!1})}function OF(e,t){return J.Object({command_id:hF,disposition:e,result:J.Optional(t),invalidates:J.Optional(J.Array(wF))},{additionalProperties:!1})}var kF=J.Union([J.Literal(`bad_request`),J.Literal(`unauthorized`),J.Literal(`forbidden`),J.Literal(`not_found`),J.Literal(`conflict`),J.Literal(`validation_failed`),J.Literal(`provider_not_configured`),J.Literal(`provider_auth_invalid`),J.Literal(`provider_quota_or_billing_required`),J.Literal(`provider_rate_limited`),J.Literal(`provider_model_unavailable`),J.Literal(`provider_network_error`),J.Literal(`relay_session_invalid`),J.Literal(`project_membership_required`),J.Literal(`command_replay_mismatch`),J.Literal(`repo_snapshot_unavailable`),J.Literal(`host_unavailable`),J.Literal(`internal_error`)]);J.Object({error:J.Object({code:kF,message:J.String({minLength:1}),retryable:J.Boolean(),details:J.Optional(J.Unknown())},{additionalProperties:!1})},{additionalProperties:!1}),J.Union([J.Literal(`connection.ready`),J.Literal(`message.created`),J.Literal(`scratchpad.updated`),J.Literal(`worklist.changed`),J.Literal(`task.updated`),J.Literal(`task_detail.updated`),J.Literal(`clarification.changed`),J.Literal(`approval.changed`),J.Literal(`activity.event`),J.Literal(`execution_status.changed`),J.Literal(`provider_config.changed`),J.Literal(`workspace.recovered`),J.Literal(`query.invalidate`)]),J.Union([J.Object({kind:J.Literal(`all`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`me`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`recent_projects`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`join_entries`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`project_presence`),relay_project_ref:gF},{additionalProperties:!1})]),J.Union([J.Literal(`connection.ready`),J.Literal(`query.invalidate`)]);var AF=J.Object({retention_seconds:J.Literal(300),max_events:J.Literal(1e3)},{additionalProperties:!1}),X=J.String({minLength:1}),jF=J.Union([J.Literal(`static`),J.Literal(`server`)]),MF=J.String({minLength:1,maxLength:120,pattern:`\\S`}),NF=J.String({minLength:1}),PF=J.Object({title:MF,kind:J.Literal(`static`),root:NF,entry:NF,network:J.Boolean()},{additionalProperties:!1}),FF=J.Object({title:MF,kind:J.Literal(`server`),cwd:NF,entry:J.String({minLength:1,maxLength:256,pattern:`^/`}),network:J.Boolean()},{additionalProperties:!1});J.Object({version:J.Literal(1),artifact:J.Union([PF,FF])},{additionalProperties:!1});var IF=J.Union([J.Literal(`ready`),J.Literal(`starting`),J.Literal(`idle`),J.Literal(`failed`)]),LF=J.Object({title:MF,kind:jF,network:J.Boolean()},{additionalProperties:!1}),RF=J.Object({status:IF,url:J.Optional(J.String({minLength:1})),error_message:J.Optional(X)},{additionalProperties:!1}),zF=J.Union([J.Object({status:J.Literal(`not_declared`)},{additionalProperties:!1}),J.Object({status:J.Literal(`invalid`),error:J.Object({code:X,message:X},{additionalProperties:!1})},{additionalProperties:!1}),J.Object({status:J.Literal(`declared`),preview_generation:X,artifact:LF,preview:RF},{additionalProperties:!1})]);J.Object({artifact:zF},{additionalProperties:!1});var BF=J.Object({},{additionalProperties:!1}),VF=J.Union([J.Object({kind:J.Literal(`issued`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`not_declared`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`invalid_manifest`),message:X},{additionalProperties:!1}),J.Object({kind:J.Literal(`preview_not_ready`),status:J.Union([J.Literal(`starting`),J.Literal(`idle`),J.Literal(`failed`)]),message:J.Optional(X)},{additionalProperties:!1}),TF]),HF=J.Object({bootstrap_url:J.String({minLength:1}),expires_at:Y},{additionalProperties:!1});EF(BF),OF(VF,HF);var UF=1e3,WF=1e3,GF=J.Union([J.Literal(`control`),J.Literal(`content`),J.Literal(`container`)]),KF=J.Object({tag_name:J.String({minLength:1,maxLength:64}),role:J.Optional(J.String({minLength:1,maxLength:64})),accessible_name:J.Optional(J.String({minLength:1,maxLength:160}))},{additionalProperties:!1}),qF=J.Object({expanded:J.Optional(J.Boolean()),selected:J.Optional(J.Boolean()),checked:J.Optional(J.Boolean()),pressed:J.Optional(J.Boolean()),disabled:J.Optional(J.Boolean())},{additionalProperties:!1,minProperties:1}),JF=J.Object({element_kind:GF,tag_name:J.String({minLength:1,maxLength:64}),role:J.Optional(J.String({minLength:1,maxLength:64})),accessible_name:J.Optional(J.String({minLength:1,maxLength:160})),text_excerpt:J.Optional(J.String({minLength:1,maxLength:280})),context:J.Array(KF,{maxItems:3}),state:J.Optional(qF)},{additionalProperties:!1}),YF=J.Object({version:J.Literal(1),explicit_anchor:J.Optional(J.String({minLength:1,maxLength:160})),stable_attributes:J.Optional(J.Object({id:J.Optional(J.String({minLength:1,maxLength:128})),test_id:J.Optional(J.String({minLength:1,maxLength:160}))},{additionalProperties:!1,minProperties:1})),semantic_path:J.Array(J.Object({role:J.Optional(J.String({minLength:1,maxLength:64})),accessible_name:J.Optional(J.String({minLength:1,maxLength:160}))},{additionalProperties:!1,minProperties:1}),{maxItems:4}),selector_path:J.Array(J.Object({root:J.Union([J.Literal(`document`),J.Literal(`open_shadow_root`)]),selector:J.String({minLength:1,maxLength:1024})},{additionalProperties:!1}),{minItems:1,maxItems:4})},{additionalProperties:!1}),XF=J.Object({snapshot:JF,anchor:YF,fallback_context:J.Optional(J.Object({snapshot:JF,anchor:YF},{additionalProperties:!1}))},{additionalProperties:!1}),ZF=J.Object({document_url:J.String({minLength:1,maxLength:2048,pattern:`^/`}),comment:J.String({minLength:1,maxLength:WF}),target:XF},{additionalProperties:!1}),QF=J.Object({expected_preview_generation:J.String({minLength:1,maxLength:256}),summary:J.Optional(J.String({minLength:1,maxLength:UF})),annotations:J.Array(ZF,{minItems:1,maxItems:64})},{additionalProperties:!1}),$F=J.Object({kind:J.Literal(`artifact_feedback`),version:J.Literal(1),preview_generation:J.String({minLength:1,maxLength:256}),artifact_title:MF,inspector_version:J.Literal(1),summary:J.Optional(J.String({minLength:1,maxLength:UF})),annotations:J.Array(ZF,{minItems:1,maxItems:64})},{additionalProperties:!1}),eI=4096,tI=J.String({pattern:`^[A-Za-z0-9_-]+$`}),nI=J.String({...tI,minLength:43,maxLength:43});J.String({...tI,minLength:43,maxLength:43});var rI=J.Object({iv:J.String({...tI,minLength:16,maxLength:16}),ciphertext:J.String({...tI,minLength:24,maxLength:eI})},{additionalProperties:!1});J.Object({continuation_ref:bF,completion_token:nI,expires_at:J.String({minLength:1})},{additionalProperties:!1});var iI=J.Object({continuation_ref:bF,status:J.Literal(`pending`),expires_at:J.String({minLength:1})},{additionalProperties:!1}),aI=J.Object({continuation_ref:bF,status:J.Literal(`ready`),sealed_payload:rI,expires_at:J.String({minLength:1})},{additionalProperties:!1});J.Union([iI,aI]),J.Object({continuation_ref:bF,sealed_payload:rI},{additionalProperties:!1}),J.Object({status:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({handoff_token:J.String({minLength:32,maxLength:128,pattern:`^[A-Za-z0-9_-]+$`})},{additionalProperties:!1}),J.Object({expires_at:Y,visibility:J.Literal(`hash_only`)},{additionalProperties:!1});var oI=2048,sI=`im:chat.members:read`,cI=`docx:document:readonly`,lI=`offline_access`,uI=`wiki:node:read`,dI=`drive:file:download`;J.Object({profile:J.Optional(J.Union([J.Literal(`docx`),J.Literal(`wiki_docx`),J.Literal(`drive_file`)]))},{additionalProperties:!1});var fI=J.String({minLength:43,maxLength:43,pattern:`^[A-Za-z0-9_-]+$`}),pI=J.String({minLength:43,maxLength:43,pattern:`^[A-Za-z0-9_-]+$`});J.Object({relay_project_ref:gF},{additionalProperties:!1}),J.Object({platform:J.Literal(`feishu`),app_id:J.String({minLength:1,maxLength:128,pattern:`^cli_[A-Za-z0-9]+$`}),state:fI,expires_at:Y},{additionalProperties:!1}),J.Object({relay_project_ref:gF,state:fI,authorization_code:J.String({minLength:1,maxLength:oI,pattern:`^[^\\u0000-\\u001f\\u007f]+$`})},{additionalProperties:!1}),J.Object({platform:J.Literal(`feishu`),project:J.Object({relay_project_ref:gF,display_name:J.String({minLength:1,maxLength:256})},{additionalProperties:!1}),account:J.Object({account_ref:_F,display_name:J.String({minLength:1,maxLength:256})},{additionalProperties:!1}),membership:J.Object({label:J.Union([J.Literal(`owner`),J.Literal(`member`)])},{additionalProperties:!1}),session:J.Object({platform_session_ref:vF,expires_at:Y,transport:J.Literal(`http_only_cookie`)},{additionalProperties:!1})},{additionalProperties:!1}),J.Object({platform:J.Literal(`feishu`),app_id:J.String({minLength:1,maxLength:128,pattern:`^cli_[A-Za-z0-9]+$`}),state:fI,authorization_scopes:J.Union([J.Tuple([J.Literal(cI),J.Literal(lI),J.Literal(dI)]),J.Tuple([J.Literal(cI),J.Literal(lI)]),J.Tuple([J.Literal(cI),J.Literal(lI),J.Literal(uI)])]),expires_at:Y},{additionalProperties:!1}),J.Object({state:fI,authorization_code:J.String({minLength:1,maxLength:oI,pattern:`^[^\\u0000-\\u001f\\u007f]+$`})},{additionalProperties:!1}),J.Object({platform:J.Literal(`feishu`),status:J.Literal(`authorized`),authorized_at:Y},{additionalProperties:!1}),J.Object({platform:J.Literal(`feishu`),relay_project_ref:gF,handoff_token:pI,expires_at:Y},{additionalProperties:!1}),J.Object({relay_project_ref:gF,handoff_token:pI},{additionalProperties:!1});var mI=J.String({minLength:1,maxLength:256,pattern:`^\\S(?:.*\\S)?$`}),hI=J.Union([J.Literal(`provider_auth_invalid`),J.Literal(`provider_quota_or_billing_required`),J.Literal(`provider_rate_limited`),J.Literal(`provider_model_unavailable`),J.Literal(`provider_network_error`),J.Literal(`unknown`)]),gI=hI,_I=J.Union([J.Literal(`provider_auth_invalid`),J.Literal(`provider_quota_or_billing_required`),J.Literal(`provider_rate_limited`),J.Literal(`provider_model_unavailable`),J.Literal(`provider_network_error`)]),vI=J.Union([J.Literal(`provider_not_configured`),J.Literal(`provider_config_invalid`),J.Literal(`provider_credential_missing`)]),yI=J.Union([J.Literal(`model_list_unavailable`),J.Literal(`model_list_empty`),vI]);J.Union([J.Object({status:J.Literal(`available`),models:J.Array(mI)},{additionalProperties:!1}),J.Object({status:J.Literal(`unavailable`),reason:yI},{additionalProperties:!1})]);var bI=J.Object({default_model:mI,expected_default_model:mI},{additionalProperties:!1}),xI=J.Union([J.Object({kind:J.Literal(`updated`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`unchanged`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`stale_default_model`),current_default_model:mI},{additionalProperties:!1}),J.Object({kind:J.Literal(`validation_failed`),reason:_I,retryable:J.Boolean()},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:vI},{additionalProperties:!1}),TF]);EF(bI),DF(xI);var SI=J.Union([J.Object({status:J.Literal(`not_configured`)},{additionalProperties:!1}),J.Object({status:J.Literal(`configured`),provider:J.Literal(`openai`),auth_kind:J.Literal(`api_key`),redacted_key:X,default_model:X,validated_at:Y},{additionalProperties:!1}),J.Object({status:J.Literal(`invalid`),provider:J.Optional(J.Literal(`openai`)),auth_kind:J.Optional(J.Literal(`api_key`)),redacted_key:J.Optional(X),default_model:J.Optional(X),validated_at:J.Optional(Y),invalid_reason_code:J.Optional(hI)},{additionalProperties:!1})]),CI=J.Union([J.Literal(`implementation`),J.Literal(`planning`),J.Literal(`context`),J.Literal(`qna`),J.Literal(`other`)]),wI=J.Object({input_tokens:J.Integer({minimum:0}),cached_input_tokens:J.Integer({minimum:0}),output_tokens:J.Integer({minimum:0}),reasoning_output_tokens:J.Integer({minimum:0}),total_tokens:J.Integer({minimum:0}),event_count:J.Integer({minimum:0})},{additionalProperties:!1}),TI=J.Object({source:J.String({minLength:1}),label:J.String({minLength:1}),category:CI,input_tokens:J.Integer({minimum:0}),cached_input_tokens:J.Integer({minimum:0}),output_tokens:J.Integer({minimum:0}),reasoning_output_tokens:J.Integer({minimum:0}),total_tokens:J.Integer({minimum:0}),event_count:J.Integer({minimum:0})},{additionalProperties:!1}),EI=J.Object({model:J.String({minLength:1}),input_tokens:J.Integer({minimum:0}),cached_input_tokens:J.Integer({minimum:0}),output_tokens:J.Integer({minimum:0}),reasoning_output_tokens:J.Integer({minimum:0}),total_tokens:J.Integer({minimum:0}),event_count:J.Integer({minimum:0})},{additionalProperties:!1}),DI=J.Object({total_tokens:J.Integer({minimum:0}),totals:wI,by_source:J.Array(TI),by_model:J.Array(EI),recent_windows:J.Object({today:wI,last_7_days:wI,last_30_days:wI},{additionalProperties:!1})},{additionalProperties:!1}),OI=J.Union([J.Literal(`task_accepted`),J.Literal(`task_update`),J.Literal(`checkpoint`)]),kI=J.Union([J.Literal(`completed`),J.Literal(`failed`),J.Literal(`needs_human`)]),AI=J.Union([J.Literal(`needs_input`),J.Literal(`completed`),J.Literal(`failed`)]),jI=J.Union([J.Literal(`neutral`),J.Literal(`success`),J.Literal(`warning`),J.Literal(`error`)]),MI=J.Object({kind:J.Union([J.Literal(`worklist_task`),J.Literal(`chat_message`),J.Literal(`reference_file`),J.Literal(`repo_path`)]),label:J.String({minLength:1}),task_id:J.Optional(oF),message_id:J.Optional(iF),path:J.Optional(J.String({minLength:1}))},{additionalProperties:!1}),NI=J.Object({message_id:iF,author:J.String({minLength:1}),body:J.String(),created_at:Y},{additionalProperties:!1}),PI=J.Object({title:J.Optional(J.String({minLength:1})),summary:J.String({minLength:1}),source:J.Optional(J.Union([J.Literal(`scratchpad`),J.Literal(`clarification`),J.Literal(`contract`)]))},{additionalProperties:!1}),FI=J.Object({title:J.Optional(J.String({minLength:1})),summary:J.Optional(J.String()),request:J.Optional(J.String()),status:J.Optional(J.Union([J.Literal(`active`),J.Literal(`resolved`)])),answer_count:J.Optional(J.Integer({minimum:0})),answers:J.Optional(J.Array(NI))},{additionalProperties:!1}),II=J.Union([J.Literal(`added`),J.Literal(`modified`),J.Literal(`deleted`),J.Literal(`renamed`),J.Literal(`unknown`)]),LI=J.Object({tone:jI,summary:J.Optional(J.String()),origin:J.Optional(J.Object({title:J.Optional(J.String({minLength:1})),summary:J.Optional(J.String()),snippets:J.Optional(J.Array(NI)),source_count:J.Optional(J.Integer({minimum:0})),unavailable_reason:J.Optional(J.String({minLength:1}))},{additionalProperties:!1})),decisions:J.Optional(J.Array(PI)),clarification:J.Optional(FI),contract:J.Optional(J.Object({goal:J.String(),scope:J.Array(J.String()),truncated:J.Optional(J.Boolean())},{additionalProperties:!1})),result:J.Optional(J.Object({summary:J.String(),error_code:J.Optional(J.String({minLength:1}))},{additionalProperties:!1})),changes:J.Optional(J.Object({items:J.Array(J.Object({status:II,path:J.String({minLength:1}),previous_path:J.Optional(J.String({minLength:1}))},{additionalProperties:!1})),total_count:J.Integer({minimum:0}),truncated:J.Boolean()},{additionalProperties:!1})),verification:J.Optional(J.Object({checks:J.Union([J.Literal(`passed`),J.Literal(`failed`),J.Literal(`skipped`)]),skip_reason_code:J.Optional(J.String({minLength:1})),skip_reason_summary:J.Optional(J.String())},{additionalProperties:!1})),promotion:J.Optional(J.Object({status:J.Union([J.Literal(`promoted`),J.Literal(`not_promoted`),J.Literal(`not_attempted`)]),commit_oid:J.Optional(J.String({minLength:1})),commit_short_oid:J.Optional(J.String({minLength:1})),summary:J.Optional(J.String()),reason_code:J.Optional(J.String({minLength:1}))},{additionalProperties:!1})),checkpoint:J.Optional(J.Object({counters:J.Object({completed:J.Integer({minimum:0}),failed:J.Integer({minimum:0}),remaining:J.Integer({minimum:0})},{additionalProperties:!1}),items:J.Array(J.Object({task_id:oF,title:J.String({minLength:1}),status:J.Union([J.Literal(`done`),J.Literal(`failed`)]),summary:J.String()},{additionalProperties:!1})),generated_files:J.Optional(J.Array(J.Object({path:J.String({minLength:1}),name:J.String({minLength:1})},{additionalProperties:!1}))),truncated:J.Optional(J.Boolean())},{additionalProperties:!1})),links:J.Array(MI)},{additionalProperties:!1}),RI=J.Object({id:J.String({minLength:1}),kind:OI,occurred_at:Y,title:J.String({minLength:1}),summary:J.Optional(J.String()),task_id:J.Optional(oF),task_title:J.Optional(J.String({minLength:1})),activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF),run_result_id:J.Optional(sF),message_id:J.Optional(iF),status:J.Optional(kI),update_state:J.Optional(AI),token_usage:J.Optional(wI),usage_sources:J.Optional(J.Array(TI)),usage_models:J.Optional(J.Array(EI)),trace_card:J.Optional(LI)},{additionalProperties:!1});J.Object({generated_at:Y,usage_overview:DI,items:J.Array(RI)},{additionalProperties:!1});var zI=10*1024*1024,BI=50*1024*1024,VI=BI,HI=J.Union([J.Literal(`reference_file`),J.Literal(`skill_zip`)]),UI=J.String({pattern:`^sha256:[a-f0-9]{64}$`});function WI(e){return{upload_id:yF,file_name:X,size_bytes:J.Integer({minimum:1,maximum:e}),sha256:UI,media_type:J.Optional(X)}}function GI(e){return e===`skill_zip`?BI:zI}var KI=WI(VI),qI=WI(zI),JI=WI(BI),YI={relay_project_ref:gF,file_name:X,sha256:UI,media_type:J.Optional(X)},XI=J.Object({...YI,purpose:J.Literal(`reference_file`),size_bytes:J.Integer({minimum:1,maximum:zI})},{additionalProperties:!1}),ZI=J.Object({...YI,purpose:J.Literal(`skill_zip`),size_bytes:J.Integer({minimum:1,maximum:BI})},{additionalProperties:!1});J.Object(KI,{additionalProperties:!1});var QI=J.Union([XI,ZI]),$I=J.Object({upload_id:yF,relay_project_ref:gF,purpose:HI,file_name:X,size_bytes:J.Integer({minimum:1,maximum:VI}),sha256:UI,media_type:J.Optional(X),expires_at:Y},{additionalProperties:!1}),eL=J.Object({method:J.Literal(`PUT`),url:J.String({minLength:1}),headers:J.Optional(J.Record(J.String({minLength:1}),J.String()))},{additionalProperties:!1}),tL=J.Union([J.Object({kind:J.Literal(`started`)},{additionalProperties:!1})]),nL=J.Object({upload:$I,put:eL},{additionalProperties:!1});EF(QI),OF(tL,nL);var rL=J.Union([J.Literal(`chat`),J.Literal(`worklist`),J.Literal(`references`),J.Literal(`skills`)]),iL=J.Object({scope:rL,latest_event_cursor:J.Integer({minimum:0}),read_event_cursor:J.Integer({minimum:0}),has_unread:J.Boolean(),updated_at:J.Optional(Y)},{additionalProperties:!1}),aL=J.Object({generated_at:Y,scopes:J.Object({chat:iL,worklist:iL,references:iL,skills:iL},{additionalProperties:!1})},{additionalProperties:!1}),oL=J.Object({scope:rL,up_to_event_cursor:J.Optional(J.Integer({minimum:0}))},{additionalProperties:!1}),sL=J.Union([J.Object({kind:J.Literal(`marked`)},{additionalProperties:!1}),TF]),cL=J.Object({read_state:aL},{additionalProperties:!1});EF(oL),OF(sL,cL);var lL=J.String({pattern:`^managed_ref_[a-f0-9]{32}$`,maxLength:44});J.Object({document_url:J.String({minLength:1,maxLength:2048})},{additionalProperties:!1}),J.Object({expected_updated_at:Y},{additionalProperties:!1});var uL=J.Object({source_ref:lL,reference_path:J.String({pattern:`^docs/reference/feishu-docx-[a-f0-9]{12}\\.txt$`}),status:J.Union([J.Literal(`syncing`),J.Literal(`current`),J.Literal(`waiting_for_host`),J.Literal(`retrying`),J.Literal(`authorization_required`),J.Literal(`permission_denied`),J.Literal(`failed`)]),revision:J.Union([J.String({maxLength:512}),J.Null()]),last_checked_at:J.Union([Y,J.Null()]),last_synced_at:J.Union([Y,J.Null()]),next_attempt_at:J.Union([Y,J.Null()]),updated_at:Y,reason_code:J.Union([J.String({pattern:`^[a-z][a-z0-9_]{0,95}$`}),J.Null()])},{additionalProperties:!1});J.Object({can_manage:J.Boolean(),items:J.Array(uL,{maxItems:100})},{additionalProperties:!1});function dL(e){if(e.length>2048||Array.from(e).some(e=>e.charCodeAt(0)<32||e.charCodeAt(0)===127))return null;let t=/^https:\/\/(?:[a-z0-9-]+\.)?(?:feishu\.cn|larksuite\.com)(?::443)?\/(docx|wiki)\/([a-z0-9]{1,999})\/?(?:[?#][^\s]*)?$/iu.exec(e.trim());if(t===null)return null;let n=t[1]?.toLowerCase(),r=t[2];return r===void 0||n!==`docx`&&n!==`wiki`||n===`docx`&&r.length!==27?null:{kind:n,token:r}}function fL(e){if(e.length>2048||[...e].some(e=>e.charCodeAt(0)<32||e.charCodeAt(0)===127))return null;let t=e.trim();if(/^[A-Za-z0-9]{27}$/u.test(t))return{kind:`docx`,token:t};let n=dL(t);if(n)return n;let r=/^https:\/\/(?:[a-z0-9-]+\.)?(?:feishu\.cn|larksuite\.com)(?::443)?\/file\/([a-z0-9]{1,256})\/?(?:[?#][^\s]*)?$/iu.exec(t);return r?.[1]?{kind:`file`,token:r[1]}:null}var pL=J.String({pattern:`^external_ref_[a-f0-9]{32}$`}),mL=J.String({pattern:`^ref_submission_[a-f0-9]{32}$`}),hL=J.Object({submission_ref:mL,kind:J.Union([J.Literal(`docx`),J.Literal(`wiki`),J.Literal(`file`)]),created_at:Y,expires_at:Y},{additionalProperties:!1}),gL=J.Object({source_ref:pL,kind:J.Union([J.Literal(`feishu_docx`),J.Literal(`feishu_drive_file`),J.Literal(`feishu_file`),J.Literal(`feishu_image`)]),name:J.String({minLength:1,maxLength:240}),created_at:Y},{additionalProperties:!1});J.Object({can_register:J.Boolean(),items:J.Array(gL,{maxItems:500}),pending:J.Optional(J.Array(hL,{maxItems:20}))},{additionalProperties:!1}),J.Union([J.Object({document_url:J.String({minLength:1,maxLength:2048})},{additionalProperties:!1}),J.Object({submission_ref:mL},{additionalProperties:!1})]);var _L=J.Object({attempt:J.Integer({minimum:1}),kind:J.Union([J.Literal(`initial`),J.Literal(`continuation`),J.Literal(`retry`)]),parent_activity_ref:J.Optional(lF),root_activity_ref:J.Optional(lF)},{additionalProperties:!1}),vL=J.Union([J.Object({kind:J.Literal(`task`),task_id:oF},{additionalProperties:!1}),J.Object({kind:J.Literal(`workflow`),workflow_ref:dF},{additionalProperties:!1}),J.Object({kind:J.Literal(`project`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`clarification_round`),clarification_round_ref:pF},{additionalProperties:!1})]),yL=J.Union([J.Literal(`todo`),J.Literal(`running`),J.Literal(`pending`),J.Literal(`done`),J.Literal(`failed`)]),bL=J.Object({task_id:oF,title:X,summary:J.String(),status:yL,module_id:aF,module_name:X},{additionalProperties:!1}),xL=J.Object({workflow_ref:dF,activity_ref:lF,topic:J.String(),background_summary:J.String(),current_consensus:J.Array(J.String()),open_questions:J.Array(J.String()),task_changes:J.Array(J.String()),submitted_at:Y,compiled_tasks:J.Optional(J.Array(bL))},{additionalProperties:!1}),SL=J.Object({id:J.Literal(`current`),state:J.Union([J.Literal(`empty`),J.Literal(`ready`),J.Literal(`submitted`)]),topic:J.String(),background_summary:J.String(),current_consensus:J.Array(J.String()),open_questions:J.Array(J.String()),task_changes:J.Array(J.String()),updated_by_activity_ref:J.Optional(lF),updated_at:J.Optional(Y),submitted_by_activity_ref:J.Optional(lF),submitted_by_workflow_ref:J.Optional(dF),submitted_at:J.Optional(Y),receipts:J.Array(xL)},{additionalProperties:!1}),CL=J.Object({id:aF,name:X,summary:J.Optional(J.String()),order:J.Integer(),archived:J.Boolean(),created_at:Y,updated_at:J.Optional(Y)},{additionalProperties:!1}),wL=J.Object({id:oF,module_id:aF,title:X,summary:J.String(),status:yL,order:J.Integer(),current_activity_ref:J.Optional(lF),active_clarification_thread_ref:J.Optional(fF),latest_run_result_id:J.Optional(sF),created_from_workflow_ref:dF,created_at:Y,updated_at:Y},{additionalProperties:!1});J.Object({modules:J.Array(J.Object({module:CL,tasks:J.Array(wL)},{additionalProperties:!1})),updated_at:J.Optional(Y)},{additionalProperties:!1});var TL=J.Object({goal:J.String(),scope:J.Array(J.String())},{additionalProperties:!1}),EL=J.Union([J.Literal(`no_validation_command_found`),J.Literal(`project_has_no_test_setup`),J.Literal(`validation_not_applicable`),J.Literal(`command_prerequisite_missing`),J.Literal(`command_requires_external_service`),J.Literal(`command_requires_secret`),J.Literal(`command_requires_interactive_input`),J.Literal(`command_too_expensive_for_mvp`),J.Literal(`unsafe_command_blocked`),J.Literal(`known_failing_baseline`)]),DL=J.Object({status:J.Union([J.Literal(`succeeded`),J.Literal(`failed`),J.Literal(`unknown`)]),target:J.Optional(X),redacted_summary:J.String(),started_at:J.Optional(Y),finished_at:J.Optional(Y)},{additionalProperties:!1}),OL=J.Object({latest_run_result_id:J.Optional(sF),result_kind:J.Optional(J.Union([J.Literal(`needs_human`),J.Literal(`finished`),J.Literal(`failed`)])),run_lineage:J.Optional(_L),clarification_thread_ref:J.Optional(fF),outcome:J.Optional(J.Union([J.Literal(`completed`),J.Literal(`failed`)])),summary:J.Optional(J.String()),checks:J.Optional(J.Union([J.Literal(`passed`),J.Literal(`failed`),J.Literal(`skipped`)])),docs:J.Optional(J.Union([J.Literal(`updated`),J.Literal(`checked_no_change`),J.Literal(`not_checked`),J.Literal(`sync_deferred`)])),skip_reason_code:J.Optional(EL),skip_reason_summary:J.Optional(J.String()),external_side_effects:J.Optional(J.Array(DL)),changed_paths:J.Optional(J.Array(J.String())),user_note_candidate:J.Optional(J.String()),promotion:J.Optional(J.Object({status:J.Union([J.Literal(`promoted`),J.Literal(`not_promoted`),J.Literal(`not_attempted`)]),summary:J.Optional(J.String()),reason_code:J.Optional(X),commit_oid:J.Optional(X)},{additionalProperties:!1})),error_code:J.Optional(X),retryable:J.Optional(J.Boolean()),retry_action:J.Optional(J.Union([J.Literal(`retryable`),J.Literal(`retried`)])),updated_at:J.Optional(Y)},{additionalProperties:!1}),kL=J.Object({task:wL,detail:J.Object({task_id:oF,contract:TL,result:OL,frozen_contract_since_activity_ref:J.Optional(lF),updated_at:Y},{additionalProperties:!1})},{additionalProperties:!1});SF(J.Union([J.Object({id:sF,activity_ref:lF,task_id:oF,run_lineage:_L,result_kind:J.Literal(`needs_human`),summary:J.String(),clarification_thread_ref:fF,created_at:Y},{additionalProperties:!1}),J.Object({id:sF,activity_ref:lF,task_id:oF,run_lineage:_L,result_kind:J.Literal(`finished`),outcome:J.Union([J.Literal(`completed`),J.Literal(`failed`)]),summary:J.String(),user_note_candidate:J.Optional(J.String()),checks:J.Union([J.Literal(`passed`),J.Literal(`failed`),J.Literal(`skipped`)]),docs:J.Union([J.Literal(`updated`),J.Literal(`checked_no_change`),J.Literal(`not_checked`),J.Literal(`sync_deferred`)]),skip_reason_code:J.Optional(EL),skip_reason_summary:J.Optional(J.String()),external_side_effects:J.Optional(J.Array(DL)),retry_action:J.Optional(J.Union([J.Literal(`retryable`),J.Literal(`retried`)])),created_at:Y},{additionalProperties:!1}),J.Object({id:sF,activity_ref:lF,task_id:oF,run_lineage:_L,result_kind:J.Literal(`failed`),summary:J.String(),error_code:X,retryable:J.Boolean(),retry_action:J.Optional(J.Union([J.Literal(`retryable`),J.Literal(`retried`)])),created_at:Y},{additionalProperties:!1})]));var AL=J.Object({recovery_summary_id:cF,summary:J.String({minLength:1}),affected_activities:J.Array(lF),affected_activity_count:J.Integer({minimum:0}),created_at:Y},{additionalProperties:!1});SF(AL),J.Object({recovery_summary:AL},{additionalProperties:!1});var jL=J.Union(Kr.map(e=>J.Literal(e))),ML=J.Union([J.Object({kind:J.Literal(`initials`),initials:J.String({minLength:1}),color:jL},{additionalProperties:!1}),J.Object({kind:J.Literal(`image`),image_url:J.String({minLength:1}),initials:J.String({minLength:1}),color:jL},{additionalProperties:!1})]),NL=J.Union([J.Object({kind:J.Literal(`main_chat`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`clarification_round`),clarification_round_ref:pF},{additionalProperties:!1})]),PL=J.Object({kind:J.Union([J.Literal(`human`),J.Literal(`system`),J.Literal(`agent`)]),ref:J.Optional(X),display_name:J.Optional(X),avatar:J.Optional(ML)},{additionalProperties:!1}),FL=J.Union([J.Literal(`user_text`),J.Literal(`agent_text`),J.Literal(`system_notice`),J.Literal(`clarification_request`),J.Literal(`clarification_card`)]),IL=J.Union([J.Literal(`file`),J.Literal(`image`)]),LL=J.Object({path:J.String({minLength:1}),name:X,source:J.Union([J.Literal(`human_upload`),J.Literal(`tutti_output`)]),category:IL,blob_oid:J.Optional(X),media_type:J.Optional(X),size_bytes:J.Integer({minimum:0}),text_read:J.Object({can_read:J.Boolean(),blocked_reason:J.Optional(J.Union([J.Literal(`binary`),J.Literal(`too_large`),J.Literal(`unsupported_encoding`),J.Literal(`restricted_path`),J.Literal(`secret_like`),J.Literal(`unknown`)]))},{additionalProperties:!1})},{additionalProperties:!1}),RL=J.Object({task_id:oF,title:X,status:J.Union([J.Literal(`done`),J.Literal(`failed`)]),summary:J.String(),module_name:J.Optional(X),latest_run_result_id:J.Optional(sF)},{additionalProperties:!1}),zL=J.Object({path:J.String({minLength:1}),name:X,group:J.Optional(X),size_bytes:J.Integer({minimum:0}),media_type:J.Optional(X)},{additionalProperties:!1}),BL=J.Object({kind:J.Literal(`worklist_terminal`),status:J.Union([J.Literal(`completed`),J.Literal(`failed`)]),reason:J.Union([J.Literal(`all_tasks_done`),J.Literal(`run_failed`)]),title:X,feedback_key:X,counters:J.Object({completed:J.Integer({minimum:0}),failed:J.Integer({minimum:0}),remaining:J.Integer({minimum:0})},{additionalProperties:!1}),items:J.Array(RL),final_note:J.Optional(J.String()),generated_files:J.Optional(J.Array(zL)),primary_task_id:J.Optional(oF)},{additionalProperties:!1}),VL=J.Object({kind:J.Literal(`task_result`),status:J.Union([J.Literal(`completed`),J.Literal(`failed`)]),title:X,task_id:oF,task_title:X,result_key:X,summary:J.String(),module_name:J.Optional(X),latest_run_result_id:J.Optional(sF),activity_ref:J.Optional(lF),final_note:J.Optional(J.String()),generated_files:J.Optional(J.Array(zL)),error_code:J.Optional(X),retry_action:J.Optional(J.Union([J.Literal(`retryable`),J.Literal(`retried`)]))},{additionalProperties:!1}),HL=J.Object({kind:J.Literal(`worklist_compile`),workflow_ref:dF,title:X,task_count:J.Integer({minimum:0}),tasks:J.Array(bL)},{additionalProperties:!1}),UL=J.Object({kind:J.Literal(`artifact_preview`),title:X,status:J.Union([J.Literal(`available`),J.Literal(`updated`)]),task_id:J.Optional(oF),run_result_id:J.Optional(sF)},{additionalProperties:!1}),WL=J.Object({external_reference_reads:J.Optional(J.Array(pL,{minItems:1,maxItems:16,uniqueItems:!0})),external_references:J.Optional(J.Array(gL,{minItems:1,maxItems:16})),task_id:J.Optional(oF),activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF),clarification_thread_ref:J.Optional(fF),clarification_round_ref:J.Optional(pF),scratchpad_source:J.Optional(J.Union([J.Literal(`include`),J.Literal(`exclude`)])),reference_file:J.Optional(LL),worklist_compile:J.Optional(HL),worklist_feedback:J.Optional(BL),task_result:J.Optional(VL),artifact_preview:J.Optional(UL),artifact_feedback:J.Optional($F)},{additionalProperties:!1}),GL=J.Object({id:iF,scope:NL,author:PL,message_kind:FL,body:J.String(),refs:J.Optional(WL),clarification_card:J.Optional(J.Object({thread_id:fF,round_id:pF,title:J.Optional(X),summary:X,status:J.Union([J.Literal(`writable`),J.Literal(`sealed`)]),is_current_round:J.Boolean()},{additionalProperties:!1})),created_at:Y},{additionalProperties:!1});CF(GL);var KL=J.Union([J.Object({body:J.String({minLength:1,maxLength:8e3})},{additionalProperties:!1}),J.Object({artifact_feedback:QF},{additionalProperties:!1})]),qL=J.Object({kind:J.Literal(`created`),message_id:J.Optional(iF)},{additionalProperties:!1}),JL=J.Object({kind:J.Literal(`artifact_changed`)},{additionalProperties:!1}),YL=J.Object({kind:J.Literal(`artifact_unavailable`)},{additionalProperties:!1}),XL=J.Union([qL,JL,YL,TF]),ZL=J.Object({message:GL},{additionalProperties:!1});J.Object({limit:J.Optional(J.Integer({minimum:1,maximum:200,default:50})),anchor:J.Optional(J.Union([J.Literal(`latest`),J.Literal(`start`)])),before:J.Optional(nF),after:J.Optional(nF),around:J.Optional(iF)},{additionalProperties:!1}),EF(KL),OF(XL,ZL),J.Object({message:GL},{additionalProperties:!1});var QL=J.Union([J.Literal(`command_execution`),J.Literal(`file_change`),J.Literal(`permissions`),J.Literal(`legacy_exec_command`),J.Literal(`legacy_apply_patch`)]),$L=J.Union([J.Literal(`allow_once`),J.Literal(`allow_session`),J.Literal(`deny`),J.Literal(`cancel`)]),eR=J.Union([J.Literal(`primary`),J.Literal(`neutral`),J.Literal(`danger`)]),tR=J.Object({decision_id:X,kind:$L,label:X,tone:eR},{additionalProperties:!1}),nR=J.Object({text:X,cwd_label:J.Optional(X),actions:J.Optional(J.Array(J.Object({label:X,detail:J.Optional(X)},{additionalProperties:!1}))),network:J.Optional(J.Object({host:X,protocol:X},{additionalProperties:!1}))},{additionalProperties:!1}),rR=J.Object({grant_root_label:J.Optional(X),paths:J.Optional(J.Array(X))},{additionalProperties:!1}),iR=J.Object({network:J.Optional(J.Object({enabled:J.Boolean()},{additionalProperties:!1})),filesystem:J.Optional(J.Object({read:J.Optional(J.Array(X)),write:J.Optional(J.Array(X))},{additionalProperties:!1}))},{additionalProperties:!1}),aR=J.Object({approval_id:mF,request_kind:QL,title:X,summary:X,reason:J.Optional(X),requested_at:Y,expires_at:J.Optional(Y),task_id:J.Optional(oF),activity_ref:J.Optional(lF),command:J.Optional(nR),file_change:J.Optional(rR),permissions:J.Optional(iR),decisions:J.Array(tR,{minItems:1})},{additionalProperties:!1}),oR=J.Union([J.Literal(`accepted`),J.Literal(`declined`),J.Literal(`cancelled`),J.Literal(`expired`)]),sR=J.Object({decision_id:X,label:X,outcome:oR,decided_at:Y,decided_by:J.Optional(J.Object({account_ref:X,display_name:X},{additionalProperties:!1}))},{additionalProperties:!1}),cR=J.Union([J.Object({state:J.Literal(`none`)},{additionalProperties:!1}),J.Object({state:J.Literal(`pending`),request:aR},{additionalProperties:!1}),J.Object({state:J.Literal(`resolved`),request:aR,resolution:sR},{additionalProperties:!1})]),lR=J.Object({decision_id:X},{additionalProperties:!1}),uR=J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`stale_approval`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`decision_unavailable`)},{additionalProperties:!1}),TF]),dR=J.Object({approval:J.Optional(cR)},{additionalProperties:!1});EF(lR),OF(uR,dR);var fR=J.Union([J.Object({ref_kind:J.Literal(`project_doc`),path:X},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`directory_readme`),path:X},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`task_detail`),task_id:oF},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`worklist`),module_id:J.Optional(aF),task_id:J.Optional(oF)},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`scratchpad`),id:J.Literal(`current`)},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`clarification_round`),clarification_round_ref:pF},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`chat_messages`),message_refs:J.Array(iF)},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`repo_paths`),paths:J.Array(X)},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`recovery_summary`),recovery_summary_id:cF},{additionalProperties:!1})]),pR=J.Object({kind:J.Literal(`freeform`),purpose:J.Union([J.Literal(`clarify_requirement`),J.Literal(`confirm_risk`)]),prompt:J.Object({title:J.Optional(X),summary:X,request:X},{additionalProperties:!1}),subject:J.Optional(J.Object({kind:J.Union([J.Literal(`task`),J.Literal(`deployment_target`),J.Literal(`project_context`)]),ref:J.Optional(X),summary:X},{additionalProperties:!1})),expires_when:J.Optional(J.Union([J.Literal(`current_run_only`),J.Literal(`until_task_contract_changes`)]))},{additionalProperties:!1});J.Object({summary:X,request:X,interaction:J.Optional(pR)},{additionalProperties:!1});var mR=J.Object({summary:X,request:X,interaction:J.Optional(pR),title:J.Optional(X),related_refs:J.Optional(J.Array(fR))},{additionalProperties:!1}),hR=J.Union([J.Object({kind:J.Literal(`task_compile`),workflow_ref:dF},{additionalProperties:!1}),J.Object({kind:J.Literal(`task`),task_id:oF},{additionalProperties:!1})]),gR=J.Object({id:fF,owner:hR,status:J.Union([J.Literal(`active`),J.Literal(`closed`)]),current_round_id:J.Optional(pF),created_from_activity_ref:J.Optional(lF),closed_reason:J.Optional(J.Union([J.Literal(`resolved`),J.Literal(`contract_changed`),J.Literal(`cancelled`)])),created_at:Y,updated_at:Y},{additionalProperties:!1}),_R=J.Union([J.Object({kind:J.Literal(`next_round`),clarification_round_ref:pF},{additionalProperties:!1}),J.Object({kind:J.Literal(`run`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`chain_closed`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`proposal_applied`),workflow_ref:dF},{additionalProperties:!1})]),vR=J.Object({id:pF,thread_id:fF,round_index:J.Integer({minimum:1}),status:J.Union([J.Literal(`writable`),J.Literal(`sealed`)]),request_payload:mR,card_message_id:iF,opening_message_id:iF,submitted_at:J.Optional(Y),submitted_message_refs:J.Optional(J.Array(iF)),successor_status:J.Union([J.Literal(`not_materialized`),J.Literal(`materialized`)]),successor_ref:J.Optional(_R),capabilities:J.Object({send_message:J.Boolean(),submit:J.Boolean()},{additionalProperties:!1}),created_at:Y,updated_at:Y},{additionalProperties:!1});J.Union([J.Object({state:J.Literal(`none`)},{additionalProperties:!1}),J.Object({state:J.Literal(`active`),thread:gR,round:vR},{additionalProperties:!1})]);var yR=J.Object({id:pF,thread_id:fF,round_index:J.Integer({minimum:1}),status:J.Union([J.Literal(`writable`),J.Literal(`sealed`)]),title:J.Optional(X),summary:X,submitted_at:J.Optional(Y),successor_status:J.Union([J.Literal(`not_materialized`),J.Literal(`materialized`)]),created_at:Y,updated_at:Y},{additionalProperties:!1});J.Object({thread:gR,rounds:J.Array(yR)},{additionalProperties:!1}),J.Object({thread:gR,round:vR},{additionalProperties:!1}),J.Object({limit:J.Optional(J.Integer({minimum:1,maximum:200,default:50})),anchor:J.Optional(J.Union([J.Literal(`start`),J.Literal(`latest`)])),before:J.Optional(nF),after:J.Optional(nF)},{additionalProperties:!1});var bR=J.Object({body:J.String({minLength:1,maxLength:8e3})},{additionalProperties:!1}),xR=J.Union([J.Object({kind:J.Literal(`created`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`stale_round`),current_round_id:J.Optional(pF)},{additionalProperties:!1}),J.Object({kind:J.Literal(`chain_closed`)},{additionalProperties:!1}),TF]),SR=J.Object({message:J.Optional(GL)},{additionalProperties:!1});EF(bR),OF(xR,SR);var CR=J.Object({},{additionalProperties:!1}),wR=J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_submitted`),successor_status:J.Union([J.Literal(`not_materialized`),J.Literal(`materialized`)]),successor_ref:J.Optional(_R)},{additionalProperties:!1}),J.Object({kind:J.Literal(`stale_round`),current_round_id:J.Optional(pF)},{additionalProperties:!1}),J.Object({kind:J.Literal(`chain_closed`)},{additionalProperties:!1}),TF]),TR=J.Object({round:J.Optional(vR),materialization:J.Optional(J.Object({status:J.Union([J.Literal(`queued`),J.Literal(`already_materialized`)]),successor_ref:J.Optional(_R)},{additionalProperties:!1}))},{additionalProperties:!1});EF(CR),OF(wR,TR),J.Object({reason:J.Union([J.Literal(`round_opened`),J.Literal(`round_message_created`),J.Literal(`round_submitted`),J.Literal(`successor_materialized`),J.Literal(`chain_closed`),J.Literal(`recovered`)]),thread_id:fF,round_id:J.Optional(pF),successor_ref:J.Optional(_R)},{additionalProperties:!1});var ER=J.String(),DR=J.Object({source:J.Literal(`mainline`),branch:J.Literal(`tutti/mainline`),head:J.Optional(J.Object({oid:X,short_oid:X},{additionalProperties:!1})),mainline_clean:J.Boolean(),generated_at:Y},{additionalProperties:!1}),OR=J.Union([J.Literal(`product`),J.Literal(`tech`),J.Literal(`structure`),J.Literal(`architecture_principles`)]),kR=J.Union([J.Literal(`restricted_path`),J.Literal(`secret_like`),J.Literal(`binary`),J.Literal(`unsupported_encoding`),J.Literal(`too_large`)]),AR=J.Object({doc_key:OR,path:ER,status:J.Union([J.Literal(`available`),J.Literal(`missing`),J.Literal(`unreadable`)]),unreadable_reason:J.Optional(kR),size_bytes:J.Optional(J.Integer({minimum:0})),blob_oid:J.Optional(X),last_commit:J.Optional(J.Object({oid:X,short_oid:X,committed_at:Y,title:J.Optional(X)},{additionalProperties:!1}))},{additionalProperties:!1}),jR=J.Union([J.Literal(`directory`),J.Literal(`symlink`),J.Literal(`submodule`),J.Literal(`restricted_path`),J.Literal(`secret_like`),J.Literal(`binary`),J.Literal(`too_large`),J.Literal(`unknown`)]),MR=J.Object({path:ER,name:J.String(),kind:J.Union([J.Literal(`directory`),J.Literal(`file`),J.Literal(`symlink`),J.Literal(`submodule`)]),depth:J.Integer({minimum:0}),parent_path:J.Optional(ER),size_bytes:J.Optional(J.Integer({minimum:0})),blob_oid:J.Optional(X),extension:J.Optional(X),language_hint:J.Optional(X),has_children:J.Optional(J.Boolean()),project_doc_key:J.Optional(OR),text_read:J.Object({can_read:J.Boolean(),blocked_reason:J.Optional(jR)},{additionalProperties:!1})},{additionalProperties:!1}),NR=J.Union([J.Object({kind:J.Literal(`text`),encoding:J.Literal(`utf-8`),text:J.String(),truncated:J.Boolean(),bytes_returned:J.Integer({minimum:0}),total_bytes:J.Integer({minimum:0}),line_count:J.Optional(J.Integer({minimum:0}))},{additionalProperties:!1}),J.Object({kind:J.Literal(`omitted`),reason:J.Union([J.Literal(`binary`),J.Literal(`unsupported_encoding`),J.Literal(`too_large`)]),total_bytes:J.Integer({minimum:0})},{additionalProperties:!1})]),PR=J.Object({path:ER,name:X,kind:J.Literal(`file`),size_bytes:J.Integer({minimum:0}),blob_oid:J.Optional(X),extension:J.Optional(X),language_hint:J.Optional(X),media_type:J.Optional(X)},{additionalProperties:!1});J.Object({snapshot:DR,docs:J.Array(AR)},{additionalProperties:!1}),J.Object({doc_key:OR},{additionalProperties:!1}),J.Object({max_bytes:J.Optional(J.Integer({minimum:1,maximum:1048576}))},{additionalProperties:!1}),J.Object({snapshot:DR,doc:AR,content:NR},{additionalProperties:!1}),J.Object({path:J.Optional(ER),depth:J.Optional(J.Integer({minimum:1,maximum:3})),limit:J.Optional(J.Integer({minimum:1,maximum:1e3})),cursor:J.Optional(nF)},{additionalProperties:!1});var FR=J.Object({next_cursor:J.Optional(nF),has_more:J.Boolean(),limit:J.Integer({minimum:1,maximum:1e3})},{additionalProperties:!1});J.Object({snapshot:DR,root:MR,items:J.Array(MR),page:FR},{additionalProperties:!1}),J.Object({path:ER,max_bytes:J.Optional(J.Integer({minimum:1,maximum:1048576}))},{additionalProperties:!1});var IR=J.Union([J.Literal(`thumbnail`),J.Literal(`preview`),J.Literal(`original`)]);J.Object({path:ER,variant:IR,v:X},{additionalProperties:!1}),J.Object({snapshot:DR,file:PR,content:NR},{additionalProperties:!1});var LR=J.Object({path:J.Literal(`docs/reference`),status:J.Union([J.Literal(`available`),J.Literal(`missing`)]),index_path:J.Literal(`docs/reference/README.md`),files_path:J.Literal(`docs/reference/files`),images_path:J.Literal(`docs/reference/images`),index_status:J.Union([J.Literal(`available`),J.Literal(`missing`),J.Literal(`unreadable`)]),index_unreadable_reason:J.Optional(kR)},{additionalProperties:!1}),RR=J.Union([J.Literal(`binary`),J.Literal(`too_large`),J.Literal(`unsupported_encoding`),J.Literal(`restricted_path`),J.Literal(`secret_like`),J.Literal(`unknown`)]),zR=J.Object({status:J.Union([J.Literal(`available`),J.Literal(`missing`),J.Literal(`stale`),J.Literal(`unavailable`)]),text:J.Optional(J.String()),generated_at:J.Optional(Y),source_blob_oid:J.Optional(X),unavailable_reason:J.Optional(J.String()),read_paths:J.Optional(J.Array(ER))},{additionalProperties:!1}),BR=J.Object({path:ER,name:X,category:IL,size_bytes:J.Integer({minimum:0}),media_type:J.Optional(X),extension:J.Optional(X),language_hint:J.Optional(X),blob_oid:J.Optional(X),text_read:J.Object({can_read:J.Boolean(),blocked_reason:J.Optional(RR)},{additionalProperties:!1}),summary:J.Optional(zR)},{additionalProperties:!1});J.Object({include_index:J.Optional(J.Boolean()),limit:J.Optional(J.Integer({minimum:1,maximum:1e3})),cursor:J.Optional(nF)},{additionalProperties:!1}),J.Object({snapshot:DR,directory:LR,items:J.Array(BR),page:FR},{additionalProperties:!1});var VR=J.Object({...qI,note:J.Optional(J.String())},{additionalProperties:!1}),HR=J.Union([J.Object({kind:J.Literal(`created`)},{additionalProperties:!1}),TF]),UR=J.Object({file:BR,message:GL,index_path:J.Literal(`docs/reference/README.md`)},{additionalProperties:!1});EF(VR),OF(HR,UR);var WR=J.Object({paths:J.Optional(J.Array(ER))},{additionalProperties:!1}),GR=J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`no_targets`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:J.Union([J.Literal(`provider_auth_invalid`),J.Literal(`provider_quota_or_billing_required`),J.Literal(`provider_rate_limited`),J.Literal(`provider_model_unavailable`),J.Literal(`provider_network_error`)]),retryable:J.Boolean()},{additionalProperties:!1}),TF]),KR=J.Object({activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF),target_count:J.Optional(J.Integer({minimum:0}))},{additionalProperties:!1});EF(WR),OF(GR,KR);var qR=J.String({minLength:1,maxLength:96,pattern:`^[a-z0-9_-]+$`}),JR=J.Object({name:qR,description:X,short_description:J.Optional(X),enabled:J.Boolean(),source:J.Literal(`user`),updated_at:J.Optional(Y)},{additionalProperties:!1}),YR=J.Object({name:qR,description:X,short_description:J.Optional(X),enabled:J.Boolean(),source:J.Literal(`user`),updated_at:J.Optional(Y),skill_md:J.String({minLength:1})},{additionalProperties:!1});J.Object({items:J.Array(JR)},{additionalProperties:!1}),J.Object({skill_name:qR},{additionalProperties:!1}),J.Object({skill:YR},{additionalProperties:!1});var XR=J.Object(JI,{additionalProperties:!1}),ZR=J.Union([J.Object({kind:J.Literal(`created`),skill_name:qR},{additionalProperties:!1}),J.Object({kind:J.Literal(`replaced`),skill_name:qR},{additionalProperties:!1}),TF]),QR=J.Object({skill:YR},{additionalProperties:!1});EF(XR),OF(ZR,QR);var $R=J.Object({skill_name:qR},{additionalProperties:!1}),ez=J.Union([J.Object({kind:J.Literal(`deleted`),skill_name:qR},{additionalProperties:!1}),J.Object({kind:J.Literal(`not_found`),skill_name:qR},{additionalProperties:!1}),TF]);EF($R),DF(ez);var tz=J.Union([J.Literal(`idle`),J.Literal(`running`),J.Literal(`pending`),J.Literal(`failed`)]),nz=J.Union([J.Literal(`foreground`),J.Literal(`scratchpad_background`)]),rz=J.Object({activity_ref:lF,activity_kind:J.Union([J.Literal(`run`),J.Literal(`procedure`)]),workflow_ref:J.Optional(dF),workflow_kind:J.Optional(xF),lane:J.Optional(nz),started_at:J.Optional(Y)},{additionalProperties:!1}),iz=J.Union([J.Literal(`analyzing_task`),J.Literal(`searching_codebase`),J.Literal(`reading_files`),J.Literal(`reading_context`),J.Literal(`planning`),J.Literal(`editing_files`),J.Literal(`running_checks`),J.Literal(`running_command`),J.Literal(`using_tool`),J.Literal(`waiting_for_approval`),J.Literal(`preparing_result`),J.Literal(`finalizing`)]),az=J.Object({input_tokens:J.Optional(J.Integer({minimum:0})),cached_input_tokens:J.Optional(J.Integer({minimum:0})),output_tokens:J.Optional(J.Integer({minimum:0})),reasoning_output_tokens:J.Optional(J.Integer({minimum:0})),total_tokens:J.Integer({minimum:0})},{additionalProperties:!1}),oz=J.Object({activity_ref:lF,stage_id:J.Optional(J.String()),started_at:J.Optional(Y),updated_at:J.Optional(Y),token_usage:J.Optional(az),current_action:J.Optional(iz),current_action_detail:J.Optional(J.String({minLength:1,maxLength:160})),current_action_started_at:J.Optional(Y)},{additionalProperties:!1}),sz=J.Object({status:tz,summary:J.String(),active_task:J.Optional(wL),active_activity:J.Optional(rz),active_activities:J.Optional(J.Array(rz)),runtime:J.Optional(oz),blocked_by:J.Optional(J.Union([J.Object({kind:J.Literal(`clarification`),thread_id:fF,round_id:pF},{additionalProperties:!1}),J.Object({kind:J.Literal(`approval`),approval_id:mF},{additionalProperties:!1})])),last_conclusion:J.Optional(J.Object({kind:J.Union([J.Literal(`completed`),J.Literal(`failed`),J.Literal(`needs_human`),J.Literal(`recovered`)]),summary:J.String(),task_id:J.Optional(oF),activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF),occurred_at:Y},{additionalProperties:!1})),updated_at:Y},{additionalProperties:!1}),cz=J.Object({activity_ref:lF,activity_kind:J.Union([J.Literal(`run`),J.Literal(`procedure`)]),status:J.Union([J.Literal(`running`),J.Literal(`needs_human`),J.Literal(`finished`),J.Literal(`failed`),J.Literal(`interrupted`)]),title:X,summary:J.String(),task_id:J.Optional(oF),workflow_ref:J.Optional(dF),workflow_kind:J.Optional(xF),lane:J.Optional(nz),run_lineage:J.Optional(_L),started_at:J.Optional(Y),ended_at:J.Optional(Y),latest_event_ref:J.Optional(uF),result_anchor:J.Optional(vL)},{additionalProperties:!1}),lz=J.Object({event_ref:uF,activity_ref:lF,event_kind:J.Union([J.Literal(`started`),J.Literal(`progress`),J.Literal(`needs_human`),J.Literal(`artifact_snapshot`),J.Literal(`finished`),J.Literal(`failed`)]),occurred_at:Y,summary:J.String(),payload:J.Optional(J.Object({progress:J.Optional(J.Object({message:J.String(),phase:J.Optional(J.String())},{additionalProperties:!1})),artifact:J.Optional(J.Object({artifact_kind:J.Union([J.Literal(`scratchpad_snapshot`),J.Literal(`task_compile_proposal`),J.Literal(`context_sync_findings`),J.Literal(`recovery_summary`),J.Literal(`run_changed_paths`)]),summary:J.String()},{additionalProperties:!1})),terminal:J.Optional(J.Object({result_kind:J.Union([J.Literal(`needs_human`),J.Literal(`finished`),J.Literal(`failed`)]),summary:J.String()},{additionalProperties:!1}))},{additionalProperties:!1}))},{additionalProperties:!1});J.Object({server_time:Y,current_event_cursor:X,replay:J.Object({requested_cursor:J.Optional(X),status:J.Union([J.Literal(`not_requested`),J.Literal(`replayed`),J.Literal(`missed`)]),replayed_event_count:J.Integer({minimum:0})},{additionalProperties:!1}),retry_after_ms:J.Integer({minimum:0}),replay_window:AF},{additionalProperties:!1}),J.Object({reason:J.Union([J.Literal(`replay_missed`),J.Literal(`bulk_state_change`),J.Literal(`workspace_recovered`),J.Literal(`viewer_changed`)]),message:J.Optional(J.String())},{additionalProperties:!1}),J.Object({execution_status:sz},{additionalProperties:!1}),J.Object({approval:cR},{additionalProperties:!1}),J.Object({activity:cz,event:lz},{additionalProperties:!1}),J.Object({reason:J.Union([J.Literal(`task_compile_applied`),J.Literal(`task_state_changed`),J.Literal(`task_result_recorded`),J.Literal(`workspace_recovered`)]),workflow_ref:J.Optional(dF),activity_ref:J.Optional(lF),changed_module_ids:J.Optional(J.Array(aF)),changed_task_ids:J.Optional(J.Array(oF))},{additionalProperties:!1}),J.Object({task:wL},{additionalProperties:!1}),J.Object({task_id:oF,task:J.Optional(wL),detail:J.Optional(kL),latest_run_result_id:J.Optional(sF)},{additionalProperties:!1}),J.Object({scratchpad:SL,activity_ref:J.Optional(lF)},{additionalProperties:!1}),J.Object({provider_config:SI},{additionalProperties:!1}),J.Object({recovery_summary_id:cF,summary:J.String(),affected_activities:J.Array(lF),replayed_round_ids:J.Optional(J.Array(pF))},{additionalProperties:!1}),J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:gI,retryable:J.Boolean()},{additionalProperties:!1}),J.Object({kind:J.Literal(`no_source_messages`)},{additionalProperties:!1}),TF]),J.Object({activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF),scratchpad:J.Optional(SL)},{additionalProperties:!1});var uz=J.Object({expected_scratchpad_updated_at:J.Optional(Y)},{additionalProperties:!1}),dz=J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`scratchpad_empty`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`stale_scratchpad`),current_scratchpad:SL},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:gI,retryable:J.Boolean()},{additionalProperties:!1}),TF]),fz=J.Object({activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF)},{additionalProperties:!1});EF(uz),OF(dz,fz);var pz=J.Object({scope:J.Optional(J.Object({kind:J.Literal(`worklist`)},{additionalProperties:!1}))},{additionalProperties:!1}),mz=J.Union([J.Object({kind:J.Literal(`scheduled`),task_id:oF,activity_ref:lF,queued_task_ids:J.Array(oF)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF,activity_kind:J.Union([J.Literal(`run`),J.Literal(`procedure`)])},{additionalProperties:!1}),J.Object({kind:J.Literal(`blocked_by_clarification`),thread_id:fF,round_id:pF},{additionalProperties:!1}),J.Object({kind:J.Literal(`nothing_to_run`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`mainline_not_clean`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:gI,retryable:J.Boolean()},{additionalProperties:!1}),TF]);EF(pz),DF(mz);var hz=J.Object({expected_latest_run_result_id:sF},{additionalProperties:!1}),gz=J.Union([J.Object({kind:J.Literal(`accepted`),task_id:oF,activity_ref:lF,retried_run_result_id:sF},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`task_not_failed`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`latest_run_result_changed`),latest_run_result_id:J.Optional(sF)},{additionalProperties:!1}),J.Object({kind:J.Literal(`retry_already_started`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`retry_requires_resolution`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:gI,retryable:J.Boolean()},{additionalProperties:!1}),TF]);EF(hz),DF(gz);var _z=J.Object({display_name:J.String({minLength:1,maxLength:80})},{additionalProperties:!1}),vz=J.Union([J.Object({kind:J.Literal(`updated`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`unchanged`)},{additionalProperties:!1}),TF]),yz=J.Object({project:J.Object({display_name:J.String({minLength:1,maxLength:80})},{additionalProperties:!1})},{additionalProperties:!1});EF(_z),OF(vz,yz);var bz=J.Object({description:J.String({maxLength:160})},{additionalProperties:!1}),xz=J.Union([J.Object({kind:J.Literal(`updated`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`unchanged`)},{additionalProperties:!1}),TF]),Sz=J.Object({project:J.Object({description:J.String({maxLength:160})},{additionalProperties:!1})},{additionalProperties:!1});EF(bz),OF(xz,Sz);var Cz=J.Object({},{additionalProperties:!1}),wz=J.Union([J.Object({kind:J.Literal(`created`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_initialized`)},{additionalProperties:!1}),TF]),Tz=J.Object({activity_ref:lF,workflow_ref:dF},{additionalProperties:!1}),Ez=J.Object({docs:J.Array(AR),created_paths:J.Array(ER),commit_oid:J.Optional(X)},{additionalProperties:!1});EF(Cz),OF(wz,Ez);var Dz=J.Object({},{additionalProperties:!1}),Oz=J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:gI,retryable:J.Boolean()},{additionalProperties:!1}),TF]),kz=Tz;EF(Dz),OF(Oz,kz);var Az=6,jz=`......`,Mz=80,Nz=160;function Pz(e){let t=document.createElement(`canvas`).getContext(`2d`);if(t===null)return null;let n=window.getComputedStyle(e);return t.font=[n.fontStyle,n.fontVariant,n.fontWeight,n.fontSize,n.fontFamily].join(` `),e=>t.measureText(e).width}function Fz(e,t,n){if(n(e)<=t)return e;let r=e.slice(-Az),i=Math.max(0,e.length-r.length),a=0,o=i;for(;a<o;){let i=Math.ceil((a+o)/2);n(`${e.slice(0,i)}${jz}${r}`)<=t?a=i:o=i-1}return`${e.slice(0,a)}${jz}${r}`}function Iz({value:e}){let t=(0,I.useRef)(null),[n,r]=(0,I.useState)(e);return(0,I.useEffect)(()=>{let n=t.current;if(n===null)return;let i=()=>{let t=Pz(n),i=n.getBoundingClientRect().width;if(t===null||i<=0){r(e);return}let a=Fz(e,i,t);r(e=>e===a?e:a)};i();let a=typeof ResizeObserver>`u`?null:new ResizeObserver(i);return a?.observe(n),window.addEventListener(`resize`,i),()=>{a?.disconnect(),window.removeEventListener(`resize`,i)}},[e]),(0,L.jsx)(`span`,{ref:t,className:`settings-masked-link`,title:e,"aria-label":e,children:n})}function Lz({value:e,onCopy:t}){return t===void 0?(0,L.jsx)(Iz,{value:e}):(0,L.jsx)(`button`,{className:`settings-value-button settings-link-copy-button`,type:`button`,"aria-label":`Copy invite link`,onClick:t,children:(0,L.jsx)(Iz,{value:e})})}function Rz({avatar:e,displayName:t}){return(0,L.jsxs)(`div`,{className:`settings-identity`,children:[(0,L.jsx)(XC,{avatar:e,label:t}),(0,L.jsx)(`strong`,{children:t})]})}function zz({members:e}){return(0,L.jsx)(`div`,{className:`settings-member-list`,children:e.map(e=>(0,I.createElement)(Rz,{...e,key:e.key}))})}function Bz({settings:e,onCopyJoinUrl:t}){return{label:`Invite link`,value:e.access.inviteLink===void 0?`Not available`:(0,L.jsx)(Lz,{value:e.access.inviteLink,onCopy:t}),...e.access.inviteLink===void 0?{}:{plain:!0}}}function Vz({settings:e,projectNameSaving:t,projectDescriptionSaving:n,providerModelOptions:r,providerModelEditable:i,providerModelDiscovering:a,providerModelSaving:o,onCopyJoinUrl:s,onUpdateProjectDisplayName:c,onUpdateProjectDescription:l,onDiscoverProviderModels:u,onUpdateProviderDefaultModel:d}){return[{id:`settings-project`,title:`Project`,rows:[{label:`Project name`,plain:!0,value:(0,L.jsx)(tx,{value:e.project.displayName,placeholder:`Untitled project`,ariaLabel:`Project name`,maxLength:Mz,saving:t,...c===void 0?{}:{onUpdate:c}})},{label:`Description`,plain:!0,value:(0,L.jsx)(tx,{value:e.project.description,placeholder:`Add a project description`,ariaLabel:`Project description`,maxLength:Nz,allowEmpty:!0,saving:n,...l===void 0?{}:{onUpdate:l}})},{label:`Members`,plain:!0,value:(0,L.jsx)(zz,{members:e.project.members})}]},{id:`settings-access`,title:`Access`,rows:[Bz({settings:e,onCopyJoinUrl:s}),...e.access.inviteExpires===void 0?[]:[{label:`Invite expires`,value:e.access.inviteExpires}],{label:`Signed in as`,plain:!0,value:(0,L.jsx)(Rz,{...e.access.signedInAs},`signed-in-account`)},{label:`Role`,value:e.access.role},{label:`Joined`,value:e.access.joined}]},{id:`settings-provider`,title:`AI provider`,rows:[{label:`Status`,value:e.provider.status},...e.provider.model===void 0?[]:[{label:`Model`,plain:!0,value:(0,L.jsx)(Rx,{value:e.provider.model,options:r,maxLength:256,canEdit:i,discovering:a,saving:o,...u===void 0?{}:{onDiscover:u},...d===void 0?{}:{onUpdate:d}})}],...e.provider.lastValidated===void 0?[]:[{label:`Last validated`,value:e.provider.lastValidated}],...e.provider.issue===void 0?[]:[{label:`Issue`,value:e.provider.issue}]]},{id:`settings-tutti`,title:`Tutti`,rows:[{label:`Version`,value:e.tutti.version}]}]}function Hz({settings:e,statusShortcuts:t,unread:n,artifactSignal:r,loading:i=!1,unavailable:a=!1,projectNameSaving:o=!1,projectDescriptionSaving:s=!1,providerModelOptions:c=[],providerModelEditable:l=!1,providerModelDiscovering:u=!1,providerModelSaving:d=!1,onOpenProjectCenter:f,onOpenChat:p,onOpenWorklist:m,onOpenReferences:h,onOpenArtifacts:g,onOpenSkills:_,onOpenTimeline:v,onActivateStatusShortcut:y,onCopyJoinUrl:b,onUpdateProjectDisplayName:x,onUpdateProjectDescription:S,onDiscoverProviderModels:C,onUpdateProviderDefaultModel:w}){return(0,L.jsx)(hw,{activePage:`settings`,statusShortcuts:t,mobileContext:{title:`Settings`},...n===void 0?{}:{unread:n},...r===void 0?{}:{artifactSignal:r},onOpenProjectCenter:f,onOpenChat:p,onOpenWorklist:m,onOpenReferences:h,onOpenArtifacts:g,onOpenSkills:_,onOpenTimeline:v,onActivateStatusShortcut:y,children:(0,L.jsx)(`section`,{className:`workspace-grid settings-workspace-grid`,"aria-label":`Settings`,children:(0,L.jsx)(`div`,{className:`settings-page-grid`,children:i?(0,L.jsx)(`section`,{className:`settings-sheet`,"aria-label":`Loading settings`,children:(0,L.jsx)(_w,{children:`Loading settings`})}):a?(0,L.jsx)(`section`,{className:`settings-sheet`,"aria-label":`Settings unavailable`,children:(0,L.jsx)(_w,{children:`Workspace unavailable`})}):e===void 0?(0,L.jsx)(`section`,{className:`settings-sheet`,"aria-label":`Settings unavailable`,children:(0,L.jsx)(_w,{children:`Settings unavailable`})}):(0,L.jsx)(Lx,{statuses:[e.connectionStatus],sections:Vz({settings:e,projectNameSaving:o,projectDescriptionSaving:s,providerModelOptions:c,providerModelEditable:l,providerModelDiscovering:u,providerModelSaving:d,onCopyJoinUrl:b,onUpdateProjectDisplayName:x,onUpdateProjectDescription:S,onDiscoverProviderModels:C,onUpdateProviderDefaultModel:w})})})})})}var Uz=[{title:`Awesome GitHub Copilot Skills`,href:`https://awesome-copilot.github.com/skills/`},{title:`Anthropic official skills`,href:`https://github.com/anthropics/skills`},{title:`Claude Skills Marketplace`,href:`https://claudeskills.info/skills/`}];function Wz({statusShortcuts:e,unread:t,artifactSignal:n,skills:r,detail:i,uploadPending:a=!1,deletePending:o=!1,loading:s=!1,unavailable:c=!1,onOpenProjectCenter:l,onOpenChat:u,onOpenWorklist:d,onOpenReferences:f,onOpenArtifacts:p,onOpenTimeline:m,onOpenSettings:h,onActivateStatusShortcut:g,onSelectSkill:_,onUploadSkill:v,onDeleteSkill:y}){let b=s||c;return(0,L.jsx)(hw,{activePage:`skills`,statusShortcuts:e,mobileContext:{title:`Skills`,action:(0,L.jsx)(rx,{variant:`bare`,className:`sidebar-button reference-upload-button`,label:`Upload skill`,pendingLabel:`Uploading skill`,pending:a,accept:`.zip,application/zip,application/x-zip-compressed`,iconOnly:!0,onFileUpload:v})},...t===void 0?{}:{unread:t},...n===void 0?{}:{artifactSignal:n},onOpenProjectCenter:l,onOpenChat:u,onOpenWorklist:d,onOpenReferences:f,onOpenArtifacts:p,onOpenTimeline:m,onOpenSettings:h,onActivateStatusShortcut:g,children:(0,L.jsx)(`section`,{className:`workspace-grid references-workspace-grid`,"aria-label":`Skills`,children:(0,L.jsx)($x,{skills:b?[]:r,communityLinks:b?[]:Uz,...s?{detail:{title:`Loading`,unavailableReason:`Loading`}}:c?{detail:{title:`Skills unavailable`,unavailableReason:`Workspace unavailable`}}:i===void 0?{}:{detail:i},uploadPending:a,deletePending:o,empty:s?(0,L.jsx)(_w,{children:`Loading skills`}):c?(0,L.jsx)(_w,{children:`Workspace unavailable`}):(0,L.jsx)(_w,{children:`No skills`}),onSelectSkill:_,onUploadSkill:v,onDeleteSkill:y})})})}function Gz({timeline:e,statusShortcuts:t,unread:n,artifactSignal:r,loading:i=!1,unavailable:a=!1,onOpenProjectCenter:o,onOpenChat:s,onOpenWorklist:c,onOpenReferences:l,onOpenArtifacts:u,onOpenSkills:d,onOpenSettings:f,onActivateStatusShortcut:p}){return(0,L.jsx)(hw,{activePage:`timeline`,statusShortcuts:t,mobileContext:{title:`Timeline`},...n===void 0?{}:{unread:n},...r===void 0?{}:{artifactSignal:r},onOpenProjectCenter:o,onOpenChat:s,onOpenWorklist:c,onOpenReferences:l,onOpenArtifacts:u,onOpenSkills:d,onOpenSettings:f,onActivateStatusShortcut:p,children:(0,L.jsx)(`section`,{className:`workspace-grid timeline-workspace-grid`,"aria-label":`Timeline workspace`,children:i?(0,L.jsx)(`section`,{className:`panel timeline-panel`,"aria-label":`Loading timeline`,children:(0,L.jsx)(_w,{children:`Loading timeline`})}):a?(0,L.jsx)(`section`,{className:`panel timeline-panel`,"aria-label":`Timeline unavailable`,children:(0,L.jsx)(_w,{children:`Workspace unavailable`})}):e===void 0?(0,L.jsx)(`section`,{className:`panel timeline-panel`,"aria-label":`Timeline unavailable`,children:(0,L.jsx)(_w,{children:`Timeline unavailable`})}):(0,L.jsx)(mS,{tokenOverview:e.tokenOverview,items:e.items,scoreUnits:e.scoreUnits,empty:(0,L.jsx)(_w,{children:`No timeline events yet`})})})})}function Kz({statusShortcuts:e,unread:t,artifactSignal:n,modules:r,taskCount:i,detail:a,missingTaskId:o,runNote:s,loading:c=!1,unavailable:l=!1,onOpenProjectCenter:u,onOpenChat:d,onOpenReferences:f,onOpenArtifacts:p,onOpenSkills:m,onOpenTimeline:h,onOpenSettings:g,onActivateStatusShortcut:_,onSelectTask:v}){return(0,L.jsx)(hw,{activePage:`worklist`,statusShortcuts:e,mobileContext:{title:`Worklist`,meta:i===1?`1 task`:`${i} tasks`},...t===void 0?{}:{unread:t},...n===void 0?{}:{artifactSignal:n},onOpenProjectCenter:u,onOpenChat:d,onOpenReferences:f,onOpenArtifacts:p,onOpenSkills:m,onOpenTimeline:h,onOpenSettings:g,onActivateStatusShortcut:_,children:(0,L.jsx)(`section`,{className:`workspace-grid worklist-workspace-grid`,"aria-label":`Worklist workspace`,children:c?(0,L.jsx)(`section`,{className:`panel tasks worklist-page-panel`,"aria-label":`Loading Worklist`,children:(0,L.jsx)(_w,{children:`Loading Worklist`})}):l?(0,L.jsx)(`section`,{className:`panel tasks worklist-page-panel`,"aria-label":`Worklist unavailable`,children:(0,L.jsx)(_w,{children:`Workspace unavailable`})}):(0,L.jsx)(Ix,{modules:r,taskCount:i,...a===void 0?{}:{detail:a},...o===void 0?{}:{missingTaskId:o},...s==null?{}:{runNote:s},onSelectTask:v,empty:(0,L.jsx)(_w,{children:`No compiled tasks`})})})})}var qz={success:3e3,error:9e3,warning:6e3,info:4500},Jz=5,Yz=(0,I.createContext)(null);function Xz(e){return e.persistent===!0||e.tone===`loading`?e.durationMs:e.durationMs??qz[e.tone]}function Zz(e){return e.persistent??e.tone===`loading`}function Qz(e){return e.dismissible??e.tone!==`loading`}function $z(e,t){let n=Xz(t);return{id:e,tone:t.tone,title:t.title,persistent:Zz(t),dismissible:Qz(t),...t.message===void 0?{}:{message:t.message},...n===void 0?{}:{durationMs:n}}}function eB(e,t){let n=t.tone===void 0,r={tone:t.tone??e.tone,title:t.title??e.title,...t.message===void 0?e.message===void 0?{}:{message:e.message}:{message:t.message},...t.durationMs===void 0?!n||e.durationMs===void 0?{}:{durationMs:e.durationMs}:{durationMs:t.durationMs},...t.persistent===void 0?!n||e.persistent===void 0?{}:{persistent:e.persistent}:{persistent:t.persistent},...t.dismissible===void 0?!n||e.dismissible===void 0?{}:{dismissible:e.dismissible}:{dismissible:t.dismissible}};return $z(e.id,r)}function tB(e){return[e.id,e.tone,e.title,e.message??``,e.durationMs??``,e.persistent===!0?`persistent`:`timed`].join(`:`)}function nB({children:e}){let[t,n]=(0,I.useState)([]),r=(0,I.useRef)(new Map),i=(0,I.useCallback)(e=>{n(t=>t.filter(t=>t.id!==e))},[]),a=(0,I.useCallback)(e=>{let t=Ht(),r=$z(t,e);return n(e=>[...e,r].slice(-Jz)),t},[]),o=(0,I.useCallback)((e,t)=>{if(e===void 0){a(t);return}n(n=>n.map(n=>n.id===e?eB(n,t):n))},[a]);(0,I.useEffect)(()=>{let e=new Set(t.map(e=>e.id));for(let[t,n]of r.current)e.has(t)||(window.clearTimeout(n.timeout),r.current.delete(t));for(let e of t){let t=r.current.get(e.id),n=tB(e);if(t!==void 0&&t.key!==n&&(window.clearTimeout(t.timeout),r.current.delete(e.id)),e.persistent===!0||e.durationMs===void 0||r.current.has(e.id))continue;let a=window.setTimeout(()=>i(e.id),e.durationMs);r.current.set(e.id,{key:n,timeout:a})}},[i,t]),(0,I.useEffect)(()=>()=>{for(let e of r.current.values())window.clearTimeout(e.timeout);r.current.clear()},[]);let s=(0,I.useMemo)(()=>({notify:a,update:o,dismiss:i}),[i,a,o]);return(0,L.jsxs)(Yz.Provider,{value:s,children:[e,(0,L.jsx)(po,{notices:t,onDismiss:i})]})}function rB(){let e=(0,I.useContext)(Yz);if(e===null)throw Error(`useNotify must be used inside NotificationProvider`);return e}var iB=`http://127.0.0.1:4370`;function aB(){return typeof window<`u`?window.location.origin:iB}function oB(){let e=`https://tutti.now`;return typeof e==`string`?e:aB()}var sB=oB(),cB={relayBaseUrl:sB},lB=3e4,Z={relayRoot:[`relay`],me:[`relay`,`me`],recentProjects:[`relay`,`projects`,`recent`],projectPresence:e=>[`relay`,`projects`,e,`presence`],relayJoinRoot:[`relay`,`join`],join:e=>[`relay`,`join`,e],bootstrap:e=>[`host`,e,`bootstrap`],hostRoot:e=>[`host`,e],hostSession:e=>[`host`,e,`session`],hostWorkspace:e=>[`host`,e,`workspace`],messages:e=>[`host`,e,`messages`,`main_chat`],messagesWindow:(e,t)=>[...Z.messages(e),{limit:t}],messagesAround:(e,t,n)=>[...Z.messages(e),{around:t,limit:n}],messageHistory:(e,t,n)=>[...Z.messages(e),{history:t,limit:n}],scratchpad:e=>[`host`,e,`scratchpad`],worklist:e=>[`host`,e,`worklist`],readState:e=>[`host`,e,`read-state`],activeClarification:e=>[`host`,e,`clarification`,`active`],activeApproval:e=>[`host`,e,`approval`,`active`],noActiveClarificationRoundMessages:e=>[`host`,e,`clarification-round-messages`,`none`],clarificationRoundMessages:(e,t)=>[`host`,e,`clarification-round-messages`,t],task:(e,t)=>[`host`,e,`task`,t],taskDetail:(e,t)=>[`host`,e,`task-detail`,t],taskRunResults:(e,t)=>[`host`,e,`task-run-results`,t],executionStatus:e=>[`host`,e,`execution-status`],providerConfig:e=>[`host`,e,`provider-config`],providerUsage:e=>[`host`,e,`provider-usage`],projectTimeline:e=>[`host`,e,`project-timeline`],viewerRoot:e=>[`host`,e,`viewer`],viewerFile:(e,t)=>[`host`,e,`viewer`,`file`,t],referenceFiles:e=>[`host`,e,`references`,`files`],artifacts:e=>[`host`,e,`artifacts`],artifactPreviewSession:(e,t)=>[`relay`,e,`artifact-preview-session`,t],skills:e=>[`host`,e,`skills`],skillDetail:(e,t)=>[`host`,e,`skills`,t]};function uB(){return`${window.location.pathname}${window.location.search}${window.location.hash}`}function Q(e,t={}){t.replace===!0?window.history.replaceState(null,``,e):window.history.pushState(null,``,e),window.dispatchEvent(new PopStateEvent(`popstate`))}function dB(e){let t=new URL(e,window.location.origin);Q(`${t.pathname}${t.search}${t.hash}`)}function fB(){let[e,t]=(0,I.useState)(uB);return(0,I.useEffect)(()=>{let e=()=>{t(uB())};return window.addEventListener(`popstate`,e),()=>{window.removeEventListener(`popstate`,e)}},[]),(0,I.useMemo)(()=>{let t=new URL(e,window.location.origin);return Dr(t.pathname,t.search)},[e])}function $(e){return e instanceof Error?e.message:`Request failed`}function pB(e){e.invalidateQueries({queryKey:Z.me}),e.invalidateQueries({queryKey:Z.recentProjects})}function mB(e,t){if(t!==void 0)for(let n of t)switch(n.kind){case`all`:e.invalidateQueries({queryKey:Z.relayRoot});break;case`me`:e.invalidateQueries({queryKey:Z.me});break;case`recent_projects`:e.invalidateQueries({queryKey:Z.recentProjects});break;case`join_entries`:e.invalidateQueries({queryKey:Z.relayJoinRoot});break;case`project_presence`:Rt(n.relay_project_ref,Pt.relayProject)&&e.invalidateQueries({queryKey:Z.projectPresence(n.relay_project_ref)});break}}function hB(e){let t=et(),n=(0,I.useMemo)(()=>dr(cB),[]);(0,I.useEffect)(()=>{if(e)try{let e=n.connectEvents({onReady:e=>{e.payload.replay.status===`missed`&&t.invalidateQueries({queryKey:Z.relayRoot})},onInvalidate:e=>{mB(t,e)}});return()=>{e.close()}}catch{return}},[e,t,n])}function gB(e,t,n){if(n!==void 0)for(let r of n)switch(r.kind){case`all`:e.invalidateQueries({queryKey:Z.hostRoot(t)});break;case`workspace`:e.invalidateQueries({queryKey:Z.hostWorkspace(t)}),e.invalidateQueries({queryKey:Z.projectTimeline(t)});break;case`session`:e.invalidateQueries({queryKey:Z.hostSession(t)});break;case`bootstrap`:e.invalidateQueries({queryKey:Z.bootstrap(t)});break;case`messages`:r.scope===`main_chat`?e.invalidateQueries({queryKey:Z.messages(t)}):e.invalidateQueries({queryKey:Z.clarificationRoundMessages(t,r.round_id)});break;case`scratchpad`:e.invalidateQueries({queryKey:Z.scratchpad(t)});break;case`worklist`:e.invalidateQueries({queryKey:Z.worklist(t)});break;case`read_state`:e.invalidateQueries({queryKey:Z.readState(t)});break;case`task`:e.invalidateQueries({queryKey:Z.task(t,r.task_id)});break;case`task_detail`:e.invalidateQueries({queryKey:Z.taskDetail(t,r.task_id)});break;case`task_run_results`:e.invalidateQueries({queryKey:Z.taskRunResults(t,r.task_id)}),e.invalidateQueries({queryKey:Z.projectTimeline(t)});break;case`execution_status`:e.invalidateQueries({queryKey:Z.executionStatus(t)});break;case`approval`:e.invalidateQueries({queryKey:Z.activeApproval(t)});break;case`provider_config`:e.invalidateQueries({queryKey:Z.providerConfig(t)});break;case`provider_usage`:e.invalidateQueries({queryKey:Z.providerUsage(t)}),e.invalidateQueries({queryKey:Z.projectTimeline(t)});break;case`project_timeline`:e.invalidateQueries({queryKey:Z.projectTimeline(t)});break;case`viewer`:e.invalidateQueries({queryKey:Z.viewerRoot(t)}),e.invalidateQueries({queryKey:Z.projectTimeline(t)}),(r.path===void 0||r.path.startsWith(`docs/reference`))&&e.invalidateQueries({queryKey:Z.referenceFiles(t)}),r.path!==void 0&&e.invalidateQueries({queryKey:Z.viewerFile(t,r.path)});break;case`skills`:e.invalidateQueries({queryKey:Z.skills(t)});break;case`artifacts`:e.invalidateQueries({queryKey:Z.artifacts(t)});break;case`recovery_summaries`:e.invalidateQueries({queryKey:Z.projectTimeline(t)});break;case`activity`:break;case`clarification`:e.invalidateQueries({queryKey:Z.activeClarification(t)}),e.invalidateQueries({queryKey:Z.projectTimeline(t)}),r.round_id!==void 0&&e.invalidateQueries({queryKey:Z.clarificationRoundMessages(t,r.round_id)});break}}function _B(){return{items:[],window:{has_older:!1,has_newer:!1,limit:50}}}function vB(){return{modules:[]}}function yB(){return{id:`current`,state:`empty`,topic:``,background_summary:``,current_consensus:[],open_questions:[],task_changes:[],receipts:[]}}function bB(e){return{chat:e?.scopes.chat.has_unread===!0,worklist:e?.scopes.worklist.has_unread===!0,references:e?.scopes.references.has_unread===!0,skills:e?.scopes.skills.has_unread===!0}}function xB({enabled:e,hostClient:t,relayProjectRef:n,readState:r,scope:i}){let a=et(),o=(0,I.useRef)(null),s=gt({mutationFn:e=>t.markRead({scope:i,up_to_event_cursor:e}),onSuccess:e=>{gB(a,n,e.invalidates)},onError:()=>{o.current=null}});(0,I.useEffect)(()=>{if(!e||r===void 0)return;let t=r.scopes[i];if(!t.has_unread){t.read_event_cursor>=t.latest_event_cursor&&(o.current=null);return}let n=`${i}:${t.latest_event_cursor}`;o.current===n||s.isPending||(o.current=n,s.mutate(t.latest_event_cursor))},[e,s,r,i])}function SB(){return{state:`none`}}function CB(e){return{status:`idle`,summary:`Idle`,updated_at:e}}function wB(e){return e.active_activities??(e.active_activity===void 0?[]:[e.active_activity])}function TB(e,t,n){return wB(e).some(e=>e.workflow_kind===t?n===void 0||(e.lane??`foreground`)===n:!1)}function EB(e,t){let n=`/projects/${encodeURIComponent(zt(e))}/references`;return t===void 0?n:`${n}?path=${encodeURIComponent(t)}`}function DB(e){return`/projects/${encodeURIComponent(zt(e))}/artifacts`}function OB(e,t){let n=`/projects/${encodeURIComponent(zt(e))}/worklist`;return t===void 0?n:`${n}?task=${encodeURIComponent(t)}`}function kB(e,t){return`${en(e)}?message=${encodeURIComponent(t)}`}function AB(e){return`/projects/${encodeURIComponent(zt(e))}/settings`}function jB(e){return`/projects/${encodeURIComponent(zt(e))}/timeline`}function MB(e,t){let n=`/projects/${encodeURIComponent(zt(e))}/skills`;return t===void 0?n:`${n}?skill=${encodeURIComponent(t)}`}function NB(e,t){switch(t.target.kind){case`approval`:case`clarification`:case`scratchpad`:return en(e);case`worklist`:return OB(e);case`references`:return EB(e);case`task`:return OB(e,t.target.taskId)}}function PB(e,t){Q(NB(e,t))}function FB(e,t){let n=Ti(e);if(t!==void 0&&n.some(e=>e.id===t))return t;for(let e of[`running`,`pending`,`failed`,`todo`,`done`]){let t=n.find(t=>t.status===e);if(t!==void 0)return t.id}}function IB(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}function LB(e){switch(e){case`binary`:return`Binary file`;case`too_large`:return`File too large`;case`unsupported_encoding`:return`Unsupported encoding`;case`restricted_path`:case`secret_like`:return`Restricted file`;default:return`Preview unavailable`}}function RB(e){if(!(e===void 0||e.kind===`text`))return LB(e.reason)}function zB(e){return Array.from(new Uint8Array(e)).map(e=>e.toString(16).padStart(2,`0`)).join(``)}async function BB(e){if(globalThis.crypto?.subtle===void 0)throw Error(`This browser does not support file upload hashing.`);return`sha256:${zB(await globalThis.crypto.subtle.digest(`SHA-256`,await e.arrayBuffer()))}`}async function VB(e){if(e.file.size<=0)throw Error(`Upload file cannot be empty.`);let t=GI(e.purpose);if(e.file.size>t)throw Error(`Upload file cannot exceed ${IB(t)}.`);let n=await BB(e.file),r=e.file.type===``?void 0:e.file.type,i=dr(cB),a=e.purpose===`skill_zip`?{relay_project_ref:e.relayProjectRef,purpose:`skill_zip`,file_name:e.file.name,size_bytes:e.file.size,sha256:n,...r===void 0?{}:{media_type:r}}:{relay_project_ref:e.relayProjectRef,purpose:`reference_file`,file_name:e.file.name,size_bytes:e.file.size,sha256:n,...r===void 0?{}:{media_type:r}},o=await i.startUpload(a);if(o.result===void 0)throw Error(`Upload session could not be started.`);let s=new Headers(o.result.put.headers??{});r!==void 0&&!s.has(`content-type`)&&s.set(`content-type`,r);let c;try{c=await fetch(o.result.put.url,{method:o.result.put.method,headers:s,body:e.file})}catch{throw Error(`File upload failed while sending the file to upload storage. Check that R2 CORS allows PUT from this Web origin.`)}if(!c.ok)throw Error(`File upload failed while sending the file to upload storage (${c.status}).`);return{upload_id:o.result.upload.upload_id,file_name:o.result.upload.file_name,size_bytes:o.result.upload.size_bytes,sha256:o.result.upload.sha256,...o.result.upload.media_type===void 0?{}:{media_type:o.result.upload.media_type}}}function HB(e){let t=et(),n=rB(),[r,i]=(0,I.useState)(`identity`),[a,o]=(0,I.useState)(null),[s,c]=(0,I.useState)({email:``,displayName:``,code:``}),l=gt({mutationFn:async()=>{let e=s.email.trim(),t=await gr(cB,{email:e});if(t.result===void 0)throw Error(`Login challenge was not returned`);return{challenge:t.result.challenge,disposition:t.disposition,email:e}},onSuccess:({challenge:e,disposition:t,email:r})=>{o(e),c(e=>({...e,code:``})),i(`code`),n.notify({tone:`success`,title:t.kind===`otp_already_pending`?`Verification email already sent`:`Verification email sent`,message:t.kind===`otp_already_pending`?`Verification email already sent to ${r}.`:`Verification email sent to ${r}.`})}}),u=gt({mutationFn:async()=>{if(a===null)throw Error(`Login challenge is missing`);let e=await _r(cB,{challenge_ref:a.challenge_ref,code:s.code.trim()});if(e.result===void 0)throw Error(`Login response was not returned`);return e.result},onSuccess:n=>{if(!n.account.profile_complete){t.invalidateQueries({queryKey:Z.me}),c(e=>({...e,displayName:``})),i(`profile`);return}pB(t),e?.()}}),d=gt({mutationFn:async()=>{let e=await vr(cB,{display_name:s.displayName.trim()});if(e.result===void 0)throw Error(`Profile response was not returned`);return e.result.account},onSuccess:()=>{pB(t),e?.()}}),f=e=>{if(e.preventDefault(),r===`identity`&&s.email.trim()!==``){l.mutate();return}if(r===`code`&&a!==null&&s.code.trim()!==``){u.mutate();return}r===`profile`&&s.displayName.trim()!==``&&d.mutate()},p=l.isPending||u.isPending||d.isPending,m=r===`identity`?l.error:r===`code`?u.error??l.error:d.error;return{phase:r,form:s,pending:p,submitDisabled:r===`identity`?s.email.trim()===``:r===`code`?a===null||s.code.replace(/\s+/gu,``).length!==6:s.displayName.trim()===``,challengeEmailHint:a?.email_hint??null,error:m===null?null:$(m),onChange:e=>{c(t=>({...t,...e,...e.code===void 0?{}:{code:e.code.replace(/\D/gu,``).slice(0,6)}}))},onSubmit:f,onBack:()=>{l.reset(),u.reset(),d.reset(),o(null),c(e=>({...e,code:``})),i(`identity`)}}}function UB(e){let t=et(),[n,r]=(0,I.useState)({email:``,displayName:``,code:``}),i=gt({mutationFn:async()=>{let e=await vr(cB,{display_name:n.displayName.trim()});if(e.result===void 0)throw Error(`Profile response was not returned`);return e.result.account},onSuccess:()=>{pB(t),e?.()}});return{phase:`profile`,form:n,pending:i.isPending,submitDisabled:n.displayName.trim()===``,challengeEmailHint:null,error:i.error===null?null:$(i.error),onChange:e=>{r(t=>({...t,...e,...e.code===void 0?{}:{code:e.code.replace(/\D/gu,``).slice(0,6)}}))},onSubmit:e=>{e.preventDefault(),n.displayName.trim()!==``&&i.mutate()}}}var WB=`tutti.workspace-onboarding.v1`,GB={version:1,start_chat_pending:!1,tour_pending:!1};function KB(){try{return typeof window>`u`?null:window.sessionStorage}catch{return null}}function qB(e){return e.storage===void 0?KB():e.storage}function JB(e,t){return`${WB}:${e}:${t}`}function YB(e){if(typeof e!=`object`||!e)return null;let t=e;return t.version===1&&typeof t.start_chat_pending==`boolean`&&typeof t.tour_pending==`boolean`?{version:1,start_chat_pending:t.start_chat_pending,tour_pending:t.tour_pending}:null}function XB(e,t,n){if(e!==null)try{if(!n.start_chat_pending&&!n.tour_pending){e.removeItem(t);return}e.setItem(t,JSON.stringify(n))}catch{}}function ZB(e,t,n={}){let r=qB(n);if(r===null)return{...GB};try{let n=r.getItem(JB(e,t));return n===null?{...GB}:YB(JSON.parse(n))??{...GB}}catch{return{...GB}}}function QB(e,t,n={}){XB(qB(n),JB(e,t),{version:1,start_chat_pending:!0,tour_pending:!0})}function $B(e,t,n,r){let i=qB(r),a=ZB(e,t,{storage:i});a[n]&&XB(i,JB(e,t),{...a,[n]:!1})}function eV(e,t,n={}){$B(e,t,`start_chat_pending`,n)}function tV(e,t,n={}){$B(e,t,`tour_pending`,n)}function nV({joinToken:e}){let t=et(),n=R({queryKey:Z.join(e),queryFn:()=>br(cB,e)}),r=HB(()=>{n.refetch()}),i=UB(()=>{n.refetch()}),a=gt({mutationFn:()=>xr(cB,e),onSuccess:n=>{pB(t),t.invalidateQueries({queryKey:Z.join(e)}),n.disposition.kind===`joined`&&n.result!==void 0&&QB(n.result.account.account_ref,n.result.relay_project.relay_project_ref),n.result?.relay_project.host_status===`online`&&Q(en(n.result.relay_project.relay_project_ref))}}),o=gt({mutationFn:e=>Cr(cB,e),onSuccess:e=>{pB(t),e.disposition.kind===`opened`&&e.result?.open_url!==void 0&&dB(e.result.open_url)}}),s=n.data;hB(s?.account!==void 0);let c=s?.relay_project?.display_name??`Project`,l=s?.relay_project?.host_status??`unknown`,u=s?.account?.profile_complete===!1,d=u?`login_required`:n.isLoading?`loading`:n.error===null?s?.next.kind??`invalid_or_expired`:`error`;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:{kind:`join`,joinToken:e},projectDisplayName:s?.relay_project?.display_name??null}),(0,L.jsx)(KC,{projectName:c,description:d===`invalid_or_expired`?`This invite can no longer be used.`:`You have been invited to join ${c}.`,hostLabel:zr(l),hostOnline:l===`online`,nextKind:d,accountLabel:s?.account?.display_name??null,membershipLabel:s?.membership?.label??null,actionPending:a.isPending||o.isPending,error:n.error===null?a.error===null?o.error===null?null:$(o.error):$(a.error):$(n.error),onBrandClick:()=>Q(`/`),onRetry:()=>void n.refetch(),onAccept:()=>a.mutate(),onOpen:()=>{s?.next.kind===`open_workspace`&&o.mutate(s.next.relay_project_ref)},...d===`login_required`?{loginForm:u?i:r}:{}})]})}function rV(e){let t=e.summary;return t===void 0||t.status===`missing`?{summaryStatus:`Summary not available yet`}:t.status===`stale`?{...t.text===void 0?{}:{summary:t.text},summaryStatus:`Summary may be out of date`}:t.status===`unavailable`?{...t.text===void 0?{}:{summary:t.text},summaryStatus:`Summary could not be generated`}:t.text===void 0?{summaryStatus:`Summary unavailable`}:{summary:t.text}}function iV(e){if(e.category===`image`)return[e.media_type??`Image`,IB(e.size_bytes)].join(` · `);let t=[IB(e.size_bytes)];return e.text_read.can_read||t.push(LB(e.text_read.blocked_reason)),t.join(` · `)}function aV(e){if(!e.path.startsWith(`docs/reference/`))return;let[t,n]=e.path.slice(15).split(`/`);if(!(t===void 0||t.length===0||n===void 0||t===`files`||t===`images`))return t}function oV(e,t=aV(e)){if(t===void 0){let t=e.category===`image`?`docs/reference/images/`:`docs/reference/files/`;return e.path.startsWith(t)?e.path.slice(t.length):e.name}return e.path.slice(`docs/reference/${t}/`.length)}function sV(e,t){let n=aV(e);return{path:e.path,name:oV(e,n),meta:iV(e),...n===void 0?{}:{folderGroup:n},selected:t.selected,canPreview:e.text_read.can_read,category:e.category,...t.thumbnailUrl===void 0?{}:{thumbnailUrl:t.thumbnailUrl},...e.extension===void 0?{}:{extension:e.extension}}}var cV=`https://lf1-cdn-tos.bytegoofy.com/goofy/lark/op/h5-js-sdk-1.5.48.js`,lV=15e3,uV=[sI],dV=class extends Error{constructor(e,t,n,r){super(e.replaceAll(`_`,` `)),this.code=e,this.stage=t,this.errno=n,this.platformDetail=r,this.name=`FeishuH5AuthorizationError`}};function fV(e){let t=[];typeof e.errCode==`number`&&Number.isSafeInteger(e.errCode)&&t.push(`errCode ${e.errCode}`);for(let n of[e.errString,e.errMsg]){if(typeof n!=`string`)continue;let e=Array.from(n,e=>{let t=e.charCodeAt(0);return t<=31||t===127?` `:e}).join(``).replace(/\s+/gu,` `).trim();e!==``&&!t.includes(e)&&t.push(e)}if(t.length===0)return;let n=t.join(` · `);return n.length<=180?n:`${n.slice(0,177)}...`}function pV(e){return typeof e.errno==`number`&&Number.isSafeInteger(e.errno)?e.errno:void 0}function mV(e,t){return new Promise((n,r)=>{let i=!1,a=!1,o=!1,s=e=>{i||(i=!0,clearTimeout(c),`error`in e?r(e.error):n(e.code))},c=setTimeout(()=>s({error:new dV(`client_unavailable`)}),t.timeoutMs??lV),l=()=>{if(!(a||i)){if(a=!0,e.allowLegacyFallback===!1){s({error:new dV(`request_failed`,`request_access`)});return}if(t.client.requestAuthCode===void 0){s({error:new dV(o?`request_failed`:`client_unavailable`,o?`request_access`:`request_auth_code`)});return}t.client.requestAuthCode({appId:e.appId,success:e=>{typeof e.code!=`string`||e.code.trim()===``?s({error:new dV(`request_failed`,`request_auth_code`)}):s({code:e.code})},fail:e=>s({error:new dV(`request_failed`,`request_auth_code`,pV(e),fV(e))})})}},u=()=>{if(!(o||i)){if(o=!0,t.client.requestAccess===void 0){l();return}t.client.requestAccess({appID:e.appId,scopeList:[...e.scopes??uV],state:e.state,success:t=>{if(typeof t.code!=`string`||t.code.trim()===``){s({error:new dV(`request_failed`,`request_access`)});return}if(t.state!==void 0&&t.state!==e.state){s({error:new dV(`state_mismatch`,`request_access`)});return}s({code:t.code})},fail:e=>{let t=pV(e);if(t===103){l();return}s({error:new dV(`request_failed`,`request_access`,t,fV(e))})}})}};t.sdk===void 0?u():(t.sdk.error(e=>{s({error:new dV(`request_failed`,`sdk`,pV(e))})}),t.sdk.ready(u))})}var hV=null;function gV(e){return e.tt===void 0?null:{client:e.tt,...e.h5sdk===void 0?{}:{sdk:e.h5sdk}}}function _V(e=window,t=document){let n=gV(e);if(n!==null)return Promise.resolve(n);if(hV!==null)return hV;let r=new Promise((n,r)=>{let i=t.createElement(`script`),a=setTimeout(()=>{i.remove(),r(new dV(`client_unavailable`))},lV);i.async=!0,i.crossOrigin=`anonymous`,i.src=cV,i.onload=()=>{clearTimeout(a);let t=gV(e);t===null?r(new dV(`client_unavailable`)):n(t)},i.onerror=()=>{clearTimeout(a),r(new dV(`client_unavailable`))},t.head.append(i)}).catch(e=>{throw hV=null,e});return hV=r,r}async function vV(e){return await mV(e,await _V())}var yV=class extends Error{constructor(e){super(`Enter a Feishu Docx, Wiki or cloud file link, or the actual 27-character Docx document ID.`),this.code=e,this.name=`FeishuDocumentInputError`}};function bV(e){let t=fL(e);if(!t)throw new yV(`document_link_invalid`);return`https://feishu.cn/${t.kind}/${t.token}`}var xV=`reference-entry-drive-1`,SV=class extends Error{constructor(e,t,n){super(e.replaceAll(`_`,` `)),this.stage=e,this.cause=t,this.diagnostics=n,this.name=`FeishuProjectOpenError`}};function CV(){if(typeof globalThis.crypto?.randomUUID==`function`)return globalThis.crypto.randomUUID().replaceAll(`-`,``);if(typeof globalThis.crypto?.getRandomValues==`function`){let e=new Uint8Array(16);return globalThis.crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``)}return`${Date.now().toString(36)}${Math.random().toString(36).slice(2)}`.padEnd(16,`0`)}function wV(){let e={diagnosticId:`fdiag_${CV()}`,webRelease:xV};if(!On(e.diagnosticId)||!kn(e.webRelease))throw Error(`Feishu diagnostics could not be initialized`);return e}function TV(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function EV(e){return typeof e==`string`&&/^[a-z][a-z0-9_]{0,95}$/u.test(e)?e:void 0}function DV(e){let t=e,n=new Set;for(;t instanceof SV&&!n.has(t);)n.add(t),t=t.cause;return t}function OV(e){if(e instanceof SV){if(e.cause instanceof dV){if(e.stage===`document_authorization_request_access`)return e.stage;if(e.cause.stage===`sdk`)return`h5_sdk`;if(e.cause.stage===`request_auth_code`)return`h5_request_auth_code`;if(e.cause.stage===`request_access`)return`h5_request_access`}return e.stage}return e instanceof dV?e.stage===`sdk`?`h5_sdk`:e.stage===`request_auth_code`?`h5_request_auth_code`:`h5_request_access`:`browser_runtime`}function kV(e,t){return e instanceof SV&&e.diagnostics!==void 0?e.diagnostics:t}function AV(e){return TV(e.details)?EV(e.details.reason_code)??e.code:e.code}function jV(e){if(e instanceof yV)return e.message;if(e instanceof SV){if(e.stage===`external_reference_register`||e.stage===`external_reference_list`){if(e.cause instanceof yV)return e.cause.message;let t=e.cause instanceof Gt?AV(e.cause):void 0;return t?.startsWith(`reference_submission_`)?`This Reference request is no longer available. Reload References; submit the link again if the request expired.`:t===`reference_source_limit_reached`?`The project has reached its Reference source limit. Existing sources are unchanged.`:t===`reference_owner_required`?`Only the project Owner can add References.`:t===`reference_link_invalid`?`Use a standard Feishu Docx, Wiki or cloud file link.`:t===`feishu_user_drive_scope_missing`?`Authorize cloud file downloads and try again.`:t===`feishu_user_authorization_required`?`The Owner needs to authorize access, then retry this request.`:t===`document_wiki_type_unsupported`?`This Wiki node is not a Docx document. Use a direct cloud file link for ordinary files.`:`The Reference request could not be completed. Reload the list and try again; existing sources are unchanged.`}if(e.stage===`reference_summary_refresh`)return`The summary retry could not be requested. Your document connection and local snapshot are unchanged. Try again.`;if([`document_list`,`document_connect`,`document_refresh`].includes(e.stage)){let t=e.cause instanceof Gt?AV(e.cause):void 0;return t===`document_link_invalid`?`Use a Feishu Docx or Wiki link, or the actual Docx document ID.`:t===`document_wiki_authorization_required`?`Authorize Wiki node access and Feishu Docs, then try connecting again.`:t===`document_wiki_type_unsupported`?`This Wiki node is not a Docx document. Sheets and other resource types are not supported yet.`:t===`document_wiki_not_found`?`The Wiki node could not be found. Check the copied link.`:t===`document_wiki_access_denied`?`Your Feishu account cannot read this Wiki node. Check its sharing settings.`:t===`document_wiki_busy`?`Another Wiki connection is being checked. Try again shortly.`:t===`document_owner_required`?`Only the project Owner can connect or refresh documents.`:t===`document_authorization_required`?`Authorize Feishu Docs and try again.`:t===`document_source_limit_reached`?`This project has reached its document connection limit.`:t===`document_source_not_found`?`This document connection is no longer available. Reload the list.`:`The document request could not be completed. Your existing reference snapshots are unchanged. Try again.`}return(e.stage===`document_authorization_bootstrap`||e.stage===`document_authorization_exchange`)&&e.cause instanceof Gt?`Feishu could not authorize document access. Reopen this entry and try again.`:e.stage===`authorization_exchange`&&e.cause instanceof Gt&&(e.cause.statusCode===401||e.cause.statusCode===403||e.cause.statusCode===503)?`Feishu could not verify your identity or project group access. Try again after the app permissions are available.`:e.stage===`host_bootstrap`&&e.cause instanceof Gt&&e.cause.statusCode===503?`The project’s local Tutti runtime is offline or temporarily unavailable.`:e.stage===`browser_session_restore`?`This browser session expired. Reopen the project from Feishu and start the browser fallback again.`:e.stage===`browser_handoff_consume`?`This browser handoff expired or was already used. Reopen the project from Feishu and try again.`:jV(e.cause)}if(e instanceof dV){if(e.code===`client_unavailable`)return`Open this project through the Feishu app entry, not a regular browser link.`;if(e.code===`state_mismatch`)return`This Feishu authorization request expired. Try again.`;let t=[e.stage,e.errno===void 0?void 0:`errno ${e.errno}`,e.platformDetail].filter(e=>e!==void 0).join(`, `);return`Feishu could not authorize this app${t===``?``:` (${t})`}. Reopen it from Feishu and try again.`}return e instanceof Gt&&e.statusCode===403?`Your Feishu account must belong to the project group.`:e instanceof Gt&&e.statusCode===503?`The project’s local Tutti runtime is offline or temporarily unavailable.`:e instanceof Gt&&e.statusCode===404?`This project is no longer connected to the current Feishu group.`:`Check your Feishu connection and try again.`}function MV(e,t){let n=DV(e),r={...kV(e,t),message:jV(e),stage:OV(e)};if(n instanceof yV)return{...r,errorKind:`input_validation_error`,reasonCode:n.code};if(n instanceof Gt){let e=TV(n.details)?n.details:void 0,t=EV(e?.authorization_stage),i=e?.platform_code;return{...r,errorKind:n.code,...n.statusCode<=0?{}:{httpStatus:n.statusCode},reasonCode:AV(n),...t===void 0?{}:{platformStage:t},...typeof i==`number`&&Number.isSafeInteger(i)?{platformCode:i}:{}}}return n instanceof dV?{...r,errorKind:n.code,reasonCode:n.code,...n.errno===void 0?{}:{platformCode:n.errno}}:n instanceof TypeError?{...r,errorKind:`unexpected_type_error`,reasonCode:`unexpected_type_error`}:{...r,errorKind:`unexpected_error`,reasonCode:`unexpected_error`}}async function NV(e,t,n=`docx`){let r;try{r=await ir(cB,e,{diagnostics:t,profile:n})}catch(e){throw new SV(`document_authorization_bootstrap`,e,t)}let i;try{i=await vV({appId:r.app_id,state:r.state,scopes:r.authorization_scopes,allowLegacyFallback:!1})}catch(e){throw new SV(`document_authorization_request_access`,e,t)}try{await ar(cB,{relayProjectRef:e,state:r.state,authorizationCode:i},{diagnostics:t})}catch(e){throw new SV(`document_authorization_exchange`,e,t)}}function PV(e){if(e instanceof Gt&&e.details&&typeof e.details==`object`&&`reason_code`in e.details){let t=e.details.reason_code;if(typeof t==`string`&&/^[a-z][a-z0-9_]{0,95}$/u.test(t))return t}return`reference_request_failed`}function FV(e){let t=MV(e,e.diagnostics??wV());return`${t.message} Diagnostic ID: ${t.diagnosticId} · ${t.webRelease} · ${t.stage} · ${t.reasonCode??t.errorKind}${t.stage===`document_input_validation`?` · Local validation (not sent)`:t.httpStatus===void 0?``:` · HTTP ${t.httpStatus}`}`}function IV(e,t){let n=(0,I.useMemo)(()=>Kn(cB,e),[e]),[r,i]=(0,I.useState)(``),[a,o]=(0,I.useState)(!1),[s,c]=(0,I.useState)(!1),[l,u]=(0,I.useState)(),[d,f]=(0,I.useState)(),p=(0,I.useRef)(!1),m=(0,I.useRef)(!1);(0,I.useEffect)(()=>(m.current=!0,()=>{m.current=!1}),[]);let h=R({queryKey:[`feishu-project`,e,`external-references`],queryFn:async({signal:e})=>{let t=wV();try{return await n.list({signal:e,diagnostics:t})}catch(e){throw new SV(`external_reference_list`,e,t)}},enabled:t,retry:!1,refetchInterval:e=>e.state.error===null?3e4:!1,refetchIntervalInBackground:!1}),g=async t=>{if(p.current||!h.data?.can_register)return;p.current=!0,o(!0);let a=t.kind===`authorize`;c(t.kind===`register`),u(void 0),f(void 0);let s=wV();try{if(a)await NV(e,s,t.profile);else{let i,a;if(t.kind===`confirm`)i=t.submission.kind,a=()=>n.confirm(t.submission.submission_ref,{diagnostics:s});else{let e=bV(r),t=fL(e);if(!t)throw new yV(`document_link_invalid`);i=t.kind,a=()=>n.register(e,{diagnostics:s})}try{await a()}catch(t){if(![`document_wiki_authorization_required`,`feishu_user_drive_scope_missing`,`feishu_user_authorization_required`,`feishu_user_token_scope_missing`].includes(PV(t)))throw t;if(await NV(e,s,i===`file`?`drive_file`:i===`wiki`?`wiki_docx`:`docx`),!m.current)return;await a()}}if(!m.current)return;f(a?`Document access authorized. Retry the task or question that needed access.`:`Reference added. Tell Tutti in the group when it is needed.`),t.kind===`register`&&i(``),await h.refetch()}catch(e){let t=e instanceof SV?e:new SV(e instanceof yV?`document_input_validation`:`external_reference_register`,e,s);m.current&&u(FV(t))}finally{p.current=!1,m.current&&(o(!1),c(!1))}};return{canManage:h.data?.can_register??!1,loading:h.isLoading,pending:a,connecting:s,draft:r,...l===void 0&&!h.isError?{}:{error:l??FV(h.error)},...d===void 0?{}:{feedback:d},items:(h.data?.items??[]).map(e=>({id:e.source_ref,name:e.name,status:`Read on demand`})),submissions:(h.data?.pending??[]).map(e=>({id:e.submission_ref,name:`${e.kind===`file`?`Cloud file`:e.kind===`wiki`?`Wiki document`:`Docx document`} · ${e.submission_ref.slice(-8)}`,detail:`Submitted ${new Date(e.created_at).toLocaleString(`en-US`)}. Confirm to share with this project.`,onConfirm:()=>void g({kind:`confirm`,submission:e})})),onDraftChange:i,onConnect:()=>void g({kind:`register`}),onAuthorize:()=>void g({kind:`authorize`,profile:`docx`}),...h.data?.items.some(e=>e.kind===`feishu_drive_file`)||h.data?.pending?.some(e=>e.kind===`file`)?{onAuthorizeFiles:()=>void g({kind:`authorize`,profile:`drive_file`})}:{},onReload:()=>{u(void 0),h.refetch()}}}var LV=3e4;function RV(e){if(!(e===void 0||e.disposition.kind===`issued`))return e.disposition.kind===`invalid_manifest`?e.disposition.message:e.disposition.kind===`preview_not_ready`?e.disposition.message??`Preview is not ready`:e.disposition.kind===`not_declared`?`Artifact is no longer declared`:`Preview session expired before it could be opened`}function zV(e){return e===void 0?!1:e.disposition.kind!==`issued`||e.result===void 0?e.disposition.kind===`preview_not_ready`||e.disposition.kind===`interrupted`?1e3:!1:Math.max(1e3,Date.parse(e.result.expires_at)-Date.now()-LV)}function BV(e){return e?.disposition.kind===`issued`?e.result?.bootstrap_url:void 0}var VV=`tutti_feishu_handoff`,HV=/^[A-Za-z0-9_-]{43}$/u;function UV(e){let t=`#${VV}=`,n=e.hash.startsWith(t)?e.hash.slice(t.length):void 0,r=n!==void 0&&HV.test(n)?n:void 0;return{systemBrowser:new URLSearchParams(e.search).get(`lk_jump_to_browser`)===`true`||r!==void 0,...r===void 0?{}:{handoffToken:r},shouldClearFragment:n!==void 0}}function WV(e,t){t.replaceState(t.state,``,`${e.pathname}${e.search}`)}function GV(e){if(!HV.test(e.handoffToken))throw TypeError(`Feishu browser handoff token is invalid`);let t=new URL(tn(e.relayProjectRef),e.origin);return t.searchParams.set(`lk_jump_to_browser`,`true`),t.searchParams.set(`view`,`artifacts`),t.hash=`${VV}=${e.handoffToken}`,t.toString()}function KV(e,t=(e,t)=>window.open(e,t)){if(new URL(e).searchParams.get(`lk_jump_to_browser`)!==`true`)throw TypeError(`Feishu system-browser URL is missing the browser jump parameter`);let n=t(e,`_blank`);return n===null?!1:(n.opener=null,!0)}var qV={root:e=>[`feishu-project`,e],bootstrap:e=>[`feishu-project`,e,`bootstrap`],scratchpad:e=>[`feishu-project`,e,`scratchpad`],worklist:e=>[`feishu-project`,e,`worklist`],executionStatus:e=>[`feishu-project`,e,`execution-status`],artifacts:e=>[`feishu-project`,e,`artifacts`],artifactPreviewSession:(e,t)=>[`feishu-project`,e,`artifact-preview-session`,t],activeClarification:e=>[`feishu-project`,e,`active-clarification`],clarificationMessages:(e,t)=>[`feishu-project`,e,`clarification-messages`,t],activeApproval:e=>[`feishu-project`,e,`active-approval`],referenceFiles:e=>[`feishu-project`,e,`reference-files`],viewerFiles:e=>[`feishu-project`,e,`viewer-file`],viewerFile:(e,t)=>[`feishu-project`,e,`viewer-file`,t],taskDetail:(e,t)=>[`feishu-project`,e,`task-detail`,t],taskRunResults:(e,t)=>[`feishu-project`,e,`task-run-results`,t]};function JV(e,t){e.invalidateQueries({queryKey:qV.root(t)})}function YV(e,t,n){if(n!==void 0)for(let r of n)switch(r.kind){case`all`:JV(e,t);break;case`bootstrap`:case`workspace`:case`session`:e.invalidateQueries({queryKey:qV.bootstrap(t)});break;case`scratchpad`:e.invalidateQueries({queryKey:qV.scratchpad(t)});break;case`worklist`:e.invalidateQueries({queryKey:qV.worklist(t)});break;case`task`:case`task_detail`:e.invalidateQueries({queryKey:qV.taskDetail(t,r.task_id)});break;case`task_run_results`:e.invalidateQueries({queryKey:qV.taskRunResults(t,r.task_id)});break;case`messages`:r.scope===`clarification_round`&&e.invalidateQueries({queryKey:qV.clarificationMessages(t,r.round_id)});break;case`clarification`:e.invalidateQueries({queryKey:qV.activeClarification(t)}),r.round_id!==void 0&&e.invalidateQueries({queryKey:qV.clarificationMessages(t,r.round_id)});break;case`approval`:e.invalidateQueries({queryKey:qV.activeApproval(t)});break;case`execution_status`:case`activity`:e.invalidateQueries({queryKey:qV.executionStatus(t)});break;case`viewer`:(r.path===void 0||r.path.startsWith(`docs/reference`))&&(e.invalidateQueries({queryKey:qV.referenceFiles(t)}),e.invalidateQueries({queryKey:qV.viewerFiles(t)}));break;case`artifacts`:e.invalidateQueries({queryKey:qV.artifacts(t)});break;case`read_state`:case`provider_config`:case`provider_usage`:case`project_timeline`:case`skills`:case`recovery_summaries`:break}}function XV(e){return e.streamStatus!==`open`&&e.nowMs-e.lastRefreshAtMs>=(e.throttleMs??3e4)}var ZV=2e4;function QV(e,t){return e?.previewGeneration===t?e:{previewGeneration:t,annotations:[]}}function $V(e,t){return e!==null&&e.previewGeneration!==t}var eH=(0,I.createContext)(null);function tH(e){let t=e.intervalMs??ZV,n=e.setIntervalFn??window.setInterval.bind(window),r=e.clearIntervalFn??window.clearInterval.bind(window),i=!0,a=!1,o=!1,s=()=>{!i||a||(a=!0,e.renew().then(()=>{i&&!o&&(o=!0,e.onInitialRenewed?.())}).catch(()=>void 0).finally(()=>{a=!1}))};s();let c=n(s,t);return()=>{i=!1,r(c)}}function nH({relayProjectRef:e,hostClient:t,enabled:n,feedbackEnabled:r,children:i}){let[a,o]=(0,I.useState)(null),[s,c]=(0,I.useState)(null),l=(0,I.useRef)(0),u=R({queryKey:Z.artifacts(e),queryFn:()=>t.getArtifacts(),enabled:n,staleTime:lB}),d=u.data?.artifact,f=d?.status===`declared`;(0,I.useEffect)(()=>{if(!(!n||!f))return tH({renew:()=>t.renewArtifactPreviewLease(),onInitialRenewed:()=>{u.refetch()}})},[u.refetch,f,n,t]);let p=d!==void 0,m=d?.status===`declared`?d.preview_generation:void 0,h=(0,I.useCallback)(e=>{o(t=>QV(t,e))},[]),g=(0,I.useCallback)(e=>{o(t=>{if(t===null||t.annotations.length>=64)return t;let{createdAt:n,...r}=e;return l.current+=1,{...t,annotations:[...t.annotations,{...r,createdAt:n,key:`artifact-feedback-note-${l.current}`}]}})},[]),_=(0,I.useCallback)(e=>{o(t=>t===null?null:{...t,annotations:t.annotations.filter((t,n)=>n!==e)})},[]),v=(0,I.useCallback)(()=>o(null),[]),y=(0,I.useCallback)(e=>c(e),[]),b=(0,I.useCallback)(()=>c(null),[]),x=(0,I.useMemo)(()=>({artifact:d,sidebarSignal:ei(d),loading:!p&&n&&u.isLoading,unavailable:!p&&n&&u.error!==null,feedbackEnabled:r,feedbackDraft:a,feedbackDraftStale:$V(a,m),beginFeedbackDraft:h,addFeedbackAnnotation:g,removeFeedbackAnnotation:_,clearFeedbackDraft:v,pendingActivation:s,requestFeedbackActivation:y,clearFeedbackActivation:b}),[g,d,u.error,u.isLoading,h,b,v,m,n,a,r,p,s,_,y]);return(0,L.jsx)(eH.Provider,{value:x,children:i})}function rH(){let e=(0,I.useContext)(eH);if(e===null)throw Error(`Workspace Artifact runtime is unavailable`);return e}function iH({relayProjectRef:e}){return(0,I.useEffect)(()=>{window.location.replace(tn(e))},[e]),null}async function aH(e,t,n,r=!1){let i;try{await rr(cB,e,{signal:t,diagnostics:n});return}catch(e){if(!Yt(e))throw new SV(`session_current`,e,n);i=e}if(r)throw new SV(`browser_session_restore`,i,n);let a;try{a=await tr(cB,e,{signal:t,diagnostics:n})}catch(e){throw new SV(`authorization_bootstrap`,e,n)}let o;try{o=await vV({appId:a.app_id,state:a.state})}catch(e){throw new SV(`h5_request_access`,e,n)}try{await nr(cB,{relayProjectRef:e,state:a.state,authorizationCode:o},{signal:t,diagnostics:n})}catch(e){throw new SV(`authorization_exchange`,e,n)}}async function oH(e,t,n){try{await sr(cB,{relayProjectRef:e,handoffToken:t},{diagnostics:n})}catch(t){try{await rr(cB,e,{diagnostics:n});return}catch{throw new SV(`browser_handoff_consume`,t,n)}}}async function sH(e,t,n){try{return await n()}catch(n){throw new SV(e,n,t)}}function cH({relayProjectRef:e,diagnostics:t,browserEntry:n}){let r=(0,I.useMemo)(()=>er(cB,e),[e]),[i,a]=(0,I.useState)({kind:`loading`}),o=(0,I.useRef)(null),s=(0,I.useRef)(!1),c=(0,I.useRef)(!1);(0,I.useEffect)(()=>{let r=new AbortController;return a({kind:`loading`}),(n.handoffToken!==void 0&&!s.current?(o.current??=oH(e,n.handoffToken,t),o.current.then(()=>{s.current=!0})):aH(e,r.signal,t,!0)).then(()=>{r.signal.aborted||a({kind:`ready`})}).catch(e=>{r.signal.aborted||a({kind:`error`,...MV(e,t)})}),()=>r.abort()},[n.handoffToken,t,e]);let l=i.kind===`ready`,u=R({queryKey:qV.artifacts(e),queryFn:({signal:e})=>sH(`artifacts`,t,()=>r.getArtifacts({signal:e,diagnostics:t})),enabled:l}),d=u.data?.artifact,f=d?.status===`declared`;(0,I.useEffect)(()=>{if(!(!l||!f))return tH({renew:()=>r.renewArtifactPreviewLease({diagnostics:t}),onInitialRenewed:()=>{u.refetch()}})},[f,u.refetch,r,t,l]);let p=d?.status===`declared`&&d.preview.status===`ready`&&d.preview.url!==void 0?`${d.preview_generation}:${d.preview.url}`:null,m=R({queryKey:qV.artifactPreviewSession(e,p??`not-ready`),queryFn:()=>sH(`artifact_preview_session`,t,()=>r.issueArtifactPreviewSession(void 0,void 0,{diagnostics:t})),enabled:l&&p!==null,staleTime:1/0,retry:1,refetchInterval:e=>zV(e.state.data)}),h=m.data,g=m.error===null?RV(h):`${$(m.error)} Diagnostic ID: ${t.diagnosticId}`,_=BV(h);return(0,I.useEffect)(()=>{_===void 0||c.current||(c.current=!0,window.location.replace(_))},[_]),i.kind===`error`||u.error!==null||m.error!==null||g!==void 0||u.isFetched&&p===null?(0,L.jsx)(`main`,{role:`status`,children:`Artifact preview is unavailable.`}):null}function lH({relayProjectRef:e,diagnostics:t,onDiagnosticsChange:n,initialTab:r,authorizeDocument:i}){let a=(0,I.useMemo)(()=>er(cB,e),[e]),o=et(),s=rB(),[c,l]=(0,I.useState)({kind:`loading`}),[u,d]=(0,I.useState)(r),[f,p]=(0,I.useState)(),[m,h]=(0,I.useState)(),[g,_]=(0,I.useState)(``),[v,y]=(0,I.useState)(!1),[b,x]=(0,I.useState)(),[S,C]=(0,I.useState)(),[w,T]=(0,I.useState)(),[E,ee]=(0,I.useState)(0),D=(0,I.useRef)(null),O=(0,I.useRef)(null),k=(0,I.useRef)(0),A=(0,I.useRef)(t),te=(0,I.useRef)(!1),j=(t,n)=>aH(e,t,n);(0,I.useEffect)(()=>{let e=new AbortController;l({kind:`loading`}),x(void 0);let t=A.current;return j(e.signal,t).then(()=>{e.signal.aborted||l({kind:`ready`})}).catch(n=>{e.signal.aborted||l({kind:`error`,...MV(n,t)})}),()=>e.abort()},[e]),(0,I.useEffect)(()=>()=>{D.current?.abort()},[]);let M=c.kind===`ready`;(0,I.useEffect)(()=>{if(!M||!i||te.current)return;te.current=!0;let t=A.current,n=s.notify({tone:`loading`,title:`Authorizing Feishu Docs`});NV(e,t).then(()=>{let e=new URL(window.location.href);e.searchParams.delete(`authorize`),window.history.replaceState(null,``,`${e.pathname}${e.search}${e.hash}`),s.update(n,{tone:`success`,title:`Feishu Docs authorized`,message:`Document access is ready for the managed Reference test.`})}).catch(e=>{let r=MV(e,t);s.update(n,{tone:`error`,title:`Feishu Docs authorization failed`,message:`${r.message} Diagnostic ID: ${r.diagnosticId}`})})},[i,s,e,M]);let N=R({queryKey:qV.bootstrap(e),queryFn:({signal:e})=>sH(`host_bootstrap`,A.current,()=>a.getBootstrap({signal:e,diagnostics:A.current})),enabled:M}),P=N.data?.workspace.capabilities.sse===!0;(0,I.useEffect)(()=>{!M||!P||N.data===void 0||T(t=>t?.relayProjectRef===e?t:{relayProjectRef:e,cursor:N.data.event_cursor})},[N.data,P,e,M]),(0,I.useEffect)(()=>{if(!M||!P||w?.relayProjectRef!==e)return;let t;try{t=a.connectEvents({after:w.cursor,onReady:t=>{t.payload.replay.status===`missed`&&JV(o,e)},onInvalidate:t=>{YV(o,e,t)}})}catch{O.current=null;return}return O.current=t,()=>{O.current===t&&(O.current=null),t.close()}},[a,w,E,P,o,e,M]),(0,I.useEffect)(()=>{let t=()=>{let t=Date.now(),n=O.current;XV({streamStatus:n?.status(),nowMs:t,lastRefreshAtMs:k.current})&&(k.current=t,JV(o,e),n===null?ee(e=>e+1):n.retryNow())},n=()=>{document.visibilityState!==`hidden`&&t()};return window.addEventListener(`focus`,t),window.addEventListener(`online`,t),document.addEventListener(`visibilitychange`,n),()=>{window.removeEventListener(`focus`,t),window.removeEventListener(`online`,t),document.removeEventListener(`visibilitychange`,n)}},[o,e]);let F=R({queryKey:qV.scratchpad(e),queryFn:({signal:e})=>sH(`scratchpad`,A.current,()=>a.getScratchpad({signal:e,diagnostics:A.current})),enabled:M}),ne=R({queryKey:qV.worklist(e),queryFn:({signal:e})=>sH(`worklist`,A.current,()=>a.getWorklist({signal:e,diagnostics:A.current})),enabled:M}),re=R({queryKey:qV.executionStatus(e),queryFn:({signal:e})=>sH(`execution_status`,A.current,()=>a.getExecutionStatus({signal:e,diagnostics:A.current})),enabled:M}),ie=R({queryKey:qV.artifacts(e),queryFn:({signal:e})=>sH(`artifacts`,A.current,()=>a.getArtifacts({signal:e,diagnostics:A.current})),enabled:M}),ae=R({queryKey:qV.referenceFiles(e),queryFn:({signal:e})=>sH(`references`,A.current,()=>a.getReferenceFiles({signal:e,diagnostics:A.current})),enabled:M}),oe=IV(e,M&&u===`references`),se=R({queryKey:qV.activeClarification(e),queryFn:({signal:e})=>sH(`clarification_active`,A.current,()=>a.getActiveClarification({signal:e,diagnostics:A.current})),enabled:M}),ce=R({queryKey:qV.activeApproval(e),queryFn:({signal:e})=>sH(`approval_active`,A.current,()=>a.getActiveApproval({signal:e,diagnostics:A.current})),enabled:M}),le=se.data??N.data?.snapshots.active_clarification??{state:`none`},ue=le.state===`active`?le.round.id:void 0,de=R({queryKey:qV.clarificationMessages(e,ue??`none`),queryFn:({signal:e})=>sH(`clarification_messages`,A.current,()=>a.getClarificationRoundMessages(ue,{signal:e,diagnostics:A.current})),enabled:M&&ue!==void 0}),fe=ce.data??N.data?.snapshots.active_approval??{state:`none`},pe=ie.data?.artifact,me=pe?.status===`declared`;(0,I.useEffect)(()=>{if(!(!M||!me))return tH({renew:()=>a.renewArtifactPreviewLease({diagnostics:A.current}),onInitialRenewed:()=>{ie.refetch()}})},[me,ie.refetch,a,M]);let he=pe?.status===`declared`&&pe.preview.status===`ready`&&pe.preview.url!==void 0?`${pe.preview_generation}:${pe.preview.url}`:null,ge=R({queryKey:qV.artifactPreviewSession(e,he??`not-ready`),queryFn:()=>sH(`artifact_preview_session`,A.current,()=>a.issueArtifactPreviewSession(void 0,void 0,{diagnostics:A.current})),enabled:M&&u===`artifacts`&&he!==null,staleTime:1/0,retry:1,refetchInterval:e=>zV(e.state.data)}),_e=ge.data,ve=ge.error===null?RV(_e):`${$(ge.error)} Diagnostic ID: ${A.current.diagnosticId}`,ye=BV(_e),be=gt({mutationFn:async()=>{let t=await or(cB,e,{diagnostics:A.current});return GV({origin:window.location.origin,relayProjectRef:e,handoffToken:t.handoff_token})},onSuccess:e=>{KV(e)?C(void 0):(C(e),s.notify({tone:`warning`,title:`Browser handoff ready`,message:`Click Open in browser again to continue in your system browser.`}))},onError:e=>{s.notify({tone:`error`,title:`Browser handoff failed`,message:`${$(e)} Diagnostic ID: ${A.current.diagnosticId}`})}});(0,I.useEffect)(()=>{_(``)},[ue]);let xe=gt({mutationFn:e=>a.submitWorklist(e===void 0?{}:{expected_scratchpad_updated_at:e},void 0,{diagnostics:A.current}),onMutate:()=>s.notify({tone:`loading`,title:`Running Scratchpad`}),onSuccess:(t,n,r)=>{YV(o,e,t.invalidates);let i=t.disposition.kind===`accepted`;s.update(r,{tone:i?`success`:`warning`,title:i?`Scratchpad run started`:`Scratchpad run not started`,message:t.disposition.kind===`already_running`?`Tutti is already processing work.`:i?`Tutti is preparing Worklist tasks.`:`Refresh the project and review its current status.`})},onError:(e,t,n)=>{s.update(n,{tone:`error`,title:`Scratchpad run failed`,message:`${$(e)} Diagnostic ID: ${A.current.diagnosticId}`})}}),Se=gt({mutationFn:({roundId:e,body:t})=>a.sendClarificationRoundMessage(e,{body:t},void 0,{diagnostics:A.current}),onSuccess:t=>{if(YV(o,e,t.invalidates),t.disposition.kind===`created`){_(``);return}s.notify({tone:`warning`,title:`Reply not sent`,message:`The clarification changed. Review the current request and try again.`})},onError:e=>{s.notify({tone:`error`,title:`Reply send failed`,message:`${$(e)} Diagnostic ID: ${A.current.diagnosticId}`})}}),Ce=gt({mutationFn:e=>a.submitClarificationRound(e,{},void 0,{diagnostics:A.current}),onMutate:()=>s.notify({tone:`loading`,title:`Submitting reply`}),onSuccess:(t,n,r)=>{YV(o,e,t.invalidates);let i=t.disposition.kind===`accepted`,a=t.disposition.kind===`already_submitted`;s.update(r,{tone:i?`success`:a?`info`:`warning`,title:i?`Reply submitted`:a?`Reply already submitted`:`Reply not submitted`,...i||a?{}:{message:`The clarification changed. Review the current request.`}})},onError:(e,t,n)=>{s.update(n,{tone:`error`,title:`Reply submit failed`,message:`${$(e)} Diagnostic ID: ${A.current.diagnosticId}`})}}),we=gt({mutationFn:({approvalId:e,decisionId:t})=>a.decideApproval(e,{decision_id:t},void 0,{diagnostics:A.current}),onMutate:()=>s.notify({tone:`loading`,title:`Sending decision`}),onSuccess:(t,n,r)=>{YV(o,e,t.invalidates);let i=t.disposition.kind===`accepted`;s.update(r,{tone:i?`success`:`warning`,title:i?`Decision sent`:`Decision not applied`,...i?{}:{message:`The approval changed. Review its current state.`}})},onError:(e,t,n)=>{s.update(n,{tone:`error`,title:`Decision failed`,message:`${$(e)} Diagnostic ID: ${A.current.diagnosticId}`})}}),Te=ne.data;(0,I.useEffect)(()=>{if(Te===void 0)return;let e=Ti(Te);p(t=>t!==void 0&&e.some(e=>e.id===t)?t:FB(Te,void 0))},[Te]);let Ee=R({queryKey:qV.taskDetail(e,f??`none`),queryFn:({signal:e})=>sH(`task_detail`,A.current,()=>a.getTaskDetail(f,{signal:e,diagnostics:A.current})),enabled:M&&f!==void 0}),De=R({queryKey:qV.taskRunResults(e,f??`none`),queryFn:({signal:e})=>sH(`task_run_results`,A.current,()=>a.getTaskRunResults(f,{limit:5},{signal:e,diagnostics:A.current})),enabled:M&&f!==void 0}),Oe=ae.data?.items??[];(0,I.useEffect)(()=>{if(Oe.length===0){h(void 0);return}h(e=>e!==void 0&&Oe.some(t=>t.path===e)?e:Oe[0]?.path)},[Oe]);let ke=Oe.find(e=>e.path===m),Ae=ke?.category===`image`,je=ke?.text_read.can_read===!0,Me=R({queryKey:qV.viewerFile(e,m??`none`),queryFn:({signal:e})=>sH(`viewer_file`,A.current,()=>a.getViewerFile({path:m},{signal:e,diagnostics:A.current})),enabled:M&&m!==void 0&&je&&!Ae}),Ne=N.data!==void 0&&F.data!==void 0&&ne.data!==void 0&&re.data!==void 0&&se.data!==void 0&&ce.data!==void 0&&(ue===void 0||de.data!==void 0),Pe=()=>{if(v)return;D.current?.abort();let e=new AbortController;D.current=e;let t=wV();A.current=t,n(t),y(!0),x(void 0),(async()=>{try{if(await j(e.signal,t),e.signal.aborted)return;l({kind:`ready`});let n=ie.refetch({throwOnError:!0});await Promise.all([N.refetch({throwOnError:!0}),F.refetch({throwOnError:!0}),ne.refetch({throwOnError:!0}),re.refetch({throwOnError:!0}),n,ae.refetch({throwOnError:!0}),se.refetch({throwOnError:!0}),ce.refetch({throwOnError:!0}),...ue===void 0?[]:[de.refetch({throwOnError:!0})],...f===void 0?[]:[Ee.refetch({throwOnError:!0}),De.refetch({throwOnError:!0})],...m===void 0||!je||Ae?[]:[Me.refetch({throwOnError:!0})]]);let r=(await n).data?.artifact,i=r?.status===`declared`&&r.preview.status===`ready`&&r.preview.url!==void 0?`${r.preview_generation}:${r.preview.url}`:null;u===`artifacts`&&he!==null&&i===he&&await ge.refetch({throwOnError:!0})}catch(n){if(e.signal.aborted)return;let r=MV(n,t);Ne?x(r):l({kind:`error`,...r})}finally{e.signal.aborted||(D.current=null,y(!1))}})()},Fe=e=>{p(e),d(`work`)},Ie=e=>{h(e),d(`references`)},Le=N.data?.workspace.project.display_name??null,Re;if(N.data===void 0||F.data===void 0||ne.data===void 0||re.data===void 0||se.data===void 0||ce.data===void 0||ue!==void 0&&de.data===void 0){let e=N.error??F.error??ne.error??re.error??se.error??ce.error??de.error;Re=c.kind===`error`?c:e===null?{kind:`loading`}:{kind:`error`,...MV(e,t)}}else{let e=N.data,t=F.data,n=ne.data,r=re.data,i=b??(c.kind===`error`?c:void 0),o=wi(n,f),s=Fi(Ee.data,De.data,{includeRetryAction:!1}),l=f===void 0?void 0:Ee.error!==null||De.error!==null?{title:`Task details unavailable`,description:`Refresh this project and try again.`}:s===void 0?{title:`Loading task details`,description:`Reading the latest task contract and Run results.`}:void 0,d=Oe.map(e=>sV(e,{selected:e.path===m,...e.category!==`image`||e.blob_oid===void 0?{}:{thumbnailUrl:a.viewerAssetUrl({path:e.path,variant:`thumbnail`,v:e.blob_oid})}})),p=(()=>{if(ke===void 0)return;let e={title:ke.name,meta:IB(ke.size_bytes),...rV(ke)};if(Ae)return ke.blob_oid===void 0?{...e,unavailableReason:`Image version unavailable`}:{...e,imageUrl:a.viewerAssetUrl({path:ke.path,variant:`preview`,v:ke.blob_oid})};if(!je)return{...e,unavailableReason:LB(ke.text_read.blocked_reason)};if(Me.error!==null){let t=MV(Me.error,A.current);return{...e,unavailableReason:`Preview unavailable. Diagnostic ID: ${t.diagnosticId}`}}if(Me.data?.content.kind===`text`)return{...e,content:Me.data.content.text};let t=RB(Me.data?.content);return{...e,unavailableReason:t??`Loading`}})(),h=ae.data===void 0?ae.error===null?{kind:`loading`}:{kind:`error`,...MV(ae.error,A.current)}:{kind:`ready`,files:d,...p===void 0?{}:{detail:p}},_=r.active_activity?.activity_kind===`run`||r.active_activities?.some(e=>e.activity_kind===`run`)===!0,y=$r(pe,{...ye===void 0?{}:{previewUrl:ye},pending:he!==null&&ye===void 0&&ve===void 0,...ve===void 0?{}:{errorMessage:ve}},{runActive:_}),x=pe===void 0&&ie.error!==null?`${$(ie.error)} Diagnostic ID: ${A.current.diagnosticId}`:void 0;Re={kind:`ready`,projectName:e.workspace.project.display_name,accountName:e.session.account.display_name,membershipLabel:e.session.membership.label,hostVersion:e.workspace.server.version,activeTab:u,refreshing:v,...i===void 0?{}:{refreshMessage:i},projectStatus:Wr(r,le,fe),scratchpad:Ci(t),activeClarification:ci(le),clarificationMessages:(de.data?.items??[]).map(e=>si(e)),roundDraft:g,activeApproval:fi(fe),worklist:{modules:o.modules,taskCount:o.taskCount,...s===void 0?{}:{detail:s},...l===void 0?{}:{detailPlaceholder:l}},references:h,artifacts:y,...x===void 0?{}:{artifactError:x}}}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:{kind:`feishu_project`,relayProjectRef:e},projectDisplayName:Le}),(0,L.jsx)(ew,{state:Re,documentConnections:oe,onRetry:Pe,onBrandClick:()=>window.location.reload(),onSelectTab:e=>{C(void 0),d(e)},onSelectTask:Fe,onSelectReference:Ie,onOpenInBrowser:()=>{if(!be.isPending){if(he===null){s.notify({tone:`warning`,title:`Artifact preview is not ready`,message:`Open it after the current Artifact preview becomes available.`});return}C(void 0),be.mutate()}},...S===void 0?{}:{browserOpenUrl:S,onBrowserOpenLinkClick:()=>C(void 0)},onSubmitScratchpad:()=>xe.mutate(F.data?.updated_at),onRoundDraftChange:_,onSendRoundMessage:()=>{ue!==void 0&&g.trim()!==``&&Se.mutate({roundId:ue,body:g.trim()})},onSubmitRound:()=>{ue!==void 0&&Ce.mutate(ue)},onDecideApproval:(e,t)=>we.mutate({approvalId:e,decisionId:t}),scratchpadSubmitPending:xe.isPending,roundSendPending:Se.isPending,roundSubmitPending:Ce.isPending,approvalDecisionPending:we.isPending,browserOpenPending:be.isPending})]})}var uH=class extends I.Component{state={};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(){}render(){return this.state.error===void 0?this.props.children:this.props.artifactPresentation===!0?(0,L.jsx)(`main`,{role:`status`,children:`Artifact preview is unavailable.`}):(0,L.jsx)(ew,{state:{kind:`error`,...MV(new SV(`browser_runtime`,this.state.error,this.props.diagnostics),this.props.diagnostics)},onRetry:()=>window.location.reload(),onBrandClick:()=>window.location.reload(),onSelectTab:()=>void 0,onSelectTask:()=>void 0,onSelectReference:()=>void 0})}};function dH(e){let t=new URLSearchParams(e).getAll(`view`);return t.length===1&&(t[0]===`work`||t[0]===`references`||t[0]===`artifacts`)?t[0]:`project`}function fH(e){let t=new URLSearchParams(e).getAll(`authorize`);return t.length===1&&t[0]===`docx`}function pH({relayProjectRef:e}){let[t,n]=(0,I.useState)(wV),r=(0,I.useMemo)(()=>UV(window.location),[]),i=(0,I.useMemo)(()=>dH(window.location.search),[]),a=(0,I.useMemo)(()=>fH(window.location.search),[]);return(0,I.useEffect)(()=>{r.shouldClearFragment&&WV(window.location,window.history)},[r.shouldClearFragment]),(0,L.jsx)(uH,{diagnostics:t,artifactPresentation:r.systemBrowser,children:r.systemBrowser?(0,L.jsx)(cH,{browserEntry:r,diagnostics:t,relayProjectRef:e}):(0,L.jsx)(lH,{diagnostics:t,initialTab:i,authorizeDocument:a,relayProjectRef:e,onDiagnosticsChange:n})})}function mH(){Q(`/projects`,{replace:!0})}function hH(){let e=R({queryKey:Z.me,queryFn:()=>fr(cB)}),t=HB(mH);return(0,I.useEffect)(()=>{e.data!==void 0&&mH()},[e.data]),e.isLoading||e.data!==void 0?null:(0,L.jsx)(lw,{...t,onBrandClick:()=>Q(`/`),sessionError:e.error===null||Yt(e.error)?null:`Tutti could not check your current session. You can still try signing in.`})}var gH=`/account/local-console`,_H=/^[A-Za-z0-9_-]{32,128}$/u;function vH(e){return _H.test(e)}function yH(e){if(!/^[1-9]\d{0,4}$/u.test(e))return null;let t=Number(e);return Number.isInteger(t)&&t<=65535?t:null}function bH(e){if(!vH(e.accessToken))throw Error(`Local Console account continuation token is invalid.`);let t=new URL(e.localOrigin),n=yH(t.port);if(t.protocol!==`http:`||t.hostname!==`127.0.0.1`||n===null)throw Error(`Local Console account continuation requires an exact loopback origin.`);let r=new URL(gH,e.webBaseUrl);return r.search=``,r.hash=new URLSearchParams({access_token:e.accessToken,local_port:String(n),...e.intent===`sign_out`?{intent:`sign_out`}:{}}).toString(),r.toString()}function xH(e){let t=e.startsWith(`#`)?e.slice(1):e,n=new URLSearchParams(t),r=n.getAll(`intent`),i=r.length===0?`authenticate`:r[0];if(n.size!==2&&n.size!==3||n.getAll(`access_token`).length!==1||n.getAll(`local_port`).length!==1||r.length>1||n.size===3&&r.length!==1||n.size===2&&r.length!==0||i!==`authenticate`&&i!==`sign_out`)return null;let a=n.get(`access_token`)??``,o=yH(n.get(`local_port`)??``);return!vH(a)||o===null?null:{accessToken:a,localPort:o,intent:i}}function SH(e,t){let n=t.trim();if(n===``||n.length>80)throw Error(`Local Console account display name is invalid.`);let r=new URL(`http://127.0.0.1:${e.localPort}/console`);return r.hash=new URLSearchParams({access_token:e.accessToken,account_display_name:n}).toString(),r.toString()}function CH(e){let t=e.startsWith(`#`)?e.slice(1):e,n=new URLSearchParams(t);if(n.size!==1&&n.size!==2||n.getAll(`access_token`).length!==1||n.getAll(`account_display_name`).length>1||n.size===2&&n.getAll(`account_display_name`).length!==1)return null;let r=n.get(`access_token`)??``,i=n.get(`account_display_name`)?.trim();return!vH(r)||i!==void 0&&(i===``||i.length>80)?null:{accessToken:r,...i===void 0?{}:{accountDisplayName:i}}}function wH(e){let t=e.trim().replace(/[\\/]+$/u,``);return t===``?``:t.slice(Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`))+1)}function TH(e=``){return{workspacePath:e,displayName:wH(e),description:``,baseUrl:``,apiKey:``,model:``,surface:`standalone`}}function EH(e,t,n){return{...e,workspacePath:t,...n?{}:{displayName:wH(t)}}}function DH(e){switch(e){case`console_busy`:return`Wait for the current Local Console action to finish.`;case`host_busy`:return`Wait for active project work or questions to finish.`;case`host_identity_unverified`:return`Stop or reopen the affected project before updating.`;case`update_in_progress`:return`Another Tutti update is already in progress.`;case`update_recovery_required`:return`Run tutti again after closing this page to recover the interrupted update.`;case`global_prefix_read_only`:return`Use your normal terminal installation environment to update Tutti.`;case`npm_install_failed`:return`The npm installation failed. Refresh to check whether it can be retried.`;case`post_install_validation_failed`:return`The installed package could not be verified. Run tutti again to recover.`;case`completion_start_failed`:case`completion_failed`:case`worker_crashed`:return`The update was interrupted. Run tutti again to recover.`;case`host_restore_failed`:return`Tutti updated, but one or more local projects could not restart.`;case`installation_not_global`:case`custom_home`:case`npm_unavailable`:case`npm_global_root_mismatch`:case`npm_version_unsupported`:case`registry_unavailable`:case void 0:return`Tutti cannot update from this Local Console.`}}function OH(e){if(e.status!==`updating`)return e.status===`blocked`||e.status===`failed`?DH(e.reason_code):void 0;switch(e.phase){case`stopping_hosts`:return`Safely stopping online projects.`;case`installing`:return`Installing the new Tutti version.`;case`restarting`:return`Restarting local projects.`;case`preparing`:case void 0:return`Preparing the update.`}}function kH(e){let t=e.update;if(t===null||t.status===`up_to_date`||t.latest_version===void 0&&t.status!==`updating`&&t.status!==`failed`)return;let n=e.checking&&t.status===`ready`?`Checking update readiness.`:OH(t);return{label:t.status===`updating`?`Updating…`:`Restart and Update`,disabled:t.status!==`ready`||!t.can_update||e.checking||e.starting,...n===void 0?{}:{description:n}}}function AH(e,t){let n=e.replace(/\s+/g,` `).trim();return n.length===0?t:n}function jH({inviterName:e,projectName:t,joinUrl:n}){return`${AH(e,`A teammate`)} invited you to join the Tutti project “${AH(t,`Untitled project`)}”.\n\nOpen the invitation link:\n${n.trim()}`}var MH=TH();function NH(e,t){let n={projectId:e.project_id,projectName:e.display_name};return t.state===`connected`?{...n,state:`connected`}:t.state===`account_handoff_required`?{...n,state:`account_handoff_required`}:t.visibility===`visible_once`?{...n,state:`pairing_required`,command:t.command}:{...n,state:`not_recoverable`}}function PH(){return sB}function FH(){window.history.replaceState(null,``,`${window.location.pathname}${window.location.search}`)}function IH(){let e=window.open(`about:blank`,`_blank`);return e!==null&&(e.opener=null),e}function LH(){let e=rB(),t=(0,I.useRef)(void 0),n=(0,I.useRef)(void 0),r=(0,I.useRef)(!1),i=(0,I.useRef)(null),a=(0,I.useRef)(!1),o=(0,I.useRef)(0),s=(0,I.useRef)(null),c=(0,I.useRef)(!1),l=(0,I.useMemo)(()=>Wn({baseUrl:window.location.origin,csrfToken:()=>t.current,contextToken:()=>n.current}),[]),[u,d]=(0,I.useState)(null),[f,p]=(0,I.useState)(null),[m,h]=(0,I.useState)(MH),g=(0,I.useRef)(!1),_=(0,I.useRef)({baseUrl:``,apiKey:``}),[v,y]=(0,I.useState)([]),[b,x]=(0,I.useState)(!1),[S,C]=(0,I.useState)(`folder`),[w,T]=(0,I.useState)([]),[E,ee]=(0,I.useState)(!0),[D,O]=(0,I.useState)(!1),[k,A]=(0,I.useState)(!1),[te,j]=(0,I.useState)(null),[M,N]=(0,I.useState)(null),[P,F]=(0,I.useState)(!1),[ne,re]=(0,I.useState)(!1),[ie,ae]=(0,I.useState)(!1),[oe,se]=(0,I.useState)(null);async function ce(){if(t.current!==void 0){ee(!0);try{T((await l.getProjects()).projects)}catch(t){e.notify({tone:`error`,title:`Projects unavailable`,message:$(t)})}finally{ee(!1)}}}async function le(e={}){i.current?.abort();let t=new AbortController;i.current=t,F(!0);try{N(await l.getPackageUpdate({refresh:e.refresh===!0,signal:t.signal}))}catch{}finally{i.current===t&&(i.current=null,F(!1))}}(0,I.useEffect)(()=>{r.current||(r.current=!0,(async()=>{try{let e=CH(window.location.hash);if(e!==null){FH();let r=await l.exchangeSession(e.accessToken,e.accountDisplayName);t.current=r.csrf_token,n.current=r.context_token}let r=await l.getBootstrap();if(t.current=r.csrf_token,r.account_gate?.status===`required`){let e=await l.createAccountContinuation();window.location.replace(bH({accessToken:e.access_token,localOrigin:window.location.origin,webBaseUrl:PH()}));return}d(r),p(null),await Promise.all([ce(),le()])}catch(e){ee(!1),p($(e))}})())},[l]),(0,I.useEffect)(()=>()=>{i.current?.abort()},[]),(0,I.useEffect)(()=>{if(u===null)return;let e=window.setInterval(()=>{l.heartbeat().catch(()=>void 0)},6e4);return()=>window.clearInterval(e)},[u,l]),(0,I.useEffect)(()=>{if(u===null||M?.latest_version===void 0||M.status===`up_to_date`||M.status===`failed`)return;let e=window.setInterval(()=>void le(),M.status===`updating`?2e3:15e3);return()=>window.clearInterval(e)},[u,M?.latest_version,M?.status]),(0,I.useEffect)(()=>{let t=u?.package_update_completion;t===void 0||c.current||(c.current=!0,e.notify(t.restart_failure_count===0?{tone:`success`,title:`Tutti updated to ${t.target_version}`}:{tone:`warning`,title:`Tutti updated to ${t.target_version}`,message:`${t.restart_failure_count} local project${t.restart_failure_count===1?``:`s`} could not restart.`}))},[u,e]),(0,I.useEffect)(()=>{if(M?.status!==`failed`)return;let t=M.reason_code??`update_failed`;s.current!==t&&(s.current=t,e.notify({tone:`error`,title:`Tutti update did not complete`,message:DH(M.reason_code)}))},[e,M]);async function ue(){try{let t=await l.pickFolder();t.kind===`selected`?Se({workspacePath:t.path}):t.kind===`unavailable`&&e.notify({tone:`info`,title:`Use a folder path`,message:t.message})}catch(t){e.notify({tone:`error`,title:`Folder picker unavailable`,message:$(t)})}}async function de(){let t={baseUrl:m.baseUrl.trim(),apiKey:m.apiKey.trim()},n=()=>_.current.baseUrl.trim()===t.baseUrl&&_.current.apiKey.trim()===t.apiKey;O(!0);try{let r=await l.discoverModels({base_url:t.baseUrl,api_key:t.apiKey});if(!n())return;r.kind===`ok`?(y(r.models),h(e=>({...e,model:``})),C(`model`)):(y([]),e.notify({tone:`error`,title:`Provider check failed`,message:r.reason===`model_list_empty`?`The endpoint did not return any available models.`:`Check the Base URL and API key, then try again.`}))}catch(t){if(!n())return;y([]),e.notify({tone:`error`,title:`Provider check failed`,message:$(t)})}finally{O(!1)}}async function fe(){A(!0);try{let e=await l.launchProject({workspace_path:m.workspacePath.trim(),surface:m.surface,project:{display_name:m.displayName.trim(),...m.description.trim()===``?{}:{description:m.description.trim()}},provider:{base_url:m.baseUrl.trim(),api_key:m.apiKey.trim(),model:m.model.trim()}});Ce(),e.join_url===void 0?(await ce(),me(e.project,e.feishu_setup)):window.location.assign(e.join_url)}catch(t){e.notify({tone:`error`,title:`Launch failed`,message:$(t)})}finally{A(!1)}}async function pe(t){j(t.project_id);try{let n=await l.launchProject({workspace_path:t.workspace_path});await ce(),t.surface_profile.kind===`feishu`?me(n.project,n.feishu_setup):e.notify({tone:`success`,title:`${t.display_name} is ready`})}catch(t){let n=t instanceof Gt&&t.code===`provider_configuration_required`;e.notify({tone:n?`warning`:`error`,title:n?`Provider required`:`Launch failed`,message:n?`Use New project with this folder to update its Provider configuration.`:$(t)})}finally{j(null)}}function me(e,t){let n=++o.current;if(t!==void 0){se(NH(e,t));return}se({projectId:e.project_id,projectName:e.display_name,state:`loading`}),l.getFeishuSetup(e.project_id).then(t=>{o.current===n&&se(NH(e,t))}).catch(t=>{o.current===n&&se({projectId:e.project_id,projectName:e.display_name,state:`unavailable`,unavailableMessage:$(t)})})}function he(e){e||(o.current+=1,se(null))}async function ge(t){try{await navigator.clipboard.writeText(t),e.notify({tone:`success`,title:`Connection command copied`})}catch{e.notify({tone:`error`,title:`Could not copy connection command`})}}async function _e(t){j(t.project_id);try{let n=await l.refreshInvite(t.project_id);await navigator.clipboard.writeText(jH({inviterName:``,projectName:t.display_name,joinUrl:n.join_url})),e.notify({tone:`success`,title:`Invitation copied`})}catch(t){e.notify({tone:`error`,title:`Invite unavailable`,message:$(t)})}finally{j(null)}}async function ve(t){if(t.open_url===void 0)return;let n=IH();j(t.project_id);try{let r=await l.openProject(t.project_id);T(e=>e.map(e=>e.project_id===r.project.project_id?r.project:e)),n===null?window.location.assign(r.handoff.url):n.location.replace(r.handoff.url),r.host_update===`updated`?e.notify({tone:`success`,title:`${t.display_name} updated`}):r.host_update===`deferred_busy`?e.notify({tone:`info`,title:`Opened without updating`,message:`Try Open again after the current project activity finishes.`}):r.host_update===`deferred_unsupported`?e.notify({tone:`info`,title:`Opened with the current Host`,message:`Stop and Resume this project once to enable safe automatic updates.`}):r.host_update===`deferred_unavailable`&&e.notify({tone:`warning`,title:`Update deferred`,message:`The current Host could not be safely restarted, so the project opened as-is.`})}catch(t){n?.close(),e.notify({tone:`error`,title:`Open failed`,message:$(t)})}finally{j(null)}}async function ye(t){j(t.project_id);try{await l.stopProject(t.project_id),oe?.projectId===t.project_id&&he(!1),await Promise.all([ce(),le()]),e.notify({tone:`success`,title:`${t.display_name} stopped`})}catch(t){e.notify({tone:`error`,title:`Stop failed`,message:$(t)})}finally{j(null)}}async function be(){if(!(a.current||M?.status!==`ready`||!M.can_update)){a.current=!0,re(!0);try{N(await l.startPackageUpdate())}catch(t){t instanceof Gt&&t.statusCode===0?N({...M,status:`updating`,can_update:!1,phase:`preparing`}):(e.notify({tone:`error`,title:`Update not started`,message:$(t)}),await le())}finally{a.current=!1,re(!1)}}}async function xe(){if(!ie){ae(!0);try{let e=await l.createAccountContinuation();window.location.replace(bH({accessToken:e.access_token,localOrigin:window.location.origin,webBaseUrl:PH(),intent:`sign_out`}))}catch(t){ae(!1),e.notify({tone:`error`,title:`Sign out failed`,message:$(t)})}}}function Se(e){e.displayName!==void 0&&(g.current=!0);let t=e.baseUrl!==void 0&&e.baseUrl!==m.baseUrl||e.apiKey!==void 0&&e.apiKey!==m.apiKey;t&&(y([]),_.current={baseUrl:e.baseUrl??m.baseUrl,apiKey:e.apiKey??m.apiKey}),h(n=>({...e.workspacePath===void 0?n:EH(n,e.workspacePath,g.current),...e,...t?{model:``}:{}}))}function Ce(){x(!1),C(`folder`),y([]),_.current={baseUrl:``,apiKey:``},g.current=!1,h(TH())}function we(e){if(!e){!D&&!k&&Ce();return}let t=u?.invocation.source===`terminal`?u.invocation.current_directory:``;g.current=!1,_.current={baseUrl:``,apiKey:``},y([]),h(TH(t)),C(`folder`),x(!0)}function Te(e){if(e.preventDefault(),S===`folder`){C(`details`);return}if(S===`details`){C(`provider`);return}if(S===`provider`){de();return}if(S===`model`){C(`surface`);return}fe()}function Ee(){C(e=>{switch(e){case`folder`:return`folder`;case`details`:return`folder`;case`provider`:return`details`;case`model`:return`provider`;case`surface`:return`model`}})}let De=kH({update:M,checking:P,starting:ne});return(0,L.jsx)(cw,{...u===null?{}:{version:u.version},accountName:u?.account_gate?.status===`ready`?u.account_gate.account?.display_name??`Signed in`:`Signed in`,projectCenterHref:new URL(`/projects`,sB).toString(),form:m,models:v,projects:w,projectsLoading:E,sessionLoading:u===null&&f===null,sessionError:f,createOpen:b,createStep:S,modelDiscoveryPending:D,launchPending:k,projectActionPending:te,signOutPending:ie,feishuConnection:oe,...De===void 0?{}:{packageUpdateAction:De},onChange:Se,onCreateOpenChange:we,onCreateSubmit:Te,onCreateBack:Ee,onChooseFolder:()=>void ue(),onRefresh:()=>void Promise.all([ce(),le({refresh:!0})]),onLaunchExisting:e=>void pe(e),onOpenProject:e=>void ve(e),onCopyInvite:e=>void _e(e),onConnectFeishu:e=>me(e),onFeishuConnectionOpenChange:he,onCopyFeishuCommand:e=>void ge(e),onStopProject:e=>void ye(e),onPackageUpdate:()=>void be(),onSignOut:()=>void xe()})}function RH(){return(0,I.useEffect)(()=>Q(`/projects`,{replace:!0}),[]),null}function zH({continuation:e}){let t=rB(),n=et(),r=(0,I.useRef)(!1),[i,a]=(0,I.useState)(e.intent!==`sign_out`),o=(0,I.useCallback)(async n=>{if(!r.current){r.current=!0;try{await hr(cB,e.accessToken),window.location.replace(SH(e,n))}catch{t.notify({tone:`error`,title:`Local Console sign-in failed`,message:`Tutti could not create the private account handoff. Please try again.`}),Q(`/projects`,{replace:!0})}}},[e,t]),s=R({queryKey:Z.me,queryFn:()=>fr(cB),enabled:i}),c=HB(),l=UB();if((0,I.useEffect)(()=>{if(e.intent!==`sign_out`)return;let r=!1;return yr(cB).then(()=>{r||(n.removeQueries({queryKey:Z.me}),a(!0))}).catch(()=>{r||(t.notify({tone:`error`,title:`Sign out failed`}),Q(`/projects`,{replace:!0}))}),()=>{r=!0}},[e.intent,t,n]),(0,I.useEffect)(()=>{let e=s.data?.account;e?.profile_complete===!0&&o(e.display_name)},[s.data?.account,o]),!i||s.isLoading||s.data?.account.profile_complete===!0)return null;let u=s.data?.account.profile_complete===!1?l:c,d=s.error===null||Yt(s.error)?null:`Tutti could not check your current session. You can still try signing in.`;return(0,L.jsx)(UC,{...u,error:u.error??d,onBrandClick:()=>Q(`/`)})}function BH(){let e=xH(window.location.hash);return e===null?(0,L.jsx)(RH,{}):(0,L.jsx)(zH,{continuation:e})}var VH=/^[A-Za-z0-9_-]{8,256}$/u,HH=/https?:\/\/[^\s<>"'`“”‘’]+/giu,UH=/(?:^|[\s("'“‘])((?:\/)?join\/[A-Za-z0-9_-]{8,256})(?=$|[\s?#.,;:!'"”’)\]}])/giu,WH=/[.,;:!?)}\]]+$/u;function GH(e){let t;try{t=decodeURIComponent(e)}catch{return null}return VH.test(t)?t:null}function KH(e){let t=e.split(`/`).filter(Boolean);return t.length!==2||t[0]!==`join`?null:GH(t[1]??``)}function qH(e,t){let n=KH(t);n!==null&&e.add(`/join/${encodeURIComponent(n)}`)}function JH(e,t){try{qH(e,new URL(t.replace(WH,``)).pathname)}catch{}}function YH(e){let t=e.trim();if(t===``)return{kind:`empty`};let n=new Set;for(let e of t.matchAll(HH))JH(n,e[0]);for(let e of t.matchAll(UH)){let t=e[1];if(t!==void 0)try{qH(n,new URL(t,`https://tutti.invalid`).pathname)}catch{}}let r=GH(t);return r!==null&&n.add(`/join/${encodeURIComponent(r)}`),n.size===0?{kind:`invalid`}:n.size>1?{kind:`ambiguous`}:{kind:`matched`,route:[...n][0]}}function XH(e){return Jt(e,`project_membership_required`)?{tone:`warning`,title:`Join this project first`,message:`This account has not joined the project. Open its invitation link, or return to Local Console and copy a new invite.`}:{tone:`error`,title:`Project open failed`,message:$(e)}}var ZH=`tutti://projects`,QH=3e4,$H=/^[A-Za-z0-9_-]+$/u,eU=/^[A-Za-z0-9_-]{43}$/u,tU=class extends Error{reason;constructor(e){super(`Tutti could not complete the desktop entry continuation.`),this.name=`DesktopEntryContinuationError`,this.reason=e}};function nU(e){let t=``;for(let n of e)t+=String.fromCharCode(n);return btoa(t).replaceAll(`+`,`-`).replaceAll(`/`,`_`).replace(/=+$/u,``)}function rU(e,t){if(!$H.test(e))throw new tU(`invalid`);let n=`=`.repeat((4-e.length%4)%4),r;try{r=atob(e.replaceAll(`-`,`+`).replaceAll(`_`,`/`)+n)}catch{throw new tU(`invalid`)}let i=new Uint8Array(r.length);for(let e=0;e<r.length;e+=1)i[e]=r.charCodeAt(e);if(t!==void 0&&i.length!==t||nU(i)!==e)throw new tU(`invalid`);return i}function iU(e){return typeof e==`string`&&Rt(e,Pt.relayDesktopEntryContinuation)}function aU(e){return typeof e==`string`&&e.length===43&&$H.test(e)}function oU(e=globalThis.crypto){let t=new Uint8Array(32);e.getRandomValues(t);let n=nU(t);if(n.length!==43)throw new tU(`invalid`);return n}function sU(e){if(!iU(e.continuationRef)||!aU(e.completionToken)||e.payloadKey.length!==43)throw new tU(`invalid`);return rU(e.payloadKey,32),`${ZH}?${new URLSearchParams({continuation:e.continuationRef,completion_token:e.completionToken,payload_key:e.payloadKey}).toString()}`}function cU(e,t={}){let n=Date.parse(e.expires_at);if(!Number.isFinite(n)||n<=(t.nowMs??Date.now())||!iU(e.continuation_ref))throw new tU(`invalid`);let r=oU(t.cryptoImpl);return{continuationRef:e.continuation_ref,payloadKey:r,href:sU({continuationRef:e.continuation_ref,completionToken:e.completion_token,payloadKey:r}),expiresAtMs:n}}function lU(e){if(typeof e!=`object`||!e)throw new tU(`invalid`);let t=e,n=t.iv,r=t.ciphertext;if(typeof n!=`string`||typeof r!=`string`||n.length!==16||r.length<24||r.length>4096)throw new tU(`invalid`);return{iv:rU(n,12),ciphertext:rU(r)}}function uU(e){let t;try{t=new URL(e)}catch{throw new tU(`invalid`)}let n=t.port,r=Number(n);if(t.protocol!==`http:`||t.hostname!==`127.0.0.1`||!/^[1-9]\d{0,4}$/u.test(n)||!Number.isInteger(r)||r>65535||t.pathname!==`/console`||t.search!==``||t.username!==``||t.password!==``||t.hash===``)throw new tU(`invalid`);let i=t.hash.slice(1),a=new URLSearchParams(i),o=a.get(`access_token`)??``;if(a.size!==1||a.getAll(`access_token`).length!==1||!eU.test(o)||i!==new URLSearchParams({access_token:o}).toString())throw new tU(`invalid`);return t.toString()}async function dU(e,t,n=globalThis.crypto){let r=rU(t,32),i=lU(e);try{let e=await n.subtle.importKey(`raw`,r,`AES-GCM`,!1,[`decrypt`]),t=await n.subtle.decrypt({name:`AES-GCM`,iv:i.iv},e,i.ciphertext);return uU(new TextDecoder(`utf-8`,{fatal:!0}).decode(t))}catch(e){throw e instanceof tU?e:new tU(`invalid`)}}function fU(e){let t=typeof e==`string`?Date.parse(e):NaN;if(!Number.isFinite(t))throw new tU(`invalid`);return t}function pU(e,t){return new Promise((n,r)=>{if(t.aborted){r(new tU(`aborted`));return}let i=()=>{globalThis.clearTimeout(a),r(new tU(`aborted`))},a=globalThis.setTimeout(()=>{t.removeEventListener(`abort`,i),n()},e);t.addEventListener(`abort`,i,{once:!0})})}async function mU(e){let t=e.nowMs??Date.now,n=e.wait??pU,r=t()+(e.timeoutMs??2e4);for(;!e.signal.aborted&&t()<r;){let i;try{i=await e.read(e.prepared.continuationRef,e.signal)}catch(i){if(e.signal.aborted)throw new tU(`aborted`);if(i instanceof Gt&&!i.retryable)throw new tU(`unavailable`);let a=r-t();if(a<=0)break;await n(Math.min(e.pollIntervalMs??500,a),e.signal);continue}if(typeof i!=`object`||!i)throw new tU(`invalid`);let a=i;if(!iU(a.continuation_ref)||a.continuation_ref!==e.prepared.continuationRef)throw new tU(`invalid`);let o=fU(a.expires_at);if(o<=t())throw new tU(`expired`);if(a.status===`ready`)return dU(a.sealed_payload,e.prepared.payloadKey,e.cryptoImpl);if(a.status!==`pending`)throw new tU(`invalid`);let s=Math.min(r,o)-t();if(s<=0)break;await n(Math.min(e.pollIntervalMs??500,s),e.signal)}throw e.signal.aborted?new tU(`aborted`):new tU(`timeout`)}function hU(e){let[t,n]=(0,I.useState)(0),[r,i]=(0,I.useState)(null),[a,o]=(0,I.useState)(!1),[s,c]=(0,I.useState)(`opening`),l=(0,I.useRef)(null),u=(0,I.useRef)(null),d=(0,I.useRef)(0),f=(0,I.useRef)(!1),p=(0,I.useCallback)(e=>{l.current=e,i(e)},[]);(0,I.useEffect)(()=>{u.current?.abort(),u.current=null,d.current+=1,f.current=!1,p(null),o(!1),c(`opening`)},[e,p]),(0,I.useEffect)(()=>{if(e===null)return;let t=l.current?.continuationRef??null,n=null,r=!1,i=window.setTimeout(()=>{n=new AbortController,pr(cB,{signal:n.signal}).then(t=>{r||p({accountRef:e,...cU(t)})}).catch(()=>{!r&&t!==null&&l.current?.continuationRef===t&&p(null)})},0);return()=>{r=!0,window.clearTimeout(i),n?.abort()}},[e,t,p]),(0,I.useEffect)(()=>{if(r===null||r.accountRef!==e)return;let t=r.expiresAtMs-Date.now(),i=t>3e4?t-QH:Math.max(1e3,Math.floor(t/2)),a=window.setTimeout(()=>{l.current?.continuationRef===r.continuationRef&&(p(null),n(e=>e+1))},Math.max(0,i));return()=>window.clearTimeout(a)},[e,r,p]),(0,I.useEffect)(()=>()=>{u.current?.abort()},[]);let m=(0,I.useCallback)(()=>{o(!0),c(`opening`),u.current?.abort();let t=l.current;if(t===null||t.accountRef!==e||t.expiresAtMs<=Date.now()){n(e=>e+1);return}n(e=>e+1);let r=new AbortController;u.current=r;let i=d.current+1;d.current=i,mU({prepared:t,read:(e,t)=>mr(cB,e,{signal:t}),signal:r.signal}).then(e=>{if(!(d.current!==i||r.signal.aborted||f.current)){f.current=!0;try{window.location.replace(e)}catch(e){throw f.current=!1,e}}}).catch(e=>{d.current!==i||r.signal.aborted||e instanceof tU&&e.reason===`aborted`||c(`failed`)}).finally(()=>{u.current===r&&(u.current=null)})},[e,p]),h=(0,I.useCallback)(e=>{o(e),e||(u.current?.abort(),u.current=null,d.current+=1,c(`opening`))},[]),g=(r!==null&&r.accountRef===e?r:null)?.href??`tutti://projects`;return{localScopeHref:g,localHandoffOpen:a,localHandoffStatus:s,localHandoffRetryHref:g,onLocalHandoffOpenChange:h,onLocalScopeSelect:m}}function gU({requestedOpenProjectRef:e}){let t=et(),n=rB(),r=HB(),i=UB(),[a,o]=(0,I.useState)(``),[s,c]=(0,I.useState)(null),[l,u]=(0,I.useState)(!1),d=(0,I.useRef)(null),f=R({queryKey:Z.me,queryFn:()=>fr(cB)}),p=R({queryKey:Z.recentProjects,queryFn:()=>Sr(cB),enabled:f.isSuccess});hB(f.isSuccess);let m=gt({mutationFn:e=>Cr(cB,e),onSuccess:e=>{if(pB(t),e.disposition.kind===`opened`&&e.result?.open_url!==void 0){dB(e.result.open_url);return}n.notify({tone:`warning`,title:`Host is offline`})},onError:e=>{let t=XH(e);n.notify({...t})}}),h=m.mutate;(0,I.useEffect)(()=>{e===void 0||f.data?.account.profile_complete!==!0||d.current===e||(d.current=e,h(e))},[f.data?.account.profile_complete,h,e]);let g=gt({mutationFn:()=>yr(cB),onSuccess:()=>{t.invalidateQueries({queryKey:Z.relayRoot}),t.invalidateQueries({queryKey:Z.me}),t.invalidateQueries({queryKey:Z.recentProjects})},onError:e=>{n.notify({tone:`error`,title:`Sign out failed`,message:$(e)})}}),_=f.data?.account,v=hU(_?.profile_complete===!0?_.account_ref:null),y=f.error!==null&&Yt(f.error)?r:_!==void 0&&!_.profile_complete?i:null;if(y!==null)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:{kind:`home`}}),(0,L.jsx)(UC,{...y,onBrandClick:()=>Q(`/`)})]});let b=(p.data?.projects??[]).map(Gr);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:{kind:`project_center`}}),(0,L.jsx)(uw,{account:_===void 0?null:{displayName:_.display_name},projects:b,loading:f.isLoading||p.isLoading,error:f.error===null?p.error===null?null:$(p.error):$(f.error),openPending:m.isPending,logoutPending:g.isPending,joinLinkForm:{value:a,error:s,onChange:e=>{o(e),c(null)},onSubmit:()=>{let e=YH(a);if(e.kind!==`matched`){c(e.kind===`ambiguous`?`Paste one Tutti invitation at a time.`:`Paste a valid Tutti invitation.`);return}Q(e.route)}},joinOpen:l,localScopeHref:v.localScopeHref,localHandoffOpen:v.localHandoffOpen,localHandoffStatus:v.localHandoffStatus,localHandoffRetryHref:v.localHandoffRetryHref,onJoinOpenChange:e=>{u(e),e||(o(``),c(null))},onLocalHandoffOpenChange:v.onLocalHandoffOpenChange,onLocalScopeSelect:v.onLocalScopeSelect,onCopyLaunchCommand:e=>{navigator.clipboard.writeText(e).then(()=>{n.notify({tone:`success`,title:`Command copied`})}).catch(()=>{n.notify({tone:`error`,title:`Copy failed`,message:`The browser could not copy the launch command.`})})},onBrandClick:()=>Q(`/`),onOpenProject:e=>m.mutate(e),onLogout:()=>g.mutate()})]})}function _U(e){let t=e?.relay;if(t?.join_url_visibility===`visible_once`&&t.join_url!==void 0&&t.join_url.trim()!==``)return t.join_url}function vU(e,t){try{return new URL(e).origin===new URL(t,e).origin}catch{return!1}}function yU(e,t){let n=_U(e);if(n!==void 0)return{kind:`join`,joinUrl:n};let r=e?.relay?.relay_project_ref;return r===void 0?{kind:`unavailable`,message:`Relay project is unavailable`}:vU(t.currentOrigin,t.relayBaseUrl)?{kind:`relay_open`,relayProjectRef:r}:{kind:`unavailable`,message:`Open the latest Join URL printed by tutti launch.`}}var bU=`gpt-5.5`,xU=`/host-local/v1`;function SU(){return new URL(window.location.href).searchParams.get(`token`)?.trim()??``}function CU(e){return{baseUrl:xU,credentials:`same-origin`,headers:{authorization:`Bearer ${e}`}}}function wU(e){return z(CU(e),`/provider/config`)}function TU(e){return z(CU(e),`/launch-status`)}function EU(e){return z(CU(e),`/project`)}function DU(e,t){return z(CU(e),`/project`,{method:`POST`,body:t})}function OU(e,t){return z(CU(e),`/provider/config`,{method:`POST`,body:t})}function kU(e){return e===void 0?`loading`:e.status===`configured`?`configured`:e.status===`invalid`?`invalid`:`not configured`}function AU(e){let t=e instanceof Error&&`code`in e?String(e.code):``;return t.startsWith(`provider_`)?t:$(e)}function jU(){let e=SU(),t=e===``,[n,r]=(0,I.useState)({projectName:``,apiKey:``,baseUrl:``,defaultModel:bU}),[i,a]=(0,I.useState)(null),[o,s]=(0,I.useState)(null),c=(0,I.useRef)(!1),l=R({queryKey:[`host-local`,`provider-config`,e],queryFn:()=>wU(e),enabled:!t}),u=R({queryKey:[`host-local`,`launch-status`,e],queryFn:()=>TU(e),enabled:!t}),d=R({queryKey:[`host-local`,`project`,e],queryFn:()=>EU(e),enabled:!t}),f=u.data,p=gt({mutationFn:e=>Cr(cB,e.relayProjectRef),onSuccess:e=>{if(e.disposition.kind===`opened`&&e.result?.open_url!==void 0){dB(e.result.open_url);return}s(`Host is offline`)},onError:e=>{s($(e))}}),m=gt({mutationFn:async()=>{let t=n.projectName.trim(),r=d.data?.display_name.trim()??``;t!==``&&t!==r&&await DU(e,{display_name:t});let i={api_key:n.apiKey.trim()},a=n.baseUrl.trim(),o=n.defaultModel.trim();return a!==``&&(i.base_url=a),o!==``&&(i.default_model=o),await OU(e,i)},onSuccess:()=>{a(`Provider saved.`),r(e=>({...e,apiKey:``})),d.refetch(),l.refetch(),v()}}),h=l.data;(0,I.useEffect)(()=>{let e=d.data?.display_name;e!==void 0&&r(t=>t.projectName.trim()===``?{...t,projectName:e}:t)},[d.data?.display_name]),(0,I.useEffect)(()=>{t||h?.status!==`configured`||v()},[h?.status,t]);let g=t?`Setup token is missing.`:d.error===null?l.error===null?m.error===null?o:AU(m.error):AU(l.error):AU(d.error);function _(e){e.preventDefault(),a(null),s(null),c.current=!1,!t&&n.apiKey.trim()!==``&&n.projectName.trim()!==``&&m.mutate()}async function v(){if(c.current)return;c.current=!0;let e=yU(f??(await u.refetch()).data,{currentOrigin:window.location.origin,relayBaseUrl:sB});if(e.kind===`join`){window.location.assign(e.joinUrl);return}if(e.kind===`unavailable`){s(e.message);return}p.mutate({relayProjectRef:e.relayProjectRef})}return(0,L.jsx)(fw,{form:n,statusLabel:kU(h),configured:h?.status===`configured`,loading:l.isLoading||d.isLoading,pending:m.isPending,tokenMissing:t,error:g,success:i,openProjectPending:p.isPending,onChange:e=>r(t=>({...t,...e})),onSubmit:_,onRetry:()=>void l.refetch(),onBrandClick:()=>Q(`/`)})}function MU(e){return`${e.created_at}:${e.id}`}function NU(e){return{kind:`initial`,entry:e}}function PU(e,t=50){if(e.kind===`older`)return{before:e.before,limit:t};if(e.kind===`newer`)return{after:e.after,limit:t};switch(e.entry.kind){case`latest`:return{limit:t};case`start`:return{anchor:`start`,limit:t};case`around`:return{around:e.entry.messageId,limit:t}}}function FU(e){let t=e.window.older_cursor;return e.window.has_older&&t!==void 0?{kind:`older`,before:t}:void 0}function IU(e){let t=e.window.newer_cursor;return e.window.has_newer&&t!==void 0?{kind:`newer`,after:t}:void 0}function LU(e,t=50){let n=e[0],r=e.at(-1);if(n===void 0||r===void 0)return{items:[],window:{has_older:!1,has_newer:!1,limit:t}};let i=new Map;for(let t of e)for(let e of t.items)i.set(e.id,e);let a=[...i.values()].sort((e,t)=>MU(e).localeCompare(MU(t))),o={has_older:n.window.has_older,has_newer:r.window.has_newer,limit:n.window.limit};return o.has_older&&n.window.older_cursor!==void 0&&(o.older_cursor=n.window.older_cursor),o.has_newer&&r.window.newer_cursor!==void 0&&(o.newer_cursor=r.window.newer_cursor),{items:a,window:o}}function RU(e){let t=et(),n=rB(),r=gt({mutationFn:t=>e.hostClient.retryTask(t.taskId,{expected_latest_run_result_id:t.runResultId}),onMutate:()=>n.notify({tone:`loading`,title:`Retrying task`}),onSuccess:(r,i,a)=>{if(gB(t,e.relayProjectRef,r.invalidates),r.disposition.kind===`accepted`){n.update(a,{tone:`success`,title:`Task retry started`});return}if(r.disposition.kind===`already_running`||r.disposition.kind===`retry_already_started`){n.update(a,{tone:`info`,title:`Task retry already started`});return}n.update(a,{tone:`warning`,title:`Task retry unavailable`,message:r.disposition.kind===`latest_run_result_changed`?`The task result changed. Review the latest result before retrying.`:r.disposition.kind===`retry_requires_resolution`?`This failure needs to be resolved before it can be retried safely.`:`The task cannot be retried in its current state.`})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Task retry failed`,message:$(e)})}});return{retry:(e,t)=>r.mutate({taskId:e,runResultId:t}),stateFor:(e,t,n)=>r.isPending&&r.variables?.taskId===e&&r.variables.runResultId===t?`retrying`:n}}var zU=5400,BU=1500;function VU(e){let t=e.completionSource;return t?.activityRef??t?.workflowRef??t?.taskId??e.key}function HU(e){switch(e.kind){case`accepted`:case`already_running`:return null;case`scratchpad_empty`:return{label:`Scratchpad is empty. Let it refresh before running.`,tone:`error`};case`stale_scratchpad`:return{label:`Scratchpad changed. Review the latest snapshot and run again.`,tone:`error`};case`provider_not_configured`:return{label:`Provider is not configured yet.`,tone:`error`};case`provider_unavailable`:return{label:`Provider unavailable: ${e.reason}.`,tone:`error`};case`interrupted`:return{label:`Run was interrupted. Try again.`,tone:`error`}}}function UU(e,t){t.displayName.trim()===``||e.has(t.key)||e.set(t.key,t)}function WU(e){if(e.author.kind!==`human`)return null;let t=e.author.display_name?.trim()||`Member`;return{key:e.author.ref===void 0?`message-author:${t.toLocaleLowerCase()}`:e.author.ref,displayName:t,avatar:e.author.avatar??{kind:`initials`,initials:Zr(t),color:`blue`}}}function GU({account:e,presence:t,messages:n=[]}){let r=new Map;e!==void 0&&UU(r,{key:e.account_ref,displayName:e.display_name,avatar:e.avatar});for(let e of t?.sample_members??[])UU(r,{key:e.account_ref,displayName:e.display_name,avatar:e.avatar});for(let e of t?.members??[])UU(r,{key:e.account_ref,displayName:e.display_name,avatar:e.avatar});for(let e of n){let t=WU(e);t!==null&&UU(r,t)}return[...r.values()]}function KU({account:e,presence:t}){let n={},r=(e,t)=>{let r=n[e];n[e]={avatar:t.avatar,online:r?.online===!0||t.online}};for(let e of t?.members??[])r(e.account_ref,{avatar:e.avatar,online:e.online});for(let e of t?.sample_members??[])r(e.account_ref,{avatar:e.avatar,online:!0});return e!==void 0&&r(e.account_ref,{avatar:e.avatar,online:!0}),n}function qU({relayProjectRef:e}){let t=et(),n=rB(),r=rH(),i=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),a=RU({hostClient:i,relayProjectRef:e}),[o,s]=(0,I.useState)(``),[c,l]=(0,I.useState)(``),[u,d]=(0,I.useState)(null),[f,p]=(0,I.useState)(null),[m,h]=(0,I.useState)(null),[g,_]=(0,I.useState)(()=>Date.now()),[v,y]=(0,I.useState)(null),b=new URL(uB(),window.location.origin).searchParams.get(`message`),x=b!==null&&Rt(b,Pt.message)?b:void 0,[S,C]=(0,I.useState)(()=>x===void 0?{kind:`latest`}:{kind:`around`,messageId:x}),w=(0,I.useRef)(null),T=(0,I.useRef)(null),E=(0,I.useRef)(null),[ee,D]=(0,I.useState)(null),O=f!==null;(0,I.useEffect)(()=>{x!==void 0&&(S.kind!==`around`||S.messageId!==x)&&C({kind:`around`,messageId:x})},[S,x]);let k=(t=null)=>{C({kind:`latest`}),y(t),x!==void 0&&Q(en(e),{replace:!0})},A=R({queryKey:Z.bootstrap(e),queryFn:()=>i.getBootstrap(),staleTime:lB}),te=A.data?.session.account.account_ref,j=te===void 0?null:`${te}:${e}`,M=x!==void 0||j!==null&&ee===j;(0,I.useEffect)(()=>{j===null||ee===j||(x===void 0&&te!==void 0&&C(ZB(te,e).start_chat_pending?{kind:`start`}:{kind:`latest`}),D(j))},[te,j,e,x,ee]);let N=_t({queryKey:Z.messageHistory(e,S,50),queryFn:({pageParam:e})=>i.getMessages(PU(e)),initialPageParam:NU(S),getPreviousPageParam:e=>FU(e),getNextPageParam:e=>IU(e),enabled:A.isSuccess&&M,staleTime:lB}),P=R({queryKey:Z.scratchpad(e),queryFn:()=>i.getScratchpad(),enabled:A.isSuccess,staleTime:lB,refetchInterval:O?BU:!1}),F=R({queryKey:Z.activeClarification(e),queryFn:()=>i.getActiveClarification(),enabled:A.isSuccess,staleTime:lB,refetchInterval:O?BU:!1}),ne=R({queryKey:Z.activeApproval(e),queryFn:()=>i.getActiveApproval(),enabled:A.isSuccess,staleTime:lB}),re=R({queryKey:Z.executionStatus(e),queryFn:()=>i.getExecutionStatus(),enabled:A.isSuccess,staleTime:lB,refetchInterval:O?BU:!1}),ie=R({queryKey:Z.readState(e),queryFn:()=>i.getReadState(),enabled:A.isSuccess,staleTime:lB}),ae=R({queryKey:Z.projectPresence(e),queryFn:()=>wr(cB,e),enabled:A.isSuccess,staleTime:lB,refetchInterval:6e4});hB(A.isSuccess);let oe=gt({mutationFn:e=>i.updateProjectDisplayName({display_name:e}),onMutate:e=>n.notify({tone:`loading`,title:`Saving project name`,message:e}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates??[{kind:`workspace`},{kind:`bootstrap`}]),n.update(a,{tone:`success`,title:`Project name saved`,message:i})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Project name save failed`,message:`${t}: ${$(e)}`})}}),se=gt({mutationFn:e=>i.updateProjectDescription({description:e}),onMutate:e=>n.notify({tone:`loading`,title:`Saving project description`,...e.length===0?{}:{message:e}}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates??[{kind:`workspace`},{kind:`bootstrap`}]),n.update(a,{tone:`success`,title:`Project description saved`,...i.length===0?{}:{message:i}})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Project description save failed`,message:$(e)})}}),ce=gt({mutationFn:({body:e,commandId:t})=>i.sendMainChatMessage({body:e},{commandId:t}),onSuccess:(n,r)=>{w.current=null,s(e=>e.trim()===r.body?``:e),n.result?.message!==void 0&&(S.kind===`latest`&&!N.hasNextPage?y(n.result.message.id):k(n.result.message.id)),gB(t,e,n.invalidates)},onError:e=>{n.notify({tone:`error`,title:`Message send failed`,message:$(e)})}}),le=gt({mutationFn:async t=>{let n=await VB({relayProjectRef:e,purpose:`reference_file`,file:t});return i.uploadReferenceFile(n)},onMutate:e=>n.notify({tone:`loading`,title:`Uploading reference`,message:e.name}),onSuccess:(r,i,a)=>{let o=r.result?.message;o!==void 0&&(S.kind===`latest`&&!N.hasNextPage?y(o.id):k(o.id)),gB(t,e,r.invalidates),n.update(a,{tone:`success`,title:`Reference uploaded`,message:r.result?.file.name??i.name})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Reference upload failed`,message:$(e)})}}),ue=gt({mutationFn:e=>i.submitWorklist(e===void 0?{}:{expected_scratchpad_updated_at:e}),onMutate:()=>(p({kind:`request`}),n.notify({tone:`loading`,title:`Running Scratchpad`})),onSuccess:(r,i,a)=>{if(r.disposition.kind===`accepted`){let e=r.result?.activity_ref;p(e===void 0?null:{kind:`activity`,activityRef:e,...r.result?.workflow_ref===void 0?{}:{workflowRef:r.result.workflow_ref}}),n.update(a,{tone:`success`,title:`Scratchpad run started`,message:`Tutti is preparing Worklist tasks.`})}else if(r.disposition.kind===`already_running`)p(null),n.update(a,{tone:`info`,title:`Already running`,message:`Tutti is already processing work.`});else{p(null);let e=HU(r.disposition);n.update(a,{tone:e?.tone??`warning`,title:`Scratchpad run blocked`,...e?.label===void 0?{}:{message:e.label}})}gB(t,e,r.invalidates)},onError:(e,t,r)=>{p(null),n.update(r,{tone:`error`,title:`Scratchpad run failed`,message:$(e)})}}),de=A.data,fe=KU({account:de?.session.account,presence:ae.data?.presence}),pe=de?.generated_at??new Date(0).toISOString(),me=N.data===void 0?void 0:LU(N.data.pages,50),he=me??(M&&S.kind===`latest`?de?.snapshots.main_chat:void 0)??_B(),ge=N.data!==void 0&&N.hasPreviousPage===!0,_e=N.data!==void 0&&N.hasNextPage===!0,ve=S.kind===`latest`||S.kind===`start`&&!_e||S.kind===`around`&&he.items.length>0&&!_e,ye=S.kind===`around`?`around:${S.messageId}`:S.kind,be=S.kind===`around`?`focus`:S.kind===`start`?`start`:`latest`,xe=de!==void 0&&(!M||me===void 0&&N.isLoading&&(S.kind!==`latest`||de.snapshots.main_chat===void 0)),Se=P.data??de?.snapshots.scratchpad??yB(),Ce=ie.data??de?.snapshots.read_state;xB({enabled:A.isSuccess,hostClient:i,relayProjectRef:e,readState:Ce,scope:`chat`});let we=F.data??de?.snapshots.active_clarification??SB(),Te=ne.data??de?.snapshots.active_approval??{state:`none`},Ee=we.state===`active`?we.round.id:void 0;(0,I.useEffect)(()=>{u!==null&&(Ee===void 0||u!==Ee)&&d(null)},[Ee,u]);let De=we.state===`active`&&we.thread.owner.kind===`task_compile`,Oe=(0,I.useMemo)(()=>{let e=new Set;for(let t of he.items)t.clarification_card!==void 0&&e.add(t.clarification_card.round_id);return Ee!==void 0&&e.add(Ee),[...e]},[Ee,he.items]),ke=mt({queries:Oe.map(t=>({queryKey:Z.clarificationRoundMessages(e,t),queryFn:()=>i.getClarificationRoundMessages(t,{anchor:`start`,limit:50}),enabled:A.isSuccess}))}),Ae=gt({mutationFn:({roundId:e,body:t})=>i.sendClarificationRoundMessage(e,{body:t}),onSuccess:n=>{l(``),gB(t,e,n.invalidates)},onError:e=>{n.notify({tone:`error`,title:`Reply send failed`,message:$(e)})}}),je=gt({mutationFn:e=>i.submitClarificationRound(e),onMutate:e=>(d(e),n.notify({tone:`loading`,title:`Submitting reply`})),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates),n.update(a,{tone:`success`,title:`Reply submitted`})},onError:(e,t,r)=>{d(e=>e===t?null:e),n.update(r,{tone:`error`,title:`Reply submit failed`,message:$(e)})}}),Me=gt({mutationFn:({approvalId:e,decisionId:t})=>i.decideApproval(e,{decision_id:t}),onMutate:()=>n.notify({tone:`loading`,title:`Sending decision`}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates),n.update(a,{tone:`success`,title:`Decision sent`})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Decision failed`,message:$(e)})}}),Ne=Object.fromEntries(Oe.map((e,t)=>[e,(ke[t]?.data??_B()).items.map(e=>si(e,{authorProfiles:fe,taskRetryState:a.stateFor}))])),Pe=GU({account:de?.session.account,presence:ae.data?.presence,messages:[...he.items,...ke.flatMap(e=>e.data?.items??[])]}),Fe=re.data??de?.snapshots.execution_status??CB(pe),Ie=wB(Fe),Le=TB(Fe,`scratchpad_refresh`),Re=TB(Fe,`scratchpad_refresh`,`foreground`),ze=TB(Fe,`task_compile`,`foreground`),Be=TB(Fe,`project_context_bootstrap`,`foreground`),Ve=f?.kind===`activity`?f.activityRef:void 0,He=f?.kind===`activity`?f.workflowRef:void 0;(0,I.useEffect)(()=>{if(f===null)return;if(Se.state===`submitted`){p(null);return}if(Se.state===`empty`){p(null);return}if(Fe.status===`pending`){De||p(null);return}let e=Fe.last_conclusion,t=He!==void 0&&e?.workflow_ref===He,r=Ve!==void 0&&e?.activity_ref===Ve;if(!(!t&&!r)){if(p(null),e?.kind===`failed`){n.notify({tone:`error`,title:`Scratchpad run failed`,message:e.summary});return}if(e?.kind===`needs_human`){n.notify({tone:`warning`,title:`Scratchpad needs input`,message:e.summary});return}}},[Fe.last_conclusion?.activity_ref,Fe.last_conclusion?.kind,Fe.last_conclusion?.summary,Fe.last_conclusion?.workflow_ref,Fe.status,Fe.summary,De,n,Se.state,f,Ve,He]);let Ue=Ve!==void 0&&Ie.some(e=>e.activity_ref===Ve),We=Ue&&Ie.some(e=>e.activity_ref===Ve&&e.workflow_kind===`scratchpad_refresh`)||f!==null&&Re,Ge=ze||Be||We||Ue||De,Ke=Le,qe=ue.isPending||Ge||f!==null&&Fe.status===`idle`,Je=Fe.status!==`idle`||qe||m!==null;(0,I.useEffect)(()=>{if(!Je)return;_(Date.now());let e=window.setInterval(()=>{_(Date.now())},1e3);return()=>{window.clearInterval(e)}},[Je]);let Ye=Ie.some(e=>e.activity_kind===`procedure`&&(e.lane??`foreground`)===`foreground`),Xe=(Ie.some(e=>e.activity_kind===`run`)||Ye)&&!Ke&&!qe,Ze=uC(Fe),Qe={key:`scratchpad-submit`,label:De?`Needs input`:We?`Compiling Worklist tasks`:Be?`Preparing project context`:ze?`Compiling Worklist tasks`:`Preparing Worklist`,title:De?`Needs input`:`Preparing Scratchpad for Worklist.`,tone:De?`pending`:`running`,target:De?{kind:`clarification`}:{kind:`scratchpad`}},$e=qe&&Ze.length===0?[Qe]:Ze,tt=oC(Fe,{now:g}),nt=Ie.find(e=>(e.lane??`foreground`)===`foreground`?e.workflow_kind===`project_context_bootstrap`&&Be||e.workflow_kind===`task_compile`&&ze||e.workflow_kind===`scratchpad_refresh`&&We?!0:Ve!==void 0&&e.activity_ref===Ve:!1),rt=(qe?sC({activeScratchpadRefreshFromSubmit:We,activeProjectContextBootstrap:Be,activeTaskCompile:ze,activeTaskCompileClarification:De,now:g,...nt?.started_at===void 0?{}:{startedAt:nt.started_at},...Fe.runtime===void 0?{}:{runtime:Fe.runtime}}):null)??tt;(0,I.useEffect)(()=>{rt!==null&&(T.current=rt,h(null))},[rt]),(0,I.useEffect)(()=>{if(!Le||rt!==null)return;let e=T.current;if(e?.completionSource===void 0)return;let t=`hidden:${VU(e)}`;if(E.current===t)return;E.current=t;let n=cC(e,e.summary);h(n),T.current=null;let r=window.setTimeout(()=>{h(e=>e?.key===n.key?null:e)},zU);return()=>{window.clearTimeout(r)}},[rt,Le]),(0,I.useEffect)(()=>{if(rt!==null||Fe.status!==`idle`)return;let e=Fe.last_conclusion;if(e?.kind!==`completed`)return;let t=e.activity_ref??`${e.kind}:${e.task_id??`none`}:${e.occurred_at}`;if(E.current===t)return;let n=T.current;if(n===null)return;if(!lC(n,e)){T.current=null;return}E.current=t;let r=cC(n,e.summary);h(r);let i=window.setTimeout(()=>{h(e=>e?.key===r.key?null:e),T.current=null},zU);return()=>{window.clearTimeout(i)}},[rt,Fe.last_conclusion?.activity_ref,Fe.last_conclusion?.kind,Fe.last_conclusion?.occurred_at,Fe.last_conclusion?.summary,Fe.last_conclusion?.task_id,Fe.status]);let it=rt??m,at=m===null?null:{key:`completed`,label:`Completed`,tone:`done`,target:m.completionTarget??{kind:`scratchpad`}},ot=at===null?$e:[at,...$e],st=e=>{e.preventDefault();let t=o.trim();if(t!==``&&!ce.isPending){let e=w.current?.body===t?w.current:{body:t,commandId:Vt()};w.current=e,ce.mutate(e)}},ct=e=>{e.preventDefault();let t=c.trim();t!==``&&Ee!==void 0&&!Ae.isPending&&Ae.mutate({roundId:Ee,body:t})},lt=M&&me===void 0&&N.error!==null&&(S.kind!==`latest`||de?.snapshots.main_chat===void 0),ut=de===void 0&&A.error!==null||lt;return(0,I.useEffect)(()=>{x!==void 0&&y(x)},[x]),(0,L.jsx)(qw,{projectName:de?.workspace.project.display_name??`Workspace`,projectDescription:de?.workspace.project.description??``,members:Pe,messages:he.items.map(e=>si(e,{authorProfiles:fe,taskRetryState:a.stateFor,referenceAssetUrl:(e,t,n)=>i.viewerAssetUrl({path:e,variant:t,v:n})})),scratchpad:Ci(Se,he.items),executionProgress:it,activeApproval:fi(Te),activeClarification:ci(we),clarificationMessagesByRoundId:Ne,statusShortcuts:ot,unread:bB(Ce),artifactSignal:r.sidebarSignal,draft:o,roundDraft:c,sendPending:ce.isPending,focusMessageId:v,messageHistoryIdentity:ye,initialMessagePosition:be,hasOlderMessages:ge,hasNewerMessages:_e,loadingOlderMessages:N.isFetchingPreviousPage,loadingNewerMessages:N.isFetchingNextPage,historyConnectedToLatest:ve,submittedRoundId:u,referenceUploadPending:le.isPending,scratchpadSyncPending:Ke,scratchpadActionsDisabled:Xe,scratchpadSubmitPending:qe,roundSendPending:Ae.isPending,roundSubmitPending:je.isPending,approvalDecisionPending:Me.isPending,projectNameSaving:oe.isPending,projectDescriptionSaving:se.isPending,loading:de===void 0&&A.isLoading||xe,unavailable:ut,onDraftChange:e=>{w.current?.body!==e.trim()&&(w.current=null),s(e)},onMessageFocused:()=>y(null),onInitialMessagePositioned:()=>{S.kind===`start`&&N.isSuccess&&te!==void 0&&eV(te,e)},onLoadOlderMessages:()=>{N.fetchPreviousPage()},onLoadNewerMessages:()=>{N.fetchNextPage({cancelRefetch:!1})},onJumpToLatest:()=>k(),onUploadReferenceFile:e=>le.mutate(e),onOpenReferenceFile:t=>Q(EB(e,t)),onRoundDraftChange:l,onSendMessage:st,onSendRoundMessage:ct,onSubmitRound:()=>{Ee!==void 0&&je.mutate(Ee)},onDecideApproval:(e,t)=>Me.mutate({approvalId:e,decisionId:t}),onSubmitScratchpad:()=>ue.mutate(Se.updated_at),onUpdateProjectDisplayName:async e=>{await oe.mutateAsync(e)},onUpdateProjectDescription:async e=>{await se.mutateAsync(e)},onOpenProjectCenter:()=>Q(`/projects`),onOpenWorklist:()=>Q(OB(e)),onOpenWorklistTask:t=>Q(OB(e,t)),onRetryTask:(e,t)=>a.retry(e,t),onOpenReferences:()=>Q(EB(e)),onOpenArtifacts:()=>Q(DB(e)),onViewArtifactFeedback:(t,n)=>{let i=he.items.find(e=>e.id===t)?.refs?.artifact_feedback,a=i?.annotations[n];i===void 0||a===void 0||(r.requestFeedbackActivation({messageId:t,annotationIndex:n,previewGeneration:i.preview_generation,documentUrl:a.document_url,target:a.target}),Q(DB(e)))},onOpenSkills:()=>Q(MB(e)),onOpenTimeline:()=>Q(jB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t)})}function JU(e){return Yt(e)?Jt(e,`relay_session_invalid`)?`client_session`:`account_session`:null}function YU(e){return e===`client_session`?{title:`Workspace session expired`,message:`Open the project again from Project Center.`}:{title:`Sign in required`,message:`Sign in to Tutti before opening this workspace.`}}function XU(e){return e===`client_session`?`/projects`:`/`}function ZU({relayProjectRef:e,children:t}){let n=et(),r=rB(),i=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),a=(0,I.useRef)(void 0),o=(0,I.useRef)(null),s=R({queryKey:Z.bootstrap(e),queryFn:()=>i.getBootstrap(),staleTime:lB}),c=JU(s.error),l=c===null&&s.data?.workspace.capabilities.sse===!0;return a.current===void 0&&s.data!==void 0&&(a.current=s.data.event_cursor),(0,I.useEffect)(()=>{if(c===null)return;let t=`${e}:${c}`;o.current!==t&&(o.current=t,r.notify({tone:`warning`,...YU(c)}),Q(XU(c),{replace:!0}))},[c,r,e]),(0,I.useEffect)(()=>{if(!l)return;let t=i.connectEvents({...a.current===void 0?{}:{after:a.current},onReady:t=>{t.payload.replay.status===`missed`&&n.invalidateQueries({queryKey:Z.hostRoot(e)})},onInvalidate:t=>{gB(n,e,t)},onError:()=>void 0});return()=>t.close()},[i,n,e,l]),(0,L.jsxs)(nH,{relayProjectRef:e,hostClient:i,enabled:c===null&&s.isSuccess,feedbackEnabled:s.data?.workspace.capabilities.artifact_feedback===!0,children:[(0,L.jsx)(jr,{route:{kind:`workspace`,relayProjectRef:e},projectDisplayName:s.data?.workspace.project.display_name??null}),c===null?t:null]})}function QU({relayProjectRef:e}){let t=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),n=R({queryKey:Z.bootstrap(e),queryFn:()=>t.getBootstrap(),staleTime:lB}).data?.session.account.account_ref,r=n===void 0?null:`${n}:${e}`,[i,a]=(0,I.useState)({identity:null,pending:!1}),[o,s]=(0,I.useState)(!1),c=Kf();(0,I.useEffect)(()=>{n===void 0||r===null||i.identity===r||a({identity:r,pending:ZB(n,e).tour_pending})},[n,r,i.identity,e]);let l=t=>{tV(t,e),a({identity:r,pending:!1})};return(0,L.jsxs)(L.Fragment,{children:[c&&r!==null&&i.identity===r&&i.pending&&n!==void 0&&typeof document<`u`?(0,xl.createPortal)((0,L.jsx)($f,{onOpen:()=>{l(n),s(!0)},onDismiss:()=>l(n)}),document.body):null,(0,L.jsx)(ep,{assets:TC,open:o,onOpenChange:s})]})}var $U=`tutti.artifact-inspector`,eW=128,tW=128,nW=2048,rW=6,iW=240,aW=[`expanded`,`selected`,`checked`,`pressed`,`disabled`];function oW(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function sW(e,t){return Object.keys(e).every(e=>t.includes(e))}function cW(e,t,n=!1){return typeof e==`string`&&e.length<=t&&(n||e.length>0)}function lW(e){return{protocol:$U,version:1,channel_id:e.channelId,...e.requestId===void 0?{}:{request_id:e.requestId},type:e.type,payload:e.payload}}function uW(e){return oW(e)?e.protocol===`tutti.artifact-inspector`&&e.version===1&&cW(e.channel_id,eW)&&(e.request_id===void 0||cW(e.request_id,tW))&&cW(e.type,64)&&`payload`in e:!1}function dW(e){if(!cW(e,nW))return!1;try{return new URL(e,`https://artifact.invalid`).origin===`https://artifact.invalid`&&e.startsWith(`/`)}catch{return!1}}function fW(e,t){return e===void 0||cW(e,t)}function pW(e){return oW(e)&&sW(e,[`tag_name`,`role`,`accessible_name`])&&cW(e.tag_name,64)&&fW(e.role,64)&&fW(e.accessible_name,160)}function mW(e){if(!oW(e)||!Array.isArray(e.context)||e.context.length>3||!sW(e,[`element_kind`,`tag_name`,`role`,`accessible_name`,`text_excerpt`,`context`,`state`]))return!1;let t=e.state;return t!==void 0&&(!oW(t)||!sW(t,aW)||!Object.values(t).every(e=>typeof e==`boolean`))?!1:(e.element_kind===`control`||e.element_kind===`content`||e.element_kind===`container`)&&cW(e.tag_name,64)&&fW(e.role,64)&&fW(e.accessible_name,160)&&fW(e.text_excerpt,280)&&e.context.every(pW)}function hW(e){return oW(e)&&sW(e,[`id`,`test_id`])&&fW(e.id,128)&&fW(e.test_id,160)&&(e.id!==void 0||e.test_id!==void 0)}function gW(e){return!oW(e)||!sW(e,[`version`,`explicit_anchor`,`stable_attributes`,`semantic_path`,`selector_path`])||e.version!==1||!Array.isArray(e.semantic_path)||e.semantic_path.length>4||!Array.isArray(e.selector_path)||e.selector_path.length===0||e.selector_path.length>4?!1:fW(e.explicit_anchor,160)&&(e.stable_attributes===void 0||hW(e.stable_attributes))&&e.semantic_path.every(e=>oW(e)&&sW(e,[`role`,`accessible_name`])&&(e.role!==void 0||e.accessible_name!==void 0)&&fW(e.role,64)&&fW(e.accessible_name,160))&&e.selector_path.every(e=>oW(e)&&sW(e,[`root`,`selector`])&&(e.root===`document`||e.root===`open_shadow_root`)&&cW(e.selector,1024))}function _W(e){return!oW(e)||!sW(e,[`snapshot`,`anchor`,`fallback_context`])||!mW(e.snapshot)||!gW(e.anchor)?!1:e.fallback_context===void 0||oW(e.fallback_context)&&sW(e.fallback_context,[`snapshot`,`anchor`])&&mW(e.fallback_context.snapshot)&&gW(e.fallback_context.anchor)}function vW(e){return oW(e)&&Number.isInteger(e.candidate_index)&&Number(e.candidate_index)>=0&&Number(e.candidate_index)<rW&&mW(Object.fromEntries(Object.entries(e).filter(([e])=>e!==`candidate_index`)))}function yW(e){return!uW(e)||!oW(e.payload)?!1:e.type===`ready`?sW(e.payload,[`document_url`,`inspector_version`])&&dW(e.payload.document_url)&&e.payload.inspector_version===1:e.type===`candidates`?sW(e.payload,[`capture_id`,`recommended_index`,`items`])&&cW(e.payload.capture_id,tW)&&Number.isInteger(e.payload.recommended_index)&&Number(e.payload.recommended_index)>=0&&Array.isArray(e.payload.items)&&e.payload.items.length>0&&e.payload.items.length<=rW&&Number(e.payload.recommended_index)<e.payload.items.length&&e.payload.items.every(vW):e.type===`selection`?sW(e.payload,[`target`])&&_W(e.payload.target):e.type===`resolution`?sW(e.payload,[`status`])&&(e.payload.status===`exact`||e.payload.status===`context_only`||e.payload.status===`ambiguous`||e.payload.status===`missing`):e.type===`document_changed`?sW(e.payload,[`document_url`])&&dW(e.payload.document_url):e.type===`unavailable`?sW(e.payload,[`reason`])&&cW(e.payload.reason,iW):!1}var bW=5e3,xW=class extends Error{constructor(e){super(e),this.name=`ArtifactInspectorControllerError`}};function SW(e){let t;try{t=new URL(e)}catch{throw new xW(`Artifact preview origin is invalid`)}if(t.protocol!==`https:`&&t.protocol!==`http:`||t.origin!==e)throw new xW(`Artifact preview origin must be exact`);return t.origin}var CW=class{#e;#t;#n;#r;#i;#a;#o;#s;#c=null;#l=null;#u=!1;#d=!1;#f=0;#p=new Map;constructor(e){this.#e=e.iframe,this.#t=SW(e.targetOrigin),this.#n=e.onEvent,this.#r=e.requestTimeoutMs??bW,this.#i=e.createChannelId??(()=>crypto.randomUUID()),this.#a=e.createMessageChannel??(()=>new MessageChannel),this.#o=e.setTimeoutFn??window.setTimeout.bind(window),this.#s=e.clearTimeoutFn??window.clearTimeout.bind(window)}get ready(){return this.#u}connect(){if(this.#d)throw new xW(`Artifact inspector controller is disposed`);let e=this.#e.contentWindow;if(e===null)throw new xW(`Artifact preview is not mounted`);this.#_(`Artifact preview document changed`);let t=this.#i();if(t.length===0||t.length>128)throw new xW(`Artifact inspector channel is invalid`);let n=this.#a();this.#c=t,this.#l=n.port1,this.#l.addEventListener(`message`,this.#g),this.#l.start();try{e.postMessage(lW({channelId:t,type:`connect`,payload:{}}),this.#t,[n.port2])}catch(e){throw this.#_(`Artifact inspector connection failed`),e}}activate(){this.#m(`activate`,{})}deactivate(){this.#m(`deactivate`,{})}clearHighlight(){this.#m(`clear_highlight`,{})}confirmCandidate(e,t){return this.#h(`confirm_candidate`,{capture_id:e,candidate_index:t},`selection`).then(e=>{if(e.type!==`selection`)throw new xW(`Artifact inspector selection response is invalid`);return e.payload.target})}resolve(e){return this.#h(`resolve`,{target:e},`resolution`).then(e=>{if(e.type!==`resolution`)throw new xW(`Artifact inspector resolution response is invalid`);return e.payload.status})}dispose(){if(!this.#d){if(this.#l!==null)try{this.deactivate()}catch{}this.#d=!0,this.#_(`Artifact inspector controller was disposed`)}}#m(e,t){let n=this.#l,r=this.#c;if(this.#d||n===null||r===null||!this.#u)throw new xW(`Artifact inspector is not ready`);n.postMessage(lW({channelId:r,type:e,payload:t}))}#h(e,t,n){let r=this.#l,i=this.#c;if(this.#d||r===null||i===null||!this.#u)return Promise.reject(new xW(`Artifact inspector is not ready`));let a=`${i}:${++this.#f}`;return new Promise((o,s)=>{let c=this.#o(()=>{this.#p.delete(a),s(new xW(`Artifact inspector request timed out`))},this.#r);this.#p.set(a,{expectedType:n,resolve:o,reject:s,timeout:c}),r.postMessage(lW({channelId:i,requestId:a,type:e,payload:t}))})}#g=e=>{let t=e.data,n=this.#c;if(n===null||!yW(t)||t.channel_id!==n)return;t.type===`ready`&&(this.#u=!0);let r=t.request_id;if(r!==void 0){let e=this.#p.get(r);e!==void 0&&(t.type===`unavailable`?(this.#s(e.timeout),this.#p.delete(r),e.reject(new xW(t.payload.reason))):t.type===e.expectedType&&(this.#s(e.timeout),this.#p.delete(r),e.resolve(t)))}this.#n?.(t)};#_(e){this.#u=!1;for(let t of this.#p.values())this.#s(t.timeout),t.reject(new xW(e));this.#p.clear(),this.#l!==null&&(this.#l.removeEventListener(`message`,this.#g),this.#l.close()),this.#l=null,this.#c=null}},wW=4e3;function TW(e){if(e!==void 0)try{let t=new URL(e,window.location.href);return t.protocol===`https:`||t.protocol===`http:`?t.origin:void 0}catch{return}}function EW(e){return(e.summary?.length??0)+e.annotations.reduce((e,t)=>e+t.comment.length,0)}function DW(e){return new TextEncoder().encode(JSON.stringify(e)).byteLength}function OW({relayProjectRef:e}){let t=rH(),n=rB(),r=et(),i=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),a=(0,I.useMemo)(()=>dr(cB),[]),o=(0,I.useRef)(null),s=(0,I.useRef)(null),c=(0,I.useRef)(null),l=(0,I.useRef)(null),u=(0,I.useRef)(null),[d,f]=(0,I.useState)(void 0),[p,m]=(0,I.useState)(!1),[h,g]=(0,I.useState)(void 0),[_,v]=(0,I.useState)(void 0),[y,b]=(0,I.useState)(!1),[x,S]=(0,I.useState)(void 0),[C,w]=(0,I.useState)(void 0),[T,E]=(0,I.useState)(``),ee=R({queryKey:Z.bootstrap(e),queryFn:()=>i.getBootstrap(),staleTime:lB}),D=R({queryKey:Z.executionStatus(e),queryFn:()=>i.getExecutionStatus(),enabled:ee.isSuccess,staleTime:lB}),O=R({queryKey:Z.readState(e),queryFn:()=>i.getReadState(),enabled:ee.isSuccess,staleTime:lB}),k=ee.data,A=k?.generated_at??new Date(0).toISOString(),te=O.data??k?.snapshots.read_state,j=D.data??k?.snapshots.execution_status??CB(A),M=j.active_activity?.activity_kind===`run`||j.active_activities?.some(e=>e.activity_kind===`run`)===!0,N=t.artifact,P=N?.status===`declared`&&N.preview.status===`ready`&&N.preview.url!==void 0?N.preview.url:null,F=N?.status===`declared`?N.preview_generation:void 0,ne=R({queryKey:Z.artifactPreviewSession(e,P??`not-ready`),queryFn:()=>a.issueArtifactPreviewSession(e),enabled:P!==null,staleTime:1/0,retry:1,refetchInterval:e=>zV(e.state.data)}),re=ne.data,ie=re?.disposition.kind===`issued`?re.result?.bootstrap_url:void 0,ae=ne.error===null?RV(re):$(ne.error),oe=TW(ie);(0,I.useEffect)(()=>{f(ie)},[ie]);let se=(0,I.useCallback)(e=>{if(e.type===`ready`){m(!0),g(void 0),v(e.payload.document_url);return}if(e.type===`candidates`){g(void 0);let t=s.current;if(t===null){g(`Element selection is not ready.`);return}let n=e.payload.capture_id;u.current=n,t.confirmCandidate(n,e.payload.recommended_index).then(e=>{u.current===n&&(t.deactivate(),S(e),w(new Date().toISOString()),g(void 0))}).catch(e=>{u.current===n&&g($(e))}).finally(()=>{u.current===n&&(u.current=null)});return}if(e.type===`document_changed`){v(e.payload.document_url);return}e.type===`unavailable`&&g(e.payload.reason)},[]);(0,I.useEffect)(()=>{let e=o.current;if(e===null||oe===void 0)return;m(!1),g(void 0),v(void 0);let t=new CW({iframe:e,targetOrigin:oe,onEvent:se});s.current=t;try{t.connect()}catch(e){g($(e))}return()=>{t.dispose(),s.current===t&&(s.current=null)}},[se,oe]),(0,I.useEffect)(()=>{if(!t.feedbackEnabled||oe===void 0||p||P===null)return;let e=window.setTimeout(()=>{g(e=>e??`Element selection could not connect to this preview.`)},wW);return()=>window.clearTimeout(e)},[t.feedbackEnabled,p,oe,P]),(0,I.useEffect)(()=>{if(t.feedbackDraftStale){try{s.current?.deactivate(),s.current?.clearHighlight()}catch{}u.current=null,S(void 0),w(void 0)}},[t.feedbackDraftStale]);let ce=(0,I.useCallback)(()=>{m(!1),v(void 0);try{s.current?.connect()}catch(e){g($(e))}},[]),le=(0,I.useCallback)(()=>{g(void 0),u.current=null,S(void 0),w(void 0);try{s.current?.clearHighlight(),s.current?.activate()}catch(e){g($(e))}},[]),ue=(0,I.useCallback)(()=>{try{s.current?.deactivate(),s.current?.clearHighlight()}catch{}b(!1),u.current=null,S(void 0),w(void 0),E(``)},[]),de=(0,I.useCallback)(()=>{u.current=null,S(void 0),w(void 0),E(``),g(void 0);try{s.current?.clearHighlight(),s.current?.activate()}catch(e){g($(e))}},[]),fe=(0,I.useCallback)(()=>{if(F===void 0||!p)return;let e=t.feedbackDraft;b(!0),!(e!==null&&e.previewGeneration!==F)&&(t.beginFeedbackDraft(F),le())},[t,p,F,le]),pe=t.feedbackDraft,me=pe===null?null:{expected_preview_generation:pe.previewGeneration,annotations:pe.annotations.map(e=>({document_url:e.document_url,comment:e.comment.trim(),target:e.target}))},he=me!==null&&EW(me)>6e3,ge=me!==null&&DW(me)>65536,_e=gt({mutationFn:e=>i.sendMainChatMessage({artifact_feedback:e.payload},{commandId:e.commandId}),onSuccess:i=>{if(i.disposition.kind===`created`){c.current=null,t.clearFeedbackDraft(),ue(),gB(r,e,i.invalidates),n.notify({tone:`success`,title:`Artifact feedback sent`});let a=i.result?.message.id;Q(a===void 0?en(e):kB(e,a));return}i.disposition.kind===`artifact_changed`?n.notify({tone:`warning`,title:`Artifact changed`,message:`Start a new feedback batch from the current preview.`}):i.disposition.kind===`artifact_unavailable`?n.notify({tone:`warning`,title:`Artifact unavailable`,message:`The feedback draft was kept in this tab.`}):n.notify({tone:`error`,title:`Feedback send could not be confirmed`}),r.invalidateQueries({queryKey:Z.artifacts(e)})},onError:e=>{n.notify({tone:`error`,title:`Artifact feedback send failed`,message:$(e)})}}),ve=(0,I.useCallback)(()=>{if(me===null||me.annotations.length===0||t.feedbackDraftStale||he||ge||_e.isPending)return;let e=JSON.stringify(me),n=c.current?.serialized===e?c.current:{commandId:Vt(),payload:me,serialized:e};c.current=n,_e.mutate(n)},[t.feedbackDraftStale,me,ge,he,_e]);(0,I.useEffect)(()=>{let e=t.pendingActivation;if(e===null){l.current=null;return}let r=`${e.messageId}:${e.annotationIndex}`;if(F===void 0||N?.status!==`declared`||N.preview.status!==`ready`||e.previewGeneration!==F){n.notify({tone:`warning`,title:`Artifact feedback is from an earlier preview`}),t.clearFeedbackActivation();return}if(!p||oe===void 0||_===void 0){h!==void 0&&(n.notify({tone:`warning`,title:`Artifact element could not be located`,message:h}),t.clearFeedbackActivation());return}if(_!==e.documentUrl){let t=new URL(e.documentUrl,oe).toString();d!==t&&(m(!1),f(t));return}let i=s.current;i===null||l.current===r||(l.current=r,i.resolve(e.target).then(e=>{e===`exact`?n.notify({tone:`success`,title:`Artifact element highlighted`}):e===`context_only`?n.notify({tone:`warning`,title:`Only the surrounding context is still visible`}):e===`ambiguous`?n.notify({tone:`warning`,title:`The element is no longer unique in this preview`}):n.notify({tone:`warning`,title:`The element is not currently visible`})}).catch(e=>{n.notify({tone:`warning`,title:`Artifact element could not be located`,message:$(e)})}).finally(()=>{l.current=null,t.clearFeedbackActivation()}))},[N,t,p,_,F,d,h,oe,n]);let ye=d??ie,be=$r(N,{...ye===void 0?{}:{previewUrl:ye},pending:P!==null&&ye===void 0&&ae===void 0,...ae===void 0?{}:{errorMessage:ae}},{runActive:M}),xe=N!==void 0,Se=!xe&&(ee.error!==null||t.unavailable),Ce=t.feedbackEnabled,we=Ce&&p&&be.status===`declared`&&be.previewStatus===`ready`,Te=pe?.annotations.map(e=>({key:e.key,documentUrl:e.document_url,comment:e.comment,time:Lr(e.createdAt),target:Qr(e.target.snapshot)}))??[],Ee=t.feedbackDraftStale?`Start over from the current Artifact before submitting.`:Te.length===0?`Add at least one comment before submitting.`:he?`Shorten these comments to 6,000 characters before submitting.`:ge?`Remove some comments before submitting this batch.`:void 0,De=Ee===void 0&&!_e.isPending;return(0,L.jsx)(Jw,{statusShortcuts:uC(j),unread:bB(te),state:be,loading:!xe&&(ee.isLoading||t.loading),unavailable:Se,iframeRef:o,onPreviewLoad:ce,...k?.session.account===void 0?{}:{feedback:{supported:Ce,ready:we,open:y,canSubmit:De,submitPending:_e.isPending,...Ee===void 0?{}:{submitDisabledReason:Ee},...h===void 0?{}:{unavailableReason:h},author:{displayName:k.session.account.display_name,avatar:k.session.account.avatar},onOpen:fe,onSubmit:ve,rail:{comment:T,annotations:Te,...x===void 0?{}:{selectedTarget:Qr(x.snapshot)},...C===void 0?{}:{selectedTime:Lr(C)},stale:t.feedbackDraftStale,...h===void 0?{}:{bridgeUnavailableReason:h},...he||ge?{sendDisabledReason:he?`Shorten these comments to 6,000 characters before submitting.`:`Remove some comments before submitting this batch.`}:{},onCommentChange:e=>{c.current=null,E(e)},onCancelSelection:de,onAddAnnotation:()=>{if(!(x===void 0||_===void 0||T.trim().length===0)){c.current=null,t.addFeedbackAnnotation({document_url:_,comment:T.trim(),target:x,createdAt:C??new Date().toISOString()});try{s.current?.activate()}catch(e){g($(e))}S(void 0),w(void 0),E(``)}},onRemoveAnnotation:e=>{c.current=null,t.removeFeedbackAnnotation(e)},onReset:()=>{c.current=null,t.clearFeedbackDraft(),F!==void 0&&(t.beginFeedbackDraft(F),le())}}}},onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenWorklist:()=>Q(OB(e)),onOpenReferences:()=>Q(EB(e)),onOpenSkills:()=>Q(MB(e)),onOpenTimeline:()=>Q(jB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t)})}function kW({relayProjectRef:e}){let t=et(),n=rB(),r=rH(),i=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),a=new URL(uB(),window.location.origin).searchParams.get(`path`)??void 0,[o,s]=(0,I.useState)(a),[c,l]=(0,I.useState)(`time`),u=R({queryKey:Z.bootstrap(e),queryFn:()=>i.getBootstrap(),staleTime:lB}),d=R({queryKey:Z.referenceFiles(e),queryFn:()=>i.getReferenceFiles({limit:200}),enabled:u.isSuccess,staleTime:lB}),f=R({queryKey:Z.messagesWindow(e,200),queryFn:()=>i.getMessages({limit:200}),enabled:u.isSuccess,staleTime:lB}),p=R({queryKey:Z.executionStatus(e),queryFn:()=>i.getExecutionStatus(),enabled:u.isSuccess,staleTime:lB}),m=R({queryKey:Z.readState(e),queryFn:()=>i.getReadState(),enabled:u.isSuccess,staleTime:lB}),h=d.data?.items??[],g=(0,I.useMemo)(()=>{let e=new Map;for(let t of f.data?.items??[]){let n=t.refs?.reference_file;if(n===void 0)continue;let r=e.get(n.path);(r===void 0||t.created_at>r)&&e.set(n.path,t.created_at)}return e},[f.data?.items]),_=(0,I.useMemo)(()=>{let e=(e,t)=>e.name.localeCompare(t.name),t=(t,n)=>{let r=g.get(t.path)??``,i=g.get(n.path)??``;return r===i?e(t,n):i.localeCompare(r)},n=(e,n)=>{let r=e.extension??e.media_type??`file`,i=n.extension??n.media_type??`file`;return r===i?t(e,n):r.localeCompare(i)},r=[...h.filter(e=>e.category===`image`)].sort(t),i=[...h.filter(e=>e.category!==`image`)].sort(c===`time`?t:n);return[...r,...i]},[c,h,g]);(0,I.useEffect)(()=>{if(_.length===0){o!==void 0&&s(void 0);return}if(a!==void 0&&_.some(e=>e.path===a)){o!==a&&s(a);return}(o===void 0||!_.some(e=>e.path===o))&&s(_[0]?.path)},[_,a,o]);let v=h.find(e=>e.path===o),y=v?.category===`image`,b=v?.text_read.can_read===!0,x=R({queryKey:o===void 0?Z.viewerFile(e,`none`):Z.viewerFile(e,o),queryFn:()=>i.getViewerFile({path:o,max_bytes:204800}),enabled:u.isSuccess&&o!==void 0&&b&&!y,staleTime:lB}),S=gt({mutationFn:async t=>{let n=await VB({relayProjectRef:e,purpose:`reference_file`,file:t});return i.uploadReferenceFile(n)},onMutate:e=>n.notify({tone:`loading`,title:`Uploading reference`,message:e.name}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates),r.result?.file.path!==void 0&&(s(r.result.file.path),Q(EB(e,r.result.file.path))),n.update(a,{tone:`success`,title:`Reference uploaded`,message:r.result?.file.name??i.name})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Reference upload failed`,message:$(e)||t.name})}}),C=u.data,w=C?.generated_at??new Date(0).toISOString(),T=m.data??C?.snapshots.read_state;xB({enabled:u.isSuccess,hostClient:i,relayProjectRef:e,readState:T,scope:`references`});let E=p.data??C?.snapshots.execution_status??CB(w),ee=_.map(e=>sV(e,{selected:e.path===o,...e.category!==`image`||e.blob_oid===void 0?{}:{thumbnailUrl:i.viewerAssetUrl({path:e.path,variant:`thumbnail`,v:e.blob_oid})}})),D=x.data?.content,O=(()=>{if(v===void 0)return{title:h.length===0?`No reference files`:`No file selected`,unavailableReason:h.length===0?`No reference files`:`Select a reference file`};if(D?.kind===`text`)return{title:v.name,meta:IB(v.size_bytes),...rV(v),content:D.text};if(y&&o!==void 0)return v.blob_oid===void 0?{title:v.name,meta:IB(v.size_bytes),...rV(v),unavailableReason:`Image version unavailable`}:{title:v.name,meta:IB(v.size_bytes),...rV(v),imageUrl:i.viewerAssetUrl({path:o,variant:`preview`,v:v.blob_oid})};let e=b&&x.isLoading?`Loading`:RB(D)??(b?void 0:LB(v.text_read.blocked_reason));return e===void 0?{title:v.name,meta:IB(v.size_bytes),...rV(v)}:{title:v.name,meta:IB(v.size_bytes),...rV(v),unavailableReason:e}})(),k=d.data!==void 0,A=!k&&(u.error!==null||d.error!==null);return(0,L.jsx)(Yw,{statusShortcuts:uC(E),unread:bB(T),artifactSignal:r.sidebarSignal,files:ee,detail:O,uploadPending:S.isPending,fileSortMode:c,loading:!k&&(u.isLoading||d.isLoading),unavailable:A,onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenWorklist:()=>Q(OB(e)),onOpenArtifacts:()=>Q(DB(e)),onOpenSkills:()=>Q(MB(e)),onOpenTimeline:()=>Q(jB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t),onSelectFile:t=>{s(t),Q(EB(e,t))},onUploadFile:e=>S.mutate(e),onFileSortModeChange:l})}var AW={provider_auth_invalid:`The existing API key was rejected.`,provider_quota_or_billing_required:`Quota or billing needs attention.`,provider_rate_limited:`The provider rate limit was reached. Try again shortly.`,provider_model_unavailable:`That model is unavailable for this provider.`,provider_network_error:`The provider could not be reached.`};function jW({relayProjectRef:e}){let t=et(),n=rB(),r=rH(),[i,a]=(0,I.useState)([]),o=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),s=R({queryKey:Z.bootstrap(e),queryFn:()=>o.getBootstrap()}),c=R({queryKey:Z.hostWorkspace(e),queryFn:()=>o.getWorkspace(),enabled:s.isSuccess}),l=R({queryKey:Z.hostSession(e),queryFn:()=>o.getSession(),enabled:s.isSuccess}),u=R({queryKey:Z.providerConfig(e),queryFn:()=>o.getProviderConfig(),enabled:s.isSuccess}),d=R({queryKey:Z.executionStatus(e),queryFn:()=>o.getExecutionStatus(),enabled:s.isSuccess}),f=R({queryKey:Z.readState(e),queryFn:()=>o.getReadState(),enabled:s.isSuccess}),p=R({queryKey:Z.projectPresence(e),queryFn:()=>wr(cB,e),enabled:s.isSuccess,staleTime:lB,refetchInterval:6e4});hB(s.isSuccess);let m=gt({mutationFn:e=>o.updateProjectDisplayName({display_name:e}),onMutate:e=>n.notify({tone:`loading`,title:`Saving project name`,message:e}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates??[{kind:`workspace`},{kind:`bootstrap`}]),n.update(a,{tone:`success`,title:`Project name saved`,message:i})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Project name save failed`,message:`${t}: ${$(e)}`})}}),h=gt({mutationFn:e=>o.updateProjectDescription({description:e}),onMutate:e=>n.notify({tone:`loading`,title:`Saving project description`,...e.length===0?{}:{message:e}}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates??[{kind:`workspace`},{kind:`bootstrap`}]),n.update(a,{tone:`success`,title:`Project description saved`,...i.length===0?{}:{message:i}})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Project description save failed`,message:$(e)})}}),g=gt({mutationFn:()=>o.getProviderModels(),onSuccess:e=>{if(e.status===`available`){a(e.models);return}a([]),n.notify({tone:`warning`,title:`Model list unavailable`,message:`You can still enter a model name manually.`})},onError:e=>{a([]),n.notify({tone:`warning`,title:`Model list unavailable`,message:`${$(e)} You can still enter a model name manually.`})}}),_=gt({mutationFn:e=>o.updateProviderDefaultModel({default_model:e.defaultModel,expected_default_model:e.expectedDefaultModel}),onMutate:e=>n.notify({tone:`loading`,title:`Validating model`,message:e.defaultModel}),onSuccess:(r,i,a)=>{switch(gB(t,e,r.invalidates),r.disposition.kind){case`updated`:case`unchanged`:n.update(a,{tone:`success`,title:r.disposition.kind===`updated`?`Model saved`:`Model unchanged`,message:i.defaultModel});break;case`stale_default_model`:n.update(a,{tone:`warning`,title:`Model changed elsewhere`,message:`The current model is ${r.disposition.current_default_model}. Review and save again.`});break;case`validation_failed`:n.update(a,{tone:`error`,title:`Model validation failed`,message:AW[r.disposition.reason]});break;case`provider_unavailable`:n.update(a,{tone:`error`,title:`Provider unavailable`,message:`The project provider configuration is not ready.`});break;case`interrupted`:n.update(a,{tone:`warning`,title:`Model update interrupted`,message:`Try saving again.`});break}},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Model update failed`,message:$(e)})}}),v=s.data,y=v?.generated_at??new Date(0).toISOString(),b=f.data??v?.snapshots.read_state,x=c.data??v?.workspace,S=l.data??v?.session,C=u.data??v?.provider_config,w=d.data??v?.snapshots.execution_status??CB(y),T=x===void 0||S===void 0||C===void 0?void 0:Wi(x,S,C,p.data?.presence),E=T===void 0&&(s.error!==null||c.error!==null||l.error!==null||u.error!==null),ee=x?.relay.join_url,D=ee===void 0||x===void 0||S===void 0?void 0:jH({inviterName:S.account.display_name,projectName:x.project.display_name,joinUrl:ee}),O=S?.membership.label===`owner`&&x?.capabilities.provider_model_update===!0&&C?.status===`configured`,k=C?.status===`configured`?C.default_model:void 0,A=k===void 0||i.includes(k)?i:[k,...i];return(0,L.jsx)(Hz,{...T===void 0?{}:{settings:T},statusShortcuts:uC(w),unread:bB(b),artifactSignal:r.sidebarSignal,loading:T===void 0&&(s.isLoading||c.isLoading||l.isLoading||u.isLoading),unavailable:E,projectNameSaving:m.isPending,projectDescriptionSaving:h.isPending,providerModelOptions:A,providerModelEditable:O,providerModelDiscovering:g.isPending,providerModelSaving:_.isPending,onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenWorklist:()=>Q(OB(e)),onOpenReferences:()=>Q(EB(e)),onOpenArtifacts:()=>Q(DB(e)),onOpenSkills:()=>Q(MB(e)),onOpenTimeline:()=>Q(jB(e)),onActivateStatusShortcut:t=>PB(e,t),...D===void 0?{}:{onCopyJoinUrl:()=>{navigator.clipboard.writeText(D).then(()=>{n.notify({tone:`success`,title:`Invitation copied`})}).catch(()=>{n.notify({tone:`error`,title:`Copy failed`,message:`The browser could not copy the invite link.`})})}},onUpdateProjectDisplayName:async e=>{await m.mutateAsync(e)},onUpdateProjectDescription:async e=>{await h.mutateAsync(e)},...O?{onDiscoverProviderModels:async()=>{a([]),await g.mutateAsync()},onUpdateProviderDefaultModel:async(e,t)=>{try{let n=await _.mutateAsync({defaultModel:e,expectedDefaultModel:t});return n.disposition.kind===`updated`||n.disposition.kind===`unchanged`?{kind:`saved`}:n.disposition.kind===`stale_default_model`?{kind:`stale`,currentValue:n.disposition.current_default_model}:{kind:`failed`}}catch{return{kind:`failed`}}}}:{}})}function MW({relayProjectRef:e}){let t=et(),n=rB(),r=rH(),i=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),a=new URL(uB(),window.location.origin).searchParams.get(`skill`)??void 0,[o,s]=(0,I.useState)(a),c=R({queryKey:Z.bootstrap(e),queryFn:()=>i.getBootstrap(),staleTime:lB}),l=R({queryKey:Z.skills(e),queryFn:()=>i.getSkills(),enabled:c.isSuccess,staleTime:lB}),u=R({queryKey:Z.executionStatus(e),queryFn:()=>i.getExecutionStatus(),enabled:c.isSuccess,staleTime:lB}),d=R({queryKey:Z.readState(e),queryFn:()=>i.getReadState(),enabled:c.isSuccess,staleTime:lB}),f=l.data?.items??[];(0,I.useEffect)(()=>{if(f.length===0){o!==void 0&&s(void 0);return}if(a!==void 0&&f.some(e=>e.name===a)){o!==a&&s(a);return}(o===void 0||!f.some(e=>e.name===o))&&s(f[0]?.name)},[a,o,f]);let p=R({queryKey:o===void 0?Z.skillDetail(e,`none`):Z.skillDetail(e,o),queryFn:()=>i.getSkill(o),enabled:c.isSuccess&&o!==void 0,staleTime:lB}),m=gt({mutationFn:async t=>{let n=await VB({relayProjectRef:e,purpose:`skill_zip`,file:t});return i.importSkillZip(n)},onMutate:e=>n.notify({tone:`loading`,title:`Uploading skill`,message:e.name}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates);let o=r.result?.skill.name??(r.disposition.kind===`created`||r.disposition.kind===`replaced`?r.disposition.skill_name:void 0);o!==void 0&&(s(o),Q(MB(e,o))),n.update(a,{tone:`success`,title:`Skill installed`,message:o??i.name})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Skill upload failed`,message:$(e)})}}),h=gt({mutationFn:e=>i.deleteSkill({skill_name:e}),onMutate:e=>n.notify({tone:`loading`,title:`Deleting skill`,message:e}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates);let c=r.disposition.kind===`deleted`||r.disposition.kind===`not_found`?r.disposition.skill_name:o,l=f.find(e=>e.name!==c);s(l?.name),Q(l===void 0?MB(e):MB(e,l.name)),n.update(a,{tone:`success`,title:`Skill deleted`,message:c??i})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Skill delete failed`,message:`${t}: ${$(e)}`})}}),g=c.data,_=g?.generated_at??new Date(0).toISOString(),v=d.data??g?.snapshots.read_state;xB({enabled:c.isSuccess,hostClient:i,relayProjectRef:e,readState:v,scope:`skills`});let y=u.data??g?.snapshots.execution_status??CB(_),b=f.map(e=>({name:e.name,description:e.description,...e.short_description===void 0?{}:{shortDescription:e.short_description},selected:e.name===o,...e.updated_at===void 0?{}:{updatedLabel:`Updated ${Nr(e.updated_at)}`}})),x=f.find(e=>e.name===o),S=(()=>{let e=p.data?.skill;return e===void 0?o===void 0?{title:f.length===0?`No skills`:`No skill selected`,unavailableReason:f.length===0?`No user skills`:`Select a skill`}:{title:x?.name??o,...x?.description===void 0?{}:{description:x.description},unavailableReason:p.isLoading?`Loading`:`Skill unavailable`}:{title:e.name,description:e.description,...e.updated_at===void 0?{}:{updatedLabel:`Updated ${Nr(e.updated_at)}`},skillMd:e.skill_md}})(),C=l.data!==void 0,w=!C&&(c.error!==null||l.error!==null);return(0,L.jsx)(Wz,{statusShortcuts:uC(y),unread:bB(v),artifactSignal:r.sidebarSignal,skills:b,detail:S,uploadPending:m.isPending,deletePending:h.isPending,loading:!C&&(c.isLoading||l.isLoading),unavailable:w,onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenWorklist:()=>Q(OB(e)),onOpenReferences:()=>Q(EB(e)),onOpenArtifacts:()=>Q(DB(e)),onOpenTimeline:()=>Q(jB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t),onSelectSkill:t=>{s(t),Q(MB(e,t))},onUploadSkill:e=>m.mutate(e),onDeleteSkill:e=>h.mutate(e)})}function NW({relayProjectRef:e}){let t=rH(),n=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),r=R({queryKey:Z.bootstrap(e),queryFn:()=>n.getBootstrap(),staleTime:lB}),i=R({queryKey:Z.projectTimeline(e),queryFn:()=>n.getProjectTimeline(),enabled:r.isSuccess,staleTime:lB}),a=R({queryKey:Z.executionStatus(e),queryFn:()=>n.getExecutionStatus(),enabled:r.isSuccess,staleTime:lB}),o=R({queryKey:Z.readState(e),queryFn:()=>n.getReadState(),enabled:r.isSuccess,staleTime:lB}),s=r.data,c=s?.generated_at??new Date(0).toISOString(),l=o.data??s?.snapshots.read_state,u=a.data??s?.snapshots.execution_status??CB(c),d=i.data===void 0&&(r.error!==null||i.error!==null);return(0,L.jsx)(Gz,{...i.data===void 0?{}:{timeline:ES(i.data,{onOpenWorklistTask:t=>Q(OB(e,t)),onOpenChatMessage:t=>Q(kB(e,t)),onOpenReferenceFile:t=>Q(EB(e,t))})},statusShortcuts:uC(u),unread:bB(l),artifactSignal:t.sidebarSignal,loading:i.data===void 0&&(r.isLoading||i.isLoading),unavailable:d,onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenWorklist:()=>Q(OB(e)),onOpenReferences:()=>Q(EB(e)),onOpenArtifacts:()=>Q(DB(e)),onOpenSkills:()=>Q(MB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t)})}function PW({relayProjectRef:e}){let t=rH(),n=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),r=RU({hostClient:n,relayProjectRef:e}),i=new URL(uB(),window.location.origin).searchParams.get(`task`)??void 0,[a,o]=(0,I.useState)(void 0),s=R({queryKey:Z.bootstrap(e),queryFn:()=>n.getBootstrap()}),c=R({queryKey:Z.worklist(e),queryFn:()=>n.getWorklist(),enabled:s.isSuccess}),l=R({queryKey:Z.executionStatus(e),queryFn:()=>n.getExecutionStatus(),enabled:s.isSuccess}),u=R({queryKey:Z.readState(e),queryFn:()=>n.getReadState(),enabled:s.isSuccess}),d=s.data,f=d?.generated_at??new Date(0).toISOString(),p=c.data??d?.snapshots.worklist??vB(),m=u.data??d?.snapshots.read_state;xB({enabled:s.isSuccess,hostClient:n,relayProjectRef:e,readState:m,scope:`worklist`});let h=(0,I.useMemo)(()=>Ti(p),[p]),g=i!==void 0&&h.some(e=>e.id===i),_=i!==void 0&&!g?i:void 0;(0,I.useEffect)(()=>{if(i!==void 0){o(g?e=>e===i?e:i:void 0);return}if(h.length===0){o(void 0);return}(a===void 0||!h.some(e=>e.id===a))&&o(FB(p,void 0))},[g,i,a,h,p]);let v=R({queryKey:a===void 0?Z.taskDetail(e,`none`):Z.taskDetail(e,a),queryFn:()=>n.getTaskDetail(a),enabled:s.isSuccess&&a!==void 0}),y=R({queryKey:a===void 0?Z.taskRunResults(e,`none`):Z.taskRunResults(e,a),queryFn:()=>n.getTaskRunResults(a,{limit:50}),enabled:s.isSuccess&&a!==void 0}),b=l.data??d?.snapshots.execution_status??CB(f),x=wi(p,a),S=Fi(v.data,y.data),C=v.data?.detail.result.latest_run_result_id,w=v.data?.detail.result.retry_action,T=S===void 0||C===void 0||w===void 0?S:{...S,retryAction:{state:r.stateFor(S.taskId,C,w)??w,onRetry:()=>r.retry(S.taskId,C)}},E=c.data!==void 0||d?.snapshots.worklist!==void 0,ee=!E&&(s.error!==null||c.error!==null);return(0,L.jsx)(Kz,{statusShortcuts:uC(b),unread:bB(m),artifactSignal:t.sidebarSignal,modules:x.modules,taskCount:x.taskCount,...T===void 0?{}:{detail:T},..._===void 0?{}:{missingTaskId:_},loading:!E&&(s.isLoading||c.isLoading),unavailable:ee,onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenReferences:()=>Q(EB(e)),onOpenArtifacts:()=>Q(DB(e)),onOpenSkills:()=>Q(MB(e)),onOpenTimeline:()=>Q(jB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t),onSelectTask:t=>{o(t),Q(OB(e,t))}})}var FW=`is-scrollbar-active`,IW=1e3;function LW(e,t){let n=e.target;return n instanceof Element?n:t.scrollingElement??t.documentElement}function RW(e){let t=new Map,n=e=>{let n=t.get(e);n!==void 0&&(window.clearTimeout(n),t.delete(e)),e.classList.remove(FW)},r=e=>{let r=t.get(e);r!==void 0&&window.clearTimeout(r),e.classList.add(FW);let i=window.setTimeout(()=>n(e),IW);t.set(e,i)},i=t=>{r(LW(t,e))};return e.addEventListener(`scroll`,i,{capture:!0,passive:!0}),()=>{e.removeEventListener(`scroll`,i,!0);for(let[e,n]of t)window.clearTimeout(n),e.classList.remove(FW);t.clear()}}var zW=`--tutti-viewport-height`,BW=`--tutti-viewport-offset-top`;function VW(e,t=window){let n=e.documentElement,r=t.visualViewport,i=()=>{let e=r?.height??t.innerHeight,i=r?.offsetTop??0;n.style.setProperty(zW,`${Math.max(0,e)}px`),n.style.setProperty(BW,`${Math.max(0,i)}px`)};return i(),t.addEventListener(`resize`,i),t.addEventListener(`orientationchange`,i),r?.addEventListener(`resize`,i),r?.addEventListener(`scroll`,i),()=>{t.removeEventListener(`resize`,i),t.removeEventListener(`orientationchange`,i),r?.removeEventListener(`resize`,i),r?.removeEventListener(`scroll`,i),n.style.removeProperty(zW),n.style.removeProperty(BW)}}var HW=new Xe({defaultOptions:{queries:{retry:!1,refetchOnWindowFocus:!1}}});function UW(){let e=fB();if(e.kind===`local_console`)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:e}),(0,L.jsx)(LH,{})]});if(e.kind===`local_console_account_gate`)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:e}),(0,L.jsx)(BH,{})]});if(e.kind===`home`)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:e}),(0,L.jsx)(hH,{})]});if(e.kind===`join`)return(0,L.jsx)(nV,{joinToken:e.joinToken});if(e.kind===`feishu_project`)return(0,L.jsx)(pH,{relayProjectRef:e.relayProjectRef});if(e.kind===`legacy_feishu_project`)return(0,L.jsx)(iH,{relayProjectRef:e.relayProjectRef});if(e.kind===`setup`)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:e}),(0,L.jsx)(jU,{})]});if(e.kind===`project_open`)return(0,L.jsx)(gU,{requestedOpenProjectRef:e.relayProjectRef});if(e.kind===`workspace`||e.kind===`worklist`||e.kind===`references`||e.kind===`artifacts`||e.kind===`skills`||e.kind===`timeline`||e.kind===`settings`){let t=e.kind===`workspace`?(0,L.jsx)(qU,{relayProjectRef:e.relayProjectRef}):e.kind===`worklist`?(0,L.jsx)(PW,{relayProjectRef:e.relayProjectRef}):e.kind===`references`?(0,L.jsx)(kW,{relayProjectRef:e.relayProjectRef}):e.kind===`artifacts`?(0,L.jsx)(OW,{relayProjectRef:e.relayProjectRef}):e.kind===`skills`?(0,L.jsx)(MW,{relayProjectRef:e.relayProjectRef}):e.kind===`timeline`?(0,L.jsx)(NW,{relayProjectRef:e.relayProjectRef}):(0,L.jsx)(jW,{relayProjectRef:e.relayProjectRef});return(0,L.jsxs)(ZU,{relayProjectRef:e.relayProjectRef,children:[t,(0,L.jsx)(QU,{relayProjectRef:e.relayProjectRef})]},e.relayProjectRef)}return(0,L.jsx)(gU,{})}function WW(){return(0,I.useEffect)(()=>{let e=RW(document),t=VW(document);return()=>{e(),t()}},[]),(0,L.jsx)(tt,{client:HW,children:(0,L.jsx)(nB,{children:(0,L.jsx)(UW,{})})})}function GW(e){let t=document.querySelector(`link[rel="icon"]`),n=t??document.createElement(`link`);n.rel=`icon`,n.type=`image/png`,n.sizes=`1204x1204`,n.href=e,t===null&&document.head.append(n)}GW(SC),(0,vt.createRoot)(document.getElementById(`root`)).render((0,L.jsx)(I.StrictMode,{children:(0,L.jsx)(WW,{})}));export{B as C,aa as S,Oa as _,kf as a,ca as b,zf as c,Za as d,Xa as f,Na as g,Fa as h,If as i,Nf as l,La as m,xf as n,jf as o,qa as p,Rf as r,Lf as s,ax as t,io as u,Da as v,Qe as w,oa as x,ya as y};
69
+ `){n.preventDefault(),y.current=null,b.current=null,ce(`${e.slice(0,t.start)}${e.slice(t.start+1)}`,t.start);return}let r=Ob(e).find(r=>n.key===`Backspace`?t.start>r.start&&t.start<=r.end||t.start===r.end+1&&e[r.end]===` `:t.start>=r.start&&t.start<r.end);if(r!==void 0){n.preventDefault(),y.current=null,b.current=null;let i=n.key===`Backspace`&&t.start===r.end+1&&e[r.end]===` `?r.end+1:r.end;ce(`${e.slice(0,r.start)}${e.slice(i)}`,r.start);return}if(n.key===`Backspace`&&t.start>0){n.preventDefault(),y.current=null,b.current=null,ce(`${e.slice(0,t.start-1)}${e.slice(t.start)}`,t.start-1);return}if(n.key===`Delete`&&t.start<e.length){n.preventDefault(),y.current=null,b.current=null,ce(`${e.slice(0,t.start)}${e.slice(t.start+1)}`,t.start);return}}if(t&&n.key===`Enter`){if(n.preventDefault(),r&&!n.shiftKey&&!n.metaKey){i?.closest(`form`)?.requestSubmit();return}ue();return}if(!t&&n.key===`Enter`){n.preventDefault(),i?.closest(`form`)?.requestSubmit();return}f?.(n)},ge=t=>{if(v.current||Nb(t))return;let n=h.current;if(n===null)return;let r=F(n),i=ie(n).end,a=de(r,i),o=a?.nextValue??r,s=a?.nextCaret??i,c=Pb(t);if(c.inputType===`insertText`&&Fb(c.data)){let t=s-c.data.length,n=`${o.slice(0,t)}${o.slice(s)}`;y.current=t>=0&&n===e?{data:c.data,start:t,end:s,valueBefore:n,createdAt:Date.now()}:null}else y.current=null;let l=fe(o,s,void 0,!0);ce(l.nextValue,l.nextCaret)},_e=e=>{if(v.current||Nb(e))return;let t=Pb(e);if(t.inputType===`insertParagraph`||t.inputType===`insertLineBreak`){ue()&&e.preventDefault();return}y.current=null},ve=t=>{t.preventDefault();let n=t.clipboardData.getData(`text/plain`),r=h.current;if(r===null)return;let i=ie(r);ce(`${e.slice(0,i.start)}${n}${e.slice(i.end)}`,i.start+n.length)},ye=()=>{let e=h.current;e===null||!ne(e)||E(ie(e).end)},be=V(`mention-input-editor`,t?`is-multiline`:`is-singleline`,c),xe=te?(0,L.jsx)(`div`,{className:`mention-menu`,id:S,role:`listbox`,"aria-label":`Mention people`,children:A.map((e,t)=>(0,L.jsx)(`button`,{className:V(`mention-option`,t===j?`is-selected`:void 0),type:`button`,role:`option`,id:`${S}-option-${t}`,"aria-selected":t===j,onMouseEnter:()=>D(t),onMouseDown:t=>{t.preventDefault(),se(e)},children:(0,L.jsxs)(`span`,{className:`mention-option-text`,children:[`@`,e.handle]})},e.id))}):null,Se=a?.current;return(0,L.jsxs)(`span`,{className:V(`mention-input`,t?`is-multiline`:void 0),children:[(0,L.jsx)(`div`,{className:be,contentEditable:!N,role:`textbox`,"aria-label":P,"aria-multiline":t,"aria-disabled":N,"aria-expanded":te,...te?{"aria-controls":S}:{},...M===void 0?{}:{"aria-activedescendant":M},"data-placeholder":m.placeholder,"data-max-rows":n,onBlur:e=>{w(!1),l?.(e)},onClick:e=>{ye(),u?.(e)},onFocus:e=>{w(!0),ye(),d?.(e)},onCompositionStart:()=>{v.current=!0;let e=h.current,t=y.current;if(y.current=null,e!==null&&t!==null&&Date.now()-t.createdAt<500&&F(e).slice(t.start,t.end)===t.data){b.current=t,_.current=null,E(t.start),s(t.valueBefore);let n=Db(t.valueBefore,null);Mb(e,n),x.current=Ab(n),ae(e,t.start)}else b.current=null},onCompositionEnd:e=>{v.current=!1;let t=Pb(e);me(t.data===null?{}:{compositionData:t.data})},onBeforeInput:_e,onInput:ge,onKeyDown:he,onKeyUp:e=>{!v.current&&!Nb(e)&&ye(),p?.(e)},onPaste:ve,ref:h,suppressContentEditableWarning:!0}),Se==null?xe:(0,xl.createPortal)(xe,Se)]})}function zb(e){return(0,L.jsx)(Na,{...e})}function Bb({avatar:e,author:t,time:n,children:r,system:i=!1,className:a,...o}){return(0,L.jsxs)(`article`,{className:V(`message`,i?`is-system`:void 0,a),...o,children:[(0,L.jsxs)(`div`,{className:`message-byline`,children:[e,(0,L.jsxs)(`div`,{className:`message-meta`,children:[(0,L.jsx)(`span`,{className:`message-author`,children:t}),n===void 0?null:(0,L.jsx)(`span`,{className:`message-time`,children:n})]})]}),(0,L.jsx)(`div`,{className:`message-content`,children:(0,L.jsx)(`div`,{className:`message-card`,children:r})})]})}function Vb({children:e,className:t,...n}){return(0,L.jsx)(`div`,{className:V(`message-markdown`,t),...n,children:(0,L.jsx)(fb,{components:Qb,children:e})})}function Hb({children:e}){return(0,L.jsx)(`p`,{children:Ib(e)})}function Ub({children:e}){return(0,L.jsx)(`li`,{children:Ib(e)})}function Wb({children:e}){return(0,L.jsx)(`strong`,{children:Ib(e)})}function Gb({children:e}){return(0,L.jsx)(`em`,{children:Ib(e)})}function Kb({children:e}){return(0,L.jsx)(`h1`,{children:Ib(e)})}function qb({children:e}){return(0,L.jsx)(`h2`,{children:Ib(e)})}function Jb({children:e}){return(0,L.jsx)(`h3`,{children:Ib(e)})}function Yb({children:e}){return(0,L.jsx)(`h4`,{children:Ib(e)})}function Xb({children:e}){return(0,L.jsx)(`h5`,{children:Ib(e)})}function Zb({children:e}){return(0,L.jsx)(`h6`,{children:Ib(e)})}var Qb={p:Hb,li:Ub,strong:Wb,em:Gb,h1:Kb,h2:qb,h3:Jb,h4:Yb,h5:Xb,h6:Zb};function $b({name:e,category:t,imageUrl:n,className:r,"aria-label":i,...a}){let o=t===`image`&&n!==void 0;return(0,L.jsx)(`button`,{type:`button`,"aria-label":i??`Open ${t===`image`?`image`:`file`} ${e}`,className:V(`reference-message-card`,t===`image`?`is-image`:`is-file`,r),...a,children:o?(0,L.jsx)(`img`,{className:`reference-message-image`,src:n,alt:e,loading:`lazy`,decoding:`async`}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`span`,{className:`reference-message-icon`,"aria-hidden":`true`,children:t===`image`?(0,L.jsx)(Ca,{}):(0,L.jsx)(ba,{})}),(0,L.jsx)(`span`,{className:`reference-message-main`,children:(0,L.jsx)(`strong`,{children:e})})]})})}function ex({children:e,composer:t,empty:n,title:r=`Chat`,subtitle:i,actions:a,streamRef:o,streamOverlay:s,onStreamScroll:c,dropUploadPending:l=!1,onDropFiles:u,className:d,...f}){return(0,L.jsxs)(yb,{className:V(`panel chat-panel chat-primary`,d),"aria-label":`Group chat`,dropLabel:`Drop references to upload`,pending:l,onFilesUpload:u,...f,children:[(0,L.jsxs)(`div`,{className:`panel-header`,children:[(0,L.jsxs)(`div`,{className:`panel-title`,children:[(0,L.jsx)(_o,{icon:(0,L.jsx)(zb,{"aria-hidden":`true`})}),(0,L.jsxs)(`div`,{className:`panel-title-copy`,children:[(0,L.jsx)(`h3`,{children:r}),i===void 0?null:(0,L.jsx)(`div`,{className:`panel-subtitle`,children:i})]})]}),a===void 0?null:(0,L.jsx)(`div`,{className:`panel-actions`,children:a})]}),(0,L.jsxs)(`div`,{className:`chat-stream-frame`,children:[(0,L.jsx)(`div`,{className:`chat-stream`,ref:o,onScroll:c,children:e??n}),s===void 0?null:(0,L.jsx)(`div`,{className:`chat-stream-overlay`,children:s})]}),t]})}function tx({value:e,placeholder:t,ariaLabel:n,maxLength:r,saving:i=!1,disabled:a=!1,allowEmpty:o=!1,onUpdate:s,className:c,...l}){let u=(0,I.useRef)(null),[d,f]=(0,I.useState)(!1),[p,m]=(0,I.useState)(e),[h,g]=(0,I.useState)(!1),_=i||h,v=!a&&!_&&s!==void 0,y=e.trim(),b=y.length===0;(0,I.useEffect)(()=>{d||m(e)},[d,e]),(0,I.useEffect)(()=>{d&&(u.current?.focus(),u.current?.select())},[d]);let x=()=>{m(e),f(!1)},S=()=>{let e=p.trim();if(!o&&e.length===0){x();return}if(e===y){f(!1);return}s===void 0||_||(g(!0),Promise.resolve(s(e)).then(()=>{f(!1)}).catch(()=>void 0).finally(()=>{g(!1)}))},C=e=>{if(e.key===`Enter`){e.preventDefault(),S();return}e.key===`Escape`&&(e.preventDefault(),x())};return(0,L.jsx)(`span`,{className:V(`inline-editable-text`,b?`is-empty`:void 0,d?`is-editing`:void 0,v?void 0:`is-disabled`,c),...l,children:d?(0,L.jsx)(`input`,{ref:u,className:`inline-editable-text-input`,"aria-label":n,value:p,maxLength:r,disabled:_,onBlur:S,onChange:e=>m(e.currentTarget.value),onKeyDown:C}):(0,L.jsx)(`button`,{className:`inline-editable-text-button`,type:`button`,"aria-label":n,disabled:!v,onClick:()=>f(!0),children:b?t:y})})}var nx={bare:``,quiet:`quiet-button`,pill:`pill-action`,action:`action-button`};function rx({variant:e=`pill`,label:t,pendingLabel:n=t,pending:r=!1,disabled:i=!1,iconOnly:a=!1,accept:o,icon:s,onFileUpload:c,className:l,...u}){let d=i||r||c===void 0,f=r?n:t,p=e=>{let t=e.currentTarget.files?.[0];e.currentTarget.value=``,t!==void 0&&c?.(t)};return(0,L.jsxs)(`label`,{...u,className:V(nx[e],d?`is-disabled`:void 0,l),"aria-disabled":d,"aria-busy":r,"aria-label":u[`aria-label`]??f,title:u.title??f,children:[(0,L.jsx)(`input`,{type:`file`,accept:o,disabled:d,onChange:p}),s??(r?(0,L.jsx)(Oa,{className:`is-spinning`,"aria-hidden":`true`}):(0,L.jsx)(ma,{"aria-hidden":`true`})),a?null:(0,L.jsx)(`span`,{children:f})]})}function ix({value:e,pending:t=!1,uploadPending:n=!1,placeholder:r=`Write a message`,mentionOptions:i,onValueChange:a,onComposerSubmit:o,onFileUpload:s,className:c,...l}){let[u,d]=(0,I.useState)(0),f=(0,I.useRef)(null);return(0,L.jsx)(`form`,{className:V(`composer`,c),"aria-label":`Message composer`,onSubmit:o,...l,children:(0,L.jsxs)(`div`,{className:`composer-input-shell`,ref:f,children:[(0,L.jsx)(Rb,{"aria-label":`Message`,placeholder:r,value:e,multiline:!0,maxRows:8,submitOnEnter:!0,mentionRequestKey:u,menuPortalTargetRef:f,...i===void 0?{}:{mentionOptions:i},onValueChange:a}),(0,L.jsxs)(`div`,{className:`composer-tools`,"aria-label":`Message tools`,children:[(0,L.jsx)(`button`,{className:`composer-tool-button composer-mention-button`,type:`button`,"aria-label":`Mention people`,title:`Mention people`,onClick:()=>d(e=>e+1),children:(0,L.jsx)(ra,{"aria-hidden":`true`})}),(0,L.jsx)(rx,{variant:`bare`,className:`composer-tool-button composer-upload-button`,label:`Upload image`,pendingLabel:`Uploading image`,pending:n,accept:`image/*`,icon:(0,L.jsx)(Ca,{"aria-hidden":`true`}),iconOnly:!0,onFileUpload:s}),(0,L.jsx)(rx,{variant:`bare`,className:`composer-tool-button composer-upload-button`,label:`Upload file`,pendingLabel:`Uploading file`,pending:n,icon:(0,L.jsx)(ba,{"aria-hidden":`true`}),iconOnly:!0,onFileUpload:s}),(0,L.jsx)(`button`,{className:`composer-tool-button composer-send-button`,type:`submit`,disabled:e.trim()===``||t,"aria-label":t?`Sending message`:`Send message`,title:t?`Sending message`:`Send message`,children:(0,L.jsx)(Ka,{"aria-hidden":`true`})})]})]})})}function ax(e){return(0,L.jsx)(Ia,{...e})}var ox={confirmed:(0,L.jsx)(oa,{"aria-hidden":`true`}),question:(0,L.jsx)(ua,{"aria-hidden":`true`}),"task-change":(0,L.jsx)(Za,{"aria-hidden":`true`})};function sx({kind:e,children:t,className:n,...r}){return(0,L.jsxs)(`div`,{className:V(`scratchpad-row`,`is-${e}`,n),...r,children:[(0,L.jsx)(`span`,{className:`scratchpad-marker`,"aria-hidden":`true`,children:ox[e]}),(0,L.jsx)(`p`,{children:t})]})}function cx({compiledTasks:e=[],onOpenCompiledTask:t}){return(0,L.jsxs)(`section`,{className:`scratchpad-submitted-receipt`,"aria-label":`Submitted to Worklist`,children:[(0,L.jsxs)(`div`,{className:`scratchpad-submitted-receipt-header`,children:[(0,L.jsx)(`strong`,{children:`Submitted to Worklist`}),(0,L.jsx)(oa,{className:`scratchpad-submitted-receipt-check`,"aria-hidden":`true`})]}),e.length===0?(0,L.jsxs)(`div`,{className:`scratchpad-submitted-empty`,role:`status`,children:[(0,L.jsx)(Za,{"aria-hidden":`true`}),(0,L.jsxs)(`span`,{className:`scratchpad-submitted-empty-copy`,children:[(0,L.jsx)(`span`,{children:`No new task created`}),(0,L.jsx)(`small`,{children:`This Scratchpad was submitted, but no Worklist task was added.`})]})]}):(0,L.jsx)(`div`,{className:`scratchpad-submitted-task-list`,children:e.map(e=>(0,L.jsxs)(`button`,{className:`scratchpad-submitted-task`,disabled:t===void 0,onClick:()=>t?.(e.taskId),type:`button`,children:[(0,L.jsxs)(`span`,{className:`scratchpad-submitted-task-copy`,children:[(0,L.jsx)(`span`,{children:e.title}),(0,L.jsx)(`small`,{children:e.moduleName})]}),(0,L.jsx)(ca,{"aria-hidden":`true`})]},e.taskId))})]})}function lx({title:e,summary:t,sections:n,updatedLabel:r,updatedLabelPrefix:i=`Updated`,footerNote:a,submitAvailable:o,pages:s,empty:c,actionsDisabled:l=!1,showSubmitAction:u=!0,compact:d=!1,syncPending:f=!1,submitPending:p=!1,onSubmitScratchpad:m,onOpenCompiledTask:h,className:g,..._}){let v=s!==void 0&&s.length>0,y=(0,I.useMemo)(()=>s!==void 0&&s.length>0?s:[{key:`current`,title:e,summary:t,sections:n,...r===void 0?{}:{updatedLabel:r},updatedLabelPrefix:i,...a===void 0?{}:{footerNote:a},...o===void 0?{}:{submitAvailable:o}}],[a,s,n,o,t,e,r,i]),b=Math.max(0,y.length-1),x=y[b]?.key,[S,C]=(0,I.useState)(b);(0,I.useEffect)(()=>{C(b)},[b,x]);let w=Math.min(S,Math.max(0,y.length-1)),T=y[w]??{key:`current`,title:e,summary:t,sections:n,...r===void 0?{}:{updatedLabel:r},updatedLabelPrefix:i,...a===void 0?{}:{footerNote:a},...o===void 0?{}:{submitAvailable:o}},E=f||p,ee=p?`Running`:f?`Refreshing`:`Run`,D=T.submitAvailable??T.sections.length>0,O=l||E||!D||T.submitted===!0;return(0,L.jsx)(go,{title:`Scratchpad`,icon:(0,L.jsx)(ax,{"aria-hidden":`true`}),className:V(`scratchpad-panel`,d?`is-compact`:void 0,g),"aria-busy":E,..._,children:(0,L.jsxs)(`div`,{className:`scratchpad-panel-body scratchpad`,children:[!v&&T.sections.length===0?c??(0,L.jsx)(`div`,{}):(0,L.jsxs)(`div`,{className:V(`scratchpad-content`,T.submitted===!0?`is-submitted`:void 0),children:[(0,L.jsx)(`div`,{className:`scratchpad-head`,children:(0,L.jsx)(`div`,{children:(0,L.jsx)(`h4`,{children:T.title})})}),(0,L.jsx)(`p`,{className:`scratchpad-summary`,children:T.summary}),T.sections.map(e=>(0,L.jsxs)(`section`,{className:`scratchpad-section`,"aria-labelledby":e.id,children:[(0,L.jsx)(`span`,{className:`scratchpad-label`,id:e.id,children:e.label}),(0,L.jsx)(`div`,{className:`scratchpad-list`,children:e.rows.map(t=>(0,L.jsx)(sx,{kind:t.kind,children:t.text},`${e.id}:${t.text}`))})]},e.id)),T.submitted===!0?(0,L.jsx)(cx,{compiledTasks:T.compiledTasks??[],...h===void 0?{}:{onOpenCompiledTask:h}}):null]},T.key),!d&&y.length>1?(0,L.jsx)(`div`,{className:`scratchpad-history-nav`,children:(0,L.jsx)(ho,{"aria-label":`Scratchpad history`,currentPage:w,maxVisible:7,pageAriaLabel:e=>`Scratchpad page ${e+1}`,pageCount:y.length,onPageChange:C})}):null,(0,L.jsxs)(`div`,{className:`scratchpad-footer`,children:[T.footerNote===void 0?null:(0,L.jsx)(`p`,{className:V(`scratchpad-footer-note`,T.footerNote.tone===`error`?`is-error`:void 0),title:T.footerNote.text,children:T.footerNote.text}),d?null:(0,L.jsx)(`div`,{className:`scratchpad-submit-context`,children:T.updatedLabel===void 0?null:(0,L.jsxs)(`span`,{className:`scratchpad-updated-at`,children:[(0,L.jsx)(`span`,{children:T.updatedLabelPrefix??`Updated`}),(0,L.jsx)(`span`,{children:T.updatedLabel})]})}),u?(0,L.jsx)(`div`,{className:`scratchpad-footer-actions`,children:(0,L.jsxs)(wc,{className:V(`scratchpad-submit-button`,E?`is-pending`:void 0),type:`button`,"aria-busy":E,disabled:O,onClick:m,children:[E?(0,L.jsx)(Oa,{"aria-hidden":`true`}):(0,L.jsx)(La,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:ee})]})}):null]})]})})}function ux(e){return e===`done`?(0,L.jsx)(oa,{"aria-hidden":`true`}):e===`failed`?(0,L.jsx)(da,{"aria-hidden":`true`}):e===`pending`?(0,L.jsx)(no,{"aria-hidden":`true`}):e===`running`?(0,L.jsx)(Oa,{"aria-hidden":`true`}):(0,L.jsx)(fa,{"aria-hidden":`true`})}function dx(e){return e===`complete`?`Complete`:e===`failed`?`Failed`:e===`pending`?`Needs input`:`Running`}function fx(e){return(0,L.jsx)(io,{"aria-hidden":`true`,"data-tone":e})}function px({title:e,summary:t,tone:n,steps:r,metaLabel:i,className:a,...o}){let s=i??dx(n),c=o[`aria-label`]??`${e}. ${s}. ${t}`;return(0,L.jsx)(go,{title:e,icon:fx(n),className:V(`execution-progress-panel`,`is-${n}`,a),"aria-label":c,...o,children:(0,L.jsx)(`div`,{className:`execution-progress-body`,children:(0,L.jsx)(`div`,{className:`execution-progress-list`,children:r.map(e=>(0,L.jsxs)(`div`,{className:V(`execution-progress-step`,`is-${e.status}`),children:[(0,L.jsx)(`span`,{className:V(`execution-progress-marker`,`is-${e.status}`),"aria-hidden":`true`,children:ux(e.status)}),(0,L.jsxs)(`span`,{className:`execution-progress-step-content`,children:[(0,L.jsxs)(`span`,{className:`execution-progress-step-title`,children:[(0,L.jsx)(`span`,{className:`execution-progress-step-label`,children:e.label}),e.elapsedLabel===void 0?null:(0,L.jsxs)(`span`,{className:`execution-progress-step-elapsed`,children:[` (`,e.elapsedLabel,`)`]})]}),e.detail===void 0&&e.detailPrefix===void 0?null:(0,L.jsxs)(`span`,{className:`execution-progress-step-detail`,children:[e.detailPrefix===void 0?null:(0,L.jsx)(`span`,{className:`execution-progress-step-detail-prefix`,children:e.detailPrefix}),e.detailPrefix===void 0||e.detail===void 0?null:(0,L.jsx)(`span`,{className:`execution-progress-step-detail-separator`,"aria-hidden":`true`,children:` · `}),e.detail]}),e.activityLabel===void 0?null:(0,L.jsx)(`span`,{className:`execution-progress-step-activity`,children:e.activityLabel}),e.metrics===void 0||e.metrics.length===0?null:(0,L.jsx)(`span`,{className:`execution-progress-step-metrics`,children:e.metrics.map(e=>(0,L.jsx)(`span`,{className:`execution-progress-step-metric`,children:e},e))})]})]},e.id))})})})}function mx({brand:e,projectName:t,meta:n,actions:r,activeTab:i,refreshing:a=!1,onSelectTab:o,onRefresh:s,children:c,className:l,...u}){return(0,L.jsx)(`main`,{className:V(`embedded-project-page`,l),...u,children:(0,L.jsxs)(`section`,{className:`embedded-project-surface`,children:[(0,L.jsxs)(`header`,{className:`embedded-project-header`,children:[(0,L.jsx)(`div`,{className:`embedded-project-brand`,children:e}),(0,L.jsxs)(`div`,{className:`embedded-project-identity`,children:[(0,L.jsx)(`h1`,{children:t}),n===void 0?null:(0,L.jsx)(`p`,{children:n})]}),r===void 0&&s===void 0?null:(0,L.jsxs)(`div`,{className:`embedded-project-actions`,children:[r,s===void 0?null:(0,L.jsx)(Tc,{"aria-label":a?`Refreshing project`:`Refresh project`,className:`embedded-project-refresh`,disabled:a,onClick:s,type:`button`,children:a?(0,L.jsx)(Oa,{"aria-hidden":`true`,className:`is-spinning`}):(0,L.jsx)(Ha,{"aria-hidden":`true`})})]})]}),i===void 0?null:(0,L.jsx)(`nav`,{className:`embedded-project-tabs`,"aria-label":`Project sections`,children:[`project`,`work`,`references`,`artifacts`].map(e=>(0,L.jsx)(`button`,{"aria-current":i===e?`page`:void 0,className:i===e?`is-active`:void 0,onClick:()=>o?.(e),type:`button`,children:e===`project`?`Project`:e===`work`?`Work`:e===`references`?`References`:`Artifacts`},e))}),(0,L.jsx)(`div`,{className:`embedded-project-body`,children:c})]})})}function hx({label:e,summary:t,tone:n=`neutral`,blockers:r=[]}){return(0,L.jsx)(go,{className:`embedded-project-status-panel`,icon:(0,L.jsx)(ea,{"aria-hidden":`true`}),title:`Project status`,action:(0,L.jsx)(Ec,{tone:n,children:e}),children:(0,L.jsxs)(`div`,{className:`embedded-project-status-body`,children:[(0,L.jsx)(`p`,{children:t}),r.length===0?null:(0,L.jsx)(`div`,{className:`embedded-project-blockers`,"aria-label":`Needs attention`,children:r.map(e=>(0,L.jsxs)(`article`,{children:[(0,L.jsx)(no,{"aria-hidden":`true`}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`span`,{children:e.label}),(0,L.jsx)(`strong`,{children:e.title}),(0,L.jsx)(`p`,{children:e.summary})]})]},e.key))})]})})}function gx({tone:e=`neutral`,compact:t=!1,asChild:n=!1,className:r,...i}){return(0,L.jsx)(n?cc:`div`,{className:V(`chat-event-card`,`is-${e}`,t?`is-compact`:void 0,r),...i})}function _x({as:e=`div`,icon:t,title:n,meta:r,action:i,className:a,...o}){return(0,L.jsxs)(e,{className:V(`chat-event-card-header`,a),...o,children:[(0,L.jsx)(vx,{children:t}),(0,L.jsxs)(`span`,{className:`chat-event-card-title`,children:[(0,L.jsx)(`strong`,{children:n}),r===void 0?null:(0,L.jsx)(`span`,{className:`chat-event-card-meta`,children:r})]}),i]})}function vx({className:e,...t}){return(0,L.jsx)(`span`,{className:V(`chat-event-card-status-icon`,e),...t})}function yx({className:e,...t}){return(0,L.jsx)(`div`,{className:V(`chat-event-card-body`,e),...t})}function bx({className:e,...t}){return(0,L.jsx)(`footer`,{className:V(`chat-event-card-footer`,e),...t})}function xx(e){return e===`done`?`success`:e===`failed`?`danger`:e===`pending`?`warning`:`neutral`}function Sx(e){return e===`done`?(0,L.jsx)(oa,{"aria-hidden":`true`}):e===`failed`?(0,L.jsx)(ao,{"aria-hidden":`true`}):(0,L.jsx)(ja,{"aria-hidden":`true`})}function Cx({title:e,summary:t,request:n,messages:r,draft:i,contextLabel:a,defaultOpen:o,readOnly:s=!1,replyCount:c,status:l,statusLabel:u,mentionOptions:d,sendPending:f=!1,submitPending:p=!1,onDraftChange:m,onSendMessage:h,onSubmitRound:g,className:_,...v}){let y=t.trim()===``?n:t,b=a===void 0?y:`${y} (${a})`,[x,S]=(0,I.useState)(o??!0),C=l??(s?`done`:`pending`),w=u??(s?`submitted`:`needs input`),T=c??r.length,E=p||T===0,ee=T===0?`No replies`:`${T} ${T===1?`reply`:`replies`}`,D=xx(C),O=`${w} · ${ee}`,k=(0,L.jsxs)(yx,{className:`chat-clarification-card-body`,children:[(0,L.jsx)(`div`,{className:`chat-event-thread`,children:r.map(e=>(0,L.jsxs)(`article`,{className:`chat-event-message`,children:[e.avatar,(0,L.jsxs)(`div`,{className:`chat-event-message-copy`,children:[(0,L.jsxs)(`div`,{className:`message-meta`,children:[(0,L.jsx)(`span`,{className:`message-author`,children:e.author}),e.time===void 0?null:(0,L.jsx)(`span`,{className:`message-time`,children:e.time})]}),(0,L.jsx)(`p`,{children:(0,L.jsx)(Lb,{children:e.body})})]})]},e.id))}),s?null:(0,L.jsx)(`form`,{className:`chat-event-composer`,"aria-label":`Round reply`,onSubmit:h,children:(0,L.jsxs)(`div`,{className:`composer-input-shell chat-event-composer-input-shell`,children:[(0,L.jsx)(Rb,{type:`text`,"aria-label":`Round message`,value:i,placeholder:`Reply in this round`,multiline:!0,maxRows:4,submitOnEnter:!0,...d===void 0?{}:{mentionOptions:d},onValueChange:m}),(0,L.jsx)(`div`,{className:`composer-tools chat-event-composer-tools`,"aria-label":`Round message tools`,children:(0,L.jsx)(`button`,{className:`composer-tool-button composer-send-button chat-event-send-button`,type:`submit`,disabled:i.trim()===``||f,"aria-label":f?`Sending round message`:`Send round message`,title:f?`Sending round message`:`Send round message`,children:(0,L.jsx)(Ka,{"aria-hidden":`true`})})})]})})]});return(0,L.jsx)(`article`,{className:V(`message is-chat-event`,_),...v,children:s?(0,L.jsx)(gx,{tone:D,asChild:!0,children:(0,L.jsxs)(`details`,{className:`chat-clarification-card`,open:x,"aria-label":b,onToggle:e=>S(e.currentTarget.open),children:[(0,L.jsx)(_x,{as:`summary`,icon:Sx(C),title:e,meta:O,action:(0,L.jsx)(`span`,{className:`chat-event-card-toggle`,"aria-hidden":`true`,children:(0,L.jsx)(sa,{})})}),k]})}):(0,L.jsx)(gx,{tone:D,asChild:!0,children:(0,L.jsxs)(`section`,{className:`chat-clarification-card is-fixed-open`,"aria-label":b,children:[(0,L.jsx)(_x,{icon:Sx(C),title:e,meta:O,tabIndex:-1,action:(0,L.jsxs)(wc,{className:`chat-event-primary-action`,type:`button`,"aria-label":T===0?`Reply before submitting round`:`Submit round`,"aria-busy":p,disabled:E,title:T===0?`Reply before submitting round`:`Submit round`,onClick:g,children:[p?(0,L.jsx)(Oa,{"aria-hidden":`true`}):(0,L.jsx)(oa,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{className:`button-label`,children:p?`Submitting`:`Submit`})]})}),k]})})})}function wx({decision:e,disabled:t,onDecide:n}){let r=e.tone===`primary`?wc:Tc,i=e.decisionId.startsWith(`allow`)?(0,L.jsx)(oa,{"aria-hidden":`true`}):(0,L.jsx)(ao,{"aria-hidden":`true`});return(0,L.jsxs)(r,{type:`button`,className:V(`chat-approval-card-decision`,e.tone===`primary`?`is-primary`:void 0,e.tone===`danger`?`is-danger`:void 0),disabled:t,onClick:()=>n(e.decisionId),children:[i,(0,L.jsx)(`span`,{className:`button-label`,children:e.label})]})}function Tx(e,t){return e===`pending`?`warning`:e===`resolved`?`success`:/expired|cancelled/iu.test(t)?`neutral`:`danger`}function Ex(e){return e===`success`?(0,L.jsx)(oa,{"aria-hidden":`true`}):e===`danger`?(0,L.jsx)(ao,{"aria-hidden":`true`}):e===`neutral`?(0,L.jsx)(pa,{"aria-hidden":`true`}):(0,L.jsx)(Ya,{"aria-hidden":`true`})}function Dx({title:e,summary:t,reason:n,status:r,statusLabel:i,detailLabel:a,detail:o,detailCode:s=!1,decisions:c=[],decisionPending:l=!1,resolutionLabel:u,defaultOpen:d,onDecide:f,className:p,...m}){let[h,g]=(0,I.useState)(d??r===`pending`),_=Tx(r,i),v=[...c].sort((e,t)=>e.tone===t.tone?0:e.tone===`primary`?-1:+(t.tone===`primary`)),y=r===`pending`&&f!==void 0?(0,L.jsx)(bx,{className:`chat-approval-card-actions`,children:v.map(e=>(0,L.jsx)(wx,{decision:e,disabled:l,onDecide:f},e.decisionId))}):null,b=(0,L.jsx)(yx,{className:`chat-approval-card-body`,children:(0,L.jsxs)(`div`,{className:`chat-approval-card-content`,children:[(0,L.jsx)(`p`,{className:`chat-approval-card-summary`,children:t}),n===void 0?null:(0,L.jsx)(`p`,{className:`chat-approval-card-reason`,children:n}),o===void 0?null:(0,L.jsxs)(`div`,{className:`chat-approval-card-detail`,children:[a===void 0?null:(0,L.jsx)(`span`,{className:`chat-approval-card-detail-label`,children:a}),s?(0,L.jsx)(`code`,{className:`chat-approval-card-detail-code`,children:o}):(0,L.jsx)(`span`,{className:`chat-approval-card-detail-text`,children:o})]}),r===`pending`||u===void 0?null:(0,L.jsx)(`p`,{className:`chat-approval-card-resolution`,children:u})]})});return(0,L.jsx)(`article`,{className:V(`message is-chat-event`,p),...m,children:r===`pending`?(0,L.jsx)(gx,{tone:_,asChild:!0,children:(0,L.jsxs)(`section`,{className:`chat-approval-card is-fixed-open`,"aria-label":t,children:[(0,L.jsx)(_x,{icon:Ex(_),title:e,meta:i,tabIndex:-1}),b,y]})}):(0,L.jsx)(gx,{tone:_,asChild:!0,children:(0,L.jsxs)(`details`,{className:`chat-approval-card`,open:h,"aria-label":t,onToggle:e=>g(e.currentTarget.open),children:[(0,L.jsx)(_x,{as:`summary`,icon:Ex(_),title:e,meta:i,action:(0,L.jsx)(`span`,{className:`chat-event-card-toggle`,"aria-hidden":`true`,children:(0,L.jsx)(sa,{})})}),b]})})})}function Ox({state:e,className:t,disabled:n,onClick:r,...i}){let a=e===`retrying`,o=e===`retried`,s=a?`Retrying`:o?`Retried`:`Retry`;return(0,L.jsxs)(Tc,{...i,onClick:r,className:V(`task-retry-action`,t),disabled:n===!0||r===void 0||a||o,"aria-label":s,"aria-busy":a?`true`:void 0,type:`button`,children:[a?(0,L.jsx)(Oa,{className:`is-spinning`,"aria-hidden":`true`}):o?(0,L.jsx)(oa,{"aria-hidden":`true`}):(0,L.jsx)(Wa,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:s})]})}function kx({status:e,title:t,taskId:n,taskTitle:r,summary:i,moduleName:a,finalNote:o,generatedFiles:s=[],errorCode:c,onOpenTask:l,retryState:u,onRetry:d,className:f,...p}){let m=o?.trim()??``,h=i.trim(),g=m.length>0?m:h,_=e===`completed`?`Task completed`:`Task failed`;return(0,L.jsx)(`article`,{className:V(`message is-chat-event is-task-result`,f),...p,children:(0,L.jsxs)(gx,{tone:e===`completed`?`success`:`danger`,className:V(`chat-task-result-card`,`is-${e}`),children:[(0,L.jsxs)(`button`,{className:`chat-task-result-card-open`,disabled:l===void 0,onClick:()=>l?.(n),type:`button`,"aria-label":`${t}: ${r}`,children:[(0,L.jsx)(vx,{"aria-hidden":`true`,children:e===`completed`?(0,L.jsx)(oa,{}):(0,L.jsx)(ao,{})}),(0,L.jsxs)(`span`,{className:`chat-task-result-card-main`,children:[(0,L.jsx)(`span`,{className:`chat-task-result-card-state`,children:_}),(0,L.jsx)(`strong`,{children:r}),a===void 0?null:(0,L.jsx)(`span`,{className:`chat-task-result-card-module`,children:a}),g.length===0?null:(0,L.jsx)(`span`,{className:`chat-task-result-card-summary`,children:g}),c===void 0?null:(0,L.jsx)(`span`,{className:`chat-task-result-card-error-code`,children:c}),s.length===0?null:(0,L.jsx)(`span`,{className:`chat-task-result-card-files`,"aria-label":`Generated files`,children:s.map(e=>(0,L.jsxs)(`span`,{className:`chat-task-result-card-file`,children:[(0,L.jsx)(ba,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:e.name})]},e.path))})]}),(0,L.jsx)(`span`,{className:`chat-task-result-card-arrow`,"aria-hidden":`true`,children:(0,L.jsx)(ca,{})})]}),u===void 0?null:(0,L.jsx)(`footer`,{className:`chat-task-result-card-actions`,children:(0,L.jsx)(Ox,{state:u,onClick:d})})]})})}function Ax({status:e}){return e===`done`?(0,L.jsx)(`span`,{className:`task-check`,"aria-hidden":`true`,children:(0,L.jsx)(oa,{})}):e===`pending`?(0,L.jsx)(`span`,{className:`task-check`,"aria-hidden":`true`,children:(0,L.jsx)(Pa,{})}):e===`failed`?(0,L.jsx)(`span`,{className:`task-check`,"aria-hidden":`true`,children:(0,L.jsx)(ao,{})}):e===`running`?(0,L.jsx)(`span`,{className:`task-check`,"aria-hidden":`true`,children:(0,L.jsx)(Oa,{})}):(0,L.jsx)(`span`,{className:`task-check`,"aria-hidden":`true`})}function jx({title:e,status:t,selected:n=!1,className:r,type:i=`button`,...a}){return(0,L.jsxs)(`button`,{className:V(`task-row`,n?`is-selected`:void 0,`is-${t}`,r),type:i,"aria-current":n?`true`:void 0,...a,children:[(0,L.jsx)(Ax,{status:t}),(0,L.jsx)(`div`,{className:`task-row-main`,children:(0,L.jsx)(`div`,{className:`task-title-line`,children:(0,L.jsx)(`strong`,{children:e})})})]})}function Mx({label:e,value:t,code:n=!1,status:r}){return(0,L.jsxs)(`div`,{className:`detail-row`,children:[(0,L.jsx)(`span`,{children:e}),r===void 0?n?(0,L.jsx)(`code`,{children:t}):(0,L.jsx)(`strong`,{children:t}):(0,L.jsx)(`strong`,{children:(0,L.jsx)(Oc,{status:r,children:t})})]})}function Nx({rows:e}){return(0,L.jsx)(L.Fragment,{children:e.map((e,t)=>(0,I.createElement)(Mx,{...e,key:`${e.label}-${t}`}))})}function Px({...e}){return(0,L.jsx)(jx,{...e})}function Fx({detail:e,placeholder:t,missingTaskId:n,stacked:r=!1}){if(e===void 0){let e=t?.title??(n===void 0?`No task selected`:`Task not found`),i=t?.description??(n===void 0?`Select a task to inspect its contract, latest result, and run history.`:`No task exists for ${n}. Select another task from the Worklist.`);return(0,L.jsxs)(`aside`,{className:V(`task-detail-card`,r?`is-stacked`:void 0),"aria-label":`Selected task details`,children:[(0,L.jsx)(`div`,{className:`task-detail-head`,children:(0,L.jsx)(`h4`,{children:e})}),(0,L.jsx)(`p`,{children:i})]})}return(0,L.jsxs)(`aside`,{className:V(`task-detail-card`,r?`is-stacked`:void 0),"aria-label":`Selected task details`,children:[(0,L.jsxs)(`div`,{className:`task-detail-head`,children:[(0,L.jsx)(Oc,{status:e.status,children:e.status}),(0,L.jsx)(`h4`,{children:e.title})]}),(0,L.jsx)(`p`,{children:e.summary}),(0,L.jsxs)(`section`,{className:`task-detail-section`,"aria-label":`Task contract`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`Task contract`}),(0,L.jsx)(Nx,{rows:e.contractRows})]}),(0,L.jsxs)(`section`,{className:`task-detail-section task-evidence-section`,"aria-label":`Evidence`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`Evidence`}),(0,L.jsx)(Nx,{rows:e.evidenceRows??e.resultRows})]}),e.retryAction===void 0?null:(0,L.jsx)(`div`,{className:`task-detail-retry-row`,children:(0,L.jsx)(Ox,{state:e.retryAction.state,onClick:e.retryAction.onRetry})}),(0,L.jsxs)(`section`,{className:`task-detail-section`,"aria-label":`Run result history`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`Run result history`}),e.runResults.length===0?(0,L.jsx)(`p`,{children:`No run result yet.`}):(0,L.jsx)(`div`,{className:`run-result-list`,children:e.runResults.map(e=>(0,L.jsx)(`article`,{className:`run-result-item`,children:(0,L.jsxs)(`div`,{className:`run-result-item-head`,children:[(0,L.jsxs)(`span`,{children:[(0,L.jsx)(`strong`,{children:e.title}),e.meta===void 0?null:(0,L.jsx)(`small`,{children:e.meta})]}),e.status===void 0?null:(0,L.jsx)(Oc,{status:e.status,children:e.status})]})},e.id))})]})]})}function Ix({modules:e,taskCount:t,detail:n,detailPlaceholder:r,layout:i=`split`,missingTaskId:a,runNote:o,onSelectTask:s,empty:c,className:l,...u}){let d=i===`stacked`;return(0,L.jsx)(go,{title:`Worklist`,icon:(0,L.jsx)(Da,{"aria-hidden":`true`}),action:(0,L.jsx)(`div`,{className:`worklist-header-summary`,children:(0,L.jsx)(`span`,{className:`mini-meta`,children:t===1?`1 task`:`${t} tasks`})}),className:V(`tasks worklist-page-panel`,l),...u,children:(0,L.jsxs)(`div`,{className:V(`worklist-page-body`,d?`is-stacked`:void 0),children:[o===void 0?null:(0,L.jsx)(`p`,{className:`worklist-run-note`,children:o}),e.length===0?(0,L.jsx)(`div`,{className:`worklist-page-empty`,children:c??(0,L.jsx)(`div`,{className:`reference-empty`,children:`No compiled tasks`})}):(0,L.jsxs)(`div`,{className:V(`task-board-body`,d?`is-stacked`:void 0),children:[(0,L.jsx)(`div`,{className:V(`task-list`,d?`is-stacked`:void 0),"aria-label":`Tasks`,children:e.map(e=>(0,L.jsxs)(`div`,{className:`task-section`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:e.label}),e.rows.map(e=>(0,L.jsx)(Px,{title:e.title,status:e.status,onClick:()=>s?.(e.id),...e.selected===void 0?{}:{selected:e.selected}},e.id))]},e.label))}),(0,L.jsx)(Fx,{...n===void 0?{}:{detail:n},...r===void 0?{}:{placeholder:r},...a===void 0?{}:{missingTaskId:a},stacked:d})]})]})})}function Lx({sections:e,statuses:t=[],className:n,...r}){return(0,L.jsxs)(`section`,{className:V(`settings-sheet`,n),"aria-labelledby":`settings-title`,...r,children:[(0,L.jsxs)(`header`,{className:`settings-sheet-head`,children:[(0,L.jsxs)(`div`,{className:`panel-title`,children:[(0,L.jsx)(_o,{icon:(0,L.jsx)(Ja,{"aria-hidden":`true`})}),(0,L.jsx)(`h3`,{id:`settings-title`,children:`Settings`})]}),t.length===0?null:(0,L.jsx)(`div`,{className:`panel-actions`,children:t.map(e=>(0,L.jsx)(Ec,{className:`task-tag`,tone:e.tone,children:e.label},e.label))})]}),e.map(e=>(0,L.jsxs)(`section`,{className:`settings-section`,id:e.id,"aria-label":e.title,children:[(0,L.jsx)(`div`,{className:`settings-section-title`,children:(0,L.jsx)(`h4`,{children:e.title})}),(0,L.jsx)(`div`,{className:`settings-section-body`,children:e.rows.map(e=>(0,L.jsxs)(`div`,{className:`settings-row`,children:[(0,L.jsx)(`span`,{className:`field-label`,children:e.label}),e.value===void 0?(0,L.jsx)(`span`,{}):e.plain===!0?(0,L.jsx)(`div`,{className:`settings-row-value`,children:e.value}):(0,L.jsx)(`strong`,{children:e.value})]},e.label))})]},e.id))]})}function Rx({value:e,options:t,maxLength:n,canEdit:r=!1,discovering:i=!1,saving:a=!1,onDiscover:o,onUpdate:s}){let[c,l]=(0,I.useState)(!1),[u,d]=(0,I.useState)(e),[f,p]=(0,I.useState)(e),m=u.trim(),h=i||a;return(0,I.useEffect)(()=>{c||(d(e),p(e))},[c,e]),!r||s===void 0?(0,L.jsx)(`span`,{className:`settings-model-readonly`,children:e}):c?(0,L.jsxs)(`form`,{className:`settings-model-editor`,"aria-label":`Change model`,onSubmit:e=>{e.preventDefault(),!(m.length===0||m===f||s===void 0)&&Promise.resolve(s(m,f)).then(e=>{e.kind===`saved`?l(!1):e.kind===`stale`&&p(e.currentValue)}).catch(()=>void 0)},children:[(0,L.jsx)(Pc,{autoComplete:`off`,"aria-label":`Model`,value:u,options:t,maxLength:n,maxVisibleOptions:8,disabled:a,onValueChange:d,placeholder:`Choose or enter a model`,autoFocus:!0}),(0,L.jsxs)(`div`,{className:`settings-model-editor-footer`,children:[(0,L.jsx)(`span`,{className:`settings-model-editor-status`,"aria-live":`polite`,children:i?`Loading models…`:`Choose a model or enter its name.`}),(0,L.jsxs)(`div`,{className:`settings-model-editor-actions`,children:[(0,L.jsx)(Tc,{className:`settings-model-editor-action`,type:`button`,disabled:a,onClick:()=>{d(e),p(e),l(!1)},children:`Cancel`}),(0,L.jsx)(wc,{className:`settings-model-editor-action`,type:`submit`,disabled:h||m.length===0||m===f,children:a?`Saving…`:`Save`})]})]})]}):(0,L.jsx)(`button`,{"aria-label":`Change model from ${e}`,className:`settings-value-button settings-model-change-button`,type:`button`,onClick:()=>{d(e),p(e),l(!0),Promise.resolve(o?.()).catch(()=>void 0)},children:e})}function zx({row:e}){return e.category===`image`?(0,L.jsx)(Ca,{"aria-hidden":`true`}):e.canPreview===!1?(0,L.jsx)(va,{"aria-hidden":`true`}):e.selected===!0?(0,L.jsx)(_a,{"aria-hidden":`true`}):e.extension===`md`||e.extension===`txt`?(0,L.jsx)(ya,{"aria-hidden":`true`}):(0,L.jsx)(ba,{"aria-hidden":`true`})}function Bx({row:e,onSelectFile:t}){return(0,L.jsxs)(`button`,{className:V(`reference-row`,e.selected===!0?`is-selected`:void 0),type:`button`,"aria-current":e.selected===!0?`true`:void 0,onClick:()=>t?.(e.path),children:[(0,L.jsx)(`span`,{className:`reference-file-icon`,"aria-hidden":`true`,children:(0,L.jsx)(zx,{row:e})}),(0,L.jsxs)(`span`,{className:`reference-row-main`,children:[(0,L.jsx)(`strong`,{children:e.name}),(0,L.jsx)(`span`,{children:e.meta})]})]})}function Vx({name:e,rows:t,onSelectFile:n}){return(0,L.jsxs)(`details`,{className:`reference-folder-group`,children:[(0,L.jsxs)(`summary`,{className:`reference-folder-head`,children:[(0,L.jsx)(`span`,{className:`reference-file-icon`,"aria-hidden":`true`,children:(0,L.jsx)(Sa,{})}),(0,L.jsxs)(`span`,{className:`reference-row-main`,children:[(0,L.jsx)(`strong`,{children:e}),(0,L.jsxs)(`span`,{children:[t.length,` `,t.length===1?`file`:`files`]})]})]}),(0,L.jsx)(`div`,{className:`reference-folder-files`,children:t.map(e=>(0,L.jsx)(Bx,{row:e,...n===void 0?{}:{onSelectFile:n}},e.path))})]})}function Hx(e){let t=new Map;for(let n of e){if(n.folderGroup===void 0)continue;let e=t.get(n.folderGroup)??[];e.push(n),t.set(n.folderGroup,e)}return[...t.entries()].map(([e,t])=>({name:e,rows:t}))}function Ux({files:e,detail:t,uploadPending:n=!1,fileSortMode:r=`time`,empty:i,beforeContent:a,onSelectFile:o,onUploadFile:s,onDropFiles:c,onFileSortModeChange:l,className:u,...d}){let f=e.filter(e=>e.category===`image`),p=e.filter(e=>e.category!==`image`),m=p.filter(e=>e.folderGroup===void 0),h=Hx(p),g=e=>(0,L.jsx)(`div`,{className:`reference-image-strip`,role:`list`,"aria-label":`Reference images`,onWheel:e=>{Math.abs(e.deltaY)>Math.abs(e.deltaX)&&(e.currentTarget.scrollLeft+=e.deltaY,e.preventDefault())},children:e.map(e=>(0,L.jsxs)(`button`,{className:V(`reference-image-tile`,e.selected===!0?`is-selected`:void 0),type:`button`,"aria-current":e.selected===!0?`true`:void 0,"aria-label":`Open ${e.name}`,onClick:()=>o?.(e.path),children:[e.thumbnailUrl===void 0?(0,L.jsx)(`span`,{className:`reference-image-tile-fallback`,"aria-hidden":`true`,children:(0,L.jsx)(Ca,{})}):(0,L.jsx)(`img`,{src:e.thumbnailUrl,alt:e.name,loading:`lazy`,decoding:`async`}),(0,L.jsx)(`span`,{children:e.name})]},e.path))}),_=e=>e.map(e=>(0,L.jsx)(Bx,{row:e,...o===void 0?{}:{onSelectFile:o}},e.path)),v=c??(s===void 0?void 0:e=>{for(let t of e)s(t)});return(0,L.jsxs)(yb,{className:V(`panel references-panel`,a===void 0?void 0:`has-before-content`,u),"aria-label":`References`,dropLabel:`Drop reference files to upload`,pending:n,onFilesUpload:v,...d,children:[(0,L.jsxs)(`div`,{className:`panel-header`,children:[(0,L.jsxs)(`div`,{className:`panel-title`,children:[(0,L.jsx)(_o,{icon:(0,L.jsx)(ya,{"aria-hidden":`true`})}),(0,L.jsx)(`h3`,{children:`References`})]}),s===void 0?null:(0,L.jsx)(`div`,{className:`panel-actions`,children:(0,L.jsx)(rx,{variant:`action`,className:`reference-upload-button`,label:`Upload`,pendingLabel:`Uploading`,pending:n,onFileUpload:s})})]}),a,(0,L.jsx)(`div`,{className:`reference-board-body`,children:e.length===0?(0,L.jsx)(`div`,{className:`reference-board-empty`,children:i??(0,L.jsx)(`div`,{className:`reference-empty`,children:`No reference files`})}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{className:`reference-list`,"aria-label":`Reference file list`,children:[f.length===0?null:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(`div`,{className:`reference-section-label`,children:`Images`}),g(f)]}),p.length===0?null:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{className:`reference-files-head`,children:[(0,L.jsx)(`div`,{className:`reference-section-label`,children:`Files`}),l===void 0?null:(0,L.jsxs)(`div`,{className:`reference-list-toolbar`,role:`toolbar`,"aria-label":`Sort files`,children:[(0,L.jsx)(`button`,{className:V(`reference-sort-button`,r===`time`?`is-active`:void 0),type:`button`,"aria-label":`Sort files by upload time`,"aria-pressed":r===`time`,onClick:()=>l(`time`),children:(0,L.jsx)(pa,{"aria-hidden":`true`})}),(0,L.jsx)(`button`,{className:V(`reference-sort-button`,r===`type`?`is-active`:void 0),type:`button`,"aria-label":`Sort files by type`,"aria-pressed":r===`type`,onClick:()=>l(`type`),children:(0,L.jsx)($a,{"aria-hidden":`true`})})]})]}),_(m),h.map(e=>(0,L.jsx)(Vx,{name:e.name,rows:e.rows,...o===void 0?{}:{onSelectFile:o}},e.name))]})]}),(0,L.jsxs)(`aside`,{className:`reference-detail-card`,"aria-label":`Selected reference content`,children:[(0,L.jsxs)(`div`,{className:`reference-detail-head`,children:[(0,L.jsx)(`h4`,{children:t?.title??`No file selected`}),t?.meta===void 0?null:(0,L.jsx)(`p`,{children:t.meta})]}),(0,L.jsxs)(`div`,{className:`reference-detail-section`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`Summary`}),(0,L.jsx)(`p`,{className:`reference-summary`,children:t?.summary??`Summary not available yet`}),t?.summaryStatus===void 0?null:(0,L.jsx)(`p`,{className:`reference-summary-status`,children:t.summaryStatus})]}),(0,L.jsxs)(`div`,{className:`reference-detail-section`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`Content`}),t?.content===void 0?t?.imageUrl===void 0?(0,L.jsx)(`p`,{className:`reference-content`,children:t?.unavailableReason??`Select a reference file`}):(0,L.jsx)(`img`,{className:`reference-image-preview`,src:t.imageUrl,alt:t.title,decoding:`async`}):(0,L.jsx)(`pre`,{className:`reference-content`,children:(0,L.jsx)(`code`,{children:t.content})})]})]})]})})]})}function Wx(e){return e.status===`loading`?{status:`running`,label:`Loading`}:e.status===`not_declared`?{status:`todo`,label:`No artifact`}:e.status===`invalid`?{status:`failed`,label:`Invalid`}:e.status===`updating`?{status:`running`,label:`Updating`}:e.previewStatus===`ready`?null:e.previewStatus===`starting`?{status:`running`,label:`Starting`}:e.previewStatus===`failed`?{status:`failed`,label:`Failed`}:{status:`todo`,label:`Idle`}}function Gx({state:e,empty:t,emptyWatermark:n,iframeRef:r,onPreviewLoad:i}){if(e.status===`declared`&&e.previewStatus===`ready`&&e.previewUrl!==void 0)return(0,L.jsx)(`iframe`,{className:`artifact-iframe`,src:e.previewUrl,title:`${e.title} artifact preview`,sandbox:`allow-scripts allow-forms allow-same-origin`,referrerPolicy:`no-referrer`,ref:r,onLoad:i});let a,o=`neutral`;return e.status===`loading`?a=`Loading artifact`:e.status===`updating`?a=`Artifact is updating`:e.status===`not_declared`?a=`No artifact`:e.status===`invalid`?(o=`error`,a=`Invalid artifact. ${e.message}`):e.previewStatus===`starting`?a=`Preview is starting`:e.previewStatus===`failed`?(o=`error`,a=e.errorMessage??`Preview failed`):a=`Preview is idle`,(0,L.jsx)(`div`,{className:`artifact-empty-preview`,role:e.status===`invalid`?`alert`:void 0,children:t??(0,L.jsx)(oo,{tone:o,watermark:n,children:a})})}function Kx({state:e,error:t=null,empty:n,emptyWatermark:r,headerAction:i,iframeRef:a,onPreviewLoad:o,className:s,...c}){let l=t===null?e:{status:`invalid`,message:t},u=Wx(l);return(0,L.jsxs)(`section`,{className:V(`panel artifacts-panel`,s),"aria-label":`Artifacts`,...c,children:[(0,L.jsxs)(`div`,{className:`panel-header`,children:[(0,L.jsxs)(`div`,{className:`panel-title`,children:[(0,L.jsx)(_o,{icon:(0,L.jsx)(Fa,{"aria-hidden":`true`})}),(0,L.jsx)(`h3`,{children:`Artifacts`})]}),(0,L.jsxs)(`div`,{className:`panel-actions`,children:[i,u===null?null:(0,L.jsx)(Oc,{status:u.status,children:u.label})]})]}),(0,L.jsx)(`div`,{className:`artifact-board-body`,children:(0,L.jsx)(`div`,{className:`artifact-preview-frame`,"aria-label":`Current artifact`,children:(0,L.jsx)(Gx,{state:l,empty:n,emptyWatermark:r,...a===void 0?{}:{iframeRef:a},...o===void 0?{}:{onPreviewLoad:o}})})})]})}function qx(e){return e.accessibleName?.trim()||e.textExcerpt?.trim()||void 0}function Jx(e){let t=e.role?.trim()||e.tagName.trim()||e.elementKind,n=qx(e);return n===void 0?t:`${t} “${n}”`}function Yx({active:e,pending:t=!1,className:n,...r}){let i=(0,L.jsxs)(L.Fragment,{children:[e?(0,L.jsx)(oa,{"aria-hidden":`true`}):(0,L.jsx)(Ra,{"aria-hidden":`true`}),t?`Submitting…`:e?`Submit comments`:`Comments`]});return e?(0,L.jsx)(wc,{className:V(`artifact-comments-action`,`is-active`,n),type:`button`,...r,children:i}):(0,L.jsx)(Tc,{className:V(`artifact-comments-action`,n),type:`button`,...r,children:i})}function Xx({author:e,avatar:t,comment:n,annotations:r,selectedTarget:i,selectedTime:a,stale:o=!1,bridgeUnavailableReason:s,sendDisabledReason:c,onCommentChange:l,onAddAnnotation:u,onCancelSelection:d,onRemoveAnnotation:f,onReset:p,className:m,...h}){let g=i!==void 0&&n.trim().length>0&&!o;function _(e){e.preventDefault(),g&&u()}function v(e){e.key!==`Enter`||e.shiftKey||e.metaKey||e.nativeEvent.isComposing||(e.preventDefault(),g&&u())}return(0,L.jsxs)(`aside`,{className:V(`artifact-comments-rail`,m),"aria-label":`Artifact comments`,...h,children:[o?(0,L.jsxs)(`div`,{className:`artifact-comments-state is-warning`,role:`status`,children:[(0,L.jsx)(`strong`,{children:`Artifact updated`}),(0,L.jsx)(`span`,{children:`These comments belong to an earlier preview.`}),(0,L.jsx)(Tc,{type:`button`,onClick:p,children:`Start over`})]}):null,s===void 0?null:(0,L.jsxs)(`div`,{className:`artifact-comments-state is-warning`,role:`status`,children:[(0,L.jsx)(`strong`,{children:`Comments unavailable`}),(0,L.jsx)(`span`,{children:s})]}),c===void 0?null:(0,L.jsxs)(`div`,{className:`artifact-comments-state is-warning`,role:`status`,children:[(0,L.jsx)(`strong`,{children:`Comments cannot be submitted yet`}),(0,L.jsx)(`span`,{children:c})]}),r.map((n,r)=>(0,L.jsxs)(Bb,{"aria-label":`Comment ${r+1} on ${Jx(n.target)}`,author:e,avatar:t,className:`artifact-comment-card is-sent`,...n.time===void 0?{}:{time:n.time},children:[(0,L.jsx)(`p`,{children:n.comment}),(0,L.jsx)(Cc,{className:`artifact-comment-dismiss`,label:`Remove comment ${r+1}`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`}),type:`button`,onClick:()=>f(r)})]},n.key)),i===void 0||o?null:(0,L.jsxs)(Bb,{"aria-label":`Comment on ${Jx(i)}`,author:e,avatar:t,className:`artifact-comment-card is-composing`,...a===void 0?{}:{time:a},children:[(0,L.jsx)(Cc,{className:`artifact-comment-dismiss`,label:`Cancel selected element`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`}),type:`button`,onClick:d}),(0,L.jsx)(`form`,{className:`artifact-comment-composer composer`,onSubmit:_,children:(0,L.jsxs)(`div`,{className:`composer-input-shell`,children:[(0,L.jsx)(`textarea`,{"aria-label":`Comment for selected element`,autoFocus:!0,maxLength:1e3,placeholder:`Write a comment`,rows:1,value:n,onChange:e=>l(e.target.value),onKeyDown:v}),(0,L.jsx)(`div`,{className:`composer-tools`,children:(0,L.jsx)(`button`,{"aria-label":`Add comment`,className:`composer-tool-button composer-send-button`,disabled:!g,title:`Add comment`,type:`submit`,children:(0,L.jsx)(Ka,{"aria-hidden":`true`})})})]})})]})]})}function Zx({artifactTitle:e,summary:t,annotations:n,onViewAnnotation:r,className:i,...a}){let o=t?.trim()||n[0]?.comment.trim()||`Artifact feedback`;return(0,L.jsxs)(`details`,{className:V(`artifact-feedback-card`,i),...a,children:[(0,L.jsxs)(`summary`,{children:[(0,L.jsx)(Ma,{"aria-hidden":`true`}),(0,L.jsxs)(`span`,{className:`artifact-feedback-card-heading`,children:[(0,L.jsx)(`strong`,{children:e}),(0,L.jsxs)(`span`,{children:[n.length,` `,n.length===1?`note`:`notes`]}),(0,L.jsx)(`small`,{children:o})]}),(0,L.jsx)(sa,{className:`artifact-feedback-card-chevron`,"aria-hidden":`true`})]}),(0,L.jsxs)(`div`,{className:`artifact-feedback-card-body`,children:[t?.trim()?(0,L.jsx)(`p`,{className:`artifact-feedback-card-summary`,children:t}):null,(0,L.jsx)(`ol`,{children:n.map((e,t)=>(0,L.jsxs)(`li`,{children:[(0,L.jsx)(`span`,{className:`artifact-feedback-note-index`,children:t+1}),(0,L.jsxs)(`span`,{className:`artifact-feedback-note-copy`,children:[(0,L.jsx)(`strong`,{children:Jx(e.target)}),(0,L.jsx)(`small`,{children:e.documentUrl}),(0,L.jsx)(`span`,{children:e.comment}),e.canView&&r!==void 0?(0,L.jsxs)(`button`,{type:`button`,onClick:()=>r(t),children:[(0,L.jsx)(ka,{"aria-hidden":`true`}),`View in Artifact`]}):null]})]},`${e.documentUrl}:${t}`))})]})]})}function Qx({row:e}){return e.selected===!0?(0,L.jsx)(_a,{"aria-hidden":`true`}):(0,L.jsx)(Xa,{"aria-hidden":`true`})}function $x({skills:e,communityLinks:t=[],detail:n,uploadPending:r=!1,deletePending:i=!1,empty:a,onSelectSkill:o,onUploadSkill:s,onDeleteSkill:c,className:l,...u}){let d=e.find(e=>e.selected===!0)?.name,f=t.length>0;return(0,L.jsxs)(`section`,{className:V(`panel references-panel skills-panel`,l),"aria-label":`Skills`,...u,children:[(0,L.jsxs)(`div`,{className:`panel-header`,children:[(0,L.jsxs)(`div`,{className:`panel-title`,children:[(0,L.jsx)(_o,{icon:(0,L.jsx)(Xa,{"aria-hidden":`true`})}),(0,L.jsx)(`h3`,{children:`Skills`})]}),(0,L.jsx)(`div`,{className:`panel-actions`,children:(0,L.jsx)(rx,{variant:`action`,className:`reference-upload-button`,label:`Upload`,pendingLabel:`Uploading`,pending:r,accept:`.zip,application/zip,application/x-zip-compressed`,onFileUpload:s})})]}),(0,L.jsx)(`div`,{className:`reference-board-body`,children:e.length===0&&!f?(0,L.jsx)(`div`,{className:`reference-board-empty`,children:a??(0,L.jsx)(`div`,{className:`reference-empty`,children:`No skills`})}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{className:`reference-list`,"aria-label":`Skill list`,children:[f?(0,L.jsxs)(`div`,{className:`skill-community-section`,"aria-label":`Skill communities`,children:[(0,L.jsx)(`div`,{className:`reference-section-label`,children:`Skill communities`}),(0,L.jsx)(`div`,{className:`skill-community-grid`,children:t.map(e=>(0,L.jsxs)(`a`,{className:`skill-community-card`,href:e.href,target:`_blank`,rel:`noreferrer`,children:[(0,L.jsx)(`span`,{className:`skill-community-card-icon`,"aria-hidden":`true`,children:(0,L.jsx)(Ea,{})}),(0,L.jsx)(`span`,{className:`skill-community-card-main`,children:(0,L.jsx)(`strong`,{children:e.title})})]},e.href))})]}):null,e.length===0?null:(0,L.jsx)(`div`,{className:`reference-section-label`,children:`User skills`}),e.map(e=>(0,L.jsxs)(`button`,{className:V(`reference-row`,e.selected===!0?`is-selected`:void 0),type:`button`,"aria-label":`Select skill ${e.name}`,"aria-current":e.selected===!0?`true`:void 0,onClick:()=>o?.(e.name),children:[(0,L.jsx)(`span`,{className:`reference-file-icon`,"aria-hidden":`true`,children:(0,L.jsx)(Qx,{row:e})}),(0,L.jsxs)(`span`,{className:`reference-row-main`,children:[(0,L.jsx)(`strong`,{children:e.name}),(0,L.jsx)(`span`,{children:e.shortDescription??e.description})]})]},e.name))]}),(0,L.jsx)(`aside`,{className:`reference-detail-card`,"aria-label":`Selected skill content`,children:e.length===0?(0,L.jsx)(`div`,{className:`reference-board-empty`,children:a??(0,L.jsx)(`div`,{className:`reference-empty`,children:`No skills`})}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`div`,{className:`reference-detail-head skill-detail-head`,children:[(0,L.jsxs)(`div`,{className:`skill-detail-title`,children:[(0,L.jsx)(`h4`,{children:n?.title??`No skill selected`}),n?.description===void 0?null:(0,L.jsx)(`p`,{children:n.description}),n?.updatedLabel===void 0?null:(0,L.jsx)(`p`,{children:n.updatedLabel})]}),d===void 0||c===void 0?null:(0,L.jsxs)(Tc,{className:`skill-delete-button`,type:`button`,disabled:i,"aria-busy":i,onClick:()=>c(d),children:[(0,L.jsx)(to,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:i?`Deleting`:`Delete`})]})]}),(0,L.jsxs)(`div`,{className:`reference-detail-section`,children:[(0,L.jsx)(`span`,{className:`task-section-label`,children:`SKILL.md`}),n?.skillMd===void 0?(0,L.jsx)(`p`,{className:`reference-content`,children:n?.unavailableReason??`Select a skill`}):(0,L.jsx)(`pre`,{className:`reference-content`,children:(0,L.jsx)(`code`,{"aria-label":`Skill markdown for ${n.title}`,children:n.skillMd})})]})]})})]})})]})}function eS({label:e,children:t}){return(0,L.jsxs)(`section`,{className:`timeline-trace-section`,children:[(0,L.jsx)(`span`,{className:`timeline-trace-label`,children:e}),(0,L.jsx)(`div`,{className:`timeline-trace-section-body`,children:t})]})}function tS(e){return e.replaceAll(`_`,` `)}function nS(e){return e===`passed`?`success`:e===`failed`?`error`:`warning`}function rS(e){return e.status===`promoted`?`success`:e.status===`not_promoted`?`error`:`neutral`}function iS(e){if(e.skipReasonSummary!==void 0)return e.skipReasonSummary;switch(e.checks){case`passed`:return`All validation checks passed.`;case`failed`:return`Validation checks failed.`;case`skipped`:return`Validation was skipped.`}}function aS(e){if(e.summary!==void 0)return e.summary;switch(e.status){case`promoted`:return`Changes were promoted after verification.`;case`not_promoted`:return`Changes were not promoted.`;case`not_attempted`:return`Promotion was not attempted.`}}function oS(e){switch(e){case`added`:return`+`;case`modified`:return`~`;case`deleted`:return`-`;case`renamed`:return`~`;case`unknown`:return`?`}}var sS=3;function cS({expanded:e,collapsedLabel:t,expandedLabel:n,onClick:r}){return(0,L.jsxs)(`button`,{"aria-expanded":e,className:V(`timeline-trace-more`,e&&`is-expanded`),onClick:r,type:`button`,children:[(0,L.jsx)(`span`,{children:e?n:t}),(0,L.jsx)(sa,{"aria-hidden":`true`})]})}function lS({expanded:e,hiddenCount:t,label:n,onClick:r}){return t<=0?null:(0,L.jsx)(cS,{collapsedLabel:`Show ${t} more ${n}${t===1?``:`s`}`,expanded:e,expandedLabel:`Show fewer ${n}s`,onClick:r})}function uS(e){let t=[];return(e.origin!==void 0||e.decisions!==void 0||e.clarification!==void 0)&&t.push({id:`context`,label:`Context`,tone:`neutral`}),e.contract!==void 0&&t.push({id:`contract`,label:`Contract`,tone:`neutral`}),(e.result!==void 0||e.changes!==void 0)&&t.push({id:`result`,label:`Result`,tone:e.tone}),e.verification!==void 0&&t.push({id:`checks`,label:`Checks`,tone:nS(e.verification.checks)}),e.promotion!==void 0&&t.push({id:`promotion`,label:`Promotion`,tone:rS(e.promotion)}),e.checkpoint!==void 0&&t.push({id:`checkpoint`,label:`Checkpoint`,tone:e.tone}),t}function dS({trace:e}){let t=uS(e),n=e.links.filter(e=>e.onClick!==void 0),[r,i]=(0,I.useState)(()=>new Set),a=r.has(`origin`),o=r.has(`decisions`),s=r.has(`clarification-answers`),c=r.has(`scope`),l=r.has(`changes`),u=r.has(`checkpoint`),d=r.has(`generated-files`),f=e.origin?.snippets??[],p=e.decisions===void 0||o?e.decisions??[]:e.decisions.slice(0,sS),m=e.clarification?.answers===void 0||s?e.clarification?.answers??[]:e.clarification.answers.slice(0,sS),h=e.contract===void 0||c?e.contract?.scope??[]:e.contract.scope.slice(0,sS),g=e.checkpoint===void 0||u?e.checkpoint?.items??[]:e.checkpoint.items.slice(0,sS),_=e.checkpoint?.generatedFiles===void 0||d?e.checkpoint?.generatedFiles??[]:e.checkpoint.generatedFiles.slice(0,sS);function v(e){i(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}return(0,L.jsxs)(`div`,{className:V(`timeline-trace-card`,`is-${e.tone}`),children:[e.summary===void 0||e.result!==void 0?null:(0,L.jsx)(`p`,{className:`timeline-trace-summary`,children:e.summary}),t.length===0?null:(0,L.jsx)(`ol`,{className:`timeline-trace-path`,"aria-label":`Recorded task trace`,children:t.map(e=>(0,L.jsxs)(`li`,{className:`is-${e.tone}`,children:[(0,L.jsx)(`span`,{"aria-hidden":`true`}),(0,L.jsx)(`strong`,{children:e.label})]},e.id))}),e.origin===void 0?null:(0,L.jsxs)(eS,{label:`Origin`,children:[e.origin.title===void 0?null:(0,L.jsx)(`strong`,{className:`timeline-trace-title`,children:e.origin.title}),e.origin.summary===void 0?null:(0,L.jsx)(`p`,{children:e.origin.summary}),e.origin.unavailableReason===void 0?null:(0,L.jsx)(`small`,{className:`timeline-trace-muted`,children:e.origin.unavailableReason}),f.length>0?(0,L.jsx)(cS,{collapsedLabel:`Show ${f.length} source message${f.length===1?``:`s`}`,expanded:a,expandedLabel:`Show fewer source messages`,onClick:()=>v(`origin`)}):e.origin.sourceCount===void 0?null:(0,L.jsxs)(`small`,{className:`timeline-trace-muted`,children:[e.origin.sourceCount,` source message`,e.origin.sourceCount===1?``:`s`]}),!a||f.length===0?null:(0,L.jsx)(`ul`,{className:`timeline-trace-snippet-list`,children:f.map(e=>(0,L.jsx)(`li`,{className:`timeline-trace-snippet`,children:e.onClick===void 0?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`span`,{children:[e.author,` · `,e.createdAt]}),(0,L.jsx)(`p`,{children:e.body})]}):(0,L.jsxs)(`button`,{className:`timeline-trace-snippet-button`,onClick:e.onClick,type:`button`,children:[(0,L.jsxs)(`span`,{children:[e.author,` · `,e.createdAt]}),(0,L.jsx)(`p`,{children:e.body})]})},e.id))})]}),e.decisions===void 0||e.decisions.length===0?null:(0,L.jsxs)(eS,{label:`Accepted Context`,children:[(0,L.jsx)(`ul`,{className:`timeline-trace-list`,children:p.map(e=>(0,L.jsxs)(`li`,{children:[e.title===void 0?null:(0,L.jsx)(Ec,{tone:`neutral`,children:e.title}),(0,L.jsx)(`span`,{children:e.summary})]},e.id))}),(0,L.jsx)(lS,{expanded:o,hiddenCount:Math.max(e.decisions.length-sS,0),label:`context item`,onClick:()=>v(`decisions`)})]}),e.clarification===void 0?null:(0,L.jsxs)(eS,{label:`Clarification`,children:[e.clarification.title===void 0?null:(0,L.jsx)(`strong`,{className:`timeline-trace-title`,children:e.clarification.title}),e.clarification.summary===void 0?null:(0,L.jsx)(`p`,{children:e.clarification.summary}),e.clarification.request===void 0?null:(0,L.jsx)(`p`,{children:e.clarification.request}),e.clarification.status===void 0&&e.clarification.answerCount===void 0?null:(0,L.jsxs)(`div`,{className:`timeline-trace-inline`,children:[e.clarification.status===void 0?null:(0,L.jsx)(Ec,{tone:e.clarification.status===`active`?`warning`:`success`,children:e.clarification.status===`active`?`needs input`:`resolved`}),e.clarification.answerCount===void 0?null:(0,L.jsxs)(`small`,{className:`timeline-trace-muted`,children:[e.clarification.answerCount,` answer`,e.clarification.answerCount===1?``:`s`]})]}),e.clarification.answers===void 0||e.clarification.answers.length===0?null:(0,L.jsx)(`ul`,{className:`timeline-trace-snippet-list`,children:m.map(e=>(0,L.jsx)(`li`,{className:`timeline-trace-snippet`,children:e.onClick===void 0?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`span`,{children:[e.author,` · `,e.createdAt]}),(0,L.jsx)(`p`,{children:e.body})]}):(0,L.jsxs)(`button`,{className:`timeline-trace-snippet-button`,onClick:e.onClick,type:`button`,children:[(0,L.jsxs)(`span`,{children:[e.author,` · `,e.createdAt]}),(0,L.jsx)(`p`,{children:e.body})]})},e.id))}),e.clarification.answers===void 0?null:(0,L.jsx)(lS,{expanded:s,hiddenCount:Math.max(e.clarification.answers.length-sS,0),label:`answer`,onClick:()=>v(`clarification-answers`)})]}),e.contract===void 0?null:(0,L.jsxs)(eS,{label:`Contract`,children:[(0,L.jsx)(`p`,{children:e.contract.goal}),h.length===0?null:(0,L.jsx)(`ul`,{className:`timeline-trace-list is-bulleted`,children:h.map((e,t)=>(0,L.jsx)(`li`,{children:(0,L.jsx)(`span`,{children:e})},`scope-${t}`))}),(0,L.jsx)(lS,{expanded:c,hiddenCount:Math.max(e.contract.scope.length-sS,0),label:`scope item`,onClick:()=>v(`scope`)}),c&&e.contract.truncated===!0?(0,L.jsx)(`small`,{className:`timeline-trace-muted`,children:`Additional scope items are outside this bounded audit preview.`}):null]}),e.result===void 0?null:(0,L.jsxs)(eS,{label:`Result`,children:[(0,L.jsx)(`p`,{children:e.result.summary}),e.result.errorCode===void 0?null:(0,L.jsx)(`code`,{className:`timeline-trace-code`,children:e.result.errorCode})]}),e.changes===void 0?null:(0,L.jsxs)(eS,{label:`Changes`,children:[e.changes.items.length===0?(0,L.jsx)(`p`,{className:`timeline-trace-muted`,children:`No repo changes recorded.`}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(cS,{collapsedLabel:`Show ${e.changes.items.length} file change${e.changes.items.length===1?``:`s`}`,expanded:l,expandedLabel:`Show fewer file changes`,onClick:()=>v(`changes`)}),l?(0,L.jsx)(`ul`,{className:`timeline-trace-diff-list`,children:e.changes.items.map(e=>(0,L.jsxs)(`li`,{className:`is-${e.status}`,children:[(0,L.jsx)(`span`,{className:`timeline-trace-diff-mark`,children:oS(e.status)}),(0,L.jsx)(`code`,{children:e.previousPath===void 0?e.path:`${e.previousPath} -> ${e.path}`})]},`${e.status}:${e.path}`))}):null]}),l&&e.changes.totalCount>e.changes.items.length?(0,L.jsxs)(`small`,{className:`timeline-trace-muted`,children:[e.changes.totalCount-e.changes.items.length,` additional files are outside this bounded audit preview.`]}):null]}),e.verification===void 0?null:(0,L.jsx)(eS,{label:`Verification`,children:(0,L.jsxs)(`div`,{className:`timeline-trace-inline`,children:[(0,L.jsx)(Ec,{tone:nS(e.verification.checks),children:tS(e.verification.checks)}),(0,L.jsx)(`p`,{children:iS(e.verification)})]})}),e.promotion===void 0?null:(0,L.jsx)(eS,{label:`Promotion`,children:(0,L.jsxs)(`div`,{className:`timeline-trace-inline`,children:[(0,L.jsx)(Ec,{tone:rS(e.promotion),children:tS(e.promotion.status)}),(0,L.jsx)(`p`,{children:aS(e.promotion)})]})}),e.checkpoint===void 0?null:(0,L.jsxs)(eS,{label:`Checkpoint`,children:[(0,L.jsxs)(`div`,{className:`timeline-trace-counters`,children:[(0,L.jsxs)(`span`,{children:[e.checkpoint.counters.completed,` completed`]}),(0,L.jsxs)(`span`,{children:[e.checkpoint.counters.failed,` failed`]}),(0,L.jsxs)(`span`,{children:[e.checkpoint.counters.remaining,` remaining`]})]}),(0,L.jsx)(`ul`,{className:`timeline-trace-list`,children:g.map(e=>(0,L.jsxs)(`li`,{children:[(0,L.jsx)(Ec,{tone:e.status===`done`?`success`:`error`,children:e.status===`done`?`done`:`failed`}),(0,L.jsx)(`strong`,{children:e.title}),(0,L.jsx)(`span`,{children:e.summary})]},e.id))}),(0,L.jsx)(lS,{expanded:u,hiddenCount:Math.max(e.checkpoint.items.length-sS,0),label:`checkpoint item`,onClick:()=>v(`checkpoint`)}),e.checkpoint.generatedFiles===void 0||e.checkpoint.generatedFiles.length===0?null:(0,L.jsx)(`ul`,{className:`timeline-trace-file-list`,children:_.map(e=>(0,L.jsxs)(`li`,{children:[(0,L.jsx)(`strong`,{children:e.name}),(0,L.jsx)(`code`,{children:e.path})]},e.id))}),e.checkpoint.generatedFiles===void 0?null:(0,L.jsx)(lS,{expanded:d,hiddenCount:Math.max(e.checkpoint.generatedFiles.length-sS,0),label:`generated file`,onClick:()=>v(`generated-files`)}),(u||d)&&e.checkpoint.truncated===!0?(0,L.jsx)(`small`,{className:`timeline-trace-muted`,children:`Additional checkpoint evidence is outside this bounded audit preview.`}):null]}),n.length===0?null:(0,L.jsx)(eS,{label:`Links`,children:(0,L.jsx)(`div`,{className:`timeline-trace-links`,children:n.map(e=>(0,L.jsxs)(Tc,{className:`timeline-trace-link`,onClick:e.onClick,type:`button`,children:[(0,L.jsx)(ga,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:e.label})]},e.id))})})]})}function fS({item:e,expanded:t,active:n,onActivate:r,onToggle:i}){let a=e.trace,o=a!==void 0,s=e.tone??`neutral`,c=s===`error`?(0,L.jsx)(ao,{"aria-hidden":`true`}):s===`warning`?(0,L.jsx)(Pa,{"aria-hidden":`true`}):s===`sync`?(0,L.jsx)(Oa,{"aria-hidden":`true`}):(0,L.jsx)(oa,{"aria-hidden":`true`});return(0,L.jsxs)(`li`,{className:V(`timeline-event-item`,o?`has-trace`:void 0,t?`is-expanded`:void 0,n?`is-current`:void 0,e.tone===void 0?void 0:`is-${e.tone}`),id:`timeline-event-${e.id}`,children:[(0,L.jsx)(`time`,{className:`timeline-event-time`,children:e.occurredAt}),(0,L.jsx)(`div`,{className:`timeline-event-marker`,"aria-hidden":`true`}),(0,L.jsxs)(`div`,{className:`timeline-event-main`,children:[(0,L.jsxs)(`button`,{"aria-expanded":o?t:void 0,className:`timeline-event-toggle`,disabled:!o,onClick:()=>{r(),i()},type:`button`,children:[(0,L.jsx)(`span`,{className:V(`timeline-event-status-icon`,`is-${s}`),"aria-hidden":`true`,children:c}),(0,L.jsxs)(`span`,{className:`timeline-event-copy`,children:[(0,L.jsx)(`span`,{className:`timeline-event-stage`,children:e.stageLabel??(e.kind===`checkpoint`?`Checkpoint`:`Task event`)}),(0,L.jsxs)(`span`,{className:`timeline-event-title-line`,children:[(0,L.jsx)(`h4`,{children:e.taskTitle??e.title}),e.tokenLabel===void 0?null:(0,L.jsx)(`span`,{className:`timeline-event-token`,children:e.tokenLabel})]})]}),o?(0,L.jsx)(sa,{className:`timeline-event-chevron`,"aria-hidden":`true`}):null]}),a!==void 0&&t?(0,L.jsx)(dS,{trace:a}):null]})]})}function pS(e){let t=new Map;for(let n of e){let e=n.taskId===void 0?`event:${n.id}`:`task:${n.taskId}`,r=t.get(e);r===void 0?t.set(e,{id:e,title:n.taskTitle??n.title,...n.taskId===void 0?{}:{taskId:n.taskId},items:[n]}):r.items.push(n)}return[...t.values()]}function mS({tokenOverview:e,items:t,scoreUnits:n=[],empty:r,defaultExpandedItemIds:i,className:a,...o}){let[s,c]=(0,I.useState)(()=>new Set(i??[])),[l,u]=(0,I.useState)(()=>n.at(-1)?.id),[d,f]=(0,I.useState)(0),p=(0,I.useRef)(null),m=pS(t),h=new Set(t.flatMap(e=>e.taskId===void 0?[]:[e.taskId])).size;(0,I.useEffect)(()=>{if(n.length===0){u(void 0);return}(l===void 0||!n.some(e=>e.id===l))&&u(n.at(-1)?.id)},[l,n]),(0,I.useEffect)(()=>{let e=p.current;if(e===null)return;let t=e;t.scrollLeft=t.scrollWidth;function n(e){if(Math.abs(e.deltaY)<=Math.abs(e.deltaX))return;let n=Math.max(0,t.scrollWidth-t.clientWidth),r=Math.min(n,Math.max(0,t.scrollLeft+e.deltaY));r!==t.scrollLeft&&(e.preventDefault(),t.scrollLeft=r)}return t.addEventListener(`wheel`,n,{passive:!1}),()=>t.removeEventListener(`wheel`,n)},[n.length]),(0,I.useEffect)(()=>{let e=p.current;if(e===null)return;let t=()=>f(e.clientWidth);if(t(),typeof ResizeObserver>`u`)return window.addEventListener(`resize`,t),()=>window.removeEventListener(`resize`,t);let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[n.length]);function g(e,t=!1){u(e),t&&(c(t=>new Set(t).add(e)),window.requestAnimationFrame(()=>{document.getElementById(`timeline-event-${e}`)?.scrollIntoView({behavior:`smooth`,block:`center`})}))}function _(e){c(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}return(0,L.jsx)(go,{className:V(`timeline-panel`,a),title:`Timeline`,icon:(0,L.jsx)(aa,{"aria-hidden":`true`}),...o,children:(0,L.jsxs)(`div`,{className:`timeline-board-body`,children:[(0,L.jsxs)(`section`,{className:`timeline-events`,"aria-label":`Project timeline`,children:[(0,L.jsx)(`div`,{className:`timeline-audit-header`,children:(0,L.jsxs)(`div`,{className:`timeline-audit-intro`,children:[(0,L.jsx)(`h4`,{children:`Task traceability`}),(0,L.jsxs)(`div`,{className:`timeline-audit-meta`,"aria-label":`Timeline record summary`,children:[(0,L.jsx)(`span`,{children:h===1?`1 task`:`${h} tasks`}),(0,L.jsx)(`span`,{children:t.length===1?`1 record`:`${t.length} records`})]})]})}),t.length===0?r:(0,L.jsx)(`div`,{className:`timeline-task-groups`,children:m.map(e=>(0,L.jsxs)(`section`,{className:`timeline-task-group`,"aria-label":e.title,children:[(0,L.jsxs)(`header`,{className:`timeline-task-group-head`,children:[(0,L.jsx)(`span`,{children:e.taskId===void 0?`Project record`:`Task trace`}),(0,L.jsx)(`strong`,{children:e.title})]}),(0,L.jsx)(`ol`,{className:`timeline-event-list`,children:e.items.map(e=>(0,L.jsx)(fS,{active:l===e.id,expanded:s.has(e.id),item:e,onActivate:()=>g(e.id),onToggle:()=>_(e.id)},e.id))})]},e.id))})]}),(0,L.jsxs)(`section`,{className:`timeline-overview`,"aria-label":`Timeline score and token usage`,children:[n.length===0?null:(0,L.jsx)(`div`,{className:`timeline-score-index`,ref:p,role:`group`,"aria-label":`Timeline score index`,children:(0,L.jsx)(us,{"aria-label":`Timeline event score`,...l===void 0?{}:{activeUnitId:l},edgePadding:0,minimumWidth:d,onUnitSelect:e=>g(e,!0),openingBarline:`double`,openingClef:`treble`,horizontalSpacingScale:hs,reveal:!0,scale:ps,units:n})}),(0,L.jsxs)(`div`,{className:`timeline-overview-token`,"aria-label":`Total tokens`,children:[(0,L.jsx)(`span`,{children:`Total tokens`}),(0,L.jsx)(`strong`,{children:e.totalLabel})]})]})]})})}function hS(e){let t=(0,I.useId)();return(0,L.jsxs)(`section`,{className:`reference-connections`,"aria-label":`External References`,children:[(0,L.jsx)(`strong`,{children:`External References`}),(0,L.jsx)(`p`,{children:`Originals stay in Feishu. Tutti reads them when needed. Project files are listed below.`}),e.canManage?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(`form`,{onSubmit:t=>{t.preventDefault(),e.onConnect()},children:[(0,L.jsxs)(`label`,{children:[(0,L.jsx)(`span`,{children:`Feishu document / file link or Docx ID`}),(0,L.jsx)(Mc,{"aria-describedby":t,placeholder:`Paste a Docx / Wiki / file link or Docx ID`,value:e.draft,autoComplete:`off`,autoCapitalize:`none`,spellCheck:!1,maxLength:2048,disabled:e.pending,onChange:t=>e.onDraftChange(t.target.value)})]}),(0,L.jsx)(`p`,{id:t,children:`Wiki links are supported when the linked page is a Docx document. Cloud file links must use /file/. You can also submit a link in the group with /tutti reference.`}),(0,L.jsx)(Sc,{type:`submit`,disabled:e.pending||e.draft.trim()===``,children:e.connecting?`Adding…`:`Add Reference`})]}),(0,L.jsx)(Sc,{disabled:e.pending,onClick:e.onAuthorize,children:`Authorize Docs`}),e.onAuthorizeFiles?(0,L.jsx)(Sc,{disabled:e.pending,onClick:e.onAuthorizeFiles,children:`Authorize cloud files`}):null,e.submissions?.length?(0,L.jsxs)(`section`,{"aria-label":`Pending Reference requests`,children:[(0,L.jsx)(`strong`,{children:`From the group — awaiting confirmation`}),(0,L.jsx)(`ul`,{children:e.submissions.map(t=>(0,L.jsxs)(`li`,{children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`strong`,{children:t.name}),(0,L.jsx)(`span`,{children:t.detail})]}),(0,L.jsx)(Sc,{disabled:e.pending,onClick:t.onConfirm,"aria-label":`Confirm ${t.name}`,children:`Confirm`})]},t.id))})]}):null]}):null,e.loading?(0,L.jsx)(`p`,{role:`status`,children:`Loading references…`}):null,e.feedback===void 0?null:(0,L.jsx)(`p`,{role:`status`,children:e.feedback}),e.error===void 0?null:(0,L.jsxs)(`div`,{role:`alert`,children:[(0,L.jsx)(`p`,{children:e.error}),(0,L.jsx)(Sc,{onClick:e.onReload,disabled:e.pending,children:`Reload references`})]}),e.items.length===0?null:(0,L.jsx)(`ul`,{children:e.items.map(e=>(0,L.jsx)(`li`,{children:(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`strong`,{children:e.name}),(0,L.jsx)(`span`,{children:e.status})]})},e.id))})]})}var gS=new Intl.NumberFormat(`en-US`),_S=Ws(`beethoven-ode-to-joy`);function vS(e){return[...e].reverse().map((e,t)=>{let n=_S.units[t%_S.units.length];if(n===void 0)throw Error(`Timeline score theme unexpectedly has no units`);return{...n,id:e.id,label:`Open ${e.stageLabel??e.title}`}})}function yS(e){return gS.format(e)}function bS(e){if(e!==void 0)switch(e){case`completed`:return`success`;case`failed`:return`error`;case`needs_human`:return`warning`}}function xS(e){if(e.kind===`task_accepted`)return`Task accepted`;if(e.kind===`checkpoint`)return`Checkpoint`;switch(e.update_state){case`completed`:return`Task completed`;case`failed`:return`Task failed`;case`needs_input`:return`Needs input`;default:return`Task update`}}function SS(e,t){let n=Date.parse(e.occurred_at),r=Date.parse(t.occurred_at),i=Number.isFinite(n)&&Number.isFinite(r)?r-n:t.occurred_at.localeCompare(e.occurred_at);return i===0?t.id.localeCompare(e.id):i}function CS(e,t={}){let n=e.token_usage?.total_tokens??0,r=bS(e.status),i={id:e.id,title:e.task_title??e.title,occurredAt:Lr(e.occurred_at),kind:e.kind,stageLabel:xS(e)};return r!==void 0&&(i.tone=r),n>0&&(i.tokenLabel=`${yS(n)} tokens`),e.task_id!==void 0&&(i.taskId=e.task_id),e.task_title!==void 0&&(i.taskTitle=e.task_title),e.trace_card!==void 0&&(i.trace=TS(e.trace_card,t)),i}function wS(e,t){if(e.kind===`worklist_task`&&e.task_id!==void 0){let n=t.onOpenWorklistTask,r=e.task_id;return n===void 0?void 0:()=>n(r)}if(e.kind===`chat_message`&&e.message_id!==void 0){let n=t.onOpenChatMessage,r=e.message_id;return n===void 0?void 0:()=>n(r)}if(e.kind===`reference_file`&&e.path!==void 0){let n=t.onOpenReferenceFile,r=e.path;return n===void 0?void 0:()=>n(r)}}function TS(e,t={}){return{tone:e.tone,...e.summary===void 0?{}:{summary:e.summary},...e.origin===void 0?{}:{origin:{...e.origin.title===void 0?{}:{title:e.origin.title},...e.origin.summary===void 0?{}:{summary:e.origin.summary},...e.origin.unavailable_reason===void 0?{}:{unavailableReason:e.origin.unavailable_reason},...e.origin.source_count===void 0?{}:{sourceCount:e.origin.source_count},...e.origin.snippets===void 0?{}:{snippets:e.origin.snippets.map(e=>({id:e.message_id,author:e.author,body:e.body,createdAt:Lr(e.created_at),...t.onOpenChatMessage===void 0?{}:{onClick:()=>t.onOpenChatMessage?.(e.message_id)}}))}}},...e.decisions===void 0?{}:{decisions:e.decisions.map((e,t)=>({id:`${t}:${e.source??`decision`}`,...e.title===void 0?{}:{title:e.title},summary:e.summary}))},...e.clarification===void 0?{}:{clarification:{...e.clarification.title===void 0?{}:{title:e.clarification.title},...e.clarification.summary===void 0?{}:{summary:e.clarification.summary},...e.clarification.request===void 0?{}:{request:e.clarification.request},...e.clarification.status===void 0?{}:{status:e.clarification.status},...e.clarification.answer_count===void 0?{}:{answerCount:e.clarification.answer_count},...e.clarification.answers===void 0?{}:{answers:e.clarification.answers.map(e=>({id:e.message_id,author:e.author,body:e.body,createdAt:Lr(e.created_at),...t.onOpenChatMessage===void 0?{}:{onClick:()=>t.onOpenChatMessage?.(e.message_id)}}))}}},...e.contract===void 0?{}:{contract:{goal:e.contract.goal,scope:e.contract.scope,...e.contract.truncated===void 0?{}:{truncated:e.contract.truncated}}},...e.result===void 0?{}:{result:{summary:e.result.summary,...e.result.error_code===void 0?{}:{errorCode:e.result.error_code}}},...e.changes===void 0?{}:{changes:{items:e.changes.items.map(e=>({status:e.status,path:e.path,...e.previous_path===void 0?{}:{previousPath:e.previous_path}})),totalCount:e.changes.total_count,truncated:e.changes.truncated}},...e.verification===void 0?{}:{verification:{checks:e.verification.checks,...e.verification.skip_reason_code===void 0?{}:{skipReasonCode:e.verification.skip_reason_code},...e.verification.skip_reason_summary===void 0?{}:{skipReasonSummary:e.verification.skip_reason_summary}}},...e.promotion===void 0?{}:{promotion:{status:e.promotion.status,...e.promotion.commit_short_oid===void 0?{}:{commitShortOid:e.promotion.commit_short_oid},...e.promotion.summary===void 0?{}:{summary:e.promotion.summary},...e.promotion.reason_code===void 0?{}:{reasonCode:e.promotion.reason_code}}},...e.checkpoint===void 0?{}:{checkpoint:{counters:e.checkpoint.counters,items:e.checkpoint.items.map(e=>({id:e.task_id,title:e.title,status:e.status,summary:e.summary})),...e.checkpoint.generated_files===void 0?{}:{generatedFiles:e.checkpoint.generated_files.map(e=>({id:e.path,name:e.name,path:e.path}))},...e.checkpoint.truncated===void 0?{}:{truncated:e.checkpoint.truncated}}},links:e.links.flatMap(e=>{let n=e.task_id??e.message_id??e.path,r=wS(e,t);return r===void 0?[]:[{id:`${e.kind}:${n??e.label}`,label:e.label,onClick:r}]})}}function ES(e,t={}){let n=e.usage_overview,r=[...e.items].sort(SS).map(e=>CS(e,t));return{tokenOverview:{totalLabel:yS(n.total_tokens)},items:r,scoreUnits:vS(r)}}var DS=[{id:`prepare`,label:`Preparing workspace`},{id:`implement`,label:`Implementing with Codex`},{id:`validate`,label:`Validating result`},{id:`save`,label:`Saving result`}],OS=[{id:`workspace_inspect`,summary:`inspecting the persistent project workspace`,displayStageId:`prepare`},{id:`artifact_candidate_validate`,summary:`validating the candidate Artifact preview`,displayStageId:`validate`},{id:`provider_task_run`,summary:`running Codex task implementation`,displayStageId:`implement`},{id:`provider_retry`,summary:`retrying Codex task after a transient provider failure`,displayStageId:`implement`},{id:`candidate_diff_collect`,summary:`collecting candidate changes`,displayStageId:`validate`},{id:`checks`,summary:`running project checks`,displayStageId:`validate`},{id:`post_checks_diff_collect`,summary:`rechecking candidate changes after checks`,displayStageId:`validate`},{id:`accepted_checkpoint`,summary:`saving the validated project state as an accepted checkpoint`,displayStageId:`save`},{id:`promotion_reconcile`,summary:`reconciling promotion after mainline changed`,displayStageId:`save`},{id:`self_correction`,summary:`retrying task implementation after pipeline feedback`,displayStageId:`implement`}],kS={scratchpad_refresh:{key:`scratchpad_refresh`,label:`Refreshing Scratchpad`,target:{kind:`scratchpad`}},project_context_bootstrap:{key:`project_context_bootstrap`,label:`Preparing project context`,target:{kind:`scratchpad`}},task_compile:{key:`task_compile`,label:`Compiling Worklist tasks`,target:{kind:`scratchpad`}},context_sync:{key:`context_sync`,label:`Synchronizing project context`,target:{kind:`worklist`}},reference_summary_refresh:{key:`reference_summary_refresh`,label:`Processing reference`,target:{kind:`references`}},recovery_check:{key:`recovery_check`,label:`Recovering workspace`,target:{kind:`worklist`}},follow_up_check:{key:`follow_up_check`,label:`Checking follow-up`,target:{kind:`worklist`}}},AS=`Tutti is working on`,jS=new Set([`scratchpad_refresh`]),MS=`task_compile`,NS=`project_context_bootstrap`,PS=3,FS={analyzing_task:`Analyzing the task`,searching_codebase:`Searching the codebase`,reading_files:`Reading project files`,planning:`Planning the next change`,editing_files:`Editing project files`,running_checks:`Running project checks`,running_command:`Running a project command`,using_tool:`Using a project tool`,waiting_for_approval:`Waiting for approval`,preparing_result:`Preparing the result`,reading_context:`Reading project context`,finalizing:`Preparing the result`};function IS(e){if(e===void 0)return null;if(typeof e==`number`)return Number.isFinite(e)?e:null;if(e instanceof Date)return e.getTime();let t=Date.parse(e);return Number.isNaN(t)?null:t}function LS(e){return IS(e.now)??Date.now()}function RS(e){if(e<60)return`${e}s`;let t=Math.floor(e/60),n=e%60;if(t<60)return`${t}m${n}s`;let r=Math.floor(t/60),i=t%60;return`${r}h${String(i).padStart(2,`0`)}m`}function zS(e,t){let n=IS(e);if(n!==null)return RS(Math.max(0,Math.floor((LS(t)-n)/1e3)))}function BS(e,t){return zS(e.active_activity?.started_at??e.runtime?.started_at,t)}function VS(e){let t=e.runtime;if(t===void 0)return;let n=e.active_activity?.activity_ref;if(!(n!==void 0&&t.activity_ref!==n))return t}function HS(e){if(e<1e3)return String(e);if(e<1e6){let t=e/1e3;return`${e<1e5?t.toFixed(1).replace(/\.0$/u,``):String(Math.round(t))}k`}return`${(e/1e6).toFixed(1).replace(/\.0$/u,``)}m`}function US(e){let t=WS(e);return t===void 0?[]:[t]}function WS(e){let t=e?.token_usage?.total_tokens;return t===void 0?void 0:`${HS(t)} tokens`}function GS(e){if(e?.current_action_detail!==void 0)return e.current_action_detail;let t=e?.current_action;return t===void 0?e?.token_usage===void 0?void 0:FS.analyzing_task:FS[t]}function KS(e,t){if(e?.current_action!==`analyzing_task`||e.current_action_started_at===void 0)return;let n=IS(e.current_action_started_at);if(n===null)return;let r=Math.max(0,Math.floor((LS(t)-n)/1e3));if(!(r<PS))return`Thinking for ${RS(r)}`}function qS(e){let t={};return e.active_activity?.activity_ref!==void 0&&(t.activityRef=e.active_activity.activity_ref),e.active_activity?.workflow_ref!==void 0&&(t.workflowRef=e.active_activity.workflow_ref),e.active_task?.id!==void 0&&(t.taskId=e.active_task.id),Object.keys(t).length===0?void 0:t}function JS(e,t,n){return e===`context_sync`&&t.last_conclusion?.task_id!==void 0?{kind:`task`,taskId:t.last_conclusion.task_id}:n.target}function YS(e){return OS[tC(e)]??OS[0]}function XS(e){return DS.findIndex(t=>t.id===e)}function ZS(e){return DS[XS(YS(e).displayStageId)]??DS[0]}function QS(e){if(e.status!==`running`||e.active_activity?.activity_kind!==`procedure`)return null;let t=e.active_activity.workflow_kind;if(t===void 0||jS.has(t))return null;let n=kS[t],r=JS(t,e,n);return{key:`procedure:${n.key}`,label:n.label,title:n.label,tone:`running`,target:r}}function $S(e,t){if(e.status!==`running`||e.active_activity?.activity_kind!==`procedure`)return null;let n=e.active_activity.workflow_kind;if(n===void 0||jS.has(n))return null;let r=kS[n],i=JS(n,e,r),a=qS(e),o=VS(e),s=n===MS?US(o):[],c=n===NS?`Creating project context for the first time`:void 0,l=zS(e.active_activity?.started_at??o?.started_at,t);return{key:`procedure:${r.key}`,title:AS,summary:e.summary,tone:`running`,metaLabel:r.label,completionTarget:i,...a===void 0?{}:{completionSource:a},steps:[{id:`procedure:${r.key}:active`,label:r.label,status:`running`,...l===void 0?{}:{elapsedLabel:l},...c===void 0?{}:{detail:c},...s.length===0?{}:{metrics:s}}]}}function eC(e){let t=e.indexOf(` - `);return t===-1?``:e.slice(t+3).trim().replace(/\.$/u,``)}function tC(e){let t=eC(e).toLocaleLowerCase();if(t===``)return 0;let n=OS.findIndex(e=>t.includes(e.summary.toLocaleLowerCase()));return n===-1?0:n}function nC(e,t){if(e.status!==`running`||e.active_task===void 0)return null;let n=XS(YS(e.summary).displayStageId),r=ZS(e.summary),i=qS(e),a=VS(e),o=BS(e,t);return{key:`run:${e.active_task.id}`,title:AS,summary:e.active_task.title,tone:`running`,metaLabel:r.label,completionTarget:{kind:`task`,taskId:e.active_task.id},...i===void 0?{}:{completionSource:i},steps:DS.map((e,r)=>{let i=r<n?`done`:r===n?`running`:`waiting`,s=r===n,c=e.id===`implement`,l=s&&c?GS(a):void 0,u=s&&c?WS(a):void 0,d=s&&c?KS(a,t):void 0;return{id:e.id,label:e.label,status:i,...s&&o!==void 0?{elapsedLabel:o}:{},...u===void 0?{}:{detailPrefix:u},...l===void 0?{}:{detail:l},...d===void 0?{}:{activityLabel:d}}})}}function rC(e,t){if(e.status!==`running`||e.active_activity?.workflow_kind!==`context_sync`||e.last_conclusion?.kind!==`completed`||e.last_conclusion.task_id===void 0)return null;let n=qS(e),r=BS(e,t);return{key:`context-sync:${e.last_conclusion.task_id}`,title:AS,summary:e.summary,tone:`running`,metaLabel:`Synchronizing context`,completionTarget:{kind:`task`,taskId:e.last_conclusion.task_id},...n===void 0?{}:{completionSource:n},steps:[{id:`task_complete`,label:`Task completed`,status:`done`},{id:`context_sync`,label:`Synchronizing project context`,status:`running`,...r===void 0?{}:{elapsedLabel:r}}]}}function iC(e){let t=e.blocked_by?.kind===`approval`?{kind:`approval`}:{kind:`clarification`};return{key:`pending:${e.blocked_by?.kind===`approval`?e.blocked_by.approval_id:e.blocked_by?.kind===`clarification`?e.blocked_by.round_id:e.updated_at}`,title:AS,summary:e.summary,tone:`pending`,metaLabel:`Needs input`,completionTarget:t,steps:[{id:`waiting_for_input`,label:`Needs input`,status:`pending`}]}}function aC(e){let t=e.last_conclusion?.task_id??(e.status===`failed`?e.active_task?.id:void 0);return t===void 0&&e.status!==`failed`?null:{key:`failed:${t??e.updated_at}`,title:AS,summary:e.last_conclusion?.summary??e.summary,tone:`failed`,metaLabel:`Failed`,...t===void 0?{}:{completionTarget:{kind:`task`,taskId:t}},steps:[{id:`run_failed`,label:`Run failed`,status:`failed`}]}}function oC(e,t={}){let n=nC(e,t);if(n!==null)return n;let r=rC(e,t);if(r!==null)return r;let i=$S(e,t);return i===null?e.status===`pending`?iC(e):e.status===`failed`?aC(e):null:i}function sC(e){let t=e.activeTaskCompileClarification&&!e.activeScratchpadRefreshFromSubmit&&!e.activeProjectContextBootstrap&&!e.activeTaskCompile,n=[],r=zS(e.startedAt,e);if(e.activeProjectContextBootstrap)n.push({id:`scratchpad_submit:project_context`,label:`Preparing project context`,status:`running`,...r===void 0?{}:{elapsedLabel:r},detail:`Creating project context for the first time`});else if(e.activeTaskCompile||e.activeScratchpadRefreshFromSubmit){let t=e.activeTaskCompile?US(e.runtime):[];n.push({id:`scratchpad_submit:task_compile`,label:`Compiling Worklist tasks`,status:`running`,...r===void 0?{}:{elapsedLabel:r},...t.length===0?{}:{metrics:t}})}else n.push({id:`scratchpad_submit:task_compile`,label:`Compiling Worklist tasks`,status:t?`done`:`running`});t&&n.push({id:`scratchpad_submit:needs_input`,label:`Needs input`,status:`pending`});let i=n.find(e=>e.status===`running`||e.status===`pending`)?.label??`Compiling Worklist tasks`;return{key:`scratchpad-submit`,title:AS,summary:t?`Task compilation needs a decision before Worklist can update.`:`Preparing the Scratchpad for formal tasks.`,tone:t?`pending`:`running`,metaLabel:t?`Needs input`:i,completionTarget:t?{kind:`clarification`}:{kind:`scratchpad`},steps:n}}function cC(e,t){return{...e,key:`${e.key}:complete`,title:AS,summary:t,tone:`complete`,metaLabel:`Complete`,steps:e.steps.map(e=>({...e,status:`done`}))}}function lC(e,t){let n=e.completionSource;return n===void 0?!0:n.activityRef===void 0?n.workflowRef===void 0?n.taskId===void 0?!0:t.task_id===n.taskId:t.workflow_ref===n.workflowRef:t.activity_ref===n.activityRef}function uC(e){if(e.status===`idle`)return[];let t=[];if(e.status===`pending`){let n=e.blocked_by?.kind===`approval`?{kind:`approval`}:{kind:`clarification`};t.push({key:`pending`,label:`Needs input`,title:`Needs input`,tone:`pending`,target:n})}let n=e.last_conclusion?.kind===`failed`?e.last_conclusion.task_id:e.status===`failed`?e.active_task?.id??e.last_conclusion?.task_id:void 0;if(n!==void 0&&t.push({key:`failed`,label:`Run failed`,tone:`failed`,target:{kind:`task`,taskId:n}}),e.status===`running`&&e.active_task!==void 0){let n=ZS(e.summary);t.push({key:`running`,label:n.label,title:n.label,tone:`running`,target:{kind:`task`,taskId:e.active_task.id}})}let r=QS(e);return r!==null&&t.push(r),t}var dC=`/assets/beethoven-symphony-5-opening-ypVy5SB4.svg`,fC=`/assets/beethoven-symphony-7-allegretto-B3bc-cZD.svg`,pC=`/assets/dvorak-symphony-9-largo-BEgNL3HB.svg`,mC=`/assets/mozart-symphony-18-allegro-B5-MrLL1.svg`,hC=`/assets/Tutti-square-BqFU7F0D.png`,gC=`/assets/Tutti-B7gEyTp1.png`,_C=`/assets/tutti_avatar-_0Yc-cMJ.png`,vC=`/assets/avatar-avery-CkLXb185.svg`,yC=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2080%2080'%20fill='none'%20shape-rendering='auto'%20aria-hidden='true'%3e%3c!--%20Generated%20by%20DiceBear%20(https://dicebear.com)%20--%3e%3cmetadata%20xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns%23'%20xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'%20xmlns:dc='http://purl.org/dc/elements/1.1/'%20xmlns:dcterms='http://purl.org/dc/terms/'%3e%3crdf:RDF%3e%3crdf:Description%3e%3cdc:title%3eDylan!%20The%20Avatar%20Generator%3c/dc:title%3e%3cdc:creator%3eNatalia%20Spivak%3c/dc:creator%3e%3cdc:source%20xsi:type='dcterms:URI'%3ehttps://www.figma.com/community/file/1356575240759683500%3c/dc:source%3e%3cdcterms:license%20xsi:type='dcterms:URI'%3ehttps://creativecommons.org/licenses/by/4.0/%3c/dcterms:license%3e%3cdc:rights%3eRemix%20of%20“Dylan!%20The%20Avatar%20Generator”%20(https://www.figma.com/community/file/1356575240759683500)%20by%20“Natalia%20Spivak”,%20licensed%20under%20“CC%20BY%204.0”%20(https://creativecommons.org/licenses/by/4.0/)%3c/dc:rights%3e%3c/rdf:Description%3e%3c/rdf:RDF%3e%3c/metadata%3e%3cdefs%3e%3cg%20id='mood-happy-7dff0831'%3e%3cpath%20d='M.04%2017.04c2.41%209.29%2015.16%2012.28%2022.34%206.67a14%2014%200%200%200%204.7-7.22c.36-1.28-1.57-1.8-1.93-.57-1.24%204.23-4.33%207.4-8.68%208.33-3.77.8-8.03-.1-11.05-2.52a10%2010%200%200%201-3.45-5.26c-.32-1.25-2.25-.72-1.93.53'%20fill='black'/%3e%3c/g%3e%3cg%20id='hair-shortCurls-7dff0831'%3e%3cpath%20d='m15.3%2027.49%201.58%204.38%201.06-9.52s2.27%201.27%203.44-.26.16-3.47.16-3.47%201.81.55%203.31-.8c1.87-1.67%201.26-3.46%201.26-3.46s1.71%201.9%204.5%201.1c2.77-.8%203.14-2.76%203.14-2.76s.56%202.18%203.4%202.12%203.2-2.01%203.2-2.01%200%202.43%202.43%203.14%203.43-1.24%203.43-1.24c0%20.02-.9%202.39.66%203.76%201.44%201.26%203.5.35%203.5.35s-.73%202.3.77%203.62c1.6%201.4%203.48.6%203.48.6l.77%208.34%201.8-3.8s1.4-.13%202.72.15c0%20.01%202.58-2.78%201.15-5.9s-3.64-2.86-3.64-2.86%201.95-3.05.13-5.65-4.94-1.96-4.94-1.96%201.18-3.52-1.68-5.27-5.92.46-5.92.46-.1-3.7-3.2-4.16c-3.26-.48-4.58%202.66-4.58%202.66s-1.35-2.89-4.14-2.44c-2.8.44-3.32%203.53-3.32%203.53S27.32%203.57%2024.92%205s-1.8%204.51-1.8%204.51-2.98-2.24-5.32-.23-.14%205.1-.14%205.1-3.87-1.12-5.04%201.8%201.66%204.95%201.66%204.95-5.35%201.16-2.82%207.33c0%200%20.6-.27%202.02-.62s1.8-.38%201.8-.38z'%20fill='%23000000'/%3e%3c/g%3e%3cclipPath%20id='clip-7dff0831'%3e%3crect%20width='80'%20height='80'%20rx='0'%20ry='0'/%3e%3c/clipPath%3e%3c/defs%3e%3cg%20clip-path='url(%23clip-7dff0831)'%3e%3crect%20width='80'%20height='80'%20fill='%23e5f4ec'/%3e%3cpath%20d='M19.07%2030.47s1.57-20.23%2021.59-20.23S62.3%2030.55%2062.3%2030.55s9.43-.8%209.43%207.6c0%208.42-9.28%207.13-9.28%207.13S60.9%2067.15%2042.03%2067.15c-21.11%200-23.4-20.8-23.4-20.8s-9%20.72-9.93-6.25c-1.08-8.2%2010.37-9.64%2010.37-9.64'%20fill='%23c26450'/%3e%3cpath%20d='m64.3%2039.49.46-.41.1-.09c.12-.1-.13.1-.02.02l.24-.17q.5-.35%201.06-.62l.26-.12.05-.02.05-.02.58-.21q.6-.18%201.2-.28c.52-.08.85-.76.7-1.23-.18-.56-.67-.8-1.23-.7a9.3%209.3%200%200%200-4.87%202.43c-.38.36-.4%201.06%200%201.4.4.36%201%20.4%201.4%200zm-51.8-1.16.14.01c-.27-.02-.11-.01-.04%200l.3.05.52.14.28.09.12.05c.02%200%20.22.09.06.02-.14-.1%200-.04.03-.03l.15.06.26.13.47.3.27.22q.47.38.83.83c.33.4%201.07.37%201.41%200%20.4-.43.36-.98%200-1.4a7.3%207.3%200%200%200-4.84-2.53c-.52-.06-1.02.5-1%201%20.03.59.44.94%201%201m18.3-1.9v4.54c0%20.52.46%201.02%201%201s1-.44%201-1V36.4c0-.52-.46-1.02-1-1s-1%20.44-1%201M49.2%2036l-.15%204.81a1%201%200%200%200%201%201c.56-.02.98-.44%201-1l.15-4.8a1%201%200%200%200-1-1%201%201%200%200%200-1%201'%20fill='black'/%3e%3cuse%20transform='translate(27.82%2026.75)'%20href='%23mood-happy-7dff0831'/%3e%3cuse%20transform='translate(3.78%202.95)'%20href='%23hair-shortCurls-7dff0831'/%3e%3c/g%3e%3c/svg%3e`,bC=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2080%2080'%20fill='none'%20shape-rendering='auto'%20aria-hidden='true'%3e%3c!--%20Generated%20by%20DiceBear%20(https://dicebear.com)%20--%3e%3cmetadata%20xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns%23'%20xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'%20xmlns:dc='http://purl.org/dc/elements/1.1/'%20xmlns:dcterms='http://purl.org/dc/terms/'%3e%3crdf:RDF%3e%3crdf:Description%3e%3cdc:title%3eDylan!%20The%20Avatar%20Generator%3c/dc:title%3e%3cdc:creator%3eNatalia%20Spivak%3c/dc:creator%3e%3cdc:source%20xsi:type='dcterms:URI'%3ehttps://www.figma.com/community/file/1356575240759683500%3c/dc:source%3e%3cdcterms:license%20xsi:type='dcterms:URI'%3ehttps://creativecommons.org/licenses/by/4.0/%3c/dcterms:license%3e%3cdc:rights%3eRemix%20of%20“Dylan!%20The%20Avatar%20Generator”%20(https://www.figma.com/community/file/1356575240759683500)%20by%20“Natalia%20Spivak”,%20licensed%20under%20“CC%20BY%204.0”%20(https://creativecommons.org/licenses/by/4.0/)%3c/dc:rights%3e%3c/rdf:Description%3e%3c/rdf:RDF%3e%3c/metadata%3e%3cdefs%3e%3cg%20id='mood-happy-46c131e2'%3e%3cpath%20d='M.04%2017.04c2.41%209.29%2015.16%2012.28%2022.34%206.67a14%2014%200%200%200%204.7-7.22c.36-1.28-1.57-1.8-1.93-.57-1.24%204.23-4.33%207.4-8.68%208.33-3.77.8-8.03-.1-11.05-2.52a10%2010%200%200%201-3.45-5.26c-.32-1.25-2.25-.72-1.93.53'%20fill='black'/%3e%3c/g%3e%3cg%20id='hair-fluffy-46c131e2'%3e%3cpath%20d='M16.45%2029.48s13.74%2023.53%203.86%2028.24C9.05%2063.08-1.2%2048.01.1%2036.77s10.96-16.35%2010.96-16.35-.58-9.5%209.2-15.04c9.78-5.55%2016.64.44%2016.64.44s8.06-5.9%2015.5-1.37c7.46%204.53%207.26%2014.68%207.26%2014.68s13.74-.56%2013.65%2016.47c-.08%2015.17-10.03%2022.94-16.8%2021.6-10.45-2.07%201.27-29.22%201.27-29.22s-14.4%201.04-20.14-9.75c0%200-4%205.95-9.7%208.62a32%2032%200%200%201-11.47%202.64z'%20fill='%231d5dff'/%3e%3c/g%3e%3cclipPath%20id='clip-46c131e2'%3e%3crect%20width='80'%20height='80'%20rx='0'%20ry='0'/%3e%3c/clipPath%3e%3c/defs%3e%3cg%20clip-path='url(%23clip-46c131e2)'%3e%3crect%20width='80'%20height='80'%20fill='%23fbf0d1'/%3e%3cpath%20d='M19.07%2030.47s1.57-20.23%2021.59-20.23S62.3%2030.55%2062.3%2030.55s9.43-.8%209.43%207.6c0%208.42-9.28%207.13-9.28%207.13S60.9%2067.15%2042.03%2067.15c-21.11%200-23.4-20.8-23.4-20.8s-9%20.72-9.93-6.25c-1.08-8.2%2010.37-9.64%2010.37-9.64'%20fill='%23c26450'/%3e%3cpath%20d='m64.3%2039.49.46-.41.1-.09c.12-.1-.13.1-.02.02l.24-.17q.5-.35%201.06-.62l.26-.12.05-.02.05-.02.58-.21q.6-.18%201.2-.28c.52-.08.85-.76.7-1.23-.18-.56-.67-.8-1.23-.7a9.3%209.3%200%200%200-4.87%202.43c-.38.36-.4%201.06%200%201.4.4.36%201%20.4%201.4%200zm-51.8-1.16.14.01c-.27-.02-.11-.01-.04%200l.3.05.52.14.28.09.12.05c.02%200%20.22.09.06.02-.14-.1%200-.04.03-.03l.15.06.26.13.47.3.27.22q.47.38.83.83c.33.4%201.07.37%201.41%200%20.4-.43.36-.98%200-1.4a7.3%207.3%200%200%200-4.84-2.53c-.52-.06-1.02.5-1%201%20.03.59.44.94%201%201m18.3-1.9v4.54c0%20.52.46%201.02%201%201s1-.44%201-1V36.4c0-.52-.46-1.02-1-1s-1%20.44-1%201M49.2%2036l-.15%204.81a1%201%200%200%200%201%201c.56-.02.98-.44%201-1l.15-4.8a1%201%200%200%200-1-1%201%201%200%200%200-1%201'%20fill='black'/%3e%3cuse%20transform='translate(27.82%2026.75)'%20href='%23mood-happy-46c131e2'/%3e%3cuse%20transform='translate(3.78%202.95)'%20href='%23hair-fluffy-46c131e2'/%3e%3c/g%3e%3c/svg%3e`,xC=`/assets/ode-to-joy-SNBUPr3-.svg`,SC=hC,CC=gC,wC=_C,TC={logoSrc:gC,tuttiAvatarSrc:_C,scoreSrc:xC,humanAvatars:{fey:yC,avery:vC,jun:bC}};function EC({onClick:e}){let t=(0,L.jsx)(Ac,{src:CC,label:`Tutti`});return e===void 0?t:(0,L.jsx)(jc,{logo:t,label:`Tutti Project Center`,onClick:e})}function DC({onClick:e,label:t}){return(0,L.jsx)(jc,{logo:(0,L.jsx)(Ac,{src:CC,className:`tutti-logo`}),...t===void 0?{}:{label:t},onClick:e})}var OC=`https://lets.tutti.now`,kC=`${OC}/start/create-a-project#connect-a-provider-and-choose-a-model`,AC={href:OC,target:`_blank`,rel:`noopener noreferrer`};function jC(){return(0,L.jsxs)(_f,{children:[`New to Tutti?`,` `,(0,L.jsx)(`a`,{...AC,"aria-label":`Read the Tutti documentation (opens in a new tab)`,children:`Read the docs`}),`.`]})}function MC(){return(0,L.jsx)(Bc,{...AC,label:`Support Center`,icon:(0,L.jsx)(ua,{"aria-hidden":`true`})})}var NC=[dC,fC,pC,mC];function PC(){return NC[Math.min(NC.length-1,Math.floor(Math.random()*NC.length))]}function FC({backgroundPattern:e,children:t,...n}){let[r]=(0,I.useState)(PC);return(0,L.jsx)(Gs,{...e===void 0?{backgroundImageSrc:r}:{backgroundPattern:e},...n,children:t})}function IC({actions:e,children:t,onBrandClick:n}){return(0,L.jsxs)(FC,{children:[(0,L.jsx)(Ks,{brand:(0,L.jsx)(DC,{onClick:n}),actions:e}),t]})}function LC({children:e,label:t,onBrandClick:n}){return(0,L.jsx)(IC,{onBrandClick:n,children:(0,L.jsx)(Js,{"aria-label":t,children:e})})}function RC({auth:e,mobileAuth:t,onBrandClick:n}){return(0,L.jsx)(FC,{backgroundPattern:`dots`,className:`homepage-entry-page`,children:(0,L.jsx)(gf,{brand:(0,L.jsx)(DC,{onClick:n}),visual:(0,L.jsx)(Zf,{assets:TC}),auth:e,mobileAuth:t,footer:(0,L.jsx)(jC,{})})})}function zC({phase:e,form:t,onChange:n}){return e===`code`?(0,L.jsx)(`div`,{className:`form-stack`,children:(0,L.jsx)(Ic,{label:`Email verification code`,children:(0,L.jsx)(Mc,{autoComplete:`one-time-code`,inputMode:`numeric`,type:`text`,value:t.code,onChange:e=>n({code:e.target.value}),placeholder:`Enter email code`,maxLength:6})})}):e===`profile`?(0,L.jsxs)(`div`,{className:`form-stack`,children:[(0,L.jsx)(Ic,{label:`Display name`,children:(0,L.jsx)(Mc,{autoComplete:`name`,type:`text`,value:t.displayName,onChange:e=>n({displayName:e.target.value}),placeholder:`username`})}),(0,L.jsx)(`p`,{className:`form-note`,children:`This name cannot be changed yet.`})]}):(0,L.jsx)(`div`,{className:`form-stack`,children:(0,L.jsx)(Ic,{label:`Email`,children:(0,L.jsx)(Mc,{autoComplete:`email`,type:`email`,value:t.email,onChange:e=>n({email:e.target.value}),placeholder:`alex@example.com`})})})}function BC({surface:e,phase:t,form:n,pending:r,error:i,submitDisabled:a,submitLabel:o,pendingLabel:s,onChange:c,onSubmit:l,onBack:u}){let d={title:t===`profile`?`Choose display name`:`Sign in`,description:t===`profile`?`Set the name your teammates will see.`:t===`code`?`Enter your email verification code.`:`Use your email to continue.`,onSubmit:l,action:(0,L.jsxs)(wc,{type:`submit`,disabled:a||r,children:[r?s??(t===`profile`?`Saving`:t===`code`?`Verifying`:`Sending code`):o??(t===`profile`?`Save name`:t===`code`?`Verify email code`:`Send code`),(0,L.jsx)(na,{"aria-hidden":`true`})]}),secondaryAction:t===`code`&&u!==void 0?(0,L.jsxs)(Tc,{type:`button`,onClick:u,disabled:r,children:[(0,L.jsx)(ta,{"aria-hidden":`true`}),`Change email`]}):void 0,feedback:i===null?void 0:(0,L.jsx)(Lc,{children:i}),children:(0,L.jsx)(zC,{phase:t,form:n,onChange:c})};return e===`card`?(0,L.jsx)(op,{...d}):(0,L.jsx)(vf,{...d})}function VC(e){return(0,L.jsx)(BC,{...e,surface:`card`})}function HC(e){return(0,L.jsx)(BC,{...e,surface:`rail`})}function UC({onBrandClick:e,...t}){return(0,L.jsx)(RC,{onBrandClick:e,auth:(0,L.jsx)(HC,{...t}),mobileAuth:(0,L.jsx)(VC,{...t})})}function WC({nextKind:e,actionPending:t,loginForm:n,onRetry:r,onAccept:i,onOpen:a}){if(e===`loading`)return(0,L.jsx)(Tc,{type:`button`,disabled:!0,children:`Loading`});if(e===`error`)return(0,L.jsx)(Tc,{type:`button`,onClick:r,children:`Retry`});if(e===`invalid_or_expired`)return(0,L.jsxs)(Tc,{type:`button`,disabled:!0,children:[(0,L.jsx)(no,{"aria-hidden":`true`}),`Invalid invite`]});if(e===`login_required`){let e=n?.phase===`profile`?`Save name`:n?.phase===`code`?`Verify email code`:`Send code`,r=n?.phase===`profile`?`Saving`:n?.phase===`code`?`Verifying`:`Sending code`;return(0,L.jsxs)(wc,{type:`submit`,disabled:t||n?.submitDisabled===!0,children:[t?r:e,(0,L.jsx)(na,{"aria-hidden":`true`})]})}return e===`accept_join`?(0,L.jsxs)(wc,{type:`button`,disabled:t,onClick:i,children:[t?`Joining`:`Accept and open workspace`,(0,L.jsx)(na,{"aria-hidden":`true`})]}):e===`open_workspace`?(0,L.jsxs)(wc,{type:`button`,disabled:t,onClick:a,children:[t?`Opening`:`Open workspace`,(0,L.jsx)(na,{"aria-hidden":`true`})]}):(0,L.jsxs)(Tc,{type:`button`,disabled:!0,children:[(0,L.jsx)(Ba,{"aria-hidden":`true`}),`Host offline`]})}function GC({nextKind:e,error:t}){return e===`loading`?null:e===`error`?(0,L.jsx)(oo,{tone:`error`,icon:(0,L.jsx)(no,{"aria-hidden":`true`}),children:t??`Invite unavailable`}):e===`invalid_or_expired`?(0,L.jsx)(oo,{tone:`error`,icon:(0,L.jsx)(no,{"aria-hidden":`true`}),children:`Join token is invalid or expired`}):e===`host_offline`?(0,L.jsx)(oo,{tone:`warning`,icon:(0,L.jsx)(Ba,{"aria-hidden":`true`}),children:`Host is offline`}):null}function KC({projectName:e,description:t,hostLabel:n,hostOnline:r,nextKind:i,accountLabel:a,membershipLabel:o,actionPending:s,error:c,loginForm:l,onBrandClick:u,onRetry:d,onAccept:f,onOpen:p}){let m=i===`login_required`&&l!==void 0;return(0,L.jsx)(LC,{label:`Join project`,onBrandClick:u,children:(0,L.jsxs)(op,{title:`Join project`,description:t,onSubmit:e=>{if(m){l.onSubmit(e);return}e.preventDefault()},action:(0,L.jsx)(WC,{nextKind:i,actionPending:m?l.pending:s,...m?{loginForm:l}:{},onAccept:f,onOpen:p,...d===void 0?{}:{onRetry:d}}),secondaryAction:m&&l.phase===`code`&&l.onBack!==void 0?(0,L.jsxs)(Tc,{type:`button`,onClick:l.onBack,disabled:l.pending,children:[(0,L.jsx)(ta,{"aria-hidden":`true`}),`Change email`]}):void 0,feedback:(0,L.jsxs)(L.Fragment,{children:[m&&l.error!==null?(0,L.jsx)(Lc,{children:l.error}):null,(0,L.jsx)(GC,{nextKind:i,error:c}),c===null||i===`error`?null:(0,L.jsx)(Lc,{children:c})]}),children:[(0,L.jsx)(sp,{projectName:e,hostLabel:n,hostOnline:r}),m?(0,L.jsx)(L.Fragment,{children:(0,L.jsx)(zC,{phase:l.phase,form:l.form,onChange:l.onChange})}):(0,L.jsx)(cp,{label:a===null?`Account`:`Signed in as`,value:a??`Sign in required`,action:o===null?null:(0,L.jsx)(`span`,{className:`quiet-link`,children:o})})]})})}var qC=`http://127.0.0.1:4370`;function JC(){let e=`https://tutti.now`;return typeof e==`string`?e:typeof window<`u`&&window.location.port!==`4372`?window.location.origin:qC}function YC(e){try{return new URL(e,JC()).toString()}catch{return e}}function XC({avatar:e,label:t,plain:n=!1,online:r=!1}){return(0,L.jsx)(Qs,{label:t,tone:e.color,plain:n,online:r,initials:e.initials,...e.kind===`image`?{imageUrl:YC(e.image_url)}:{}})}function ZC({label:e=`Tutti`}){return(0,L.jsx)(Qs,{label:e,tone:`green`,className:`is-system`,imageUrl:wC,icon:(0,L.jsx)(ia,{"aria-hidden":`true`})})}function QC({message:e}){return e.avatarKind===`tutti`?(0,L.jsx)(ZC,{label:e.author}):(0,L.jsx)(XC,{avatar:e.avatar??{kind:`initials`,initials:Zr(e.author),color:`blue`},label:e.author})}function $C({diagnostic:e,showMessage:t=!0}){let n=[[`Diagnostic ID`,e.diagnosticId],[`Web release`,e.webRelease],[`Stage`,e.stage],[`Error kind`,e.errorKind],[`HTTP status`,e.httpStatus?.toString()],[`Reason code`,e.reasonCode],[`Platform stage`,e.platformStage],[`Platform code`,e.platformCode?.toString()]].filter(e=>e[1]!==void 0);return(0,L.jsxs)(`div`,{className:`embedded-project-diagnostic`,children:[t?(0,L.jsx)(`p`,{children:e.message}):null,(0,L.jsx)(`dl`,{"aria-label":`Feishu diagnostic details`,children:n.map(([e,t])=>(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`dt`,{children:e}),(0,L.jsx)(`dd`,{children:t})]},e))})]})}function ew({state:e,onRetry:t,onBrandClick:n,onSelectTab:r,onSelectTask:i,onSelectReference:a,onSubmitScratchpad:o,onRoundDraftChange:s,onSendRoundMessage:c,onSubmitRound:l,onDecideApproval:u,onOpenInBrowser:d,browserOpenUrl:f,onBrowserOpenLinkClick:p,scratchpadSubmitPending:m=!1,roundSendPending:h=!1,roundSubmitPending:g=!1,approvalDecisionPending:_=!1,browserOpenPending:v=!1,documentConnections:y}){if(e.kind===`loading`)return(0,L.jsx)(mx,{brand:(0,L.jsx)(DC,{label:`Reload Tutti project`,onClick:n}),projectName:`Opening Tutti`,meta:`Feishu project`,children:(0,L.jsx)(so,{count:3})});if(e.kind===`error`)return(0,L.jsx)(mx,{brand:(0,L.jsx)(DC,{label:`Reload Tutti project`,onClick:n}),projectName:`Tutti isn’t available`,meta:`Feishu project`,onRefresh:t,children:(0,L.jsx)(oo,{icon:(0,L.jsx)(no,{"aria-hidden":`true`}),tone:`warning`,details:(0,L.jsx)($C,{diagnostic:e,showMessage:!1}),children:e.message})});let b=e.membershipLabel===`owner`?`Owner`:`Member`,x=`${e.accountName} · ${b} · Tutti ${e.hostVersion}`,S=e.activeClarification??null,C=e.clarificationMessages??[],w=e.activeApproval??null;return(0,L.jsxs)(mx,{activeTab:e.activeTab,actions:d===void 0?void 0:f===void 0?(0,L.jsxs)(Sc,{"aria-label":v?`Opening in browser`:`Open in browser`,className:`embedded-project-browser-action`,disabled:v,onClick:d,type:`button`,variant:`quiet`,children:[v?(0,L.jsx)(Oa,{"aria-hidden":`true`,className:`is-spinning`}):(0,L.jsx)(ga,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:v?`Opening`:`Open in browser`})]}):(0,L.jsx)(Sc,{asChild:!0,className:`embedded-project-browser-action`,variant:`quiet`,children:(0,L.jsxs)(`a`,{"aria-label":`Open in browser`,href:f,onClick:p,rel:`noopener noreferrer`,target:`_blank`,children:[(0,L.jsx)(ga,{"aria-hidden":`true`}),(0,L.jsx)(`span`,{children:`Open in browser`})]})}),brand:(0,L.jsx)(DC,{label:`Reload Tutti project`,onClick:n}),projectName:e.projectName,meta:x,refreshing:e.refreshing,onRefresh:t,onSelectTab:r,children:[e.refreshMessage===void 0?null:(0,L.jsx)(`div`,{className:`embedded-project-refresh-message`,role:`status`,children:(0,L.jsx)($C,{diagnostic:e.refreshMessage})}),e.activeTab===`project`?(0,L.jsxs)(`div`,{className:`embedded-project-stack`,children:[(0,L.jsx)(hx,{...e.projectStatus}),S===null?null:(0,L.jsx)(Cx,{title:S.title,summary:S.summary,request:S.request,contextLabel:S.ownerLabel,messages:C.map(e=>({id:e.id,author:e.author,body:e.body,time:e.time,avatar:(0,L.jsx)(QC,{message:e})})),replyCount:C.filter(e=>e.messageKind===`user_text`).length,draft:e.roundDraft??``,defaultOpen:!0,readOnly:S.status!==`writable`,status:S.status===`writable`?`pending`:`done`,statusLabel:S.status===`writable`?`needs input`:`submitted`,sendPending:h,submitPending:g,onDraftChange:e=>s?.(e),onSendMessage:e=>{e.preventDefault(),c?.()},onSubmitRound:()=>l?.()}),w===null?null:(0,L.jsx)(Dx,{title:w.title,summary:w.summary,...w.reason===void 0?{}:{reason:w.reason},...w.detail===void 0?{}:{detail:w.detail,...w.detailLabel===void 0?{}:{detailLabel:w.detailLabel},...w.detailCode===void 0?{}:{detailCode:w.detailCode}},status:w.status,statusLabel:w.statusLabel,decisions:w.decisions,decisionPending:_,...w.resolutionLabel===void 0?{}:{resolutionLabel:w.resolutionLabel},onDecide:e=>u?.(w.approvalId,e)}),(0,L.jsx)(lx,{...e.scratchpad,empty:(0,L.jsx)(oo,{children:`Scratchpad is empty.`}),showSubmitAction:!0,submitPending:m,actionsDisabled:o===void 0,...o===void 0?{}:{onSubmitScratchpad:o},onOpenCompiledTask:i})]}):e.activeTab===`work`?(0,L.jsx)(`div`,{className:`embedded-project-work`,children:(0,L.jsx)(Ix,{layout:`stacked`,modules:e.worklist.modules,taskCount:e.worklist.taskCount,...e.worklist.detail===void 0?{}:{detail:e.worklist.detail},...e.worklist.detailPlaceholder===void 0?{}:{detailPlaceholder:e.worklist.detailPlaceholder},empty:(0,L.jsx)(oo,{children:`No compiled tasks.`}),onSelectTask:i})}):e.activeTab===`references`?(0,L.jsx)(`div`,{className:`embedded-project-references`,children:e.references.kind===`loading`?(0,L.jsx)(Ux,{beforeContent:y===void 0?void 0:(0,L.jsx)(hS,{...y}),files:[],empty:(0,L.jsx)(so,{count:3}),onSelectFile:a}):e.references.kind===`error`?(0,L.jsx)(Ux,{beforeContent:y===void 0?void 0:(0,L.jsx)(hS,{...y}),files:[],empty:(0,L.jsx)(oo,{icon:(0,L.jsx)(no,{"aria-hidden":`true`}),tone:`warning`,details:(0,L.jsx)($C,{diagnostic:e.references,showMessage:!1}),children:e.references.message}),onSelectFile:a}):(0,L.jsx)(Ux,{beforeContent:y===void 0?void 0:(0,L.jsx)(hS,{...y}),files:e.references.files,...e.references.detail===void 0?{}:{detail:e.references.detail},empty:(0,L.jsx)(oo,{children:`No reference files.`}),onSelectFile:a})}):(0,L.jsx)(`div`,{className:`embedded-project-artifacts`,children:(0,L.jsx)(Kx,{state:e.artifacts,error:e.artifactError??null})})]})}function tw({pending:e,onSignOut:t}){return(0,L.jsxs)(Tc,{type:`button`,onClick:t,disabled:e,children:[(0,L.jsx)(Aa,{"aria-hidden":`true`}),`Sign out`]})}function nw(e){return(e.status===`online`||e.status===`reconnecting`)&&e.provider_status===`configured`}function rw(e){return(e.status===`stopped`||e.status===`stale`||e.status===`relay-unavailable`)&&e.provider_status===`configured`}function iw(e){return e.status===`online`?`online`:e.status===`reconnecting`?`connecting`:`stopped`}function aw(e,t){let n=Date.parse(e.activity_at??``),r=Date.parse(t.activity_at??``),i=Number.isNaN(n)?0:n;return(Number.isNaN(r)?0:r)-i||e.display_name.localeCompare(t.display_name,`en`)||e.project_id.localeCompare(t.project_id,`en`)}function ow({project:e,pending:t,onLaunch:n,onOpen:r,onCopyInvite:i,onConnectFeishu:a,onStop:o}){return e.status===`online`||e.status===`reconnecting`?e.surface_profile.kind===`feishu`?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(wc,{type:`button`,disabled:t,onClick:a,children:[(0,L.jsx)(Ea,{"aria-hidden":`true`}),`Connect`]}),(0,L.jsxs)(Tc,{type:`button`,disabled:t,onClick:o,children:[(0,L.jsx)(Qa,{"aria-hidden":`true`}),`Stop`]})]}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)(wc,{type:`button`,disabled:t||e.open_url===void 0,onClick:r,children:[(0,L.jsx)(na,{"aria-hidden":`true`}),`Open`]}),(0,L.jsxs)(Tc,{type:`button`,disabled:t,onClick:i,children:[(0,L.jsx)(Ea,{"aria-hidden":`true`}),`Invite`]}),(0,L.jsxs)(Tc,{type:`button`,disabled:t,onClick:o,children:[(0,L.jsx)(Qa,{"aria-hidden":`true`}),`Stop`]})]}):(0,L.jsxs)(Tc,{type:`button`,disabled:t||!rw(e),onClick:n,children:[(0,L.jsx)(Ua,{"aria-hidden":`true`}),`Resume`]})}function sw({createDisabled:e,packageUpdateAction:t,projectsLoading:n,onCreate:r,onPackageUpdate:i,onRefresh:a}){return(0,L.jsxs)(L.Fragment,{children:[t===void 0?null:(0,L.jsx)(up,{description:t.description,descriptionId:`local-console-package-update-description`,disabledTrigger:t.disabled,"aria-live":`polite`,action:(0,L.jsx)(Tc,{type:`button`,disabled:t.disabled,onClick:i,children:t.label})}),(0,L.jsx)(Cc,{type:`button`,label:`Refresh projects`,icon:(0,L.jsx)(Ha,{"aria-hidden":`true`}),disabled:n,onClick:a}),(0,L.jsxs)(wc,{type:`button`,disabled:e,onClick:r,children:[(0,L.jsx)(Ra,{"aria-hidden":`true`}),`New project`]})]})}function cw({version:e,accountName:t,projectCenterHref:n,form:r,models:i,projects:a,projectsLoading:o,sessionLoading:s,sessionError:c,createOpen:l,createStep:u,modelDiscoveryPending:d,launchPending:f,projectActionPending:p,signOutPending:m,packageUpdateAction:h,onChange:g,onCreateOpenChange:_,onCreateSubmit:v,onCreateBack:y,onChooseFolder:b,onRefresh:x,onLaunchExisting:S,onOpenProject:C,onCopyInvite:w,onConnectFeishu:T,onFeishuConnectionOpenChange:E,onCopyFeishuCommand:ee,onStopProject:D,onPackageUpdate:O,onSignOut:k,feishuConnection:A}){let te=[`Folder`,`Details`,`Provider`,`Model`,`Surface`],j=te.findIndex(e=>e.toLowerCase()===u),M=d||f,N=u===`folder`?r.workspacePath.trim()!==``:u===`details`?r.displayName.trim()!==``:u===`provider`?r.baseUrl.trim()!==``&&r.apiKey.trim()!==``:u===`model`?i.length>0&&r.model.trim()!==``:!0,P=a.filter(nw).sort(aw),F=a.filter(rw).sort(aw),ne=[...P,...F],re=e=>(0,I.createElement)(kp,{title:e.display_name,status:iw(e),path:e.workspace_path,createdLabel:Pr(e.created_at),...e.provider_model?.trim()?{modelLabel:e.provider_model.trim()}:{},...e.surface_profile.kind===`feishu`?{surfaceLabel:`Feishu`}:{},actions:(0,L.jsx)(ow,{project:e,pending:p===e.project_id,onLaunch:()=>S(e),onOpen:()=>C(e),onCopyInvite:()=>w(e),onConnectFeishu:()=>T(e),onStop:()=>D(e)}),key:e.project_id});return(0,L.jsx)(IC,{onBrandClick:x,children:(0,L.jsxs)(qs,{children:[(0,L.jsxs)(lp,{className:`local-console-card`,title:`Projects`,accountName:t,accountAction:(0,L.jsx)(tw,{pending:m,onSignOut:k}),"aria-label":`Tutti Local Console`,children:[(0,L.jsx)(fp,{items:[{id:`joined`,label:`Joined projects`,href:n},{id:`local`,label:`This computer`,href:`/console`,current:!0}],action:(0,L.jsx)(sw,{createDisabled:s||c!==null,projectsLoading:o,onCreate:()=>_(!0),onPackageUpdate:O,onRefresh:x,...h===void 0?{}:{packageUpdateAction:h}})}),(0,L.jsx)(_p,{"aria-label":`Projects on this computer`,children:o||s?(0,L.jsx)(bp,{"aria-label":`Loading local projects`,children:(0,L.jsx)(so,{})}):c===null?ne.length===0?(0,L.jsx)(bp,{children:(0,L.jsx)(oo,{children:`No available projects on this computer.`})}):ne.map(re):(0,L.jsx)(bp,{children:(0,L.jsx)(oo,{children:c})})}),e===void 0?null:(0,L.jsxs)(`footer`,{className:`local-console-version`,"aria-label":`Tutti version ${e}`,children:[`Tutti `,e]})]}),(0,L.jsxs)(Cp,{open:l,onOpenChange:_,steps:te,currentStep:Math.max(0,j),closeDisabled:M,explicitCloseOnly:!0,onSubmit:v,backAction:u===`folder`?void 0:(0,L.jsxs)(Tc,{type:`button`,disabled:M,onClick:y,children:[(0,L.jsx)(ta,{"aria-hidden":`true`}),`Back`]}),action:(0,L.jsxs)(wc,{type:`submit`,disabled:!N||M||s,children:[u===`surface`?(0,L.jsx)(Ua,{"aria-hidden":`true`}):(0,L.jsx)(na,{"aria-hidden":`true`}),u===`provider`&&d?`Checking provider`:u===`surface`?f?`Launching`:`Launch and continue`:`Continue`]}),children:[u===`folder`?(0,L.jsx)(Ep,{title:`Project folder`,description:`Choose an existing folder on this machine. It can be empty or contain an existing project.`,children:(0,L.jsxs)(Tp,{children:[(0,L.jsx)(Mc,{"aria-label":`Project folder`,autoComplete:`off`,value:r.workspacePath,onChange:e=>g({workspacePath:e.target.value}),placeholder:`Enter an absolute project folder path`,autoFocus:!0}),(0,L.jsxs)(Tc,{type:`button`,onClick:b,children:[(0,L.jsx)(xa,{"aria-hidden":`true`}),`Choose folder`]})]})}):null,u===`details`?(0,L.jsx)(Ep,{title:`Project details`,description:`Describe what you want to build with this project.`,children:(0,L.jsxs)(wp,{children:[(0,L.jsx)(Ic,{label:`Project name`,className:`local-console-field-wide`,children:(0,L.jsx)(Mc,{autoComplete:`off`,value:r.displayName,maxLength:80,onChange:e=>g({displayName:e.target.value}),placeholder:`Enter a project name`,autoFocus:!0})}),(0,L.jsx)(Ic,{label:`Project description (optional)`,className:`local-console-field-wide`,children:(0,L.jsx)(Nc,{value:r.description,maxLength:160,onChange:e=>g({description:e.target.value}),placeholder:`A short project description helps Tutti produce better code`})})]})}):null,u===`provider`?(0,L.jsx)(Ep,{title:`Provider`,description:(0,L.jsxs)(L.Fragment,{children:[`Enter an endpoint compatible with the`,` `,(0,L.jsx)(Rc,{href:kC,"aria-label":`Tutti Responses API provider guide (opens in a new tab)`,icon:(0,L.jsx)(ua,{"aria-hidden":`true`}),children:`OpenAI Responses API`}),`. Credentials stay only on this machine.`]}),children:(0,L.jsxs)(wp,{children:[(0,L.jsx)(Ic,{label:`Base URL`,children:(0,L.jsx)(Mc,{autoComplete:`off`,inputMode:`url`,type:`url`,value:r.baseUrl,onChange:e=>g({baseUrl:e.target.value}),placeholder:`Enter Provider Base URL`,autoFocus:!0})}),(0,L.jsx)(Ic,{label:`API key`,children:(0,L.jsx)(Mc,{autoComplete:`off`,type:`password`,value:r.apiKey,onChange:e=>g({apiKey:e.target.value}),placeholder:`Enter API key`})})]})}):null,u===`model`?(0,L.jsx)(Ep,{title:`Model`,description:`Choose an available model or type another model name.`,children:(0,L.jsx)(Ic,{label:`Model`,children:(0,L.jsx)(Pc,{autoComplete:`off`,value:r.model,options:i,maxVisibleOptions:8,onValueChange:e=>g({model:e}),placeholder:`Choose or enter a model`,autoFocus:!0})})}):null,u===`surface`?(0,L.jsx)(Ep,{title:`Where will this project be used?`,description:`Choose the collaboration surface for this project. This choice cannot be changed later.`,children:(0,L.jsx)(Dp,{value:r.surface,onValueChange:e=>g({surface:e})})}):null]}),A===null?null:(0,L.jsx)(hp,{open:!0,onOpenChange:E,projectName:A.projectName,state:A.state,...A.command===void 0?{}:{command:A.command},...A.unavailableMessage===void 0?{}:{unavailableMessage:A.unavailableMessage},onCopyCommand:ee})]})})}function lw({onBrandClick:e,sessionError:t=null,...n}){let r={...n,error:n.error??t};return(0,L.jsx)(RC,{onBrandClick:e,auth:(0,L.jsx)(HC,{...r}),mobileAuth:(0,L.jsx)(VC,{...r})})}function uw({account:e,projects:t,loading:n,error:r,openPending:i,logoutPending:a,joinLinkForm:o,joinOpen:s,localScopeHref:c,localHandoffOpen:l,localHandoffStatus:u,localHandoffRetryHref:d,onJoinOpenChange:f,onLocalHandoffOpenChange:p,onLocalScopeSelect:m,onCopyLaunchCommand:h,onBrandClick:g,onLogout:_,onOpenProject:v}){let y=[...t.filter(e=>e.hostStatus===`online`),...t.filter(e=>e.hostStatus===`unknown`),...t.filter(e=>e.hostStatus===`offline`)],b=e=>(0,L.jsx)(yp,{title:e.displayName,status:e.hostStatus,details:[{label:`Role`,value:e.membershipLabel},{label:`Opened`,value:e.lastOpenedLabel}],disabled:!e.canOpen||i,onClick:()=>v(e.relayProjectRef)},e.relayProjectRef);return(0,L.jsx)(IC,{onBrandClick:g,children:(0,L.jsxs)(qs,{children:[(0,L.jsxs)(lp,{title:`Projects`,...e===null?{}:{accountName:e.displayName,accountAction:(0,L.jsx)(tw,{pending:a,onSignOut:_})},"aria-label":`Project Center`,children:[(0,L.jsx)(fp,{items:[{id:`joined`,label:`Joined projects`,href:`/projects`,current:!0},{id:`local`,label:`This computer`,href:c,onClick:m}],action:(0,L.jsxs)(wc,{type:`button`,onClick:()=>f(!0),children:[(0,L.jsx)(Ra,{"aria-hidden":`true`}),`Join project`]})}),(0,L.jsx)(_p,{"aria-label":`Joined projects`,children:n?(0,L.jsx)(bp,{"aria-label":`Loading projects`,children:(0,L.jsx)(so,{})}):r===null?y.length===0?(0,L.jsx)(bp,{"aria-label":`No joined projects`,children:(0,L.jsx)(oo,{children:`No joined projects yet.`})}):y.map(b):(0,L.jsx)(bp,{"aria-label":`Project Center error`,children:(0,L.jsx)(oo,{tone:`error`,children:r})})})]}),(0,L.jsx)(Sp,{open:s,onOpenChange:f,inputLabel:`Invitation link or message`,placeholder:`Paste an invitation link or message`,value:o.value,error:o.error,onValueChange:o.onChange,"aria-label":`Join a project`,onSubmit:e=>{e.preventDefault(),o.onSubmit()}}),(0,L.jsx)(mp,{open:l,onOpenChange:p,status:u,description:u===`failed`?`Tutti did not return to this tab. Try again, or update and start Tutti with the command below.`:`Tutti runs locally to create and host projects. If it does not open, run this command in Terminal.`,command:`npm install -g @xfey/tutti && tutti`,onCopyCommand:h,retryHref:d,onRetry:m})]})})}function dw({form:e,pending:t,tokenMissing:n,onChange:r}){return(0,L.jsxs)(`div`,{className:`form-stack`,children:[(0,L.jsx)(Ic,{label:`Project name`,children:(0,L.jsx)(Mc,{autoComplete:`off`,disabled:t||n,type:`text`,value:e.projectName,onChange:e=>r({projectName:e.target.value}),placeholder:`tutti-default`})}),(0,L.jsx)(Ic,{label:`OpenAI API key`,children:(0,L.jsx)(Mc,{autoComplete:`off`,disabled:t||n,type:`password`,value:e.apiKey,onChange:e=>r({apiKey:e.target.value}),placeholder:`sk-...`})}),(0,L.jsx)(Ic,{label:`Base URL`,children:(0,L.jsx)(Mc,{autoComplete:`off`,disabled:t||n,type:`url`,value:e.baseUrl,onChange:e=>r({baseUrl:e.target.value}),placeholder:`https://api.openai.com/v1`})}),(0,L.jsx)(Ic,{label:`Default model`,children:(0,L.jsx)(Mc,{autoComplete:`off`,disabled:t||n,type:`text`,value:e.defaultModel,onChange:e=>r({defaultModel:e.target.value}),placeholder:`gpt-5.5`})})]})}function fw({form:e,statusLabel:t,configured:n,loading:r,pending:i,openProjectPending:a=!1,tokenMissing:o,error:s,success:c,onChange:l,onSubmit:u,onRetry:d,onBrandClick:f}){let p=i||a;return(0,L.jsx)(LC,{label:`Project setup`,onBrandClick:f,children:(0,L.jsxs)(op,{title:`Project setup`,description:`Configure the provider for this project.`,size:`wide`,onSubmit:u,action:o?(0,L.jsxs)(Tc,{type:`button`,disabled:!0,children:[(0,L.jsx)(no,{"aria-hidden":`true`}),`Missing token`]}):s!==null&&r?(0,L.jsx)(Tc,{type:`button`,onClick:d,children:`Retry`}):a?(0,L.jsxs)(Tc,{type:`button`,disabled:!0,children:[(0,L.jsx)(na,{"aria-hidden":`true`}),`Opening project`]}):(0,L.jsxs)(wc,{type:`submit`,disabled:i||e.apiKey.trim()===``||e.projectName.trim()===``,children:[i?`Saving`:`Save provider`,(0,L.jsx)(Ga,{"aria-hidden":`true`})]}),feedback:(0,L.jsxs)(L.Fragment,{children:[c===null?null:(0,L.jsx)(oo,{icon:(0,L.jsx)(la,{"aria-hidden":`true`}),children:c}),s===null?null:(0,L.jsx)(Lc,{children:s})]}),children:[(0,L.jsx)(sp,{projectName:`OpenAI provider`,hostLabel:t,hostOnline:n,members:(0,L.jsx)(Ta,{"aria-hidden":`true`})}),(0,L.jsx)(cp,{label:`Status`,value:r?`Loading`:t,action:n?(0,L.jsx)(la,{"aria-hidden":`true`}):null}),(0,L.jsx)(dw,{form:e,pending:p,tokenMissing:o,onChange:l})]})})}function pw({tone:e}){return e===`pending`?(0,L.jsx)(no,{"aria-hidden":`true`}):e===`failed`?(0,L.jsx)(da,{"aria-hidden":`true`}):e===`done`?(0,L.jsx)(oa,{"aria-hidden":`true`}):(0,L.jsx)(Oa,{"aria-hidden":`true`})}function mw({members:e}){return e===void 0||e.length===0?null:(0,L.jsx)($s,{"aria-label":`Members`,children:e.map(e=>(0,L.jsx)(XC,{avatar:e.avatar,label:e.displayName},e.key))})}function hw({activePage:e,statusShortcuts:t,unread:n,artifactSignal:r,mobileContext:i,rail:a,children:o,onOpenProjectCenter:s,onOpenChat:c,onOpenWorklist:l,onOpenReferences:u,onOpenArtifacts:d,onOpenSkills:f,onOpenTimeline:p,onOpenSettings:m,onActivateStatusShortcut:h,getStatusShortcutAriaControls:g}){let _=e!==`chat`&&n?.chat===!0,v=e!==`worklist`&&n?.worklist===!0,y=r?.status===`live`,b=e!==`references`&&n?.references===!0,x=e!==`skills`&&n?.skills===!0;return(0,L.jsx)(Ys,{children:(0,L.jsx)(Xs,{...a===void 0?{}:{rail:a},children:(0,L.jsx)(Zs,{className:`is-headerless`,sidebar:(0,L.jsxs)(zc,{brand:(0,L.jsx)(EC,{...s===void 0?{}:{onClick:s}}),mobileTitle:i.title,...i.meta===void 0?{}:{mobileMeta:i.meta},...i.action===void 0?{}:{mobileAction:i.action},...t.length===0?{}:{status:t.map(e=>(0,I.createElement)(Hc,{icon:(0,L.jsx)(pw,{tone:e.tone}),label:e.label,tone:e.tone,onClick:()=>h?.(e),...g?.(e)===void 0?{}:{"aria-controls":g(e)},key:e.key}))},footer:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(MC,{}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(qa,{"aria-hidden":`true`}),label:`Settings`,active:e===`settings`,onClick:e===`settings`?void 0:m})]}),children:[(0,L.jsx)(Vc,{icon:(0,L.jsx)(zb,{"aria-hidden":`true`}),label:`Chat`,active:e===`chat`,badge:_?{label:`Unread messages`}:!1,onClick:e===`chat`?void 0:c}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(Da,{"aria-hidden":`true`}),label:`Worklist`,active:e===`worklist`,badge:v?{label:`Unread worklist updates`}:!1,onClick:e===`worklist`?void 0:l}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(Fa,{"aria-hidden":`true`}),label:`Artifacts`,active:e===`artifacts`,badge:y?{label:`Live preview available`,text:`Live`,variant:`pill`}:!1,onClick:e===`artifacts`?void 0:d}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(ya,{"aria-hidden":`true`}),label:`References`,active:e===`references`,badge:b?{label:`New reference files`}:!1,onClick:e===`references`?void 0:u}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(Xa,{"aria-hidden":`true`}),label:`Skills`,active:e===`skills`,badge:x?{label:`New skill updates`}:!1,onClick:e===`skills`?void 0:f}),(0,L.jsx)(Vc,{icon:(0,L.jsx)(aa,{"aria-hidden":`true`}),label:`Timeline`,active:e===`timeline`,onClick:e===`timeline`?void 0:p})]}),children:o})})})}function gw(){return(0,L.jsx)(Ac,{src:CC,className:`empty-state-brand-logo`})}function _w(e){return(0,L.jsx)(oo,{watermark:(0,L.jsx)(gw,{}),...e})}var vw=`tutti.execution-score-themes.v1`,yw=40,bw={assignments:[],bag:[]};function xw(){return{assignments:[],bag:[]}}function Sw(){try{return typeof window>`u`?null:window.sessionStorage}catch{return null}}function Cw(e,t){if(typeof e!=`object`||!e)return null;let n=e;if(!Array.isArray(n.assignments)||!Array.isArray(n.bag))return null;let r=n.assignments.filter(e=>typeof e==`object`&&!!e&&typeof e.identity==`string`&&t.has(String(e.themeId))),i=n.bag.filter(e=>typeof e==`string`&&t.has(e)),a=typeof n.recent==`string`&&t.has(n.recent)?n.recent:void 0;return{assignments:r,bag:i,...a===void 0?{}:{recent:a}}}function ww(e,t){if(e===null)return bw;try{let n=e.getItem(vw);return n===null?xw():Cw(JSON.parse(n),t)??xw()}catch{return bw}}function Tw(e,t){if(bw=t,e!==null)try{e.setItem(vw,JSON.stringify(t))}catch{}}function Ew(e,t,n){let r=e.map(e=>e.id);for(let e=r.length-1;e>0;--e){let t=Math.min(e,Math.max(0,Math.floor(n()*(e+1))));[r[e],r[t]]=[r[t],r[e]]}if(r.length>1&&r[0]===t){let e=r.findIndex(e=>e!==t);[r[0],r[e]]=[r[e],r[0]]}return r}function Dw(e,t={}){let n=t.themes??Us;if(n.length===0)throw Error(`Execution score themes are unavailable`);let r=new Map(n.map(e=>[e.id,e])),i=new Set(r.keys()),a=t.storage===void 0?Sw():t.storage,o=ww(a,i),s=o.assignments.find(t=>t.identity===e),c=s===void 0?void 0:r.get(s.themeId);if(c!==void 0)return c;let l=t.random??Math.random,u=o.bag.length>0?[...o.bag]:Ew(n,o.recent,l),d=u.shift(),f=d===void 0?void 0:r.get(d);if(f===void 0)throw Error(`Execution score themes are unavailable`);return Tw(a,{assignments:[...o.assignments,{identity:e,themeId:f.id}].slice(-yw),bag:u,recent:f.id}),f}function Ow(e){return`round-card-${e}`}function kw(e){return`approval-card-${e}`}function Aw(e){return`chat-message-${e}`}var jw=`workspace-scratchpad`,Mw=720,Nw=80,Pw=160,Fw=96,Iw=160,Lw=2;function Rw(e){return e.completionSource?.activityRef??e.completionSource?.workflowRef??e.completionSource?.taskId??e.key}function zw({progress:e}){let t=Rw(e),[n]=(0,I.useState)(()=>Dw(t)),r=(0,I.useRef)(t),i=(0,I.useRef)(e.tone),[a,o]=(0,I.useState)(null);if((0,I.useEffect)(()=>{let n=r.current,a=i.current;if(r.current=t,i.current=e.tone,e.tone!==`running`||a===`pending`||n===t){o(null);return}o(t);let s=window.setTimeout(()=>{o(e=>e===t?null:e)},Mw);return()=>{window.clearTimeout(s)}},[e.tone,t]),e.tone===`running`||e.tone===`pending`||e.tone===`complete`){let r=e.tone===`running`&&a===t,i=e.steps.find(e=>e.status===`running`||e.status===`pending`)??e.steps.at(-1),o=e.completionTarget?.kind===`task`?`Task completed`:`Procedure completed`,s=e.tone===`complete`?void 0:i?.detail??(e.tone===`pending`?e.summary:void 0),c=e.tone===`complete`?void 0:i?.detailPrefix,l=e.tone===`complete`?void 0:i?.activityLabel,u=e.tone===`complete`?void 0:i?.elapsedLabel,d=e.tone===`complete`?void 0:i?.metrics,f=e.tone===`running`&&i?.id===`implement`&&s!==void 0;return(0,L.jsx)(Ts,{stageLabel:r?`Loading the next movement…`:e.tone===`complete`?o:i?.label??e.summary,...r||s===void 0?{}:{stageDetail:s},...r||c===void 0?{}:{stageDetailPrefix:c},...r||l===void 0?{}:{stageActivity:l},...r||!f?{}:{detailMode:`live`},...r||u===void 0?{}:{elapsedLabel:u},...r||d===void 0?{}:{metrics:d},scoreLabel:r?`Loading the next movement score`:e.tone===`complete`?`${o} score cadence`:e.tone===`pending`?`Execution score paused while waiting for input`:`${i?.label??`Execution`} running score using ${n.shortName}`,state:r?`handoff`:e.tone===`complete`?`complete`:e.tone===`pending`?`paused`:`running`,units:n.units,playbackBpm:n.tempo,openingClef:n.clef,keySignatureFifths:n.keySignatureFifths,timeSignature:n.meter})}return(0,L.jsx)(px,{title:e.title,summary:e.summary,tone:e.tone,steps:e.steps,...e.metaLabel===void 0?{}:{metaLabel:e.metaLabel}})}function Bw(e){if(e===void 0)return null;let t=Date.parse(e);return Number.isNaN(t)?null:t}function Vw(e,t){if(e===null)return null;let n=Bw(e.requestedAt);if(n===null)return t.length;let r=t.findIndex(e=>{let t=Bw(e.createdAt);return t!==null&&t>n});return r===-1?t.length:r}function Hw(e,{focusSelector:t}={}){let n=typeof document>`u`?null:document.getElementById(e);n!==null&&(n.scrollIntoView({block:`center`}),t!==void 0&&n.querySelector(t)?.focus({preventScroll:!0}))}function Uw(e){return e.messageKind===`system_notice`&&e.workflowRef!==void 0&&(e.body.startsWith(`Worklist updated with `)||e.body===`Worklist is already covered by existing tasks.`)}function Ww(e,t){if(t===void 0)return;let n=t.label.trim(),r=t.handle?.trim()??n;if(n===``||r===``)return;let i=r.toLocaleLowerCase();e.has(i)||e.set(i,{id:t.id,label:n,handle:r})}function Gw({members:e,messages:t,clarificationMessagesByRoundId:n}){let r=new Map;Ww(r,{id:`tutti`,label:`Tutti`,handle:`tutti`});for(let t of e)Ww(r,{id:t.key,label:t.displayName});for(let e of t)Ww(r,{id:`message:${e.author}`,label:e.author,...e.avatarKind===`tutti`?{handle:`tutti`}:{}});for(let e of Object.values(n))for(let t of e)Ww(r,{id:`round-message:${t.author}`,label:t.author,...t.avatarKind===`tutti`?{handle:`tutti`}:{}});return[...r.values()]}function Kw({message:e}){return e.avatarKind===`tutti`?(0,L.jsx)(ZC,{label:e.author}):(0,L.jsx)(XC,{avatar:e.avatar??{kind:`initials`,initials:Zr(e.author),color:`blue`},label:e.author,online:e.online})}function qw({projectName:e,projectDescription:t=``,members:n,messages:r,scratchpad:i,executionProgress:a=null,activeApproval:o=null,activeClarification:s,clarificationMessagesByRoundId:c,statusShortcuts:l,unread:u,artifactSignal:d,draft:f,roundDraft:p,sendPending:m,scratchpadSyncPending:h=!1,scratchpadActionsDisabled:g=!1,scratchpadSubmitPending:_=!1,referenceUploadPending:v=!1,focusMessageId:y=null,messageHistoryIdentity:b=`latest`,initialMessagePosition:x=y===null?`latest`:`focus`,hasOlderMessages:S=!1,hasNewerMessages:C=!1,loadingOlderMessages:w=!1,loadingNewerMessages:T=!1,historyConnectedToLatest:E=!0,roundSendPending:ee=!1,roundSubmitPending:D=!1,submittedRoundId:O=null,approvalDecisionPending:k=!1,projectNameSaving:A=!1,projectDescriptionSaving:te=!1,loading:j=!1,unavailable:M=!1,onDraftChange:N,onMessageFocused:P,onInitialMessagePositioned:F,onLoadOlderMessages:ne,onLoadNewerMessages:re,onJumpToLatest:ie,onUploadReferenceFile:ae,onOpenReferenceFile:oe,onRoundDraftChange:se,onSendMessage:ce,onSendRoundMessage:le,onSubmitRound:ue,onDecideApproval:de,onSubmitScratchpad:fe,onUpdateProjectDisplayName:pe,onUpdateProjectDescription:me,onOpenProjectCenter:he,onOpenWorklist:ge,onOpenWorklistTask:_e,onRetryTask:ve,onOpenReferences:ye,onOpenArtifacts:be,onViewArtifactFeedback:xe,onOpenSkills:Se,onOpenTimeline:Ce,onOpenSettings:we,onActivateStatusShortcut:Te}){let[Ee,De]=(0,I.useState)(!1),Oe=(0,I.useRef)(null),ke=(0,I.useRef)(!1),Ae=(0,I.useRef)(null),je=(0,I.useRef)(null),Me=(0,I.useRef)(!0),Ne=(0,I.useRef)(void 0),Pe=(0,I.useRef)(b),Fe=(0,I.useRef)(null),Ie=(0,L.jsx)(tx,{className:`chat-project-title-edit`,value:e,placeholder:`Untitled project`,ariaLabel:`Edit project name`,maxLength:Nw,saving:A,disabled:j,...pe===void 0?{}:{onUpdate:pe}}),Le=(0,L.jsx)(tx,{className:`chat-project-description-edit`,value:t,placeholder:`Add a project description`,ariaLabel:`Edit project description`,maxLength:Pw,allowEmpty:!0,saving:te,disabled:j,...me===void 0?{}:{onUpdate:me}}),Re=s!==null&&r.some(e=>e.id===s.cardMessageId),ze=new Map;for(let e of r)e.clarificationCard!==void 0&&e.workflowRef!==void 0&&ze.set(e.workflowRef,e.clarificationCard.roundId);let Be=new Map;for(let e of r){if(!Uw(e)||e.workflowRef===void 0)continue;let t=ze.get(e.workflowRef);t!==void 0&&Be.set(t,{...e,id:`round-result:${e.id}`,messageKind:`agent_text`,author:`Tutti`,avatarKind:`tutti`,online:!1})}let Ve=e=>{let t=c[e]??[],n=Be.get(e);return n===void 0||t.some(e=>e.body===n.body)?t:[...t,n]},He=Gw({members:n,messages:r,clarificationMessagesByRoundId:c}),Ue=ae===void 0?void 0:e=>{for(let t of e)ae(t)};(0,I.useLayoutEffect)(()=>{Pe.current!==b&&(Pe.current=b,ke.current=!1,Ae.current=null,Ne.current=void 0)},[b]),(0,I.useLayoutEffect)(()=>{let e=Ae.current;if(e!==null){if(r[0]?.id!==e.firstMessageId){let t=Oe.current;t!==null&&(t.scrollTop=e.scrollTop+Math.max(0,t.scrollHeight-e.scrollHeight),Me.current=t.scrollHeight-t.clientHeight-t.scrollTop<=Lw),Ae.current=null;return}w||(Ae.current=null)}},[w,r]),(0,I.useEffect)(()=>{if(y===null||!r.some(e=>e.id===y))return;ke.current=!0,Hw(Aw(y));let e=Oe.current;e!==null&&(Me.current=e.scrollHeight-e.clientHeight-e.scrollTop<=Lw),P?.()},[y,r,P]),(0,I.useEffect)(()=>{if(ke.current||j||M||x!==`latest`||y!==null||r.length===0&&s===null&&o===null)return;let e=Oe.current;if(e===null)return;let t=window.requestAnimationFrame(()=>{e.scrollTop=e.scrollHeight,Me.current=!0,ke.current=!0});return()=>window.cancelAnimationFrame(t)},[o,s,y,j,r,M]),(0,I.useEffect)(()=>{if(ke.current||j||M||x!==`start`||y!==null)return;let e=Oe.current;if(e===null)return;let t=window.requestAnimationFrame(()=>{e.scrollTop=0,Me.current=e.scrollHeight<=e.clientHeight+Lw,ke.current=!0,F?.()});return()=>window.cancelAnimationFrame(t)},[y,x,j,r,F,M]);let We=()=>{if(!S||w||Ae.current!==null||ne===void 0)return;let e=Oe.current;e!==null&&(Ae.current={firstMessageId:r[0]?.id,scrollHeight:e.scrollHeight,scrollTop:e.scrollTop},ne())},Ge=()=>{!C||T||re===void 0||re()},Ke=e=>{let t=e.currentTarget;Me.current=t.scrollHeight-t.clientHeight-t.scrollTop<=Lw,je.current!==null&&window.cancelAnimationFrame(je.current),je.current=window.requestAnimationFrame(()=>{if(je.current=null,t.scrollTop<=Fw){We();return}t.scrollHeight-t.clientHeight-t.scrollTop<=Iw&&Ge()})};(0,I.useEffect)(()=>()=>{je.current!==null&&window.cancelAnimationFrame(je.current)},[]),(0,I.useEffect)(()=>{if(j||M||w||T||!ke.current)return;let e=Oe.current;if(e===null||e.scrollHeight>e.clientHeight+Lw)return;let t=window.requestAnimationFrame(()=>{S?We():C&&Ge()});return()=>window.cancelAnimationFrame(t)},[C,S,j,T,w,r,M]);let qe=r.at(-1)?.id;(0,I.useEffect)(()=>{let e=Ne.current;if(Ne.current=qe,e===void 0||e===qe||!E||!Me.current||!ke.current||Ae.current!==null)return;let t=Oe.current;if(t===null)return;let n=window.requestAnimationFrame(()=>{t.scrollTop=t.scrollHeight,Me.current=!0});return()=>window.cancelAnimationFrame(n)},[E,qe]);let Je=({key:e,roundId:t,title:n,summary:r,request:i,contextLabel:a,writable:o})=>{let s=Ve(t),c=s.filter(e=>e.messageKind===`user_text`).length;return(0,L.jsx)(Cx,{id:Ow(t),tabIndex:-1,title:n,summary:r,request:i,...a===void 0?{}:{contextLabel:a},messages:s.map(e=>({id:e.id,author:e.author,body:e.body,time:e.time,avatar:(0,L.jsx)(Kw,{message:e})})),replyCount:c,draft:o?p:``,defaultOpen:!0,readOnly:!o,status:o?`pending`:`done`,statusLabel:o?`needs input`:`submitted`,mentionOptions:He,sendPending:o&&ee,submitPending:o&&D,onDraftChange:se,onSendMessage:le,onSubmitRound:ue},`${e}:${o?`writable`:`sealed`}`)},Ye=e=>{if(e.target.kind===`approval`&&o!==null){if(!E){Fe.current=e,ie?.();return}Hw(kw(o.approvalId),{focusSelector:`.chat-event-card-header`});return}if(e.target.kind===`clarification`&&s!==null){if(!E&&!Re){Fe.current=e,ie?.();return}Hw(Ow(s.roundId),{focusSelector:`.chat-event-card-header`});return}if(e.target.kind===`scratchpad`){Hw(jw);return}Te?.(e)};(0,I.useEffect)(()=>{let e=Fe.current;if(!E||j||e===null)return;Fe.current=null;let t=window.requestAnimationFrame(()=>{e.target.kind===`approval`&&o!==null?Hw(kw(o.approvalId),{focusSelector:`.chat-event-card-header`}):e.target.kind===`clarification`&&s!==null&&Hw(Ow(s.roundId),{focusSelector:`.chat-event-card-header`})});return()=>window.cancelAnimationFrame(t)},[o,s,E,j,r]);let Xe=e=>s===null?null:Je({key:e,roundId:s.roundId,title:s.title,summary:s.summary,request:s.request,contextLabel:s.ownerLabel,writable:s.status===`writable`&&s.roundId!==O}),Ze=()=>o===null?null:(0,L.jsx)(Dx,{id:kw(o.approvalId),tabIndex:-1,title:o.title,summary:o.summary,...o.reason===void 0?{}:{reason:o.reason},...o.detail===void 0?{}:{detail:o.detail,...o.detailLabel===void 0?{}:{detailLabel:o.detailLabel},...o.detailCode===void 0?{}:{detailCode:o.detailCode}},status:o.status,statusLabel:o.statusLabel,decisions:o.decisions,decisionPending:k,...o.resolutionLabel===void 0?{}:{resolutionLabel:o.resolutionLabel},onDecide:e=>de?.(o.approvalId,e)},`approval:${o.approvalId}:${o.status}`),Qe=e=>{let t=e.clarificationCard;if(t===void 0)return null;let n=s!==null&&s.roundId===t.roundId;return Je({key:e.id,roundId:t.roundId,title:n&&s!==null?s.title:t.title??`Clarification round ${t.roundId.slice(-4)}`,summary:n&&s!==null?s.summary:t.summary,request:n&&s!==null?s.request:t.summary,...n&&s!==null?{contextLabel:s.ownerLabel}:{},writable:n&&t.status===`writable`&&t.roundId!==O})},$e=e=>{if(Uw(e)&&ze.has(e.workflowRef??``))return null;if(e.messageKind===`clarification_card`)return Qe(e);if(s!==null&&e.id===s.cardMessageId)return Xe(e.id);if(e.taskResult!==void 0)return(0,L.jsx)(kx,{id:Aw(e.id),tabIndex:-1,className:e.id===y?`is-focused`:void 0,title:e.taskResult.title,status:e.taskResult.status,taskId:e.taskResult.taskId,taskTitle:e.taskResult.taskTitle,summary:e.taskResult.summary,...e.taskResult.moduleName===void 0?{}:{moduleName:e.taskResult.moduleName},...e.taskResult.finalNote===void 0?{}:{finalNote:e.taskResult.finalNote},...e.taskResult.generatedFiles===void 0?{}:{generatedFiles:e.taskResult.generatedFiles},...e.taskResult.errorCode===void 0?{}:{errorCode:e.taskResult.errorCode},...e.taskResult.retryState===void 0?{}:{retryState:e.taskResult.retryState},...e.taskResult.retryState===void 0||e.taskResult.latestRunResultId===void 0||ve===void 0?{}:{onRetry:()=>ve(e.taskResult.taskId,e.taskResult.latestRunResultId)},..._e===void 0?{}:{onOpenTask:_e}},e.id);let t=e.referenceFile;return(0,L.jsx)(Bb,{id:Aw(e.id),tabIndex:-1,author:e.author,time:e.time,avatar:(0,L.jsx)(Kw,{message:e}),className:e.id===y?`is-focused`:void 0,children:e.artifactFeedback===void 0?t===void 0?e.messageKind===`agent_text`?(0,L.jsx)(Vb,{children:e.body}):(0,L.jsx)(`p`,{children:(0,L.jsx)(Lb,{children:e.body})}):(0,L.jsx)($b,{name:t.name,category:t.category,...t.imageUrl===void 0?{}:{imageUrl:t.imageUrl},onClick:()=>oe?.(t.path)}):(0,L.jsx)(Zx,{artifactTitle:e.artifactFeedback.artifactTitle,annotations:e.artifactFeedback.annotations,...e.artifactFeedback.summary===void 0?{}:{summary:e.artifactFeedback.summary},...xe===void 0?{}:{onViewAnnotation:t=>xe(e.id,t)}})},e.id)},et=E?Vw(o,r):null,tt=()=>{let e=s!==null&&(Re||E)||o!==null&&E;return r.length===0&&!e&&!w&&!T?(0,L.jsx)(_w,{children:`No messages yet`}):(0,L.jsxs)(L.Fragment,{children:[w?(0,L.jsx)(`div`,{className:`chat-history-status`,role:`status`,children:`Loading earlier messages…`}):null,!E||Re?null:Xe(`active-round`),r.map((e,t)=>(0,L.jsxs)(I.Fragment,{children:[et===t?Ze():null,$e(e)]},`timeline:${e.id}`)),et===r.length?Ze():null,T?(0,L.jsx)(`div`,{className:`chat-history-status`,role:`status`,children:`Loading newer messages…`}):null]})},nt=(e,t=!1)=>(0,L.jsx)(lx,{id:e,tabIndex:-1,compact:t,title:i.title,summary:i.summary,sections:i.sections,submitAvailable:i.submitAvailable,...i.pages===void 0?{}:{pages:i.pages},...i.footerNote===void 0?{}:{footerNote:i.footerNote},...i.updatedLabelPrefix===void 0?{}:{updatedLabelPrefix:i.updatedLabelPrefix},syncPending:h,actionsDisabled:g,submitPending:_,onSubmitScratchpad:fe,..._e===void 0?{}:{onOpenCompiledTask:_e},empty:(0,L.jsx)(_w,{children:`Scratchpad empty. Discuss more, tutti together!`}),...i.updatedLabel===void 0?{}:{updatedLabel:i.updatedLabel}}),rt=(0,L.jsx)(`div`,{className:`chat-panel-actions`,children:(0,L.jsx)(mw,{members:n})});return(0,L.jsxs)(hw,{activePage:`chat`,statusShortcuts:l,mobileContext:{title:e,action:(0,L.jsx)(Vc,{className:h?`mobile-scratchpad-trigger is-syncing`:`mobile-scratchpad-trigger`,type:`button`,label:Ee?`Close Scratchpad`:`Open Scratchpad`,active:Ee,"aria-expanded":Ee,"aria-controls":`${jw}-mobile-sheet`,icon:(0,L.jsx)(ax,{"aria-hidden":`true`}),onClick:()=>De(e=>!e)})},...u===void 0?{}:{unread:u},...d===void 0?{}:{artifactSignal:d},onOpenProjectCenter:he,onOpenWorklist:ge,onOpenReferences:ye,onOpenArtifacts:be,onOpenSkills:Se,onOpenTimeline:Ce,onOpenSettings:we,onActivateStatusShortcut:Ye,getStatusShortcutAriaControls:e=>e.target.kind===`approval`&&o!==null&&E?kw(o.approvalId):e.target.kind===`clarification`&&s!==null&&(E||Re)?Ow(s.roundId):e.target.kind===`scratchpad`?jw:void 0,children:[(0,L.jsxs)(`section`,{className:`workspace-grid is-tutti chat-workspace-grid`,"aria-label":`Chat workspace`,children:[j?(0,L.jsx)(ex,{title:Ie,subtitle:Le,actions:rt,children:(0,L.jsx)(so,{})}):M?(0,L.jsx)(ex,{title:Ie,subtitle:Le,actions:rt,children:(0,L.jsx)(_w,{children:`Workspace unavailable`})}):(0,L.jsx)(ex,{title:Ie,subtitle:Le,actions:rt,streamRef:Oe,onStreamScroll:Ke,streamOverlay:C&&ie!==void 0?(0,L.jsx)(Tc,{className:`chat-jump-latest`,type:`button`,onClick:ie,children:`Jump to latest`}):void 0,dropUploadPending:v,...Ue===void 0?{}:{onDropFiles:Ue},composer:(0,L.jsx)(ix,{value:f,pending:m,uploadPending:v,mentionOptions:He,onValueChange:N,onComposerSubmit:ce,...ae===void 0?{}:{onFileUpload:ae}}),empty:(0,L.jsx)(_w,{children:`No messages yet`}),children:tt()}),(0,L.jsxs)(`div`,{className:a===null?`chat-side-column`:`chat-side-column has-progress`,children:[nt(jw),a===null?null:(0,L.jsx)(zw,{progress:a})]})]}),Ee?(0,L.jsxs)(`div`,{className:`mobile-scratchpad-layer is-open`,id:`${jw}-mobile-sheet`,children:[(0,L.jsx)(`button`,{className:`mobile-scratchpad-backdrop`,type:`button`,"aria-label":`Close Scratchpad`,onClick:()=>De(!1)}),(0,L.jsxs)(`section`,{className:`mobile-scratchpad-card`,role:`dialog`,"aria-modal":`true`,"aria-label":`Scratchpad`,children:[(0,L.jsxs)(`div`,{className:`mobile-scratchpad-card-head`,children:[(0,L.jsx)(`h2`,{children:`Scratchpad`}),(0,L.jsx)(Cc,{className:`mobile-scratchpad-close`,type:`button`,label:`Close Scratchpad`,icon:(0,L.jsx)(ao,{"aria-hidden":`true`}),onClick:()=>De(!1)})]}),(0,L.jsx)(`div`,{className:`mobile-scratchpad-card-body`,children:nt(`${jw}-mobile`,!0)})]})]}):null]})}function Jw({statusShortcuts:e,unread:t,state:n,loading:r=!1,unavailable:i=!1,feedback:a,iframeRef:o,onPreviewLoad:s,onOpenProjectCenter:c,onOpenChat:l,onOpenWorklist:u,onOpenReferences:d,onOpenSkills:f,onOpenTimeline:p,onOpenSettings:m,onActivateStatusShortcut:h}){let g=r?{status:`loading`}:i?{status:`not_declared`}:n,_=a?.supported===!0?(0,L.jsx)(Yx,{active:a.open,disabled:a.open?!a.canSubmit:!a.ready,...a.submitPending===void 0?{}:{pending:a.submitPending},title:a.open?a.submitDisabledReason??`Submit comments`:a.ready?`Comments`:a.unavailableReason??`Preparing comments`,onClick:a.open?a.onSubmit:a.onOpen}):void 0,v=a?.supported===!0?(0,L.jsx)(Vc,{type:`button`,label:a.open?`Submit comments`:`Comments`,active:a.open,disabled:a.open?!a.canSubmit:!a.ready,icon:a.open?(0,L.jsx)(oa,{"aria-hidden":`true`}):(0,L.jsx)(Ra,{"aria-hidden":`true`}),onClick:a.open?a.onSubmit:a.onOpen}):void 0,y=a?.open===!0?(0,L.jsx)(Xx,{...a.rail,author:a.author.displayName,avatar:(0,L.jsx)(XC,{avatar:a.author.avatar,label:a.author.displayName})}):void 0;return(0,L.jsx)(hw,{activePage:`artifacts`,statusShortcuts:e,mobileContext:{title:g.status===`declared`?g.title:`Artifacts`,...v===void 0?{}:{action:v}},...t===void 0?{}:{unread:t},artifactSignal:ti(g),...y===void 0?{}:{rail:y},onOpenProjectCenter:c,onOpenChat:l,onOpenWorklist:u,onOpenReferences:d,onOpenSkills:f,onOpenTimeline:p,onOpenSettings:m,onActivateStatusShortcut:h,children:(0,L.jsx)(`section`,{className:`workspace-grid artifacts-workspace-grid`,"aria-label":`Artifacts`,children:(0,L.jsx)(Kx,{state:g,..._===void 0?{}:{headerAction:_},...o===void 0?{}:{iframeRef:o},...s===void 0?{}:{onPreviewLoad:s},...i?{empty:(0,L.jsx)(_w,{children:`Workspace unavailable`})}:{},emptyWatermark:(0,L.jsx)(gw,{})})})})}function Yw({statusShortcuts:e,unread:t,artifactSignal:n,files:r,detail:i,uploadPending:a=!1,fileSortMode:o=`time`,loading:s=!1,unavailable:c=!1,onOpenProjectCenter:l,onOpenChat:u,onOpenWorklist:d,onOpenArtifacts:f,onOpenSkills:p,onOpenTimeline:m,onOpenSettings:h,onActivateStatusShortcut:g,onSelectFile:_,onUploadFile:v,onFileSortModeChange:y}){let b=s||c;return(0,L.jsx)(hw,{activePage:`references`,statusShortcuts:e,mobileContext:{title:`References`,action:(0,L.jsx)(rx,{variant:`bare`,className:`sidebar-button reference-upload-button`,label:`Upload reference`,pendingLabel:`Uploading reference`,pending:a,iconOnly:!0,onFileUpload:v})},...t===void 0?{}:{unread:t},...n===void 0?{}:{artifactSignal:n},onOpenProjectCenter:l,onOpenChat:u,onOpenWorklist:d,onOpenArtifacts:f,onOpenSkills:p,onOpenTimeline:m,onOpenSettings:h,onActivateStatusShortcut:g,children:(0,L.jsx)(`section`,{className:`workspace-grid references-workspace-grid`,"aria-label":`Reference files`,children:(0,L.jsx)(Ux,{files:b?[]:r,...s?{detail:{title:`Loading`,unavailableReason:`Loading`}}:c?{detail:{title:`References unavailable`,unavailableReason:`Workspace unavailable`}}:i===void 0?{}:{detail:i},uploadPending:a,fileSortMode:o,empty:s?(0,L.jsx)(_w,{children:`Loading reference files`}):c?(0,L.jsx)(_w,{children:`Workspace unavailable`}):(0,L.jsx)(_w,{children:`No reference files`}),onSelectFile:_,onUploadFile:v,...y===void 0?{}:{onFileSortModeChange:y}})})})}function Xw(e){return aT(e)&&!Zw(e)&&!lT(e)&&Symbol.asyncIterator in e}function Zw(e){return Array.isArray(e)}function Qw(e){return typeof e==`bigint`}function $w(e){return typeof e==`boolean`}function eT(e){return e instanceof globalThis.Date}function tT(e){return typeof e==`function`}function nT(e){return aT(e)&&!Zw(e)&&!lT(e)&&Symbol.iterator in e}function rT(e){return e===null}function iT(e){return typeof e==`number`}function aT(e){return typeof e==`object`&&!!e}function oT(e){return e instanceof globalThis.RegExp}function sT(e){return typeof e==`string`}function cT(e){return typeof e==`symbol`}function lT(e){return e instanceof globalThis.Uint8Array}function uT(e){return e===void 0}function dT(e){return e.map(e=>gT(e))}function fT(e){return new Date(e.getTime())}function pT(e){return new Uint8Array(e)}function mT(e){return new RegExp(e.source,e.flags)}function hT(e){let t={};for(let n of Object.getOwnPropertyNames(e))t[n]=gT(e[n]);for(let n of Object.getOwnPropertySymbols(e))t[n]=gT(e[n]);return t}function gT(e){return Zw(e)?dT(e):eT(e)?fT(e):lT(e)?pT(e):oT(e)?mT(e):aT(e)?hT(e):e}function _T(e){return gT(e)}function vT(e,t){return _T(t===void 0?e:{...t,...e})}function yT(e){return typeof e==`object`&&!!e}function bT(e){return globalThis.Array.isArray(e)&&!globalThis.ArrayBuffer.isView(e)}function xT(e){return e===void 0}function ST(e){return typeof e==`number`}var CT;(function(e){e.InstanceMode=`default`,e.ExactOptionalPropertyTypes=!1,e.AllowArrayObject=!1,e.AllowNaN=!1,e.AllowNullVoid=!1;function t(t,n){return e.ExactOptionalPropertyTypes?n in t:t[n]!==void 0}e.IsExactOptionalProperty=t;function n(t){let n=yT(t);return e.AllowArrayObject?n:n&&!bT(t)}e.IsObjectLike=n;function r(e){return n(e)&&!(e instanceof Date)&&!(e instanceof Uint8Array)}e.IsRecordLike=r;function i(t){return e.AllowNaN?ST(t):Number.isFinite(t)}e.IsNumberLike=i;function a(t){let n=xT(t);return e.AllowNullVoid?n||t===null:n}e.IsVoidLike=a})(CT||={});function wT(e){return globalThis.Object.freeze(e).map(e=>kT(e))}function TT(e){return e}function ET(e){return e}function DT(e){return e}function OT(e){let t={};for(let n of Object.getOwnPropertyNames(e))t[n]=kT(e[n]);for(let n of Object.getOwnPropertySymbols(e))t[n]=kT(e[n]);return globalThis.Object.freeze(t)}function kT(e){return Zw(e)?wT(e):eT(e)?TT(e):lT(e)?ET(e):oT(e)?DT(e):aT(e)?OT(e):e}function G(e,t){let n=t===void 0?e:{...t,...e};switch(CT.InstanceMode){case`freeze`:return kT(n);case`clone`:return _T(n);default:return n}}var AT=class extends Error{constructor(e){super(e)}},jT=Symbol.for(`TypeBox.Transform`),MT=Symbol.for(`TypeBox.Readonly`),NT=Symbol.for(`TypeBox.Optional`),PT=Symbol.for(`TypeBox.Hint`),K=Symbol.for(`TypeBox.Kind`);function FT(e){return aT(e)&&e[MT]===`Readonly`}function IT(e){return aT(e)&&e[NT]===`Optional`}function LT(e){return XT(e,`Any`)}function RT(e){return XT(e,`Argument`)}function zT(e){return XT(e,`Array`)}function BT(e){return XT(e,`AsyncIterator`)}function VT(e){return XT(e,`BigInt`)}function HT(e){return XT(e,`Boolean`)}function UT(e){return XT(e,`Computed`)}function WT(e){return XT(e,`Constructor`)}function GT(e){return XT(e,`Date`)}function KT(e){return XT(e,`Function`)}function qT(e){return XT(e,`Integer`)}function JT(e){return XT(e,`Intersect`)}function YT(e){return XT(e,`Iterator`)}function XT(e,t){return aT(e)&&K in e&&e[K]===t}function ZT(e){return $w(e)||iT(e)||sT(e)}function QT(e){return XT(e,`Literal`)}function $T(e){return XT(e,`MappedKey`)}function eE(e){return XT(e,`MappedResult`)}function tE(e){return XT(e,`Never`)}function nE(e){return XT(e,`Not`)}function rE(e){return XT(e,`Null`)}function iE(e){return XT(e,`Number`)}function aE(e){return XT(e,`Object`)}function oE(e){return XT(e,`Promise`)}function sE(e){return XT(e,`Record`)}function cE(e){return XT(e,`Ref`)}function lE(e){return XT(e,`RegExp`)}function uE(e){return XT(e,`String`)}function dE(e){return XT(e,`Symbol`)}function fE(e){return XT(e,`TemplateLiteral`)}function pE(e){return XT(e,`This`)}function mE(e){return aT(e)&&jT in e}function hE(e){return XT(e,`Tuple`)}function gE(e){return XT(e,`Undefined`)}function _E(e){return XT(e,`Union`)}function vE(e){return XT(e,`Uint8Array`)}function yE(e){return XT(e,`Unknown`)}function bE(e){return XT(e,`Unsafe`)}function xE(e){return XT(e,`Void`)}function SE(e){return aT(e)&&K in e&&sT(e[K])}function CE(e){return LT(e)||RT(e)||zT(e)||HT(e)||VT(e)||BT(e)||UT(e)||WT(e)||GT(e)||KT(e)||qT(e)||JT(e)||YT(e)||QT(e)||$T(e)||eE(e)||tE(e)||nE(e)||rE(e)||iE(e)||aE(e)||oE(e)||sE(e)||cE(e)||lE(e)||uE(e)||dE(e)||fE(e)||pE(e)||hE(e)||gE(e)||_E(e)||vE(e)||yE(e)||bE(e)||xE(e)||SE(e)}var wE=`Argument.Any.Array.AsyncIterator.BigInt.Boolean.Computed.Constructor.Date.Enum.Function.Integer.Intersect.Iterator.Literal.MappedKey.MappedResult.Not.Null.Number.Object.Promise.Record.Ref.RegExp.String.Symbol.TemplateLiteral.This.Tuple.Undefined.Union.Uint8Array.Unknown.Void`.split(`.`);function TE(e){try{return new RegExp(e),!0}catch{return!1}}function EE(e){if(!sT(e))return!1;for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n>=7&&n<=13||n===27||n===127)return!1}return!0}function DE(e){return AE(e)||ED(e)}function OE(e){return uT(e)||Qw(e)}function kE(e){return uT(e)||iT(e)}function AE(e){return uT(e)||$w(e)}function jE(e){return uT(e)||sT(e)}function ME(e){return uT(e)||sT(e)&&EE(e)&&TE(e)}function NE(e){return uT(e)||sT(e)&&EE(e)}function PE(e){return uT(e)||ED(e)}function FE(e){return aT(e)&&e[NT]===`Optional`}function IE(e){return XE(e,`Any`)&&jE(e.$id)}function LE(e){return XE(e,`Argument`)&&iT(e.index)}function RE(e){return XE(e,`Array`)&&e.type===`array`&&jE(e.$id)&&ED(e.items)&&kE(e.minItems)&&kE(e.maxItems)&&AE(e.uniqueItems)&&PE(e.contains)&&kE(e.minContains)&&kE(e.maxContains)}function zE(e){return XE(e,`AsyncIterator`)&&e.type===`AsyncIterator`&&jE(e.$id)&&ED(e.items)}function BE(e){return XE(e,`BigInt`)&&e.type===`bigint`&&jE(e.$id)&&OE(e.exclusiveMaximum)&&OE(e.exclusiveMinimum)&&OE(e.maximum)&&OE(e.minimum)&&OE(e.multipleOf)}function VE(e){return XE(e,`Boolean`)&&e.type===`boolean`&&jE(e.$id)}function HE(e){return XE(e,`Computed`)&&sT(e.target)&&Zw(e.parameters)&&e.parameters.every(e=>ED(e))}function UE(e){return XE(e,`Constructor`)&&e.type===`Constructor`&&jE(e.$id)&&Zw(e.parameters)&&e.parameters.every(e=>ED(e))&&ED(e.returns)}function WE(e){return XE(e,`Date`)&&e.type===`Date`&&jE(e.$id)&&kE(e.exclusiveMaximumTimestamp)&&kE(e.exclusiveMinimumTimestamp)&&kE(e.maximumTimestamp)&&kE(e.minimumTimestamp)&&kE(e.multipleOfTimestamp)}function GE(e){return XE(e,`Function`)&&e.type===`Function`&&jE(e.$id)&&Zw(e.parameters)&&e.parameters.every(e=>ED(e))&&ED(e.returns)}function KE(e){return XE(e,`Integer`)&&e.type===`integer`&&jE(e.$id)&&kE(e.exclusiveMaximum)&&kE(e.exclusiveMinimum)&&kE(e.maximum)&&kE(e.minimum)&&kE(e.multipleOf)}function qE(e){return aT(e)&&Object.entries(e).every(([e,t])=>EE(e)&&ED(t))}function JE(e){return XE(e,`Intersect`)&&!(sT(e.type)&&e.type!==`object`)&&Zw(e.allOf)&&e.allOf.every(e=>ED(e)&&!_D(e))&&jE(e.type)&&(AE(e.unevaluatedProperties)||PE(e.unevaluatedProperties))&&jE(e.$id)}function YE(e){return XE(e,`Iterator`)&&e.type===`Iterator`&&jE(e.$id)&&ED(e.items)}function XE(e,t){return aT(e)&&K in e&&e[K]===t}function ZE(e){return eD(e)&&sT(e.const)}function QE(e){return eD(e)&&iT(e.const)}function $E(e){return eD(e)&&$w(e.const)}function eD(e){return XE(e,`Literal`)&&jE(e.$id)&&tD(e.const)}function tD(e){return $w(e)||iT(e)||sT(e)}function nD(e){return XE(e,`MappedKey`)&&Zw(e.keys)&&e.keys.every(e=>iT(e)||sT(e))}function rD(e){return XE(e,`MappedResult`)&&qE(e.properties)}function iD(e){return XE(e,`Never`)&&aT(e.not)&&Object.getOwnPropertyNames(e.not).length===0}function aD(e){return XE(e,`Not`)&&ED(e.not)}function oD(e){return XE(e,`Null`)&&e.type===`null`&&jE(e.$id)}function sD(e){return XE(e,`Number`)&&e.type===`number`&&jE(e.$id)&&kE(e.exclusiveMaximum)&&kE(e.exclusiveMinimum)&&kE(e.maximum)&&kE(e.minimum)&&kE(e.multipleOf)}function cD(e){return XE(e,`Object`)&&e.type===`object`&&jE(e.$id)&&qE(e.properties)&&DE(e.additionalProperties)&&kE(e.minProperties)&&kE(e.maxProperties)}function lD(e){return XE(e,`Promise`)&&e.type===`Promise`&&jE(e.$id)&&ED(e.item)}function uD(e){return XE(e,`Record`)&&e.type===`object`&&jE(e.$id)&&DE(e.additionalProperties)&&aT(e.patternProperties)&&(e=>{let t=Object.getOwnPropertyNames(e.patternProperties);return t.length===1&&TE(t[0])&&aT(e.patternProperties)&&ED(e.patternProperties[t[0]])})(e)}function dD(e){return XE(e,`Ref`)&&jE(e.$id)&&sT(e.$ref)}function fD(e){return XE(e,`RegExp`)&&jE(e.$id)&&sT(e.source)&&sT(e.flags)&&kE(e.maxLength)&&kE(e.minLength)}function pD(e){return XE(e,`String`)&&e.type===`string`&&jE(e.$id)&&kE(e.minLength)&&kE(e.maxLength)&&ME(e.pattern)&&NE(e.format)}function mD(e){return XE(e,`Symbol`)&&e.type===`symbol`&&jE(e.$id)}function hD(e){return XE(e,`TemplateLiteral`)&&e.type===`string`&&sT(e.pattern)&&e.pattern[0]===`^`&&e.pattern[e.pattern.length-1]===`$`}function gD(e){return XE(e,`This`)&&jE(e.$id)&&sT(e.$ref)}function _D(e){return aT(e)&&jT in e}function vD(e){return XE(e,`Tuple`)&&e.type===`array`&&jE(e.$id)&&iT(e.minItems)&&iT(e.maxItems)&&e.minItems===e.maxItems&&(uT(e.items)&&uT(e.additionalItems)&&e.minItems===0||Zw(e.items)&&e.items.every(e=>ED(e)))}function yD(e){return XE(e,`Undefined`)&&e.type===`undefined`&&jE(e.$id)}function bD(e){return XE(e,`Union`)&&jE(e.$id)&&aT(e)&&Zw(e.anyOf)&&e.anyOf.every(e=>ED(e))}function xD(e){return XE(e,`Uint8Array`)&&e.type===`Uint8Array`&&jE(e.$id)&&kE(e.minByteLength)&&kE(e.maxByteLength)}function SD(e){return XE(e,`Unknown`)&&jE(e.$id)}function CD(e){return XE(e,`Unsafe`)}function wD(e){return XE(e,`Void`)&&e.type===`void`&&jE(e.$id)}function TD(e){return aT(e)&&K in e&&sT(e[K])&&!wE.includes(e[K])}function ED(e){return aT(e)&&(IE(e)||LE(e)||RE(e)||VE(e)||BE(e)||zE(e)||HE(e)||UE(e)||WE(e)||GE(e)||KE(e)||JE(e)||YE(e)||eD(e)||nD(e)||rD(e)||iD(e)||aD(e)||oD(e)||sD(e)||cD(e)||lD(e)||uD(e)||dD(e)||fD(e)||pD(e)||mD(e)||hD(e)||gD(e)||vD(e)||yD(e)||bD(e)||xD(e)||SD(e)||CD(e)||wD(e)||TD(e))}var DD=`(true|false)`,OD=`(0|[1-9][0-9]*)`,kD=`(.*)`,AD=`(?!.*)`;`${DD}`;var jD=`^${OD}$`,MD=`^${kD}$`,ND=`^${AD}$`;function PD(e,t){return e.includes(t)}function FD(e){return[...new Set(e)]}function ID(e,t){return e.filter(e=>t.includes(e))}function LD(e,t){return e.reduce((e,t)=>ID(e,t),t)}function RD(e){return e.length===1?e[0]:e.length>1?LD(e.slice(1),e[0]):[]}function zD(e){let t=[];for(let n of e)t.push(...n);return t}function BD(e){return G({[K]:`Any`},e)}function VD(e,t){return G({[K]:`Array`,type:`array`,items:e},t)}function HD(e){return G({[K]:`Argument`,index:e})}function UD(e,t){return G({[K]:`AsyncIterator`,type:`AsyncIterator`,items:e},t)}function WD(e,t,n){return G({[K]:`Computed`,target:e,parameters:t},n)}function GD(e,t){let{[t]:n,...r}=e;return r}function KD(e,t){return t.reduce((e,t)=>GD(e,t),e)}function qD(e){return G({[K]:`Never`,not:{}},e)}function JD(e){return G({[K]:`MappedResult`,properties:e})}function YD(e,t,n){return G({[K]:`Constructor`,type:`Constructor`,parameters:e,returns:t},n)}function XD(e,t,n){return G({[K]:`Function`,type:`Function`,parameters:e,returns:t},n)}function ZD(e,t){return G({[K]:`Union`,anyOf:e},t)}function QD(e){return e.some(e=>IT(e))}function $D(e){return e.map(e=>IT(e)?eO(e):e)}function eO(e){return KD(e,[NT])}function tO(e,t){return QD(e)?Vk(ZD($D(e),t)):ZD($D(e),t)}function nO(e,t){return e.length===1?G(e[0],t):e.length===0?qD(t):tO(e,t)}function rO(e,t){return e.length===0?qD(t):e.length===1?G(e[0],t):ZD(e,t)}var iO=class extends AT{};function aO(e){return e.replace(/\\\$/g,`$`).replace(/\\\*/g,`*`).replace(/\\\^/g,`^`).replace(/\\\|/g,`|`).replace(/\\\(/g,`(`).replace(/\\\)/g,`)`)}function oO(e,t,n){return e[t]===n&&e.charCodeAt(t-1)!==92}function sO(e,t){return oO(e,t,`(`)}function cO(e,t){return oO(e,t,`)`)}function lO(e,t){return oO(e,t,`|`)}function uO(e){if(!(sO(e,0)&&cO(e,e.length-1)))return!1;let t=0;for(let n=0;n<e.length;n++)if(sO(e,n)&&(t+=1),cO(e,n)&&--t,t===0&&n!==e.length-1)return!1;return!0}function dO(e){return e.slice(1,e.length-1)}function fO(e){let t=0;for(let n=0;n<e.length;n++)if(sO(e,n)&&(t+=1),cO(e,n)&&--t,lO(e,n)&&t===0)return!0;return!1}function pO(e){for(let t=0;t<e.length;t++)if(sO(e,t))return!0;return!1}function mO(e){let[t,n]=[0,0],r=[];for(let i=0;i<e.length;i++)if(sO(e,i)&&(t+=1),cO(e,i)&&--t,lO(e,i)&&t===0){let t=e.slice(n,i);t.length>0&&r.push(gO(t)),n=i+1}let i=e.slice(n);return i.length>0&&r.push(gO(i)),r.length===0?{type:`const`,const:``}:r.length===1?r[0]:{type:`or`,expr:r}}function hO(e){function t(e,t){if(!sO(e,t))throw new iO(`TemplateLiteralParser: Index must point to open parens`);let n=0;for(let r=t;r<e.length;r++)if(sO(e,r)&&(n+=1),cO(e,r)&&--n,n===0)return[t,r];throw new iO(`TemplateLiteralParser: Unclosed group parens in expression`)}function n(e,t){for(let n=t;n<e.length;n++)if(sO(e,n))return[t,n];return[t,e.length]}let r=[];for(let i=0;i<e.length;i++)if(sO(e,i)){let[n,a]=t(e,i),o=e.slice(n,a+1);r.push(gO(o)),i=a}else{let[t,a]=n(e,i),o=e.slice(t,a);o.length>0&&r.push(gO(o)),i=a-1}return r.length===0?{type:`const`,const:``}:r.length===1?r[0]:{type:`and`,expr:r}}function gO(e){return uO(e)?gO(dO(e)):fO(e)?mO(e):pO(e)?hO(e):{type:`const`,const:aO(e)}}function _O(e){return gO(e.slice(1,e.length-1))}var vO=class extends AT{};function yO(e){return e.type===`or`&&e.expr.length===2&&e.expr[0].type===`const`&&e.expr[0].const===`0`&&e.expr[1].type===`const`&&e.expr[1].const===`[1-9][0-9]*`}function bO(e){return e.type===`or`&&e.expr.length===2&&e.expr[0].type===`const`&&e.expr[0].const===`true`&&e.expr[1].type===`const`&&e.expr[1].const===`false`}function xO(e){return e.type===`const`&&e.const===`.*`}function SO(e){return yO(e)||xO(e)?!1:bO(e)?!0:e.type===`and`||e.type===`or`?e.expr.every(e=>SO(e)):e.type===`const`?!0:(()=>{throw new vO(`Unknown expression type`)})()}function CO(e){return SO(_O(e.pattern))}var wO=class extends AT{};function*TO(e){if(e.length===1)return yield*e[0];for(let t of e[0])for(let n of TO(e.slice(1)))yield`${t}${n}`}function*EO(e){return yield*TO(e.expr.map(e=>[...kO(e)]))}function*DO(e){for(let t of e.expr)yield*kO(t)}function*OO(e){return yield e.const}function*kO(e){return e.type===`and`?yield*EO(e):e.type===`or`?yield*DO(e):e.type===`const`?yield*OO(e):(()=>{throw new wO(`Unknown expression`)})()}function AO(e){let t=_O(e.pattern);return SO(t)?[...kO(t)]:[]}function jO(e,t){return G({[K]:`Literal`,const:e,type:typeof e},t)}function MO(e){return G({[K]:`Boolean`,type:`boolean`},e)}function NO(e){return G({[K]:`BigInt`,type:`bigint`},e)}function PO(e){return G({[K]:`Number`,type:`number`},e)}function FO(e){return G({[K]:`String`,type:`string`},e)}function*IO(e){let t=e.trim().replace(/"|'/g,``);return t===`boolean`?yield MO():t===`number`?yield PO():t===`bigint`?yield NO():t===`string`?yield FO():yield(()=>{let e=t.split(`|`).map(e=>jO(e.trim()));return e.length===0?qD():e.length===1?e[0]:nO(e)})()}function*LO(e){if(e[1]!==`{`)return yield*[jO(`$`),...RO(e.slice(1))];for(let t=2;t<e.length;t++)if(e[t]===`}`){let n=IO(e.slice(2,t)),r=RO(e.slice(t+1));return yield*[...n,...r]}yield jO(e)}function*RO(e){for(let t=0;t<e.length;t++)if(e[t]===`$`)return yield*[jO(e.slice(0,t)),...LO(e.slice(t))];yield jO(e)}function zO(e){return[...RO(e)]}var BO=class extends AT{};function VO(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function HO(e,t){return fE(e)?e.pattern.slice(1,e.pattern.length-1):_E(e)?`(${e.anyOf.map(e=>HO(e,t)).join(`|`)})`:iE(e)||qT(e)||VT(e)?`${t}${OD}`:uE(e)?`${t}${kD}`:QT(e)?`${t}${VO(e.const.toString())}`:HT(e)?`${t}${DD}`:(()=>{throw new BO(`Unexpected Kind '${e[K]}'`)})()}function UO(e){return`^${e.map(e=>HO(e,``)).join(``)}\$`}function WO(e){return nO(AO(e).map(e=>jO(e)))}function GO(e,t){let n=sT(e)?UO(zO(e)):UO(e);return G({[K]:`TemplateLiteral`,type:`string`,pattern:n},t)}function KO(e){return AO(e).map(e=>e.toString())}function qO(e){let t=[];for(let n of e)t.push(...YO(n));return t}function JO(e){return[e.toString()]}function YO(e){return[...new Set(fE(e)?KO(e):_E(e)?qO(e.anyOf):QT(e)?JO(e.const):iE(e)||qT(e)?[`[number]`]:[])]}function XO(e,t,n){let r={};for(let i of Object.getOwnPropertyNames(t))r[i]=uk(e,YO(t[i]),n);return r}function ZO(e,t,n){return XO(e,t.properties,n)}function QO(e,t,n){return JD(ZO(e,t,n))}function $O(e,t){return e.map(e=>sk(e,t))}function ek(e){return e.filter(e=>!tE(e))}function tk(e,t){return Xk(ek($O(e,t)))}function nk(e){return e.some(e=>tE(e))?[]:e}function rk(e,t){return nO(nk($O(e,t)))}function ik(e,t){return t in e?e[t]:t===`[number]`?nO(e):qD()}function ak(e,t){return t===`[number]`?e:qD()}function ok(e,t){return t in e?e[t]:qD()}function sk(e,t){return JT(e)?tk(e.allOf,t):_E(e)?rk(e.anyOf,t):hE(e)?ik(e.items??[],t):zT(e)?ak(e.items,t):aE(e)?ok(e.properties,t):qD()}function ck(e,t){return t.map(t=>sk(e,t))}function lk(e,t){return nO(ck(e,t))}function uk(e,t,n){if(cE(e)||cE(t)){if(!CE(e)||!CE(t))throw new AT(`Index types using Ref parameters require both Type and Key to be of TSchema`);return WD(`Index`,[e,t])}return eE(t)?QO(e,t,n):$T(t)?mk(e,t,n):G(CE(t)?lk(e,YO(t)):lk(e,t),n)}function dk(e,t,n){return{[t]:uk(e,[t],_T(n))}}function fk(e,t,n){return t.reduce((t,r)=>({...t,...dk(e,r,n)}),{})}function pk(e,t,n){return fk(e,t.keys,n)}function mk(e,t,n){return JD(pk(e,t,n))}function hk(e,t){return G({[K]:`Iterator`,type:`Iterator`,items:e},t)}function gk(e){return globalThis.Object.keys(e).filter(t=>!IT(e[t]))}function _k(e,t){let n=gk(e);return G(n.length>0?{[K]:`Object`,type:`object`,required:n,properties:e}:{[K]:`Object`,type:`object`,properties:e},t)}var vk=_k;function yk(e,t){return G({[K]:`Promise`,type:`Promise`,item:e},t)}function bk(e){return G(KD(e,[MT]))}function xk(e){return G({...e,[MT]:`Readonly`})}function Sk(e,t){return t===!1?bk(e):xk(e)}function Ck(e,t){let n=t??!0;return eE(e)?Ek(e,n):Sk(e,n)}function wk(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=Ck(e[r],t);return n}function Tk(e,t){return wk(e.properties,t)}function Ek(e,t){return JD(Tk(e,t))}function Dk(e,t){return G(e.length>0?{[K]:`Tuple`,type:`array`,items:e,additionalItems:!1,minItems:e.length,maxItems:e.length}:{[K]:`Tuple`,type:`array`,minItems:e.length,maxItems:e.length},t)}function Ok(e,t){return e in t?Fk(e,t[e]):JD(t)}function kk(e){return{[e]:jO(e)}}function Ak(e){let t={};for(let n of e)t[n]=jO(n);return t}function jk(e,t){return PD(t,e)?kk(e):Ak(t)}function Mk(e,t){return Ok(e,jk(e,t))}function Nk(e,t){return t.map(t=>Fk(e,t))}function Pk(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(t))n[r]=Fk(e,t[r]);return n}function Fk(e,t){let n={...t};return IT(t)?Vk(Fk(e,KD(t,[NT]))):FT(t)?Ck(Fk(e,KD(t,[MT]))):eE(t)?Ok(e,t.properties):$T(t)?Mk(e,t.keys):WT(t)?YD(Nk(e,t.parameters),Fk(e,t.returns),n):KT(t)?XD(Nk(e,t.parameters),Fk(e,t.returns),n):BT(t)?UD(Fk(e,t.items),n):YT(t)?hk(Fk(e,t.items),n):JT(t)?Zk(Nk(e,t.allOf),n):_E(t)?rO(Nk(e,t.anyOf),n):hE(t)?Dk(Nk(e,t.items??[]),n):aE(t)?vk(Pk(e,t.properties),n):zT(t)?VD(Fk(e,t.items),n):oE(t)?yk(Fk(e,t.item),n):t}function Ik(e,t){let n={};for(let r of e)n[r]=Fk(r,t);return n}function Lk(e,t,n){let r=CE(e)?YO(e):e;return vk(Ik(r,t({[K]:`MappedKey`,keys:r})),n)}function Rk(e){return G(KD(e,[NT]))}function zk(e){return G({...e,[NT]:`Optional`})}function Bk(e,t){return t===!1?Rk(e):zk(e)}function Vk(e,t){let n=t??!0;return eE(e)?Wk(e,n):Bk(e,n)}function Hk(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=Vk(e[r],t);return n}function Uk(e,t){return Hk(e.properties,t)}function Wk(e,t){return JD(Uk(e,t))}function Gk(e,t={}){let n=e.every(e=>aE(e)),r=CE(t.unevaluatedProperties)?{unevaluatedProperties:t.unevaluatedProperties}:{};return G(t.unevaluatedProperties===!1||CE(t.unevaluatedProperties)||n?{...r,[K]:`Intersect`,type:`object`,allOf:e}:{...r,[K]:`Intersect`,allOf:e},t)}function Kk(e){return e.every(e=>IT(e))}function qk(e){return KD(e,[NT])}function Jk(e){return e.map(e=>IT(e)?qk(e):e)}function Yk(e,t){return Kk(e)?Vk(Gk(Jk(e),t)):Gk(Jk(e),t)}function Xk(e,t={}){if(e.length===1)return G(e[0],t);if(e.length===0)return qD(t);if(e.some(e=>mE(e)))throw Error(`Cannot intersect transform types`);return Yk(e,t)}function Zk(e,t){if(e.length===1)return G(e[0],t);if(e.length===0)return qD(t);if(e.some(e=>mE(e)))throw Error(`Cannot intersect transform types`);return Gk(e,t)}function Qk(...e){let[t,n]=typeof e[0]==`string`?[e[0],e[1]]:[e[0].$id,e[1]];if(typeof t!=`string`)throw new AT(`Ref: $ref must be a string`);return G({[K]:`Ref`,$ref:t},n)}function $k(e,t){return WD(`Awaited`,[WD(e,t)])}function eA(e){return WD(`Awaited`,[Qk(e)])}function tA(e){return Zk(iA(e))}function nA(e){return rO(iA(e))}function rA(e){return aA(e)}function iA(e){return e.map(e=>aA(e))}function aA(e,t){return G(UT(e)?$k(e.target,e.parameters):JT(e)?tA(e.allOf):_E(e)?nA(e.anyOf):oE(e)?rA(e.item):cE(e)?eA(e.$ref):e,t)}function oA(e){let t=[];for(let n of e)t.push(pA(n));return t}function sA(e){return zD(oA(e))}function cA(e){return RD(oA(e))}function lA(e){return e.map((e,t)=>t.toString())}function uA(e){return[`[number]`]}function dA(e){return globalThis.Object.getOwnPropertyNames(e)}function fA(e){return mA?globalThis.Object.getOwnPropertyNames(e).map(e=>e[0]===`^`&&e[e.length-1]===`$`?e.slice(1,e.length-1):e):[]}function pA(e){return JT(e)?sA(e.allOf):_E(e)?cA(e.anyOf):hE(e)?lA(e.items??[]):zT(e)?uA(e.items):aE(e)?dA(e.properties):sE(e)?fA(e.patternProperties):[]}var mA=!1;function hA(e,t){return WD(`KeyOf`,[WD(e,t)])}function gA(e){return WD(`KeyOf`,[Qk(e)])}function _A(e,t){return G(nO(vA(pA(e))),t)}function vA(e){return e.map(e=>e===`[number]`?PO():jO(e))}function yA(e,t){return UT(e)?hA(e.target,e.parameters):cE(e)?gA(e.$ref):eE(e)?SA(e,t):_A(e,t)}function bA(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=yA(e[r],_T(t));return n}function xA(e,t){return bA(e.properties,t)}function SA(e,t){return JD(xA(e,t))}function CA(e){let t=[];for(let n of e)t.push(...pA(n));return FD(t)}function wA(e){return e.filter(e=>!tE(e))}function TA(e,t){let n=[];for(let r of e)n.push(...ck(r,[t]));return wA(n)}function EA(e,t){let n={};for(let r of t)n[r]=Xk(TA(e,r));return n}function DA(e,t){return vk(EA(e,CA(e)),t)}function OA(e){return G({[K]:`Date`,type:`Date`},e)}function kA(e){return G({[K]:`Null`,type:`null`},e)}function AA(e){return G({[K]:`Symbol`,type:`symbol`},e)}function jA(e){return G({[K]:`Undefined`,type:`undefined`},e)}function MA(e){return G({[K]:`Uint8Array`,type:`Uint8Array`},e)}function NA(e){return G({[K]:`Unknown`},e)}function PA(e){return e.map(e=>LA(e,!1))}function FA(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=Ck(LA(e[n],!1));return t}function IA(e,t){return t===!0?e:Ck(e)}function LA(e,t){return Xw(e)||nT(e)?IA(BD(),t):Zw(e)?Ck(Dk(PA(e))):lT(e)?MA():eT(e)?OA():aT(e)?IA(vk(FA(e)),t):tT(e)?IA(XD([],NA()),t):uT(e)?jA():rT(e)?kA():cT(e)?AA():Qw(e)?NO():iT(e)||$w(e)||sT(e)?jO(e):vk({})}function RA(e,t){return G(LA(e,!0),t)}function zA(e,t){return WT(e)?Dk(e.parameters,t):qD(t)}function BA(e,t){if(uT(e))throw Error(`Enum undefined or empty`);let n=globalThis.Object.getOwnPropertyNames(e).filter(e=>isNaN(e)).map(t=>e[t]);return rO([...new Set(n)].map(e=>jO(e)),{...t,[PT]:`Enum`})}var VA=class extends AT{},q;(function(e){e[e.Union=0]=`Union`,e[e.True=1]=`True`,e[e.False=2]=`False`})(q||={});function HA(e){return e===q.False?e:q.True}function UA(e){throw new VA(e)}function WA(e){return iD(e)||JE(e)||bD(e)||SD(e)||IE(e)}function GA(e,t){return iD(t)?lj(e,t):JE(t)?aj(e,t):bD(t)?Kj(e,t):SD(t)?Jj(e,t):IE(t)?KA(e,t):UA(`StructuralRight`)}function KA(e,t){return q.True}function qA(e,t){return JE(t)?aj(e,t):bD(t)&&t.anyOf.some(e=>IE(e)||SD(e))?q.True:bD(t)?q.Union:SD(t)||IE(t)?q.True:q.Union}function JA(e,t){return SD(e)?q.False:IE(e)?q.Union:iD(e)?q.True:q.False}function YA(e,t){return cD(t)&&Ej(t)?q.True:WA(t)?GA(e,t):RE(t)?HA(Qj(e.items,t.items)):q.False}function XA(e,t){return WA(t)?GA(e,t):zE(t)?HA(Qj(e.items,t.items)):q.False}function ZA(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):BE(t)?q.True:q.False}function QA(e,t){return $E(e)||VE(e)?q.True:q.False}function $A(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):VE(t)?q.True:q.False}function ej(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):UE(t)?e.parameters.length>t.parameters.length?q.False:e.parameters.every((e,n)=>HA(Qj(t.parameters[n],e))===q.True)?HA(Qj(e.returns,t.returns)):q.False:q.False}function tj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):WE(t)?q.True:q.False}function nj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):GE(t)?e.parameters.length>t.parameters.length?q.False:e.parameters.every((e,n)=>HA(Qj(t.parameters[n],e))===q.True)?HA(Qj(e.returns,t.returns)):q.False:q.False}function rj(e,t){return eD(e)&&iT(e.const)||sD(e)||KE(e)?q.True:q.False}function ij(e,t){return KE(t)||sD(t)?q.True:WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):q.False}function aj(e,t){return t.allOf.every(t=>Qj(e,t)===q.True)?q.True:q.False}function oj(e,t){return e.allOf.some(e=>Qj(e,t)===q.True)?q.True:q.False}function sj(e,t){return WA(t)?GA(e,t):YE(t)?HA(Qj(e.items,t.items)):q.False}function cj(e,t){return eD(t)&&t.const===e.const?q.True:WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):pD(t)?Lj(e,t):sD(t)?mj(e,t):KE(t)?rj(e,t):VE(t)?QA(e,t):q.False}function lj(e,t){return q.False}function uj(e,t){return q.True}function dj(e){let[t,n]=[e,0];for(;aD(t);)t=t.not,n+=1;return n%2==0?t:NA()}function fj(e,t){return aD(e)?Qj(dj(e),t):aD(t)?Qj(e,dj(t)):UA(`Invalid fallthrough for Not`)}function pj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):oD(t)?q.True:q.False}function mj(e,t){return QE(e)||sD(e)||KE(e)?q.True:q.False}function hj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):KE(t)||sD(t)?q.True:q.False}function gj(e,t){return Object.getOwnPropertyNames(e.properties).length===t}function _j(e){return Ej(e)}function vj(e){return gj(e,0)||gj(e,1)&&`description`in e.properties&&bD(e.properties.description)&&e.properties.description.anyOf.length===2&&(pD(e.properties.description.anyOf[0])&&yD(e.properties.description.anyOf[1])||pD(e.properties.description.anyOf[1])&&yD(e.properties.description.anyOf[0]))}function yj(e){return gj(e,0)}function bj(e){return gj(e,0)}function xj(e){return gj(e,0)}function Sj(e){return gj(e,0)}function Cj(e){return Ej(e)}function wj(e){let t=PO();return gj(e,0)||gj(e,1)&&`length`in e.properties&&HA(Qj(e.properties.length,t))===q.True}function Tj(e){return gj(e,0)}function Ej(e){let t=PO();return gj(e,0)||gj(e,1)&&`length`in e.properties&&HA(Qj(e.properties.length,t))===q.True}function Dj(e){let t=XD([BD()],BD());return gj(e,0)||gj(e,1)&&`then`in e.properties&&HA(Qj(e.properties.then,t))===q.True}function Oj(e,t){return Qj(e,t)===q.False||FE(e)&&!FE(t)?q.False:q.True}function kj(e,t){return SD(e)?q.False:IE(e)?q.Union:iD(e)||ZE(e)&&_j(t)||QE(e)&&yj(t)||$E(e)&&bj(t)||mD(e)&&vj(t)||BE(e)&&xj(t)||pD(e)&&_j(t)||mD(e)&&vj(t)||sD(e)&&yj(t)||KE(e)&&yj(t)||VE(e)&&bj(t)||xD(e)&&Cj(t)||WE(e)&&Sj(t)||UE(e)&&Tj(t)||GE(e)&&wj(t)?q.True:uD(e)&&pD(Mj(e))?t[PT]===`Record`?q.True:q.False:uD(e)&&sD(Mj(e))&&gj(t,0)?q.True:q.False}function Aj(e,t){return WA(t)?GA(e,t):uD(t)?Pj(e,t):cD(t)?(()=>{for(let n of Object.getOwnPropertyNames(t.properties)){if(!(n in e.properties)&&!FE(t.properties[n]))return q.False;if(FE(t.properties[n]))return q.True;if(Oj(e.properties[n],t.properties[n])===q.False)return q.False}return q.True})():q.False}function jj(e,t){return WA(t)?GA(e,t):cD(t)&&Dj(t)?q.True:lD(t)?HA(Qj(e.item,t.item)):q.False}function Mj(e){return jD in e.patternProperties?PO():MD in e.patternProperties?FO():UA(`Unknown record key pattern`)}function Nj(e){return jD in e.patternProperties?e.patternProperties[jD]:MD in e.patternProperties?e.patternProperties[MD]:UA(`Unable to get record value schema`)}function Pj(e,t){let[n,r]=[Mj(t),Nj(t)];return ZE(e)&&sD(n)&&HA(Qj(e,r))===q.True?q.True:xD(e)&&sD(n)||pD(e)&&sD(n)||RE(e)&&sD(n)?Qj(e,r):cD(e)?(()=>{for(let t of Object.getOwnPropertyNames(e.properties))if(Oj(r,e.properties[t])===q.False)return q.False;return q.True})():q.False}function Fj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Qj(Nj(e),Nj(t)):q.False}function Ij(e,t){return Qj(fD(e)?FO():e,fD(t)?FO():t)}function Lj(e,t){return eD(e)&&sT(e.const)||pD(e)?q.True:q.False}function Rj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):pD(t)?q.True:q.False}function zj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):mD(t)?q.True:q.False}function Bj(e,t){return hD(e)?Qj(WO(e),t):hD(t)?Qj(e,WO(t)):UA(`Invalid fallthrough for TemplateLiteral`)}function Vj(e,t){return RE(t)&&e.items!==void 0&&e.items.every(e=>Qj(e,t.items)===q.True)}function Hj(e,t){return iD(e)?q.True:SD(e)?q.False:IE(e)?q.Union:q.False}function Uj(e,t){return WA(t)?GA(e,t):cD(t)&&Ej(t)||RE(t)&&Vj(e,t)?q.True:vD(t)?uT(e.items)&&!uT(t.items)||!uT(e.items)&&uT(t.items)?q.False:uT(e.items)&&!uT(t.items)||e.items.every((e,n)=>Qj(e,t.items[n])===q.True)?q.True:q.False:q.False}function Wj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):xD(t)?q.True:q.False}function Gj(e,t){return WA(t)?GA(e,t):cD(t)?kj(e,t):uD(t)?Pj(e,t):wD(t)?Xj(e,t):yD(t)?q.True:q.False}function Kj(e,t){return t.anyOf.some(t=>Qj(e,t)===q.True)?q.True:q.False}function qj(e,t){return e.anyOf.every(e=>Qj(e,t)===q.True)?q.True:q.False}function Jj(e,t){return q.True}function Yj(e,t){return iD(t)?lj(e,t):JE(t)?aj(e,t):bD(t)?Kj(e,t):IE(t)?KA(e,t):pD(t)?Lj(e,t):sD(t)?mj(e,t):KE(t)?rj(e,t):VE(t)?QA(e,t):RE(t)?JA(e,t):vD(t)?Hj(e,t):cD(t)?kj(e,t):SD(t)?q.True:q.False}function Xj(e,t){return yD(e)||yD(e)?q.True:q.False}function Zj(e,t){return JE(t)?aj(e,t):bD(t)?Kj(e,t):SD(t)?Jj(e,t):IE(t)?KA(e,t):cD(t)?kj(e,t):wD(t)?q.True:q.False}function Qj(e,t){return hD(e)||hD(t)?Bj(e,t):fD(e)||fD(t)?Ij(e,t):aD(e)||aD(t)?fj(e,t):IE(e)?qA(e,t):RE(e)?YA(e,t):BE(e)?ZA(e,t):VE(e)?$A(e,t):zE(e)?XA(e,t):UE(e)?ej(e,t):WE(e)?tj(e,t):GE(e)?nj(e,t):KE(e)?ij(e,t):JE(e)?oj(e,t):YE(e)?sj(e,t):eD(e)?cj(e,t):iD(e)?uj(e,t):oD(e)?pj(e,t):sD(e)?hj(e,t):cD(e)?Aj(e,t):uD(e)?Fj(e,t):pD(e)?Rj(e,t):mD(e)?zj(e,t):vD(e)?Uj(e,t):lD(e)?jj(e,t):xD(e)?Wj(e,t):yD(e)?Gj(e,t):bD(e)?qj(e,t):SD(e)?Yj(e,t):wD(e)?Zj(e,t):UA(`Unknown left type operand '${e[K]}'`)}function $j(e,t){return Qj(e,t)}function eM(e,t,n,r,i){let a={};for(let o of globalThis.Object.getOwnPropertyNames(e))a[o]=iM(e[o],t,n,r,_T(i));return a}function tM(e,t,n,r,i){return eM(e.properties,t,n,r,i)}function nM(e,t,n,r,i){return JD(tM(e,t,n,r,i))}function rM(e,t,n,r){let i=$j(e,t);return i===q.Union?rO([n,r]):i===q.True?n:r}function iM(e,t,n,r,i){return eE(e)?nM(e,t,n,r,i):$T(e)?G(cM(e,t,n,r,i)):G(rM(e,t,n,r),i)}function aM(e,t,n,r,i){return{[e]:iM(jO(e),t,n,r,_T(i))}}function oM(e,t,n,r,i){return e.reduce((e,a)=>({...e,...aM(a,t,n,r,i)}),{})}function sM(e,t,n,r,i){return oM(e.keys,t,n,r,i)}function cM(e,t,n,r,i){return JD(sM(e,t,n,r,i))}function lM(e,t){return dM(WO(e),t)}function uM(e,t){let n=e.filter(e=>$j(e,t)===q.False);return n.length===1?n[0]:rO(n)}function dM(e,t,n={}){return fE(e)?G(lM(e,t),n):eE(e)?G(mM(e,t),n):G(_E(e)?uM(e.anyOf,t):$j(e,t)===q.False?e:qD(),n)}function fM(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=dM(e[r],t);return n}function pM(e,t){return fM(e.properties,t)}function mM(e,t){return JD(pM(e,t))}function hM(e,t){return _M(WO(e),t)}function gM(e,t){let n=e.filter(e=>$j(e,t)!==q.False);return n.length===1?n[0]:rO(n)}function _M(e,t,n){return fE(e)?G(hM(e,t),n):eE(e)?G(bM(e,t),n):G(_E(e)?gM(e.anyOf,t):$j(e,t)===q.False?qD():e,n)}function vM(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=_M(e[r],t);return n}function yM(e,t){return vM(e.properties,t)}function bM(e,t){return JD(yM(e,t))}function xM(e,t){return WT(e)?G(e.returns,t):qD(t)}function SM(e){return Ck(Vk(e))}function CM(e,t,n){return G({[K]:`Record`,type:`object`,patternProperties:{[e]:t}},n)}function wM(e,t,n){let r={};for(let n of e)r[n]=t;return vk(r,{...n,[PT]:`Record`})}function TM(e,t,n){return CO(e)?wM(YO(e),t,n):CM(e.pattern,t,n)}function EM(e,t,n){return wM(YO(rO(e)),t,n)}function DM(e,t,n){return wM([e.toString()],t,n)}function OM(e,t,n){return CM(e.source,t,n)}function kM(e,t,n){return CM(uT(e.pattern)?MD:e.pattern,t,n)}function AM(e,t,n){return CM(MD,t,n)}function jM(e,t,n){return CM(ND,t,n)}function MM(e,t,n){return vk({true:t,false:t},n)}function NM(e,t,n){return CM(jD,t,n)}function PM(e,t,n){return CM(jD,t,n)}function FM(e,t,n={}){return _E(e)?EM(e.anyOf,t,n):fE(e)?TM(e,t,n):QT(e)?DM(e.const,t,n):HT(e)?MM(e,t,n):qT(e)?NM(e,t,n):iE(e)?PM(e,t,n):lE(e)?OM(e,t,n):uE(e)?kM(e,t,n):LT(e)?AM(e,t,n):tE(e)?jM(e,t,n):qD(n)}function IM(e){return globalThis.Object.getOwnPropertyNames(e.patternProperties)[0]}function LM(e){let t=IM(e);return t===MD?FO():t===jD?PO():FO({pattern:t})}function RM(e){return e.patternProperties[IM(e)]}function zM(e,t){return t.parameters=$M(e,t.parameters),t.returns=eN(e,t.returns),t}function BM(e,t){return t.parameters=$M(e,t.parameters),t.returns=eN(e,t.returns),t}function VM(e,t){return t.allOf=$M(e,t.allOf),t}function HM(e,t){return t.anyOf=$M(e,t.anyOf),t}function UM(e,t){return uT(t.items)||(t.items=$M(e,t.items)),t}function WM(e,t){return t.items=eN(e,t.items),t}function GM(e,t){return t.items=eN(e,t.items),t}function KM(e,t){return t.items=eN(e,t.items),t}function qM(e,t){return t.item=eN(e,t.item),t}function JM(e,t){let n=QM(e,t.properties);return{...t,...vk(n)}}function YM(e,t){let n=FM(eN(e,LM(t)),eN(e,RM(t)));return{...t,...n}}function XM(e,t){return t.index in e?e[t.index]:NA()}function ZM(e,t){let n=FT(t),r=IT(t),i=eN(e,t);return n&&r?SM(i):n&&!r?Ck(i):!n&&r?Vk(i):i}function QM(e,t){return globalThis.Object.getOwnPropertyNames(t).reduce((n,r)=>({...n,[r]:ZM(e,t[r])}),{})}function $M(e,t){return t.map(t=>eN(e,t))}function eN(e,t){return WT(t)?zM(e,t):KT(t)?BM(e,t):JT(t)?VM(e,t):_E(t)?HM(e,t):hE(t)?UM(e,t):zT(t)?WM(e,t):BT(t)?GM(e,t):YT(t)?KM(e,t):oE(t)?qM(e,t):aE(t)?JM(e,t):sE(t)?YM(e,t):RT(t)?XM(e,t):t}function tN(e,t){return eN(t,vT(e))}function nN(e){return G({[K]:`Integer`,type:`integer`},e)}function rN(e,t,n){return{[e]:mN(jO(e),t,_T(n))}}function iN(e,t,n){return e.reduce((e,r)=>({...e,...rN(r,t,n)}),{})}function aN(e,t,n){return iN(e.keys,t,n)}function oN(e,t,n){return JD(aN(e,t,n))}function sN(e){let[t,n]=[e.slice(0,1),e.slice(1)];return[t.toLowerCase(),n].join(``)}function cN(e){let[t,n]=[e.slice(0,1),e.slice(1)];return[t.toUpperCase(),n].join(``)}function lN(e){return e.toUpperCase()}function uN(e){return e.toLowerCase()}function dN(e,t,n){let r=_O(e.pattern);return SO(r)?GO([rO(pN([...kO(r)].map(e=>jO(e)),t))],n):{...e,pattern:fN(e.pattern,t)}}function fN(e,t){return typeof e==`string`?t===`Uncapitalize`?sN(e):t===`Capitalize`?cN(e):t===`Uppercase`?lN(e):t===`Lowercase`?uN(e):e:e.toString()}function pN(e,t){return e.map(e=>mN(e,t))}function mN(e,t,n={}){return $T(e)?oN(e,t,n):fE(e)?dN(e,t,n):_E(e)?rO(pN(e.anyOf,t),n):QT(e)?jO(fN(e.const,t),n):G(e,n)}function hN(e,t={}){return mN(e,`Capitalize`,t)}function gN(e,t={}){return mN(e,`Lowercase`,t)}function _N(e,t={}){return mN(e,`Uncapitalize`,t)}function vN(e,t={}){return mN(e,`Uppercase`,t)}function yN(e,t,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(e))r[i]=kN(e[i],t,_T(n));return r}function bN(e,t,n){return yN(e.properties,t,n)}function xN(e,t,n){return JD(bN(e,t,n))}function SN(e,t){return e.map(e=>ON(e,t))}function CN(e,t){return e.map(e=>ON(e,t))}function wN(e,t){let{[t]:n,...r}=e;return r}function TN(e,t){return t.reduce((e,t)=>wN(e,t),e)}function EN(e,t,n){let r=KD(e,[jT,`$id`,`required`,`properties`]);return vk(TN(n,t),r)}function DN(e){return rO(e.reduce((e,t)=>ZT(t)?[...e,jO(t)]:e,[]))}function ON(e,t){return JT(e)?Zk(SN(e.allOf,t)):_E(e)?rO(CN(e.anyOf,t)):aE(e)?EN(e,t,e.properties):vk({})}function kN(e,t,n){let r=Zw(t)?DN(t):t,i=CE(t)?YO(t):t,a=cE(e),o=cE(t);return eE(e)?xN(e,i,n):$T(t)?NN(e,t,n):a&&o||!a&&o||a&&!o?WD(`Omit`,[e,r],n):G({...ON(e,i),...n})}function AN(e,t,n){return{[t]:kN(e,[t],_T(n))}}function jN(e,t,n){return t.reduce((t,r)=>({...t,...AN(e,r,n)}),{})}function MN(e,t,n){return jN(e,t.keys,n)}function NN(e,t,n){return JD(MN(e,t,n))}function PN(e,t,n){let r={};for(let i of globalThis.Object.getOwnPropertyNames(e))r[i]=UN(e[i],t,_T(n));return r}function FN(e,t,n){return PN(e.properties,t,n)}function IN(e,t,n){return JD(FN(e,t,n))}function LN(e,t){return e.map(e=>HN(e,t))}function RN(e,t){return e.map(e=>HN(e,t))}function zN(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function BN(e,t,n){let r=KD(e,[jT,`$id`,`required`,`properties`]);return vk(zN(n,t),r)}function VN(e){return rO(e.reduce((e,t)=>ZT(t)?[...e,jO(t)]:e,[]))}function HN(e,t){return JT(e)?Zk(LN(e.allOf,t)):_E(e)?rO(RN(e.anyOf,t)):aE(e)?BN(e,t,e.properties):vk({})}function UN(e,t,n){let r=Zw(t)?VN(t):t,i=CE(t)?YO(t):t,a=cE(e),o=cE(t);return eE(e)?IN(e,i,n):$T(t)?qN(e,t,n):a&&o||!a&&o||a&&!o?WD(`Pick`,[e,r],n):G({...HN(e,i),...n})}function WN(e,t,n){return{[t]:UN(e,[t],_T(n))}}function GN(e,t,n){return t.reduce((t,r)=>({...t,...WN(e,r,n)}),{})}function KN(e,t,n){return GN(e,t.keys,n)}function qN(e,t,n){return JD(KN(e,t,n))}function JN(e,t){return WD(`Partial`,[WD(e,t)])}function YN(e){return WD(`Partial`,[Qk(e)])}function XN(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=Vk(e[n]);return t}function ZN(e,t){let n=KD(e,[jT,`$id`,`required`,`properties`]);return vk(XN(t),n)}function QN(e){return e.map(e=>$N(e))}function $N(e){return UT(e)?JN(e.target,e.parameters):cE(e)?YN(e.$ref):JT(e)?Zk(QN(e.allOf)):_E(e)?rO(QN(e.anyOf)):aE(e)?ZN(e,e.properties):VT(e)||HT(e)||qT(e)||QT(e)||rE(e)||iE(e)||uE(e)||dE(e)||gE(e)?e:vk({})}function eP(e,t){return eE(e)?rP(e,t):G({...$N(e),...t})}function tP(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=eP(e[r],_T(t));return n}function nP(e,t){return tP(e.properties,t)}function rP(e,t){return JD(nP(e,t))}function iP(e,t){return WD(`Required`,[WD(e,t)])}function aP(e){return WD(`Required`,[Qk(e)])}function oP(e){let t={};for(let n of globalThis.Object.getOwnPropertyNames(e))t[n]=KD(e[n],[NT]);return t}function sP(e,t){let n=KD(e,[jT,`$id`,`required`,`properties`]);return vk(oP(t),n)}function cP(e){return e.map(e=>lP(e))}function lP(e){return UT(e)?iP(e.target,e.parameters):cE(e)?aP(e.$ref):JT(e)?Zk(cP(e.allOf)):_E(e)?rO(cP(e.anyOf)):aE(e)?sP(e,e.properties):VT(e)||HT(e)||qT(e)||QT(e)||rE(e)||iE(e)||uE(e)||dE(e)||gE(e)?e:vk({})}function uP(e,t){return eE(e)?pP(e,t):G({...lP(e),...t})}function dP(e,t){let n={};for(let r of globalThis.Object.getOwnPropertyNames(e))n[r]=uP(e[r],t);return n}function fP(e,t){return dP(e.properties,t)}function pP(e,t){return JD(fP(e,t))}function mP(e,t){return t.map(t=>cE(t)?hP(e,t.$ref):IP(e,t))}function hP(e,t){return t in e?cE(e[t])?hP(e,e[t].$ref):IP(e,e[t]):qD()}function gP(e){return aA(e[0])}function _P(e){return uk(e[0],e[1])}function vP(e){return yA(e[0])}function yP(e){return eP(e[0])}function bP(e){return kN(e[0],e[1])}function xP(e){return UN(e[0],e[1])}function SP(e){return uP(e[0])}function CP(e,t,n){let r=mP(e,n);return t===`Awaited`?gP(r):t===`Index`?_P(r):t===`KeyOf`?vP(r):t===`Partial`?yP(r):t===`Omit`?bP(r):t===`Pick`?xP(r):t===`Required`?SP(r):qD()}function wP(e,t){return VD(IP(e,t))}function TP(e,t){return UD(IP(e,t))}function EP(e,t,n){return YD(FP(e,t),IP(e,n))}function DP(e,t,n){return XD(FP(e,t),IP(e,n))}function OP(e,t){return Zk(FP(e,t))}function kP(e,t){return hk(IP(e,t))}function AP(e,t){return vk(globalThis.Object.keys(t).reduce((n,r)=>({...n,[r]:IP(e,t[r])}),{}))}function jP(e,t){let[n,r]=[IP(e,RM(t)),IM(t)],i=vT(t);return i.patternProperties[r]=n,i}function MP(e,t){return cE(t)?{...hP(e,t.$ref),[jT]:t[jT]}:t}function NP(e,t){return Dk(FP(e,t))}function PP(e,t){return rO(FP(e,t))}function FP(e,t){return t.map(t=>IP(e,t))}function IP(e,t){return IT(t)?G(IP(e,KD(t,[NT])),t):FT(t)?G(IP(e,KD(t,[MT])),t):mE(t)?G(MP(e,t),t):zT(t)?G(wP(e,t.items),t):BT(t)?G(TP(e,t.items),t):UT(t)?G(CP(e,t.target,t.parameters)):WT(t)?G(EP(e,t.parameters,t.returns),t):KT(t)?G(DP(e,t.parameters,t.returns),t):JT(t)?G(OP(e,t.allOf),t):YT(t)?G(kP(e,t.items),t):aE(t)?G(AP(e,t.properties),t):sE(t)?G(jP(e,t)):hE(t)?G(NP(e,t.items||[]),t):_E(t)?G(PP(e,t.anyOf),t):t}function LP(e,t){return t in e?IP(e,e[t]):qD()}function RP(e){return globalThis.Object.getOwnPropertyNames(e).reduce((t,n)=>({...t,[n]:LP(e,n)}),{})}var zP=class{constructor(e){let t=RP(e),n=this.WithIdentifiers(t);this.$defs=n}Import(e,t){let n={...this.$defs,[e]:G(this.$defs[e],t)};return G({[K]:`Import`,$defs:n,$ref:e})}WithIdentifiers(e){return globalThis.Object.getOwnPropertyNames(e).reduce((t,n)=>({...t,[n]:{...e[n],$id:n}}),{})}};function BP(e){return new zP(e)}function VP(e,t){return G({[K]:`Not`,not:e},t)}function HP(e,t){return KT(e)?Dk(e.parameters,t):qD()}var UP=0;function WP(e,t={}){uT(t.$id)&&(t.$id=`T${UP++}`);let n=vT(e({[K]:`This`,$ref:`${t.$id}`}));return n.$id=t.$id,G({[PT]:`Recursive`,...n},t)}function GP(e,t){let n=sT(e)?new globalThis.RegExp(e):e;return G({[K]:`RegExp`,type:`RegExp`,source:n.source,flags:n.flags},t)}function KP(e){return JT(e)?e.allOf:_E(e)?e.anyOf:hE(e)?e.items??[]:[]}function qP(e){return KP(e)}function JP(e,t){return KT(e)?G(e.returns,t):qD(t)}var YP=class{constructor(e){this.schema=e}Decode(e){return new XP(this.schema,e)}},XP=class{constructor(e,t){this.schema=e,this.decode=t}EncodeTransform(e,t){let n={Encode:n=>t[jT].Encode(e(n)),Decode:e=>this.decode(t[jT].Decode(e))};return{...t,[jT]:n}}EncodeSchema(e,t){let n={Decode:this.decode,Encode:e};return{...t,[jT]:n}}Encode(e){return mE(this.schema)?this.EncodeTransform(e,this.schema):this.EncodeSchema(e,this.schema)}};function ZP(e){return new YP(e)}function QP(e={}){return G({[K]:e[K]??`Unsafe`},e)}function $P(e){return G({[K]:`Void`,type:`void`},e)}var J=s({Any:()=>BD,Argument:()=>HD,Array:()=>VD,AsyncIterator:()=>UD,Awaited:()=>aA,BigInt:()=>NO,Boolean:()=>MO,Capitalize:()=>hN,Composite:()=>DA,Const:()=>RA,Constructor:()=>YD,ConstructorParameters:()=>zA,Date:()=>OA,Enum:()=>BA,Exclude:()=>dM,Extends:()=>iM,Extract:()=>_M,Function:()=>XD,Index:()=>uk,InstanceType:()=>xM,Instantiate:()=>tN,Integer:()=>nN,Intersect:()=>Zk,Iterator:()=>hk,KeyOf:()=>yA,Literal:()=>jO,Lowercase:()=>gN,Mapped:()=>Lk,Module:()=>BP,Never:()=>qD,Not:()=>VP,Null:()=>kA,Number:()=>PO,Object:()=>vk,Omit:()=>kN,Optional:()=>Vk,Parameters:()=>HP,Partial:()=>eP,Pick:()=>UN,Promise:()=>yk,Readonly:()=>Ck,ReadonlyOptional:()=>SM,Record:()=>FM,Recursive:()=>WP,Ref:()=>Qk,RegExp:()=>GP,Required:()=>uP,Rest:()=>qP,ReturnType:()=>JP,String:()=>FO,Symbol:()=>AA,TemplateLiteral:()=>GO,Transform:()=>ZP,Tuple:()=>Dk,Uint8Array:()=>MA,Uncapitalize:()=>_N,Undefined:()=>jA,Union:()=>rO,Unknown:()=>NA,Unsafe:()=>QP,Uppercase:()=>vN,Void:()=>$P});function eF(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function tF(e,t){return J.String({pattern:`^${eF(e)}${Mt}$`,...t===void 0?{}:{description:t}})}var Y=J.String({minLength:1,description:`ISO 8601 date-time string`}),nF=J.String({minLength:1}),rF=J.Union([J.Literal(`standalone`),J.Literal(`feishu`)]);J.Object({kind:rF,version:J.Literal(1)},{additionalProperties:!1}),tF(Pt.project,`ProjectId`);var iF=tF(Pt.message,`MessageId`),aF=tF(Pt.taskModule,`TaskModuleId`),oF=tF(Pt.task,`TaskId`),sF=tF(Pt.runResult,`RunResultId`),cF=tF(Pt.recoverySummary,`RecoverySummaryId`),lF=tF(Pt.activity,`ActivityRef`),uF=tF(Pt.event,`EventRef`),dF=tF(Pt.workflowInvocation,`WorkflowInvocationRef`),fF=tF(Pt.clarificationThread,`ClarificationThreadRef`),pF=tF(Pt.clarificationRound,`ClarificationRoundRef`);tF(Pt.clarificationInteractionResponse,`ClarificationInteractionResponseId`);var mF=tF(Pt.approvalRequest,`ApprovalRequestId`),hF=tF(Pt.idempotency,`IdempotencyKey`),gF=tF(Pt.relayProject,`RelayProjectRef`),_F=tF(Pt.relayAccount,`RelayAccountRef`);tF(Pt.relayMembership,`RelayMembershipRef`),tF(Pt.relayAccountSession,`RelayAccountSessionRef`),tF(Pt.relayClientSession,`RelayClientSessionId`),tF(Pt.relayPlatformSessionBootstrap,`RelayPlatformSessionBootstrapRef`);var vF=tF(Pt.relayPlatformSession,`RelayPlatformSessionRef`),yF=tF(Pt.relayUpload,`RelayUploadRef`);tF(Pt.relayAuthChallenge,`RelayAuthChallengeRef`);var bF=tF(Pt.relayDesktopEntryContinuation,`RelayDesktopEntryContinuationRef`);tF(Pt.hostConnection,`HostConnectionRef`),tF(Pt.joinToken,`JoinTokenRef`);var xF=J.Union([J.Literal(`project_context_bootstrap`),J.Literal(`scratchpad_refresh`),J.Literal(`task_compile`),J.Literal(`context_sync`),J.Literal(`reference_summary_refresh`),J.Literal(`recovery_check`),J.Literal(`follow_up_check`)]);J.Object({cursor:J.Optional(nF),limit:J.Optional(J.Integer({minimum:1,maximum:200,default:50}))},{additionalProperties:!1});function SF(e){return J.Object({items:J.Array(e),page:J.Object({next_cursor:J.Optional(nF),has_more:J.Boolean(),limit:J.Integer({minimum:1,maximum:200})},{additionalProperties:!1})},{additionalProperties:!1})}function CF(e){return J.Object({items:J.Array(e),window:J.Object({older_cursor:J.Optional(nF),newer_cursor:J.Optional(nF),has_older:J.Boolean(),has_newer:J.Boolean(),limit:J.Integer({minimum:1,maximum:200})},{additionalProperties:!1})},{additionalProperties:!1})}var wF=J.Union([J.Object({kind:J.Literal(`all`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`workspace`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`session`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`bootstrap`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`messages`),scope:J.Literal(`main_chat`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`messages`),scope:J.Literal(`clarification_round`),round_id:pF},{additionalProperties:!1}),J.Object({kind:J.Literal(`scratchpad`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`worklist`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`read_state`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`task`),task_id:oF},{additionalProperties:!1}),J.Object({kind:J.Literal(`task_detail`),task_id:oF},{additionalProperties:!1}),J.Object({kind:J.Literal(`task_run_results`),task_id:oF},{additionalProperties:!1}),J.Object({kind:J.Literal(`clarification`),thread_id:J.Optional(fF),round_id:J.Optional(pF)},{additionalProperties:!1}),J.Object({kind:J.Literal(`execution_status`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`activity`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_config`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_usage`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`project_timeline`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`skills`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`artifacts`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`approval`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`viewer`),path:J.Optional(J.String({minLength:1}))},{additionalProperties:!1}),J.Object({kind:J.Literal(`recovery_summaries`)},{additionalProperties:!1})]);J.Object({kind:J.String({minLength:1})});var TF=J.Object({kind:J.Literal(`interrupted`),retry_with_new_command_id:J.Literal(!0)},{additionalProperties:!1});function EF(e){return J.Object({command_id:hF,issued_at:Y,payload:e},{additionalProperties:!1})}function DF(e){return J.Object({command_id:hF,disposition:e,invalidates:J.Optional(J.Array(wF))},{additionalProperties:!1})}function OF(e,t){return J.Object({command_id:hF,disposition:e,result:J.Optional(t),invalidates:J.Optional(J.Array(wF))},{additionalProperties:!1})}var kF=J.Union([J.Literal(`bad_request`),J.Literal(`unauthorized`),J.Literal(`forbidden`),J.Literal(`not_found`),J.Literal(`conflict`),J.Literal(`validation_failed`),J.Literal(`provider_not_configured`),J.Literal(`provider_auth_invalid`),J.Literal(`provider_quota_or_billing_required`),J.Literal(`provider_rate_limited`),J.Literal(`provider_model_unavailable`),J.Literal(`provider_network_error`),J.Literal(`relay_session_invalid`),J.Literal(`project_membership_required`),J.Literal(`command_replay_mismatch`),J.Literal(`repo_snapshot_unavailable`),J.Literal(`host_unavailable`),J.Literal(`internal_error`)]);J.Object({error:J.Object({code:kF,message:J.String({minLength:1}),retryable:J.Boolean(),details:J.Optional(J.Unknown())},{additionalProperties:!1})},{additionalProperties:!1}),J.Union([J.Literal(`connection.ready`),J.Literal(`message.created`),J.Literal(`scratchpad.updated`),J.Literal(`worklist.changed`),J.Literal(`task.updated`),J.Literal(`task_detail.updated`),J.Literal(`clarification.changed`),J.Literal(`approval.changed`),J.Literal(`activity.event`),J.Literal(`execution_status.changed`),J.Literal(`provider_config.changed`),J.Literal(`workspace.recovered`),J.Literal(`query.invalidate`)]),J.Union([J.Object({kind:J.Literal(`all`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`me`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`recent_projects`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`join_entries`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`project_presence`),relay_project_ref:gF},{additionalProperties:!1})]),J.Union([J.Literal(`connection.ready`),J.Literal(`query.invalidate`)]);var AF=J.Object({retention_seconds:J.Literal(300),max_events:J.Literal(1e3)},{additionalProperties:!1}),X=J.String({minLength:1}),jF=J.Union([J.Literal(`static`),J.Literal(`server`)]),MF=J.String({minLength:1,maxLength:120,pattern:`\\S`}),NF=J.String({minLength:1}),PF=J.Object({title:MF,kind:J.Literal(`static`),root:NF,entry:NF,network:J.Boolean()},{additionalProperties:!1}),FF=J.Object({title:MF,kind:J.Literal(`server`),cwd:NF,entry:J.String({minLength:1,maxLength:256,pattern:`^/`}),network:J.Boolean()},{additionalProperties:!1});J.Object({version:J.Literal(1),artifact:J.Union([PF,FF])},{additionalProperties:!1});var IF=J.Union([J.Literal(`ready`),J.Literal(`starting`),J.Literal(`idle`),J.Literal(`failed`)]),LF=J.Object({title:MF,kind:jF,network:J.Boolean()},{additionalProperties:!1}),RF=J.Object({status:IF,url:J.Optional(J.String({minLength:1})),error_message:J.Optional(X)},{additionalProperties:!1}),zF=J.Union([J.Object({status:J.Literal(`not_declared`)},{additionalProperties:!1}),J.Object({status:J.Literal(`invalid`),error:J.Object({code:X,message:X},{additionalProperties:!1})},{additionalProperties:!1}),J.Object({status:J.Literal(`declared`),preview_generation:X,artifact:LF,preview:RF},{additionalProperties:!1})]);J.Object({artifact:zF},{additionalProperties:!1});var BF=J.Object({},{additionalProperties:!1}),VF=J.Union([J.Object({kind:J.Literal(`issued`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`not_declared`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`invalid_manifest`),message:X},{additionalProperties:!1}),J.Object({kind:J.Literal(`preview_not_ready`),status:J.Union([J.Literal(`starting`),J.Literal(`idle`),J.Literal(`failed`)]),message:J.Optional(X)},{additionalProperties:!1}),TF]),HF=J.Object({bootstrap_url:J.String({minLength:1}),expires_at:Y},{additionalProperties:!1});EF(BF),OF(VF,HF);var UF=1e3,WF=1e3,GF=J.Union([J.Literal(`control`),J.Literal(`content`),J.Literal(`container`)]),KF=J.Object({tag_name:J.String({minLength:1,maxLength:64}),role:J.Optional(J.String({minLength:1,maxLength:64})),accessible_name:J.Optional(J.String({minLength:1,maxLength:160}))},{additionalProperties:!1}),qF=J.Object({expanded:J.Optional(J.Boolean()),selected:J.Optional(J.Boolean()),checked:J.Optional(J.Boolean()),pressed:J.Optional(J.Boolean()),disabled:J.Optional(J.Boolean())},{additionalProperties:!1,minProperties:1}),JF=J.Object({element_kind:GF,tag_name:J.String({minLength:1,maxLength:64}),role:J.Optional(J.String({minLength:1,maxLength:64})),accessible_name:J.Optional(J.String({minLength:1,maxLength:160})),text_excerpt:J.Optional(J.String({minLength:1,maxLength:280})),context:J.Array(KF,{maxItems:3}),state:J.Optional(qF)},{additionalProperties:!1}),YF=J.Object({version:J.Literal(1),explicit_anchor:J.Optional(J.String({minLength:1,maxLength:160})),stable_attributes:J.Optional(J.Object({id:J.Optional(J.String({minLength:1,maxLength:128})),test_id:J.Optional(J.String({minLength:1,maxLength:160}))},{additionalProperties:!1,minProperties:1})),semantic_path:J.Array(J.Object({role:J.Optional(J.String({minLength:1,maxLength:64})),accessible_name:J.Optional(J.String({minLength:1,maxLength:160}))},{additionalProperties:!1,minProperties:1}),{maxItems:4}),selector_path:J.Array(J.Object({root:J.Union([J.Literal(`document`),J.Literal(`open_shadow_root`)]),selector:J.String({minLength:1,maxLength:1024})},{additionalProperties:!1}),{minItems:1,maxItems:4})},{additionalProperties:!1}),XF=J.Object({snapshot:JF,anchor:YF,fallback_context:J.Optional(J.Object({snapshot:JF,anchor:YF},{additionalProperties:!1}))},{additionalProperties:!1}),ZF=J.Object({document_url:J.String({minLength:1,maxLength:2048,pattern:`^/`}),comment:J.String({minLength:1,maxLength:WF}),target:XF},{additionalProperties:!1}),QF=J.Object({expected_preview_generation:J.String({minLength:1,maxLength:256}),summary:J.Optional(J.String({minLength:1,maxLength:UF})),annotations:J.Array(ZF,{minItems:1,maxItems:64})},{additionalProperties:!1}),$F=J.Object({kind:J.Literal(`artifact_feedback`),version:J.Literal(1),preview_generation:J.String({minLength:1,maxLength:256}),artifact_title:MF,inspector_version:J.Literal(1),summary:J.Optional(J.String({minLength:1,maxLength:UF})),annotations:J.Array(ZF,{minItems:1,maxItems:64})},{additionalProperties:!1}),eI=4096,tI=J.String({pattern:`^[A-Za-z0-9_-]+$`}),nI=J.String({...tI,minLength:43,maxLength:43});J.String({...tI,minLength:43,maxLength:43});var rI=J.Object({iv:J.String({...tI,minLength:16,maxLength:16}),ciphertext:J.String({...tI,minLength:24,maxLength:eI})},{additionalProperties:!1});J.Object({continuation_ref:bF,completion_token:nI,expires_at:J.String({minLength:1})},{additionalProperties:!1});var iI=J.Object({continuation_ref:bF,status:J.Literal(`pending`),expires_at:J.String({minLength:1})},{additionalProperties:!1}),aI=J.Object({continuation_ref:bF,status:J.Literal(`ready`),sealed_payload:rI,expires_at:J.String({minLength:1})},{additionalProperties:!1});J.Union([iI,aI]),J.Object({continuation_ref:bF,sealed_payload:rI},{additionalProperties:!1}),J.Object({status:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({handoff_token:J.String({minLength:32,maxLength:128,pattern:`^[A-Za-z0-9_-]+$`})},{additionalProperties:!1}),J.Object({expires_at:Y,visibility:J.Literal(`hash_only`)},{additionalProperties:!1});var oI=2048,sI=`im:chat.members:read`,cI=`docx:document:readonly`,lI=`offline_access`,uI=`wiki:node:read`,dI=`drive:file:download`;J.Object({profile:J.Optional(J.Union([J.Literal(`docx`),J.Literal(`wiki_docx`),J.Literal(`drive_file`)]))},{additionalProperties:!1});var fI=J.String({minLength:43,maxLength:43,pattern:`^[A-Za-z0-9_-]+$`}),pI=J.String({minLength:43,maxLength:43,pattern:`^[A-Za-z0-9_-]+$`});J.Object({relay_project_ref:gF},{additionalProperties:!1}),J.Object({platform:J.Literal(`feishu`),app_id:J.String({minLength:1,maxLength:128,pattern:`^cli_[A-Za-z0-9]+$`}),state:fI,expires_at:Y},{additionalProperties:!1}),J.Object({relay_project_ref:gF,state:fI,authorization_code:J.String({minLength:1,maxLength:oI,pattern:`^[^\\u0000-\\u001f\\u007f]+$`})},{additionalProperties:!1}),J.Object({platform:J.Literal(`feishu`),project:J.Object({relay_project_ref:gF,display_name:J.String({minLength:1,maxLength:256})},{additionalProperties:!1}),account:J.Object({account_ref:_F,display_name:J.String({minLength:1,maxLength:256})},{additionalProperties:!1}),membership:J.Object({label:J.Union([J.Literal(`owner`),J.Literal(`member`)])},{additionalProperties:!1}),session:J.Object({platform_session_ref:vF,expires_at:Y,transport:J.Literal(`http_only_cookie`)},{additionalProperties:!1})},{additionalProperties:!1}),J.Object({platform:J.Literal(`feishu`),app_id:J.String({minLength:1,maxLength:128,pattern:`^cli_[A-Za-z0-9]+$`}),state:fI,authorization_scopes:J.Union([J.Tuple([J.Literal(cI),J.Literal(lI),J.Literal(dI)]),J.Tuple([J.Literal(cI),J.Literal(lI)]),J.Tuple([J.Literal(cI),J.Literal(lI),J.Literal(uI)])]),expires_at:Y},{additionalProperties:!1}),J.Object({state:fI,authorization_code:J.String({minLength:1,maxLength:oI,pattern:`^[^\\u0000-\\u001f\\u007f]+$`})},{additionalProperties:!1}),J.Object({platform:J.Literal(`feishu`),status:J.Literal(`authorized`),authorized_at:Y},{additionalProperties:!1}),J.Object({platform:J.Literal(`feishu`),relay_project_ref:gF,handoff_token:pI,expires_at:Y},{additionalProperties:!1}),J.Object({relay_project_ref:gF,handoff_token:pI},{additionalProperties:!1});var mI=J.String({minLength:1,maxLength:256,pattern:`^\\S(?:.*\\S)?$`}),hI=J.Union([J.Literal(`provider_auth_invalid`),J.Literal(`provider_quota_or_billing_required`),J.Literal(`provider_rate_limited`),J.Literal(`provider_model_unavailable`),J.Literal(`provider_network_error`),J.Literal(`unknown`)]),gI=hI,_I=J.Union([J.Literal(`provider_auth_invalid`),J.Literal(`provider_quota_or_billing_required`),J.Literal(`provider_rate_limited`),J.Literal(`provider_model_unavailable`),J.Literal(`provider_network_error`)]),vI=J.Union([J.Literal(`provider_not_configured`),J.Literal(`provider_config_invalid`),J.Literal(`provider_credential_missing`)]),yI=J.Union([J.Literal(`model_list_unavailable`),J.Literal(`model_list_empty`),vI]);J.Union([J.Object({status:J.Literal(`available`),models:J.Array(mI)},{additionalProperties:!1}),J.Object({status:J.Literal(`unavailable`),reason:yI},{additionalProperties:!1})]);var bI=J.Object({default_model:mI,expected_default_model:mI},{additionalProperties:!1}),xI=J.Union([J.Object({kind:J.Literal(`updated`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`unchanged`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`stale_default_model`),current_default_model:mI},{additionalProperties:!1}),J.Object({kind:J.Literal(`validation_failed`),reason:_I,retryable:J.Boolean()},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:vI},{additionalProperties:!1}),TF]);EF(bI),DF(xI);var SI=J.Union([J.Object({status:J.Literal(`not_configured`)},{additionalProperties:!1}),J.Object({status:J.Literal(`configured`),provider:J.Literal(`openai`),auth_kind:J.Literal(`api_key`),redacted_key:X,default_model:X,validated_at:Y},{additionalProperties:!1}),J.Object({status:J.Literal(`invalid`),provider:J.Optional(J.Literal(`openai`)),auth_kind:J.Optional(J.Literal(`api_key`)),redacted_key:J.Optional(X),default_model:J.Optional(X),validated_at:J.Optional(Y),invalid_reason_code:J.Optional(hI)},{additionalProperties:!1})]),CI=J.Union([J.Literal(`implementation`),J.Literal(`planning`),J.Literal(`context`),J.Literal(`qna`),J.Literal(`other`)]),wI=J.Object({input_tokens:J.Integer({minimum:0}),cached_input_tokens:J.Integer({minimum:0}),output_tokens:J.Integer({minimum:0}),reasoning_output_tokens:J.Integer({minimum:0}),total_tokens:J.Integer({minimum:0}),event_count:J.Integer({minimum:0})},{additionalProperties:!1}),TI=J.Object({source:J.String({minLength:1}),label:J.String({minLength:1}),category:CI,input_tokens:J.Integer({minimum:0}),cached_input_tokens:J.Integer({minimum:0}),output_tokens:J.Integer({minimum:0}),reasoning_output_tokens:J.Integer({minimum:0}),total_tokens:J.Integer({minimum:0}),event_count:J.Integer({minimum:0})},{additionalProperties:!1}),EI=J.Object({model:J.String({minLength:1}),input_tokens:J.Integer({minimum:0}),cached_input_tokens:J.Integer({minimum:0}),output_tokens:J.Integer({minimum:0}),reasoning_output_tokens:J.Integer({minimum:0}),total_tokens:J.Integer({minimum:0}),event_count:J.Integer({minimum:0})},{additionalProperties:!1}),DI=J.Object({total_tokens:J.Integer({minimum:0}),totals:wI,by_source:J.Array(TI),by_model:J.Array(EI),recent_windows:J.Object({today:wI,last_7_days:wI,last_30_days:wI},{additionalProperties:!1})},{additionalProperties:!1}),OI=J.Union([J.Literal(`task_accepted`),J.Literal(`task_update`),J.Literal(`checkpoint`)]),kI=J.Union([J.Literal(`completed`),J.Literal(`failed`),J.Literal(`needs_human`)]),AI=J.Union([J.Literal(`needs_input`),J.Literal(`completed`),J.Literal(`failed`)]),jI=J.Union([J.Literal(`neutral`),J.Literal(`success`),J.Literal(`warning`),J.Literal(`error`)]),MI=J.Object({kind:J.Union([J.Literal(`worklist_task`),J.Literal(`chat_message`),J.Literal(`reference_file`),J.Literal(`repo_path`)]),label:J.String({minLength:1}),task_id:J.Optional(oF),message_id:J.Optional(iF),path:J.Optional(J.String({minLength:1}))},{additionalProperties:!1}),NI=J.Object({message_id:iF,author:J.String({minLength:1}),body:J.String(),created_at:Y},{additionalProperties:!1}),PI=J.Object({title:J.Optional(J.String({minLength:1})),summary:J.String({minLength:1}),source:J.Optional(J.Union([J.Literal(`scratchpad`),J.Literal(`clarification`),J.Literal(`contract`)]))},{additionalProperties:!1}),FI=J.Object({title:J.Optional(J.String({minLength:1})),summary:J.Optional(J.String()),request:J.Optional(J.String()),status:J.Optional(J.Union([J.Literal(`active`),J.Literal(`resolved`)])),answer_count:J.Optional(J.Integer({minimum:0})),answers:J.Optional(J.Array(NI))},{additionalProperties:!1}),II=J.Union([J.Literal(`added`),J.Literal(`modified`),J.Literal(`deleted`),J.Literal(`renamed`),J.Literal(`unknown`)]),LI=J.Object({tone:jI,summary:J.Optional(J.String()),origin:J.Optional(J.Object({title:J.Optional(J.String({minLength:1})),summary:J.Optional(J.String()),snippets:J.Optional(J.Array(NI)),source_count:J.Optional(J.Integer({minimum:0})),unavailable_reason:J.Optional(J.String({minLength:1}))},{additionalProperties:!1})),decisions:J.Optional(J.Array(PI)),clarification:J.Optional(FI),contract:J.Optional(J.Object({goal:J.String(),scope:J.Array(J.String()),truncated:J.Optional(J.Boolean())},{additionalProperties:!1})),result:J.Optional(J.Object({summary:J.String(),error_code:J.Optional(J.String({minLength:1}))},{additionalProperties:!1})),changes:J.Optional(J.Object({items:J.Array(J.Object({status:II,path:J.String({minLength:1}),previous_path:J.Optional(J.String({minLength:1}))},{additionalProperties:!1})),total_count:J.Integer({minimum:0}),truncated:J.Boolean()},{additionalProperties:!1})),verification:J.Optional(J.Object({checks:J.Union([J.Literal(`passed`),J.Literal(`failed`),J.Literal(`skipped`)]),skip_reason_code:J.Optional(J.String({minLength:1})),skip_reason_summary:J.Optional(J.String())},{additionalProperties:!1})),promotion:J.Optional(J.Object({status:J.Union([J.Literal(`promoted`),J.Literal(`not_promoted`),J.Literal(`not_attempted`)]),commit_oid:J.Optional(J.String({minLength:1})),commit_short_oid:J.Optional(J.String({minLength:1})),summary:J.Optional(J.String()),reason_code:J.Optional(J.String({minLength:1}))},{additionalProperties:!1})),checkpoint:J.Optional(J.Object({counters:J.Object({completed:J.Integer({minimum:0}),failed:J.Integer({minimum:0}),remaining:J.Integer({minimum:0})},{additionalProperties:!1}),items:J.Array(J.Object({task_id:oF,title:J.String({minLength:1}),status:J.Union([J.Literal(`done`),J.Literal(`failed`)]),summary:J.String()},{additionalProperties:!1})),generated_files:J.Optional(J.Array(J.Object({path:J.String({minLength:1}),name:J.String({minLength:1})},{additionalProperties:!1}))),truncated:J.Optional(J.Boolean())},{additionalProperties:!1})),links:J.Array(MI)},{additionalProperties:!1}),RI=J.Object({id:J.String({minLength:1}),kind:OI,occurred_at:Y,title:J.String({minLength:1}),summary:J.Optional(J.String()),task_id:J.Optional(oF),task_title:J.Optional(J.String({minLength:1})),activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF),run_result_id:J.Optional(sF),message_id:J.Optional(iF),status:J.Optional(kI),update_state:J.Optional(AI),token_usage:J.Optional(wI),usage_sources:J.Optional(J.Array(TI)),usage_models:J.Optional(J.Array(EI)),trace_card:J.Optional(LI)},{additionalProperties:!1});J.Object({generated_at:Y,usage_overview:DI,items:J.Array(RI)},{additionalProperties:!1});var zI=10*1024*1024,BI=50*1024*1024,VI=BI,HI=J.Union([J.Literal(`reference_file`),J.Literal(`skill_zip`)]),UI=J.String({pattern:`^sha256:[a-f0-9]{64}$`});function WI(e){return{upload_id:yF,file_name:X,size_bytes:J.Integer({minimum:1,maximum:e}),sha256:UI,media_type:J.Optional(X)}}function GI(e){return e===`skill_zip`?BI:zI}var KI=WI(VI),qI=WI(zI),JI=WI(BI),YI={relay_project_ref:gF,file_name:X,sha256:UI,media_type:J.Optional(X)},XI=J.Object({...YI,purpose:J.Literal(`reference_file`),size_bytes:J.Integer({minimum:1,maximum:zI})},{additionalProperties:!1}),ZI=J.Object({...YI,purpose:J.Literal(`skill_zip`),size_bytes:J.Integer({minimum:1,maximum:BI})},{additionalProperties:!1});J.Object(KI,{additionalProperties:!1});var QI=J.Union([XI,ZI]),$I=J.Object({upload_id:yF,relay_project_ref:gF,purpose:HI,file_name:X,size_bytes:J.Integer({minimum:1,maximum:VI}),sha256:UI,media_type:J.Optional(X),expires_at:Y},{additionalProperties:!1}),eL=J.Object({method:J.Literal(`PUT`),url:J.String({minLength:1}),headers:J.Optional(J.Record(J.String({minLength:1}),J.String()))},{additionalProperties:!1}),tL=J.Union([J.Object({kind:J.Literal(`started`)},{additionalProperties:!1})]),nL=J.Object({upload:$I,put:eL},{additionalProperties:!1});EF(QI),OF(tL,nL);var rL=J.Union([J.Literal(`chat`),J.Literal(`worklist`),J.Literal(`references`),J.Literal(`skills`)]),iL=J.Object({scope:rL,latest_event_cursor:J.Integer({minimum:0}),read_event_cursor:J.Integer({minimum:0}),has_unread:J.Boolean(),updated_at:J.Optional(Y)},{additionalProperties:!1}),aL=J.Object({generated_at:Y,scopes:J.Object({chat:iL,worklist:iL,references:iL,skills:iL},{additionalProperties:!1})},{additionalProperties:!1}),oL=J.Object({scope:rL,up_to_event_cursor:J.Optional(J.Integer({minimum:0}))},{additionalProperties:!1}),sL=J.Union([J.Object({kind:J.Literal(`marked`)},{additionalProperties:!1}),TF]),cL=J.Object({read_state:aL},{additionalProperties:!1});EF(oL),OF(sL,cL);var lL=J.String({pattern:`^managed_ref_[a-f0-9]{32}$`,maxLength:44});J.Object({document_url:J.String({minLength:1,maxLength:2048})},{additionalProperties:!1}),J.Object({expected_updated_at:Y},{additionalProperties:!1});var uL=J.Object({source_ref:lL,reference_path:J.String({pattern:`^docs/reference/feishu-docx-[a-f0-9]{12}\\.txt$`}),status:J.Union([J.Literal(`syncing`),J.Literal(`current`),J.Literal(`waiting_for_host`),J.Literal(`retrying`),J.Literal(`authorization_required`),J.Literal(`permission_denied`),J.Literal(`failed`)]),revision:J.Union([J.String({maxLength:512}),J.Null()]),last_checked_at:J.Union([Y,J.Null()]),last_synced_at:J.Union([Y,J.Null()]),next_attempt_at:J.Union([Y,J.Null()]),updated_at:Y,reason_code:J.Union([J.String({pattern:`^[a-z][a-z0-9_]{0,95}$`}),J.Null()])},{additionalProperties:!1});J.Object({can_manage:J.Boolean(),items:J.Array(uL,{maxItems:100})},{additionalProperties:!1});function dL(e){if(e.length>2048||Array.from(e).some(e=>e.charCodeAt(0)<32||e.charCodeAt(0)===127))return null;let t=/^https:\/\/(?:[a-z0-9-]+\.)?(?:feishu\.cn|larksuite\.com)(?::443)?\/(docx|wiki)\/([a-z0-9]{1,999})\/?(?:[?#][^\s]*)?$/iu.exec(e.trim());if(t===null)return null;let n=t[1]?.toLowerCase(),r=t[2];return r===void 0||n!==`docx`&&n!==`wiki`||n===`docx`&&r.length!==27?null:{kind:n,token:r}}function fL(e){if(e.length>2048||[...e].some(e=>e.charCodeAt(0)<32||e.charCodeAt(0)===127))return null;let t=e.trim();if(/^[A-Za-z0-9]{27}$/u.test(t))return{kind:`docx`,token:t};let n=dL(t);if(n)return n;let r=/^https:\/\/(?:[a-z0-9-]+\.)?(?:feishu\.cn|larksuite\.com)(?::443)?\/file\/([a-z0-9]{1,256})\/?(?:[?#][^\s]*)?$/iu.exec(t);return r?.[1]?{kind:`file`,token:r[1]}:null}var pL=J.String({pattern:`^external_ref_[a-f0-9]{32}$`}),mL=J.String({pattern:`^ref_submission_[a-f0-9]{32}$`}),hL=J.Object({submission_ref:mL,kind:J.Union([J.Literal(`docx`),J.Literal(`wiki`),J.Literal(`file`)]),created_at:Y,expires_at:Y},{additionalProperties:!1}),gL=J.Object({source_ref:pL,kind:J.Union([J.Literal(`feishu_docx`),J.Literal(`feishu_drive_file`),J.Literal(`feishu_file`),J.Literal(`feishu_image`)]),name:J.String({minLength:1,maxLength:240}),created_at:Y},{additionalProperties:!1});J.Object({can_register:J.Boolean(),items:J.Array(gL,{maxItems:500}),pending:J.Optional(J.Array(hL,{maxItems:20}))},{additionalProperties:!1}),J.Union([J.Object({document_url:J.String({minLength:1,maxLength:2048})},{additionalProperties:!1}),J.Object({submission_ref:mL},{additionalProperties:!1})]);var _L=J.Object({attempt:J.Integer({minimum:1}),kind:J.Union([J.Literal(`initial`),J.Literal(`continuation`),J.Literal(`retry`)]),parent_activity_ref:J.Optional(lF),root_activity_ref:J.Optional(lF)},{additionalProperties:!1}),vL=J.Union([J.Object({kind:J.Literal(`task`),task_id:oF},{additionalProperties:!1}),J.Object({kind:J.Literal(`workflow`),workflow_ref:dF},{additionalProperties:!1}),J.Object({kind:J.Literal(`project`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`clarification_round`),clarification_round_ref:pF},{additionalProperties:!1})]),yL=J.Union([J.Literal(`todo`),J.Literal(`running`),J.Literal(`pending`),J.Literal(`done`),J.Literal(`failed`)]),bL=J.Object({task_id:oF,title:X,summary:J.String(),status:yL,module_id:aF,module_name:X},{additionalProperties:!1}),xL=J.Object({workflow_ref:dF,activity_ref:lF,topic:J.String(),background_summary:J.String(),current_consensus:J.Array(J.String()),open_questions:J.Array(J.String()),task_changes:J.Array(J.String()),submitted_at:Y,compiled_tasks:J.Optional(J.Array(bL))},{additionalProperties:!1}),SL=J.Object({id:J.Literal(`current`),state:J.Union([J.Literal(`empty`),J.Literal(`ready`),J.Literal(`submitted`)]),topic:J.String(),background_summary:J.String(),current_consensus:J.Array(J.String()),open_questions:J.Array(J.String()),task_changes:J.Array(J.String()),updated_by_activity_ref:J.Optional(lF),updated_at:J.Optional(Y),submitted_by_activity_ref:J.Optional(lF),submitted_by_workflow_ref:J.Optional(dF),submitted_at:J.Optional(Y),receipts:J.Array(xL)},{additionalProperties:!1}),CL=J.Object({id:aF,name:X,summary:J.Optional(J.String()),order:J.Integer(),archived:J.Boolean(),created_at:Y,updated_at:J.Optional(Y)},{additionalProperties:!1}),wL=J.Object({id:oF,module_id:aF,title:X,summary:J.String(),status:yL,order:J.Integer(),current_activity_ref:J.Optional(lF),active_clarification_thread_ref:J.Optional(fF),latest_run_result_id:J.Optional(sF),created_from_workflow_ref:dF,created_at:Y,updated_at:Y},{additionalProperties:!1});J.Object({modules:J.Array(J.Object({module:CL,tasks:J.Array(wL)},{additionalProperties:!1})),updated_at:J.Optional(Y)},{additionalProperties:!1});var TL=J.Object({goal:J.String(),scope:J.Array(J.String())},{additionalProperties:!1}),EL=J.Union([J.Literal(`no_validation_command_found`),J.Literal(`project_has_no_test_setup`),J.Literal(`validation_not_applicable`),J.Literal(`command_prerequisite_missing`),J.Literal(`command_requires_external_service`),J.Literal(`command_requires_secret`),J.Literal(`command_requires_interactive_input`),J.Literal(`command_too_expensive_for_mvp`),J.Literal(`unsafe_command_blocked`),J.Literal(`known_failing_baseline`)]),DL=J.Object({status:J.Union([J.Literal(`succeeded`),J.Literal(`failed`),J.Literal(`unknown`)]),target:J.Optional(X),redacted_summary:J.String(),started_at:J.Optional(Y),finished_at:J.Optional(Y)},{additionalProperties:!1}),OL=J.Object({latest_run_result_id:J.Optional(sF),result_kind:J.Optional(J.Union([J.Literal(`needs_human`),J.Literal(`finished`),J.Literal(`failed`)])),run_lineage:J.Optional(_L),clarification_thread_ref:J.Optional(fF),outcome:J.Optional(J.Union([J.Literal(`completed`),J.Literal(`failed`)])),summary:J.Optional(J.String()),checks:J.Optional(J.Union([J.Literal(`passed`),J.Literal(`failed`),J.Literal(`skipped`)])),docs:J.Optional(J.Union([J.Literal(`updated`),J.Literal(`checked_no_change`),J.Literal(`not_checked`),J.Literal(`sync_deferred`)])),skip_reason_code:J.Optional(EL),skip_reason_summary:J.Optional(J.String()),external_side_effects:J.Optional(J.Array(DL)),changed_paths:J.Optional(J.Array(J.String())),user_note_candidate:J.Optional(J.String()),promotion:J.Optional(J.Object({status:J.Union([J.Literal(`promoted`),J.Literal(`not_promoted`),J.Literal(`not_attempted`)]),summary:J.Optional(J.String()),reason_code:J.Optional(X),commit_oid:J.Optional(X)},{additionalProperties:!1})),error_code:J.Optional(X),retryable:J.Optional(J.Boolean()),retry_action:J.Optional(J.Union([J.Literal(`retryable`),J.Literal(`retried`)])),updated_at:J.Optional(Y)},{additionalProperties:!1}),kL=J.Object({task:wL,detail:J.Object({task_id:oF,contract:TL,result:OL,frozen_contract_since_activity_ref:J.Optional(lF),updated_at:Y},{additionalProperties:!1})},{additionalProperties:!1});SF(J.Union([J.Object({id:sF,activity_ref:lF,task_id:oF,run_lineage:_L,result_kind:J.Literal(`needs_human`),summary:J.String(),clarification_thread_ref:fF,created_at:Y},{additionalProperties:!1}),J.Object({id:sF,activity_ref:lF,task_id:oF,run_lineage:_L,result_kind:J.Literal(`finished`),outcome:J.Union([J.Literal(`completed`),J.Literal(`failed`)]),summary:J.String(),user_note_candidate:J.Optional(J.String()),checks:J.Union([J.Literal(`passed`),J.Literal(`failed`),J.Literal(`skipped`)]),docs:J.Union([J.Literal(`updated`),J.Literal(`checked_no_change`),J.Literal(`not_checked`),J.Literal(`sync_deferred`)]),skip_reason_code:J.Optional(EL),skip_reason_summary:J.Optional(J.String()),external_side_effects:J.Optional(J.Array(DL)),retry_action:J.Optional(J.Union([J.Literal(`retryable`),J.Literal(`retried`)])),created_at:Y},{additionalProperties:!1}),J.Object({id:sF,activity_ref:lF,task_id:oF,run_lineage:_L,result_kind:J.Literal(`failed`),summary:J.String(),error_code:X,retryable:J.Boolean(),retry_action:J.Optional(J.Union([J.Literal(`retryable`),J.Literal(`retried`)])),created_at:Y},{additionalProperties:!1})]));var AL=J.Object({recovery_summary_id:cF,summary:J.String({minLength:1}),affected_activities:J.Array(lF),affected_activity_count:J.Integer({minimum:0}),created_at:Y},{additionalProperties:!1});SF(AL),J.Object({recovery_summary:AL},{additionalProperties:!1});var jL=J.Union(Kr.map(e=>J.Literal(e))),ML=J.Union([J.Object({kind:J.Literal(`initials`),initials:J.String({minLength:1}),color:jL},{additionalProperties:!1}),J.Object({kind:J.Literal(`image`),image_url:J.String({minLength:1}),initials:J.String({minLength:1}),color:jL},{additionalProperties:!1})]),NL=J.Union([J.Object({kind:J.Literal(`main_chat`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`clarification_round`),clarification_round_ref:pF},{additionalProperties:!1})]),PL=J.Object({kind:J.Union([J.Literal(`human`),J.Literal(`system`),J.Literal(`agent`)]),ref:J.Optional(X),display_name:J.Optional(X),avatar:J.Optional(ML)},{additionalProperties:!1}),FL=J.Union([J.Literal(`user_text`),J.Literal(`agent_text`),J.Literal(`system_notice`),J.Literal(`clarification_request`),J.Literal(`clarification_card`)]),IL=J.Union([J.Literal(`file`),J.Literal(`image`)]),LL=J.Object({path:J.String({minLength:1}),name:X,source:J.Union([J.Literal(`human_upload`),J.Literal(`tutti_output`)]),category:IL,blob_oid:J.Optional(X),media_type:J.Optional(X),size_bytes:J.Integer({minimum:0}),text_read:J.Object({can_read:J.Boolean(),blocked_reason:J.Optional(J.Union([J.Literal(`binary`),J.Literal(`too_large`),J.Literal(`unsupported_encoding`),J.Literal(`restricted_path`),J.Literal(`secret_like`),J.Literal(`unknown`)]))},{additionalProperties:!1})},{additionalProperties:!1}),RL=J.Object({task_id:oF,title:X,status:J.Union([J.Literal(`done`),J.Literal(`failed`)]),summary:J.String(),module_name:J.Optional(X),latest_run_result_id:J.Optional(sF)},{additionalProperties:!1}),zL=J.Object({path:J.String({minLength:1}),name:X,group:J.Optional(X),size_bytes:J.Integer({minimum:0}),media_type:J.Optional(X)},{additionalProperties:!1}),BL=J.Object({kind:J.Literal(`worklist_terminal`),status:J.Union([J.Literal(`completed`),J.Literal(`failed`)]),reason:J.Union([J.Literal(`all_tasks_done`),J.Literal(`run_failed`)]),title:X,feedback_key:X,counters:J.Object({completed:J.Integer({minimum:0}),failed:J.Integer({minimum:0}),remaining:J.Integer({minimum:0})},{additionalProperties:!1}),items:J.Array(RL),final_note:J.Optional(J.String()),generated_files:J.Optional(J.Array(zL)),primary_task_id:J.Optional(oF)},{additionalProperties:!1}),VL=J.Object({kind:J.Literal(`task_result`),status:J.Union([J.Literal(`completed`),J.Literal(`failed`)]),title:X,task_id:oF,task_title:X,result_key:X,summary:J.String(),module_name:J.Optional(X),latest_run_result_id:J.Optional(sF),activity_ref:J.Optional(lF),final_note:J.Optional(J.String()),generated_files:J.Optional(J.Array(zL)),error_code:J.Optional(X),retry_action:J.Optional(J.Union([J.Literal(`retryable`),J.Literal(`retried`)]))},{additionalProperties:!1}),HL=J.Object({kind:J.Literal(`worklist_compile`),workflow_ref:dF,title:X,task_count:J.Integer({minimum:0}),tasks:J.Array(bL)},{additionalProperties:!1}),UL=J.Object({kind:J.Literal(`artifact_preview`),title:X,status:J.Union([J.Literal(`available`),J.Literal(`updated`)]),task_id:J.Optional(oF),run_result_id:J.Optional(sF)},{additionalProperties:!1}),WL=J.Object({development_operator:J.Optional(J.Literal(!0)),external_reference_reads:J.Optional(J.Array(pL,{minItems:1,maxItems:16,uniqueItems:!0})),external_references:J.Optional(J.Array(gL,{minItems:1,maxItems:16})),task_id:J.Optional(oF),activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF),clarification_thread_ref:J.Optional(fF),clarification_round_ref:J.Optional(pF),scratchpad_source:J.Optional(J.Union([J.Literal(`include`),J.Literal(`exclude`)])),reference_file:J.Optional(LL),worklist_compile:J.Optional(HL),worklist_feedback:J.Optional(BL),task_result:J.Optional(VL),artifact_preview:J.Optional(UL),artifact_feedback:J.Optional($F)},{additionalProperties:!1}),GL=J.Object({id:iF,scope:NL,author:PL,message_kind:FL,body:J.String(),refs:J.Optional(WL),clarification_card:J.Optional(J.Object({thread_id:fF,round_id:pF,title:J.Optional(X),summary:X,status:J.Union([J.Literal(`writable`),J.Literal(`sealed`)]),is_current_round:J.Boolean()},{additionalProperties:!1})),created_at:Y},{additionalProperties:!1});CF(GL);var KL=J.Union([J.Object({body:J.String({minLength:1,maxLength:8e3})},{additionalProperties:!1}),J.Object({artifact_feedback:QF},{additionalProperties:!1})]),qL=J.Object({kind:J.Literal(`created`),message_id:J.Optional(iF)},{additionalProperties:!1}),JL=J.Object({kind:J.Literal(`artifact_changed`)},{additionalProperties:!1}),YL=J.Object({kind:J.Literal(`artifact_unavailable`)},{additionalProperties:!1}),XL=J.Union([qL,JL,YL,TF]),ZL=J.Object({message:GL},{additionalProperties:!1});J.Object({limit:J.Optional(J.Integer({minimum:1,maximum:200,default:50})),anchor:J.Optional(J.Union([J.Literal(`latest`),J.Literal(`start`)])),before:J.Optional(nF),after:J.Optional(nF),around:J.Optional(iF)},{additionalProperties:!1}),EF(KL),OF(XL,ZL),J.Object({message:GL},{additionalProperties:!1});var QL=J.Union([J.Literal(`command_execution`),J.Literal(`file_change`),J.Literal(`permissions`),J.Literal(`legacy_exec_command`),J.Literal(`legacy_apply_patch`)]),$L=J.Union([J.Literal(`allow_once`),J.Literal(`allow_session`),J.Literal(`deny`),J.Literal(`cancel`)]),eR=J.Union([J.Literal(`primary`),J.Literal(`neutral`),J.Literal(`danger`)]),tR=J.Object({decision_id:X,kind:$L,label:X,tone:eR},{additionalProperties:!1}),nR=J.Object({text:X,cwd_label:J.Optional(X),actions:J.Optional(J.Array(J.Object({label:X,detail:J.Optional(X)},{additionalProperties:!1}))),network:J.Optional(J.Object({host:X,protocol:X},{additionalProperties:!1}))},{additionalProperties:!1}),rR=J.Object({grant_root_label:J.Optional(X),paths:J.Optional(J.Array(X))},{additionalProperties:!1}),iR=J.Object({network:J.Optional(J.Object({enabled:J.Boolean()},{additionalProperties:!1})),filesystem:J.Optional(J.Object({read:J.Optional(J.Array(X)),write:J.Optional(J.Array(X))},{additionalProperties:!1}))},{additionalProperties:!1}),aR=J.Object({approval_id:mF,request_kind:QL,title:X,summary:X,reason:J.Optional(X),requested_at:Y,expires_at:J.Optional(Y),task_id:J.Optional(oF),activity_ref:J.Optional(lF),command:J.Optional(nR),file_change:J.Optional(rR),permissions:J.Optional(iR),decisions:J.Array(tR,{minItems:1})},{additionalProperties:!1}),oR=J.Union([J.Literal(`accepted`),J.Literal(`declined`),J.Literal(`cancelled`),J.Literal(`expired`)]),sR=J.Object({decision_id:X,label:X,outcome:oR,decided_at:Y,decided_by:J.Optional(J.Object({account_ref:X,display_name:X},{additionalProperties:!1}))},{additionalProperties:!1}),cR=J.Union([J.Object({state:J.Literal(`none`)},{additionalProperties:!1}),J.Object({state:J.Literal(`pending`),request:aR},{additionalProperties:!1}),J.Object({state:J.Literal(`resolved`),request:aR,resolution:sR},{additionalProperties:!1})]),lR=J.Object({decision_id:X},{additionalProperties:!1}),uR=J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`stale_approval`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`decision_unavailable`)},{additionalProperties:!1}),TF]),dR=J.Object({approval:J.Optional(cR)},{additionalProperties:!1});EF(lR),OF(uR,dR);var fR=J.Union([J.Object({ref_kind:J.Literal(`project_doc`),path:X},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`directory_readme`),path:X},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`task_detail`),task_id:oF},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`worklist`),module_id:J.Optional(aF),task_id:J.Optional(oF)},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`scratchpad`),id:J.Literal(`current`)},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`clarification_round`),clarification_round_ref:pF},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`chat_messages`),message_refs:J.Array(iF)},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`repo_paths`),paths:J.Array(X)},{additionalProperties:!1}),J.Object({ref_kind:J.Literal(`recovery_summary`),recovery_summary_id:cF},{additionalProperties:!1})]),pR=J.Object({kind:J.Literal(`freeform`),purpose:J.Union([J.Literal(`clarify_requirement`),J.Literal(`confirm_risk`)]),prompt:J.Object({title:J.Optional(X),summary:X,request:X},{additionalProperties:!1}),subject:J.Optional(J.Object({kind:J.Union([J.Literal(`task`),J.Literal(`deployment_target`),J.Literal(`project_context`)]),ref:J.Optional(X),summary:X},{additionalProperties:!1})),expires_when:J.Optional(J.Union([J.Literal(`current_run_only`),J.Literal(`until_task_contract_changes`)]))},{additionalProperties:!1});J.Object({summary:X,request:X,interaction:J.Optional(pR)},{additionalProperties:!1});var mR=J.Object({summary:X,request:X,interaction:J.Optional(pR),title:J.Optional(X),related_refs:J.Optional(J.Array(fR))},{additionalProperties:!1}),hR=J.Union([J.Object({kind:J.Literal(`task_compile`),workflow_ref:dF},{additionalProperties:!1}),J.Object({kind:J.Literal(`task`),task_id:oF},{additionalProperties:!1})]),gR=J.Object({id:fF,owner:hR,status:J.Union([J.Literal(`active`),J.Literal(`closed`)]),current_round_id:J.Optional(pF),created_from_activity_ref:J.Optional(lF),closed_reason:J.Optional(J.Union([J.Literal(`resolved`),J.Literal(`contract_changed`),J.Literal(`cancelled`)])),created_at:Y,updated_at:Y},{additionalProperties:!1}),_R=J.Union([J.Object({kind:J.Literal(`next_round`),clarification_round_ref:pF},{additionalProperties:!1}),J.Object({kind:J.Literal(`run`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`chain_closed`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`proposal_applied`),workflow_ref:dF},{additionalProperties:!1})]),vR=J.Object({id:pF,thread_id:fF,round_index:J.Integer({minimum:1}),status:J.Union([J.Literal(`writable`),J.Literal(`sealed`)]),request_payload:mR,card_message_id:iF,opening_message_id:iF,submitted_at:J.Optional(Y),submitted_message_refs:J.Optional(J.Array(iF)),successor_status:J.Union([J.Literal(`not_materialized`),J.Literal(`materialized`)]),successor_ref:J.Optional(_R),capabilities:J.Object({send_message:J.Boolean(),submit:J.Boolean()},{additionalProperties:!1}),created_at:Y,updated_at:Y},{additionalProperties:!1});J.Union([J.Object({state:J.Literal(`none`)},{additionalProperties:!1}),J.Object({state:J.Literal(`active`),thread:gR,round:vR},{additionalProperties:!1})]);var yR=J.Object({id:pF,thread_id:fF,round_index:J.Integer({minimum:1}),status:J.Union([J.Literal(`writable`),J.Literal(`sealed`)]),title:J.Optional(X),summary:X,submitted_at:J.Optional(Y),successor_status:J.Union([J.Literal(`not_materialized`),J.Literal(`materialized`)]),created_at:Y,updated_at:Y},{additionalProperties:!1});J.Object({thread:gR,rounds:J.Array(yR)},{additionalProperties:!1}),J.Object({thread:gR,round:vR},{additionalProperties:!1}),J.Object({limit:J.Optional(J.Integer({minimum:1,maximum:200,default:50})),anchor:J.Optional(J.Union([J.Literal(`start`),J.Literal(`latest`)])),before:J.Optional(nF),after:J.Optional(nF)},{additionalProperties:!1});var bR=J.Object({body:J.String({minLength:1,maxLength:8e3})},{additionalProperties:!1}),xR=J.Union([J.Object({kind:J.Literal(`created`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`stale_round`),current_round_id:J.Optional(pF)},{additionalProperties:!1}),J.Object({kind:J.Literal(`chain_closed`)},{additionalProperties:!1}),TF]),SR=J.Object({message:J.Optional(GL)},{additionalProperties:!1});EF(bR),OF(xR,SR);var CR=J.Object({},{additionalProperties:!1}),wR=J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_submitted`),successor_status:J.Union([J.Literal(`not_materialized`),J.Literal(`materialized`)]),successor_ref:J.Optional(_R)},{additionalProperties:!1}),J.Object({kind:J.Literal(`stale_round`),current_round_id:J.Optional(pF)},{additionalProperties:!1}),J.Object({kind:J.Literal(`chain_closed`)},{additionalProperties:!1}),TF]),TR=J.Object({round:J.Optional(vR),materialization:J.Optional(J.Object({status:J.Union([J.Literal(`queued`),J.Literal(`already_materialized`)]),successor_ref:J.Optional(_R)},{additionalProperties:!1}))},{additionalProperties:!1});EF(CR),OF(wR,TR),J.Object({reason:J.Union([J.Literal(`round_opened`),J.Literal(`round_message_created`),J.Literal(`round_submitted`),J.Literal(`successor_materialized`),J.Literal(`chain_closed`),J.Literal(`recovered`)]),thread_id:fF,round_id:J.Optional(pF),successor_ref:J.Optional(_R)},{additionalProperties:!1});var ER=J.String(),DR=J.Object({source:J.Literal(`mainline`),branch:J.Literal(`tutti/mainline`),head:J.Optional(J.Object({oid:X,short_oid:X},{additionalProperties:!1})),mainline_clean:J.Boolean(),generated_at:Y},{additionalProperties:!1}),OR=J.Union([J.Literal(`product`),J.Literal(`tech`),J.Literal(`structure`),J.Literal(`architecture_principles`)]),kR=J.Union([J.Literal(`restricted_path`),J.Literal(`secret_like`),J.Literal(`binary`),J.Literal(`unsupported_encoding`),J.Literal(`too_large`)]),AR=J.Object({doc_key:OR,path:ER,status:J.Union([J.Literal(`available`),J.Literal(`missing`),J.Literal(`unreadable`)]),unreadable_reason:J.Optional(kR),size_bytes:J.Optional(J.Integer({minimum:0})),blob_oid:J.Optional(X),last_commit:J.Optional(J.Object({oid:X,short_oid:X,committed_at:Y,title:J.Optional(X)},{additionalProperties:!1}))},{additionalProperties:!1}),jR=J.Union([J.Literal(`directory`),J.Literal(`symlink`),J.Literal(`submodule`),J.Literal(`restricted_path`),J.Literal(`secret_like`),J.Literal(`binary`),J.Literal(`too_large`),J.Literal(`unknown`)]),MR=J.Object({path:ER,name:J.String(),kind:J.Union([J.Literal(`directory`),J.Literal(`file`),J.Literal(`symlink`),J.Literal(`submodule`)]),depth:J.Integer({minimum:0}),parent_path:J.Optional(ER),size_bytes:J.Optional(J.Integer({minimum:0})),blob_oid:J.Optional(X),extension:J.Optional(X),language_hint:J.Optional(X),has_children:J.Optional(J.Boolean()),project_doc_key:J.Optional(OR),text_read:J.Object({can_read:J.Boolean(),blocked_reason:J.Optional(jR)},{additionalProperties:!1})},{additionalProperties:!1}),NR=J.Union([J.Object({kind:J.Literal(`text`),encoding:J.Literal(`utf-8`),text:J.String(),truncated:J.Boolean(),bytes_returned:J.Integer({minimum:0}),total_bytes:J.Integer({minimum:0}),line_count:J.Optional(J.Integer({minimum:0}))},{additionalProperties:!1}),J.Object({kind:J.Literal(`omitted`),reason:J.Union([J.Literal(`binary`),J.Literal(`unsupported_encoding`),J.Literal(`too_large`)]),total_bytes:J.Integer({minimum:0})},{additionalProperties:!1})]),PR=J.Object({path:ER,name:X,kind:J.Literal(`file`),size_bytes:J.Integer({minimum:0}),blob_oid:J.Optional(X),extension:J.Optional(X),language_hint:J.Optional(X),media_type:J.Optional(X)},{additionalProperties:!1});J.Object({snapshot:DR,docs:J.Array(AR)},{additionalProperties:!1}),J.Object({doc_key:OR},{additionalProperties:!1}),J.Object({max_bytes:J.Optional(J.Integer({minimum:1,maximum:1048576}))},{additionalProperties:!1}),J.Object({snapshot:DR,doc:AR,content:NR},{additionalProperties:!1}),J.Object({path:J.Optional(ER),depth:J.Optional(J.Integer({minimum:1,maximum:3})),limit:J.Optional(J.Integer({minimum:1,maximum:1e3})),cursor:J.Optional(nF)},{additionalProperties:!1});var FR=J.Object({next_cursor:J.Optional(nF),has_more:J.Boolean(),limit:J.Integer({minimum:1,maximum:1e3})},{additionalProperties:!1});J.Object({snapshot:DR,root:MR,items:J.Array(MR),page:FR},{additionalProperties:!1}),J.Object({path:ER,max_bytes:J.Optional(J.Integer({minimum:1,maximum:1048576}))},{additionalProperties:!1});var IR=J.Union([J.Literal(`thumbnail`),J.Literal(`preview`),J.Literal(`original`)]);J.Object({path:ER,variant:IR,v:X},{additionalProperties:!1}),J.Object({snapshot:DR,file:PR,content:NR},{additionalProperties:!1});var LR=J.Object({path:J.Literal(`docs/reference`),status:J.Union([J.Literal(`available`),J.Literal(`missing`)]),index_path:J.Literal(`docs/reference/README.md`),files_path:J.Literal(`docs/reference/files`),images_path:J.Literal(`docs/reference/images`),index_status:J.Union([J.Literal(`available`),J.Literal(`missing`),J.Literal(`unreadable`)]),index_unreadable_reason:J.Optional(kR)},{additionalProperties:!1}),RR=J.Union([J.Literal(`binary`),J.Literal(`too_large`),J.Literal(`unsupported_encoding`),J.Literal(`restricted_path`),J.Literal(`secret_like`),J.Literal(`unknown`)]),zR=J.Object({status:J.Union([J.Literal(`available`),J.Literal(`missing`),J.Literal(`stale`),J.Literal(`unavailable`)]),text:J.Optional(J.String()),generated_at:J.Optional(Y),source_blob_oid:J.Optional(X),unavailable_reason:J.Optional(J.String()),read_paths:J.Optional(J.Array(ER))},{additionalProperties:!1}),BR=J.Object({path:ER,name:X,category:IL,size_bytes:J.Integer({minimum:0}),media_type:J.Optional(X),extension:J.Optional(X),language_hint:J.Optional(X),blob_oid:J.Optional(X),text_read:J.Object({can_read:J.Boolean(),blocked_reason:J.Optional(RR)},{additionalProperties:!1}),summary:J.Optional(zR)},{additionalProperties:!1});J.Object({include_index:J.Optional(J.Boolean()),limit:J.Optional(J.Integer({minimum:1,maximum:1e3})),cursor:J.Optional(nF)},{additionalProperties:!1}),J.Object({snapshot:DR,directory:LR,items:J.Array(BR),page:FR},{additionalProperties:!1});var VR=J.Object({...qI,note:J.Optional(J.String())},{additionalProperties:!1}),HR=J.Union([J.Object({kind:J.Literal(`created`)},{additionalProperties:!1}),TF]),UR=J.Object({file:BR,message:GL,index_path:J.Literal(`docs/reference/README.md`)},{additionalProperties:!1});EF(VR),OF(HR,UR);var WR=J.Object({paths:J.Optional(J.Array(ER))},{additionalProperties:!1}),GR=J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`no_targets`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:J.Union([J.Literal(`provider_auth_invalid`),J.Literal(`provider_quota_or_billing_required`),J.Literal(`provider_rate_limited`),J.Literal(`provider_model_unavailable`),J.Literal(`provider_network_error`)]),retryable:J.Boolean()},{additionalProperties:!1}),TF]),KR=J.Object({activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF),target_count:J.Optional(J.Integer({minimum:0}))},{additionalProperties:!1});EF(WR),OF(GR,KR);var qR=J.String({minLength:1,maxLength:96,pattern:`^[a-z0-9_-]+$`}),JR=J.Object({name:qR,description:X,short_description:J.Optional(X),enabled:J.Boolean(),source:J.Literal(`user`),updated_at:J.Optional(Y)},{additionalProperties:!1}),YR=J.Object({name:qR,description:X,short_description:J.Optional(X),enabled:J.Boolean(),source:J.Literal(`user`),updated_at:J.Optional(Y),skill_md:J.String({minLength:1})},{additionalProperties:!1});J.Object({items:J.Array(JR)},{additionalProperties:!1}),J.Object({skill_name:qR},{additionalProperties:!1}),J.Object({skill:YR},{additionalProperties:!1});var XR=J.Object(JI,{additionalProperties:!1}),ZR=J.Union([J.Object({kind:J.Literal(`created`),skill_name:qR},{additionalProperties:!1}),J.Object({kind:J.Literal(`replaced`),skill_name:qR},{additionalProperties:!1}),TF]),QR=J.Object({skill:YR},{additionalProperties:!1});EF(XR),OF(ZR,QR);var $R=J.Object({skill_name:qR},{additionalProperties:!1}),ez=J.Union([J.Object({kind:J.Literal(`deleted`),skill_name:qR},{additionalProperties:!1}),J.Object({kind:J.Literal(`not_found`),skill_name:qR},{additionalProperties:!1}),TF]);EF($R),DF(ez);var tz=J.Union([J.Literal(`idle`),J.Literal(`running`),J.Literal(`pending`),J.Literal(`failed`)]),nz=J.Union([J.Literal(`foreground`),J.Literal(`scratchpad_background`)]),rz=J.Object({activity_ref:lF,activity_kind:J.Union([J.Literal(`run`),J.Literal(`procedure`)]),workflow_ref:J.Optional(dF),workflow_kind:J.Optional(xF),lane:J.Optional(nz),started_at:J.Optional(Y)},{additionalProperties:!1}),iz=J.Union([J.Literal(`analyzing_task`),J.Literal(`searching_codebase`),J.Literal(`reading_files`),J.Literal(`reading_context`),J.Literal(`planning`),J.Literal(`editing_files`),J.Literal(`running_checks`),J.Literal(`running_command`),J.Literal(`using_tool`),J.Literal(`waiting_for_approval`),J.Literal(`preparing_result`),J.Literal(`finalizing`)]),az=J.Object({input_tokens:J.Optional(J.Integer({minimum:0})),cached_input_tokens:J.Optional(J.Integer({minimum:0})),output_tokens:J.Optional(J.Integer({minimum:0})),reasoning_output_tokens:J.Optional(J.Integer({minimum:0})),total_tokens:J.Integer({minimum:0})},{additionalProperties:!1}),oz=J.Object({activity_ref:lF,stage_id:J.Optional(J.String()),started_at:J.Optional(Y),updated_at:J.Optional(Y),token_usage:J.Optional(az),current_action:J.Optional(iz),current_action_detail:J.Optional(J.String({minLength:1,maxLength:160})),current_action_started_at:J.Optional(Y)},{additionalProperties:!1}),sz=J.Object({status:tz,summary:J.String(),active_task:J.Optional(wL),active_activity:J.Optional(rz),active_activities:J.Optional(J.Array(rz)),runtime:J.Optional(oz),blocked_by:J.Optional(J.Union([J.Object({kind:J.Literal(`clarification`),thread_id:fF,round_id:pF},{additionalProperties:!1}),J.Object({kind:J.Literal(`approval`),approval_id:mF},{additionalProperties:!1})])),last_conclusion:J.Optional(J.Object({kind:J.Union([J.Literal(`completed`),J.Literal(`failed`),J.Literal(`needs_human`),J.Literal(`recovered`)]),summary:J.String(),task_id:J.Optional(oF),activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF),occurred_at:Y},{additionalProperties:!1})),updated_at:Y},{additionalProperties:!1}),cz=J.Object({activity_ref:lF,activity_kind:J.Union([J.Literal(`run`),J.Literal(`procedure`)]),status:J.Union([J.Literal(`running`),J.Literal(`needs_human`),J.Literal(`finished`),J.Literal(`failed`),J.Literal(`interrupted`)]),title:X,summary:J.String(),task_id:J.Optional(oF),workflow_ref:J.Optional(dF),workflow_kind:J.Optional(xF),lane:J.Optional(nz),run_lineage:J.Optional(_L),started_at:J.Optional(Y),ended_at:J.Optional(Y),latest_event_ref:J.Optional(uF),result_anchor:J.Optional(vL)},{additionalProperties:!1}),lz=J.Object({event_ref:uF,activity_ref:lF,event_kind:J.Union([J.Literal(`started`),J.Literal(`progress`),J.Literal(`needs_human`),J.Literal(`artifact_snapshot`),J.Literal(`finished`),J.Literal(`failed`)]),occurred_at:Y,summary:J.String(),payload:J.Optional(J.Object({progress:J.Optional(J.Object({message:J.String(),phase:J.Optional(J.String())},{additionalProperties:!1})),artifact:J.Optional(J.Object({artifact_kind:J.Union([J.Literal(`scratchpad_snapshot`),J.Literal(`task_compile_proposal`),J.Literal(`context_sync_findings`),J.Literal(`recovery_summary`),J.Literal(`run_changed_paths`)]),summary:J.String()},{additionalProperties:!1})),terminal:J.Optional(J.Object({result_kind:J.Union([J.Literal(`needs_human`),J.Literal(`finished`),J.Literal(`failed`)]),summary:J.String()},{additionalProperties:!1}))},{additionalProperties:!1}))},{additionalProperties:!1});J.Object({server_time:Y,current_event_cursor:X,replay:J.Object({requested_cursor:J.Optional(X),status:J.Union([J.Literal(`not_requested`),J.Literal(`replayed`),J.Literal(`missed`)]),replayed_event_count:J.Integer({minimum:0})},{additionalProperties:!1}),retry_after_ms:J.Integer({minimum:0}),replay_window:AF},{additionalProperties:!1}),J.Object({reason:J.Union([J.Literal(`replay_missed`),J.Literal(`bulk_state_change`),J.Literal(`workspace_recovered`),J.Literal(`viewer_changed`)]),message:J.Optional(J.String())},{additionalProperties:!1}),J.Object({execution_status:sz},{additionalProperties:!1}),J.Object({approval:cR},{additionalProperties:!1}),J.Object({activity:cz,event:lz},{additionalProperties:!1}),J.Object({reason:J.Union([J.Literal(`task_compile_applied`),J.Literal(`task_state_changed`),J.Literal(`task_result_recorded`),J.Literal(`workspace_recovered`)]),workflow_ref:J.Optional(dF),activity_ref:J.Optional(lF),changed_module_ids:J.Optional(J.Array(aF)),changed_task_ids:J.Optional(J.Array(oF))},{additionalProperties:!1}),J.Object({task:wL},{additionalProperties:!1}),J.Object({task_id:oF,task:J.Optional(wL),detail:J.Optional(kL),latest_run_result_id:J.Optional(sF)},{additionalProperties:!1}),J.Object({scratchpad:SL,activity_ref:J.Optional(lF)},{additionalProperties:!1}),J.Object({provider_config:SI},{additionalProperties:!1}),J.Object({recovery_summary_id:cF,summary:J.String(),affected_activities:J.Array(lF),replayed_round_ids:J.Optional(J.Array(pF))},{additionalProperties:!1}),J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:gI,retryable:J.Boolean()},{additionalProperties:!1}),J.Object({kind:J.Literal(`no_source_messages`)},{additionalProperties:!1}),TF]),J.Object({activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF),scratchpad:J.Optional(SL)},{additionalProperties:!1});var uz=J.Object({expected_scratchpad_updated_at:J.Optional(Y)},{additionalProperties:!1}),dz=J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`scratchpad_empty`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`stale_scratchpad`),current_scratchpad:SL},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:gI,retryable:J.Boolean()},{additionalProperties:!1}),TF]),fz=J.Object({activity_ref:J.Optional(lF),workflow_ref:J.Optional(dF)},{additionalProperties:!1});EF(uz),OF(dz,fz);var pz=J.Object({scope:J.Optional(J.Object({kind:J.Literal(`worklist`)},{additionalProperties:!1}))},{additionalProperties:!1}),mz=J.Union([J.Object({kind:J.Literal(`scheduled`),task_id:oF,activity_ref:lF,queued_task_ids:J.Array(oF)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF,activity_kind:J.Union([J.Literal(`run`),J.Literal(`procedure`)])},{additionalProperties:!1}),J.Object({kind:J.Literal(`blocked_by_clarification`),thread_id:fF,round_id:pF},{additionalProperties:!1}),J.Object({kind:J.Literal(`nothing_to_run`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`mainline_not_clean`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:gI,retryable:J.Boolean()},{additionalProperties:!1}),TF]);EF(pz),DF(mz);var hz=J.Object({expected_latest_run_result_id:sF},{additionalProperties:!1}),gz=J.Union([J.Object({kind:J.Literal(`accepted`),task_id:oF,activity_ref:lF,retried_run_result_id:sF},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`task_not_failed`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`latest_run_result_changed`),latest_run_result_id:J.Optional(sF)},{additionalProperties:!1}),J.Object({kind:J.Literal(`retry_already_started`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`retry_requires_resolution`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:gI,retryable:J.Boolean()},{additionalProperties:!1}),TF]);EF(hz),DF(gz);var _z=J.Object({display_name:J.String({minLength:1,maxLength:80})},{additionalProperties:!1}),vz=J.Union([J.Object({kind:J.Literal(`updated`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`unchanged`)},{additionalProperties:!1}),TF]),yz=J.Object({project:J.Object({display_name:J.String({minLength:1,maxLength:80})},{additionalProperties:!1})},{additionalProperties:!1});EF(_z),OF(vz,yz);var bz=J.Object({description:J.String({maxLength:160})},{additionalProperties:!1}),xz=J.Union([J.Object({kind:J.Literal(`updated`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`unchanged`)},{additionalProperties:!1}),TF]),Sz=J.Object({project:J.Object({description:J.String({maxLength:160})},{additionalProperties:!1})},{additionalProperties:!1});EF(bz),OF(xz,Sz);var Cz=J.Object({},{additionalProperties:!1}),wz=J.Union([J.Object({kind:J.Literal(`created`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_initialized`)},{additionalProperties:!1}),TF]),Tz=J.Object({activity_ref:lF,workflow_ref:dF},{additionalProperties:!1}),Ez=J.Object({docs:J.Array(AR),created_paths:J.Array(ER),commit_oid:J.Optional(X)},{additionalProperties:!1});EF(Cz),OF(wz,Ez);var Dz=J.Object({},{additionalProperties:!1}),Oz=J.Union([J.Object({kind:J.Literal(`accepted`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`already_running`),activity_ref:lF},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_not_configured`)},{additionalProperties:!1}),J.Object({kind:J.Literal(`provider_unavailable`),reason:gI,retryable:J.Boolean()},{additionalProperties:!1}),TF]),kz=Tz;EF(Dz),OF(Oz,kz);var Az=6,jz=`......`,Mz=80,Nz=160;function Pz(e){let t=document.createElement(`canvas`).getContext(`2d`);if(t===null)return null;let n=window.getComputedStyle(e);return t.font=[n.fontStyle,n.fontVariant,n.fontWeight,n.fontSize,n.fontFamily].join(` `),e=>t.measureText(e).width}function Fz(e,t,n){if(n(e)<=t)return e;let r=e.slice(-Az),i=Math.max(0,e.length-r.length),a=0,o=i;for(;a<o;){let i=Math.ceil((a+o)/2);n(`${e.slice(0,i)}${jz}${r}`)<=t?a=i:o=i-1}return`${e.slice(0,a)}${jz}${r}`}function Iz({value:e}){let t=(0,I.useRef)(null),[n,r]=(0,I.useState)(e);return(0,I.useEffect)(()=>{let n=t.current;if(n===null)return;let i=()=>{let t=Pz(n),i=n.getBoundingClientRect().width;if(t===null||i<=0){r(e);return}let a=Fz(e,i,t);r(e=>e===a?e:a)};i();let a=typeof ResizeObserver>`u`?null:new ResizeObserver(i);return a?.observe(n),window.addEventListener(`resize`,i),()=>{a?.disconnect(),window.removeEventListener(`resize`,i)}},[e]),(0,L.jsx)(`span`,{ref:t,className:`settings-masked-link`,title:e,"aria-label":e,children:n})}function Lz({value:e,onCopy:t}){return t===void 0?(0,L.jsx)(Iz,{value:e}):(0,L.jsx)(`button`,{className:`settings-value-button settings-link-copy-button`,type:`button`,"aria-label":`Copy invite link`,onClick:t,children:(0,L.jsx)(Iz,{value:e})})}function Rz({avatar:e,displayName:t}){return(0,L.jsxs)(`div`,{className:`settings-identity`,children:[(0,L.jsx)(XC,{avatar:e,label:t}),(0,L.jsx)(`strong`,{children:t})]})}function zz({members:e}){return(0,L.jsx)(`div`,{className:`settings-member-list`,children:e.map(e=>(0,I.createElement)(Rz,{...e,key:e.key}))})}function Bz({settings:e,onCopyJoinUrl:t}){return{label:`Invite link`,value:e.access.inviteLink===void 0?`Not available`:(0,L.jsx)(Lz,{value:e.access.inviteLink,onCopy:t}),...e.access.inviteLink===void 0?{}:{plain:!0}}}function Vz({settings:e,projectNameSaving:t,projectDescriptionSaving:n,providerModelOptions:r,providerModelEditable:i,providerModelDiscovering:a,providerModelSaving:o,onCopyJoinUrl:s,onUpdateProjectDisplayName:c,onUpdateProjectDescription:l,onDiscoverProviderModels:u,onUpdateProviderDefaultModel:d}){return[{id:`settings-project`,title:`Project`,rows:[{label:`Project name`,plain:!0,value:(0,L.jsx)(tx,{value:e.project.displayName,placeholder:`Untitled project`,ariaLabel:`Project name`,maxLength:Mz,saving:t,...c===void 0?{}:{onUpdate:c}})},{label:`Description`,plain:!0,value:(0,L.jsx)(tx,{value:e.project.description,placeholder:`Add a project description`,ariaLabel:`Project description`,maxLength:Nz,allowEmpty:!0,saving:n,...l===void 0?{}:{onUpdate:l}})},{label:`Members`,plain:!0,value:(0,L.jsx)(zz,{members:e.project.members})}]},{id:`settings-access`,title:`Access`,rows:[Bz({settings:e,onCopyJoinUrl:s}),...e.access.inviteExpires===void 0?[]:[{label:`Invite expires`,value:e.access.inviteExpires}],{label:`Signed in as`,plain:!0,value:(0,L.jsx)(Rz,{...e.access.signedInAs},`signed-in-account`)},{label:`Role`,value:e.access.role},{label:`Joined`,value:e.access.joined}]},{id:`settings-provider`,title:`AI provider`,rows:[{label:`Status`,value:e.provider.status},...e.provider.model===void 0?[]:[{label:`Model`,plain:!0,value:(0,L.jsx)(Rx,{value:e.provider.model,options:r,maxLength:256,canEdit:i,discovering:a,saving:o,...u===void 0?{}:{onDiscover:u},...d===void 0?{}:{onUpdate:d}})}],...e.provider.lastValidated===void 0?[]:[{label:`Last validated`,value:e.provider.lastValidated}],...e.provider.issue===void 0?[]:[{label:`Issue`,value:e.provider.issue}]]},{id:`settings-tutti`,title:`Tutti`,rows:[{label:`Version`,value:e.tutti.version}]}]}function Hz({settings:e,statusShortcuts:t,unread:n,artifactSignal:r,loading:i=!1,unavailable:a=!1,projectNameSaving:o=!1,projectDescriptionSaving:s=!1,providerModelOptions:c=[],providerModelEditable:l=!1,providerModelDiscovering:u=!1,providerModelSaving:d=!1,onOpenProjectCenter:f,onOpenChat:p,onOpenWorklist:m,onOpenReferences:h,onOpenArtifacts:g,onOpenSkills:_,onOpenTimeline:v,onActivateStatusShortcut:y,onCopyJoinUrl:b,onUpdateProjectDisplayName:x,onUpdateProjectDescription:S,onDiscoverProviderModels:C,onUpdateProviderDefaultModel:w}){return(0,L.jsx)(hw,{activePage:`settings`,statusShortcuts:t,mobileContext:{title:`Settings`},...n===void 0?{}:{unread:n},...r===void 0?{}:{artifactSignal:r},onOpenProjectCenter:f,onOpenChat:p,onOpenWorklist:m,onOpenReferences:h,onOpenArtifacts:g,onOpenSkills:_,onOpenTimeline:v,onActivateStatusShortcut:y,children:(0,L.jsx)(`section`,{className:`workspace-grid settings-workspace-grid`,"aria-label":`Settings`,children:(0,L.jsx)(`div`,{className:`settings-page-grid`,children:i?(0,L.jsx)(`section`,{className:`settings-sheet`,"aria-label":`Loading settings`,children:(0,L.jsx)(_w,{children:`Loading settings`})}):a?(0,L.jsx)(`section`,{className:`settings-sheet`,"aria-label":`Settings unavailable`,children:(0,L.jsx)(_w,{children:`Workspace unavailable`})}):e===void 0?(0,L.jsx)(`section`,{className:`settings-sheet`,"aria-label":`Settings unavailable`,children:(0,L.jsx)(_w,{children:`Settings unavailable`})}):(0,L.jsx)(Lx,{statuses:[e.connectionStatus],sections:Vz({settings:e,projectNameSaving:o,projectDescriptionSaving:s,providerModelOptions:c,providerModelEditable:l,providerModelDiscovering:u,providerModelSaving:d,onCopyJoinUrl:b,onUpdateProjectDisplayName:x,onUpdateProjectDescription:S,onDiscoverProviderModels:C,onUpdateProviderDefaultModel:w})})})})})}var Uz=[{title:`Awesome GitHub Copilot Skills`,href:`https://awesome-copilot.github.com/skills/`},{title:`Anthropic official skills`,href:`https://github.com/anthropics/skills`},{title:`Claude Skills Marketplace`,href:`https://claudeskills.info/skills/`}];function Wz({statusShortcuts:e,unread:t,artifactSignal:n,skills:r,detail:i,uploadPending:a=!1,deletePending:o=!1,loading:s=!1,unavailable:c=!1,onOpenProjectCenter:l,onOpenChat:u,onOpenWorklist:d,onOpenReferences:f,onOpenArtifacts:p,onOpenTimeline:m,onOpenSettings:h,onActivateStatusShortcut:g,onSelectSkill:_,onUploadSkill:v,onDeleteSkill:y}){let b=s||c;return(0,L.jsx)(hw,{activePage:`skills`,statusShortcuts:e,mobileContext:{title:`Skills`,action:(0,L.jsx)(rx,{variant:`bare`,className:`sidebar-button reference-upload-button`,label:`Upload skill`,pendingLabel:`Uploading skill`,pending:a,accept:`.zip,application/zip,application/x-zip-compressed`,iconOnly:!0,onFileUpload:v})},...t===void 0?{}:{unread:t},...n===void 0?{}:{artifactSignal:n},onOpenProjectCenter:l,onOpenChat:u,onOpenWorklist:d,onOpenReferences:f,onOpenArtifacts:p,onOpenTimeline:m,onOpenSettings:h,onActivateStatusShortcut:g,children:(0,L.jsx)(`section`,{className:`workspace-grid references-workspace-grid`,"aria-label":`Skills`,children:(0,L.jsx)($x,{skills:b?[]:r,communityLinks:b?[]:Uz,...s?{detail:{title:`Loading`,unavailableReason:`Loading`}}:c?{detail:{title:`Skills unavailable`,unavailableReason:`Workspace unavailable`}}:i===void 0?{}:{detail:i},uploadPending:a,deletePending:o,empty:s?(0,L.jsx)(_w,{children:`Loading skills`}):c?(0,L.jsx)(_w,{children:`Workspace unavailable`}):(0,L.jsx)(_w,{children:`No skills`}),onSelectSkill:_,onUploadSkill:v,onDeleteSkill:y})})})}function Gz({timeline:e,statusShortcuts:t,unread:n,artifactSignal:r,loading:i=!1,unavailable:a=!1,onOpenProjectCenter:o,onOpenChat:s,onOpenWorklist:c,onOpenReferences:l,onOpenArtifacts:u,onOpenSkills:d,onOpenSettings:f,onActivateStatusShortcut:p}){return(0,L.jsx)(hw,{activePage:`timeline`,statusShortcuts:t,mobileContext:{title:`Timeline`},...n===void 0?{}:{unread:n},...r===void 0?{}:{artifactSignal:r},onOpenProjectCenter:o,onOpenChat:s,onOpenWorklist:c,onOpenReferences:l,onOpenArtifacts:u,onOpenSkills:d,onOpenSettings:f,onActivateStatusShortcut:p,children:(0,L.jsx)(`section`,{className:`workspace-grid timeline-workspace-grid`,"aria-label":`Timeline workspace`,children:i?(0,L.jsx)(`section`,{className:`panel timeline-panel`,"aria-label":`Loading timeline`,children:(0,L.jsx)(_w,{children:`Loading timeline`})}):a?(0,L.jsx)(`section`,{className:`panel timeline-panel`,"aria-label":`Timeline unavailable`,children:(0,L.jsx)(_w,{children:`Workspace unavailable`})}):e===void 0?(0,L.jsx)(`section`,{className:`panel timeline-panel`,"aria-label":`Timeline unavailable`,children:(0,L.jsx)(_w,{children:`Timeline unavailable`})}):(0,L.jsx)(mS,{tokenOverview:e.tokenOverview,items:e.items,scoreUnits:e.scoreUnits,empty:(0,L.jsx)(_w,{children:`No timeline events yet`})})})})}function Kz({statusShortcuts:e,unread:t,artifactSignal:n,modules:r,taskCount:i,detail:a,missingTaskId:o,runNote:s,loading:c=!1,unavailable:l=!1,onOpenProjectCenter:u,onOpenChat:d,onOpenReferences:f,onOpenArtifacts:p,onOpenSkills:m,onOpenTimeline:h,onOpenSettings:g,onActivateStatusShortcut:_,onSelectTask:v}){return(0,L.jsx)(hw,{activePage:`worklist`,statusShortcuts:e,mobileContext:{title:`Worklist`,meta:i===1?`1 task`:`${i} tasks`},...t===void 0?{}:{unread:t},...n===void 0?{}:{artifactSignal:n},onOpenProjectCenter:u,onOpenChat:d,onOpenReferences:f,onOpenArtifacts:p,onOpenSkills:m,onOpenTimeline:h,onOpenSettings:g,onActivateStatusShortcut:_,children:(0,L.jsx)(`section`,{className:`workspace-grid worklist-workspace-grid`,"aria-label":`Worklist workspace`,children:c?(0,L.jsx)(`section`,{className:`panel tasks worklist-page-panel`,"aria-label":`Loading Worklist`,children:(0,L.jsx)(_w,{children:`Loading Worklist`})}):l?(0,L.jsx)(`section`,{className:`panel tasks worklist-page-panel`,"aria-label":`Worklist unavailable`,children:(0,L.jsx)(_w,{children:`Workspace unavailable`})}):(0,L.jsx)(Ix,{modules:r,taskCount:i,...a===void 0?{}:{detail:a},...o===void 0?{}:{missingTaskId:o},...s==null?{}:{runNote:s},onSelectTask:v,empty:(0,L.jsx)(_w,{children:`No compiled tasks`})})})})}var qz={success:3e3,error:9e3,warning:6e3,info:4500},Jz=5,Yz=(0,I.createContext)(null);function Xz(e){return e.persistent===!0||e.tone===`loading`?e.durationMs:e.durationMs??qz[e.tone]}function Zz(e){return e.persistent??e.tone===`loading`}function Qz(e){return e.dismissible??e.tone!==`loading`}function $z(e,t){let n=Xz(t);return{id:e,tone:t.tone,title:t.title,persistent:Zz(t),dismissible:Qz(t),...t.message===void 0?{}:{message:t.message},...n===void 0?{}:{durationMs:n}}}function eB(e,t){let n=t.tone===void 0,r={tone:t.tone??e.tone,title:t.title??e.title,...t.message===void 0?e.message===void 0?{}:{message:e.message}:{message:t.message},...t.durationMs===void 0?!n||e.durationMs===void 0?{}:{durationMs:e.durationMs}:{durationMs:t.durationMs},...t.persistent===void 0?!n||e.persistent===void 0?{}:{persistent:e.persistent}:{persistent:t.persistent},...t.dismissible===void 0?!n||e.dismissible===void 0?{}:{dismissible:e.dismissible}:{dismissible:t.dismissible}};return $z(e.id,r)}function tB(e){return[e.id,e.tone,e.title,e.message??``,e.durationMs??``,e.persistent===!0?`persistent`:`timed`].join(`:`)}function nB({children:e}){let[t,n]=(0,I.useState)([]),r=(0,I.useRef)(new Map),i=(0,I.useCallback)(e=>{n(t=>t.filter(t=>t.id!==e))},[]),a=(0,I.useCallback)(e=>{let t=Ht(),r=$z(t,e);return n(e=>[...e,r].slice(-Jz)),t},[]),o=(0,I.useCallback)((e,t)=>{if(e===void 0){a(t);return}n(n=>n.map(n=>n.id===e?eB(n,t):n))},[a]);(0,I.useEffect)(()=>{let e=new Set(t.map(e=>e.id));for(let[t,n]of r.current)e.has(t)||(window.clearTimeout(n.timeout),r.current.delete(t));for(let e of t){let t=r.current.get(e.id),n=tB(e);if(t!==void 0&&t.key!==n&&(window.clearTimeout(t.timeout),r.current.delete(e.id)),e.persistent===!0||e.durationMs===void 0||r.current.has(e.id))continue;let a=window.setTimeout(()=>i(e.id),e.durationMs);r.current.set(e.id,{key:n,timeout:a})}},[i,t]),(0,I.useEffect)(()=>()=>{for(let e of r.current.values())window.clearTimeout(e.timeout);r.current.clear()},[]);let s=(0,I.useMemo)(()=>({notify:a,update:o,dismiss:i}),[i,a,o]);return(0,L.jsxs)(Yz.Provider,{value:s,children:[e,(0,L.jsx)(po,{notices:t,onDismiss:i})]})}function rB(){let e=(0,I.useContext)(Yz);if(e===null)throw Error(`useNotify must be used inside NotificationProvider`);return e}var iB=`http://127.0.0.1:4370`;function aB(){return typeof window<`u`?window.location.origin:iB}function oB(){let e=`https://tutti.now`;return typeof e==`string`?e:aB()}var sB=oB(),cB={relayBaseUrl:sB},lB=3e4,Z={relayRoot:[`relay`],me:[`relay`,`me`],recentProjects:[`relay`,`projects`,`recent`],projectPresence:e=>[`relay`,`projects`,e,`presence`],relayJoinRoot:[`relay`,`join`],join:e=>[`relay`,`join`,e],bootstrap:e=>[`host`,e,`bootstrap`],hostRoot:e=>[`host`,e],hostSession:e=>[`host`,e,`session`],hostWorkspace:e=>[`host`,e,`workspace`],messages:e=>[`host`,e,`messages`,`main_chat`],messagesWindow:(e,t)=>[...Z.messages(e),{limit:t}],messagesAround:(e,t,n)=>[...Z.messages(e),{around:t,limit:n}],messageHistory:(e,t,n)=>[...Z.messages(e),{history:t,limit:n}],scratchpad:e=>[`host`,e,`scratchpad`],worklist:e=>[`host`,e,`worklist`],readState:e=>[`host`,e,`read-state`],activeClarification:e=>[`host`,e,`clarification`,`active`],activeApproval:e=>[`host`,e,`approval`,`active`],noActiveClarificationRoundMessages:e=>[`host`,e,`clarification-round-messages`,`none`],clarificationRoundMessages:(e,t)=>[`host`,e,`clarification-round-messages`,t],task:(e,t)=>[`host`,e,`task`,t],taskDetail:(e,t)=>[`host`,e,`task-detail`,t],taskRunResults:(e,t)=>[`host`,e,`task-run-results`,t],executionStatus:e=>[`host`,e,`execution-status`],providerConfig:e=>[`host`,e,`provider-config`],providerUsage:e=>[`host`,e,`provider-usage`],projectTimeline:e=>[`host`,e,`project-timeline`],viewerRoot:e=>[`host`,e,`viewer`],viewerFile:(e,t)=>[`host`,e,`viewer`,`file`,t],referenceFiles:e=>[`host`,e,`references`,`files`],artifacts:e=>[`host`,e,`artifacts`],artifactPreviewSession:(e,t)=>[`relay`,e,`artifact-preview-session`,t],skills:e=>[`host`,e,`skills`],skillDetail:(e,t)=>[`host`,e,`skills`,t]};function uB(){return`${window.location.pathname}${window.location.search}${window.location.hash}`}function Q(e,t={}){t.replace===!0?window.history.replaceState(null,``,e):window.history.pushState(null,``,e),window.dispatchEvent(new PopStateEvent(`popstate`))}function dB(e){let t=new URL(e,window.location.origin);Q(`${t.pathname}${t.search}${t.hash}`)}function fB(){let[e,t]=(0,I.useState)(uB);return(0,I.useEffect)(()=>{let e=()=>{t(uB())};return window.addEventListener(`popstate`,e),()=>{window.removeEventListener(`popstate`,e)}},[]),(0,I.useMemo)(()=>{let t=new URL(e,window.location.origin);return Dr(t.pathname,t.search)},[e])}function $(e){return e instanceof Error?e.message:`Request failed`}function pB(e){e.invalidateQueries({queryKey:Z.me}),e.invalidateQueries({queryKey:Z.recentProjects})}function mB(e,t){if(t!==void 0)for(let n of t)switch(n.kind){case`all`:e.invalidateQueries({queryKey:Z.relayRoot});break;case`me`:e.invalidateQueries({queryKey:Z.me});break;case`recent_projects`:e.invalidateQueries({queryKey:Z.recentProjects});break;case`join_entries`:e.invalidateQueries({queryKey:Z.relayJoinRoot});break;case`project_presence`:Rt(n.relay_project_ref,Pt.relayProject)&&e.invalidateQueries({queryKey:Z.projectPresence(n.relay_project_ref)});break}}function hB(e){let t=et(),n=(0,I.useMemo)(()=>dr(cB),[]);(0,I.useEffect)(()=>{if(e)try{let e=n.connectEvents({onReady:e=>{e.payload.replay.status===`missed`&&t.invalidateQueries({queryKey:Z.relayRoot})},onInvalidate:e=>{mB(t,e)}});return()=>{e.close()}}catch{return}},[e,t,n])}function gB(e,t,n){if(n!==void 0)for(let r of n)switch(r.kind){case`all`:e.invalidateQueries({queryKey:Z.hostRoot(t)});break;case`workspace`:e.invalidateQueries({queryKey:Z.hostWorkspace(t)}),e.invalidateQueries({queryKey:Z.projectTimeline(t)});break;case`session`:e.invalidateQueries({queryKey:Z.hostSession(t)});break;case`bootstrap`:e.invalidateQueries({queryKey:Z.bootstrap(t)});break;case`messages`:r.scope===`main_chat`?e.invalidateQueries({queryKey:Z.messages(t)}):e.invalidateQueries({queryKey:Z.clarificationRoundMessages(t,r.round_id)});break;case`scratchpad`:e.invalidateQueries({queryKey:Z.scratchpad(t)});break;case`worklist`:e.invalidateQueries({queryKey:Z.worklist(t)});break;case`read_state`:e.invalidateQueries({queryKey:Z.readState(t)});break;case`task`:e.invalidateQueries({queryKey:Z.task(t,r.task_id)});break;case`task_detail`:e.invalidateQueries({queryKey:Z.taskDetail(t,r.task_id)});break;case`task_run_results`:e.invalidateQueries({queryKey:Z.taskRunResults(t,r.task_id)}),e.invalidateQueries({queryKey:Z.projectTimeline(t)});break;case`execution_status`:e.invalidateQueries({queryKey:Z.executionStatus(t)});break;case`approval`:e.invalidateQueries({queryKey:Z.activeApproval(t)});break;case`provider_config`:e.invalidateQueries({queryKey:Z.providerConfig(t)});break;case`provider_usage`:e.invalidateQueries({queryKey:Z.providerUsage(t)}),e.invalidateQueries({queryKey:Z.projectTimeline(t)});break;case`project_timeline`:e.invalidateQueries({queryKey:Z.projectTimeline(t)});break;case`viewer`:e.invalidateQueries({queryKey:Z.viewerRoot(t)}),e.invalidateQueries({queryKey:Z.projectTimeline(t)}),(r.path===void 0||r.path.startsWith(`docs/reference`))&&e.invalidateQueries({queryKey:Z.referenceFiles(t)}),r.path!==void 0&&e.invalidateQueries({queryKey:Z.viewerFile(t,r.path)});break;case`skills`:e.invalidateQueries({queryKey:Z.skills(t)});break;case`artifacts`:e.invalidateQueries({queryKey:Z.artifacts(t)});break;case`recovery_summaries`:e.invalidateQueries({queryKey:Z.projectTimeline(t)});break;case`activity`:break;case`clarification`:e.invalidateQueries({queryKey:Z.activeClarification(t)}),e.invalidateQueries({queryKey:Z.projectTimeline(t)}),r.round_id!==void 0&&e.invalidateQueries({queryKey:Z.clarificationRoundMessages(t,r.round_id)});break}}function _B(){return{items:[],window:{has_older:!1,has_newer:!1,limit:50}}}function vB(){return{modules:[]}}function yB(){return{id:`current`,state:`empty`,topic:``,background_summary:``,current_consensus:[],open_questions:[],task_changes:[],receipts:[]}}function bB(e){return{chat:e?.scopes.chat.has_unread===!0,worklist:e?.scopes.worklist.has_unread===!0,references:e?.scopes.references.has_unread===!0,skills:e?.scopes.skills.has_unread===!0}}function xB({enabled:e,hostClient:t,relayProjectRef:n,readState:r,scope:i}){let a=et(),o=(0,I.useRef)(null),s=gt({mutationFn:e=>t.markRead({scope:i,up_to_event_cursor:e}),onSuccess:e=>{gB(a,n,e.invalidates)},onError:()=>{o.current=null}});(0,I.useEffect)(()=>{if(!e||r===void 0)return;let t=r.scopes[i];if(!t.has_unread){t.read_event_cursor>=t.latest_event_cursor&&(o.current=null);return}let n=`${i}:${t.latest_event_cursor}`;o.current===n||s.isPending||(o.current=n,s.mutate(t.latest_event_cursor))},[e,s,r,i])}function SB(){return{state:`none`}}function CB(e){return{status:`idle`,summary:`Idle`,updated_at:e}}function wB(e){return e.active_activities??(e.active_activity===void 0?[]:[e.active_activity])}function TB(e,t,n){return wB(e).some(e=>e.workflow_kind===t?n===void 0||(e.lane??`foreground`)===n:!1)}function EB(e,t){let n=`/projects/${encodeURIComponent(zt(e))}/references`;return t===void 0?n:`${n}?path=${encodeURIComponent(t)}`}function DB(e){return`/projects/${encodeURIComponent(zt(e))}/artifacts`}function OB(e,t){let n=`/projects/${encodeURIComponent(zt(e))}/worklist`;return t===void 0?n:`${n}?task=${encodeURIComponent(t)}`}function kB(e,t){return`${en(e)}?message=${encodeURIComponent(t)}`}function AB(e){return`/projects/${encodeURIComponent(zt(e))}/settings`}function jB(e){return`/projects/${encodeURIComponent(zt(e))}/timeline`}function MB(e,t){let n=`/projects/${encodeURIComponent(zt(e))}/skills`;return t===void 0?n:`${n}?skill=${encodeURIComponent(t)}`}function NB(e,t){switch(t.target.kind){case`approval`:case`clarification`:case`scratchpad`:return en(e);case`worklist`:return OB(e);case`references`:return EB(e);case`task`:return OB(e,t.target.taskId)}}function PB(e,t){Q(NB(e,t))}function FB(e,t){let n=Ti(e);if(t!==void 0&&n.some(e=>e.id===t))return t;for(let e of[`running`,`pending`,`failed`,`todo`,`done`]){let t=n.find(t=>t.status===e);if(t!==void 0)return t.id}}function IB(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}function LB(e){switch(e){case`binary`:return`Binary file`;case`too_large`:return`File too large`;case`unsupported_encoding`:return`Unsupported encoding`;case`restricted_path`:case`secret_like`:return`Restricted file`;default:return`Preview unavailable`}}function RB(e){if(!(e===void 0||e.kind===`text`))return LB(e.reason)}function zB(e){return Array.from(new Uint8Array(e)).map(e=>e.toString(16).padStart(2,`0`)).join(``)}async function BB(e){if(globalThis.crypto?.subtle===void 0)throw Error(`This browser does not support file upload hashing.`);return`sha256:${zB(await globalThis.crypto.subtle.digest(`SHA-256`,await e.arrayBuffer()))}`}async function VB(e){if(e.file.size<=0)throw Error(`Upload file cannot be empty.`);let t=GI(e.purpose);if(e.file.size>t)throw Error(`Upload file cannot exceed ${IB(t)}.`);let n=await BB(e.file),r=e.file.type===``?void 0:e.file.type,i=dr(cB),a=e.purpose===`skill_zip`?{relay_project_ref:e.relayProjectRef,purpose:`skill_zip`,file_name:e.file.name,size_bytes:e.file.size,sha256:n,...r===void 0?{}:{media_type:r}}:{relay_project_ref:e.relayProjectRef,purpose:`reference_file`,file_name:e.file.name,size_bytes:e.file.size,sha256:n,...r===void 0?{}:{media_type:r}},o=await i.startUpload(a);if(o.result===void 0)throw Error(`Upload session could not be started.`);let s=new Headers(o.result.put.headers??{});r!==void 0&&!s.has(`content-type`)&&s.set(`content-type`,r);let c;try{c=await fetch(o.result.put.url,{method:o.result.put.method,headers:s,body:e.file})}catch{throw Error(`File upload failed while sending the file to upload storage. Check that R2 CORS allows PUT from this Web origin.`)}if(!c.ok)throw Error(`File upload failed while sending the file to upload storage (${c.status}).`);return{upload_id:o.result.upload.upload_id,file_name:o.result.upload.file_name,size_bytes:o.result.upload.size_bytes,sha256:o.result.upload.sha256,...o.result.upload.media_type===void 0?{}:{media_type:o.result.upload.media_type}}}function HB(e){let t=et(),n=rB(),[r,i]=(0,I.useState)(`identity`),[a,o]=(0,I.useState)(null),[s,c]=(0,I.useState)({email:``,displayName:``,code:``}),l=gt({mutationFn:async()=>{let e=s.email.trim(),t=await gr(cB,{email:e});if(t.result===void 0)throw Error(`Login challenge was not returned`);return{challenge:t.result.challenge,disposition:t.disposition,email:e}},onSuccess:({challenge:e,disposition:t,email:r})=>{o(e),c(e=>({...e,code:``})),i(`code`),n.notify({tone:`success`,title:t.kind===`otp_already_pending`?`Verification email already sent`:`Verification email sent`,message:t.kind===`otp_already_pending`?`Verification email already sent to ${r}.`:`Verification email sent to ${r}.`})}}),u=gt({mutationFn:async()=>{if(a===null)throw Error(`Login challenge is missing`);let e=await _r(cB,{challenge_ref:a.challenge_ref,code:s.code.trim()});if(e.result===void 0)throw Error(`Login response was not returned`);return e.result},onSuccess:n=>{if(!n.account.profile_complete){t.invalidateQueries({queryKey:Z.me}),c(e=>({...e,displayName:``})),i(`profile`);return}pB(t),e?.()}}),d=gt({mutationFn:async()=>{let e=await vr(cB,{display_name:s.displayName.trim()});if(e.result===void 0)throw Error(`Profile response was not returned`);return e.result.account},onSuccess:()=>{pB(t),e?.()}}),f=e=>{if(e.preventDefault(),r===`identity`&&s.email.trim()!==``){l.mutate();return}if(r===`code`&&a!==null&&s.code.trim()!==``){u.mutate();return}r===`profile`&&s.displayName.trim()!==``&&d.mutate()},p=l.isPending||u.isPending||d.isPending,m=r===`identity`?l.error:r===`code`?u.error??l.error:d.error;return{phase:r,form:s,pending:p,submitDisabled:r===`identity`?s.email.trim()===``:r===`code`?a===null||s.code.replace(/\s+/gu,``).length!==6:s.displayName.trim()===``,challengeEmailHint:a?.email_hint??null,error:m===null?null:$(m),onChange:e=>{c(t=>({...t,...e,...e.code===void 0?{}:{code:e.code.replace(/\D/gu,``).slice(0,6)}}))},onSubmit:f,onBack:()=>{l.reset(),u.reset(),d.reset(),o(null),c(e=>({...e,code:``})),i(`identity`)}}}function UB(e){let t=et(),[n,r]=(0,I.useState)({email:``,displayName:``,code:``}),i=gt({mutationFn:async()=>{let e=await vr(cB,{display_name:n.displayName.trim()});if(e.result===void 0)throw Error(`Profile response was not returned`);return e.result.account},onSuccess:()=>{pB(t),e?.()}});return{phase:`profile`,form:n,pending:i.isPending,submitDisabled:n.displayName.trim()===``,challengeEmailHint:null,error:i.error===null?null:$(i.error),onChange:e=>{r(t=>({...t,...e,...e.code===void 0?{}:{code:e.code.replace(/\D/gu,``).slice(0,6)}}))},onSubmit:e=>{e.preventDefault(),n.displayName.trim()!==``&&i.mutate()}}}var WB=`tutti.workspace-onboarding.v1`,GB={version:1,start_chat_pending:!1,tour_pending:!1};function KB(){try{return typeof window>`u`?null:window.sessionStorage}catch{return null}}function qB(e){return e.storage===void 0?KB():e.storage}function JB(e,t){return`${WB}:${e}:${t}`}function YB(e){if(typeof e!=`object`||!e)return null;let t=e;return t.version===1&&typeof t.start_chat_pending==`boolean`&&typeof t.tour_pending==`boolean`?{version:1,start_chat_pending:t.start_chat_pending,tour_pending:t.tour_pending}:null}function XB(e,t,n){if(e!==null)try{if(!n.start_chat_pending&&!n.tour_pending){e.removeItem(t);return}e.setItem(t,JSON.stringify(n))}catch{}}function ZB(e,t,n={}){let r=qB(n);if(r===null)return{...GB};try{let n=r.getItem(JB(e,t));return n===null?{...GB}:YB(JSON.parse(n))??{...GB}}catch{return{...GB}}}function QB(e,t,n={}){XB(qB(n),JB(e,t),{version:1,start_chat_pending:!0,tour_pending:!0})}function $B(e,t,n,r){let i=qB(r),a=ZB(e,t,{storage:i});a[n]&&XB(i,JB(e,t),{...a,[n]:!1})}function eV(e,t,n={}){$B(e,t,`start_chat_pending`,n)}function tV(e,t,n={}){$B(e,t,`tour_pending`,n)}function nV({joinToken:e}){let t=et(),n=R({queryKey:Z.join(e),queryFn:()=>br(cB,e)}),r=HB(()=>{n.refetch()}),i=UB(()=>{n.refetch()}),a=gt({mutationFn:()=>xr(cB,e),onSuccess:n=>{pB(t),t.invalidateQueries({queryKey:Z.join(e)}),n.disposition.kind===`joined`&&n.result!==void 0&&QB(n.result.account.account_ref,n.result.relay_project.relay_project_ref),n.result?.relay_project.host_status===`online`&&Q(en(n.result.relay_project.relay_project_ref))}}),o=gt({mutationFn:e=>Cr(cB,e),onSuccess:e=>{pB(t),e.disposition.kind===`opened`&&e.result?.open_url!==void 0&&dB(e.result.open_url)}}),s=n.data;hB(s?.account!==void 0);let c=s?.relay_project?.display_name??`Project`,l=s?.relay_project?.host_status??`unknown`,u=s?.account?.profile_complete===!1,d=u?`login_required`:n.isLoading?`loading`:n.error===null?s?.next.kind??`invalid_or_expired`:`error`;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:{kind:`join`,joinToken:e},projectDisplayName:s?.relay_project?.display_name??null}),(0,L.jsx)(KC,{projectName:c,description:d===`invalid_or_expired`?`This invite can no longer be used.`:`You have been invited to join ${c}.`,hostLabel:zr(l),hostOnline:l===`online`,nextKind:d,accountLabel:s?.account?.display_name??null,membershipLabel:s?.membership?.label??null,actionPending:a.isPending||o.isPending,error:n.error===null?a.error===null?o.error===null?null:$(o.error):$(a.error):$(n.error),onBrandClick:()=>Q(`/`),onRetry:()=>void n.refetch(),onAccept:()=>a.mutate(),onOpen:()=>{s?.next.kind===`open_workspace`&&o.mutate(s.next.relay_project_ref)},...d===`login_required`?{loginForm:u?i:r}:{}})]})}function rV(e){let t=e.summary;return t===void 0||t.status===`missing`?{summaryStatus:`Summary not available yet`}:t.status===`stale`?{...t.text===void 0?{}:{summary:t.text},summaryStatus:`Summary may be out of date`}:t.status===`unavailable`?{...t.text===void 0?{}:{summary:t.text},summaryStatus:`Summary could not be generated`}:t.text===void 0?{summaryStatus:`Summary unavailable`}:{summary:t.text}}function iV(e){if(e.category===`image`)return[e.media_type??`Image`,IB(e.size_bytes)].join(` · `);let t=[IB(e.size_bytes)];return e.text_read.can_read||t.push(LB(e.text_read.blocked_reason)),t.join(` · `)}function aV(e){if(!e.path.startsWith(`docs/reference/`))return;let[t,n]=e.path.slice(15).split(`/`);if(!(t===void 0||t.length===0||n===void 0||t===`files`||t===`images`))return t}function oV(e,t=aV(e)){if(t===void 0){let t=e.category===`image`?`docs/reference/images/`:`docs/reference/files/`;return e.path.startsWith(t)?e.path.slice(t.length):e.name}return e.path.slice(`docs/reference/${t}/`.length)}function sV(e,t){let n=aV(e);return{path:e.path,name:oV(e,n),meta:iV(e),...n===void 0?{}:{folderGroup:n},selected:t.selected,canPreview:e.text_read.can_read,category:e.category,...t.thumbnailUrl===void 0?{}:{thumbnailUrl:t.thumbnailUrl},...e.extension===void 0?{}:{extension:e.extension}}}var cV=`https://lf1-cdn-tos.bytegoofy.com/goofy/lark/op/h5-js-sdk-1.5.48.js`,lV=15e3,uV=[sI],dV=class extends Error{constructor(e,t,n,r){super(e.replaceAll(`_`,` `)),this.code=e,this.stage=t,this.errno=n,this.platformDetail=r,this.name=`FeishuH5AuthorizationError`}};function fV(e){let t=[];typeof e.errCode==`number`&&Number.isSafeInteger(e.errCode)&&t.push(`errCode ${e.errCode}`);for(let n of[e.errString,e.errMsg]){if(typeof n!=`string`)continue;let e=Array.from(n,e=>{let t=e.charCodeAt(0);return t<=31||t===127?` `:e}).join(``).replace(/\s+/gu,` `).trim();e!==``&&!t.includes(e)&&t.push(e)}if(t.length===0)return;let n=t.join(` · `);return n.length<=180?n:`${n.slice(0,177)}...`}function pV(e){return typeof e.errno==`number`&&Number.isSafeInteger(e.errno)?e.errno:void 0}function mV(e,t){return new Promise((n,r)=>{let i=!1,a=!1,o=!1,s=e=>{i||(i=!0,clearTimeout(c),`error`in e?r(e.error):n(e.code))},c=setTimeout(()=>s({error:new dV(`client_unavailable`)}),t.timeoutMs??lV),l=()=>{if(!(a||i)){if(a=!0,e.allowLegacyFallback===!1){s({error:new dV(`request_failed`,`request_access`)});return}if(t.client.requestAuthCode===void 0){s({error:new dV(o?`request_failed`:`client_unavailable`,o?`request_access`:`request_auth_code`)});return}t.client.requestAuthCode({appId:e.appId,success:e=>{typeof e.code!=`string`||e.code.trim()===``?s({error:new dV(`request_failed`,`request_auth_code`)}):s({code:e.code})},fail:e=>s({error:new dV(`request_failed`,`request_auth_code`,pV(e),fV(e))})})}},u=()=>{if(!(o||i)){if(o=!0,t.client.requestAccess===void 0){l();return}t.client.requestAccess({appID:e.appId,scopeList:[...e.scopes??uV],state:e.state,success:t=>{if(typeof t.code!=`string`||t.code.trim()===``){s({error:new dV(`request_failed`,`request_access`)});return}if(t.state!==void 0&&t.state!==e.state){s({error:new dV(`state_mismatch`,`request_access`)});return}s({code:t.code})},fail:e=>{let t=pV(e);if(t===103){l();return}s({error:new dV(`request_failed`,`request_access`,t,fV(e))})}})}};t.sdk===void 0?u():(t.sdk.error(e=>{s({error:new dV(`request_failed`,`sdk`,pV(e))})}),t.sdk.ready(u))})}var hV=null;function gV(e){return e.tt===void 0?null:{client:e.tt,...e.h5sdk===void 0?{}:{sdk:e.h5sdk}}}function _V(e=window,t=document){let n=gV(e);if(n!==null)return Promise.resolve(n);if(hV!==null)return hV;let r=new Promise((n,r)=>{let i=t.createElement(`script`),a=setTimeout(()=>{i.remove(),r(new dV(`client_unavailable`))},lV);i.async=!0,i.crossOrigin=`anonymous`,i.src=cV,i.onload=()=>{clearTimeout(a);let t=gV(e);t===null?r(new dV(`client_unavailable`)):n(t)},i.onerror=()=>{clearTimeout(a),r(new dV(`client_unavailable`))},t.head.append(i)}).catch(e=>{throw hV=null,e});return hV=r,r}async function vV(e){return await mV(e,await _V())}var yV=class extends Error{constructor(e){super(`Enter a Feishu Docx, Wiki or cloud file link, or the actual 27-character Docx document ID.`),this.code=e,this.name=`FeishuDocumentInputError`}};function bV(e){let t=fL(e);if(!t)throw new yV(`document_link_invalid`);return`https://feishu.cn/${t.kind}/${t.token}`}var xV=`reference-entry-drive-1`,SV=class extends Error{constructor(e,t,n){super(e.replaceAll(`_`,` `)),this.stage=e,this.cause=t,this.diagnostics=n,this.name=`FeishuProjectOpenError`}};function CV(){if(typeof globalThis.crypto?.randomUUID==`function`)return globalThis.crypto.randomUUID().replaceAll(`-`,``);if(typeof globalThis.crypto?.getRandomValues==`function`){let e=new Uint8Array(16);return globalThis.crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``)}return`${Date.now().toString(36)}${Math.random().toString(36).slice(2)}`.padEnd(16,`0`)}function wV(){let e={diagnosticId:`fdiag_${CV()}`,webRelease:xV};if(!On(e.diagnosticId)||!kn(e.webRelease))throw Error(`Feishu diagnostics could not be initialized`);return e}function TV(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function EV(e){return typeof e==`string`&&/^[a-z][a-z0-9_]{0,95}$/u.test(e)?e:void 0}function DV(e){let t=e,n=new Set;for(;t instanceof SV&&!n.has(t);)n.add(t),t=t.cause;return t}function OV(e){if(e instanceof SV){if(e.cause instanceof dV){if(e.stage===`document_authorization_request_access`)return e.stage;if(e.cause.stage===`sdk`)return`h5_sdk`;if(e.cause.stage===`request_auth_code`)return`h5_request_auth_code`;if(e.cause.stage===`request_access`)return`h5_request_access`}return e.stage}return e instanceof dV?e.stage===`sdk`?`h5_sdk`:e.stage===`request_auth_code`?`h5_request_auth_code`:`h5_request_access`:`browser_runtime`}function kV(e,t){return e instanceof SV&&e.diagnostics!==void 0?e.diagnostics:t}function AV(e){return TV(e.details)?EV(e.details.reason_code)??e.code:e.code}function jV(e){if(e instanceof yV)return e.message;if(e instanceof SV){if(e.stage===`external_reference_register`||e.stage===`external_reference_list`){if(e.cause instanceof yV)return e.cause.message;let t=e.cause instanceof Gt?AV(e.cause):void 0;return t?.startsWith(`reference_submission_`)?`This Reference request is no longer available. Reload References; submit the link again if the request expired.`:t===`reference_source_limit_reached`?`The project has reached its Reference source limit. Existing sources are unchanged.`:t===`reference_owner_required`?`Only the project Owner can add References.`:t===`reference_link_invalid`?`Use a standard Feishu Docx, Wiki or cloud file link.`:t===`feishu_user_drive_scope_missing`?`Authorize cloud file downloads and try again.`:t===`feishu_user_authorization_required`?`The Owner needs to authorize access, then retry this request.`:t===`document_wiki_type_unsupported`?`This Wiki node is not a Docx document. Use a direct cloud file link for ordinary files.`:`The Reference request could not be completed. Reload the list and try again; existing sources are unchanged.`}if(e.stage===`reference_summary_refresh`)return`The summary retry could not be requested. Your document connection and local snapshot are unchanged. Try again.`;if([`document_list`,`document_connect`,`document_refresh`].includes(e.stage)){let t=e.cause instanceof Gt?AV(e.cause):void 0;return t===`document_link_invalid`?`Use a Feishu Docx or Wiki link, or the actual Docx document ID.`:t===`document_wiki_authorization_required`?`Authorize Wiki node access and Feishu Docs, then try connecting again.`:t===`document_wiki_type_unsupported`?`This Wiki node is not a Docx document. Sheets and other resource types are not supported yet.`:t===`document_wiki_not_found`?`The Wiki node could not be found. Check the copied link.`:t===`document_wiki_access_denied`?`Your Feishu account cannot read this Wiki node. Check its sharing settings.`:t===`document_wiki_busy`?`Another Wiki connection is being checked. Try again shortly.`:t===`document_owner_required`?`Only the project Owner can connect or refresh documents.`:t===`document_authorization_required`?`Authorize Feishu Docs and try again.`:t===`document_source_limit_reached`?`This project has reached its document connection limit.`:t===`document_source_not_found`?`This document connection is no longer available. Reload the list.`:`The document request could not be completed. Your existing reference snapshots are unchanged. Try again.`}return(e.stage===`document_authorization_bootstrap`||e.stage===`document_authorization_exchange`)&&e.cause instanceof Gt?`Feishu could not authorize document access. Reopen this entry and try again.`:e.stage===`authorization_exchange`&&e.cause instanceof Gt&&(e.cause.statusCode===401||e.cause.statusCode===403||e.cause.statusCode===503)?`Feishu could not verify your identity or project group access. Try again after the app permissions are available.`:e.stage===`host_bootstrap`&&e.cause instanceof Gt&&e.cause.statusCode===503?`The project’s local Tutti runtime is offline or temporarily unavailable.`:e.stage===`browser_session_restore`?`This browser session expired. Reopen the project from Feishu and start the browser fallback again.`:e.stage===`browser_handoff_consume`?`This browser handoff expired or was already used. Reopen the project from Feishu and try again.`:jV(e.cause)}if(e instanceof dV){if(e.code===`client_unavailable`)return`Open this project through the Feishu app entry, not a regular browser link.`;if(e.code===`state_mismatch`)return`This Feishu authorization request expired. Try again.`;let t=[e.stage,e.errno===void 0?void 0:`errno ${e.errno}`,e.platformDetail].filter(e=>e!==void 0).join(`, `);return`Feishu could not authorize this app${t===``?``:` (${t})`}. Reopen it from Feishu and try again.`}return e instanceof Gt&&e.statusCode===403?`Your Feishu account must belong to the project group.`:e instanceof Gt&&e.statusCode===503?`The project’s local Tutti runtime is offline or temporarily unavailable.`:e instanceof Gt&&e.statusCode===404?`This project is no longer connected to the current Feishu group.`:`Check your Feishu connection and try again.`}function MV(e,t){let n=DV(e),r={...kV(e,t),message:jV(e),stage:OV(e)};if(n instanceof yV)return{...r,errorKind:`input_validation_error`,reasonCode:n.code};if(n instanceof Gt){let e=TV(n.details)?n.details:void 0,t=EV(e?.authorization_stage),i=e?.platform_code;return{...r,errorKind:n.code,...n.statusCode<=0?{}:{httpStatus:n.statusCode},reasonCode:AV(n),...t===void 0?{}:{platformStage:t},...typeof i==`number`&&Number.isSafeInteger(i)?{platformCode:i}:{}}}return n instanceof dV?{...r,errorKind:n.code,reasonCode:n.code,...n.errno===void 0?{}:{platformCode:n.errno}}:n instanceof TypeError?{...r,errorKind:`unexpected_type_error`,reasonCode:`unexpected_type_error`}:{...r,errorKind:`unexpected_error`,reasonCode:`unexpected_error`}}async function NV(e,t,n=`docx`){let r;try{r=await ir(cB,e,{diagnostics:t,profile:n})}catch(e){throw new SV(`document_authorization_bootstrap`,e,t)}let i;try{i=await vV({appId:r.app_id,state:r.state,scopes:r.authorization_scopes,allowLegacyFallback:!1})}catch(e){throw new SV(`document_authorization_request_access`,e,t)}try{await ar(cB,{relayProjectRef:e,state:r.state,authorizationCode:i},{diagnostics:t})}catch(e){throw new SV(`document_authorization_exchange`,e,t)}}function PV(e){if(e instanceof Gt&&e.details&&typeof e.details==`object`&&`reason_code`in e.details){let t=e.details.reason_code;if(typeof t==`string`&&/^[a-z][a-z0-9_]{0,95}$/u.test(t))return t}return`reference_request_failed`}function FV(e){let t=MV(e,e.diagnostics??wV());return`${t.message} Diagnostic ID: ${t.diagnosticId} · ${t.webRelease} · ${t.stage} · ${t.reasonCode??t.errorKind}${t.stage===`document_input_validation`?` · Local validation (not sent)`:t.httpStatus===void 0?``:` · HTTP ${t.httpStatus}`}`}function IV(e,t){let n=(0,I.useMemo)(()=>Kn(cB,e),[e]),[r,i]=(0,I.useState)(``),[a,o]=(0,I.useState)(!1),[s,c]=(0,I.useState)(!1),[l,u]=(0,I.useState)(),[d,f]=(0,I.useState)(),p=(0,I.useRef)(!1),m=(0,I.useRef)(!1);(0,I.useEffect)(()=>(m.current=!0,()=>{m.current=!1}),[]);let h=R({queryKey:[`feishu-project`,e,`external-references`],queryFn:async({signal:e})=>{let t=wV();try{return await n.list({signal:e,diagnostics:t})}catch(e){throw new SV(`external_reference_list`,e,t)}},enabled:t,retry:!1,refetchInterval:e=>e.state.error===null?3e4:!1,refetchIntervalInBackground:!1}),g=async t=>{if(p.current||!h.data?.can_register)return;p.current=!0,o(!0);let a=t.kind===`authorize`;c(t.kind===`register`),u(void 0),f(void 0);let s=wV();try{if(a)await NV(e,s,t.profile);else{let i,a;if(t.kind===`confirm`)i=t.submission.kind,a=()=>n.confirm(t.submission.submission_ref,{diagnostics:s});else{let e=bV(r),t=fL(e);if(!t)throw new yV(`document_link_invalid`);i=t.kind,a=()=>n.register(e,{diagnostics:s})}try{await a()}catch(t){if(![`document_wiki_authorization_required`,`feishu_user_drive_scope_missing`,`feishu_user_authorization_required`,`feishu_user_token_scope_missing`].includes(PV(t)))throw t;if(await NV(e,s,i===`file`?`drive_file`:i===`wiki`?`wiki_docx`:`docx`),!m.current)return;await a()}}if(!m.current)return;f(a?`Document access authorized. Retry the task or question that needed access.`:`Reference added. Tell Tutti in the group when it is needed.`),t.kind===`register`&&i(``),await h.refetch()}catch(e){let t=e instanceof SV?e:new SV(e instanceof yV?`document_input_validation`:`external_reference_register`,e,s);m.current&&u(FV(t))}finally{p.current=!1,m.current&&(o(!1),c(!1))}};return{canManage:h.data?.can_register??!1,loading:h.isLoading,pending:a,connecting:s,draft:r,...l===void 0&&!h.isError?{}:{error:l??FV(h.error)},...d===void 0?{}:{feedback:d},items:(h.data?.items??[]).map(e=>({id:e.source_ref,name:e.name,status:`Read on demand`})),submissions:(h.data?.pending??[]).map(e=>({id:e.submission_ref,name:`${e.kind===`file`?`Cloud file`:e.kind===`wiki`?`Wiki document`:`Docx document`} · ${e.submission_ref.slice(-8)}`,detail:`Submitted ${new Date(e.created_at).toLocaleString(`en-US`)}. Confirm to share with this project.`,onConfirm:()=>void g({kind:`confirm`,submission:e})})),onDraftChange:i,onConnect:()=>void g({kind:`register`}),onAuthorize:()=>void g({kind:`authorize`,profile:`docx`}),...h.data?.items.some(e=>e.kind===`feishu_drive_file`)||h.data?.pending?.some(e=>e.kind===`file`)?{onAuthorizeFiles:()=>void g({kind:`authorize`,profile:`drive_file`})}:{},onReload:()=>{u(void 0),h.refetch()}}}var LV=3e4;function RV(e){if(!(e===void 0||e.disposition.kind===`issued`))return e.disposition.kind===`invalid_manifest`?e.disposition.message:e.disposition.kind===`preview_not_ready`?e.disposition.message??`Preview is not ready`:e.disposition.kind===`not_declared`?`Artifact is no longer declared`:`Preview session expired before it could be opened`}function zV(e){return e===void 0?!1:e.disposition.kind!==`issued`||e.result===void 0?e.disposition.kind===`preview_not_ready`||e.disposition.kind===`interrupted`?1e3:!1:Math.max(1e3,Date.parse(e.result.expires_at)-Date.now()-LV)}function BV(e){return e?.disposition.kind===`issued`?e.result?.bootstrap_url:void 0}var VV=`tutti_feishu_handoff`,HV=/^[A-Za-z0-9_-]{43}$/u;function UV(e){let t=`#${VV}=`,n=e.hash.startsWith(t)?e.hash.slice(t.length):void 0,r=n!==void 0&&HV.test(n)?n:void 0;return{systemBrowser:new URLSearchParams(e.search).get(`lk_jump_to_browser`)===`true`||r!==void 0,...r===void 0?{}:{handoffToken:r},shouldClearFragment:n!==void 0}}function WV(e,t){t.replaceState(t.state,``,`${e.pathname}${e.search}`)}function GV(e){if(!HV.test(e.handoffToken))throw TypeError(`Feishu browser handoff token is invalid`);let t=new URL(tn(e.relayProjectRef),e.origin);return t.searchParams.set(`lk_jump_to_browser`,`true`),t.searchParams.set(`view`,`artifacts`),t.hash=`${VV}=${e.handoffToken}`,t.toString()}function KV(e,t=(e,t)=>window.open(e,t)){if(new URL(e).searchParams.get(`lk_jump_to_browser`)!==`true`)throw TypeError(`Feishu system-browser URL is missing the browser jump parameter`);let n=t(e,`_blank`);return n===null?!1:(n.opener=null,!0)}var qV={root:e=>[`feishu-project`,e],bootstrap:e=>[`feishu-project`,e,`bootstrap`],scratchpad:e=>[`feishu-project`,e,`scratchpad`],worklist:e=>[`feishu-project`,e,`worklist`],executionStatus:e=>[`feishu-project`,e,`execution-status`],artifacts:e=>[`feishu-project`,e,`artifacts`],artifactPreviewSession:(e,t)=>[`feishu-project`,e,`artifact-preview-session`,t],activeClarification:e=>[`feishu-project`,e,`active-clarification`],clarificationMessages:(e,t)=>[`feishu-project`,e,`clarification-messages`,t],activeApproval:e=>[`feishu-project`,e,`active-approval`],referenceFiles:e=>[`feishu-project`,e,`reference-files`],viewerFiles:e=>[`feishu-project`,e,`viewer-file`],viewerFile:(e,t)=>[`feishu-project`,e,`viewer-file`,t],taskDetail:(e,t)=>[`feishu-project`,e,`task-detail`,t],taskRunResults:(e,t)=>[`feishu-project`,e,`task-run-results`,t]};function JV(e,t){e.invalidateQueries({queryKey:qV.root(t)})}function YV(e,t,n){if(n!==void 0)for(let r of n)switch(r.kind){case`all`:JV(e,t);break;case`bootstrap`:case`workspace`:case`session`:e.invalidateQueries({queryKey:qV.bootstrap(t)});break;case`scratchpad`:e.invalidateQueries({queryKey:qV.scratchpad(t)});break;case`worklist`:e.invalidateQueries({queryKey:qV.worklist(t)});break;case`task`:case`task_detail`:e.invalidateQueries({queryKey:qV.taskDetail(t,r.task_id)});break;case`task_run_results`:e.invalidateQueries({queryKey:qV.taskRunResults(t,r.task_id)});break;case`messages`:r.scope===`clarification_round`&&e.invalidateQueries({queryKey:qV.clarificationMessages(t,r.round_id)});break;case`clarification`:e.invalidateQueries({queryKey:qV.activeClarification(t)}),r.round_id!==void 0&&e.invalidateQueries({queryKey:qV.clarificationMessages(t,r.round_id)});break;case`approval`:e.invalidateQueries({queryKey:qV.activeApproval(t)});break;case`execution_status`:case`activity`:e.invalidateQueries({queryKey:qV.executionStatus(t)});break;case`viewer`:(r.path===void 0||r.path.startsWith(`docs/reference`))&&(e.invalidateQueries({queryKey:qV.referenceFiles(t)}),e.invalidateQueries({queryKey:qV.viewerFiles(t)}));break;case`artifacts`:e.invalidateQueries({queryKey:qV.artifacts(t)});break;case`read_state`:case`provider_config`:case`provider_usage`:case`project_timeline`:case`skills`:case`recovery_summaries`:break}}function XV(e){return e.streamStatus!==`open`&&e.nowMs-e.lastRefreshAtMs>=(e.throttleMs??3e4)}var ZV=2e4;function QV(e,t){return e?.previewGeneration===t?e:{previewGeneration:t,annotations:[]}}function $V(e,t){return e!==null&&e.previewGeneration!==t}var eH=(0,I.createContext)(null);function tH(e){let t=e.intervalMs??ZV,n=e.setIntervalFn??window.setInterval.bind(window),r=e.clearIntervalFn??window.clearInterval.bind(window),i=!0,a=!1,o=!1,s=()=>{!i||a||(a=!0,e.renew().then(()=>{i&&!o&&(o=!0,e.onInitialRenewed?.())}).catch(()=>void 0).finally(()=>{a=!1}))};s();let c=n(s,t);return()=>{i=!1,r(c)}}function nH({relayProjectRef:e,hostClient:t,enabled:n,feedbackEnabled:r,children:i}){let[a,o]=(0,I.useState)(null),[s,c]=(0,I.useState)(null),l=(0,I.useRef)(0),u=R({queryKey:Z.artifacts(e),queryFn:()=>t.getArtifacts(),enabled:n,staleTime:lB}),d=u.data?.artifact,f=d?.status===`declared`;(0,I.useEffect)(()=>{if(!(!n||!f))return tH({renew:()=>t.renewArtifactPreviewLease(),onInitialRenewed:()=>{u.refetch()}})},[u.refetch,f,n,t]);let p=d!==void 0,m=d?.status===`declared`?d.preview_generation:void 0,h=(0,I.useCallback)(e=>{o(t=>QV(t,e))},[]),g=(0,I.useCallback)(e=>{o(t=>{if(t===null||t.annotations.length>=64)return t;let{createdAt:n,...r}=e;return l.current+=1,{...t,annotations:[...t.annotations,{...r,createdAt:n,key:`artifact-feedback-note-${l.current}`}]}})},[]),_=(0,I.useCallback)(e=>{o(t=>t===null?null:{...t,annotations:t.annotations.filter((t,n)=>n!==e)})},[]),v=(0,I.useCallback)(()=>o(null),[]),y=(0,I.useCallback)(e=>c(e),[]),b=(0,I.useCallback)(()=>c(null),[]),x=(0,I.useMemo)(()=>({artifact:d,sidebarSignal:ei(d),loading:!p&&n&&u.isLoading,unavailable:!p&&n&&u.error!==null,feedbackEnabled:r,feedbackDraft:a,feedbackDraftStale:$V(a,m),beginFeedbackDraft:h,addFeedbackAnnotation:g,removeFeedbackAnnotation:_,clearFeedbackDraft:v,pendingActivation:s,requestFeedbackActivation:y,clearFeedbackActivation:b}),[g,d,u.error,u.isLoading,h,b,v,m,n,a,r,p,s,_,y]);return(0,L.jsx)(eH.Provider,{value:x,children:i})}function rH(){let e=(0,I.useContext)(eH);if(e===null)throw Error(`Workspace Artifact runtime is unavailable`);return e}function iH({relayProjectRef:e}){return(0,I.useEffect)(()=>{window.location.replace(tn(e))},[e]),null}async function aH(e,t,n,r=!1){let i;try{await rr(cB,e,{signal:t,diagnostics:n});return}catch(e){if(!Yt(e))throw new SV(`session_current`,e,n);i=e}if(r)throw new SV(`browser_session_restore`,i,n);let a;try{a=await tr(cB,e,{signal:t,diagnostics:n})}catch(e){throw new SV(`authorization_bootstrap`,e,n)}let o;try{o=await vV({appId:a.app_id,state:a.state})}catch(e){throw new SV(`h5_request_access`,e,n)}try{await nr(cB,{relayProjectRef:e,state:a.state,authorizationCode:o},{signal:t,diagnostics:n})}catch(e){throw new SV(`authorization_exchange`,e,n)}}async function oH(e,t,n){try{await sr(cB,{relayProjectRef:e,handoffToken:t},{diagnostics:n})}catch(t){try{await rr(cB,e,{diagnostics:n});return}catch{throw new SV(`browser_handoff_consume`,t,n)}}}async function sH(e,t,n){try{return await n()}catch(n){throw new SV(e,n,t)}}function cH({relayProjectRef:e,diagnostics:t,browserEntry:n}){let r=(0,I.useMemo)(()=>er(cB,e),[e]),[i,a]=(0,I.useState)({kind:`loading`}),o=(0,I.useRef)(null),s=(0,I.useRef)(!1),c=(0,I.useRef)(!1);(0,I.useEffect)(()=>{let r=new AbortController;return a({kind:`loading`}),(n.handoffToken!==void 0&&!s.current?(o.current??=oH(e,n.handoffToken,t),o.current.then(()=>{s.current=!0})):aH(e,r.signal,t,!0)).then(()=>{r.signal.aborted||a({kind:`ready`})}).catch(e=>{r.signal.aborted||a({kind:`error`,...MV(e,t)})}),()=>r.abort()},[n.handoffToken,t,e]);let l=i.kind===`ready`,u=R({queryKey:qV.artifacts(e),queryFn:({signal:e})=>sH(`artifacts`,t,()=>r.getArtifacts({signal:e,diagnostics:t})),enabled:l}),d=u.data?.artifact,f=d?.status===`declared`;(0,I.useEffect)(()=>{if(!(!l||!f))return tH({renew:()=>r.renewArtifactPreviewLease({diagnostics:t}),onInitialRenewed:()=>{u.refetch()}})},[f,u.refetch,r,t,l]);let p=d?.status===`declared`&&d.preview.status===`ready`&&d.preview.url!==void 0?`${d.preview_generation}:${d.preview.url}`:null,m=R({queryKey:qV.artifactPreviewSession(e,p??`not-ready`),queryFn:()=>sH(`artifact_preview_session`,t,()=>r.issueArtifactPreviewSession(void 0,void 0,{diagnostics:t})),enabled:l&&p!==null,staleTime:1/0,retry:1,refetchInterval:e=>zV(e.state.data)}),h=m.data,g=m.error===null?RV(h):`${$(m.error)} Diagnostic ID: ${t.diagnosticId}`,_=BV(h);return(0,I.useEffect)(()=>{_===void 0||c.current||(c.current=!0,window.location.replace(_))},[_]),i.kind===`error`||u.error!==null||m.error!==null||g!==void 0||u.isFetched&&p===null?(0,L.jsx)(`main`,{role:`status`,children:`Artifact preview is unavailable.`}):null}function lH({relayProjectRef:e,diagnostics:t,onDiagnosticsChange:n,initialTab:r,authorizeDocument:i}){let a=(0,I.useMemo)(()=>er(cB,e),[e]),o=et(),s=rB(),[c,l]=(0,I.useState)({kind:`loading`}),[u,d]=(0,I.useState)(r),[f,p]=(0,I.useState)(),[m,h]=(0,I.useState)(),[g,_]=(0,I.useState)(``),[v,y]=(0,I.useState)(!1),[b,x]=(0,I.useState)(),[S,C]=(0,I.useState)(),[w,T]=(0,I.useState)(),[E,ee]=(0,I.useState)(0),D=(0,I.useRef)(null),O=(0,I.useRef)(null),k=(0,I.useRef)(0),A=(0,I.useRef)(t),te=(0,I.useRef)(!1),j=(t,n)=>aH(e,t,n);(0,I.useEffect)(()=>{let e=new AbortController;l({kind:`loading`}),x(void 0);let t=A.current;return j(e.signal,t).then(()=>{e.signal.aborted||l({kind:`ready`})}).catch(n=>{e.signal.aborted||l({kind:`error`,...MV(n,t)})}),()=>e.abort()},[e]),(0,I.useEffect)(()=>()=>{D.current?.abort()},[]);let M=c.kind===`ready`;(0,I.useEffect)(()=>{if(!M||!i||te.current)return;te.current=!0;let t=A.current,n=s.notify({tone:`loading`,title:`Authorizing Feishu Docs`});NV(e,t).then(()=>{let e=new URL(window.location.href);e.searchParams.delete(`authorize`),window.history.replaceState(null,``,`${e.pathname}${e.search}${e.hash}`),s.update(n,{tone:`success`,title:`Feishu Docs authorized`,message:`Document access is ready for the managed Reference test.`})}).catch(e=>{let r=MV(e,t);s.update(n,{tone:`error`,title:`Feishu Docs authorization failed`,message:`${r.message} Diagnostic ID: ${r.diagnosticId}`})})},[i,s,e,M]);let N=R({queryKey:qV.bootstrap(e),queryFn:({signal:e})=>sH(`host_bootstrap`,A.current,()=>a.getBootstrap({signal:e,diagnostics:A.current})),enabled:M}),P=N.data?.workspace.capabilities.sse===!0;(0,I.useEffect)(()=>{!M||!P||N.data===void 0||T(t=>t?.relayProjectRef===e?t:{relayProjectRef:e,cursor:N.data.event_cursor})},[N.data,P,e,M]),(0,I.useEffect)(()=>{if(!M||!P||w?.relayProjectRef!==e)return;let t;try{t=a.connectEvents({after:w.cursor,onReady:t=>{t.payload.replay.status===`missed`&&JV(o,e)},onInvalidate:t=>{YV(o,e,t)}})}catch{O.current=null;return}return O.current=t,()=>{O.current===t&&(O.current=null),t.close()}},[a,w,E,P,o,e,M]),(0,I.useEffect)(()=>{let t=()=>{let t=Date.now(),n=O.current;XV({streamStatus:n?.status(),nowMs:t,lastRefreshAtMs:k.current})&&(k.current=t,JV(o,e),n===null?ee(e=>e+1):n.retryNow())},n=()=>{document.visibilityState!==`hidden`&&t()};return window.addEventListener(`focus`,t),window.addEventListener(`online`,t),document.addEventListener(`visibilitychange`,n),()=>{window.removeEventListener(`focus`,t),window.removeEventListener(`online`,t),document.removeEventListener(`visibilitychange`,n)}},[o,e]);let F=R({queryKey:qV.scratchpad(e),queryFn:({signal:e})=>sH(`scratchpad`,A.current,()=>a.getScratchpad({signal:e,diagnostics:A.current})),enabled:M}),ne=R({queryKey:qV.worklist(e),queryFn:({signal:e})=>sH(`worklist`,A.current,()=>a.getWorklist({signal:e,diagnostics:A.current})),enabled:M}),re=R({queryKey:qV.executionStatus(e),queryFn:({signal:e})=>sH(`execution_status`,A.current,()=>a.getExecutionStatus({signal:e,diagnostics:A.current})),enabled:M}),ie=R({queryKey:qV.artifacts(e),queryFn:({signal:e})=>sH(`artifacts`,A.current,()=>a.getArtifacts({signal:e,diagnostics:A.current})),enabled:M}),ae=R({queryKey:qV.referenceFiles(e),queryFn:({signal:e})=>sH(`references`,A.current,()=>a.getReferenceFiles({signal:e,diagnostics:A.current})),enabled:M}),oe=IV(e,M&&u===`references`),se=R({queryKey:qV.activeClarification(e),queryFn:({signal:e})=>sH(`clarification_active`,A.current,()=>a.getActiveClarification({signal:e,diagnostics:A.current})),enabled:M}),ce=R({queryKey:qV.activeApproval(e),queryFn:({signal:e})=>sH(`approval_active`,A.current,()=>a.getActiveApproval({signal:e,diagnostics:A.current})),enabled:M}),le=se.data??N.data?.snapshots.active_clarification??{state:`none`},ue=le.state===`active`?le.round.id:void 0,de=R({queryKey:qV.clarificationMessages(e,ue??`none`),queryFn:({signal:e})=>sH(`clarification_messages`,A.current,()=>a.getClarificationRoundMessages(ue,{signal:e,diagnostics:A.current})),enabled:M&&ue!==void 0}),fe=ce.data??N.data?.snapshots.active_approval??{state:`none`},pe=ie.data?.artifact,me=pe?.status===`declared`;(0,I.useEffect)(()=>{if(!(!M||!me))return tH({renew:()=>a.renewArtifactPreviewLease({diagnostics:A.current}),onInitialRenewed:()=>{ie.refetch()}})},[me,ie.refetch,a,M]);let he=pe?.status===`declared`&&pe.preview.status===`ready`&&pe.preview.url!==void 0?`${pe.preview_generation}:${pe.preview.url}`:null,ge=R({queryKey:qV.artifactPreviewSession(e,he??`not-ready`),queryFn:()=>sH(`artifact_preview_session`,A.current,()=>a.issueArtifactPreviewSession(void 0,void 0,{diagnostics:A.current})),enabled:M&&u===`artifacts`&&he!==null,staleTime:1/0,retry:1,refetchInterval:e=>zV(e.state.data)}),_e=ge.data,ve=ge.error===null?RV(_e):`${$(ge.error)} Diagnostic ID: ${A.current.diagnosticId}`,ye=BV(_e),be=gt({mutationFn:async()=>{let t=await or(cB,e,{diagnostics:A.current});return GV({origin:window.location.origin,relayProjectRef:e,handoffToken:t.handoff_token})},onSuccess:e=>{KV(e)?C(void 0):(C(e),s.notify({tone:`warning`,title:`Browser handoff ready`,message:`Click Open in browser again to continue in your system browser.`}))},onError:e=>{s.notify({tone:`error`,title:`Browser handoff failed`,message:`${$(e)} Diagnostic ID: ${A.current.diagnosticId}`})}});(0,I.useEffect)(()=>{_(``)},[ue]);let xe=gt({mutationFn:e=>a.submitWorklist(e===void 0?{}:{expected_scratchpad_updated_at:e},void 0,{diagnostics:A.current}),onMutate:()=>s.notify({tone:`loading`,title:`Running Scratchpad`}),onSuccess:(t,n,r)=>{YV(o,e,t.invalidates);let i=t.disposition.kind===`accepted`;s.update(r,{tone:i?`success`:`warning`,title:i?`Scratchpad run started`:`Scratchpad run not started`,message:t.disposition.kind===`already_running`?`Tutti is already processing work.`:i?`Tutti is preparing Worklist tasks.`:`Refresh the project and review its current status.`})},onError:(e,t,n)=>{s.update(n,{tone:`error`,title:`Scratchpad run failed`,message:`${$(e)} Diagnostic ID: ${A.current.diagnosticId}`})}}),Se=gt({mutationFn:({roundId:e,body:t})=>a.sendClarificationRoundMessage(e,{body:t},void 0,{diagnostics:A.current}),onSuccess:t=>{if(YV(o,e,t.invalidates),t.disposition.kind===`created`){_(``);return}s.notify({tone:`warning`,title:`Reply not sent`,message:`The clarification changed. Review the current request and try again.`})},onError:e=>{s.notify({tone:`error`,title:`Reply send failed`,message:`${$(e)} Diagnostic ID: ${A.current.diagnosticId}`})}}),Ce=gt({mutationFn:e=>a.submitClarificationRound(e,{},void 0,{diagnostics:A.current}),onMutate:()=>s.notify({tone:`loading`,title:`Submitting reply`}),onSuccess:(t,n,r)=>{YV(o,e,t.invalidates);let i=t.disposition.kind===`accepted`,a=t.disposition.kind===`already_submitted`;s.update(r,{tone:i?`success`:a?`info`:`warning`,title:i?`Reply submitted`:a?`Reply already submitted`:`Reply not submitted`,...i||a?{}:{message:`The clarification changed. Review the current request.`}})},onError:(e,t,n)=>{s.update(n,{tone:`error`,title:`Reply submit failed`,message:`${$(e)} Diagnostic ID: ${A.current.diagnosticId}`})}}),we=gt({mutationFn:({approvalId:e,decisionId:t})=>a.decideApproval(e,{decision_id:t},void 0,{diagnostics:A.current}),onMutate:()=>s.notify({tone:`loading`,title:`Sending decision`}),onSuccess:(t,n,r)=>{YV(o,e,t.invalidates);let i=t.disposition.kind===`accepted`;s.update(r,{tone:i?`success`:`warning`,title:i?`Decision sent`:`Decision not applied`,...i?{}:{message:`The approval changed. Review its current state.`}})},onError:(e,t,n)=>{s.update(n,{tone:`error`,title:`Decision failed`,message:`${$(e)} Diagnostic ID: ${A.current.diagnosticId}`})}}),Te=ne.data;(0,I.useEffect)(()=>{if(Te===void 0)return;let e=Ti(Te);p(t=>t!==void 0&&e.some(e=>e.id===t)?t:FB(Te,void 0))},[Te]);let Ee=R({queryKey:qV.taskDetail(e,f??`none`),queryFn:({signal:e})=>sH(`task_detail`,A.current,()=>a.getTaskDetail(f,{signal:e,diagnostics:A.current})),enabled:M&&f!==void 0}),De=R({queryKey:qV.taskRunResults(e,f??`none`),queryFn:({signal:e})=>sH(`task_run_results`,A.current,()=>a.getTaskRunResults(f,{limit:5},{signal:e,diagnostics:A.current})),enabled:M&&f!==void 0}),Oe=ae.data?.items??[];(0,I.useEffect)(()=>{if(Oe.length===0){h(void 0);return}h(e=>e!==void 0&&Oe.some(t=>t.path===e)?e:Oe[0]?.path)},[Oe]);let ke=Oe.find(e=>e.path===m),Ae=ke?.category===`image`,je=ke?.text_read.can_read===!0,Me=R({queryKey:qV.viewerFile(e,m??`none`),queryFn:({signal:e})=>sH(`viewer_file`,A.current,()=>a.getViewerFile({path:m},{signal:e,diagnostics:A.current})),enabled:M&&m!==void 0&&je&&!Ae}),Ne=N.data!==void 0&&F.data!==void 0&&ne.data!==void 0&&re.data!==void 0&&se.data!==void 0&&ce.data!==void 0&&(ue===void 0||de.data!==void 0),Pe=()=>{if(v)return;D.current?.abort();let e=new AbortController;D.current=e;let t=wV();A.current=t,n(t),y(!0),x(void 0),(async()=>{try{if(await j(e.signal,t),e.signal.aborted)return;l({kind:`ready`});let n=ie.refetch({throwOnError:!0});await Promise.all([N.refetch({throwOnError:!0}),F.refetch({throwOnError:!0}),ne.refetch({throwOnError:!0}),re.refetch({throwOnError:!0}),n,ae.refetch({throwOnError:!0}),se.refetch({throwOnError:!0}),ce.refetch({throwOnError:!0}),...ue===void 0?[]:[de.refetch({throwOnError:!0})],...f===void 0?[]:[Ee.refetch({throwOnError:!0}),De.refetch({throwOnError:!0})],...m===void 0||!je||Ae?[]:[Me.refetch({throwOnError:!0})]]);let r=(await n).data?.artifact,i=r?.status===`declared`&&r.preview.status===`ready`&&r.preview.url!==void 0?`${r.preview_generation}:${r.preview.url}`:null;u===`artifacts`&&he!==null&&i===he&&await ge.refetch({throwOnError:!0})}catch(n){if(e.signal.aborted)return;let r=MV(n,t);Ne?x(r):l({kind:`error`,...r})}finally{e.signal.aborted||(D.current=null,y(!1))}})()},Fe=e=>{p(e),d(`work`)},Ie=e=>{h(e),d(`references`)},Le=N.data?.workspace.project.display_name??null,Re;if(N.data===void 0||F.data===void 0||ne.data===void 0||re.data===void 0||se.data===void 0||ce.data===void 0||ue!==void 0&&de.data===void 0){let e=N.error??F.error??ne.error??re.error??se.error??ce.error??de.error;Re=c.kind===`error`?c:e===null?{kind:`loading`}:{kind:`error`,...MV(e,t)}}else{let e=N.data,t=F.data,n=ne.data,r=re.data,i=b??(c.kind===`error`?c:void 0),o=wi(n,f),s=Fi(Ee.data,De.data,{includeRetryAction:!1}),l=f===void 0?void 0:Ee.error!==null||De.error!==null?{title:`Task details unavailable`,description:`Refresh this project and try again.`}:s===void 0?{title:`Loading task details`,description:`Reading the latest task contract and Run results.`}:void 0,d=Oe.map(e=>sV(e,{selected:e.path===m,...e.category!==`image`||e.blob_oid===void 0?{}:{thumbnailUrl:a.viewerAssetUrl({path:e.path,variant:`thumbnail`,v:e.blob_oid})}})),p=(()=>{if(ke===void 0)return;let e={title:ke.name,meta:IB(ke.size_bytes),...rV(ke)};if(Ae)return ke.blob_oid===void 0?{...e,unavailableReason:`Image version unavailable`}:{...e,imageUrl:a.viewerAssetUrl({path:ke.path,variant:`preview`,v:ke.blob_oid})};if(!je)return{...e,unavailableReason:LB(ke.text_read.blocked_reason)};if(Me.error!==null){let t=MV(Me.error,A.current);return{...e,unavailableReason:`Preview unavailable. Diagnostic ID: ${t.diagnosticId}`}}if(Me.data?.content.kind===`text`)return{...e,content:Me.data.content.text};let t=RB(Me.data?.content);return{...e,unavailableReason:t??`Loading`}})(),h=ae.data===void 0?ae.error===null?{kind:`loading`}:{kind:`error`,...MV(ae.error,A.current)}:{kind:`ready`,files:d,...p===void 0?{}:{detail:p}},_=r.active_activity?.activity_kind===`run`||r.active_activities?.some(e=>e.activity_kind===`run`)===!0,y=$r(pe,{...ye===void 0?{}:{previewUrl:ye},pending:he!==null&&ye===void 0&&ve===void 0,...ve===void 0?{}:{errorMessage:ve}},{runActive:_}),x=pe===void 0&&ie.error!==null?`${$(ie.error)} Diagnostic ID: ${A.current.diagnosticId}`:void 0;Re={kind:`ready`,projectName:e.workspace.project.display_name,accountName:e.session.account.display_name,membershipLabel:e.session.membership.label,hostVersion:e.workspace.server.version,activeTab:u,refreshing:v,...i===void 0?{}:{refreshMessage:i},projectStatus:Wr(r,le,fe),scratchpad:Ci(t),activeClarification:ci(le),clarificationMessages:(de.data?.items??[]).map(e=>si(e)),roundDraft:g,activeApproval:fi(fe),worklist:{modules:o.modules,taskCount:o.taskCount,...s===void 0?{}:{detail:s},...l===void 0?{}:{detailPlaceholder:l}},references:h,artifacts:y,...x===void 0?{}:{artifactError:x}}}return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:{kind:`feishu_project`,relayProjectRef:e},projectDisplayName:Le}),(0,L.jsx)(ew,{state:Re,documentConnections:oe,onRetry:Pe,onBrandClick:()=>window.location.reload(),onSelectTab:e=>{C(void 0),d(e)},onSelectTask:Fe,onSelectReference:Ie,onOpenInBrowser:()=>{if(!be.isPending){if(he===null){s.notify({tone:`warning`,title:`Artifact preview is not ready`,message:`Open it after the current Artifact preview becomes available.`});return}C(void 0),be.mutate()}},...S===void 0?{}:{browserOpenUrl:S,onBrowserOpenLinkClick:()=>C(void 0)},onSubmitScratchpad:()=>xe.mutate(F.data?.updated_at),onRoundDraftChange:_,onSendRoundMessage:()=>{ue!==void 0&&g.trim()!==``&&Se.mutate({roundId:ue,body:g.trim()})},onSubmitRound:()=>{ue!==void 0&&Ce.mutate(ue)},onDecideApproval:(e,t)=>we.mutate({approvalId:e,decisionId:t}),scratchpadSubmitPending:xe.isPending,roundSendPending:Se.isPending,roundSubmitPending:Ce.isPending,approvalDecisionPending:we.isPending,browserOpenPending:be.isPending})]})}var uH=class extends I.Component{state={};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(){}render(){return this.state.error===void 0?this.props.children:this.props.artifactPresentation===!0?(0,L.jsx)(`main`,{role:`status`,children:`Artifact preview is unavailable.`}):(0,L.jsx)(ew,{state:{kind:`error`,...MV(new SV(`browser_runtime`,this.state.error,this.props.diagnostics),this.props.diagnostics)},onRetry:()=>window.location.reload(),onBrandClick:()=>window.location.reload(),onSelectTab:()=>void 0,onSelectTask:()=>void 0,onSelectReference:()=>void 0})}};function dH(e){let t=new URLSearchParams(e).getAll(`view`);return t.length===1&&(t[0]===`work`||t[0]===`references`||t[0]===`artifacts`)?t[0]:`project`}function fH(e){let t=new URLSearchParams(e).getAll(`authorize`);return t.length===1&&t[0]===`docx`}function pH({relayProjectRef:e}){let[t,n]=(0,I.useState)(wV),r=(0,I.useMemo)(()=>UV(window.location),[]),i=(0,I.useMemo)(()=>dH(window.location.search),[]),a=(0,I.useMemo)(()=>fH(window.location.search),[]);return(0,I.useEffect)(()=>{r.shouldClearFragment&&WV(window.location,window.history)},[r.shouldClearFragment]),(0,L.jsx)(uH,{diagnostics:t,artifactPresentation:r.systemBrowser,children:r.systemBrowser?(0,L.jsx)(cH,{browserEntry:r,diagnostics:t,relayProjectRef:e}):(0,L.jsx)(lH,{diagnostics:t,initialTab:i,authorizeDocument:a,relayProjectRef:e,onDiagnosticsChange:n})})}function mH(){Q(`/projects`,{replace:!0})}function hH(){let e=R({queryKey:Z.me,queryFn:()=>fr(cB)}),t=HB(mH);return(0,I.useEffect)(()=>{e.data!==void 0&&mH()},[e.data]),e.isLoading||e.data!==void 0?null:(0,L.jsx)(lw,{...t,onBrandClick:()=>Q(`/`),sessionError:e.error===null||Yt(e.error)?null:`Tutti could not check your current session. You can still try signing in.`})}var gH=`/account/local-console`,_H=/^[A-Za-z0-9_-]{32,128}$/u;function vH(e){return _H.test(e)}function yH(e){if(!/^[1-9]\d{0,4}$/u.test(e))return null;let t=Number(e);return Number.isInteger(t)&&t<=65535?t:null}function bH(e){if(!vH(e.accessToken))throw Error(`Local Console account continuation token is invalid.`);let t=new URL(e.localOrigin),n=yH(t.port);if(t.protocol!==`http:`||t.hostname!==`127.0.0.1`||n===null)throw Error(`Local Console account continuation requires an exact loopback origin.`);let r=new URL(gH,e.webBaseUrl);return r.search=``,r.hash=new URLSearchParams({access_token:e.accessToken,local_port:String(n),...e.intent===`sign_out`?{intent:`sign_out`}:{}}).toString(),r.toString()}function xH(e){let t=e.startsWith(`#`)?e.slice(1):e,n=new URLSearchParams(t),r=n.getAll(`intent`),i=r.length===0?`authenticate`:r[0];if(n.size!==2&&n.size!==3||n.getAll(`access_token`).length!==1||n.getAll(`local_port`).length!==1||r.length>1||n.size===3&&r.length!==1||n.size===2&&r.length!==0||i!==`authenticate`&&i!==`sign_out`)return null;let a=n.get(`access_token`)??``,o=yH(n.get(`local_port`)??``);return!vH(a)||o===null?null:{accessToken:a,localPort:o,intent:i}}function SH(e,t){let n=t.trim();if(n===``||n.length>80)throw Error(`Local Console account display name is invalid.`);let r=new URL(`http://127.0.0.1:${e.localPort}/console`);return r.hash=new URLSearchParams({access_token:e.accessToken,account_display_name:n}).toString(),r.toString()}function CH(e){let t=e.startsWith(`#`)?e.slice(1):e,n=new URLSearchParams(t);if(n.size!==1&&n.size!==2||n.getAll(`access_token`).length!==1||n.getAll(`account_display_name`).length>1||n.size===2&&n.getAll(`account_display_name`).length!==1)return null;let r=n.get(`access_token`)??``,i=n.get(`account_display_name`)?.trim();return!vH(r)||i!==void 0&&(i===``||i.length>80)?null:{accessToken:r,...i===void 0?{}:{accountDisplayName:i}}}function wH(e){let t=e.trim().replace(/[\\/]+$/u,``);return t===``?``:t.slice(Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`))+1)}function TH(e=``){return{workspacePath:e,displayName:wH(e),description:``,baseUrl:``,apiKey:``,model:``,surface:`standalone`}}function EH(e,t,n){return{...e,workspacePath:t,...n?{}:{displayName:wH(t)}}}function DH(e){switch(e){case`console_busy`:return`Wait for the current Local Console action to finish.`;case`host_busy`:return`Wait for active project work or questions to finish.`;case`host_identity_unverified`:return`Stop or reopen the affected project before updating.`;case`update_in_progress`:return`Another Tutti update is already in progress.`;case`update_recovery_required`:return`Run tutti again after closing this page to recover the interrupted update.`;case`global_prefix_read_only`:return`Use your normal terminal installation environment to update Tutti.`;case`npm_install_failed`:return`The npm installation failed. Refresh to check whether it can be retried.`;case`post_install_validation_failed`:return`The installed package could not be verified. Run tutti again to recover.`;case`completion_start_failed`:case`completion_failed`:case`worker_crashed`:return`The update was interrupted. Run tutti again to recover.`;case`host_restore_failed`:return`Tutti updated, but one or more local projects could not restart.`;case`installation_not_global`:case`custom_home`:case`npm_unavailable`:case`npm_global_root_mismatch`:case`npm_version_unsupported`:case`registry_unavailable`:case void 0:return`Tutti cannot update from this Local Console.`}}function OH(e){if(e.status!==`updating`)return e.status===`blocked`||e.status===`failed`?DH(e.reason_code):void 0;switch(e.phase){case`stopping_hosts`:return`Safely stopping online projects.`;case`installing`:return`Installing the new Tutti version.`;case`restarting`:return`Restarting local projects.`;case`preparing`:case void 0:return`Preparing the update.`}}function kH(e){let t=e.update;if(t===null||t.status===`up_to_date`||t.latest_version===void 0&&t.status!==`updating`&&t.status!==`failed`)return;let n=e.checking&&t.status===`ready`?`Checking update readiness.`:OH(t);return{label:t.status===`updating`?`Updating…`:`Restart and Update`,disabled:t.status!==`ready`||!t.can_update||e.checking||e.starting,...n===void 0?{}:{description:n}}}function AH(e,t){let n=e.replace(/\s+/g,` `).trim();return n.length===0?t:n}function jH({inviterName:e,projectName:t,joinUrl:n}){return`${AH(e,`A teammate`)} invited you to join the Tutti project “${AH(t,`Untitled project`)}”.\n\nOpen the invitation link:\n${n.trim()}`}var MH=TH();function NH(e,t){let n={projectId:e.project_id,projectName:e.display_name};return t.state===`connected`?{...n,state:`connected`}:t.state===`account_handoff_required`?{...n,state:`account_handoff_required`}:t.visibility===`visible_once`?{...n,state:`pairing_required`,command:t.command}:{...n,state:`not_recoverable`}}function PH(){return sB}function FH(){window.history.replaceState(null,``,`${window.location.pathname}${window.location.search}`)}function IH(){let e=window.open(`about:blank`,`_blank`);return e!==null&&(e.opener=null),e}function LH(){let e=rB(),t=(0,I.useRef)(void 0),n=(0,I.useRef)(void 0),r=(0,I.useRef)(!1),i=(0,I.useRef)(null),a=(0,I.useRef)(!1),o=(0,I.useRef)(0),s=(0,I.useRef)(null),c=(0,I.useRef)(!1),l=(0,I.useMemo)(()=>Wn({baseUrl:window.location.origin,csrfToken:()=>t.current,contextToken:()=>n.current}),[]),[u,d]=(0,I.useState)(null),[f,p]=(0,I.useState)(null),[m,h]=(0,I.useState)(MH),g=(0,I.useRef)(!1),_=(0,I.useRef)({baseUrl:``,apiKey:``}),[v,y]=(0,I.useState)([]),[b,x]=(0,I.useState)(!1),[S,C]=(0,I.useState)(`folder`),[w,T]=(0,I.useState)([]),[E,ee]=(0,I.useState)(!0),[D,O]=(0,I.useState)(!1),[k,A]=(0,I.useState)(!1),[te,j]=(0,I.useState)(null),[M,N]=(0,I.useState)(null),[P,F]=(0,I.useState)(!1),[ne,re]=(0,I.useState)(!1),[ie,ae]=(0,I.useState)(!1),[oe,se]=(0,I.useState)(null);async function ce(){if(t.current!==void 0){ee(!0);try{T((await l.getProjects()).projects)}catch(t){e.notify({tone:`error`,title:`Projects unavailable`,message:$(t)})}finally{ee(!1)}}}async function le(e={}){i.current?.abort();let t=new AbortController;i.current=t,F(!0);try{N(await l.getPackageUpdate({refresh:e.refresh===!0,signal:t.signal}))}catch{}finally{i.current===t&&(i.current=null,F(!1))}}(0,I.useEffect)(()=>{r.current||(r.current=!0,(async()=>{try{let e=CH(window.location.hash);if(e!==null){FH();let r=await l.exchangeSession(e.accessToken,e.accountDisplayName);t.current=r.csrf_token,n.current=r.context_token}let r=await l.getBootstrap();if(t.current=r.csrf_token,r.account_gate?.status===`required`){let e=await l.createAccountContinuation();window.location.replace(bH({accessToken:e.access_token,localOrigin:window.location.origin,webBaseUrl:PH()}));return}d(r),p(null),await Promise.all([ce(),le()])}catch(e){ee(!1),p($(e))}})())},[l]),(0,I.useEffect)(()=>()=>{i.current?.abort()},[]),(0,I.useEffect)(()=>{if(u===null)return;let e=window.setInterval(()=>{l.heartbeat().catch(()=>void 0)},6e4);return()=>window.clearInterval(e)},[u,l]),(0,I.useEffect)(()=>{if(u===null||M?.latest_version===void 0||M.status===`up_to_date`||M.status===`failed`)return;let e=window.setInterval(()=>void le(),M.status===`updating`?2e3:15e3);return()=>window.clearInterval(e)},[u,M?.latest_version,M?.status]),(0,I.useEffect)(()=>{let t=u?.package_update_completion;t===void 0||c.current||(c.current=!0,e.notify(t.restart_failure_count===0?{tone:`success`,title:`Tutti updated to ${t.target_version}`}:{tone:`warning`,title:`Tutti updated to ${t.target_version}`,message:`${t.restart_failure_count} local project${t.restart_failure_count===1?``:`s`} could not restart.`}))},[u,e]),(0,I.useEffect)(()=>{if(M?.status!==`failed`)return;let t=M.reason_code??`update_failed`;s.current!==t&&(s.current=t,e.notify({tone:`error`,title:`Tutti update did not complete`,message:DH(M.reason_code)}))},[e,M]);async function ue(){try{let t=await l.pickFolder();t.kind===`selected`?Se({workspacePath:t.path}):t.kind===`unavailable`&&e.notify({tone:`info`,title:`Use a folder path`,message:t.message})}catch(t){e.notify({tone:`error`,title:`Folder picker unavailable`,message:$(t)})}}async function de(){let t={baseUrl:m.baseUrl.trim(),apiKey:m.apiKey.trim()},n=()=>_.current.baseUrl.trim()===t.baseUrl&&_.current.apiKey.trim()===t.apiKey;O(!0);try{let r=await l.discoverModels({base_url:t.baseUrl,api_key:t.apiKey});if(!n())return;r.kind===`ok`?(y(r.models),h(e=>({...e,model:``})),C(`model`)):(y([]),e.notify({tone:`error`,title:`Provider check failed`,message:r.reason===`model_list_empty`?`The endpoint did not return any available models.`:`Check the Base URL and API key, then try again.`}))}catch(t){if(!n())return;y([]),e.notify({tone:`error`,title:`Provider check failed`,message:$(t)})}finally{O(!1)}}async function fe(){A(!0);try{let e=await l.launchProject({workspace_path:m.workspacePath.trim(),surface:m.surface,project:{display_name:m.displayName.trim(),...m.description.trim()===``?{}:{description:m.description.trim()}},provider:{base_url:m.baseUrl.trim(),api_key:m.apiKey.trim(),model:m.model.trim()}});Ce(),e.join_url===void 0?(await ce(),me(e.project,e.feishu_setup)):window.location.assign(e.join_url)}catch(t){e.notify({tone:`error`,title:`Launch failed`,message:$(t)})}finally{A(!1)}}async function pe(t){j(t.project_id);try{let n=await l.launchProject({workspace_path:t.workspace_path});await ce(),t.surface_profile.kind===`feishu`?me(n.project,n.feishu_setup):e.notify({tone:`success`,title:`${t.display_name} is ready`})}catch(t){let n=t instanceof Gt&&t.code===`provider_configuration_required`;e.notify({tone:n?`warning`:`error`,title:n?`Provider required`:`Launch failed`,message:n?`Use New project with this folder to update its Provider configuration.`:$(t)})}finally{j(null)}}function me(e,t){let n=++o.current;if(t!==void 0){se(NH(e,t));return}se({projectId:e.project_id,projectName:e.display_name,state:`loading`}),l.getFeishuSetup(e.project_id).then(t=>{o.current===n&&se(NH(e,t))}).catch(t=>{o.current===n&&se({projectId:e.project_id,projectName:e.display_name,state:`unavailable`,unavailableMessage:$(t)})})}function he(e){e||(o.current+=1,se(null))}async function ge(t){try{await navigator.clipboard.writeText(t),e.notify({tone:`success`,title:`Connection command copied`})}catch{e.notify({tone:`error`,title:`Could not copy connection command`})}}async function _e(t){j(t.project_id);try{let n=await l.refreshInvite(t.project_id);await navigator.clipboard.writeText(jH({inviterName:``,projectName:t.display_name,joinUrl:n.join_url})),e.notify({tone:`success`,title:`Invitation copied`})}catch(t){e.notify({tone:`error`,title:`Invite unavailable`,message:$(t)})}finally{j(null)}}async function ve(t){if(t.open_url===void 0)return;let n=IH();j(t.project_id);try{let r=await l.openProject(t.project_id);T(e=>e.map(e=>e.project_id===r.project.project_id?r.project:e)),n===null?window.location.assign(r.handoff.url):n.location.replace(r.handoff.url),r.host_update===`updated`?e.notify({tone:`success`,title:`${t.display_name} updated`}):r.host_update===`deferred_busy`?e.notify({tone:`info`,title:`Opened without updating`,message:`Try Open again after the current project activity finishes.`}):r.host_update===`deferred_unsupported`?e.notify({tone:`info`,title:`Opened with the current Host`,message:`Stop and Resume this project once to enable safe automatic updates.`}):r.host_update===`deferred_unavailable`&&e.notify({tone:`warning`,title:`Update deferred`,message:`The current Host could not be safely restarted, so the project opened as-is.`})}catch(t){n?.close(),e.notify({tone:`error`,title:`Open failed`,message:$(t)})}finally{j(null)}}async function ye(t){j(t.project_id);try{await l.stopProject(t.project_id),oe?.projectId===t.project_id&&he(!1),await Promise.all([ce(),le()]),e.notify({tone:`success`,title:`${t.display_name} stopped`})}catch(t){e.notify({tone:`error`,title:`Stop failed`,message:$(t)})}finally{j(null)}}async function be(){if(!(a.current||M?.status!==`ready`||!M.can_update)){a.current=!0,re(!0);try{N(await l.startPackageUpdate())}catch(t){t instanceof Gt&&t.statusCode===0?N({...M,status:`updating`,can_update:!1,phase:`preparing`}):(e.notify({tone:`error`,title:`Update not started`,message:$(t)}),await le())}finally{a.current=!1,re(!1)}}}async function xe(){if(!ie){ae(!0);try{let e=await l.createAccountContinuation();window.location.replace(bH({accessToken:e.access_token,localOrigin:window.location.origin,webBaseUrl:PH(),intent:`sign_out`}))}catch(t){ae(!1),e.notify({tone:`error`,title:`Sign out failed`,message:$(t)})}}}function Se(e){e.displayName!==void 0&&(g.current=!0);let t=e.baseUrl!==void 0&&e.baseUrl!==m.baseUrl||e.apiKey!==void 0&&e.apiKey!==m.apiKey;t&&(y([]),_.current={baseUrl:e.baseUrl??m.baseUrl,apiKey:e.apiKey??m.apiKey}),h(n=>({...e.workspacePath===void 0?n:EH(n,e.workspacePath,g.current),...e,...t?{model:``}:{}}))}function Ce(){x(!1),C(`folder`),y([]),_.current={baseUrl:``,apiKey:``},g.current=!1,h(TH())}function we(e){if(!e){!D&&!k&&Ce();return}let t=u?.invocation.source===`terminal`?u.invocation.current_directory:``;g.current=!1,_.current={baseUrl:``,apiKey:``},y([]),h(TH(t)),C(`folder`),x(!0)}function Te(e){if(e.preventDefault(),S===`folder`){C(`details`);return}if(S===`details`){C(`provider`);return}if(S===`provider`){de();return}if(S===`model`){C(`surface`);return}fe()}function Ee(){C(e=>{switch(e){case`folder`:return`folder`;case`details`:return`folder`;case`provider`:return`details`;case`model`:return`provider`;case`surface`:return`model`}})}let De=kH({update:M,checking:P,starting:ne});return(0,L.jsx)(cw,{...u===null?{}:{version:u.version},accountName:u?.account_gate?.status===`ready`?u.account_gate.account?.display_name??`Signed in`:`Signed in`,projectCenterHref:new URL(`/projects`,sB).toString(),form:m,models:v,projects:w,projectsLoading:E,sessionLoading:u===null&&f===null,sessionError:f,createOpen:b,createStep:S,modelDiscoveryPending:D,launchPending:k,projectActionPending:te,signOutPending:ie,feishuConnection:oe,...De===void 0?{}:{packageUpdateAction:De},onChange:Se,onCreateOpenChange:we,onCreateSubmit:Te,onCreateBack:Ee,onChooseFolder:()=>void ue(),onRefresh:()=>void Promise.all([ce(),le({refresh:!0})]),onLaunchExisting:e=>void pe(e),onOpenProject:e=>void ve(e),onCopyInvite:e=>void _e(e),onConnectFeishu:e=>me(e),onFeishuConnectionOpenChange:he,onCopyFeishuCommand:e=>void ge(e),onStopProject:e=>void ye(e),onPackageUpdate:()=>void be(),onSignOut:()=>void xe()})}function RH(){return(0,I.useEffect)(()=>Q(`/projects`,{replace:!0}),[]),null}function zH({continuation:e}){let t=rB(),n=et(),r=(0,I.useRef)(!1),[i,a]=(0,I.useState)(e.intent!==`sign_out`),o=(0,I.useCallback)(async n=>{if(!r.current){r.current=!0;try{await hr(cB,e.accessToken),window.location.replace(SH(e,n))}catch{t.notify({tone:`error`,title:`Local Console sign-in failed`,message:`Tutti could not create the private account handoff. Please try again.`}),Q(`/projects`,{replace:!0})}}},[e,t]),s=R({queryKey:Z.me,queryFn:()=>fr(cB),enabled:i}),c=HB(),l=UB();if((0,I.useEffect)(()=>{if(e.intent!==`sign_out`)return;let r=!1;return yr(cB).then(()=>{r||(n.removeQueries({queryKey:Z.me}),a(!0))}).catch(()=>{r||(t.notify({tone:`error`,title:`Sign out failed`}),Q(`/projects`,{replace:!0}))}),()=>{r=!0}},[e.intent,t,n]),(0,I.useEffect)(()=>{let e=s.data?.account;e?.profile_complete===!0&&o(e.display_name)},[s.data?.account,o]),!i||s.isLoading||s.data?.account.profile_complete===!0)return null;let u=s.data?.account.profile_complete===!1?l:c,d=s.error===null||Yt(s.error)?null:`Tutti could not check your current session. You can still try signing in.`;return(0,L.jsx)(UC,{...u,error:u.error??d,onBrandClick:()=>Q(`/`)})}function BH(){let e=xH(window.location.hash);return e===null?(0,L.jsx)(RH,{}):(0,L.jsx)(zH,{continuation:e})}var VH=/^[A-Za-z0-9_-]{8,256}$/u,HH=/https?:\/\/[^\s<>"'`“”‘’]+/giu,UH=/(?:^|[\s("'“‘])((?:\/)?join\/[A-Za-z0-9_-]{8,256})(?=$|[\s?#.,;:!'"”’)\]}])/giu,WH=/[.,;:!?)}\]]+$/u;function GH(e){let t;try{t=decodeURIComponent(e)}catch{return null}return VH.test(t)?t:null}function KH(e){let t=e.split(`/`).filter(Boolean);return t.length!==2||t[0]!==`join`?null:GH(t[1]??``)}function qH(e,t){let n=KH(t);n!==null&&e.add(`/join/${encodeURIComponent(n)}`)}function JH(e,t){try{qH(e,new URL(t.replace(WH,``)).pathname)}catch{}}function YH(e){let t=e.trim();if(t===``)return{kind:`empty`};let n=new Set;for(let e of t.matchAll(HH))JH(n,e[0]);for(let e of t.matchAll(UH)){let t=e[1];if(t!==void 0)try{qH(n,new URL(t,`https://tutti.invalid`).pathname)}catch{}}let r=GH(t);return r!==null&&n.add(`/join/${encodeURIComponent(r)}`),n.size===0?{kind:`invalid`}:n.size>1?{kind:`ambiguous`}:{kind:`matched`,route:[...n][0]}}function XH(e){return Jt(e,`project_membership_required`)?{tone:`warning`,title:`Join this project first`,message:`This account has not joined the project. Open its invitation link, or return to Local Console and copy a new invite.`}:{tone:`error`,title:`Project open failed`,message:$(e)}}var ZH=`tutti://projects`,QH=3e4,$H=/^[A-Za-z0-9_-]+$/u,eU=/^[A-Za-z0-9_-]{43}$/u,tU=class extends Error{reason;constructor(e){super(`Tutti could not complete the desktop entry continuation.`),this.name=`DesktopEntryContinuationError`,this.reason=e}};function nU(e){let t=``;for(let n of e)t+=String.fromCharCode(n);return btoa(t).replaceAll(`+`,`-`).replaceAll(`/`,`_`).replace(/=+$/u,``)}function rU(e,t){if(!$H.test(e))throw new tU(`invalid`);let n=`=`.repeat((4-e.length%4)%4),r;try{r=atob(e.replaceAll(`-`,`+`).replaceAll(`_`,`/`)+n)}catch{throw new tU(`invalid`)}let i=new Uint8Array(r.length);for(let e=0;e<r.length;e+=1)i[e]=r.charCodeAt(e);if(t!==void 0&&i.length!==t||nU(i)!==e)throw new tU(`invalid`);return i}function iU(e){return typeof e==`string`&&Rt(e,Pt.relayDesktopEntryContinuation)}function aU(e){return typeof e==`string`&&e.length===43&&$H.test(e)}function oU(e=globalThis.crypto){let t=new Uint8Array(32);e.getRandomValues(t);let n=nU(t);if(n.length!==43)throw new tU(`invalid`);return n}function sU(e){if(!iU(e.continuationRef)||!aU(e.completionToken)||e.payloadKey.length!==43)throw new tU(`invalid`);return rU(e.payloadKey,32),`${ZH}?${new URLSearchParams({continuation:e.continuationRef,completion_token:e.completionToken,payload_key:e.payloadKey}).toString()}`}function cU(e,t={}){let n=Date.parse(e.expires_at);if(!Number.isFinite(n)||n<=(t.nowMs??Date.now())||!iU(e.continuation_ref))throw new tU(`invalid`);let r=oU(t.cryptoImpl);return{continuationRef:e.continuation_ref,payloadKey:r,href:sU({continuationRef:e.continuation_ref,completionToken:e.completion_token,payloadKey:r}),expiresAtMs:n}}function lU(e){if(typeof e!=`object`||!e)throw new tU(`invalid`);let t=e,n=t.iv,r=t.ciphertext;if(typeof n!=`string`||typeof r!=`string`||n.length!==16||r.length<24||r.length>4096)throw new tU(`invalid`);return{iv:rU(n,12),ciphertext:rU(r)}}function uU(e){let t;try{t=new URL(e)}catch{throw new tU(`invalid`)}let n=t.port,r=Number(n);if(t.protocol!==`http:`||t.hostname!==`127.0.0.1`||!/^[1-9]\d{0,4}$/u.test(n)||!Number.isInteger(r)||r>65535||t.pathname!==`/console`||t.search!==``||t.username!==``||t.password!==``||t.hash===``)throw new tU(`invalid`);let i=t.hash.slice(1),a=new URLSearchParams(i),o=a.get(`access_token`)??``;if(a.size!==1||a.getAll(`access_token`).length!==1||!eU.test(o)||i!==new URLSearchParams({access_token:o}).toString())throw new tU(`invalid`);return t.toString()}async function dU(e,t,n=globalThis.crypto){let r=rU(t,32),i=lU(e);try{let e=await n.subtle.importKey(`raw`,r,`AES-GCM`,!1,[`decrypt`]),t=await n.subtle.decrypt({name:`AES-GCM`,iv:i.iv},e,i.ciphertext);return uU(new TextDecoder(`utf-8`,{fatal:!0}).decode(t))}catch(e){throw e instanceof tU?e:new tU(`invalid`)}}function fU(e){let t=typeof e==`string`?Date.parse(e):NaN;if(!Number.isFinite(t))throw new tU(`invalid`);return t}function pU(e,t){return new Promise((n,r)=>{if(t.aborted){r(new tU(`aborted`));return}let i=()=>{globalThis.clearTimeout(a),r(new tU(`aborted`))},a=globalThis.setTimeout(()=>{t.removeEventListener(`abort`,i),n()},e);t.addEventListener(`abort`,i,{once:!0})})}async function mU(e){let t=e.nowMs??Date.now,n=e.wait??pU,r=t()+(e.timeoutMs??2e4);for(;!e.signal.aborted&&t()<r;){let i;try{i=await e.read(e.prepared.continuationRef,e.signal)}catch(i){if(e.signal.aborted)throw new tU(`aborted`);if(i instanceof Gt&&!i.retryable)throw new tU(`unavailable`);let a=r-t();if(a<=0)break;await n(Math.min(e.pollIntervalMs??500,a),e.signal);continue}if(typeof i!=`object`||!i)throw new tU(`invalid`);let a=i;if(!iU(a.continuation_ref)||a.continuation_ref!==e.prepared.continuationRef)throw new tU(`invalid`);let o=fU(a.expires_at);if(o<=t())throw new tU(`expired`);if(a.status===`ready`)return dU(a.sealed_payload,e.prepared.payloadKey,e.cryptoImpl);if(a.status!==`pending`)throw new tU(`invalid`);let s=Math.min(r,o)-t();if(s<=0)break;await n(Math.min(e.pollIntervalMs??500,s),e.signal)}throw e.signal.aborted?new tU(`aborted`):new tU(`timeout`)}function hU(e){let[t,n]=(0,I.useState)(0),[r,i]=(0,I.useState)(null),[a,o]=(0,I.useState)(!1),[s,c]=(0,I.useState)(`opening`),l=(0,I.useRef)(null),u=(0,I.useRef)(null),d=(0,I.useRef)(0),f=(0,I.useRef)(!1),p=(0,I.useCallback)(e=>{l.current=e,i(e)},[]);(0,I.useEffect)(()=>{u.current?.abort(),u.current=null,d.current+=1,f.current=!1,p(null),o(!1),c(`opening`)},[e,p]),(0,I.useEffect)(()=>{if(e===null)return;let t=l.current?.continuationRef??null,n=null,r=!1,i=window.setTimeout(()=>{n=new AbortController,pr(cB,{signal:n.signal}).then(t=>{r||p({accountRef:e,...cU(t)})}).catch(()=>{!r&&t!==null&&l.current?.continuationRef===t&&p(null)})},0);return()=>{r=!0,window.clearTimeout(i),n?.abort()}},[e,t,p]),(0,I.useEffect)(()=>{if(r===null||r.accountRef!==e)return;let t=r.expiresAtMs-Date.now(),i=t>3e4?t-QH:Math.max(1e3,Math.floor(t/2)),a=window.setTimeout(()=>{l.current?.continuationRef===r.continuationRef&&(p(null),n(e=>e+1))},Math.max(0,i));return()=>window.clearTimeout(a)},[e,r,p]),(0,I.useEffect)(()=>()=>{u.current?.abort()},[]);let m=(0,I.useCallback)(()=>{o(!0),c(`opening`),u.current?.abort();let t=l.current;if(t===null||t.accountRef!==e||t.expiresAtMs<=Date.now()){n(e=>e+1);return}n(e=>e+1);let r=new AbortController;u.current=r;let i=d.current+1;d.current=i,mU({prepared:t,read:(e,t)=>mr(cB,e,{signal:t}),signal:r.signal}).then(e=>{if(!(d.current!==i||r.signal.aborted||f.current)){f.current=!0;try{window.location.replace(e)}catch(e){throw f.current=!1,e}}}).catch(e=>{d.current!==i||r.signal.aborted||e instanceof tU&&e.reason===`aborted`||c(`failed`)}).finally(()=>{u.current===r&&(u.current=null)})},[e,p]),h=(0,I.useCallback)(e=>{o(e),e||(u.current?.abort(),u.current=null,d.current+=1,c(`opening`))},[]),g=(r!==null&&r.accountRef===e?r:null)?.href??`tutti://projects`;return{localScopeHref:g,localHandoffOpen:a,localHandoffStatus:s,localHandoffRetryHref:g,onLocalHandoffOpenChange:h,onLocalScopeSelect:m}}function gU({requestedOpenProjectRef:e}){let t=et(),n=rB(),r=HB(),i=UB(),[a,o]=(0,I.useState)(``),[s,c]=(0,I.useState)(null),[l,u]=(0,I.useState)(!1),d=(0,I.useRef)(null),f=R({queryKey:Z.me,queryFn:()=>fr(cB)}),p=R({queryKey:Z.recentProjects,queryFn:()=>Sr(cB),enabled:f.isSuccess});hB(f.isSuccess);let m=gt({mutationFn:e=>Cr(cB,e),onSuccess:e=>{if(pB(t),e.disposition.kind===`opened`&&e.result?.open_url!==void 0){dB(e.result.open_url);return}n.notify({tone:`warning`,title:`Host is offline`})},onError:e=>{let t=XH(e);n.notify({...t})}}),h=m.mutate;(0,I.useEffect)(()=>{e===void 0||f.data?.account.profile_complete!==!0||d.current===e||(d.current=e,h(e))},[f.data?.account.profile_complete,h,e]);let g=gt({mutationFn:()=>yr(cB),onSuccess:()=>{t.invalidateQueries({queryKey:Z.relayRoot}),t.invalidateQueries({queryKey:Z.me}),t.invalidateQueries({queryKey:Z.recentProjects})},onError:e=>{n.notify({tone:`error`,title:`Sign out failed`,message:$(e)})}}),_=f.data?.account,v=hU(_?.profile_complete===!0?_.account_ref:null),y=f.error!==null&&Yt(f.error)?r:_!==void 0&&!_.profile_complete?i:null;if(y!==null)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:{kind:`home`}}),(0,L.jsx)(UC,{...y,onBrandClick:()=>Q(`/`)})]});let b=(p.data?.projects??[]).map(Gr);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:{kind:`project_center`}}),(0,L.jsx)(uw,{account:_===void 0?null:{displayName:_.display_name},projects:b,loading:f.isLoading||p.isLoading,error:f.error===null?p.error===null?null:$(p.error):$(f.error),openPending:m.isPending,logoutPending:g.isPending,joinLinkForm:{value:a,error:s,onChange:e=>{o(e),c(null)},onSubmit:()=>{let e=YH(a);if(e.kind!==`matched`){c(e.kind===`ambiguous`?`Paste one Tutti invitation at a time.`:`Paste a valid Tutti invitation.`);return}Q(e.route)}},joinOpen:l,localScopeHref:v.localScopeHref,localHandoffOpen:v.localHandoffOpen,localHandoffStatus:v.localHandoffStatus,localHandoffRetryHref:v.localHandoffRetryHref,onJoinOpenChange:e=>{u(e),e||(o(``),c(null))},onLocalHandoffOpenChange:v.onLocalHandoffOpenChange,onLocalScopeSelect:v.onLocalScopeSelect,onCopyLaunchCommand:e=>{navigator.clipboard.writeText(e).then(()=>{n.notify({tone:`success`,title:`Command copied`})}).catch(()=>{n.notify({tone:`error`,title:`Copy failed`,message:`The browser could not copy the launch command.`})})},onBrandClick:()=>Q(`/`),onOpenProject:e=>m.mutate(e),onLogout:()=>g.mutate()})]})}function _U(e){let t=e?.relay;if(t?.join_url_visibility===`visible_once`&&t.join_url!==void 0&&t.join_url.trim()!==``)return t.join_url}function vU(e,t){try{return new URL(e).origin===new URL(t,e).origin}catch{return!1}}function yU(e,t){let n=_U(e);if(n!==void 0)return{kind:`join`,joinUrl:n};let r=e?.relay?.relay_project_ref;return r===void 0?{kind:`unavailable`,message:`Relay project is unavailable`}:vU(t.currentOrigin,t.relayBaseUrl)?{kind:`relay_open`,relayProjectRef:r}:{kind:`unavailable`,message:`Open the latest Join URL printed by tutti launch.`}}var bU=`gpt-5.5`,xU=`/host-local/v1`;function SU(){return new URL(window.location.href).searchParams.get(`token`)?.trim()??``}function CU(e){return{baseUrl:xU,credentials:`same-origin`,headers:{authorization:`Bearer ${e}`}}}function wU(e){return z(CU(e),`/provider/config`)}function TU(e){return z(CU(e),`/launch-status`)}function EU(e){return z(CU(e),`/project`)}function DU(e,t){return z(CU(e),`/project`,{method:`POST`,body:t})}function OU(e,t){return z(CU(e),`/provider/config`,{method:`POST`,body:t})}function kU(e){return e===void 0?`loading`:e.status===`configured`?`configured`:e.status===`invalid`?`invalid`:`not configured`}function AU(e){let t=e instanceof Error&&`code`in e?String(e.code):``;return t.startsWith(`provider_`)?t:$(e)}function jU(){let e=SU(),t=e===``,[n,r]=(0,I.useState)({projectName:``,apiKey:``,baseUrl:``,defaultModel:bU}),[i,a]=(0,I.useState)(null),[o,s]=(0,I.useState)(null),c=(0,I.useRef)(!1),l=R({queryKey:[`host-local`,`provider-config`,e],queryFn:()=>wU(e),enabled:!t}),u=R({queryKey:[`host-local`,`launch-status`,e],queryFn:()=>TU(e),enabled:!t}),d=R({queryKey:[`host-local`,`project`,e],queryFn:()=>EU(e),enabled:!t}),f=u.data,p=gt({mutationFn:e=>Cr(cB,e.relayProjectRef),onSuccess:e=>{if(e.disposition.kind===`opened`&&e.result?.open_url!==void 0){dB(e.result.open_url);return}s(`Host is offline`)},onError:e=>{s($(e))}}),m=gt({mutationFn:async()=>{let t=n.projectName.trim(),r=d.data?.display_name.trim()??``;t!==``&&t!==r&&await DU(e,{display_name:t});let i={api_key:n.apiKey.trim()},a=n.baseUrl.trim(),o=n.defaultModel.trim();return a!==``&&(i.base_url=a),o!==``&&(i.default_model=o),await OU(e,i)},onSuccess:()=>{a(`Provider saved.`),r(e=>({...e,apiKey:``})),d.refetch(),l.refetch(),v()}}),h=l.data;(0,I.useEffect)(()=>{let e=d.data?.display_name;e!==void 0&&r(t=>t.projectName.trim()===``?{...t,projectName:e}:t)},[d.data?.display_name]),(0,I.useEffect)(()=>{t||h?.status!==`configured`||v()},[h?.status,t]);let g=t?`Setup token is missing.`:d.error===null?l.error===null?m.error===null?o:AU(m.error):AU(l.error):AU(d.error);function _(e){e.preventDefault(),a(null),s(null),c.current=!1,!t&&n.apiKey.trim()!==``&&n.projectName.trim()!==``&&m.mutate()}async function v(){if(c.current)return;c.current=!0;let e=yU(f??(await u.refetch()).data,{currentOrigin:window.location.origin,relayBaseUrl:sB});if(e.kind===`join`){window.location.assign(e.joinUrl);return}if(e.kind===`unavailable`){s(e.message);return}p.mutate({relayProjectRef:e.relayProjectRef})}return(0,L.jsx)(fw,{form:n,statusLabel:kU(h),configured:h?.status===`configured`,loading:l.isLoading||d.isLoading,pending:m.isPending,tokenMissing:t,error:g,success:i,openProjectPending:p.isPending,onChange:e=>r(t=>({...t,...e})),onSubmit:_,onRetry:()=>void l.refetch(),onBrandClick:()=>Q(`/`)})}function MU(e){return`${e.created_at}:${e.id}`}function NU(e){return{kind:`initial`,entry:e}}function PU(e,t=50){if(e.kind===`older`)return{before:e.before,limit:t};if(e.kind===`newer`)return{after:e.after,limit:t};switch(e.entry.kind){case`latest`:return{limit:t};case`start`:return{anchor:`start`,limit:t};case`around`:return{around:e.entry.messageId,limit:t}}}function FU(e){let t=e.window.older_cursor;return e.window.has_older&&t!==void 0?{kind:`older`,before:t}:void 0}function IU(e){let t=e.window.newer_cursor;return e.window.has_newer&&t!==void 0?{kind:`newer`,after:t}:void 0}function LU(e,t=50){let n=e[0],r=e.at(-1);if(n===void 0||r===void 0)return{items:[],window:{has_older:!1,has_newer:!1,limit:t}};let i=new Map;for(let t of e)for(let e of t.items)i.set(e.id,e);let a=[...i.values()].sort((e,t)=>MU(e).localeCompare(MU(t))),o={has_older:n.window.has_older,has_newer:r.window.has_newer,limit:n.window.limit};return o.has_older&&n.window.older_cursor!==void 0&&(o.older_cursor=n.window.older_cursor),o.has_newer&&r.window.newer_cursor!==void 0&&(o.newer_cursor=r.window.newer_cursor),{items:a,window:o}}function RU(e){let t=et(),n=rB(),r=gt({mutationFn:t=>e.hostClient.retryTask(t.taskId,{expected_latest_run_result_id:t.runResultId}),onMutate:()=>n.notify({tone:`loading`,title:`Retrying task`}),onSuccess:(r,i,a)=>{if(gB(t,e.relayProjectRef,r.invalidates),r.disposition.kind===`accepted`){n.update(a,{tone:`success`,title:`Task retry started`});return}if(r.disposition.kind===`already_running`||r.disposition.kind===`retry_already_started`){n.update(a,{tone:`info`,title:`Task retry already started`});return}n.update(a,{tone:`warning`,title:`Task retry unavailable`,message:r.disposition.kind===`latest_run_result_changed`?`The task result changed. Review the latest result before retrying.`:r.disposition.kind===`retry_requires_resolution`?`This failure needs to be resolved before it can be retried safely.`:`The task cannot be retried in its current state.`})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Task retry failed`,message:$(e)})}});return{retry:(e,t)=>r.mutate({taskId:e,runResultId:t}),stateFor:(e,t,n)=>r.isPending&&r.variables?.taskId===e&&r.variables.runResultId===t?`retrying`:n}}var zU=5400,BU=1500;function VU(e){let t=e.completionSource;return t?.activityRef??t?.workflowRef??t?.taskId??e.key}function HU(e){switch(e.kind){case`accepted`:case`already_running`:return null;case`scratchpad_empty`:return{label:`Scratchpad is empty. Let it refresh before running.`,tone:`error`};case`stale_scratchpad`:return{label:`Scratchpad changed. Review the latest snapshot and run again.`,tone:`error`};case`provider_not_configured`:return{label:`Provider is not configured yet.`,tone:`error`};case`provider_unavailable`:return{label:`Provider unavailable: ${e.reason}.`,tone:`error`};case`interrupted`:return{label:`Run was interrupted. Try again.`,tone:`error`}}}function UU(e,t){t.displayName.trim()===``||e.has(t.key)||e.set(t.key,t)}function WU(e){if(e.author.kind!==`human`)return null;let t=e.author.display_name?.trim()||`Member`;return{key:e.author.ref===void 0?`message-author:${t.toLocaleLowerCase()}`:e.author.ref,displayName:t,avatar:e.author.avatar??{kind:`initials`,initials:Zr(t),color:`blue`}}}function GU({account:e,presence:t,messages:n=[]}){let r=new Map;e!==void 0&&UU(r,{key:e.account_ref,displayName:e.display_name,avatar:e.avatar});for(let e of t?.sample_members??[])UU(r,{key:e.account_ref,displayName:e.display_name,avatar:e.avatar});for(let e of t?.members??[])UU(r,{key:e.account_ref,displayName:e.display_name,avatar:e.avatar});for(let e of n){let t=WU(e);t!==null&&UU(r,t)}return[...r.values()]}function KU({account:e,presence:t}){let n={},r=(e,t)=>{let r=n[e];n[e]={avatar:t.avatar,online:r?.online===!0||t.online}};for(let e of t?.members??[])r(e.account_ref,{avatar:e.avatar,online:e.online});for(let e of t?.sample_members??[])r(e.account_ref,{avatar:e.avatar,online:!0});return e!==void 0&&r(e.account_ref,{avatar:e.avatar,online:!0}),n}function qU({relayProjectRef:e}){let t=et(),n=rB(),r=rH(),i=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),a=RU({hostClient:i,relayProjectRef:e}),[o,s]=(0,I.useState)(``),[c,l]=(0,I.useState)(``),[u,d]=(0,I.useState)(null),[f,p]=(0,I.useState)(null),[m,h]=(0,I.useState)(null),[g,_]=(0,I.useState)(()=>Date.now()),[v,y]=(0,I.useState)(null),b=new URL(uB(),window.location.origin).searchParams.get(`message`),x=b!==null&&Rt(b,Pt.message)?b:void 0,[S,C]=(0,I.useState)(()=>x===void 0?{kind:`latest`}:{kind:`around`,messageId:x}),w=(0,I.useRef)(null),T=(0,I.useRef)(null),E=(0,I.useRef)(null),[ee,D]=(0,I.useState)(null),O=f!==null;(0,I.useEffect)(()=>{x!==void 0&&(S.kind!==`around`||S.messageId!==x)&&C({kind:`around`,messageId:x})},[S,x]);let k=(t=null)=>{C({kind:`latest`}),y(t),x!==void 0&&Q(en(e),{replace:!0})},A=R({queryKey:Z.bootstrap(e),queryFn:()=>i.getBootstrap(),staleTime:lB}),te=A.data?.session.account.account_ref,j=te===void 0?null:`${te}:${e}`,M=x!==void 0||j!==null&&ee===j;(0,I.useEffect)(()=>{j===null||ee===j||(x===void 0&&te!==void 0&&C(ZB(te,e).start_chat_pending?{kind:`start`}:{kind:`latest`}),D(j))},[te,j,e,x,ee]);let N=_t({queryKey:Z.messageHistory(e,S,50),queryFn:({pageParam:e})=>i.getMessages(PU(e)),initialPageParam:NU(S),getPreviousPageParam:e=>FU(e),getNextPageParam:e=>IU(e),enabled:A.isSuccess&&M,staleTime:lB}),P=R({queryKey:Z.scratchpad(e),queryFn:()=>i.getScratchpad(),enabled:A.isSuccess,staleTime:lB,refetchInterval:O?BU:!1}),F=R({queryKey:Z.activeClarification(e),queryFn:()=>i.getActiveClarification(),enabled:A.isSuccess,staleTime:lB,refetchInterval:O?BU:!1}),ne=R({queryKey:Z.activeApproval(e),queryFn:()=>i.getActiveApproval(),enabled:A.isSuccess,staleTime:lB}),re=R({queryKey:Z.executionStatus(e),queryFn:()=>i.getExecutionStatus(),enabled:A.isSuccess,staleTime:lB,refetchInterval:O?BU:!1}),ie=R({queryKey:Z.readState(e),queryFn:()=>i.getReadState(),enabled:A.isSuccess,staleTime:lB}),ae=R({queryKey:Z.projectPresence(e),queryFn:()=>wr(cB,e),enabled:A.isSuccess,staleTime:lB,refetchInterval:6e4});hB(A.isSuccess);let oe=gt({mutationFn:e=>i.updateProjectDisplayName({display_name:e}),onMutate:e=>n.notify({tone:`loading`,title:`Saving project name`,message:e}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates??[{kind:`workspace`},{kind:`bootstrap`}]),n.update(a,{tone:`success`,title:`Project name saved`,message:i})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Project name save failed`,message:`${t}: ${$(e)}`})}}),se=gt({mutationFn:e=>i.updateProjectDescription({description:e}),onMutate:e=>n.notify({tone:`loading`,title:`Saving project description`,...e.length===0?{}:{message:e}}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates??[{kind:`workspace`},{kind:`bootstrap`}]),n.update(a,{tone:`success`,title:`Project description saved`,...i.length===0?{}:{message:i}})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Project description save failed`,message:$(e)})}}),ce=gt({mutationFn:({body:e,commandId:t})=>i.sendMainChatMessage({body:e},{commandId:t}),onSuccess:(n,r)=>{w.current=null,s(e=>e.trim()===r.body?``:e),n.result?.message!==void 0&&(S.kind===`latest`&&!N.hasNextPage?y(n.result.message.id):k(n.result.message.id)),gB(t,e,n.invalidates)},onError:e=>{n.notify({tone:`error`,title:`Message send failed`,message:$(e)})}}),le=gt({mutationFn:async t=>{let n=await VB({relayProjectRef:e,purpose:`reference_file`,file:t});return i.uploadReferenceFile(n)},onMutate:e=>n.notify({tone:`loading`,title:`Uploading reference`,message:e.name}),onSuccess:(r,i,a)=>{let o=r.result?.message;o!==void 0&&(S.kind===`latest`&&!N.hasNextPage?y(o.id):k(o.id)),gB(t,e,r.invalidates),n.update(a,{tone:`success`,title:`Reference uploaded`,message:r.result?.file.name??i.name})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Reference upload failed`,message:$(e)})}}),ue=gt({mutationFn:e=>i.submitWorklist(e===void 0?{}:{expected_scratchpad_updated_at:e}),onMutate:()=>(p({kind:`request`}),n.notify({tone:`loading`,title:`Running Scratchpad`})),onSuccess:(r,i,a)=>{if(r.disposition.kind===`accepted`){let e=r.result?.activity_ref;p(e===void 0?null:{kind:`activity`,activityRef:e,...r.result?.workflow_ref===void 0?{}:{workflowRef:r.result.workflow_ref}}),n.update(a,{tone:`success`,title:`Scratchpad run started`,message:`Tutti is preparing Worklist tasks.`})}else if(r.disposition.kind===`already_running`)p(null),n.update(a,{tone:`info`,title:`Already running`,message:`Tutti is already processing work.`});else{p(null);let e=HU(r.disposition);n.update(a,{tone:e?.tone??`warning`,title:`Scratchpad run blocked`,...e?.label===void 0?{}:{message:e.label}})}gB(t,e,r.invalidates)},onError:(e,t,r)=>{p(null),n.update(r,{tone:`error`,title:`Scratchpad run failed`,message:$(e)})}}),de=A.data,fe=KU({account:de?.session.account,presence:ae.data?.presence}),pe=de?.generated_at??new Date(0).toISOString(),me=N.data===void 0?void 0:LU(N.data.pages,50),he=me??(M&&S.kind===`latest`?de?.snapshots.main_chat:void 0)??_B(),ge=N.data!==void 0&&N.hasPreviousPage===!0,_e=N.data!==void 0&&N.hasNextPage===!0,ve=S.kind===`latest`||S.kind===`start`&&!_e||S.kind===`around`&&he.items.length>0&&!_e,ye=S.kind===`around`?`around:${S.messageId}`:S.kind,be=S.kind===`around`?`focus`:S.kind===`start`?`start`:`latest`,xe=de!==void 0&&(!M||me===void 0&&N.isLoading&&(S.kind!==`latest`||de.snapshots.main_chat===void 0)),Se=P.data??de?.snapshots.scratchpad??yB(),Ce=ie.data??de?.snapshots.read_state;xB({enabled:A.isSuccess,hostClient:i,relayProjectRef:e,readState:Ce,scope:`chat`});let we=F.data??de?.snapshots.active_clarification??SB(),Te=ne.data??de?.snapshots.active_approval??{state:`none`},Ee=we.state===`active`?we.round.id:void 0;(0,I.useEffect)(()=>{u!==null&&(Ee===void 0||u!==Ee)&&d(null)},[Ee,u]);let De=we.state===`active`&&we.thread.owner.kind===`task_compile`,Oe=(0,I.useMemo)(()=>{let e=new Set;for(let t of he.items)t.clarification_card!==void 0&&e.add(t.clarification_card.round_id);return Ee!==void 0&&e.add(Ee),[...e]},[Ee,he.items]),ke=mt({queries:Oe.map(t=>({queryKey:Z.clarificationRoundMessages(e,t),queryFn:()=>i.getClarificationRoundMessages(t,{anchor:`start`,limit:50}),enabled:A.isSuccess}))}),Ae=gt({mutationFn:({roundId:e,body:t})=>i.sendClarificationRoundMessage(e,{body:t}),onSuccess:n=>{l(``),gB(t,e,n.invalidates)},onError:e=>{n.notify({tone:`error`,title:`Reply send failed`,message:$(e)})}}),je=gt({mutationFn:e=>i.submitClarificationRound(e),onMutate:e=>(d(e),n.notify({tone:`loading`,title:`Submitting reply`})),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates),n.update(a,{tone:`success`,title:`Reply submitted`})},onError:(e,t,r)=>{d(e=>e===t?null:e),n.update(r,{tone:`error`,title:`Reply submit failed`,message:$(e)})}}),Me=gt({mutationFn:({approvalId:e,decisionId:t})=>i.decideApproval(e,{decision_id:t}),onMutate:()=>n.notify({tone:`loading`,title:`Sending decision`}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates),n.update(a,{tone:`success`,title:`Decision sent`})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Decision failed`,message:$(e)})}}),Ne=Object.fromEntries(Oe.map((e,t)=>[e,(ke[t]?.data??_B()).items.map(e=>si(e,{authorProfiles:fe,taskRetryState:a.stateFor}))])),Pe=GU({account:de?.session.account,presence:ae.data?.presence,messages:[...he.items,...ke.flatMap(e=>e.data?.items??[])]}),Fe=re.data??de?.snapshots.execution_status??CB(pe),Ie=wB(Fe),Le=TB(Fe,`scratchpad_refresh`),Re=TB(Fe,`scratchpad_refresh`,`foreground`),ze=TB(Fe,`task_compile`,`foreground`),Be=TB(Fe,`project_context_bootstrap`,`foreground`),Ve=f?.kind===`activity`?f.activityRef:void 0,He=f?.kind===`activity`?f.workflowRef:void 0;(0,I.useEffect)(()=>{if(f===null)return;if(Se.state===`submitted`){p(null);return}if(Se.state===`empty`){p(null);return}if(Fe.status===`pending`){De||p(null);return}let e=Fe.last_conclusion,t=He!==void 0&&e?.workflow_ref===He,r=Ve!==void 0&&e?.activity_ref===Ve;if(!(!t&&!r)){if(p(null),e?.kind===`failed`){n.notify({tone:`error`,title:`Scratchpad run failed`,message:e.summary});return}if(e?.kind===`needs_human`){n.notify({tone:`warning`,title:`Scratchpad needs input`,message:e.summary});return}}},[Fe.last_conclusion?.activity_ref,Fe.last_conclusion?.kind,Fe.last_conclusion?.summary,Fe.last_conclusion?.workflow_ref,Fe.status,Fe.summary,De,n,Se.state,f,Ve,He]);let Ue=Ve!==void 0&&Ie.some(e=>e.activity_ref===Ve),We=Ue&&Ie.some(e=>e.activity_ref===Ve&&e.workflow_kind===`scratchpad_refresh`)||f!==null&&Re,Ge=ze||Be||We||Ue||De,Ke=Le,qe=ue.isPending||Ge||f!==null&&Fe.status===`idle`,Je=Fe.status!==`idle`||qe||m!==null;(0,I.useEffect)(()=>{if(!Je)return;_(Date.now());let e=window.setInterval(()=>{_(Date.now())},1e3);return()=>{window.clearInterval(e)}},[Je]);let Ye=Ie.some(e=>e.activity_kind===`procedure`&&(e.lane??`foreground`)===`foreground`),Xe=(Ie.some(e=>e.activity_kind===`run`)||Ye)&&!Ke&&!qe,Ze=uC(Fe),Qe={key:`scratchpad-submit`,label:De?`Needs input`:We?`Compiling Worklist tasks`:Be?`Preparing project context`:ze?`Compiling Worklist tasks`:`Preparing Worklist`,title:De?`Needs input`:`Preparing Scratchpad for Worklist.`,tone:De?`pending`:`running`,target:De?{kind:`clarification`}:{kind:`scratchpad`}},$e=qe&&Ze.length===0?[Qe]:Ze,tt=oC(Fe,{now:g}),nt=Ie.find(e=>(e.lane??`foreground`)===`foreground`?e.workflow_kind===`project_context_bootstrap`&&Be||e.workflow_kind===`task_compile`&&ze||e.workflow_kind===`scratchpad_refresh`&&We?!0:Ve!==void 0&&e.activity_ref===Ve:!1),rt=(qe?sC({activeScratchpadRefreshFromSubmit:We,activeProjectContextBootstrap:Be,activeTaskCompile:ze,activeTaskCompileClarification:De,now:g,...nt?.started_at===void 0?{}:{startedAt:nt.started_at},...Fe.runtime===void 0?{}:{runtime:Fe.runtime}}):null)??tt;(0,I.useEffect)(()=>{rt!==null&&(T.current=rt,h(null))},[rt]),(0,I.useEffect)(()=>{if(!Le||rt!==null)return;let e=T.current;if(e?.completionSource===void 0)return;let t=`hidden:${VU(e)}`;if(E.current===t)return;E.current=t;let n=cC(e,e.summary);h(n),T.current=null;let r=window.setTimeout(()=>{h(e=>e?.key===n.key?null:e)},zU);return()=>{window.clearTimeout(r)}},[rt,Le]),(0,I.useEffect)(()=>{if(rt!==null||Fe.status!==`idle`)return;let e=Fe.last_conclusion;if(e?.kind!==`completed`)return;let t=e.activity_ref??`${e.kind}:${e.task_id??`none`}:${e.occurred_at}`;if(E.current===t)return;let n=T.current;if(n===null)return;if(!lC(n,e)){T.current=null;return}E.current=t;let r=cC(n,e.summary);h(r);let i=window.setTimeout(()=>{h(e=>e?.key===r.key?null:e),T.current=null},zU);return()=>{window.clearTimeout(i)}},[rt,Fe.last_conclusion?.activity_ref,Fe.last_conclusion?.kind,Fe.last_conclusion?.occurred_at,Fe.last_conclusion?.summary,Fe.last_conclusion?.task_id,Fe.status]);let it=rt??m,at=m===null?null:{key:`completed`,label:`Completed`,tone:`done`,target:m.completionTarget??{kind:`scratchpad`}},ot=at===null?$e:[at,...$e],st=e=>{e.preventDefault();let t=o.trim();if(t!==``&&!ce.isPending){let e=w.current?.body===t?w.current:{body:t,commandId:Vt()};w.current=e,ce.mutate(e)}},ct=e=>{e.preventDefault();let t=c.trim();t!==``&&Ee!==void 0&&!Ae.isPending&&Ae.mutate({roundId:Ee,body:t})},lt=M&&me===void 0&&N.error!==null&&(S.kind!==`latest`||de?.snapshots.main_chat===void 0),ut=de===void 0&&A.error!==null||lt;return(0,I.useEffect)(()=>{x!==void 0&&y(x)},[x]),(0,L.jsx)(qw,{projectName:de?.workspace.project.display_name??`Workspace`,projectDescription:de?.workspace.project.description??``,members:Pe,messages:he.items.map(e=>si(e,{authorProfiles:fe,taskRetryState:a.stateFor,referenceAssetUrl:(e,t,n)=>i.viewerAssetUrl({path:e,variant:t,v:n})})),scratchpad:Ci(Se,he.items),executionProgress:it,activeApproval:fi(Te),activeClarification:ci(we),clarificationMessagesByRoundId:Ne,statusShortcuts:ot,unread:bB(Ce),artifactSignal:r.sidebarSignal,draft:o,roundDraft:c,sendPending:ce.isPending,focusMessageId:v,messageHistoryIdentity:ye,initialMessagePosition:be,hasOlderMessages:ge,hasNewerMessages:_e,loadingOlderMessages:N.isFetchingPreviousPage,loadingNewerMessages:N.isFetchingNextPage,historyConnectedToLatest:ve,submittedRoundId:u,referenceUploadPending:le.isPending,scratchpadSyncPending:Ke,scratchpadActionsDisabled:Xe,scratchpadSubmitPending:qe,roundSendPending:Ae.isPending,roundSubmitPending:je.isPending,approvalDecisionPending:Me.isPending,projectNameSaving:oe.isPending,projectDescriptionSaving:se.isPending,loading:de===void 0&&A.isLoading||xe,unavailable:ut,onDraftChange:e=>{w.current?.body!==e.trim()&&(w.current=null),s(e)},onMessageFocused:()=>y(null),onInitialMessagePositioned:()=>{S.kind===`start`&&N.isSuccess&&te!==void 0&&eV(te,e)},onLoadOlderMessages:()=>{N.fetchPreviousPage()},onLoadNewerMessages:()=>{N.fetchNextPage({cancelRefetch:!1})},onJumpToLatest:()=>k(),onUploadReferenceFile:e=>le.mutate(e),onOpenReferenceFile:t=>Q(EB(e,t)),onRoundDraftChange:l,onSendMessage:st,onSendRoundMessage:ct,onSubmitRound:()=>{Ee!==void 0&&je.mutate(Ee)},onDecideApproval:(e,t)=>Me.mutate({approvalId:e,decisionId:t}),onSubmitScratchpad:()=>ue.mutate(Se.updated_at),onUpdateProjectDisplayName:async e=>{await oe.mutateAsync(e)},onUpdateProjectDescription:async e=>{await se.mutateAsync(e)},onOpenProjectCenter:()=>Q(`/projects`),onOpenWorklist:()=>Q(OB(e)),onOpenWorklistTask:t=>Q(OB(e,t)),onRetryTask:(e,t)=>a.retry(e,t),onOpenReferences:()=>Q(EB(e)),onOpenArtifacts:()=>Q(DB(e)),onViewArtifactFeedback:(t,n)=>{let i=he.items.find(e=>e.id===t)?.refs?.artifact_feedback,a=i?.annotations[n];i===void 0||a===void 0||(r.requestFeedbackActivation({messageId:t,annotationIndex:n,previewGeneration:i.preview_generation,documentUrl:a.document_url,target:a.target}),Q(DB(e)))},onOpenSkills:()=>Q(MB(e)),onOpenTimeline:()=>Q(jB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t)})}function JU(e){return Yt(e)?Jt(e,`relay_session_invalid`)?`client_session`:`account_session`:null}function YU(e){return e===`client_session`?{title:`Workspace session expired`,message:`Open the project again from Project Center.`}:{title:`Sign in required`,message:`Sign in to Tutti before opening this workspace.`}}function XU(e){return e===`client_session`?`/projects`:`/`}function ZU({relayProjectRef:e,children:t}){let n=et(),r=rB(),i=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),a=(0,I.useRef)(void 0),o=(0,I.useRef)(null),s=R({queryKey:Z.bootstrap(e),queryFn:()=>i.getBootstrap(),staleTime:lB}),c=JU(s.error),l=c===null&&s.data?.workspace.capabilities.sse===!0;return a.current===void 0&&s.data!==void 0&&(a.current=s.data.event_cursor),(0,I.useEffect)(()=>{if(c===null)return;let t=`${e}:${c}`;o.current!==t&&(o.current=t,r.notify({tone:`warning`,...YU(c)}),Q(XU(c),{replace:!0}))},[c,r,e]),(0,I.useEffect)(()=>{if(!l)return;let t=i.connectEvents({...a.current===void 0?{}:{after:a.current},onReady:t=>{t.payload.replay.status===`missed`&&n.invalidateQueries({queryKey:Z.hostRoot(e)})},onInvalidate:t=>{gB(n,e,t)},onError:()=>void 0});return()=>t.close()},[i,n,e,l]),(0,L.jsxs)(nH,{relayProjectRef:e,hostClient:i,enabled:c===null&&s.isSuccess,feedbackEnabled:s.data?.workspace.capabilities.artifact_feedback===!0,children:[(0,L.jsx)(jr,{route:{kind:`workspace`,relayProjectRef:e},projectDisplayName:s.data?.workspace.project.display_name??null}),c===null?t:null]})}function QU({relayProjectRef:e}){let t=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),n=R({queryKey:Z.bootstrap(e),queryFn:()=>t.getBootstrap(),staleTime:lB}).data?.session.account.account_ref,r=n===void 0?null:`${n}:${e}`,[i,a]=(0,I.useState)({identity:null,pending:!1}),[o,s]=(0,I.useState)(!1),c=Kf();(0,I.useEffect)(()=>{n===void 0||r===null||i.identity===r||a({identity:r,pending:ZB(n,e).tour_pending})},[n,r,i.identity,e]);let l=t=>{tV(t,e),a({identity:r,pending:!1})};return(0,L.jsxs)(L.Fragment,{children:[c&&r!==null&&i.identity===r&&i.pending&&n!==void 0&&typeof document<`u`?(0,xl.createPortal)((0,L.jsx)($f,{onOpen:()=>{l(n),s(!0)},onDismiss:()=>l(n)}),document.body):null,(0,L.jsx)(ep,{assets:TC,open:o,onOpenChange:s})]})}var $U=`tutti.artifact-inspector`,eW=128,tW=128,nW=2048,rW=6,iW=240,aW=[`expanded`,`selected`,`checked`,`pressed`,`disabled`];function oW(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function sW(e,t){return Object.keys(e).every(e=>t.includes(e))}function cW(e,t,n=!1){return typeof e==`string`&&e.length<=t&&(n||e.length>0)}function lW(e){return{protocol:$U,version:1,channel_id:e.channelId,...e.requestId===void 0?{}:{request_id:e.requestId},type:e.type,payload:e.payload}}function uW(e){return oW(e)?e.protocol===`tutti.artifact-inspector`&&e.version===1&&cW(e.channel_id,eW)&&(e.request_id===void 0||cW(e.request_id,tW))&&cW(e.type,64)&&`payload`in e:!1}function dW(e){if(!cW(e,nW))return!1;try{return new URL(e,`https://artifact.invalid`).origin===`https://artifact.invalid`&&e.startsWith(`/`)}catch{return!1}}function fW(e,t){return e===void 0||cW(e,t)}function pW(e){return oW(e)&&sW(e,[`tag_name`,`role`,`accessible_name`])&&cW(e.tag_name,64)&&fW(e.role,64)&&fW(e.accessible_name,160)}function mW(e){if(!oW(e)||!Array.isArray(e.context)||e.context.length>3||!sW(e,[`element_kind`,`tag_name`,`role`,`accessible_name`,`text_excerpt`,`context`,`state`]))return!1;let t=e.state;return t!==void 0&&(!oW(t)||!sW(t,aW)||!Object.values(t).every(e=>typeof e==`boolean`))?!1:(e.element_kind===`control`||e.element_kind===`content`||e.element_kind===`container`)&&cW(e.tag_name,64)&&fW(e.role,64)&&fW(e.accessible_name,160)&&fW(e.text_excerpt,280)&&e.context.every(pW)}function hW(e){return oW(e)&&sW(e,[`id`,`test_id`])&&fW(e.id,128)&&fW(e.test_id,160)&&(e.id!==void 0||e.test_id!==void 0)}function gW(e){return!oW(e)||!sW(e,[`version`,`explicit_anchor`,`stable_attributes`,`semantic_path`,`selector_path`])||e.version!==1||!Array.isArray(e.semantic_path)||e.semantic_path.length>4||!Array.isArray(e.selector_path)||e.selector_path.length===0||e.selector_path.length>4?!1:fW(e.explicit_anchor,160)&&(e.stable_attributes===void 0||hW(e.stable_attributes))&&e.semantic_path.every(e=>oW(e)&&sW(e,[`role`,`accessible_name`])&&(e.role!==void 0||e.accessible_name!==void 0)&&fW(e.role,64)&&fW(e.accessible_name,160))&&e.selector_path.every(e=>oW(e)&&sW(e,[`root`,`selector`])&&(e.root===`document`||e.root===`open_shadow_root`)&&cW(e.selector,1024))}function _W(e){return!oW(e)||!sW(e,[`snapshot`,`anchor`,`fallback_context`])||!mW(e.snapshot)||!gW(e.anchor)?!1:e.fallback_context===void 0||oW(e.fallback_context)&&sW(e.fallback_context,[`snapshot`,`anchor`])&&mW(e.fallback_context.snapshot)&&gW(e.fallback_context.anchor)}function vW(e){return oW(e)&&Number.isInteger(e.candidate_index)&&Number(e.candidate_index)>=0&&Number(e.candidate_index)<rW&&mW(Object.fromEntries(Object.entries(e).filter(([e])=>e!==`candidate_index`)))}function yW(e){return!uW(e)||!oW(e.payload)?!1:e.type===`ready`?sW(e.payload,[`document_url`,`inspector_version`])&&dW(e.payload.document_url)&&e.payload.inspector_version===1:e.type===`candidates`?sW(e.payload,[`capture_id`,`recommended_index`,`items`])&&cW(e.payload.capture_id,tW)&&Number.isInteger(e.payload.recommended_index)&&Number(e.payload.recommended_index)>=0&&Array.isArray(e.payload.items)&&e.payload.items.length>0&&e.payload.items.length<=rW&&Number(e.payload.recommended_index)<e.payload.items.length&&e.payload.items.every(vW):e.type===`selection`?sW(e.payload,[`target`])&&_W(e.payload.target):e.type===`resolution`?sW(e.payload,[`status`])&&(e.payload.status===`exact`||e.payload.status===`context_only`||e.payload.status===`ambiguous`||e.payload.status===`missing`):e.type===`document_changed`?sW(e.payload,[`document_url`])&&dW(e.payload.document_url):e.type===`unavailable`?sW(e.payload,[`reason`])&&cW(e.payload.reason,iW):!1}var bW=5e3,xW=class extends Error{constructor(e){super(e),this.name=`ArtifactInspectorControllerError`}};function SW(e){let t;try{t=new URL(e)}catch{throw new xW(`Artifact preview origin is invalid`)}if(t.protocol!==`https:`&&t.protocol!==`http:`||t.origin!==e)throw new xW(`Artifact preview origin must be exact`);return t.origin}var CW=class{#e;#t;#n;#r;#i;#a;#o;#s;#c=null;#l=null;#u=!1;#d=!1;#f=0;#p=new Map;constructor(e){this.#e=e.iframe,this.#t=SW(e.targetOrigin),this.#n=e.onEvent,this.#r=e.requestTimeoutMs??bW,this.#i=e.createChannelId??(()=>crypto.randomUUID()),this.#a=e.createMessageChannel??(()=>new MessageChannel),this.#o=e.setTimeoutFn??window.setTimeout.bind(window),this.#s=e.clearTimeoutFn??window.clearTimeout.bind(window)}get ready(){return this.#u}connect(){if(this.#d)throw new xW(`Artifact inspector controller is disposed`);let e=this.#e.contentWindow;if(e===null)throw new xW(`Artifact preview is not mounted`);this.#_(`Artifact preview document changed`);let t=this.#i();if(t.length===0||t.length>128)throw new xW(`Artifact inspector channel is invalid`);let n=this.#a();this.#c=t,this.#l=n.port1,this.#l.addEventListener(`message`,this.#g),this.#l.start();try{e.postMessage(lW({channelId:t,type:`connect`,payload:{}}),this.#t,[n.port2])}catch(e){throw this.#_(`Artifact inspector connection failed`),e}}activate(){this.#m(`activate`,{})}deactivate(){this.#m(`deactivate`,{})}clearHighlight(){this.#m(`clear_highlight`,{})}confirmCandidate(e,t){return this.#h(`confirm_candidate`,{capture_id:e,candidate_index:t},`selection`).then(e=>{if(e.type!==`selection`)throw new xW(`Artifact inspector selection response is invalid`);return e.payload.target})}resolve(e){return this.#h(`resolve`,{target:e},`resolution`).then(e=>{if(e.type!==`resolution`)throw new xW(`Artifact inspector resolution response is invalid`);return e.payload.status})}dispose(){if(!this.#d){if(this.#l!==null)try{this.deactivate()}catch{}this.#d=!0,this.#_(`Artifact inspector controller was disposed`)}}#m(e,t){let n=this.#l,r=this.#c;if(this.#d||n===null||r===null||!this.#u)throw new xW(`Artifact inspector is not ready`);n.postMessage(lW({channelId:r,type:e,payload:t}))}#h(e,t,n){let r=this.#l,i=this.#c;if(this.#d||r===null||i===null||!this.#u)return Promise.reject(new xW(`Artifact inspector is not ready`));let a=`${i}:${++this.#f}`;return new Promise((o,s)=>{let c=this.#o(()=>{this.#p.delete(a),s(new xW(`Artifact inspector request timed out`))},this.#r);this.#p.set(a,{expectedType:n,resolve:o,reject:s,timeout:c}),r.postMessage(lW({channelId:i,requestId:a,type:e,payload:t}))})}#g=e=>{let t=e.data,n=this.#c;if(n===null||!yW(t)||t.channel_id!==n)return;t.type===`ready`&&(this.#u=!0);let r=t.request_id;if(r!==void 0){let e=this.#p.get(r);e!==void 0&&(t.type===`unavailable`?(this.#s(e.timeout),this.#p.delete(r),e.reject(new xW(t.payload.reason))):t.type===e.expectedType&&(this.#s(e.timeout),this.#p.delete(r),e.resolve(t)))}this.#n?.(t)};#_(e){this.#u=!1;for(let t of this.#p.values())this.#s(t.timeout),t.reject(new xW(e));this.#p.clear(),this.#l!==null&&(this.#l.removeEventListener(`message`,this.#g),this.#l.close()),this.#l=null,this.#c=null}},wW=4e3;function TW(e){if(e!==void 0)try{let t=new URL(e,window.location.href);return t.protocol===`https:`||t.protocol===`http:`?t.origin:void 0}catch{return}}function EW(e){return(e.summary?.length??0)+e.annotations.reduce((e,t)=>e+t.comment.length,0)}function DW(e){return new TextEncoder().encode(JSON.stringify(e)).byteLength}function OW({relayProjectRef:e}){let t=rH(),n=rB(),r=et(),i=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),a=(0,I.useMemo)(()=>dr(cB),[]),o=(0,I.useRef)(null),s=(0,I.useRef)(null),c=(0,I.useRef)(null),l=(0,I.useRef)(null),u=(0,I.useRef)(null),[d,f]=(0,I.useState)(void 0),[p,m]=(0,I.useState)(!1),[h,g]=(0,I.useState)(void 0),[_,v]=(0,I.useState)(void 0),[y,b]=(0,I.useState)(!1),[x,S]=(0,I.useState)(void 0),[C,w]=(0,I.useState)(void 0),[T,E]=(0,I.useState)(``),ee=R({queryKey:Z.bootstrap(e),queryFn:()=>i.getBootstrap(),staleTime:lB}),D=R({queryKey:Z.executionStatus(e),queryFn:()=>i.getExecutionStatus(),enabled:ee.isSuccess,staleTime:lB}),O=R({queryKey:Z.readState(e),queryFn:()=>i.getReadState(),enabled:ee.isSuccess,staleTime:lB}),k=ee.data,A=k?.generated_at??new Date(0).toISOString(),te=O.data??k?.snapshots.read_state,j=D.data??k?.snapshots.execution_status??CB(A),M=j.active_activity?.activity_kind===`run`||j.active_activities?.some(e=>e.activity_kind===`run`)===!0,N=t.artifact,P=N?.status===`declared`&&N.preview.status===`ready`&&N.preview.url!==void 0?N.preview.url:null,F=N?.status===`declared`?N.preview_generation:void 0,ne=R({queryKey:Z.artifactPreviewSession(e,P??`not-ready`),queryFn:()=>a.issueArtifactPreviewSession(e),enabled:P!==null,staleTime:1/0,retry:1,refetchInterval:e=>zV(e.state.data)}),re=ne.data,ie=re?.disposition.kind===`issued`?re.result?.bootstrap_url:void 0,ae=ne.error===null?RV(re):$(ne.error),oe=TW(ie);(0,I.useEffect)(()=>{f(ie)},[ie]);let se=(0,I.useCallback)(e=>{if(e.type===`ready`){m(!0),g(void 0),v(e.payload.document_url);return}if(e.type===`candidates`){g(void 0);let t=s.current;if(t===null){g(`Element selection is not ready.`);return}let n=e.payload.capture_id;u.current=n,t.confirmCandidate(n,e.payload.recommended_index).then(e=>{u.current===n&&(t.deactivate(),S(e),w(new Date().toISOString()),g(void 0))}).catch(e=>{u.current===n&&g($(e))}).finally(()=>{u.current===n&&(u.current=null)});return}if(e.type===`document_changed`){v(e.payload.document_url);return}e.type===`unavailable`&&g(e.payload.reason)},[]);(0,I.useEffect)(()=>{let e=o.current;if(e===null||oe===void 0)return;m(!1),g(void 0),v(void 0);let t=new CW({iframe:e,targetOrigin:oe,onEvent:se});s.current=t;try{t.connect()}catch(e){g($(e))}return()=>{t.dispose(),s.current===t&&(s.current=null)}},[se,oe]),(0,I.useEffect)(()=>{if(!t.feedbackEnabled||oe===void 0||p||P===null)return;let e=window.setTimeout(()=>{g(e=>e??`Element selection could not connect to this preview.`)},wW);return()=>window.clearTimeout(e)},[t.feedbackEnabled,p,oe,P]),(0,I.useEffect)(()=>{if(t.feedbackDraftStale){try{s.current?.deactivate(),s.current?.clearHighlight()}catch{}u.current=null,S(void 0),w(void 0)}},[t.feedbackDraftStale]);let ce=(0,I.useCallback)(()=>{m(!1),v(void 0);try{s.current?.connect()}catch(e){g($(e))}},[]),le=(0,I.useCallback)(()=>{g(void 0),u.current=null,S(void 0),w(void 0);try{s.current?.clearHighlight(),s.current?.activate()}catch(e){g($(e))}},[]),ue=(0,I.useCallback)(()=>{try{s.current?.deactivate(),s.current?.clearHighlight()}catch{}b(!1),u.current=null,S(void 0),w(void 0),E(``)},[]),de=(0,I.useCallback)(()=>{u.current=null,S(void 0),w(void 0),E(``),g(void 0);try{s.current?.clearHighlight(),s.current?.activate()}catch(e){g($(e))}},[]),fe=(0,I.useCallback)(()=>{if(F===void 0||!p)return;let e=t.feedbackDraft;b(!0),!(e!==null&&e.previewGeneration!==F)&&(t.beginFeedbackDraft(F),le())},[t,p,F,le]),pe=t.feedbackDraft,me=pe===null?null:{expected_preview_generation:pe.previewGeneration,annotations:pe.annotations.map(e=>({document_url:e.document_url,comment:e.comment.trim(),target:e.target}))},he=me!==null&&EW(me)>6e3,ge=me!==null&&DW(me)>65536,_e=gt({mutationFn:e=>i.sendMainChatMessage({artifact_feedback:e.payload},{commandId:e.commandId}),onSuccess:i=>{if(i.disposition.kind===`created`){c.current=null,t.clearFeedbackDraft(),ue(),gB(r,e,i.invalidates),n.notify({tone:`success`,title:`Artifact feedback sent`});let a=i.result?.message.id;Q(a===void 0?en(e):kB(e,a));return}i.disposition.kind===`artifact_changed`?n.notify({tone:`warning`,title:`Artifact changed`,message:`Start a new feedback batch from the current preview.`}):i.disposition.kind===`artifact_unavailable`?n.notify({tone:`warning`,title:`Artifact unavailable`,message:`The feedback draft was kept in this tab.`}):n.notify({tone:`error`,title:`Feedback send could not be confirmed`}),r.invalidateQueries({queryKey:Z.artifacts(e)})},onError:e=>{n.notify({tone:`error`,title:`Artifact feedback send failed`,message:$(e)})}}),ve=(0,I.useCallback)(()=>{if(me===null||me.annotations.length===0||t.feedbackDraftStale||he||ge||_e.isPending)return;let e=JSON.stringify(me),n=c.current?.serialized===e?c.current:{commandId:Vt(),payload:me,serialized:e};c.current=n,_e.mutate(n)},[t.feedbackDraftStale,me,ge,he,_e]);(0,I.useEffect)(()=>{let e=t.pendingActivation;if(e===null){l.current=null;return}let r=`${e.messageId}:${e.annotationIndex}`;if(F===void 0||N?.status!==`declared`||N.preview.status!==`ready`||e.previewGeneration!==F){n.notify({tone:`warning`,title:`Artifact feedback is from an earlier preview`}),t.clearFeedbackActivation();return}if(!p||oe===void 0||_===void 0){h!==void 0&&(n.notify({tone:`warning`,title:`Artifact element could not be located`,message:h}),t.clearFeedbackActivation());return}if(_!==e.documentUrl){let t=new URL(e.documentUrl,oe).toString();d!==t&&(m(!1),f(t));return}let i=s.current;i===null||l.current===r||(l.current=r,i.resolve(e.target).then(e=>{e===`exact`?n.notify({tone:`success`,title:`Artifact element highlighted`}):e===`context_only`?n.notify({tone:`warning`,title:`Only the surrounding context is still visible`}):e===`ambiguous`?n.notify({tone:`warning`,title:`The element is no longer unique in this preview`}):n.notify({tone:`warning`,title:`The element is not currently visible`})}).catch(e=>{n.notify({tone:`warning`,title:`Artifact element could not be located`,message:$(e)})}).finally(()=>{l.current=null,t.clearFeedbackActivation()}))},[N,t,p,_,F,d,h,oe,n]);let ye=d??ie,be=$r(N,{...ye===void 0?{}:{previewUrl:ye},pending:P!==null&&ye===void 0&&ae===void 0,...ae===void 0?{}:{errorMessage:ae}},{runActive:M}),xe=N!==void 0,Se=!xe&&(ee.error!==null||t.unavailable),Ce=t.feedbackEnabled,we=Ce&&p&&be.status===`declared`&&be.previewStatus===`ready`,Te=pe?.annotations.map(e=>({key:e.key,documentUrl:e.document_url,comment:e.comment,time:Lr(e.createdAt),target:Qr(e.target.snapshot)}))??[],Ee=t.feedbackDraftStale?`Start over from the current Artifact before submitting.`:Te.length===0?`Add at least one comment before submitting.`:he?`Shorten these comments to 6,000 characters before submitting.`:ge?`Remove some comments before submitting this batch.`:void 0,De=Ee===void 0&&!_e.isPending;return(0,L.jsx)(Jw,{statusShortcuts:uC(j),unread:bB(te),state:be,loading:!xe&&(ee.isLoading||t.loading),unavailable:Se,iframeRef:o,onPreviewLoad:ce,...k?.session.account===void 0?{}:{feedback:{supported:Ce,ready:we,open:y,canSubmit:De,submitPending:_e.isPending,...Ee===void 0?{}:{submitDisabledReason:Ee},...h===void 0?{}:{unavailableReason:h},author:{displayName:k.session.account.display_name,avatar:k.session.account.avatar},onOpen:fe,onSubmit:ve,rail:{comment:T,annotations:Te,...x===void 0?{}:{selectedTarget:Qr(x.snapshot)},...C===void 0?{}:{selectedTime:Lr(C)},stale:t.feedbackDraftStale,...h===void 0?{}:{bridgeUnavailableReason:h},...he||ge?{sendDisabledReason:he?`Shorten these comments to 6,000 characters before submitting.`:`Remove some comments before submitting this batch.`}:{},onCommentChange:e=>{c.current=null,E(e)},onCancelSelection:de,onAddAnnotation:()=>{if(!(x===void 0||_===void 0||T.trim().length===0)){c.current=null,t.addFeedbackAnnotation({document_url:_,comment:T.trim(),target:x,createdAt:C??new Date().toISOString()});try{s.current?.activate()}catch(e){g($(e))}S(void 0),w(void 0),E(``)}},onRemoveAnnotation:e=>{c.current=null,t.removeFeedbackAnnotation(e)},onReset:()=>{c.current=null,t.clearFeedbackDraft(),F!==void 0&&(t.beginFeedbackDraft(F),le())}}}},onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenWorklist:()=>Q(OB(e)),onOpenReferences:()=>Q(EB(e)),onOpenSkills:()=>Q(MB(e)),onOpenTimeline:()=>Q(jB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t)})}function kW({relayProjectRef:e}){let t=et(),n=rB(),r=rH(),i=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),a=new URL(uB(),window.location.origin).searchParams.get(`path`)??void 0,[o,s]=(0,I.useState)(a),[c,l]=(0,I.useState)(`time`),u=R({queryKey:Z.bootstrap(e),queryFn:()=>i.getBootstrap(),staleTime:lB}),d=R({queryKey:Z.referenceFiles(e),queryFn:()=>i.getReferenceFiles({limit:200}),enabled:u.isSuccess,staleTime:lB}),f=R({queryKey:Z.messagesWindow(e,200),queryFn:()=>i.getMessages({limit:200}),enabled:u.isSuccess,staleTime:lB}),p=R({queryKey:Z.executionStatus(e),queryFn:()=>i.getExecutionStatus(),enabled:u.isSuccess,staleTime:lB}),m=R({queryKey:Z.readState(e),queryFn:()=>i.getReadState(),enabled:u.isSuccess,staleTime:lB}),h=d.data?.items??[],g=(0,I.useMemo)(()=>{let e=new Map;for(let t of f.data?.items??[]){let n=t.refs?.reference_file;if(n===void 0)continue;let r=e.get(n.path);(r===void 0||t.created_at>r)&&e.set(n.path,t.created_at)}return e},[f.data?.items]),_=(0,I.useMemo)(()=>{let e=(e,t)=>e.name.localeCompare(t.name),t=(t,n)=>{let r=g.get(t.path)??``,i=g.get(n.path)??``;return r===i?e(t,n):i.localeCompare(r)},n=(e,n)=>{let r=e.extension??e.media_type??`file`,i=n.extension??n.media_type??`file`;return r===i?t(e,n):r.localeCompare(i)},r=[...h.filter(e=>e.category===`image`)].sort(t),i=[...h.filter(e=>e.category!==`image`)].sort(c===`time`?t:n);return[...r,...i]},[c,h,g]);(0,I.useEffect)(()=>{if(_.length===0){o!==void 0&&s(void 0);return}if(a!==void 0&&_.some(e=>e.path===a)){o!==a&&s(a);return}(o===void 0||!_.some(e=>e.path===o))&&s(_[0]?.path)},[_,a,o]);let v=h.find(e=>e.path===o),y=v?.category===`image`,b=v?.text_read.can_read===!0,x=R({queryKey:o===void 0?Z.viewerFile(e,`none`):Z.viewerFile(e,o),queryFn:()=>i.getViewerFile({path:o,max_bytes:204800}),enabled:u.isSuccess&&o!==void 0&&b&&!y,staleTime:lB}),S=gt({mutationFn:async t=>{let n=await VB({relayProjectRef:e,purpose:`reference_file`,file:t});return i.uploadReferenceFile(n)},onMutate:e=>n.notify({tone:`loading`,title:`Uploading reference`,message:e.name}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates),r.result?.file.path!==void 0&&(s(r.result.file.path),Q(EB(e,r.result.file.path))),n.update(a,{tone:`success`,title:`Reference uploaded`,message:r.result?.file.name??i.name})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Reference upload failed`,message:$(e)||t.name})}}),C=u.data,w=C?.generated_at??new Date(0).toISOString(),T=m.data??C?.snapshots.read_state;xB({enabled:u.isSuccess,hostClient:i,relayProjectRef:e,readState:T,scope:`references`});let E=p.data??C?.snapshots.execution_status??CB(w),ee=_.map(e=>sV(e,{selected:e.path===o,...e.category!==`image`||e.blob_oid===void 0?{}:{thumbnailUrl:i.viewerAssetUrl({path:e.path,variant:`thumbnail`,v:e.blob_oid})}})),D=x.data?.content,O=(()=>{if(v===void 0)return{title:h.length===0?`No reference files`:`No file selected`,unavailableReason:h.length===0?`No reference files`:`Select a reference file`};if(D?.kind===`text`)return{title:v.name,meta:IB(v.size_bytes),...rV(v),content:D.text};if(y&&o!==void 0)return v.blob_oid===void 0?{title:v.name,meta:IB(v.size_bytes),...rV(v),unavailableReason:`Image version unavailable`}:{title:v.name,meta:IB(v.size_bytes),...rV(v),imageUrl:i.viewerAssetUrl({path:o,variant:`preview`,v:v.blob_oid})};let e=b&&x.isLoading?`Loading`:RB(D)??(b?void 0:LB(v.text_read.blocked_reason));return e===void 0?{title:v.name,meta:IB(v.size_bytes),...rV(v)}:{title:v.name,meta:IB(v.size_bytes),...rV(v),unavailableReason:e}})(),k=d.data!==void 0,A=!k&&(u.error!==null||d.error!==null);return(0,L.jsx)(Yw,{statusShortcuts:uC(E),unread:bB(T),artifactSignal:r.sidebarSignal,files:ee,detail:O,uploadPending:S.isPending,fileSortMode:c,loading:!k&&(u.isLoading||d.isLoading),unavailable:A,onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenWorklist:()=>Q(OB(e)),onOpenArtifacts:()=>Q(DB(e)),onOpenSkills:()=>Q(MB(e)),onOpenTimeline:()=>Q(jB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t),onSelectFile:t=>{s(t),Q(EB(e,t))},onUploadFile:e=>S.mutate(e),onFileSortModeChange:l})}var AW={provider_auth_invalid:`The existing API key was rejected.`,provider_quota_or_billing_required:`Quota or billing needs attention.`,provider_rate_limited:`The provider rate limit was reached. Try again shortly.`,provider_model_unavailable:`That model is unavailable for this provider.`,provider_network_error:`The provider could not be reached.`};function jW({relayProjectRef:e}){let t=et(),n=rB(),r=rH(),[i,a]=(0,I.useState)([]),o=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),s=R({queryKey:Z.bootstrap(e),queryFn:()=>o.getBootstrap()}),c=R({queryKey:Z.hostWorkspace(e),queryFn:()=>o.getWorkspace(),enabled:s.isSuccess}),l=R({queryKey:Z.hostSession(e),queryFn:()=>o.getSession(),enabled:s.isSuccess}),u=R({queryKey:Z.providerConfig(e),queryFn:()=>o.getProviderConfig(),enabled:s.isSuccess}),d=R({queryKey:Z.executionStatus(e),queryFn:()=>o.getExecutionStatus(),enabled:s.isSuccess}),f=R({queryKey:Z.readState(e),queryFn:()=>o.getReadState(),enabled:s.isSuccess}),p=R({queryKey:Z.projectPresence(e),queryFn:()=>wr(cB,e),enabled:s.isSuccess,staleTime:lB,refetchInterval:6e4});hB(s.isSuccess);let m=gt({mutationFn:e=>o.updateProjectDisplayName({display_name:e}),onMutate:e=>n.notify({tone:`loading`,title:`Saving project name`,message:e}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates??[{kind:`workspace`},{kind:`bootstrap`}]),n.update(a,{tone:`success`,title:`Project name saved`,message:i})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Project name save failed`,message:`${t}: ${$(e)}`})}}),h=gt({mutationFn:e=>o.updateProjectDescription({description:e}),onMutate:e=>n.notify({tone:`loading`,title:`Saving project description`,...e.length===0?{}:{message:e}}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates??[{kind:`workspace`},{kind:`bootstrap`}]),n.update(a,{tone:`success`,title:`Project description saved`,...i.length===0?{}:{message:i}})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Project description save failed`,message:$(e)})}}),g=gt({mutationFn:()=>o.getProviderModels(),onSuccess:e=>{if(e.status===`available`){a(e.models);return}a([]),n.notify({tone:`warning`,title:`Model list unavailable`,message:`You can still enter a model name manually.`})},onError:e=>{a([]),n.notify({tone:`warning`,title:`Model list unavailable`,message:`${$(e)} You can still enter a model name manually.`})}}),_=gt({mutationFn:e=>o.updateProviderDefaultModel({default_model:e.defaultModel,expected_default_model:e.expectedDefaultModel}),onMutate:e=>n.notify({tone:`loading`,title:`Validating model`,message:e.defaultModel}),onSuccess:(r,i,a)=>{switch(gB(t,e,r.invalidates),r.disposition.kind){case`updated`:case`unchanged`:n.update(a,{tone:`success`,title:r.disposition.kind===`updated`?`Model saved`:`Model unchanged`,message:i.defaultModel});break;case`stale_default_model`:n.update(a,{tone:`warning`,title:`Model changed elsewhere`,message:`The current model is ${r.disposition.current_default_model}. Review and save again.`});break;case`validation_failed`:n.update(a,{tone:`error`,title:`Model validation failed`,message:AW[r.disposition.reason]});break;case`provider_unavailable`:n.update(a,{tone:`error`,title:`Provider unavailable`,message:`The project provider configuration is not ready.`});break;case`interrupted`:n.update(a,{tone:`warning`,title:`Model update interrupted`,message:`Try saving again.`});break}},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Model update failed`,message:$(e)})}}),v=s.data,y=v?.generated_at??new Date(0).toISOString(),b=f.data??v?.snapshots.read_state,x=c.data??v?.workspace,S=l.data??v?.session,C=u.data??v?.provider_config,w=d.data??v?.snapshots.execution_status??CB(y),T=x===void 0||S===void 0||C===void 0?void 0:Wi(x,S,C,p.data?.presence),E=T===void 0&&(s.error!==null||c.error!==null||l.error!==null||u.error!==null),ee=x?.relay.join_url,D=ee===void 0||x===void 0||S===void 0?void 0:jH({inviterName:S.account.display_name,projectName:x.project.display_name,joinUrl:ee}),O=S?.membership.label===`owner`&&x?.capabilities.provider_model_update===!0&&C?.status===`configured`,k=C?.status===`configured`?C.default_model:void 0,A=k===void 0||i.includes(k)?i:[k,...i];return(0,L.jsx)(Hz,{...T===void 0?{}:{settings:T},statusShortcuts:uC(w),unread:bB(b),artifactSignal:r.sidebarSignal,loading:T===void 0&&(s.isLoading||c.isLoading||l.isLoading||u.isLoading),unavailable:E,projectNameSaving:m.isPending,projectDescriptionSaving:h.isPending,providerModelOptions:A,providerModelEditable:O,providerModelDiscovering:g.isPending,providerModelSaving:_.isPending,onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenWorklist:()=>Q(OB(e)),onOpenReferences:()=>Q(EB(e)),onOpenArtifacts:()=>Q(DB(e)),onOpenSkills:()=>Q(MB(e)),onOpenTimeline:()=>Q(jB(e)),onActivateStatusShortcut:t=>PB(e,t),...D===void 0?{}:{onCopyJoinUrl:()=>{navigator.clipboard.writeText(D).then(()=>{n.notify({tone:`success`,title:`Invitation copied`})}).catch(()=>{n.notify({tone:`error`,title:`Copy failed`,message:`The browser could not copy the invite link.`})})}},onUpdateProjectDisplayName:async e=>{await m.mutateAsync(e)},onUpdateProjectDescription:async e=>{await h.mutateAsync(e)},...O?{onDiscoverProviderModels:async()=>{a([]),await g.mutateAsync()},onUpdateProviderDefaultModel:async(e,t)=>{try{let n=await _.mutateAsync({defaultModel:e,expectedDefaultModel:t});return n.disposition.kind===`updated`||n.disposition.kind===`unchanged`?{kind:`saved`}:n.disposition.kind===`stale_default_model`?{kind:`stale`,currentValue:n.disposition.current_default_model}:{kind:`failed`}}catch{return{kind:`failed`}}}}:{}})}function MW({relayProjectRef:e}){let t=et(),n=rB(),r=rH(),i=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),a=new URL(uB(),window.location.origin).searchParams.get(`skill`)??void 0,[o,s]=(0,I.useState)(a),c=R({queryKey:Z.bootstrap(e),queryFn:()=>i.getBootstrap(),staleTime:lB}),l=R({queryKey:Z.skills(e),queryFn:()=>i.getSkills(),enabled:c.isSuccess,staleTime:lB}),u=R({queryKey:Z.executionStatus(e),queryFn:()=>i.getExecutionStatus(),enabled:c.isSuccess,staleTime:lB}),d=R({queryKey:Z.readState(e),queryFn:()=>i.getReadState(),enabled:c.isSuccess,staleTime:lB}),f=l.data?.items??[];(0,I.useEffect)(()=>{if(f.length===0){o!==void 0&&s(void 0);return}if(a!==void 0&&f.some(e=>e.name===a)){o!==a&&s(a);return}(o===void 0||!f.some(e=>e.name===o))&&s(f[0]?.name)},[a,o,f]);let p=R({queryKey:o===void 0?Z.skillDetail(e,`none`):Z.skillDetail(e,o),queryFn:()=>i.getSkill(o),enabled:c.isSuccess&&o!==void 0,staleTime:lB}),m=gt({mutationFn:async t=>{let n=await VB({relayProjectRef:e,purpose:`skill_zip`,file:t});return i.importSkillZip(n)},onMutate:e=>n.notify({tone:`loading`,title:`Uploading skill`,message:e.name}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates);let o=r.result?.skill.name??(r.disposition.kind===`created`||r.disposition.kind===`replaced`?r.disposition.skill_name:void 0);o!==void 0&&(s(o),Q(MB(e,o))),n.update(a,{tone:`success`,title:`Skill installed`,message:o??i.name})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Skill upload failed`,message:$(e)})}}),h=gt({mutationFn:e=>i.deleteSkill({skill_name:e}),onMutate:e=>n.notify({tone:`loading`,title:`Deleting skill`,message:e}),onSuccess:(r,i,a)=>{gB(t,e,r.invalidates);let c=r.disposition.kind===`deleted`||r.disposition.kind===`not_found`?r.disposition.skill_name:o,l=f.find(e=>e.name!==c);s(l?.name),Q(l===void 0?MB(e):MB(e,l.name)),n.update(a,{tone:`success`,title:`Skill deleted`,message:c??i})},onError:(e,t,r)=>{n.update(r,{tone:`error`,title:`Skill delete failed`,message:`${t}: ${$(e)}`})}}),g=c.data,_=g?.generated_at??new Date(0).toISOString(),v=d.data??g?.snapshots.read_state;xB({enabled:c.isSuccess,hostClient:i,relayProjectRef:e,readState:v,scope:`skills`});let y=u.data??g?.snapshots.execution_status??CB(_),b=f.map(e=>({name:e.name,description:e.description,...e.short_description===void 0?{}:{shortDescription:e.short_description},selected:e.name===o,...e.updated_at===void 0?{}:{updatedLabel:`Updated ${Nr(e.updated_at)}`}})),x=f.find(e=>e.name===o),S=(()=>{let e=p.data?.skill;return e===void 0?o===void 0?{title:f.length===0?`No skills`:`No skill selected`,unavailableReason:f.length===0?`No user skills`:`Select a skill`}:{title:x?.name??o,...x?.description===void 0?{}:{description:x.description},unavailableReason:p.isLoading?`Loading`:`Skill unavailable`}:{title:e.name,description:e.description,...e.updated_at===void 0?{}:{updatedLabel:`Updated ${Nr(e.updated_at)}`},skillMd:e.skill_md}})(),C=l.data!==void 0,w=!C&&(c.error!==null||l.error!==null);return(0,L.jsx)(Wz,{statusShortcuts:uC(y),unread:bB(v),artifactSignal:r.sidebarSignal,skills:b,detail:S,uploadPending:m.isPending,deletePending:h.isPending,loading:!C&&(c.isLoading||l.isLoading),unavailable:w,onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenWorklist:()=>Q(OB(e)),onOpenReferences:()=>Q(EB(e)),onOpenArtifacts:()=>Q(DB(e)),onOpenTimeline:()=>Q(jB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t),onSelectSkill:t=>{s(t),Q(MB(e,t))},onUploadSkill:e=>m.mutate(e),onDeleteSkill:e=>h.mutate(e)})}function NW({relayProjectRef:e}){let t=rH(),n=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),r=R({queryKey:Z.bootstrap(e),queryFn:()=>n.getBootstrap(),staleTime:lB}),i=R({queryKey:Z.projectTimeline(e),queryFn:()=>n.getProjectTimeline(),enabled:r.isSuccess,staleTime:lB}),a=R({queryKey:Z.executionStatus(e),queryFn:()=>n.getExecutionStatus(),enabled:r.isSuccess,staleTime:lB}),o=R({queryKey:Z.readState(e),queryFn:()=>n.getReadState(),enabled:r.isSuccess,staleTime:lB}),s=r.data,c=s?.generated_at??new Date(0).toISOString(),l=o.data??s?.snapshots.read_state,u=a.data??s?.snapshots.execution_status??CB(c),d=i.data===void 0&&(r.error!==null||i.error!==null);return(0,L.jsx)(Gz,{...i.data===void 0?{}:{timeline:ES(i.data,{onOpenWorklistTask:t=>Q(OB(e,t)),onOpenChatMessage:t=>Q(kB(e,t)),onOpenReferenceFile:t=>Q(EB(e,t))})},statusShortcuts:uC(u),unread:bB(l),artifactSignal:t.sidebarSignal,loading:i.data===void 0&&(r.isLoading||i.isLoading),unavailable:d,onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenWorklist:()=>Q(OB(e)),onOpenReferences:()=>Q(EB(e)),onOpenArtifacts:()=>Q(DB(e)),onOpenSkills:()=>Q(MB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t)})}function PW({relayProjectRef:e}){let t=rH(),n=(0,I.useMemo)(()=>Un({...cB,relayProjectRef:e}),[e]),r=RU({hostClient:n,relayProjectRef:e}),i=new URL(uB(),window.location.origin).searchParams.get(`task`)??void 0,[a,o]=(0,I.useState)(void 0),s=R({queryKey:Z.bootstrap(e),queryFn:()=>n.getBootstrap()}),c=R({queryKey:Z.worklist(e),queryFn:()=>n.getWorklist(),enabled:s.isSuccess}),l=R({queryKey:Z.executionStatus(e),queryFn:()=>n.getExecutionStatus(),enabled:s.isSuccess}),u=R({queryKey:Z.readState(e),queryFn:()=>n.getReadState(),enabled:s.isSuccess}),d=s.data,f=d?.generated_at??new Date(0).toISOString(),p=c.data??d?.snapshots.worklist??vB(),m=u.data??d?.snapshots.read_state;xB({enabled:s.isSuccess,hostClient:n,relayProjectRef:e,readState:m,scope:`worklist`});let h=(0,I.useMemo)(()=>Ti(p),[p]),g=i!==void 0&&h.some(e=>e.id===i),_=i!==void 0&&!g?i:void 0;(0,I.useEffect)(()=>{if(i!==void 0){o(g?e=>e===i?e:i:void 0);return}if(h.length===0){o(void 0);return}(a===void 0||!h.some(e=>e.id===a))&&o(FB(p,void 0))},[g,i,a,h,p]);let v=R({queryKey:a===void 0?Z.taskDetail(e,`none`):Z.taskDetail(e,a),queryFn:()=>n.getTaskDetail(a),enabled:s.isSuccess&&a!==void 0}),y=R({queryKey:a===void 0?Z.taskRunResults(e,`none`):Z.taskRunResults(e,a),queryFn:()=>n.getTaskRunResults(a,{limit:50}),enabled:s.isSuccess&&a!==void 0}),b=l.data??d?.snapshots.execution_status??CB(f),x=wi(p,a),S=Fi(v.data,y.data),C=v.data?.detail.result.latest_run_result_id,w=v.data?.detail.result.retry_action,T=S===void 0||C===void 0||w===void 0?S:{...S,retryAction:{state:r.stateFor(S.taskId,C,w)??w,onRetry:()=>r.retry(S.taskId,C)}},E=c.data!==void 0||d?.snapshots.worklist!==void 0,ee=!E&&(s.error!==null||c.error!==null);return(0,L.jsx)(Kz,{statusShortcuts:uC(b),unread:bB(m),artifactSignal:t.sidebarSignal,modules:x.modules,taskCount:x.taskCount,...T===void 0?{}:{detail:T},..._===void 0?{}:{missingTaskId:_},loading:!E&&(s.isLoading||c.isLoading),unavailable:ee,onOpenProjectCenter:()=>Q(`/projects`),onOpenChat:()=>Q(en(e)),onOpenReferences:()=>Q(EB(e)),onOpenArtifacts:()=>Q(DB(e)),onOpenSkills:()=>Q(MB(e)),onOpenTimeline:()=>Q(jB(e)),onOpenSettings:()=>Q(AB(e)),onActivateStatusShortcut:t=>PB(e,t),onSelectTask:t=>{o(t),Q(OB(e,t))}})}var FW=`is-scrollbar-active`,IW=1e3;function LW(e,t){let n=e.target;return n instanceof Element?n:t.scrollingElement??t.documentElement}function RW(e){let t=new Map,n=e=>{let n=t.get(e);n!==void 0&&(window.clearTimeout(n),t.delete(e)),e.classList.remove(FW)},r=e=>{let r=t.get(e);r!==void 0&&window.clearTimeout(r),e.classList.add(FW);let i=window.setTimeout(()=>n(e),IW);t.set(e,i)},i=t=>{r(LW(t,e))};return e.addEventListener(`scroll`,i,{capture:!0,passive:!0}),()=>{e.removeEventListener(`scroll`,i,!0);for(let[e,n]of t)window.clearTimeout(n),e.classList.remove(FW);t.clear()}}var zW=`--tutti-viewport-height`,BW=`--tutti-viewport-offset-top`;function VW(e,t=window){let n=e.documentElement,r=t.visualViewport,i=()=>{let e=r?.height??t.innerHeight,i=r?.offsetTop??0;n.style.setProperty(zW,`${Math.max(0,e)}px`),n.style.setProperty(BW,`${Math.max(0,i)}px`)};return i(),t.addEventListener(`resize`,i),t.addEventListener(`orientationchange`,i),r?.addEventListener(`resize`,i),r?.addEventListener(`scroll`,i),()=>{t.removeEventListener(`resize`,i),t.removeEventListener(`orientationchange`,i),r?.removeEventListener(`resize`,i),r?.removeEventListener(`scroll`,i),n.style.removeProperty(zW),n.style.removeProperty(BW)}}var HW=new Xe({defaultOptions:{queries:{retry:!1,refetchOnWindowFocus:!1}}});function UW(){let e=fB();if(e.kind===`local_console`)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:e}),(0,L.jsx)(LH,{})]});if(e.kind===`local_console_account_gate`)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:e}),(0,L.jsx)(BH,{})]});if(e.kind===`home`)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:e}),(0,L.jsx)(hH,{})]});if(e.kind===`join`)return(0,L.jsx)(nV,{joinToken:e.joinToken});if(e.kind===`feishu_project`)return(0,L.jsx)(pH,{relayProjectRef:e.relayProjectRef});if(e.kind===`legacy_feishu_project`)return(0,L.jsx)(iH,{relayProjectRef:e.relayProjectRef});if(e.kind===`setup`)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(jr,{route:e}),(0,L.jsx)(jU,{})]});if(e.kind===`project_open`)return(0,L.jsx)(gU,{requestedOpenProjectRef:e.relayProjectRef});if(e.kind===`workspace`||e.kind===`worklist`||e.kind===`references`||e.kind===`artifacts`||e.kind===`skills`||e.kind===`timeline`||e.kind===`settings`){let t=e.kind===`workspace`?(0,L.jsx)(qU,{relayProjectRef:e.relayProjectRef}):e.kind===`worklist`?(0,L.jsx)(PW,{relayProjectRef:e.relayProjectRef}):e.kind===`references`?(0,L.jsx)(kW,{relayProjectRef:e.relayProjectRef}):e.kind===`artifacts`?(0,L.jsx)(OW,{relayProjectRef:e.relayProjectRef}):e.kind===`skills`?(0,L.jsx)(MW,{relayProjectRef:e.relayProjectRef}):e.kind===`timeline`?(0,L.jsx)(NW,{relayProjectRef:e.relayProjectRef}):(0,L.jsx)(jW,{relayProjectRef:e.relayProjectRef});return(0,L.jsxs)(ZU,{relayProjectRef:e.relayProjectRef,children:[t,(0,L.jsx)(QU,{relayProjectRef:e.relayProjectRef})]},e.relayProjectRef)}return(0,L.jsx)(gU,{})}function WW(){return(0,I.useEffect)(()=>{let e=RW(document),t=VW(document);return()=>{e(),t()}},[]),(0,L.jsx)(tt,{client:HW,children:(0,L.jsx)(nB,{children:(0,L.jsx)(UW,{})})})}function GW(e){let t=document.querySelector(`link[rel="icon"]`),n=t??document.createElement(`link`);n.rel=`icon`,n.type=`image/png`,n.sizes=`1204x1204`,n.href=e,t===null&&document.head.append(n)}GW(SC),(0,vt.createRoot)(document.getElementById(`root`)).render((0,L.jsx)(I.StrictMode,{children:(0,L.jsx)(WW,{})}));export{B as C,aa as S,Oa as _,kf as a,ca as b,zf as c,Za as d,Xa as f,Na as g,Fa as h,If as i,Nf as l,La as m,xf as n,jf as o,qa as p,Rf as r,Lf as s,ax as t,io as u,Da as v,Qe as w,oa as x,ya as y};