@pasko70/pibo 3.2.0 → 3.2.2

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.
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dist-mpRGeo_R.js","assets/dist-CqM4On9D.js","assets/dist-S3zJGntM.js","assets/dist-DHvUPfrF.js","assets/dist-DLJCGrGQ.js","assets/dist-LCx98fA_.js","assets/dist-DpF08Yd7.js","assets/dist-CiwafO2k.js","assets/dist-RKTRnzGb.js","assets/dist-fPhZsAUX.js","assets/dist-NsHPx2KS.js","assets/dist-DD2HRAgt.js","assets/dist-DTeLDijr.js","assets/dist-eddbbGyw.js","assets/dist-BJ-TIk3N.js","assets/dist-DMiglryg.js","assets/dist-XVYGiB-c.js","assets/dist-CswnpKik.js","assets/dockerfile-DJkHQgkl.js","assets/simple-mode-DXiLM1-G.js","assets/factor-LKH5gN8L.js","assets/nsis-CfSuhXs5.js","assets/pug-Gsm0M45u.js","assets/javascript-DoL9Wb-Q.js","assets/dist-jgYATWSF.js","assets/dist-BAXv9edD.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dist-mpRGeo_R.js","assets/dist-CqM4On9D.js","assets/dist-S3zJGntM.js","assets/dist-DHvUPfrF.js","assets/dist-DLJCGrGQ.js","assets/dist-LCx98fA_.js","assets/dist-DpF08Yd7.js","assets/dist-CQF9jyQW.js","assets/dist-RKTRnzGb.js","assets/dist-fPhZsAUX.js","assets/dist-BL4oTUrk.js","assets/dist-f-76_fmW.js","assets/dist-DTeLDijr.js","assets/dist-eddbbGyw.js","assets/dist-BJ-TIk3N.js","assets/dist-DMiglryg.js","assets/dist-XVYGiB-c.js","assets/dist-CswnpKik.js","assets/dockerfile-DJkHQgkl.js","assets/simple-mode-DXiLM1-G.js","assets/factor-LKH5gN8L.js","assets/nsis-CfSuhXs5.js","assets/pug-Gsm0M45u.js","assets/javascript-DoL9Wb-Q.js","assets/dist-Drv_xdGh.js","assets/dist-DI39iyXK.js"])))=>i.map(i=>d[i]);
2
2
  import{a as e,n as t,o as n,s as r,t as i}from"./dist-DLJCGrGQ.js";import{$ as a,A as o,At as s,B as c,Bt as l,C as u,Ct as d,D as f,Dt as p,E as m,Et as h,F as g,Ft as _,G as v,H as y,Ht as b,I as x,It as S,J as C,K as w,L as T,Lt as E,M as D,N as O,Nt as k,O as A,P as j,Pt as M,Q as N,R as P,Rt as F,S as I,St as L,T as R,Tt as z,U as B,V as ee,Vt as te,W as ne,X as re,Y as V,Z as ie,_ as ae,a as oe,at as se,b as ce,bt as le,c as ue,ct as de,d as fe,dt as pe,et as me,f as he,g as ge,gt as _e,h as ve,ht as ye,i as be,j as xe,jt as Se,k as Ce,kt as we,l as H,lt as Te,m as Ee,mt as De,n as Oe,nt as ke,o as Ae,ot as je,p as Me,pt as Ne,q as Pe,r as Fe,rt as Ie,s as Le,st as Re,t as ze,tt as Be,u as Ve,ut as He,v as Ue,vt as We,w as Ge,wt as Ke,x as qe,xt as Je,y as Ye,yt as Xe,z as Ze,zt as Qe}from"./dist-CqM4On9D.js";import{a as $e,c as et,i as tt,n as nt,o as rt,r as it,s as at,t as ot}from"./dist-S3zJGntM.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var st=e((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function k(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var A=/\/+/g;function j(e,t){return typeof e==`object`&&e&&e.key!=null?k(``+e.key):t.toString(36)}function M(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function N(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,N(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+j(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(A,`$&/`)+`/`),N(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(A,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+j(a,u),c+=N(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+j(a,u++),c+=N(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return N(M(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function P(e,t,n){if(e==null)return e;var r=[],i=0;return N(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function F(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var I=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},L={map:P,forEach:function(e,t,n){P(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return P(e,function(){t++}),t},toArray:function(e){return P(e,function(e){return e})||[]},only:function(e){if(!O(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=L,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=O,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:F}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,I)}catch(e){I(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.8`})),ct=e(((e,t)=>{t.exports=st()})),lt=e((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m){if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&j(x,t.startTime-e)}}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&j(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var k=new MessageChannel,A=k.port2;k.port1.onmessage=D,O=function(){A.postMessage(null)}}else O=function(){_(D,0)};function j(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,j(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),ut=e(((e,t)=>{t.exports=lt()})),dt=e((e=>{var t=ct();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},a=Symbol.for(`react.portal`);function o(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var s=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return o(e,t,null,r)},e.flushSync=function(e){var t=s.T,n=i.p;try{if(s.T=null,i.p=2,e)return e()}finally{s.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`){if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=c(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??i.d.M(e)}},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`){if(t){var n=c(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else i.d.m(e)}},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return s.H.useFormState(e,t,n)},e.useFormStatus=function(){return s.H.useHostTransitionStatus()},e.version=`19.2.8`})),ft=e(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=dt()})),pt=e((e=>{var t=ut(),n=ct(),r=ft();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function d(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=d(e),t!==null)return t;e=e.sibling}return null}var f=Object.assign,p=Symbol.for(`react.element`),m=Symbol.for(`react.transitional.element`),h=Symbol.for(`react.portal`),g=Symbol.for(`react.fragment`),_=Symbol.for(`react.strict_mode`),v=Symbol.for(`react.profiler`),y=Symbol.for(`react.consumer`),b=Symbol.for(`react.context`),x=Symbol.for(`react.forward_ref`),S=Symbol.for(`react.suspense`),C=Symbol.for(`react.suspense_list`),w=Symbol.for(`react.memo`),T=Symbol.for(`react.lazy`),E=Symbol.for(`react.activity`),D=Symbol.for(`react.memo_cache_sentinel`),O=Symbol.iterator;function k(e){return typeof e!=`object`||!e?null:(e=O&&e[O]||e[`@@iterator`],typeof e==`function`?e:null)}var A=Symbol.for(`react.client.reference`);function j(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===A?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case g:return`Fragment`;case v:return`Profiler`;case _:return`StrictMode`;case S:return`Suspense`;case C:return`SuspenseList`;case E:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case h:return`Portal`;case b:return e.displayName||`Context`;case y:return(e._context.displayName||`Context`)+`.Consumer`;case x:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case w:return t=e.displayName||null,t===null?j(e.type)||`Memo`:t;case T:t=e._payload,e=e._init;try{return j(e(t))}catch{}}return null}var M=Array.isArray,N=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,P=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,F={pending:!1,data:null,method:null,action:null},I=[],L=-1;function R(e){return{current:e}}function z(e){0>L||(e.current=I[L],I[L]=null,L--)}function B(e,t){L++,I[L]=e.current,e.current=t}var ee=R(null),te=R(null),ne=R(null),re=R(null);function V(e,t){switch(B(ne,t),B(te,e),B(ee,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Hd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Hd(t),e=Ud(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}z(ee),B(ee,e)}function ie(){z(ee),z(te),z(ne)}function ae(e){e.memoizedState!==null&&B(re,e);var t=ee.current,n=Ud(t,e.type);t!==n&&(B(te,e),B(ee,n))}function oe(e){te.current===e&&(z(ee),z(te)),re.current===e&&(z(re),Zf._currentValue=F)}var se,ce;function le(e){if(se===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);se=t&&t[1]||``,ce=-1<e.stack.indexOf(`
3
3
  at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
4
4
  `+se+e+ce}var ue=!1;function de(e,t){if(!e||ue)return``;ue=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
@@ -172,7 +172,7 @@ Error generating stack: `+e.message+`
172
172
  \${}
173
173
  }`,{label:`interface`,detail:`definition`,type:`keyword`}),et("type ${name} = ${type}",{label:`type`,detail:`definition`,type:`keyword`}),et(`enum \${name} {
174
174
  \${}
175
- }`,{label:`enum`,detail:`definition`,type:`keyword`})]),JI=new B,YI=new Set([`Script`,`Block`,`FunctionExpression`,`FunctionDeclaration`,`ArrowFunction`,`MethodDeclaration`,`ForStatement`]);function XI(e){return(t,n)=>{let r=t.node.getChild(`VariableDefinition`);return r&&n(r,e),!0}}var rbe=[`FunctionDeclaration`],ibe={FunctionDeclaration:XI(`function`),ClassDeclaration:XI(`class`),ClassExpression:()=>!0,EnumDeclaration:XI(`constant`),TypeAliasDeclaration:XI(`type`),NamespaceDeclaration:XI(`namespace`),VariableDefinition(e,t){e.matchContext(rbe)||t(e,`variable`)},TypeDefinition(e,t){t(e,`type`)},__proto__:null};function ZI(e,t){let n=JI.get(t);if(n)return n;let r=[],i=!0;function a(t,n){let i=e.sliceString(t.from,t.to);r.push({label:i,type:n})}return t.cursor(Ze.IncludeAnonymous).iterate(t=>{if(i)i=!1;else if(t.name){let e=ibe[t.name];if(e&&e(t,a)||YI.has(t.name))return!1}else if(t.to-t.from>8192){for(let n of ZI(e,t.node))r.push(n);return!1}}),JI.set(t,r),r}var QI=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,$I=[`TemplateString`,`String`,`RegExp`,`LineComment`,`BlockComment`,`VariableDefinition`,`TypeDefinition`,`Label`,`PropertyDefinition`,`PropertyName`,`PrivatePropertyDefinition`,`PrivatePropertyName`,`JSXText`,`JSXAttributeValue`,`JSXOpenTag`,`JSXCloseTag`,`JSXSelfClosingTag`,`.`,`?.`];function eL(e){let t=g(e.state).resolveInner(e.pos,-1);if($I.indexOf(t.name)>-1)return null;let n=t.name==`VariableName`||t.to-t.from<20&&QI.test(e.state.sliceDoc(t.from,t.to));if(!n&&!e.explicit)return null;let r=[];for(let n=t;n;n=n.parent)YI.has(n.name)&&(r=r.concat(ZI(e.state.doc,n)));return{options:r,from:n?t.from:e.pos,validFor:QI}}var tL=Le.define({name:`javascript`,parser:nbe.configure({props:[f.add({IfStatement:ve({except:/^\s*({|else\b)/}),TryStatement:ve({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:Ye,SwitchBody:e=>{let t=e.textAfter,n=/^\s*\}/.test(t),r=/^\s*(case|default)\b/.test(t);return e.baseIndent+(n?0:r?1:2)*e.unit},Block:Ue({closing:`}`}),ArrowFunction:e=>e.baseIndent+e.unit,"TemplateString BlockComment":()=>null,"Statement Property":ve({except:/^\s*{/}),JSXElement(e){let t=/^\s*<\//.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},JSXEscape(e){let t=/\s*\}/.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},"JSXOpenTag JSXSelfClosingTag"(e){return e.column(e.node.from)+e.unit}}),u.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":qe,BlockComment(e){return{from:e.from+2,to:e.to-2}},JSXElement(e){let t=e.firstChild;if(!t||t.name==`JSXSelfClosingTag`)return null;let n=e.lastChild;return{from:t.to,to:n.type.isError?e.to:n.from}},"JSXSelfClosingTag JSXOpenTag"(e){let t=e.firstChild?.nextSibling,n=e.lastChild;return!t||t.type.isError?null:{from:t.to,to:n.type.isError?e.to:n.from}}})]}),languageData:{closeBrackets:{brackets:[`(`,`[`,`{`,`'`,`"`,"`"]},commentTokens:{line:`//`,block:{open:`/*`,close:`*/`}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:`$`}}),nL={test:e=>/^JSX/.test(e.name),facet:ae({commentTokens:{block:{open:`{/*`,close:`*/}`}}})},rL=tL.configure({dialect:`ts`},`typescript`),iL=tL.configure({dialect:`jsx`,props:[O.add(e=>e.isTop?[nL]:void 0)]}),aL=tL.configure({dialect:`jsx ts`,props:[O.add(e=>e.isTop?[nL]:void 0)]},`typescript`),oL=e=>({label:e,type:`keyword`}),sL=`break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield`.split(` `).map(oL),abe=sL.concat([`declare`,`implements`,`private`,`protected`,`public`].map(oL));function cL(e={}){let t=e.jsx?e.typescript?aL:iL:e.typescript?rL:tL,n=e.typescript?qI.concat(abe):KI.concat(sL);return new Ve(t,[tL.data.of({autocomplete:at($I,$e(n))}),tL.data.of({autocomplete:eL}),e.jsx?uL:[]])}function obe(e){for(;;){if(e.name==`JSXOpenTag`||e.name==`JSXSelfClosingTag`||e.name==`JSXFragmentTag`)return e;if(e.name==`JSXEscape`||!e.parent)return null;e=e.parent}}function lL(e,t,n=e.length){for(let r=t?.firstChild;r;r=r.nextSibling)if(r.name==`JSXIdentifier`||r.name==`JSXBuiltin`||r.name==`JSXNamespacedName`||r.name==`JSXMemberExpression`)return e.sliceString(r.from,Math.min(r.to,n));return``}var sbe=typeof navigator==`object`&&/Android\b/.test(navigator.userAgent),uL=V.inputHandler.of((e,t,n,r,i)=>{if((sbe?e.composing:e.compositionStarted)||e.state.readOnly||t!=n||r!=`>`&&r!=`/`||!tL.isActiveAt(e.state,t,-1))return!1;let a=i(),{state:o}=a,s=o.changeByRange(e=>{let{head:t}=e,n=g(o).resolveInner(t-1,-1),i;if(n.name==`JSXStartTag`&&(n=n.parent),!(o.doc.sliceString(t-1,t)!=r||n.name==`JSXAttributeValue`&&n.to>t)){if(r==`>`&&n.name==`JSXFragmentTag`)return{range:e,changes:{from:t,insert:`</>`}};if(r==`/`&&n.name==`JSXStartCloseTag`){let e=n.parent,r=e.parent;if(r&&e.from==t-2&&((i=lL(o.doc,r.firstChild,t))||r.firstChild?.name==`JSXFragmentTag`)){let e=`${i}>`;return{range:z.cursor(t+e.length,-1),changes:{from:t,insert:e}}}}else if(r==`>`){let r=obe(n);if(r&&r.name==`JSXOpenTag`&&!/^\/?>|^<\//.test(o.doc.sliceString(t,t+2))&&(i=lL(o.doc,r,t)))return{range:e,changes:{from:t,insert:`</${i}>`}}}}return{range:e}});return!s.changes.empty&&(e.dispatch([a,o.update(s,{userEvent:`input.complete`,scrollIntoView:!0})]),!0)}),cbe=n({autoCloseTags:()=>IL,html:()=>PL,htmlCompletionSource:()=>OL,htmlCompletionSourceWith:()=>kL,htmlLanguage:()=>NL}),dL=[`_blank`,`_self`,`_top`,`_parent`],fL=[`ascii`,`utf-8`,`utf-16`,`latin1`,`latin1`],pL=[`get`,`post`,`put`,`delete`],mL=[`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`],hL=[`true`,`false`],gL={},lbe={a:{attrs:{href:null,ping:null,type:null,media:null,target:dL,hreflang:null}},abbr:gL,address:gL,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:[`default`,`rect`,`circle`,`poly`]}},article:gL,aside:gL,audio:{attrs:{src:null,mediagroup:null,crossorigin:[`anonymous`,`use-credentials`],preload:[`none`,`metadata`,`auto`],autoplay:[`autoplay`],loop:[`loop`],controls:[`controls`]}},b:gL,base:{attrs:{href:null,target:dL}},bdi:gL,bdo:gL,blockquote:{attrs:{cite:null}},body:gL,br:gL,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:[`autofocus`],disabled:[`autofocus`],formenctype:mL,formmethod:pL,formnovalidate:[`novalidate`],formtarget:dL,type:[`submit`,`reset`,`button`]}},canvas:{attrs:{width:null,height:null}},caption:gL,center:gL,cite:gL,code:gL,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:[`command`,`checkbox`,`radio`],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:[`disabled`],checked:[`checked`]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:[`disabled`],multiple:[`multiple`]}},datalist:{attrs:{data:null}},dd:gL,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:[`open`]}},dfn:gL,div:gL,dl:gL,dt:gL,em:gL,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:[`disabled`],form:null,name:null}},figcaption:gL,figure:gL,footer:gL,form:{attrs:{action:null,name:null,"accept-charset":fL,autocomplete:[`on`,`off`],enctype:mL,method:pL,novalidate:[`novalidate`],target:dL}},h1:gL,h2:gL,h3:gL,h4:gL,h5:gL,h6:gL,head:{children:[`title`,`base`,`link`,`style`,`meta`,`script`,`noscript`,`command`]},header:gL,hgroup:gL,hr:gL,html:{attrs:{manifest:null}},i:gL,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:[`allow-top-navigation`,`allow-same-origin`,`allow-forms`,`allow-scripts`],seamless:[`seamless`]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:[`anonymous`,`use-credentials`]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:[`audio/*`,`video/*`,`image/*`],autocomplete:[`on`,`off`],autofocus:[`autofocus`],checked:[`checked`],disabled:[`disabled`],formenctype:mL,formmethod:pL,formnovalidate:[`novalidate`],formtarget:dL,multiple:[`multiple`],readonly:[`readonly`],required:[`required`],type:[`hidden`,`text`,`search`,`tel`,`url`,`email`,`password`,`datetime`,`date`,`month`,`week`,`time`,`datetime-local`,`number`,`range`,`color`,`checkbox`,`radio`,`file`,`submit`,`image`,`reset`,`button`]}},ins:{attrs:{cite:null,datetime:null}},kbd:gL,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:[`autofocus`],disabled:[`disabled`],keytype:[`RSA`]}},label:{attrs:{for:null,form:null}},legend:gL,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:[`all`,`16x16`,`16x16 32x32`,`16x16 32x32 64x64`]}},map:{attrs:{name:null}},mark:gL,menu:{attrs:{label:null,type:[`list`,`context`,`toolbar`]}},meta:{attrs:{content:null,charset:fL,name:[`viewport`,`application-name`,`author`,`description`,`generator`,`keywords`],"http-equiv":[`content-language`,`content-type`,`default-style`,`refresh`]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:gL,noscript:gL,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:[`typemustmatch`]}},ol:{attrs:{reversed:[`reversed`],start:null,type:[`1`,`a`,`A`,`i`,`I`]},children:[`li`,`script`,`template`,`ul`,`ol`]},optgroup:{attrs:{disabled:[`disabled`],label:null}},option:{attrs:{disabled:[`disabled`],label:null,selected:[`selected`],value:null}},output:{attrs:{for:null,form:null,name:null}},p:gL,param:{attrs:{name:null,value:null}},pre:gL,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:gL,rt:gL,ruby:gL,samp:gL,script:{attrs:{type:[`text/javascript`],src:null,async:[`async`],defer:[`defer`],charset:fL}},section:gL,select:{attrs:{form:null,name:null,size:null,autofocus:[`autofocus`],disabled:[`disabled`],multiple:[`multiple`]}},slot:{attrs:{name:null}},small:gL,source:{attrs:{src:null,type:null,media:null}},span:gL,strong:gL,style:{attrs:{type:[`text/css`],media:null,scoped:null}},sub:gL,summary:gL,sup:gL,table:gL,tbody:gL,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:gL,textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:[`autofocus`],disabled:[`disabled`],readonly:[`readonly`],required:[`required`],wrap:[`soft`,`hard`]}},tfoot:gL,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:[`row`,`col`,`rowgroup`,`colgroup`]}},thead:gL,time:{attrs:{datetime:null}},title:gL,tr:gL,track:{attrs:{src:null,label:null,default:null,kind:[`subtitles`,`captions`,`descriptions`,`chapters`,`metadata`],srclang:null}},ul:{children:[`li`,`script`,`template`,`ul`,`ol`]},var:gL,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:[`anonymous`,`use-credentials`],preload:[`auto`,`metadata`,`none`],autoplay:[`autoplay`],mediagroup:[`movie`],muted:[`muted`],controls:[`controls`]}},wbr:gL},_L={accesskey:null,class:null,contenteditable:hL,contextmenu:null,dir:[`ltr`,`rtl`,`auto`],draggable:[`true`,`false`,`auto`],dropzone:[`copy`,`move`,`link`,`string:`,`file:`],hidden:[`hidden`],id:null,inert:[`inert`],itemid:null,itemprop:null,itemref:null,itemscope:[`itemscope`],itemtype:null,lang:[`ar`,`bn`,`de`,`en-GB`,`en-US`,`es`,`fr`,`hi`,`id`,`ja`,`pa`,`pt`,`ru`,`tr`,`zh`],spellcheck:hL,autocorrect:hL,autocapitalize:hL,style:null,tabindex:null,title:null,translate:[`yes`,`no`],rel:[`stylesheet`,`alternate`,`author`,`bookmark`,`help`,`license`,`next`,`nofollow`,`noreferrer`,`prefetch`,`prev`,`search`,`tag`],role:`alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer`.split(` `),"aria-activedescendant":null,"aria-atomic":hL,"aria-autocomplete":[`inline`,`list`,`both`,`none`],"aria-busy":hL,"aria-checked":[`true`,`false`,`mixed`,`undefined`],"aria-controls":null,"aria-describedby":null,"aria-disabled":hL,"aria-dropeffect":null,"aria-expanded":[`true`,`false`,`undefined`],"aria-flowto":null,"aria-grabbed":[`true`,`false`,`undefined`],"aria-haspopup":hL,"aria-hidden":hL,"aria-invalid":[`true`,`false`,`grammar`,`spelling`],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":[`off`,`polite`,`assertive`],"aria-multiline":hL,"aria-multiselectable":hL,"aria-owns":null,"aria-posinset":null,"aria-pressed":[`true`,`false`,`mixed`,`undefined`],"aria-readonly":hL,"aria-relevant":null,"aria-required":hL,"aria-selected":[`true`,`false`,`undefined`],"aria-setsize":null,"aria-sort":[`ascending`,`descending`,`none`,`other`],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},vL=`beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload`.split(` `).map(e=>`on`+e);for(let e of vL)_L[e]=null;var yL=class{constructor(e,t){this.tags={...lbe,...e},this.globalAttrs={..._L,...t},this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}};yL.default=new yL;function bL(e,t,n=e.length){if(!t)return``;let r=t.firstChild,i=r&&r.getChild(`TagName`);return i?e.sliceString(i.from,Math.min(i.to,n)):``}function xL(e,t=!1){for(;e;e=e.parent)if(e.name==`Element`){if(t)t=!1;else return e}return null}function SL(e,t,n){return n.tags[bL(e,xL(t))]?.children||n.allTags}function CL(e,t){let n=[];for(let r=xL(t);r&&!r.type.isTop;r=xL(r.parent)){let i=bL(e,r);if(i&&r.lastChild.name==`CloseTag`)break;i&&n.indexOf(i)<0&&(t.name==`EndTag`||t.from>=r.firstChild.to)&&n.push(i)}return n}var wL=/^[:\-\.\w\u00b7-\uffff]*$/;function TL(e,t,n,r,i){let a=/\s*>/.test(e.sliceDoc(i,i+5))?``:`>`,o=xL(n,n.name==`StartTag`||n.name==`TagName`);return{from:r,to:i,options:SL(e.doc,o,t).map(e=>({label:e,type:`type`})).concat(CL(e.doc,n).map((e,t)=>({label:`/`+e,apply:`/`+e+a,type:`type`,boost:99-t}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function EL(e,t,n,r){let i=/\s*>/.test(e.sliceDoc(r,r+5))?``:`>`;return{from:n,to:r,options:CL(e.doc,t).map((e,t)=>({label:e,apply:e+i,type:`type`,boost:99-t})),validFor:wL}}function ube(e,t,n,r){let i=[],a=0;for(let r of SL(e.doc,n,t))i.push({label:`<`+r,type:`type`});for(let t of CL(e.doc,n))i.push({label:`</`+t+`>`,type:`type`,boost:99-a++});return{from:r,to:r,options:i,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function dbe(e,t,n,r,i){let a=xL(n),o=a?t.tags[bL(e.doc,a)]:null,s=o&&o.attrs?Object.keys(o.attrs):[];return{from:r,to:i,options:(o&&o.globalAttrs===!1?s:s.length?s.concat(t.globalAttrNames):t.globalAttrNames).map(e=>({label:e,type:`property`})),validFor:wL}}function fbe(e,t,n,r,i){let a=n.parent?.getChild(`AttributeName`),o=[],s;if(a){let c=e.sliceDoc(a.from,a.to),l=t.globalAttrs[c];if(!l){let r=xL(n),i=r?t.tags[bL(e.doc,r)]:null;l=i?.attrs&&i.attrs[c]}if(l){let t=e.sliceDoc(r,i).toLowerCase(),n=`"`,a=`"`;/^['"]/.test(t)?(s=t[0]==`"`?/^[^"]*$/:/^[^']*$/,n=``,a=e.sliceDoc(i,i+1)==t[0]?``:t[0],t=t.slice(1),r++):s=/^[^\s<>='"]*$/;for(let e of l)o.push({label:e,apply:n+e+a,type:`constant`})}}return{from:r,to:i,options:o,validFor:s}}function DL(e,t){let{state:n,pos:r}=t,i=g(n).resolveInner(r,-1),a=i.resolve(r);for(let e=r,t;a==i&&(t=i.childBefore(e));){let n=t.lastChild;if(!n||!n.type.isError||n.from<n.to)break;a=i=t,e=n.from}return i.name==`TagName`?i.parent&&/CloseTag$/.test(i.parent.name)?EL(n,i,i.from,r):TL(n,e,i,i.from,r):i.name==`StartTag`||i.name==`IncompleteTag`?TL(n,e,i,r,r):i.name==`StartCloseTag`||i.name==`IncompleteCloseTag`?EL(n,i,r,r):i.name==`OpenTag`||i.name==`SelfClosingTag`||i.name==`AttributeName`?dbe(n,e,i,i.name==`AttributeName`?i.from:r,r):i.name==`Is`||i.name==`AttributeValue`||i.name==`UnquotedAttributeValue`?fbe(n,e,i,i.name==`Is`?r:i.from,r):t.explicit&&(a.name==`Element`||a.name==`Text`||a.name==`Document`)?ube(n,e,i,r):null}function OL(e){return DL(yL.default,e)}function kL(e){let{extraTags:t,extraGlobalAttributes:n}=e,r=n||t?new yL(t,n):yL.default;return e=>DL(r,e)}var pbe=tL.parser.configure({top:`SingleExpression`}),AL=[{tag:`script`,attrs:e=>e.type==`text/typescript`||e.lang==`ts`,parser:rL.parser},{tag:`script`,attrs:e=>e.type==`text/babel`||e.type==`text/jsx`,parser:iL.parser},{tag:`script`,attrs:e=>e.type==`text/typescript-jsx`,parser:aL.parser},{tag:`script`,attrs(e){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(e.type)},parser:pbe},{tag:`script`,attrs(e){return!e.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(e.type)},parser:tL.parser},{tag:`style`,attrs(e){return(!e.lang||e.lang==`css`)&&(!e.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(e.type))},parser:t.parser}],jL=[{name:`style`,parser:t.parser.configure({top:`Styles`})}].concat(vL.map(e=>({name:e,parser:tL.parser}))),ML=Le.define({name:`html`,parser:Tye.configure({props:[f.add({Element(e){let t=/^(\s*)(<\/)?/.exec(e.textAfter);return e.node.to<=e.pos+t[0].length?e.continue():e.lineIndent(e.node.from)+(t[2]?0:e.unit)},"OpenTag CloseTag SelfClosingTag"(e){return e.column(e.node.from)+e.unit},Document(e){if(e.pos+/\s*/.exec(e.textAfter)[0].length<e.node.to)return e.continue();let t=null,n;for(let n=e.node;;){let e=n.lastChild;if(!e||e.name!=`Element`||e.to!=n.to)break;t=n=e}return t&&!((n=t.lastChild)&&(n.name==`CloseTag`||n.name==`SelfClosingTag`))?e.lineIndent(t.from)+e.unit:null}}),u.add({Element(e){let t=e.firstChild,n=e.lastChild;return!t||t.name!=`OpenTag`?null:{from:t.to,to:n.name==`CloseTag`?n.from:e.to}}}),Ee.add({"OpenTag CloseTag":e=>e.getChild(`TagName`)})]}),languageData:{commentTokens:{block:{open:`<!--`,close:`-->`}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:`-_`}}),NL=ML.configure({wrap:zI(AL,jL)});function PL(e={}){let t=``,n;e.matchClosingTags===!1&&(t=`noMatch`),e.selfClosingTags===!0&&(t=(t?t+` `:``)+`selfClosing`),(e.nestedLanguages&&e.nestedLanguages.length||e.nestedAttributes&&e.nestedAttributes.length)&&(n=zI((e.nestedLanguages||[]).concat(AL),(e.nestedAttributes||[]).concat(jL)));let r=n?ML.configure({wrap:n,dialect:t}):t?NL.configure({dialect:t}):NL;return new Ve(r,[NL.data.of({autocomplete:kL(e)}),e.autoCloseTags===!1?[]:IL,cL().support,i().support])}var FL=new Set(`area base br col command embed frame hr img input keygen link meta param source track wbr menuitem`.split(` `));function mbe(e,t,n){for(;;){if(t.lastChild?.name!=`CloseTag`)return!1;let r=t.parent;if(!r||bL(e,r)!=n)return!0;t=r}}var IL=V.inputHandler.of((e,t,n,r,i)=>{if(e.composing||e.state.readOnly||t!=n||r!=`>`&&r!=`/`||!NL.isActiveAt(e.state,t,-1))return!1;let a=i(),{state:o}=a,s=o.changeByRange(e=>{let t=o.doc.sliceString(e.from-1,e.to)==r,{head:n}=e,i=g(o).resolveInner(n,-1),a;if(t&&r==`>`&&i.name==`EndTag`){let t=i.parent;if((a=bL(o.doc,t.parent,n))&&!FL.has(a)&&!mbe(o.doc,t.parent,a))return{range:e,changes:{from:n,to:n+ +(o.doc.sliceString(n,n+1)===`>`),insert:`</${a}>`}}}else if(t&&r==`/`&&i.name==`IncompleteCloseTag`){let e=i.parent;if(i.from==n-2&&e.lastChild?.name!=`CloseTag`&&(a=bL(o.doc,e,n))&&!FL.has(a)){let e=n+ +(o.doc.sliceString(n,n+1)===`>`),t=`${a}>`;return{range:z.cursor(n+t.length,-1),changes:{from:n,to:e,insert:t}}}}return{range:e}});return!s.changes.empty&&(e.dispatch([a,o.update(s,{userEvent:`input.complete`,scrollIntoView:!0})]),!0)});function hbe(e,t,n,r){let i=Ld(CS),a=zd(dC),o=U.useRef(null),{lexicalNode:s}=XP(),c=U.useRef(!1),l=U.useRef(!1),u=U.useCallback(()=>{a({editorType:t,rootNode:s,editorRef:o.current})},[t,s,a]),d=U.useCallback(t=>{if(t.key===`ArrowDown`){let t=o.current?.getCodemirror()?.state;t&&t.doc.length===t.selection.ranges[0].to&&(c.current?(i?.update(()=>{var t;let n=Xg(e);n.getNextSibling()?((t=o.current?.getCodemirror())==null||t.contentDOM.blur(),n.selectNext()):n.insertAfter(Ag())}),c.current=!1):c.current=!0)}else if(t.key===`ArrowUp`){let t=o.current?.getCodemirror()?.state;t&&t.selection.ranges[0].from===0&&(l.current?(i?.update(()=>{var t;let n=Xg(e);n.getPreviousSibling()&&((t=o.current?.getCodemirror())==null||t.contentDOM.blur(),n.selectPrevious())}),l.current=!1):l.current=!0)}else t.key===`Enter`?t.stopPropagation():(t.key===`Backspace`||t.key===`Delete`)&&(o.current?.getCodemirror()?.state)?.doc.length===0&&i?.update(()=>{Xg(e).remove()})},[i,e]);return U.useEffect(()=>{let e=o.current;return setTimeout(()=>{var t,n;(t=e?.getCodemirror())==null||t.contentDOM.addEventListener(`focus`,u),(n=e?.getCodemirror())==null||n.contentDOM.addEventListener(`keydown`,d)},300),()=>{var t,n;(t=e?.getCodemirror())==null||t.contentDOM.removeEventListener(`focus`,u),(n=e?.getCodemirror())==null||n.contentDOM.removeEventListener(`keydown`,d)}},[o,u,d,n]),U.useEffect(()=>{r.subscribe(()=>{var e;(e=o.current?.getCodemirror())==null||e.focus(),u()})},[r,o,e,u]),o}function Q(e){return new Ve(he.define(e))}function LL(e){return Z(()=>import(`./dist-mpRGeo_R.js`).then(t=>t.sql({dialect:t[e]})),__vite__mapDeps([0,1,2]))}var gbe=[H.of({name:`C`,extensions:[`c`,`h`,`ino`],load(){return Z(()=>import(`./dist-DHvUPfrF.js`).then(e=>e.cpp()),__vite__mapDeps([3,1]))}}),H.of({name:`C++`,alias:[`cpp`],extensions:[`cpp`,`c++`,`cc`,`cxx`,`hpp`,`h++`,`hh`,`hxx`],load(){return Z(()=>import(`./dist-DHvUPfrF.js`).then(e=>e.cpp()),__vite__mapDeps([3,1]))}}),H.of({name:`CQL`,alias:[`cassandra`],extensions:[`cql`],load(){return LL(`Cassandra`)}}),H.of({name:`CSS`,extensions:[`css`],load(){return Z(()=>import(`./dist-DLJCGrGQ.js`).then(e=>e.i).then(e=>e.css()),__vite__mapDeps([4,1]))}}),H.of({name:`Go`,extensions:[`go`],load(){return Z(()=>import(`./dist-LCx98fA_.js`).then(e=>e.go()),__vite__mapDeps([5,1,2]))}}),H.of({name:`HTML`,alias:[`xhtml`],extensions:[`html`,`htm`,`handlebars`,`hbs`],load(){return Z(()=>Promise.resolve().then(()=>cbe).then(e=>e.html()),void 0)}}),H.of({name:`Java`,extensions:[`java`],load(){return Z(()=>import(`./dist-DpF08Yd7.js`).then(e=>e.java()),__vite__mapDeps([6,1]))}}),H.of({name:`JavaScript`,alias:[`ecmascript`,`js`,`node`],extensions:[`js`,`mjs`,`cjs`],load(){return Z(()=>Promise.resolve().then(()=>GI).then(e=>e.javascript()),void 0)}}),H.of({name:`Jinja`,extensions:[`j2`,`jinja`,`jinja2`],load(){return Z(()=>import(`./dist-CiwafO2k.js`).then(e=>e.jinja()),__vite__mapDeps([7,1]))}}),H.of({name:`JSON`,alias:[`json5`],extensions:[`json`,`map`],load(){return Z(()=>import(`./dist-RKTRnzGb.js`).then(e=>e.json()),__vite__mapDeps([8,1]))}}),H.of({name:`JSX`,extensions:[`jsx`],load(){return Z(()=>Promise.resolve().then(()=>GI).then(e=>e.javascript({jsx:!0})),void 0)}}),H.of({name:`LESS`,extensions:[`less`],load(){return Z(()=>import(`./dist-fPhZsAUX.js`).then(e=>e.less()),__vite__mapDeps([9,4,1]))}}),H.of({name:`Liquid`,extensions:[`liquid`],load(){return Z(()=>import(`./dist-NsHPx2KS.js`).then(e=>e.liquid()),__vite__mapDeps([10,1]))}}),H.of({name:`MariaDB SQL`,load(){return LL(`MariaSQL`)}}),H.of({name:`Markdown`,extensions:[`md`,`markdown`,`mkd`],load(){return Z(()=>Promise.resolve().then(()=>vwe).then(e=>e.markdown()),void 0)}}),H.of({name:`MS SQL`,load(){return LL(`MSSQL`)}}),H.of({name:`MySQL`,load(){return LL(`MySQL`)}}),H.of({name:`PHP`,extensions:[`php`,`php3`,`php4`,`php5`,`php7`,`phtml`],load(){return Z(()=>import(`./dist-DD2HRAgt.js`).then(e=>e.php()),__vite__mapDeps([11,1]))}}),H.of({name:`PLSQL`,extensions:[`pls`],load(){return LL(`PLSQL`)}}),H.of({name:`PostgreSQL`,load(){return LL(`PostgreSQL`)}}),H.of({name:`Python`,extensions:[`BUILD`,`bzl`,`py`,`pyw`],filename:/^(BUCK|BUILD)$/,load(){return Z(()=>import(`./dist-DTeLDijr.js`).then(e=>e.python()),__vite__mapDeps([12,1,2]))}}),H.of({name:`Rust`,extensions:[`rs`],load(){return Z(()=>import(`./dist-eddbbGyw.js`).then(e=>e.rust()),__vite__mapDeps([13,1]))}}),H.of({name:`Sass`,extensions:[`sass`],load(){return Z(()=>import(`./dist-BJ-TIk3N.js`).then(e=>e.sass({indented:!0})),__vite__mapDeps([14,4,1]))}}),H.of({name:`SCSS`,extensions:[`scss`],load(){return Z(()=>import(`./dist-BJ-TIk3N.js`).then(e=>e.sass()),__vite__mapDeps([14,4,1]))}}),H.of({name:`SQL`,extensions:[`sql`],load(){return LL(`StandardSQL`)}}),H.of({name:`SQLite`,load(){return LL(`SQLite`)}}),H.of({name:`TSX`,extensions:[`tsx`],load(){return Z(()=>Promise.resolve().then(()=>GI).then(e=>e.javascript({jsx:!0,typescript:!0})),void 0)}}),H.of({name:`TypeScript`,alias:[`ts`],extensions:[`ts`,`mts`,`cts`],load(){return Z(()=>Promise.resolve().then(()=>GI).then(e=>e.javascript({typescript:!0})),void 0)}}),H.of({name:`WebAssembly`,extensions:[`wat`,`wast`],load(){return Z(()=>import(`./dist-DMiglryg.js`).then(e=>e.wast()),__vite__mapDeps([15,1]))}}),H.of({name:`XML`,alias:[`rss`,`wsdl`,`xsd`],extensions:[`xml`,`xsl`,`xsd`,`svg`],load(){return Z(()=>import(`./dist-XVYGiB-c.js`).then(e=>e.xml()),__vite__mapDeps([16,1]))}}),H.of({name:`YAML`,alias:[`yml`],extensions:[`yaml`,`yml`],load(){return Z(()=>import(`./dist-CswnpKik.js`).then(e=>e.yaml()),__vite__mapDeps([17,1]))}}),H.of({name:`APL`,extensions:[`dyalog`,`apl`],load(){return Z(()=>import(`./apl-gfMMiTNf.js`).then(e=>Q(e.apl)),[])}}),H.of({name:`PGP`,alias:[`asciiarmor`],extensions:[`asc`,`pgp`,`sig`],load(){return Z(()=>import(`./asciiarmor-C_eisQCp.js`).then(e=>Q(e.asciiArmor)),[])}}),H.of({name:`ASN.1`,extensions:[`asn`,`asn1`],load(){return Z(()=>import(`./asn1-DCl_8MCW.js`).then(e=>Q(e.asn1({}))),[])}}),H.of({name:`Asterisk`,filename:/^extensions\.conf$/i,load(){return Z(()=>import(`./asterisk-BEn0Cwpx.js`).then(e=>Q(e.asterisk)),[])}}),H.of({name:`Brainfuck`,extensions:[`b`,`bf`],load(){return Z(()=>import(`./brainfuck-D5EjA2JK.js`).then(e=>Q(e.brainfuck)),[])}}),H.of({name:`Cobol`,extensions:[`cob`,`cpy`],load(){return Z(()=>import(`./cobol-DHLQUbN7.js`).then(e=>Q(e.cobol)),[])}}),H.of({name:`C#`,alias:[`csharp`,`cs`],extensions:[`cs`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.csharp)),[])}}),H.of({name:`Clojure`,extensions:[`clj`,`cljc`,`cljx`],load(){return Z(()=>import(`./clojure-BflJGmDX.js`).then(e=>Q(e.clojure)),[])}}),H.of({name:`ClojureScript`,extensions:[`cljs`],load(){return Z(()=>import(`./clojure-BflJGmDX.js`).then(e=>Q(e.clojure)),[])}}),H.of({name:`Closure Stylesheets (GSS)`,extensions:[`gss`],load(){return Z(()=>import(`./css-CnaYoQib.js`).then(e=>Q(e.gss)),[])}}),H.of({name:`CMake`,extensions:[`cmake`,`cmake.in`],filename:/^CMakeLists\.txt$/,load(){return Z(()=>import(`./cmake-84nbDH0I.js`).then(e=>Q(e.cmake)),[])}}),H.of({name:`CoffeeScript`,alias:[`coffee`,`coffee-script`],extensions:[`coffee`],load(){return Z(()=>import(`./coffeescript-De_zI4J0.js`).then(e=>Q(e.coffeeScript)),[])}}),H.of({name:`Common Lisp`,alias:[`lisp`],extensions:[`cl`,`lisp`,`el`],load(){return Z(()=>import(`./commonlisp-DgAKBe0r.js`).then(e=>Q(e.commonLisp)),[])}}),H.of({name:`Cypher`,extensions:[`cyp`,`cypher`],load(){return Z(()=>import(`./cypher-p9eYesGn.js`).then(e=>Q(e.cypher)),[])}}),H.of({name:`Cython`,extensions:[`pyx`,`pxd`,`pxi`],load(){return Z(()=>import(`./python-B_1Jd8HM.js`).then(e=>Q(e.cython)),[])}}),H.of({name:`Crystal`,extensions:[`cr`],load(){return Z(()=>import(`./crystal-Bsdphhtm.js`).then(e=>Q(e.crystal)),[])}}),H.of({name:`D`,extensions:[`d`],load(){return Z(()=>import(`./d-DWkQyNnU.js`).then(e=>Q(e.d)),[])}}),H.of({name:`Dart`,extensions:[`dart`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.dart)),[])}}),H.of({name:`diff`,extensions:[`diff`,`patch`],load(){return Z(()=>import(`./diff-ChtP43wD.js`).then(e=>Q(e.diff)),[])}}),H.of({name:`Dockerfile`,filename:/^Dockerfile$/,load(){return Z(()=>import(`./dockerfile-DJkHQgkl.js`).then(e=>Q(e.dockerFile)),__vite__mapDeps([18,19]))}}),H.of({name:`DTD`,extensions:[`dtd`],load(){return Z(()=>import(`./dtd-DTF72YNO.js`).then(e=>Q(e.dtd)),[])}}),H.of({name:`Dylan`,extensions:[`dylan`,`dyl`,`intr`],load(){return Z(()=>import(`./dylan-BCDoL_-p.js`).then(e=>Q(e.dylan)),[])}}),H.of({name:`EBNF`,load(){return Z(()=>import(`./ebnf-D4c0_ac3.js`).then(e=>Q(e.ebnf)),[])}}),H.of({name:`ECL`,extensions:[`ecl`],load(){return Z(()=>import(`./ecl-BVIeWmwY.js`).then(e=>Q(e.ecl)),[])}}),H.of({name:`edn`,extensions:[`edn`],load(){return Z(()=>import(`./clojure-BflJGmDX.js`).then(e=>Q(e.clojure)),[])}}),H.of({name:`Eiffel`,extensions:[`e`],load(){return Z(()=>import(`./eiffel-BEjRio4Q.js`).then(e=>Q(e.eiffel)),[])}}),H.of({name:`Elm`,extensions:[`elm`],load(){return Z(()=>import(`./elm-Cshzl8qu.js`).then(e=>Q(e.elm)),[])}}),H.of({name:`Erlang`,extensions:[`erl`],load(){return Z(()=>import(`./erlang-BV0c4Hdn.js`).then(e=>Q(e.erlang)),[])}}),H.of({name:`Esper`,load(){return Z(()=>import(`./sql-DuQMFDvy.js`).then(e=>Q(e.esper)),[])}}),H.of({name:`Factor`,extensions:[`factor`],load(){return Z(()=>import(`./factor-LKH5gN8L.js`).then(e=>Q(e.factor)),__vite__mapDeps([20,19]))}}),H.of({name:`FCL`,load(){return Z(()=>import(`./fcl-ClOhbFR7.js`).then(e=>Q(e.fcl)),[])}}),H.of({name:`Forth`,extensions:[`forth`,`fth`,`4th`],load(){return Z(()=>import(`./forth-Cezjo90N.js`).then(e=>Q(e.forth)),[])}}),H.of({name:`Fortran`,extensions:[`f`,`for`,`f77`,`f90`,`f95`],load(){return Z(()=>import(`./fortran-Bt6PBEDR.js`).then(e=>Q(e.fortran)),[])}}),H.of({name:`F#`,alias:[`fsharp`],extensions:[`fs`],load(){return Z(()=>import(`./mllike-B45xgp2S.js`).then(e=>Q(e.fSharp)),[])}}),H.of({name:`Gas`,extensions:[`s`],load(){return Z(()=>import(`./gas-BHEdbvp9.js`).then(e=>Q(e.gas)),[])}}),H.of({name:`Gherkin`,extensions:[`feature`],load(){return Z(()=>import(`./gherkin-oBAE_ms0.js`).then(e=>Q(e.gherkin)),[])}}),H.of({name:`Groovy`,extensions:[`groovy`,`gradle`],filename:/^Jenkinsfile$/,load(){return Z(()=>import(`./groovy-CUpZ7dEl.js`).then(e=>Q(e.groovy)),[])}}),H.of({name:`Haskell`,extensions:[`hs`],load(){return Z(()=>import(`./haskell-BRsoo5mP.js`).then(e=>Q(e.haskell)),[])}}),H.of({name:`Haxe`,extensions:[`hx`],load(){return Z(()=>import(`./haxe-DjVOVvNP.js`).then(e=>Q(e.haxe)),[])}}),H.of({name:`HXML`,extensions:[`hxml`],load(){return Z(()=>import(`./haxe-DjVOVvNP.js`).then(e=>Q(e.hxml)),[])}}),H.of({name:`HTTP`,load(){return Z(()=>import(`./http-CLVgA2GD.js`).then(e=>Q(e.http)),[])}}),H.of({name:`IDL`,extensions:[`pro`],load(){return Z(()=>import(`./idl-BUZw3wgd.js`).then(e=>Q(e.idl)),[])}}),H.of({name:`JSON-LD`,alias:[`jsonld`],extensions:[`jsonld`],load(){return Z(()=>import(`./javascript-DoL9Wb-Q.js`).then(e=>Q(e.jsonld)),[])}}),H.of({name:`Julia`,extensions:[`jl`],load(){return Z(()=>import(`./julia-CQfgDRfP.js`).then(e=>Q(e.julia)),[])}}),H.of({name:`Kotlin`,extensions:[`kt`,`kts`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.kotlin)),[])}}),H.of({name:`LiveScript`,alias:[`ls`],extensions:[`ls`],load(){return Z(()=>import(`./livescript-BXxG0Yva.js`).then(e=>Q(e.liveScript)),[])}}),H.of({name:`Lua`,extensions:[`lua`],load(){return Z(()=>import(`./lua-CiA1ziua.js`).then(e=>Q(e.lua)),[])}}),H.of({name:`mIRC`,extensions:[`mrc`],load(){return Z(()=>import(`./mirc-C9zpzAZU.js`).then(e=>Q(e.mirc)),[])}}),H.of({name:`Mathematica`,extensions:[`m`,`nb`,`wl`,`wls`],load(){return Z(()=>import(`./mathematica-u8YMmbU0.js`).then(e=>Q(e.mathematica)),[])}}),H.of({name:`Modelica`,extensions:[`mo`],load(){return Z(()=>import(`./modelica-CqHI_q-D.js`).then(e=>Q(e.modelica)),[])}}),H.of({name:`MUMPS`,extensions:[`mps`],load(){return Z(()=>import(`./mumps-BSzj6Xyz.js`).then(e=>Q(e.mumps)),[])}}),H.of({name:`Mbox`,extensions:[`mbox`],load(){return Z(()=>import(`./mbox-BEMVcqjs.js`).then(e=>Q(e.mbox)),[])}}),H.of({name:`Nginx`,filename:/nginx.*\.conf$/i,load(){return Z(()=>import(`./nginx-BMaDbqW3.js`).then(e=>Q(e.nginx)),[])}}),H.of({name:`NSIS`,extensions:[`nsh`,`nsi`],load(){return Z(()=>import(`./nsis-CfSuhXs5.js`).then(e=>Q(e.nsis)),__vite__mapDeps([21,19]))}}),H.of({name:`NTriples`,extensions:[`nt`,`nq`],load(){return Z(()=>import(`./ntriples-B9h1VB_g.js`).then(e=>Q(e.ntriples)),[])}}),H.of({name:`Objective-C`,alias:[`objective-c`,`objc`],extensions:[`m`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.objectiveC)),[])}}),H.of({name:`Objective-C++`,alias:[`objective-c++`,`objc++`],extensions:[`mm`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.objectiveCpp)),[])}}),H.of({name:`OCaml`,extensions:[`ml`,`mli`,`mll`,`mly`],load(){return Z(()=>import(`./mllike-B45xgp2S.js`).then(e=>Q(e.oCaml)),[])}}),H.of({name:`Octave`,extensions:[`m`],load(){return Z(()=>import(`./octave-D2Q8cUp1.js`).then(e=>Q(e.octave)),[])}}),H.of({name:`Oz`,extensions:[`oz`],load(){return Z(()=>import(`./oz-BwTct_5T.js`).then(e=>Q(e.oz)),[])}}),H.of({name:`Pascal`,extensions:[`p`,`pas`],load(){return Z(()=>import(`./pascal-Dp_KdFgX.js`).then(e=>Q(e.pascal)),[])}}),H.of({name:`Perl`,extensions:[`pl`,`pm`],load(){return Z(()=>import(`./perl-BkSkiI9m.js`).then(e=>Q(e.perl)),[])}}),H.of({name:`Pig`,extensions:[`pig`],load(){return Z(()=>import(`./pig-AF4Hwhju.js`).then(e=>Q(e.pig)),[])}}),H.of({name:`PowerShell`,extensions:[`ps1`,`psd1`,`psm1`],load(){return Z(()=>import(`./powershell-BcIto6Sf.js`).then(e=>Q(e.powerShell)),[])}}),H.of({name:`Properties files`,alias:[`ini`,`properties`],extensions:[`properties`,`ini`,`in`],load(){return Z(()=>import(`./properties-C357ku5U.js`).then(e=>Q(e.properties)),[])}}),H.of({name:`ProtoBuf`,extensions:[`proto`],load(){return Z(()=>import(`./protobuf-D1ij_kNL.js`).then(e=>Q(e.protobuf)),[])}}),H.of({name:`Pug`,alias:[`jade`],extensions:[`pug`,`jade`],load(){return Z(()=>import(`./pug-Gsm0M45u.js`).then(e=>Q(e.pug)),__vite__mapDeps([22,23]))}}),H.of({name:`Puppet`,extensions:[`pp`],load(){return Z(()=>import(`./puppet-BZyAS7I4.js`).then(e=>Q(e.puppet)),[])}}),H.of({name:`Q`,extensions:[`q`],load(){return Z(()=>import(`./q-B9NhS7L_.js`).then(e=>Q(e.q)),[])}}),H.of({name:`R`,alias:[`rscript`],extensions:[`r`,`R`],load(){return Z(()=>import(`./r-CxDmU1I4.js`).then(e=>Q(e.r)),[])}}),H.of({name:`RPM Changes`,load(){return Z(()=>import(`./rpm-gpDK5sbt.js`).then(e=>Q(e.rpmChanges)),[])}}),H.of({name:`RPM Spec`,extensions:[`spec`],load(){return Z(()=>import(`./rpm-gpDK5sbt.js`).then(e=>Q(e.rpmSpec)),[])}}),H.of({name:`Ruby`,alias:[`jruby`,`macruby`,`rake`,`rb`,`rbx`],extensions:[`rb`],filename:/^(Gemfile|Rakefile)$/,load(){return Z(()=>import(`./ruby-BjXV7-Qa.js`).then(e=>Q(e.ruby)),[])}}),H.of({name:`SAS`,extensions:[`sas`],load(){return Z(()=>import(`./sas-C2OyD2Y6.js`).then(e=>Q(e.sas)),[])}}),H.of({name:`Scala`,extensions:[`scala`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.scala)),[])}}),H.of({name:`Scheme`,extensions:[`scm`,`ss`],load(){return Z(()=>import(`./scheme-D9qYN0V5.js`).then(e=>Q(e.scheme)),[])}}),H.of({name:`Shell`,alias:[`bash`,`sh`,`zsh`],extensions:[`sh`,`ksh`,`bash`],filename:/^PKGBUILD$/,load(){return Z(()=>import(`./shell-DwuoZtxw.js`).then(e=>Q(e.shell)),[])}}),H.of({name:`Sieve`,extensions:[`siv`,`sieve`],load(){return Z(()=>import(`./sieve-BAxa3IjF.js`).then(e=>Q(e.sieve)),[])}}),H.of({name:`Smalltalk`,extensions:[`st`],load(){return Z(()=>import(`./smalltalk-BLp5-jwC.js`).then(e=>Q(e.smalltalk)),[])}}),H.of({name:`Solr`,load(){return Z(()=>import(`./solr-BBopId9w.js`).then(e=>Q(e.solr)),[])}}),H.of({name:`SML`,extensions:[`sml`,`sig`,`fun`,`smackspec`],load(){return Z(()=>import(`./mllike-B45xgp2S.js`).then(e=>Q(e.sml)),[])}}),H.of({name:`SPARQL`,alias:[`sparul`],extensions:[`rq`,`sparql`],load(){return Z(()=>import(`./sparql-Dz-mlCAC.js`).then(e=>Q(e.sparql)),[])}}),H.of({name:`Spreadsheet`,alias:[`excel`,`formula`],load(){return Z(()=>import(`./spreadsheet-CTIncYxj.js`).then(e=>Q(e.spreadsheet)),[])}}),H.of({name:`Squirrel`,extensions:[`nut`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.squirrel)),[])}}),H.of({name:`Stylus`,extensions:[`styl`],load(){return Z(()=>import(`./stylus-BOVgKnng.js`).then(e=>Q(e.stylus)),[])}}),H.of({name:`Swift`,extensions:[`swift`],load(){return Z(()=>import(`./swift-DKB6_1j6.js`).then(e=>Q(e.swift)),[])}}),H.of({name:`sTeX`,load(){return Z(()=>import(`./stex-DNzd62Q_.js`).then(e=>Q(e.stex)),[])}}),H.of({name:`LaTeX`,alias:[`tex`],extensions:[`text`,`ltx`,`tex`],load(){return Z(()=>import(`./stex-DNzd62Q_.js`).then(e=>Q(e.stex)),[])}}),H.of({name:`SystemVerilog`,extensions:[`v`,`sv`,`svh`],load(){return Z(()=>import(`./verilog-7LoJAqYT.js`).then(e=>Q(e.verilog)),[])}}),H.of({name:`Tcl`,extensions:[`tcl`],load(){return Z(()=>import(`./tcl-BGfruO1u.js`).then(e=>Q(e.tcl)),[])}}),H.of({name:`Textile`,extensions:[`textile`],load(){return Z(()=>import(`./textile-C4jVoHG1.js`).then(e=>Q(e.textile)),[])}}),H.of({name:`TiddlyWiki`,load(){return Z(()=>import(`./tiddlywiki-VlUiK86J.js`).then(e=>Q(e.tiddlyWiki)),[])}}),H.of({name:`Tiki wiki`,load(){return Z(()=>import(`./tiki-AK6FwT8q.js`).then(e=>Q(e.tiki)),[])}}),H.of({name:`TOML`,extensions:[`toml`],load(){return Z(()=>import(`./toml-BPTmHmyx.js`).then(e=>Q(e.toml)),[])}}),H.of({name:`Troff`,extensions:[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`],load(){return Z(()=>import(`./troff-C2dAgh7P.js`).then(e=>Q(e.troff)),[])}}),H.of({name:`TTCN`,extensions:[`ttcn`,`ttcn3`,`ttcnpp`],load(){return Z(()=>import(`./ttcn-PPSTk1ow.js`).then(e=>Q(e.ttcn)),[])}}),H.of({name:`TTCN_CFG`,extensions:[`cfg`],load(){return Z(()=>import(`./ttcn-cfg-2b4Gb5sE.js`).then(e=>Q(e.ttcnCfg)),[])}}),H.of({name:`Turtle`,extensions:[`ttl`],load(){return Z(()=>import(`./turtle-Cx3rYX2g.js`).then(e=>Q(e.turtle)),[])}}),H.of({name:`Web IDL`,extensions:[`webidl`],load(){return Z(()=>import(`./webidl-D5jiJvOU.js`).then(e=>Q(e.webIDL)),[])}}),H.of({name:`VB.NET`,extensions:[`vb`],load(){return Z(()=>import(`./vb-BthdM_4N.js`).then(e=>Q(e.vb)),[])}}),H.of({name:`VBScript`,extensions:[`vbs`],load(){return Z(()=>import(`./vbscript-D9f6rSsU.js`).then(e=>Q(e.vbScript)),[])}}),H.of({name:`Velocity`,extensions:[`vtl`],load(){return Z(()=>import(`./velocity-CqftRsjg.js`).then(e=>Q(e.velocity)),[])}}),H.of({name:`Verilog`,extensions:[`v`],load(){return Z(()=>import(`./verilog-7LoJAqYT.js`).then(e=>Q(e.verilog)),[])}}),H.of({name:`VHDL`,extensions:[`vhd`,`vhdl`],load(){return Z(()=>import(`./vhdl-kS471soi.js`).then(e=>Q(e.vhdl)),[])}}),H.of({name:`XQuery`,extensions:[`xy`,`xquery`,`xq`,`xqm`,`xqy`],load(){return Z(()=>import(`./xquery-BKJx4mf9.js`).then(e=>Q(e.xQuery)),[])}}),H.of({name:`Yacas`,extensions:[`ys`],load(){return Z(()=>import(`./yacas-CXXgtw0p.js`).then(e=>Q(e.yacas)),[])}}),H.of({name:`Z80`,extensions:[`z80`],load(){return Z(()=>import(`./z80-Co3PbHdE.js`).then(e=>Q(e.z80)),[])}}),H.of({name:`MscGen`,extensions:[`mscgen`,`mscin`,`msc`],load(){return Z(()=>import(`./mscgen-qgSLujhx.js`).then(e=>Q(e.mscgen)),[])}}),H.of({name:`Xù`,extensions:[`xu`],load(){return Z(()=>import(`./mscgen-qgSLujhx.js`).then(e=>Q(e.xu)),[])}}),H.of({name:`MsGenny`,extensions:[`msgenny`],load(){return Z(()=>import(`./mscgen-qgSLujhx.js`).then(e=>Q(e.msgenny)),[])}}),H.of({name:`Vue`,extensions:[`vue`],load(){return Z(()=>import(`./dist-jgYATWSF.js`).then(e=>e.vue()),__vite__mapDeps([24,1]))}}),H.of({name:`Angular Template`,load(){return Z(()=>import(`./dist-BAXv9edD.js`).then(e=>e.angular()),__vite__mapDeps([25,1]))}})],RL=`#2e3440`,zL=`#3b4252`,BL=`#434c5e`,VL=`#4c566a`,HL=`#e5e9f0`,UL=`#eceff4`,WL=`#8fbcbb`,GL=`#88c0d0`,_be=`#81a1c1`,KL=`#5e81ac`,vbe=`#bf616a`,qL=`#d08770`,JL=`#ebcb8b`,YL=`#a3be8c`,ybe=`#b48ead`,XL=`#d30102`,ZL=UL,QL=ZL,bbe=`#ffffff`,$L=zL,xbe=ZL,eR=zL,Sbe=V.theme({"&":{color:RL,backgroundColor:bbe},".cm-content":{caretColor:eR},".cm-cursor, .cm-dropCursor":{borderLeftColor:eR},"&.cm-focused .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:xbe},".cm-panels":{backgroundColor:ZL,color:VL},".cm-panels.cm-panels-top":{borderBottom:`2px solid black`},".cm-panels.cm-panels-bottom":{borderTop:`2px solid black`},".cm-searchMatch":{backgroundColor:`#72a1ff59`,outline:`1px solid ${VL}`},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:HL},".cm-activeLine":{backgroundColor:QL},".cm-selectionMatch":{backgroundColor:HL},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{outline:`1px solid ${VL}`},"&.cm-focused .cm-matchingBracket":{backgroundColor:UL},".cm-gutters":{backgroundColor:UL,color:RL,border:`none`},".cm-activeLineGutter":{backgroundColor:QL},".cm-foldPlaceholder":{backgroundColor:`transparent`,border:`none`,color:`#ddd`},".cm-tooltip":{border:`none`,backgroundColor:$L},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:`transparent`,borderBottomColor:`transparent`},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:$L,borderBottomColor:$L},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:QL,color:VL}}},{dark:!1}),Cbe=oe.define([{tag:P.keyword,color:KL},{tag:[P.name,P.deleted,P.character,P.propertyName,P.macroName],color:qL},{tag:[P.variableName],color:qL},{tag:[P.function(P.variableName)],color:KL},{tag:[P.labelName],color:_be},{tag:[P.color,P.constant(P.name),P.standard(P.name)],color:KL},{tag:[P.definition(P.name),P.separator],color:YL},{tag:[P.brace],color:WL},{tag:[P.annotation],color:XL},{tag:[P.number,P.changed,P.annotation,P.modifier,P.self,P.namespace],color:GL},{tag:[P.typeName,P.className],color:JL},{tag:[P.operator,P.operatorKeyword],color:YL},{tag:[P.tagName],color:ybe},{tag:[P.squareBracket],color:vbe},{tag:[P.angleBracket],color:qL},{tag:[P.attributeName],color:JL},{tag:[P.regexp],color:KL},{tag:[P.quote],color:zL},{tag:[P.string],color:qL},{tag:P.link,color:WL,textDecoration:`underline`,textUnderlinePosition:`under`},{tag:[P.url,P.escape,P.special(P.string)],color:qL},{tag:[P.meta],color:GL},{tag:[P.comment],color:BL,fontStyle:`italic`},{tag:P.strong,fontWeight:`bold`,color:KL},{tag:P.emphasis,fontStyle:`italic`,color:KL},{tag:P.strikethrough,textDecoration:`line-through`},{tag:P.heading,fontWeight:`bold`,color:KL},{tag:P.special(P.heading1),fontWeight:`bold`,color:KL},{tag:P.heading1,fontWeight:`bold`,color:KL},{tag:[P.heading2,P.heading3,P.heading4],fontWeight:`bold`,color:KL},{tag:[P.heading5,P.heading6],color:KL},{tag:[P.atom,P.bool,P.special(P.variableName)],color:qL},{tag:[P.processingInstruction,P.inserted],color:WL},{tag:[P.contentSeparator],color:JL},{tag:P.invalid,color:BL,borderBottom:`1px dotted ${XL}`}]),tR=[Sbe,j(Cbe)],nR=typeof String.prototype.normalize==`function`?e=>e.normalize(`NFKD`):e=>e,rR=class{constructor(e,t,n=0,r=e.length,i,a){this.test=a,this.value={from:0,to:0,precise:!1},this.done=!1,this.matches=[],this.buffer=``,this.bufferPos=0,this.iter=e.iterRange(n,r),this.bufferStart=n,this.normalize=i?e=>i(nR(e)):nR,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return E(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=b(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=F(e);let r=this.normalize(t);if(r.length)for(let e=0,i=n,a=!0;;e++){let n=r.charCodeAt(e),o=this.match(n,i,a,this.bufferPos+this.bufferStart,e==r.length-1);if(o)return this.value=o,this;if(e==r.length-1)break;a&&e<t.length&&t.charCodeAt(e)==n?i++:a=!1}}}match(e,t,n,r,i){let a=null;for(let t=0;t<this.matches.length;){let n=this.matches[t],o=!1;this.query.charCodeAt(n.index)==e&&(n.index==this.query.length-1?a={from:n.from,to:r,precise:i&&n.precise}:(n.index++,o=!0)),o?t++:this.matches.splice(t,1)}return this.query.charCodeAt(0)==e&&(this.query.length==1?a={from:t,to:r,precise:n&&i}:this.matches.push({from:t,index:1,precise:n})),a&&this.test&&!this.test(a.from,a.to,this.buffer,this.bufferStart)&&(a=null),a}};typeof Symbol<`u`&&(rR.prototype[Symbol.iterator]=function(){return this});var iR={from:-1,to:-1,match:/.*/.exec(``),precise:!0},aR=`gm`+(/x/.unicode==null?``:`u`),oR=class{constructor(e,t,n,r=0,i=e.length){if(this.text=e,this.to=i,this.curLine=``,this.done=!1,this.value=iR,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new lR(e,t,n,r,i);this.re=new RegExp(t,aR+(n?.ignoreCase?`i`:``)),this.test=n?.test,this.iter=e.iter();let a=e.lineAt(r);this.curLineStart=a.from,this.matchPos=uR(e,r),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine=``:(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine=``:this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let n=this.curLineStart+t.index,r=n+t[0].length;if(this.matchPos=uR(this.text,r+ +(n==r)),n==this.curLineStart+this.curLine.length&&this.nextLine(),(n<r||n>this.value.to)&&(!this.test||this.test(n,r,t)))return this.value={from:n,to:r,precise:!0,match:t},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}},sR=new WeakMap,cR=class e{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(t,n,r){let i=sR.get(t);if(!i||i.from>=r||i.to<=n){let i=new e(n,t.sliceString(n,r));return sR.set(t,i),i}if(i.from==n&&i.to==r)return i;let{text:a,from:o}=i;return o>n&&(a=t.sliceString(n,o)+a,o=n),i.to<r&&(a+=t.sliceString(i.to,r)),sR.set(t,new e(o,a)),new e(n,a.slice(n-o,r-o))}},lR=class{constructor(e,t,n,r,i){this.text=e,this.to=i,this.done=!1,this.value=iR,this.matchPos=uR(e,r),this.re=new RegExp(t,aR+(n?.ignoreCase?`i`:``)),this.test=n?.test,this.flat=cR.get(e,r,this.chunkEnd(r+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let e=this.flat.from+t.index,n=e+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(e,n,t)))return this.value={from:e,to:n,precise:!0,match:t},this.matchPos=uR(this.text,n+ +(e==n)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=cR.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}};typeof Symbol<`u`&&(oR.prototype[Symbol.iterator]=lR.prototype[Symbol.iterator]=function(){return this});function wbe(e){try{return new RegExp(e,aR),!0}catch{return!1}}function uR(e,t){if(t>=e.length)return t;let n=e.lineAt(t),r;for(;t<n.to&&(r=n.text.charCodeAt(t-n.from))>=56320&&r<57344;)t++;return t}var Tbe=e=>{let{state:t}=e,n=String(t.doc.lineAt(e.state.selection.main.head).number),{close:r,result:i}=ye(e,{label:t.phrase(`Go to line`),input:{type:`text`,name:`line`,value:n},focus:!0,submitLabel:t.phrase(`go`)});return i.then(n=>{let i=n&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(n.elements.line.value);if(!i){e.dispatch({effects:r});return}let a=t.doc.lineAt(t.selection.main.head),[,o,s,c,l]=i,u=c?+c.slice(1):0,d=s?+s:a.number;if(s&&l){let e=d/100;o&&(e=e*(o==`-`?-1:1)+a.number/t.doc.lines),d=Math.round(t.doc.lines*e)}else s&&o&&(d=d*(o==`-`?-1:1)+a.number);let f=t.doc.line(Math.max(1,Math.min(t.doc.lines,d))),p=z.cursor(f.from+Math.max(0,Math.min(u,f.length)));e.dispatch({effects:[r,V.scrollIntoView(p.from,{y:`center`})],selection:p})}),!0},Ebe={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},dR=p.define({combine(e){return Qe(e,Ebe,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function Dbe(e){let t=[Mbe,jbe];return e&&t.push(dR.of(e)),t}var Obe=Pe.mark({class:`cm-selectionMatch`}),kbe=Pe.mark({class:`cm-selectionMatch cm-selectionMatch-main`});function fR(e,t,n,r){return(n==0||e(t.sliceDoc(n-1,n))!=d.Word)&&(r==t.doc.length||e(t.sliceDoc(r,r+1))!=d.Word)}function Abe(e,t,n,r){return e(t.sliceDoc(n,n+1))==d.Word&&e(t.sliceDoc(r-1,r))==d.Word}var jbe=ie.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.selectionSet||e.docChanged||e.viewportChanged)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=e.state.facet(dR),{state:n}=e,r=n.selection;if(r.ranges.length>1)return Pe.none;let i=r.main,a,o=null;if(i.empty){if(!t.highlightWordAroundCursor)return Pe.none;let e=n.wordAt(i.head);if(!e)return Pe.none;o=n.charCategorizer(i.head),a=n.sliceDoc(e.from,e.to)}else{let e=i.to-i.from;if(e<t.minSelectionLength||e>200)return Pe.none;if(t.wholeWords){if(a=n.sliceDoc(i.from,i.to),o=n.charCategorizer(i.head),!(fR(o,n,i.from,i.to)&&Abe(o,n,i.from,i.to)))return Pe.none}else if(a=n.sliceDoc(i.from,i.to),!a)return Pe.none}let s=[];for(let r of e.visibleRanges){let e=new rR(n.doc,a,r.from,r.to);for(;!e.next().done;){let{from:r,to:a}=e.value;if((!o||fR(o,n,r,a))&&(i.empty&&r<=i.from&&a>=i.to?s.push(kbe.range(r,a)):(r>=i.to||a<=i.from)&&s.push(Obe.range(r,a)),s.length>t.maxMatches))return Pe.none}}return Pe.set(s)}},{decorations:e=>e.decorations}),Mbe=V.baseTheme({".cm-selectionMatch":{backgroundColor:`#99ff7780`},".cm-searchMatch .cm-selectionMatch":{backgroundColor:`transparent`}}),Nbe=({state:e,dispatch:t})=>{let{selection:n}=e,r=z.create(n.ranges.map(t=>e.wordAt(t.head)||z.cursor(t.head)),n.mainIndex);return!r.eq(n)&&(t(e.update({selection:r})),!0)};function Pbe(e,t){let{main:n,ranges:r}=e.selection,i=e.wordAt(n.head),a=i&&i.from==n.from&&i.to==n.to;for(let n=!1,i=new rR(e.doc,t,r[r.length-1].to);;)if(i.next(),i.done){if(n)return null;i=new rR(e.doc,t,0,Math.max(0,r[r.length-1].from-1)),n=!0}else{if(n&&r.some(e=>e.from==i.value.from))continue;if(a){let t=e.wordAt(i.value.from);if(!t||t.from!=i.value.from||t.to!=i.value.to)continue}return i.value}}var Fbe=({state:e,dispatch:t})=>{let{ranges:n}=e.selection;if(n.some(e=>e.from===e.to))return Nbe({state:e,dispatch:t});let r=e.sliceDoc(n[0].from,n[0].to);if(e.selection.ranges.some(t=>e.sliceDoc(t.from,t.to)!=r))return!1;let i=Pbe(e,r);return i?(t(e.update({selection:e.selection.addRange(z.range(i.from,i.to),!1),effects:V.scrollIntoView(i.to)})),!0):!1},pR=p.define({combine(e){return Qe(e,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new Ybe(e),scrollToMatch:e=>V.scrollIntoView(e)})}}),mR=class{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||``,this.valid=!!this.search&&(!this.regexp||wbe(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(e,t)=>t==`n`?`
175
+ }`,{label:`enum`,detail:`definition`,type:`keyword`})]),JI=new B,YI=new Set([`Script`,`Block`,`FunctionExpression`,`FunctionDeclaration`,`ArrowFunction`,`MethodDeclaration`,`ForStatement`]);function XI(e){return(t,n)=>{let r=t.node.getChild(`VariableDefinition`);return r&&n(r,e),!0}}var rbe=[`FunctionDeclaration`],ibe={FunctionDeclaration:XI(`function`),ClassDeclaration:XI(`class`),ClassExpression:()=>!0,EnumDeclaration:XI(`constant`),TypeAliasDeclaration:XI(`type`),NamespaceDeclaration:XI(`namespace`),VariableDefinition(e,t){e.matchContext(rbe)||t(e,`variable`)},TypeDefinition(e,t){t(e,`type`)},__proto__:null};function ZI(e,t){let n=JI.get(t);if(n)return n;let r=[],i=!0;function a(t,n){let i=e.sliceString(t.from,t.to);r.push({label:i,type:n})}return t.cursor(Ze.IncludeAnonymous).iterate(t=>{if(i)i=!1;else if(t.name){let e=ibe[t.name];if(e&&e(t,a)||YI.has(t.name))return!1}else if(t.to-t.from>8192){for(let n of ZI(e,t.node))r.push(n);return!1}}),JI.set(t,r),r}var QI=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,$I=[`TemplateString`,`String`,`RegExp`,`LineComment`,`BlockComment`,`VariableDefinition`,`TypeDefinition`,`Label`,`PropertyDefinition`,`PropertyName`,`PrivatePropertyDefinition`,`PrivatePropertyName`,`JSXText`,`JSXAttributeValue`,`JSXOpenTag`,`JSXCloseTag`,`JSXSelfClosingTag`,`.`,`?.`];function eL(e){let t=g(e.state).resolveInner(e.pos,-1);if($I.indexOf(t.name)>-1)return null;let n=t.name==`VariableName`||t.to-t.from<20&&QI.test(e.state.sliceDoc(t.from,t.to));if(!n&&!e.explicit)return null;let r=[];for(let n=t;n;n=n.parent)YI.has(n.name)&&(r=r.concat(ZI(e.state.doc,n)));return{options:r,from:n?t.from:e.pos,validFor:QI}}var tL=Le.define({name:`javascript`,parser:nbe.configure({props:[f.add({IfStatement:ve({except:/^\s*({|else\b)/}),TryStatement:ve({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:Ye,SwitchBody:e=>{let t=e.textAfter,n=/^\s*\}/.test(t),r=/^\s*(case|default)\b/.test(t);return e.baseIndent+(n?0:r?1:2)*e.unit},Block:Ue({closing:`}`}),ArrowFunction:e=>e.baseIndent+e.unit,"TemplateString BlockComment":()=>null,"Statement Property":ve({except:/^\s*{/}),JSXElement(e){let t=/^\s*<\//.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},JSXEscape(e){let t=/\s*\}/.test(e.textAfter);return e.lineIndent(e.node.from)+(t?0:e.unit)},"JSXOpenTag JSXSelfClosingTag"(e){return e.column(e.node.from)+e.unit}}),u.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":qe,BlockComment(e){return{from:e.from+2,to:e.to-2}},JSXElement(e){let t=e.firstChild;if(!t||t.name==`JSXSelfClosingTag`)return null;let n=e.lastChild;return{from:t.to,to:n.type.isError?e.to:n.from}},"JSXSelfClosingTag JSXOpenTag"(e){let t=e.firstChild?.nextSibling,n=e.lastChild;return!t||t.type.isError?null:{from:t.to,to:n.type.isError?e.to:n.from}}})]}),languageData:{closeBrackets:{brackets:[`(`,`[`,`{`,`'`,`"`,"`"]},commentTokens:{line:`//`,block:{open:`/*`,close:`*/`}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:`$`}}),nL={test:e=>/^JSX/.test(e.name),facet:ae({commentTokens:{block:{open:`{/*`,close:`*/}`}}})},rL=tL.configure({dialect:`ts`},`typescript`),iL=tL.configure({dialect:`jsx`,props:[O.add(e=>e.isTop?[nL]:void 0)]}),aL=tL.configure({dialect:`jsx ts`,props:[O.add(e=>e.isTop?[nL]:void 0)]},`typescript`),oL=e=>({label:e,type:`keyword`}),sL=`break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield`.split(` `).map(oL),abe=sL.concat([`declare`,`implements`,`private`,`protected`,`public`].map(oL));function cL(e={}){let t=e.jsx?e.typescript?aL:iL:e.typescript?rL:tL,n=e.typescript?qI.concat(abe):KI.concat(sL);return new Ve(t,[tL.data.of({autocomplete:at($I,$e(n))}),tL.data.of({autocomplete:eL}),e.jsx?uL:[]])}function obe(e){for(;;){if(e.name==`JSXOpenTag`||e.name==`JSXSelfClosingTag`||e.name==`JSXFragmentTag`)return e;if(e.name==`JSXEscape`||!e.parent)return null;e=e.parent}}function lL(e,t,n=e.length){for(let r=t?.firstChild;r;r=r.nextSibling)if(r.name==`JSXIdentifier`||r.name==`JSXBuiltin`||r.name==`JSXNamespacedName`||r.name==`JSXMemberExpression`)return e.sliceString(r.from,Math.min(r.to,n));return``}var sbe=typeof navigator==`object`&&/Android\b/.test(navigator.userAgent),uL=V.inputHandler.of((e,t,n,r,i)=>{if((sbe?e.composing:e.compositionStarted)||e.state.readOnly||t!=n||r!=`>`&&r!=`/`||!tL.isActiveAt(e.state,t,-1))return!1;let a=i(),{state:o}=a,s=o.changeByRange(e=>{let{head:t}=e,n=g(o).resolveInner(t-1,-1),i;if(n.name==`JSXStartTag`&&(n=n.parent),!(o.doc.sliceString(t-1,t)!=r||n.name==`JSXAttributeValue`&&n.to>t)){if(r==`>`&&n.name==`JSXFragmentTag`)return{range:e,changes:{from:t,insert:`</>`}};if(r==`/`&&n.name==`JSXStartCloseTag`){let e=n.parent,r=e.parent;if(r&&e.from==t-2&&((i=lL(o.doc,r.firstChild,t))||r.firstChild?.name==`JSXFragmentTag`)){let e=`${i}>`;return{range:z.cursor(t+e.length,-1),changes:{from:t,insert:e}}}}else if(r==`>`){let r=obe(n);if(r&&r.name==`JSXOpenTag`&&!/^\/?>|^<\//.test(o.doc.sliceString(t,t+2))&&(i=lL(o.doc,r,t)))return{range:e,changes:{from:t,insert:`</${i}>`}}}}return{range:e}});return!s.changes.empty&&(e.dispatch([a,o.update(s,{userEvent:`input.complete`,scrollIntoView:!0})]),!0)}),cbe=n({autoCloseTags:()=>IL,html:()=>PL,htmlCompletionSource:()=>OL,htmlCompletionSourceWith:()=>kL,htmlLanguage:()=>NL}),dL=[`_blank`,`_self`,`_top`,`_parent`],fL=[`ascii`,`utf-8`,`utf-16`,`latin1`,`latin1`],pL=[`get`,`post`,`put`,`delete`],mL=[`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`],hL=[`true`,`false`],gL={},lbe={a:{attrs:{href:null,ping:null,type:null,media:null,target:dL,hreflang:null}},abbr:gL,address:gL,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:[`default`,`rect`,`circle`,`poly`]}},article:gL,aside:gL,audio:{attrs:{src:null,mediagroup:null,crossorigin:[`anonymous`,`use-credentials`],preload:[`none`,`metadata`,`auto`],autoplay:[`autoplay`],loop:[`loop`],controls:[`controls`]}},b:gL,base:{attrs:{href:null,target:dL}},bdi:gL,bdo:gL,blockquote:{attrs:{cite:null}},body:gL,br:gL,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:[`autofocus`],disabled:[`autofocus`],formenctype:mL,formmethod:pL,formnovalidate:[`novalidate`],formtarget:dL,type:[`submit`,`reset`,`button`]}},canvas:{attrs:{width:null,height:null}},caption:gL,center:gL,cite:gL,code:gL,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:[`command`,`checkbox`,`radio`],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:[`disabled`],checked:[`checked`]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:[`disabled`],multiple:[`multiple`]}},datalist:{attrs:{data:null}},dd:gL,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:[`open`]}},dfn:gL,div:gL,dl:gL,dt:gL,em:gL,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:[`disabled`],form:null,name:null}},figcaption:gL,figure:gL,footer:gL,form:{attrs:{action:null,name:null,"accept-charset":fL,autocomplete:[`on`,`off`],enctype:mL,method:pL,novalidate:[`novalidate`],target:dL}},h1:gL,h2:gL,h3:gL,h4:gL,h5:gL,h6:gL,head:{children:[`title`,`base`,`link`,`style`,`meta`,`script`,`noscript`,`command`]},header:gL,hgroup:gL,hr:gL,html:{attrs:{manifest:null}},i:gL,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:[`allow-top-navigation`,`allow-same-origin`,`allow-forms`,`allow-scripts`],seamless:[`seamless`]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:[`anonymous`,`use-credentials`]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:[`audio/*`,`video/*`,`image/*`],autocomplete:[`on`,`off`],autofocus:[`autofocus`],checked:[`checked`],disabled:[`disabled`],formenctype:mL,formmethod:pL,formnovalidate:[`novalidate`],formtarget:dL,multiple:[`multiple`],readonly:[`readonly`],required:[`required`],type:[`hidden`,`text`,`search`,`tel`,`url`,`email`,`password`,`datetime`,`date`,`month`,`week`,`time`,`datetime-local`,`number`,`range`,`color`,`checkbox`,`radio`,`file`,`submit`,`image`,`reset`,`button`]}},ins:{attrs:{cite:null,datetime:null}},kbd:gL,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:[`autofocus`],disabled:[`disabled`],keytype:[`RSA`]}},label:{attrs:{for:null,form:null}},legend:gL,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:[`all`,`16x16`,`16x16 32x32`,`16x16 32x32 64x64`]}},map:{attrs:{name:null}},mark:gL,menu:{attrs:{label:null,type:[`list`,`context`,`toolbar`]}},meta:{attrs:{content:null,charset:fL,name:[`viewport`,`application-name`,`author`,`description`,`generator`,`keywords`],"http-equiv":[`content-language`,`content-type`,`default-style`,`refresh`]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:gL,noscript:gL,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:[`typemustmatch`]}},ol:{attrs:{reversed:[`reversed`],start:null,type:[`1`,`a`,`A`,`i`,`I`]},children:[`li`,`script`,`template`,`ul`,`ol`]},optgroup:{attrs:{disabled:[`disabled`],label:null}},option:{attrs:{disabled:[`disabled`],label:null,selected:[`selected`],value:null}},output:{attrs:{for:null,form:null,name:null}},p:gL,param:{attrs:{name:null,value:null}},pre:gL,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:gL,rt:gL,ruby:gL,samp:gL,script:{attrs:{type:[`text/javascript`],src:null,async:[`async`],defer:[`defer`],charset:fL}},section:gL,select:{attrs:{form:null,name:null,size:null,autofocus:[`autofocus`],disabled:[`disabled`],multiple:[`multiple`]}},slot:{attrs:{name:null}},small:gL,source:{attrs:{src:null,type:null,media:null}},span:gL,strong:gL,style:{attrs:{type:[`text/css`],media:null,scoped:null}},sub:gL,summary:gL,sup:gL,table:gL,tbody:gL,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:gL,textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:[`autofocus`],disabled:[`disabled`],readonly:[`readonly`],required:[`required`],wrap:[`soft`,`hard`]}},tfoot:gL,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:[`row`,`col`,`rowgroup`,`colgroup`]}},thead:gL,time:{attrs:{datetime:null}},title:gL,tr:gL,track:{attrs:{src:null,label:null,default:null,kind:[`subtitles`,`captions`,`descriptions`,`chapters`,`metadata`],srclang:null}},ul:{children:[`li`,`script`,`template`,`ul`,`ol`]},var:gL,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:[`anonymous`,`use-credentials`],preload:[`auto`,`metadata`,`none`],autoplay:[`autoplay`],mediagroup:[`movie`],muted:[`muted`],controls:[`controls`]}},wbr:gL},_L={accesskey:null,class:null,contenteditable:hL,contextmenu:null,dir:[`ltr`,`rtl`,`auto`],draggable:[`true`,`false`,`auto`],dropzone:[`copy`,`move`,`link`,`string:`,`file:`],hidden:[`hidden`],id:null,inert:[`inert`],itemid:null,itemprop:null,itemref:null,itemscope:[`itemscope`],itemtype:null,lang:[`ar`,`bn`,`de`,`en-GB`,`en-US`,`es`,`fr`,`hi`,`id`,`ja`,`pa`,`pt`,`ru`,`tr`,`zh`],spellcheck:hL,autocorrect:hL,autocapitalize:hL,style:null,tabindex:null,title:null,translate:[`yes`,`no`],rel:[`stylesheet`,`alternate`,`author`,`bookmark`,`help`,`license`,`next`,`nofollow`,`noreferrer`,`prefetch`,`prev`,`search`,`tag`],role:`alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer`.split(` `),"aria-activedescendant":null,"aria-atomic":hL,"aria-autocomplete":[`inline`,`list`,`both`,`none`],"aria-busy":hL,"aria-checked":[`true`,`false`,`mixed`,`undefined`],"aria-controls":null,"aria-describedby":null,"aria-disabled":hL,"aria-dropeffect":null,"aria-expanded":[`true`,`false`,`undefined`],"aria-flowto":null,"aria-grabbed":[`true`,`false`,`undefined`],"aria-haspopup":hL,"aria-hidden":hL,"aria-invalid":[`true`,`false`,`grammar`,`spelling`],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":[`off`,`polite`,`assertive`],"aria-multiline":hL,"aria-multiselectable":hL,"aria-owns":null,"aria-posinset":null,"aria-pressed":[`true`,`false`,`mixed`,`undefined`],"aria-readonly":hL,"aria-relevant":null,"aria-required":hL,"aria-selected":[`true`,`false`,`undefined`],"aria-setsize":null,"aria-sort":[`ascending`,`descending`,`none`,`other`],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},vL=`beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload`.split(` `).map(e=>`on`+e);for(let e of vL)_L[e]=null;var yL=class{constructor(e,t){this.tags={...lbe,...e},this.globalAttrs={..._L,...t},this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}};yL.default=new yL;function bL(e,t,n=e.length){if(!t)return``;let r=t.firstChild,i=r&&r.getChild(`TagName`);return i?e.sliceString(i.from,Math.min(i.to,n)):``}function xL(e,t=!1){for(;e;e=e.parent)if(e.name==`Element`){if(t)t=!1;else return e}return null}function SL(e,t,n){return n.tags[bL(e,xL(t))]?.children||n.allTags}function CL(e,t){let n=[];for(let r=xL(t);r&&!r.type.isTop;r=xL(r.parent)){let i=bL(e,r);if(i&&r.lastChild.name==`CloseTag`)break;i&&n.indexOf(i)<0&&(t.name==`EndTag`||t.from>=r.firstChild.to)&&n.push(i)}return n}var wL=/^[:\-\.\w\u00b7-\uffff]*$/;function TL(e,t,n,r,i){let a=/\s*>/.test(e.sliceDoc(i,i+5))?``:`>`,o=xL(n,n.name==`StartTag`||n.name==`TagName`);return{from:r,to:i,options:SL(e.doc,o,t).map(e=>({label:e,type:`type`})).concat(CL(e.doc,n).map((e,t)=>({label:`/`+e,apply:`/`+e+a,type:`type`,boost:99-t}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function EL(e,t,n,r){let i=/\s*>/.test(e.sliceDoc(r,r+5))?``:`>`;return{from:n,to:r,options:CL(e.doc,t).map((e,t)=>({label:e,apply:e+i,type:`type`,boost:99-t})),validFor:wL}}function ube(e,t,n,r){let i=[],a=0;for(let r of SL(e.doc,n,t))i.push({label:`<`+r,type:`type`});for(let t of CL(e.doc,n))i.push({label:`</`+t+`>`,type:`type`,boost:99-a++});return{from:r,to:r,options:i,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function dbe(e,t,n,r,i){let a=xL(n),o=a?t.tags[bL(e.doc,a)]:null,s=o&&o.attrs?Object.keys(o.attrs):[];return{from:r,to:i,options:(o&&o.globalAttrs===!1?s:s.length?s.concat(t.globalAttrNames):t.globalAttrNames).map(e=>({label:e,type:`property`})),validFor:wL}}function fbe(e,t,n,r,i){let a=n.parent?.getChild(`AttributeName`),o=[],s;if(a){let c=e.sliceDoc(a.from,a.to),l=t.globalAttrs[c];if(!l){let r=xL(n),i=r?t.tags[bL(e.doc,r)]:null;l=i?.attrs&&i.attrs[c]}if(l){let t=e.sliceDoc(r,i).toLowerCase(),n=`"`,a=`"`;/^['"]/.test(t)?(s=t[0]==`"`?/^[^"]*$/:/^[^']*$/,n=``,a=e.sliceDoc(i,i+1)==t[0]?``:t[0],t=t.slice(1),r++):s=/^[^\s<>='"]*$/;for(let e of l)o.push({label:e,apply:n+e+a,type:`constant`})}}return{from:r,to:i,options:o,validFor:s}}function DL(e,t){let{state:n,pos:r}=t,i=g(n).resolveInner(r,-1),a=i.resolve(r);for(let e=r,t;a==i&&(t=i.childBefore(e));){let n=t.lastChild;if(!n||!n.type.isError||n.from<n.to)break;a=i=t,e=n.from}return i.name==`TagName`?i.parent&&/CloseTag$/.test(i.parent.name)?EL(n,i,i.from,r):TL(n,e,i,i.from,r):i.name==`StartTag`||i.name==`IncompleteTag`?TL(n,e,i,r,r):i.name==`StartCloseTag`||i.name==`IncompleteCloseTag`?EL(n,i,r,r):i.name==`OpenTag`||i.name==`SelfClosingTag`||i.name==`AttributeName`?dbe(n,e,i,i.name==`AttributeName`?i.from:r,r):i.name==`Is`||i.name==`AttributeValue`||i.name==`UnquotedAttributeValue`?fbe(n,e,i,i.name==`Is`?r:i.from,r):t.explicit&&(a.name==`Element`||a.name==`Text`||a.name==`Document`)?ube(n,e,i,r):null}function OL(e){return DL(yL.default,e)}function kL(e){let{extraTags:t,extraGlobalAttributes:n}=e,r=n||t?new yL(t,n):yL.default;return e=>DL(r,e)}var pbe=tL.parser.configure({top:`SingleExpression`}),AL=[{tag:`script`,attrs:e=>e.type==`text/typescript`||e.lang==`ts`,parser:rL.parser},{tag:`script`,attrs:e=>e.type==`text/babel`||e.type==`text/jsx`,parser:iL.parser},{tag:`script`,attrs:e=>e.type==`text/typescript-jsx`,parser:aL.parser},{tag:`script`,attrs(e){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(e.type)},parser:pbe},{tag:`script`,attrs(e){return!e.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(e.type)},parser:tL.parser},{tag:`style`,attrs(e){return(!e.lang||e.lang==`css`)&&(!e.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(e.type))},parser:t.parser}],jL=[{name:`style`,parser:t.parser.configure({top:`Styles`})}].concat(vL.map(e=>({name:e,parser:tL.parser}))),ML=Le.define({name:`html`,parser:Tye.configure({props:[f.add({Element(e){let t=/^(\s*)(<\/)?/.exec(e.textAfter);return e.node.to<=e.pos+t[0].length?e.continue():e.lineIndent(e.node.from)+(t[2]?0:e.unit)},"OpenTag CloseTag SelfClosingTag"(e){return e.column(e.node.from)+e.unit},Document(e){if(e.pos+/\s*/.exec(e.textAfter)[0].length<e.node.to)return e.continue();let t=null,n;for(let n=e.node;;){let e=n.lastChild;if(!e||e.name!=`Element`||e.to!=n.to)break;t=n=e}return t&&!((n=t.lastChild)&&(n.name==`CloseTag`||n.name==`SelfClosingTag`))?e.lineIndent(t.from)+e.unit:null}}),u.add({Element(e){let t=e.firstChild,n=e.lastChild;return!t||t.name!=`OpenTag`?null:{from:t.to,to:n.name==`CloseTag`?n.from:e.to}}}),Ee.add({"OpenTag CloseTag":e=>e.getChild(`TagName`)})]}),languageData:{commentTokens:{block:{open:`<!--`,close:`-->`}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:`-_`}}),NL=ML.configure({wrap:zI(AL,jL)});function PL(e={}){let t=``,n;e.matchClosingTags===!1&&(t=`noMatch`),e.selfClosingTags===!0&&(t=(t?t+` `:``)+`selfClosing`),(e.nestedLanguages&&e.nestedLanguages.length||e.nestedAttributes&&e.nestedAttributes.length)&&(n=zI((e.nestedLanguages||[]).concat(AL),(e.nestedAttributes||[]).concat(jL)));let r=n?ML.configure({wrap:n,dialect:t}):t?NL.configure({dialect:t}):NL;return new Ve(r,[NL.data.of({autocomplete:kL(e)}),e.autoCloseTags===!1?[]:IL,cL().support,i().support])}var FL=new Set(`area base br col command embed frame hr img input keygen link meta param source track wbr menuitem`.split(` `));function mbe(e,t,n){for(;;){if(t.lastChild?.name!=`CloseTag`)return!1;let r=t.parent;if(!r||bL(e,r)!=n)return!0;t=r}}var IL=V.inputHandler.of((e,t,n,r,i)=>{if(e.composing||e.state.readOnly||t!=n||r!=`>`&&r!=`/`||!NL.isActiveAt(e.state,t,-1))return!1;let a=i(),{state:o}=a,s=o.changeByRange(e=>{let t=o.doc.sliceString(e.from-1,e.to)==r,{head:n}=e,i=g(o).resolveInner(n,-1),a;if(t&&r==`>`&&i.name==`EndTag`){let t=i.parent;if((a=bL(o.doc,t.parent,n))&&!FL.has(a)&&!mbe(o.doc,t.parent,a))return{range:e,changes:{from:n,to:n+ +(o.doc.sliceString(n,n+1)===`>`),insert:`</${a}>`}}}else if(t&&r==`/`&&i.name==`IncompleteCloseTag`){let e=i.parent;if(i.from==n-2&&e.lastChild?.name!=`CloseTag`&&(a=bL(o.doc,e,n))&&!FL.has(a)){let e=n+ +(o.doc.sliceString(n,n+1)===`>`),t=`${a}>`;return{range:z.cursor(n+t.length,-1),changes:{from:n,to:e,insert:t}}}}return{range:e}});return!s.changes.empty&&(e.dispatch([a,o.update(s,{userEvent:`input.complete`,scrollIntoView:!0})]),!0)});function hbe(e,t,n,r){let i=Ld(CS),a=zd(dC),o=U.useRef(null),{lexicalNode:s}=XP(),c=U.useRef(!1),l=U.useRef(!1),u=U.useCallback(()=>{a({editorType:t,rootNode:s,editorRef:o.current})},[t,s,a]),d=U.useCallback(t=>{if(t.key===`ArrowDown`){let t=o.current?.getCodemirror()?.state;t&&t.doc.length===t.selection.ranges[0].to&&(c.current?(i?.update(()=>{var t;let n=Xg(e);n.getNextSibling()?((t=o.current?.getCodemirror())==null||t.contentDOM.blur(),n.selectNext()):n.insertAfter(Ag())}),c.current=!1):c.current=!0)}else if(t.key===`ArrowUp`){let t=o.current?.getCodemirror()?.state;t&&t.selection.ranges[0].from===0&&(l.current?(i?.update(()=>{var t;let n=Xg(e);n.getPreviousSibling()&&((t=o.current?.getCodemirror())==null||t.contentDOM.blur(),n.selectPrevious())}),l.current=!1):l.current=!0)}else t.key===`Enter`?t.stopPropagation():(t.key===`Backspace`||t.key===`Delete`)&&(o.current?.getCodemirror()?.state)?.doc.length===0&&i?.update(()=>{Xg(e).remove()})},[i,e]);return U.useEffect(()=>{let e=o.current;return setTimeout(()=>{var t,n;(t=e?.getCodemirror())==null||t.contentDOM.addEventListener(`focus`,u),(n=e?.getCodemirror())==null||n.contentDOM.addEventListener(`keydown`,d)},300),()=>{var t,n;(t=e?.getCodemirror())==null||t.contentDOM.removeEventListener(`focus`,u),(n=e?.getCodemirror())==null||n.contentDOM.removeEventListener(`keydown`,d)}},[o,u,d,n]),U.useEffect(()=>{r.subscribe(()=>{var e;(e=o.current?.getCodemirror())==null||e.focus(),u()})},[r,o,e,u]),o}function Q(e){return new Ve(he.define(e))}function LL(e){return Z(()=>import(`./dist-mpRGeo_R.js`).then(t=>t.sql({dialect:t[e]})),__vite__mapDeps([0,1,2]))}var gbe=[H.of({name:`C`,extensions:[`c`,`h`,`ino`],load(){return Z(()=>import(`./dist-DHvUPfrF.js`).then(e=>e.cpp()),__vite__mapDeps([3,1]))}}),H.of({name:`C++`,alias:[`cpp`],extensions:[`cpp`,`c++`,`cc`,`cxx`,`hpp`,`h++`,`hh`,`hxx`],load(){return Z(()=>import(`./dist-DHvUPfrF.js`).then(e=>e.cpp()),__vite__mapDeps([3,1]))}}),H.of({name:`CQL`,alias:[`cassandra`],extensions:[`cql`],load(){return LL(`Cassandra`)}}),H.of({name:`CSS`,extensions:[`css`],load(){return Z(()=>import(`./dist-DLJCGrGQ.js`).then(e=>e.i).then(e=>e.css()),__vite__mapDeps([4,1]))}}),H.of({name:`Go`,extensions:[`go`],load(){return Z(()=>import(`./dist-LCx98fA_.js`).then(e=>e.go()),__vite__mapDeps([5,1,2]))}}),H.of({name:`HTML`,alias:[`xhtml`],extensions:[`html`,`htm`,`handlebars`,`hbs`],load(){return Z(()=>Promise.resolve().then(()=>cbe).then(e=>e.html()),void 0)}}),H.of({name:`Java`,extensions:[`java`],load(){return Z(()=>import(`./dist-DpF08Yd7.js`).then(e=>e.java()),__vite__mapDeps([6,1]))}}),H.of({name:`JavaScript`,alias:[`ecmascript`,`js`,`node`],extensions:[`js`,`mjs`,`cjs`],load(){return Z(()=>Promise.resolve().then(()=>GI).then(e=>e.javascript()),void 0)}}),H.of({name:`Jinja`,extensions:[`j2`,`jinja`,`jinja2`],load(){return Z(()=>import(`./dist-CQF9jyQW.js`).then(e=>e.jinja()),__vite__mapDeps([7,1]))}}),H.of({name:`JSON`,alias:[`json5`],extensions:[`json`,`map`],load(){return Z(()=>import(`./dist-RKTRnzGb.js`).then(e=>e.json()),__vite__mapDeps([8,1]))}}),H.of({name:`JSX`,extensions:[`jsx`],load(){return Z(()=>Promise.resolve().then(()=>GI).then(e=>e.javascript({jsx:!0})),void 0)}}),H.of({name:`LESS`,extensions:[`less`],load(){return Z(()=>import(`./dist-fPhZsAUX.js`).then(e=>e.less()),__vite__mapDeps([9,4,1]))}}),H.of({name:`Liquid`,extensions:[`liquid`],load(){return Z(()=>import(`./dist-BL4oTUrk.js`).then(e=>e.liquid()),__vite__mapDeps([10,1]))}}),H.of({name:`MariaDB SQL`,load(){return LL(`MariaSQL`)}}),H.of({name:`Markdown`,extensions:[`md`,`markdown`,`mkd`],load(){return Z(()=>Promise.resolve().then(()=>vwe).then(e=>e.markdown()),void 0)}}),H.of({name:`MS SQL`,load(){return LL(`MSSQL`)}}),H.of({name:`MySQL`,load(){return LL(`MySQL`)}}),H.of({name:`PHP`,extensions:[`php`,`php3`,`php4`,`php5`,`php7`,`phtml`],load(){return Z(()=>import(`./dist-f-76_fmW.js`).then(e=>e.php()),__vite__mapDeps([11,1]))}}),H.of({name:`PLSQL`,extensions:[`pls`],load(){return LL(`PLSQL`)}}),H.of({name:`PostgreSQL`,load(){return LL(`PostgreSQL`)}}),H.of({name:`Python`,extensions:[`BUILD`,`bzl`,`py`,`pyw`],filename:/^(BUCK|BUILD)$/,load(){return Z(()=>import(`./dist-DTeLDijr.js`).then(e=>e.python()),__vite__mapDeps([12,1,2]))}}),H.of({name:`Rust`,extensions:[`rs`],load(){return Z(()=>import(`./dist-eddbbGyw.js`).then(e=>e.rust()),__vite__mapDeps([13,1]))}}),H.of({name:`Sass`,extensions:[`sass`],load(){return Z(()=>import(`./dist-BJ-TIk3N.js`).then(e=>e.sass({indented:!0})),__vite__mapDeps([14,4,1]))}}),H.of({name:`SCSS`,extensions:[`scss`],load(){return Z(()=>import(`./dist-BJ-TIk3N.js`).then(e=>e.sass()),__vite__mapDeps([14,4,1]))}}),H.of({name:`SQL`,extensions:[`sql`],load(){return LL(`StandardSQL`)}}),H.of({name:`SQLite`,load(){return LL(`SQLite`)}}),H.of({name:`TSX`,extensions:[`tsx`],load(){return Z(()=>Promise.resolve().then(()=>GI).then(e=>e.javascript({jsx:!0,typescript:!0})),void 0)}}),H.of({name:`TypeScript`,alias:[`ts`],extensions:[`ts`,`mts`,`cts`],load(){return Z(()=>Promise.resolve().then(()=>GI).then(e=>e.javascript({typescript:!0})),void 0)}}),H.of({name:`WebAssembly`,extensions:[`wat`,`wast`],load(){return Z(()=>import(`./dist-DMiglryg.js`).then(e=>e.wast()),__vite__mapDeps([15,1]))}}),H.of({name:`XML`,alias:[`rss`,`wsdl`,`xsd`],extensions:[`xml`,`xsl`,`xsd`,`svg`],load(){return Z(()=>import(`./dist-XVYGiB-c.js`).then(e=>e.xml()),__vite__mapDeps([16,1]))}}),H.of({name:`YAML`,alias:[`yml`],extensions:[`yaml`,`yml`],load(){return Z(()=>import(`./dist-CswnpKik.js`).then(e=>e.yaml()),__vite__mapDeps([17,1]))}}),H.of({name:`APL`,extensions:[`dyalog`,`apl`],load(){return Z(()=>import(`./apl-gfMMiTNf.js`).then(e=>Q(e.apl)),[])}}),H.of({name:`PGP`,alias:[`asciiarmor`],extensions:[`asc`,`pgp`,`sig`],load(){return Z(()=>import(`./asciiarmor-C_eisQCp.js`).then(e=>Q(e.asciiArmor)),[])}}),H.of({name:`ASN.1`,extensions:[`asn`,`asn1`],load(){return Z(()=>import(`./asn1-DCl_8MCW.js`).then(e=>Q(e.asn1({}))),[])}}),H.of({name:`Asterisk`,filename:/^extensions\.conf$/i,load(){return Z(()=>import(`./asterisk-BEn0Cwpx.js`).then(e=>Q(e.asterisk)),[])}}),H.of({name:`Brainfuck`,extensions:[`b`,`bf`],load(){return Z(()=>import(`./brainfuck-D5EjA2JK.js`).then(e=>Q(e.brainfuck)),[])}}),H.of({name:`Cobol`,extensions:[`cob`,`cpy`],load(){return Z(()=>import(`./cobol-DHLQUbN7.js`).then(e=>Q(e.cobol)),[])}}),H.of({name:`C#`,alias:[`csharp`,`cs`],extensions:[`cs`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.csharp)),[])}}),H.of({name:`Clojure`,extensions:[`clj`,`cljc`,`cljx`],load(){return Z(()=>import(`./clojure-BflJGmDX.js`).then(e=>Q(e.clojure)),[])}}),H.of({name:`ClojureScript`,extensions:[`cljs`],load(){return Z(()=>import(`./clojure-BflJGmDX.js`).then(e=>Q(e.clojure)),[])}}),H.of({name:`Closure Stylesheets (GSS)`,extensions:[`gss`],load(){return Z(()=>import(`./css-CnaYoQib.js`).then(e=>Q(e.gss)),[])}}),H.of({name:`CMake`,extensions:[`cmake`,`cmake.in`],filename:/^CMakeLists\.txt$/,load(){return Z(()=>import(`./cmake-84nbDH0I.js`).then(e=>Q(e.cmake)),[])}}),H.of({name:`CoffeeScript`,alias:[`coffee`,`coffee-script`],extensions:[`coffee`],load(){return Z(()=>import(`./coffeescript-De_zI4J0.js`).then(e=>Q(e.coffeeScript)),[])}}),H.of({name:`Common Lisp`,alias:[`lisp`],extensions:[`cl`,`lisp`,`el`],load(){return Z(()=>import(`./commonlisp-DgAKBe0r.js`).then(e=>Q(e.commonLisp)),[])}}),H.of({name:`Cypher`,extensions:[`cyp`,`cypher`],load(){return Z(()=>import(`./cypher-p9eYesGn.js`).then(e=>Q(e.cypher)),[])}}),H.of({name:`Cython`,extensions:[`pyx`,`pxd`,`pxi`],load(){return Z(()=>import(`./python-B_1Jd8HM.js`).then(e=>Q(e.cython)),[])}}),H.of({name:`Crystal`,extensions:[`cr`],load(){return Z(()=>import(`./crystal-Bsdphhtm.js`).then(e=>Q(e.crystal)),[])}}),H.of({name:`D`,extensions:[`d`],load(){return Z(()=>import(`./d-DWkQyNnU.js`).then(e=>Q(e.d)),[])}}),H.of({name:`Dart`,extensions:[`dart`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.dart)),[])}}),H.of({name:`diff`,extensions:[`diff`,`patch`],load(){return Z(()=>import(`./diff-ChtP43wD.js`).then(e=>Q(e.diff)),[])}}),H.of({name:`Dockerfile`,filename:/^Dockerfile$/,load(){return Z(()=>import(`./dockerfile-DJkHQgkl.js`).then(e=>Q(e.dockerFile)),__vite__mapDeps([18,19]))}}),H.of({name:`DTD`,extensions:[`dtd`],load(){return Z(()=>import(`./dtd-DTF72YNO.js`).then(e=>Q(e.dtd)),[])}}),H.of({name:`Dylan`,extensions:[`dylan`,`dyl`,`intr`],load(){return Z(()=>import(`./dylan-BCDoL_-p.js`).then(e=>Q(e.dylan)),[])}}),H.of({name:`EBNF`,load(){return Z(()=>import(`./ebnf-D4c0_ac3.js`).then(e=>Q(e.ebnf)),[])}}),H.of({name:`ECL`,extensions:[`ecl`],load(){return Z(()=>import(`./ecl-BVIeWmwY.js`).then(e=>Q(e.ecl)),[])}}),H.of({name:`edn`,extensions:[`edn`],load(){return Z(()=>import(`./clojure-BflJGmDX.js`).then(e=>Q(e.clojure)),[])}}),H.of({name:`Eiffel`,extensions:[`e`],load(){return Z(()=>import(`./eiffel-BEjRio4Q.js`).then(e=>Q(e.eiffel)),[])}}),H.of({name:`Elm`,extensions:[`elm`],load(){return Z(()=>import(`./elm-Cshzl8qu.js`).then(e=>Q(e.elm)),[])}}),H.of({name:`Erlang`,extensions:[`erl`],load(){return Z(()=>import(`./erlang-BV0c4Hdn.js`).then(e=>Q(e.erlang)),[])}}),H.of({name:`Esper`,load(){return Z(()=>import(`./sql-DuQMFDvy.js`).then(e=>Q(e.esper)),[])}}),H.of({name:`Factor`,extensions:[`factor`],load(){return Z(()=>import(`./factor-LKH5gN8L.js`).then(e=>Q(e.factor)),__vite__mapDeps([20,19]))}}),H.of({name:`FCL`,load(){return Z(()=>import(`./fcl-ClOhbFR7.js`).then(e=>Q(e.fcl)),[])}}),H.of({name:`Forth`,extensions:[`forth`,`fth`,`4th`],load(){return Z(()=>import(`./forth-Cezjo90N.js`).then(e=>Q(e.forth)),[])}}),H.of({name:`Fortran`,extensions:[`f`,`for`,`f77`,`f90`,`f95`],load(){return Z(()=>import(`./fortran-Bt6PBEDR.js`).then(e=>Q(e.fortran)),[])}}),H.of({name:`F#`,alias:[`fsharp`],extensions:[`fs`],load(){return Z(()=>import(`./mllike-B45xgp2S.js`).then(e=>Q(e.fSharp)),[])}}),H.of({name:`Gas`,extensions:[`s`],load(){return Z(()=>import(`./gas-BHEdbvp9.js`).then(e=>Q(e.gas)),[])}}),H.of({name:`Gherkin`,extensions:[`feature`],load(){return Z(()=>import(`./gherkin-oBAE_ms0.js`).then(e=>Q(e.gherkin)),[])}}),H.of({name:`Groovy`,extensions:[`groovy`,`gradle`],filename:/^Jenkinsfile$/,load(){return Z(()=>import(`./groovy-CUpZ7dEl.js`).then(e=>Q(e.groovy)),[])}}),H.of({name:`Haskell`,extensions:[`hs`],load(){return Z(()=>import(`./haskell-BRsoo5mP.js`).then(e=>Q(e.haskell)),[])}}),H.of({name:`Haxe`,extensions:[`hx`],load(){return Z(()=>import(`./haxe-DjVOVvNP.js`).then(e=>Q(e.haxe)),[])}}),H.of({name:`HXML`,extensions:[`hxml`],load(){return Z(()=>import(`./haxe-DjVOVvNP.js`).then(e=>Q(e.hxml)),[])}}),H.of({name:`HTTP`,load(){return Z(()=>import(`./http-CLVgA2GD.js`).then(e=>Q(e.http)),[])}}),H.of({name:`IDL`,extensions:[`pro`],load(){return Z(()=>import(`./idl-BUZw3wgd.js`).then(e=>Q(e.idl)),[])}}),H.of({name:`JSON-LD`,alias:[`jsonld`],extensions:[`jsonld`],load(){return Z(()=>import(`./javascript-DoL9Wb-Q.js`).then(e=>Q(e.jsonld)),[])}}),H.of({name:`Julia`,extensions:[`jl`],load(){return Z(()=>import(`./julia-CQfgDRfP.js`).then(e=>Q(e.julia)),[])}}),H.of({name:`Kotlin`,extensions:[`kt`,`kts`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.kotlin)),[])}}),H.of({name:`LiveScript`,alias:[`ls`],extensions:[`ls`],load(){return Z(()=>import(`./livescript-BXxG0Yva.js`).then(e=>Q(e.liveScript)),[])}}),H.of({name:`Lua`,extensions:[`lua`],load(){return Z(()=>import(`./lua-CiA1ziua.js`).then(e=>Q(e.lua)),[])}}),H.of({name:`mIRC`,extensions:[`mrc`],load(){return Z(()=>import(`./mirc-C9zpzAZU.js`).then(e=>Q(e.mirc)),[])}}),H.of({name:`Mathematica`,extensions:[`m`,`nb`,`wl`,`wls`],load(){return Z(()=>import(`./mathematica-u8YMmbU0.js`).then(e=>Q(e.mathematica)),[])}}),H.of({name:`Modelica`,extensions:[`mo`],load(){return Z(()=>import(`./modelica-CqHI_q-D.js`).then(e=>Q(e.modelica)),[])}}),H.of({name:`MUMPS`,extensions:[`mps`],load(){return Z(()=>import(`./mumps-BSzj6Xyz.js`).then(e=>Q(e.mumps)),[])}}),H.of({name:`Mbox`,extensions:[`mbox`],load(){return Z(()=>import(`./mbox-BEMVcqjs.js`).then(e=>Q(e.mbox)),[])}}),H.of({name:`Nginx`,filename:/nginx.*\.conf$/i,load(){return Z(()=>import(`./nginx-BMaDbqW3.js`).then(e=>Q(e.nginx)),[])}}),H.of({name:`NSIS`,extensions:[`nsh`,`nsi`],load(){return Z(()=>import(`./nsis-CfSuhXs5.js`).then(e=>Q(e.nsis)),__vite__mapDeps([21,19]))}}),H.of({name:`NTriples`,extensions:[`nt`,`nq`],load(){return Z(()=>import(`./ntriples-B9h1VB_g.js`).then(e=>Q(e.ntriples)),[])}}),H.of({name:`Objective-C`,alias:[`objective-c`,`objc`],extensions:[`m`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.objectiveC)),[])}}),H.of({name:`Objective-C++`,alias:[`objective-c++`,`objc++`],extensions:[`mm`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.objectiveCpp)),[])}}),H.of({name:`OCaml`,extensions:[`ml`,`mli`,`mll`,`mly`],load(){return Z(()=>import(`./mllike-B45xgp2S.js`).then(e=>Q(e.oCaml)),[])}}),H.of({name:`Octave`,extensions:[`m`],load(){return Z(()=>import(`./octave-D2Q8cUp1.js`).then(e=>Q(e.octave)),[])}}),H.of({name:`Oz`,extensions:[`oz`],load(){return Z(()=>import(`./oz-BwTct_5T.js`).then(e=>Q(e.oz)),[])}}),H.of({name:`Pascal`,extensions:[`p`,`pas`],load(){return Z(()=>import(`./pascal-Dp_KdFgX.js`).then(e=>Q(e.pascal)),[])}}),H.of({name:`Perl`,extensions:[`pl`,`pm`],load(){return Z(()=>import(`./perl-BkSkiI9m.js`).then(e=>Q(e.perl)),[])}}),H.of({name:`Pig`,extensions:[`pig`],load(){return Z(()=>import(`./pig-AF4Hwhju.js`).then(e=>Q(e.pig)),[])}}),H.of({name:`PowerShell`,extensions:[`ps1`,`psd1`,`psm1`],load(){return Z(()=>import(`./powershell-BcIto6Sf.js`).then(e=>Q(e.powerShell)),[])}}),H.of({name:`Properties files`,alias:[`ini`,`properties`],extensions:[`properties`,`ini`,`in`],load(){return Z(()=>import(`./properties-C357ku5U.js`).then(e=>Q(e.properties)),[])}}),H.of({name:`ProtoBuf`,extensions:[`proto`],load(){return Z(()=>import(`./protobuf-D1ij_kNL.js`).then(e=>Q(e.protobuf)),[])}}),H.of({name:`Pug`,alias:[`jade`],extensions:[`pug`,`jade`],load(){return Z(()=>import(`./pug-Gsm0M45u.js`).then(e=>Q(e.pug)),__vite__mapDeps([22,23]))}}),H.of({name:`Puppet`,extensions:[`pp`],load(){return Z(()=>import(`./puppet-BZyAS7I4.js`).then(e=>Q(e.puppet)),[])}}),H.of({name:`Q`,extensions:[`q`],load(){return Z(()=>import(`./q-B9NhS7L_.js`).then(e=>Q(e.q)),[])}}),H.of({name:`R`,alias:[`rscript`],extensions:[`r`,`R`],load(){return Z(()=>import(`./r-CxDmU1I4.js`).then(e=>Q(e.r)),[])}}),H.of({name:`RPM Changes`,load(){return Z(()=>import(`./rpm-gpDK5sbt.js`).then(e=>Q(e.rpmChanges)),[])}}),H.of({name:`RPM Spec`,extensions:[`spec`],load(){return Z(()=>import(`./rpm-gpDK5sbt.js`).then(e=>Q(e.rpmSpec)),[])}}),H.of({name:`Ruby`,alias:[`jruby`,`macruby`,`rake`,`rb`,`rbx`],extensions:[`rb`],filename:/^(Gemfile|Rakefile)$/,load(){return Z(()=>import(`./ruby-BjXV7-Qa.js`).then(e=>Q(e.ruby)),[])}}),H.of({name:`SAS`,extensions:[`sas`],load(){return Z(()=>import(`./sas-C2OyD2Y6.js`).then(e=>Q(e.sas)),[])}}),H.of({name:`Scala`,extensions:[`scala`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.scala)),[])}}),H.of({name:`Scheme`,extensions:[`scm`,`ss`],load(){return Z(()=>import(`./scheme-D9qYN0V5.js`).then(e=>Q(e.scheme)),[])}}),H.of({name:`Shell`,alias:[`bash`,`sh`,`zsh`],extensions:[`sh`,`ksh`,`bash`],filename:/^PKGBUILD$/,load(){return Z(()=>import(`./shell-DwuoZtxw.js`).then(e=>Q(e.shell)),[])}}),H.of({name:`Sieve`,extensions:[`siv`,`sieve`],load(){return Z(()=>import(`./sieve-BAxa3IjF.js`).then(e=>Q(e.sieve)),[])}}),H.of({name:`Smalltalk`,extensions:[`st`],load(){return Z(()=>import(`./smalltalk-BLp5-jwC.js`).then(e=>Q(e.smalltalk)),[])}}),H.of({name:`Solr`,load(){return Z(()=>import(`./solr-BBopId9w.js`).then(e=>Q(e.solr)),[])}}),H.of({name:`SML`,extensions:[`sml`,`sig`,`fun`,`smackspec`],load(){return Z(()=>import(`./mllike-B45xgp2S.js`).then(e=>Q(e.sml)),[])}}),H.of({name:`SPARQL`,alias:[`sparul`],extensions:[`rq`,`sparql`],load(){return Z(()=>import(`./sparql-Dz-mlCAC.js`).then(e=>Q(e.sparql)),[])}}),H.of({name:`Spreadsheet`,alias:[`excel`,`formula`],load(){return Z(()=>import(`./spreadsheet-CTIncYxj.js`).then(e=>Q(e.spreadsheet)),[])}}),H.of({name:`Squirrel`,extensions:[`nut`],load(){return Z(()=>import(`./clike-D_6L3tnO.js`).then(e=>Q(e.squirrel)),[])}}),H.of({name:`Stylus`,extensions:[`styl`],load(){return Z(()=>import(`./stylus-BOVgKnng.js`).then(e=>Q(e.stylus)),[])}}),H.of({name:`Swift`,extensions:[`swift`],load(){return Z(()=>import(`./swift-DKB6_1j6.js`).then(e=>Q(e.swift)),[])}}),H.of({name:`sTeX`,load(){return Z(()=>import(`./stex-DNzd62Q_.js`).then(e=>Q(e.stex)),[])}}),H.of({name:`LaTeX`,alias:[`tex`],extensions:[`text`,`ltx`,`tex`],load(){return Z(()=>import(`./stex-DNzd62Q_.js`).then(e=>Q(e.stex)),[])}}),H.of({name:`SystemVerilog`,extensions:[`v`,`sv`,`svh`],load(){return Z(()=>import(`./verilog-7LoJAqYT.js`).then(e=>Q(e.verilog)),[])}}),H.of({name:`Tcl`,extensions:[`tcl`],load(){return Z(()=>import(`./tcl-BGfruO1u.js`).then(e=>Q(e.tcl)),[])}}),H.of({name:`Textile`,extensions:[`textile`],load(){return Z(()=>import(`./textile-C4jVoHG1.js`).then(e=>Q(e.textile)),[])}}),H.of({name:`TiddlyWiki`,load(){return Z(()=>import(`./tiddlywiki-VlUiK86J.js`).then(e=>Q(e.tiddlyWiki)),[])}}),H.of({name:`Tiki wiki`,load(){return Z(()=>import(`./tiki-AK6FwT8q.js`).then(e=>Q(e.tiki)),[])}}),H.of({name:`TOML`,extensions:[`toml`],load(){return Z(()=>import(`./toml-BPTmHmyx.js`).then(e=>Q(e.toml)),[])}}),H.of({name:`Troff`,extensions:[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`],load(){return Z(()=>import(`./troff-C2dAgh7P.js`).then(e=>Q(e.troff)),[])}}),H.of({name:`TTCN`,extensions:[`ttcn`,`ttcn3`,`ttcnpp`],load(){return Z(()=>import(`./ttcn-PPSTk1ow.js`).then(e=>Q(e.ttcn)),[])}}),H.of({name:`TTCN_CFG`,extensions:[`cfg`],load(){return Z(()=>import(`./ttcn-cfg-2b4Gb5sE.js`).then(e=>Q(e.ttcnCfg)),[])}}),H.of({name:`Turtle`,extensions:[`ttl`],load(){return Z(()=>import(`./turtle-Cx3rYX2g.js`).then(e=>Q(e.turtle)),[])}}),H.of({name:`Web IDL`,extensions:[`webidl`],load(){return Z(()=>import(`./webidl-D5jiJvOU.js`).then(e=>Q(e.webIDL)),[])}}),H.of({name:`VB.NET`,extensions:[`vb`],load(){return Z(()=>import(`./vb-BthdM_4N.js`).then(e=>Q(e.vb)),[])}}),H.of({name:`VBScript`,extensions:[`vbs`],load(){return Z(()=>import(`./vbscript-D9f6rSsU.js`).then(e=>Q(e.vbScript)),[])}}),H.of({name:`Velocity`,extensions:[`vtl`],load(){return Z(()=>import(`./velocity-CqftRsjg.js`).then(e=>Q(e.velocity)),[])}}),H.of({name:`Verilog`,extensions:[`v`],load(){return Z(()=>import(`./verilog-7LoJAqYT.js`).then(e=>Q(e.verilog)),[])}}),H.of({name:`VHDL`,extensions:[`vhd`,`vhdl`],load(){return Z(()=>import(`./vhdl-kS471soi.js`).then(e=>Q(e.vhdl)),[])}}),H.of({name:`XQuery`,extensions:[`xy`,`xquery`,`xq`,`xqm`,`xqy`],load(){return Z(()=>import(`./xquery-BKJx4mf9.js`).then(e=>Q(e.xQuery)),[])}}),H.of({name:`Yacas`,extensions:[`ys`],load(){return Z(()=>import(`./yacas-CXXgtw0p.js`).then(e=>Q(e.yacas)),[])}}),H.of({name:`Z80`,extensions:[`z80`],load(){return Z(()=>import(`./z80-Co3PbHdE.js`).then(e=>Q(e.z80)),[])}}),H.of({name:`MscGen`,extensions:[`mscgen`,`mscin`,`msc`],load(){return Z(()=>import(`./mscgen-qgSLujhx.js`).then(e=>Q(e.mscgen)),[])}}),H.of({name:`Xù`,extensions:[`xu`],load(){return Z(()=>import(`./mscgen-qgSLujhx.js`).then(e=>Q(e.xu)),[])}}),H.of({name:`MsGenny`,extensions:[`msgenny`],load(){return Z(()=>import(`./mscgen-qgSLujhx.js`).then(e=>Q(e.msgenny)),[])}}),H.of({name:`Vue`,extensions:[`vue`],load(){return Z(()=>import(`./dist-Drv_xdGh.js`).then(e=>e.vue()),__vite__mapDeps([24,1]))}}),H.of({name:`Angular Template`,load(){return Z(()=>import(`./dist-DI39iyXK.js`).then(e=>e.angular()),__vite__mapDeps([25,1]))}})],RL=`#2e3440`,zL=`#3b4252`,BL=`#434c5e`,VL=`#4c566a`,HL=`#e5e9f0`,UL=`#eceff4`,WL=`#8fbcbb`,GL=`#88c0d0`,_be=`#81a1c1`,KL=`#5e81ac`,vbe=`#bf616a`,qL=`#d08770`,JL=`#ebcb8b`,YL=`#a3be8c`,ybe=`#b48ead`,XL=`#d30102`,ZL=UL,QL=ZL,bbe=`#ffffff`,$L=zL,xbe=ZL,eR=zL,Sbe=V.theme({"&":{color:RL,backgroundColor:bbe},".cm-content":{caretColor:eR},".cm-cursor, .cm-dropCursor":{borderLeftColor:eR},"&.cm-focused .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:xbe},".cm-panels":{backgroundColor:ZL,color:VL},".cm-panels.cm-panels-top":{borderBottom:`2px solid black`},".cm-panels.cm-panels-bottom":{borderTop:`2px solid black`},".cm-searchMatch":{backgroundColor:`#72a1ff59`,outline:`1px solid ${VL}`},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:HL},".cm-activeLine":{backgroundColor:QL},".cm-selectionMatch":{backgroundColor:HL},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{outline:`1px solid ${VL}`},"&.cm-focused .cm-matchingBracket":{backgroundColor:UL},".cm-gutters":{backgroundColor:UL,color:RL,border:`none`},".cm-activeLineGutter":{backgroundColor:QL},".cm-foldPlaceholder":{backgroundColor:`transparent`,border:`none`,color:`#ddd`},".cm-tooltip":{border:`none`,backgroundColor:$L},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:`transparent`,borderBottomColor:`transparent`},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:$L,borderBottomColor:$L},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:QL,color:VL}}},{dark:!1}),Cbe=oe.define([{tag:P.keyword,color:KL},{tag:[P.name,P.deleted,P.character,P.propertyName,P.macroName],color:qL},{tag:[P.variableName],color:qL},{tag:[P.function(P.variableName)],color:KL},{tag:[P.labelName],color:_be},{tag:[P.color,P.constant(P.name),P.standard(P.name)],color:KL},{tag:[P.definition(P.name),P.separator],color:YL},{tag:[P.brace],color:WL},{tag:[P.annotation],color:XL},{tag:[P.number,P.changed,P.annotation,P.modifier,P.self,P.namespace],color:GL},{tag:[P.typeName,P.className],color:JL},{tag:[P.operator,P.operatorKeyword],color:YL},{tag:[P.tagName],color:ybe},{tag:[P.squareBracket],color:vbe},{tag:[P.angleBracket],color:qL},{tag:[P.attributeName],color:JL},{tag:[P.regexp],color:KL},{tag:[P.quote],color:zL},{tag:[P.string],color:qL},{tag:P.link,color:WL,textDecoration:`underline`,textUnderlinePosition:`under`},{tag:[P.url,P.escape,P.special(P.string)],color:qL},{tag:[P.meta],color:GL},{tag:[P.comment],color:BL,fontStyle:`italic`},{tag:P.strong,fontWeight:`bold`,color:KL},{tag:P.emphasis,fontStyle:`italic`,color:KL},{tag:P.strikethrough,textDecoration:`line-through`},{tag:P.heading,fontWeight:`bold`,color:KL},{tag:P.special(P.heading1),fontWeight:`bold`,color:KL},{tag:P.heading1,fontWeight:`bold`,color:KL},{tag:[P.heading2,P.heading3,P.heading4],fontWeight:`bold`,color:KL},{tag:[P.heading5,P.heading6],color:KL},{tag:[P.atom,P.bool,P.special(P.variableName)],color:qL},{tag:[P.processingInstruction,P.inserted],color:WL},{tag:[P.contentSeparator],color:JL},{tag:P.invalid,color:BL,borderBottom:`1px dotted ${XL}`}]),tR=[Sbe,j(Cbe)],nR=typeof String.prototype.normalize==`function`?e=>e.normalize(`NFKD`):e=>e,rR=class{constructor(e,t,n=0,r=e.length,i,a){this.test=a,this.value={from:0,to:0,precise:!1},this.done=!1,this.matches=[],this.buffer=``,this.bufferPos=0,this.iter=e.iterRange(n,r),this.bufferStart=n,this.normalize=i?e=>i(nR(e)):nR,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return E(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=b(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=F(e);let r=this.normalize(t);if(r.length)for(let e=0,i=n,a=!0;;e++){let n=r.charCodeAt(e),o=this.match(n,i,a,this.bufferPos+this.bufferStart,e==r.length-1);if(o)return this.value=o,this;if(e==r.length-1)break;a&&e<t.length&&t.charCodeAt(e)==n?i++:a=!1}}}match(e,t,n,r,i){let a=null;for(let t=0;t<this.matches.length;){let n=this.matches[t],o=!1;this.query.charCodeAt(n.index)==e&&(n.index==this.query.length-1?a={from:n.from,to:r,precise:i&&n.precise}:(n.index++,o=!0)),o?t++:this.matches.splice(t,1)}return this.query.charCodeAt(0)==e&&(this.query.length==1?a={from:t,to:r,precise:n&&i}:this.matches.push({from:t,index:1,precise:n})),a&&this.test&&!this.test(a.from,a.to,this.buffer,this.bufferStart)&&(a=null),a}};typeof Symbol<`u`&&(rR.prototype[Symbol.iterator]=function(){return this});var iR={from:-1,to:-1,match:/.*/.exec(``),precise:!0},aR=`gm`+(/x/.unicode==null?``:`u`),oR=class{constructor(e,t,n,r=0,i=e.length){if(this.text=e,this.to=i,this.curLine=``,this.done=!1,this.value=iR,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new lR(e,t,n,r,i);this.re=new RegExp(t,aR+(n?.ignoreCase?`i`:``)),this.test=n?.test,this.iter=e.iter();let a=e.lineAt(r);this.curLineStart=a.from,this.matchPos=uR(e,r),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine=``:(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine=``:this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let n=this.curLineStart+t.index,r=n+t[0].length;if(this.matchPos=uR(this.text,r+ +(n==r)),n==this.curLineStart+this.curLine.length&&this.nextLine(),(n<r||n>this.value.to)&&(!this.test||this.test(n,r,t)))return this.value={from:n,to:r,precise:!0,match:t},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}},sR=new WeakMap,cR=class e{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(t,n,r){let i=sR.get(t);if(!i||i.from>=r||i.to<=n){let i=new e(n,t.sliceString(n,r));return sR.set(t,i),i}if(i.from==n&&i.to==r)return i;let{text:a,from:o}=i;return o>n&&(a=t.sliceString(n,o)+a,o=n),i.to<r&&(a+=t.sliceString(i.to,r)),sR.set(t,new e(o,a)),new e(n,a.slice(n-o,r-o))}},lR=class{constructor(e,t,n,r,i){this.text=e,this.to=i,this.done=!1,this.value=iR,this.matchPos=uR(e,r),this.re=new RegExp(t,aR+(n?.ignoreCase?`i`:``)),this.test=n?.test,this.flat=cR.get(e,r,this.chunkEnd(r+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let e=this.flat.from+t.index,n=e+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(e,n,t)))return this.value={from:e,to:n,precise:!0,match:t},this.matchPos=uR(this.text,n+ +(e==n)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=cR.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}};typeof Symbol<`u`&&(oR.prototype[Symbol.iterator]=lR.prototype[Symbol.iterator]=function(){return this});function wbe(e){try{return new RegExp(e,aR),!0}catch{return!1}}function uR(e,t){if(t>=e.length)return t;let n=e.lineAt(t),r;for(;t<n.to&&(r=n.text.charCodeAt(t-n.from))>=56320&&r<57344;)t++;return t}var Tbe=e=>{let{state:t}=e,n=String(t.doc.lineAt(e.state.selection.main.head).number),{close:r,result:i}=ye(e,{label:t.phrase(`Go to line`),input:{type:`text`,name:`line`,value:n},focus:!0,submitLabel:t.phrase(`go`)});return i.then(n=>{let i=n&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(n.elements.line.value);if(!i){e.dispatch({effects:r});return}let a=t.doc.lineAt(t.selection.main.head),[,o,s,c,l]=i,u=c?+c.slice(1):0,d=s?+s:a.number;if(s&&l){let e=d/100;o&&(e=e*(o==`-`?-1:1)+a.number/t.doc.lines),d=Math.round(t.doc.lines*e)}else s&&o&&(d=d*(o==`-`?-1:1)+a.number);let f=t.doc.line(Math.max(1,Math.min(t.doc.lines,d))),p=z.cursor(f.from+Math.max(0,Math.min(u,f.length)));e.dispatch({effects:[r,V.scrollIntoView(p.from,{y:`center`})],selection:p})}),!0},Ebe={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},dR=p.define({combine(e){return Qe(e,Ebe,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function Dbe(e){let t=[Mbe,jbe];return e&&t.push(dR.of(e)),t}var Obe=Pe.mark({class:`cm-selectionMatch`}),kbe=Pe.mark({class:`cm-selectionMatch cm-selectionMatch-main`});function fR(e,t,n,r){return(n==0||e(t.sliceDoc(n-1,n))!=d.Word)&&(r==t.doc.length||e(t.sliceDoc(r,r+1))!=d.Word)}function Abe(e,t,n,r){return e(t.sliceDoc(n,n+1))==d.Word&&e(t.sliceDoc(r-1,r))==d.Word}var jbe=ie.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.selectionSet||e.docChanged||e.viewportChanged)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=e.state.facet(dR),{state:n}=e,r=n.selection;if(r.ranges.length>1)return Pe.none;let i=r.main,a,o=null;if(i.empty){if(!t.highlightWordAroundCursor)return Pe.none;let e=n.wordAt(i.head);if(!e)return Pe.none;o=n.charCategorizer(i.head),a=n.sliceDoc(e.from,e.to)}else{let e=i.to-i.from;if(e<t.minSelectionLength||e>200)return Pe.none;if(t.wholeWords){if(a=n.sliceDoc(i.from,i.to),o=n.charCategorizer(i.head),!(fR(o,n,i.from,i.to)&&Abe(o,n,i.from,i.to)))return Pe.none}else if(a=n.sliceDoc(i.from,i.to),!a)return Pe.none}let s=[];for(let r of e.visibleRanges){let e=new rR(n.doc,a,r.from,r.to);for(;!e.next().done;){let{from:r,to:a}=e.value;if((!o||fR(o,n,r,a))&&(i.empty&&r<=i.from&&a>=i.to?s.push(kbe.range(r,a)):(r>=i.to||a<=i.from)&&s.push(Obe.range(r,a)),s.length>t.maxMatches))return Pe.none}}return Pe.set(s)}},{decorations:e=>e.decorations}),Mbe=V.baseTheme({".cm-selectionMatch":{backgroundColor:`#99ff7780`},".cm-searchMatch .cm-selectionMatch":{backgroundColor:`transparent`}}),Nbe=({state:e,dispatch:t})=>{let{selection:n}=e,r=z.create(n.ranges.map(t=>e.wordAt(t.head)||z.cursor(t.head)),n.mainIndex);return!r.eq(n)&&(t(e.update({selection:r})),!0)};function Pbe(e,t){let{main:n,ranges:r}=e.selection,i=e.wordAt(n.head),a=i&&i.from==n.from&&i.to==n.to;for(let n=!1,i=new rR(e.doc,t,r[r.length-1].to);;)if(i.next(),i.done){if(n)return null;i=new rR(e.doc,t,0,Math.max(0,r[r.length-1].from-1)),n=!0}else{if(n&&r.some(e=>e.from==i.value.from))continue;if(a){let t=e.wordAt(i.value.from);if(!t||t.from!=i.value.from||t.to!=i.value.to)continue}return i.value}}var Fbe=({state:e,dispatch:t})=>{let{ranges:n}=e.selection;if(n.some(e=>e.from===e.to))return Nbe({state:e,dispatch:t});let r=e.sliceDoc(n[0].from,n[0].to);if(e.selection.ranges.some(t=>e.sliceDoc(t.from,t.to)!=r))return!1;let i=Pbe(e,r);return i?(t(e.update({selection:e.selection.addRange(z.range(i.from,i.to),!1),effects:V.scrollIntoView(i.to)})),!0):!1},pR=p.define({combine(e){return Qe(e,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new Ybe(e),scrollToMatch:e=>V.scrollIntoView(e)})}}),mR=class{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||``,this.valid=!!this.search&&(!this.regexp||wbe(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(e,t)=>t==`n`?`
176
176
  `:t==`r`?`\r`:t==`t`?` `:`\\`)}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new Vbe(this):new Rbe(this)}getCursor(e,t=0,n){let r=e.doc?e:h.create({doc:e});return n??=r.doc.length,this.regexp?_R(this,r,t,n):gR(this,r,t,n)}},hR=class{constructor(e){this.spec=e}};function Ibe(e,t,n){return(r,i,a,o)=>n&&!n(r,i,a,o)?!1:e(r>=o&&i<=o+a.length?a.slice(r-o,i-o):t.doc.sliceString(r,i),t,r,i)}function gR(e,t,n,r){let i;return e.wholeWord&&(i=Lbe(t.doc,t.charCategorizer(t.selection.main.head))),e.test&&(i=Ibe(e.test,t,i)),new rR(t.doc,e.unquoted,n,r,e.caseSensitive?void 0:e=>e.toLowerCase(),i)}function Lbe(e,t){return(n,r,i,a)=>((a>n||a+i.length<r)&&(a=Math.max(0,n-2),i=e.sliceString(a,Math.min(e.length,r+2))),(t(vR(i,n-a))!=d.Word||t(yR(i,n-a))!=d.Word)&&(t(yR(i,r-a))!=d.Word||t(vR(i,r-a))!=d.Word))}var Rbe=class extends hR{constructor(e){super(e)}nextMatch(e,t,n){let r=gR(this.spec,e,n,e.doc.length).nextOverlapping();if(r.done){let n=Math.min(e.doc.length,t+this.spec.unquoted.length);r=gR(this.spec,e,0,n).nextOverlapping()}return r.done||r.value.from==t&&r.value.to==n?null:r.value}prevMatchInRange(e,t,n){for(let r=n;;){let n=Math.max(t,r-1e4-this.spec.unquoted.length),i=gR(this.spec,e,n,r),a=null;for(;!i.nextOverlapping().done;)a=i.value;if(a)return a;if(n==t)return null;r-=1e4}}prevMatch(e,t,n){let r=this.prevMatchInRange(e,0,t);return r||=this.prevMatchInRange(e,Math.max(0,n-this.spec.unquoted.length),e.doc.length),r&&(r.from!=t||r.to!=n)?r:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let n=gR(this.spec,e,0,e.doc.length),r=[];for(;!n.next().done;){if(r.length>=t)return null;r.push(n.value)}return r}highlight(e,t,n,r){let i=gR(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(n+this.spec.unquoted.length,e.doc.length));for(;!i.next().done;)r(i.value.from,i.value.to)}};function zbe(e,t,n){return(r,i,a)=>(!n||n(r,i,a))&&e(a[0],t,r,i)}function _R(e,t,n,r){let i;return e.wholeWord&&(i=Bbe(t.charCategorizer(t.selection.main.head))),e.test&&(i=zbe(e.test,t,i)),new oR(t.doc,e.search,{ignoreCase:!e.caseSensitive,test:i},n,r)}function vR(e,t){return e.slice(te(e,t,!1),t)}function yR(e,t){return e.slice(t,te(e,t))}function Bbe(e){return(t,n,r)=>!r[0].length||(e(vR(r.input,r.index))!=d.Word||e(yR(r.input,r.index))!=d.Word)&&(e(yR(r.input,r.index+r[0].length))!=d.Word||e(vR(r.input,r.index+r[0].length))!=d.Word)}var Vbe=class extends hR{nextMatch(e,t,n){let r=_R(this.spec,e,n,e.doc.length).next();return r.done&&(r=_R(this.spec,e,0,t).next()),r.done?null:r.value}prevMatchInRange(e,t,n){for(let r=1;;r++){let i=Math.max(t,n-r*1e4),a=_R(this.spec,e,i,n),o=null;for(;!a.next().done;)o=a.value;if(o&&(i==t||o.from>i+10))return o;if(i==t)return null}}prevMatch(e,t,n){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,n,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(t,n)=>{if(n==`&`)return e.match[0];if(n==`$`)return`$`;for(let t=n.length;t>0;t--){let r=+n.slice(0,t);if(r>0&&r<e.match.length)return e.match[r]+n.slice(t)}return t})}matchAll(e,t){let n=_R(this.spec,e,0,e.doc.length),r=[];for(;!n.next().done;){if(r.length>=t)return null;r.push(n.value)}return r}highlight(e,t,n,r){let i=_R(this.spec,e,Math.max(0,t-250),Math.min(n+250,e.doc.length));for(;!i.next().done;)r(i.value.from,i.value.to)}},bR=k.define(),xR=k.define(),SR=M.define({create(e){return new CR(kR(e).create(),null)},update(e,t){for(let n of t.effects)n.is(bR)?e=new CR(n.value.create(),e.panel):n.is(xR)&&(e=new CR(e.query,n.value?OR:null));return e},provide:e=>_e.from(e,e=>e.panel)}),CR=class{constructor(e,t){this.query=e,this.panel=t}},Hbe=Pe.mark({class:`cm-searchMatch`}),Ube=Pe.mark({class:`cm-searchMatch cm-searchMatch-selected`}),Wbe=ie.fromClass(class{constructor(e){this.view=e,this.decorations=this.highlight(e.state.field(SR))}update(e){let t=e.state.field(SR);(t!=e.startState.field(SR)||e.docChanged||e.selectionSet||e.viewportChanged)&&(this.decorations=this.highlight(t))}highlight({query:e,panel:t}){if(!t||!e.spec.valid)return Pe.none;let{view:n}=this,r=new Se;for(let t=0,i=n.visibleRanges,a=i.length;t<a;t++){let{from:o,to:s}=i[t];for(;t<a-1&&s>i[t+1].from-500;)s=i[++t].to;e.highlight(n.state,o,s,(e,t)=>{let i=n.state.selection.ranges.some(n=>n.from==e&&n.to==t);r.add(e,t,i?Ube:Hbe)})}return r.finish()}},{decorations:e=>e.decorations});function wR(e){return t=>{let n=t.state.field(SR,!1);return n&&n.query.spec.valid?e(t,n):MR(t)}}var TR=wR((e,{query:t})=>{let{to:n}=e.state.selection.main,r=t.nextMatch(e.state,n,n);if(!r)return!1;let i=z.single(r.from,r.to),a=e.state.facet(pR);return e.dispatch({selection:i,effects:[LR(e,r),a.scrollToMatch(i.main,e)],userEvent:`select.search`}),jR(e),!0}),ER=wR((e,{query:t})=>{let{state:n}=e,{from:r}=n.selection.main,i=t.prevMatch(n,r,r);if(!i)return!1;let a=z.single(i.from,i.to),o=e.state.facet(pR);return e.dispatch({selection:a,effects:[LR(e,i),o.scrollToMatch(a.main,e)],userEvent:`select.search`}),jR(e),!0}),Gbe=wR((e,{query:t})=>{let n=t.matchAll(e.state,1e3);return!n||!n.length?!1:(e.dispatch({selection:z.create(n.map(e=>z.range(e.from,e.to))),userEvent:`select.search.matches`}),!0)}),Kbe=({state:e,dispatch:t})=>{let n=e.selection;if(n.ranges.length>1||n.main.empty)return!1;let{from:r,to:i}=n.main,a=[],o=0;for(let t=new rR(e.doc,e.sliceDoc(r,i));!t.next().done;){if(a.length>1e3)return!1;t.value.from==r&&(o=a.length),a.push(z.range(t.value.from,t.value.to))}return t(e.update({selection:z.create(a,o),userEvent:`select.search.matches`})),!0},DR=wR((e,{query:t})=>{let{state:n}=e,{from:r,to:i}=n.selection.main;if(n.readOnly)return!1;let a=t.nextMatch(n,r,r);if(!a)return!1;let o=a,s=[],c,l,u=[];o.precise?o.from==r&&o.to==i&&(l=n.toText(t.getReplacement(o)),s.push({from:o.from,to:o.to,insert:l}),o=t.nextMatch(n,o.from,o.to),u.push(V.announce.of(n.phrase(`replaced match on line $`,n.doc.lineAt(r).number)+`.`))):o=t.nextMatch(n,o.from,o.to);let d=e.state.changes(s);return o&&(c=z.single(o.from,o.to).map(d),u.push(LR(e,o)),u.push(n.facet(pR).scrollToMatch(c.main,e))),e.dispatch({changes:d,selection:c,effects:u,userEvent:`input.replace`}),!0}),qbe=wR((e,{query:t})=>{if(e.state.readOnly)return!1;let n=[];for(let r of t.matchAll(e.state,1e9)){let{from:e,to:i,precise:a}=r;a&&n.push({from:e,to:i,insert:t.getReplacement(r)})}if(!n.length)return!1;let r=e.state.phrase(`replaced $ matches`,n.length)+`.`;return e.dispatch({changes:n,effects:V.announce.of(r),userEvent:`input.replace.all`}),!0});function OR(e){return e.state.facet(pR).createPanel(e)}function kR(e,t){let n=e.selection.main,r=n.empty||n.to>n.from+100?``:e.sliceDoc(n.from,n.to);if(t&&!r)return t;let i=e.facet(pR);return new mR({search:t?.literal??i.literal?r:r.replace(/\n/g,`\\n`),caseSensitive:t?.caseSensitive??i.caseSensitive,literal:t?.literal??i.literal,regexp:t?.regexp??i.regexp,wholeWord:t?.wholeWord??i.wholeWord})}function AR(e){let t=Ie(e,OR);return t&&t.dom.querySelector(`[main-field]`)}function jR(e){let t=AR(e);t&&t==e.root.activeElement&&t.select()}var MR=e=>{let t=e.state.field(SR,!1);if(t&&t.panel){let n=AR(e);if(n&&n!=e.root.activeElement){let r=kR(e.state,t.query.spec);r.valid&&e.dispatch({effects:bR.of(r)}),n.focus(),n.select()}}else e.dispatch({effects:[xR.of(!0),t?bR.of(kR(e.state,t.query.spec)):k.appendConfig.of(Zbe)]});return!0},NR=e=>{let t=e.state.field(SR,!1);if(!t||!t.panel)return!1;let n=Ie(e,OR);return n&&n.dom.contains(e.root.activeElement)&&e.focus(),e.dispatch({effects:xR.of(!1)}),!0},Jbe=[{key:`Mod-f`,run:MR,scope:`editor search-panel`},{key:`F3`,run:TR,shift:ER,scope:`editor search-panel`,preventDefault:!0},{key:`Mod-g`,run:TR,shift:ER,scope:`editor search-panel`,preventDefault:!0},{key:`Escape`,run:NR,scope:`editor search-panel`},{key:`Mod-Shift-l`,run:Kbe},{key:`Mod-Alt-g`,run:Tbe},{key:`Mod-d`,run:Fbe,preventDefault:!0}],Ybe=class{constructor(e){this.view=e;let t=this.query=e.state.field(SR).query.spec;this.commit=this.commit.bind(this),this.searchField=We(`input`,{value:t.search,placeholder:PR(e,`Find`),"aria-label":PR(e,`Find`),class:`cm-textfield`,name:`search`,form:``,"main-field":`true`,onchange:this.commit,onkeyup:this.commit}),this.replaceField=We(`input`,{value:t.replace,placeholder:PR(e,`Replace`),"aria-label":PR(e,`Replace`),class:`cm-textfield`,name:`replace`,form:``,onchange:this.commit,onkeyup:this.commit}),this.caseField=We(`input`,{type:`checkbox`,name:`case`,form:``,checked:t.caseSensitive,onchange:this.commit}),this.reField=We(`input`,{type:`checkbox`,name:`re`,form:``,checked:t.regexp,onchange:this.commit}),this.wordField=We(`input`,{type:`checkbox`,name:`word`,form:``,checked:t.wholeWord,onchange:this.commit});function n(e,t,n){return We(`button`,{class:`cm-button`,name:e,onclick:t,type:`button`},n)}this.dom=We(`div`,{onkeydown:e=>this.keydown(e),class:`cm-search`},[this.searchField,n(`next`,()=>TR(e),[PR(e,`next`)]),n(`prev`,()=>ER(e),[PR(e,`previous`)]),n(`select`,()=>Gbe(e),[PR(e,`all`)]),We(`label`,null,[this.caseField,PR(e,`match case`)]),We(`label`,null,[this.reField,PR(e,`regexp`)]),We(`label`,null,[this.wordField,PR(e,`by word`)]),...e.state.readOnly?[]:[We(`br`),this.replaceField,n(`replace`,()=>DR(e),[PR(e,`replace`)]),n(`replaceAll`,()=>qbe(e),[PR(e,`replace all`)])],We(`button`,{name:`close`,onclick:()=>NR(e),"aria-label":PR(e,`close`),type:`button`},[`×`])])}commit(){let e=new mR({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:bR.of(e)}))}keydown(e){De(this.view,e,`search-panel`)?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?ER:TR)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),DR(this.view))}update(e){for(let t of e.transactions)for(let e of t.effects)e.is(bR)&&!e.value.eq(this.query)&&this.setQuery(e.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(pR).top}};function PR(e,t){return e.state.phrase(t)}var FR=30,IR=/[\s\.,:;?!]/;function LR(e,{from:t,to:n}){let r=e.state.doc.lineAt(t),i=e.state.doc.lineAt(n).to,a=Math.max(r.from,t-FR),o=Math.min(i,n+FR),s=e.state.sliceDoc(a,o);if(a!=r.from){for(let e=0;e<FR;e++)if(!IR.test(s[e+1])&&IR.test(s[e])){s=s.slice(e);break}}if(o!=i){for(let e=s.length-1;e>s.length-FR;e--)if(!IR.test(s[e-1])&&IR.test(s[e])){s=s.slice(0,e);break}}return V.announce.of(`${e.state.phrase(`current match`)}. ${s} ${e.state.phrase(`on line`)} ${r.number}.`)}var Xbe=V.baseTheme({".cm-panel.cm-search":{padding:`2px 6px 4px`,position:`relative`,"& [name=close]":{position:`absolute`,top:`0`,right:`4px`,backgroundColor:`inherit`,border:`none`,font:`inherit`,padding:0,margin:0},"& input, & button, & label":{margin:`.2em .6em .2em 0`},"& input[type=checkbox]":{marginRight:`.2em`},"& label":{fontSize:`80%`,whiteSpace:`pre`}},"&light .cm-searchMatch":{backgroundColor:`#ffff0054`},"&dark .cm-searchMatch":{backgroundColor:`#00ffff8a`},"&light .cm-searchMatch-selected":{backgroundColor:`#ff6a0054`},"&dark .cm-searchMatch-selected":{backgroundColor:`#ff00ff8a`}}),Zbe=[SR,we.low(Wbe),Xbe],Qbe=class{constructor(e,t,n){this.from=e,this.to=t,this.diagnostic=n}},RR=class e{constructor(e,t,n){this.diagnostics=e,this.panel=t,this.selected=n}static init(t,n,r){let i=r.facet(HR).markerFilter;i&&(t=i(t,r));let a=t.slice().sort((e,t)=>e.from-t.from||e.to-t.to),o=new Se,s=[],c=0,l=r.doc.iter(),u=0,d=r.doc.length;for(let e=0;;){let t=e==a.length?null:a[e];if(!t&&!s.length)break;let n,r;if(s.length)n=c,r=s.reduce((e,t)=>Math.min(e,t.to),t&&t.from>n?t.from:1e8);else{if(n=t.from,n>d)break;r=t.to,s.push(t),e++}for(;e<a.length;){let t=a[e];if(t.from==n&&(t.to>t.from||t.to==n))s.push(t),e++,r=Math.min(t.to,r);else{r=Math.min(t.from,r);break}}r=Math.min(r,d);let i=!1;if(s.some(e=>e.from==n&&(e.to==r||r==d))&&(i=n==r,!i&&r-n<10)){let e=n-(u+l.value.length);e>0&&(l.next(e),u=n);for(let e=n;;){if(e>=r){i=!0;break}if(!l.lineBreak&&u+l.value.length>e)break;e=u+l.value.length,u+=l.value.length,l.next()}}let f=_xe(s);if(i)o.add(n,n,Pe.widget({widget:new fxe(f),diagnostics:s.slice()}));else{let e=s.reduce((e,t)=>t.markClass?e+` `+t.markClass:e,``);o.add(n,r,Pe.mark({class:`cm-lintRange cm-lintRange-`+f+e,diagnostics:s.slice(),inclusiveEnd:s.some(e=>e.to>r)}))}if(c=r,c==d)break;for(let e=0;e<s.length;e++)s[e].to<=c&&s.splice(e--,1)}let f=o.finish();return new e(f,n,zR(f))}};function zR(e,t=null,n=0){let r=null;return e.between(n,1e9,(e,n,{spec:i})=>{if(!(t&&i.diagnostics.indexOf(t)<0)){if(!r)r=new Qbe(e,n,t||i.diagnostics[0]);else if(i.diagnostics.indexOf(r.diagnostic)<0)return!1;else r=new Qbe(r.from,n,r.diagnostic)}}),r}function $be(e,t){let n=t.pos,r=t.end||n,i=e.state.facet(HR).hideOn(e,n,r);if(i!=null)return i;let a=e.startState.doc.lineAt(t.pos);return!!(e.effects.some(e=>e.is(txe))||e.changes.touchesRange(a.from,Math.max(a.to,r)))}function exe(e,t){return e.field(VR,!1)?t:t.concat(k.appendConfig.of(yxe))}var txe=k.define(),BR=k.define(),nxe=k.define(),VR=M.define({create(){return new RR(Pe.none,null,null)},update(e,t){if(t.docChanged&&e.diagnostics.size){let n=e.diagnostics.map(t.changes),r=null,i=e.panel;if(e.selected){let i=t.changes.mapPos(e.selected.from,1);r=zR(n,e.selected.diagnostic,i)||zR(n,null,i)}!n.size&&i&&t.state.facet(HR).autoPanel&&(i=null),e=new RR(n,i,r)}for(let n of t.effects)if(n.is(txe)){let r=t.state.facet(HR).autoPanel?n.value.length?UR.open:null:e.panel;e=RR.init(n.value,r,t.state)}else n.is(BR)?e=new RR(e.diagnostics,n.value?UR.open:null,e.selected):n.is(nxe)&&(e=new RR(e.diagnostics,e.panel,n.value));return e},provide:e=>[_e.from(e,e=>e.panel),V.decorations.from(e,e=>e.diagnostics)]}),rxe=Pe.mark({class:`cm-lintRange cm-lintRange-active`});function ixe(e,t,n){let{diagnostics:r}=e.state.field(VR),i,a=-1,o=-1;r.between(t-+(n<0),t+ +(n>0),(e,r,{spec:s})=>{if(t>=e&&t<=r&&(e==r||(t>e||n>0)&&(t<r||n<0)))return i=s.diagnostics,a=e,o=r,!1});let s=e.state.facet(HR).tooltipFilter;return i&&s&&(i=s(i,e.state)),i?{pos:a,end:o,above:!0,create(){return{dom:axe(e,i)}}}:null}function axe(e,t){return We(`ul`,{class:`cm-tooltip-lint`},t.map(t=>dxe(e,t,!1)))}var oxe=e=>{let t=e.state.field(VR,!1);(!t||!t.panel)&&e.dispatch({effects:exe(e.state,[BR.of(!0)])});let n=Ie(e,UR.open);return n&&n.dom.querySelector(`.cm-panel-lint ul`).focus(),!0},sxe=e=>{let t=e.state.field(VR,!1);return!t||!t.panel?!1:(e.dispatch({effects:BR.of(!1)}),!0)},cxe=[{key:`Mod-Shift-m`,run:oxe,preventDefault:!0},{key:`F8`,run:e=>{let t=e.state.field(VR,!1);if(!t)return!1;let n=e.state.selection.main,r=zR(t.diagnostics,null,n.to+1);return!r&&(r=zR(t.diagnostics,null,0),!r||r.from==n.from&&r.to==n.to)?!1:(e.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),a(e,r.from,1,{tooltip:vxe,until:e=>e.docChanged||e.newSelection.main.head<r.from||e.newSelection.main.head>r.to}),!0)}}],HR=p.define({combine(e){return{sources:e.map(e=>e.source).filter(e=>e!=null),...Qe(e.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:lxe,tooltipFilter:lxe,needsRefresh:(e,t)=>e?t?n=>e(n)||t(n):e:t,hideOn:(e,t)=>e?t?(n,r,i)=>e(n,r,i)||t(n,r,i):e:t,autoPanel:(e,t)=>e||t})}}});function lxe(e,t){return e?t?(n,r)=>t(e(n,r),r):e:t}function uxe(e){let t=[];if(e)actions:for(let{name:n}of e){for(let e=0;e<n.length;e++){let r=n[e];if(/[a-zA-Z]/.test(r)&&!t.some(e=>e.toLowerCase()==r.toLowerCase())){t.push(r);continue actions}}t.push(``)}return t}function dxe(e,t,n){let r=n?uxe(t.actions):[];return We(`li`,{class:`cm-diagnostic cm-diagnostic-`+t.severity},We(`span`,{class:`cm-diagnosticText`},t.renderMessage?t.renderMessage(e):t.message),t.actions?.map((n,i)=>{let a=!1,o=r=>{if(r.preventDefault(),a)return;a=!0;let i=zR(e.state.field(VR).diagnostics,t);i&&n.apply(e,i.from,i.to)},{name:s}=n,c=r[i]?s.indexOf(r[i]):-1,l=c<0?s:[s.slice(0,c),We(`u`,s.slice(c,c+1)),s.slice(c+1)],u=n.markClass?` `+n.markClass:``;return We(`button`,{type:`button`,class:`cm-diagnosticAction`+u,onclick:o,onmousedown:o,"aria-label":` Action: ${s}${c<0?``:` (access key "${r[i]})"`}.`},l)}),t.source&&We(`div`,{class:`cm-diagnosticSource`},t.source))}var fxe=class extends N{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return We(`span`,{class:`cm-lintPoint cm-lintPoint-`+this.sev})}},pxe=class{constructor(e,t){this.diagnostic=t,this.id=`item_`+Math.floor(Math.random()*4294967295).toString(16),this.dom=dxe(e,t,!0),this.dom.id=this.id,this.dom.setAttribute(`role`,`option`)}},UR=class e{constructor(e){this.view=e,this.items=[];let t=t=>{if(!(t.ctrlKey||t.altKey||t.metaKey)){if(t.keyCode==27)sxe(this.view),this.view.focus();else if(t.keyCode==38||t.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(t.keyCode==40||t.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(t.keyCode==36)this.moveSelection(0);else if(t.keyCode==35)this.moveSelection(this.items.length-1);else if(t.keyCode==13)this.view.focus();else if(t.keyCode>=65&&t.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:n}=this.items[this.selectedIndex],r=uxe(n.actions);for(let i=0;i<r.length;i++)if(r[i].toUpperCase().charCodeAt(0)==t.keyCode){let t=zR(this.view.state.field(VR).diagnostics,n);t&&n.actions[i].apply(e,t.from,t.to)}}else return;t.preventDefault()}},n=e=>{for(let t=0;t<this.items.length;t++)this.items[t].dom.contains(e.target)&&this.moveSelection(t)};this.list=We(`ul`,{tabIndex:0,role:`listbox`,"aria-label":this.view.state.phrase(`Diagnostics`),onkeydown:t,onclick:n}),this.dom=We(`div`,{class:`cm-panel-lint`},this.list,We(`button`,{type:`button`,name:`close`,"aria-label":this.view.state.phrase(`close`),onclick:()=>sxe(this.view)},`×`)),this.update()}get selectedIndex(){let e=this.view.state.field(VR).selected;if(!e)return-1;for(let t=0;t<this.items.length;t++)if(this.items[t].diagnostic==e.diagnostic)return t;return-1}update(){let{diagnostics:e,selected:t}=this.view.state.field(VR),n=0,r=!1,i=null,a=new Set;for(e.between(0,this.view.state.doc.length,(e,o,{spec:s})=>{for(let e of s.diagnostics){if(a.has(e))continue;a.add(e);let o=-1,s;for(let t=n;t<this.items.length;t++)if(this.items[t].diagnostic==e){o=t;break}o<0?(s=new pxe(this.view,e),this.items.splice(n,0,s),r=!0):(s=this.items[o],o>n&&(this.items.splice(n,o-n),r=!0)),t&&s.diagnostic==t.diagnostic?s.dom.hasAttribute(`aria-selected`)||(s.dom.setAttribute(`aria-selected`,`true`),i=s):s.dom.hasAttribute(`aria-selected`)&&s.dom.removeAttribute(`aria-selected`),n++}});n<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)r=!0,this.items.pop();this.items.length==0&&(this.items.push(new pxe(this.view,{from:-1,to:-1,severity:`info`,message:this.view.state.phrase(`No diagnostics`)})),r=!0),i?(this.list.setAttribute(`aria-activedescendant`,i.id),this.view.requestMeasure({key:this,read:()=>({sel:i.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:e,panel:t})=>{let n=t.height/this.list.offsetHeight;e.top<t.top?this.list.scrollTop-=(t.top-e.top)/n:e.bottom>t.bottom&&(this.list.scrollTop+=(e.bottom-t.bottom)/n)}})):this.selectedIndex<0&&this.list.removeAttribute(`aria-activedescendant`),r&&this.sync()}sync(){let e=this.list.firstChild;function t(){let t=e;e=t.nextSibling,t.remove()}for(let n of this.items)if(n.dom.parentNode==this.list){for(;e!=n.dom;)t();e=n.dom.nextSibling}else this.list.insertBefore(n.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=zR(this.view.state.field(VR).diagnostics,this.items[e].diagnostic);t&&this.view.dispatch({selection:{anchor:t.from,head:t.to},scrollIntoView:!0,effects:nxe.of(t)})}static open(t){return new e(t)}};function mxe(e,t=`viewBox="0 0 40 40"`){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${t}>${encodeURIComponent(e)}</svg>')`}function WR(e){return mxe(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${e}" fill="none" stroke-width=".7"/>`,`width="6" height="3"`)}var hxe=V.baseTheme({".cm-diagnostic":{padding:`3px 6px 3px 8px`,marginLeft:`-1px`,display:`block`,whiteSpace:`pre-wrap`},".cm-diagnostic-error":{borderLeft:`5px solid #d11`},".cm-diagnostic-warning":{borderLeft:`5px solid orange`},".cm-diagnostic-info":{borderLeft:`5px solid #999`},".cm-diagnostic-hint":{borderLeft:`5px solid #66d`},".cm-diagnosticAction":{font:`inherit`,border:`none`,padding:`2px 4px`,backgroundColor:`#444`,color:`white`,borderRadius:`3px`,marginLeft:`8px`,cursor:`pointer`},".cm-diagnosticSource":{fontSize:`70%`,opacity:.7},".cm-lintRange":{backgroundPosition:`left bottom`,backgroundRepeat:`repeat-x`,paddingBottom:`0.7px`},".cm-lintRange-error":{backgroundImage:WR(`#f11`)},".cm-lintRange-warning":{backgroundImage:WR(`orange`)},".cm-lintRange-info":{backgroundImage:WR(`#999`)},".cm-lintRange-hint":{backgroundImage:WR(`#66d`)},".cm-lintRange-active":{backgroundColor:`#ffdd9980`},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:`relative`,"&:after":{content:`""`,position:`absolute`,bottom:0,left:`-2px`,borderLeft:`3px solid transparent`,borderRight:`3px solid transparent`,borderBottom:`4px solid #d11`}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:`orange`}},".cm-lintPoint-info":{"&:after":{borderBottomColor:`#999`}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:`#66d`}},".cm-panel.cm-panel-lint":{position:`relative`,"& ul":{maxHeight:`100px`,overflowY:`auto`,"& [aria-selected]":{backgroundColor:`#ddd`,"& u":{textDecoration:`underline`}},"&:focus [aria-selected]":{background_fallback:`#bdf`,backgroundColor:`Highlight`,color_fallback:`white`,color:`HighlightText`},"& u":{textDecoration:`none`},padding:0,margin:0},"& [name=close]":{position:`absolute`,top:`0`,right:`2px`,background:`inherit`,border:`none`,font:`inherit`,padding:0,margin:0}},"&dark .cm-lintRange-active":{backgroundColor:`#86714a80`},"&dark .cm-panel.cm-panel-lint ul":{"& [aria-selected]":{backgroundColor:`#2e343e`}}});function gxe(e){return e==`error`?4:e==`warning`?3:e==`info`?2:1}function _xe(e){let t=`hint`,n=1;for(let r of e){let e=gxe(r.severity);e>n&&(n=e,t=r.severity)}return t}var vxe=Te(ixe,{hideOn:$be}),yxe=[VR,V.decorations.compute([VR],e=>{let{selected:t,panel:n}=e.field(VR);return!t||!n||t.from==t.to?Pe.none:Pe.set([rxe.range(t.from,t.to)])}),vxe,hxe],bxe=[pe(),Re(),de(),R_e(),ce(),Be(),ke(),h.allowMultipleSelections.of(!0),A(),j(ge,{fallback:!0}),Me(),it(),nt(),Ne(),me(),je(),Dbe(),He.of([...tt,...Bve,...Jbe,...q_e,...I,...rt,...cxe])],xxe=Object.defineProperty,Sxe=(e,t)=>xxe(e,`name`,{value:t,configurable:!0});function GR(e,[t,n]){return Math.min(n,Math.max(t,e))}Sxe(GR,`clamp`);var Cxe=Object.defineProperty,wxe=(e,t)=>Cxe(e,`name`,{value:t,configurable:!0});function Txe(e){let t=U.useRef({value:e,previous:e});return U.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}wxe(Txe,`usePrevious`);var Exe=Object.defineProperty,Dxe=(e,t)=>Exe(e,`name`,{value:t,configurable:!0}),Oxe=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),kxe=U.forwardRef(Dxe(function(e,t){return(0,W.jsx)(zT.span,{...e,ref:t,style:{...Oxe,...e.style}})},`VisuallyHidden`)),Axe=Object.defineProperty,KR=(e,t)=>Axe(e,`name`,{value:t,configurable:!0}),jxe=[` `,`Enter`,`ArrowUp`,`ArrowDown`],Mxe=[` `,`Enter`],qR=`Select`,[JR,YR,Nxe]=eO(qR),[XR,Pxe]=DT(qR,[Nxe,cD]),ZR=cD(),[Fxe,QR]=XR(qR),[Ixe,Lxe]=XR(qR);function Rxe(e){let{__scopeSelect:t,children:n,open:r,defaultOpen:i,onOpenChange:a,value:o,defaultValue:s,onValueChange:c,dir:l,name:u,autoComplete:d,disabled:f,required:p,form:m,internal_do_not_use_render:h}=e,g=ZR(t),[_,v]=U.useState(null),[y,b]=U.useState(null),[x,S]=U.useState(!1),C=cO(l),[w,T]=yD({prop:r,defaultProp:i??!1,onChange:a,caller:qR}),[E,D]=yD({prop:o,defaultProp:s,onChange:c,caller:qR}),O=U.useRef(null),k=U.useRef(E);U.useEffect(()=>{let e=m?_?.ownerDocument.getElementById(m):_?.form;if(e instanceof HTMLFormElement){let t=KR(()=>D(k.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[m,_,D]);let A=!_||!!m||!!_.closest(`form`),[j,M]=U.useState(new Set),N=bE(),P=Array.from(j).map(e=>e.props.value).join(`;`),F=U.useCallback(e=>{M(t=>new Set(t).add(e))},[]),I=U.useCallback(e=>{M(t=>{let n=new Set(t);return n.delete(e),n})},[]),L={required:p,trigger:_,onTriggerChange:v,valueNode:y,onValueNodeChange:b,valueNodeHasChildren:x,onValueNodeHasChildrenChange:S,contentId:N,value:E,onValueChange:D,open:w,onOpenChange:T,dir:C,triggerPointerDownPosRef:O,disabled:f,name:u,autoComplete:d,form:m,nativeOptions:j,nativeSelectKey:P,isFormControl:A};return(0,W.jsx)(uD,{...g,children:(0,W.jsx)(Fxe,{scope:t,...L,children:(0,W.jsx)(JR.Provider,{scope:t,children:(0,W.jsx)(Ixe,{scope:t,onNativeOptionAdd:F,onNativeOptionRemove:I,children:mSe(h)?h(L):n})})})})}KR(Rxe,`SelectProvider`);var zxe=KR(e=>{let{__scopeSelect:t,children:n,...r}=e;return(0,W.jsx)(Rxe,{__scopeSelect:t,...r,internal_do_not_use_render:({isFormControl:e})=>(0,W.jsxs)(W.Fragment,{children:[n,e?(0,W.jsx)(pSe,{__scopeSelect:t}):null]})})},`Select`),Bxe=`SelectTrigger`,Vxe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n,disabled:r=!1,...i}=e,a=ZR(n),o=QR(Bxe,n),s=o.disabled||r,c=TT(t,o.onTriggerChange),l=YR(n),u=U.useRef(`touch`),[d,f,p]=az(e=>{let t=l().filter(e=>!e.disabled),n=oz(t,e,t.find(e=>e.value===o.value));n!==void 0&&o.onValueChange(n.value)}),m=KR(e=>{s||(o.onOpenChange(!0),p()),e&&(o.triggerPointerDownPosRef.current={x:Math.round(e.pageX),y:Math.round(e.pageY)})},`handleOpen`);return(0,W.jsx)(dD,{asChild:!0,...a,children:(0,W.jsx)(zT.button,{type:`button`,role:`combobox`,"aria-controls":o.open?o.contentId:void 0,"aria-expanded":o.open,"aria-required":o.required,"aria-autocomplete":`none`,dir:o.dir,"data-state":o.open?`open`:`closed`,disabled:s,"data-disabled":s?``:void 0,"data-placeholder":iz(o.value)?``:void 0,...i,ref:c,onClick:vT(i.onClick,e=>{e.currentTarget.focus(),u.current!==`mouse`&&m(e)}),onPointerDown:vT(i.onPointerDown,e=>{u.current=e.pointerType;let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),e.button===0&&e.ctrlKey===!1&&e.pointerType===`mouse`&&(m(e),e.preventDefault())}),onKeyDown:vT(i.onKeyDown,e=>{let t=d.current!==``;!(e.ctrlKey||e.altKey||e.metaKey)&&e.key.length===1&&f(e.key),!(t&&e.key===` `)&&jxe.includes(e.key)&&(m(),e.preventDefault())})})})},`SelectTrigger`)),Hxe=`SelectValue`,Uxe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n,className:r,style:i,children:a,placeholder:o=``,...s}=e,c=QR(Hxe,n),{onValueNodeHasChildrenChange:l}=c,u=a!==void 0,d=TT(t,c.onValueNodeChange);yE(()=>{l(u)},[l,u]);let f=iz(c.value);return(0,W.jsx)(zT.span,{...s,asChild:!f&&s.asChild,ref:d,style:{pointerEvents:`none`},children:(0,W.jsx)(U.Fragment,{children:f?o:a},f?`placeholder`:`value`)})},`SelectValue`)),Wxe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n,children:r,...i}=e;return(0,W.jsx)(zT.span,{"aria-hidden":!0,...i,ref:t,children:r||`▼`})},`SelectIcon`)),[Gxe,Kxe]=XR(`SelectPortal`,{forceMount:void 0}),qxe=KR(e=>{let{__scopeSelect:t,forceMount:n,...r}=e;return(0,W.jsx)(Gxe,{scope:e.__scopeSelect,forceMount:n,children:(0,W.jsx)(pD,{asChild:!0,...r})})},`SelectPortal`),$R=`SelectContent`,Jxe=U.forwardRef(KR(function(e,t){let n=Kxe($R,e.__scopeSelect),{forceMount:r=n.forceMount,...i}=e,a=QR($R,e.__scopeSelect),[o,s]=U.useState();return yE(()=>{s(new DocumentFragment)},[]),(0,W.jsx)(hD,{present:r||a.open,children:({present:e})=>e?(0,W.jsx)(Qxe,{...i,ref:t}):(0,W.jsx)(Yxe,{...i,fragment:o})})},`SelectContent`)),Yxe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n,children:r,fragment:i}=e;return i?jl.createPortal((0,W.jsx)(Xxe,{scope:n,children:(0,W.jsx)(JR.Slot,{scope:n,children:(0,W.jsx)(`div`,{ref:t,children:r})})}),i):null},`SelectContentFragment`)),ez=10,[Xxe,tz]=XR($R),Zxe=AT(`SelectContent.RemoveScroll`),Qxe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n}=e,{position:r=`item-aligned`,onCloseAutoFocus:i,onEscapeKeyDown:a,onPointerDownOutside:o,side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g,..._}=e,v=QR($R,n),[y,b]=U.useState(null),[x,S]=U.useState(null),C=TT(t,b),[w,T]=U.useState(null),[E,D]=U.useState(null),O=YR(n),[k,A]=U.useState(!1),j=U.useRef(!1);U.useEffect(()=>{if(y)return wD(y)},[y]),tE();let M=U.useCallback(e=>{let[t,...n]=O().map(e=>e.ref.current),[r]=n.slice(-1),i=document.activeElement;for(let n of e)if(n===i||(n?.scrollIntoView({block:`nearest`}),n===t&&x&&(x.scrollTop=0),n===r&&x&&(x.scrollTop=x.scrollHeight),n?.focus(),document.activeElement!==i))return},[O,x]),N=U.useCallback(()=>M([w,y]),[M,w,y]);U.useEffect(()=>{k&&N()},[k,N]);let{onOpenChange:P,triggerPointerDownPosRef:F}=v;U.useEffect(()=>{if(y){let e={x:0,y:0},t=KR(t=>{e={x:Math.abs(Math.round(t.pageX)-(F.current?.x??0)),y:Math.abs(Math.round(t.pageY)-(F.current?.y??0))}},`handlePointerMove`),n=KR(n=>{e.x<=10&&e.y<=10?n.preventDefault():n.composedPath().includes(y)||P(!1),document.removeEventListener(`pointermove`,t),F.current=null},`handlePointerUp`);return F.current!==null&&(document.addEventListener(`pointermove`,t),document.addEventListener(`pointerup`,n,{capture:!0,once:!0})),()=>{document.removeEventListener(`pointermove`,t),document.removeEventListener(`pointerup`,n,{capture:!0})}}},[y,P,F]),U.useEffect(()=>{let e=KR(()=>P(!1),`close`);return window.addEventListener(`blur`,e),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`blur`,e),window.removeEventListener(`resize`,e)}},[P]);let[I,L]=az(e=>{let t=O().filter(e=>!e.disabled),n=oz(t,e,t.find(e=>e.ref.current===document.activeElement));n&&setTimeout(()=>n.ref.current?.focus())}),R=U.useCallback((e,t,n)=>{let r=!j.current&&!n;(v.value!==void 0&&v.value===t||r)&&(T(e),r&&(j.current=!0))},[v.value]),z=U.useCallback(()=>y?.focus(),[y]),B=U.useCallback((e,t,n)=>{let r=!j.current&&!n;(v.value!==void 0&&v.value===t||r)&&D(e)},[v.value]),ee=r===`popper`?eSe:$xe,te=ee===eSe?{side:s,sideOffset:c,align:l,alignOffset:u,arrowPadding:d,collisionBoundary:f,collisionPadding:p,sticky:m,hideWhenDetached:h,avoidCollisions:g}:{};return(0,W.jsx)(Xxe,{scope:n,content:y,viewport:x,onViewportChange:S,itemRefCallback:R,selectedItem:w,onItemLeave:z,itemTextRefCallback:B,focusSelectedItem:N,selectedItemText:E,position:r,isPositioned:k,searchRef:I,children:(0,W.jsx)(RD,{as:Zxe,allowPinchZoom:!0,children:(0,W.jsx)(sE,{asChild:!0,trapped:v.open,onMountAutoFocus:e=>{e.preventDefault()},onUnmountAutoFocus:vT(i,e=>{v.trigger?.focus({preventScroll:!0}),e.preventDefault()}),children:(0,W.jsx)(KT,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:e=>e.preventDefault(),onDismiss:()=>v.onOpenChange(!1),children:(0,W.jsx)(ee,{role:`listbox`,id:v.contentId,"data-state":v.open?`open`:`closed`,dir:v.dir,onContextMenu:e=>e.preventDefault(),..._,...te,onPlaced:()=>A(!0),ref:C,style:{display:`flex`,flexDirection:`column`,outline:`none`,..._.style},onKeyDown:vT(_.onKeyDown,e=>{let t=e.ctrlKey||e.altKey||e.metaKey;if(e.key===`Tab`&&e.preventDefault(),!t&&e.key.length===1&&L(e.key),[`ArrowUp`,`ArrowDown`,`Home`,`End`].includes(e.key)){let t=O().filter(e=>!e.disabled).map(e=>e.ref.current);if([`ArrowUp`,`End`].includes(e.key)&&(t=t.slice().reverse()),[`ArrowUp`,`ArrowDown`].includes(e.key)){let n=e.target,r=t.indexOf(n);t=t.slice(r+1)}setTimeout(()=>M(t)),e.preventDefault()}})})})})})})},`SelectContentImpl`)),$xe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n,onPlaced:r,...i}=e,a=QR($R,n),o=tz($R,n),[s,c]=U.useState(null),[l,u]=U.useState(null),d=TT(t,u),f=YR(n),p=U.useRef(!1),m=U.useRef(!0),{viewport:h,selectedItem:g,selectedItemText:_,focusSelectedItem:v}=o,y=U.useCallback(()=>{if(a.trigger&&a.valueNode&&s&&l&&h&&g&&_){let e=a.trigger.getBoundingClientRect(),t=l.getBoundingClientRect(),n=a.valueNode.getBoundingClientRect(),i=_.getBoundingClientRect();if(a.dir!==`rtl`){let r=i.left-t.left,a=n.left-r,o=e.left-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-ez,d=GR(a,[ez,Math.max(ez,u-l)]);s.style.minWidth=c+`px`,s.style.left=d+`px`}else{let r=t.right-i.right,a=window.innerWidth-n.right-r,o=window.innerWidth-e.right-a,c=e.width+o,l=Math.max(c,t.width),u=window.innerWidth-ez,d=GR(a,[ez,Math.max(ez,u-l)]);s.style.minWidth=c+`px`,s.style.right=d+`px`}let o=f(),c=window.innerHeight-ez*2,u=h.scrollHeight,d=window.getComputedStyle(l),m=parseInt(d.borderTopWidth,10),v=parseInt(d.paddingTop,10),y=parseInt(d.borderBottomWidth,10),b=parseInt(d.paddingBottom,10),x=m+v+u+b+y,S=Math.min(g.offsetHeight*5,x),C=window.getComputedStyle(h),w=parseInt(C.paddingTop,10),T=parseInt(C.paddingBottom,10),E=e.top+e.height/2-ez,D=c-E,O=g.offsetHeight/2,k=g.offsetTop+O,A=m+v+k,j=x-A;if(A<=E){let e=o.length>0&&g===o[o.length-1].ref.current;s.style.bottom=`0px`;let t=l.clientHeight-h.offsetTop-h.offsetHeight,n=A+Math.max(D,O+(e?T:0)+t+y);s.style.height=n+`px`}else{let e=o.length>0&&g===o[0].ref.current;s.style.top=`0px`;let t=Math.max(E,m+h.offsetTop+(e?w:0)+O)+j;s.style.height=t+`px`,h.scrollTop=A-E+h.offsetTop}s.style.margin=`${ez}px 0`,s.style.minHeight=S+`px`,s.style.maxHeight=c+`px`,r?.(),requestAnimationFrame(()=>p.current=!0)}},[f,a.trigger,a.valueNode,s,l,h,g,_,a.dir,r]);yE(()=>y(),[y]);let[b,x]=U.useState();yE(()=>{l&&x(window.getComputedStyle(l).zIndex)},[l]);let S=U.useCallback(e=>{e&&m.current===!0&&(y(),v?.(),m.current=!1)},[y,v]);return(0,W.jsx)(tSe,{scope:n,contentWrapper:s,shouldExpandOnScrollRef:p,onScrollButtonChange:S,children:(0,W.jsx)(`div`,{ref:c,style:{display:`flex`,flexDirection:`column`,position:`fixed`,zIndex:b},children:(0,W.jsx)(zT.div,{...i,ref:d,style:{boxSizing:`border-box`,maxHeight:`100%`,...i.style}})})})},`SelectItemAlignedPosition`)),eSe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n,align:r=`start`,collisionPadding:i=ez,...a}=e,o=ZR(n);return(0,W.jsx)(fD,{...o,...a,ref:t,align:r,collisionPadding:i,style:{boxSizing:`border-box`,...a.style,"--radix-select-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-select-content-available-width":`var(--radix-popper-available-width)`,"--radix-select-content-available-height":`var(--radix-popper-available-height)`,"--radix-select-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-select-trigger-height":`var(--radix-popper-anchor-height)`}})},`SelectPopperPosition`)),[tSe,nSe]=XR($R,{}),rSe=`SelectViewport`,iSe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n,nonce:r,...i}=e,a=tz(rSe,n),o=nSe(rSe,n),s=TT(t,a.onViewportChange),c=U.useRef(0);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`},nonce:r}),(0,W.jsx)(JR.Slot,{scope:n,children:(0,W.jsx)(zT.div,{"data-radix-select-viewport":``,role:`presentation`,...i,ref:s,style:{position:`relative`,flex:1,overflow:`hidden auto`,...i.style},onScroll:vT(i.onScroll,e=>{let t=e.currentTarget,{contentWrapper:n,shouldExpandOnScrollRef:r}=o;if(r?.current&&n){let e=Math.abs(c.current-t.scrollTop);if(e>0){let r=window.innerHeight-ez*2,i=parseFloat(n.style.minHeight),a=parseFloat(n.style.height),o=Math.max(i,a);if(o<r){let i=o+e,a=Math.min(r,i),s=i-a;n.style.height=a+`px`,n.style.bottom===`0px`&&(t.scrollTop=s>0?s:0,n.style.justifyContent=`flex-end`)}}}c.current=t.scrollTop})})})]})},`SelectViewport`)),[aSe,oSe]=XR(`SelectGroup`),nz=`SelectItem`,[sSe,cSe]=XR(nz),lSe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n,value:r,disabled:i=!1,textValue:a,...o}=e,s=QR(nz,n),c=tz(nz,n),l=s.value===r,[u,d]=U.useState(a??``),[f,p]=U.useState(!1),m=TT(t,VT(e=>c.itemRefCallback?.(e,r,i))),h=bE(),g=U.useRef(`touch`),_=KR(()=>{i||(s.onValueChange(r),s.onOpenChange(!1))},`handleSelect`);return(0,W.jsx)(sSe,{scope:n,value:r,disabled:i,textId:h,isSelected:l,onItemTextChange:U.useCallback(e=>{d(t=>t||(e?.textContent??``).trim())},[]),children:(0,W.jsx)(JR.ItemSlot,{scope:n,value:r,disabled:i,textValue:u,children:(0,W.jsx)(zT.div,{role:`option`,"aria-labelledby":h,"data-highlighted":f?``:void 0,"aria-selected":l&&f,"data-state":l?`checked`:`unchecked`,"aria-disabled":i||void 0,"data-disabled":i?``:void 0,tabIndex:i?void 0:-1,...o,ref:m,onFocus:vT(o.onFocus,()=>p(!0)),onBlur:vT(o.onBlur,()=>p(!1)),onClick:vT(o.onClick,()=>{g.current!==`mouse`&&_()}),onPointerUp:vT(o.onPointerUp,()=>{g.current===`mouse`&&_()}),onPointerDown:vT(o.onPointerDown,e=>{g.current=e.pointerType}),onPointerMove:vT(o.onPointerMove,e=>{g.current=e.pointerType,i?c.onItemLeave?.():g.current===`mouse`&&e.currentTarget.focus({preventScroll:!0})}),onPointerLeave:vT(o.onPointerLeave,e=>{e.currentTarget===document.activeElement&&c.onItemLeave?.()}),onKeyDown:vT(o.onKeyDown,e=>{i||e.target!==e.currentTarget||(c.searchRef?.current===``||e.key!==` `)&&(Mxe.includes(e.key)&&_(),e.key===` `&&e.preventDefault())})})})})},`SelectItem`)),rz=`SelectItemText`,uSe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n,className:r,style:i,...a}=e,o=QR(rz,n),s=tz(rz,n),c=cSe(rz,n),l=Lxe(rz,n),[u,d]=U.useState(null),f=VT(e=>s.itemTextRefCallback?.(e,c.value,c.disabled)),p=TT(t,d,c.onItemTextChange,f),m=u?.textContent,h=U.useMemo(()=>(0,W.jsx)(`option`,{value:c.value,disabled:c.disabled,children:m},c.value),[c.disabled,c.value,m]),{onNativeOptionAdd:g,onNativeOptionRemove:_}=l;return yE(()=>(g(h),()=>_(h)),[g,_,h]),(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(zT.span,{id:c.textId,...a,ref:p}),c.isSelected&&o.valueNode&&!o.valueNodeHasChildren&&!iz(o.value)?jl.createPortal(a.children,o.valueNode):null]})},`SelectItemText`)),dSe=U.forwardRef(KR(function(e,t){let{__scopeSelect:n,...r}=e;return(0,W.jsx)(zT.div,{"aria-hidden":!0,...r,ref:t})},`SelectSeparator`)),fSe=`SelectBubbleInput`,pSe=U.forwardRef(KR(function({__scopeSelect:e,...t},n){let r=QR(fSe,e),{value:i,onValueChange:a,required:o,disabled:s,name:c,autoComplete:l,form:u}=r,{nativeOptions:d,nativeSelectKey:f}=r,p=U.useRef(null),m=TT(n,p),h=i??``,g=Txe(h),_=Array.from(d).some(e=>(e.props.value??``)===``);return U.useEffect(()=>{let e=p.current;if(!e)return;let t=window.HTMLSelectElement.prototype,n=Object.getOwnPropertyDescriptor(t,`value`).set;if(g!==h&&n){let t=new Event(`change`,{bubbles:!0});n.call(e,h),e.dispatchEvent(t)}},[g,h]),(0,W.jsxs)(zT.select,{"aria-hidden":!0,required:o,tabIndex:-1,name:c,autoComplete:l,disabled:s,form:u,onChange:e=>a(e.target.value),...t,style:{...Oxe,...t.style},ref:m,defaultValue:h,children:[iz(i)&&!_?(0,W.jsx)(`option`,{value:``}):null,Array.from(d)]},f)},`SelectBubbleInput`));function mSe(e){return typeof e==`function`}KR(mSe,`isFunction`);function iz(e){return e===``||e===void 0}KR(iz,`shouldShowPlaceholder`);function az(e){let t=VT(e),n=U.useRef(``),r=U.useRef(0),i=U.useCallback(e=>{let i=n.current+e;t(i),KR((function e(t){n.current=t,window.clearTimeout(r.current),t!==``&&(r.current=window.setTimeout(()=>e(``),1e3))}),`updateSearch`)(i)},[t]),a=U.useCallback(()=>{n.current=``,window.clearTimeout(r.current)},[]);return U.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,i,a]}KR(az,`useTypeaheadSearch`);function oz(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=hSe(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.textValue.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}KR(oz,`findNextItem`);function hSe(e,t){return e.map((n,r)=>e[(t+r)%e.length])}KR(hSe,`wrapArray`);var gSe=Object.defineProperty,sz=(e,t)=>gSe(e,`name`,{value:t,configurable:!0}),[cz,_Se]=DT(`Tooltip`,[cD]),lz=cD(),vSe=`TooltipProvider`,ySe=700,uz=`tooltip.open`,[bSe,dz]=cz(vSe),xSe=sz(e=>{let{__scopeTooltip:t,delayDuration:n=ySe,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=U.useRef(!0),s=U.useRef(!1),c=U.useRef(0);return U.useEffect(()=>{let e=c.current;return()=>window.clearTimeout(e)},[]),(0,W.jsx)(bSe,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:U.useCallback(()=>{r<=0||(window.clearTimeout(c.current),o.current=!1)},[r]),onClose:U.useCallback(()=>{r<=0||(window.clearTimeout(c.current),c.current=window.setTimeout(()=>o.current=!0,r))},[r]),isPointerInTransitRef:s,onPointerInTransitChange:U.useCallback(e=>{s.current=e},[]),disableHoverableContent:i,children:a})},`TooltipProvider`),fz=`Tooltip`,[SSe,pz]=cz(fz),CSe=sz(e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,c=dz(fz,e.__scopeTooltip),l=lz(t),[u,d]=U.useState(null),[f,p]=U.useState(void 0),m=bE(),h=U.useRef(0),g=o??c.disableHoverableContent,_=s??c.delayDuration,v=U.useRef(!1),[y,b]=yD({prop:r,defaultProp:i??!1,onChange:sz(e=>{e?(c.onOpen(),document.dispatchEvent(new CustomEvent(uz))):c.onClose(),a?.(e)},`onChange`),caller:fz}),x=U.useMemo(()=>y?v.current?`delayed-open`:`instant-open`:`closed`,[y]),S=U.useCallback(()=>{window.clearTimeout(h.current),h.current=0,v.current=!1,b(!0)},[b]),C=U.useCallback(()=>{window.clearTimeout(h.current),h.current=0,b(!1)},[b]),w=U.useCallback(()=>{window.clearTimeout(h.current),h.current=window.setTimeout(()=>{v.current=!0,b(!0),h.current=0},_)},[_,b]);U.useEffect(()=>()=>{h.current&&=(window.clearTimeout(h.current),0)},[]);let T=f??m;return(0,W.jsx)(uD,{...l,children:(0,W.jsx)(SSe,{scope:t,contentId:T,setContentId:p,open:y,stateAttribute:x,trigger:u,onTriggerChange:d,onTriggerEnter:U.useCallback(()=>{c.isOpenDelayedRef.current?w():S()},[c.isOpenDelayedRef,w,S]),onTriggerLeave:U.useCallback(()=>{g?C():(window.clearTimeout(h.current),h.current=0)},[C,g]),onOpen:S,onClose:C,disableHoverableContent:g,children:n})})},`Tooltip`),wSe=`TooltipTrigger`,TSe=U.forwardRef(sz(function(e,t){let{__scopeTooltip:n,...r}=e,i=pz(wSe,n),a=dz(wSe,n),o=lz(n),s=TT(t,U.useRef(null),i.onTriggerChange),c=U.useRef(!1),l=U.useRef(!1),u=U.useCallback(()=>c.current=!1,[]);return U.useEffect(()=>()=>document.removeEventListener(`pointerup`,u),[u]),(0,W.jsx)(dD,{asChild:!0,...o,children:(0,W.jsx)(zT.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:s,onPointerMove:vT(e.onPointerMove,e=>{e.pointerType!==`touch`&&!l.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),l.current=!0)}),onPointerLeave:vT(e.onPointerLeave,()=>{i.onTriggerLeave(),l.current=!1}),onPointerDown:vT(e.onPointerDown,()=>{i.open&&i.onClose(),c.current=!0,document.addEventListener(`pointerup`,u,{once:!0})}),onFocus:vT(e.onFocus,()=>{c.current||i.onOpen()}),onBlur:vT(e.onBlur,i.onClose),onClick:vT(e.onClick,i.onClose)})})},`TooltipTrigger`)),ESe=`TooltipPortal`,[DSe,OSe]=cz(ESe,{forceMount:void 0}),kSe=sz(e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:i}=e,a=pz(ESe,t);return(0,W.jsx)(DSe,{scope:t,forceMount:n,children:(0,W.jsx)(hD,{present:n||a.open,children:(0,W.jsx)(pD,{asChild:!0,container:i,children:r})})})},`TooltipPortal`),mz=`TooltipContent`,ASe=U.forwardRef(sz(function(e,t){let n=OSe(mz,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i=`top`,...a}=e,o=pz(mz,e.__scopeTooltip);return(0,W.jsx)(hD,{present:r||o.open,children:o.disableHoverableContent?(0,W.jsx)(NSe,{side:i,...a,ref:t}):(0,W.jsx)(jSe,{side:i,...a,ref:t})})},`TooltipContent`)),jSe=U.forwardRef(sz(function(e,t){let n=pz(mz,e.__scopeTooltip),r=dz(mz,e.__scopeTooltip),i=U.useRef(null),a=TT(t,i),[o,s]=U.useState(null),{trigger:c,onClose:l}=n,u=i.current,{onPointerInTransitChange:d}=r,f=U.useCallback(()=>{s(null),d(!1)},[d]),p=U.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},i=ISe(r,FSe(r,n.getBoundingClientRect())),a=LSe(t.getBoundingClientRect()),o=zSe([...i,...a]);s(o),d(!0)},[d]);return U.useEffect(()=>()=>f(),[f]),U.useEffect(()=>{if(c&&u){let e=sz(e=>p(e,u),`handleTriggerLeave`),t=sz(e=>p(e,c),`handleContentLeave`);return c.addEventListener(`pointerleave`,e),u.addEventListener(`pointerleave`,t),()=>{c.removeEventListener(`pointerleave`,e),u.removeEventListener(`pointerleave`,t)}}},[c,u,p,f]),U.useEffect(()=>{if(o){let e=sz(e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=c?.contains(t)||u?.contains(t),i=!RSe(n,o);r?f():i&&(f(),l())},`handleTrackPointerGrace`);return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[c,u,o,l,f]),(0,W.jsx)(NSe,{...e,ref:a})},`TooltipContentHoverable`)),MSe=MT(`TooltipContent`),NSe=U.forwardRef(sz(function(e,t){let{__scopeTooltip:n,children:r,"aria-label":i,id:a,onEscapeKeyDown:o,onPointerDownOutside:s,...c}=e,l=pz(mz,n),u=lz(n),{onClose:d}=l;U.useEffect(()=>(document.addEventListener(uz,d),()=>document.removeEventListener(uz,d)),[d]),U.useEffect(()=>{if(l.trigger){let e=sz(e=>{e.target instanceof Node&&e.target.contains(l.trigger)&&d()},`handleScroll`);return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[l.trigger,d]);let{setContentId:f}=l;return yE(()=>(f(a),()=>{f(void 0)}),[a,f]),(0,W.jsx)(KT,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:o,onPointerDownOutside:s,onFocusOutside:e=>e.preventDefault(),onDismiss:d,children:(0,W.jsxs)(fD,{"data-state":l.stateAttribute,role:i?void 0:`tooltip`,id:i?void 0:l.contentId,...u,...c,ref:t,style:{...c.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,W.jsx)(MSe,{children:r}),i?(0,W.jsx)(kxe,{id:l.contentId,role:`tooltip`,children:i}):null]})})},`TooltipContentImpl`)),PSe=U.forwardRef(sz(function(e,t){let{__scopeTooltip:n,...r}=e,i=lz(n);return(0,W.jsx)(hde,{...i,...r,ref:t})},`TooltipArrow`));function FSe(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return`left`;case i:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}sz(FSe,`getExitSideFromRect`);function ISe(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n})}return r}sz(ISe,`getPaddedExitPoints`);function LSe(e){let{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}sz(LSe,`getPointsFromRect`);function RSe(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}sz(RSe,`isPointInPolygon`);function zSe(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),BSe(t)}sz(zSe,`getHull`);function BSe(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}sz(BSe,`getHullPresorted`);var VSe=xSe,HSe=CSe,USe=TSe,WSe=kSe,GSe=ASe,KSe=PSe,hz=U.forwardRef(({title:e,children:t},n)=>{let r=Ld(ZS);return U.createElement(VSe,{delayDuration:100},U.createElement(HSe,null,U.createElement(USe,{ref:n,asChild:!0},U.createElement(`span`,{className:X.tooltipTrigger},t)),U.createElement(WSe,{container:r?.current},U.createElement(GSe,{className:(0,Iw.default)(X.tooltipContent),sideOffset:10},e))))}),qSe=U.forwardRef(({children:e,className:t,...n},r)=>U.createElement(lSe,{...n,ref:r,className:(0,Iw.default)(t,X.selectItem)},U.createElement(uSe,null,e))),JSe=({title:e,placeholder:t,className:n})=>{let[r,i]=Rd(ES,pC);return U.createElement(hz,{title:e},U.createElement(Vxe,{"aria-label":t,className:(0,Iw.default)(X.selectTrigger,n),"data-toolbar-item":!0,disabled:r},U.createElement(Uxe,{placeholder:t}),U.createElement(Wxe,{className:X.selectDropdownArrow},i(`arrow_drop_down`))))},YSe=({children:e,className:t=X.selectContainer})=>{let n=Ld(ZS);return U.createElement(qxe,{container:n?.current},U.createElement(Jxe,{className:(0,Iw.default)(t,`mdxeditor-select-content`),onCloseAutoFocus:e=>{e.preventDefault()},position:`popper`},U.createElement(iSe,{"data-editor-dropdown":!0,style:{maxHeight:`var(--radix-select-content-available-height)`}},e)))},gz=e=>U.createElement(zxe,{value:e.value||``,onValueChange:e.onChange,disabled:e.disabled},U.createElement(JSe,{title:e.triggerTitle,placeholder:e.placeholder}),U.createElement(YSe,null,e.items.map((e,t)=>e===`separator`?U.createElement(dSe,{key:t}):U.createElement(qSe,{key:t,value:e.value},e.label)))),XSe=({language:e,nodeKey:t,code:n,focusEmitter:r})=>{let i=LC(),{parentEditor:a,lexicalNode:o}=XP(),[s,c,l,u,d]=Rd(ES,yz,bz,pC,vz),f=hbe(t,`codeblock`,e,r),{setCode:p}=XP(),m=U.useRef(null),g=U.useRef(null),{value:_,items:v}=U.useMemo(()=>QSe(d,e),[d,e]),y=U.useRef(p);return y.current=p,f.current={getCodemirror:()=>m.current},U.useEffect(()=>{let t=g.current;return(async()=>{let r=[...c,bxe,tR,pe(),He.of([Vve]),V.lineWrapping,V.updateListener.of(({state:e})=>{y.current(e.doc.toString())}),V.domEventHandlers({focus:()=>{a.update(()=>{e_(null)})}})];if(s&&r.push(h.readOnly.of(!0)),e!==``){let t=d.keyMap[e]??e,n=d.supportMap[t];if(n)r.push(n.extension);else if(l){let t=gbe.find(t=>t.name===e||t.alias.includes(e)||t.extensions.includes(e));if(t)try{let e=await t.load();r.push(e.extension)}catch{console.warn(`failed to load language support for`,e)}}}t.innerHTML=``,m.current=new V({parent:t,state:h.create({doc:n,extensions:r})}),t.addEventListener(`keydown`,ZSe)})(),()=>{var e;(e=m.current)==null||e.destroy(),m.current=null,t.removeEventListener(`keydown`,ZSe)}},[s,e,...c]),U.createElement(`div`,{className:X.codeMirrorWrapper},U.createElement(`div`,{className:X.codeMirrorToolbar},U.createElement(gz,{disabled:s,value:_,onChange:e=>{a.update(()=>{o.setLanguage(e===`__EMPTY_VALUE__`?``:e),setTimeout(()=>{a.update(()=>{o.getLatest().select()})})})},triggerTitle:i(`codeBlock.selectLanguage`,`Select code block language`),placeholder:i(`codeBlock.inlineLanguage`,`Language`),items:v}),U.createElement(`button`,{className:X.iconButton,type:`button`,disabled:s,title:i(`codeblock.delete`,`Delete code block`),onClick:e=>{e.preventDefault(),a.update(()=>{o.remove()})}},u(`delete_small`))),U.createElement(`div`,{ref:g}))};function ZSe(e){e.stopPropagation()}function _z(e){let t=[],n={},r={};if(Array.isArray(e))for(let i of e){let e=i.alias?.[0]??i.name.toLowerCase(),a=e||`__EMPTY_VALUE__`;if(t.push({value:a,label:i.name}),n[e]=a,i.alias)for(let e of i.alias)n[e]=a;if(i.extensions)for(let e of i.extensions)n[e]=a;n[i.name.toLowerCase()]=a,i.support&&(r[a]=i.support)}else{let r={};for(let[i,a]of Object.entries(e))a in r||(r[a]=i,t.push({value:i||`__EMPTY_VALUE__`,label:a})),n[i]=r[a]||`__EMPTY_VALUE__`}return{items:t,keyMap:n,supportMap:r}}function QSe(e,t){let n=e.keyMap[t]??t;return!n||e.items.some(e=>e.value===n)?{value:n,items:e.items}:{value:n,items:[...e.items,{value:n,label:t}]}}var vz=Md(_z({js:`JavaScript`,ts:`TypeScript`,tsx:`TypeScript (React)`,jsx:`JavaScript (React)`,css:`CSS`})),$Se=Nd(e=>{e.link(e.pipe($Se,Bd(({language:e,code:t})=>({code:t,language:e,meta:``}))),eF)}),yz=Md([]),bz=Md(!0),eCe=qd({update(e,t){e.pubIn({[vz]:_z(t?.codeBlockLanguages??{}),[yz]:t?.codeMirrorExtensions??[],[bz]:t?.autoLoadLanguageSupport??!0})},init(e,t){let n=_z(t?.codeBlockLanguages??{});e.pubIn({[vz]:n,[yz]:t?.codeMirrorExtensions??[],[T_e]:tCe(),[bz]:t?.autoLoadLanguageSupport??!0})}});function tCe(e){return{match(e,t){return!t},priority:1,Editor:XSe}}function nCe({url:e,title:t,text:n,onSubmit:r,onCancel:i,linkAutocompleteSuggestions:a,showLinkTitleField:o,showAnchorTextField:s}){let{register:c,handleSubmit:l,control:u,setValue:d,reset:f}=ZA({values:{url:e,title:t,text:n}}),p=LC();return U.createElement(`form`,{onSubmit:e=>{l(r)(e),e.stopPropagation(),e.preventDefault()},onReset:e=>{e.stopPropagation(),i()},onKeyDown:e=>{e.key===`Escape`&&(e.stopPropagation(),i())},className:(0,Iw.default)(X.multiFieldForm,X.linkDialogEditForm)},U.createElement(`div`,{className:X.formField},U.createElement(`label`,{htmlFor:`link-url`},p(`createLink.url`,`URL`)),U.createElement(LM,{register:c,initialInputValue:e,inputName:`url`,suggestions:a,setValue:d,control:u,placeholder:p(`createLink.urlPlaceholder`,`Select or paste an URL`),autofocus:!0})),s?U.createElement(`div`,{className:X.formField},U.createElement(`label`,{htmlFor:`link-text`,title:p(`createLink.textTooltip`,`The text to be displayed for the link`)},p(`createLink.text`,`Anchor text`)),U.createElement(`input`,{id:`link-text`,className:X.textInput,size:40,...c(`text`)})):null,o?U.createElement(`div`,{className:X.formField},U.createElement(`label`,{htmlFor:`link-title`,title:p(`createLink.titleTooltip`,`The link's title attribute, shown on hover`)},p(`createLink.title`,`Link title`)),U.createElement(`input`,{id:`link-title`,className:X.textInput,size:40,...c(`title`)})):null,U.createElement(`div`,{style:{display:`flex`,justifyContent:`flex-end`,gap:`var(--spacing-2)`}},U.createElement(`button`,{type:`submit`,title:p(`createLink.saveTooltip`,`Set URL`),"aria-label":p(`createLink.saveTooltip`,`Set URL`),className:(0,Iw.default)(X.primaryButton)},p(`dialogControls.save`,`Save`)),U.createElement(`button`,{type:`reset`,title:p(`createLink.cancelTooltip`,`Cancel change`),"aria-label":p(`createLink.cancelTooltip`,`Cancel change`),className:(0,Iw.default)(X.secondaryButton)},p(`dialogControls.cancel`,`Cancel`))))}var rCe=()=>{let[e,t,n,r,i,a,o]=Rd(ZS,CS,pC,Cz,lCe,uCe,pCe),s=zd(iCe),c=zd(aCe),l=zd(oCe),u=zd(sCe),d=zd(cCe);U.useEffect(()=>{let e=()=>{t?.getEditorState().read(()=>{s(!0)})};return window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e)}},[t,s]);let[f,p]=U.useState(!1),m=LC();if(r.type===`inactive`)return null;let h=r.rectangle,g=r.type===`preview`&&r.url.startsWith(`http`);return U.createElement(XD,{open:!0},U.createElement(Gfe,{"data-visible":r.type===`edit`,className:X.linkDialogAnchor,style:{top:`${h.top}px`,left:`${h.left}px`,width:`${h.width}px`,height:`${h.height}px`}}),U.createElement(ZD,{container:e?.current},U.createElement(Kfe,{className:(0,Iw.default)(X.linkDialogPopoverContent),sideOffset:5,onOpenAutoFocus:e=>{e.preventDefault()},key:r.linkNodeKey},r.type===`edit`&&U.createElement(nCe,{url:r.url,title:r.title,text:r.text,onSubmit:c,onCancel:l.bind(null),linkAutocompleteSuggestions:i,showLinkTitleField:o,showAnchorTextField:r.withAnchorText}),r.type===`preview`&&U.createElement(U.Fragment,null,U.createElement(`a`,{className:X.linkDialogPreviewAnchor,href:r.url,...g?{target:`_blank`,rel:`noreferrer`}:{},onClick:e=>{a!==null&&(e.preventDefault(),a(r.url))},title:g?m(`linkPreview.open`,`Open {{url}} in new window`,{url:r.url}):r.url},U.createElement(`span`,null,r.url),g&&n(`open_in_new`)),U.createElement(xz,{onClick:()=>{u()},title:m(`linkPreview.edit`,`Edit link URL`),"aria-label":m(`linkPreview.edit`,`Edit link URL`)},n(`edit`)),U.createElement(VSe,null,U.createElement(HSe,{open:f},U.createElement(USe,{asChild:!0},U.createElement(xz,{title:m(`linkPreview.copyToClipboard`,`Copy to clipboard`),"aria-label":m(`linkPreview.copyToClipboard`,`Copy to clipboard`),onClick:()=>{window.navigator.clipboard.writeText(r.url).then(()=>{p(!0),setTimeout(()=>{p(!1)},1e3)})}},n(f?`check`:`content_copy`))),U.createElement(WSe,{container:e?.current},U.createElement(GSe,{className:(0,Iw.default)(X.tooltipContent),sideOffset:5},m(`linkPreview.copied`,`Copied!`),U.createElement(KSe,null))))),U.createElement(xz,{title:m(`linkPreview.remove`,`Remove link`),"aria-label":m(`linkPreview.remove`,`Remove link`),onClick:()=>{d()}},n(`link_off`))),U.createElement(QD,{className:X.popoverArrow}))))},xz=U.forwardRef(({className:e,...t},n)=>U.createElement(`button`,{className:(0,Iw.default)(X.actionButton,e),ref:n,...t}));function Sz(e){if(!e)return null;let t=Xse(e);if(t===null)return null;let n=t.getParent();return XC(n)?n:XC(t)?t:null}var iCe=Nd(),Cz=Md({type:`inactive`},e=>{e.pub(_C,t=>t.registerCommand(cm,()=>e.getValue(Cz).type===`preview`&&(e.pub(Cz,{type:`inactive`}),!0),1)),e.sub(e.pipe(jC),t=>{t!==`rich-text`&&e.pub(Cz,{type:`inactive`})}),e.pub(_C,t=>t.registerCommand(em,t=>t.key===`k`&&(zw?t.metaKey:t.ctrlKey)&&!e.getValue(ES)&&J(Rh())?(e.pub(wz),t.stopPropagation(),t.preventDefault(),!0):!1,3)),e.sub(e.pipe(sCe,Vd(Cz,CS)),([,t,n])=>{if(t.type===`preview`)setTimeout(()=>{n?.getEditorState().read(()=>{let n=Xg(t.linkNodeKey),r=XC(n)?n.getTextContent().length>0&&n.getChildrenSize()<=1:!1,i=r&&n?n.getTextContent():``;e.pub(Cz,{type:`edit`,initialUrl:t.url,url:t.url,title:t.title,text:i,withAnchorText:r,linkNodeKey:t.linkNodeKey,rectangle:t.rectangle})})});else throw Error(`Cannot switch to edit mode when not in preview mode`)}),e.sub(e.pipe(aCe,Vd(CS,Cz,PS)),([t,n,r,i])=>{let a=t.text?.trim()??``,o=t.url?.trim()??``,s=t.title?.trim()??``;if(o!==``){if(i?.isCollapsed()){let e=a||s||o;n?.update(()=>{let t=Sz(i);if(!t){let t=YC(o,{title:s});t.append(ph(e)),Gh([t]),t.select()}else if($C(t)){let e=YC(o,{title:s});e.append(ph(a)),t.replace(e),e.select()}else t.setURL(o),t.setTitle(s),fCe(t.getFirstChild(),a)},{discrete:!0})}else n?.update(()=>{fCe(i?.anchor.getNode(),a)}),n?.dispatchCommand(ew,{url:o,title:s});e.pub(Cz,{type:`preview`,linkNodeKey:r.linkNodeKey,rectangle:r.rectangle,title:s,url:o})}else r.type===`edit`&&r.initialUrl!==``&&n?.dispatchCommand(ew,null),e.pub(Cz,{type:`inactive`})}),e.link(e.pipe(oCe,Vd(Cz,CS),Bd(([,e,t])=>{if(e.type===`edit`)return t?.focus(),e.initialUrl===``?{type:`inactive`}:{type:`preview`,url:e.initialUrl,linkNodeKey:e.linkNodeKey,rectangle:e.rectangle};throw Error(`Cannot cancel edit when not in edit mode`)})),Cz),e.link(e.pipe(e.combine(PS,iCe),Vd(CS,Cz,ES),Bd(([[e],t,n,r])=>{if(J(e)&&t&&!r){let n=Sz(e);if(!e.isCollapsed())return{type:`inactive`};if(n){let e=Fw(t);return e?{type:`preview`,url:n.getURL(),linkNodeKey:n.getKey(),title:n.getTitle(),rectangle:e}:{type:`inactive`}}return{type:`inactive`}}return{type:`inactive`}})),Cz)}),aCe=Nd(),oCe=Pd();Pd();var sCe=Pd(),cCe=Pd(e=>{e.sub(e.pipe(cCe,Vd(CS)),([,e])=>{e?.dispatchCommand(ew,null)})}),wz=Pd(e=>{e.sub(e.pipe(wz,Vd(PS,CS),Ud(([,e])=>J(e))),([,t,n])=>{n?.focus(()=>{setTimeout(()=>{n.getEditorState().read(()=>{let r=Sz(t),i=Fw(n),a=r?.getURL()??``,o=r?.getURL()??``,s=r?.getTitle()??``,c=r?.getKey()??``,l=r?r.getTextContent().length>0&&r.getChildrenSize()<=1:!!t?.isCollapsed(),u=l&&r?r.getTextContent():``;e.pub(Cz,{type:`edit`,initialUrl:a,url:o,title:s,text:u,withAnchorText:l,linkNodeKey:c,rectangle:i})})})})})}),lCe=Md([]),uCe=Md(null),dCe=Md(null,e=>{e.pub(_C,t=>{function n(n){let[r,i]=e.getValues([ES,dCe]);!r||i===null||t.update(()=>{let e=Qg(n.target);if(e!==null){let t=Uv(e,e=>e instanceof JC);t!==null&&i(n,t,t.getURL())}})}return t.registerRootListener((e,t)=>{e&&e.addEventListener(`click`,n),t&&t.removeEventListener(`click`,n)})})});function fCe(e,t){mh(e)&&t&&(e.setTextContent(t),e.selectStart())}var pCe=Md(!0),mCe=qd({init(e,t){e.pub(bC,t?.LinkDialog??rCe),e.pub(uCe,t?.onClickLinkCallback??null),e.pub(dCe,t?.onReadOnlyClickLinkCallback??null),e.pub(pCe,t?.showLinkTitleField??!0)},update(e,t={}){e.pub(lCe,t.linkAutocompleteSuggestions??[])}});function Tz(e,t){return U.forwardRef((n,r)=>{let i=(0,Iw.default)(t.className,n.className);return U.createElement(e,{...t,...n,className:i,ref:r})})}function hCe(e){return({title:t,children:n,...r})=>U.createElement(e,{"aria-label":t,...r},U.createElement(hz,{title:t},n))}var gCe=({readOnly:e,children:t,className:n})=>U.createElement(zO,{className:(0,Iw.default)(`mdxeditor-toolbar`,X.toolbarRoot,{[X.readOnlyToolbarRoot]:e},n),...e?{tabIndex:-1}:{}},t),Ez=hCe(Tz(VO,{className:X.toolbarButton,"data-toolbar-item":!0})),_Ce=Tz(UO,{className:X.toolbarToggleItem,"data-toolbar-item":!0});Tz(HO,{type:`single`,className:X.toolbarToggleSingleGroup});var vCe=U.forwardRef(({on:e,title:t,children:n,disabled:r,...i},a)=>U.createElement(HO,{type:`single`,className:X.toolbarToggleSingleGroup,...i,value:e?`on`:`off`,ref:a},U.createElement(_Ce,{"aria-label":t,value:`on`,disabled:r},U.createElement(hz,{title:t},n)))),yCe=({items:e})=>U.createElement(`div`,{className:X.toolbarGroupOfGroups},e.map((e,t)=>U.createElement(vCe,{key:t,title:e.title,on:e.active,onValueChange:t=>{e.onChange(t===`on`)},disabled:e.disabled},e.contents))),bCe=({value:e,onChange:t,className:n,ggClassName:r,items:i,disabled:a})=>{let o=LC();return U.createElement(`div`,{className:(0,Iw.default)(X.toolbarGroupOfGroups,r)},U.createElement(HO,{"aria-label":o(`toolbar.toggleGroup`,`toggle group`),type:`single`,className:(0,Iw.default)(X.toolbarToggleSingleGroup,n),onValueChange:t,value:e||``,disabled:a,onFocus:e=>{e.preventDefault()}},i.map((e,t)=>U.createElement(_Ce,{key:t,"aria-label":e.title,value:e.value},U.createElement(hz,{title:e.title},e.contents)))))};function xCe(e){return Object.hasOwn(e,`when`)}var SCe=({options:e})=>{let t=Ld(dC),n=U.useMemo(()=>{let n=e.find(e=>{if(xCe(e)){if(e.when(t))return!0}else return!0});return n?xCe(n)?n.contents():n.fallback():null},[e,t]);return U.createElement(`div`,{style:{display:`flex`}},n)},Dz=BO,Oz=Md(()=>null),kz=Md(``),CCe=()=>"This is an empty toolbar. Pass `{toolbarContents: () => { return <>toolbar components</> }}` to the toolbarPlugin to customize it.",wCe=qd({init(e,t){let n=t?.toolbarPosition===`bottom`?gse:hse;e.pubIn({[Oz]:t?.toolbarContents??CCe,[kz]:t?.toolbarClassName??``,[n]:()=>{let[e,t,n]=Rd(Oz,ES,kz);return U.createElement(gCe,{className:n,readOnly:t},e())}})},update(e,t){e.pub(Oz,t?.toolbarContents??CCe),e.pub(kz,t?.toolbarClassName??``)}}),Az=class e{constructor(e,t,n,r){this.fromA=e,this.toA=t,this.fromB=n,this.toB=r}offset(t,n=t){return new e(this.fromA+t,this.toA+t,this.fromB+n,this.toB+n)}};function jz(e,t,n,r,i,a){if(e==r)return[];let o=zz(e,t,n,r,i,a),s=Bz(e,t+o,n,r,i+o,a);t+=o,n-=s,i+=o,a-=s;let c=n-t,l=a-i;if(!c||!l)return[new Az(t,n,i,a)];if(c>l){let o=e.slice(t,n).indexOf(r.slice(i,a));if(o>-1)return[new Az(t,t+o,i,i),new Az(t+o+l,n,a,a)]}else if(l>c){let o=r.slice(i,a).indexOf(e.slice(t,n));if(o>-1)return[new Az(t,t,i,i+o),new Az(n,n,i+o+c,a)]}if(c==1||l==1)return[new Az(t,n,i,a)];let u=Hz(e,t,n,r,i,a);if(u){let[o,s,c]=u;return jz(e,t,o,r,i,s).concat(jz(e,o+c,n,r,s+c,a))}return TCe(e,t,n,r,i,a)}var Mz=1e9,Nz=0,Pz=!1;function TCe(e,t,n,r,i,a){let o=n-t,s=a-i;if(Mz<1e9&&Math.min(o,s)>Mz*16||Nz>0&&Date.now()>Nz)return Math.min(o,s)>Mz*64?[new Az(t,n,i,a)]:Uz(e,t,n,r,i,a);let c=Math.ceil((o+s)/2);Iz.reset(c),Lz.reset(c);let l=(n,a)=>e.charCodeAt(t+n)==r.charCodeAt(i+a),u=(t,i)=>e.charCodeAt(n-t-1)==r.charCodeAt(a-i-1),d=(o-s)%2==0?null:Lz,f=d?null:Iz;for(let p=0;p<c;p++){if(p>Mz||Nz>0&&!(p&63)&&Date.now()>Nz)return Uz(e,t,n,r,i,a);let m=Iz.advance(p,o,s,c,d,!1,l)||Lz.advance(p,o,s,c,f,!0,u);if(m)return ECe(e,t,n,t+m[0],r,i,a,i+m[1])}return[new Az(t,n,i,a)]}var Fz=class{constructor(){this.vec=[]}reset(e){this.len=e<<1;for(let e=0;e<this.len;e++)this.vec[e]=-1;this.vec[e+1]=0,this.start=this.end=0}advance(e,t,n,r,i,a,o){for(let s=-e+this.start;s<=e-this.end;s+=2){let c=r+s,l=s==-e||s!=e&&this.vec[c-1]<this.vec[c+1]?this.vec[c+1]:this.vec[c-1]+1,u=l-s;for(;l<t&&u<n&&o(l,u);)l++,u++;if(this.vec[c]=l,l>t)this.end+=2;else if(u>n)this.start+=2;else if(i){let e=r+(t-n)-s;if(e>=0&&e<this.len&&i.vec[e]!=-1){if(a){let n=i.vec[e];if(n>=t-l)return[n,r+n-e]}else{let n=t-i.vec[e];if(l>=n)return[l,u]}}}}return null}},Iz=new Fz,Lz=new Fz;function ECe(e,t,n,r,i,a,o,s){let c=!1;return!nB(e,r)&&++r==n&&(c=!0),!nB(i,s)&&++s==o&&(c=!0),c?[new Az(t,n,a,o)]:jz(e,t,r,i,a,s).concat(jz(e,r,n,i,s,o))}function Rz(e,t){let n=1,r=Math.min(e,t);for(;n<r;)n<<=1;return n}function zz(e,t,n,r,i,a){if(t==n||t==a||e.charCodeAt(t)!=r.charCodeAt(i))return 0;let o=Rz(n-t,a-i);for(let s=t,c=i;;){let i=s+o,l=c+o;if(i>n||l>a||e.slice(s,i)!=r.slice(c,l)){if(o==1)return s-t-+!nB(e,s);o>>=1}else if(i==n||l==a)return i-t;else s=i,c=l}}function Bz(e,t,n,r,i,a){if(t==n||i==a||e.charCodeAt(n-1)!=r.charCodeAt(a-1))return 0;let o=Rz(n-t,a-i);for(let s=n,c=a;;){let a=s-o,l=c-o;if(a<t||l<i||e.slice(a,s)!=r.slice(l,c)){if(o==1)return n-s-+!nB(e,s);o>>=1}else if(a==t||l==i)return n-a;else s=a,c=l}}function Vz(e,t,n,r,i,a,o,s){let c=r.slice(i,a),l=null;for(;;){if(l||o<s)return l;for(let s=t+o;;){nB(e,s)||s++;let u=s+o;if(nB(e,u)||(u+=u==s+1?1:-1),u>=n)break;let d=e.slice(s,u),f=-1;for(;(f=c.indexOf(d,f+1))!=-1;){let o=zz(e,u,n,r,i+f+d.length,a),c=Bz(e,t,s,r,i,i+f),p=d.length+o+c;(!l||l[2]<p)&&(l=[s-c,i+f-c,p])}s=u}if(s<0)return l;o>>=1}}function Hz(e,t,n,r,i,a){let o=n-t,s=a-i;if(o<s){let o=Hz(r,i,a,e,t,n);return o&&[o[1],o[0],o[2]]}return o<4||s*2<o?null:Vz(e,t,n,r,i,a,Math.floor(o/4),-1)}function Uz(e,t,n,r,i,a){Pz=!0;let o=n-t,s=a-i,c;if(o<s){let s=Vz(r,i,a,e,t,n,Math.floor(o/6),50);c=s&&[s[1],s[0],s[2]]}else c=Vz(e,t,n,r,i,a,Math.floor(s/6),50);if(!c)return[new Az(t,n,i,a)];let[l,u,d]=c;return jz(e,t,l,r,i,u).concat(jz(e,l+d,n,r,u+d,a))}function Wz(e,t){for(let n=1;n<e.length;n++){let r=e[n-1],i=e[n];r.toA>i.fromA-t&&r.toB>i.fromB-t&&(e[n-1]=new Az(r.fromA,i.toA,r.fromB,i.toB),e.splice(n--,1))}}function DCe(e,t,n){for(;;){Wz(n,1);let r=!1;for(let i=0;i<n.length;i++){let a=n[i],o,s;(o=zz(e,a.fromA,a.toA,t,a.fromB,a.toB))&&(a=n[i]=new Az(a.fromA+o,a.toA,a.fromB+o,a.toB)),(s=Bz(e,a.fromA,a.toA,t,a.fromB,a.toB))&&(a=n[i]=new Az(a.fromA,a.toA-s,a.fromB,a.toB-s));let c=a.toA-a.fromA,l=a.toB-a.fromB;if(c&&l)continue;let u=a.fromA-(i?n[i-1].toA:0),d=(i<n.length-1?n[i+1].fromA:e.length)-a.toA;if(!u||!d)continue;let f=c?e.slice(a.fromA,a.toA):t.slice(a.fromB,a.toB);u<=f.length&&e.slice(a.fromA-u,a.fromA)==f.slice(f.length-u)?(n[i]=new Az(a.fromA-u,a.toA-u,a.fromB-u,a.toB-u),r=!0):d<=f.length&&e.slice(a.toA,a.toA+d)==f.slice(0,d)&&(n[i]=new Az(a.fromA+d,a.toA+d,a.fromB+d,a.toB+d),r=!0)}if(!r)break}return n}function OCe(e,t,n){for(let r=0,i=0;i<e.length;i++){let a=e[i],o=a.toA-a.fromA,s=a.toB-a.fromB;if(o&&s||o>3||s>3){let c=i==e.length-1?t.length:e[i+1].fromA,l=a.fromA-r,u=c-a.toA,d=Zz(t,a.fromA,l),f=Xz(t,a.toA,u),p=a.fromA-d,m=f-a.toA;if((!o||!s)&&p&&m){let l=Math.max(o,s),[u,h,g]=o?[t,a.fromA,a.toA]:[n,a.fromB,a.toB];l>p&&t.slice(d,a.fromA)==u.slice(g-p,g)?(a=e[i]=new Az(d,d+o,a.fromB-p,a.toB-p),d=a.fromA,f=Xz(t,a.toA,c-a.toA)):l>m&&t.slice(a.toA,f)==u.slice(h,h+m)&&(a=e[i]=new Az(f-o,f,a.fromB+m,a.toB+m),f=a.toA,d=Zz(t,a.fromA,a.fromA-r)),p=a.fromA-d,m=f-a.toA}if(p||m)a=e[i]=new Az(a.fromA-p,a.toA+m,a.fromB-p,a.toB+m);else if(!o){let t=$z(n,a.fromB,a.toB),r,o=t<0?-1:Qz(n,a.toB,a.fromB);t>-1&&(r=t-a.fromB)<=u&&n.slice(a.fromB,t)==n.slice(a.toB,a.toB+r)?a=e[i]=a.offset(r):o>-1&&(r=a.toB-o)<=l&&n.slice(a.fromB-r,a.fromB)==n.slice(o,a.toB)&&(a=e[i]=a.offset(-r))}else if(!s){let n=$z(t,a.fromA,a.toA),r,o=n<0?-1:Qz(t,a.toA,a.fromA);n>-1&&(r=n-a.fromA)<=u&&t.slice(a.fromA,n)==t.slice(a.toA,a.toA+r)?a=e[i]=a.offset(r):o>-1&&(r=a.toA-o)<=l&&t.slice(a.fromA-r,a.fromA)==t.slice(o,a.toA)&&(a=e[i]=a.offset(-r))}}r=a.toA}return Wz(e,3),e}var Gz;try{Gz=RegExp(`[\\p{Alphabetic}\\p{Number}]`,`u`)}catch{}function Kz(e){return e>48&&e<58||e>64&&e<91||e>96&&e<123}function qz(e,t){if(t==e.length)return 0;let n=e.charCodeAt(t);return n<192?+!!Kz(n):Gz?!eB(n)||t==e.length-1?+!!Gz.test(String.fromCharCode(n)):Gz.test(e.slice(t,t+2))?2:0:0}function Jz(e,t){if(!t)return 0;let n=e.charCodeAt(t-1);return n<192?+!!Kz(n):Gz?!tB(n)||t==1?+!!Gz.test(String.fromCharCode(n)):Gz.test(e.slice(t-2,t))?2:0:0}var Yz=8;function Xz(e,t,n){if(t==e.length||!Jz(e,t))return t;for(let r=t,i=t+n,a=0;a<Yz;a++){let t=qz(e,r);if(!t||r+t>i)return r;r+=t}return t}function Zz(e,t,n){if(!t||!qz(e,t))return t;for(let r=t,i=t-n,a=0;a<Yz;a++){let t=Jz(e,r);if(!t||r-t<i)return r;r-=t}return t}function Qz(e,t,n){for(;t!=n;t--)if(e.charCodeAt(t-1)==10)return t;return-1}function $z(e,t,n){for(;t!=n;t++)if(e.charCodeAt(t)==10)return t;return-1}var eB=e=>e>=55296&&e<=56319,tB=e=>e>=56320&&e<=57343;function nB(e,t){return!t||t==e.length||!eB(e.charCodeAt(t-1))||!tB(e.charCodeAt(t))}function kCe(e,t,n){let r=n?.override;return r?r(e,t):(Mz=(n?.scanLimit??1e9)>>1,Nz=n?.timeout?Date.now()+n.timeout:0,Pz=!1,DCe(e,t,jz(e,0,e.length,t,0,t.length)))}function rB(){return!Pz}function iB(e,t,n){return OCe(kCe(e,t,n),e,t)}var aB=p.define({combine:e=>e[0]}),oB=k.define(),ACe=p.define(),sB=M.define({create(e){return null},update(e,t){for(let n of t.effects)n.is(oB)&&(e=n.value);for(let n of t.state.facet(ACe))e=n(e,t);return e}}),cB=class e{constructor(e,t,n,r,i,a=!0){this.changes=e,this.fromA=t,this.toA=n,this.fromB=r,this.toB=i,this.precise=a}offset(t,n){return t||n?new e(this.changes,this.fromA+t,this.toA+t,this.fromB+n,this.toB+n,this.precise):this}get endA(){return Math.max(this.fromA,this.toA-1)}get endB(){return Math.max(this.fromB,this.toB-1)}static build(e,t,n){return dB(iB(e.toString(),t.toString(),n),e,t,0,0,rB())}static updateA(e,t,n,r,i){return hB(mB(e,r,!0,n.length),e,t,n,i)}static updateB(e,t,n,r,i){return hB(mB(e,r,!1,t.length),e,t,n,i)}};function lB(e,t,n,r){let i=n.lineAt(e),a=r.lineAt(t);return i.to==e&&a.to==t&&e<n.length&&t<r.length?[e+1,t+1]:[i.from,a.from]}function uB(e,t,n,r){let i=n.lineAt(e),a=r.lineAt(t);return i.from==e&&a.from==t?[e,t]:[i.to+1,a.to+1]}function dB(e,t,n,r,i,a){let o=[];for(let s=0;s<e.length;s++){let c=e[s],[l,u]=lB(c.fromA+r,c.fromB+i,t,n),[d,f]=uB(c.toA+r,c.toB+i,t,n),p=[c.offset(-l+r,-u+i)];for(;s<e.length-1;){let a=e[s+1],[o,c]=lB(a.fromA+r,a.fromB+i,t,n);if(o>d+1&&c>f+1)break;p.push(a.offset(-l+r,-u+i)),[d,f]=uB(a.toA+r,a.toB+i,t,n),s++}o.push(new cB(p,l,Math.max(l,d),u,Math.max(u,f),a))}return o}var fB=1e3;function pB(e,t,n,r){let i=0,a=e.length;for(;;){if(i==a){let r=0,a=0;i&&({toA:r,toB:a}=e[i-1]);let o=t-(n?r:a);return[r+o,a+o]}let o=i+a>>1,s=e[o],[c,l]=n?[s.fromA,s.toA]:[s.fromB,s.toB];if(c>t)a=o;else if(l<=t)i=o+1;else return r?[s.fromA,s.fromB]:[s.toA,s.toB]}}function mB(e,t,n,r){let i=[];return t.iterChangedRanges((a,o,s,c)=>{let l=0,u=n?t.length:r,d=0,f=n?r:t.length;a>fB&&([l,d]=pB(e,a-fB,n,!0)),o<t.length-fB&&([u,f]=pB(e,o+fB,n,!1));let p=c-s-(o-a),m,[h,g]=n?[p,0]:[0,p];i.length&&(m=i[i.length-1]).toA>=l?i[i.length-1]={fromA:m.fromA,fromB:m.fromB,toA:u,toB:f,diffA:m.diffA+h,diffB:m.diffB+g}:i.push({fromA:l,toA:u,fromB:d,toB:f,diffA:h,diffB:g})}),i}function hB(e,t,n,r,i){if(!e.length)return t;let a=[];for(let o=0,s=0,c=0,l=0;;o++){let u=o==e.length?null:e[o],d=u?u.fromA+s:n.length,f=u?u.fromB+c:r.length;for(;l<t.length;){let e=t[l];if(u&&(e.toA+s>d||e.toB+c>f))break;a.push(e.offset(s,c)),l++}if(!u)break;let p=u.toA+s+u.diffA,m=u.toB+c+u.diffB,h=iB(n.sliceString(d,p),r.sliceString(f,m),i);for(let e of dB(h,n,r,d,f,rB()))a.push(e);for(s+=u.diffA,c+=u.diffB;l<t.length;){let e=t[l];if(e.fromA+s>p&&e.fromB+c>m)break;l++}}return a}var jCe={scanLimit:500},gB=ie.fromClass(class{constructor(e){({deco:this.deco,gutter:this.gutter}=bB(e))}update(e){(e.docChanged||e.viewportChanged||MCe(e.startState,e.state)||NCe(e.startState,e.state))&&({deco:this.deco,gutter:this.gutter}=bB(e.view))}},{decorations:e=>e.deco}),_B=we.low(se({class:`cm-changeGutter`,markers:e=>e.plugin(gB)?.gutter||s.empty}));function MCe(e,t){return e.field(sB,!1)!=t.field(sB,!1)}function NCe(e,t){return e.facet(aB)!=t.facet(aB)}var vB=Pe.line({class:`cm-changedLine`}),PCe=Pe.mark({class:`cm-changedText`}),FCe=Pe.mark({tagName:`ins`,class:`cm-insertedLine`}),ICe=Pe.mark({tagName:`del`,class:`cm-deletedLine`}),yB=new class extends re{constructor(){super(...arguments),this.elementClass=`cm-changedLineGutter`}};function LCe(e,t,n,r,i,a){let o=n?e.fromA:e.fromB,s=n?e.toA:e.toB,c=0;if(o!=s){i.add(o,o,vB),i.add(o,s,n?ICe:FCe),a&&a.add(o,o,yB);for(let l=t.iterRange(o,s-1),u=o;!l.next().done;){if(l.lineBreak){u++,i.add(u,u,vB),a&&a.add(u,u,yB);continue}let t=u+l.value.length;if(r)for(;c<e.changes.length;){let r=e.changes[c],a=o+(n?r.fromA:r.fromB),s=o+(n?r.toA:r.toB),l=Math.max(u,a),d=Math.min(t,s);if(l<d&&i.add(l,d,PCe),s<t)c++;else break}u=t}}}function bB(e){let t=e.state.field(sB),{side:n,highlightChanges:r,markGutter:i,overrideChunk:a}=e.state.facet(aB),o=n==`a`,s=new Se,c=i?new Se:null,{from:l,to:u}=e.viewport;for(let n of t){if((o?n.fromA:n.fromB)>=u)break;(o?n.toA:n.toB)>l&&(!a||!a(e.state,n,s,c))&&LCe(n,e.state.doc,o,r,s,c)}return{deco:s.finish(),gutter:c&&c.finish()}}var xB=class extends N{constructor(e){super(),this.height=e}eq(e){return this.height==e.height}toDOM(){let e=document.createElement(`div`);return e.className=`cm-mergeSpacer`,e.style.height=this.height+`px`,e}updateDOM(e){return e.style.height=this.height+`px`,!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}},SB=k.define({map:(e,t)=>e.map(t)}),CB=M.define({create:()=>Pe.none,update:(e,t)=>{for(let e of t.effects)if(e.is(SB))return e.value;return e.map(t.changes)},provide:e=>V.decorations.from(e)}),wB=.01;function TB(e,t){if(e.size!=t.size)return!1;let n=e.iter(),r=t.iter();for(;n.value;){if(n.from!=r.from||Math.abs(n.value.spec.widget.height-r.value.spec.widget.height)>1)return!1;n.next(),r.next()}return!0}function RCe(e,t,n){let r=new Se,i=new Se,a=e.state.field(CB).iter(),o=t.state.field(CB).iter(),s=0,c=0,l=0,u=0,d=e.viewport,f=t.viewport;for(let p=0;;p++){let m=p<n.length?n[p]:null,h=m?m.fromA:e.state.doc.length,g=m?m.fromB:t.state.doc.length;if(s<h){let n=e.lineBlockAt(s).top+l-(t.lineBlockAt(c).top+u);n<-.01?(l-=n,r.add(s,s,Pe.widget({widget:new xB(-n),block:!0,side:-1}))):n>wB&&(u+=n,i.add(c,c,Pe.widget({widget:new xB(n),block:!0,side:-1})))}if(h>s+1e3&&s<d.from&&h>d.from&&c<f.from&&g>f.from){let e=Math.min(d.from-s,f.from-c);s+=e,c+=e,p--}else if(m)s=m.toA,c=m.toB;else break;for(;a.value&&a.from<s;)l-=a.value.spec.widget.height,a.next();for(;o.value&&o.from<c;)u-=o.value.spec.widget.height,o.next()}for(;a.value;)l-=a.value.spec.widget.height,a.next();for(;o.value;)u-=o.value.spec.widget.height,o.next();let p=e.contentHeight+l-(t.contentHeight+u);p<wB?r.add(e.state.doc.length,e.state.doc.length,Pe.widget({widget:new xB(-p),block:!0,side:1})):p>wB&&i.add(t.state.doc.length,t.state.doc.length,Pe.widget({widget:new xB(p),block:!0,side:1}));let m=r.finish(),h=i.finish();TB(m,e.state.field(CB))||e.dispatch({effects:SB.of(m)}),TB(h,t.state.field(CB))||t.dispatch({effects:SB.of(h)})}var EB=k.define({map:(e,t)=>t.mapPos(e)}),zCe=class extends N{constructor(e){super(),this.lines=e}eq(e){return this.lines==e.lines}toDOM(e){let t=document.createElement(`div`);return t.className=`cm-collapsedLines`,t.textContent=e.state.phrase(`$ unchanged lines`,this.lines),t.addEventListener(`click`,t=>{let n=e.posAtDOM(t.target);e.dispatch({effects:EB.of(n)});let{side:r,sibling:i}=e.state.facet(aB);i&&i().dispatch({effects:EB.of(BCe(n,e.state.field(sB),r==`a`))})}),t}ignoreEvent(e){return e instanceof MouseEvent}get estimatedHeight(){return 27}get type(){return`collapsed-unchanged-code`}};function BCe(e,t,n){let r=0,i=0;for(let a=0;;a++){let o=a<t.length?t[a]:null;if(!o||(n?o.fromA:o.fromB)>=e)return i+(e-r);[r,i]=n?[o.toA,o.toB]:[o.toB,o.toA]}}var VCe=M.define({create(e){return Pe.none},update(e,t){e=e.map(t.changes);for(let n of t.effects)n.is(EB)&&(e=e.update({filter:e=>e!=n.value}));if(e.size&&t.state.field(sB)!=t.startState.field(sB,!1)){let n=t.state.facet(aB).side==`a`,r=[];for(let i of t.state.field(sB))e.between(n?i.fromA:i.fromB,n?i.toA:i.toB,e=>{r.push(e)});r.length&&(e=e.update({filter:e=>r.indexOf(e)<0}))}return e},provide:e=>V.decorations.from(e)});function DB({margin:e=3,minSize:t=4}){return VCe.init(n=>HCe(n,e,t))}function HCe(e,t,n){let r=new Se,i=e.facet(aB).side==`a`,a=e.field(sB),o=1;for(let s=0;;s++){let c=s<a.length?a[s]:null,l=s?o+t:1,u=c?e.doc.lineAt(i?c.fromA:c.fromB).number-1-t:e.doc.lines,d=u-l+1;if(d>=n&&r.add(e.doc.line(l).from,e.doc.line(u).to,Pe.replace({widget:new zCe(d),block:!0})),!c)break;o=e.doc.lineAt(Math.min(e.doc.length,i?c.toA:c.toB)).number}return r.finish()}var UCe=V.styleModule.of(new Xe({".cm-mergeView":{overflowY:`auto`},".cm-mergeViewEditors":{display:`flex`,alignItems:`stretch`},".cm-mergeViewEditor":{flexGrow:1,flexBasis:0,overflow:`hidden`},".cm-merge-revert":{width:`1.6em`,flexGrow:0,flexShrink:0,position:`relative`},".cm-merge-revert button":{position:`absolute`,display:`block`,width:`100%`,boxSizing:`border-box`,textAlign:`center`,background:`none`,border:`none`,font:`inherit`,cursor:`pointer`}})),WCe=V.baseTheme({".cm-mergeView & .cm-scroller, .cm-mergeView &":{height:`auto !important`,overflowY:`visible !important`},"&.cm-merge-a .cm-changedLine, .cm-deletedChunk":{backgroundColor:`rgba(160, 128, 100, .08)`},"&.cm-merge-b .cm-changedLine, .cm-inlineChangedLine":{backgroundColor:`rgba(100, 160, 128, .08)`},"&light.cm-merge-a .cm-changedText, &light .cm-deletedChunk .cm-deletedText":{background:`linear-gradient(#ee443366, #ee443366) bottom/100% 2px no-repeat`},"&dark.cm-merge-a .cm-changedText, &dark .cm-deletedChunk .cm-deletedText":{background:`linear-gradient(#ffaa9966, #ffaa9966) bottom/100% 2px no-repeat`},"&light.cm-merge-b .cm-changedText":{background:`linear-gradient(#22bb22aa, #22bb22aa) bottom/100% 2px no-repeat`},"&dark.cm-merge-b .cm-changedText":{background:`linear-gradient(#88ff88aa, #88ff88aa) bottom/100% 2px no-repeat`},"&.cm-merge-b .cm-deletedText":{background:`#ff000033`},".cm-insertedLine, .cm-deletedLine, .cm-deletedLine del":{textDecoration:`none`},".cm-deletedChunk":{paddingLeft:`6px`,"& .cm-chunkButtons":{position:`absolute`,insetInlineEnd:`5px`},"& button":{border:`none`,cursor:`pointer`,color:`white`,margin:`0 2px`,borderRadius:`3px`,"&[name=accept]":{background:`#2a2`},"&[name=reject]":{background:`#d43`}}},".cm-collapsedLines":{padding:`5px 5px 5px 10px`,cursor:`pointer`,"&:before":{content:`"⦚"`,marginInlineEnd:`7px`},"&:after":{content:`"⦚"`,marginInlineStart:`7px`}},"&light .cm-collapsedLines":{color:`#444`,background:`linear-gradient(to bottom, transparent 0, #f3f3f3 30%, #f3f3f3 70%, transparent 100%)`},"&dark .cm-collapsedLines":{color:`#ddd`,background:`linear-gradient(to bottom, transparent 0, #222 30%, #222 70%, transparent 100%)`},".cm-changeGutter":{width:`3px`,paddingLeft:`1px`},"&light.cm-merge-a .cm-changedLineGutter, &light .cm-deletedLineGutter":{background:`#e43`},"&dark.cm-merge-a .cm-changedLineGutter, &dark .cm-deletedLineGutter":{background:`#fa9`},"&light.cm-merge-b .cm-changedLineGutter":{background:`#2b2`},"&dark.cm-merge-b .cm-changedLineGutter":{background:`#8f8`},".cm-inlineChangedLineGutter":{background:`#75d`}}),OB=new Ke,kB=new Ke,GCe=class{constructor(e){this.revertDOM=null,this.revertToA=!1,this.revertToLeft=!1,this.measuring=-1,this.diffConf=e.diffConfig||jCe;let t=[we.low(gB),WCe,UCe,CB,V.updateListener.of(e=>{this.measuring<0&&(e.heightChanged||e.viewportChanged)&&!e.transactions.some(e=>e.effects.some(e=>e.is(SB)))&&this.measure()})],n=[aB.of({side:`a`,sibling:()=>this.b,highlightChanges:e.highlightChanges!==!1,markGutter:e.gutter!==!1})];e.gutter!==!1&&n.push(_B);let r=h.create({doc:e.a.doc,selection:e.a.selection,extensions:[e.a.extensions||[],V.editorAttributes.of({class:`cm-merge-a`}),kB.of(n),t]}),i=[aB.of({side:`b`,sibling:()=>this.a,highlightChanges:e.highlightChanges!==!1,markGutter:e.gutter!==!1})];e.gutter!==!1&&i.push(_B);let a=h.create({doc:e.b.doc,selection:e.b.selection,extensions:[e.b.extensions||[],V.editorAttributes.of({class:`cm-merge-b`}),kB.of(i),t]});this.chunks=cB.build(r.doc,a.doc,this.diffConf);let o=[sB.init(()=>this.chunks),OB.of(e.collapseUnchanged?DB(e.collapseUnchanged):[])];r=r.update({effects:k.appendConfig.of(o)}).state,a=a.update({effects:k.appendConfig.of(o)}).state,this.dom=document.createElement(`div`),this.dom.className=`cm-mergeView`,this.editorDOM=this.dom.appendChild(document.createElement(`div`)),this.editorDOM.className=`cm-mergeViewEditors`;let s=e.orientation||`a-b`,c=document.createElement(`div`);c.className=`cm-mergeViewEditor`;let l=document.createElement(`div`);l.className=`cm-mergeViewEditor`,this.editorDOM.appendChild(s==`a-b`?c:l),this.editorDOM.appendChild(s==`a-b`?l:c),this.a=new V({state:r,parent:c,root:e.root,dispatchTransactions:e=>this.dispatch(e,this.a)}),this.b=new V({state:a,parent:l,root:e.root,dispatchTransactions:e=>this.dispatch(e,this.b)}),this.setupRevertControls(!!e.revertControls,e.revertControls==`b-to-a`,e.renderRevertControl),e.parent&&e.parent.appendChild(this.dom),this.scheduleMeasure()}dispatch(e,t){if(e.some(e=>e.docChanged)){let n=e[e.length-1],r=e.reduce((e,t)=>e.compose(t.changes),L.empty(e[0].startState.doc.length));this.chunks=t==this.a?cB.updateA(this.chunks,n.newDoc,this.b.state.doc,r,this.diffConf):cB.updateB(this.chunks,this.a.state.doc,n.newDoc,r,this.diffConf),t.update([...e,n.state.update({effects:oB.of(this.chunks)})]);let i=t==this.a?this.b:this.a;i.update([i.state.update({effects:oB.of(this.chunks)})]),this.scheduleMeasure()}else t.update(e)}reconfigure(e){if(`diffConfig`in e&&(this.diffConf=e.diffConfig),`orientation`in e){let t=e.orientation!=`b-a`;if(t!=(this.editorDOM.firstChild==this.a.dom.parentNode)){let e=this.a.dom.parentNode,n=this.b.dom.parentNode;e.remove(),n.remove(),this.editorDOM.insertBefore(t?e:n,this.editorDOM.firstChild),this.editorDOM.appendChild(t?n:e),this.revertToLeft=!this.revertToLeft,this.revertDOM&&(this.revertDOM.textContent=``)}}if(`revertControls`in e||`renderRevertControl`in e){let t=!!this.revertDOM,n=this.revertToA,r=this.renderRevert;`revertControls`in e&&(t=!!e.revertControls,n=e.revertControls==`b-to-a`),`renderRevertControl`in e&&(r=e.renderRevertControl),this.setupRevertControls(t,n,r)}let t=`highlightChanges`in e,n=`gutter`in e,r=`collapseUnchanged`in e;if(t||n||r){let i=[],a=[];if(t||n){let r=this.a.state.facet(aB),o=n?e.gutter!==!1:r.markGutter,s=t?e.highlightChanges!==!1:r.highlightChanges;i.push(kB.reconfigure([aB.of({side:`a`,sibling:()=>this.b,highlightChanges:s,markGutter:o}),o?_B:[]])),a.push(kB.reconfigure([aB.of({side:`b`,sibling:()=>this.a,highlightChanges:s,markGutter:o}),o?_B:[]]))}if(r){let t=OB.reconfigure(e.collapseUnchanged?DB(e.collapseUnchanged):[]);i.push(t),a.push(t)}this.a.dispatch({effects:i}),this.b.dispatch({effects:a})}this.scheduleMeasure()}setupRevertControls(e,t,n){this.revertToA=t,this.revertToLeft=this.revertToA==(this.editorDOM.firstChild==this.a.dom.parentNode),this.renderRevert=n,!e&&this.revertDOM?(this.revertDOM.remove(),this.revertDOM=null):e&&!this.revertDOM?(this.revertDOM=this.editorDOM.insertBefore(document.createElement(`div`),this.editorDOM.firstChild.nextSibling),this.revertDOM.addEventListener(`mousedown`,e=>this.revertClicked(e)),this.revertDOM.className=`cm-merge-revert`):this.revertDOM&&(this.revertDOM.textContent=``)}scheduleMeasure(){if(this.measuring<0){let e=this.dom.ownerDocument.defaultView||window;this.measuring=e.requestAnimationFrame(()=>{this.measuring=-1,this.measure()})}}measure(){RCe(this.a,this.b,this.chunks),this.revertDOM&&this.updateRevertButtons()}updateRevertButtons(){let e=this.revertDOM,t=e.firstChild,n=this.a.viewport,r=this.b.viewport;for(let i=0;i<this.chunks.length;i++){let a=this.chunks[i];if(a.fromA>n.to||a.fromB>r.to)break;if(a.fromA<n.from||a.fromB<r.from)continue;let o=this.a.lineBlockAt(a.fromA).top+`px`;for(;t&&+t.dataset.chunk<i;)t=AB(t);t&&t.dataset.chunk==String(i)?(t.style.top!=o&&(t.style.top=o),t=t.nextSibling):e.insertBefore(this.renderRevertButton(o,i),t)}for(;t;)t=AB(t)}renderRevertButton(e,t){let n;if(this.renderRevert)n=this.renderRevert();else{n=document.createElement(`button`);let e=this.a.state.phrase(`Revert this chunk`);n.setAttribute(`aria-label`,e),n.setAttribute(`title`,e),n.textContent=this.revertToLeft?`⇜`:`⇝`}return n.style.top=e,n.setAttribute(`data-chunk`,String(t)),n}revertClicked(e){let t=e.target,n;for(;t&&t.parentNode!=this.revertDOM;)t=t.parentNode;if(t&&(n=this.chunks[t.dataset.chunk])){let[t,r,i,a,o,s]=this.revertToA?[this.b,this.a,n.fromB,n.toB,n.fromA,n.toA]:[this.a,this.b,n.fromA,n.toA,n.fromB,n.toB],c=t.state.sliceDoc(i,Math.max(i,a-1));i!=a&&s<=r.state.doc.length&&(c+=t.state.lineBreak),r.dispatch({changes:{from:o,to:Math.min(r.state.doc.length,s),insert:c},userEvent:`revert`}),e.preventDefault()}}destroy(){this.a.destroy(),this.b.destroy(),this.measuring>-1&&(this.dom.ownerDocument.defaultView||window).cancelAnimationFrame(this.measuring),this.dom.remove()}};function AB(e){let t=e.nextSibling;return e.remove(),t}var jB=class e{static create(t,n,r,i,a){let o=i+(i<<8)+t+(n<<4)|0;return new e(t,n,r,o,a,[],[])}constructor(e,t,n,r,i,a,o){this.type=e,this.value=t,this.from=n,this.hash=r,this.end=i,this.children=a,this.positions=o,this.hashProp=[[c.contextHash,r]]}addChild(e,t){e.prop(c.contextHash)!=this.hash&&(e=new v(e.type,e.children,e.positions,e.length,this.hashProp)),this.children.push(e),this.positions.push(t)}toTree(e,t=this.end){let n=this.children.length-1;return n>=0&&(t=Math.max(t,this.positions[n]+this.children[n].length+this.from)),new v(e.types[this.type],this.children,this.positions,t-this.from).balance({makeTree:(e,t,n)=>new v(y.none,e,t,n,this.hashProp)})}},MB;(function(e){e[e.Document=1]=`Document`,e[e.CodeBlock=2]=`CodeBlock`,e[e.FencedCode=3]=`FencedCode`,e[e.Blockquote=4]=`Blockquote`,e[e.HorizontalRule=5]=`HorizontalRule`,e[e.BulletList=6]=`BulletList`,e[e.OrderedList=7]=`OrderedList`,e[e.ListItem=8]=`ListItem`,e[e.ATXHeading1=9]=`ATXHeading1`,e[e.ATXHeading2=10]=`ATXHeading2`,e[e.ATXHeading3=11]=`ATXHeading3`,e[e.ATXHeading4=12]=`ATXHeading4`,e[e.ATXHeading5=13]=`ATXHeading5`,e[e.ATXHeading6=14]=`ATXHeading6`,e[e.SetextHeading1=15]=`SetextHeading1`,e[e.SetextHeading2=16]=`SetextHeading2`,e[e.HTMLBlock=17]=`HTMLBlock`,e[e.LinkReference=18]=`LinkReference`,e[e.Paragraph=19]=`Paragraph`,e[e.CommentBlock=20]=`CommentBlock`,e[e.ProcessingInstructionBlock=21]=`ProcessingInstructionBlock`,e[e.Escape=22]=`Escape`,e[e.Entity=23]=`Entity`,e[e.HardBreak=24]=`HardBreak`,e[e.Emphasis=25]=`Emphasis`,e[e.StrongEmphasis=26]=`StrongEmphasis`,e[e.Link=27]=`Link`,e[e.Image=28]=`Image`,e[e.InlineCode=29]=`InlineCode`,e[e.HTMLTag=30]=`HTMLTag`,e[e.Comment=31]=`Comment`,e[e.ProcessingInstruction=32]=`ProcessingInstruction`,e[e.Autolink=33]=`Autolink`,e[e.HeaderMark=34]=`HeaderMark`,e[e.QuoteMark=35]=`QuoteMark`,e[e.ListMark=36]=`ListMark`,e[e.LinkMark=37]=`LinkMark`,e[e.EmphasisMark=38]=`EmphasisMark`,e[e.CodeMark=39]=`CodeMark`,e[e.CodeText=40]=`CodeText`,e[e.CodeInfo=41]=`CodeInfo`,e[e.LinkTitle=42]=`LinkTitle`,e[e.LinkLabel=43]=`LinkLabel`,e[e.URL=44]=`URL`})(MB||={});var KCe=class{constructor(e,t){this.start=e,this.content=t,this.marks=[],this.parsers=[]}},qCe=class{constructor(){this.text=``,this.baseIndent=0,this.basePos=0,this.depth=0,this.markers=[],this.pos=0,this.indent=0,this.next=-1}forward(){this.basePos>this.pos&&this.forwardInner()}forwardInner(){let e=this.skipSpace(this.basePos);this.indent=this.countIndent(e,this.pos,this.indent),this.pos=e,this.next=e==this.text.length?-1:this.text.charCodeAt(e)}skipSpace(e){return IB(this.text,e)}reset(e){for(this.text=e,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(e){this.basePos=e,this.baseIndent=this.countIndent(e,this.pos,this.indent)}moveBaseColumn(e){this.baseIndent=e,this.basePos=this.findColumn(e)}addMarker(e){this.markers.push(e)}countIndent(e,t=0,n=0){for(let r=t;r<e;r++)n+=this.text.charCodeAt(r)==9?4-n%4:1;return n}findColumn(e){let t=0;for(let n=0;t<this.text.length&&n<e;t++)n+=this.text.charCodeAt(t)==9?4-n%4:1;return t}scrub(){if(!this.baseIndent)return this.text;let e=``;for(let t=0;t<this.basePos;t++)e+=` `;return e+this.text.slice(this.basePos)}};function NB(e,t,n){if(n.pos==n.text.length||e!=t.block&&n.indent>=t.stack[n.depth+1].value+n.baseIndent)return!0;if(n.indent>=n.baseIndent+4)return!1;let r=(e.type==MB.OrderedList?UB:HB)(n,t,!1);return r>0&&(e.type!=MB.BulletList||BB(n,t,!1)<0)&&n.text.charCodeAt(n.pos+r-1)==e.value}var PB={[MB.Blockquote](e,t,n){return n.next==62&&(n.markers.push(fV(MB.QuoteMark,t.lineStart+n.pos,t.lineStart+n.pos+1)),n.moveBase(n.pos+(FB(n.text.charCodeAt(n.pos+1))?2:1)),e.end=t.lineStart+n.text.length,!0)},[MB.ListItem](e,t,n){return n.indent<n.baseIndent+e.value&&n.next>-1?!1:(n.moveBaseColumn(n.baseIndent+e.value),!0)},[MB.OrderedList]:NB,[MB.BulletList]:NB,[MB.Document](){return!0}};function FB(e){return e==32||e==9||e==10||e==13}function IB(e,t=0){for(;t<e.length&&FB(e.charCodeAt(t));)t++;return t}function LB(e,t,n){for(;t>n&&FB(e.charCodeAt(t-1));)t--;return t}function RB(e){if(e.next!=96&&e.next!=126)return-1;let t=e.pos+1;for(;t<e.text.length&&e.text.charCodeAt(t)==e.next;)t++;if(t<e.pos+3)return-1;if(e.next==96){for(let n=t;n<e.text.length;n++)if(e.text.charCodeAt(n)==96)return-1}return t}function zB(e){return e.next==62?e.text.charCodeAt(e.pos+1)==32?2:1:-1}function BB(e,t,n){if(e.next!=42&&e.next!=45&&e.next!=95)return-1;let r=1;for(let t=e.pos+1;t<e.text.length;t++){let n=e.text.charCodeAt(t);if(n==e.next)r++;else if(!FB(n))return-1}return n&&e.next==45&&GB(e)>-1&&e.depth==t.stack.length&&t.parser.leafBlockParsers.indexOf(tV.SetextHeading)>-1||r<3?-1:1}function VB(e,t){for(let n=e.stack.length-1;n>=0;n--)if(e.stack[n].type==t)return!0;return!1}function HB(e,t,n){return(e.next==45||e.next==43||e.next==42)&&(e.pos==e.text.length-1||FB(e.text.charCodeAt(e.pos+1)))&&(!n||VB(t,MB.BulletList)||e.skipSpace(e.pos+2)<e.text.length)?1:-1}function UB(e,t,n){let r=e.pos,i=e.next;for(;i>=48&&i<=57;){if(r++,r==e.text.length)return-1;i=e.text.charCodeAt(r)}return r==e.pos||r>e.pos+9||i!=46&&i!=41||r<e.text.length-1&&!FB(e.text.charCodeAt(r+1))||n&&!VB(t,MB.OrderedList)&&(e.skipSpace(r+1)==e.text.length||r>e.pos+1||e.next!=49)?-1:r+1-e.pos}function WB(e){if(e.next!=35)return-1;let t=e.pos+1;for(;t<e.text.length&&e.text.charCodeAt(t)==35;)t++;if(t<e.text.length&&e.text.charCodeAt(t)!=32)return-1;let n=t-e.pos;return n>6?-1:n}function GB(e){if(e.next!=45&&e.next!=61||e.indent>=e.baseIndent+4)return-1;let t=e.pos+1;for(;t<e.text.length&&e.text.charCodeAt(t)==e.next;)t++;let n=t;for(;t<e.text.length&&FB(e.text.charCodeAt(t));)t++;return t==e.text.length?n:-1}var KB=/^[ \t]*$/,qB=/-->/,JB=/\?>/,YB=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*<!--/,qB],[/^\s*<\?/,JB],[/^\s*<![A-Z]/,/>/],[/^\s*<!\[CDATA\[/,/\]\]>/],[/^\s*<\/?(?: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|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul)(?:\s|\/?>|$)/i,KB],[/^\s*(?:<\/[a-z][\w-]*\s*>|<[a-z][\w-]*(\s+[a-z:_][\w-.]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*>)\s*$/i,KB]];function XB(e,t,n){if(e.next!=60)return-1;let r=e.text.slice(e.pos);for(let e=0,t=YB.length-+!!n;e<t;e++)if(YB[e][0].test(r))return e;return-1}function ZB(e,t){let n=e.countIndent(t,e.pos,e.indent),r=e.skipSpace(t),i=e.countIndent(r,t,n);return i>=n+5||r==e.text.length?n+1:i}function QB(e,t,n){let r=e.length-1;r>=0&&e[r].to==t&&e[r].type==MB.CodeText?e[r].to=n:e.push(fV(MB.CodeText,t,n))}var $B={LinkReference:void 0,IndentedCode(e,t){let n=t.baseIndent+4;if(t.indent<n)return!1;let r=t.findColumn(n),i=e.lineStart+r,a=e.lineStart+t.text.length,o=[],s=[];for(QB(o,i,a);e.nextLine()&&t.depth>=e.stack.length;)if(t.pos==t.text.length){QB(s,e.lineStart-1,e.lineStart);for(let e of t.markers)s.push(e)}else if(t.indent<n)break;else{if(s.length){for(let e of s)e.type==MB.CodeText?QB(o,e.from,e.to):o.push(e);s=[]}QB(o,e.lineStart-1,e.lineStart);for(let e of t.markers)o.push(e);a=e.lineStart+t.text.length;let n=e.lineStart+t.findColumn(t.baseIndent+4);n<a&&QB(o,n,a)}return s.length&&(s=s.filter(e=>e.type!=MB.CodeText),s.length&&(t.markers=s.concat(t.markers))),e.addNode(e.buffer.writeElements(o,-i).finish(MB.CodeBlock,a-i),i),!0},FencedCode(e,t){let n=RB(t);if(n<0)return!1;let r=e.lineStart+t.pos,i=t.next,a=n-t.pos,o=t.skipSpace(n),s=LB(t.text,t.text.length,o),c=[fV(MB.CodeMark,r,r+a)];o<s&&c.push(fV(MB.CodeInfo,e.lineStart+o,e.lineStart+s));for(let n=!0,r=!0,o=!1;e.nextLine()&&t.depth>=e.stack.length;n=!1){let s=t.pos;if(t.indent-t.baseIndent<4)for(;s<t.text.length&&t.text.charCodeAt(s)==i;)s++;if(s-t.pos>=a&&t.skipSpace(s)==t.text.length){for(let e of t.markers)c.push(e);r&&o&&QB(c,e.lineStart-1,e.lineStart),c.push(fV(MB.CodeMark,e.lineStart+t.pos,e.lineStart+s)),e.nextLine();break}{o=!0,n||(QB(c,e.lineStart-1,e.lineStart),r=!1);for(let e of t.markers)c.push(e);let i=e.lineStart+t.basePos,a=e.lineStart+t.text.length;i<a&&(QB(c,i,a),r=!1)}}return e.addNode(e.buffer.writeElements(c,-r).finish(MB.FencedCode,e.prevLineEnd()-r),r),!0},Blockquote(e,t){let n=zB(t);return n<0?!1:(e.startContext(MB.Blockquote,t.pos),e.addNode(MB.QuoteMark,e.lineStart+t.pos,e.lineStart+t.pos+1),t.moveBase(t.pos+n),null)},HorizontalRule(e,t){if(BB(t,e,!1)<0)return!1;let n=e.lineStart+t.pos;return e.nextLine(),e.addNode(MB.HorizontalRule,n),!0},BulletList(e,t){let n=HB(t,e,!1);if(n<0)return!1;e.block.type!=MB.BulletList&&e.startContext(MB.BulletList,t.basePos,t.next);let r=ZB(t,t.pos+1);return e.startContext(MB.ListItem,t.basePos,r-t.baseIndent),e.addNode(MB.ListMark,e.lineStart+t.pos,e.lineStart+t.pos+n),t.moveBaseColumn(r),null},OrderedList(e,t){let n=UB(t,e,!1);if(n<0)return!1;e.block.type!=MB.OrderedList&&e.startContext(MB.OrderedList,t.basePos,t.text.charCodeAt(t.pos+n-1));let r=ZB(t,t.pos+n);return e.startContext(MB.ListItem,t.basePos,r-t.baseIndent),e.addNode(MB.ListMark,e.lineStart+t.pos,e.lineStart+t.pos+n),t.moveBaseColumn(r),null},ATXHeading(e,t){let n=WB(t);if(n<0)return!1;let r=t.pos,i=e.lineStart+r,a=LB(t.text,t.text.length,r),o=a;for(;o>r&&t.text.charCodeAt(o-1)==t.next;)o--;(o==a||o==r||!FB(t.text.charCodeAt(o-1)))&&(o=t.text.length);let s=e.buffer.write(MB.HeaderMark,0,n).writeElements(e.parser.parseInline(t.text.slice(r+n+1,o),i+n+1),-i);o<t.text.length&&s.write(MB.HeaderMark,o-r,a-r);let c=s.finish(MB.ATXHeading1-1+n,t.text.length-r);return e.nextLine(),e.addNode(c,i),!0},HTMLBlock(e,t){let n=XB(t,e,!1);if(n<0)return!1;let r=e.lineStart+t.pos,i=YB[n][1],a=[],o=i!=KB;for(;!i.test(t.text)&&e.nextLine();){if(t.depth<e.stack.length){o=!1;break}for(let e of t.markers)a.push(e)}o&&e.nextLine();let s=i==qB?MB.CommentBlock:i==JB?MB.ProcessingInstructionBlock:MB.HTMLBlock,c=e.prevLineEnd();return e.addNode(e.buffer.writeElements(a,-r).finish(s,c-r),r),!0},SetextHeading:void 0},JCe=class{constructor(e){this.stage=0,this.elts=[],this.pos=0,this.start=e.start,this.advance(e.content)}nextLine(e,t,n){if(this.stage==-1)return!1;let r=n.content+`
177
177
  `+t.scrub(),i=this.advance(r);return i>-1&&i<r.length&&this.complete(e,n,i)}finish(e,t){return(this.stage==2||this.stage==3)&&IB(t.content,this.pos)==t.content.length&&this.complete(e,t,t.content.length)}complete(e,t,n){return e.addLeafElement(t,fV(MB.LinkReference,this.start,this.start+n,this.elts)),!0}nextStage(e){return e?(this.pos=e.to-this.start,this.elts.push(e),this.stage++,!0):(e===!1&&(this.stage=-1),!1)}advance(e){for(;;)if(this.stage==-1)return-1;else if(this.stage==0){if(!this.nextStage(SV(e,this.pos,this.start,!0)))return-1;if(e.charCodeAt(this.pos)!=58)return this.stage=-1;this.elts.push(fV(MB.LinkMark,this.pos+this.start,this.pos+this.start+1)),this.pos++}else if(this.stage==1){if(!this.nextStage(bV(e,IB(e,this.pos),this.start)))return-1}else if(this.stage==2){let t=IB(e,this.pos),n=0;if(t>this.pos){let r=xV(e,t,this.start);if(r){let t=eV(e,r.to-this.start);t>0&&(this.nextStage(r),n=t)}}return n||=eV(e,this.pos),n>0&&n<e.length?n:-1}else return eV(e,this.pos)}};function eV(e,t){for(;t<e.length;t++){let n=e.charCodeAt(t);if(n==10)break;if(!FB(n))return-1}return t}var YCe=class{nextLine(e,t,n){let r=t.depth<e.stack.length?-1:GB(t),i=t.next;if(r<0)return!1;let a=fV(MB.HeaderMark,e.lineStart+t.pos,e.lineStart+r);return e.nextLine(),e.addLeafElement(n,fV(i==61?MB.SetextHeading1:MB.SetextHeading2,n.start,e.prevLineEnd(),[...e.parser.parseInline(n.content,n.start),a])),!0}finish(){return!1}},tV={LinkReference(e,t){return t.content.charCodeAt(0)==91?new JCe(t):null},SetextHeading(){return new YCe}},XCe=[(e,t)=>WB(t)>=0,(e,t)=>RB(t)>=0,(e,t)=>zB(t)>=0,(e,t)=>HB(t,e,!0)>=0,(e,t)=>UB(t,e,!0)>=0,(e,t)=>BB(t,e,!0)>=0,(e,t)=>XB(t,e,!0)>=0],ZCe={text:``,end:0},QCe=class{constructor(e,t,n,r){this.parser=e,this.input=t,this.ranges=r,this.line=new qCe,this.atEnd=!1,this.reusePlaceholders=new Map,this.stoppedAt=null,this.rangeI=0,this.to=r[r.length-1].to,this.lineStart=this.absoluteLineStart=this.absoluteLineEnd=r[0].from,this.block=jB.create(MB.Document,0,this.lineStart,0,0),this.stack=[this.block],this.fragments=n.length?new nwe(n,t):null,this.readLine()}get parsedPos(){return this.absoluteLineStart}advance(){if(this.stoppedAt!=null&&this.absoluteLineStart>this.stoppedAt)return this.finish();let{line:e}=this;for(;;){for(let t=0;;){let n=e.depth<this.stack.length?this.stack[this.stack.length-1]:null;for(;t<e.markers.length&&(!n||e.markers[t].from<n.end);){let n=e.markers[t++];this.addNode(n.type,n.from,n.to)}if(!n)break;this.finishContext()}if(e.pos<e.text.length)break;if(!this.nextLine())return this.finish()}if(this.fragments&&this.reuseFragment(e.basePos))return null;start:for(;;){for(let t of this.parser.blockParsers)if(t){let n=t(this,e);if(n!=0){if(n==1)return null;e.forward();continue start}}break}if(e.pos==e.text.length)return this.nextLine()?null:this.finish();let t=new KCe(this.lineStart+e.pos,e.text.slice(e.pos));for(let e of this.parser.leafBlockParsers)if(e){let n=e(this,t);n&&t.parsers.push(n)}lines:for(;this.nextLine()&&e.pos!=e.text.length;){if(e.indent<e.baseIndent+4){for(let n of this.parser.endLeafBlock)if(n(this,e,t))break lines}for(let n of t.parsers)if(n.nextLine(this,e,t))return null;t.content+=`
178
178
  `+e.scrub();for(let n of e.markers)t.marks.push(n)}return this.finishLeaf(t),null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw RangeError(`Can't move stoppedAt forward`);this.stoppedAt=e}reuseFragment(e){if(!this.fragments.moveTo(this.absoluteLineStart+e,this.absoluteLineStart)||!this.fragments.matches(this.block.hash))return!1;let t=this.fragments.takeNodes(this);return t?(this.absoluteLineStart+=t,this.lineStart=TV(this.absoluteLineStart,this.ranges),this.moveRangeI(),this.absoluteLineStart<this.to?(this.lineStart++,this.absoluteLineStart++,this.readLine()):(this.atEnd=!0,this.readLine()),!0):!1}get depth(){return this.stack.length}parentType(e=this.depth-1){return this.parser.nodeSet.types[this.stack[e].type]}nextLine(){return this.lineStart+=this.line.text.length,this.absoluteLineEnd>=this.to?(this.absoluteLineStart=this.absoluteLineEnd,this.atEnd=!0,this.readLine(),!1):(this.lineStart++,this.absoluteLineStart=this.absoluteLineEnd+1,this.moveRangeI(),this.readLine(),!0)}peekLine(){return this.scanLine(this.absoluteLineEnd+1).text}moveRangeI(){for(;this.rangeI<this.ranges.length-1&&this.absoluteLineStart>=this.ranges[this.rangeI].to;)this.rangeI++,this.absoluteLineStart=Math.max(this.absoluteLineStart,this.ranges[this.rangeI].from)}scanLine(e){let t=ZCe;if(t.end=e,e>=this.to)t.text=``;else if(t.text=this.lineChunkAt(e),t.end+=t.text.length,this.ranges.length>1){let e=this.absoluteLineStart,n=this.rangeI;for(;this.ranges[n].to<t.end;){n++;let r=this.ranges[n].from,i=this.lineChunkAt(r);t.end=r+i.length,t.text=t.text.slice(0,this.ranges[n-1].to-e)+i,e=t.end-t.text.length}}return t}readLine(){let{line:e}=this,{text:t,end:n}=this.scanLine(this.absoluteLineStart);for(this.absoluteLineEnd=n,e.reset(t);e.depth<this.stack.length;e.depth++){let t=this.stack[e.depth],n=this.parser.skipContextMarkup[t.type];if(!n)throw Error(`Unhandled block context `+MB[t.type]);let r=this.line.markers.length;if(!n(t,this,e)){this.line.markers.length>r&&(t.end=this.line.markers[this.line.markers.length-1].to),e.forward();break}e.forward()}}lineChunkAt(e){let t=this.input.chunk(e),n;if(this.input.lineChunks)n=t==`
@@ -209,20 +209,20 @@ Error generating stack: `+e.message+`
209
209
 
210
210
  `}${n}`:n:e}function RNe(){return[`audio/webm;codecs=opus`,`audio/webm`,`audio/ogg;codecs=opus`,`audio/mp4`].find(e=>MediaRecorder.isTypeSupported(e))}function zNe(e){let t=e.includes(`ogg`)?`ogg`:e.includes(`mp4`)?`m4a`:`webm`;return`recording-${Date.now()}.${t}`}function BNe(e){if(!e)return;if(e.value&&!e.value.includes(`
211
211
  `)&&e.value.length<80){e.style.height=``,e.style.overflowY=`hidden`;return}let t=window.getComputedStyle(e),n=ZY(t.lineHeight,20),r=ZY(t.borderTopWidth)+ZY(t.borderBottomWidth),i=n*5+ZY(t.paddingTop)+ZY(t.paddingBottom);e.style.height=`auto`;let a=e.scrollHeight,o=a>i;e.style.height=`${Math.min(a,i)+r}px`,e.style.overflowY=o?`auto`:`hidden`,o&&e.selectionStart===e.value.length&&e.selectionEnd===e.value.length&&(e.scrollTop=a)}function ZY(e,t=0){let n=Number.parseFloat(e);return Number.isFinite(n)?n:t}async function VNe(e,t={}){let n=new URLSearchParams({piboSessionId:e});return t.status&&n.set(`status`,t.status),t.limit&&n.set(`limit`,String(t.limit)),t.scope&&n.set(`scope`,t.scope),K(`/api/web-annotations?${n.toString()}`)}async function HNe(e,t){return K(`/api/web-annotations/${encodeURIComponent(e)}`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify($Y(t))})}async function UNe(e){let t=new URLSearchParams;return e?.trim()&&t.set(`cdpUrl`,e.trim()),K(`/api/web-annotations/targets${t.size?`?${t.toString()}`:``}`)}async function QY(e){return K(`/api/web-annotations/bindings`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify($Y(e))})}async function WNe(e,t){return K(`/api/web-annotations/bindings/${encodeURIComponent(e)}/inject`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify($Y(t))})}function $Y(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==void 0&&e!==``))}var eX=`pibo.chat.webAnnotations.cdpUrl`,tX=`pibo.chat.webAnnotations.selected`,nX=`${tX}.`,GNe=`pibo.chat.webAnnotations.overlay.`,rX=`pibo.chat.webAnnotations.panelCollapsed`,iX=`pibo.chat.shortcuts.webAnnotationsToggle`,aX=`Alt+Shift+A`;function KNe(){try{return localStorage.getItem(eX)??``}catch{return``}}function qNe(e){try{e.trim()?localStorage.setItem(eX,e.trim()):localStorage.removeItem(eX)}catch{}}function oX(){try{return localStorage.getItem(iX)||`Alt+Shift+A`}catch{return aX}}function sX(e){let t=lX(e)||`Alt+Shift+A`;try{localStorage.setItem(iX,t)}catch{}}function cX(e){window.__piboWebAnnotations?.setShortcut?.(e);try{window.dispatchEvent(new CustomEvent(`pibo:web-annotation-shortcut-changed`,{detail:{shortcut:e}}))}catch{}}function lX(e){return e.replace(/[\u0000-\u001f\u007f]/g,``).trim().slice(0,80)}function JNe(e){if([`Alt`,`Control`,`Meta`,`Shift`].includes(e.key)||!e.altKey&&!e.ctrlKey&&!e.metaKey)return null;let t=e.code?.match(/^Key[A-Z]$/)?e.code.slice(3):e.key===` `?`Space`:e.key.length===1?e.key.toUpperCase():e.key,n=[];return e.ctrlKey&&n.push(`Ctrl`),e.altKey&&n.push(`Alt`),e.shiftKey&&n.push(`Shift`),e.metaKey&&n.push(`Meta`),n.push(t),n.join(`+`)}function uX(e){try{return fX(localStorage.getItem(dX(e)))}catch{return null}}function dX(e){return GNe+e}function fX(e){if(!e)return null;try{return pX(JSON.parse(e))}catch{return null}}function pX(e){if(!e||typeof e!=`object`)return null;let t=e,n=typeof t.piboSessionId==`string`?t.piboSessionId.trim():``;return n?{bindingId:typeof t.bindingId==`string`?t.bindingId:void 0,piboSessionId:n,installed:t.installed!==!1,active:t.active===!0,toolbarExpanded:t.toolbarExpanded===!0,mode:typeof t.mode==`string`?t.mode:void 0,reason:typeof t.reason==`string`?t.reason:void 0,updatedAt:typeof t.updatedAt==`string`?t.updatedAt:void 0}:null}function YNe(e){try{let t=hX(localStorage.getItem(tX));if(t.length||!e)return t;let n=nX+e,r=hX(localStorage.getItem(n));return r.length&&(localStorage.setItem(tX,JSON.stringify(r)),localStorage.removeItem(n)),r}catch{return[]}}function mX(e,t){try{let n=[...new Set(t.filter(e=>e.trim()))].slice(0,5);n.length?localStorage.setItem(tX,JSON.stringify(n)):localStorage.removeItem(tX),e&&localStorage.removeItem(nX+e)}catch{}}function hX(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`&&!!e.trim()).slice(0,5):[]}catch{return[]}}function XNe(){try{return localStorage.getItem(rX)===`true`}catch{return!1}}function ZNe(e){try{localStorage.setItem(rX,String(e))}catch{}}var gX=`web-annotations-dialog`,_X=`web-annotations-session-panel-details`;function vX({piboSessionId:e,annotations:t,selectedIds:n,loading:r,error:i,collapsed:a,onRefresh:o,onToggle:s,onClear:c,onCollapse:l,onClose:u}){return e?(0,W.jsxs)(`section`,{className:`border-t border-slate-800 bg-[#101d22] px-3 py-2 sm:px-4`,"data-pibo-debug":`web-annotations-session-panel`,"data-pibo-session-id":e,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,W.jsx)(`div`,{className:`min-w-0`,children:(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-bold uppercase tracking-wider text-[#11a4d4]`,children:`Web annotations`}),(0,W.jsx)(`span`,{className:`rounded-sm border border-slate-700 px-1.5 py-0.5 text-[10px] text-slate-400`,children:t.length}),n.length?(0,W.jsxs)(`span`,{className:`rounded-sm border border-[#11a4d4]/50 px-1.5 py-0.5 text-[10px] text-[#11a4d4]`,children:[n.length,` attached`]}):null]})}),(0,W.jsxs)(`div`,{className:`ml-auto flex shrink-0 items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:o,disabled:r,title:`Refresh annotations`,"aria-label":`Refresh annotations`,className:`inline-flex h-8 w-8 items-center justify-center rounded-sm border border-slate-700 text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50 sm:h-7 sm:w-7`,"data-pibo-debug":`web-annotations-refresh`,children:(0,W.jsx)(il,{size:12,className:r?`animate-spin`:void 0})}),(0,W.jsx)(`button`,{type:`button`,onClick:c,disabled:r||!t.length,title:`Clear visible annotations`,"aria-label":`Clear visible annotations`,className:`inline-flex h-8 w-8 items-center justify-center rounded-sm border border-slate-700 text-slate-300 hover:border-red-500 hover:text-red-300 disabled:opacity-50 sm:h-7 sm:w-7`,children:(0,W.jsx)(Sl,{size:12})}),(0,W.jsx)(`button`,{type:`button`,onClick:l,title:a?`Expand annotations panel`:`Collapse annotations panel`,"aria-label":`Web annotations details`,"aria-expanded":!a,"aria-controls":_X,className:`inline-flex h-8 w-8 items-center justify-center rounded-sm border border-slate-700 text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] sm:h-7 sm:w-7`,children:a?(0,W.jsx)(Zs,{size:12}):(0,W.jsx)(Js,{size:12})}),(0,W.jsx)(`button`,{type:`button`,onClick:u,title:`Hide annotations panel`,"aria-label":`Hide annotations panel`,className:`inline-flex h-8 w-8 items-center justify-center rounded-sm border border-slate-700 text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] sm:h-7 sm:w-7`,children:(0,W.jsx)(Al,{size:12})})]})]}),(0,W.jsxs)(`div`,{id:_X,hidden:a,children:[(0,W.jsx)(`div`,{className:`text-[11px] text-slate-500`,children:`Global annotation list. Selected attachments follow you when switching sessions.`}),i?(0,W.jsx)(`div`,{className:`rounded-sm border border-red-900 bg-red-950/40 px-3 py-2 text-xs text-red-200`,"data-pibo-debug":`web-annotations-error`,children:CX(i,220)}):r&&!t.length?(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0e1116] px-3 py-2 text-xs text-slate-400`,"data-pibo-debug":`web-annotations-loading`,children:`Loading annotations…`}):t.length?(0,W.jsx)(`div`,{className:`mt-2 grid max-h-[min(40svh,18rem)] grid-cols-1 gap-2 overflow-y-auto pr-1 sm:max-h-56 sm:grid-cols-[repeat(auto-fill,minmax(16rem,1fr))]`,"data-pibo-debug":`web-annotations-list`,children:t.map((e,t)=>{let r=n.includes(e.id),i=CX(e.primaryTarget||e.label||e.selector||e.targetKind||`target`,64),a=`${t+1}: ${i}`;return(0,W.jsxs)(`div`,{"data-pibo-debug":`web-annotation-chip`,"data-web-annotation-id":e.id,"data-web-annotation-session-id":e.piboSessionId,"data-web-annotation-selected":r?`true`:`false`,className:`min-w-0 rounded-sm border px-3 py-2 text-xs ${r?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#0e1116]`}`,children:[(0,W.jsxs)(`div`,{className:`mb-1 flex items-center justify-between gap-2`,children:[(0,W.jsxs)(`span`,{className:`min-w-0 truncate font-mono text-[11px] text-slate-500`,children:[e.status,` · `,e.targetKind]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>s(e.id),"aria-pressed":r,"aria-label":`Include web annotation ${a}`,title:`${r?`Detach`:`Attach`} web annotation ${a}`,className:`inline-flex h-8 shrink-0 items-center gap-1 rounded-sm border px-2 text-[11px] sm:h-6 sm:px-1.5 ${r?`border-[#11a4d4] text-[#11a4d4]`:`border-slate-700 text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4]`}`,children:[r?(0,W.jsx)(Al,{size:11}):(0,W.jsx)(tl,{size:11}),` `,r?`Detach`:`Attach`]})]}),(0,W.jsx)(`div`,{className:`truncate text-slate-200`,title:e.primaryTarget||e.label||e.selector||e.id,children:CX(e.primaryTarget||e.label||e.selector||e.id,120)}),e.piboContext?(0,W.jsx)(`div`,{className:`truncate font-mono text-[11px] text-[#11a4d4]`,title:e.piboContext,children:CX(e.piboContext,140)}):null,(0,W.jsx)(`div`,{className:`truncate font-mono text-[11px] text-slate-500`,title:e.url,children:SX(e.url)}),(0,W.jsxs)(`div`,{className:`truncate font-mono text-[11px] text-slate-500`,title:rPe(e),children:[`Source `,nPe(e)]}),(0,W.jsx)(`div`,{className:`mt-1 line-clamp-2 text-slate-400`,title:e.note,children:CX(e.note,180)}),(0,W.jsx)(`div`,{className:`mt-1 text-[11px] text-slate-600`,children:iPe(e.createdAt)})]},e.id)})}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0e1116] px-3 py-2 text-xs text-slate-500`,"data-pibo-debug":`web-annotations-empty`,children:`No open annotations for this session.`})]})]}):null}function QNe({piboSessionId:e,piboRoomId:t,disabled:n,panelVisible:r,onShowPanel:i,onHidePanel:a,onError:o}){let[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(``),[d,f]=(0,U.useState)(()=>KNe()),[p,m]=(0,U.useState)([]),[h,g]=(0,U.useState)(`idle`),[_,v]=(0,U.useState)(!1),[y,b]=(0,U.useState)(null),x=(0,U.useRef)(null),S=(0,U.useRef)(null),C=()=>{c(!1),x.current?.focus()};(0,U.useEffect)(()=>{n&&c(!1)},[n]),(0,U.useEffect)(()=>{if(!s||n)return;S.current?.focus();let e=e=>{e.key===`Escape`&&(e.preventDefault(),C())};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[s,n]),(0,U.useEffect)(()=>{qNe(d)},[d]);let w=async()=>{if(e){g(`loading`),b(null);try{let e=await UNe(d);m(e.targets.filter(e=>e.type===`page`||e.attachable)),g(`loaded`)}catch(e){let t=bX(e,`CDP unavailable`);m([]),g(`error`),b({kind:`error`,message:t}),o(t)}}},T=async n=>{if(!e)throw Error(`No active session context`);return WNe(n.binding.id,yX({piboSessionId:e,piboRoomId:t,cdpUrl:d,annotationShortcut:oX()}))},E=async()=>{if(!(!e||_)){i(),v(!0),b({kind:`info`,message:`Injecting annotation overlay into this Pibo page…`});try{let n=await QY({piboSessionId:e,piboRoomId:t,url:window.location.href,title:document.title,sameOrigin:!0,annotationShortcut:oX()});if(!n.overlay)throw Error(`Overlay config missing from same-origin binding response`);await tPe(n.overlay),b({kind:`success`,message:`Annotation overlay is ready on this Pibo page. Open the overlay controls or use the shortcut to start annotating.`}),o(null)}catch(e){let t=bX(e,`Current-page annotation failed`);b({kind:`error`,message:t}),o(t)}finally{v(!1)}}},D=async()=>{if(!e||_)return;i();let n=l.trim();if(!n){b({kind:`error`,message:`URL is required`});return}if(ePe(n)){let e=`That looks like a CDP endpoint. Put it in CDP URL, and put the page you want to annotate in Annotate URL.`;b({kind:`error`,message:e}),o(e);return}v(!0),b({kind:`info`,message:`Opening target and injecting overlay…`});try{let r=await QY(yX({piboSessionId:e,piboRoomId:t,url:n,cdpUrl:d})),i=await T(r);b({kind:`success`,message:`Annotation overlay injected for ${xX(i.target??r.target,i.binding.url)}`}),u(``),o(null)}catch(e){let t=bX(e,`Annotation failed`);b({kind:`error`,message:t}),o(t)}finally{v(!1)}},O=async n=>{if(!(!e||_)){i(),v(!0),b({kind:`info`,message:`Binding selected target and injecting overlay…`});try{let r=await QY(yX({piboSessionId:e,piboRoomId:t,targetId:n.id,cdpUrl:d})),i=await T(r);b({kind:`success`,message:`Annotation overlay injected for ${xX(i.target??n,i.binding.url)}`}),o(null)}catch(e){let t=bX(e,n.attachable?`Target annotation failed`:`Target not attachable`);b({kind:`error`,message:t}),o(t)}finally{v(!1)}}};return(0,W.jsxs)(`div`,{className:`relative`,"data-pibo-debug":`web-annotations-entry`,"data-pibo-session-id":e??void 0,children:[(0,W.jsx)($Ne,{buttonRef:x,onClick:()=>{n||(c(e=>!e),r||i())},title:n?`Select an active session to annotate a web page`:r?`Web Annotations`:`Show Web Annotations`,ariaLabel:`Web Annotations`,ariaHaspopup:`dialog`,ariaExpanded:s,ariaControls:gX,disabled:n,active:s||r,children:(0,W.jsx)(Fs,{size:14})}),s&&!n?(0,W.jsxs)(`div`,{id:gX,className:`fixed inset-x-2 bottom-3 z-40 max-h-[calc(100svh-1.5rem)] overflow-y-auto rounded-sm border border-slate-700 bg-[#0e1116] p-3 text-sm shadow-xl sm:absolute sm:inset-auto sm:right-0 sm:top-full sm:bottom-auto sm:mt-2 sm:w-[min(420px,calc(100vw-24px))] sm:max-h-[calc(100svh-5rem)]`,role:`dialog`,"aria-label":`Web Annotations`,children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-xs font-bold uppercase tracking-wider text-[#11a4d4]`,children:`Web Annotations`}),(0,W.jsx)(`div`,{className:`mt-1 text-xs text-slate-500`,children:`Start an inactive overlay for this Pibo page, or bind a CDP target for external pages.`})]}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:r?a:i,className:`rounded-sm p-1 text-slate-500 hover:bg-slate-800 hover:text-slate-200`,"aria-label":r?`Hide annotation list`:`Show annotation list`,title:r?`Hide annotation list`:`Show annotation list`,children:(0,W.jsx)(sl,{size:14})}),(0,W.jsx)(`button`,{type:`button`,onClick:C,className:`rounded-sm p-1 text-slate-500 hover:bg-slate-800 hover:text-slate-200`,"aria-label":`Close Web Annotations panel`,children:(0,W.jsx)(Al,{size:14})})]})]}),(0,W.jsx)(`button`,{ref:S,type:`button`,onClick:()=>void E(),disabled:_,className:`mb-3 h-10 w-full rounded-sm bg-emerald-600 px-3 text-xs font-medium text-white hover:bg-emerald-500 disabled:opacity-50 sm:h-9`,"data-pibo-debug":`web-annotations-current-page`,children:`Annotate this Pibo page`}),(0,W.jsx)(`label`,{className:`mb-2 block text-[11px] font-bold uppercase tracking-wider text-slate-500`,htmlFor:`web-annotation-url`,children:`Annotate URL via CDP`}),(0,W.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 sm:grid-cols-[1fr_auto]`,children:[(0,W.jsx)(`input`,{id:`web-annotation-url`,value:l,onChange:e=>u(e.target.value),onKeyDown:e=>{e.key===`Enter`&&D()},placeholder:`http://localhost:5173`,disabled:_,className:`h-10 min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 text-base text-slate-100 outline-none focus:border-[#11a4d4] disabled:opacity-60 sm:h-9 sm:text-xs`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void D(),disabled:_||!l.trim(),className:`h-10 rounded-sm bg-[#11a4d4] px-3 text-xs font-medium text-white disabled:opacity-50 sm:h-9`,children:`Annotate`})]}),(0,W.jsx)(`label`,{className:`mt-3 mb-1 block text-[11px] font-bold uppercase tracking-wider text-slate-500`,htmlFor:`web-annotation-cdp-url`,children:`CDP URL (optional)`}),(0,W.jsx)(`input`,{id:`web-annotation-cdp-url`,value:d,onChange:e=>f(e.target.value),placeholder:`Use gateway default`,disabled:_,className:`h-10 w-full rounded-sm border border-slate-800 bg-[#151f24] px-2 font-mono text-base text-slate-300 outline-none focus:border-[#11a4d4] disabled:opacity-60 sm:h-8 sm:text-[11px]`}),(0,W.jsxs)(`div`,{className:`mt-3 flex items-center justify-between gap-2`,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-bold uppercase tracking-wider text-slate-500`,children:`Existing targets`}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>void w(),disabled:_||h===`loading`,className:`inline-flex h-7 items-center gap-1 rounded-sm border border-slate-700 px-2 text-[11px] text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:[(0,W.jsx)(il,{size:12,className:h===`loading`?`animate-spin`:void 0}),` Refresh`]})]}),(0,W.jsxs)(`div`,{className:`mt-2 max-h-[min(34svh,14rem)] overflow-auto rounded-sm border border-slate-800 sm:max-h-56`,children:[h===`idle`?(0,W.jsx)(`div`,{className:`px-3 py-3 text-xs text-slate-500`,children:`Refresh to list reachable browser targets.`}):null,h===`loading`?(0,W.jsx)(`div`,{className:`px-3 py-3 text-xs text-slate-400`,children:`Loading targets…`}):null,h===`loaded`&&!p.length?(0,W.jsx)(`div`,{className:`px-3 py-3 text-xs text-slate-500`,children:`No attachable browser targets found.`}):null,p.map(e=>(0,W.jsxs)(`div`,{className:`grid grid-cols-1 gap-2 border-b border-slate-800 px-3 py-2 last:border-b-0 sm:grid-cols-[1fr_auto]`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`truncate text-xs text-slate-200`,title:e.title||e.url,children:CX(e.title||`Untitled target`,120)}),(0,W.jsx)(`div`,{className:`truncate font-mono text-[11px] text-slate-500`,title:e.url,children:CX(e.url||e.id,160)})]}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void O(e),disabled:_||!e.attachable,title:e.attachable?`Attach selected target`:`Target is not attachable`,className:`h-9 rounded-sm border border-slate-700 px-2 text-[11px] text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-40 sm:h-8`,children:`Attach`})]},e.id))]}),y?(0,W.jsx)(`div`,{className:`mt-2 rounded-sm border px-2 py-2 text-xs ${y.kind===`error`?`border-red-900 bg-red-950/40 text-red-200`:y.kind===`success`?`border-emerald-900/60 bg-emerald-950/30 text-emerald-300`:`border-slate-700 bg-[#151f24] text-slate-300`}`,children:y.message}):null]}):null]})}function $Ne({buttonRef:e,title:t,ariaLabel:n,ariaHaspopup:r,ariaExpanded:i,ariaControls:a,disabled:o,active:s,onClick:c,children:l}){return(0,W.jsx)(`button`,{ref:e,type:`button`,onClick:c,disabled:o,title:t,"aria-label":n,"aria-haspopup":r,"aria-expanded":i,"aria-controls":a,className:`h-8 w-8 inline-flex items-center justify-center border rounded-sm transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${s?`border-[#11a4d4] bg-[#11a4d4]/10 text-[#11a4d4]`:`border-slate-700 text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`}`,children:l})}function yX(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e&&e.trim()))}function ePe(e){try{let t=new URL(e);return t.port===`56663`||t.pathname.startsWith(`/json/`)}catch{return!1}}function tPe(e){return new Promise((t,n)=>{let r=window;try{r.__piboWebAnnotations?.remove?.(),r.__piboWebAnnotationConfig=e;let i=document.createElement(`script`);i.src=`/apps/web-annotations/overlay.js?ts=${Date.now()}`,i.async=!0,i.onload=()=>t(),i.onerror=()=>n(Error(`Could not load Web Annotation overlay script`)),document.head.appendChild(i)}catch(e){n(e)}})}function bX(e,t){let n=aPe(e);return!n||n===`undefined`?t:/target.*not found|selected cdp target/i.test(n)?`Target not found: ${n}`:/inject|overlay|evaluation/i.test(n)?`Injection failed: ${n}`:/cdp endpoint.*is unreachable|failed to fetch|fetch failed|chrome target discovery|cdp unavailable|econnrefused|connect/i.test(n)?`CDP unavailable: ${n}`:`${t}: ${n}`}function xX(e,t){let n=e?.url||t||e?.title||`target`;return SX(e?.title||n)}function SX(e){try{let t=new URL(e);return`${t.host}${t.pathname===`/`?``:t.pathname}`}catch{return CX(e,80)}}function nPe(e){return e.piboRoomId?`${CX(e.piboSessionId,24)} · room ${CX(e.piboRoomId,18)}`:CX(e.piboSessionId,44)}function rPe(e){return e.piboRoomId?`Session ${e.piboSessionId} in room ${e.piboRoomId}`:`Session ${e.piboSessionId}`}function CX(e,t){return e.length>t?`${e.slice(0,Math.max(0,t-1))}…`:e}function iPe(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString(void 0,{dateStyle:`short`,timeStyle:`short`})}function aPe(e){return e instanceof Error?e.message:String(e)}function oPe(e){return!!e.workflowRunId||e.state===`workflow`||e.workflowId!==`simple-chat`}function sPe(e,t){return{workflowId:e.workflowId,state:lPe(e,t),...e.workflowRunId?{workflowRunId:e.workflowRunId}:{}}}function cPe({summary:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`text-slate-600`,children:`·`}),(0,W.jsxs)(`span`,{className:`min-w-0 max-w-52 truncate rounded border border-[#11a4d4]/35 bg-[#11a4d4]/10 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-[#11a4d4]`,title:e.workflowId,children:[`workflow `,e.workflowId]}),(0,W.jsxs)(`span`,{className:uPe(e.state),children:[`state `,e.state]}),e.workflowRunId?(0,W.jsxs)(`span`,{className:`min-w-0 max-w-40 truncate rounded border border-slate-700 bg-slate-900/40 px-1.5 py-0.5 text-[10px] text-slate-400`,title:e.workflowRunId,children:[`run `,dPe(e.workflowRunId)]}):null]})}function lPe(e,t){return e.archived?`archived`:e.state&&e.state!==`workflow`?e.state.replace(/_/g,` `):t===`running`?`running`:t===`error`?`failed`:e.state?e.state.replace(/_/g,` `):e.workflowRunId?`workflow`:e.kind}function uPe(e,t=!1){let n=e.toLowerCase(),r=`shrink-0 rounded border px-1.5 py-0.5 text-[10px] uppercase tracking-wide`;return t?`${r} border-slate-700 text-slate-500`:n.includes(`failed`)||n.includes(`error`)?`${r} border-red-500/40 text-red-300 bg-red-500/10`:n.includes(`waiting`)?`${r} border-amber-500/40 text-amber-300 bg-amber-500/10`:n.includes(`complete`)||n.includes(`done`)?`${r} border-emerald-500/40 text-emerald-300 bg-emerald-500/10`:`${r} border-[#11a4d4]/40 text-[#11a4d4] bg-[#11a4d4]/10`}function dPe(e){return e.length>18?`${e.slice(0,10)}…${e.slice(-6)}`:e}function fPe({title:e,contextKind:t,contextLabel:n,headerPiboSessionId:r,piboSessionId:i,piboRoomId:a,webAnnotationsDisabled:o,webAnnotationsPanelRendered:s,workflowHeader:c,sessionViewId:l,sessionViews:u,currentSessionView:d,allowedSessionViewIds:f,extraViewTabs:p,activeViewId:m,desktopTerminalOnly:h=!1,terminalFullscreenAvailable:g,onEnterTerminalFullscreen:_,onOpenSessionWindow:v,showRawEvents:y,showThinking:b,expandThinking:x,toolDisplayMode:S,toolIntentSupported:C,onToolDisplayModeChange:w,onShowWebAnnotationsPanel:T,onHideWebAnnotationsPanel:E,onSelectSessionView:D,onToggleRawEvents:O,onToggleThinking:k,onToggleExpandThinking:A,onError:j}){let[M,N]=(0,U.useState)(null),P=(0,U.useRef)(void 0),F=M===r,I=m??l,L=t===`project`?`Project`:`Room`,R=(0,U.useMemo)(()=>f?new Set(f):null,[f]);(0,U.useEffect)(()=>()=>{P.current&&window.clearTimeout(P.current)},[]);let z=()=>{r&&(Gq(r).catch(()=>void 0),N(r),P.current&&window.clearTimeout(P.current),P.current=window.setTimeout(()=>N(null),900))};return(0,W.jsxs)(`div`,{className:`h-14 px-4 bg-[#151f24] border-b border-slate-800 flex items-center justify-between max-[980px]:h-auto max-[980px]:flex-wrap max-[980px]:py-2 max-[980px]:gap-2`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsx)(`h1`,{className:`text-base font-semibold truncate`,children:e}),(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5 font-mono text-[11px] text-slate-500`,children:[(0,W.jsxs)(`span`,{"data-pibo-debug":`session-context`,"data-pibo-context-kind":t,title:`${L}: ${n}`,"aria-label":`${L}: ${n}`,className:`inline-flex min-w-0 max-w-full items-center gap-1.5`,children:[(0,W.jsx)(`span`,{className:`shrink-0 uppercase tracking-wide text-[#11a4d4]`,children:L}),(0,W.jsx)(`span`,{className:`truncate text-slate-400`,children:n})]}),r?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`text-slate-600`,children:`·`}),(0,W.jsx)(`button`,{type:`button`,onMouseDown:e=>e.preventDefault(),onClick:()=>void z(),title:F?`Copied Pibo session ID`:`Copy Pibo session ID`,"aria-label":F?`Copied Pibo session ID`:`Copy Pibo session ID`,className:`min-w-0 max-w-48 truncate rounded-sm px-1 font-mono underline-offset-2 transition-colors duration-150 focus:outline-none focus:ring-1 focus:ring-[#11a4d4] ${F?`bg-emerald-500/15 text-emerald-300 ring-1 ring-emerald-400/50`:`text-slate-400 hover:text-[#11a4d4] hover:underline`}`,children:r})]}):null,c?(0,W.jsx)(cPe,{summary:c}):null]})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 max-[980px]:w-full max-[980px]:flex-wrap max-[980px]:gap-1`,children:[h?null:(0,W.jsx)(QNe,{piboSessionId:i,piboRoomId:a,disabled:o,panelVisible:s,onShowPanel:T,onHidePanel:E,onError:j}),v?(0,W.jsx)(`button`,{type:`button`,onClick:v,title:`Open selected session in new window`,"aria-label":`Open selected session in new window`,"data-pibo-debug":`open-session-window`,className:`h-8 w-8 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 transition-colors hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(tl,{size:15})}):null,(0,W.jsxs)(`select`,{value:S,onChange:e=>w(e.target.value),title:`Tool display mode`,"aria-label":`Tool display mode`,"data-pibo-debug":`tool-display-mode`,className:`h-8 rounded-sm border border-slate-700 bg-[#0e1116] px-2 text-[11px] font-bold uppercase tracking-wide text-slate-300 outline-none focus:border-[#11a4d4]`,children:[(0,W.jsx)(`option`,{value:`default`,children:`Tools: Default`}),(0,W.jsx)(`option`,{value:`hide`,children:`Tools: Hide`}),(0,W.jsx)(`option`,{value:`slim`,children:`Tools: Slim`}),(0,W.jsx)(`option`,{value:`intent`,disabled:!C,children:`Tools: Intent`})]}),h?null:(0,W.jsxs)(`div`,{role:`group`,"aria-label":`Session views`,className:`flex items-center rounded-sm border border-slate-700 bg-[#0e1116] p-0.5`,children:[u.map(e=>{let t=!!(R&&!R.has(e.id));return(0,W.jsx)(`button`,{type:`button`,onClick:()=>{t||D(e.id)},disabled:t,title:t?`Project session routing uses the ${d.label} view for this session kind.`:e.description??e.label,"aria-label":t?`${e.label} view unavailable for this Project session kind`:`Switch to ${e.label} view`,"aria-pressed":I===e.id,className:`min-w-20 px-2.5 py-1 text-[11px] font-bold tracking-wide max-[980px]:min-w-0 max-[980px]:px-1.5 disabled:cursor-not-allowed disabled:text-slate-600 ${I===e.id?`bg-[#11a4d4]/10 text-[#11a4d4]`:`text-slate-400 hover:text-[#11a4d4] disabled:hover:text-slate-600`}`,children:e.label},e.id)}),p?.map(e=>{let t=e.active??I===e.id;return(0,W.jsx)(`button`,{type:`button`,onClick:()=>{e.disabled||e.onSelect()},disabled:e.disabled,title:e.description??e.label,"aria-label":e.disabled?`${e.label} view unavailable`:`Switch to ${e.label} view`,"aria-pressed":t,className:`min-w-20 px-2.5 py-1 text-[11px] font-bold tracking-wide max-[980px]:min-w-0 max-[980px]:px-1.5 disabled:cursor-not-allowed disabled:text-slate-600 ${t?`bg-[#11a4d4]/10 text-[#11a4d4]`:`text-slate-400 hover:text-[#11a4d4] disabled:hover:text-slate-600`}`,children:e.label},e.id)})]}),g&&_?(0,W.jsx)(`button`,{type:`button`,onClick:_,title:`Enter Terminal fullscreen`,"aria-label":`Enter Terminal fullscreen`,"data-pibo-debug":`enter-terminal-fullscreen`,className:`h-8 w-8 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 transition-colors hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(zc,{size:14})}):null,h?null:(0,W.jsx)(wX,{onClick:O,title:y?`Hide Raw Events`:`Show Raw Events`,ariaLabel:`Raw Events`,ariaControls:`raw-events-inspector`,active:y,children:(0,W.jsx)(Bs,{size:14})}),(0,W.jsx)(wX,{onClick:k,title:b?`Hide Thinking`:`Show Thinking`,ariaLabel:`Thinking`,active:b,children:b?(0,W.jsx)(zs,{size:14}):(0,W.jsx)(pc,{size:14})}),b?(0,W.jsx)(wX,{onClick:A,title:x?`Collapse Thinking`:`Expand Thinking`,ariaLabel:`Thinking expansion`,active:x,children:x?(0,W.jsx)(Js,{size:14}):(0,W.jsx)(Zs,{size:14})}):null]})]})}function wX({title:e,ariaLabel:t,ariaControls:n,active:r,onClick:i,children:a}){return(0,W.jsx)(`button`,{type:`button`,onClick:i,title:e,"aria-label":t,"aria-controls":n,"aria-pressed":r,className:`h-8 w-8 inline-flex items-center justify-center border rounded-sm transition-colors ${r?`border-[#11a4d4] bg-[#11a4d4]/10 text-[#11a4d4]`:`border-slate-700 text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`}`,children:a})}function pPe(e){let t=[];for(let n of e){let e=t[t.length-1];if(e&&mPe(e,n)){e.count+=1,e.createdAt=n.createdAt,e.payload={...DX(e.payload)?e.payload:{},text:`${TX(e.payload)}${TX(n.payload)}`};continue}t.push({...n,count:1})}return t}function mPe(e,t){if(e.type!==t.type||e.type!==`assistant_delta`&&e.type!==`thinking_delta`&&e.type!==`TEXT_MESSAGE_CONTENT`&&e.type!==`REASONING_MESSAGE_CONTENT`)return!1;let n=DX(e.payload)?e.payload:{},r=DX(t.payload)?t.payload:{};return EX(n)===EX(r)}function TX(e){return DX(e)?typeof e.text==`string`?e.text:typeof e.delta==`string`?e.delta:``:``}function EX(e){return e.eventId??e.messageId}function DX(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function OX({traceView:e,eventLimit:t,isFetching:n,visible:r,onLoadOlder:i}){let a=(0,U.useMemo)(()=>r?pPe(e?.rawEvents??[]):[],[e?.rawEvents,r]);return r?(0,W.jsxs)(`aside`,{id:`raw-events-inspector`,"aria-label":`Raw Events`,className:`min-h-0 overflow-auto overscroll-contain bg-[#0e1116] border-l border-slate-800 max-[980px]:fixed max-[980px]:right-0 max-[980px]:top-0 max-[980px]:bottom-0 max-[980px]:z-40 max-[980px]:w-[320px] max-[980px]:max-w-[80vw] max-[980px]:shadow-2xl`,children:[(0,W.jsx)(`div`,{className:`h-11 px-3 border-b border-slate-800 flex items-center text-xs font-bold uppercase tracking-wider`,children:`Raw Events`}),(0,W.jsxs)(`div`,{className:`p-3 flex flex-col gap-2`,children:[e&&a.length>=t?(0,W.jsx)(`button`,{type:`button`,onClick:i,disabled:n,className:`mb-1 rounded-sm border border-slate-700 px-2 py-1 text-xs text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-60`,children:n?`Loading raw events…`:`Load older raw events (${a.length})`}):null,a.slice(-t).reverse().map(e=>(0,W.jsxs)(`div`,{className:`border-l-2 border-[#11a4d4] bg-[#151f24] p-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-[#11a4d4] font-mono text-[11px] mb-1`,children:[(0,W.jsx)(`span`,{children:e.type}),e.count>1?(0,W.jsxs)(`span`,{className:`text-slate-500`,children:[`x`,e.count]}):null]}),(0,W.jsx)(sq,{value:e.payload,showControls:!1})]},e.id))]})]}):null}function hPe({title:e,contextKind:t,contextLabel:n,onOpenSessionWindow:r,onExit:i}){let a=t===`project`?`Project`:`Room`;return(0,W.jsxs)(`div`,{"data-pibo-debug":`terminal-fullscreen-top-bar`,className:`h-7 min-h-7 flex items-center border-b border-slate-600 bg-[#151f24]`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center`,children:[(0,W.jsxs)(`div`,{"data-pibo-debug":`session-context`,"data-pibo-context-kind":t,title:`${a}: ${n}`,"aria-label":`${a}: ${n}`,className:`flex min-w-0 max-w-[45%] shrink-0 items-center gap-1.5 px-2 font-mono text-[10px] leading-none`,children:[(0,W.jsx)(`span`,{className:`shrink-0 uppercase tracking-wide text-[#11a4d4]`,children:a}),(0,W.jsx)(`span`,{className:`truncate text-slate-300`,children:n})]}),(0,W.jsx)(`span`,{className:`shrink-0 text-slate-600`,children:`·`}),(0,W.jsx)(`div`,{className:`min-w-0 flex-1 truncate px-2 text-base font-semibold leading-none`,children:e})]}),r?(0,W.jsx)(`button`,{type:`button`,onClick:r,title:`Open selected session in new window`,"aria-label":`Open selected session in new window`,"data-pibo-debug":`open-session-window`,className:`h-full w-7 shrink-0 inline-flex items-center justify-center text-slate-400 hover:bg-[#11a4d4]/10 hover:text-[#11a4d4]`,children:(0,W.jsx)(tl,{size:14})}):null,(0,W.jsx)(`button`,{type:`button`,onClick:i,title:`Show normal top bar`,"aria-label":`Exit Terminal fullscreen`,className:`h-full w-7 shrink-0 inline-flex items-center justify-center text-slate-400 hover:bg-[#11a4d4]/10 hover:text-[#11a4d4]`,children:(0,W.jsx)(Zc,{size:14})})]})}function gPe({enabled:e,onFilesDropped:t,children:n,className:r,...i}){let a=(0,U.useRef)(0),[o,s]=(0,U.useState)(!1),[c,l]=(0,U.useState)(0),u=c>0;(0,U.useEffect)(()=>{e||(a.current=0,s(!1))},[e]);let d=()=>{a.current=0,s(!1)},f=t=>vPe(t.dataTransfer)?(t.preventDefault(),t.stopPropagation(),t.dataTransfer.dropEffect=e&&!u?`copy`:`none`,!0):!1,p=t=>{!f(t)||!e||u||(a.current+=1,s(!0))},m=e=>{f(e)},h=e=>{!f(e)||a.current===0||(a.current=Math.max(0,a.current-1),a.current===0&&s(!1))},g=async n=>{if(!f(n)||(d(),!e||u))return;let r=yPe(n.dataTransfer);if(r.length){l(r.length);try{await t(r)}finally{l(0)}}},_=u?`uploading`:o?`drag-active`:`idle`;return(0,W.jsxs)(`main`,{...i,"data-pibo-file-drop-state":_,className:`relative ${r??``}`,onDragEnter:p,onDragOver:m,onDragLeave:h,onDragEnd:d,onDrop:g,children:[n,o||u?(0,W.jsx)(_Pe,{uploadingFileCount:c}):null]})}function _Pe({uploadingFileCount:e}){let t=e>0;return(0,W.jsx)(`div`,{"data-pibo-debug":`terminal-file-drop-overlay`,"data-pibo-state":t?`uploading`:`drag-active`,role:`status`,"aria-live":`polite`,className:`pointer-events-none absolute inset-0 z-40 grid place-items-center bg-[#071015]/90 p-6 backdrop-blur-[2px]`,children:(0,W.jsxs)(`div`,{className:`flex max-w-sm flex-col items-center rounded-sm border border-dashed border-[#11a4d4] bg-[#0e1116]/95 px-8 py-7 text-center shadow-2xl shadow-black/50`,children:[t?(0,W.jsx)(Ic,{size:36,className:`mb-3 animate-spin text-[#11a4d4]`,"aria-hidden":`true`}):(0,W.jsx)(wl,{size:36,className:`mb-3 text-[#11a4d4]`,"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`text-sm font-semibold text-slate-100`,children:t?`Uploading ${e} file${e===1?``:`s`}…`:`Drop files to upload`}),(0,W.jsx)(`span`,{className:`mt-1 text-xs leading-5 text-slate-400`,children:t?`Saving to the Pibo uploads directory`:`Images and other files will be attached to your next message.`})]})})}function vPe(e){return Array.from(e.types).includes(`Files`)||Array.from(e.items).some(e=>e.kind===`file`)}function yPe(e){return Array.from(e.files)}function bPe({hideComposer:e=!1,projectModulePanel:t}){return!e&&!t}function xPe({selectedPiboSessionId:e,selectedRoomId:t,fallbackRoomId:n,sessionViewId:r,loadingTrace:i,roomNavigationPending:a=!1,sessionNavigationPending:o=!1,traceError:s,showRawEvents:c,currentTraceView:l,rawEventLimit:u,tracePageFetching:d,onLoadMoreRawEvents:f,terminalFullscreen:p,fullscreenTopBar:m,fullscreenContent:h,hideComposer:g=!1,terminalFileDropEnabled:_,onTerminalFilesDropped:v,onOpenSessionWindow:y,onExitTerminalFullscreen:b,headerProps:x,projectSessionCreatePanel:S,workflowStartPanel:C,projectModulePanel:w,currentSessionView:T,sessionViewProps:E,webAnnotationsPanelRendered:D,webAnnotationsPanelProps:O,runtimeRequestPanel:k,composerProps:A}){let j=a||o&&!l||i;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(gPe,{enabled:_,onFilesDropped:v,"data-pibo-debug":`chat-shell`,"data-pibo-session-id":e??void 0,"data-pibo-room-id":t??n??void 0,"data-pibo-view-id":r,"data-pibo-state":a?`room-loading`:o?`session-loading`:i?`loading`:s?`error`:e?`ready`:`empty`,"data-pibo-terminal-fullscreen":p?`true`:`false`,className:`min-h-0 h-full flex flex-col`,children:[p?m??(0,W.jsx)(hPe,{title:x.title,contextKind:x.contextKind,contextLabel:x.contextLabel,onOpenSessionWindow:y,onExit:b}):(0,W.jsx)(fPe,{...x}),!p&&S?(0,W.jsx)(`div`,{className:`border-b border-slate-800 bg-[#101d22] px-4 py-3`,children:S}):null,!p&&C?(0,W.jsx)(`div`,{className:`border-b border-slate-800 bg-[#101d22] px-4 py-3`,children:C}):null,p&&h?h:!p&&w?w:j?(0,W.jsx)(SPe,{label:a?`Loading room`:`Loading session`}):s&&!l?(0,W.jsx)(`div`,{className:`min-h-0 flex-1 p-4 text-sm text-red-200`,children:s}):T.render({...E,terminalFullscreen:p}),!p&&D?(0,W.jsx)(vX,{...O}):null,k,bPe({hideComposer:g,projectModulePanel:w})?(0,W.jsx)(jNe,{...A}):null]}),(0,W.jsx)(OX,{traceView:l,eventLimit:u,isFetching:d,visible:c&&!p,onLoadOlder:f})]})}function SPe({label:e}){return(0,W.jsx)(`section`,{"data-pibo-debug":`room-navigation-loading`,className:`relative min-w-0 flex-1 overflow-hidden bg-[#0b0b0b] text-[#d4d4d4]`,"aria-live":`polite`,"aria-label":e,children:(0,W.jsx)(`div`,{className:`min-h-0 h-full overflow-hidden font-mono text-[12px] leading-[1.45]`,children:(0,W.jsxs)(`div`,{className:`px-4`,children:[(0,W.jsx)(`div`,{className:`group border-b border-[#141414] py-2`,children:(0,W.jsxs)(`div`,{className:`grid grid-cols-[1.9rem_minmax(0,1fr)] gap-2 leading-[1.45]`,children:[(0,W.jsx)(`span`,{className:`flex items-center text-[#38bdf8]`,children:(0,W.jsx)(`span`,{className:`h-1.5 w-1.5 rounded-full bg-[#38bdf8] animate-pulse`})}),(0,W.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`font-semibold text-[#d4d4d4]`,children:e}),(0,W.jsx)(`span`,{className:`h-2 w-24 rounded-sm bg-[#262626] animate-pulse`})]})]})}),[{kind:`tool`,lines:5},{kind:`markdown`,lines:4},{kind:`command`,lines:4},{kind:`tool`,lines:3},{kind:`markdown`,lines:5}].map((e,t)=>(0,W.jsx)(CPe,{kind:e.kind,lineCount:e.lines},t))]})})})}function CPe({kind:e,lineCount:t}){let n=e===`command`,r=e===`markdown`;return(0,W.jsx)(`div`,{className:`group border-b border-[#141414] py-2 animate-pulse ${n?`bg-[#f59e0b]/5`:``}`,"aria-hidden":`true`,children:Array.from({length:t}).map((e,i)=>(0,W.jsxs)(`div`,{className:`grid grid-cols-[1.9rem_minmax(0,1fr)] gap-2 leading-[1.45]`,children:[(0,W.jsx)(`span`,{className:`flex items-center text-[#737373]`,children:i===0&&!r?(0,W.jsx)(`span`,{className:`h-1.5 w-1.5 rounded-full ${n?`bg-[#f59e0b]`:`bg-[#22c55e]`}`}):i>0&&!r?(0,W.jsx)(`span`,{className:`text-[10px]`,children:`L`}):null}),(0,W.jsx)(`span`,{className:`min-w-0 py-[3px]`,children:i===0?(0,W.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`h-[13px] rounded-sm ${r?`w-56 bg-[#d4d4d4]/45`:n?`w-28 bg-[#f59e0b]/65`:`w-24 bg-[#22c55e]/65`}`}),r?null:(0,W.jsx)(`span`,{className:`h-[13px] w-64 rounded-sm bg-[#262626]`})]}):(0,W.jsx)(`span`,{className:`block h-[10px] rounded-sm bg-[#262626] ${i===t-1?`w-[42%]`:i%2==0?`w-[72%]`:`w-[58%]`}`})})]},i))})}var kX=[`a[href]`,`button:not([disabled])`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`[tabindex]:not([tabindex="-1"])`].join(`,`);function AX({title:e,description:t,onClose:n,initialFocusRef:r,onKeyDown:i,children:a,closeLabel:o=`Close dialog`,closeDisabled:s=!1,maxWidthClassName:c=`max-w-lg`}){let l=(0,U.useId)(),u=(0,U.useId)(),d=(0,U.useRef)(null);(0,U.useEffect)(()=>{let e=document.activeElement instanceof HTMLElement?document.activeElement:null,t=window.requestAnimationFrame(()=>{(r?.current??d.current?.querySelector(kX)??d.current)?.focus()});return()=>{window.cancelAnimationFrame(t),e?.isConnected&&e.focus()}},[r]);let f=e=>{if(e.key===`Escape`){e.preventDefault(),s||n();return}if(e.key!==`Tab`)return;let t=Array.from(d.current?.querySelectorAll(kX)??[]);if(t.length===0){e.preventDefault(),d.current?.focus();return}let r=t[0],i=t[t.length-1],a=document.activeElement;t.includes(a)?e.shiftKey&&a===r?(e.preventDefault(),i.focus()):!e.shiftKey&&a===i&&(e.preventDefault(),r.focus()):(e.preventDefault(),(e.shiftKey?i:r).focus())};return(0,W.jsx)(`div`,{className:`fixed inset-0 z-50 grid place-items-center bg-black/70 p-2 sm:p-4`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":l,"aria-describedby":u,onClick:e=>{!s&&e.target===e.currentTarget&&n()},onKeyDown:e=>{i?.(e),e.defaultPrevented||f(e)},children:(0,W.jsxs)(`div`,{ref:d,tabIndex:-1,className:`max-h-[calc(100dvh-1rem)] w-full ${c} overflow-y-auto rounded-sm border border-slate-700 bg-[#1a262b] text-slate-200 shadow-2xl outline-none sm:max-h-[calc(100dvh-2rem)]`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-slate-800 px-4 py-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`h2`,{id:l,className:`text-sm font-bold uppercase tracking-wider text-slate-100`,children:e}),(0,W.jsx)(`p`,{id:u,className:`mt-1 text-xs text-slate-400`,children:t})]}),(0,W.jsx)(`button`,{type:`button`,onClick:n,disabled:s,"aria-label":o,className:`inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-sm border border-slate-700 text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:cursor-not-allowed disabled:opacity-50`,children:(0,W.jsx)(Al,{size:14})})]}),a]})})}var wPe=5e3,TPe=0,jX=new Map,EPe=0;function DPe(e){let t=jX.get(e);return t||(t={snapshots:[],pending:null,pendingTimer:null},jX.set(e,t)),t}function MX(){if(typeof window<`u`&&window.__piboTraceSnapshotCollectionEnabled===!0)return!0;try{return localStorage.getItem(`pibo.chat.traceDebug`)===`true`}catch{return!1}}function OPe(e){let t=0;for(let n of e)for(let e=0;e<n.length;e++)t=(t<<5)-t+n.charCodeAt(e),t|=0;return t.toString(36)}function NX(e){return OPe([JSON.stringify(e)])}function PX(e){return JSON.stringify({trigger:e.trigger,traceVersion:e.traceVersion,baseTraceVersion:e.baseTraceVersion,latestStreamId:e.latestStreamId,lastRawEventId:e.lastRawEventId,selectedSessionStatus:e.selectedSessionStatus,overlayEventCount:e.overlayEventCount,layers:e.layers.map(e=>[e.kind,e.digest])})}function FX(e){if(!e.pending)return;let t=e.pending;if(t.layers.length===0){e.pending=null;return}let n=e.snapshots.at(-1);(!n||PX(n)!==PX(t))&&(e.snapshots.push(t),e.snapshots.length>wPe&&e.snapshots.shift()),e.pending=null}function IX(e){if(!MX())return;let t=DPe(e.piboSessionId);t.pendingTimer&&=(clearTimeout(t.pendingTimer),null);let n=e.layer&&t.pending?.layers?.find(t=>t.kind===e.layer.kind),r=t.pending&&HX(t.pending.traceVersion,e.traceVersion)&&HX(t.pending.baseTraceVersion,e.baseTraceVersion)&&HX(t.pending.latestStreamId,e.latestStreamId)&&HX(t.pending.lastRawEventId,e.lastRawEventId)&&HX(t.pending.selectedSessionStatus,e.selectedSessionStatus)&&HX(t.pending.overlayEventCount,e.overlayEventCount);if(t.pending&&t.pending.trigger===e.trigger&&t.pending.piboSessionId===e.piboSessionId&&r&&(!n||n.digest===e.layer?.digest)||FX(t),t.pending||={sequence:++EPe,timestamp:Date.now(),piboSessionId:e.piboSessionId,trigger:e.trigger,layers:[],expansionOverrides:e.expansionOverrides,traceVersion:e.traceVersion,baseTraceVersion:e.baseTraceVersion,latestStreamId:e.latestStreamId,lastRawEventId:e.lastRawEventId,selectedSessionStatus:e.selectedSessionStatus,overlayEventCount:e.overlayEventCount},e.layer){let n=t.pending.layers.findIndex(t=>t.kind===e.layer.kind);n>=0?t.pending.layers[n]=e.layer:t.pending.layers.push(e.layer)}e.expansionOverrides!==void 0&&(t.pending.expansionOverrides=e.expansionOverrides),e.traceVersion!==void 0&&(t.pending.traceVersion=e.traceVersion),e.baseTraceVersion!==void 0&&(t.pending.baseTraceVersion=e.baseTraceVersion),e.latestStreamId!==void 0&&(t.pending.latestStreamId=e.latestStreamId),e.lastRawEventId!==void 0&&(t.pending.lastRawEventId=e.lastRawEventId),e.selectedSessionStatus!==void 0&&(t.pending.selectedSessionStatus=e.selectedSessionStatus),e.overlayEventCount!==void 0&&(t.pending.overlayEventCount=e.overlayEventCount),t.pendingTimer=setTimeout(()=>{FX(t),t.pendingTimer=null},TPe)}function LX(e){let t={traceVersion:e.currentTraceView.version,baseTraceVersion:e.baseTraceView?.version,latestStreamId:e.currentTraceView.latestStreamId,lastRawEventId:e.currentTraceView.rawEvents.at(-1)?.id,selectedSessionStatus:e.selectedSessionStatus,overlayEventCount:e.overlayEvents.length};RX(e.piboSessionId,e.trigger,`baseNodes`,e.baseTraceView?.nodes??[],t),kPe(e.piboSessionId,e.trigger,e.overlayEvents,t),RX(e.piboSessionId,e.trigger,`currentNodes`,e.currentTraceView.nodes,t)}function RX(e,t,n,r,i){let a=UX(r).map(NPe);IX({piboSessionId:e,trigger:t,layer:{kind:n,ids:a.map(e=>e.id),digest:NX(a),meta:a},...i})}function kPe(e,t,n,r){let i=n.map(e=>({id:e.id,type:e.type,eventId:e.eventId,eventSequence:e.eventSequence,streamId:e.streamId,streamFrameIndex:e.streamFrameIndex}));IX({piboSessionId:e,trigger:t,layer:{kind:`overlayEvents`,ids:i.map(e=>e.id),digest:NX(i),meta:i},...r})}function APe(e,t,n,r){let i=n.map(e=>({id:e.id,kind:e.kind,status:e.status,sourceNodeIds:[...e.sourceNodeIds],eventId:e.eventId,runId:e.runId,orderSource:e.orderSource,orderStreamId:e.orderStreamId,orderStreamFrameIndex:e.orderStreamFrameIndex}));IX({piboSessionId:e,trigger:t,layer:{kind:`terminalRows`,ids:i.map(e=>e.id),digest:NX(i),meta:i},...r})}function zX(e){let t=jX.get(e);return t?(FX(t),t.snapshots):[]}function jPe(e){let t=jX.get(e);return t?.pending?.sequence??t?.snapshots.at(-1)?.sequence}function BX(e){if(e)return JSON.stringify({piboSessionId:e,snapshots:zX(e)},null,2);let t={};for(let[e,n]of jX)FX(n),t[e]=n.snapshots;return JSON.stringify(t,null,2)}function MPe(e){if(e){VX(jX.get(e)),jX.delete(e);return}for(let e of jX.values())VX(e);jX.clear()}function VX(e){e?.pendingTimer&&(clearTimeout(e.pendingTimer),e.pendingTimer=null)}function HX(e,t){return t===void 0||e===void 0||e===t}function UX(e){return e.flatMap(e=>[e,...UX(e.children??[])])}function NPe(e){let t=FPe(e);return{id:e.id,type:e.type,status:e.status,parentId:e.parentId,childIds:e.children.map(e=>e.id),entryId:e.entryId,eventId:e.eventId,toolCallId:e.toolCallId,runId:e.runId,stableKey:e.stableKey,source:e.source,orderKey:e.orderKey,contentLength:t.length,contentKind:PPe(t)}}function PPe(e){return e.startsWith(`<pibo_run_notification>`)?`pibo-run-notification`:e.startsWith(`<pibo_goal_continuation>`)?`pibo-goal-continuation`:e.startsWith(`<pibo_`)?`pibo-system`:`message`}function FPe(e){return typeof e.output==`string`?e.output:typeof e.summary==`string`?e.summary:e.output&&typeof e.output==`object`&&`text`in e.output&&typeof e.output.text==`string`?e.output.text:``}typeof window<`u`&&(window.__piboTraceSnapshots={exportAsJson:e=>{let t=BX(e),n=new Blob([t],{type:`application/json`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`trace-snapshots-${e??`all`}-${Date.now()}.json`,i.click(),URL.revokeObjectURL(r)},getSnapshots:zX,getLatestSequence:jPe,clearSnapshots:MPe,exportSnapshots:BX});function WX(e){let t=!1,n=e.map(e=>e.children.length?(t=!0,{...e,children:WX(e.children)}):e);return IPe(n)?t?n:[...e]:[...n].sort(GX)}function IPe(e){for(let t=1;t<e.length;t+=1)if(GX(e[t-1],e[t])>0)return!1;return!0}function GX(e,t){if(!e.orderKey&&!t.orderKey)return LPe(e,t);let n=Wu(e.orderKey,t.orderKey);return n===0?e.id.localeCompare(t.id):n}function LPe(e,t){let n=KX(e.startedAt),r=KX(t.startedAt);if(n!==r){if(n===void 0)return 1;if(r===void 0)return-1;let e=n.localeCompare(r);if(e!==0)return e}return e.id.localeCompare(t.id)}function KX(e){return e!==void 0&&Number.isFinite(Date.parse(e))?e:void 0}function qX(e){let t=[],n=[...e].reverse();for(;n.length;){let e=n.pop();if(e){t.push(e);for(let t=e.children.length-1;t>=0;--t)n.push(e.children[t])}}return t}function RPe(e){let t=new Map;for(let n of e)t.set(n.id,{...n,children:[...n.children]});let n=new Set;for(let e of t.values()){if(!e.parentId)continue;let r=t.get(e.parentId);r&&(r.children.push(e),n.add(e.id))}return WX([...t.values()].filter(e=>!n.has(e.id)))}var JX=`tool-invocation:`,YX=`history-tool:`,zPe=`tool:`,XX=`event-tool`;function ZX(e,t,n){let r=JSON.stringify([XX,t,n]);return`${JX}${encodeURIComponent(JSON.stringify([e,r]))}`}function QX(e){if(e.startsWith(zPe)){let t=e.slice(5);return t?{toolCallId:t}:void 0}let t=e.startsWith(JX)?JX:e.startsWith(YX)?YX:void 0;if(t)try{let n=JSON.parse(decodeURIComponent(e.slice(t.length)));if(!Array.isArray(n)||n.length!==2||typeof n[0]!=`string`||n[0].length===0||typeof n[1]!=`string`)return;let r=JSON.parse(n[1]);if(!Array.isArray(r)||r.length!==3||r[0]!==XX||typeof r[1]!=`string`||r[1].length===0||!Number.isSafeInteger(r[2])||Number(r[2])<0)return;let i={toolCallId:n[0],qualifier:{eventId:r[1],invocationOrdinal:Number(r[2])}},a=ZX(i.toolCallId,i.qualifier.eventId,i.qualifier.invocationOrdinal);return a===e||a.replace(JX,YX)===e?i:void 0}catch{return}}function BPe(e,t,n,r){if(!$X(t))return;let i=HPe(n),a=r.get(e)?.filter(e=>t===`pibo_agents_send_message`?e.metadata?.subagentToolName===t&&(!i||e.metadata?.subagentName===i):e.metadata?.subagentToolName===t)??[],o=UPe(n);return o?a.find(e=>e.metadata?.threadKey===o)?.id:a.length===1?a[0].id:void 0}function $X(e){return e===`pibo_agents_send_message`||e.startsWith(`pibo_subagent_`)}function VPe(e){return e===`pibo_agents_send_message`?`agent`:e.slice(14)}function eZ(e){return`args`in e&&e.args&&typeof e.args==`object`&&!Array.isArray(e.args)?e.args:void 0}function HPe(e){let t=eZ(e)?.name;return typeof t==`string`&&t.trim()?t.trim():void 0}function UPe(e){let t=eZ(e)?.threadKey;return typeof t==`string`&&t.trim()?t.trim():void 0}function tZ(e,t,n,r){let i=GPe(e,t,n,r);if(!i)return;let a=e.children.find(e=>e.id===i.id);if(a){KPe(a,i),a.runId=i.runId??a.runId;return}e.children.push(i)}function WPe(e){let t=new Map;for(let n of qX(e)){let e=rZ(n.output);if(!e)continue;let r=aZ(e.runId);r&&t.set(r,{snapshot:e,completedAt:aZ(e.completedAt)??aZ(e.updatedAt)??n.completedAt})}for(let n of qX(e)){if(n.type!==`agent.async`||!n.runId)continue;let e=t.get(n.runId);if(!e)continue;let r=aZ(e.snapshot.status);(r===`completed`||r===`cancelled`||r===`failed`||r===`timed_out`)&&(n.status=r===`failed`||r===`timed_out`?`error`:`done`,n.completedAt=e.completedAt??n.completedAt,n.output=e.snapshot,(r===`failed`||r===`timed_out`)&&(n.error=aZ(e.snapshot.summary)??n.error))}}function GPe(e,t,n,r){if(!nZ(e))return;let i=rZ(e.output),a=oZ(e.input)?e.input:{},o=aZ(i?.toolName)??aZ(a.toolName)??r?.title;if(!o||!$X(o))return;let s=a.arguments,c=aZ(r?.summary)??(oZ(s)?aZ(s.name):void 0)??VPe(o),l=aZ(i?.runId),u=aZ(i?.status),d=aZ(i?.completionPolicy)??aZ(a.completionPolicy);return{id:`${e.id}:async-agent`,parentId:e.id,piboSessionId:t,eventId:e.eventId,toolCallId:e.toolCallId,runId:l,type:`agent.async`,title:c,status:qPe(e,u),startedAt:r?.startedAt??n??e.startedAt,completedAt:u===`completed`||u===`cancelled`||u===`failed`||u===`timed_out`?e.completedAt:void 0,summary:`Started by ${e.title}`,input:{startedBy:e.title,startToolCallId:e.toolCallId,toolName:o,subagentName:c,runId:l,completionPolicy:d,arguments:s,threadKey:oZ(r?.input)?r.input.threadKey:void 0},output:i,error:e.error,linkedPiboSessionId:r?.linkedPiboSessionId??e.linkedPiboSessionId,source:e.source,stableKey:l?`async-agent:${l}`:`${e.stableKey??e.id}:async-agent`,orderKey:Uu(e.orderKey,`agent.async`),children:[]}}function nZ(e){return e.type===`tool.call`&&e.title===`pibo_run_start`}function KPe(e,t){e.status=t.status,e.summary=t.summary??e.summary,e.input=t.input??e.input,e.output=t.output??e.output,e.error=t.error??e.error,e.completedAt=t.completedAt??e.completedAt,e.linkedPiboSessionId=t.linkedPiboSessionId??e.linkedPiboSessionId}function rZ(e){if(oZ(e)){if(iZ(e))return e;if(oZ(e.details)&&iZ(e.details))return e.details}}function iZ(e){return typeof e.runId==`string`&&typeof e.toolName==`string`}function aZ(e){return typeof e==`string`?e:void 0}function qPe(e,t){return e.status===`error`||t===`failed`?`error`:t===`completed`||t===`cancelled`?`done`:`running`}function oZ(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function sZ(e){let t=(e??``).trim();if(!t.startsWith(`<pibo_run_notification>`)||!t.endsWith(`</pibo_run_notification>`))return;let n=t.slice(23,t.length-24).trim();try{let e=JSON.parse(n);return!e||typeof e!=`object`||Array.isArray(e)?void 0:e}catch{return}}function JPe(e){let t=YPe(e.notification),n=t.length===1?t[0]:void 0,r=lZ(e.notification.failed)+lZ(e.notification.timedOut),i=lZ(e.notification.running);return{id:e.id,entryId:e.entryId,piboSessionId:e.piboSessionId,eventId:e.eventId,runId:typeof n?.runId==`string`?n.runId:void 0,type:`yielded.run`,title:`Run Notification`,status:r>0?`error`:i>0?`running`:`done`,startedAt:e.startedAt,summary:XPe(e.notification),output:e.notification,source:e.source,stableKey:e.stableKey??e.id,orderKey:e.orderKey,children:[]}}function YPe(e){return[...cZ(e.completed),...cZ(e.failed),...cZ(e.timedOut),...cZ(e.cancelled),...cZ(e.running)]}function cZ(e){return Array.isArray(e)?e.filter(ZPe):[]}function lZ(e){return Array.isArray(e)?e.length:0}function XPe(e){let t=[[lZ(e.completed),`completed`],[lZ(e.failed),`failed`],[lZ(e.timedOut),`timed out`],[lZ(e.cancelled),`cancelled`],[lZ(e.running),`running`]].filter(([e])=>Number(e)>0).map(([e,t])=>`${e} ${t}`);return t.length?t.join(`, `):`No yielded run updates`}function ZPe(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function QPe(e,t,n,r,i,a,o,s,c){let l=r.payload;if(l.type===`message_started`&&l.source===`user`&&l.eventId){let t=qX([...e]).find(e=>e.type===`user.message`&&pZ(e.source)&&e.eventId===l.eventId);t&&dZ(t,r,l)}let u=o.mode===`none`?void 0:fZ(e,r);if(u){dZ(u,r,l),l.type===`message_steered`&&l.activeEventId&&(u.parentId=SZ(l.activeEventId));return}if((o.mode===`native`&&vFe(l)||o.mode===`product`&&_Fe(l))&&vZ(l,o)&&!yFe(l,s)){uZ(t,r,l);return}if(bFe(l,o,c)){uZ(t,r,l);return}if(l.type===`assistant_delta`){fFe(e,t,l,c,r.createdAt,r.eventSequence,r.streamId,r.streamFrameIndex,r.traceSource,r.id);return}if(l.type===`thinking_delta`){pFe(e,t,l,c,r.createdAt,r.eventSequence,r.streamId,r.streamFrameIndex,r.traceSource,r.id);return}if(l.type===`assistant_message`){let i=tFe(n,l,r.createdAt,r.eventSequence,r.streamId,r.streamFrameIndex,r.traceSource,r.id),a=t.get(i.id)??gZ(t,i);if(a){_Z(a,i);return}e.push(i),t.set(i.id,i);return}let d=dFe(n,l,i,a,c,r.createdAt,r.eventSequence,r.streamId,r.streamFrameIndex,r.traceSource,r.id);if(d){if(eFe(d,l,r.storedPayloadRef),d.type===`user.message`&&d.status===`running`&&!d.parentId&&l.type===`message_steered`){let e=[...t.values()].reverse().find(e=>e.type===`agent.turn`&&e.status===`running`);e&&(d.parentId=e.id)}if(d.type===`agent.turn`&&d.eventId){let e=[...t.values()].find(e=>e.type===`agent.turn`&&e.eventId===d.eventId);if(e){e.status=d.status,e.completedAt=d.completedAt??e.completedAt;return}}if(d.type===`assistant.message`){let e=t.get(d.id)??gZ(t,d);if(e){_Z(e,d);return}}if(d.type===`execution.compaction`){let t=wFe(e);if(t){TFe(t,d);return}}if(d.type===`model.reasoning`){let e=t.get(d.id)??gZ(t,d);if(e){mFe(e,d);return}}if(d.type===`agent.delegation`&&!d.toolCallId&&d.linkedPiboSessionId){let e=CFe([...t.values()],d);if(e){SFe(e,d);return}}if(d.toolCallId){let e=t.get(d.id)??$Pe(t,d,l);if(e){if(nZ(e)&&d.type===`agent.delegation`){tZ(e,n,r.createdAt,d);return}xFe(e,d),tZ(e,n,r.createdAt);return}}if(d.eventId){let e=t.get(d.id);if(e){d.type===`user.message`?(e.status=d.status,e.parentId=d.parentId??e.parentId,e.summary=d.summary??e.summary,e.output=d.output??e.output):d.type===`execution.command`&&(e.status=d.status,e.output=d.output??e.output,e.error=d.error??e.error,e.completedAt=d.completedAt??e.completedAt);return}}nFe(d,t),tZ(d,n,r.createdAt),e.push(d);for(let e of qX([d]))t.set(e.id,e)}}function $Pe(e,t,n){if(`eventId`in n&&n.eventId)return;let r=[...e.values()].filter(e=>e.toolCallId===t.toolCallId&&(e.type===`tool.call`||e.type===`tool.result`||e.type===`agent.delegation`));return r.length===1?r[0]:void 0}function uZ(e,t,n){let r=xZ(n,jZ(t.eventSequence,t.streamId,n,t.id)),i=`eventId`in n&&typeof n.eventId==`string`?n.eventId:void 0,a=[...e.values()].find(e=>e.stableKey===r||`toolCallId`in n&&typeof n.toolCallId==`string`&&e.toolCallId===n.toolCallId&&(!i||!e.eventId||e.eventId===i));a&&dZ(a,t,n)}function dZ(e,t,n){let r=t.renderSequence??n.renderSequence,i=t.eventSequence??t.streamId;(r!==void 0||i!==void 0)&&(e.orderKey={...e.orderKey??Bu(i,bZ(n.type)),...i===void 0?{}:{turnSeq:i,eventSequence:i},...r===void 0?{}:{renderSequence:r}})}function eFe(e,t,n){n&&((t.type===`tool_call`||t.type===`tool_execution_started`)&&(e.payloadRefs={...e.payloadRefs,input:n}),(t.type===`tool_execution_finished`||t.type===`tool_execution_updated`)&&(e.payloadRefs={...e.payloadRefs,output:n}))}function tFe(e,t,n,r,i,a,o,s){let c=typeof t.eventId==`string`?t.eventId:void 0,l=wZ(t),u=jZ(r,i,t,s);return{id:l?CZ(l):`event:${t.type}:${u}`,piboSessionId:e,eventId:c,parentId:c?SZ(c):void 0,type:`assistant.message`,title:`Agent Message`,status:`done`,startedAt:n,completedAt:n,summary:t.text,output:t.text,source:`event-log`,stableKey:l?`assistant:${l}`:xZ(t,u),orderKey:yZ(r,t.type,i,a,o,t.renderSequence,n),children:[]}}function nFe(e,t){if(e.type!==`execution.command`||e.parentId&&t.has(e.parentId))return;let n=[...t.values()].filter(n=>{if(n.type!==`agent.turn`||!n.startedAt||!e.startedAt||n.startedAt>e.startedAt)return!1;let r=rFe(n,t);return r===void 0||e.startedAt<=r}).sort(GX).at(-1);n&&(e.parentId=n.id)}function rFe(e,t){return e.completedAt?e.completedAt:[...t.values()].filter(t=>t.type===`error`&&t.eventId!==void 0&&t.eventId===e.eventId&&t.startedAt!==void 0).sort(GX).at(0)?.startedAt}function iFe(e){return e.some(e=>{let t=e.payload.type;return t!==`assistant_delta`&&t!==`thinking_delta`})}function aFe(e){if(e.type===`assistant_delta`){if(e.text.length===0)return;let t=wZ(e);return t?CZ(t):void 0}if(e.type===`thinking_delta`){if(e.text.length===0)return;let t=EZ(e);return t?TZ(t):void 0}}function oFe(e,t){return!!fZ(e,t)}function fZ(e,t){let n=t.payload;if(n.type!==`message_queued`&&n.type!==`message_steered`||n.source!==`user`)return;let r=typeof n.eventId==`string`?n.eventId:void 0,i=r??t.eventId,a=t.id?`instance:${t.id}`:NZ(n),o=`event:${n.type}:${r??a}`,s=xZ(n,a),c=typeof n.text==`string`?n.text:void 0,l=qX([...e]).filter(e=>e.type===`user.message`&&pZ(e.source));return l.find(e=>sFe(e,o,s,i))||l.find(e=>!cFe(e)&&!!(c&&lFe(e)===c))}function pZ(e){return e===`transcript`||e===`product-history`}function sFe(e,t,n,r){return e.id===t||e.stableKey===n?!0:r?e.entryId===r||e.stableKey===`entry:${r}`||[e.id,e.stableKey].some(e=>mZ(e)===r):!1}function cFe(e){return[e.id,e.stableKey].some(e=>mZ(e)!==void 0)}function mZ(e){for(let t of[`event:message_queued:`,`event:message_steered:`])if(e?.startsWith(t))return e.slice(t.length)}function lFe(e){if(typeof e.output==`string`)return e.output;if(typeof e.summary==`string`)return e.summary}function hZ(e){if(e.streamId!==void 0){let t=e.payload;return e.streamFrameIndex===void 0?`stream:${e.streamId}:${t.type}`:`stream:${e.streamId}:${e.streamFrameIndex}:${t.type}`}return e.eventSequence===void 0?`id:${e.id}`:`sequence:${e.piboSessionId??``}:${e.eventSequence}`}function uFe(e,t){let n=t;for(let t of e)t.streamId!==void 0&&(n=n===void 0?t.streamId:Math.max(n,t.streamId));return n}function dFe(e,t,n,r,i,a,o,s,c,l,u){let d=`eventId`in t&&typeof t.eventId==`string`?t.eventId:void 0,f=jZ(o,s,t,u),p=`event:${t.type}:${d??f}`,m=d?SZ(d):void 0,h={id:p,piboSessionId:e,eventId:d,startedAt:a,source:`event-log`,stableKey:xZ(t,f),orderKey:yZ(o,t.type,s,c,l,t.renderSequence,a),children:[]};switch(t.type){case`message_queued`:case`message_steered`:{let n=sZ(t.text);return t.source===`service`&&n?JPe({id:p,piboSessionId:e,eventId:d,startedAt:a,source:`event-log`,stableKey:d?`run-notification:${d}`:p,orderKey:yZ(o,t.type,s,c,l,t.renderSequence,a),notification:n}):{...h,...t.type===`message_steered`&&t.activeEventId?{parentId:SZ(t.activeEventId)}:{},type:`user.message`,title:`User Message`,status:hFe(t)?`running`:`done`,summary:t.text,output:t.text}}case`message_started`:case`message_finished`:return{...h,id:d?SZ(d):p,type:`agent.turn`,startedAt:t.type===`message_started`?a:void 0,title:`Agent Turn`,status:t.type===`message_finished`||i!==`running`?`done`:`running`,completedAt:t.type===`message_finished`?a:void 0,stableKey:d?`turn:${d}`:h.stableKey};case`thinking_finished`:{if(!EFe(t.text))return;let e=EZ(t);return{...h,id:e?TZ(e):p,parentId:m,type:`model.reasoning`,title:`Thinking`,status:`done`,summary:t.text,output:t.text,stableKey:e?`reasoning:${e}`:h.stableKey}}case`assistant_message`:{let e=wZ(t);return{...h,id:e?CZ(e):p,parentId:m,type:`assistant.message`,title:`Agent Message`,status:`done`,completedAt:a,summary:t.text,output:t.text,stableKey:e?`assistant:${e}`:h.stableKey}}case`tool_call`:case`tool_execution_started`:case`tool_execution_updated`:case`tool_execution_finished`:{let o=MZ(t),s=$X(t.toolName),c=r.get(o)??(s?BPe(e,t.toolName,t,n):void 0);return{...h,id:o,parentId:m,toolCallId:t.toolCallId,toolInvocationOrdinal:t.toolInvocationOrdinal??0,intent:t.intent,type:s?`agent.delegation`:`tool.call`,title:t.toolName,status:t.type===`tool_execution_finished`?t.isError?`error`:`done`:i===`running`&&(t.type===`tool_execution_started`||t.type===`tool_execution_updated`)?`running`:`done`,completedAt:t.type===`tool_execution_finished`?a:void 0,input:`args`in t?t.args:void 0,output:t.type===`tool_execution_finished`?t.result:t.type===`tool_execution_updated`?t.partialResult:void 0,error:t.type===`tool_execution_finished`&&t.isError?DFe(t.result):void 0,linkedPiboSessionId:c,stableKey:o,children:[]}}case`subagent_session`:{let e=OFe(t.childPiboSessionId),n=jZ(o,s,t,u),r=t.toolCallId?MZ(t):void 0;return{...h,id:r??`event:subagent_session:${n}`,eventId:d,toolCallId:t.toolCallId,toolInvocationOrdinal:t.toolInvocationOrdinal,type:`agent.delegation`,title:t.toolName,status:i===`running`?`running`:`done`,summary:t.subagentName,input:{subagentName:t.subagentName,threadKey:t.threadKey},linkedPiboSessionId:e,stableKey:r||(e?`subagent:${e}`:`subagent:event:${n}`),children:[]}}case`execution_result`:return gFe(t.action)?void 0:{...h,type:`execution.command`,title:t.action,status:`done`,input:{action:t.action},output:t.result};case`compaction_start`:{let e=jZ(o,s,t,u);return{...h,id:`event:compaction:${e}`,type:`execution.compaction`,title:`compact`,status:`running`,summary:`Compacting`,input:{reason:t.reason},stableKey:`compaction:${e}`}}case`compaction_end`:{let e=jZ(o,s,t,u);return{...h,id:`event:compaction:end:${e}`,type:`execution.compaction`,title:`compact`,status:t.errorMessage?`error`:`done`,completedAt:a,summary:t.aborted?`Compaction skipped`:t.errorMessage?`Compaction failed`:`Compacted`,input:{reason:t.reason},output:t.result,error:t.errorMessage,stableKey:`compaction:${e}`}}case`session_error`:return{...h,type:`error`,title:`Session Error`,status:`error`,summary:t.errorDetails?.userMessage,input:t.errorDetails,error:t.error,output:t.error};default:return}}function fFe(e,t,n,r,i,a,o,s,c,l){if(typeof n.text!=`string`||n.text.length===0)return;let u=wZ(n),d=jZ(a,o,n,l),f=u?CZ(u):`event:assistant_delta:${d}`,p=t.get(f);if(p){let e=`${typeof p.output==`string`?p.output:``}${n.text}`;p.status=r===`running`?`running`:`done`,p.summary=e,p.output=e;return}let m={id:f,parentId:n.eventId?SZ(n.eventId):void 0,piboSessionId:n.piboSessionId,eventId:n.eventId,type:`assistant.message`,title:`Agent Message`,status:r===`running`?`running`:`done`,startedAt:i,summary:n.text,output:n.text,source:`event-log`,stableKey:u?`assistant:${u}`:f,orderKey:yZ(a,n.type,o,s,c,n.renderSequence,i),children:[]};e.push(m),t.set(m.id,m)}function gZ(e,t){if(t.stableKey)return[...e.values()].find(e=>e.type===t.type&&e.stableKey===t.stableKey)}function _Z(e,t){e.status=t.status,e.summary=t.summary??e.summary,e.output=t.output??e.output,e.error=t.error??e.error,e.completedAt=t.completedAt??e.completedAt}function pFe(e,t,n,r,i,a,o,s,c,l){if(typeof n.text!=`string`||n.text.length===0)return;let u=EZ(n),d=jZ(a,o,n,l),f=u?TZ(u):`event:thinking_delta:${d}`,p=u?`reasoning:${u}`:f,m=t.get(f)??[...t.values()].find(e=>e.type===`model.reasoning`&&e.stableKey===p);if(m){let e=`${typeof m.output==`string`?m.output:``}${n.text}`;m.status=r===`running`?`running`:`done`,m.summary=e,m.output=e;return}let h={id:f,parentId:n.eventId?SZ(n.eventId):void 0,piboSessionId:n.piboSessionId,eventId:n.eventId,type:`model.reasoning`,title:`Thinking`,status:r===`running`?`running`:`done`,startedAt:i,summary:n.text,output:n.text,source:`event-log`,stableKey:p,orderKey:yZ(a,n.type,o,s,c,n.renderSequence,i),children:[]};e.push(h),t.set(h.id,h)}function mFe(e,t){e.status=t.status,e.summary=t.summary??e.summary,e.output=t.output??e.output,e.completedAt=t.completedAt??e.completedAt}function hFe(e){return(e.type===`message_queued`||e.type===`message_steered`)&&`clientTxnId`in e&&typeof e.clientTxnId==`string`}function gFe(e){return e===`session.fork`||e===`session.clone`||e===`session.switch`}function _Fe(e){return e.type===`assistant_delta`||e.type===`assistant_message`}function vFe(e){return e.type===`message_queued`||e.type===`message_started`||e.type===`message_finished`||e.type===`assistant_delta`||e.type===`assistant_message`||e.type===`thinking_started`||e.type===`thinking_delta`||e.type===`thinking_finished`}function yFe(e,t){let n=`eventId`in e&&typeof e.eventId==`string`?e.eventId:void 0;return!!(n&&t.has(n))}function vZ(e,t){let n=`eventId`in e&&typeof e.eventId==`string`?e.eventId:void 0;return n===void 0||t.eventIds.has(n)}function bFe(e,t,n){return t.mode!==`native`||n===`running`||e.type!==`tool_call`&&e.type!==`tool_execution_started`&&e.type!==`tool_execution_updated`&&e.type!==`tool_execution_finished`||typeof e.intent==`string`&&e.intent.trim()?!1:t.toolCallIds.has(e.toolCallId)||vZ(e,t)}function yZ(e,t,n,r,i,a,o){let s=i===`live`?Vu(n,r,bZ(t)):Bu(e??n,bZ(t)),c=(a!==void 0&&a>=9466848e8?Math.floor(a/1e3):void 0)??(o&&Number.isFinite(Date.parse(o))?Date.parse(o):void 0);return{...s,...a===void 0?{}:{renderSequence:a},...c===void 0?{}:{chronologyMs:c}}}function bZ(e){switch(e){case`message_queued`:case`message_steered`:return`user.message`;case`message_started`:case`message_finished`:return`agent.turn`;case`thinking_started`:case`thinking_delta`:case`thinking_finished`:return`model.reasoning`;case`tool_call`:case`tool_execution_started`:case`tool_execution_updated`:case`tool_execution_finished`:case`subagent_session`:return`tool.call`;case`assistant_delta`:case`assistant_message`:return`assistant.message`;case`execution_result`:return`execution.command`;case`compaction_start`:case`compaction_end`:return`execution.compaction`;case`session_error`:return`error`;default:return`execution.command`}}function xZ(e,t){let n=`eventId`in e&&typeof e.eventId==`string`?e.eventId:void 0;if(e.type===`tool_call`||e.type===`tool_execution_started`||e.type===`tool_execution_updated`||e.type===`tool_execution_finished`||e.type===`subagent_session`&&e.toolCallId)return MZ(e);if(n&&(e.type===`message_started`||e.type===`message_finished`))return`turn:${n}`;if(e.type===`thinking_started`||e.type===`thinking_delta`||e.type===`thinking_finished`){let t=EZ(e);if(t)return`reasoning:${t}`}if(e.type===`assistant_delta`||e.type===`assistant_message`){let t=wZ(e);if(t)return`assistant:${t}`}return`event:${e.type}:${n??t??NZ(e)}`}function SZ(e){return`event:message:${e}`}function CZ(e){return`event:assistant:${e}`}function wZ(e){if(!e.eventId)return;let t=typeof e.assistantIndex==`number`?e.assistantIndex:e.contentIndex;return typeof t==`number`?`${e.eventId}:assistant:${t}`:e.eventId}function TZ(e){return`event:thinking:${e}`}function EZ(e){if(!e.eventId)return;let t=typeof e.thinkingIndex==`number`?e.thinkingIndex:e.contentIndex;return typeof t==`number`?`${e.eventId}:thinking:${t}`:e.eventId}function xFe(e,t){e.status=t.status,e.intent=t.intent??e.intent,e.summary=t.summary??e.summary,e.input=kZ(e,t),e.output=t.output??e.output,e.error=t.error??e.error,e.completedAt=t.completedAt??e.completedAt,e.payloadRefs={...e.payloadRefs,...t.payloadRefs},e.linkedPiboSessionId=t.linkedPiboSessionId??e.linkedPiboSessionId}function SFe(e,t){e.summary=t.summary??e.summary,e.input=kZ(e,t),e.linkedPiboSessionId=t.linkedPiboSessionId??e.linkedPiboSessionId}function CFe(e,t){let n=[...e].reverse().filter(e=>e.type===`agent.delegation`),r=DZ(t),i=n.filter(e=>!e.linkedPiboSessionId&&DZ(e)===r),a=OZ(t.input);return(a?i.find(e=>OZ(e.input)===a):i.length===1?i[0]:void 0)||n.find(e=>e.linkedPiboSessionId===t.linkedPiboSessionId)}function DZ(e){let t=AZ(e.input)?e.input:void 0,n=typeof t?.name==`string`?t.name:typeof t?.subagentName==`string`?t.subagentName:e.summary??e.title;return typeof n==`string`&&n.replace(/^pibo_agents_send_message$/,`agent`).replace(/^pibo_subagent_/,``).trim().toLowerCase()||void 0}function OZ(e){if(!(!AZ(e)||typeof e.threadKey!=`string`))return e.threadKey.trim()||void 0}function kZ(e,t){return e.type!==`agent.delegation`||!AZ(e.input)||!AZ(t.input)?t.input??e.input:Object.fromEntries(Object.entries({...e.input,...t.input}).filter(([,e])=>e!==void 0))}function AZ(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function wFe(e){return qX([...e]).reverse().find(e=>e.type===`execution.compaction`&&e.status===`running`)}function TFe(e,t){e.status=t.status,e.summary=t.summary??e.summary,e.input=t.input??e.input,e.output=t.output??e.output,e.error=t.error??e.error,e.completedAt=t.completedAt??e.completedAt}function EFe(e){return typeof e==`string`&&e.trim().length>0}function DFe(e){if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function jZ(e,t,n,r){return e===void 0?t===void 0?r?`instance:${r}`:NZ(n):`stream:${t}`:`sequence:${e}`}function MZ(e){let t=e.eventId??(e.renderSequence===void 0?`unscoped`:`render:${e.renderSequence}`);return ZX(e.toolCallId??`unlinked`,t,e.toolInvocationOrdinal??0)}function OFe(e){if(typeof e==`string`)return e.trim()||void 0}function NZ(e){let t=PZ.get(e);if(t)return t;let n=`live:${++kFe}`;return PZ.set(e,n),n}var PZ=new WeakMap,kFe=0;function AFe(e){let t=new Map;for(let n of e)t.set(n.id,n);let n=[];for(let r of e){if(!r.parentId){n.push(r);continue}let e=t.get(r.parentId);e?e.children.push(r):n.push(r)}return WX(n)}function jFe(e,t,n){return t.map(t=>FZ(e,t,n))}function FZ(e,t,n){let r=e.get(t.id);if(t.children.length===0){let e=r!==void 0&&r.children.length===0;return r&&e&&(n&&!n.has(t.id)||IZ(r,t))?r:e?{...t,children:r.children}:{...t,children:[]}}let i=t.children.map(t=>FZ(e,t,n)),a=r!==void 0&&r.children.length===i.length&&r.children.every((e,t)=>e===i[t]);return r&&a&&(n&&!n.has(t.id)||IZ(r,t))?r:a?{...t,children:r?.children??i}:{...t,children:i}}function IZ(e,t){return e.id===t.id&&e.parentId===t.parentId&&e.entryId===t.entryId&&e.piboSessionId===t.piboSessionId&&e.eventId===t.eventId&&e.toolCallId===t.toolCallId&&e.toolInvocationOrdinal===t.toolInvocationOrdinal&&e.runId===t.runId&&e.intent===t.intent&&e.type===t.type&&e.title===t.title&&e.status===t.status&&e.startedAt===t.startedAt&&e.completedAt===t.completedAt&&e.durationMs===t.durationMs&&e.summary===t.summary&&e.input===t.input&&e.output===t.output&&e.error===t.error&&e.linkedPiboSessionId===t.linkedPiboSessionId&&e.source===t.source&&e.stableKey===t.stableKey&&MFe(e.orderKey,t.orderKey)}function MFe(e,t){return e===t?!0:!e||!t?!1:e.sourceRank===t.sourceRank&&e.turnSeq===t.turnSeq&&e.renderSequence===t.renderSequence&&e.transcriptIndex===t.transcriptIndex&&e.contentPartIndex===t.contentPartIndex&&e.eventSequence===t.eventSequence&&e.streamId===t.streamId&&e.streamFrameIndex===t.streamFrameIndex&&e.phaseRank===t.phaseRank}function LZ(e,t,n){if(!t.length)return e;let r=new Set(e.rawEvents.map(e=>hZ(e))),i=[];for(let e of t){let t=hZ(e);r.has(t)||(r.add(t),i.push(e))}if(!i.length)return e;let a=qX(e.nodes),o=[],s=new Map,c=new Map;for(let e of a){c.set(e.id,e);let t={...e,children:[]};o.push(t),s.set(t.id,t)}let l=new Map,u=new Map,d=new Set,f={mode:`none`,eventIds:new Set,toolCallIds:new Set},p=[],m=new Set;for(let t of i){if(oFe(o,t))continue;p.push(t);let r=aFe(t.payload);m&&r?m.add(r):m=void 0,QPe(o,s,e.piboSessionId,t,l,u,f,d,n)}if(!p.length)return e;let h=AFe(o);iFe(p)&&WPe(h);let g=jFe(c,h,m);return{...e,rawEvents:e.rawEvents.length?[...e.rawEvents,...p]:p,nodes:g,latestStreamId:uFe(p,e.latestStreamId)}}function RZ(e){let t=new Map;if(BZ(e.nodes,t),!t.size)return e;let{nodes:n,changed:r}=VZ(e.nodes,t);return r?{...e,nodes:n}:e}function NFe(e){return e.some(zZ)}function PFe(e){let t=new Map;return UZ(e,e=>{if(e.type!==`user.message`||!e.entryId)return;let n=WZ(e),r=t.get(n);r?r.push(e.entryId):t.set(n,[e.entryId])}),t}function FFe(e,t){if(!t.size)return;let n=new Map;UZ(e,e=>{if(e.type!==`user.message`||!e.entryId)return;let t=WZ(e),r=n.get(t)??new Set;r.add(e.entryId),n.set(t,r)});let r=new Map;UZ(e,e=>{if(e.type!==`user.message`||e.entryId)return;let i=WZ(e),a=t.get(i);if(!a?.length)return;let o=n.get(i)??new Set,s=r.get(i)??0;for(;s<a.length&&o.has(a[s]);)s+=1;let c=a[s];c&&(e.entryId=c,o.add(c),n.set(i,o),r.set(i,s+1))})}function zZ(e){let t=e.payload;return!!(t&&typeof t==`object`&&!Array.isArray(t)&&`type`in t&&(t.type===`message_queued`||t.type===`message_steered`)&&`source`in t&&t.source===`user`&&`text`in t&&typeof t.text==`string`)}function BZ(e,t){for(let n of e){if(n.type===`user.message`&&!HZ(n)&&!IFe(n)){let e=WZ(n);e&&t.set(e,(t.get(e)??0)+1)}BZ(n.children,t)}}function VZ(e,t){let n=!1,r=[];for(let i of e){if(HZ(i)){let e=WZ(i),r=e?t.get(e)??0:0;if(r>0){t.set(e,r-1),n=!0;continue}}let e=VZ(i.children,t);n||=e.changed,r.push(e.changed?{...i,children:e.nodes}:i)}return{nodes:n?r:e,changed:n}}function IFe(e){return[e.id,e.stableKey].some(e=>e?.startsWith(`event:message_queued:`)||e?.startsWith(`event:message_steered:`))}function HZ(e){return e.type===`user.message`?e.source===`event-log`&&(e.id.startsWith(`event:message_queued:`)||e.id.startsWith(`event:message_steered:`))?!0:[e.id,e.stableKey,e.eventId].filter(e=>typeof e==`string`).some(e=>e.startsWith(`optimistic:user-message:`)||e.includes(`:optimistic:user-message:`)):!1}function UZ(e,t){for(let n of e)t(n),UZ(n.children,t)}function WZ(e){return typeof e.output==`string`?e.output:typeof e.summary==`string`?e.summary:``}function LFe(e,t,n){return t&&e.set(t.piboSessionId,t),n?e.get(n)??null:null}function GZ(e,t,n){t&&t.piboSessionId!==n.piboSessionId&&e.set(t.piboSessionId,t);let r=KZ(t?.piboSessionId===n.piboSessionId?t:e.get(n.piboSessionId)??null,n);return r?e.set(n.piboSessionId,r):e.delete(n.piboSessionId),r}function KZ(e,t){if(!e||e.piboSessionId!==t.piboSessionId)return e;let n=zFe(t),r=qZ(t.nodes),i=e.events.filter(e=>{let i=XZ(e);if(i&&n.has(i))return!1;if(zZ(e)){let t=r.get(e.payload.text)??0;if(t>0)return t===1?r.delete(e.payload.text):r.set(e.payload.text,t-1),!1}return!BFe(t,e)});return i.length?{...e,events:i}:null}function qZ(e){let t=new Map;for(let n of e){if(n.type===`user.message`&&YZ(n)&&!RFe(n)){let e=HFe(n);e&&t.set(e,(t.get(e)??0)+1)}for(let[e,r]of qZ(n.children))t.set(e,(t.get(e)??0)+r)}return t}function RFe(e){return[e.id,e.stableKey].some(e=>e?.startsWith(`event:message_queued:`)||e?.startsWith(`event:message_steered:`))}function zFe(e){let t=new Set;for(let n of e.rawEvents){let e=XZ(n);e&&t.add(e)}return JZ(e.nodes,t),t}function JZ(e,t){for(let n of e){if(n.type===`user.message`)for(let e of[`message_queued`,`message_steered`]){let r=`event:${e}:`,i=n.id.startsWith(r)?n.id.slice(r.length):void 0;i&&t.add(`${n.piboSessionId}:${e}:${i}`),YZ(n)&&n.entryId&&t.add(`${n.piboSessionId}:${e}:${n.entryId}`)}if(n.type===`assistant.message`){let e=ZZ(n,`assistant:`);e&&(t.add(`${n.piboSessionId}:assistant_delta:${e}`),(YZ(n)||n.completedAt!==void 0)&&t.add(`${n.piboSessionId}:assistant_message:${e}`)),YZ(n)&&n.eventId&&(t.add(`${n.piboSessionId}:message_started:${n.eventId}`),t.add(`${n.piboSessionId}:message_finished:${n.eventId}`))}if(n.type===`model.reasoning`){let e=ZZ(n,`reasoning:`);e&&(t.add(`${n.piboSessionId}:thinking_delta:${e}`),YZ(n)&&(t.add(`${n.piboSessionId}:thinking_started:${e}`),t.add(`${n.piboSessionId}:thinking_finished:${e}`)))}if(n.toolCallId&&(n.type===`tool.call`||n.type===`tool.result`||n.type===`agent.delegation`)){let e=QX(n.id),r=e?.qualifier?ZX(e.toolCallId,e.qualifier.eventId,e.qualifier.invocationOrdinal):ZX(n.toolCallId,n.eventId??`unscoped`,n.toolInvocationOrdinal??0);t.add(`${n.piboSessionId}:tool_call:${r}`);let i=n.completedAt!==void 0||n.type===`tool.result`||n.status===`error`;(n.status===`running`||n.output!==void 0||i)&&t.add(`${n.piboSessionId}:tool_execution_started:${r}`),(n.output!==void 0&&!i||i)&&t.add(`${n.piboSessionId}:tool_execution_updated:${r}`),i&&t.add(`${n.piboSessionId}:tool_execution_finished:${r}`)}JZ(n.children,t)}}function YZ(e){return e.source===`transcript`||e.source===`product-history`}function BFe(e,t){let n=t.payload;if(!n||typeof n!=`object`||Array.isArray(n))return!1;let r=`source`in n?n.source:void 0,i=`text`in n?n.text:void 0;return r!==`service`||typeof i!=`string`||!sZ(i)?!1:VFe(e,t)}function VFe(e,t){let n=t.eventSequence;if(n===void 0||e.firstEventSequence===void 0)return!1;let r=e.lastEventSequence??e.eventCount;return r!==void 0&&n>=e.firstEventSequence&&n<=r}function XZ(e){let t=e.payload;if(!t||typeof t!=`object`||Array.isArray(t))return;let n=`eventId`in t&&typeof t.eventId==`string`?t.eventId:e.eventId,r=`piboSessionId`in t&&typeof t.piboSessionId==`string`?t.piboSessionId:e.piboSessionId;if(r){if(e.type===`tool_call`||e.type===`tool_execution_started`||e.type===`tool_execution_updated`||e.type===`tool_execution_finished`){let i=`toolCallId`in t&&typeof t.toolCallId==`string`?t.toolCallId:void 0;if(!i)return;let a=QZ(t,`toolInvocationOrdinal`)??0,o=n??(e.renderSequence===void 0?`unscoped`:`render:${e.renderSequence}`);return`${r}:${e.type}:${ZX(i,o,a)}`}if(n){if(e.type===`assistant_delta`||e.type===`assistant_message`){let i=QZ(t,`assistantIndex`)??QZ(t,`contentIndex`),a=i===void 0?n:`${n}:assistant:${i}`;return`${r}:${e.type}:${a}`}if(e.type===`thinking_started`||e.type===`thinking_delta`||e.type===`thinking_finished`){let i=QZ(t,`thinkingIndex`)??QZ(t,`contentIndex`),a=i===void 0?n:`${n}:thinking:${i}`;return`${r}:${e.type}:${a}`}return`${r}:${e.type}:${n}`}}}function ZZ(e,t){return e.stableKey?.startsWith(t)?e.stableKey.slice(t.length):e.eventId}function QZ(e,t){let n=t in e?e[t]:void 0;return typeof n==`number`&&Number.isFinite(n)?n:void 0}function HFe(e){return typeof e.output==`string`?e.output:e.output&&typeof e.output==`object`&&`text`in e.output&&typeof e.output.text==`string`?e.output.text:``}function UFe({selectedPiboSessionId:e,reconciledBaseTraceView:t,liveTraceOverlay:n,selectedSessionStatus:r,persistedUserMessageIndexForBaseTrace:i,now:a,previousProjection:o}){if(!e||t?.piboSessionId!==e)return{traceView:null};let s=(n?.piboSessionId===e?KZ(n,t):null)?.events??[];if(!s.length)return{traceView:t};let c=a?.(),l=r??`idle`,u=o?.baseTraceView===t&&o.sessionStatus===l&&s.length>=o.overlayEvents.length&&o.overlayEvents.every((e,t)=>s[t]===e),d=u?s.slice(o.overlayEvents.length):s,f=u?LZ(o.traceView,d,l):LZ(t,s,l),p=NFe(s);p&&FFe(f.nodes,i);let m=p?RZ(f):f;return{traceView:m,appliedLiveEventCount:d.length,projectionCache:{baseTraceView:t,overlayEvents:s,sessionStatus:l,traceView:m},liveTraceComputeDurationMs:c!==void 0&&a?a()-c:void 0}}function $Z(e,t){for(let n of e)t(n),$Z(n.children,t)}function WFe(e){return typeof e.output==`string`?e.output:typeof e.summary==`string`?e.summary:``}function eQ(e){if(!e)return;let t=0;return $Z(e.nodes,e=>{e.type===`assistant.message`&&(t+=WFe(e).length)}),t}function GFe({selectedPiboSessionId:e,baseTraceView:t,liveTraceOverlay:n,selectedSessionStatus:r}){let i=(0,U.useMemo)(()=>t?RZ(t):null,[t]),a=(0,U.useMemo)(()=>i?PFe(i.nodes):new Map,[i]),o=(0,U.useRef)(void 0),s=(0,U.useMemo)(()=>{let t=UFe({selectedPiboSessionId:e,reconciledBaseTraceView:i,liveTraceOverlay:n,selectedSessionStatus:r,persistedUserMessageIndexForBaseTrace:a,previousProjection:o.current,now:JW()?()=>performance.now():void 0});return o.current=t.projectionCache,t},[n,e,r,i,a]),c=s.traceView;return(0,U.useEffect)(()=>{!e||!c?.piboSessionId||!JW()||(YW(c.piboSessionId,{overlayEventCount:n?.piboSessionId===c.piboSessionId?n.events.length:0,traceBaseOutputLength:eQ(t),currentOutputLength:eQ(c)}),s.liveTraceComputeDurationMs!==void 0&&XOe(c.piboSessionId,s.liveTraceComputeDurationMs))},[t,s.liveTraceComputeDurationMs,c,n,e]),(0,U.useEffect)(()=>{if(!c?.piboSessionId||!MX())return;let e=n?.piboSessionId===c.piboSessionId?n.events:[];LX({piboSessionId:c.piboSessionId,trigger:`trace-state:render`,baseTraceView:t,currentTraceView:c,overlayEvents:e,selectedSessionStatus:r})},[t,c,n,r]),(0,U.useEffect)(()=>{let e=()=>{if(!c?.piboSessionId||!MX())return;let e=n?.piboSessionId===c.piboSessionId?n.events:[];LX({piboSessionId:c.piboSessionId,trigger:`trace-state:tab:${document.visibilityState}`,baseTraceView:t,currentTraceView:c,overlayEvents:e,selectedSessionStatus:r})};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[t,c,n,r]),c}var tQ=1e4,nQ=3e5;function KFe(e,t=!1,n){return[`chat`,`bootstrap`,e??``,t?`archived`:`active`,n??``]}function qFe(e=!1,t,n){return[`chat`,`sessions`,e?`archived`:`active`,t??``,n??``]}var rQ=new WeakMap;function iQ(e){return rQ.get(e)??0}async function JFe(e){rQ.set(e,iQ(e)+1),await e.cancelQueries({queryKey:[`chat`,`sessions`]}),e.removeQueries({queryKey:[`chat`,`sessions`]})}async function YFe(e,t,n){let r=qFe(t.includeArchived,t.roomId,t.piboSessionId),i=iQ(e);if(t.force)e.removeQueries({queryKey:r,exact:!0});else{let t=e.getQueryData(r);if(t)return t}let a=await n();return i===iQ(e)&&e.setQueryData(r,a),a}function XFe(e){return[`chat`,`trace-summary`,e]}function ZFe(e,t=!1,n,r=t?60:120){return[`chat`,`session-page`,e,t?`archived`:`active`,n??``,r]}function aQ(e,t={}){let n=t.pageSize??t.eventLimit??100,r=t.beforeCursor??t.beforeSequence;return[`chat`,`trace-page`,e,t.includeRawEvents?`raw`:`compact`,t.rawEventsLimit??80,n,r===void 0?`tail`:String(r)]}function oQ(e){return[`chat`,`trace-summary`,e]}function sQ(e){return[`chat`,`trace-page`,e]}function QFe(e,t){if(e.piboSessionId!==t.piboSessionId)return e;let n=fQ(t.rawEvents,e.rawEvents,!1),r=_Q(t.nodes,e.nodes);return{...e,version:e.version,integrityStatus:lQ(r)??e.integrityStatus??t.integrityStatus,nodes:r,rawEvents:n,beforeCursor:t.beforeCursor??e.beforeCursor,firstEventSequence:t.firstEventSequence??e.firstEventSequence,nextBeforeSequence:t.nextBeforeSequence,nextBeforeCursor:t.nextBeforeCursor,hasOlderEvents:t.hasOlderEvents,eventLimit:(e.eventLimit??0)+(t.eventLimit??t.pageSize??0)}}function $Fe(e,t){if(e.piboSessionId!==t.piboSessionId)return t;let n=eIe(e.nodes,t);return{...t,integrityStatus:lQ(n)??t.integrityStatus,nodes:n,rawEvents:fQ(e.rawEvents,t.rawEvents,!0),beforeCursor:e.beforeCursor,firstEventSequence:e.firstEventSequence??t.firstEventSequence,nextBeforeSequence:e.nextBeforeSequence,nextBeforeCursor:e.nextBeforeCursor,hasOlderEvents:e.hasOlderEvents,eventLimit:e.eventLimit??t.eventLimit}}function eIe(e,t){let n=qX([...e]),r=qX([...t.nodes]),i=new Set(r.map(e=>e.id)),a=tIe(r),o=nIe([...n,...r]),s=iIe(r),c=aIe(r),l=n.filter(e=>{if(uQ(e)&&e.eventId&&a.has(e.eventId))return!1;if(i.has(e.id))return!0;if(e.type===`agent.turn`&&e.source===`event-log`&&e.eventId&&o.has(e.eventId)||rIe(e))return!1;let n=e.orderKey?.eventSequence;if(n!==void 0&&t.firstEventSequence!==void 0)return n<t.firstEventSequence;let r=e.orderKey?s.get(e.orderKey.sourceRank):void 0;if(e.orderKey&&r)return Wu(e.orderKey,r)<0;if(e.source===`live`||e.orderKey?.streamId!==void 0)return!1;let l=dQ(e.startedAt);return l!==void 0&&c!==void 0&&l<c}),u=new Set([...l,...r].map(e=>e.id)),d=new Set(n.filter(e=>!u.has(e.id)).map(e=>e.id));return _Q(cQ(l,d),cQ(r,d))}function cQ(e,t){return e.map(e=>({...e,...e.parentId&&t.has(e.parentId)?{parentId:void 0}:{},children:[]}))}function lQ(e){return qX([...e]).some(uQ)?`incomplete`:void 0}function uQ(e){return e.id.startsWith(`event:incomplete-turn:`)||e.stableKey?.startsWith(`incomplete-turn:`)===!0}function tIe(e){return new Set(e.flatMap(e=>e.eventId&&(e.type===`agent.turn`&&e.completedAt||e.type===`error`&&e.title===`Session Error`)?[e.eventId]:[]))}function nIe(e){let t=new Set;for(let n of e)(n.source===`transcript`||n.source===`product-history`)&&n.eventId&&t.add(n.eventId);return t}function rIe(e){return e.source===`live`||e.orderKey?.streamId!==void 0}function iIe(e){let t=new Map;for(let n of e){if(!n.orderKey)continue;let e=t.get(n.orderKey.sourceRank);(!e||Wu(n.orderKey,e)<0)&&t.set(n.orderKey.sourceRank,n.orderKey)}return t}function aIe(e){let t;for(let n of e){let e=dQ(n.startedAt);e!==void 0&&(t=t===void 0?e:Math.min(t,e))}return t}function dQ(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}function fQ(e,t,n){if(!t.length)return[...e].sort(pQ);let r=n?t.reduce((e,t)=>t.eventSequence===void 0?e:e===void 0?t.eventSequence:Math.min(e,t.eventSequence),void 0):void 0,i=new Map;for(let t of e)r!==void 0&&t.eventSequence!==void 0&&t.eventSequence>=r||i.set(gQ(t),t);for(let e of t)i.set(gQ(e),e);return[...i.values()].sort(pQ)}function pQ(e,t){return(e.eventSequence===void 0?0:1)-(t.eventSequence===void 0?0:1)||(e.eventSequence!==void 0&&t.eventSequence!==void 0?e.eventSequence-t.eventSequence:0)||oIe(hQ(e.createdAt),hQ(t.createdAt))||mQ(e.streamId,t.streamId)||mQ(e.streamFrameIndex,t.streamFrameIndex)||(e.eventSequence===void 0&&t.eventSequence===void 0?mQ(e.renderSequence,t.renderSequence):0)||e.id.localeCompare(t.id)||e.type.localeCompare(t.type)}function mQ(e,t){return e===t?0:e===void 0?1:t===void 0?-1:e-t}function oIe(e,t){return e===t?0:e===void 0?1:t===void 0?-1:e.localeCompare(t)}function hQ(e){return Number.isFinite(Date.parse(e))?e:void 0}function gQ(e){return e.id||`${e.eventSequence??``}:${e.type}:${e.createdAt}`}function _Q(e,t){let n=new Map;for(let t of qX([...e]))n.set(t.id,{...t,children:[]});for(let e of qX([...t])){let t=n.get(e.id);n.set(e.id,{...t,...e,children:[]})}return RPe([...n.values()])}function vQ(e,t=[]){let n=new Map,r=[],i=e.hasOlderEvents??e.cursor.hasOlder,a=i?e.nextBeforeCursor??e.cursor.before:void 0,o=i?e.nextBeforeSequence??yQ(e.cursor.before):void 0;for(let t of e.nodes)n.set(t.nodeId,sIe(t));for(let t of e.nodes){let e=n.get(t.nodeId);if(!e)continue;let i=t.parentId?n.get(t.parentId):void 0;i?i.children.push(e):r.push(e)}return{piboSessionId:e.piboSessionId,piSessionId:e.piSessionId,integrityStatus:e.integrityStatus,title:e.title,version:e.version,latestStreamId:e.latestStreamId,eventCount:e.eventCount,eventLimit:e.pageSize,pageSize:e.pageSize,beforeCursor:e.cursor.before,firstEventSequence:e.firstEventSequence??yQ(e.cursor.before),lastEventSequence:e.lastEventSequence??yQ(e.cursor.after),nextBeforeSequence:o,nextBeforeCursor:a,hasOlderEvents:i,nodes:r,rawEvents:t}}function yQ(e){if(!e)return;let t=Number.parseInt(e,10);return Number.isFinite(t)?t:void 0}function sIe(e){let t=e.preview?.text,n=e.payloadRefs?.input?.preview,r=e.payloadRefs?.output?.preview??e.payloadRefs?.reasoning?.preview??t,i=e.payloadRefs?.error?.preview,a=e.inlinePayloads?.output??e.inlinePayloads?.reasoning;return{id:e.nodeId,parentId:e.parentId,entryId:e.entryId,nativeTurnId:e.nativeTurnId,piboSessionId:e.piboSessionId,eventId:e.eventId,toolCallId:e.toolCallId,runId:e.runId,intent:e.intent,type:e.type,title:e.title,status:e.status,startedAt:e.startedAt,completedAt:e.completedAt,durationMs:e.durationMs,summary:t,input:e.inlinePayloads?.input??n,output:a??r,error:typeof e.inlinePayloads?.error==`string`?e.inlinePayloads.error:i,payloadRefs:e.payloadRefs,linkedPiboSessionId:e.linkedPiboSessionId,source:e.source,stableKey:e.stableKey,orderKey:e.orderKey,children:[]}}var cIe=128;function lIe({selectedPiboSessionId:e,showRawEvents:t,liveTraceOverlay:n,liveTraceOverlayCacheRef:r,setLiveTraceOverlay:i}){let a=On(),[o,s]=(0,U.useState)(100),[c,l]=(0,U.useState)(80),[u,d]=(0,U.useState)(null),f=(0,U.useRef)(new Map),[p,m]=(0,U.useState)(void 0),[h,g]=(0,U.useState)(!1),_=(0,U.useRef)(null),v=(0,U.useRef)(new Set),y=(0,U.useMemo)(()=>e?XFe(e):null,[e]),b=(0,U.useMemo)(()=>e?aQ(e,{includeRawEvents:!1,rawEventsLimit:0,pageSize:100}):null,[e]),x=Un({queryKey:y??[`chat`,`trace-summary`,`idle`],queryFn:async({signal:t})=>{if(!e||!y)throw Error(`Session is required`);let n=a.getQueryData(y),r=await Du(e,n?.version,{signal:t});if(r.notModified&&n)return n;if(!r.summary)throw Error(`Trace summary response missing payload.`);return r.summary},enabled:!1,staleTime:tQ,gcTime:nQ,refetchOnWindowFocus:!1,retry:1}),S=Un({queryKey:b??[`chat`,`trace-page`,`idle`,`compact`,c,100,`tail`],queryFn:async({signal:t})=>{if(!e||!b)throw Error(`Session is required`);let n=a.getQueryData(b),r=await Ou(e,{limit:100,knownVersion:n?.version,signal:t});if(r.notModified&&n)return n;if(!r.timeline)throw Error(`Trace timeline response missing payload.`);return vQ(r.timeline)},enabled:!!e,staleTime:tQ,gcTime:nQ,refetchOnWindowFocus:!1,retry:1});(0,U.useLayoutEffect)(()=>{let t=b?a.getQueryData(b):void 0;s(100),l(80),m(void 0),g(!1),d(n=>(n&&f.current.set(n.piboSessionId,n),e?f.current.get(e)??(t?.piboSessionId===e?t:null):null)),i(t=>LFe(r.current,t,e)),_.current=null,v.current=new Set},[r,a,e,i,b]);let C=Un({queryKey:e?[`chat`,`trace-raw-events`,e,c,p??`tail`]:[`chat`,`trace-raw-events`,`idle`],queryFn:async({signal:t})=>{if(!e)throw Error(`Session is required`);return ku(e,{limit:c,beforeSequence:p,signal:t})},enabled:!!(e&&t),staleTime:tQ,gcTime:nQ,refetchOnWindowFocus:!1,retry:1});(0,U.useEffect)(()=>{let t=S.data;!t||t.piboSessionId!==e||(JW()&&YW(t.piboSessionId,{overlayEventCount:0,traceBaseOutputLength:eQ(t),traceBaseUpdated:!0}),(0,U.startTransition)(()=>{d(e=>{let n=e?.piboSessionId===t.piboSessionId?$Fe(e,t):t;return f.current.set(t.piboSessionId,n),n}),i(e=>GZ(r.current,e,t))}))},[r,e,i,S.data]),(0,U.useEffect)(()=>{let t=u;!t||t.piboSessionId!==e||(0,U.startTransition)(()=>{i(e=>GZ(r.current,e,t))})},[u,r,e,i]),(0,U.useEffect)(()=>{let t=C.data;!t||t.piboSessionId!==e||(0,U.startTransition)(()=>{d(e=>{if(!e)return e;if(p===void 0)return{...e,rawEvents:t.events};let n=new Set(t.events.map(e=>e.id));return{...e,rawEvents:[...t.events,...e.rawEvents.filter(e=>!n.has(e.id))]}})})},[p,C.data,e]);let w=(0,U.useCallback)(async n=>{if(!e||!n)return;let r=`${e}:${n}`;if(_.current||v.current.has(r))return;_.current=r,g(!0);let i=aQ(e,{includeRawEvents:t,rawEventsLimit:c,pageSize:100,beforeCursor:n});try{let t=await a.fetchQuery({queryKey:i,queryFn:async({signal:t})=>{let r=a.getQueryData(i),o=await Ou(e,{limit:100,beforeCursor:n,knownVersion:r?.version,signal:t});if(o.notModified&&r)return r;if(!o.timeline)throw Error(`Trace timeline response missing payload.`);return vQ(o.timeline)},staleTime:tQ,gcTime:nQ});(0,U.startTransition)(()=>{d(e=>e?QFe(e,t):t),s(e=>e+(t.pageSize??100))}),uIe(v.current,r)}finally{_.current===r&&(_.current=null),g(!1)}},[a,c,e,t]),T=e?u?.piboSessionId===e?u:f.current.get(e)??(S.data?.piboSessionId===e?S.data:null):null,E=e?n?.piboSessionId===e?n:r.current.get(e)??null:null,D=(0,U.useCallback)(()=>{let e=T?.rawEvents[0]?.eventSequence;m(e),l(e=>e+80)},[T?.rawEvents]);return{baseTraceView:T,liveTraceOverlay:E,traceEventLimit:o,rawEventLimit:c,traceSummaryQuery:x,tracePageQuery:S,rawEventsQuery:C,loadingOlderTracePage:h,tracePageReady:!!b,loadOlderTracePage:w,loadMoreRawEvents:D}}function uIe(e,t){if(e.add(t),e.size<=cIe)return;let n=e.values().next();n.done||e.delete(n.value)}function dIe(e){let t=e.currentEvents,n,r,i=()=>(r??=new Set(t.map(wQ)),r),a=e=>{n??=t.slice(),n.push(e),t=n};for(let o of e.streamEvents){let s=mIe(o,e.piboSessionId,e.nextSequence,e.now??(()=>new Date().toISOString()));if(!s)continue;if(fIe(s)){t=pIe(t,s),n=t,r=void 0;continue}let c=wQ(s),l=i();l.has(c)||(l.add(c),a(s))}return t}function fIe(e){return e.type===`assistant_message`||e.type===`thinking_finished`||e.type===`tool_execution_finished`}function pIe(e,t){return t.type===`assistant_message`?[...CQ(e,t,`assistant_delta`),t]:t.type===`thinking_finished`?[...CQ(e,t,`thinking_delta`),t]:t.type===`tool_execution_finished`?[...CQ(e,t,`tool_execution_updated`),t]:e}function mIe(e,t,n,r){if(e.type===`RAW_EVENT`&&DQ(e.event)&&typeof e.event.type==`string`){let i=e.event;return bQ(e,t,e.event.type,i,n,r)}if(e.type===`TEXT_MESSAGE_CONTENT`&&typeof e.delta==`string`)return bQ(e,t,`assistant_delta`,{type:`assistant_delta`,piboSessionId:t,eventId:typeof e.runId==`string`?e.runId:void 0,...EQ(typeof e.messageId==`string`?e.messageId:void 0,`assistant`),text:e.delta},n,r);if(e.type===`REASONING_MESSAGE_CONTENT`&&typeof e.delta==`string`)return bQ(e,t,`thinking_delta`,{type:`thinking_delta`,piboSessionId:t,eventId:typeof e.runId==`string`?e.runId:void 0,...EQ(typeof e.messageId==`string`?e.messageId:void 0,`thinking`),text:e.delta},n,r);if(e.type===`TOOL_CALL_START`&&typeof e.toolCallId==`string`&&typeof e.toolName==`string`)return bQ(e,t,`tool_execution_started`,{type:`tool_execution_started`,piboSessionId:t,eventId:typeof e.runId==`string`?e.runId:void 0,toolCallId:e.toolCallId,toolName:e.toolName,toolInvocationOrdinal:SQ(e.toolInvocationOrdinal)?e.toolInvocationOrdinal:void 0,args:e.args,...e.intent?{intent:e.intent}:{}},n,r);if(e.type===`TOOL_CALL_ARGS`&&typeof e.toolCallId==`string`&&typeof e.toolName==`string`){let i=typeof e.runId==`string`?e.runId:void 0,a=e.sourceEventType===`tool_execution_updated`?`tool_execution_updated`:`tool_call`;return bQ(e,t,a,a===`tool_execution_updated`?{type:`tool_execution_updated`,piboSessionId:t,eventId:i,toolCallId:e.toolCallId,toolName:e.toolName,toolInvocationOrdinal:SQ(e.toolInvocationOrdinal)?e.toolInvocationOrdinal:void 0,args:e.args,partialResult:e.partialResult,...e.intent?{intent:e.intent}:{}}:{type:`tool_call`,piboSessionId:t,eventId:i,toolCallId:e.toolCallId,toolName:e.toolName,toolInvocationOrdinal:SQ(e.toolInvocationOrdinal)?e.toolInvocationOrdinal:void 0,args:e.args,argsComplete:!!e.argsComplete,...e.intent?{intent:e.intent}:{}},n,r)}if(e.type===`TOOL_CALL_RESULT`&&typeof e.toolCallId==`string`&&typeof e.toolName==`string`)return bQ(e,t,`tool_execution_finished`,{type:`tool_execution_finished`,piboSessionId:t,eventId:typeof e.runId==`string`?e.runId:void 0,toolCallId:e.toolCallId,toolName:e.toolName,toolInvocationOrdinal:SQ(e.toolInvocationOrdinal)?e.toolInvocationOrdinal:void 0,result:e.result,isError:!!e.isError,...e.intent?{intent:e.intent}:{}},n,r);if(e.type===`RUN_ERROR`&&typeof e.message==`string`)return bQ(e,t,`session_error`,{type:`session_error`,piboSessionId:t,eventId:typeof e.runId==`string`?e.runId:void 0,error:e.message,errorDetails:e.errorDetails},n,r)}function bQ(e,t,n,r,i,a){let o=typeof e.streamFrameId==`string`?e.streamFrameId:void 0,s=typeof e.streamFrameIndex==`number`?e.streamFrameIndex:void 0,c=typeof e.liveReplayId==`number`&&Number.isFinite(e.liveReplayId)?e.liveReplayId:void 0,l=i(),u=xQ(e.renderSequence)?e.renderSequence:xQ(r.renderSequence)?r.renderSequence:void 0,d=u!==void 0&&r.renderSequence===void 0?{...r,renderSequence:u}:r;return{id:typeof e.streamId==`number`?`stream:${e.streamId}:${s??`raw`}:${n}`:c===void 0?o?`stream:${o}:${n}`:`live:${l}:${n}`:`live-replay:${c}:${n}`,piboSessionId:t,eventSequence:l,renderSequence:u,streamId:typeof e.streamId==`number`?e.streamId:void 0,streamFrameIndex:s,traceSource:`live`,eventId:typeof d.eventId==`string`?d.eventId:void 0,type:n,createdAt:hIe(e)??a(),payload:d}}function xQ(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>=0}function SQ(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>=0}function hIe(e){if(!(typeof e.createdAt!=`string`||!Number.isFinite(Date.parse(e.createdAt))))return e.createdAt}function CQ(e,t,n){let r=TQ(t);return e.filter(e=>e.type!==n||TQ(e)!==r)}function wQ(e){return e.streamId===void 0?`${e.id}:${e.type}`:e.streamFrameIndex===void 0?`stream:${e.streamId}:${e.id}:${e.type}`:`stream:${e.streamId}:${e.streamFrameIndex}:${e.type}`}function TQ(e){let t=DQ(e.payload)?e.payload:{},n=typeof t.piboSessionId==`string`?t.piboSessionId:e.piboSessionId??``,r=typeof t.eventId==`string`?t.eventId:e.eventId??``;if(typeof t.toolCallId==`string`){let e=typeof t.toolInvocationOrdinal==`number`?t.toolInvocationOrdinal:0;return`${n}:${r}:tool:${t.toolCallId}:${e}`}let i=typeof t.assistantIndex==`number`?t.assistantIndex:void 0,a=typeof t.thinkingIndex==`number`?t.thinkingIndex:void 0,o=typeof t.contentIndex==`number`?t.contentIndex:0;return`${n}:${r}:${i??a??o}`}function EQ(e,t){let n=e?.match(RegExp(`:${t}:(\\d+)$`));if(!n)return{};let r=Number(n[1]);return Number.isInteger(r)?t===`assistant`?{assistantIndex:r}:{thinkingIndex:r}:{}}function DQ(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}var gIe=500,_Ie=1e4,vIe=45e3,yIe=15e3,bIe=100,xIe=2;function SIe(e){let t=Math.max(e.eventCount??0,e.lastEventSequence??0);for(let n of e.rawEvents)t=Math.max(t,n.eventSequence??0);return t+1}function OQ(e){if(e.forceReconnect)return!0;let t=e.liveStream;return!t||t.piboSessionId!==e.selectedPiboSessionId||t.readyState===xIe||(e.nowMs??Date.now())-t.lastActivityAt>vIe}function kQ(e,t){return e===t}function CIe({selectedPiboSessionId:e,tracePageData:t,currentTraceView:n,liveEventSeqRef:r,selectedSessionStatus:i,tracePageReady:a,setLiveTraceOverlay:o,onRefreshTrace:s,onRefreshBootstrap:c,onRuntimeRequestEvent:l,onError:u}){let d=(0,U.useRef)(e);d.current=e;let f=(0,U.useRef)(new Map),p=(0,U.useRef)(void 0),m=(0,U.useRef)(void 0),h=(0,U.useRef)(new Map),g=(0,U.useRef)(new Map),_=(0,U.useRef)(null),v=(0,U.useRef)(void 0),y=(0,U.useRef)(0),b=(0,U.useRef)(!1),x=(0,U.useRef)(!1),[S,C]=(0,U.useState)(0);(0,U.useEffect)(()=>{let n=t;!n||n.piboSessionId!==e||(r.current=Math.max(r.current,SIe(n)),n.latestStreamId!==void 0&&ree(g.current,n.piboSessionId,n.latestStreamId))},[r,e,t]);let w=(0,U.useCallback)(e=>{let t=f.current.get(e);t?.length&&(f.current.delete(e),kQ(e,d.current)&&o(n=>{if(!kQ(e,d.current))return n;let i=dIe({currentEvents:n?.piboSessionId===e?n.events:[],streamEvents:t,piboSessionId:e,nextSequence:()=>r.current++});return YOe(e,t.length,i.length),{piboSessionId:e,events:i}}))},[]),T=(0,U.useCallback)(()=>{if(!(p.current!==void 0||m.current!==void 0||!e)){if(document.hidden){m.current=setTimeout(()=>{m.current=void 0,w(e)},bIe);return}p.current=requestAnimationFrame(()=>{p.current=void 0,w(e)})}},[w,e]),E=(0,U.useCallback)((t,n,r=!1)=>{Qu(h.current,t,n);let i=r||$u(h.current,t,n),a=f.current.get(t)??[];a.push(n),f.current.set(t,a),JOe(t,n,a.length,i),i||t!==e?w(t):T()},[w,T,e]);(0,U.useEffect)(()=>()=>{p.current!==void 0&&cancelAnimationFrame(p.current),m.current!==void 0&&clearTimeout(m.current),v.current!==void 0&&clearTimeout(v.current)},[]);let D=(0,U.useCallback)((e,t)=>{Ju(g.current,e,t)},[]),O=(0,U.useCallback)((e=0)=>{if(v.current!==void 0){if(e>0)return;clearTimeout(v.current)}v.current=setTimeout(()=>{v.current=void 0,C(e=>e+1)},e)},[]),k=(0,U.useCallback)((t=!1)=>{if(!e)return;w(e),s().catch(e=>u(AQ(e))),c().catch(e=>u(AQ(e)));let n=_.current;if(OQ({selectedPiboSessionId:e,liveStream:n?{piboSessionId:n.piboSessionId,lastActivityAt:n.lastActivityAt,readyState:n.events.readyState}:null,forceReconnect:t})){if(t){if(b.current)return;b.current=!0}O()}},[w,u,c,s,O,e]);(0,U.useEffect)(()=>{if(!e||!a||!n||n.piboSessionId!==e)return;let t=new URLSearchParams({piboSessionId:e});t.set(`mode`,`live`);let r=g.current.get(e),i=r?.cursor??(n.latestStreamId===void 0?void 0:Yu(n.latestStreamId));i!==void 0&&t.set(`since`,i),r?.liveReplayId!==void 0&&t.set(`liveSince`,String(r.liveReplayId));let o=new EventSource(`/api/chat/events?${t.toString()}`),d=Date.now();_.current={piboSessionId:e,events:o,openedAt:d,lastActivityAt:d};let f=!1,p,m,h=!1,x=!1,S=(t,n=!1)=>{if(p){if(!n)return;clearTimeout(p)}QOe(e,t),p=setTimeout(()=>{p=void 0,s().catch(e=>u(AQ(e)))},t)},C=()=>{if(h){x=!0;return}h=!0,c().catch(e=>u(AQ(e))).finally(()=>{h=!1,x&&(x=!1,T(250,!0))})},T=(e,t=!1)=>{if(m){if(!t)return;clearTimeout(m)}m=setTimeout(()=>{m=void 0,C()},e)},k=()=>{T(900,!0)};return o.onopen=()=>{y.current=0,b.current=!1,v.current!==void 0&&(clearTimeout(v.current),v.current=void 0),GOe(e,o.readyState);let t=_.current;t?.events===o&&(t.lastActivityAt=Date.now())},o.onerror=()=>{if(f)return;KOe(e,o.readyState);let t=_.current;t?.events===o&&(t.lastErrorAt=Date.now());let n=y.current++,r=Math.min(_Ie,gIe*2**n);O(r)},o.addEventListener(`pibo`,t=>{if(f)return;let n=qu(t);if(!n)return;let r=n.piboSessionId||e,i=_.current;if(i?.events===o&&(i.lastActivityAt=Date.now()),D(r,n),qOe(r,n,t.lastEventId,o.readyState),r===e&&n.type===`ready`&&n.liveReplay?.missed&&S(0,!0),tke(n))return;(n.type===`RUNTIME_APPROVAL_REQUESTED`||n.type===`RUNTIME_APPROVAL_RESOLVED`||n.type===`RUNTIME_USER_INPUT_REQUESTED`||n.type===`RUNTIME_USER_INPUT_RESOLVED`)&&l?.(n);let a=n.type!==`TEXT_MESSAGE_CONTENT`&&n.type!==`REASONING_MESSAGE_CONTENT`;r===e&&Zu(n)&&E(r,n,a);let s=iee(n);r===e&&s!==void 0?S(s,!0):r===e&&n.type!==`ready`&&n.type!==`RAW_EVENT`&&S(1500,!0),Xu(n)&&(n.type===`RUN_FINISHED`||n.type===`RUN_ERROR`||n.type===`TEXT_MESSAGE_END`?k():T(r===e?0:150))}),()=>{f=!0,p&&clearTimeout(p),m&&clearTimeout(m),w(e),_.current?.events===o&&(_.current=null),o.close()}},[n?.piboSessionId,E,w,u,c,s,l,D,O,S,e,a]),(0,U.useEffect)(()=>{n?.piboSessionId&&w(n.piboSessionId)},[n?.piboSessionId,w]),(0,U.useEffect)(()=>{let e=()=>k(),t=()=>k(!0),n=()=>{x.current=!0,_.current?.events.close()},r=()=>{if(document.hidden){n();return}x.current=!1,k(!0)},i=e=>{let t=x.current||e.persisted;x.current=!1,k(t)};return window.addEventListener(`focus`,e),window.addEventListener(`online`,t),window.addEventListener(`pagehide`,n),window.addEventListener(`pageshow`,i),document.addEventListener(`visibilitychange`,r),()=>{window.removeEventListener(`focus`,e),window.removeEventListener(`online`,t),window.removeEventListener(`pagehide`,n),window.removeEventListener(`pageshow`,i),document.removeEventListener(`visibilitychange`,r)}},[k]),(0,U.useEffect)(()=>{if(!e||i!==`running`)return;let t=window.setInterval(()=>{w(e);let t=_.current;OQ({selectedPiboSessionId:e,liveStream:t?{piboSessionId:t.piboSessionId,lastActivityAt:t.lastActivityAt,readyState:t.events.readyState}:null})&&(s().catch(e=>u(AQ(e))),O())},yIe);return()=>window.clearInterval(t)},[w,u,s,O,e,i])}function AQ(e){return e instanceof Error?e.message:String(e)}var wIe=10;function TIe(e,t,n,r){if(!t||!n.length)return e;let i=e[t]??[],a=new Set(i.map(e=>e.path)),o=n.filter(e=>e.path&&!a.has(e.path)).map(e=>({...e,id:r()}));return o.length?{...e,[t]:[...i,...o].slice(0,wIe)}:e}function EIe(e,t,n){if(!t)return e;let r=e[t]??[],i=r.filter(e=>e.id!==n);return i.length===r.length?e:{...e,[t]:i}}function DIe(e,t){return!t||!e[t]?.length?e:{...e,[t]:[]}}function OIe(e,t){let[n,r]=(0,U.useState)({});return{selectedUploadAttachments:(0,U.useMemo)(()=>e?n[e]??[]:[],[e,n]),attachUploadedFiles:(0,U.useCallback)(n=>{r(r=>TIe(r,e,n,t))},[t,e]),detachUploadAttachment:(0,U.useCallback)(t=>{r(n=>EIe(n,e,t))},[e]),clearSelectedUploadAttachments:(0,U.useCallback)(()=>{r(t=>DIe(t,e))},[e])}}function kIe({selectedPiboSessionId:e,onError:t,formatError:n,forcePanelVisible:r=!1}){let[i,a]=(0,U.useState)([]),[o,s]=(0,U.useState)(!1),[c,l]=(0,U.useState)(()=>e?uX(e):null),[u,d]=(0,U.useState)(()=>XNe()),[f,p]=(0,U.useState)(!1),m=!!(e&&c?.piboSessionId===e&&c.installed),h=!!e&&(r||o||m),g=Un({queryKey:[`web-annotations`,`app`,e],queryFn:async()=>{if(!e)throw Error(`Session is required`);return VNe(e,{limit:100,scope:`app`})},enabled:!!e&&(h||i.length>0),staleTime:1e3,refetchOnWindowFocus:h,refetchInterval:h?5e3:!1,retry:1}),_=g.refetch,v=(0,U.useMemo)(()=>(g.data?.annotations??[]).filter(e=>e.status!==`resolved`&&e.status!==`dismissed`),[g.data?.annotations]),y=(0,U.useMemo)(()=>i.map(e=>v.find(t=>t.id===e)).filter(e=>!!e),[i,v]);(0,U.useEffect)(()=>{a(e?YNe(e):[]),l(e?uX(e):null)},[e]),(0,U.useEffect)(()=>{if(!e)return;let t=t=>{!t||t.piboSessionId!==e||(l(e=>t.installed?t:e?.installed&&e.bindingId&&t.bindingId&&e.bindingId!==t.bindingId?e:t),t.installed?_():s(!1))},n=e=>t(pX(e.detail)),r=n=>{n.key===dX(e)&&t(fX(n.newValue))},i=()=>t(uX(e));return window.addEventListener(`pibo:web-annotation-overlay-state`,n),window.addEventListener(`storage`,r),window.addEventListener(`focus`,i),document.addEventListener(`visibilitychange`,i),i(),()=>{window.removeEventListener(`pibo:web-annotation-overlay-state`,n),window.removeEventListener(`storage`,r),window.removeEventListener(`focus`,i),document.removeEventListener(`visibilitychange`,i)}},[_,e]),(0,U.useEffect)(()=>{if(!g.data)return;if(!v.length){a(t=>(t.length&&e&&mX(e,[]),t.length?[]:t));return}let t=new Set(v.map(e=>e.id));a(n=>{let r=n.filter(e=>t.has(e));return r.length!==n.length&&e&&mX(e,r),r.length===n.length?n:r})},[e,v,g.data]),(0,U.useEffect)(()=>{let e=()=>{s(!0),_()};return window.addEventListener(`pibo:web-annotation-saved`,e),()=>window.removeEventListener(`pibo:web-annotation-saved`,e)},[_]);let b=(0,U.useCallback)(t=>{a(n=>{let r=t(n);return e&&mX(e,r),r})},[e]),x=(0,U.useCallback)(e=>{b(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e].slice(0,5))},[b]),S=(0,U.useCallback)(()=>b(()=>[]),[b]);return{selectedWebAnnotationIds:i,selectedWebAnnotations:y,visibleWebAnnotations:v,webAnnotationsPanelCollapsed:u,webAnnotationsPanelRendered:h,webAnnotationsPanelVisible:o,webAnnotationsQuery:g,clearingWebAnnotations:f,setWebAnnotationsPanelVisible:s,toggleWebAnnotationAttachment:x,detachWebAnnotationAttachment:(0,U.useCallback)(e=>{b(t=>t.filter(t=>t!==e))},[b]),clearSelectedWebAnnotationAttachments:S,toggleWebAnnotationsPanelCollapsed:(0,U.useCallback)(()=>{d(e=>{let t=!e;return ZNe(t),t})},[]),clearVisibleWebAnnotations:(0,U.useCallback)(async()=>{if(!(!v.length||f)&&window.confirm(`Dismiss ${v.length} visible web annotations? This keeps sent messages but clears the annotation list.`)){p(!0);try{await Promise.all(v.map(e=>HNe(e.id,{piboSessionId:e.piboSessionId,status:`dismissed`,summary:`Cleared from Chat Web UI`}))),S(),await _()}catch(e){t(n(e,`Could not clear web annotations`))}finally{p(!1)}}},[f,S,n,t,_,v])}}function jQ(e){return e.session?.profile??e.agents[0]?.name??e.customAgents[0]?.profileName??``}function AIe(e){return e?.identity??{userId:`user`}}function MQ(e,t){let n=MIe(e,t);return n?jIe(n):void 0}function NQ(e,t){for(let n of e){if(n.piboSessionId===t)return n;let e=NQ(n.children,t);if(e)return e}}function PQ(e,t,n=[]){for(let r of e){let e=[...n,r];if(r.piboSessionId===t)return e;let i=PQ(r.children,t,e);if(i.length)return i}return[]}function FQ(){let e=globalThis.crypto?.randomUUID?.()??Math.random().toString(36).slice(2);return`web-${Date.now().toString(36)}-${e}`}function IQ(e,t){return!e||e.startsWith(`optimistic-session-`)||t}function jIe(e){return`${e.provider}/${e.id}`}function MIe(e,t){if(t.activeModel)return t.activeModel;let n=e.agents.find(e=>e.name===t.profile);if(n?.model)return n.model;let r=e.customAgents.find(e=>e.profileName===t.profile),i=n??r;return t.parentId?i?.subagentModel??e.modelDefaults?.subagent:i?.mainModel??e.modelDefaults?.main}var LQ=new WeakMap;function NIe(e,t,n){let r=n.map(e=>RQ(e)),i=BQ(r),a=i.length?Math.min(...i.map(e=>e.startTime)):Date.now()*1e3,o=i.flatMap(e=>e.endTime?[e.endTime]:[]),s=o.length?Math.max(...o):void 0,c=i.some(e=>e.status===`UNSET`);return{id:e,name:t,status:i.some(e=>e.status===`ERROR`)?`ERROR`:c?`UNSET`:`OK`,spans:r,startedAt:new Date(a/1e3),completedAt:s?new Date(s/1e3):void 0,totalDurationMs:s?(s-a)/1e3:0}}function RQ(e){let t=LQ.get(e);if(t)return t;let n=zQ(e.startedAt)??Date.now()*1e3,r=zQ(e.completedAt),i=RIe(e.status),a=PIe(e.type),o={id:e.id,parentId:e.parentId,name:FIe(e),spanType:a,startTime:n,endTime:r,durationUs:e.durationMs===void 0?void 0:e.durationMs*1e3,attributes:IIe(e),status:i,statusMessage:e.error,events:e.error?[{name:`exception`,timestamp:r??n,attributes:{message:e.error}}]:[],children:e.children?.map(RQ),pibo:{entryId:e.entryId,linkedPiboSessionId:e.linkedPiboSessionId,traceNodeType:e.type,traceOrder:e.orderKey,stableKey:e.stableKey,source:e.source}};return LQ.set(e,o),o}function PIe(e){switch(e){case`user.message`:return`user.prompt`;case`assistant.message`:return`model.response`;case`model.reasoning`:return`model.reasoning`;case`tool.call`:return`tool.call`;case`tool.result`:return`tool.result`;case`agent.delegation`:return`agent.delegation`;case`agent.async`:return`agent.async`;case`execution.command`:case`execution.compaction`:return`execution.command`;case`yielded.run`:return`yielded.run`;case`agent.turn`:return`agent.run`;case`error`:return`tool.result`}}function FIe(e){return e.type===`assistant.message`?`assistant_message`:e.type===`user.message`?`user_prompt`:e.type===`model.reasoning`?`model_reasoning`:e.title||e.type}function IIe(e){let t={};if(e.summary&&(t.content=e.summary),e.input!==void 0&&(t.input=e.input,t.args=e.input,t.arguments=e.input),e.output!==void 0&&(t.output=e.output,t.result=e.output),e.error&&(t.error=e.error),e.toolCallId&&(t.tool_call_id=e.toolCallId),e.runId&&(t.run_id=e.runId),e.intent&&(t.intent=e.intent),(e.type===`tool.call`||e.type===`agent.delegation`)&&(t.tool_name=e.title),e.type===`assistant.message`&&(t.content=e.output??e.summary??``),e.type===`user.message`){t.content=e.output??e.summary??``;let n=LIe(e);n&&(t[`message.pending_delivery`]=n)}return e.type===`model.reasoning`&&(t.reasoning=e.output??e.summary??``),e.type===`agent.delegation`&&(t[`delegation.target_agent`]=VQ(e.input)&&typeof e.input.name==`string`?e.input.name:e.title.replace(/^pibo_agents_send_message$/,`agent`).replace(/^pibo_subagent_/,``),t[`delegation.query`]=e.summary??e.input,t[`result.status`]=e.status===`done`?`completed`:e.status,t.linked_pibo_session_id=e.linkedPiboSessionId),e.type===`agent.async`&&(t[`async_agent.target_agent`]=e.title,t[`async_agent.started_by`]=VQ(e.input)?e.input.startedBy:`pibo_run_start`,t[`async_agent.query`]=VQ(e.input)?e.input.arguments:e.input,t[`result.status`]=e.status===`done`?`started`:e.status,t.linked_pibo_session_id=e.linkedPiboSessionId),e.type===`yielded.run`&&(t[`run.notification`]=!0,t[`run.status`]=e.status),t}function LIe(e){if(e.type===`user.message`&&e.status===`running`){if(e.id.startsWith(`event:message_steered:`))return`steer`;if(e.id.startsWith(`event:message_queued:`))return`queue`}}function RIe(e){return e===`running`?`UNSET`:e===`error`?`ERROR`:`OK`}function zQ(e){if(!e)return;let t=new Date(e).getTime();return Number.isFinite(t)?t*1e3:void 0}function BQ(e){return e.flatMap(e=>[e,...e.children?BQ(e.children):[]])}function VQ(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function zIe(e,t,n){return WQ(e,t,n)?.capabilities.lifecycle.fork===!0}function BIe(e){if(!e)return`none`;let t=GQ(e.nodes).filter(e=>e.type===`user.message`);return`${t.length}:${t.at(-1)?.id??``}`}function VIe(e,t){if(!e)return e;let n=GQ(e.nodes).filter(e=>e.type===`user.message`),r=new Set,i=t.filter(e=>!e.entryId.trim()||r.has(e.entryId)?!1:(r.add(e.entryId),!0)),a=new Set(i.map(e=>e.entryId)),o=e=>e.entryId&&a.has(e.entryId)?e.entryId:void 0,s=new Map;if(n.length===i.length&&n.every((e,t)=>!o(e)||o(e)===i[t].entryId))for(let e=0;e<n.length;e+=1)s.set(n[e].id,i[e].entryId);else{let e=new Set(n.flatMap(e=>{let t=o(e);return t?[t]:[]})),t=n.filter(e=>!o(e)),r=new Map,a=new Map;for(let e of t){let t=HQ(e);r.set(t,(r.get(t)??0)+1)}for(let t of i){if(e.has(t.entryId))continue;let n=a.get(t.text);n?n.push(t):a.set(t.text,[t])}for(let e of t){let t=HQ(e),n=a.get(t)??[];r.get(t)===1&&n.length===1&&s.set(e.id,n[0].entryId)}}let c=UQ(e.nodes,s,a);return c.every((t,n)=>t===e.nodes[n])?e:{...e,nodes:c}}function HQ(e){return typeof e.output==`string`?e.output:typeof e.summary==`string`?e.summary:e.title}function UQ(e,t,n){return e.map(e=>{let r=UQ(e.children,t,n),i=t.get(e.id),a=e.type===`user.message`?i??(e.entryId&&n.has(e.entryId)?e.entryId:void 0):e.entryId,o=r.some((t,n)=>t!==e.children[n]);if(a===e.entryId&&!o)return e;let{entryId:s,...c}=e;return{...c,...a?{entryId:a}:{},children:r}})}function WQ(e,t,n){let r=t?NQ(e.sessions,t):void 0,i=e.agents.find(e=>e.name===n),a=e.customAgents.find(e=>e.profileName===n)??i,o=e.session?.id===t?e.session.runtimeBinding:void 0,s=r?.runtimeInstanceId??o?.runtimeInstanceId??a?.runtimeInstanceId;return e.agentCatalog?.agentRuntimes.find(e=>s?e.id===s:r?.runtimeAdapterId?e.adapterId===r.runtimeAdapterId:!1)}function HIe(e,t,n,r){if(r?.latestTurn?.state!==`running`)return!1;let i=WQ(e,t,n);return i?.enabled!==!1&&i?.available!==!1&&i?.capabilities.input?.steering===!0}function UIe(e,t,n){t&&NQ(e.sessions,t);let r=e.agents.find(e=>e.name===n),i=e.customAgents.find(e=>e.profileName===n)??r,a=WQ(e,t,n)?.capabilities.tools.intentTracing;if(!a?.supported)return!1;if(!a.configurable)return!0;let o=(e.session?.id===t?e.session.runtimeBinding:void 0)?.metadata?.intentTracing;if(typeof o==`boolean`)return o;let s=i?.runtimeOptions?.intentTracing;return typeof s==`boolean`?s:a.enabledByDefault}function WIe(e){return(e.selectedPiboSessionId?NQ(e.sessionNodes,e.selectedPiboSessionId):void 0)?.title||e.traceTitle||e.selectedPiboSessionId||e.fallback}function GIe(e,t){return t?{sessionBreadcrumbs:XIe(e,t),originSession:JIe(e,t),derivedSessions:YIe(e,t)}:{sessionBreadcrumbs:[],originSession:void 0,derivedSessions:[]}}function KIe(e){let t=e.selectedPiboSessionId?NQ(e.bootstrap.sessions,e.selectedPiboSessionId):void 0,n=eLe(e.currentTraceView);return $Ie(e.selectedSessionActiveModel,e.bootstrap.runtimeStatus?.thinkingLevel??n.level??t?.initialThinkingLevel??ZIe(e.bootstrap,e.selectedSessionProfile,!!t?.parentId),e.bootstrap.runtimeStatus?.fastMode??n.fast??QIe(e.bootstrap,e.selectedSessionProfile,!!t?.parentId)??!1)}function qIe(e){return{traceView:e.currentTraceView,selectedTrace:e.currentTraceView?NIe(e.currentTraceView.piboSessionId,e.currentTraceView.title,e.currentTraceView.nodes):null,isLoading:e.isLoading,showThinking:e.showThinking,expandThinking:e.expandThinking,toolDisplayMode:e.toolDisplayMode,sessionAgentProfile:e.selectedSessionProfile,sessionActiveModel:e.sessionActiveModelBadge,sessionRuntimeBinding:e.sessionRuntimeBinding,selectedSessionStatus:e.selectedSessionStatus,selectedSessionSignal:e.selectedSessionSignal,signals:e.signals,sessionGoal:e.sessionGoal,workflowProjectSession:e.workflowProjectSession,workflowLifecycleEvents:e.workflowLifecycleEvents,sessionNodes:e.sessionNodes,sessionBreadcrumbs:e.sessionLinks.sessionBreadcrumbs,originSession:e.sessionLinks.originSession,derivedSessions:e.sessionLinks.derivedSessions,agentProfiles:e.agentProfiles,sessionProfileChangeDisabled:e.sessionProfileChangeDisabled,onSessionAgentProfileChange:e.onSessionAgentProfileChange,onFork:e.onFork,onOpenSession:e.onOpenSession,onLoadOlderTracePage:e.onLoadOlderTracePage,hasOlderTraceEvents:e.hasOlderTraceEvents,isFetchingOlderTracePage:e.isFetchingOlderTracePage,onThinkingLevelChange:e.onThinkingLevelChange,onModelChanged:async()=>{await e.onRefreshBootstrap(),await e.onRefreshTrace()},onRefreshBootstrap:e.onRefreshBootstrap,onError:e.onError}}function JIe(e,t){let n=NQ(e,t);if(!n?.originId)return;let r=NQ(e,n.originId);return{piboSessionId:n.originId,label:r?KQ(r,0):n.originId}}function YIe(e,t){return NQ(e,t)?.derivedSessions.map(e=>({piboSessionId:e.piboSessionId,label:nLe(e),profile:e.profile,status:e.status}))??[]}function XIe(e,t){return PQ(e,t).map((e,t)=>({piboSessionId:e.piboSessionId,label:KQ(e,t)}))}function ZIe(e,t,n=!1){let r=e.agents.find(e=>e.name===t),i=e.customAgents.find(e=>e.profileName===t),a=r??i;return n?a?.subagentThinkingLevel??a?.thinkingLevel??e.modelDefaults?.subagentThinking??e.modelDefaults?.thinking:a?.mainThinkingLevel??a?.thinkingLevel??e.modelDefaults?.mainThinking??e.modelDefaults?.thinking}function QIe(e,t,n=!1){let r=e.agents.find(e=>e.name===t),i=e.customAgents.find(e=>e.profileName===t),a=r??i;return n?a?.subagentFast??a?.fast??e.modelDefaults?.subagentFast??e.modelDefaults?.fast:a?.mainFast??a?.fast??e.modelDefaults?.mainFast??e.modelDefaults?.fast}function $Ie(e,t,n){if(e)return[e,t,n?`fast`:void 0].filter(Boolean).join(` `)}function eLe(e){let t={};if(!e)return t;for(let n of GQ(e.nodes)){if(n.type!==`execution.command`||n.title!==`thinking`&&n.title!==`fast_mode`)continue;let e=n.output&&typeof n.output==`object`?n.output:void 0;t={level:(typeof e?.level==`string`&&tLe(e.level)?e.level:void 0)??t.level,fast:n.title===`fast_mode`?e?.mode===`fast`:t.fast}}return t}function GQ(e){return e.flatMap(e=>[e,...GQ(e.children)])}function tLe(e){return rJ.includes(e)}function KQ(e,t){return t?e.subagentName&&e.subagentName!==e.profile?`${e.subagentName} (${e.profile})`:e.profile||e.subagentName||e.title:e.profile||e.title}function nLe(e){return e.subagentName&&e.subagentName!==e.profile?`${e.subagentName} (${e.profile})`:e.title||e.profile||e.subagentName||`Untitled Session`}function rLe({piboSessionId:e,text:t,selectedWebAnnotations:n,selectedUploadAttachments:r,eventSequence:i,now:a,clientTxnId:o,delivery:s=`queue`}){let c=n.map(e=>e.id),l=r.map(e=>e.path),u=s===`steer`?`message_steered`:`message_queued`;return{piboSessionId:e,text:t,webAnnotationIds:c,fileAttachmentPaths:l,clientTxnId:o,delivery:s,optimisticEvent:{id:o,piboSessionId:e,eventSequence:i,eventId:o,type:u,createdAt:a,payload:{type:u,piboSessionId:e,eventId:o,clientTxnId:o,delivery:s,...s===`queue`?{queuedMessages:1}:{},text:t,...l.length?{fileAttachmentPaths:l}:{},source:`user`}}}}function iLe(e,t){if(e.delivery===t)return e;let n=t===`steer`?`message_steered`:`message_queued`,r={...e.optimisticEvent.payload};return delete r.queuedMessages,{...e,delivery:t,optimisticEvent:{...e.optimisticEvent,type:n,payload:{...r,type:n,delivery:t,...t===`queue`?{queuedMessages:1}:{}}}}}function aLe(e,t,n){return{piboSessionId:t,events:[...e?.piboSessionId===t?e.events:[],n]}}var oLe=`optimistic-session-`;function sLe(e){return e?.startsWith(oLe)===!0}function qQ(e){return e&&!sLe(e)?e:null}function JQ(e){return e instanceof Error?e.message:String(e)}var cLe=[`(display-mode: standalone)`,`(display-mode: window-controls-overlay)`];function lLe(e,t){return cLe.some(t=>e(t).matches)?typeof t.userAgentData?.mobile==`boolean`?!t.userAgentData.mobile:!(/Android|iPhone|iPad|iPod|Mobile/i.test(t.userAgent)||/Macintosh/i.test(t.userAgent)&&t.maxTouchPoints>1):!1}function uLe(){return typeof window<`u`&&typeof navigator<`u`&&lLe(window.matchMedia.bind(window),navigator)}function dLe(e,t){return{url:e,name:`pibo-session-${t}`,features:`width=1280,height=900`}}function fLe(){let e=dLe(window.location.href,crypto.randomUUID());return window.open(e.url,e.name,e.features)}var pLe=[{id:`accept`,label:`Approve once`},{id:`acceptForSession`,label:`Approve for session`},{id:`decline`,label:`Decline`},{id:`cancel`,label:`Cancel turn`}];function YQ({piboSessionId:e,approvals:t,userInputs:n,onResolved:r,onError:i}){let[a,o]=(0,U.useState)(null);if(t.length===0&&n.length===0)return null;let s=async(t,n)=>{if(!a){o(t),i(null);try{await eu(e,`runtime.approval.respond`,{requestId:t,decision:n}),r(t)}catch(e){i(JQ(e))}finally{o(null)}}},c=async(t,n)=>{if(!a){o(t),i(null);try{await eu(e,`runtime.user_input.respond`,{requestId:t,answers:n}),r(t)}catch(e){i(JQ(e))}finally{o(null)}}};return(0,W.jsx)(`section`,{className:`border-t border-slate-800 bg-[#101d22] px-3 py-2 sm:px-4`,"data-pibo-debug":`runtime-request-panel`,"aria-label":`Runtime requests`,children:(0,W.jsxs)(`div`,{className:`mx-auto grid w-full max-w-4xl gap-2`,children:[t.map(e=>(0,W.jsx)(mLe,{request:e,busy:a===e.requestId,disabled:a!==null,onDecision:t=>void s(e.requestId,t)},e.requestId)),n.map(e=>(0,W.jsx)(hLe,{request:e,busy:a===e.requestId,disabled:a!==null,onSubmit:t=>void c(e.requestId,t)},e.requestId))]})})}function mLe({request:e,busy:t,disabled:n,onDecision:r}){let i=e.decisions?.length?e.decisions:pLe;return(0,W.jsxs)(`article`,{className:`rounded-sm border border-amber-500/40 bg-amber-500/5`,"data-pibo-debug":`runtime-approval-request`,children:[(0,W.jsxs)(`div`,{className:`flex items-start gap-3 border-b border-amber-500/20 px-3 py-2`,children:[(0,W.jsx)(hl,{size:16,className:`mt-0.5 shrink-0 text-amber-400`,"aria-hidden":`true`}),(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`h3`,{className:`text-xs font-bold uppercase tracking-wider text-amber-300`,children:e.title||`Approval required`}),(0,W.jsx)(`span`,{className:`rounded-sm border border-slate-700 px-1.5 py-0.5 font-mono text-[10px] uppercase text-slate-400`,children:e.requestType})]}),e.detail?(0,W.jsx)(`p`,{className:`mt-1 text-xs leading-5 text-slate-300`,children:e.detail}):null]})]}),e.arguments===void 0?null:(0,W.jsx)(`pre`,{className:`max-h-36 overflow-auto border-b border-slate-800 bg-[#0e1116] px-3 py-2 font-mono text-[11px] leading-5 text-slate-300`,children:vLe(e.arguments)}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-2 px-3 py-2`,children:i.map(e=>(0,W.jsx)(`button`,{type:`button`,onClick:()=>r(e.id),disabled:n,title:e.description,className:_Le(e.id),"data-pibo-decision":e.id,children:t?`Responding…`:e.label},e.id))})]})}function hLe({request:e,busy:t,disabled:n,onSubmit:r}){let[i,a]=(0,U.useState)({}),o=(0,U.useMemo)(()=>e.questions.every(e=>!!i[e.id]?.trim()),[i,e.questions]);return(0,W.jsxs)(`article`,{className:`rounded-sm border border-cyan-500/40 bg-cyan-500/5`,"data-pibo-debug":`runtime-user-input-request`,children:[(0,W.jsxs)(`div`,{className:`flex items-start gap-3 border-b border-cyan-500/20 px-3 py-2`,children:[(0,W.jsx)(tc,{size:16,className:`mt-0.5 shrink-0 text-cyan-400`,"aria-hidden":`true`}),(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`h3`,{className:`text-xs font-bold uppercase tracking-wider text-cyan-300`,children:`Input requested`}),(0,W.jsx)(`span`,{className:`rounded-sm border border-slate-700 px-1.5 py-0.5 font-mono text-[10px] uppercase text-slate-400`,children:e.blocking===!1?`non-blocking`:`blocking`})]}),(0,W.jsx)(`p`,{className:`mt-1 text-xs leading-5 text-slate-400`,children:`Codex is waiting for structured input before continuing this turn.`})]})]}),(0,W.jsx)(`div`,{className:`grid gap-3 px-3 py-3`,children:e.questions.map(t=>(0,W.jsx)(gLe,{question:t,groupName:`runtime-question-${e.requestId}-${t.id}`,value:i[t.id]??``,disabled:n,onChange:e=>a(n=>({...n,[t.id]:e}))},t.id))}),(0,W.jsx)(`div`,{className:`flex justify-end border-t border-cyan-500/20 px-3 py-2`,children:(0,W.jsx)(`button`,{type:`button`,onClick:()=>r(i),disabled:n||!o,className:`rounded-sm border border-[#11a4d4] bg-[#11a4d4] px-3 py-1.5 text-xs font-semibold text-white transition hover:bg-[#0d8eb8] disabled:cursor-not-allowed disabled:opacity-50`,children:t?`Submitting…`:`Submit response`})})]})}function gLe({question:e,groupName:t,value:n,disabled:r,onChange:i}){let a=e.options??[],o=new Set(a.map(e=>e.label)),s=!!n&&!o.has(n);return(0,W.jsxs)(`fieldset`,{className:`grid gap-2`,disabled:r,children:[(0,W.jsxs)(`legend`,{className:`text-xs font-semibold text-slate-200`,children:[e.header?(0,W.jsx)(`span`,{className:`mr-2 font-mono uppercase text-cyan-400`,children:e.header}):null,e.question]}),a.length?(0,W.jsxs)(`div`,{className:`grid gap-1.5 sm:grid-cols-2`,children:[a.map(e=>(0,W.jsxs)(`label`,{className:`flex cursor-pointer gap-2 rounded-sm border border-slate-700 bg-[#151f24] px-2.5 py-2 text-xs hover:border-cyan-500/60`,children:[(0,W.jsx)(`input`,{type:`radio`,name:t,value:e.label,checked:n===e.label,onChange:()=>i(e.label),className:`mt-0.5 accent-[#11a4d4]`}),(0,W.jsxs)(`span`,{children:[(0,W.jsx)(`span`,{className:`block font-semibold text-slate-200`,children:e.label}),e.description?(0,W.jsx)(`span`,{className:`mt-0.5 block leading-4 text-slate-400`,children:e.description}):null]})]},e.label)),e.allowFreeform?(0,W.jsxs)(`label`,{className:`flex cursor-pointer gap-2 rounded-sm border border-slate-700 bg-[#151f24] px-2.5 py-2 text-xs hover:border-cyan-500/60`,children:[(0,W.jsx)(`input`,{type:`radio`,name:t,checked:s,onChange:()=>i(`Other`),className:`mt-0.5 accent-[#11a4d4]`}),(0,W.jsx)(`span`,{className:`font-semibold text-slate-200`,children:`Other`})]}):null]}):null,a.length===0||e.allowFreeform&&s?(0,W.jsx)(`input`,{type:e.secret?`password`:`text`,value:s&&n===`Other`?``:n,onChange:e=>i(e.target.value),autoComplete:`off`,placeholder:e.secret?`Enter a private response`:`Enter a response`,className:`w-full rounded-sm border border-slate-700 bg-[#0e1116] px-2.5 py-2 font-mono text-xs text-slate-200 outline-none focus:border-[#11a4d4] focus:ring-1 focus:ring-[#11a4d4]/40`}):null]})}function _Le(e){let t=`rounded-sm border px-2.5 py-1.5 text-xs font-semibold transition disabled:cursor-not-allowed disabled:opacity-50`;return e===`accept`?`${t} border-emerald-500/60 bg-emerald-500/10 text-emerald-300 hover:bg-emerald-500/20`:e===`acceptForSession`?`${t} border-cyan-500/60 bg-cyan-500/10 text-cyan-300 hover:bg-cyan-500/20`:e===`cancel`?`${t} border-red-500/60 bg-red-500/10 text-red-300 hover:bg-red-500/20`:`${t} border-slate-600 bg-slate-800/60 text-slate-300 hover:border-slate-500`}function vLe(e){if(typeof e==`string`)return e;try{return JSON.stringify(e,null,2)}catch{return`[unavailable]`}}async function yLe(e,t={}){return K(`/api/previews?piboSessionId=${encodeURIComponent(e)}`,{signal:t.signal})}async function bLe(e){return(await K(`/api/previews/${encodeURIComponent(e)}/start`,{method:`POST`,headers:{"content-type":`application/json`},body:`{}`})).preview}async function xLe(e){return(await K(`/api/previews/${encodeURIComponent(e)}/stop`,{method:`POST`,headers:{"content-type":`application/json`},body:`{}`})).preview}async function SLe(e){return K(`/api/previews/${encodeURIComponent(e)}`,{method:`DELETE`,headers:{"content-type":`application/json`}})}function CLe(e){let t=e.selectedPiboSessionId;return t?e.error?{kind:`error`,piboSessionId:t,previews:[],message:e.error}:e.loading||e.data?.piboSessionId!==t?{kind:`loading`,piboSessionId:t,previews:[]}:e.data.configured?e.data.previews.length===0?{kind:`empty`,piboSessionId:t,previews:[]}:{kind:`ready`,piboSessionId:t,previews:e.data.previews}:{kind:`unconfigured`,piboSessionId:t,previews:[]}:{kind:`idle`,previews:[]}}function wLe(e,t){if(e.kind===`ready`)return t?.piboSessionId===e.piboSessionId?e.previews.find(e=>e.id===t.previewId)??e.previews[0]:e.previews[0]}function TLe(e,t){if(t.piboSessionId!==e)throw Error(`Preview lifecycle response belongs to a different Pibo Session`);return t}function XQ(e){return e===`online`?`border-emerald-500/50 bg-emerald-500/10 text-emerald-300`:e===`starting`||e===`stopping`?`border-cyan-500/50 bg-cyan-500/10 text-cyan-300`:e===`offline`||e===`error`?`border-amber-500/50 bg-amber-500/10 text-amber-300`:`border-slate-600 bg-slate-800 text-slate-400`}function ZQ(e){e.health===`online`&&window.open(e.openUrl,`_blank`,`noopener,noreferrer`)}function ELe(e,t){let n=new URL(e.openUrl,window.location.origin);return n.searchParams.set(`piboPreviewReload`,String(t)),n.toString()}function QQ({previews:e,selectedPreview:t,loading:n,error:r,reloadKey:i,fullscreen:a=!1,actionPending:o=!1,onSelect:s,onReload:c,onRefresh:l,onStart:u,onStop:d,onRemove:f,onEnterFullscreen:p,onExitFullscreen:m}){let[h,g]=(0,U.useState)(!1),_=(0,U.useRef)(m);if(_.current=m,(0,U.useEffect)(()=>{a&&!t&&_.current?.()},[a,t]),n)return(0,W.jsx)(t$,{label:`Loading live previews…`});if(r)return(0,W.jsx)(t$,{label:r,tone:`error`});if(!t)return(0,W.jsx)(t$,{label:`No active live preview is attached to this Pibo Session.`});let v=t.health===`online`,y=t.managed&&[`running`,`starting`,`stopping`].includes(t.serverState??``),b=t.managed&&!y,x=t.managed&&t.serverState!==`stopping`&&y;return(0,W.jsxs)(`section`,{"data-pibo-debug":`session-live-preview`,"data-pibo-preview-id":t.id,"data-pibo-preview-session-id":t.piboSessionId,"data-pibo-preview-public-origin":new URL(t.publicUrl).origin,"data-pibo-preview-fullscreen":a?`true`:`false`,className:`min-h-0 flex-1 bg-[#0e1116] flex flex-col`,children:[a&&m?(0,W.jsx)($Q,{preview:t,actionPending:o,onReload:c,onStart:()=>u(t.id),onStop:()=>d(t.id),onExit:m}):a?null:(0,W.jsxs)(`div`,{className:`min-h-11 border-b border-slate-800 bg-[#151f24] px-3 flex items-center gap-2 max-[640px]:flex-wrap max-[640px]:py-1.5`,children:[(0,W.jsx)(`label`,{className:`sr-only`,htmlFor:`session-live-preview-select`,children:`Selected live preview`}),(0,W.jsx)(`select`,{id:`session-live-preview-select`,name:`session-live-preview`,value:t.id,onChange:e=>s(e.target.value),"aria-label":`Selected live preview`,className:`min-w-0 max-w-72 h-8 border border-slate-700 bg-[#0e1116] px-2 text-xs text-slate-200 focus:border-[#11a4d4] focus:outline-none`,children:e.map(e=>(0,W.jsx)(`option`,{value:e.id,children:e.label},e.id))}),(0,W.jsx)(`span`,{className:`rounded-sm border px-2 py-1 text-[10px] font-bold uppercase tracking-wider ${XQ(t.health)}`,children:t.health}),(0,W.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-[11px] text-slate-500`,children:t.serverStopAt&&y?`stops ${OLe(t.serverStopAt)}`:`session-linked`}),(0,W.jsx)(e$,{label:`Refresh preview status`,onClick:l,children:(0,W.jsx)(il,{size:14})}),b?(0,W.jsx)(e$,{label:`Start Preview server`,disabled:o,onClick:()=>u(t.id),children:(0,W.jsx)(el,{size:14})}):null,x?(0,W.jsx)(e$,{label:`Stop Preview server`,disabled:o,onClick:()=>d(t.id),children:(0,W.jsx)(bl,{size:13})}):null,(0,W.jsx)(e$,{label:`Reload live preview`,disabled:!v,onClick:c,children:(0,W.jsx)(il,{size:14})}),(0,W.jsx)(e$,{label:h?`Copied preview link`:`Copy authenticated preview link`,disabled:!v,onClick:()=>{v&&Gq(new URL(t.openUrl,window.location.origin).toString()).then(()=>{g(!0),window.setTimeout(()=>g(!1),900)})},children:(0,W.jsx)(sc,{size:14})}),(0,W.jsx)(e$,{label:`Open live preview in new window`,disabled:!v,onClick:()=>ZQ(t),children:(0,W.jsx)(fc,{size:14})}),p?(0,W.jsx)(e$,{label:`Enter Preview fullscreen`,disabled:!v,onClick:p,children:(0,W.jsx)(zc,{size:14})}):null,(0,W.jsx)(e$,{label:`Remove live preview`,danger:!0,disabled:o,onClick:()=>f(t.id),children:(0,W.jsx)(Sl,{size:14})})]}),v?(0,W.jsx)(`iframe`,{title:`Live preview: ${t.label}`,src:ELe(t,i),sandbox:`allow-scripts allow-same-origin allow-forms allow-downloads allow-modals allow-popups allow-pointer-lock`,referrerPolicy:`no-referrer`,className:`min-h-0 flex-1 w-full border-0 bg-white`,"data-pibo-debug":`session-live-preview-frame`},`${t.piboSessionId}:${t.id}:${i}`):(0,W.jsx)(DLe,{preview:t,actionPending:o,onStart:()=>u(t.id)})]})}function $Q({preview:e,actionPending:t=!1,onReload:n,onStart:r,onStop:i,onExit:a}){let o=(0,U.useRef)(null),s=(0,U.useRef)(a);s.current=a,(0,U.useEffect)(()=>{let e=document.activeElement instanceof HTMLElement?document.activeElement:void 0,t=()=>{let t=document.querySelector(`[data-pibo-debug="session-live-preview"] [aria-label="Enter Preview fullscreen"]`);t?t.focus():e?.isConnected&&e.focus()};o.current?.focus();let n=e=>{e.key===`Escape`&&(e.preventDefault(),s.current())};return window.addEventListener(`keydown`,n,!0),()=>{window.removeEventListener(`keydown`,n,!0),window.setTimeout(t,0)}},[]);let c=e.health===`online`,l=e.managed&&[`running`,`starting`,`stopping`].includes(e.serverState??``);return(0,W.jsxs)(`div`,{"data-pibo-debug":`preview-fullscreen-top-bar`,className:`h-8 min-h-8 flex items-center gap-2 border-b border-slate-600 bg-[#151f24] px-2`,children:[(0,W.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-semibold`,children:e.label}),(0,W.jsx)(`span`,{className:`rounded-sm border px-1.5 py-0.5 text-[9px] font-bold uppercase tracking-wider ${XQ(e.health)}`,children:e.health}),e.managed&&!l?(0,W.jsx)(e$,{label:`Start Preview server`,disabled:t,onClick:r,children:(0,W.jsx)(el,{size:14})}):null,e.managed&&e.serverState!==`stopping`&&l?(0,W.jsx)(e$,{label:`Stop Preview server`,disabled:t,onClick:i,children:(0,W.jsx)(bl,{size:13})}):null,(0,W.jsx)(e$,{label:`Reload live preview`,disabled:!c,onClick:n,children:(0,W.jsx)(il,{size:14})}),(0,W.jsx)(e$,{label:`Open live preview in new window`,disabled:!c,onClick:()=>ZQ(e),children:(0,W.jsx)(fc,{size:14})}),(0,W.jsx)(e$,{buttonRef:o,label:`Exit Preview fullscreen`,onClick:a,children:(0,W.jsx)(Zc,{size:14})})]})}function DLe({preview:e,actionPending:t,onStart:n}){let r=[`running`,`starting`,`stopping`].includes(e.serverState??``),i=e.health===`starting`?`Starting Preview server…`:e.health===`stopping`?`Stopping Preview server…`:e.health===`error`?`The Preview server could not stay running.`:e.managed&&r?`The Preview server is running, but its port is not reachable.`:e.managed?`The Preview server is stopped.`:`The exposed server is offline.`;return(0,W.jsx)(`div`,{className:`min-h-0 flex-1 grid place-items-center bg-[#0e1116] p-6 text-center`,role:`status`,"aria-live":`polite`,children:(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-sm text-slate-400`,children:i}),e.managed&&!r?(0,W.jsxs)(`button`,{type:`button`,disabled:t,onClick:n,className:`mt-4 inline-flex items-center gap-2 border border-[#11a4d4] bg-[#11a4d4]/10 px-3 py-2 text-xs font-semibold text-[#7ddfff] hover:bg-[#11a4d4]/20 disabled:opacity-50`,children:[(0,W.jsx)(el,{size:14}),` `,t?`Starting…`:`Start server`]}):null]})})}function e$({buttonRef:e,label:t,danger:n=!1,disabled:r=!1,onClick:i,children:a}){return(0,W.jsx)(`button`,{ref:e,type:`button`,title:t,"aria-label":t,disabled:r,onClick:i,className:`h-7 w-7 shrink-0 inline-flex items-center justify-center border rounded-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#11a4d4]/60 disabled:cursor-not-allowed disabled:opacity-35 ${n?`border-red-500/40 text-red-300 hover:border-red-300 hover:text-red-200`:`border-slate-700 text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`}`,children:a})}function t$({label:e,tone:t=`normal`}){return(0,W.jsx)(`div`,{role:t===`error`?`alert`:`status`,className:`min-h-0 flex-1 grid place-items-center bg-[#0e1116] p-6 text-sm ${t===`error`?`text-red-200`:`text-slate-500`}`,children:e})}function OLe(e){let t=new Date(e);return Number.isNaN(t.getTime())?`soon`:t.toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`})}var n$=e=>[`chat`,`session-live-previews`,e];function kLe(e,t,n){let r=(0,U.useRef)(n);r.current=n,(0,U.useEffect)(()=>{e&&!t&&r.current?.()},[e,t])}function r$({bootstrap:e,selectedPiboSessionId:t,selectedRoomId:n,contextKind:r=`room`,contextLabel:i,selectedRoomArchived:a,roomNavigationPending:o,sessionNavigationPending:s,selectedSessionProfile:c,selectedSessionActiveModel:l,selectedSessionStatus:u,selectedSessionSignal:d,signals:f,workflowProjectSession:p,workflowLifecycleEvents:m,projectSessionCreatePanel:h,workflowStartPanel:g,projectModulePanel:_,extraViewTabs:v,activeViewId:y,sessionViewId:b,sessionViews:x,currentSessionView:S,desktopTerminalOnly:C=!1,allowedSessionViewIds:w,creatingSession:T,terminalFullscreen:E=!1,onEnterTerminalFullscreen:D,onExitTerminalFullscreen:O,showRawEvents:k,showThinking:A,expandThinking:j,toolDisplayMode:M,commands:N,skills:P,composerText:F,composerFocusSignal:I,onComposerTextChange:L,onToggleRawEvents:R,onToggleThinking:z,onToggleExpandThinking:B,onToolDisplayModeChange:ee,onSessionAgentProfileChange:te,onFork:ne,onOpenSession:re,onSelectSessionView:V,onCommand:ie,onThinkingLevelChange:ae,onRefreshTrace:oe,onRefreshBootstrap:se,onSend:ce,onError:le,desktopActiveTool:ue=null,desktopToolHosts:de,onOpenDesktopTool:fe,onCloseDesktopTool:pe,desktopPreviewFullscreen:me=!1,onEnterDesktopPreviewFullscreen:he,onExitDesktopPreviewFullscreen:ge}){let _e=On(),ve=(0,U.useRef)(0),ye=(0,U.useRef)(new Map),[be,xe]=(0,U.useState)(null),Se=(0,U.useCallback)(e=>{xe(t=>{let n=typeof e==`function`?e(t):e;return n&&ye.current.set(n.piboSessionId,n),n})},[]),[Ce,we]=(0,U.useState)(null),[H,Te]=(0,U.useState)([]),[Ee,De]=(0,U.useState)([]),Oe=(0,U.useRef)(new Set),ke=(0,U.useRef)(null),Ae=(0,U.useRef)(null),je=qQ(t);(0,U.useEffect)(()=>{let t=e.runtimeStatus?.piboSessionId===je?e.runtimeStatus:void 0;Te(t?.pendingApprovals?[...t.pendingApprovals]:[]),De(t?.pendingUserInputs?[...t.pendingUserInputs]:[])},[e.runtimeStatus,je]);let Me=(0,U.useCallback)(e=>{if(e.type===`RUNTIME_APPROVAL_REQUESTED`){Te(t=>[...t.filter(t=>t.requestId!==e.request.requestId),e.request]);return}if(e.type===`RUNTIME_USER_INPUT_REQUESTED`){De(t=>[...t.filter(t=>t.requestId!==e.request.requestId),e.request]);return}Te(t=>t.filter(t=>t.requestId!==e.requestId)),De(t=>t.filter(t=>t.requestId!==e.requestId))},[]),Ne=(0,U.useCallback)(e=>{Te(t=>t.filter(t=>t.requestId!==e)),De(t=>t.filter(t=>t.requestId!==e))},[]),Pe=Un({queryKey:je?[`chat`,`session-goal`,je]:[`chat`,`session-goal`,`idle`],queryFn:({signal:e})=>zje(je,{signal:e}),enabled:!!je,refetchInterval:je?5e3:!1}),Fe=(0,U.useRef)(je);Fe.current=je;let[Ie,Le]=(0,U.useState)(null),[Re,ze]=(0,U.useState)(),[Be,Ve]=(0,U.useState)(),He=(0,U.useRef)(new Set),[Ue,We]=(0,U.useState)(new Set),Ge=Un({queryKey:n$(je||`idle`),queryFn:async({signal:e})=>{let t=je;return{piboSessionId:t,...await yLe(t,{signal:e})}},enabled:!!je,refetchInterval:e=>je&&e.state.data?.configured!==!1?5e3:!1,retry:!1}),Ke=CLe({selectedPiboSessionId:je??void 0,data:Ge.data,loading:Ge.isPending&&!!je,error:Ge.isError?JQ(Ge.error):void 0}),qe=Ke.kind===`ready`?Ke.previews:[],Je=wLe(Ke,Re);kLe(me,Ke.kind===`ready`&&!!Je,ge);let Ye=!!(je&&Ie===je),Xe=Be?.piboSessionId===je?Be.value:0;(0,U.useEffect)(()=>{!je||Ie===je||(Ie&&E&&O?.(),Le(null),ze(void 0),Ve(void 0))},[Ie,O,je,E]),(0,U.useEffect)(()=>{Ke.kind===`ready`&&(Re?.piboSessionId===Ke.piboSessionId&&Ke.previews.some(e=>e.id===Re.previewId)||ze({piboSessionId:Ke.piboSessionId,previewId:Ke.previews[0].id}))},[Ke,Re]);let Ze=!!je&&uLe(),Qe=(0,U.useCallback)(()=>{fLe()||le(`The browser blocked the new Pibo window.`)},[le]),$e=Ze?Qe:void 0,{baseTraceView:et,liveTraceOverlay:tt,rawEventLimit:nt,traceSummaryQuery:rt,tracePageQuery:it,rawEventsQuery:at,loadingOlderTracePage:ot,tracePageReady:st,loadOlderTracePage:ct,loadMoreRawEvents:lt}=lIe({selectedPiboSessionId:je,showRawEvents:k||!!de?.[`raw-events`],liveTraceOverlay:be,liveTraceOverlayCacheRef:ye,setLiveTraceOverlay:Se}),{selectedWebAnnotationIds:ut,selectedWebAnnotations:dt,visibleWebAnnotations:ft,webAnnotationsPanelCollapsed:pt,webAnnotationsPanelRendered:mt,webAnnotationsPanelVisible:ht,webAnnotationsQuery:gt,clearingWebAnnotations:_t,setWebAnnotationsPanelVisible:vt,toggleWebAnnotationAttachment:yt,detachWebAnnotationAttachment:bt,clearSelectedWebAnnotationAttachments:xt,toggleWebAnnotationsPanelCollapsed:St,clearVisibleWebAnnotations:Ct}=kIe({selectedPiboSessionId:je,onError:le,formatError:bX,forcePanelVisible:!!de?.[`web-annotations`]}),wt=(0,U.useCallback)(()=>{ALe(!!de?.[`web-annotations`],pe,vt)},[de,pe,vt]),{selectedUploadAttachments:Tt,attachUploadedFiles:Et,detachUploadAttachment:Dt,clearSelectedUploadAttachments:Ot}=OIe(t,(0,U.useCallback)(()=>`upload-${FQ()}`,[])),kt=GFe({selectedPiboSessionId:je,baseTraceView:et,liveTraceOverlay:tt,selectedSessionStatus:u}),At=zIe(e,t,c),jt=BIe(kt),Mt=!!je&&At&&!a&&u!==`running`,Nt=Un({queryKey:je?[`chat`,`fork-candidates`,je,jt]:[`chat`,`fork-candidates`,`idle`,`none`],queryFn:({signal:e})=>Wl(je,{signal:e}),enabled:Mt,staleTime:0,retry:!1}),Pt=(0,U.useMemo)(()=>Mt&&Nt.data?VIe(kt,Nt.data.messages):kt,[kt,Mt,Nt.data]);CIe({selectedPiboSessionId:je,tracePageData:it.data,currentTraceView:kt,liveEventSeqRef:ve,selectedSessionStatus:u,tracePageReady:st,setLiveTraceOverlay:Se,onRefreshTrace:oe,onRefreshBootstrap:se,onRuntimeRequestEvent:Me,onError:le});let Ft=KIe({bootstrap:e,selectedPiboSessionId:t,selectedSessionProfile:c,selectedSessionActiveModel:l,currentTraceView:kt}),It=(0,U.useMemo)(()=>GIe(e.sessions,t),[e.sessions,t]),Lt=!!t&&it.isFetching&&!kt,Rt=it.error?JQ(it.error):rt.error?JQ(rt.error):null,zt=IQ(t,a)||!!(o||s),Bt=!Ye&&!zt&&S.id===`terminal`&&(y??b)===`terminal`,Vt=(0,U.useCallback)(async e=>{try{let t=await xu(e);Et(t.files)}catch(e){le(JQ(e))}},[Et,le]),Ht=kt?.piboSessionId??t??``,Ut=p&&oPe(p)?sPe(p,u):null,Wt=e=>{for(let n of[750,2e3,5e3,1e4])window.setTimeout(()=>{t===e&&it.refetch().catch(e=>le(JQ(e)))},n)},Gt=async(e,t)=>{let n=iLe(e,t);Se(e=>aLe(e,n.piboSessionId,n.optimisticEvent)),await ce(n.text,n.webAnnotationIds,n.fileAttachmentPaths,n.clientTxnId,t),xt(),Ot(),await Promise.all([it.refetch(),gt.refetch()]),Wt(n.piboSessionId)},Kt=(e,t)=>{Se(t=>{let n=t?.piboSessionId===e.piboSessionId?t:ye.current.get(e.piboSessionId)??null;if(!n)return t;let r=n.events.filter(t=>t.id!==e.clientTxnId),i=r.length?{...n,events:r}:null;return i?ye.current.set(e.piboSessionId,i):ye.current.delete(e.piboSessionId),t?.piboSessionId===e.piboSessionId?i:t}),L(t=>t||e.text),le(JQ(t))},qt=HIe(e,je,c,d),Jt=async e=>{if(zt||!t)return;let n=rLe({piboSessionId:t,text:e,selectedWebAnnotations:dt,selectedUploadAttachments:Tt,eventSequence:ve.current++,now:new Date().toISOString(),clientTxnId:FQ()});if(qt){we(n);return}try{await Gt(n,`queue`)}catch(e){Kt(n,e)}},Yt=()=>{Ce&&(L(e=>e||Ce.text),we(null))},Xt=async e=>{let t=Ce;if(!(!t||Oe.current.has(t.clientTxnId))){Oe.current.add(t.clientTxnId),we(e=>e?.clientTxnId===t.clientTxnId?null:e),le(null);try{await Gt(t,e)}catch(e){Kt(t,e)}finally{Oe.current.delete(t.clientTxnId)}}},Zt=(e,t)=>{let n=pNe(e,t);n&&(t.preventDefault(),(n===`queue`?ke:Ae).current?.focus())},Qt=UIe(e,t,c),$t=M===`intent`&&!Qt?`slim`:M,en=qIe({currentTraceView:Pt,isLoading:Lt,showThinking:A,expandThinking:j,toolDisplayMode:$t,selectedSessionProfile:c,sessionActiveModelBadge:Ft,sessionRuntimeBinding:e.session?.id===je?e.session.runtimeBinding:void 0,selectedSessionStatus:u,selectedSessionSignal:d,signals:f,sessionGoal:Pe.data?.goal,workflowProjectSession:p,workflowLifecycleEvents:m,sessionNodes:e.sessions,sessionLinks:It,agentProfiles:e.agents,sessionProfileChangeDisabled:T||a,onSessionAgentProfileChange:te,onFork:ne,onOpenSession:re,onLoadOlderTracePage:()=>ct(kt?.nextBeforeCursor??kt?.nextBeforeSequence),hasOlderTraceEvents:kt?.hasOlderEvents===!0||kt?.nextBeforeCursor!==void 0||typeof kt?.nextBeforeSequence==`number`,isFetchingOlderTracePage:ot,onThinkingLevelChange:ae,onRefreshTrace:oe,onRefreshBootstrap:se,onError:le}),tn=(e,t)=>{t?He.current.add(e):He.current.delete(e),We(new Set(He.current))},nn=async(e,t)=>{let n=je;if(!n)return;let r=`${n}:${e}`;if(!He.current.has(r)){tn(r,!0);try{let r=TLe(n,t===`start`?await bLe(e):t===`stop`?await xLe(e):(await SLe(e)).preview);_e.setQueryData(n$(n),e=>!e||e.piboSessionId!==n?e:{...e,previews:t===`remove`?e.previews.filter(e=>e.id!==r.id):e.previews.map(e=>e.id===r.id?r:e)}),Fe.current===n&&(t===`start`&&Ve(e=>({piboSessionId:n,value:e?.piboSessionId===n?e.value+1:1})),t===`remove`&&Re?.piboSessionId===n&&Re.previewId===r.id&&ze(void 0)),await _e.invalidateQueries({queryKey:n$(n),exact:!0})}catch(e){Fe.current===n&&le(JQ(e))}finally{tn(r,!1)}}},rn=()=>{je&&Ve(e=>({piboSessionId:je,value:e?.piboSessionId===je?e.value+1:1}))},an=e=>{je&&ze({piboSessionId:je,previewId:e})},on=Je?Ue.has(`${Je.piboSessionId}:${Je.id}`):!1,sn=v?.map(e=>({...e,onSelect:()=>{Le(null),e.onSelect()}}))??[],cn=Ke.kind===`ready`||Ye?[...sn,{id:`preview`,label:`Preview`,description:`Open the live development preview attached to this Pibo Session.`,active:Ye,onSelect:()=>{fe?fe(`preview`):je&&Le(je)}}]:sn,ln=Ke.kind===`loading`?(0,W.jsx)(t$,{label:`Loading live previews…`}):Ke.kind===`error`?(0,W.jsx)(t$,{label:Ke.message,tone:`error`}):Ke.kind===`unconfigured`?(0,W.jsx)(t$,{label:`Live previews are not configured on this Pibo instance.`}):(0,W.jsx)(t$,{label:`No active live preview is attached to this Pibo Session.`}),un=Ye||de?.preview?Ke.kind===`ready`&&Je?(0,W.jsx)(QQ,{previews:qe,selectedPreview:Je,loading:!1,reloadKey:Xe,onSelect:an,onReload:rn,onRefresh:()=>void Ge.refetch(),onStart:e=>void nn(e,`start`),onStop:e=>void nn(e,`stop`),onRemove:e=>void nn(e,`remove`),actionPending:on,fullscreen:me,onEnterFullscreen:he??D,onExitFullscreen:ge}):ln:void 0,dn=Ye?un:_,fn=Ye?Ke.kind===`ready`&&Je?(0,W.jsx)(QQ,{previews:qe,selectedPreview:Je,loading:!1,reloadKey:Xe,fullscreen:!0,onSelect:an,onReload:rn,onRefresh:()=>void Ge.refetch(),onStart:e=>void nn(e,`start`),onStop:e=>void nn(e,`stop`),onRemove:e=>void nn(e,`remove`),actionPending:on}):ln:void 0,pn=Ye&&Je?(0,W.jsx)($Q,{preview:Je,onReload:rn,onStart:()=>void nn(Je.id,`start`),onStop:()=>void nn(Je.id,`stop`),actionPending:on,onExit:O??(()=>void 0)}):void 0,mn=(0,W.jsx)(`div`,{className:`h-full overflow-auto bg-[#101d22]`,children:(0,W.jsx)(vX,{piboSessionId:t,annotations:ft,selectedIds:ut,loading:gt.isLoading||gt.isFetching||_t,error:gt.error?JQ(gt.error):null,collapsed:pt,onRefresh:()=>void gt.refetch(),onToggle:yt,onClear:()=>void Ct(),onCollapse:St,onClose:wt})}),hn=je?(0,W.jsx)(`div`,{className:`h-full overflow-auto bg-[#101d22]`,children:H.length||Ee.length?(0,W.jsx)(YQ,{piboSessionId:je,approvals:H,userInputs:Ee,onResolved:Ne,onError:le}):(0,W.jsx)(`div`,{className:`grid h-full place-items-center p-6 text-center text-sm text-slate-500`,"data-pibo-debug":`desktop-runtime-requests-empty`,children:`No pending runtime requests for this Pibo Session.`})}):(0,W.jsx)(i$,{label:`Select a Pibo Session to inspect runtime requests.`}),gn=t?(0,W.jsxs)(`div`,{className:`h-full overflow-auto bg-[#0e1116] p-3`,"data-pibo-debug":`desktop-session-inspector`,children:[(0,W.jsx)(`div`,{className:`mb-3 text-[11px] font-bold uppercase tracking-wider text-[#11a4d4]`,children:`Selected Pibo Session`}),(0,W.jsx)(sq,{value:{piboSessionId:t,roomId:n??e.selectedRoomId,profile:c,activeModel:l,status:u,runtimeStatus:e.runtimeStatus?.piboSessionId===je?e.runtimeStatus:void 0,signal:d}})]}):(0,W.jsx)(i$,{label:`Select a Pibo Session to inspect it.`}),_n={preview:un??(0,W.jsx)(i$,{label:`Select a Pibo Session to view its Preview.`}),"raw-events":(0,W.jsx)(OX,{traceView:kt,eventLimit:nt,isFetching:at.isFetching,visible:!0,onLoadOlder:lt}),"web-annotations":mn,"runtime-requests":hn,"session-inspector":gn};return(0,W.jsxs)(W.Fragment,{children:[Ce?(0,W.jsx)(AX,{title:`Session is running`,description:`Choose how this message should be delivered.`,onClose:Yt,initialFocusRef:ke,children:(0,W.jsxs)(`div`,{className:`grid gap-2 p-4 sm:grid-cols-2`,"data-pibo-debug":`message-delivery-dialog`,children:[(0,W.jsxs)(`button`,{ref:ke,type:`button`,onClick:()=>void Xt(`queue`),onKeyDown:e=>Zt(`queue`,e),className:`rounded-sm border border-slate-700 bg-[#151f24] p-3 text-left transition hover:border-[#11a4d4] hover:bg-[#11a4d4]/10 focus-visible:border-[#11a4d4] focus-visible:bg-[#11a4d4]/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#11a4d4]/50 disabled:opacity-50`,"data-pibo-debug":`message-delivery-queue`,children:[(0,W.jsx)(`span`,{className:`block text-xs font-bold uppercase tracking-wider text-[#11a4d4]`,children:`Queue`}),(0,W.jsx)(`span`,{className:`mt-1 block text-xs leading-5 text-slate-400`,children:`Run it as the next turn after the active turn finishes.`})]}),(0,W.jsxs)(`button`,{ref:Ae,type:`button`,onClick:()=>void Xt(`steer`),onKeyDown:e=>Zt(`steer`,e),className:`rounded-sm border border-amber-500/50 bg-amber-500/5 p-3 text-left transition hover:border-amber-400 hover:bg-amber-500/10 focus-visible:border-amber-400 focus-visible:bg-amber-500/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-400/50 disabled:opacity-50`,"data-pibo-debug":`message-delivery-steer`,children:[(0,W.jsx)(`span`,{className:`block text-xs font-bold uppercase tracking-wider text-amber-400`,children:`Steer`}),(0,W.jsx)(`span`,{className:`mt-1 block text-xs leading-5 text-slate-400`,children:`Add it to the active turn after the current tool finishes, before the next model step.`})]})]})}):null,(0,W.jsx)(xPe,{selectedPiboSessionId:t,selectedRoomId:n,fallbackRoomId:e.selectedRoomId??void 0,sessionViewId:b,loadingTrace:Lt,roomNavigationPending:o,sessionNavigationPending:s,traceError:Rt,showRawEvents:k&&!Ye&&ue!==`raw-events`,currentTraceView:kt,rawEventLimit:nt,tracePageFetching:k?at.isFetching:it.isFetching,onLoadMoreRawEvents:lt,terminalFullscreen:E,fullscreenTopBar:pn,fullscreenContent:fn,hideComposer:Ye,terminalFileDropEnabled:Bt,onTerminalFilesDropped:Vt,onOpenSessionWindow:$e,onExitTerminalFullscreen:O??(()=>void 0),headerProps:{title:WIe({sessionNodes:e.sessions,selectedPiboSessionId:t,traceTitle:kt?.title,fallback:`No session selected`}),contextKind:r,contextLabel:i??(e.room?.id===n?e.room.name:void 0)??n??`Unknown room`,headerPiboSessionId:Ht,piboSessionId:t,piboRoomId:n??e.selectedRoomId??void 0,webAnnotationsDisabled:!t||a,webAnnotationsPanelRendered:mt,workflowHeader:Ut,sessionViewId:b,sessionViews:x,currentSessionView:S,allowedSessionViewIds:w,extraViewTabs:cn,activeViewId:Ye?`preview`:y,desktopTerminalOnly:C,terminalFullscreenAvailable:!Ye&&S.id===`terminal`&&(y??b)===`terminal`,onEnterTerminalFullscreen:D,onOpenSessionWindow:$e,showRawEvents:k||ue===`raw-events`,showThinking:A,expandThinking:j,toolDisplayMode:$t,toolIntentSupported:Qt,onToolDisplayModeChange:ee,onShowWebAnnotationsPanel:()=>fe?fe(`web-annotations`):vt(!0),onHideWebAnnotationsPanel:()=>vt(!1),onSelectSessionView:e=>{Le(null),V(e)},onToggleRawEvents:R,onToggleThinking:z,onToggleExpandThinking:B,onError:le},projectSessionCreatePanel:h,workflowStartPanel:g,projectModulePanel:dn,currentSessionView:S,sessionViewProps:en,webAnnotationsPanelRendered:mt&&!Ye&&ue!==`web-annotations`,webAnnotationsPanelProps:{piboSessionId:t,annotations:ft,selectedIds:ut,loading:gt.isLoading||gt.isFetching||_t,error:gt.error?JQ(gt.error):null,collapsed:pt,onRefresh:()=>void gt.refetch(),onToggle:yt,onClear:()=>void Ct(),onCollapse:St,onClose:()=>vt(!1)},runtimeRequestPanel:je&&!Ye&&ue!==`runtime-requests`?(0,W.jsx)(YQ,{piboSessionId:je,approvals:H,userInputs:Ee,onResolved:Ne,onError:le}):void 0,composerProps:{sessionId:t,disabled:zt,commands:N,skills:P,value:F,focusSignal:I,selectedWebAnnotations:dt,selectedUploadAttachments:Tt,onValueChange:L,onCommand:ie,onDetachWebAnnotation:bt,onClearWebAnnotations:xt,onAttachUploadedFiles:Et,onDetachUploadAttachment:Dt,onClearUploadAttachments:Ot,onSend:Jt}}),de?Object.entries(de).map(([e,t])=>t&&_n[e]?(0,jl.createPortal)(_n[e],t,`desktop-session-tool-${e}`):null):null]})}function i$({label:e}){return(0,W.jsx)(`div`,{className:`grid h-full place-items-center bg-[#0e1116] p-6 text-center text-sm text-slate-500`,children:e})}function ALe(e,t,n){e&&t?t(`web-annotations`):n(!1)}function a$({node:e,signalNow:t,selectedPiboSessionId:n,selectedSessionPathIds:r,onSelect:i,onRename:a,onArchive:o,onDelete:s,onViewContext:c,depth:l=0,loadingPiboSessionId:u,autoRename:d=!1,onAutoRenameConsumed:f,showWorkflowSessionKindMarkers:p=!1,mutationsDisabled:m=!1}){let h=Yq(e),g=Jje(e),[_,v]=(0,U.useState)(!1),[y,b]=(0,U.useState)(h),x=(0,U.useRef)(null),S=e.children.length>0,C=n!==null&&e.piboSessionId!==n&&r.has(e.piboSessionId),[w,T]=(0,U.useState)(C),E=(0,U.useRef)(n),D=(0,U.useId)();(0,U.useEffect)(()=>{_||b(h)},[_,h]),(0,U.useEffect)(()=>{!d||m||(b(h===`Untitled Session`?``:h),v(!0),f?.())},[d,m,h,f]),(0,U.useEffect)(()=>{m&&v(!1)},[m]),(0,U.useLayoutEffect)(()=>{_&&(x.current?.focus(),x.current?.select())},[_]),(0,U.useLayoutEffect)(()=>{if(E.current!==n){E.current=n,T(C);return}C&&T(!0)},[C,n]);let O=()=>{if(m)return;let t=y.trim();a(e.piboSessionId,t||null),v(!1)},k=Yje(e,t),A=u===e.piboSessionId,j=p?jLe(e.workflowSessionKind):null,M=j?.Icon;return(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{"data-pibo-component":`SessionNode`,"data-pibo-debug":`session-row`,"data-pibo-session-id":e.piboSessionId,"data-pibo-title":h,"data-pibo-selected":e.piboSessionId===n?`true`:`false`,"data-pibo-state":A?`loading`:e.status??`idle`,"data-pibo-archived":e.archived?`true`:`false`,"data-pibo-unread-count":e.unreadCount??0,className:`group w-full grid grid-cols-[1fr_auto] gap-0.5 items-center mb-0.5 border rounded-sm ${e.piboSessionId===n?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-transparent`}`,style:{paddingLeft:8+l*14},title:g,children:[_&&!m?(0,W.jsxs)(`form`,{className:`min-w-0 grid grid-cols-[1fr_auto_auto] gap-1 py-1 pr-1`,onSubmit:e=>{e.preventDefault(),O()},children:[(0,W.jsx)(`input`,{ref:x,value:y,"aria-label":`Session title for ${h}`,disabled:m,onChange:e=>b(e.target.value),onKeyDown:e=>{e.key===`Escape`&&(e.preventDefault(),v(!1),b(h))},autoFocus:!0,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-2 py-1 text-sm outline-none focus:border-[#11a4d4]`}),(0,W.jsx)(`button`,{type:`submit`,disabled:m,title:`Save Session Title`,"aria-label":`Save Session Title`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(Us,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:m,onClick:()=>{v(!1),b(h)},title:`Cancel Rename`,"aria-label":`Cancel Rename`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(Al,{size:13})})]}):(0,W.jsxs)(`div`,{className:`min-w-0 h-7 max-[980px]:h-8 grid grid-cols-[1fr_auto] gap-1 items-center pr-0.5`,children:[(0,W.jsxs)(`button`,{type:`button`,onClick:()=>{if(S&&e.piboSessionId===n){T(e=>!e);return}i(e.piboSessionId)},"aria-label":j?`${j.ariaLabel}: ${h}`:`Open session ${h}`,"aria-current":e.piboSessionId===n?`page`:void 0,className:`h-7 max-[980px]:h-8 min-w-0 text-left px-1 flex items-center gap-1.5`,children:[j&&M?(0,W.jsx)(`span`,{className:`h-4 w-4 shrink-0 inline-flex items-center justify-center rounded-sm border ${j.className}`,title:j.ariaLabel,"aria-label":j.ariaLabel,children:(0,W.jsx)(M,{size:11,"aria-hidden":`true`})}):null,(0,W.jsx)(`span`,{className:`block min-w-0 truncate text-[13px] leading-none ${e.archived?`text-slate-500`:`text-slate-200`}`,children:h})]}),(0,W.jsxs)(`span`,{className:`inline-flex items-center justify-end gap-1`,children:[A?(0,W.jsx)(Ic,{size:12,className:`text-[#11a4d4] animate-spin`,"aria-label":`Loading session`}):(0,W.jsx)(`span`,{className:k.className,title:k.title,"aria-label":k.title}),S?(0,W.jsx)(`button`,{type:`button`,onClick:()=>T(e=>!e),"aria-expanded":w,"aria-controls":D,title:w?`Collapse Subsessions`:`Expand Subsessions`,"aria-label":`Subsessions for ${h}`,className:`h-5 w-5 inline-flex items-center justify-center rounded-sm transition-colors ${w?`text-[#0bda57]`:`text-slate-600 hover:text-[#11a4d4]`}`,children:(0,W.jsx)(Ac,{size:12})}):null]})]}),_&&!m?null:(0,W.jsx)(`div`,{className:`flex items-center gap-0.5 opacity-0 group-hover:opacity-100 group-focus-within:opacity-100 transition-opacity max-[980px]:opacity-100`,children:(0,W.jsx)(QJ,{label:`Actions for session ${h}`,estimatedHeight:144,disabled:m,children:e.archived?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)($J,{onSelect:()=>o(e.piboSessionId,!1),children:[(0,W.jsx)(Ds,{size:16}),` Restore Session`]}),(0,W.jsxs)($J,{onSelect:()=>c(e.piboSessionId),children:[(0,W.jsx)(Bs,{size:16}),` View Context`]}),(0,W.jsxs)($J,{onSelect:()=>s(e),className:`text-red-300 hover:bg-red-500/10`,children:[(0,W.jsx)(Sl,{size:16}),` Delete Session`]})]}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)($J,{onSelect:()=>v(!0),children:[(0,W.jsx)($c,{size:16}),` Rename Session`]}),(0,W.jsxs)($J,{onSelect:()=>o(e.piboSessionId,!0),children:[(0,W.jsx)(Os,{size:16}),` Archive Session`]}),(0,W.jsxs)($J,{onSelect:()=>c(e.piboSessionId),children:[(0,W.jsx)(Bs,{size:16}),` View Context`]})]})})})]}),S?(0,W.jsx)(`div`,{id:D,hidden:!w,children:w?e.children.map(e=>(0,W.jsx)(a$,{node:e,signalNow:t,selectedPiboSessionId:n,selectedSessionPathIds:r,onSelect:i,onRename:a,onArchive:o,onDelete:s,onViewContext:c,depth:l+1,loadingPiboSessionId:u,showWorkflowSessionKindMarkers:p,mutationsDisabled:m},e.piboSessionId)):null}):null]})}function jLe(e){switch(e){case`main_workflow`:return{ariaLabel:`Main workflow session`,className:`border-[#11a4d4]/40 bg-[#11a4d4]/10 text-[#11a4d4]`,Icon:Ac};case`nested_workflow`:return{ariaLabel:`Nested workflow session`,className:`border-violet-400/40 bg-violet-500/10 text-violet-300`,Icon:sc};case`agent_node`:return{ariaLabel:`Workflow agent node session`,className:`border-emerald-400/40 bg-emerald-500/10 text-emerald-300`,Icon:Tl};case`subagent`:return{ariaLabel:`Subagent session`,className:`border-amber-400/40 bg-amber-500/10 text-amber-300`,Icon:El};default:return null}}var MLe=`240px 0px`;function NLe(e){return e>99?`99+`:String(e)}function PLe({count:e}){return!e||e<=0?null:(0,W.jsx)(`span`,{className:`min-w-5 h-5 px-1.5 inline-flex items-center justify-center rounded-full bg-[#38bdf8] text-[#0e1116] text-[10px] font-bold tabular-nums leading-none`,"aria-label":`${e} unread messages`,title:`${e} unread messages`,children:NLe(e)})}function o$({bootstrap:e,selectedRoomId:t,selectedPiboSessionId:n,showArchivedRooms:r,onToggleArchivedRooms:i,creatingRoom:a,onCreateRoom:o,onSelectRoom:s,loadingRoomId:c,roomSessionsLoading:l=!1,onUpdateRoom:u,onArchiveRoom:d,onReadAllRoom:f,onDeleteRoom:p,newSessionProfile:m,newSessionProfileReady:h,onNewSessionProfileChange:g,selectedRoomArchived:_,creatingSession:v,onCreateSession:y,showArchived:b,onToggleArchivedSessions:x,loadingArchivedSessions:S,visibleActiveSessions:C,visibleArchivedSessions:w,totalActiveSessionCount:T,totalArchivedSessionCount:E,hasMoreActiveSessions:D,hasMoreArchivedSessions:O,loadingActiveSessions:k,sessionListScrollRef:A,onLoadMoreSessions:j,signalNow:M,selectedSessionPathIds:N,onSelectSession:P,onRenameSession:F,onArchiveSession:I,onDeleteSession:L,onViewContext:R,loadingPiboSessionId:z,autoRenameSessionId:B,onAutoRenameConsumed:ee}){let te=!!(e.selectedRoomId||e.room||e.rooms.length),ne=e.agents,re=Qq(e.rooms),V=eJ(e.rooms),ie=(0,U.useRef)(null),ae=async()=>{let e=ie.current===document.activeElement;try{await x()}finally{requestAnimationFrame(()=>{e&&document.activeElement===document.body&&ie.current?.focus()})}};return(0,W.jsxs)(`div`,{"data-pibo-debug":`session-list`,"data-pibo-room-id":t??e.selectedRoomId??void 0,"data-pibo-selected-session-id":n??void 0,"data-pibo-state":b?`archived-visible`:`active-only`,className:`min-h-0 flex-1 overflow-hidden p-2 flex flex-col gap-3`,children:[te?(0,W.jsxs)(W.Fragment,{children:[re?(0,W.jsxs)(`div`,{className:`shrink-0`,children:[(0,W.jsx)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Shared Chat`}),(0,W.jsx)(c$,{room:re,selectedRoomId:t,loadingRoomId:c,onSelect:e=>void s(e),onUpdate:(e,t)=>void u(e,t),onArchive:(e,t)=>void d(e,t),onReadAll:e=>void f(e),onDelete:p})]}):null,(0,W.jsxs)(`div`,{className:`min-h-0 flex-1 basis-0 overflow-hidden flex flex-col`,children:[(0,W.jsxs)(`div`,{className:`shrink-0 flex items-center justify-between gap-2 px-1 pb-1`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Rooms`}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:()=>void o(),disabled:a,title:`New Room`,"aria-label":`New Room`,className:`h-6 w-6 max-[980px]:h-8 max-[980px]:w-8 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:(0,W.jsx)(tl,{size:14})}),(0,W.jsx)(`button`,{type:`button`,onClick:i,title:r?`Hide Archived Rooms`:`Show Archived Rooms`,"aria-label":`Archived Rooms`,"aria-pressed":r,className:`h-6 w-6 max-[980px]:h-8 max-[980px]:w-8 inline-flex items-center justify-center border rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4] ${r?`border-[#11a4d4] text-[#11a4d4]`:`border-slate-700 text-slate-400`}`,children:r?(0,W.jsx)(Ds,{size:14}):(0,W.jsx)(Os,{size:14})})]})]}),(0,W.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pr-1`,children:[V.active.map(e=>(0,W.jsx)(c$,{room:e,selectedRoomId:t,loadingRoomId:c,onSelect:e=>void s(e),onUpdate:(e,t)=>void u(e,t),onArchive:(e,t)=>void d(e,t),onReadAll:e=>void f(e),onDelete:p},e.id)),V.active.length===0?(0,W.jsx)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm`,children:`No rooms`}):null,r?(0,W.jsxs)(`div`,{className:`mt-3`,children:[(0,W.jsx)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Archived Rooms`}),V.archived.length?(0,W.jsx)(FLe,{rooms:V.archived,selectedRoomId:t,loadingRoomId:c,onSelect:e=>void s(e),onUpdate:(e,t)=>void u(e,t),onArchive:(e,t)=>void d(e,t),onReadAll:e=>void f(e),onDelete:p}):(0,W.jsx)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm`,children:`No archived rooms`})]}):null]})]})]}):null,(0,W.jsxs)(`div`,{className:`min-h-0 flex-1 basis-0 overflow-hidden flex flex-col border-t border-slate-700/80 pt-3`,children:[(0,W.jsxs)(`div`,{className:`shrink-0 flex items-center justify-between gap-2 px-1 pb-1`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Sessions`}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,W.jsx)(`select`,{id:`new-session-agent-select`,value:m,onChange:e=>g(e.target.value),disabled:!h||!ne.length||a||_||l,title:`Agent for new sessions`,"aria-label":`Agent for new sessions`,className:`h-6 w-28 max-[980px]:h-8 max-[980px]:w-32 max-[980px]:text-sm rounded-sm border border-slate-700 bg-[#101d22] px-1.5 text-[11px] font-medium normal-case tracking-normal text-slate-300 outline-none hover:border-[#11a4d4] focus:border-[#11a4d4] disabled:opacity-50`,children:ne.map(e=>(0,W.jsx)(`option`,{value:e.name,title:e.description??e.name,children:e.name},e.name))}),(0,W.jsx)(`button`,{"data-pibo-debug":`new-session-button`,"data-pibo-room-id":t??e.selectedRoomId??void 0,"data-pibo-state":v?`creating`:a?`room-creating`:l?`room-loading`:h?_?`archived-disabled`:`ready`:`profile-loading`,type:`button`,onClick:()=>void y(),disabled:!h||v||a||_||l,title:`New Session`,"aria-label":`New Session`,className:`h-6 w-6 max-[980px]:h-8 max-[980px]:w-8 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:(0,W.jsx)(tl,{size:14})}),(0,W.jsx)(`button`,{type:`button`,ref:ie,onClick:()=>void ae(),disabled:S,title:b?`Hide Archived Sessions`:`Show Archived Sessions`,"aria-label":`Archived Sessions`,"aria-pressed":b,className:`h-6 w-6 max-[980px]:h-8 max-[980px]:w-8 inline-flex items-center justify-center border rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-70 ${b?`border-[#11a4d4] text-[#11a4d4]`:`border-slate-700 text-slate-400`}`,children:S?(0,W.jsx)(Ic,{size:14,className:`animate-spin`}):b?(0,W.jsx)(Ds,{size:14}):(0,W.jsx)(Os,{size:14})})]})]}),(0,W.jsx)(`div`,{ref:A,className:`min-h-0 flex-1 overflow-y-auto pr-1`,children:l?(0,W.jsx)(ILe,{}):(0,W.jsxs)(W.Fragment,{children:[C.map(e=>(0,W.jsx)(a$,{node:e,signalNow:M,selectedPiboSessionId:n,selectedSessionPathIds:N,onSelect:e=>void P(e),onRename:(e,t)=>void F(e,t),onArchive:(e,t)=>void I(e,t),onDelete:L,onViewContext:R,loadingPiboSessionId:z,autoRename:B===e.piboSessionId,onAutoRenameConsumed:()=>ee()},e.piboSessionId)),T===0?(0,W.jsx)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm`,children:`No active sessions`}):null,D?(0,W.jsx)(s$,{debugName:`active-session-load-more`,loading:k,rootRef:A,onLoadMore:()=>j(!1),children:k?`Loading active sessions…`:`Load more active sessions (${C.length} of ${T})`}):null,b?(0,W.jsxs)(`div`,{className:`mt-3`,children:[(0,W.jsxs)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500 flex items-center gap-1.5`,children:[(0,W.jsx)(`span`,{children:`Archived Sessions`}),S?(0,W.jsx)(Ic,{size:12,className:`text-[#11a4d4] animate-spin`,"aria-label":`Loading archived sessions`}):null]}),S?(0,W.jsxs)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm flex items-center gap-2`,children:[(0,W.jsx)(Ic,{size:13,className:`text-[#11a4d4] animate-spin`}),` Loading archived sessions`]}):E?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(LLe,{sessions:w,signalNow:M,selectedPiboSessionId:n,selectedSessionPathIds:N,onSelect:e=>void P(e),onRename:(e,t)=>void F(e,t),onArchive:(e,t)=>void I(e,t),onDelete:L,onViewContext:R,loadingPiboSessionId:z,autoRenameSessionId:B,onAutoRenameConsumed:()=>ee()}),O?(0,W.jsx)(s$,{debugName:`archived-session-load-more`,loading:S,rootRef:A,onLoadMore:()=>j(!0),children:S?`Loading archived sessions…`:`Load more archived sessions (${w.length} of ${E})`}):null]}):(0,W.jsx)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm`,children:`No archived sessions`})]}):null]})})]})]})}function FLe({rooms:e,selectedRoomId:t,loadingRoomId:n,onSelect:r,onUpdate:i,onArchive:a,onReadAll:o,onDelete:s}){return(0,W.jsx)(`div`,{children:e.map(e=>(0,W.jsx)(c$,{room:e,selectedRoomId:t,loadingRoomId:n,onSelect:r,onUpdate:i,onArchive:a,onReadAll:o,onDelete:s},e.id))})}function ILe(){return(0,W.jsx)(`div`,{"data-pibo-debug":`room-sessions-loading`,className:`space-y-0.5`,"aria-live":`polite`,"aria-label":`Loading room sessions`,children:[0,1,2,3,4].map(e=>(0,W.jsxs)(`div`,{className:`h-7 max-[980px]:h-8 w-full grid grid-cols-[1fr_auto] gap-1 items-center border rounded-sm animate-pulse ${e===0?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-transparent`}`,style:{paddingLeft:8},"aria-hidden":`true`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 h-full grid grid-cols-[1fr_auto] gap-2 items-center pr-0.5`,children:[(0,W.jsx)(`span`,{className:`block h-3 min-w-0 rounded-sm ${e===0?`w-44 bg-slate-300/75`:e%2==0?`w-40 bg-slate-400/35`:`w-36 bg-slate-400/30`}`}),(0,W.jsx)(`span`,{className:`h-2 w-2 rounded-full ${e===0?`bg-[#11a4d4]`:e%2==0?`bg-slate-600`:`bg-[#11a4d4]/55`}`})]}),(0,W.jsx)(`span`,{className:`h-6 w-6 max-[980px]:h-8 max-[980px]:w-8`})]},e))})}function s$({children:e,debugName:t,loading:n,rootRef:r,onLoadMore:i}){let a=(0,U.useRef)(null),o=(0,U.useRef)(i),s=(0,U.useRef)(!1);(0,U.useEffect)(()=>{o.current=i},[i]),(0,U.useEffect)(()=>{n||(s.current=!1)},[n]);let c=(0,U.useCallback)(()=>{s.current||n||(s.current=!0,Promise.resolve(o.current()).finally(()=>{s.current=!1}))},[n]);return(0,U.useEffect)(()=>{if(n||typeof IntersectionObserver>`u`)return;let e=a.current;if(!e)return;let t=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&c()},{root:r.current,rootMargin:MLe,threshold:0});return t.observe(e),()=>t.disconnect()},[n,r,c]),(0,W.jsx)(`button`,{ref:a,"data-pibo-debug":t,type:`button`,onClick:c,disabled:n,className:`mt-2 w-full px-2 py-2 text-[11px] text-slate-400 border border-dashed border-slate-700 rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-60`,children:e})}function LLe({sessions:e,signalNow:t,selectedPiboSessionId:n,selectedSessionPathIds:r,onSelect:i,onRename:a,onArchive:o,onDelete:s,onViewContext:c,loadingPiboSessionId:l,autoRenameSessionId:u,onAutoRenameConsumed:d}){return(0,W.jsx)(`div`,{children:e.map(e=>(0,W.jsx)(a$,{node:e,signalNow:t,selectedPiboSessionId:n,selectedSessionPathIds:r,onSelect:i,onRename:a,onArchive:o,onDelete:s,onViewContext:c,loadingPiboSessionId:l,autoRename:u===e.piboSessionId,onAutoRenameConsumed:d},e.piboSessionId))})}function c$({room:e,selectedRoomId:t,loadingRoomId:n,onSelect:r,onUpdate:i,onArchive:a,onReadAll:o,onDelete:s,depth:c=0}){let[l,u]=(0,U.useState)(!1),[d,f]=(0,U.useState)(e.name),[p,m]=(0,U.useState)(e.topic??``),[h,g]=(0,U.useState)(e.workspace??``),_=tJ(e),v=nJ(e),y=e.id===n,b=qje(e),x=()=>{Gq(e.id).catch(()=>void 0)};(0,U.useEffect)(()=>{l||(f(e.name),m(e.topic??``),g(e.workspace??``))},[l,e.name,e.topic,e.workspace]);let S=()=>{let t=d.trim();t&&(i(e.id,{name:t,topic:p.trim()||null,workspace:h.trim()||null}),u(!1))};return(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{"data-pibo-debug":`room-node`,"data-pibo-room-id":e.id,"data-pibo-state":y?`loading`:e.id===t?`selected`:v?`archived`:`idle`,className:`group mb-0.5 border rounded-sm ${_?e.id===t?`border-[#0bda57] bg-[#0bda57]/10`:`border-[#0bda57]/50 bg-[#0bda57]/5`:e.id===t?`border-[#11a4d4] bg-[#11a4d4]/10`:v?`border-[#f59e0b]/40 bg-[#f59e0b]/5`:`border-transparent`}`,style:{marginLeft:c*12},title:b,children:l&&!_?(0,W.jsxs)(`form`,{className:`grid gap-1 p-1`,onSubmit:e=>{e.preventDefault(),S()},children:[(0,W.jsx)(`input`,{value:d,"aria-label":`Room name for ${e.name}`,onChange:e=>f(e.target.value),className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-2 py-1 text-sm outline-none focus:border-[#11a4d4]`,autoFocus:!0}),(0,W.jsx)(`input`,{value:p,"aria-label":`Room topic for ${e.name}`,onChange:e=>m(e.target.value),placeholder:`Topic`,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-2 py-1 text-xs outline-none focus:border-[#11a4d4]`}),(0,W.jsx)(`input`,{value:h,"aria-label":`Room workspace for ${e.name}`,onChange:e=>g(e.target.value),placeholder:`Workspace (/absolute/path)`,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-2 py-1 text-xs font-mono outline-none focus:border-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`flex justify-end gap-1`,children:[(0,W.jsx)(`button`,{type:`submit`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(Us,{size:13})}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>u(!1),className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(Al,{size:13})})]})]}):(0,W.jsxs)(`div`,{className:`grid grid-cols-[1fr_auto] items-center gap-0.5 pr-0.5`,children:[(0,W.jsxs)(`button`,{type:`button`,onClick:()=>r(e.id),"aria-current":e.id===t?`page`:void 0,className:`h-7 max-[980px]:h-8 min-w-0 text-left px-1.5 grid grid-cols-[auto_minmax(0,1fr)_auto] gap-1.5 items-center`,children:[(0,W.jsx)(`span`,{className:`h-5 w-5 inline-flex items-center justify-center rounded-sm ${_?`bg-[#0bda57]/15 text-[#0bda57]`:v?`bg-[#f59e0b]/15 text-[#f59e0b]`:`bg-[#151f24] text-slate-500`}`,children:_?(0,W.jsx)(Rc,{size:12}):v?(0,W.jsx)(Os,{size:12}):(0,W.jsx)(bc,{size:12})}),(0,W.jsx)(`span`,{className:`min-w-0 truncate text-[13px] leading-none ${v?`text-slate-500`:`text-slate-200`}`,children:e.name}),(0,W.jsxs)(`span`,{className:`inline-flex items-center justify-end gap-1`,children:[y?(0,W.jsx)(Ic,{size:12,className:`animate-spin text-[#11a4d4]`,"aria-label":`Loading room`}):null,(0,W.jsx)(PLe,{count:e.unreadCount})]})]}),(0,W.jsx)(`div`,{className:`flex items-center gap-0.5 opacity-0 group-hover:opacity-100 group-focus-within:opacity-100 transition-opacity max-[980px]:opacity-100`,children:_?(0,W.jsx)(QJ,{label:`Actions for room ${e.name}`,estimatedHeight:48,children:(0,W.jsxs)($J,{onSelect:()=>o(e.id),children:[(0,W.jsx)(Hs,{size:16}),` Read All`]})}):(0,W.jsx)(QJ,{label:`Actions for room ${e.name}`,estimatedHeight:v?144:192,children:v?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)($J,{onSelect:x,children:[(0,W.jsx)(sc,{size:16}),` Copy Room ID`]}),(0,W.jsxs)($J,{onSelect:()=>a(e.id,!1),children:[(0,W.jsx)(Ds,{size:16}),` Restore Room`]}),(0,W.jsxs)($J,{onSelect:()=>s(e),className:`text-red-300 hover:bg-red-500/10`,children:[(0,W.jsx)(Sl,{size:16}),` Delete Room`]})]}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)($J,{onSelect:x,children:[(0,W.jsx)(sc,{size:16}),` Copy Room ID`]}),(0,W.jsxs)($J,{onSelect:()=>u(!0),children:[(0,W.jsx)($c,{size:16}),` Edit Room`]}),(0,W.jsxs)($J,{onSelect:()=>o(e.id),children:[(0,W.jsx)(Hs,{size:16}),` Read All`]}),(0,W.jsxs)($J,{onSelect:()=>a(e.id,!0),children:[(0,W.jsx)(Os,{size:16}),` Archive Room`]})]})})})]})}),(e.children??[]).map(e=>(0,W.jsx)(c$,{room:e,selectedRoomId:t,loadingRoomId:n,onSelect:r,onUpdate:i,onArchive:a,onReadAll:o,onDelete:s,depth:c+1},e.id))]})}var l$=0,u$=1,d$=2,f$=4;function RLe(e){return()=>e}function zLe(e){e()}function p$(e,t){return n=>e(t(n))}function BLe(e,t){return()=>e(t)}function VLe(e,t){return n=>e(t,n)}function m$(e){return e!==void 0}function HLe(...e){return()=>{e.map(zLe)}}function h$(){}function g$(e,t){return t(e),e}function ULe(e,t){return t(e)}function _$(...e){return e}function v$(e,t){return e(u$,t)}function y$(e,t){e(l$,t)}function b$(e){e(d$)}function x$(e){return e(f$)}function S$(e,t){return v$(e,VLe(t,l$))}function C$(e,t){let n=e(u$,e=>{n(),t(e)});return n}function w$(e){let t,n;return r=>i=>{t=i,n&&clearTimeout(n),n=setTimeout(()=>{r(t)},e)}}function T$(e,t){return e===t}function E$(e=T$){let t;return n=>r=>{e(t,r)||(t=r,n(r))}}function D$(e){return t=>n=>{e(n)&&t(n)}}function O$(e){return t=>p$(t,e)}function k$(e){return t=>()=>{t(e)}}function A$(e,...t){let n=WLe(...t);return((t,r)=>{switch(t){case d$:b$(e);return;case u$:return v$(e,n(r))}})}function j$(e,t){return n=>r=>{n(t=e(t,r))}}function M$(e){return t=>n=>{e>0?e--:t(n)}}function N$(e){let t=null,n;return r=>i=>{t=i,!n&&(n=setTimeout(()=>{n=void 0,r(t)},e))}}function P$(...e){let t=Array.from({length:e.length}),n=0,r=null,i=2**e.length-1;return e.forEach((e,a)=>{let o=2**a;v$(e,e=>{let s=n;n|=o,t[a]=e,s!==i&&n===i&&r&&(r(),r=null)})}),e=>a=>{let o=()=>{e([a].concat(t))};n===i?o():r=o}}function WLe(...e){return t=>e.reduceRight(ULe,t)}function GLe(e){let t,n,r=()=>t?.();return function(i,a){switch(i){case u$:return a?n===a?void 0:(r(),n=a,t=v$(e,a),t):(r(),h$);case d$:r(),n=null;return}}}function F$(e){let t=e,n=L$();return((e,r)=>{switch(e){case l$:t=r;break;case u$:r(t);break;case f$:return t}return n(e,r)})}function I$(e,t){return g$(F$(t),t=>S$(e,t))}function L$(){let e=[];return((t,n)=>{switch(t){case l$:e.slice().forEach(e=>{e(n)});return;case d$:e.splice(0);return;case u$:return e.push(n),()=>{let t=e.indexOf(n);t>-1&&e.splice(t,1)}}})}function R$(e){return g$(L$(),t=>S$(e,t))}var KLe={singleton:!0};function z$(e,t=[],n=KLe){let{singleton:r}=n;return{constructor:e,dependencies:t,id:qLe(),singleton:r}}var qLe=()=>Symbol(`id`);function JLe(e){let t=new Map,n=({constructor:e,dependencies:r,id:i,singleton:a})=>{if(a&&t.has(i))return t.get(i);let o=e(r.map(e=>n(e)));return a&&t.set(i,o),o};return n(e)}function B$(...e){let t=L$(),n=Array.from({length:e.length}),r=0,i=2**e.length-1;return e.forEach((e,a)=>{let o=2**a;v$(e,e=>{n[a]=e,r|=o,r===i&&y$(t,n)})}),function(e,a){switch(e){case d$:b$(t);return;case u$:return r===i&&a(n),v$(t,a)}}}function V$(e,t=T$){return A$(e,E$(t))}function H$(...e){return function(t,n){switch(t){case d$:return;case u$:return HLe(...e.map(e=>v$(e,n)))}}}var U$={DEBUG:0,INFO:1,WARN:2,ERROR:3},YLe={[U$.DEBUG]:`debug`,[U$.ERROR]:`error`,[U$.INFO]:`log`,[U$.WARN]:`warn`},XLe=()=>typeof globalThis>`u`?window:globalThis,W$=z$(()=>{let e=F$(U$.ERROR);return{log:F$((t,n,r=U$.INFO)=>{r>=(XLe().VIRTUOSO_LOG_LEVEL??x$(e))&&console[YLe[r]](`%creact-virtuoso: %c%s %o`,`color: #0253b3; font-weight: bold`,`color: initial`,t,n)}),logLevel:e}},[],{singleton:!0});function ZLe(e){return`self`in e?e.document.documentElement:e}function G$(e){let t=ZLe(e);return t.ownerDocument.defaultView.getComputedStyle(t).direction===`rtl`}function K$(e,t){return G$(e)?-t:t}function q$(e,t){return G$(e)?-t:t}function J$(e,t,n){return Y$(e,t,n).callbackRef}function Y$(e,t,n){let r=U.useRef(null),i=e=>{},a=U.useMemo(()=>typeof ResizeObserver<`u`?new ResizeObserver(t=>{let r=()=>{let n=t[0].target;n.offsetParent!==null&&e(n)};n?r():requestAnimationFrame(r)}):null,[e,n]);return i=e=>{e&&t?(a?.observe(e),r.current=e):(r.current&&a?.unobserve(r.current),r.current=null)},{callbackRef:i,ref:r}}function X$(e,t,n,r,i,a,o,s,c){return Y$(U.useCallback(n=>{let c=QLe(n.children,t,s?`offsetWidth`:`offsetHeight`,i),l=n.parentElement;for(;l.dataset.virtuosoScroller===void 0;)l=l.parentElement;let u=l.lastElementChild?.dataset.viewportType===`window`,d;u&&(d=l.ownerDocument.defaultView);let f=o?s?o.scrollWidth:o.scrollHeight:u?s?d.document.documentElement.scrollWidth:d.document.documentElement.scrollHeight:s?l.scrollWidth:l.scrollHeight,p=o?s?o.offsetWidth:o.offsetHeight:u?s?d.innerWidth:d.innerHeight:s?l.offsetWidth:l.offsetHeight,m=o?s?K$(o,o.scrollLeft):o.scrollTop:u?s?K$(d,d.scrollX||d.document.documentElement.scrollLeft):d.scrollY||d.document.documentElement.scrollTop:s?K$(l,l.scrollLeft):l.scrollTop;r({scrollHeight:f,scrollTop:Math.max(m,0),viewportHeight:p}),a?.(s?Z$(`column-gap`,getComputedStyle(n).columnGap,i):Z$(`row-gap`,getComputedStyle(n).rowGap,i)),c!==null&&e(c)},[e,t,i,a,o,r,s]),n,c)}function QLe(e,t,n,r){let i=e.length;if(i===0)return null;let a=[];for(let o=0;o<i;o++){let i=e.item(o);if(i.dataset.index===void 0)continue;let s=parseInt(i.dataset.index,10),c=parseFloat(i.dataset.knownSize),l=t(i,n);if(l===0&&r(`Zero-sized element, this should not happen`,{child:i},U$.ERROR),l===c)continue;let u=a[a.length-1];a.length===0||u.size!==l||u.endIndex!==s-1?a.push({endIndex:s,size:l,startIndex:s}):a[a.length-1].endIndex++}return a}function Z$(e,t,n){return t!==`normal`&&t?.endsWith(`px`)!==!0&&n(`${e} was not resolved to pixel value correctly`,t,U$.WARN),t===`normal`?0:parseInt(t??`0`,10)}function Q$(e,t,n){let r=U.useRef(null),i=U.useCallback(n=>{if(!n?.offsetParent)return;let i=n.getBoundingClientRect(),a=i.width,s,c;if(t){let e=t.getBoundingClientRect(),n=i.top-e.top;c=e.height-Math.max(0,n),s=n+t.scrollTop}else{let e=o.current.ownerDocument.defaultView;c=e.innerHeight-Math.max(0,i.top),s=i.top+e.scrollY}r.current={listHeight:i.height,offsetTop:s,visibleHeight:c,visibleWidth:a},e(r.current)},[e,t]),{callbackRef:a,ref:o}=Y$(i,!0,n),s=U.useCallback(()=>{i(o.current)},[i,o]);return U.useEffect(()=>{if(t){t.addEventListener(`scroll`,s);let e=new ResizeObserver(()=>{requestAnimationFrame(s)});return e.observe(t),()=>{t.removeEventListener(`scroll`,s),e.unobserve(t)}}let e=o.current?.ownerDocument.defaultView;return e?.addEventListener(`scroll`,s),e?.addEventListener(`resize`,s),()=>{e?.removeEventListener(`scroll`,s),e?.removeEventListener(`resize`,s)}},[s,t,o]),a}var $$=z$(()=>{let e=L$(),t=L$(),n=F$(0),r=L$(),i=F$(0),a=L$(),o=L$(),s=F$(0),c=F$(0),l=F$(0),u=F$(0),d=L$(),f=L$(),p=F$(!1),m=F$(!1),h=F$(!1);return S$(A$(e,O$(({scrollTop:e})=>e)),t),S$(A$(e,O$(({scrollHeight:e})=>e)),o),S$(t,i),{deviation:n,fixedFooterHeight:l,fixedHeaderHeight:c,footerHeight:u,headerHeight:s,horizontalDirection:m,scrollBy:f,scrollContainerState:e,scrollHeight:o,scrollingInProgress:p,scrollTo:d,scrollTop:t,skipAnimationFrameInResizeObserver:h,smoothScrollTargetReached:r,statefulScrollTop:i,viewportHeight:a}},[],{singleton:!0}),e1={lvl:0};function t1(e,t){let n=e.length;if(n===0)return[];let{index:r,value:i}=t(e[0]),a=[];for(let o=1;o<n;o++){let{index:n,value:s}=t(e[o]);a.push({end:n-1,start:r,value:i}),r=n,i=s}return a.push({end:1/0,start:r,value:i}),a}function n1(e){return e===e1}function r1(e,t){if(!n1(e))return t===e.k?e.v:t<e.k?r1(e.l,t):r1(e.r,t)}function i1(e,t,n=`k`){if(n1(e))return[-1/0,void 0];if(Number(e[n])===t)return[e.k,e.v];if(Number(e[n])<t){let r=i1(e.r,t,n);return r[0]===-1/0?[e.k,e.v]:r}return i1(e.l,t,n)}function a1(e,t,n){return n1(e)?g1(t,n,1):t===e.k?f1(e,{k:t,v:n}):t<e.k?_1(f1(e,{l:a1(e.l,t,n)})):_1(f1(e,{r:a1(e.r,t,n)}))}function o1(){return e1}function s1(e,t,n){if(n1(e))return[];let r=i1(e,t)[0];return $Le(u1(e,r,n))}function c1(e,t){if(n1(e))return e1;let{k:n,l:r,r:i}=e;if(t===n){if(n1(r))return i;if(n1(i))return r;let[t,n]=h1(r);return d1(f1(e,{k:t,l:p1(r),v:n}))}return d1(t<n?f1(e,{l:c1(r,t)}):f1(e,{r:c1(i,t)}))}function l1(e){return n1(e)?[]:[...l1(e.l),{k:e.k,v:e.v},...l1(e.r)]}function u1(e,t,n){if(n1(e))return[];let{k:r,l:i,r:a,v:o}=e,s=[];return r>t&&(s=s.concat(u1(i,t,n))),r>=t&&r<=n&&s.push({k:r,v:o}),r<=n&&(s=s.concat(u1(a,t,n))),s}function d1(e){let{l:t,lvl:n,r}=e;if(r.lvl>=n-1&&t.lvl>=n-1)return e;if(n>r.lvl+1){if(m1(t))return v1(f1(e,{lvl:n-1}));if(!n1(t)&&!n1(t.r))return f1(t.r,{l:f1(t,{r:t.r.l}),lvl:n,r:f1(e,{l:t.r.r,lvl:n-1})});throw Error(`Unexpected empty nodes`)}if(m1(e))return y1(f1(e,{lvl:n-1}));if(!n1(r)&&!n1(r.l)){let t=r.l,i=m1(t)?r.lvl-1:r.lvl;return f1(t,{l:f1(e,{lvl:n-1,r:t.l}),lvl:t.lvl+1,r:y1(f1(r,{l:t.r,lvl:i}))})}throw Error(`Unexpected empty nodes`)}function f1(e,t){return g1(t.k===void 0?e.k:t.k,t.v===void 0?e.v:t.v,t.lvl===void 0?e.lvl:t.lvl,t.l===void 0?e.l:t.l,t.r===void 0?e.r:t.r)}function p1(e){return n1(e.r)?e.l:d1(f1(e,{r:p1(e.r)}))}function m1(e){return n1(e)||e.lvl>e.r.lvl}function h1(e){return n1(e.r)?[e.k,e.v]:h1(e.r)}function g1(e,t,n,r=e1,i=e1){return{k:e,l:r,lvl:n,r:i,v:t}}function _1(e){return y1(v1(e))}function v1(e){let{l:t}=e;return!n1(t)&&t.lvl===e.lvl?f1(t,{r:f1(e,{l:t.r})}):e}function y1(e){let{lvl:t,r:n}=e;return!n1(n)&&!n1(n.r)&&n.lvl===t&&n.r.lvl===t?f1(n,{l:f1(e,{r:n.l}),lvl:t+1}):e}function $Le(e){return t1(e,({k:e,v:t})=>({index:e,value:t}))}function b1(e,t){return!!(e&&e.startIndex===t.startIndex&&e.endIndex===t.endIndex)}function x1(e,t){return!!(e&&e[0]===t[0]&&e[1]===t[1])}var S1=z$(()=>({recalcInProgress:F$(!1)}),[],{singleton:!0});function C1(e,t,n){return e[w1(e,t,n)]}function w1(e,t,n,r=0){let i=e.length-1;for(;r<=i;){let a=Math.floor((r+i)/2),o=e[a],s=n(o,t);if(s===0)return a;if(s===-1){if(i-r<2)return a-1;i=a-1}else{if(i===r)return a;r=a+1}}throw Error(`Failed binary finding record in array - ${e.join(`,`)}, searched for ${t}`)}function eRe(e,t,n,r){let i=w1(e,t,r),a=w1(e,n,r,i);return e.slice(i,a+1)}function T1(e,t){return Math.round(e.getBoundingClientRect()[t])}function E1(e){return!n1(e.groupOffsetTree)}function D1({index:e},t){return t===e?0:t<e?-1:1}function tRe(){return{groupIndices:[],groupOffsetTree:o1(),lastIndex:0,lastOffset:0,lastSize:0,offsetTree:[],sizeTree:o1()}}function nRe(e,t){let n=n1(e)?0:1/0;for(let r of t){let{endIndex:t,size:i,startIndex:a}=r;if(n=Math.min(n,a),n1(e)){e=a1(e,0,i);continue}let o=s1(e,a-1,t+1);if(o.some(lRe(r)))continue;let s=!1,c=!1;for(let{end:n,start:r,value:a}of o)s?(t>=r||i===a)&&(e=c1(e,r)):(c=a!==i,s=!0),n>t&&t>=r&&a!==i&&(e=a1(e,t+1,a));c&&(e=a1(e,a,i))}return[e,n]}function rRe(e){return e.groupIndex!==void 0}function iRe({offset:e},t){return t===e?0:t<e?-1:1}function O1(e,t,n){if(t.length===0)return 0;let{index:r,offset:i,size:a}=C1(t,e,D1),o=e-r,s=a*o+(o-1)*n+i;return s>0?s+n:s}function k1(e,t){if(!E1(t))return e;let n=0;for(;t.groupIndices[n]<=e+n;)n++;return e+n}function A1(e,t,n){if(rRe(e))return t.groupIndices[e.groupIndex]+1;let r=k1(e.index===`LAST`?n:e.index,t);return r=Math.max(0,Math.min(n,r)),r}function aRe(e,t,n,r=0){return r>0&&(t=Math.max(t,C1(e,r,D1).offset)),t1(eRe(e,t,n,iRe),cRe)}function oRe(e,[t,n,r,i]){t.length>0&&r(`received item sizes`,t,U$.DEBUG);let a=e.sizeTree,o=a,s=0;if(n.length>0&&n1(a)&&t.length===2){let e=t[0].size,r=t[1].size;o=n.reduce((t,n)=>a1(a1(t,n,e),n+1,r),o)}else[o,s]=nRe(o,t);if(o===a)return e;let{lastIndex:c,lastOffset:l,lastSize:u,offsetTree:d}=M1(e.offsetTree,s,o,i);return{groupIndices:n,groupOffsetTree:n.reduce((e,t)=>a1(e,t,O1(t,d,i)),o1()),lastIndex:c,lastOffset:l,lastSize:u,offsetTree:d,sizeTree:o}}function sRe(e){return l1(e).map(({k:e,v:t},n,r)=>{let i=r[n+1];return{endIndex:i===void 0?1/0:i.k-1,size:t,startIndex:e}})}function j1(e,t){let n=0,r=0;for(;n<e;)n+=t[r+1]-t[r]-1,r++;return r-(n===e?0:1)}function M1(e,t,n,r){let i=e,a=0,o=0,s=0,c=0;if(t===0)i=[];else{c=w1(i,t-1,D1),s=i[c].offset;let e=i1(n,t-1);a=e[0],o=e[1],i.length&&i[c].size===i1(n,t)[1]&&--c,i=i.slice(0,c+1)}for(let{start:e,value:c}of s1(n,t,1/0)){let t=e-a,n=t*o+s+t*r;i.push({index:e,offset:n,size:c}),a=e,s=n,o=c}return{lastIndex:a,lastOffset:s,lastSize:o,offsetTree:i}}function cRe(e){return{index:e.index,value:e}}function lRe(e){let{endIndex:t,size:n,startIndex:r}=e;return e=>e.start===r&&(e.end===t||e.end===1/0)&&e.value===n}var uRe={offsetHeight:`height`,offsetWidth:`width`},N1=z$(([{log:e},{recalcInProgress:t}])=>{let n=L$(),r=L$(),i=I$(r,0),a=L$(),o=L$(),s=F$(0),c=F$([]),l=F$(void 0),u=F$(void 0),d=F$(void 0),f=F$(void 0),p=F$((e,t)=>T1(e,uRe[t])),m=F$(void 0),h=F$(0),g=tRe(),_=I$(A$(n,P$(c,e,h),j$(oRe,g),E$()),g),v=I$(A$(c,E$(),j$((e,t)=>({current:t,prev:e.current}),{current:[],prev:[]}),O$(({prev:e})=>e)),[]);S$(A$(c,D$(e=>e.length>0),P$(_,h),O$(([e,t,n])=>{let r=e.reduce((e,r,i)=>a1(e,r,O1(r,t.offsetTree,n)||i),o1());return{...t,groupIndices:e,groupOffsetTree:r}})),_),S$(A$(r,P$(_),D$(([e,{lastIndex:t}])=>e<t),O$(([e,{lastIndex:t,lastSize:n}])=>[{endIndex:t,size:n,startIndex:e}])),n),S$(l,u);let y=I$(A$(l,O$(e=>e===void 0)),!0);S$(A$(u,D$(e=>e!==void 0&&n1(x$(_).sizeTree)),O$(e=>{let t=x$(d),n=x$(c).length>0;return t!==void 0&&t!==0?n?[{endIndex:0,size:t,startIndex:0},{endIndex:1,size:e,startIndex:1}]:[]:[{endIndex:0,size:e,startIndex:0}]})),n),S$(A$(f,D$(e=>e!==void 0&&e.length>0&&n1(x$(_).sizeTree)),O$(e=>{let t=[],n=e[0],r=0;for(let i=1;i<e.length;i++){let a=e[i];a!==n&&(t.push({endIndex:i-1,size:n,startIndex:r}),n=a,r=i)}return t.push({endIndex:e.length-1,size:n,startIndex:r}),t})),n),S$(A$(c,P$(d,u),D$(([,e,t])=>e!==void 0&&t!==void 0),O$(([e,t,n])=>{let r=[];for(let i=0;i<e.length;i++){let a=e[i],o=e[i+1];r.push({startIndex:a,endIndex:a,size:t}),o!==void 0&&r.push({startIndex:a+1,endIndex:o-1,size:n})}return r})),n);let b=R$(A$(n,P$(_),j$(({sizes:e},[t,n])=>({changed:n!==e,sizes:n}),{changed:!1,sizes:g}),O$(e=>e.changed)));v$(A$(s,j$((e,t)=>({diff:e.prev-t,prev:t}),{diff:0,prev:0}),O$(e=>e.diff)),e=>{let{groupIndices:n}=x$(_);if(e>0)y$(t,!0),y$(a,e+j1(e,n));else if(e<0){let t=x$(v);t.length>0&&(e-=j1(-e,t)),y$(o,e)}}),v$(A$(s,P$(e)),([e,t])=>{e<0&&t("`firstItemIndex` prop should not be set to less than zero. If you don't know the total count, just use a very high value",{firstItemIndex:s},U$.ERROR)});let x=R$(a);S$(A$(a,P$(_),O$(([e,t])=>{let n=t.groupIndices.length>0,r=[],i=t.lastSize;if(n){let n=r1(t.sizeTree,0),a=0,o=0;for(;a<e;){let e=t.groupIndices[o],s=t.groupIndices.length===o+1?1/0:t.groupIndices[o+1]-e-1;r.push({endIndex:e,size:n,startIndex:e}),r.push({endIndex:e+1+s-1,size:i,startIndex:e+1}),o++,a+=s+1}let s=l1(t.sizeTree);return a!==e&&s.shift(),s.reduce((t,{k:n,v:r})=>{let i=t.ranges;return t.prevSize!==0&&(i=[...t.ranges,{endIndex:n+e-1,size:t.prevSize,startIndex:t.prevIndex}]),{prevIndex:n+e,prevSize:r,ranges:i}},{prevIndex:e,prevSize:0,ranges:r}).ranges}return l1(t.sizeTree).reduce((t,{k:n,v:r})=>({prevIndex:n+e,prevSize:r,ranges:[...t.ranges,{endIndex:n+e-1,size:t.prevSize,startIndex:t.prevIndex}]}),{prevIndex:0,prevSize:i,ranges:[]}).ranges})),n);let S=R$(A$(o,P$(_,h),O$(([e,{offsetTree:t},n])=>O1(-e,t,n))));return S$(A$(o,P$(_,h),O$(([e,t,n])=>{if(t.groupIndices.length>0){if(n1(t.sizeTree))return t;let r=o1(),i=x$(v),a=0,o=0,s=0;for(;a<-e;){s=i[o];let e=i[o+1]-s-1;o++,a+=e+1}if(r=l1(t.sizeTree).reduce((t,{k:n,v:r})=>a1(t,Math.max(0,n+e),r),r),a!==-e){let n=r1(t.sizeTree,s);r=a1(r,0,n);let i=i1(t.sizeTree,-e+1)[1];r=a1(r,1,i)}return{...t,sizeTree:r,...M1(t.offsetTree,0,r,n)}}let r=l1(t.sizeTree).reduce((t,{k:n,v:r})=>a1(t,Math.max(0,n+e),r),o1());return{...t,sizeTree:r,...M1(t.offsetTree,0,r,n)}})),_),{beforeUnshiftWith:x,data:m,defaultItemSize:u,firstItemIndex:s,fixedItemSize:l,fixedGroupSize:d,gap:h,groupIndices:c,heightEstimates:f,itemSize:p,listRefresh:b,shiftWith:o,shiftWithOffset:S,sizeRanges:n,sizes:_,statefulTotalCount:i,totalCount:r,trackItemSizes:y,unshiftWith:a}},_$(W$,S1),{singleton:!0});function dRe(e){return e.reduce((e,t)=>(e.groupIndices.push(e.totalCount),e.totalCount+=t+1,e),{groupIndices:[],totalCount:0})}var P1=z$(([{groupIndices:e,sizes:t,totalCount:n},{headerHeight:r,scrollTop:i}])=>{let a=L$(),o=L$(),s=R$(A$(a,O$(dRe)));return S$(A$(s,O$(e=>e.totalCount)),n),S$(A$(s,O$(e=>e.groupIndices)),e),S$(A$(B$(i,t,r),D$(([e,t])=>E1(t)),O$(([e,t,n])=>i1(t.groupOffsetTree,Math.max(e-n,0),`v`)[0]),E$(),O$(e=>[e])),o),{groupCounts:a,topItemsIndexes:o}},_$(N1,$$)),F1=z$(([{log:e}])=>{let t=F$(!1),n=R$(A$(t,D$(e=>e),E$()));return v$(t,t=>{t&&x$(e)(`props updated`,{},U$.DEBUG)}),{didMount:n,propsReady:t}},_$(W$),{singleton:!0}),fRe=typeof document<`u`&&`scrollBehavior`in document.documentElement.style;function I1(e){let t=typeof e==`number`?{index:e}:{...e};return t.align||=`start`,(!t.behavior||!fRe)&&(t.behavior=`auto`),t.offset===void 0&&(t.offset=0),t}var L1=z$(([{gap:e,listRefresh:t,sizes:n,totalCount:r},{fixedFooterHeight:i,fixedHeaderHeight:a,footerHeight:o,headerHeight:s,scrollingInProgress:c,scrollTo:l,smoothScrollTargetReached:u,viewportHeight:d},{log:f}])=>{let p=L$(),m=L$(),h=F$(0),g=null,_=null,v=null;function y(){g!==null&&(g(),g=null),v!==null&&(v(),v=null),_&&=(clearTimeout(_),null),y$(c,!1)}return S$(A$(p,P$(n,d,r,h,s,o,f),P$(e,a,i),O$(([[e,n,r,i,a,o,s,l],d,f,h])=>{let b=I1(e),{align:x,behavior:S,offset:C}=b,w=i-1,T=A1(b,n,w),E=O1(T,n.offsetTree,d)+o;x===`end`?(E+=f+i1(n.sizeTree,T)[1]-r+h,T===w&&(E+=s)):x===`center`?E+=(f+i1(n.sizeTree,T)[1]-r+h)/2:E-=a,C!==void 0&&C!==0&&(E+=C);let D=t=>{y(),t?(l(`retrying to scroll to`,{location:e},U$.DEBUG),y$(p,e)):(y$(m,!0),l(`list did not change, scroll successful`,{},U$.DEBUG))};if(y(),S===`smooth`){let e=!1;v=v$(t,t=>{e||=t}),g=C$(u,()=>{D(e)})}else g=C$(A$(t,pRe(150)),D);return _=setTimeout(()=>{y()},1200),y$(c,!0),l(`scrolling from index to`,{behavior:S,index:T,top:E},U$.DEBUG),{behavior:S,top:E}})),l),{scrollTargetReached:m,scrollToIndex:p,topListHeight:h}},_$(N1,$$,W$),{singleton:!0});function pRe(e){return t=>{let n=setTimeout(()=>{t(!1)},e);return e=>{e&&(t(!0),clearTimeout(n))}}}function R1(e,t){e===0?t():requestAnimationFrame(()=>{R1(e-1,t)})}function z1(e,t){if(e===void 0)return 0;let n=t-1,r=typeof e==`number`?e:e.index===`LAST`?n:e.index;return Math.max(0,Math.min(r,n))}function B1(e){return e===void 0?!0:typeof e==`number`?e===0:e.index===0&&(e.align===void 0||e.align===`start`)&&(e.offset===void 0||e.offset===0)}var V1=z$(([{defaultItemSize:e,listRefresh:t,sizes:n},{scrollTop:r},{scrollTargetReached:i,scrollToIndex:a},{didMount:o}])=>{let s=F$(!0),c=F$(0),l=F$(!0);return S$(A$(o,P$(c),D$(([e,t])=>!B1(t)),k$(!1)),s),S$(A$(o,P$(c),D$(([e,t])=>!B1(t)),k$(!1)),l),v$(A$(B$(t,o),P$(s,n,e,l),D$(([[,e],t,{sizeTree:n},r,i])=>e&&(!n1(n)||m$(r))&&!t&&!i),P$(c)),([,e])=>{if(e===void 0){y$(s,!0),y$(l,!0);return}C$(i,()=>{y$(l,!0)}),R1(4,()=>{C$(r,()=>{y$(s,!0)}),y$(a,e)})}),{initialItemFinalLocationReached:l,initialTopMostItemIndex:c,scrolledToInitialItem:s}},_$(N1,$$,L1,F1),{singleton:!0});function H1(e,t){return Math.abs(e-t)<1.01}var U1=`up`,W1=`down`,mRe=`none`,hRe={atBottom:!1,notAtBottomBecause:`NOT_SHOWING_LAST_ITEM`,state:{offsetBottom:0,scrollHeight:0,scrollTop:0,viewportHeight:0}},gRe=0,G1=z$(([{footerHeight:e,headerHeight:t,scrollBy:n,scrollContainerState:r,scrollTop:i,viewportHeight:a}])=>{let o=F$(!1),s=F$(!0),c=L$(),l=L$(),u=F$(4),d=F$(gRe),f=I$(A$(H$(A$(V$(i),M$(1),k$(!0)),A$(V$(i),M$(1),k$(!1),w$(100))),E$()),!1),p=I$(A$(H$(A$(n,k$(!0)),A$(n,k$(!1),w$(200))),E$()),!1);S$(A$(B$(V$(i),V$(d)),O$(([e,t])=>e<=t),E$()),s),S$(A$(s,N$(50)),l);let m=R$(A$(B$(r,V$(a),V$(t),V$(e),V$(u)),j$((e,[{scrollHeight:t,scrollTop:n},r,i,a,o])=>{let s=n+r-t>-o,c={scrollHeight:t,scrollTop:n,viewportHeight:r};if(s){let t,r;return n>e.state.scrollTop?(t=`SCROLLED_DOWN`,r=e.state.scrollTop-n):(t=`SIZE_DECREASED`,r=e.state.scrollTop-n||e.scrollTopDelta),{atBottom:!0,atBottomBecause:t,scrollTopDelta:r,state:c}}let l;return l=c.scrollHeight>e.state.scrollHeight?`SIZE_INCREASED`:r<e.state.viewportHeight?`VIEWPORT_HEIGHT_DECREASING`:n<e.state.scrollTop?`SCROLLING_UPWARDS`:`NOT_FULLY_SCROLLED_TO_LAST_ITEM_BOTTOM`,{atBottom:!1,notAtBottomBecause:l,state:c}},hRe),E$((e,t)=>e!==void 0&&e.atBottom===t.atBottom))),h=I$(A$(r,j$((e,{scrollHeight:t,scrollTop:n,viewportHeight:r})=>{if(!H1(e.scrollHeight,t)){let i=t-(n+r)<1;return e.scrollTop!==n&&i?{changed:!0,jump:e.scrollTop-n,scrollHeight:t,scrollTop:n}:{changed:!0,jump:0,scrollHeight:t,scrollTop:n}}return{changed:!1,jump:0,scrollHeight:t,scrollTop:n}},{changed:!1,jump:0,scrollHeight:0,scrollTop:0}),D$(e=>e.changed),O$(e=>e.jump)),0);S$(A$(m,O$(e=>e.atBottom)),o),S$(A$(o,N$(50)),c);let g=F$(W1);S$(A$(r,O$(({scrollTop:e})=>e),E$(),j$((e,t)=>x$(p)?{direction:e.direction,prevScrollTop:t}:{direction:t<e.prevScrollTop?U1:W1,prevScrollTop:t},{direction:W1,prevScrollTop:0}),O$(e=>e.direction)),g),S$(A$(r,N$(50),k$(mRe)),g);let _=F$(0);return S$(A$(f,D$(e=>!e),k$(0)),_),S$(A$(i,N$(100),P$(f),D$(([e,t])=>t),j$(([e,t],[n])=>[t,n],[0,0]),O$(([e,t])=>t-e)),_),{atBottomState:m,atBottomStateChange:c,atBottomThreshold:u,atTopStateChange:l,atTopThreshold:d,isAtBottom:o,isAtTop:s,isScrolling:f,lastJumpDueToItemResize:h,scrollDirection:g,scrollVelocity:_}},_$($$)),K1=`top`,q1=`bottom`,J1=`none`;function Y1(e,t,n){return typeof e==`number`?n===U1&&t===K1||n===W1&&t===q1?e:0:n===U1?t===K1?e.main:e.reverse:t===q1?e.main:e.reverse}function X1(e,t){return typeof e==`number`?e:e[t]??0}var Z1=z$(([{deviation:e,fixedHeaderHeight:t,headerHeight:n,scrollTop:r,viewportHeight:i}])=>{let a=L$(),o=F$(0),s=F$(0),c=F$(0);return{increaseViewportBy:s,listBoundary:a,overscan:c,topListHeight:o,visibleRange:I$(A$(B$(V$(r),V$(i),V$(n),V$(a,x1),V$(c),V$(o),V$(t),V$(e),V$(s)),O$(([e,t,n,[r,i],a,o,s,c,l])=>{let u=e-c,d=o+s,f=Math.max(n-u,0),p=J1,m=X1(l,K1),h=X1(l,q1);return r-=c,r+=n+s,i+=n+s,i-=c,r>e+d-m&&(p=U1),i<e-f+t+h&&(p=W1),p===J1?null:[Math.max(u-n-Y1(a,K1,p)-m,0),u-f-s+t+Y1(a,q1,p)+h]}),D$(e=>e!==null),E$(x1)),[0,0])}},_$($$),{singleton:!0});function _Re(e,t,n){if(E1(t)){let r=k1(e,t);return[{index:i1(t.groupOffsetTree,r)[0],offset:0,size:0},{data:n?.[0],index:r,offset:0,size:0}]}return[{data:n?.[0],index:e,offset:0,size:0}]}var Q1={bottom:0,firstItemIndex:0,items:[],offsetBottom:0,offsetTop:0,top:0,topItems:[],topListHeight:0,totalCount:0};function $1(e,t,n,r,i,a){let{lastIndex:o,lastOffset:s,lastSize:c}=i,l=0,u=0;if(e.length>0){l=e[0].offset;let t=e[e.length-1];u=t.offset+t.size}let d=n-o,f=s+d*c+(d-1)*r,p=l,m=f-u;return{bottom:u,firstItemIndex:a,items:t0(e,i,a),offsetBottom:m,offsetTop:l,top:p,topItems:t0(t,i,a),topListHeight:t.reduce((e,t)=>t.size+e,0),totalCount:n}}function e0(e,t,n,r,i,a){let o=0;if(n.groupIndices.length>0)for(let t of n.groupIndices){if(t-o>=e)break;o++}let s=e+o,c=z1(t,s);return $1(Array.from({length:s}).map((e,t)=>({data:a[t+c],index:t+c,offset:0,size:0})),[],s,i,n,r)}function t0(e,t,n){if(e.length===0)return[];if(!E1(t))return e.map(e=>({...e,index:e.index+n,originalIndex:e.index}));let r=e[0].index,i=e[e.length-1].index,a=[],o=s1(t.groupOffsetTree,r,i),s,c=0;for(let r of e){(!s||s.end<r.index)&&(s=o.shift(),c=t.groupIndices.indexOf(s.start));let e;e=r.index===s.start?{index:c,type:`group`}:{groupIndex:c,index:r.index-(c+1)+n},a.push({...e,data:r.data,offset:r.offset,originalIndex:r.index,size:r.size})}return a}function n0(e,t){return e===void 0?0:typeof e==`number`?e:e[t]??0}var r0=z$(([{data:e,firstItemIndex:t,gap:n,sizes:r,totalCount:i},a,{listBoundary:o,topListHeight:s,visibleRange:c},{initialTopMostItemIndex:l,scrolledToInitialItem:u},{topListHeight:d},f,{didMount:p},{recalcInProgress:m}])=>{let h=F$([]),g=F$(0),_=L$(),v=F$(0);S$(a.topItemsIndexes,h);let y=I$(A$(B$(p,m,V$(c,x1),V$(i),V$(r),V$(l),u,V$(h),V$(t),V$(n),V$(v),e),D$(([e,t,,n,,,,,,,,r])=>{let i=r!==void 0&&r.length!==n;return e&&!t&&!i}),O$(([,,[e,t],n,r,i,a,o,s,c,l,u])=>{let d=r,{offsetTree:f,sizeTree:p}=d,m=x$(g);if(n===0)return{...Q1,totalCount:n};if(e===0&&t===0)return m===0?{...Q1,totalCount:n}:e0(m,i,r,s,c,u||[]);if(n1(p))return m>0?null:$1(_Re(z1(i,n),d,u),[],n,c,d,s);let h=[];if(o.length>0){let e=o[0],t=o[o.length-1],n=0;for(let r of s1(p,e,t)){let i=r.value,a=Math.max(r.start,e),o=Math.min(r.end,t);for(let e=a;e<=o;e++)h.push({data:u?.[e],index:e,offset:n,size:i}),n+=i}}if(!a)return $1([],h,n,c,d,s);let _=o.length>0?o[o.length-1]+1:0,v=aRe(f,e,t,_);if(v.length===0)return null;let y=n-1,b=g$([],n=>{for(let r of v){let i=r.value,a=i.offset,o=r.start,s=i.size;if(i.offset<e){o+=Math.floor((e-i.offset+c)/(s+c));let t=o-r.start;a+=t*s+t*c}o<_&&(a+=(_-o)*s,o=_);let l=Math.min(r.end,y);for(let e=o;e<=l&&!(a>=t);e++)n.push({data:u?.[e],index:e,offset:a,size:s}),a+=s+c}}),x=n0(l,K1),S=n0(l,q1);if(b.length>0&&(x>0||S>0)){let e=b[0],t=b[b.length-1];if(x>0&&e.index>_){let t=Math.min(x,e.index-_),n=[],r=e.offset;for(let i=e.index-1;i>=e.index-t;i--){let t=s1(p,i,i)[0]?.value??e.size;r-=t+c,n.unshift({data:u?.[i],index:i,offset:r,size:t})}b.unshift(...n)}if(S>0&&t.index<y){let e=Math.min(S,y-t.index),n=t.offset+t.size+c;for(let r=t.index+1;r<=t.index+e;r++){let e=s1(p,r,r)[0]?.value??t.size;b.push({data:u?.[r],index:r,offset:n,size:e}),n+=e+c}}}return $1(b,h,n,c,d,s)}),D$(e=>e!==null),E$()),Q1);S$(A$(e,D$(m$),O$(e=>e?.length)),i),S$(A$(y,O$(e=>e.topListHeight)),d),S$(d,s),S$(A$(y,O$(e=>[e.top,e.bottom])),o),S$(A$(y,O$(e=>e.items)),_);let b=R$(A$(y,D$(({items:e})=>e.length>0),P$(i,e),D$(([{items:e},t])=>e[e.length-1].originalIndex===t-1),O$(([,e,t])=>[e-1,t]),E$(x1),O$(([e])=>e))),x=R$(A$(y,N$(200),D$(({items:e,topItems:t})=>e.length>0&&e[0].originalIndex===t.length),O$(({items:e})=>e[0].index),E$()));return{endReached:b,initialItemCount:g,itemsRendered:_,listState:y,minOverscanItemCount:v,rangeChanged:R$(A$(y,D$(({items:e})=>e.length>0),O$(({items:e})=>{let t=0,n=e.length-1;for(;e[t].type===`group`&&t<n;)t++;for(;e[n].type===`group`&&n>t;)n--;return{endIndex:e[n].index,startIndex:e[t].index}}),E$(b1))),startReached:x,topItemsIndexes:h,...f}},_$(N1,P1,Z1,V1,L1,G1,F1,S1),{singleton:!0}),i0=z$(([{fixedFooterHeight:e,fixedHeaderHeight:t,footerHeight:n,headerHeight:r},{listState:i}])=>{let a=L$(),o=I$(A$(B$(n,e,r,t,i),O$(([e,t,n,r,i])=>e+t+n+r+i.offsetBottom+i.bottom)),0);return S$(V$(o),a),{totalListHeight:o,totalListHeightChanged:a}},_$($$,r0),{singleton:!0}),vRe=z$(([{viewportHeight:e},{totalListHeight:t}])=>{let n=F$(!1);return{alignToBottom:n,paddingTopAddition:I$(A$(B$(n,e,t),D$(([e])=>e),O$(([,e,t])=>Math.max(0,e-t)),N$(0),E$()),0)}},_$($$,i0),{singleton:!0}),a0=z$(()=>({context:F$(null)})),yRe=({itemBottom:e,itemTop:t,locationParams:{align:n,behavior:r,...i},viewportBottom:a,viewportTop:o})=>t<o?{...i,align:n??`start`,...r===void 0?{}:{behavior:r}}:e>a?{...i,align:n??`end`,...r===void 0?{}:{behavior:r}}:null,o0=z$(([{gap:e,sizes:t,totalCount:n},{fixedFooterHeight:r,fixedHeaderHeight:i,headerHeight:a,scrollingInProgress:o,scrollTop:s,viewportHeight:c},{scrollToIndex:l}])=>{let u=L$();return S$(A$(u,P$(t,c,n,a,i,r,s),P$(e),O$(([[e,t,n,r,i,a,s,c],l])=>{let{calculateViewLocation:u=yRe,done:d,...f}=e,p=A1(e,t,r-1),m=O1(p,t.offsetTree,l)+i+a,h=m+i1(t.sizeTree,p)[1],g=c+a,_=u({itemBottom:h,itemTop:m,locationParams:f,viewportBottom:c+n-s,viewportTop:g});return _===null?d?.():d&&C$(A$(o,D$(e=>!e),M$(x$(o)?1:2)),d),_}),D$(e=>e!==null)),l),{scrollIntoView:u}},_$(N1,$$,L1,r0,W$),{singleton:!0});function s0(e){return e===!1?!1:e===`smooth`?`smooth`:`auto`}var bRe=(e,t)=>typeof e==`function`?s0(e(t)):t&&s0(e),xRe=z$(([{listRefresh:e,totalCount:t,fixedItemSize:n,data:r},{atBottomState:i,isAtBottom:a},{scrollToIndex:o},{scrolledToInitialItem:s},{didMount:c,propsReady:l},{log:u},{scrollingInProgress:d},{context:f},{scrollIntoView:p}])=>{let m=F$(!1),h=L$(),g=null;function _(e){y$(o,{align:`end`,behavior:e,index:`LAST`})}v$(A$(B$(A$(V$(t),M$(1)),c),P$(V$(m),a,s,d),O$(([[e,t],n,r,i,a])=>{let o=t&&i,s=`auto`;return o&&(s=bRe(n,r||a),o&&=s!==!1),{followOutputBehavior:s,shouldFollow:o,totalCount:e}}),D$(({shouldFollow:e})=>e)),({followOutputBehavior:t,totalCount:r})=>{g!==null&&(g(),g=null),x$(n)===void 0?g=C$(e,()=>{x$(u)(`following output to `,{totalCount:r},U$.DEBUG),_(t),g=null}):requestAnimationFrame(()=>{x$(u)(`following output to `,{totalCount:r},U$.DEBUG),_(t)})});function v(e){let t=C$(i,t=>{e&&!t.atBottom&&t.notAtBottomBecause===`SIZE_INCREASED`&&g===null&&(x$(u)(`scrolling to bottom due to increased size`,{},U$.DEBUG),_(`auto`))});setTimeout(t,100)}v$(A$(B$(V$(m),t,l),D$(([e,,t])=>e!==!1&&t),j$(({value:e},[,t])=>({refreshed:e===t,value:t}),{refreshed:!1,value:0}),D$(({refreshed:e})=>e),P$(m,t)),([,e])=>{x$(s)&&v(e!==!1)}),v$(h,()=>{v(x$(m)!==!1)}),v$(B$(V$(m),i),([e,t])=>{e!==!1&&!t.atBottom&&t.notAtBottomBecause===`VIEWPORT_HEIGHT_DECREASING`&&_(`auto`)});let y=F$(null),b=L$();return S$(H$(A$(V$(r),O$(e=>e?.length??0)),A$(V$(t))),b),v$(A$(B$(A$(b,M$(1)),c),P$(V$(y),s,d,f),O$(([[e,t],n,r,i,a])=>t&&r&&n?.({context:a,totalCount:e,scrollingInProgress:i})),D$(e=>!!e),N$(0)),t=>{g!==null&&(g(),g=null),x$(n)===void 0?g=C$(e,()=>{x$(u)(`scrolling into view`,{}),y$(p,t),g=null}):requestAnimationFrame(()=>{x$(u)(`scrolling into view`,{}),y$(p,t)})}),{autoscrollToBottom:h,followOutput:m,scrollIntoViewOnChange:y}},_$(N1,G1,L1,V1,F1,W$,$$,a0,o0)),SRe=z$(([{data:e,firstItemIndex:t,gap:n,sizes:r},{initialTopMostItemIndex:i},{initialItemCount:a,listState:o},{didMount:s}])=>(S$(A$(s,P$(a),D$(([,e])=>e!==0),P$(i,r,t,n,e),O$(([[,e],t,n,r,i,a=[]])=>e0(e,t,n,r,i,a))),o),{}),_$(N1,V1,r0,F1),{singleton:!0}),CRe=z$(([{didMount:e},{scrollTo:t},{listState:n}])=>{let r=F$(0);return v$(A$(e,P$(r),D$(([,e])=>e!==0),O$(([,e])=>({top:e}))),e=>{C$(A$(n,M$(1),D$(e=>e.items.length>1)),()=>{requestAnimationFrame(()=>{y$(t,e)})})}),{initialScrollTop:r}},_$(F1,$$,r0),{singleton:!0}),c0=z$(([{scrollVelocity:e}])=>{let t=F$(!1),n=L$(),r=F$(!1);return S$(A$(e,P$(r,t,n),D$(([e,t])=>t!==!1&&t!==void 0),O$(([e,t,n,r])=>{let{enter:i,exit:a}=t;if(n){if(a(e,r))return!1}else if(i(e,r))return!0;return n}),E$()),t),v$(A$(B$(t,e,n),P$(r)),([[e,t,n],r])=>{e&&r!==!1&&r!==void 0&&r.change&&r.change(t,n)}),{isSeeking:t,scrollSeekConfiguration:r,scrollSeekRangeChanged:n,scrollVelocity:e}},_$(G1),{singleton:!0}),l0=z$(([{scrollContainerState:e,scrollTo:t}])=>{let n=L$(),r=L$(),i=L$(),a=F$(!1),o=F$(void 0);return S$(A$(B$(n,r),O$(([{scrollTop:e,viewportHeight:t},{offsetTop:n,listHeight:r}])=>({scrollHeight:r,scrollTop:Math.max(0,e-n),viewportHeight:t}))),e),S$(A$(t,P$(r),O$(([e,{offsetTop:t}])=>({...e,top:e.top+t}))),i),{customScrollParent:o,useWindowScroll:a,windowScrollContainerState:n,windowScrollTo:i,windowViewportRect:r}},_$($$)),wRe=z$(([{sizeRanges:e,sizes:t},{headerHeight:n,scrollTop:r},{initialTopMostItemIndex:i},{didMount:a},{useWindowScroll:o,windowScrollContainerState:s,windowViewportRect:c}])=>{let l=L$(),u=F$(void 0),d=F$(null),f=F$(null);return S$(s,d),S$(c,f),v$(A$(l,P$(t,r,o,d,f,n)),([e,t,n,r,i,a,o])=>{let s=sRe(t.sizeTree);r&&i!==null&&a!==null&&(n=i.scrollTop-a.offsetTop),n-=o,e({ranges:s,scrollTop:n})}),S$(A$(u,D$(m$),O$(TRe)),i),S$(A$(a,P$(u),D$(([,e])=>e!==void 0),E$(),O$(([,e])=>e.ranges)),e),{getState:l,restoreStateFrom:u}},_$(N1,$$,V1,F1,l0));function TRe(e){return{align:`start`,index:0,offset:e.scrollTop}}var ERe=z$(([{topItemsIndexes:e}])=>{let t=F$(0);return S$(A$(t,D$(e=>e>=0),O$(e=>Array.from({length:e}).map((e,t)=>t))),e),{topItemCount:t}},_$(r0));function u0(e){let t=!1,n;return(()=>(t||(t=!0,n=e()),n))}var DRe=u0(()=>/iP(ad|od|hone)/i.test(navigator.userAgent)&&/WebKit/i.test(navigator.userAgent)),d0=z$(([{data:e,defaultItemSize:t,firstItemIndex:n,fixedItemSize:r,fixedGroupSize:i,gap:a,groupIndices:o,heightEstimates:s,itemSize:c,sizeRanges:l,sizes:u,statefulTotalCount:d,totalCount:f,trackItemSizes:p},{initialItemFinalLocationReached:m,initialTopMostItemIndex:h,scrolledToInitialItem:g},_,v,y,b,{scrollToIndex:x},S,{topItemCount:C},{groupCounts:w},T])=>{let{listState:E,minOverscanItemCount:D,topItemsIndexes:O,rangeChanged:k,...A}=b;return S$(k,T.scrollSeekRangeChanged),S$(A$(B$(T.windowViewportRect,_.headerHeight,_.fixedHeaderHeight),O$(([e,t,n])=>Math.max(t+n+1,e.visibleHeight))),_.viewportHeight),{data:e,defaultItemHeight:t,firstItemIndex:n,fixedItemHeight:r,fixedGroupHeight:i,gap:a,groupCounts:w,heightEstimates:s,initialItemFinalLocationReached:m,initialTopMostItemIndex:h,scrolledToInitialItem:g,sizeRanges:l,topItemCount:C,topItemsIndexes:O,totalCount:f,...y,groupIndices:o,itemSize:c,listState:E,minOverscanItemCount:D,scrollToIndex:x,statefulTotalCount:d,trackItemSizes:p,rangeChanged:k,...A,...T,..._,sizes:u,...v}},_$(N1,V1,$$,wRe,xRe,r0,L1,z$(([{deviation:e,scrollBy:t,scrollingInProgress:n,scrollTop:r},{isAtBottom:i,isScrolling:a,lastJumpDueToItemResize:o,scrollDirection:s},{listState:c},{beforeUnshiftWith:l,gap:u,shiftWithOffset:d,sizes:f},{log:p},{recalcInProgress:m}])=>{let h=R$(A$(c,P$(o),j$(([,e,t,n],[{bottom:r,items:i,offsetBottom:a,totalCount:o},s])=>{let c=r+a,l=0;return t===o&&e.length>0&&i.length>0&&(i[0].originalIndex===0&&e[0].originalIndex===0||(l=c-n,l!==0&&(l+=s))),[l,i,o,c]},[0,[],0,0]),D$(([e])=>e!==0),P$(r,s,n,i,p,m),D$(([,e,t,n,,,r])=>!r&&!n&&e!==0&&t===U1),O$(([[e],,,,,t])=>(t(`Upward scrolling compensation`,{amount:e},U$.DEBUG),e))));function g(n){n>0?(y$(t,{behavior:`auto`,top:-n}),y$(e,0)):(y$(e,0),y$(t,{behavior:`auto`,top:-n}))}return v$(A$(h,P$(e,a)),([t,n,r])=>{r&&DRe()?y$(e,n-t):g(-t)}),v$(A$(B$(I$(a,!1),e,m),D$(([e,t,n])=>!e&&!n&&t!==0),O$(([e,t])=>t),N$(1)),g),S$(A$(d,O$(e=>({top:-e}))),t),v$(A$(l,P$(f,u),O$(([e,{groupIndices:t,lastSize:n,sizeTree:r},i])=>{function a(e){return e*(n+i)}if(t.length===0)return a(e);let o=0,s=r1(r,0),c=0,l=0;for(;c<e;){c++,o+=s;let n=t.length===l+1?1/0:t[l+1]-t[l]-1;c+n>e&&(o-=s,n=e-c+1),c+=n,o+=a(n),l++}return o})),n=>{y$(e,n),requestAnimationFrame(()=>{y$(t,{top:n}),requestAnimationFrame(()=>{y$(e,0),y$(m,!1)})})}),{deviation:e}},_$($$,G1,r0,N1,W$,S1)),ERe,P1,z$(([e,t,n,r,i,a,o,s,c,l,u])=>({...e,...t,...n,...r,...i,...a,...o,...s,...c,...l,...u}),_$(Z1,SRe,F1,c0,i0,CRe,vRe,l0,o0,W$,a0))));function ORe(e,t){let n={},r={},i=0,a=e.length;for(;i<a;)r[e[i]]=1,i+=1;for(let e in t)Object.hasOwn(r,e)||(n[e]=t[e]);return n}var f0=typeof document>`u`?U.useEffect:U.useLayoutEffect;function p0(e,t,n){let r=Object.keys(t.required||{}),i=Object.keys(t.optional||{}),a=Object.keys(t.methods||{}),o=Object.keys(t.events||{}),s=U.createContext({});function c(e,n){e.propsReady!==void 0&&y$(e.propsReady,!1);for(let i of r){let r=e[t.required[i]];y$(r,n[i])}for(let r of i)if(r in n){let i=e[t.optional[r]];y$(i,n[r])}e.propsReady!==void 0&&y$(e.propsReady,!0)}function l(e){return a.reduce((n,r)=>(n[r]=n=>{let i=e[t.methods[r]];y$(i,n)},n),{})}function u(e){return o.reduce((n,r)=>(n[r]=GLe(e[t.events[r]]),n),{})}return{Component:U.forwardRef(function(t,a){let{children:d,...f}=t,[p]=U.useState(()=>g$(JLe(e),e=>{c(e,f)})),[m]=U.useState(BLe(u,p));f0(()=>{for(let e of o)e in f&&v$(m[e],f[e]);return()=>{Object.values(m).map(b$)}},[f,m,p]),f0(()=>{c(p,f)}),U.useImperativeHandle(a,RLe(l(p)));let h=n;return(0,W.jsx)(s.Provider,{value:p,children:n===void 0?d:(0,W.jsx)(h,{...ORe([...r,...i,...o],f),children:d})})}),useEmitter:(e,t)=>{let n=U.useContext(s)[e];f0(()=>v$(n,t),[t,n])},useEmitterValue:e=>{let t=U.useContext(s)[e],n=U.useCallback(e=>v$(t,e),[t]);return U.useSyncExternalStore(n,()=>x$(t),()=>x$(t))},usePublisher:e=>{let t=U.useContext(s);return U.useCallback(n=>{y$(t[e],n)},[t,e])}}}var m0=U.createContext(void 0),h0=U.createContext(void 0),g0=`-webkit-sticky`,_0=`sticky`,v0=u0(()=>{if(typeof document>`u`)return _0;let e=document.createElement(`div`);return e.style.position=g0,e.style.position===g0?g0:_0}),y0=typeof document>`u`?U.useEffect:U.useLayoutEffect;function b0(e){return`self`in e}function kRe(e){return`body`in e}function x0(e,t,n,r=h$,i,a){let o=U.useRef(null),s=U.useRef(null),c=U.useRef(null),l=U.useCallback(n=>{let r,i,o,l=n.target;if(kRe(l)||b0(l)){let e=b0(l)?l:l.defaultView;o=a===!0?K$(e,e.scrollX):e.scrollY,r=a===!0?e.document.documentElement.scrollWidth:e.document.documentElement.scrollHeight,i=a===!0?e.innerWidth:e.innerHeight}else o=a===!0?K$(l,l.scrollLeft):l.scrollTop,r=a===!0?l.scrollWidth:l.scrollHeight,i=a===!0?l.offsetWidth:l.offsetHeight;let u=()=>{e({scrollHeight:r,scrollTop:Math.max(o,0),viewportHeight:i})};n.suppressFlushSync===!0?u():jl.flushSync(u),s.current!==null&&(o===s.current||o<=0||o===r-i)&&(s.current=null,t(!0),c.current&&=(clearTimeout(c.current),null))},[e,t,a]);U.useEffect(()=>{let e=i??o.current;return r(i??o.current),l({suppressFlushSync:!0,target:e}),e.addEventListener(`scroll`,l,{passive:!0}),()=>{r(null),e.removeEventListener(`scroll`,l)}},[o,l,n,r,i]);function u(n){let r=o.current;if(!r||(a===!0?`offsetWidth`in r&&r.offsetWidth===0:`offsetHeight`in r&&r.offsetHeight===0))return;let i=n.behavior===`smooth`,l,u,d;b0(r)?(u=Math.max(T1(r.document.documentElement,a===!0?`width`:`height`),a===!0?r.document.documentElement.scrollWidth:r.document.documentElement.scrollHeight),l=a===!0?r.innerWidth:r.innerHeight,d=a===!0?K$(r,r.scrollX):r.scrollY):(u=r[a===!0?`scrollWidth`:`scrollHeight`],l=T1(r,a===!0?`width`:`height`),d=a===!0?K$(r,r.scrollLeft):r.scrollTop);let f=u-l;if(n.top===void 0){r.scrollTo(n);return}let p=Math.ceil(Math.max(Math.min(f,n.top),0));if(n.top=p,H1(l,u)||p===d){e({scrollHeight:u,scrollTop:d,viewportHeight:l}),i&&t(!0);return}i?(s.current=p,c.current&&clearTimeout(c.current),c.current=setTimeout(()=>{c.current=null,s.current=null,t(!0)},1e3)):s.current=null,a===!0&&(n={...n.behavior===void 0?{}:{behavior:n.behavior},left:q$(r,p)}),r.scrollTo(n)}function d(e){a===!0&&(e={...e.behavior===void 0?{}:{behavior:e.behavior},...e.top===void 0?{}:{left:q$(o.current,e.top)}}),o.current.scrollBy(e)}return{scrollByCallback:d,scrollerRef:o,scrollToCallback:u}}function S0(e){return e}var ARe=z$(([e,t])=>({...e,...t}),_$(d0,z$(()=>{let e=F$(e=>`Item ${e}`),t=F$(e=>`Group ${e}`),n=F$({}),r=F$(S0),i=F$(`div`),a=F$(h$),o=(e,t=null)=>I$(A$(n,O$(t=>t[e]),E$()),t);return{components:n,computeItemKey:r,EmptyPlaceholder:o(`EmptyPlaceholder`),FooterComponent:o(`Footer`),GroupComponent:o(`Group`,`div`),groupContent:t,HeaderComponent:o(`Header`),HeaderFooterTag:i,ItemComponent:o(`Item`,`div`),itemContent:e,ListComponent:o(`List`,`div`),ScrollerComponent:o(`Scroller`,`div`),scrollerRef:a,ScrollSeekPlaceholder:o(`ScrollSeekPlaceholder`),TopItemListComponent:o(`TopItemList`)}}))),jRe=({height:e})=>(0,W.jsx)(`div`,{style:{height:e}}),MRe={overflowAnchor:`none`,position:v0(),zIndex:1},C0={overflowAnchor:`none`},NRe={...C0,display:`inline-block`,height:`100%`},PRe=U.memo(function({showTopList:e=!1}){let t=j0(`listState`),n=M0(`sizeRanges`),r=j0(`useWindowScroll`),i=j0(`customScrollParent`),a=M0(`windowScrollContainerState`),o=M0(`scrollContainerState`),s=i||r?a:o,c=j0(`itemContent`),l=j0(`context`),u=j0(`groupContent`),d=j0(`trackItemSizes`),f=j0(`itemSize`),p=j0(`log`),m=M0(`gap`),h=j0(`horizontalDirection`),{callbackRef:g}=X$(n,f,d,e?h$:s,p,m,i,h,j0(`skipAnimationFrameInResizeObserver`)),[_,v]=U.useState(0);A0(`deviation`,e=>{_!==e&&v(e)});let y=j0(`EmptyPlaceholder`),b=j0(`ScrollSeekPlaceholder`)??jRe,x=j0(`ListComponent`),S=j0(`ItemComponent`),C=j0(`GroupComponent`),w=j0(`computeItemKey`),T=j0(`isSeeking`),E=j0(`groupIndices`).length>0,D=j0(`alignToBottom`),O=j0(`initialItemFinalLocationReached`),k=e?{}:{boxSizing:`border-box`,...h?{display:`inline-block`,height:`100%`,marginInlineStart:_===0?D?`auto`:0:_,paddingInlineEnd:t.offsetBottom,paddingInlineStart:t.offsetTop,whiteSpace:`nowrap`}:{marginTop:_===0?D?`auto`:0:_,paddingBottom:t.offsetBottom,paddingTop:t.offsetTop},...O?{}:{visibility:`hidden`}};return!e&&t.totalCount===0&&y!=null?(0,W.jsx)(y,{...E0(y,l)}):(0,W.jsx)(x,{...E0(x,l),"data-testid":e?`virtuoso-top-item-list`:`virtuoso-item-list`,ref:g,style:k,children:(e?t.topItems:t.items).map(e=>{let n=e.originalIndex,r=w(n+t.firstItemIndex,e.data,l);return T?(0,U.createElement)(b,{...E0(b,l),height:e.size,index:e.index,key:r,type:e.type||`item`,...e.type===`group`?{}:{groupIndex:e.groupIndex}}):e.type===`group`?(0,U.createElement)(C,{...E0(C,l),"data-index":n,"data-item-index":e.index,"data-known-size":e.size,key:r,style:MRe},u(e.index,l)):(0,U.createElement)(S,{...E0(S,l),...D0(S,e.data),"data-index":n,"data-item-group-index":e.groupIndex,"data-item-index":e.index,"data-known-size":e.size,key:r,style:h?NRe:C0},E?c(e.index,e.groupIndex,e.data,l):c(e.index,e.data,l))})})}),FRe={height:`100%`,outline:`none`,overflowY:`auto`,position:`relative`,WebkitOverflowScrolling:`touch`},IRe={outline:`none`,overflowX:`auto`,position:`relative`},w0=e=>({height:`100%`,position:`absolute`,top:0,width:`100%`,...e?{display:`flex`,flexDirection:`column`}:void 0}),T0=(e,t,n=0)=>({...w0(e),position:t?`relative`:`absolute`,top:t?-n:0}),LRe={position:v0(),top:0,width:`100%`,zIndex:1};function E0(e,t){if(typeof e!=`string`)return{context:t}}function D0(e,t){return{item:typeof e==`string`?void 0:t}}var RRe=U.memo(function(){let e=j0(`HeaderComponent`),t=M0(`headerHeight`),n=j0(`HeaderFooterTag`),r=J$(U.useMemo(()=>e=>{t(T1(e,`height`))},[t]),!0,j0(`skipAnimationFrameInResizeObserver`)),i=j0(`context`);return e==null?null:(0,W.jsx)(n,{ref:r,children:(0,W.jsx)(e,{...E0(e,i)})})}),zRe=U.memo(function(){let e=j0(`FooterComponent`),t=M0(`footerHeight`),n=j0(`HeaderFooterTag`),r=J$(U.useMemo(()=>e=>{t(T1(e,`height`))},[t]),!0,j0(`skipAnimationFrameInResizeObserver`)),i=j0(`context`);return e==null?null:(0,W.jsx)(n,{ref:r,children:(0,W.jsx)(e,{...E0(e,i)})})});function O0({useEmitter:e,useEmitterValue:t,usePublisher:n}){return U.memo(function({children:r,style:i,context:a,...o}){let s=n(`scrollContainerState`),c=t(`ScrollerComponent`),l=n(`smoothScrollTargetReached`),u=t(`scrollerRef`),d=t(`horizontalDirection`)||!1,{scrollByCallback:f,scrollerRef:p,scrollToCallback:m}=x0(s,l,c,u,void 0,d);return e(`scrollTo`,m),e(`scrollBy`,f),(0,W.jsx)(c,{"data-testid":`virtuoso-scroller`,"data-virtuoso-scroller":!0,ref:p,style:{...d?IRe:FRe,...i},tabIndex:0,...o,...E0(c,a),children:r})})}function k0({useEmitter:e,useEmitterValue:t,usePublisher:n}){return U.memo(function({children:r,style:i,context:a,...o}){let s=n(`windowScrollContainerState`),c=t(`ScrollerComponent`),l=n(`smoothScrollTargetReached`),u=t(`totalListHeight`),d=t(`deviation`),f=t(`customScrollParent`),p=U.useRef(null),{scrollByCallback:m,scrollerRef:h,scrollToCallback:g}=x0(s,l,c,t(`scrollerRef`),f);return y0(()=>(h.current=f??p.current?.ownerDocument.defaultView,()=>{h.current=null}),[h,f]),e(`windowScrollTo`,g),e(`scrollBy`,m),(0,W.jsx)(c,{ref:p,"data-virtuoso-scroller":!0,style:{position:`relative`,...i,...u===0?void 0:{height:u+d}},...o,...E0(c,a),children:r})})}var BRe=({children:e})=>{let t=U.useContext(m0),n=M0(`viewportHeight`),r=M0(`fixedItemHeight`),i=j0(`alignToBottom`),a=j0(`horizontalDirection`),o=J$(U.useMemo(()=>p$(n,e=>T1(e,a?`width`:`height`)),[n,a]),!0,j0(`skipAnimationFrameInResizeObserver`));return U.useEffect(()=>{t&&(n(t.viewportHeight),r(t.itemHeight))},[t,n,r]),(0,W.jsx)(`div`,{"data-viewport-type":`element`,ref:o,style:w0(i),children:e})},VRe=({children:e})=>{let t=U.useContext(m0),n=M0(`windowViewportRect`),r=M0(`fixedItemHeight`),i=j0(`customScrollParent`),a=j0(`useWindowScroll`),o=j0(`topListHeight`),s=Q$(n,i,j0(`skipAnimationFrameInResizeObserver`)),c=j0(`alignToBottom`);return U.useEffect(()=>{t&&(r(t.itemHeight),n({listHeight:0,offsetTop:0,visibleHeight:t.viewportHeight,visibleWidth:100}))},[t,n,r]),(0,W.jsx)(`div`,{"data-viewport-type":`window`,ref:s,style:T0(c,a,o),children:e})},HRe=({children:e})=>{let t=j0(`TopItemListComponent`)??`div`,n=j0(`headerHeight`),r={...LRe,marginTop:`${n}px`},i=j0(`context`);return(0,W.jsx)(t,{style:r,...E0(t,i),children:e})},{Component:URe,useEmitter:A0,useEmitterValue:j0,usePublisher:M0}=p0(ARe,{optional:{restoreStateFrom:`restoreStateFrom`,context:`context`,followOutput:`followOutput`,scrollIntoViewOnChange:`scrollIntoViewOnChange`,itemContent:`itemContent`,groupContent:`groupContent`,overscan:`overscan`,increaseViewportBy:`increaseViewportBy`,minOverscanItemCount:`minOverscanItemCount`,totalCount:`totalCount`,groupCounts:`groupCounts`,topItemCount:`topItemCount`,firstItemIndex:`firstItemIndex`,initialTopMostItemIndex:`initialTopMostItemIndex`,components:`components`,atBottomThreshold:`atBottomThreshold`,atTopThreshold:`atTopThreshold`,computeItemKey:`computeItemKey`,defaultItemHeight:`defaultItemHeight`,fixedGroupHeight:`fixedGroupHeight`,fixedItemHeight:`fixedItemHeight`,heightEstimates:`heightEstimates`,itemSize:`itemSize`,scrollSeekConfiguration:`scrollSeekConfiguration`,headerFooterTag:`HeaderFooterTag`,data:`data`,initialItemCount:`initialItemCount`,initialScrollTop:`initialScrollTop`,alignToBottom:`alignToBottom`,useWindowScroll:`useWindowScroll`,customScrollParent:`customScrollParent`,scrollerRef:`scrollerRef`,logLevel:`logLevel`,horizontalDirection:`horizontalDirection`,skipAnimationFrameInResizeObserver:`skipAnimationFrameInResizeObserver`},methods:{scrollToIndex:`scrollToIndex`,scrollIntoView:`scrollIntoView`,scrollTo:`scrollTo`,scrollBy:`scrollBy`,autoscrollToBottom:`autoscrollToBottom`,getState:`getState`},events:{isScrolling:`isScrolling`,endReached:`endReached`,startReached:`startReached`,rangeChanged:`rangeChanged`,atBottomStateChange:`atBottomStateChange`,atTopStateChange:`atTopStateChange`,totalListHeightChanged:`totalListHeightChanged`,itemsRendered:`itemsRendered`,groupIndices:`groupIndices`}},U.memo(function(e){let t=j0(`useWindowScroll`),n=j0(`topItemsIndexes`).length>0,r=j0(`customScrollParent`),i=j0(`context`);return(0,W.jsxs)(r||t?GRe:WRe,{...e,context:i,children:[n&&(0,W.jsx)(HRe,{children:(0,W.jsx)(PRe,{showTopList:!0})}),(0,W.jsxs)(r||t?VRe:BRe,{children:[(0,W.jsx)(RRe,{}),(0,W.jsx)(PRe,{}),(0,W.jsx)(zRe,{})]})]})})),WRe=O0({useEmitter:A0,useEmitterValue:j0,usePublisher:M0}),GRe=k0({useEmitter:A0,useEmitterValue:j0,usePublisher:M0}),KRe=URe,qRe=z$(([e,t])=>({...e,...t}),_$(d0,z$(()=>{let e=F$(e=>(0,W.jsxs)(`td`,{children:[`Item $`,e]})),t=F$(null),n=F$(e=>(0,W.jsxs)(`td`,{colSpan:1e3,children:[`Group `,e]})),r=F$(null),i=F$(null),a=F$({}),o=F$(S0),s=F$(h$),c=(e,t=null)=>I$(A$(a,O$(t=>t[e]),E$()),t);return{components:a,computeItemKey:o,context:t,EmptyPlaceholder:c(`EmptyPlaceholder`),FillerRow:c(`FillerRow`),fixedFooterContent:i,fixedHeaderContent:r,itemContent:e,groupContent:n,ScrollerComponent:c(`Scroller`,`div`),scrollerRef:s,ScrollSeekPlaceholder:c(`ScrollSeekPlaceholder`),TableBodyComponent:c(`TableBody`,`tbody`),TableComponent:c(`Table`,`table`),TableFooterComponent:c(`TableFoot`,`tfoot`),TableHeadComponent:c(`TableHead`,`thead`),TableRowComponent:c(`TableRow`,`tr`),GroupComponent:c(`Group`,`tr`)}}))),JRe=({height:e})=>(0,W.jsx)(`tr`,{children:(0,W.jsx)(`td`,{style:{height:e}})}),YRe=({height:e})=>(0,W.jsx)(`tr`,{children:(0,W.jsx)(`td`,{style:{border:0,height:e,padding:0}})}),XRe={overflowAnchor:`none`},N0={position:v0(),zIndex:2,overflowAnchor:`none`},P0=U.memo(function({showTopList:e=!1}){let t=I0(`listState`),n=I0(`computeItemKey`),r=I0(`firstItemIndex`),i=I0(`context`),a=I0(`isSeeking`),o=I0(`fixedHeaderHeight`),s=I0(`groupIndices`).length>0,c=I0(`itemContent`),l=I0(`groupContent`),u=I0(`ScrollSeekPlaceholder`)??JRe,d=I0(`GroupComponent`),f=I0(`TableRowComponent`),p=(e?t.topItems:[]).reduce((e,t,n)=>(n===0?e.push(t.size):e.push(e[n-1]+t.size),e),[]);return(e?t.topItems:t.items).map(t=>{let m=t.originalIndex,h=n(m+r,t.data,i),g=e?m===0?0:p[m-1]:0;return a?(0,U.createElement)(u,{...E0(u,i),height:t.size,index:t.index,key:h,type:t.type||`item`}):t.type===`group`?(0,U.createElement)(d,{...E0(d,i),"data-index":m,"data-item-index":t.index,"data-known-size":t.size,key:h,style:{...N0,top:o}},l(t.index,i)):(0,U.createElement)(f,{...E0(f,i),...D0(f,t.data),"data-index":m,"data-item-index":t.index,"data-known-size":t.size,"data-item-group-index":t.groupIndex,key:h,style:e?{...N0,top:o+g}:XRe},s?c(t.index,t.groupIndex,t.data,i):c(t.index,t.data,i))})}),ZRe=U.memo(function(){let e=I0(`listState`),t=I0(`topItemsIndexes`).length>0,n=L0(`sizeRanges`),r=I0(`useWindowScroll`),i=I0(`customScrollParent`),a=L0(`windowScrollContainerState`),o=L0(`scrollContainerState`),s=i||r?a:o,c=I0(`trackItemSizes`),{callbackRef:l,ref:u}=X$(n,I0(`itemSize`),c,s,I0(`log`),void 0,i,!1,I0(`skipAnimationFrameInResizeObserver`)),[d,f]=U.useState(0);F0(`deviation`,e=>{d!==e&&(u.current.style.marginTop=`${e}px`,f(e))});let p=I0(`EmptyPlaceholder`),m=I0(`FillerRow`)??YRe,h=I0(`TableBodyComponent`),g=I0(`paddingTopAddition`),_=I0(`statefulTotalCount`),v=I0(`context`);if(_===0&&p!=null)return(0,W.jsx)(p,{...E0(p,v)});let y=(t?e.topItems:[]).reduce((e,t)=>e+t.size,0),b=e.offsetTop+g+d-y,x=e.offsetBottom,S=b>0?(0,W.jsx)(m,{context:v,height:b},`padding-top`):null,C=x>0?(0,W.jsx)(m,{context:v,height:x},`padding-bottom`):null;return(0,W.jsxs)(h,{"data-testid":`virtuoso-item-list`,ref:l,...E0(h,v),children:[S,t&&(0,W.jsx)(P0,{showTopList:!0}),(0,W.jsx)(P0,{}),C]})}),QRe=({children:e})=>{let t=U.useContext(m0),n=L0(`viewportHeight`),r=L0(`fixedItemHeight`),i=J$(U.useMemo(()=>p$(n,e=>T1(e,`height`)),[n]),!0,I0(`skipAnimationFrameInResizeObserver`));return U.useEffect(()=>{t&&(n(t.viewportHeight),r(t.itemHeight))},[t,n,r]),(0,W.jsx)(`div`,{"data-viewport-type":`element`,ref:i,style:w0(!1),children:e})},$Re=({children:e})=>{let t=U.useContext(m0),n=L0(`windowViewportRect`),r=L0(`fixedItemHeight`),i=I0(`customScrollParent`),a=I0(`useWindowScroll`),o=Q$(n,i,I0(`skipAnimationFrameInResizeObserver`));return U.useEffect(()=>{t&&(r(t.itemHeight),n({listHeight:0,offsetTop:0,visibleHeight:t.viewportHeight,visibleWidth:100}))},[t,n,r]),(0,W.jsx)(`div`,{"data-viewport-type":`window`,ref:o,style:T0(!1,a),children:e})},{Component:eze,useEmitter:F0,useEmitterValue:I0,usePublisher:L0}=p0(qRe,{optional:{restoreStateFrom:`restoreStateFrom`,context:`context`,followOutput:`followOutput`,firstItemIndex:`firstItemIndex`,itemContent:`itemContent`,groupContent:`groupContent`,fixedHeaderContent:`fixedHeaderContent`,fixedFooterContent:`fixedFooterContent`,overscan:`overscan`,increaseViewportBy:`increaseViewportBy`,minOverscanItemCount:`minOverscanItemCount`,totalCount:`totalCount`,topItemCount:`topItemCount`,initialTopMostItemIndex:`initialTopMostItemIndex`,components:`components`,groupCounts:`groupCounts`,atBottomThreshold:`atBottomThreshold`,atTopThreshold:`atTopThreshold`,computeItemKey:`computeItemKey`,defaultItemHeight:`defaultItemHeight`,fixedGroupHeight:`fixedGroupHeight`,fixedItemHeight:`fixedItemHeight`,itemSize:`itemSize`,scrollSeekConfiguration:`scrollSeekConfiguration`,data:`data`,initialItemCount:`initialItemCount`,initialScrollTop:`initialScrollTop`,alignToBottom:`alignToBottom`,useWindowScroll:`useWindowScroll`,customScrollParent:`customScrollParent`,scrollerRef:`scrollerRef`,logLevel:`logLevel`},methods:{scrollToIndex:`scrollToIndex`,scrollIntoView:`scrollIntoView`,scrollTo:`scrollTo`,scrollBy:`scrollBy`,getState:`getState`},events:{isScrolling:`isScrolling`,endReached:`endReached`,startReached:`startReached`,rangeChanged:`rangeChanged`,atBottomStateChange:`atBottomStateChange`,atTopStateChange:`atTopStateChange`,totalListHeightChanged:`totalListHeightChanged`,itemsRendered:`itemsRendered`,groupIndices:`groupIndices`}},U.memo(function(e){let t=I0(`useWindowScroll`),n=I0(`customScrollParent`),r=L0(`fixedHeaderHeight`),i=L0(`fixedFooterHeight`),a=I0(`fixedHeaderContent`),o=I0(`fixedFooterContent`),s=I0(`context`),c=J$(U.useMemo(()=>p$(r,e=>T1(e,`height`)),[r]),!0,I0(`skipAnimationFrameInResizeObserver`)),l=J$(U.useMemo(()=>p$(i,e=>T1(e,`height`)),[i]),!0,I0(`skipAnimationFrameInResizeObserver`)),u=n||t?nze:tze,d=n||t?$Re:QRe,f=I0(`TableComponent`),p=I0(`TableHeadComponent`),m=I0(`TableFooterComponent`),h=a?(0,W.jsx)(p,{ref:c,style:{position:`sticky`,top:0,zIndex:2},...E0(p,s),children:a()},`TableHead`):null,g=o?(0,W.jsx)(m,{ref:l,style:{bottom:0,position:`sticky`,zIndex:1},...E0(m,s),children:o()},`TableFoot`):null;return(0,W.jsx)(u,{...e,...E0(u,s),children:(0,W.jsx)(d,{children:(0,W.jsxs)(f,{style:{borderSpacing:0,overflowAnchor:`none`},...E0(f,s),children:[h,(0,W.jsx)(ZRe,{},`TableBody`),g]})})})})),tze=O0({useEmitter:F0,useEmitterValue:I0,usePublisher:L0}),nze=k0({useEmitter:F0,useEmitterValue:I0,usePublisher:L0}),R0={bottom:0,itemHeight:0,items:[],itemWidth:0,offsetBottom:0,offsetTop:0,top:0},rze={bottom:0,itemHeight:0,items:[{index:0}],itemWidth:0,offsetBottom:0,offsetTop:0,top:0},{ceil:z0,floor:B0,max:V0,min:H0,round:U0}=Math;function W0(e,t,n){return Array.from({length:t-e+1}).map((t,r)=>({data:n===null?null:n[r+e],index:r+e}))}function ize(e){return{...rze,items:e}}function G0(e,t){return e!==void 0&&e.width===t.width&&e.height===t.height}function aze(e,t){return e!==void 0&&e.column===t.column&&e.row===t.row}var oze=z$(([{increaseViewportBy:e,listBoundary:t,overscan:n,visibleRange:r},{footerHeight:i,headerHeight:a,scrollBy:o,scrollContainerState:s,scrollTo:c,scrollTop:l,smoothScrollTargetReached:u,viewportHeight:d},f,p,{didMount:m,propsReady:h},{customScrollParent:g,useWindowScroll:_,windowScrollContainerState:v,windowScrollTo:y,windowViewportRect:b},x])=>{let S=F$(0),C=F$(0),w=F$(R0),T=F$({height:0,width:0}),E=F$({height:0,width:0}),D=L$(),O=L$(),k=F$(0),A=F$(null),j=F$({column:0,row:0}),M=L$(),N=L$(),P=F$(!1),F=F$(0),I=F$(!0),L=F$(!1),R=F$(!1);v$(A$(m,P$(F),D$(([e,t])=>!B1(t))),()=>{y$(I,!1)}),v$(A$(B$(m,I,E,T,F,L),D$(([e,t,n,r,,i])=>e&&!t&&n.height!==0&&r.height!==0&&!i)),([,,,,e])=>{if(e===void 0){y$(I,!0);return}y$(L,!0),R1(1,()=>{y$(D,e)}),C$(A$(l),()=>{y$(t,[0,0]),y$(I,!0)})}),S$(A$(N,D$(e=>e!=null&&e.scrollTop>0),k$(0)),C),v$(A$(m,P$(N),D$(([,e])=>e!=null)),([,e])=>{e&&(y$(T,e.viewport),y$(E,e.item),y$(j,e.gap),e.scrollTop>0&&(y$(P,!0),C$(A$(l,M$(1)),e=>{y$(P,!1)}),y$(c,{top:e.scrollTop})))}),S$(A$(T,O$(({height:e})=>e)),d),S$(A$(B$(V$(T,G0),V$(E,G0),V$(j,(e,t)=>e!==void 0&&e.column===t.column&&e.row===t.row),V$(l)),O$(([e,t,n,r])=>({gap:n,item:t,scrollTop:r,viewport:e}))),M),S$(A$(B$(V$(S),r,V$(j,aze),V$(E,G0),V$(T,G0),V$(A),V$(C),V$(P),V$(I),V$(F)),D$(([,,,,,,,e])=>!e),O$(([e,[t,n],r,i,a,o,s,,c,l])=>{let{column:u,row:d}=r,{height:f,width:p}=i,{width:m}=a;if(s===0&&(e===0||m===0))return R0;if(p===0){let t=z1(l,e);return ize(W0(t,t+Math.max(s-1,0),o))}let h=K0(m,p,u),g,_;c?t===0&&n===0&&s>0?(g=0,_=s-1):(g=h*B0((t+d)/(f+d)),_=h*z0((n+d)/(f+d))-1,_=H0(e-1,V0(_,h-1)),g=H0(_,V0(0,g))):(g=0,_=-1);let v=W0(g,_,o),{bottom:y,top:b}=q0(a,r,i,v),x=z0(e/h);return{bottom:y,itemHeight:f,items:v,itemWidth:p,offsetBottom:x*f+(x-1)*d-y,offsetTop:b,top:b}})),w),S$(A$(A,D$(e=>e!==null),O$(e=>e.length)),S),S$(A$(B$(T,E,w,j),D$(([e,t,{items:n}])=>n.length>0&&t.height!==0&&e.height!==0),O$(([e,t,{items:n},r])=>{let{bottom:i,top:a}=q0(e,r,t,n);return[a,i]}),E$(x1)),t);let z=F$(!1);S$(A$(l,P$(z),O$(([e,t])=>t||e!==0)),z);let B=R$(A$(B$(w,S),D$(([{items:e}])=>e.length>0),P$(z),D$(([[e,t],n])=>{let r=e.items[e.items.length-1].index===t-1;return(n||e.bottom>0&&e.itemHeight>0&&e.offsetBottom===0&&e.items.length===t)&&r}),O$(([[,e]])=>e-1),E$())),ee=R$(A$(V$(w),D$(({items:e})=>e.length>0&&e[0].index===0),k$(0),E$())),te=R$(A$(V$(w),P$(P),D$(([{items:e},t])=>e.length>0&&!t),O$(([{items:e}])=>({endIndex:e[e.length-1].index,startIndex:e[0].index})),E$(b1),N$(0)));S$(te,p.scrollSeekRangeChanged),S$(A$(D,P$(T,E,S,j),O$(([e,t,n,r,i])=>{let a=I1(e),{align:o,behavior:s,offset:c}=a,l=a.index;l===`LAST`&&(l=r-1),l=V0(0,l,H0(r-1,l));let u=J0(t,i,n,l);return o===`end`?u=U0(u-t.height+n.height):o===`center`&&(u=U0(u-t.height/2+n.height/2)),c!==void 0&&c!==0&&(u+=c),{behavior:s,top:u}})),c);let ne=I$(A$(w,O$(e=>e.offsetBottom+e.bottom)),0);return S$(A$(b,O$(e=>({height:e.visibleHeight,width:e.visibleWidth}))),T),{customScrollParent:g,data:A,deviation:k,footerHeight:i,gap:j,headerHeight:a,increaseViewportBy:e,initialItemCount:C,itemDimensions:E,overscan:n,restoreStateFrom:N,scrollBy:o,scrollContainerState:s,scrollHeight:O,scrollTo:c,scrollToIndex:D,scrollTop:l,smoothScrollTargetReached:u,totalCount:S,useWindowScroll:_,viewportDimensions:T,windowScrollContainerState:v,windowScrollTo:y,windowViewportRect:b,...p,gridState:w,horizontalDirection:R,initialTopMostItemIndex:F,totalListHeight:ne,...f,endReached:B,propsReady:h,rangeChanged:te,startReached:ee,stateChanged:M,stateRestoreInProgress:P,...x}},_$(Z1,$$,G1,c0,F1,l0,W$));function K0(e,t,n){return V0(1,B0((e+n)/(B0(t)+n)))}function q0(e,t,n,r){let{height:i}=n;if(i===void 0||r.length===0)return{bottom:0,top:0};let a=J0(e,t,n,r[0].index);return{bottom:J0(e,t,n,r[r.length-1].index)+i,top:a}}function J0(e,t,n,r){let i=B0(r/K0(e.width,n.width,t.column)),a=i*n.height+V0(0,i-1)*t.row;return a>0?a+t.row:a}var sze=z$(([e,t])=>({...e,...t}),_$(oze,z$(()=>{let e=F$(e=>`Item ${e}`),t=F$({}),n=F$(null),r=F$(`virtuoso-grid-item`),i=F$(`virtuoso-grid-list`),a=F$(S0),o=F$(`div`),s=F$(h$),c=(e,n=null)=>I$(A$(t,O$(t=>t[e]),E$()),n),l=F$(!1),u=F$(!1);return S$(V$(u),l),{components:t,computeItemKey:a,context:n,FooterComponent:c(`Footer`),HeaderComponent:c(`Header`),headerFooterTag:o,itemClassName:r,ItemComponent:c(`Item`,`div`),itemContent:e,listClassName:i,ListComponent:c(`List`,`div`),readyStateChanged:l,reportReadyState:u,ScrollerComponent:c(`Scroller`,`div`),scrollerRef:s,ScrollSeekPlaceholder:c(`ScrollSeekPlaceholder`,`div`)}}))),cze=U.memo(function(){let e=X0(`gridState`),t=X0(`listClassName`),n=X0(`itemClassName`),r=X0(`itemContent`),i=X0(`computeItemKey`),a=X0(`isSeeking`),o=Z0(`scrollHeight`),s=X0(`ItemComponent`),c=X0(`ListComponent`),l=X0(`ScrollSeekPlaceholder`),u=X0(`context`),d=Z0(`itemDimensions`),f=Z0(`gap`),p=X0(`log`),m=X0(`stateRestoreInProgress`),h=Z0(`reportReadyState`),g=J$(U.useMemo(()=>e=>{let t=e.parentElement.parentElement.scrollHeight;o(t);let n=e.firstChild;if(n!==null){let{height:e,width:t}=n.getBoundingClientRect();d({height:e,width:t})}f({column:Q0(`column-gap`,getComputedStyle(e).columnGap,p),row:Q0(`row-gap`,getComputedStyle(e).rowGap,p)})},[o,d,f,p]),!0,!1);return y0(()=>{e.itemHeight>0&&e.itemWidth>0&&h(!0)},[e]),m?null:(0,W.jsx)(c,{className:t,ref:g,...E0(c,u),"data-testid":`virtuoso-item-list`,style:{paddingBottom:e.offsetBottom,paddingTop:e.offsetTop},children:e.items.map(t=>{let o=i(t.index,t.data,u);return a?(0,W.jsx)(l,{...E0(l,u),height:e.itemHeight,index:t.index,width:e.itemWidth},o):(0,U.createElement)(s,{...E0(s,u),className:n,"data-index":t.index,key:o},r(t.index,t.data,u))})})}),lze=U.memo(function(){let e=X0(`HeaderComponent`),t=Z0(`headerHeight`),n=X0(`headerFooterTag`),r=J$(U.useMemo(()=>e=>{t(T1(e,`height`))},[t]),!0,!1),i=X0(`context`);return e==null?null:(0,W.jsx)(n,{ref:r,children:(0,W.jsx)(e,{...E0(e,i)})})}),uze=U.memo(function(){let e=X0(`FooterComponent`),t=Z0(`footerHeight`),n=X0(`headerFooterTag`),r=J$(U.useMemo(()=>e=>{t(T1(e,`height`))},[t]),!0,!1),i=X0(`context`);return e==null?null:(0,W.jsx)(n,{ref:r,children:(0,W.jsx)(e,{...E0(e,i)})})}),dze=({children:e})=>{let t=U.useContext(h0),n=Z0(`itemDimensions`),r=Z0(`viewportDimensions`),i=J$(U.useMemo(()=>e=>{r(e.getBoundingClientRect())},[r]),!0,!1);return U.useEffect(()=>{t&&(r({height:t.viewportHeight,width:t.viewportWidth}),n({height:t.itemHeight,width:t.itemWidth}))},[t,r,n]),(0,W.jsx)(`div`,{ref:i,style:w0(!1),children:e})},fze=({children:e})=>{let t=U.useContext(h0),n=Z0(`windowViewportRect`),r=Z0(`itemDimensions`),i=X0(`customScrollParent`),a=X0(`useWindowScroll`),o=Q$(n,i,!1);return U.useEffect(()=>{t&&(r({height:t.itemHeight,width:t.itemWidth}),n({listHeight:0,offsetTop:0,visibleHeight:t.viewportHeight,visibleWidth:t.viewportWidth}))},[t,n,r]),(0,W.jsx)(`div`,{ref:o,style:T0(!1,a),children:e})},{Component:pze,useEmitter:Y0,useEmitterValue:X0,usePublisher:Z0}=p0(sze,{optional:{context:`context`,totalCount:`totalCount`,overscan:`overscan`,itemContent:`itemContent`,components:`components`,computeItemKey:`computeItemKey`,data:`data`,initialItemCount:`initialItemCount`,scrollSeekConfiguration:`scrollSeekConfiguration`,headerFooterTag:`headerFooterTag`,listClassName:`listClassName`,itemClassName:`itemClassName`,useWindowScroll:`useWindowScroll`,customScrollParent:`customScrollParent`,scrollerRef:`scrollerRef`,logLevel:`logLevel`,restoreStateFrom:`restoreStateFrom`,initialTopMostItemIndex:`initialTopMostItemIndex`,increaseViewportBy:`increaseViewportBy`},methods:{scrollTo:`scrollTo`,scrollBy:`scrollBy`,scrollToIndex:`scrollToIndex`},events:{isScrolling:`isScrolling`,endReached:`endReached`,startReached:`startReached`,rangeChanged:`rangeChanged`,atBottomStateChange:`atBottomStateChange`,atTopStateChange:`atTopStateChange`,stateChanged:`stateChanged`,readyStateChanged:`readyStateChanged`}},U.memo(function({...e}){let t=X0(`useWindowScroll`),n=X0(`customScrollParent`),r=n||t?hze:mze,i=n||t?fze:dze,a=X0(`context`);return(0,W.jsx)(r,{...e,...E0(r,a),children:(0,W.jsxs)(i,{children:[(0,W.jsx)(lze,{}),(0,W.jsx)(cze,{}),(0,W.jsx)(uze,{})]})})})),mze=O0({useEmitter:Y0,useEmitterValue:X0,usePublisher:Z0}),hze=k0({useEmitter:Y0,useEmitterValue:X0,usePublisher:Z0});function Q0(e,t,n){return t!==`normal`&&t?.endsWith(`px`)!==!0&&n(`${e} was not resolved to pixel value correctly`,t,U$.WARN),t===`normal`?0:parseInt(t??`0`,10)}function gze(e){return e.type!==`wheel`||(e.deltaY??0)===0?!1:(e.deltaMode??0)!==0||Math.abs(e.deltaY??0)>=80}function _ze(e,t){return e.type!==`wheel`||(e.deltaY??0)===0?0:e.deltaMode===1?(e.deltaY??0)*16:e.deltaMode===2?(e.deltaY??0)*t:e.deltaY??0}function vze(e){if(e.type===`wheel`)return(e.deltaY??0)<0?`away`:(e.deltaY??0)>0?`toward`:void 0;if(e.type===`keydown`){if([`ArrowUp`,`PageUp`,`Home`].includes(e.key??``)||e.key===` `&&e.shiftKey)return`away`;if([`ArrowDown`,`PageDown`,`End`,` `].includes(e.key??``))return`toward`}}function $0(e){if(!(!e.hasUserScrollIntent||e.previousScrollTop===void 0)){if(e.scrollTop<e.previousScrollTop-1)return`away`;if(e.scrollTop>e.previousScrollTop+1)return`toward`}}function yze({direction:e,oppositeCount:t,previousScrollTop:n,scrollTop:r}){let i=$0({hasUserScrollIntent:!0,previousScrollTop:n,scrollTop:r});if(!i)return{direction:e,oppositeCount:t,clamp:!1};if(!e||i===e)return{direction:i,oppositeCount:0,clamp:!1};let a=t+1;return a<2?{direction:e,oppositeCount:a,clamp:!0}:{direction:i,oppositeCount:0,clamp:!1}}function bze(e,t){if(t!==void 0&&e!==void 0&&t!==e)return t>e?`away`:`toward`}function xze(e){if(e.button===1)return`middle`;if(e.button!==0||!e.targetIsScroller||e.clientX===void 0||e.scrollerRight===void 0)return;let t=Math.max(12,e.verticalScrollbarWidth??0);return e.clientX>=e.scrollerRight-t?`scrollbar`:void 0}function e2(e,t){return e&&!t}function Sze(e,t){let n=t.length-e.length;if(n<=0)return 0;for(let r=0;r<e.length;r+=1)if(e[r]!==t[r+n])return 0;return n}function Cze({items:e,itemKeys:t,firstItemIndex:n,scrollTop:r,viewportHeight:i}){let a=r+i;return e.filter(e=>e.offset+e.size>r&&e.offset<a).sort((e,t)=>e.offset-t.offset).flatMap(e=>{let i=e.index-n,a=t[i];return a===void 0?[]:[{key:a,dataIndex:i,offset:e.offset-r}]})}function wze(e){return[...e].sort((e,t)=>Math.abs(e.offset)-Math.abs(t.offset))[0]}function Tze({anchors:e,previousKeys:t,nextKeys:n}){if(!e.length||!n.length)return;let r=[...e].sort((e,t)=>Math.abs(e.offset)-Math.abs(t.offset));for(let e of r){let t=n.indexOf(e.key);if(t>=0)return t2(t,e.offset)}let i=r[0];if(t?.length){for(let e=i.dataIndex;e<t.length;e+=1){let r=n.indexOf(t[e]);if(r>=0)return t2(r,i.offset)}for(let e=i.dataIndex-1;e>=0;--e){let r=n.indexOf(t[e]);if(r>=0)return t2(r,i.offset)}}return t2(Math.min(Math.max(i.dataIndex,0),n.length-1),i.offset)}function t2(e,t){return{index:e,align:`start`,behavior:`auto`,offset:-t}}var Eze=24,Dze=700,Oze=120,kze=500,Aze=250,jze=100,Mze=1500,Nze=3,n2=1e6;function Pze({itemCount:e,itemKeys:t,isPrepending:n=!1,resetKey:r,contentKey:i,atBottomThreshold:a=Eze,onAtTop:o,onNearTop:s,atTopThreshold:c=0,nearTopThreshold:l=0,onUserScrollIntent:u,onScrollbarDragChange:d,onVisibleAnchorChange:f}){let p=(0,U.useRef)(null),m=(0,U.useRef)(e),h=(0,U.useRef)(n);h.current=n;let g=(0,U.useRef)(!0),_=(0,U.useRef)(void 0),v=(0,U.useRef)(void 0),y=(0,U.useRef)(void 0),b=(0,U.useRef)(void 0),x=(0,U.useRef)(void 0),S=(0,U.useRef)(!1),C=(0,U.useRef)(void 0),w=(0,U.useRef)(!1),T=(0,U.useRef)(!1),E=(0,U.useRef)(!1),D=(0,U.useRef)(void 0),O=(0,U.useRef)(()=>{}),k=(0,U.useRef)(!1),A=(0,U.useRef)(!1),j=(0,U.useRef)(!1),M=(0,U.useRef)(void 0),N=(0,U.useRef)(void 0),P=(0,U.useRef)(void 0),F=(0,U.useRef)(void 0),I=(0,U.useRef)(void 0),L=(0,U.useRef)(void 0),R=(0,U.useRef)(void 0),z=(0,U.useRef)(0),B=(0,U.useRef)(void 0),ee=(0,U.useRef)(void 0),te=(0,U.useRef)(void 0),ne=(0,U.useRef)(void 0),re=(0,U.useRef)([]),V=(0,U.useRef)([]),ie=(0,U.useRef)(t),ae=(0,U.useRef)(void 0),oe=(0,U.useRef)(void 0),se=(0,U.useRef)(void 0),ce=(0,U.useRef)(void 0),le=(0,U.useRef)(void 0),ue=(0,U.useRef)(void 0),de=(0,U.useRef)(t),fe=(0,U.useRef)(n2),pe=(0,U.useRef)(n2),me=(0,U.useRef)({resetKey:r,itemKeys:t}),he=(0,U.useRef)(!1),ge=(0,U.useRef)(!1),_e=(0,U.useRef)(!1),[ve,ye]=(0,U.useState)(!0),[be,xe]=(0,U.useState)(!1),[Se,Ce]=(0,U.useState)(null),we=me.current;if(!Object.is(we.resetKey,r))fe.current=n2,he.current=!1,ge.current=!1;else{let e=Sze(we.itemKeys,t);he.current=e>0,e>0&&(fe.current-=e,ge.current=!0)}me.current={resetKey:r,itemKeys:t};let H=fe.current;(0,U.useLayoutEffect)(()=>{m.current=e},[e]);let Te=(0,U.useCallback)(()=>{ae.current=void 0,oe.current=void 0,se.current!==void 0&&window.clearTimeout(se.current),ce.current!==void 0&&window.clearTimeout(ce.current),se.current=void 0,ce.current=void 0},[]),Ee=(0,U.useCallback)(()=>{g.current||oe.current||!V.current.length||(oe.current={anchors:V.current,itemKeys:ie.current})},[]),De=(0,U.useCallback)((e,t=!0)=>{let n=g.current;g.current=e,e&&(Te(),w.current=!1,T.current=!1,E.current=!1,D.current=void 0,k.current=!1,!n&&t&&f?.(void 0),j.current=!1,v.current!==void 0&&cancelAnimationFrame(v.current),v.current=void 0),ye(e)},[Te,f]),Oe=(0,U.useCallback)(e=>{_e.current!==e&&(_e.current=e,xe(e))},[]),ke=(0,U.useCallback)(e=>{let t=e<=c;return Oe(t),t},[c,Oe]),Ae=(0,U.useCallback)(()=>{if(!Se||g.current)return;let e=de.current,t=ae.current;if(t){let n=e.indexOf(t.key);if(n>=0){let r={...t,dataIndex:n};return V.current=[r],ie.current=e,f?.(r),r}}let n=Fze(Se,e);V.current=n.length?n:Cze({items:re.current,itemKeys:de.current,firstItemIndex:pe.current,scrollTop:i2(Se),viewportHeight:a2(Se)}),ie.current=de.current;let r=wze(V.current);return f?.(r),r},[f,Se]),je=(0,U.useCallback)(()=>{le.current=V.current,ue.current=ie.current},[]),Me=(0,U.useCallback)(e=>{re.current=e},[]),Ne=(0,U.useCallback)(e=>{!(e instanceof WheelEvent)||E.current||g.current||e.deltaY===0||V.current.length===0||(V.current=V.current.map(t=>({...t,offset:t.offset-e.deltaY})),(h.current||le.current!==void 0)&&(le.current=V.current,ue.current=ie.current))},[]),Pe=(0,U.useCallback)(()=>{M.current!==void 0&&window.clearTimeout(M.current),M.current=window.setTimeout(()=>{S.current=!1,C.current=void 0,w.current=!1,T.current=!1,E.current=!1;let e=D.current;if(D.current=void 0,M.current=void 0,k.current&&(k.current=!1,v.current!==void 0&&cancelAnimationFrame(v.current),v.current=void 0,Te(),le.current=void 0,ue.current=void 0),e){A.current=!1;let t=Ae();t&&(ae.current=t),O.current(e)}},Dze)},[Ae,Te]),Fe=(0,U.useCallback)((e=!1)=>{if(g.current||F.current!==void 0)return;if(S.current&&w.current){k.current=!0;return}if(A.current&&!T.current||ge.current&&!e)return;let t=de.current,n=ae.current,r=n?t.indexOf(n.key):-1,i=oe.current,a=le.current,o=r>=0?[{...n,dataIndex:r}]:i?.anchors??a??V.current,s=Tze({anchors:o,previousKeys:r>=0?t:i?.itemKeys??(a?ue.current:ie.current)??[],nextKeys:t});if(!s)return;let c=()=>{if(g.current||F.current!==void 0)return!1;if(S.current&&w.current)return k.current=!0,!1;if(A.current&&!T.current)return!1;let e=!!(Se&&o2(Se,s,o,t));return!e&&!ge.current&&p.current?.scrollToIndex(s),e},l=c();ge.current&&!l||(v.current!==void 0&&cancelAnimationFrame(v.current),v.current=requestAnimationFrame(()=>{c(),v.current=requestAnimationFrame(()=>{v.current=void 0,c(),Ae()})}))},[Ae,Se]),Ie=(0,U.useCallback)(()=>{oe.current&&(se.current!==void 0&&window.clearTimeout(se.current),ce.current!==void 0&&window.clearTimeout(ce.current),se.current=window.setTimeout(()=>{se.current=void 0,Fe(!0),ce.current=window.setTimeout(()=>{ce.current=void 0,oe.current=void 0,Ae()},jze)},Aze))},[Ae,Fe]),Le=(0,U.useCallback)(()=>{g.current||(Ae(),je(),A.current=!1)},[Ae,je]),Re=(0,U.useCallback)(e=>({startIndex:Math.max(0,e.startIndex-fe.current),endIndex:Math.max(0,e.endIndex-fe.current)}),[]),ze=(0,U.useCallback)(()=>{_.current!==void 0&&(cancelAnimationFrame(_.current),_.current=void 0)},[]),Be=(0,U.useCallback)(e=>{let t=de.current,n=t.indexOf(e.key);if(n<0)return!1;Te(),De(!1),A.current=!1,ae.current={...e,dataIndex:n},V.current=[{...e,dataIndex:n}],ie.current=t,je(),ze();let r={index:n,align:`start`,behavior:`auto`,offset:-e.offset},i=()=>{g.current||Se&&o2(Se,r,V.current,t)||p.current?.scrollToIndex(r)};return p.current?.scrollToIndex(r),v.current!==void 0&&cancelAnimationFrame(v.current),v.current=requestAnimationFrame(()=>{i(),v.current=requestAnimationFrame(()=>{v.current=void 0,i(),Ae()})}),!0},[Ae,Te,ze,Se,De,je]),Ve=(0,U.useCallback)(()=>{!s||!Se||x.current===void 0&&(x.current=requestAnimationFrame(()=>{x.current=void 0,!(!s||!Se)&&i2(Se)<=l&&(Ae(),je(),s())}))},[Ae,l,s,Se,je]),He=(0,U.useCallback)((e=`auto`)=>{ze(),_.current=requestAnimationFrame(()=>{_.current=void 0,!(!g.current||m.current<1)&&(p.current?.autoscrollToBottom(),Se&&c2(Se),requestAnimationFrame(()=>{g.current&&Se&&c2(Se)}))})},[ze,Se]),Ue=(0,U.useCallback)(()=>{!o||!Se||b.current===void 0&&(b.current=requestAnimationFrame(()=>{b.current=void 0,!(!o||!Se)&&ke(i2(Se))&&(Ae(),je(),o())}))},[Ae,o,Se,je,ke]);O.current=e=>{e===`at-top`?Ue():Ve()};let We=(0,U.useCallback)(()=>Se?ke(i2(Se)):!1,[Se,ke]),Ge=(0,U.useCallback)((e=`auto`)=>{De(!0),He(e)},[He,De]),Ke=(0,U.useCallback)((e,t=`center`,n=`auto`,r={})=>{Te(),De(!1),A.current=!0,ze(),requestAnimationFrame(()=>{if(n!==`fast-smooth`){p.current?.scrollToIndex({index:e,align:t,behavior:n});return}if(r.stagingAlign){p.current?.scrollToIndex({index:e,align:r.stagingAlign,behavior:`auto`}),requestAnimationFrame(()=>{requestAnimationFrame(()=>{p.current?.scrollToIndex({index:e,align:t,behavior:`smooth`})})});return}let i=r.fromIndex,a=Math.abs(typeof i==`number`?i-e:0),o=r.stagingDistance??Nze;if(typeof i!=`number`||a<=o){p.current?.scrollToIndex({index:e,align:t,behavior:`smooth`});return}let s=m.current-1,c=e<i?Math.min(s,e+o):Math.max(0,e-o);p.current?.scrollToIndex({index:c,align:t,behavior:`auto`}),requestAnimationFrame(()=>{p.current?.scrollToIndex({index:e,align:t,behavior:`smooth`})})})},[Te,ze,De]),qe=(0,U.useCallback)((e,t)=>{Te(),S.current=!0,w.current=e?.type===`touchmove`,T.current=e?.type===`wheel`,E.current=gze(l2(e));let n=t??vze(l2(e));u?.(e,n),C.current=n,A.current=!0,n===`away`?(j.current=!1,ze(),De(!1),Ae()):n===`toward`&&(j.current=!0,Se&&r2(Se,1)&&De(!0)),n!==`away`&&Se&&!r2(Se,a)&&(De(!1),Ae()),Ne(e),v.current!==void 0&&cancelAnimationFrame(v.current),v.current=void 0;let r=Se?i2(Se):void 0;r!==void 0&&ke(r)?E.current?D.current=`at-top`:Ue():Ize(e)&&r!==void 0&&r<=l&&(E.current?D.current=`near-top`:Ve()),Pe()},[a,Ae,Te,ze,l,u,Ne,Ue,Ve,Pe,Se,De,ke]),Je=(0,U.useCallback)(e=>{!(e instanceof WheelEvent)||!E.current||!Se||(e.preventDefault(),s2(Se,i2(Se)+_ze(l2(e),a2(Se))),Ae())},[Ae,Se]),Ye=(0,U.useCallback)(e=>{let t=F.current;!t||e&&t!==e||(F.current=void 0,ee.current!==void 0&&window.clearTimeout(ee.current),ee.current=void 0,t===`scrollbar`&&(L.current=void 0,R.current=void 0,z.current=0,B.current=void 0,Ae(),je(),d?.(!1)),Se&&r2(Se,1)&&C.current!==`away`&&De(!0))},[Ae,d,Se,De,je]),Xe=(0,U.useCallback)(()=>{if(!Se)return;let e=i2(Se),t=ne.current,n=F.current,r=B.current;if(n===`scrollbar`){let t=yze({direction:R.current,oppositeCount:z.current,previousScrollTop:r,scrollTop:e});if(R.current=t.direction,z.current=t.oppositeCount,t.clamp&&r!==void 0){s2(Se,r);return}B.current=e}ne.current=e,S.current&&Pe();let i=S.current||n!==void 0,o=$0({hasUserScrollIntent:i,previousScrollTop:t,scrollTop:e});o&&n&&(C.current=o,u?.(void 0,o)),n===`middle`&&(ee.current!==void 0&&window.clearTimeout(ee.current),ee.current=window.setTimeout(()=>Ye(`middle`),Mze));let s=o===`away`;s?j.current=!1:o===`toward`&&C.current===`toward`&&(j.current=!0);let c=i||s||!g.current;if(A.current&&h.current&&le.current!==void 0&&(Ae(),je()),A.current&&(N.current!==void 0&&window.clearTimeout(N.current),P.current!==void 0&&window.clearTimeout(P.current),N.current=window.setTimeout(()=>{Ae(),h.current&&le.current!==void 0&&je(),A.current=!1,N.current=void 0},Oze),P.current=window.setTimeout(()=>{P.current=void 0,!(g.current||F.current!==void 0)&&(Ae(),h.current&&le.current!==void 0&&je())},kze)),ke(e)?i&&C.current===`away`&&(E.current?D.current=`at-top`:Ue()):c&&e<=l&&(E.current?D.current=`near-top`:Ve()),r2(Se,a)){e2(j.current,s)&&De(!0);return}i&&De(!1)},[a,Ae,Ye,l,u,Ue,Ve,Pe,Se,De,je,ke]);(0,U.useLayoutEffect)(()=>{if(!Se||typeof MutationObserver>`u`)return;let e=Se instanceof Window?document.scrollingElement:Se;if(!e)return;let t=()=>{if(g.current){c2(Se);return}oe.current&&Ie(),Fe(!0)},n=typeof ResizeObserver>`u`?void 0:new ResizeObserver(t),r=()=>{let t=e.querySelector(`[data-testid="virtuoso-item-list"]`);t&&n?.observe(t)},i=new MutationObserver(()=>{r(),t()});return r(),i.observe(e,{subtree:!0,childList:!0,characterData:!0,attributes:!0,attributeFilter:[`style`,`data-index`,`data-item-index`]}),()=>{i.disconnect(),n?.disconnect()}},[Fe,Ie,Se]),(0,U.useLayoutEffect)(()=>{if(!Se)return;let e=Se,t=e=>{let t=e instanceof KeyboardEvent?e.key:``;t===`Escape`&&Ye(`middle`),[`ArrowUp`,`ArrowDown`,`PageUp`,`PageDown`,`Home`,`End`,` `].includes(t)&&(Ye(`middle`),qe(e))},n=t=>{if(!(t instanceof PointerEvent))return;let n=Lze(t,e);if(!n){t.button===0&&Ye(`middle`);return}if(n===`middle`&&F.current===`middle`){Ye(`middle`);return}if(Te(),F.current=n,j.current=!1,ze(),De(!1),Ae(),n===`scrollbar`){L.current=t.clientY,R.current=void 0,z.current=0;let n=i2(e);B.current=n,ne.current=n,d?.(!0)}qe(t)},r=t=>{if(F.current!==`scrollbar`||!(t instanceof PointerEvent))return;let n=L.current;if(L.current=t.clientY,n===void 0)return;let r=t.clientY<n-.5?`away`:t.clientY>n+.5?`toward`:void 0;!r||r===R.current||(R.current=r,z.current=0,B.current=i2(e))},i=t=>{if(F.current!==`scrollbar`)return;let n=t.type===`pointerup`?Rze(t,e):void 0;if(!n){Ye(`scrollbar`);return}R.current=n===`top`?`away`:`toward`,z.current=0,B.current=i2(e),n===`top`?s2(e,0):c2(e),I.current!==void 0&&cancelAnimationFrame(I.current),I.current=requestAnimationFrame(()=>{I.current=void 0,Ye(`scrollbar`)})},a=e=>{te.current=u2(e)},o=e=>{Ye(`middle`);let t=u2(e),n=te.current;te.current=t,qe(e,bze(n,t))},s=e=>{Ye(`middle`),qe(e),Je(e)};return e.addEventListener(`wheel`,s,{passive:!1}),e.addEventListener(`touchstart`,a,{passive:!0}),e.addEventListener(`touchmove`,o,{passive:!0}),e.addEventListener(`pointerdown`,n,{passive:!0}),e.addEventListener(`keydown`,t),e.addEventListener(`scroll`,Xe,{passive:!0}),window.addEventListener(`pointermove`,r,{passive:!0}),window.addEventListener(`pointerup`,i,{passive:!0}),window.addEventListener(`pointercancel`,i,{passive:!0}),()=>{e.removeEventListener(`wheel`,s),e.removeEventListener(`touchstart`,a),e.removeEventListener(`touchmove`,o),e.removeEventListener(`pointerdown`,n),e.removeEventListener(`keydown`,t),e.removeEventListener(`scroll`,Xe),window.removeEventListener(`pointermove`,r),window.removeEventListener(`pointerup`,i),window.removeEventListener(`pointercancel`,i)}},[Je,Ae,Te,Ye,ze,qe,d,Se,De,Xe]),(0,U.useLayoutEffect)(()=>{Te(),ne.current=void 0,N.current!==void 0&&window.clearTimeout(N.current),P.current!==void 0&&window.clearTimeout(P.current),N.current=void 0,P.current=void 0,w.current=!1,T.current=!1,E.current=!1,D.current=void 0,k.current=!1,A.current=!1,V.current=[],ie.current=[],le.current=void 0,ue.current=void 0,Oe(!1),De(!0,!1),He(`auto`)},[Te,r,He,Oe,De]);let Ze=(0,U.useCallback)(()=>{y.current!==void 0&&cancelAnimationFrame(y.current),y.current=requestAnimationFrame(()=>{y.current=requestAnimationFrame(()=>{y.current=void 0,ge.current=!1,Fe()})})},[Fe]);return(0,U.useLayoutEffect)(()=>{let e=he.current;return he.current=!1,de.current=t,pe.current=fe.current,!g.current&&le.current!==void 0&&(A.current=!1),g.current?He(`auto`):e?Ze():Fe(),!g.current&&oe.current&&Ie(),le.current=void 0,ue.current=void 0,()=>{g.current||Ee(),!g.current&&le.current===void 0&&je()}},[i,e,t,Fe,Ie,Ze,He,Ee,je]),(0,U.useEffect)(()=>()=>{Te(),ze(),v.current!==void 0&&cancelAnimationFrame(v.current),y.current!==void 0&&cancelAnimationFrame(y.current),b.current!==void 0&&cancelAnimationFrame(b.current),x.current!==void 0&&cancelAnimationFrame(x.current),M.current!==void 0&&window.clearTimeout(M.current),N.current!==void 0&&window.clearTimeout(N.current),P.current!==void 0&&window.clearTimeout(P.current),I.current!==void 0&&cancelAnimationFrame(I.current),ee.current!==void 0&&window.clearTimeout(ee.current)},[Te,ze]),{virtuosoRef:p,firstItemIndex:H,itemsRendered:Me,normalizeRange:Re,isSticky:ve,isAtTop:be,isScrolledToTop:We,captureVisibleAnchor:Ae,prepareForPrepend:Le,restoreAnchor:Be,stickToBottom:Ge,scrollToIndex:Ke,scrollerRef:Ce,atBottomStateChange:(0,U.useCallback)(e=>{if(e){e2(j.current,!1)&&De(!0);return}S.current&&De(!1)},[De]),atBottomThreshold:a,followOutput:(0,U.useCallback)(()=>g.current?`auto`:!1,[]),totalListHeightChanged:(0,U.useCallback)(()=>{g.current?He(`auto`):ge.current?Ze():Fe()},[Fe,Ze,He])}}function r2(e,t){let n=e instanceof Window?document.scrollingElement:e;return!n||n.scrollHeight-n.scrollTop-n.clientHeight<=t}function i2(e){return(e instanceof Window?document.scrollingElement:e)?.scrollTop??0}function a2(e){return(e instanceof Window?document.scrollingElement:e)?.clientHeight??0}function Fze(e,t){let n=e instanceof Window?document:e,r=e instanceof Window?0:e.getBoundingClientRect().top,i=r+a2(e);return[...n.querySelectorAll(`[data-index][data-item-index]`)].flatMap(e=>{let n=Number(e.dataset.index),a=Number.isInteger(n)?t[n]:void 0;if(a===void 0)return[];let o=e.getBoundingClientRect();return o.bottom<=r||o.top>=i?[]:[{key:a,dataIndex:n,offset:o.top-r}]}).sort((e,t)=>e.offset-t.offset)}function o2(e,t,n,r){let i=n.find(e=>r.indexOf(e.key)===t.index);if(!i)return!1;let a=e instanceof Window?document:e,o=[...a.querySelectorAll(`[data-row-id]`)].find(e=>e.dataset.rowId===i.key)?.closest(`[data-index][data-item-index]`)??a.querySelector(`[data-index="${t.index}"][data-item-index]`);if(!o)return!1;let s=e instanceof Window?0:e.getBoundingClientRect().top,c=o.getBoundingClientRect().top-s-i.offset;return Math.abs(c)>.5&&s2(e,i2(e)+c),!0}function s2(e,t){let n=e instanceof Window?document.scrollingElement:e;n&&(n.scrollTop=t)}function c2(e){let t=e instanceof Window?document.scrollingElement:e;t&&(t.scrollTop=t.scrollHeight)}function Ize(e){return e instanceof WheelEvent?e.deltaY<0:e instanceof KeyboardEvent?[`ArrowUp`,`PageUp`,`Home`].includes(e.key)||e.key===` `&&e.shiftKey:e?.type===`touchmove`}function l2(e){return e instanceof WheelEvent?{type:`wheel`,deltaY:e.deltaY,deltaMode:e.deltaMode}:e instanceof KeyboardEvent?{type:`keydown`,key:e.key,shiftKey:e.shiftKey}:{type:e?.type}}function Lze(e,t){let n=t instanceof Window?document.scrollingElement:t,r=n?.getBoundingClientRect();return xze({button:e.button,targetIsScroller:e.target===t,clientX:e.clientX,scrollerRight:r?.right,verticalScrollbarWidth:n?n.offsetWidth-n.clientWidth:void 0})}function Rze(e,t){if(!(e instanceof PointerEvent))return;let n=t instanceof Window?document.scrollingElement:t,r=n?.getBoundingClientRect();if(!n||!r)return;let i=Math.max(12,n.offsetWidth-n.clientWidth)*2;if(e.clientY<=r.top+i)return`top`;if(e.clientY>=r.bottom-i)return`bottom`}function u2(e){if(e instanceof TouchEvent)return e.touches[0]?.clientY}function zze(e,t=`done`,n=!1){if(!e)return t===`running`?`running`:t===`error`?`failed`:`completed`;if(n)return t===`error`?`failed`:`completed`;let r=[e.localStatus,e.aggregateStatus];return r.some(Kze)?`cancelled`:e.hasError||e.hasErrorDescendant||r.some(Gze)?`failed`:e.isSettled===!1||e.isTreeActive||e.isLocalActive||e.hasActiveDescendant||r.some(Uze)||t===`running`&&r.every(Wze)?`running`:`completed`}function Bze(e,t,n){let r=m2(e)?e:void 0;return Jze(p2(r?.name)??p2(r?.subagentName)??qze(t)??p2(n)??p2(t)??`Subagent`)}function d2(e){if(typeof e==`string`)return f2(e);if(m2(e)){for(let t of[`message`,`task`,`prompt`,`query`]){let n=f2(e[t]);if(n)return n}return d2(e.arguments)}}function Vze(e,t=180){let n=d2(e)?.replace(/\s+/g,` `).trim();if(!(!n||t<1))return n.length<=t?n:`${n.slice(0,Math.max(1,t-1)).trimEnd()}…`}function Hze(e){let t=Math.max(0,Math.floor(e/1e3));if(t<60)return`${t}s`;let n=Math.floor(t/3600),r=Math.floor(t%3600/60),i=t%60;return n>0?`${n}h ${r}m ${i}s`:`${r}m ${i}s`}function Uze(e){return[`queued`,`starting`,`running`,`streaming`,`waiting`,`blocked`,`retrying`,`compacting`,`pausing`,`paused`].includes(e)}function Wze(e){return e===`idle`||e===`unknown`}function Gze(e){return e===`error`}function Kze(e){return e===`cancelled`||e===`interrupted`||e===`disposed`}function qze(e){let t=f2(e);if(t)return t===`pibo_agents_send_message`?void 0:t.replace(/^pibo_subagent_/,``)}function Jze(e){return e.replace(/^pibo_agents_send_message$/,`Agent`).replace(/^pibo_subagent_/,``).split(/[\s_-]+/).filter(Boolean).map(e=>`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(` `)||`Subagent`}function f2(e){return typeof e==`string`&&e.trim()?e.trim():void 0}function p2(e){return f2(e)}function m2(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function h2({title:e,summary:t,input:n,output:r,error:i,traceStatus:a=`done`,linkedPiboSessionId:o,startedAt:s,completedAt:c,durationMs:l,signals:u,onOpenSession:d}){let f=o?u?.sessions[o]:void 0,p=zze(f,a,a===`error`||c!==void 0),m=(0,U.useMemo)(()=>{if(!(!o||!u))return Object.values(u.nodes).find(e=>e.childPiboSessionId===o||e.piboSessionId===o&&e.kind===`session`)},[o,u]),h=s??m?.startedAt??m?.createdAt,g=p===`running`?void 0:c??f?.updatedAt??m?.completedAt,[_,v]=(0,U.useState)(()=>Date.now()),[y,b]=(0,U.useState)(!1),x=Bze(n,e,t),S=Vze(n),C=Xze(h,g,p===`running`?void 0:l,_,p===`running`),w=n!==void 0||r!==void 0||!!i;return(0,U.useEffect)(()=>{if(p!==`running`)return;let e=window.setInterval(()=>v(Date.now()),1e3);return()=>window.clearInterval(e)},[p]),(0,W.jsxs)(`div`,{className:`min-w-0 overflow-hidden rounded-sm border border-[#f97316]/60 bg-[#1a140f] text-slate-200 shadow-sm`,"data-pibo-component":`AgentDelegationCard`,"data-delegation-status":p,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-start gap-3 border-b border-[#f97316]/25 bg-[#f97316]/8 px-3 py-2.5`,children:[(0,W.jsxs)(`span`,{className:`relative inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-full border border-[#f97316] bg-[#f97316]/15 text-[#f97316]`,children:[(0,W.jsx)(Cc,{size:16,"aria-hidden":`true`}),p===`running`?(0,W.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-2 w-2 animate-pulse rounded-full bg-[#0bda57]`,"aria-hidden":`true`}):null]}),(0,W.jsxs)(`div`,{className:`min-w-[12rem] flex-1`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[10px] font-bold uppercase tracking-wider text-[#f97316]`,children:`Agent Delegation`}),(0,W.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1 text-sm font-semibold text-slate-100`,children:[(0,W.jsx)(Ls,{size:14,className:`shrink-0 text-[#f97316]`,"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`truncate`,children:x})]}),(0,W.jsx)(Yze,{status:p})]}),S?(0,W.jsx)(`p`,{className:`mt-1 line-clamp-2 break-words font-mono text-xs leading-relaxed text-slate-400`,children:S}):null,C?(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[10px] tabular-nums text-slate-500`,children:C}):null]}),o&&d?(0,W.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),d(o)},className:`inline-flex min-h-8 shrink-0 items-center gap-1.5 rounded-sm border border-[#f97316]/70 px-2.5 py-1 text-[11px] font-semibold text-[#fb923c] hover:border-[#f97316] hover:bg-[#f97316]/10 focus:outline-none focus:ring-1 focus:ring-[#f97316]`,children:[(0,W.jsx)(fc,{size:13,"aria-hidden":`true`}),`Open sub-session`]}):null]}),w?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),b(e=>!e)},"aria-expanded":y,className:`flex min-h-9 w-full items-center justify-between gap-2 border-t border-[#f97316]/15 px-3 py-2 text-left text-[11px] font-semibold text-slate-400 hover:bg-[#f97316]/5 hover:text-slate-200 focus:outline-none focus:ring-1 focus:ring-inset focus:ring-[#f97316]`,children:[(0,W.jsx)(`span`,{children:`Technical details`}),(0,W.jsx)(`span`,{"aria-hidden":`true`,children:y?`−`:`+`})]}),y?(0,W.jsxs)(`div`,{className:`grid min-w-0 gap-3 border-t border-[#f97316]/15 bg-[#0e1116] p-3 text-xs`,children:[n===void 0?null:(0,W.jsx)(g2,{label:`Arguments`,value:n}),r===void 0?null:(0,W.jsx)(g2,{label:`Result`,value:r}),i?(0,W.jsx)(g2,{label:`Error`,value:i,error:!0}):null]}):null]}):null]})}function Yze({status:e}){let t={running:`border-[#0bda57]/40 bg-[#0bda57]/10 text-[#0bda57]`,completed:`border-green-500/40 bg-green-500/10 text-green-400`,failed:`border-red-500/40 bg-red-500/10 text-red-400`,cancelled:`border-slate-500/50 bg-slate-500/10 text-slate-300`},n=`${e.charAt(0).toUpperCase()}${e.slice(1)}`;return(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-sm border px-1.5 py-0.5 text-[10px] font-bold uppercase tracking-wide ${t[e]}`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,children:[e===`running`?(0,W.jsx)(`span`,{className:`h-1.5 w-1.5 animate-pulse rounded-full bg-current`,"aria-hidden":`true`}):null,n]})}function g2({label:e,value:t,error:n=!1}){return(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`mb-1 text-[10px] font-bold uppercase tracking-wider ${n?`text-red-400`:`text-[#fb923c]`}`,children:e}),(0,W.jsx)(sq,{value:t})]})}function Xze(e,t,n,r,i){let a=_2(e),o=_2(t),s=n??(a===void 0?void 0:Math.max(0,(o??r)-a)),c=[];return a!==void 0&&c.push(i?`Started ${Zze(r-a)}`:`Started ${Qze(a)}`),s!==void 0&&c.push(Hze(s)),c.length?c.join(` · `):void 0}function Zze(e){let t=Math.max(0,Math.floor(e/1e3));if(t<5)return`just now`;if(t<60)return`${t}s ago`;let n=Math.floor(t/60);return n<60?`${n}m ago`:`${Math.floor(n/60)}h ago`}function Qze(e){return`${new Date(e).toISOString().slice(11,19)} UTC`}function _2(e){if(!e)return;let t=new Date(e).getTime();return Number.isFinite(t)?t:void 0}async function $ze(){let e=await fetch(`/api/chat/speech/providers`),t=await e.json().catch(()=>void 0);if(!e.ok)throw Error(y2(t,`Could not load speech providers`));return t}async function eBe(e,t,n){let r=await fetch(`/api/chat/speech/sessions`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({offerSdp:e,text:t}),signal:n}),i=await r.json().catch(()=>void 0);if(!r.ok)throw Error(y2(i,`Speech session failed to start`));return i.speechSession}async function tBe(e,t,n){let r=await fetch(`/api/chat/speech/sessions/${encodeURIComponent(e)}/speak`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({text:t}),signal:n});if(!r.ok){let e=await r.json().catch(()=>void 0);throw Error(y2(e,`Speech synthesis failed`))}}async function v2(e){let t=await fetch(`/api/chat/speech/sessions/${encodeURIComponent(e)}`,{method:`DELETE`,headers:{"content-type":`application/json`},body:`{}`});if(!t.ok){let e=await t.json().catch(()=>void 0);throw Error(y2(e,`Speech session could not be stopped`))}}function y2(e,t){return e&&typeof e==`object`&&`error`in e?String(e.error):t}var nBe=2e3,rBe=150,iBe=1.2,aBe=50,oBe=900,sBe=.005;async function cBe(e){e.iceGatheringState!==`complete`&&await new Promise(t=>{let n=()=>{clearTimeout(i),e.removeEventListener(`icegatheringstatechange`,r),t()},r=()=>{e.iceGatheringState===`complete`&&n()},i=setTimeout(n,nBe);e.addEventListener(`icegatheringstatechange`,r)})}function lBe(e){if(typeof e==`string`)try{let t=JSON.parse(e);return t&&typeof t==`object`&&typeof t.type==`string`?t.type:void 0}catch{return}}function uBe(e){let t=e.context.sampleRate,n=Math.ceil(t*iBe),r=Math.max(1,Math.floor(t*.05)),i=e.context.createBuffer(1,n,t),a=i.getChannelData(0);for(let e=0;e<a.length;e+=1){let t=Math.min(1,e/r,(a.length-e-1)/r);a[e]=(Math.random()*2-1)*.14*Math.max(0,t)}let o=e.context.createBufferSource();e.inputSource=o,o.buffer=i,o.connect(e.destination),o.addEventListener(`ended`,()=>{e.inputSource===o&&(o.disconnect(),e.inputSource=void 0)},{once:!0}),o.start()}function b2({text:e,scopeKey:t=``,className:n=``}){let[r,i]=(0,U.useState)(`idle`),[a,o]=(0,U.useState)(null),s=(0,U.useRef)(null),c=(0,U.useRef)(null),l=(0,U.useRef)(null),u=(0,U.useRef)(null),d=(0,U.useRef)(0),f=(0,U.useCallback)(()=>{let e=s.current;s.current=null,e&&(e.ontrack=null,e.onconnectionstatechange=null,e.close());let t=c.current;if(c.current=null,t){if(t.monitor&&clearInterval(t.monitor),t.timer&&clearTimeout(t.timer),t.inputSource){try{t.inputSource.stop()}catch{}t.inputSource.disconnect()}t.outputSource?.disconnect(),t.outputAnalyser?.disconnect();for(let e of t.outputTracks)e.stop();for(let e of t.destination.stream.getTracks())e.stop();t.context.close().catch(()=>{})}},[]),p=(0,U.useCallback)(()=>{let e=l.current;l.current=null,e&&v2(e).catch(()=>{})},[]),m=(0,U.useCallback)(()=>{u.current?.abort(),u.current=null},[]),h=(0,U.useCallback)(()=>{d.current+=1,m(),f(),p()},[m,f,p]);(0,U.useEffect)(()=>(o(null),i(`idle`),h),[h,t,e]);let g=(0,U.useCallback)((e,t)=>{d.current===e&&(d.current+=1,m(),f(),p(),o(t instanceof Error?t.message:String(t)),i(`error`))},[m,f,p]),_=async t=>{if(t.stopPropagation(),r===`loading`||r===`playing`){h(),o(null),i(`idle`);return}let n=d.current+1;d.current=n,m(),f(),p();let a=new AbortController;u.current=a,o(null),i(`loading`);try{if(typeof RTCPeerConnection>`u`||typeof AudioContext>`u`)throw Error(`This browser does not support speech playback`);let t=new RTCPeerConnection;s.current=t;let r=new AudioContext,o=r.createMediaStreamDestination(),h={context:r,destination:o,outputTracks:new Set,triggered:!1};if(c.current=h,await r.resume(),d.current!==n)return;t.onconnectionstatechange=()=>{t.connectionState===`failed`&&g(n,Error(`Speech connection failed`))},t.ontrack=e=>{if(d.current===n)try{let t=e.streams[0]??new MediaStream([e.track]);h.outputTracks.add(e.track);let a=r.createMediaStreamSource(t),o=r.createAnalyser();o.fftSize=1024,a.connect(o),o.connect(r.destination),h.outputSource=a,h.outputAnalyser=o;let s=new Float32Array(o.fftSize),c=!1,l=0;h.monitor=setInterval(()=>{if(d.current!==n)return;o.getFloatTimeDomainData(s);let e=0;for(let t of s)e+=t*t;let t=Math.sqrt(e/s.length),r=performance.now();t>=sBe?(l=r,c||(c=!0,i(`playing`))):c&&r-l>=oBe&&(d.current+=1,m(),p(),f(),i(`idle`))},aBe),e.track.addEventListener(`ended`,()=>{d.current===n&&(d.current+=1,m(),p(),f(),i(`idle`))},{once:!0})}catch(e){g(n,e)}};let _=o.stream.getAudioTracks()[0];if(!_)throw Error(`Could not create a speech audio connection`);t.addTransceiver(_,{direction:`sendrecv`,streams:[o.stream]}),t.createDataChannel(`oai-events`).addEventListener(`message`,e=>{if(d.current!==n)return;let t=lBe(e.data);t===`output_transcript.added`&&i(`playing`),t===`session.context.appended`&&(c.current!==h||h.triggered||(h.timer&&clearTimeout(h.timer),h.timer=setTimeout(()=>{if(!(d.current!==n||h.triggered)){h.triggered=!0;try{uBe(h)}catch(e){g(n,e)}}},rBe)))});let v=await t.createOffer();if(d.current!==n||(await t.setLocalDescription(v),d.current!==n)||(await cBe(t),d.current!==n))return;let y=t.localDescription?.sdp;if(!y)throw Error(`Could not create a speech audio connection`);let b=await eBe(y,e,a.signal);if(d.current!==n){v2(b.sessionId).catch(()=>{});return}l.current=b.sessionId,tBe(b.sessionId,e,a.signal).then(()=>{d.current===n&&(d.current+=1,u.current=null,l.current=null,f(),i(`idle`))}).catch(e=>g(n,e)),await t.setRemoteDescription({type:`answer`,sdp:b.answerSdp})}catch(e){g(n,e)}},v=r===`loading`?`Cancel message audio`:r===`playing`?`Stop message audio`:r===`error`?`Retry message audio`:`Read message aloud`;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`button`,{type:`button`,onClick:e=>void _(e),onDoubleClick:e=>e.stopPropagation(),"aria-label":v,"aria-busy":r===`loading`,title:a??v,"data-pibo-component":`MessageSpeechButton`,"data-speech-state":r,className:`inline-flex h-5 w-5 shrink-0 items-center justify-center rounded-sm text-slate-500 transition-colors hover:bg-slate-700/60 hover:text-[#11a4d4] focus:outline-none focus:ring-1 focus:ring-[#11a4d4] ${r===`error`?`text-red-400`:``} ${n}`,children:r===`loading`?(0,W.jsx)(Ic,{size:12,className:`animate-spin`,"aria-hidden":`true`}):r===`playing`?(0,W.jsx)(bl,{size:10,fill:`currentColor`,"aria-hidden":`true`}):(0,W.jsx)(Wc,{size:12,"aria-hidden":`true`})}),a?(0,W.jsx)(`span`,{className:`sr-only`,role:`alert`,children:a}):null]})}function x2({delivery:e,className:t=``}){let n=e===`steer`;return(0,W.jsxs)(`div`,{className:`flex items-start gap-3 rounded-sm border px-3 py-2.5 ${n?`border-amber-500/40 bg-amber-500/10`:`border-[#11a4d4]/40 bg-[#11a4d4]/10`} ${t}`,"data-pibo-debug":`pending-user-message-${e}`,"aria-live":`polite`,children:[(0,W.jsx)(ic,{size:15,className:`mt-0.5 shrink-0 animate-pulse ${n?`text-amber-400`:`text-[#11a4d4]`}`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-bold uppercase tracking-wider ${n?`text-amber-400`:`text-[#11a4d4]`}`,children:n?`Steering pending`:`Queued for next turn`}),(0,W.jsx)(`div`,{className:`mt-0.5 text-xs leading-5 text-slate-400`,children:n?`Waiting for the next tool call boundary.`:`Waiting for the active turn to finish.`})]})]})}function S2(e){let t=e.pibo?.traceNodeType;return t?t===`tool.call`||t===`tool.result`||t===`agent.delegation`:e.spanType===`tool.call`||e.spanType===`tool.result`||e.spanType===`agent.delegation`}var C2={"agent.run":{color:`text-[#11a4d4]`,bgColor:`bg-[#11a4d4]/20`,borderColor:`border-[#11a4d4]`,label:`Agent Run`},"tool.call":{color:`text-purple-500`,bgColor:`bg-purple-500/20`,borderColor:`border-purple-500`,label:`Tool Call`},"tool.result":{color:`text-green-500`,bgColor:`bg-green-500/20`,borderColor:`border-green-500`,label:`Tool Result`},"model.request":{color:`text-blue-500`,bgColor:`bg-blue-500/20`,borderColor:`border-blue-500`,label:`Model Request`},"model.response":{color:`text-[#0bda57]`,bgColor:`bg-[#0bda57]/20`,borderColor:`border-[#0bda57]`,label:`Model Response`},"model.reasoning":{color:`text-amber-500`,bgColor:`bg-amber-500/20`,borderColor:`border-amber-500`,label:`Reasoning`},"agent.delegation":{color:`text-orange-500`,bgColor:`bg-orange-500/20`,borderColor:`border-orange-500`,label:`Agent Delegation`},"agent.async":{color:`text-orange-500`,bgColor:`bg-orange-500/20`,borderColor:`border-orange-500`,label:`Async Agent`},"yielded.run":{color:`text-[#11a4d4]`,bgColor:`bg-[#11a4d4]/20`,borderColor:`border-[#11a4d4]`,label:`Yielded Run`},"user.prompt":{color:`text-cyan-500`,bgColor:`bg-cyan-500/20`,borderColor:`border-cyan-500`,label:`User Prompt`},user_input:{color:`text-slate-500`,bgColor:`bg-slate-800`,borderColor:`border-slate-600`,label:`User Input`},"execution.command":{color:`text-yellow-500`,bgColor:`bg-yellow-500/20`,borderColor:`border-yellow-500`,label:`Command`}},w2=12;function T2(e,t){return t===`all`||e<t}(0,U.memo)(function e({span:t,startTime:n,depth:r=0,expansionDepth:i,expansionSignal:a,expandThinking:o,toolDisplayMode:s=`default`,onFork:c,onOpenSession:l}){let[u,d]=(0,U.useState)(()=>T2(r,i)),[f,p]=(0,U.useState)(()=>t.spanType===`model.reasoning`?o:T2(r,i));(0,U.useEffect)(()=>{let e=T2(r,i);d(e),p(t.spanType===`model.reasoning`?o:e)},[r,i,a,o,t.spanType]),C2[t.spanType]||C2[`agent.run`],t.status,t.status,t.spanType===`user.prompt`||t.spanType;let m=!!t.children?.length;O2(t.startTime,n),t.durationUs?`${(t.durationUs/1e3).toFixed(1)}`:t.endTime&&`${((t.endTime-t.startTime)/1e3).toFixed(1)}`;let h=(0,U.useCallback)(()=>{p(e=>!e),m&&d(e=>!e)},[m]);return(0,W.jsx)(dBe,{span:t,startTime:n,depth:r,contentExpanded:f,childrenExpanded:u,onToggle:h,onFork:c,onOpenSession:l,toolDisplayMode:s,childrenContent:m?t.children?.map(t=>(0,W.jsx)(e,{span:t,startTime:n,depth:r+1,expansionDepth:i,expansionSignal:a,expandThinking:o,toolDisplayMode:s,onFork:c,onOpenSession:l},t.id)):void 0})});var dBe=(0,U.memo)(function({span:e,startTime:t,depth:n=0,contentExpanded:r,childrenExpanded:i,onToggle:a,onFork:o,onOpenSession:s,signals:c,toolDisplayMode:l=`default`,childrenContent:u}){let d=C2[e.spanType]||C2[`agent.run`],f=e.status===`UNSET`,p=yBe(e.status,f),m=e.spanType===`user.prompt`||e.spanType===`user_input`,h=!!e.children?.length,g=l!=="default"&&S2(e),_=O2(e.startTime,t),v=e.durationUs?`${(e.durationUs/1e3).toFixed(1)}ms`:e.endTime?`${((e.endTime-e.startTime)/1e3).toFixed(1)}ms`:null;return e.spanType===`agent.delegation`&&l==="default"?(0,W.jsx)(`div`,{className:`relative mb-4`,"data-pibo-debug":`trace-span`,"data-trace-node-id":e.id,"data-span-type":e.spanType,"data-span-status":e.status,"data-order-source":e.pibo?.source,"data-stable-key":e.pibo?.stableKey,style:{marginLeft:n>0?w2:0,width:n>0?`calc(100% - ${w2}px)`:`var(--trace-readable-width)`,maxWidth:`100%`},children:(0,W.jsx)(h2,{title:e.name,summary:typeof e.attributes.content==`string`?e.attributes.content:void 0,input:e.attributes.input??e.attributes.arguments,output:e.attributes.output??e.attributes.result,error:e.statusMessage,traceStatus:e.status===`UNSET`?`running`:e.status===`ERROR`?`error`:`done`,linkedPiboSessionId:e.pibo?.linkedPiboSessionId,startedAt:new Date(e.startTime/1e3).toISOString(),completedAt:e.endTime?new Date(e.endTime/1e3).toISOString():void 0,durationMs:e.durationUs===void 0?void 0:e.durationUs/1e3,signals:c,onOpenSession:s})}):(0,W.jsx)(`div`,{className:`relative mb-4 group`,"data-pibo-debug":`trace-span`,"data-trace-node-id":e.id,"data-span-type":e.spanType,"data-span-status":e.status,"data-order-source":e.pibo?.source,"data-stable-key":e.pibo?.stableKey,style:{marginLeft:n>0?w2:0,width:n>0?`calc(100% - ${w2}px)`:`var(--trace-readable-width)`,maxWidth:`100%`},children:(0,W.jsxs)(`div`,{className:`min-w-0 ${m?`bg-[#11a4d4]/10`:`bg-white dark:bg-[#1a262b]`} border ${p.cardClass} rounded-sm shadow-sm transition-all hover:border-opacity-70 focus:outline-none focus:ring-1 focus:ring-[#11a4d4]/50 ${f?p.glowClass:``}`,onDoubleClick:e=>{g||E2(e)||a()},onKeyDown:e=>{g||E2(e)||(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),a())},role:g?void 0:`button`,tabIndex:g?void 0:0,"aria-expanded":g?void 0:r,children:[(0,W.jsx)(fBe,{span:e,config:d,statusStyles:p,isActive:f,contentExpanded:r,duration:v,relativeTime:_,onToggle:a,onFork:o,onOpenSession:s,toolDisplayMode:l}),!g&&r?(0,W.jsx)(hBe,{span:e}):null,!g&&h&&i&&r?(0,W.jsx)(`div`,{className:`min-w-0 border-t border-slate-700 bg-slate-900/50 py-4`,children:u}):null]})})});function E2(e){let t=e.target;if(!(t instanceof Element)||t===e.currentTarget)return!1;let n=t.closest(`button, a, input, textarea, select, summary, [role='button'], [tabindex]:not([tabindex='-1'])`);return!!(n&&n!==e.currentTarget)}function fBe({span:e,config:t,statusStyles:n,isActive:r,contentExpanded:i,duration:a,relativeTime:o,onToggle:s,onFork:c,onOpenSession:l,toolDisplayMode:u}){let d=u!=="default"&&S2(e),f=u===`intent`?D2(e.attributes.intent):void 0,p=e.spanType===`model.response`&&!r?D2(e.attributes.content??e.attributes.output??e.attributes.message):void 0,m=e.spanType===`user.prompt`||e.spanType===`user_input`?`bg-[#11a4d4]/10`:n.headerClass,h=`${i&&!d?`border-b ${t.borderColor}/20`:``} ${m}`;return(0,W.jsx)(`div`,{className:h,children:(0,W.jsxs)(`div`,{className:`box-border flex w-full min-w-0 items-center`,style:{maxWidth:`100%`},children:[(0,W.jsx)(`div`,{className:`min-w-0 flex-1 px-4 py-2 text-left`,children:(0,W.jsxs)(`span`,{className:`min-w-0 text-xs font-bold ${t.color} uppercase tracking-wider flex items-center gap-2`,children:[d?null:i?(0,W.jsx)(Ws,{size:12}):(0,W.jsx)(Ks,{size:12}),(0,W.jsx)(pBe,{spanType:e.spanType,config:t,isActive:r}),f?(0,W.jsx)(`span`,{className:`min-w-0 truncate normal-case`,children:f}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`shrink-0`,children:t.label}),e.name?(0,W.jsxs)(`span`,{className:`min-w-0 truncate font-normal text-slate-500 dark:text-slate-400 normal-case`,children:[`: `,e.name]}):null]}),r?(0,W.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full bg-[#11a4d4] animate-pulse`}):null]})}),(0,W.jsx)(gBe,{forkEntryId:e.pibo?.traceNodeType===`user.message`?e.pibo.entryId:void 0,linkedPiboSessionId:e.pibo?.linkedPiboSessionId,onFork:c,onOpenSession:l}),(0,W.jsx)(mBe,{duration:a,relativeTime:o,speechText:p,speechScopeKey:e.id})]})})}function pBe({spanType:e,config:t,isActive:n}){return(0,W.jsxs)(`span`,{className:`relative inline-flex h-6 w-6 shrink-0 items-center justify-center rounded-full ${t.bgColor} border-2 ${t.borderColor} ${n?`shadow-[0_0_10px_rgba(17,164,212,0.4)]`:``}`,children:[(0,W.jsx)(vBe,{type:e,className:t.color}),n?(0,W.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-1.5 w-1.5 rounded-full bg-[#11a4d4] animate-pulse`}):null]})}function mBe({duration:e,relativeTime:t,speechText:n,speechScopeKey:r}){return(0,W.jsxs)(`div`,{className:`ml-2 mr-4 flex w-40 shrink-0 items-center justify-end gap-2 font-mono tabular-nums`,children:[e?(0,W.jsx)(`span`,{className:`text-[10px] text-slate-500 dark:text-slate-400`,children:e}):null,n?.trim()?(0,W.jsx)(b2,{text:n,scopeKey:r}):null,(0,W.jsx)(`span`,{className:`text-xs text-slate-400 dark:text-slate-500`,children:t})]})}var hBe=(0,U.memo)(function({span:e}){let[t,n]=(0,U.useState)(!1),{spanType:r,attributes:i,name:a}=e,o=i.content||i.input||i.output||i.message,s=i.tool_name||i.tool?.name||i[`tool.name`],c=typeof s==`string`?s:null,l=i.output||i.result||i[`tool.result`],u=i.arguments||i.args||i[`tool.arguments`],d=D2(i[`message.pending_delivery`]),f=e.status===`ERROR`?(0,W.jsxs)(`div`,{className:`mx-4 mt-4 p-3 bg-red-500/10 border border-red-500/20 rounded-sm text-xs`,children:[(0,W.jsx)(`div`,{className:`flex items-center gap-2 font-semibold text-red-500 mb-1`,children:`Error`}),e.statusMessage?(0,W.jsx)(`div`,{className:`font-mono text-red-400 mb-2`,children:e.statusMessage}):null]}):null;if(r===`user.prompt`||r===`user_input`)return(0,W.jsxs)(`div`,{className:`flex flex-col`,children:[f,(0,W.jsx)(`div`,{className:`min-w-0 break-words p-4 font-mono text-sm text-slate-300 whitespace-pre-wrap`,children:typeof o==`string`?o:JSON.stringify(o)}),d===`queue`||d===`steer`?(0,W.jsx)(x2,{delivery:d,className:`mx-4 mb-4`}):null]});if(r===`model.response`)return(0,W.jsxs)(`div`,{className:`flex flex-col`,children:[f,(0,W.jsx)(`div`,{className:`model-response-markdown min-w-0 p-4 text-sm text-slate-200 leading-relaxed`,children:typeof o==`string`?(0,W.jsx)(fG,{children:o}):(0,W.jsx)(sq,{value:o})})]});if(r===`tool.result`)return(0,W.jsxs)(`div`,{className:`flex flex-col`,children:[f,(0,W.jsxs)(`div`,{className:`p-4 bg-green-500/5 border-t border-green-500/20`,children:[(0,W.jsxs)(`div`,{className:`text-xs font-medium text-green-400 mb-2`,children:[`Returned from `,c||a,`:`]}),(0,W.jsx)(sq,{value:l??o})]})]});if(r===`tool.call`){let e=k2(u)?u:{},r=Object.keys(e).length>0;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`p-4 bg-[#0e1116] border-b border-slate-800`,children:(0,W.jsx)(_Be,{name:c??a,args:e})}),l==null?null:(0,W.jsxs)(`div`,{className:`px-4 py-2 bg-[#1a262b] flex items-center gap-2`,children:[(0,W.jsx)(ks,{size:14,className:`text-slate-400`}),(0,W.jsx)(`span`,{className:`text-xs font-mono text-slate-500`,children:`Output:`}),(0,W.jsx)(`code`,{className:`min-w-0 max-w-md truncate text-xs font-mono text-slate-300`,children:typeof l==`string`?l.slice(0,100):JSON.stringify(l).slice(0,100)})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>n(e=>!e),className:`w-full px-4 py-1.5 flex items-center gap-1.5 text-[11px] font-medium text-slate-400 hover:text-slate-200 bg-slate-900/40 hover:bg-slate-800/60 border-t border-slate-700/40 transition-colors`,children:[t?(0,W.jsx)(pc,{size:12}):(0,W.jsx)(mc,{size:12}),t?`Hide Details`:`Show Details`]}),t?(0,W.jsxs)(`div`,{className:`border-t border-slate-700/40 bg-[#0e1116]`,children:[r?(0,W.jsxs)(`div`,{className:`px-4 pt-3 pb-2`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-semibold text-blue-400 uppercase tracking-wider mb-1.5`,children:`Input`}),(0,W.jsx)(sq,{value:e})]}):null,l==null?null:(0,W.jsxs)(`div`,{className:`px-4 pt-2 pb-3 border-t border-slate-700/30`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-semibold text-green-400 uppercase tracking-wider mb-1.5`,children:`Output`}),(0,W.jsx)(sq,{value:l})]})]}):null,f]})}if(r===`yielded.run`){let e=k2(l)?l:k2(o)?o:{};return(0,W.jsxs)(`div`,{className:`flex flex-col`,children:[f,(0,W.jsxs)(`div`,{className:`p-4 border-b border-[#11a4d4]/20 bg-[#11a4d4]/5`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 mb-2`,children:[(0,W.jsx)(Ns,{size:14,className:`text-[#11a4d4]`}),(0,W.jsx)(`span`,{className:`text-sm font-medium text-[#11a4d4]`,children:`Run notification`}),(0,W.jsx)(`span`,{className:`text-xs font-mono text-slate-400`,children:typeof i.content==`string`?i.content:a})]}),(0,W.jsx)(bBe,{notification:e})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>n(e=>!e),className:`w-full px-4 py-1.5 flex items-center gap-1.5 text-[11px] font-medium text-slate-400 hover:text-slate-200 bg-slate-900/40 hover:bg-slate-800/60 border-t border-slate-700/40 transition-colors`,children:[t?(0,W.jsx)(pc,{size:12}):(0,W.jsx)(mc,{size:12}),t?`Hide Details`:`Show Details`]}),t?(0,W.jsx)(`div`,{className:`border-t border-slate-700/40 bg-[#0e1116] px-4 py-3`,children:(0,W.jsx)(sq,{value:e})}):null]})}if(r===`model.reasoning`){let e=i.reasoning||i[`model.reasoning`]||o;return(0,W.jsxs)(`div`,{className:`flex flex-col`,children:[f,(0,W.jsxs)(`div`,{className:`min-w-0 break-words p-4 font-mono text-sm text-slate-300 bg-amber-500/5 leading-relaxed whitespace-pre-wrap`,children:[(0,W.jsx)(`span`,{className:`text-amber-500 opacity-60`,children:`// Model reasoning`}),(0,W.jsx)(`br`,{}),typeof e==`string`?e:JSON.stringify(e,null,2)]})]})}if(r===`agent.delegation`){let e=i[`delegation.target_agent`],t=i[`delegation.query`],n=i[`result.status`];return(0,W.jsxs)(W.Fragment,{children:[f,(0,W.jsxs)(`div`,{className:`p-4 border-b border-orange-500/20 bg-orange-500/5`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 mb-2`,children:[(0,W.jsx)(Cc,{size:14,className:`text-orange-500`}),(0,W.jsx)(`span`,{className:`text-sm font-medium text-orange-500`,children:`Delegated to:`}),(0,W.jsxs)(`span`,{className:`text-sm font-semibold text-slate-200`,children:[e||`unknown`,` agent`]}),n?(0,W.jsx)(`span`,{className:`ml-2 px-2 py-0.5 text-[10px] font-bold rounded-sm bg-green-500/20 text-green-500`,children:n.toUpperCase()}):null]}),t?(0,W.jsxs)(`div`,{className:`text-xs text-slate-400 font-mono italic line-clamp-2`,children:[`"`,A2(t),`"`]}):null]})]})}if(r===`agent.async`){let e=i[`async_agent.target_agent`],t=i[`async_agent.query`],n=i[`async_agent.started_by`],r=i.run_id,a=i[`result.status`];return(0,W.jsxs)(W.Fragment,{children:[f,(0,W.jsxs)(`div`,{className:`p-4 border-b border-orange-500/20 bg-orange-500/5`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 mb-2`,children:[(0,W.jsx)(Cc,{size:14,className:`text-orange-500`}),(0,W.jsx)(`span`,{className:`text-sm font-medium text-orange-500`,children:`Async agent started:`}),(0,W.jsxs)(`span`,{className:`text-sm font-semibold text-slate-200`,children:[e||`unknown`,` agent`]}),a?(0,W.jsx)(`span`,{className:`px-2 py-0.5 text-[10px] font-bold rounded-sm bg-orange-500/15 text-orange-400`,children:a.toUpperCase()}):null]}),(0,W.jsxs)(`div`,{className:`mb-2 flex flex-wrap gap-x-3 gap-y-1 font-mono text-[11px] text-slate-500`,children:[(0,W.jsxs)(`span`,{children:[`Started by `,n||`pibo_run_start`]}),r?(0,W.jsx)(`span`,{children:r}):null]}),t?(0,W.jsxs)(`div`,{className:`text-xs text-slate-400 font-mono italic line-clamp-2`,children:[`"`,A2(t),`"`]}):null]})]})}return r===`agent.run`?(0,W.jsx)(`div`,{className:`flex flex-col`,children:f}):(0,W.jsxs)(`div`,{className:`flex flex-col`,children:[f,(0,W.jsx)(`div`,{className:`p-4 font-mono text-sm text-slate-300`,children:(0,W.jsx)(sq,{value:i})})]})});function gBe({forkEntryId:e,linkedPiboSessionId:t,onFork:n,onOpenSession:r}){let i=e&&n?e:void 0,a=t&&r?t:void 0;return!i&&!a?null:(0,W.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[i?(0,W.jsx)(`button`,{type:`button`,onClick:()=>n?.(i),className:`inline-flex h-8 w-8 items-center justify-center rounded-sm border border-slate-700 bg-[#151f24]/80 text-slate-400 transition-colors hover:border-[#11a4d4] hover:text-[#11a4d4]`,title:`Fork user message`,"aria-label":`Fork user message`,children:(0,W.jsx)(Cc,{size:14})}):null,a?(0,W.jsx)(`button`,{type:`button`,onClick:()=>r?.(a),className:`inline-flex h-8 w-8 items-center justify-center rounded-sm border border-slate-700 bg-[#151f24]/80 text-slate-400 transition-colors hover:border-[#11a4d4] hover:text-[#11a4d4]`,title:`Open child session`,"aria-label":`Open child session`,children:(0,W.jsx)(fc,{size:14})}):null]})}function _Be({name:e,args:t}){return(0,W.jsxs)(`code`,{className:`font-mono text-xs text-green-400`,children:[(0,W.jsx)(`span`,{className:`text-purple-400`,children:`def`}),` `,(0,W.jsx)(`span`,{className:`text-yellow-300`,children:e}),(0,W.jsxs)(`span`,{children:[`(`,Object.entries(t).map(([e,t],n)=>(0,W.jsxs)(`span`,{children:[n>0?`, `:null,(0,W.jsx)(`span`,{className:`text-blue-400`,children:e}),`=`,(0,W.jsx)(`span`,{className:`text-green-300`,children:typeof t==`string`?`'${t.slice(0,50)}${t.length>50?`...`:``}'`:A2(t).slice(0,50)})]},e)),`)`]})]})}function vBe({type:e,className:t}){let n={size:14,className:t};switch(e){case`agent.run`:return(0,W.jsx)(zs,{...n});case`tool.call`:return(0,W.jsx)(Ps,{...n});case`tool.result`:return(0,W.jsx)(ks,{...n});case`model.request`:return(0,W.jsx)(Ls,{...n});case`model.response`:return(0,W.jsx)(ks,{...n});case`model.reasoning`:return(0,W.jsx)(jc,{...n});case`agent.delegation`:return(0,W.jsx)(Cc,{...n});case`agent.async`:return(0,W.jsx)(Cc,{...n});case`yielded.run`:return(0,W.jsx)(Ns,{...n});case`user.prompt`:return(0,W.jsx)(Uc,{...n});case`user_input`:return(0,W.jsx)(El,{...n});case`execution.command`:return(0,W.jsx)(Ps,{...n});default:return(0,W.jsx)(Us,{...n})}}function yBe(e,t){return e===`ERROR`?{cardClass:`border-[#ff6b00]/50`,headerClass:`bg-[#ff6b00]/5`,glowClass:``}:e===`OK`?{cardClass:`border-[#0bda57]/30`,headerClass:`bg-[#0bda57]/5`,glowClass:``}:t?{cardClass:`border-[#11a4d4]/50`,headerClass:`bg-[#11a4d4]/5`,glowClass:`shadow-[0_0_10px_rgba(17,164,212,0.1)]`}:{cardClass:`border-slate-700`,headerClass:`bg-[#151f24]`,glowClass:``}}function bBe({notification:e}){let t=[[`completed`,`text-green-500`,e.completed],[`failed`,`text-red-400`,e.failed],[`timed out`,`text-amber-400`,e.timedOut],[`cancelled`,`text-slate-400`,e.cancelled],[`running`,`text-[#11a4d4]`,e.running]].map(([e,t,n])=>({name:e,color:t,runs:Array.isArray(n)?n.filter(k2):[]})).filter(e=>e.runs.length>0);return t.length===0?(0,W.jsx)(`div`,{className:`text-xs text-slate-400`,children:`No yielded run updates.`}):(0,W.jsx)(`div`,{className:`grid gap-2`,children:t.map(e=>(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`mb-1 text-[10px] font-bold uppercase tracking-wider ${e.color}`,children:e.name}),(0,W.jsx)(`div`,{className:`grid gap-1`,children:e.runs.map((t,n)=>(0,W.jsxs)(`div`,{className:`grid grid-cols-[minmax(0,1fr)_auto] gap-2 rounded-sm border border-slate-700/60 bg-[#0e1116]/60 px-2 py-1.5`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`truncate font-mono text-xs text-slate-200`,children:D2(t.toolName)||`yielded tool`}),(0,W.jsx)(`div`,{className:`truncate font-mono text-[10px] text-slate-500`,children:D2(t.runId)})]}),(0,W.jsx)(`div`,{className:`font-mono text-[10px] uppercase text-slate-400`,children:D2(t.status)||e.name})]},`${e.name}-${n}`))})]},e.name))})}function D2(e){return typeof e==`string`?e:``}function O2(e,t){let n=(e-t)/1e3,r=Math.floor(n/6e4),i=Math.floor(n%6e4/1e3),a=Math.floor(n%1e3);return`${String(r).padStart(2,`0`)}:${String(i).padStart(2,`0`)}.${String(a).padStart(3,`0`)}`}function k2(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function A2(e){if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function xBe({entryId:e,onFork:t,className:n=``}){let r=e=>e.stopPropagation();return(0,W.jsx)(`button`,{type:`button`,onClick:n=>{r(n),t(e)},onDoubleClick:r,"aria-label":`Fork from this user message`,title:`Fork from this user message`,"data-pibo-component":`MessageForkButton`,className:`inline-flex h-5 w-5 shrink-0 items-center justify-center rounded-sm text-slate-500 transition-colors hover:bg-slate-700/60 hover:text-[#11a4d4] focus:outline-none focus:ring-1 focus:ring-[#11a4d4] ${n}`,children:(0,W.jsx)(Cc,{size:12})})}function SBe(e){return e.isTreeActive||e.latestTurn?.state===`running`?`running`:e.localStatus===`error`||e.latestTurn?.state===`failed`?`error`:`idle`}function j2(e,t={}){if(!e)return CBe(t);let n=e.latestTurn,r=n?.state===`running`,i=e.isTreeActive||r;return{status:SBe({isTreeActive:i,localStatus:e.localStatus,latestTurn:n}),isTreeActive:i,isTurnActive:r,activeTurnId:r?n.eventId:void 0,activeTurnStartedAt:r?n.startedAt:void 0,latestTurn:n,source:`signals`}}function CBe(e){let t=e.status===`running`&&wBe(e.turnStartedAt);return{status:e.status??`idle`,isTreeActive:e.status===`running`,isTurnActive:t,activeTurnStartedAt:t?e.turnStartedAt:void 0,source:`fallback`}}function wBe(e){return!!(e&&Number.isFinite(Date.parse(e)))}function TBe({signal:e,fallbackStatus:t,fallbackTurnStartedAt:n}){return(0,U.useMemo)(()=>j2(e,{status:t,turnStartedAt:n}),[t,n,e])}function EBe({goal:e}){let t=M2(e),n=e?Kq(e):void 0,[r,i]=(0,U.useState)(()=>Date.now());return(0,U.useEffect)(()=>{if(i(Date.now()),!t||!n)return;let e=window.setInterval(()=>i(Date.now()),1e3);return()=>window.clearInterval(e)},[e?.id,n,t]),(0,W.jsx)(DBe,{goal:e,nowMs:r})}function DBe({goal:e,nowMs:t}){let n=M2(e);if(!e||!n)return null;let r=n===`active`?`Pursuing Goal`:`Goal Paused`,i=n===`active`?`text-fuchsia-400`:`text-amber-300`,a=OBe(e,t),o=n===`active`?N2(e):void 0,s=[r,`Active time ${a}`,o?`Tokens ${o}`:void 0].filter(Boolean).join(`. `);return(0,W.jsxs)(`span`,{className:`ml-auto inline-flex shrink-0 items-center gap-2 font-sans text-sm font-semibold ${i}`,"data-pibo-debug":`session-goal-indicator`,"data-goal-id":e.id,"data-goal-status":n,"aria-label":s,title:`${e.name}: ${e.prompt}`,children:[(0,W.jsx)(xl,{size:17,className:n===`active`?`animate-pulse`:``,"aria-hidden":`true`}),(0,W.jsxs)(`span`,{children:[r,`:`]}),(0,W.jsx)(`span`,{className:`tabular-nums`,children:a}),o?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{"aria-hidden":`true`,children:`·`}),(0,W.jsx)(`span`,{className:`font-mono tabular-nums`,children:o})]}):null]})}function M2(e){if(!e||e.mode!==`goal`)return;let t=e.state.goalStatus??(e.enabled?`active`:`paused`);return t===`active`||t===`paused`?t:void 0}function N2(e){let t=P2(e.state.tokensUsed??0);return e.tokenBudget===void 0?t:`${t} / ${P2(e.tokenBudget)}`}function P2(e){let t=Number.isFinite(e)?Math.max(0,e):0;return t>=1e6?`${(t/1e6).toFixed(1)}M`:`${(t/1e3).toFixed(1)}k`}function OBe(e,t){let n=qq(e,t),r=Math.floor(n/3600),i=Math.floor(n%3600/60),a=n%60;return r>0?`${r}:${String(i).padStart(2,`0`)}:${String(a).padStart(2,`0`)}`:`${i}:${String(a).padStart(2,`0`)}`}function F2(e){if(e==null)return{kind:`empty`};let t=I2(e);return t===void 0?{kind:`json`,value:e}:{kind:`text`,text:t}}function I2(e){if(typeof e==`string`)return e;if(Array.isArray(e)){let t=e.map(I2).filter(e=>e!==void 0);return t.length===e.length&&t.length>0?t.join(``):void 0}if(!L2(e))return;let t=typeof e.type==`string`?e.type:void 0;if(t===`text`&&typeof e.text==`string`)return e.text;if(t===`text`&&typeof e.content==`string`)return e.content;if(t===`output_text`&&typeof e.text==`string`)return e.text;let n=I2(e.content);if(n!==void 0&&kBe(e))return n;let r=L2(e.message)?I2(e.message.content):void 0;if(r!==void 0)return r}function kBe(e){let t=Object.keys(e).filter(t=>e[t]!==void 0);return t.length===1&&t[0]===`content`||t.every(e=>e===`content`||e===`type`)||t.every(e=>e===`content`||e===`details`||e===`type`)?!0:typeof e.type==`string`&&e.type.includes(`text`)}function L2(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function ABe({row:e,onOpenSession:t}){return(0,W.jsx)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-shared-terminal-details":e.kind,children:e.detailItems?.length?(0,W.jsx)(`div`,{className:`space-y-3`,children:e.detailItems.map(e=>(0,W.jsxs)(`div`,{className:`space-y-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px]`,children:[(0,W.jsx)(`span`,{className:`font-semibold text-[#d4d4d4]`,children:e.label}),e.linkedPiboSessionId?(0,W.jsx)(`button`,{type:`button`,onClick:()=>t(e.linkedPiboSessionId),className:`border border-[#3a3a3a] px-2 py-0.5 text-[#38bdf8] hover:border-[#38bdf8]`,children:`Open Session`}):null]}),(0,W.jsx)(z2,{label:`Input`,value:e.input}),(0,W.jsx)(z2,{label:`Output`,value:e.output}),(0,W.jsx)(R2,{refs:e.payloadRefs}),(0,W.jsx)(B2,{value:e.output}),e.error?(0,W.jsx)(H2,{label:`Error`,value:e.error,tone:`red`}):null]},e.id))}):(0,W.jsxs)(`div`,{className:`space-y-3`,children:[(0,W.jsx)(z2,{label:`Input`,value:e.input}),(0,W.jsx)(z2,{label:`Output`,value:e.output}),(0,W.jsx)(R2,{refs:e.payloadRefs}),(0,W.jsx)(B2,{value:e.output}),e.error?(0,W.jsx)(H2,{label:`Error`,value:e.error,tone:`red`}):null,e.linkedPiboSessionId?(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px]`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`Child session`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>t(e.linkedPiboSessionId),className:`border border-[#3a3a3a] px-2 py-0.5 text-[#38bdf8] hover:border-[#38bdf8]`,children:e.linkedPiboSessionId})]}):null]})})}function R2({refs:e}){if(!e)return null;let t=Object.entries(e).filter(e=>!!e[1]);return t.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:t.map(([e,t])=>(0,W.jsx)(jBe,{kind:e,refInfo:t},`${e}:${t.ref}`))}):null}function jBe({kind:e,refInfo:t}){let[n,r]=(0,U.useState)({status:`loading`});return(0,U.useEffect)(()=>{let e=!1;return r({status:`loading`}),Au(t.ref,{offset:0,limit:65536}).then(t=>{e||r({status:`loaded`,data:t.data,hasMore:t.hasMore,nextOffset:t.nextOffset})}).catch(t=>{e||r({status:`error`,message:t instanceof Error?t.message:String(t)})}),()=>{e=!0}},[t.ref]),(0,W.jsxs)(`div`,{className:`space-y-1`,"data-shared-terminal-payload-ref":e,children:[(0,W.jsxs)(`div`,{className:`text-[11px] font-semibold text-[#737373]`,children:[e,` payload (`,Math.ceil(t.byteLength/1024),` KB)`]}),n.status===`loading`?(0,W.jsx)(`div`,{className:`border border-[#2a2a2a] bg-[#0b0b0b] p-2 text-[12px] text-[#737373]`,children:`Loading payload preview...`}):n.status===`error`?(0,W.jsx)(`div`,{className:`border border-[#2a2a2a] bg-[#0b0b0b] p-2 text-[12px] text-[#ef4444]`,children:n.message}):(0,W.jsxs)(`div`,{className:`space-y-1`,children:[(0,W.jsx)(`pre`,{className:`m-0 max-h-[520px] overflow-auto whitespace-pre-wrap break-words border border-[#2a2a2a] bg-[#0b0b0b] p-2 font-mono text-[12px] leading-[1.45] text-[#d4d4d4]`,children:n.data}),n.hasMore?(0,W.jsx)(`div`,{className:`text-[11px] text-[#737373]`,children:`Showing first chunk. More payload data is available on demand.`}):null]})]})}function z2({label:e,value:t}){let n=F2(t);if(n.kind===`empty`)return null;if(n.kind===`text`){let t=U2(n.text);return t?.kind===`json`?(0,W.jsx)(V2,{label:e,value:t.value,meta:t.meta}):t?.kind===`text`?(0,W.jsx)(H2,{label:e,value:t.text}):(0,W.jsx)(H2,{label:e,value:n.text})}return(0,W.jsx)(V2,{label:e,value:n.value})}function B2({value:e}){let t=MBe(e);return t?(0,W.jsxs)(`details`,{className:`space-y-1 border border-[#2a2a2a] bg-[#0b0b0b] p-2`,children:[(0,W.jsxs)(`summary`,{className:`cursor-pointer text-[11px] font-semibold text-[#38bdf8]`,children:[`Show full output (`,t.originalLines,` lines)`]}),t.fullOutput?(0,W.jsx)(`pre`,{className:`mt-2 max-h-[520px] overflow-auto whitespace-pre-wrap break-words font-mono text-[12px] leading-[1.45] text-[#d4d4d4]`,children:t.fullOutput}):t.fullOutputPath?(0,W.jsxs)(`div`,{className:`mt-2 min-w-0 break-words font-mono text-[12px] text-[#d4d4d4]`,children:[`Full output file: `,t.fullOutputPath]}):null]}):null}function MBe(e){if(!K2(e))return;let t=K2(e.details)?e.details.piboBashOutputCompaction:void 0;if(!K2(t)||t.kind!==`validation-output`)return;let n=typeof t.originalLines==`number`?t.originalLines:void 0;if(n!==void 0)return{originalLines:n,fullOutput:typeof t.fullOutput==`string`?t.fullOutput:void 0,fullOutputPath:typeof t.fullOutputPath==`string`?t.fullOutputPath:void 0}}function V2({label:e,value:t,meta:n}){return(0,W.jsxs)(`div`,{className:`space-y-1`,"data-shared-terminal-detail-json":e,children:[(0,W.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-semibold text-[#737373]`,"data-shared-terminal-detail-label":e,children:e}),n?(0,W.jsxs)(`div`,{className:`min-w-0 break-words text-[11px] text-[#737373]`,children:[`Status: `,n]}):null]}),(0,W.jsx)(`div`,{className:`compact-terminal-json border border-[#2a2a2a] bg-[#0b0b0b] p-2`,children:(0,W.jsx)(sq,{value:t,showControls:!1})})]})}function H2({label:e,value:t,tone:n=`default`}){return(0,W.jsxs)(`div`,{className:`space-y-1`,"data-shared-terminal-detail-text":e,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-semibold text-[#737373]`,"data-shared-terminal-detail-label":e,children:e}),(0,W.jsx)(`pre`,{className:`m-0 whitespace-pre-wrap break-words border border-[#2a2a2a] bg-[#0b0b0b] p-2 font-mono text-[12px] leading-[1.45] ${n===`red`?`text-[#ef4444]`:`text-[#d4d4d4]`}`,children:t})]})}function U2(e){let t=e.trim();if(!t)return;let n=G2(t);if(n!==void 0)return W2(n);let r=t.split(/\r?\n/);for(let e=1;e<r.length;e+=1){let t=r.slice(e).join(`
212
- `).trim();if(!t.startsWith(`{`)&&!t.startsWith(`[`))continue;let n=G2(t);if(n!==void 0)return W2(n,r.slice(0,e).join(` `).trim()||void 0)}}function W2(e,t){let n=F2(e);if(n.kind===`text`){let e=U2(n.text);return e?.kind===`json`?{...e,meta:e.meta??t}:{kind:`text`,text:n.text}}return{kind:`json`,value:e,meta:t}}function G2(e){if(!(!e.startsWith(`{`)&&!e.startsWith(`[`)))try{let t=JSON.parse(e);return typeof t==`object`&&t?t:void 0}catch{return}}function K2(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function NBe({name:e,input:t}){return(0,W.jsxs)(`span`,{className:`compact-terminal-function-call`,children:[(0,W.jsx)(`span`,{className:`text-[#facc15] font-semibold`,children:e}),(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:`(`}),t===void 0?null:(0,W.jsx)(PBe,{value:t}),(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:`)`})]})}function PBe({value:e}){let[t,n]=(0,U.useState)(()=>new Set([`$`])),[r,i]=(0,U.useState)(()=>new Set);return(0,W.jsx)(q2,{value:e,path:`$`,expandedPaths:t,expandedStrings:r,onTogglePath:e=>{n(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},onToggleString:e=>{i(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}})}function q2({value:e,path:t,expandedPaths:n,expandedStrings:r,onTogglePath:i,onToggleString:a}){if(Array.isArray(e))return(0,W.jsx)(J2,{value:e,path:t,open:`[`,close:`]`,expandedPaths:n,expandedStrings:r,onTogglePath:i,onToggleString:a});if(LBe(e))return(0,W.jsx)(J2,{value:e,path:t,open:`{`,close:`}`,expandedPaths:n,expandedStrings:r,onTogglePath:i,onToggleString:a});if(typeof e==`string`){let n=r.has(t),i=e.length>140&&!n,o=i?`${e.slice(0,140)}...`:e,s=(0,W.jsx)(`span`,{className:`text-[#fb923c]`,children:JSON.stringify(o)});return!i&&e.length<=140?s:(0,W.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),a(t)},className:`compact-terminal-json-toggle text-left align-baseline`,title:n?`Collapse string`:`Expand string`,"aria-label":`String at ${FBe(t)}`,"aria-expanded":n,children:s})}return typeof e==`number`||typeof e==`boolean`||e===null?(0,W.jsx)(`span`,{className:`text-[#60a5fa]`,children:String(e)}):(0,W.jsx)(`span`,{className:`text-[#737373]`,children:JSON.stringify(String(e))})}function J2({value:e,path:t,open:n,close:r,expandedPaths:i,expandedStrings:a,onTogglePath:o,onToggleString:s}){let c=i.has(t),l=`inline-json-${(0,U.useId)()}`,u=c?Array.isArray(e)?e.map((e,t)=>[String(t),e]):Object.entries(e):[];return(0,W.jsxs)(`span`,{children:[(0,W.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),o(t)},className:`compact-terminal-json-toggle align-baseline text-[#737373]`,title:c?`Collapse JSON`:`Expand JSON`,"aria-label":`JSON at ${t}`,"aria-expanded":c,"aria-controls":l,"data-inline-json-path":t,children:[(0,W.jsx)(`span`,{className:`compact-terminal-json-caret`,children:c?`▾`:`▸`}),n,c?null:`...${r}`]}),(0,W.jsxs)(`span`,{id:l,children:[u.map(([n,r],c)=>{let l=`${t}.${IBe(n)}`;return(0,W.jsxs)(`span`,{children:[c>0?(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`, `}):null,Array.isArray(e)?null:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:JSON.stringify(n)}),(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`:`})]}),(0,W.jsx)(q2,{value:r,path:l,expandedPaths:i,expandedStrings:a,onTogglePath:o,onToggleString:s})]},l)}),c?(0,W.jsx)(`span`,{className:`text-[#737373]`,children:r}):null]})]})}function FBe(e){let t=e.replace(/[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}/gi,`[id]`);return t.length<=80?t:`${t.slice(0,39)}…${t.slice(-39)}`}function IBe(e){return e.replaceAll(`\\`,`\\\\`).replaceAll(`.`,`\\.`)}function LBe(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}var RBe=120;function zBe({line:e,status:t,clampLines:n}){let r=`min-w-0 whitespace-pre-wrap break-words ${n?`block overflow-hidden`:``}`,i=HBe(e.tokens),a=i.length>RBe&&!i.some(e=>e.href);return(0,W.jsxs)(`div`,{className:`grid grid-cols-[1.9rem_minmax(0,1fr)] gap-2 leading-[1.45]`,children:[(0,W.jsx)(`span`,{className:`whitespace-pre ${VBe(e.prefix,t)}`,children:BBe(e.prefix)}),(0,W.jsxs)(`span`,{className:r,style:n?{maxHeight:`${n*1.45}em`}:void 0,children:[a?(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:i.map(e=>e.text).join(``)}):i.map((e,t)=>e.href?(0,W.jsx)(`a`,{href:e.href,target:`_blank`,rel:`noreferrer noopener`,"aria-label":e.ariaLabel,className:`${Y2(e)} underline decoration-[#60a5fa]/40 underline-offset-2 hover:decoration-[#60a5fa] focus:outline-none focus:ring-1 focus:ring-[#38bdf8]`,children:e.text},`${t}:${e.href}:${e.text}`):(0,W.jsx)(`span`,{className:Y2(e),children:e.text},`${t}:${e.text}`)),e.functionCall?(0,W.jsx)(NBe,{name:e.functionCall.name,input:e.functionCall.input}):null]})]})}function BBe(e=`none`){switch(e){case`bullet`:return`•`;case`detail`:return`└`;case`continuation`:return` `;case`prompt`:return`›`;default:return` `}}function VBe(e=`none`,t){if(e===`bullet`){if(t===`running`)return`text-[#38bdf8]`;if(t===`error`)return`text-[#ef4444]`;if(t===`done`)return`text-[#22c55e]`}return`text-[#737373]`}function Y2(e){return`${e.tone===`dim`?`text-[#737373]`:e.tone===`cyan`?`text-[#38bdf8]`:e.tone===`green`?`text-[#22c55e]`:e.tone===`red`?`text-[#ef4444]`:e.tone===`magenta`?`text-[#d946ef]`:e.tone===`yellow`?`text-[#facc15]`:e.tone===`blue`?`text-[#60a5fa]`:e.tone===`amber`?`text-[#f59e0b]`:`text-[#d4d4d4]`} ${e.weight===`bold`?`font-bold`:e.weight===`semibold`?`font-semibold`:`font-normal`} ${e.italic?`italic`:``}`.trim()}function HBe(e){let t=[];for(let n of e){if(!n.text)continue;let e=t.at(-1);if(e&&e.tone===n.tone&&e.weight===n.weight&&e.italic===n.italic&&e.href===n.href&&e.ariaLabel===n.ariaLabel){e.text+=n.text;continue}t.push({...n})}return t}async function UBe(){await fetch(`/api/auth/sign-out`,{method:`POST`,credentials:`same-origin`,headers:{"content-type":`application/json`},body:`{}`})}async function WBe(){let e=location.pathname.startsWith(`/apps/chat`)?`${location.pathname}${location.search}`:`/apps/chat`,t=await fetch(`/api/auth/sign-in/social`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({provider:`google`,callbackURL:e,disableRedirect:!0})}),n=await t.json();if(!t.ok||!n.url)throw Error(n.message||n.error||`Could not start Google sign in.`);location.href=n.url}async function GBe(){return await K(`/api/chat/provider-auth`)}async function X2(e){return(await K(`/api/chat/provider-auth`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e)})).result}async function Z2(e){let t=new URLSearchParams;return e&&t.set(`selectedProfileId`,e),K(`/api/chat/workflows/pickers/profiles${t.size?`?${t.toString()}`:``}`)}async function KBe(e){let t=new URLSearchParams;return e&&t.set(`selectedHandlerId`,e),K(`/api/chat/workflows/pickers/handlers${t.size?`?${t.toString()}`:``}`)}async function qBe(e){let t=new URLSearchParams;return e&&t.set(`selectedRefId`,e),K(`/api/chat/workflows/pickers/guards${t.size?`?${t.toString()}`:``}`)}async function Q2(e){let t=new URLSearchParams;return e&&t.set(`selectedRefId`,e),K(`/api/chat/workflows/pickers/adapters${t.size?`?${t.toString()}`:``}`)}async function $2(e){let t=new URLSearchParams;return e&&t.set(`selectedRefId`,e),K(`/api/chat/workflows/pickers/human-actions${t.size?`?${t.toString()}`:``}`)}async function JBe(e){let t=new URLSearchParams;return e&&t.set(`selectedRefId`,e),K(`/api/chat/workflows/pickers/prompt-assets${t.size?`?${t.toString()}`:``}`)}async function YBe(e){return K(`/api/chat/workflows/prompt-assets/${encodeURIComponent(e)}`)}async function XBe(e){return K(`/api/chat/workflows/prompt-assets`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e)})}async function ZBe(e={}){let t=new URLSearchParams;return e.includeArchived&&t.set(`includeArchived`,`true`),K(`/api/chat/workflows${t.size?`?${t.toString()}`:``}`)}async function QBe(e,t,n={}){let r=new URLSearchParams;n.includeArchived&&r.set(`includeArchived`,`true`);let i=r.size?`?${r.toString()}`:``;return K(`/api/chat/workflows/${encodeURIComponent(e)}/versions/${encodeURIComponent(t)}${i}`)}async function e4(e={}){let t=new URLSearchParams;return e.selectedWorkflowId&&t.set(`selectedWorkflowId`,e.selectedWorkflowId),e.selectedWorkflowVersion&&t.set(`selectedWorkflowVersion`,e.selectedWorkflowVersion),K(`/api/chat/workflows/pickers/workflow-versions${t.size?`?${t.toString()}`:``}`)}async function $Be(e={}){let t=new URLSearchParams;return e.selectedWorkflowId&&t.set(`selectedWorkflowId`,e.selectedWorkflowId),e.selectedWorkflowVersion&&t.set(`selectedWorkflowVersion`,e.selectedWorkflowVersion),K(`/api/chat/workflows/pickers/version-history${t.size?`?${t.toString()}`:``}`)}async function eVe(e,t,n){return K(`/api/chat/projects/${encodeURIComponent(e)}/workflow-sessions/${encodeURIComponent(t)}/human-actions`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(n)})}async function tVe(e){return K(`/api/chat/workflows`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e)})}async function nVe(e){return K(`/api/chat/workflows/drafts/${encodeURIComponent(e)}`)}async function t4(e,t){return K(`/api/chat/workflows/drafts/${encodeURIComponent(e)}`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify(t)})}async function rVe(e,t){return K(`/api/chat/workflows/drafts/${encodeURIComponent(e)}/manual-trigger-runs`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(t)})}async function iVe(e,t={}){return K(`/api/chat/workflows/${encodeURIComponent(e)}/duplicate`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(t)})}function aVe(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=e;return t.action===`show_login_menu`&&Array.isArray(t.providers)}function oVe(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=e;return t.action===`show_model_menu`&&Array.isArray(t.providers)}function n4(e){return sVe(e)?e.result:e}function sVe(e){return!!e&&typeof e==`object`&&!Array.isArray(e)&&e.type===`execution_result`}var cVe={device_code:`Device code`,browser_oauth:`Browser OAuth`,api_key:`API key`};function lVe({row:e,piboSessionId:t}){let n=aVe(e.output)?e.output:void 0,r=(0,U.useMemo)(()=>n?.providers??[],[n?.providers]),[i,a]=(0,U.useState)({type:`select_provider`}),[o,s]=(0,U.useState)(!1),[c,l]=(0,U.useState)(``),[u,d]=(0,U.useState)(``),[f,p]=(0,U.useState)(null),m=(0,U.useRef)(!1),h=(0,U.useCallback)(()=>{a({type:`select_provider`}),l(``),d(``)},[]),g=(0,U.useCallback)(async e=>{try{await navigator.clipboard.writeText(e),p(e),window.setTimeout(()=>p(t=>t===e?null:t),1600)}catch{}},[]),_=(0,U.useCallback)(async(e,n)=>{if(!t){a({type:`error`,provider:e,message:`Select a chat session before starting login.`});return}s(!0),a({type:`device_starting`,provider:e});try{let r=n4(await eu(t,`login.start`,{provider:e.id,method:n})),i=r?.url??r?.flow?.verificationUrl;if(!i){a({type:`error`,provider:e,message:`No login URL returned.`});return}a({type:`device_flow`,provider:e,url:i,flowId:r.flowId??r.state??r.flow?.flowId,completion:r.flow?.completion,userCode:r.userCode??r.flow?.userCode,instructions:r.instructions??r.flow?.instructions})}catch(t){a({type:`error`,provider:e,message:t instanceof Error?t.message:String(t)})}finally{s(!1)}},[t]),v=(0,U.useCallback)(async(e,n,r)=>{if(!(!t||!n)){s(!0);try{let i=n4(await eu(t,`login.complete`,{provider:e.id,flowId:n,...r?{code:r}:{}}));if(i?.state===`pending`)return;if(i?.state===`failed`){a({type:`error`,provider:e,message:`Login failed. Start a new runtime login flow.`});return}a({type:`success`,provider:e,message:`${e.name} login completed for this runtime.`})}catch(t){a({type:`error`,provider:e,message:t instanceof Error?t.message:String(t)})}finally{s(!1)}}},[t]),y=(0,U.useCallback)(async(e,n)=>{if(!t||!n){h();return}s(!0);try{await eu(t,`login.cancel`,{provider:e.id,flowId:n}),h()}catch(t){a({type:`error`,provider:e,message:t instanceof Error?t.message:String(t)})}finally{s(!1)}},[t,h]);(0,U.useEffect)(()=>{if(i.type!==`device_flow`||i.completion!==`notification`||!i.flowId||!t)return;let e=async()=>{if(!(m.current||i.type!==`device_flow`)){m.current=!0;try{let e=n4(await eu(t,`login.complete`,{provider:i.provider.id,flowId:i.flowId}));e?.state===`connected`||e?.state===`partial`?a({type:`success`,provider:i.provider,message:`${i.provider.name} login completed for this runtime.`}):e?.state===`failed`&&a({type:`error`,provider:i.provider,message:`Login failed. Start a new runtime login flow.`})}catch(e){a({type:`error`,provider:i.provider,message:e instanceof Error?e.message:String(e)})}finally{m.current=!1}}},n=window.setInterval(()=>void e(),1500);return()=>window.clearInterval(n)},[t,i]);let b=(0,U.useCallback)(async e=>{if(!t)return;let n=c.trim();if(n){s(!0);try{await eu(t,`login.apikey`,{provider:e.id,apiKey:n}),l(``),a({type:`success`,provider:e,message:`${e.name} API key saved.`})}catch(t){a({type:`error`,provider:e,message:t instanceof Error?t.message:String(t)})}finally{s(!1)}}},[c,t]);return n?(0,W.jsx)(r4,{title:i.type===`select_provider`?`Login`:dVe(i),tone:i.type===`error`?`red`:i.type===`success`?`green`:`cyan`,action:i.type===`select_provider`?void 0:(0,W.jsx)(uVe,{onClick:()=>{i.type===`device_flow`?y(i.provider,i.flowId):h()},disabled:o}),children:i.type===`select_provider`?(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`div`,{className:`text-[11px] text-[#737373]`,children:[`Choose a provider. Use `,(0,W.jsx)(`span`,{className:`text-[#38bdf8]`,children:`/login`}),` anytime.`]}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:r.map(e=>(0,W.jsxs)(`button`,{type:`button`,onClick:()=>a({type:`select_method`,provider:e}),className:`inline-flex items-center gap-1 border border-[#3a3a3a] bg-transparent px-2 py-1 text-[11px] text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8]`,children:[(0,W.jsx)(`span`,{children:e.name}),e.configured?(0,W.jsx)(`span`,{className:`text-[#22c55e]`,children:`●`}):null]},e.id))})]}):i.type===`select_method`?(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px]`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`Provider:`}),(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:i.provider.name}),i.provider.configured?(0,W.jsx)(i4,{tone:`green`,children:`Configured`}):(0,W.jsx)(i4,{tone:`neutral`,children:`Not configured`})]}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:i.provider.authMethods.map(e=>(0,W.jsxs)(`button`,{type:`button`,onClick:()=>e===`api_key`?a({type:`api_key`,provider:i.provider}):void _(i.provider,e),className:`inline-flex items-center gap-1 border border-[#3a3a3a] bg-transparent px-2 py-1 text-[11px] text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8]`,children:[e===`api_key`?(0,W.jsx)(Oc,{size:11}):(0,W.jsx)(Rc,{size:11}),cVe[e]]},e))})]}):i.type===`device_starting`?(0,W.jsxs)(`div`,{className:`inline-flex items-center gap-2 text-[11px] text-[#38bdf8]`,children:[(0,W.jsx)(Ic,{size:13,className:`animate-spin`}),` Starting device login...`]}):i.type===`device_flow`?(0,W.jsxs)(`div`,{className:`grid gap-2 text-[11px]`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`Open:`}),(0,W.jsxs)(`a`,{href:i.url,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-[#38bdf8] hover:underline`,children:[fVe(i.url),` `,(0,W.jsx)(fc,{size:11})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>void g(i.url),className:`inline-flex items-center gap-1 border border-[#3a3a3a] px-1.5 py-0.5 text-[#737373] hover:border-[#38bdf8] hover:text-[#38bdf8]`,children:[f===i.url?(0,W.jsx)(ec,{size:10}):(0,W.jsx)(sc,{size:10}),` `,f===i.url?`Copied`:`Copy`]})]}),i.userCode?(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`Code:`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void g(i.userCode),className:`border border-[#1f4960] px-2 py-0.5 font-semibold tracking-widest text-[#38bdf8] hover:border-[#38bdf8]`,children:i.userCode}),(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`then`}),i.completion===`notification`?(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-[#38bdf8]`,children:[(0,W.jsx)(Ic,{size:11,className:`animate-spin`}),` Waiting for runtime`]}):(0,W.jsxs)(`button`,{type:`button`,disabled:o||!i.flowId,onClick:()=>void v(i.provider,i.flowId),className:`inline-flex items-center gap-1 border border-[#3a3a3a] px-2 py-0.5 text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:opacity-50`,children:[o?(0,W.jsx)(Ic,{size:11,className:`animate-spin`}):(0,W.jsx)(ec,{size:11}),` Complete`]})]}):(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,W.jsx)(`input`,{value:u,autoComplete:`off`,spellCheck:!1,onChange:e=>d(e.target.value),placeholder:`authorization code`,className:`min-w-0 flex-1 border border-[#2a2a2a] bg-[#0b0b0b] px-2 py-1 text-[11px] text-[#d4d4d4] outline-none focus:border-[#38bdf8]`}),(0,W.jsxs)(`button`,{type:`button`,disabled:o||!u.trim()||!i.flowId,onClick:()=>void v(i.provider,i.flowId,u.trim()),className:`inline-flex items-center gap-1 border border-[#3a3a3a] px-2 py-1 text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:opacity-50`,children:[o?(0,W.jsx)(Ic,{size:11,className:`animate-spin`}):(0,W.jsx)(ec,{size:11}),` Complete`]})]}),i.instructions?(0,W.jsx)(`div`,{className:`text-[#737373]`,children:i.instructions}):null]}):i.type===`api_key`?(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5 text-[11px]`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`API key:`}),(0,W.jsx)(`input`,{type:`password`,value:c,autoComplete:`off`,spellCheck:!1,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Enter`&&b(i.provider)},placeholder:`sk-...`,className:`min-w-[12rem] flex-1 border border-[#2a2a2a] bg-[#0b0b0b] px-2 py-1 text-[11px] text-[#d4d4d4] outline-none focus:border-[#38bdf8]`}),(0,W.jsxs)(`button`,{type:`button`,disabled:o||!c.trim(),onClick:()=>void b(i.provider),className:`inline-flex items-center gap-1 border border-[#3a3a3a] px-2 py-1 text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:opacity-50`,children:[o?(0,W.jsx)(Ic,{size:11,className:`animate-spin`}):(0,W.jsx)(ec,{size:11}),` Save`]})]}):i.type===`success`?(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] text-[#22c55e]`,children:[(0,W.jsx)(ec,{size:13}),` `,i.message]}):(0,W.jsxs)(`div`,{className:`flex items-start gap-2 text-[11px] text-[#ef4444]`,children:[(0,W.jsx)(Qs,{size:13,className:`mt-0.5 shrink-0`}),` `,(0,W.jsx)(`span`,{children:i.message})]})}):(0,W.jsx)(r4,{title:`Login`,tone:`red`,children:`Unparseable login payload.`})}function r4({title:e,tone:t,action:n,children:r}){return(0,W.jsxs)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-shared-terminal-card":`login`,children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center gap-2`,children:[(0,W.jsx)(Rc,{size:14,className:t===`red`?`text-[#ef4444]`:t===`green`?`text-[#22c55e]`:`text-[#38bdf8]`}),(0,W.jsx)(`span`,{className:`font-semibold text-[#d4d4d4]`,children:e}),n?(0,W.jsx)(`div`,{className:`ml-auto`,children:n}):null]}),r]})}function uVe({onClick:e,disabled:t}){return(0,W.jsxs)(`button`,{type:`button`,disabled:t,onClick:e,className:`inline-flex items-center gap-1 border border-[#3a3a3a] bg-transparent px-1.5 py-0.5 text-[11px] text-[#737373] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:opacity-50`,children:[(0,W.jsx)(js,{size:10}),` Back`]})}function i4({tone:e,children:t}){return(0,W.jsx)(`span`,{className:`border px-1.5 py-0.5 text-[10px] ${e===`green`?`border-[#14532d] text-[#22c55e]`:`border-[#3a3a3a] text-[#737373]`}`,children:t})}function dVe(e){return`provider`in e&&e.provider?e.provider.name:`Login`}function fVe(e){try{let t=new URL(e);return`${t.host}${t.pathname}`}catch{return e.length>42?`${e.slice(0,39)}...`:e}}function pVe({row:e,piboSessionId:t,onModelChanged:n}){let r=n4(e.output),i=(oVe(r)?r:void 0)?.providers??[],a=(0,U.useMemo)(()=>i.flatMap(e=>e.models.map(t=>({...t,providerLabel:e.label,authConfigured:e.authConfigured}))),[i]),[o,s]=(0,U.useState)(``),[c,l]=(0,U.useState)(null),[u,d]=(0,U.useState)(!1),[f,p]=(0,U.useState)(null),m=(0,U.useMemo)(()=>{let e=o.trim().toLowerCase();return e?a.filter(t=>`${t.providerLabel} ${t.provider} ${t.label} ${t.id}`.toLowerCase().includes(e)):a},[a,o]),h=async e=>{if(!(!t||u||e.authConfigured===!1)){d(!0),l(e),p(null);try{await Xl(t,{activeModel:{provider:e.provider,id:e.id}}),p(`Selected ${e.provider}/${e.id}.`),await n?.()}catch(e){p(e instanceof Error?e.message:String(e))}finally{d(!1)}}};return(0,W.jsxs)(`div`,{className:`ml-[1.9rem] max-w-3xl border border-[#3a3a3a] bg-[#111111] text-[12px] shadow-lg`,"data-shared-terminal-card":`model`,children:[(0,W.jsx)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[#2a2a2a] px-3 py-2`,children:(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[#d4d4d4]`,children:`Model`}),(0,W.jsx)(`div`,{className:`text-[11px] text-[#737373]`,children:`Choose a model exposed by the active runtime.`})]})}),(0,W.jsxs)(`div`,{className:`space-y-2 p-3`,children:[i.length?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`label`,{className:`flex items-center gap-2 border border-[#2a2a2a] bg-[#0b0b0b] px-2 py-1 text-[#737373]`,children:[(0,W.jsx)(ul,{size:13}),(0,W.jsx)(`input`,{value:o,onChange:e=>s(e.target.value),placeholder:`Search models`,className:`min-w-0 flex-1 bg-transparent text-[#d4d4d4] outline-none placeholder:text-[#525252]`})]}),(0,W.jsx)(`div`,{className:`max-h-72 overflow-auto border border-[#2a2a2a]`,children:m.length?m.map(e=>(0,W.jsxs)(`button`,{type:`button`,disabled:u||e.authConfigured===!1,onClick:()=>void h(e),className:`grid w-full grid-cols-[150px_1fr_auto] gap-2 border-b border-[#1f1f1f] px-3 py-2 text-left hover:bg-[#38bdf8]/10 disabled:cursor-not-allowed disabled:opacity-50`,children:[(0,W.jsx)(`span`,{className:`truncate text-[#737373]`,children:e.providerLabel}),(0,W.jsxs)(`span`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-[#d4d4d4]`,children:e.label}),(0,W.jsxs)(`span`,{className:`block truncate text-[11px] text-[#737373]`,children:[e.provider,`/`,e.id]})]}),e.authConfigured===!1?(0,W.jsx)(Rc,{size:13,className:`text-[#737373]`,"aria-label":`Provider authentication missing`}):c?.provider===e.provider&&c?.id===e.id?(0,W.jsx)(Us,{size:14,className:`text-[#22c55e]`}):null]},`${e.provider}:${e.id}`)):(0,W.jsx)(`div`,{className:`px-3 py-2 text-[#737373]`,children:`No matching models.`})})]}):(0,W.jsx)(`div`,{className:`text-[#737373]`,children:`No models are available for the active runtime.`}),f?(0,W.jsx)(`div`,{className:`text-[11px] text-[#a3a3a3]`,children:f}):null]})]})}function mVe(e={}){let t=[],n=[],r=s4(e.warnings),i=s4(e.errors);(e.session?.id||e.session?.title)&&t.push({id:`session`,label:`Session`,value:a4([e.session?.title,e.session?.id].filter(Boolean).join(` | `))}),e.session?.profile&&t.push({id:`profile`,label:`Profile`,value:a4(e.session.profile)}),e.session?.status&&t.push({id:`session-status`,label:`Session status`,value:a4(e.session.status),tone:e.session.status===`error`||e.session.status===`disposed`?`red`:`neutral`}),(e.model?.provider||e.model?.id||e.model?.label)&&t.push({id:`model`,label:`Model`,value:a4(e.model.label??[e.model.provider,e.model.id].filter(Boolean).join(`/`))}),e.runtime?.state&&t.push({id:`runtime`,label:`Runtime`,value:a4(e.runtime.state),tone:e.runtime.connected===!1||e.runtime.disposed?`red`:`green`}),e.runtime?.disposed!==void 0&&t.push({id:`disposed`,label:`Disposed`,value:e.runtime.disposed?`yes`:`no`,tone:e.runtime.disposed?`red`:`neutral`}),typeof e.runtime?.queuedMessages==`number`&&t.push({id:`queue`,label:`Queue`,value:String(e.runtime.queuedMessages)}),e.runtime?.processing!==void 0&&t.push({id:`processing`,label:`Processing`,value:e.runtime.processing?`yes`:`no`,tone:e.runtime.processing?`cyan`:`neutral`}),e.runtime?.streaming!==void 0&&t.push({id:`streaming`,label:`Streaming`,value:e.runtime.streaming?`yes`:`no`,tone:e.runtime.streaming?`cyan`:`neutral`}),e.cwd&&t.push({id:`cwd`,label:`CWD`,value:a4(e.cwd)});let a=typeof e.thinking==`string`?{level:e.thinking}:e.thinking;(a?.level||a?.supported!==void 0)&&t.push({id:`thinking`,label:`Thinking`,value:a4(a.level??(a.supported===!1?`unsupported`:`available`)),tone:a.supported===!1?`red`:`yellow`}),e.fastMode!==void 0&&t.push({id:`fast-mode`,label:`Fast mode`,value:typeof e.fastMode==`string`?a4(e.fastMode):e.fastMode?`on`:`off`,tone:e.fastMode?`green`:`neutral`});let o=s4(e.tools?.enabled),s=s4(e.tools?.active);o.length&&t.push({id:`enabled-tools`,label:`Enabled tools`,value:`${o.length}${o.length<=4?` (${o.join(`, `)})`:``}`}),s.length&&t.push({id:`active-tools`,label:`Active tools`,value:`${s.length}${s.length<=4?` (${s.join(`, `)})`:``}`,tone:`cyan`}),e.providerUsage?.planType&&t.push({id:`provider-plan`,label:`Provider plan`,value:a4(e.providerUsage.planType)}),e.providerUsage?.credits&&t.push({id:`provider-credits`,label:`Credits`,value:e.providerUsage.credits.unlimited?`unlimited`:a4(e.providerUsage.credits.balance??`available`)}),e.message&&t.push({id:`message`,label:`Message`,value:a4(e.message)}),n.push(hVe(e.contextUsage));for(let t of gVe(e.providerUsage))n.push(t);return{kind:`status`,title:`Status`,fields:t,progress:n,warnings:r,errors:i}}function a4(e){return e.replace(/\b([A-Z0-9_]*(?:API[_-]?KEY|TOKEN|SECRET|PASSWORD)[A-Z0-9_]*)\s*=\s*([^\s]+)/gi,`$1=[redacted]`).replace(/\b(api[_-]?key|token|secret|password)\s*[:=]\s*([^\s]+)/gi,`$1=[redacted]`).replace(/\b(?:sk|pk|pibo|ghp|github_pat)_[A-Za-z0-9_\-]{8,}\b/g,`[redacted]`)}function hVe(e){if(!e||e.tokens===void 0&&e.contextWindow===void 0&&e.percent===void 0)return{id:`context`,label:`Context`,state:`unavailable`,text:`Context usage unavailable`,tone:`neutral`};let t=o4(e.percent??(e.tokens!==void 0&&e.contextWindow?e.tokens/e.contextWindow*100:void 0));return{id:`context`,label:`Context`,state:t===void 0?`unavailable`:`available`,value:e.tokens,max:e.contextWindow,percent:t,text:t===void 0?`Context usage unavailable`:`${e.tokens??`?`}/${e.contextWindow??`?`} tokens (${t.toFixed(1)}%)`,tone:_Ve(t)}}function gVe(e){return e?.limits?.length?e.limits.map((t,n)=>{let r=o4(t.usedPercent),i=o4(t.remainingPercent??(r===void 0?void 0:100-r)),a=e.provider?`${e.provider} `:``,o=[i===void 0?void 0:`${i.toFixed(1)}% remaining`,t.resetsAt?`resets ${a4(t.resetsAt)}`:void 0].filter(Boolean).join(`, `);return{id:`provider-${n}`,label:`${a}${t.label??`quota`}`.trim(),state:i===void 0?`unavailable`:`available`,percent:i,text:i===void 0?`Provider usage unavailable`:o,tone:vVe(i)}}):[{id:`provider`,label:`Provider quota`,state:`unavailable`,text:`Provider usage unavailable`,tone:`neutral`}]}function o4(e){if(!(typeof e!=`number`||!Number.isFinite(e)))return Math.max(0,Math.min(100,e))}function _Ve(e){return e===void 0?`neutral`:e>=80?`red`:e>=50?`yellow`:`green`}function vVe(e){return e===void 0?`neutral`:e<=20?`red`:e<=50?`yellow`:`green`}function s4(e){return(e??[]).map(e=>a4(e)).filter(e=>e.length>0)}function c4(e){switch(e.kind){case`tool.status`:return yVe(e);case`tool.thinking`:return bVe(e);case`tool.model`:return xVe(e);case`tool.login`:return SVe(e);case`tool.call`:case`tool.image`:case`tool.group.exploring`:case`tool.group.images`:return CVe(e);case`yielded.run`:return l4(e,`yielded-run`,`Yielded run`,e.status===`error`?`red`:e.status===`running`?`cyan`:`green`);case`execution.compaction`:return l4(e,`compaction`,e.status===`error`?`Compaction failed`:e.status===`running`?`Compacting`:`Compaction`,e.status===`error`?`red`:`magenta`);case`execution.command`:return l4(e,`command`,`Command`,e.status===`error`?`red`:`yellow`);case`error`:return l4(e,`error`,`Error`,`red`);default:return}}function yVe(e){let t=u4(e.output),n=d4(t,`activeModel`)??d4(t,`model`),r=mVe({session:{id:m4(t,`piboSessionId`)??m4(t,`sessionId`),title:m4(t,`sessionTitle`)??m4(t,`title`),profile:m4(t,`profile`)??m4(t,`activeAgentId`)??m4(t,`agentId`),status:h4(t,`disposed`)?`disposed`:m4(t,`sessionStatus`)},model:n?{provider:m4(n,`provider`),id:m4(n,`id`),label:m4(n,`label`)}:void 0,runtime:{state:h4(t,`disposed`)?`disposed`:h4(t,`processing`)?`processing`:h4(t,`streaming`)?`streaming`:m4(t,`mode`)??`idle`,connected:h4(t,`connected`),queuedMessages:TVe(t,`queuedMessages`),processing:h4(t,`processing`),streaming:h4(t,`streaming`),disposed:h4(t,`disposed`)},cwd:m4(t,`cwd`),contextUsage:d4(t,`contextUsage`),providerUsage:d4(t,`providerUsage`),tools:{enabled:p4(t,`enabledTools`),active:p4(t,`activeTools`)},thinking:m4(t,`thinkingLevel`)?{level:m4(t,`thinkingLevel`)}:void 0,fastMode:h4(t,`fastMode`),warnings:p4(t,`warnings`),errors:p4(t,`errors`),message:m4(t,`message`)});return{id:e.id,kind:`status`,title:`Status`,status:e.status,tone:e.status===`error`?`red`:`green`,rows:r.fields.map(e=>({label:e.label,value:e.value,tone:e.tone})),statusView:r,sourceRowKind:e.kind}}function bVe(e){let t=u4(e.output),n=m4(t,`level`)??`unknown`,r=t?.supported!==!1,i=p4(t,`availableLevels`);return{id:e.id,kind:`thinking`,title:`Thinking`,status:e.status,tone:r?`yellow`:`red`,rows:[{label:`Current`,value:a4(n)},{label:`Supported`,value:r?`yes`:`no`,tone:r?`green`:`red`}],actions:i.map(e=>({id:`thinking:${e}`,label:e,action:`thinking.set`,value:e,disabled:!r})),sourceRowKind:e.kind}}function xVe(e){let t=f4(u4(e.output),`providers`),n=t.flatMap(e=>{let t=m4(e,`id`)??m4(e,`provider`)??`provider`,n=m4(e,`label`)??m4(e,`name`)??t;return f4(e,`models`).map(e=>{let r=m4(e,`id`)??`model`,i=m4(e,`label`)??r;return{id:`model:${t}:${r}`,label:`${n} / ${i}`,action:`model.select`,value:`${t}/${r}`}})});return{id:e.id,kind:`model`,title:`Model`,status:e.status,tone:n.length?`cyan`:`neutral`,rows:[{label:`Providers`,value:String(t.length)},{label:`Models`,value:String(n.length)}],actions:n,sourceRowKind:e.kind}}function SVe(e){let t=f4(u4(e.output),`providers`),n=t.map(e=>{let t=m4(e,`id`)??`provider`;return{id:`login:${t}`,label:m4(e,`name`)??m4(e,`label`)??t,action:`login.selectProvider`,value:t,description:p4(e,`authMethods`).join(`, `)}});return{id:e.id,kind:`login`,title:`Login`,status:e.status,tone:n.length?`cyan`:`neutral`,rows:[{label:`Providers`,value:String(t.length)}],actions:n,sourceRowKind:e.kind}}function CVe(e){return l4(e,`tool`,e.kind===`tool.group.exploring`?`Exploring`:e.kind===`tool.image`||e.kind===`tool.group.images`?`Image`:`Tool`,e.status===`error`?`red`:e.status===`running`?`cyan`:`green`)}function l4(e,t,n,r){let i=e.lines.flatMap(e=>{let t=`${e.tokens.map(e=>e.text).join(``)}${e.functionCall?`${e.functionCall.name}${e.functionCall.input===void 0?``:` ${wVe(e.functionCall.input)}`}`:``}`.trim();return t?[{value:a4(t)}]:[]}),a=e.lines.length===0&&typeof e.output==`string`&&e.output.trim()?[{value:a4(e.output.trim())}]:[],o=[e.error?{label:`Error`,value:a4(e.error),tone:`red`}:void 0].filter(e=>!!e);return{id:e.id,kind:t,title:n,status:e.status,tone:r,rows:[...i,...a,...o],sourceRowKind:e.kind}}function wVe(e){try{return JSON.stringify(e)}catch{return String(e)}}function u4(e){if(e){if(typeof e==`string`)try{let t=JSON.parse(e);return t&&typeof t==`object`&&!Array.isArray(t)?t:void 0}catch{return}return typeof e==`object`&&!Array.isArray(e)?e:void 0}}function d4(e,t){let n=e?.[t];return n&&typeof n==`object`&&!Array.isArray(n)?n:void 0}function f4(e,t){let n=e?.[t];return Array.isArray(n)?n.filter(e=>!!e&&typeof e==`object`&&!Array.isArray(e)):[]}function p4(e,t){let n=e?.[t];return Array.isArray(n)?n.filter(e=>typeof e==`string`):[]}function m4(e,t){let n=e?.[t];return typeof n==`string`?n:void 0}function TVe(e,t){let n=e?.[t];return typeof n==`number`&&Number.isFinite(n)?n:void 0}function h4(e,t){let n=e?.[t];return typeof n==`boolean`?n:void 0}var EVe={browser_use_open_tabs:`browser_use.open_tabs`,browser_use_take_screenshot:`browser_use.take_screenshot`,browser_use_browser_use:`browser_use.browser_use`,node_repl_js:`node_repl.js`,node_repl_js_reset:`node_repl.js_reset`};function DVe(e,t){if(!e)return[];let n=v4(e.nodes),r=oHe(y4(e.nodes).sort((e,t)=>GX(e.node,t.node)).filter(e=>e.node.type!==`agent.turn`&&(t.showThinking||e.node.type!==`model.reasoning`)).map(e=>AVe(e.node,e.turnId)));PVe(r,n);let i=MVe(r);return OVe((t.toolDisplayMode??`default`)==="default"?lHe(i).map(e=>e.row):i.map(e=>e.row),t.toolDisplayMode??`default`)}function OVe(e,t){return t==="default"?e:t===`hide`?e.filter(e=>!g4(e)):e.flatMap(e=>{if(!g4(e))return[e];let n=e.intent?.trim();if(t===`intent`&&!n)return[];let r={...e,lines:e.lines.slice(0,1),input:void 0,output:void 0,error:void 0,markdown:void 0,expandable:!1,singleLine:!0,previewOmission:void 0,detailItems:void 0};return t===`intent`?[{...r,title:void 0,summary:void 0,lines:[{prefix:`bullet`,tokens:[V4(n,e.status===`error`?`red`:e.status===`done`?`green`:`cyan`,`semibold`)]}]}]:[r]})}function g4(e){return e.sourceNodeIds.some(e=>QX(e)!==void 0)||e.id.startsWith(`terminal:tool:`)||e.kind===`tool.call`||e.kind===`tool.image`||e.kind===`tool.group.exploring`||e.kind===`tool.group.images`||e.kind===`agent.delegation`}function kVe(e){if(!e)return;let t=new Set(y4(e.nodes).map(({node:e})=>e).filter(e=>e.type===`error`&&e.eventId).map(e=>e.eventId));return[...v4(e.nodes).values()].filter(e=>e.startedAt&&!e.completedAt&&(!e.eventId||!t.has(e.eventId))).sort(GX).at(-1)?.startedAt}function _4(e){let t=Math.max(0,Math.floor(e/1e3));return[Math.floor(t/3600),Math.floor(t%3600/60),t%60].map(e=>String(e).padStart(2,`0`)).join(`:`)}function v4(e){let t=new Map;for(let n of e){n.type===`agent.turn`&&t.set(n.id,n);for(let[e,r]of v4(n.children))t.set(e,r)}return t}function y4(e,t){let n=[];for(let r of e)r.type!==`agent.turn`&&n.push({node:r,turnId:t}),n.push(...y4(r.children,r.type===`agent.turn`?r.id:t));return n}function AVe(e,t){let n;switch(e.type){case`user.message`:n={row:LVe(e),turnId:t};break;case`assistant.message`:n={row:RVe(e),turnId:t};break;case`model.reasoning`:n={row:zVe(e),turnId:t};break;case`tool.call`:n=BVe(e,t);break;case`tool.result`:n=HVe(e,t);break;case`agent.delegation`:n={row:WVe(e),turnId:t};break;case`agent.async`:n={row:GVe(e),turnId:t};break;case`yielded.run`:n={row:KVe(e),turnId:t};break;case`execution.command`:n={row:JVe(e),turnId:t};break;case`execution.compaction`:n={row:qVe(e),turnId:t};break;case`error`:n={row:iHe(e),turnId:t};break;case`agent.turn`:n={row:{id:e.id,kind:`error`,status:`neutral`,lines:[],sourceNodeIds:[e.id]},turnId:t}}return{...n,row:{...n.row,id:jVe(e),intent:e.intent,...IVe(e)}}}function jVe(e){if(e.type===`tool.call`||e.type===`tool.result`||e.type===`agent.delegation`){if(e.toolCallId)return QX(e.id)?.qualifier?`terminal:${e.id}`:`terminal:tool:${e.toolCallId}`;if(e.type===`agent.delegation`&&e.linkedPiboSessionId)return`terminal:delegation:${e.linkedPiboSessionId}`}if((e.type===`agent.async`||e.type===`yielded.run`)&&e.runId)return`terminal:run:${e.runId}`;if(e.type===`assistant.message`){let t=b4(e.stableKey,`assistant:`);if(t)return`terminal:assistant:${t}`}if(e.type===`model.reasoning`){let t=b4(e.stableKey,`reasoning:`);if(t)return`terminal:reasoning:${t}`}return e.id}function b4(e,t){if(!e?.startsWith(t))return;let n=e.slice(t.length);return n&&n!==`undefined`?n:void 0}function MVe(e){let t=[],n=new Map;for(let r of e){let e=n.get(r.row.id);if(e===void 0){n.set(r.row.id,t.length),t.push(r);continue}let i=t[e];t[e]={...r,turnId:r.turnId??i.turnId,row:{...i.row,...r.row,sourceNodeIds:[...new Set([...i.row.sourceNodeIds,...r.row.sourceNodeIds])],intent:r.row.intent??i.row.intent,input:r.row.input??i.row.input,output:r.row.output??i.row.output,error:r.row.error??i.row.error,payloadRefs:{...i.row.payloadRefs,...r.row.payloadRefs},imagePreviews:NVe(i.row.imagePreviews,r.row.imagePreviews)}}}return t}function NVe(e,t){if(!e?.length)return t?.slice(0,20);if(!t?.length)return e.slice(0,20);let n=new Map(e.map(e=>[e.id,e]));for(let e of t)if(n.set(e.id,{...n.get(e.id),...e}),n.size>=20)break;return[...n.values()]}function PVe(e,t){for(let n of t.values()){if(!n.completedAt)continue;let t=e.filter(e=>e.turnId===n.id).at(-1);t?.row.kind===`message.assistant`&&t.row.status!==`running`&&(t.row.startedAt=n.startedAt,t.row.completedAt=n.completedAt,t.row.durationMs=n.durationMs??FVe(n.startedAt,n.completedAt))}}function FVe(e,t){if(!e||!t)return;let n=new Date(e).getTime(),r=new Date(t).getTime();return Number.isFinite(n)&&Number.isFinite(r)?Math.max(0,r-n):void 0}function IVe(e){return{eventId:e.eventId,runId:e.runId,orderSource:e.source,orderStreamId:e.orderKey?.streamId,orderStreamFrameIndex:e.orderKey?.streamFrameIndex,payloadRefs:e.payloadRefs}}function LVe(e){let t=H4(e.output)||H4(e.summary)||e.title;return{id:e.id,kind:`message.user`,status:z4(e.status),lines:[{prefix:`prompt`,tokens:[V4(t)]}],sourceNodeIds:[e.id],forkEntryId:e.entryId,pendingMessageDelivery:MHe(e),startedAt:e.startedAt,output:t,payloadRefs:e.payloadRefs}}function RVe(e){return{id:e.id,kind:`message.assistant`,status:z4(e.status),lines:[],sourceNodeIds:[e.id],startedAt:e.startedAt,completedAt:e.source===`transcript`||e.source===`product-history`?e.completedAt:void 0,durationMs:e.source===`transcript`||e.source===`product-history`?e.durationMs:void 0,output:H4(e.output)||H4(e.summary)||``,error:e.error,payloadRefs:e.payloadRefs}}function zVe(e){let t=P4(e.output??e.summary);return{id:e.id,kind:`reasoning`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(e.status===`running`?`Thinking`:`Thought`,`amber`,`semibold`)]}],sourceNodeIds:[e.id],markdown:t,payloadRefs:e.payloadRefs}}function BVe(e,t){let n=R4(e.input);if(n&&yHe(e.title))return{row:rHe(e,n),turnId:t,exploring:void 0};if(bHe(e.title))return{row:VVe(e),turnId:t};let r=w4(e);if(r)return{row:x4(e,r),turnId:t,image:r.groupable?r.detail:void 0};let i=M4(e.error??e.output,5,e.error?`red`:`dim`);return{row:{id:e.id,kind:`tool.call`,status:z4(e.status),errorKind:e.status===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(AHe(e.status),B4(e.status),`semibold`),V4(` `)],functionCall:{name:D4(e.title),input:e.input}},...i.lines],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error,previewOmission:N4(i,e.error?`error`:`output`)},turnId:t,exploring:vHe(e)}}function VVe(e){let t=z4(e.status),n=SHe(e),r=CHe(e),i=wHe(e),a=THe(e),o=EHe(e),s=DHe(e.output),c=OHe(e.output),l=[{prefix:`bullet`,tokens:[V4(xHe(e.status,n),B4(e.status),e.status===`error`?`bold`:`semibold`)]}];r?l.push({prefix:`detail`,tokens:[V4(`query: ${JSON.stringify(r)}`,`cyan`)]}):i?.length&&l.push({prefix:`detail`,tokens:[V4(`queries: ${JSON.stringify(i)}`,`cyan`)]}),a&&l.push({prefix:`detail`,tokens:[V4(`page: `,`dim`),L4(a,`Open web page: ${a}`)]}),o&&l.push({prefix:`detail`,tokens:[V4(`find: ${JSON.stringify(o)}`,`cyan`)]}),e.status===`done`&&c!==void 0&&l.push({prefix:`detail`,tokens:[V4(`sources: ${c}`,`dim`)]});let u=s.slice(0,3);for(let e of u)l.push({prefix:`detail`,tokens:[...e.title?[V4(`${e.title}: `,`dim`)]:[],L4(e.url,`Open source: ${e.title??e.url}`)]});let d=Math.max(0,(c??s.length)-u.length);return u.length>0&&d>0&&l.push({prefix:`detail`,tokens:[V4(`+${d} more sources`,`dim`)]}),e.status===`error`&&e.error&&l.push({prefix:`detail`,tokens:[V4(e.error,`red`)]}),{id:e.id,kind:`tool.call`,status:t,errorKind:e.status===`error`?`tool`:void 0,lines:l,sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error}}function x4(e,t){let n=z4(e.status),r=t.path?`Path: ${t.path}`:t.artifactId?`Artifact: ${t.artifactId}`:t.query?`Query: ${t.query}`:t.mimeType?`Type: ${t.mimeType}`:`Image content returned`;return{id:e.id,kind:`tool.image`,status:n,errorKind:e.status===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(t.verb,B4(e.status),`semibold`)]},{prefix:`detail`,tokens:[V4(r,e.status===`error`?`red`:`cyan`)]}],sourceNodeIds:[e.id],input:E4(e.input),output:t.summary,error:e.error,expandable:e.input!==void 0||t.summary!==void 0||!!e.error,imagePreviews:t.previews}}function HVe(e,t){let n=w4(e);return n?{row:x4(e,n),turnId:t,image:n.groupable?n.detail:void 0}:{row:UVe(e),turnId:t}}function UVe(e){let t=M4(e.error??e.output,5,e.error?`red`:`dim`);return{id:e.id,kind:`tool.call`,status:z4(e.status),errorKind:e.status===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(e.status===`error`?`Tool failed`:`Returned`,B4(e.status),`semibold`),V4(` ${D4(e.title)}`)]},...t.lines],sourceNodeIds:[e.id],output:e.output,error:e.error,expandable:e.output!==void 0||!!e.error,previewOmission:N4(t,e.error?`error`:`output`)}}function WVe(e){let t=H4(U4(e.input)?e.input.subagentName:void 0)||e.summary||e.title,n=F4((U4(e.input)?e.input.arguments:void 0)??e.input),r=n?[{prefix:`detail`,tokens:[V4(n,`dim`)]}]:[];return{id:e.id,kind:`agent.delegation`,status:z4(e.status),errorKind:e.status===`error`?`tool`:void 0,title:e.title,summary:e.summary,lines:[{prefix:`bullet`,tokens:[V4(jHe(e.status),B4(e.status),`semibold`),V4(` ${t}`,`cyan`)]},...r],sourceNodeIds:[e.id],linkedPiboSessionId:e.linkedPiboSessionId,startedAt:e.startedAt,completedAt:e.completedAt,durationMs:e.durationMs,input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error}}function GVe(e){let t=M4(e.error??e.output,5,e.error?`red`:`dim`);return{id:e.id,kind:`agent.async`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(NHe(e.status),B4(e.status),`semibold`),V4(` ${e.title}`,`cyan`)]},...t.lines],sourceNodeIds:[e.id],linkedPiboSessionId:e.linkedPiboSessionId,input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error,previewOmission:N4(t,e.error?`error`:`output`)}}function KVe(e){let t=M4(e.output,5);return{id:e.id,kind:`yielded.run`,status:z4(e.status),errorKind:e.status===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(e.status===`running`?`Waiting on runs`:`Run update`,B4(e.status),`semibold`),V4(e.summary?` ${e.summary}`:``)]},...t.lines],sourceNodeIds:[e.id],output:e.output,error:e.error,expandable:e.output!==void 0||!!e.error,previewOmission:N4(t,`output`)}}function qVe(e){let t=e.status===`running`?`Compacting`:e.status===`error`?`Compaction failed`:H4(e.summary)||`Compacted`;return{id:e.id,kind:`execution.compaction`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(t,B4(e.status),e.status===`error`?`bold`:`semibold`)]}],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error}}function JVe(e){if(e.title===`status`)return YVe(e);if(e.title===`thinking`)return cHe(e.output)?ZVe(e):XVe(e);if(e.title===`fast_mode`)return QVe(e);if(e.title===`login`&&tHe(e.output))return $Ve(e);if(e.title===`model`&&nHe(e.output))return eHe(e);R4(e.output)??R4(e.input)??e.title;let t=M4(e.error??e.output,5,e.error?`red`:`dim`,180);return{id:e.id,kind:`execution.command`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(`Command`,`yellow`,`semibold`),V4(` /${e.title}`,`yellow`)]},...t.lines],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error,previewOmission:N4(t,e.error?`error`:`output`)}}function YVe(e){return{id:e.id,kind:`tool.status`,status:z4(e.status),lines:[],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function XVe(e){return{id:e.id,kind:`tool.thinking`,status:z4(e.status),lines:[],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function ZVe(e){let t=U4(e.output)?e.output:void 0,n=H4(t?.level),r=t?.changed!==!1,i=t?.supported!==!1,a=i?n?r?`Thinking level set to ${n}.`:`Thinking level is already ${n}.`:`Thinking level updated.`:`Thinking level is not supported by this model.`;return{id:e.id,kind:`execution.command`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(a,i?`green`:`dim`,`semibold`)]}],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function QVe(e){let t=U4(e.output)?e.output:void 0,n=t?.mode===`fast`?`fast`:t?.mode===`normal`?`normal`:void 0,r=t?.changed!==!1,i=t?.supported!==!1,a=i?n===`fast`?r?`Switched to Fast mode.`:`Fast mode is already on.`:n===`normal`?r?`Switched to Normal mode.`:`Normal mode is already on.`:`Fast mode updated.`:`Fast mode is not supported by this model.`;return{id:e.id,kind:`execution.command`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(a,i?`green`:`dim`,`semibold`)]}],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function $Ve(e){return{id:e.id,kind:`tool.login`,status:z4(e.status),lines:[],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function eHe(e){return{id:e.id,kind:`tool.model`,status:z4(e.status),lines:[],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function tHe(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return t.action===`show_login_menu`&&Array.isArray(t.providers)}function nHe(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return t.action===`show_model_menu`&&Array.isArray(t.providers)}function rHe(e,t){let n=M4(e.error??e.output,5,e.error?`red`:`dim`,180);return{id:e.id,kind:`execution.command`,status:z4(e.status),errorKind:e.status===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(e.status===`running`?`Running`:`Ran`,B4(e.status),`semibold`),V4(` `),...kHe(t)]},...n.lines],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error,previewOmission:N4(n,e.error?`error`:`output`)}}function iHe(e){return{id:e.id,kind:`error`,status:`error`,errorKind:`system`,lines:[{prefix:`bullet`,tokens:[V4(e.title||`Error`,`red`,`bold`),V4(e.error?` ${e.error}`:``,`red`)]},...aHe(e.input)],sourceNodeIds:[e.id],input:e.input,error:e.error,output:e.output,expandable:e.input!==void 0||e.output!==void 0||!!e.error}}function aHe(e){return U4(e)?[[`Class`,H4(e.errorClass)??H4(e.category)],[`Code`,H4(e.code)??H4(e.providerCode)],[`Origin`,H4(e.origin)],[`Provider`,[H4(e.api),H4(e.provider),H4(e.model)].filter(Boolean).join(` / `)||void 0],[`Retryable`,typeof e.retryable==`boolean`?e.retryable?`yes`:`no`:void 0]].filter(e=>typeof e[1]==`string`&&e[1].length>0).map(([e,t],n)=>({prefix:n===0?`detail`:`continuation`,tokens:[V4(`${e}: `,`dim`),V4(t,`red`)]})):[]}function oHe(e){let t=e.map(e=>e.row.output).filter(sHe).at(-1);return t?e.map(e=>e.row.kind!==`tool.thinking`||!U4(e.row.output)?e:{...e,row:{...e.row,output:{...e.row.output,level:t.level,availableLevels:t.availableLevels,supported:t.supported}}}):[...e]}function sHe(e){return U4(e)&&typeof e.level==`string`&&Array.isArray(e.availableLevels)}function cHe(e){return U4(e)&&e.action===`set_thinking_level`}function lHe(e){let t=[];for(let n=0;n<e.length;n+=1){let r=e[n],i=S4(r);if(!i){t.push(r);continue}let a=[r],o=n+1;for(;o<e.length&&S4(e[o])===i&&e[o].turnId===r.turnId;)a.push(e[o]),o+=1;if(a.length===1){t.push(r);continue}t.push({row:i===`images`?dHe(a):uHe(a),turnId:r.turnId}),n=o-1}return t}function S4(e){if(e.image)return`images`;if(e.exploring)return`exploring`}function uHe(e){let t=C4(e,`exploring`),n=t.slice(0,6),r=Math.max(0,t.length-n.length),i=e[0]?.row,a=i?.id??`exploring`,o=e[e.length-1]?.row.id??a,s=e.some(e=>e.row.status===`running`)?`running`:e.some(e=>e.row.status===`error`)?`error`:`done`;return{id:`group:exploring:${a}:${o}`,kind:`tool.group.exploring`,status:s,errorKind:s===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(s===`running`?`Exploring`:s===`error`?`Exploring failed`:`Explored`,B4(s),`semibold`)]},...n.map((e,t)=>({prefix:t===0?`detail`:`continuation`,tokens:[V4(e.label,e.status===`error`?`red`:`dim`)]})),...r>0?[{prefix:`continuation`,tokens:[V4(`+${r} more explorations`,`dim`,`normal`,!0)]}]:[]],sourceNodeIds:e.flatMap(e=>e.row.sourceNodeIds),eventId:i?.eventId,runId:i?.runId,orderSource:i?.orderSource,orderStreamId:i?.orderStreamId,orderStreamFrameIndex:i?.orderStreamFrameIndex,detailItems:t,expandable:t.some(e=>e.input!==void 0||e.output!==void 0||!!e.error),previewOmission:r>0?{source:`details`,visibleLineCount:n.length,omittedLineCount:r,totalLineCount:t.length,maxVisibleLineCount:6}:void 0}}function dHe(e){let t=C4(e,`images`),n=t.slice(0,6),r=Math.max(0,t.length-n.length),i=e[0]?.row,a=i?.id??`images`,o=e[e.length-1]?.row.id??a,s=e.some(e=>e.row.status===`running`)?`running`:e.some(e=>e.row.status===`error`)?`error`:`done`;return{id:`group:images:${a}:${o}`,kind:`tool.group.images`,status:s,errorKind:s===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(s===`running`?`Viewing images`:s===`error`?`Image reads failed`:`Viewed images`,B4(s),`semibold`)]},...n.map((e,t)=>({prefix:t===0?`detail`:`continuation`,tokens:[V4(e.label,e.status===`error`?`red`:`cyan`)]})),...r>0?[{prefix:`continuation`,tokens:[V4(`+${r} more image reads`,`dim`,`normal`,!0)]}]:[]],sourceNodeIds:e.flatMap(e=>e.row.sourceNodeIds),eventId:i?.eventId,runId:i?.runId,orderSource:i?.orderSource,orderStreamId:i?.orderStreamId,orderStreamFrameIndex:i?.orderStreamFrameIndex,detailItems:t,expandable:t.some(e=>e.input!==void 0||e.output!==void 0||!!e.error),imagePreviews:t.flatMap(e=>e.imagePreviews??[]).slice(0,20),previewOmission:r>0?{source:`details`,visibleLineCount:n.length,omittedLineCount:r,totalLineCount:t.length,maxVisibleLineCount:6}:void 0}}function C4(e,t){return e.map(e=>{let n=t===`images`?e.image:e.exploring;return{id:e.row.id,label:n?.label??e.row.lines[0]?.tokens.map(e=>e.text).join(``)??e.row.id,status:e.row.status,input:e.row.input,output:e.row.output,error:e.row.error,payloadRefs:e.row.payloadRefs,linkedPiboSessionId:e.row.linkedPiboSessionId,previewOmission:e.row.previewOmission,imagePreviews:e.row.imagePreviews}})}function w4(e){let t=(e.title??``).trim().toLowerCase(),n=U4(e.input)?e.input:void 0,r=U4(e.output)?e.output:void 0,i=_He(r,`details`),a=t===`codex_image_generation`?mHe(i)??hHe(n):void 0,o=a?H4(i?.savedPath)??k4(i):k4(n)??k4(i)??k4(r),s=a?H4(i?.artifactId):void 0,c=A4(n),l=T4(e.output).slice(0,20),u=e.payloadRefs?.output,d=Math.min(u?.imageCount??0,20),f=O4(t,[`view_image`,`image`,`screenshot`])||t===`read`&&fHe(o);if(!l.length&&!d&&!f&&!a)return;let p=l.map(e=>e.mimeType).find(e=>!!e),m=Math.max(1,l.length,d),h={type:m>1?`images`:l.length===1?`image`:`image_reference`,toolName:a?e.title:void 0,operation:a,path:o,savedPath:a?o:void 0,artifactId:s,model:a?H4(i?.model):void 0,referencedImageCount:a?j4(i?.referencedImageCount):void 0,query:c,mimeType:p,count:m>1?m:void 0,detail:l.length||d?`Image data hidden in terminal view.`:`Image path only; binary data is hidden in terminal view.`},g=o??s??c??p??`image`,_=a?gHe(e.status,a):pHe(e.status,m),v=l.length?l:Array.from({length:Math.max(1,d)},()=>({mimeType:p})),y=v.map((t,n)=>({id:`${e.id}:image:${n}`,label:v.length>1?`${g} (${n+1}/${v.length})`:g,path:o,artifactId:s,payloadRef:u?.ref,payloadImageIndex:u?n:void 0,traceNodeId:u?u.nodeId??e.id:void 0,generatedToolCallId:a?e.toolCallId:void 0,mimeType:t.mimeType??p}));return{count:m,path:o,artifactId:s,query:c,mimeType:p,verb:_,groupable:!a,summary:h,previews:y,detail:{id:e.id,label:`${_} ${g}`,status:z4(e.status),input:E4(e.input),output:h,error:e.error,imagePreviews:y}}}function fHe(e){return e?/\.(?:png|jpe?g|gif|webp|bmp|avif)$/i.test(e.split(/[?#]/,1)[0]??``):!1}function T4(e,t=0,n=new Set){if(t>5||n.size>=1e3||typeof e!=`object`||!e||n.has(e))return[];if(n.add(e),Array.isArray(e)){let r=[];for(let i of e)if(r.push(...T4(i,t+1,n)),r.length>=20)return r.slice(0,20);return r}let r=e,i=typeof r.type==`string`?r.type.toLowerCase():void 0,a=typeof r.mimeType==`string`?r.mimeType:typeof r.mime_type==`string`?r.mime_type:void 0,o=typeof r.data==`string`||typeof r.image_url==`string`||U4(r.image_url);if((i===`image`||i===`input_image`||i===`output_image`||i===`image_url`)&&(o||a?.startsWith(`image/`))||a?.startsWith(`image/`)&&o)return[{mimeType:a}];let s=[];`content`in r&&s.push(r.content),`message`in r&&s.push(r.message),`result`in r&&s.push(r.result),`output`in r&&s.push(r.output);let c=[];for(let e of s)if(c.push(...T4(e,t+1,n)),c.length>=20)break;return c.slice(0,20)}function E4(e){if(Array.isArray(e))return e.map(E4);if(!U4(e))return e;let t={};for(let[n,r]of Object.entries(e)){if((n===`data`||n===`image_url`)&&typeof r==`string`&&r.length>120){t[n]=`[hidden ${n}]`;continue}t[n]=E4(r)}return t}function pHe(e,t){return e===`running`?t>1?`Viewing images`:`Viewing image`:e===`error`?t>1?`Image reads failed`:`Image read failed`:t>1?`Viewed images`:`Viewed image`}function mHe(e){let t=H4(e?.operation);return t===`generate`||t===`edit`?t:void 0}function hHe(e){if(!e)return;let t=e.referenced_image_paths;return Array.isArray(t)&&t.length>0||j4(e.num_last_images_to_include)!==void 0?`edit`:`generate`}function gHe(e,t){return t===`edit`?e===`running`?`Editing image`:e===`error`?`Image edit failed`:`Edited image`:e===`running`?`Generating image`:e===`error`?`Image generation failed`:`Generated image`}function _He(e,t){let n=e?.[t];return U4(n)?n:void 0}function vHe(e){let t=(e.title??``).trim().toLowerCase(),n=U4(e.input)?e.input:void 0;if(O4(t,[`read`,`open`]))return{id:e.id,label:`Read ${k4(n)??F4(e.input)}`,status:z4(e.status),input:e.input,output:e.output,error:e.error};if(O4(t,[`list`,`ls`,`glob`]))return{id:e.id,label:`List ${k4(n)??F4(e.input)}`,status:z4(e.status),input:e.input,output:e.output,error:e.error};if(O4(t,[`search`,`find`,`grep`,`rg`])){let t=A4(n),r=k4(n);return{id:e.id,label:`Search ${t??F4(e.input)}${r?` in ${r}`:``}`,status:z4(e.status),input:e.input,output:e.output,error:e.error}}}function D4(e){return EVe[e]??e}function O4(e,t){return t.some(t=>e===t||e.startsWith(`${t}_`)||e.endsWith(`_${t}`)||e.includes(t))}function k4(e){if(e)for(let t of[`path`,`file`,`filePath`,`filepath`,`url`,`uri`,`cwd`,`pattern`,`glob`]){let n=H4(e[t]);if(n)return n}}function A4(e){if(e)for(let t of[`query`,`pattern`,`text`,`name`,`q`,`regex`]){let n=H4(e[t]);if(n)return n}}function j4(e){return typeof e==`number`&&Number.isFinite(e)?e:void 0}function M4(e,t,n=`dim`,r=160){let i={lines:[],visibleLineCount:0,omittedLineCount:0,totalLineCount:0,maxVisibleLineCount:t},a=P4(e);if(!a)return i;let o=a.split(/\r?\n/).map(e=>e.trimEnd()).filter((e,t,n)=>e.length>0||n.length===1);if(!o.length)return i;let s=o.slice(0,t),c=Math.max(0,o.length-s.length),l=s.map((e,t)=>({prefix:t===0?`detail`:`continuation`,tokens:[V4(e,n)]}));return c>0&&l.push({prefix:`continuation`,tokens:[V4(`+${c} more lines`,`dim`,`normal`,!0)]}),{lines:l,visibleLineCount:s.length,omittedLineCount:c,totalLineCount:o.length,maxVisibleLineCount:t}}function N4(e,t){if(!(e.omittedLineCount<=0))return{source:t,visibleLineCount:e.visibleLineCount,omittedLineCount:e.omittedLineCount,totalLineCount:e.totalLineCount,maxVisibleLineCount:e.maxVisibleLineCount}}function P4(e){let t=I2(e);if(t!==void 0)return t.trim();if(typeof e==`string`)return e.trim();if(e==null)return``;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function F4(e){return(typeof e==`string`?e:P4(e)).replace(/\s+/g,` `).trim()}function yHe(e){let t=(e??``).trim().toLowerCase();return t===`shell`||t===`bash`||t===`terminal`}function bHe(e){return(e??``).trim().toLowerCase()===`web_search`}function xHe(e,t){return t===`open_page`?e===`running`?`Opening web page`:e===`error`?`Opening web page failed`:`Opened web page`:t===`find_in_page`?e===`running`?`Finding in web page`:e===`error`?`Finding in web page failed`:`Found in web page`:e===`running`?`Searching web`:e===`error`?`Web search failed`:`Searched web`}function SHe(e){let t=U4(e.input)?e.input:void 0,n=U4(e.output)?e.output:void 0;return H4(t?.actionType)??H4(n?.actionType)}function CHe(e){let t=U4(e.input)?e.input:void 0,n=U4(e.output)?e.output:void 0;return H4(t?.query)??H4(n?.query)??H4(e.summary)}function wHe(e){let t=U4(e.input)?e.input:void 0,n=U4(e.output)?e.output:void 0;for(let e of[t?.queries,n?.queries]){if(!Array.isArray(e))continue;let t=[...new Set(e.flatMap(e=>{let t=H4(e)?.trim();return t?[t]:[]}))];if(t.length)return t}}function THe(e){let t=U4(e.input)?e.input:void 0,n=U4(e.output)?e.output:void 0;return H4(t?.url)??H4(n?.url)}function EHe(e){let t=U4(e.input)?e.input:void 0,n=U4(e.output)?e.output:void 0;return H4(t?.pattern)??H4(n?.pattern)}function DHe(e){if(!U4(e))return[];let t=e.sources??e.citations??e.results;if(!Array.isArray(t))return[];let n=new Map;for(let e of t){let t=U4(e)?e:void 0,r=I4(typeof e==`string`?e:H4(t?.url)??H4(t?.href)??H4(t?.link),!0);if(!r)continue;let i=H4(t?.title)?.trim()??H4(t?.name)?.trim(),a=n.get(r);(!a||!a.title&&i)&&n.set(r,{url:r,...i?{title:i}:{}})}return[...n.values()]}function OHe(e){if(!U4(e))return;let t=e.sourceCount??e.sourcesCount;if(typeof t==`number`&&Number.isFinite(t))return t;let n=e.sources??e.citations??e.results;return Array.isArray(n)?n.length:void 0}function I4(e,t=!1){if(e)try{let n=new URL(e.trim());return n.protocol!==`https:`&&n.protocol!==`http:`||n.username||n.password?void 0:(t&&(n.hash=``),n.href)}catch{return}}function L4(e,t){let n=I4(e);return{...V4(e,n?`blue`:`dim`),...n?{href:n,ariaLabel:t}:{}}}function R4(e){if(U4(e))for(let t of[`cmd`,`command`,`script`]){let n=H4(e[t]);if(n)return n}}function kHe(e){let t=e.match(/\s+|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|[^\s]+/g)??[e],n=!1;return t.map(e=>/^\s+$/.test(e)?V4(e):/^(?:&&|\|\||[|;<>]|2>&1)$/.test(e)?V4(e,`red`,`semibold`):e.startsWith(`-`)?V4(e,`magenta`):e.startsWith(`$`)||e.includes(`=`)?V4(e,`yellow`):/^['"]/.test(e)?V4(e,`green`):n?e.includes(`/`)||e.startsWith(`.`)?V4(e,`cyan`):V4(e,`default`):(n=!0,V4(e,`green`,`semibold`)))}function AHe(e){return e===`running`?`Calling`:e===`error`?`Call failed`:`Called`}function jHe(e){return e===`running`?`Spawning`:e===`error`?`Spawn failed`:`Spawned`}function MHe(e){if(e.status===`running`){if(e.id.startsWith(`event:message_steered:`))return`steer`;if(e.id.startsWith(`event:message_queued:`))return`queue`}}function NHe(e){return e===`running`?`Waiting for`:`Finished waiting for`}function z4(e){return e===`running`?`running`:e===`error`?`error`:`done`}function B4(e){return e===`running`?`cyan`:e===`error`?`red`:e===`done`?`green`:`default`}function V4(e,t=`default`,n=`normal`,r=!1){return{text:e,tone:t,weight:n,italic:r}}function H4(e){return typeof e==`string`&&e.trim().length?e:void 0}function U4(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function PHe(e){if(!e)return;let t;if(typeof e==`string`)try{t=JSON.parse(e)}catch{return}else typeof e==`object`&&!Array.isArray(e)&&(t=e);if(!t)return;let n=typeof t.contextUsage==`object`&&t.contextUsage!==null?t.contextUsage:void 0,r=typeof t.providerUsage==`object`&&t.providerUsage!==null?t.providerUsage:void 0,i=Array.isArray(r?.limits)?r.limits.filter(e=>!!e&&typeof e==`object`&&!Array.isArray(e)).map(e=>{let t=typeof e.usedPercent==`number`?e.usedPercent:void 0,n=typeof e.remainingPercent==`number`?e.remainingPercent:t===void 0?0:Math.max(0,Math.min(100,100-t));return{label:typeof e.label==`string`?e.label:`limit`,usedPercent:t??0,remainingPercent:n,resetsAt:typeof e.resetsAt==`string`?e.resetsAt:void 0}}):[],a=typeof r?.credits==`object`&&r.credits!==null?r.credits:void 0;return{piboSessionId:typeof t.piboSessionId==`string`?t.piboSessionId:void 0,queuedMessages:typeof t.queuedMessages==`number`?t.queuedMessages:void 0,processing:typeof t.processing==`boolean`?t.processing:void 0,streaming:typeof t.streaming==`boolean`?t.streaming:void 0,enabledTools:Array.isArray(t.enabledTools)?t.enabledTools.filter(e=>typeof e==`string`):Array.isArray(t.activeTools)?t.activeTools.filter(e=>typeof e==`string`):void 0,activeTools:Array.isArray(t.activeTools)?t.activeTools.filter(e=>typeof e==`string`):void 0,cwd:typeof t.cwd==`string`?t.cwd:void 0,disposed:typeof t.disposed==`boolean`?t.disposed:void 0,contextUsage:n?{tokens:typeof n.tokens==`number`?n.tokens:void 0,contextWindow:typeof n.contextWindow==`number`?n.contextWindow:void 0,percent:typeof n.percent==`number`?n.percent:void 0}:void 0,providerUsage:r&&(i.length>0||a)?{provider:typeof r.provider==`string`?r.provider:void 0,planType:typeof r.planType==`string`?r.planType:void 0,fetchedAt:typeof r.fetchedAt==`string`?r.fetchedAt:void 0,limits:i,credits:a?{unlimited:a.unlimited===!0,balance:typeof a.balance==`string`?a.balance:void 0}:void 0}:void 0}}function W4(e,t,n){return n?{id:e,label:t,value:n}:void 0}function G4({field:e,icon:t}){let n=t===`session`?Ec:xc;return(0,W.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px]`,"data-shared-status-field":e.id,children:[(0,W.jsx)(n,{size:11,className:`shrink-0 text-[#737373]`}),(0,W.jsxs)(`span`,{className:`shrink-0 text-[#737373]`,children:[e.label,`:`]}),(0,W.jsx)(`span`,{className:`truncate font-mono ${e.id===`session`?`text-[#38bdf8]`:`text-[#d4d4d4]`}`,children:e.value})]})}function K4({progress:e,label:t}){let n=e.percent??0,r=e.tone===`red`?`bg-[#ef4444]`:e.tone===`yellow`?`bg-[#facc15]`:e.tone===`cyan`?`bg-[#38bdf8]`:`bg-[#22c55e]`;return(0,W.jsxs)(`div`,{className:`mt-3 space-y-1`,"data-shared-progress":e.id,"data-shared-progress-state":e.state,children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between text-[11px]`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:t??e.label}),(0,W.jsx)(`span`,{className:`font-mono text-[#d4d4d4]`,children:e.state===`available`?e.text:`unavailable`})]}),e.state===`available`?(0,W.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded-full bg-[#2a2a2a]`,children:(0,W.jsx)(`div`,{className:`h-full rounded-full ${r} transition-all`,style:{width:`${Math.min(Math.max(n,0),100)}%`}})}):null]})}function FHe(e){if(!e)return;let t=new Date(e);if(!Number.isNaN(t.getTime()))return t.toLocaleString(void 0,{weekday:`short`,hour:`2-digit`,minute:`2-digit`})}function IHe({row:e,piboSessionId:t}){let[n,r]=(0,U.useState)(null),i=n?.rowId===e.id&&Object.is(n.sourceOutput,e.output)?n.output:e.output,[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(null),d=PHe(i),f=c4(e),p=i===e.output?f:c4({...e,output:i}),m=p?.kind===`status`?p.statusView:void 0,h=async()=>{if(!(!t||s)){c(!0),u(null);try{r({rowId:e.id,sourceOutput:e.output,output:await $l(t)})}catch(e){u(e instanceof Error?e.message:String(e))}finally{c(!1)}}},g=(0,W.jsx)(`button`,{type:`button`,disabled:!t||s,onClick:()=>void h(),className:`ml-auto inline-flex h-7 w-7 shrink-0 items-center justify-center border border-[#3a3a3a] bg-[#151f24] text-[#737373] transition hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:cursor-not-allowed disabled:opacity-50`,"aria-label":`Refresh status`,"aria-busy":s,title:s?`Refreshing status`:`Refresh status`,"data-pibo-debug":`terminal-status-refresh`,children:(0,W.jsx)(il,{size:13,className:s?`animate-spin`:void 0})});if(!d||!m)return(0,W.jsxs)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-pibo-component":`TerminalStatusCard`,"data-pibo-debug":`terminal-status-card`,"data-shared-terminal-card":`status`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`div`,{className:`text-[#737373]`,children:`Status (unparseable)`}),g]}),l?(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-[#ef4444]`,role:`alert`,children:l}):null]});let _=new Map(m.fields.map(e=>[e.id,e])),v=_.get(`session`)??W4(`session`,`Session`,d.piboSessionId),y=_.get(`cwd`)??W4(`cwd`,`CWD`,d.cwd),b=m.progress.find(e=>e.id===`context`),x=m.progress.filter(e=>e.id.startsWith(`provider`)),S=d.providerUsage?.limits.length?d.providerUsage.limits:void 0,C=d.enabledTools??d.activeTools??[],w=m.fields.filter(e=>!new Set([`session`,`cwd`]).has(e.id)),T=d.providerUsage?.provider?`${d.providerUsage.provider} quota`:`Provider quota`;return(0,W.jsxs)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-pibo-component":`TerminalStatusCard`,"data-pibo-debug":`terminal-status-card`,"data-shared-terminal-card":`status`,children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center gap-2`,children:[(0,W.jsx)(Es,{size:14,className:`text-[#22c55e]`}),(0,W.jsx)(`span`,{className:`font-semibold text-[#d4d4d4]`,children:m.title}),g]}),l?(0,W.jsx)(`div`,{className:`mb-2 text-[11px] text-[#ef4444]`,role:`alert`,children:l}):null,(0,W.jsxs)(`div`,{className:`grid grid-cols-1 gap-1.5 sm:grid-cols-2`,children:[v?(0,W.jsx)(G4,{field:v,icon:`session`}):null,y?(0,W.jsx)(G4,{field:y,icon:`cwd`}):null,w.slice(0,8).map(e=>(0,W.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px]`,"data-shared-status-field":e.id,children:[(0,W.jsxs)(`span`,{className:`shrink-0 text-[#737373]`,children:[e.label,`:`]}),(0,W.jsx)(`span`,{className:`truncate font-mono text-[#d4d4d4]`,children:e.value})]},e.id))]}),(0,W.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:[d.processing?(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1 border border-[#1f4960] px-1.5 py-0.5 text-[11px] text-[#38bdf8]`,children:[(0,W.jsx)(cc,{size:10}),` Processing`]}):null,d.streaming?(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1 border border-[#1f4960] px-1.5 py-0.5 text-[11px] text-[#38bdf8]`,children:[(0,W.jsx)(Es,{size:10}),` Streaming`]}):null,typeof d.queuedMessages==`number`&&d.queuedMessages>0?(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1 border border-[#3a3a3a] px-1.5 py-0.5 text-[11px] text-[#d4d4d4]`,children:[(0,W.jsx)(Ac,{size:10}),` Queued: `,d.queuedMessages]}):null,d.disposed?(0,W.jsx)(`span`,{className:`inline-flex items-center gap-1 border border-[#5f2222] px-1.5 py-0.5 text-[11px] text-[#ef4444]`,children:`Disposed`}):null]}),b?(0,W.jsx)(K4,{progress:b,label:`Context Usage`}):null,x.length?(0,W.jsxs)(`div`,{className:`mt-3 space-y-1.5 border-t border-[#2a2a2a] pt-2`,"data-shared-provider-progress":x.length,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px] text-[#737373]`,"data-shared-status-field":`provider-quota`,children:[(0,W.jsx)(Sc,{size:11}),(0,W.jsxs)(`span`,{children:[T,d.providerUsage?.planType?` (${d.providerUsage.planType})`:``]})]}),S?S.map(e=>{let t=FHe(e.resetsAt);return(0,W.jsxs)(`div`,{className:`space-y-1`,"data-shared-progress":`provider-limit:${e.label}`,"data-shared-progress-state":`available`,children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-[11px]`,children:[(0,W.jsx)(`span`,{className:`text-[#a3a3a3]`,children:e.label}),(0,W.jsxs)(`span`,{className:`shrink-0 font-mono text-[#d4d4d4]`,children:[e.remainingPercent.toFixed(0),`% left`,t?` · resets ${t}`:``]})]}),(0,W.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded-full bg-[#2a2a2a]`,children:(0,W.jsx)(`div`,{className:`h-full rounded-full bg-[#38bdf8] transition-all`,style:{width:`${Math.min(Math.max(e.remainingPercent,0),100)}%`}})})]},`${e.label}-${e.resetsAt??``}`)}):x.map(e=>(0,W.jsx)(K4,{progress:e},e.id)),d.providerUsage?.credits?(0,W.jsxs)(`div`,{className:`text-[11px] text-[#a3a3a3]`,"data-shared-status-field":`provider-credits`,children:[`Credits: `,d.providerUsage.credits.unlimited?`unlimited`:d.providerUsage.credits.balance??`available`]}):null]}):null,m.warnings.length||m.errors.length?(0,W.jsxs)(`div`,{className:`mt-3 space-y-1 border-t border-[#2a2a2a] pt-2`,children:[m.warnings.map((e,t)=>(0,W.jsxs)(`div`,{"data-shared-status-warning":!0,className:`text-[11px] text-[#facc15]`,children:[`⚠ `,e]},`warning-${t}`)),m.errors.map((e,t)=>(0,W.jsxs)(`div`,{"data-shared-status-error":!0,className:`text-[11px] text-[#ef4444]`,children:[`✕ `,e]},`error-${t}`))]}):null,C.length>0?(0,W.jsxs)(`div`,{className:`mt-3`,children:[(0,W.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`flex items-center gap-1.5 text-[11px] text-[#737373] hover:text-[#d4d4d4]`,children:[(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:a?`▾`:`▸`}),(0,W.jsxs)(`span`,{children:[`Enabled tools (`,C.length,`)`]})]}),a?(0,W.jsx)(`div`,{className:`mt-1.5 flex flex-wrap gap-1`,children:C.map(e=>(0,W.jsx)(`span`,{className:`inline-block rounded-sm border border-[#2a2a2a] bg-[#0b0b0b] px-1.5 py-0.5 font-mono text-[11px] text-[#a3a3a3]`,children:e},e))}):null]}):null]})}function LHe(e){let t;if(typeof e==`string`)try{t=JSON.parse(e)}catch{return}else e&&typeof e==`object`&&!Array.isArray(e)&&(t=e);if(t)return{level:typeof t.level==`string`?t.level:void 0,availableLevels:Array.isArray(t.availableLevels)?t.availableLevels.filter(e=>typeof e==`string`):[],supported:typeof t.supported==`boolean`?t.supported:void 0}}function RHe(e){return rJ.includes(e)?e:void 0}function zHe({row:e,onLevelSelect:t}){let n=LHe(e.output);return n?(0,W.jsxs)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-shared-terminal-card":`thinking`,children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center gap-2`,children:[(0,W.jsx)(zs,{size:14,className:`text-[#f59e0b]`}),(0,W.jsx)(`span`,{className:`font-semibold text-[#d4d4d4]`,children:`Thinking`}),n.supported===!1?(0,W.jsxs)(`span`,{className:`ml-auto inline-flex items-center gap-1 border border-[#5f2222] px-1.5 py-0.5 text-[11px] text-[#ef4444]`,children:[(0,W.jsx)(Al,{size:10}),` Unsupported`]}):(0,W.jsxs)(`span`,{className:`ml-auto inline-flex items-center gap-1 border border-[#1f4960] px-1.5 py-0.5 text-[11px] text-[#38bdf8]`,children:[(0,W.jsx)(Us,{size:10}),` Supported`]})]}),(0,W.jsxs)(`div`,{className:`grid gap-1.5 text-[11px]`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`Current:`}),(0,W.jsx)(`span`,{className:`font-mono font-semibold text-[#f59e0b]`,children:n.level??`unknown`})]}),n.availableLevels.length?(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,W.jsx)(`span`,{className:`mr-1 text-[#737373]`,children:`Available:`}),n.availableLevels.map(e=>{let r=RHe(e),i=n.supported===!1||!r||!t;return(0,W.jsx)(`button`,{type:`button`,disabled:i,onClick:()=>{r&&t?.(r)},className:`border bg-transparent px-1.5 py-0.5 ${e===n.level?`border-[#f59e0b] text-[#f59e0b]`:`border-[#3a3a3a] text-[#d4d4d4]`} ${i?`cursor-default`:`cursor-pointer`}`,children:e},e)})]}):null,(0,W.jsxs)(`div`,{className:`text-[#737373]`,children:[`Click a level or use `,(0,W.jsx)(`span`,{className:`text-[#f59e0b]`,children:`/thinking <level>`}),`.`]})]})]}):(0,W.jsx)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-shared-terminal-card":`thinking`,children:(0,W.jsx)(`div`,{className:`text-[#737373]`,children:`Thinking (unparseable)`})})}var q4=`pibo.chat.terminalReadingPosition.`;function BHe(e){if(e)try{return VHe(sessionStorage.getItem(q4+e))}catch{return}}function J4(e,t){if(e)try{let n=q4+e;t?sessionStorage.setItem(n,JSON.stringify(t)):sessionStorage.removeItem(n)}catch{}}function VHe(e){if(e)try{let t=JSON.parse(e);return typeof t.rowId!=`string`||!t.rowId||typeof t.offsetPx!=`number`||!Number.isFinite(t.offsetPx)?void 0:{rowId:t.rowId,offsetPx:t.offsetPx}}catch{return}}var HHe=180,UHe=4800,WHe=800,GHe=20,KHe={index:`LAST`,align:`end`},qHe={top:2400,bottom:2400},JHe=84,YHe=6;function XHe({traceView:e,isLoading:t,terminalFullscreen:n,showThinking:r,expandThinking:i,toolDisplayMode:a,sessionAgentProfile:o,sessionActiveModel:s,sessionRuntimeBinding:c,selectedSessionStatus:l,selectedSessionSignal:u,signals:d,sessionGoal:f,sessionBreadcrumbs:p,originSession:m,derivedSessions:h,agentProfiles:g,sessionProfileChangeDisabled:_,onSessionAgentProfileChange:v,onFork:y,onOpenSession:b,onLoadOlderTracePage:x,hasOlderTraceEvents:S,isFetchingOlderTracePage:C,onThinkingLevelChange:w,onModelChanged:T}){let E=(0,U.useMemo)(()=>DVe(e,{showThinking:r,toolDisplayMode:a}),[r,a,e]),D=(0,U.useMemo)(()=>E.map(e=>e.id),[E]),O=e?.piboSessionId??``,[k,A]=(0,U.useState)(),j=(0,U.useRef)(void 0),[M,N]=(0,U.useState)(new Set),[P,F]=(0,U.useState)(null),I=(0,U.useMemo)(()=>[E,M],[M,E]),[L,R]=(0,U.useState)(null),z=(0,U.useRef)({}),B=(0,U.useRef)(!1),ee=(0,U.useRef)(!1),te=(0,U.useRef)(!1),ne=(0,U.useRef)(!1),re=(0,U.useRef)(!1),V=(0,U.useRef)(()=>void 0),ie=E.filter(e=>e3(e,`user`)).length,ae=E.filter(e=>e3(e,`tool`)).length,oe=E.filter(e=>e3(e,`system`)).length,se=TBe({signal:u,fallbackStatus:l,fallbackTurnStartedAt:(0,U.useMemo)(()=>kVe(e),[e])}),ce=se.activeTurnStartedAt,le=se.isTurnActive,ue=!!M2(f);(0,U.useLayoutEffect)(()=>{!O||!e||!MX()||APe(O,`compact-terminal:render`,E,{traceVersion:e.version,latestStreamId:e.latestStreamId,lastRawEventId:e.rawEvents.at(-1)?.id,selectedSessionStatus:l})},[O,E,l,e]);let de=(0,U.useCallback)(()=>{if(!S||C||te.current)return;if(ne.current){re.current=!0;return}te.current=!0,ee.current=!1,V.current();let e=x?.();Promise.resolve(e).then(()=>{te.current=!1},()=>{te.current=!1})},[S,C,x]),fe=(0,U.useCallback)(()=>{B.current&&ee.current&&de()},[de]),pe=(0,U.useCallback)(()=>{B.current&&(!ee.current&&!ne.current||de())},[de]),me=(0,U.useCallback)(e=>{ne.current=e,!(e||!re.current)&&(re.current=!1,de())},[de]),he=(0,U.useCallback)((e,t)=>{hUe(e,t)&&(ee.current=!0)},[]),ge=(0,U.useCallback)(e=>{!B.current||a!=="default"||e.startIndex<=GHe&&fe()},[fe,a]),_e=(0,U.useCallback)(e=>{O&&J4(O,e?{rowId:e.key,offsetPx:e.offset}:void 0)},[O]),ve=a==="default"?UHe:WHe,ye=Pze({itemCount:E.length,itemKeys:D,isPrepending:C,resetKey:e?.piboSessionId,contentKey:I,atBottomThreshold:HHe,nearTopThreshold:ve,onAtTop:pe,onNearTop:fe,onUserScrollIntent:he,onScrollbarDragChange:me,onVisibleAnchorChange:_e});V.current=ye.prepareForPrepend,(0,U.useEffect)(()=>{j.current=void 0,te.current=!1,ne.current=!1,re.current=!1,A(O?BHe(O):void 0),F(null)},[O]),(0,U.useEffect)(()=>{if(!O||!k)return;let t=D.indexOf(k.rowId);if(t>=0){let e=requestAnimationFrame(()=>{ye.restoreAnchor({key:k.rowId,dataIndex:t,offset:k.offsetPx})&&A(void 0)});return()=>cancelAnimationFrame(e)}if(!S){J4(O,void 0),A(void 0);return}if(C)return;let n=String(e?.nextBeforeCursor??e?.nextBeforeSequence??E.length),r=`${O}:${n}`;j.current!==r&&(j.current=r,x?.())},[S,C,x,O,k,D,E.length,ye.restoreAnchor,e?.nextBeforeCursor,e?.nextBeforeSequence]),(0,U.useEffect)(()=>{if(!O)return;let e=()=>{ye.captureVisibleAnchor()},t=()=>{document.visibilityState===`hidden`&&e()};return window.addEventListener(`beforeunload`,e),window.addEventListener(`pagehide`,e),document.addEventListener(`visibilitychange`,t),()=>{window.removeEventListener(`beforeunload`,e),window.removeEventListener(`pagehide`,e),document.removeEventListener(`visibilitychange`,t)}},[O,ye.captureVisibleAnchor]),(0,U.useEffect)(()=>{N(e=>rUe(e,E,i))},[i,E]),(0,U.useEffect)(()=>{B.current=!1,ee.current=!1;let e=window.setTimeout(()=>{B.current=!0},250);return()=>window.clearTimeout(e)},[e?.piboSessionId]),(0,U.useEffect)(()=>{let e=new Set(E.map(e=>e.id));R(t=>t&&e.has(t)?t:null);for(let t of[`system`,`tool`,`user`]){let n=z.current[t];n&&!e.has(n)&&delete z.current[t]}},[E]);let be=(0,U.useCallback)(e=>{let t=iUe(E,e,z.current[e]);t&&(z.current[e]=t.row.id,R(t.row.id),ye.scrollToIndex(t.index,`start`,`fast-smooth`,{fromIndex:t.fromIndex,stagingAlign:e===`tool`?`end`:void 0}),aUe(t.row.id))},[E,ye]),xe=e=>{e.expandable&&N(t=>{let n=new Set(t);return n.has(e.id)?n.delete(e.id):n.add(e.id),n})},Se=(0,U.useCallback)(e=>{let t=Q4(e);t.length&&F({images:t,index:0})},[]),Ce=(0,U.useCallback)((t,n)=>(0,W.jsx)(`div`,{className:`px-4`,children:(0,W.jsx)(QHe,{row:n,expanded:M.has(n.id),focused:L===n.id,piboSessionId:e?.piboSessionId??``,onToggle:()=>xe(n),onFork:y,onOpenSession:b,onThinkingLevelChange:w,onModelChanged:T,onViewImages:Se,signals:d})}),[M,L,y,T,b,w,Se,d,e?.piboSessionId]),we=(0,U.useMemo)(()=>({Footer:le||ue?()=>(0,W.jsx)(n3,{startedAt:ce,isWorking:le,goal:f}):void 0}),[ce,le,f,ue]);return(0,W.jsxs)(`section`,{className:`relative min-w-0 flex-1 flex flex-col overflow-hidden bg-[#0b0b0b] text-[#d4d4d4]`,"data-pibo-component":`CompactTerminalSessionView`,"data-pibo-debug":`compact-terminal-session-view`,"data-pibo-session-id":e?.piboSessionId??void 0,"data-pibo-terminal-fullscreen":n?`true`:`false`,"data-pibo-trace-has-older":e?.hasOlderEvents===!0?`true`:`false`,"data-pibo-trace-next-before":e?.nextBeforeCursor??e?.nextBeforeSequence??``,children:[n?null:(0,W.jsx)(ZHe,{errorCount:oe,toolErrorCount:ae,userMessageCount:ie,onNavigate:be,sessionAgentProfile:o,sessionActiveModel:s,sessionRuntimeBinding:c,sessionBreadcrumbs:p,originSession:m,derivedSessions:h,onOpenSession:b}),(0,W.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:e?E.length?(0,W.jsx)(KRe,{ref:ye.virtuosoRef,data:E,firstItemIndex:ye.firstItemIndex,initialTopMostItemIndex:KHe,increaseViewportBy:qHe,defaultItemHeight:JHe,className:`min-h-0 h-full overflow-x-hidden font-mono text-[12px] leading-[1.45]`,computeItemKey:(e,t)=>t.id,scrollerRef:ye.scrollerRef,atBottomStateChange:ye.atBottomStateChange,atBottomThreshold:ye.atBottomThreshold,itemsRendered:ye.itemsRendered,rangeChanged:e=>ge(ye.normalizeRange(e)),followOutput:ye.followOutput,totalListHeightChanged:ye.totalListHeightChanged,alignToBottom:!0,components:we,itemContent:Ce}):(0,W.jsx)(l3,{isLoading:t,agentProfiles:g,disabled:_,onSelectAgentProfile:v,message:`No visible trace rows yet.`}):(0,W.jsx)(l3,{isLoading:t,agentProfiles:g,disabled:_,onSelectAgentProfile:v})}),E.length===0&&ue?(0,W.jsx)(n3,{isWorking:!1,goal:f}):null,P?(0,W.jsx)(nUe,{state:P,piboSessionId:O,onClose:()=>F(null),onIndexChange:e=>F(t=>t?{...t,index:Math.min(Math.max(e,0),t.images.length-1)}:null)}):null,ye.isSticky?null:(0,W.jsx)(`button`,{type:`button`,onClick:()=>{J4(O,void 0),ye.stickToBottom(`auto`)},title:`Scroll to latest`,"aria-label":`Scroll to latest`,className:`absolute right-4 bottom-4 z-30 inline-flex h-9 w-9 items-center justify-center rounded-sm border border-[#38bdf8] bg-[#111111]/95 text-[#38bdf8] shadow-lg shadow-black/30 hover:bg-[#161616]`,children:(0,W.jsx)(Ws,{size:18})})]})}function ZHe({errorCount:e,toolErrorCount:t,userMessageCount:n,onNavigate:r,sessionAgentProfile:i,sessionActiveModel:a,sessionRuntimeBinding:o,sessionBreadcrumbs:s,originSession:c,derivedSessions:l,onOpenSession:u}){return(0,W.jsxs)(`div`,{"data-pibo-debug":`compact-terminal-header`,className:`border-b border-[#2a2a2a] bg-[#111111] px-4 py-2 text-[11px]`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[i?(0,W.jsx)(s3,{tone:`neutral`,children:i}):null,o?(0,W.jsxs)(s3,{tone:o.state===`missing`||o.state===`error`?`red`:o.state===`unbound`?`amber`:`cyan`,label:`Runtime ${o.runtimeInstanceId} · ${o.state}`,children:[o.runtimeInstanceId,` · `,o.state]}):null,a?(0,W.jsx)(s3,{tone:`purple`,children:a}):null,n>0?(0,W.jsxs)(s3,{tone:`cyan`,label:`${n} user messages · jump to previous user message`,onClick:()=>r(`user`),children:[n,(0,W.jsx)(Uc,{size:12})]}):null,e>0?(0,W.jsxs)(s3,{tone:`red`,label:`${e} errors · jump to previous error`,onClick:()=>r(`system`),children:[e,(0,W.jsx)(nc,{size:12})]}):null,t>0?(0,W.jsxs)(s3,{tone:`amber`,label:`${t} tool call errors · jump to previous tool error`,onClick:()=>r(`tool`),children:[t,(0,W.jsx)(Tc,{size:12})]}):null,c?(0,W.jsxs)(Y4,{onClick:()=>u(c.piboSessionId),children:[`Origin `,c.label]}):null,l.map(e=>(0,W.jsxs)(Y4,{onClick:()=>u(e.piboSessionId),children:[`Derived `,e.label]},e.piboSessionId))]}),s.length?(0,W.jsx)(`div`,{className:`mt-2 flex flex-wrap items-center gap-1 text-[#737373]`,children:s.map((e,t)=>(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[t>0?(0,W.jsx)(Ks,{size:12,className:`text-[#525252]`}):null,(0,W.jsx)(`button`,{type:`button`,onClick:()=>u(e.piboSessionId),className:`hover:text-[#38bdf8]`,children:e.label})]},e.piboSessionId))}):null]})}function Y4({children:e,onClick:t}){return(0,W.jsx)(`button`,{type:`button`,onClick:t,className:`border border-[#3a3a3a] px-2 py-0.5 text-[#38bdf8] hover:border-[#38bdf8]`,children:e})}function QHe({row:e,expanded:t,focused:n,piboSessionId:r,onToggle:i,onFork:a,onOpenSession:o,onThinkingLevelChange:s,onModelChanged:c,onViewImages:l,signals:u}){let d=!t&&sUe(e),f=d?oUe(e):e.lines;return e.kind===`agent.delegation`?(0,W.jsx)(`div`,{className:$4(e,n),"data-pibo-component":`TerminalRow`,"data-pibo-debug":`terminal-row`,"data-pibo-terminal-row":`true`,"data-row-id":e.id,"data-row-kind":e.kind,"data-row-status":e.status,"data-trace-node-id":e.sourceNodeIds.join(` `),"data-event-id":e.eventId,"data-run-id":e.runId,"data-order-source":e.orderSource,"data-order-stream-id":e.orderStreamId,"data-order-frame-index":e.orderStreamFrameIndex,tabIndex:n?0:void 0,"aria-current":n?`true`:void 0,children:(0,W.jsx)(h2,{title:e.title,summary:e.summary,input:e.input,output:e.output,error:e.error,traceStatus:e.status===`neutral`?`done`:e.status,linkedPiboSessionId:e.linkedPiboSessionId,startedAt:e.startedAt,completedAt:e.completedAt,durationMs:e.durationMs,signals:u,onOpenSession:o})}):(0,W.jsxs)(`div`,{className:$4(e,n),"data-pibo-component":`TerminalRow`,"data-pibo-debug":`terminal-row`,"data-pibo-terminal-row":`true`,"data-row-id":e.id,"data-row-kind":e.kind,"data-row-status":e.status,"data-trace-node-id":e.sourceNodeIds.join(` `),"data-event-id":e.eventId,"data-run-id":e.runId,"data-order-source":e.orderSource,"data-order-stream-id":e.orderStreamId,"data-order-frame-index":e.orderStreamFrameIndex,onDoubleClick:e.expandable?t=>{!e.expandable||t3(t)||i()}:void 0,onKeyDown:e.expandable?t=>{!e.expandable||t3(t)||(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),i())}:void 0,role:e.expandable?`button`:void 0,tabIndex:e.expandable||n?0:void 0,"aria-expanded":e.expandable?t:void 0,"aria-current":n?`true`:void 0,children:[(0,W.jsxs)(`div`,{className:`flex gap-3`,children:[(0,W.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,W.jsx)($He,{row:e,visibleLines:f,collapseToolCallPreview:d,piboSessionId:r,onThinkingLevelChange:s,onModelChanged:c,onFork:a})}),(0,W.jsx)(tUe,{row:e,onOpenSession:o,onViewImages:l})]}),t?(0,W.jsx)(ABe,{row:e,onOpenSession:o}):null]})}function $He({row:e,visibleLines:t,collapseToolCallPreview:n,piboSessionId:r,onThinkingLevelChange:i,onModelChanged:a,onFork:o}){return e.kind===`message.assistant`?(0,W.jsxs)(`div`,{className:`ml-[1.9rem] min-w-0`,"data-pibo-component":`TerminalAssistantMessage`,children:[(0,W.jsx)(`div`,{className:`compact-terminal-markdown`,"data-pibo-component":`MarkdownRendererHost`,"data-pibo-markdown-kind":`assistant-message`,children:(0,W.jsx)(fG,{streaming:e.status===`running`,children:typeof e.output==`string`?e.output:``})}),e.status===`running`?null:(0,W.jsx)(Z4,{timestamp:e.completedAt,durationMs:e.durationMs,speechText:typeof e.output==`string`?e.output:void 0,speechScopeKey:`${r}:${e.id}`})]}):e.kind===`message.user`?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(X4,{lines:t,status:e.status,clampPreview:n,singleLine:e.singleLine}),e.pendingMessageDelivery?(0,W.jsx)(x2,{delivery:e.pendingMessageDelivery,className:`ml-[1.9rem] mt-2`}):null,(0,W.jsx)(Z4,{timestamp:e.startedAt,forkEntryId:e.forkEntryId,onFork:o})]}):e.kind===`tool.status`?(0,W.jsx)(IHe,{row:e,piboSessionId:r}):e.kind===`tool.thinking`?(0,W.jsx)(zHe,{row:e,onLevelSelect:i}):e.kind===`tool.login`?(0,W.jsx)(lVe,{row:e,piboSessionId:r}):e.kind===`tool.model`?(0,W.jsx)(pVe,{row:e,piboSessionId:r,onModelChanged:a}):e.kind===`execution.compaction`&&e.status===`running`?(0,W.jsx)(fUe,{}):e.kind===`reasoning`&&e.markdown?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(X4,{lines:t,status:e.status,clampPreview:n,singleLine:e.singleLine}),(0,W.jsx)(`div`,{className:`ml-[1.9rem] min-w-0`,"data-pibo-component":`TerminalReasoningMarkdown`,children:(0,W.jsx)(`div`,{className:`compact-terminal-markdown compact-terminal-reasoning`,"data-pibo-component":`MarkdownRendererHost`,"data-pibo-markdown-kind":`reasoning`,children:(0,W.jsx)(fG,{streaming:e.status===`running`,children:e.markdown})})})]}):(0,W.jsx)(X4,{lines:t,status:e.status,clampPreview:n,singleLine:e.singleLine})}function X4({lines:e,status:t,clampPreview:n,singleLine:r}){return e.map((e,i)=>(0,W.jsx)(zBe,{line:e,status:t,clampLines:r?1:n&&i===0?5:void 0},i))}function Z4({timestamp:e,durationMs:t,forkEntryId:n,onFork:r,speechText:i,speechScopeKey:a}){let o=eUe(e);return!o&&!n&&!i?.trim()?null:(0,W.jsxs)(`div`,{className:`mt-1 flex items-center justify-end gap-1 font-mono text-[10px] tabular-nums text-[#737373]`,"data-pibo-component":`TerminalMessageMetadata`,children:[n&&r?(0,W.jsx)(xBe,{entryId:n,onFork:r}):null,i?.trim()?(0,W.jsx)(b2,{text:i,scopeKey:a}):null,o?(0,W.jsxs)(`span`,{children:[o,t===void 0?null:` · ${_4(t)}`]}):null]})}function eUe(e){if(!e)return;let t=new Date(e);if(Number.isFinite(t.getTime()))return new Intl.DateTimeFormat(void 0,{hour:`2-digit`,minute:`2-digit`,hourCycle:`h23`}).format(t)}function tUe({row:e,onOpenSession:t,onViewImages:n}){let r=Q4(e.imagePreviews??[]);return!e.linkedPiboSessionId&&r.length===0?null:(0,W.jsxs)(`div`,{className:`flex shrink-0 items-start gap-1`,children:[r.length?(0,W.jsxs)(c3,{label:r.length===1?`View image preview`:`View ${r.length} image previews`,onClick:()=>n(r),children:[(0,W.jsx)(Dc,{size:13,"aria-hidden":`true`}),` View`]}):null,e.linkedPiboSessionId?(0,W.jsx)(c3,{label:`Open linked session`,onClick:()=>t(e.linkedPiboSessionId),children:`Open`}):null]})}function nUe({state:e,piboSessionId:t,onClose:n,onIndexChange:r}){let i=e.images[e.index],a=i?bu(i,t)[0]:void 0,[o,s]=(0,U.useState)(`loading`),c=(0,U.useRef)(null),l=e.index>0,u=e.index+1<e.images.length;(0,U.useEffect)(()=>s(a?`loading`:`error`),[i?.id,a]);let d=t=>{t<0||t>=e.images.length||(r(t),window.requestAnimationFrame(()=>c.current?.focus()))};return(0,W.jsx)(AX,{title:`Image preview`,description:`${i?.label??`Image`} · ${e.index+1} of ${e.images.length}`,onClose:n,initialFocusRef:c,onKeyDown:t=>{if(t.key===`ArrowLeft`&&l)d(e.index-1);else if(t.key===`ArrowRight`&&u)d(e.index+1);else if(t.key===`Home`&&l)d(0);else if(t.key===`End`&&u)d(e.images.length-1);else return;t.preventDefault()},closeLabel:`Close image preview`,maxWidthClassName:`max-w-6xl`,children:(0,W.jsxs)(`div`,{ref:c,tabIndex:-1,className:`flex min-h-[12rem] flex-col bg-[#0b0b0b] outline-none sm:min-h-[18rem]`,"data-pibo-component":`TerminalImageDialog`,children:[(0,W.jsxs)(`div`,{className:`relative flex min-h-0 flex-1 items-center justify-center overflow-auto p-2 sm:p-4`,children:[a?(0,W.jsx)(`img`,{src:a,alt:`Tool image: ${i?.label??`image preview`}`,loading:`lazy`,decoding:`async`,onLoad:()=>s(`loaded`),onError:()=>s(`error`),className:`max-h-[calc(100dvh-12rem)] max-w-full object-contain ${o===`loaded`?`block`:`invisible`}`},a):null,o===`loading`?(0,W.jsx)(`div`,{className:`absolute inset-0 grid place-items-center text-xs text-[#a3a3a3]`,role:`status`,children:`Loading image preview…`}):null,o===`error`?(0,W.jsx)(`div`,{className:`absolute inset-0 grid place-items-center px-6 text-center text-xs text-[#f87171]`,role:`alert`,children:`Image preview is unavailable.`}):null]}),(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-t border-[#2a2a2a] px-3 py-2`,children:[(0,W.jsxs)(c3,{label:`Previous image`,onClick:()=>d(e.index-1),disabled:!l,children:[(0,W.jsx)(Gs,{size:14,"aria-hidden":`true`}),` Previous`]}),(0,W.jsxs)(`span`,{className:`text-[11px] tabular-nums text-[#a3a3a3]`,"aria-live":`polite`,children:[e.index+1,` / `,e.images.length]}),(0,W.jsxs)(c3,{label:`Next image`,onClick:()=>d(e.index+1),disabled:!u,children:[`Next `,(0,W.jsx)(Ks,{size:14,"aria-hidden":`true`})]})]})]})})}function Q4(e){return e.filter(e=>!!(e.payloadRef?e.traceNodeId:e.generatedToolCallId||e.path)).slice(0,20)}function $4(e,t=!1){let n=e.kind===`message.user`?`group border-b border-[#141414] bg-[#11a4d4]/10 py-2 last:border-b-0 hover:bg-[#11a4d4]/15`:e.kind===`agent.delegation`?`group border-b border-[#141414] bg-[#f97316]/5 py-2 last:border-b-0`:e.kind===`execution.command`?`group border-b border-[#141414] bg-[#f59e0b]/5 py-2 last:border-b-0 hover:bg-[#f59e0b]/10`:`group border-b border-[#141414] py-2 last:border-b-0 hover:bg-[#161616]`,r=e.expandable||t?` focus:outline-none focus:ring-1 focus:ring-[#38bdf8]/50`:``;return t?`${n}${r} ring-1 ring-[#38bdf8] bg-[#123040]`:`${n}${r}`}function rUe(e,t,n){let r=new Set;for(let i of t)e.has(i.id)&&r.add(i.id),n&&i.kind===`reasoning`&&i.expandable&&r.add(i.id);return mUe(e,r)?e:r}function e3(e,t){return t===`user`?e.kind===`message.user`:e.status===`error`?t===`tool`?e.errorKind===`tool`:e.errorKind!==`tool`:!1}function iUe(e,t,n){let r=e.map((e,t)=>({row:e,index:t})).filter(({row:e})=>e3(e,t));if(!r.length)return;let i=n?e.findIndex(e=>e.id===n):-1,a=i>=0?i:e.length;return{...r.filter(e=>e.index<a).at(-1)??r[r.length-1],fromIndex:a}}function aUe(e){let t=0,n=()=>{let r=Array.from(document.querySelectorAll(`[data-pibo-component="TerminalRow"]`)).find(t=>t.dataset.rowId===e);if(r){r.scrollIntoView({block:`start`,inline:`nearest`,behavior:`smooth`}),r.focus({preventScroll:!0});return}t+=1,t<8&&requestAnimationFrame(n)};requestAnimationFrame(()=>requestAnimationFrame(n))}function oUe(e){return e.kind===`tool.group.exploring`||e.kind===`tool.group.images`?e.lines.slice(0,YHe):e.lines}function sUe(e){return!!e.expandable&&(e.kind===`tool.call`||e.kind===`tool.image`||e.kind===`tool.group.exploring`||e.kind===`tool.group.images`||e.kind===`agent.delegation`||e.kind===`agent.async`||e.kind===`yielded.run`||e.kind===`execution.command`||e.kind===`execution.compaction`)}function t3(e){let t=e.target;if(!(t instanceof Element)||t===e.currentTarget)return!1;let n=t.closest(`button, a, input, textarea, select, summary, [role='button'], [tabindex]:not([tabindex='-1'])`);return!!(n&&n!==e.currentTarget)}var cUe=`Working...`,lUe=33;function n3({startedAt:e,isWorking:t,goal:n}){let r=dUe(t?e:void 0),{chars:i,activeIndex:a}=uUe(cUe,t),o=M2(n),s=n&&o===`active`?N2(n):void 0,c=[t?`Working`:void 0,o===`active`?`Pursuing Goal`:o===`paused`?`Goal Paused`:void 0,s?`Tokens ${s}`:void 0].filter(Boolean).join(`. `);return(0,W.jsx)(`div`,{className:`border-t border-[#141414] px-4 py-2`,role:`status`,"aria-live":`polite`,"aria-label":c,"data-pibo-component":`TerminalStreamingFooter`,"data-pibo-active-turn-started-at":t?e:void 0,children:(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-baseline justify-between gap-x-4 gap-y-1`,"aria-hidden":`true`,children:[t?(0,W.jsxs)(`div`,{className:`grid min-w-0 flex-1 grid-cols-[1.9rem_minmax(0,1fr)] gap-2 whitespace-pre-wrap break-words`,children:[(0,W.jsx)(`span`,{className:`whitespace-pre text-[#737373]`,children:`•`}),(0,W.jsxs)(`span`,{className:`inline-flex min-w-0 items-baseline gap-2`,children:[r?(0,W.jsx)(`span`,{className:`shrink-0 tabular-nums text-[#737373]`,children:r}):null,(0,W.jsx)(`span`,{className:`compact-terminal-working-scramble`,children:i.map((e,t)=>(0,W.jsx)(`span`,{className:t===a?`compact-terminal-working-scramble-active`:void 0,children:e},t))})]})]}):(0,W.jsx)(`span`,{className:`min-w-0 flex-1`}),(0,W.jsx)(EBe,{goal:n})]})})}function uUe(e,t){let n=(0,U.useMemo)(()=>Array.from(e),[e]),[r,i]=(0,U.useState)(()=>n),[a,o]=(0,U.useState)(-1);return(0,U.useEffect)(()=>{if(!t||window.matchMedia(`(prefers-reduced-motion: reduce)`).matches){i(n),o(-1);return}let e=0,r=0,a=o3(),s=0;i(i3(n)),o(0);let c=window.setInterval(()=>{if(s>0){s--;return}if(e>=n.length){e=0,r=0,a=o3(),i(i3(n)),o(0);return}let t=e,c=n[t]??` `;if(o(t),r++,r<a){i(e=>r3(e,t,a3(c)));return}i(e=>r3(e,t,c)),e++,r=0,a=o3(),e>=n.length&&(i(n),o(-1),s=18)},55);return()=>window.clearInterval(c)},[t,n]),{chars:r,activeIndex:a}}function r3(e,t,n){let r=[...e];return r[t]=n,r}function i3(e){return e.map(e=>a3(e))}function a3(e){let t=``;do{let e=lUe+Math.floor(Math.random()*94);t=String.fromCharCode(e)}while(t===e);return t}function o3(){return 2+Math.floor(Math.random()*11)}function dUe(e){let t=e?new Date(e).getTime():NaN,[n,r]=(0,U.useState)(()=>Date.now());return(0,U.useEffect)(()=>{if(r(Date.now()),!Number.isFinite(t))return;let e=window.setInterval(()=>r(Date.now()),1e3);return()=>window.clearInterval(e)},[t]),Number.isFinite(t)?_4(Math.max(0,n-t)):void 0}function fUe(){let e=pUe();return(0,W.jsxs)(`div`,{className:`grid grid-cols-[1.9rem_minmax(0,1fr)] gap-2 whitespace-pre-wrap break-words`,children:[(0,W.jsx)(`span`,{className:`whitespace-pre text-[#38bdf8]`,children:`•`}),(0,W.jsxs)(`span`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`font-semibold text-[#38bdf8]`,children:`Compacting`}),(0,W.jsx)(`span`,{className:`text-[#38bdf8]`,children:e})]})]})}function pUe(){let[e,t]=(0,U.useState)(0);return(0,U.useEffect)(()=>{let e=window.setInterval(()=>t(e=>(e+1)%4),400);return()=>window.clearInterval(e)},[]),`.`.repeat(e)}function s3({tone:e,label:t,onClick:n,children:r}){let i=`inline-flex items-center gap-1 border px-2 py-0.5 ${e===`cyan`?`border-[#1f4960] text-[#38bdf8]`:e===`red`?`border-[#5f2222] text-[#ef4444]`:e===`amber`?`border-[#6b4e16] text-[#f59e0b]`:e===`purple`?`border-purple-500/40 text-purple-300`:`border-[#3a3a3a] text-[#d4d4d4]`}`;return n?(0,W.jsx)(`button`,{type:`button`,onClick:n,className:`${i} hover:bg-white/5 focus:outline-none focus:ring-1 focus:ring-[#38bdf8]`,title:t,"aria-label":t,children:r}):(0,W.jsx)(`span`,{className:i,title:t,"aria-label":t,children:r})}function c3({label:e,onClick:t,disabled:n=!1,children:r}){return(0,W.jsx)(`button`,{type:`button`,onClick:t,disabled:n,"aria-label":e,title:e,className:`inline-flex min-h-7 min-w-7 items-center gap-1 border border-[#3a3a3a] px-2 text-[11px] text-[#a3a3a3] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:cursor-not-allowed disabled:opacity-40 disabled:hover:border-[#3a3a3a] disabled:hover:text-[#a3a3a3]`,children:r})}function l3({isLoading:e,agentProfiles:t,disabled:n,onSelectAgentProfile:r,message:i}){return(0,W.jsxs)(`div`,{className:`flex min-h-full flex-col items-center justify-center gap-4 px-6 py-10 text-center text-[12px] text-[#737373]`,children:[(0,W.jsx)(`div`,{children:e?`Loading trace…`:i??`No trace selected.`}),t.length?(0,W.jsx)(`div`,{className:`flex flex-wrap items-center justify-center gap-2`,children:t.map(e=>(0,W.jsx)(`button`,{type:`button`,disabled:n,onClick:()=>r(e.name),className:`border border-[#3a3a3a] px-2 py-1 text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:opacity-50`,children:e.name},e.name))}):null]})}function mUe(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function hUe(e,t){return t?t===`away`:e instanceof WheelEvent?e.deltaY<0:e instanceof KeyboardEvent?[`ArrowUp`,`PageUp`,`Home`].includes(e.key):e?.type===`touchmove`}function gUe({traceView:e,isLoading:t,selectedSessionStatus:n,selectedSessionSignal:r,workflowProjectSession:i,workflowLifecycleEvents:a,sessionNodes:o,onOpenSession:s,onRefreshBootstrap:c,onError:l}){let u=i?OUe(i,e,n,r,a??[],o):null;return u?(0,W.jsx)(`section`,{className:`min-w-0 flex-1 overflow-auto bg-[#0b0f14] p-4 text-slate-300`,children:(0,W.jsxs)(`div`,{className:`mx-auto flex max-w-6xl flex-col gap-4`,children:[(0,W.jsx)(_Ue,{model:u}),(0,W.jsx)(u3,{}),(0,W.jsx)(vUe,{model:u,onRefreshBootstrap:c,onError:l}),(0,W.jsx)(bUe,{model:u}),(0,W.jsx)(xUe,{model:u,onOpenSession:s}),(0,W.jsx)(SUe,{nodes:u.nodes,edges:u.edges}),(0,W.jsxs)(`div`,{className:`grid gap-4 lg:grid-cols-[minmax(0,1fr)_360px]`,children:[(0,W.jsx)(wUe,{model:u}),(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-4`,children:[(0,W.jsx)(TUe,{model:u}),(0,W.jsx)(EUe,{model:u}),(0,W.jsx)(DUe,{model:u})]})]})]})}):(0,W.jsx)(`section`,{className:`min-w-0 flex-1 overflow-auto bg-[#0b0f14] p-4 text-slate-300`,children:(0,W.jsxs)(`div`,{className:`mx-auto flex max-w-4xl flex-col gap-4`,children:[(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-semibold text-slate-100`,children:[(0,W.jsx)(Ac,{size:16,className:`text-[#11a4d4]`}),`Workflow / XState`]}),(0,W.jsx)(`p`,{className:`mt-2 text-sm text-slate-400`,children:t?`Loading session trace…`:`This session is not linked to a workflow run, so no Workflow/XState projection is available.`})]}),(0,W.jsx)(u3,{})]})})}function _Ue({model:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-semibold text-slate-100`,children:[(0,W.jsx)(Ac,{size:16,className:`text-[#11a4d4]`}),`Workflow / XState Projection`]}),(0,W.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2 text-xs`,children:[(0,W.jsx)(N3,{tone:`blue`,children:e.workflowId}),e.workflowRunId?(0,W.jsxs)(N3,{tone:`slate`,children:[`run `,I3(e.workflowRunId)]}):null,(0,W.jsx)(N3,{tone:YUe(e.status),children:e.state})]})]}),(0,W.jsxs)(`div`,{className:`min-w-0 text-right font-mono text-[11px] text-slate-500`,children:[(0,W.jsxs)(`div`,{className:`truncate`,children:[`session `,I3(e.piboSessionId)]}),e.latestStreamId===void 0?null:(0,W.jsxs)(`div`,{children:[`stream `,e.latestStreamId]})]})]}),(0,W.jsx)(`p`,{className:`mt-3 text-sm text-slate-400`,children:`Dedicated Project workflow execution surface. This view derives the current XState-style UI snapshot from project-session workflow linkage and live session state while keeping kernel records as durable truth.`})]})}function u3(){return(0,W.jsx)(`div`,{className:`rounded-sm border border-amber-500/30 bg-amber-500/10 p-4 text-sm`,children:(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-amber-200`,children:[(0,W.jsx)(Cl,{size:14}),`Workflow IR source-of-truth boundary`]}),(0,W.jsx)(`p`,{className:`mt-2 max-w-3xl text-xs leading-5 text-amber-100/80`,children:`Projects inspect configured sessions, workflow runs, and the XState-style projection derived from Pibo Workflow IR. Authoring stays in the Workflows tab; raw XState editing and inline executable code are not exposed here.`})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 flex-wrap gap-2`,children:[(0,W.jsx)(`span`,{className:`rounded border border-amber-500/40 bg-[#0b0f14]/50 px-2 py-1 text-[10px] uppercase tracking-wide text-amber-100/80`,children:`IR: source of truth`}),(0,W.jsx)(`span`,{className:`rounded border border-amber-500/40 bg-[#0b0f14]/50 px-2 py-1 text-[10px] uppercase tracking-wide text-amber-100/80`,children:`XState: projection only`})]})]})})}function vUe({model:e,onRefreshBootstrap:t,onError:n}){let r=e.workflowRunId?g3(e):void 0,i=`${e.workflowId}${e.workflowVersion?`@${e.workflowVersion}`:``}`;return(0,W.jsxs)(`div`,{className:`grid gap-4 lg:grid-cols-3`,"aria-label":`Projects workflow execution shell`,children:[(0,W.jsx)(m3,{title:`Workflow configured-session view`,icon:(0,W.jsx)(Nc,{size:14}),children:(0,W.jsxs)(`div`,{className:`space-y-3 text-xs text-slate-400`,children:[(0,W.jsx)(h3,{label:`selected workflow`,value:i}),(0,W.jsx)(h3,{label:`session state`,value:e.workflowRunId?`started`:`configured/not-started`}),(0,W.jsx)(h3,{label:`input keys`,value:String(e.configuration.inputKeys.length)}),(0,W.jsx)(h3,{label:`prompt overrides`,value:String(e.configuration.promptOverrideNodeIds.length)}),(0,W.jsx)(`p`,{className:`leading-5 text-slate-500`,children:`Saved configuration is reviewed here before Start. Workflow selection and session overrides remain immutable for this configured Project session.`})]})}),(0,W.jsx)(m3,{title:`Workflow run view`,icon:(0,W.jsx)(Es,{size:14}),children:(0,W.jsxs)(`div`,{className:`space-y-3 text-xs text-slate-400`,children:[(0,W.jsx)(h3,{label:`run id`,value:e.workflowRunId?I3(e.workflowRunId):`not started`}),(0,W.jsx)(h3,{label:`status`,value:e.state}),(0,W.jsx)(h3,{label:`current node`,value:r?.label??`none`}),(0,W.jsx)(h3,{label:`output`,value:e.finalOutput?`available`:`empty`}),(0,W.jsx)(h3,{label:`error`,value:e.runtimeErrors.length?`${e.runtimeErrors.length} runtime errors`:e.validationErrors.length?`${e.validationErrors.length} validation diagnostics`:`none`}),(0,W.jsx)(`p`,{className:`leading-5 text-slate-500`,children:`This workflow run view container is the stable Project home for status, current node, output, and error sections.`})]})}),(0,W.jsx)(m3,{title:`Human action area`,icon:(0,W.jsx)(ic,{size:14}),children:(0,W.jsx)(yUe,{model:e,onRefreshBootstrap:t,onError:n})})]})}function yUe({model:e,onRefreshBootstrap:t,onError:n}){let[r,i]=(0,U.useState)({}),[a,o]=(0,U.useState)(null),[s,c]=(0,U.useState)({}),[l,u]=(0,U.useState)({}),d=(e,t)=>{i(n=>({...n,[e]:t}))},f=async(i,a)=>{if(!i.waitTokenId||!a.registered)return;let s=`${i.waitTokenId}:${a.id}`,l=a.kind??`resume`,d;if(l===`resume`){let e=r[i.waitTokenId]??(i.payloadRequirements?.required?`{}`:``);if(e.trim())try{d=JSON.parse(e)}catch{let e=[{code:`WorkflowRuntimeError.invalidHumanActionPayload`,message:`Resume payload must be valid JSON before it can be submitted.`,severity:`error`,path:`$.payload`,hint:`Enter JSON such as {"comment":"Approved"}.`}];c(t=>({...t,[i.waitTokenId]:e})),n?.(`Resume payload must be valid JSON.`);return}}o(s),c(e=>({...e,[i.waitTokenId]:[]}));try{await eVe(e.projectId,e.piboSessionId,{waitTokenId:i.waitTokenId,actionId:a.id,...a.kind?{kind:a.kind}:{},...d===void 0?{}:{payload:d}}),u(e=>({...e,[i.waitTokenId]:`${a.displayName} submitted.`})),n?.(null),await t?.()}catch(e){let t=UUe(e);c(e=>({...e,[i.waitTokenId]:t})),n?.(t[0]?.message??D3(e))}finally{o(null)}};return(0,W.jsxs)(`div`,{className:`space-y-3 text-xs text-slate-400`,children:[e.pendingHumanActions.length?(0,W.jsx)(`div`,{className:`space-y-3`,children:e.pendingHumanActions.map(e=>{let t=[...e.diagnostics,...e.waitTokenId?s[e.waitTokenId]??[]:[]];return(0,W.jsxs)(`div`,{className:`rounded-sm border border-amber-500/40 bg-amber-500/10 p-3 text-amber-100`,"aria-label":`Pending workflow human action wait token`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`font-semibold`,children:e.label}),(0,W.jsx)(`div`,{className:`mt-1 break-words text-[11px] leading-5 text-amber-100/80`,children:e.prompt})]}),(0,W.jsx)(`span`,{className:`shrink-0 rounded border border-amber-400/40 bg-[#0b0f14]/40 px-1.5 py-0.5 font-mono text-[10px] text-amber-100/70`,children:e.waitTokenId?I3(e.waitTokenId):e.source})]}),(0,W.jsxs)(`div`,{className:`mt-2 grid gap-2 text-[11px] text-amber-100/75`,children:[(0,W.jsx)(h3,{label:`human node`,value:e.humanNodeId??`unspecified`}),(0,W.jsx)(h3,{label:`payload`,value:e.payloadRequirements?.description??`No persisted payload schema.`}),e.expiresAt?(0,W.jsx)(h3,{label:`expires`,value:e.expiresAt}):null]}),e.payloadRequirements?.schema?(0,W.jsxs)(`div`,{className:`mt-2 rounded-sm border border-amber-400/25 bg-[#0b0f14]/50 p-2`,children:[(0,W.jsx)(`div`,{className:`mb-1 text-[10px] font-bold uppercase tracking-wider text-amber-100/70`,children:`Resume payload schema`}),(0,W.jsx)(sq,{value:e.payloadRequirements.schema,defaultExpandLevel:1,maxHeight:`10rem`,showControls:!1})]}):null,e.availableActions.some(e=>e.kind===`resume`)?(0,W.jsxs)(`label`,{className:`mt-3 block text-[11px] text-amber-100/80`,children:[(0,W.jsx)(`span`,{className:`mb-1 block font-semibold`,children:`Resume payload JSON`}),(0,W.jsx)(`textarea`,{className:`min-h-20 w-full rounded-sm border border-amber-500/30 bg-[#0b0f14] px-2 py-1.5 font-mono text-[11px] text-amber-50 outline-none focus:border-[#11a4d4]`,value:r[e.waitTokenId??e.id]??(e.payloadRequirements?.required?`{}`:``),onChange:t=>d(e.waitTokenId??e.id,t.target.value),placeholder:`{"comment":"Approved"}`})]}):null,(0,W.jsx)(`div`,{className:`mt-3 flex flex-wrap gap-2`,"aria-label":`Workflow wait token actions`,children:e.availableActions.length?e.availableActions.map(t=>{let n=`${e.waitTokenId}:${t.id}`;return(0,W.jsx)(`button`,{type:`button`,disabled:!e.waitTokenId||!t.registered||a!==null,onClick:()=>void f(e,t),className:`rounded-sm border border-amber-400/40 bg-[#0b0f14]/70 px-2.5 py-1 text-[11px] font-semibold text-amber-100 transition hover:border-[#11a4d4] hover:text-[#8bdcf4] disabled:cursor-not-allowed disabled:opacity-50`,title:t.description??t.id,children:a===n?`Submitting…`:t.displayName},t.id)}):(0,W.jsx)(`span`,{className:`text-amber-100/60`,children:`No registered human actions are available for this wait token.`})}),e.waitTokenId&&l[e.waitTokenId]?(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-emerald-200`,children:l[e.waitTokenId]}):null,t.length?(0,W.jsx)(`div`,{className:`mt-2 space-y-1`,"aria-label":`Human action diagnostics`,children:t.map((e,t)=>(0,W.jsxs)(`div`,{className:`rounded border border-red-400/35 bg-red-500/15 p-2 text-[11px] leading-5 text-red-100`,children:[(0,W.jsx)(`div`,{children:e.message}),(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[10px] text-red-100/70`,children:[e.code,e.path?` · ${e.path}`:``]})]},`${e.code}:${t}`))}):null]},e.id)})}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-3 text-slate-500`,children:`No pending human action. Approval, rejection, resume, and cancel controls render here when a persisted workflow wait token exists.`}),(0,W.jsx)(`p`,{className:`leading-5 text-slate-500`,children:`This human action area lives inside the workflow run context, validates wait-token state and resume payloads, and stays separate from normal Terminal chat controls.`})]})}function bUe({model:e}){let t=e.workflowRunId?g3(e):void 0,n=[...e.runtimeErrors.map(e=>({...e,source:e.source??`runtime`})),...e.validationErrors.map(e=>({...e,source:e.source??`validation`}))].slice(0,8);return(0,W.jsxs)(`section`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4 text-sm`,"aria-label":`Workflow run inspection panel`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(uc,{size:14}),`Workflow run inspection`]}),(0,W.jsx)(`p`,{className:`mt-2 max-w-3xl text-xs leading-5 text-slate-500`,children:`Status, current node, history, attempts, transfers, output, and errors are rendered from Project session and workflow run facts when a run is linked. The XState graph remains a visualization projection only.`})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 flex-wrap gap-2 text-[10px] uppercase tracking-wide`,children:[(0,W.jsx)(`span`,{className:`rounded border border-emerald-500/40 bg-emerald-500/10 px-2 py-1 text-emerald-200`,children:`kernel/run records: truth`}),(0,W.jsx)(`span`,{className:`rounded border border-amber-500/40 bg-amber-500/10 px-2 py-1 text-amber-100`,children:`XState projection only`})]})]}),(0,W.jsxs)(`div`,{className:`mt-4 grid gap-3 lg:grid-cols-3`,children:[(0,W.jsxs)(d3,{title:`Status`,badge:e.state,icon:(0,W.jsx)(Es,{size:14}),children:[(0,W.jsx)(f3,{label:`run id`,value:e.workflowRunId?I3(e.workflowRunId):`not started`}),(0,W.jsx)(f3,{label:`status`,value:e.state}),(0,W.jsx)(f3,{label:`record source`,value:e.workflowRunId?`Project workflow run id`:`no run record yet`})]}),(0,W.jsxs)(d3,{title:`Current node`,badge:t?.status??`none`,icon:(0,W.jsx)(ol,{size:14}),children:[(0,W.jsx)(f3,{label:`node`,value:t?.label??`none`}),(0,W.jsx)(f3,{label:`node id`,value:t?.id??`none`}),(0,W.jsx)(f3,{label:`source`,value:`project/session run cursor`})]}),(0,W.jsx)(d3,{title:`Run history`,badge:`${e.runHistory.length}`,icon:(0,W.jsx)(nee,{size:14}),children:e.runHistory.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:e.runHistory.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsx)(`div`,{className:`min-w-0 truncate font-mono text-xs text-slate-200`,children:I3(e.id)}),(0,W.jsx)(`span`,{className:`rounded border px-1.5 py-0.5 text-[10px] uppercase tracking-wide ${F3(e.status)}`,children:e.status})]}),(0,W.jsxs)(`div`,{className:`mt-1 text-[11px] text-slate-500`,children:[e.currentNodeId?`current ${e.currentNodeId}`:`no current node`,` · `,e.source]}),(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[10px] text-slate-600`,children:[`updated `,e.updatedAt]})]},e.id))}):(0,W.jsx)(p3,{children:e.workflowRunId?`No workflow run history for this selected Project session yet.`:`No current run attempts; this configured Project session has not been started.`})})]}),(0,W.jsxs)(`div`,{className:`mt-3 grid gap-3 lg:grid-cols-2`,children:[(0,W.jsx)(d3,{title:`Node attempts`,badge:`${e.nodeAttempts.length}`,icon:(0,W.jsx)(Nc,{size:14}),children:e.nodeAttempts.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:e.nodeAttempts.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`truncate text-xs font-semibold text-slate-200`,children:e.label}),(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[10px] text-slate-500`,children:[e.nodeId,` · attempt `,e.attempt]})]}),(0,W.jsx)(`span`,{className:`rounded border px-1.5 py-0.5 text-[10px] uppercase tracking-wide ${F3(e.status)}`,children:e.status})]}),(0,W.jsxs)(`div`,{className:`mt-1 text-[11px] text-slate-500`,children:[e.kind,` · `,e.source]})]},e.id))}):(0,W.jsx)(p3,{children:e.workflowRunId?`No node attempts recorded for this workflow run yet.`:`No current node attempts; Start has not created a workflow run.`})}),(0,W.jsx)(d3,{title:`Edge transfers`,badge:`${e.edgeTransfers.length}`,icon:(0,W.jsx)(Cc,{size:14}),children:e.edgeTransfers.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:e.edgeTransfers.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsx)(`div`,{className:`min-w-0 truncate font-mono text-xs text-slate-200`,children:e.edgeId}),(0,W.jsx)(`span`,{className:`rounded border px-1.5 py-0.5 text-[10px] uppercase tracking-wide ${F3(e.status)}`,children:e.status})]}),(0,W.jsxs)(`div`,{className:`mt-1 text-[11px] text-slate-500`,children:[e.source,e.createdAt?` · ${e.createdAt}`:``]})]},e.id))}):(0,W.jsx)(p3,{children:`No edge transfers recorded for this workflow run yet.`})}),(0,W.jsx)(d3,{title:`Output`,badge:e.finalOutput?`available`:`empty`,icon:(0,W.jsx)($s,{size:14}),children:e.finalOutput?(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-2`,children:[(0,W.jsx)(`div`,{className:`mb-2 font-mono text-[10px] text-slate-500`,children:e.finalOutput.source}),(0,W.jsx)(sq,{value:e.finalOutput.value,defaultExpandLevel:1,maxHeight:`12rem`,showControls:!1})]}):(0,W.jsx)(p3,{children:`No workflow output has been recorded for this run yet.`})}),(0,W.jsx)(d3,{title:`Error`,badge:n.length?`${n.length}`:`none`,icon:(0,W.jsx)(Cl,{size:14}),children:n.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:n.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-red-500/35 bg-red-500/10 p-2 text-xs text-red-100`,children:[(0,W.jsx)(`div`,{className:`break-words`,children:e.message}),(0,W.jsxs)(`div`,{className:`mt-1 flex flex-wrap gap-1 font-mono text-[10px] text-red-200/70`,children:[e.code?(0,W.jsx)(`span`,{children:e.code}):null,e.source?(0,W.jsx)(`span`,{children:e.source}):null]})]},e.id))}):(0,W.jsx)(p3,{children:`No workflow run errors are recorded.`})})]})]})}function xUe({model:e,onOpenSession:t}){let n=y3(e.definitionLink);return(0,W.jsxs)(`section`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4 text-sm`,"aria-label":`Workflow navigation links`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(fc,{size:14}),`Workflow navigation links`]}),(0,W.jsx)(`p`,{className:`mt-2 max-w-3xl text-xs leading-5 text-slate-500`,children:`Use these run-view links to move between real nested workflow sessions and the Workflows tab definition. Snapshot-only history is shown when the live definition is deleted or unavailable.`})]}),e.definitionLink.status===`live`&&n?(0,W.jsxs)(`a`,{className:`inline-flex shrink-0 items-center justify-center gap-1 rounded-sm border border-[#11a4d4]/50 px-3 py-1.5 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100`,href:n,children:[(0,W.jsx)(fc,{size:13}),`Open live workflow definition`]}):null]}),(0,W.jsxs)(`div`,{className:`mt-4 grid gap-3 lg:grid-cols-2`,children:[(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0f171e] p-3`,"aria-label":`Nested workflow child session links`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-2`,children:[(0,W.jsx)(`div`,{className:`text-xs font-bold uppercase tracking-wider text-slate-500`,children:`Nested workflow child sessions`}),(0,W.jsx)(`span`,{className:`rounded border border-slate-700 bg-[#0b0f14] px-1.5 py-0.5 font-mono text-[10px] text-slate-400`,children:e.nestedSessionLinks.length})]}),e.nestedSessionLinks.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:e.nestedSessionLinks.map(e=>(0,W.jsx)(`button`,{type:`button`,onClick:()=>t(e.piboSessionId),className:`w-full rounded-sm border border-slate-800 bg-[#0b0f14] p-2 text-left transition hover:border-[#11a4d4]/60 hover:bg-[#102331]`,children:(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`truncate text-xs font-semibold text-slate-200`,children:e.title}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[10px] text-slate-500`,children:I3(e.piboSessionId)})]}),(0,W.jsx)(`span`,{className:`rounded border border-[#11a4d4]/40 bg-[#11a4d4]/10 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-[#8bdcf4]`,children:`open session`})]})},e.piboSessionId))}):(0,W.jsx)(p3,{children:`No nested workflow child sessions are linked under this selected Project session yet.`})]}),(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0f171e] p-3`,"aria-label":`Workflow definition link state`,children:[(0,W.jsx)(`div`,{className:`mb-3 text-xs font-bold uppercase tracking-wider text-slate-500`,children:`Workflow definition link`}),e.definitionLink.status===`live`&&n?(0,W.jsxs)(`div`,{className:`rounded-sm border border-emerald-500/35 bg-emerald-500/10 p-3 text-xs leading-5 text-emerald-100`,children:[(0,W.jsx)(`div`,{className:`font-semibold`,children:`Live workflow definition exists`}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-emerald-100/80`,children:x3(e.definitionLink)}),e.definitionLink.definitionHash?(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[10px] text-emerald-100/60`,children:[`snapshot `,I3(e.definitionLink.definitionHash)]}):null]}):(0,W.jsxs)(`div`,{className:`rounded-sm border border-amber-500/40 bg-amber-500/10 p-3 text-xs leading-5 text-amber-100`,children:[(0,W.jsx)(`div`,{className:`font-semibold`,children:`Definition deleted — snapshot-only definition-deleted state`}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-amber-100/80`,children:x3(e.definitionLink)}),(0,W.jsx)(`div`,{className:`mt-1 text-amber-100/80`,children:e.definitionLink.tombstoneLabel??`Historical run inspection uses the immutable Project session snapshot instead of a broken live definition link.`}),e.definitionLink.definitionHash?(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[10px] text-amber-100/60`,children:[`snapshot `,I3(e.definitionLink.definitionHash)]}):null]})]})]})]})}function d3({title:e,badge:t,icon:n,children:r}){return(0,W.jsxs)(`section`,{className:`min-w-0 rounded-sm border border-slate-800 bg-[#0f171e] p-3`,"aria-label":e,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(`span`,{className:`text-[#11a4d4]`,children:n}),e]}),(0,W.jsx)(`span`,{className:`shrink-0 rounded border border-slate-700 bg-[#0b0f14] px-1.5 py-0.5 font-mono text-[10px] text-slate-400`,children:t})]}),r]})}function f3({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-slate-800/70 py-2 first:pt-0 last:border-b-0 last:pb-0`,children:[(0,W.jsx)(`span`,{className:`text-[10px] uppercase tracking-wide text-slate-500`,children:e}),(0,W.jsx)(`span`,{className:`min-w-0 max-w-[14rem] truncate text-right font-mono text-xs text-slate-300`,title:t,children:t})]})}function p3({children:e}){return(0,W.jsx)(`div`,{className:`rounded-sm border border-dashed border-slate-800 bg-[#0b0f14] p-3 text-xs leading-5 text-slate-500`,children:e})}function m3({title:e,icon:t,children:n}){return(0,W.jsxs)(`section`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4`,"aria-label":e,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(`span`,{className:`text-[#11a4d4]`,children:t}),e]}),n]})}function h3({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-slate-800/70 pb-2 last:border-b-0 last:pb-0`,children:[(0,W.jsx)(`span`,{className:`uppercase tracking-wide text-slate-500`,children:e}),(0,W.jsx)(`span`,{className:`min-w-0 max-w-[12rem] truncate text-right font-mono text-slate-300`,title:t,children:t})]})}function g3(e){return e.nodes.find(e=>e.status===`active`||e.status===`waiting`)??e.nodes[0]}function SUe({nodes:e,edges:t}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0f171e] p-4`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(ol,{size:14}),`Visual State Flow`]}),(0,W.jsx)(`div`,{className:`grid gap-3 md:grid-cols-[1fr_auto_1fr_auto_1fr]`,children:e.map((e,n)=>(0,W.jsx)(CUe,{node:e,edge:t[n]},e.id))})]})}function CUe({node:e,edge:t}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`rounded-sm border p-3 ${P3(e.status)}`,children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,W.jsx)(M3,{status:e.status}),(0,W.jsx)(`div`,{className:`min-w-0 truncate text-sm font-semibold text-slate-100`,children:e.label})]}),(0,W.jsx)(`span`,{className:`rounded border border-slate-700 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-400`,children:e.kind})]}),(0,W.jsx)(`p`,{className:`mt-2 text-xs text-slate-400`,children:e.description})]}),t?(0,W.jsx)(`div`,{className:`hidden items-center justify-center text-center text-[10px] uppercase tracking-wide text-slate-500 md:flex`,children:(0,W.jsxs)(`div`,{children:[(0,W.jsx)(Cc,{size:14,className:`mx-auto mb-1 text-[#11a4d4]`}),t.label]})}):null]})}function wUe({model:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(Es,{size:14}),`Current UI Snapshot`]}),(0,W.jsx)(sq,{value:e.snapshot,showControls:!1})]})}function TUe({model:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4 text-sm`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(Nc,{size:14}),`Node Statuses`]}),(0,W.jsxs)(`span`,{className:`font-mono text-[11px] text-slate-500`,children:[e.nodes.length,` nodes`]})]}),(0,W.jsx)(`div`,{className:`space-y-2`,children:e.nodes.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border px-3 py-2 ${P3(e.status)}`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2`,children:[(0,W.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:(0,W.jsx)(M3,{status:e.status})}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`truncate text-sm font-semibold text-slate-100`,children:e.label}),(0,W.jsx)(`div`,{className:`mt-0.5 truncate font-mono text-[11px] text-slate-500`,children:e.id})]})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 flex-col items-end gap-1`,children:[(0,W.jsx)(`span`,{className:`rounded border px-1.5 py-0.5 text-[10px] uppercase tracking-wide ${XUe(e.status)}`,children:e.status}),(0,W.jsx)(`span`,{className:`rounded border border-slate-700 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-400`,children:e.kind})]})]}),(0,W.jsx)(`p`,{className:`mt-2 text-xs text-slate-400`,children:e.description})]},e.id))}),(0,W.jsx)(`p`,{className:`mt-3 text-xs text-slate-500`,children:`Node status is reconstructed from the workflow run linkage and live session state; persisted kernel records remain the durable source of truth.`})]})}function EUe({model:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4 text-sm`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)($s,{size:14}),`Final Output & Validation`]}),(0,W.jsxs)(`div`,{className:`space-y-4`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2`,children:[(0,W.jsx)(`div`,{className:`text-xs font-semibold uppercase tracking-wide text-slate-400`,children:`Final output`}),e.finalOutput?(0,W.jsx)(`span`,{className:`rounded border border-slate-700 px-1.5 py-0.5 font-mono text-[10px] text-slate-500`,children:e.finalOutput.source}):null]}),e.finalOutput?(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-2`,children:(0,W.jsx)(sq,{value:e.finalOutput.value,defaultExpandLevel:1,maxHeight:`14rem`,showControls:!1})}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-3 text-xs text-slate-500`,children:`No final workflow output is available yet. Completed workflow-backed sessions show the final assistant output here.`})]}),(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2`,children:[(0,W.jsx)(`div`,{className:`text-xs font-semibold uppercase tracking-wide text-slate-400`,children:`Validation errors`}),(0,W.jsx)(`span`,{className:`rounded border px-1.5 py-0.5 font-mono text-[10px] ${e.validationErrors.length?`border-red-500/40 bg-red-500/10 text-red-300`:`border-emerald-500/40 bg-emerald-500/10 text-emerald-300`}`,children:e.validationErrors.length?`${e.validationErrors.length} found`:`none`})]}),e.validationErrors.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:e.validationErrors.map(e=>(0,W.jsx)(`div`,{className:`rounded-sm border border-red-500/35 bg-red-500/10 p-2`,children:(0,W.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2 text-xs text-red-200`,children:[(0,W.jsx)(Cl,{size:14,className:`mt-0.5 shrink-0 text-red-300`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`break-words`,children:e.message}),(0,W.jsxs)(`div`,{className:`mt-1 flex flex-wrap gap-1 font-mono text-[10px] text-red-200/70`,children:[e.code?(0,W.jsx)(`span`,{children:e.code}):null,e.path?(0,W.jsx)(`span`,{children:e.path}):null,e.source?(0,W.jsx)(`span`,{children:e.source}):null]})]})]})},e.id))}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-3 text-xs text-slate-500`,children:`No workflow validation diagnostics were found in the current session trace.`})]})]})]})}function DUe({model:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4 text-sm`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(rc,{size:14}),`Projection Facts`]}),(0,W.jsxs)(`dl`,{className:`space-y-3`,children:[(0,W.jsx)(_3,{label:`projection kind`,value:`pibo.workflow.xstateUiModel`}),(0,W.jsx)(_3,{label:`schema`,value:`v1`}),(0,W.jsx)(_3,{label:`durable truth`,value:`kernel`}),(0,W.jsx)(_3,{label:`private payloads`,value:`not exposed`}),(0,W.jsx)(_3,{label:`states`,value:String(e.nodes.length)}),(0,W.jsx)(_3,{label:`transitions`,value:String(e.edges.length)}),(0,W.jsx)(_3,{label:`trace`,value:e.traceVersion??`pending`})]})]})}function _3({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-slate-800/70 pb-2 last:border-b-0 last:pb-0`,children:[(0,W.jsx)(`dt`,{className:`text-xs uppercase tracking-wide text-slate-500`,children:e}),(0,W.jsx)(`dd`,{className:`min-w-0 truncate text-right font-mono text-xs text-slate-300`,children:t})]})}function OUe(e,t,n,r,i,a){if(!WUe(e))return null;let o=A3(e,n),s=GUe(e,n),c=KUe(s),l=BUe(t,s),u=[...HUe(t),...VUe(e,i)],d=NUe(e,o,c),f=PUe(t,e.workflowRunId),p=LUe(t,e.workflowRunId),m=RUe(t,r),h=kUe(e),g=AUe(a,e.piboSessionId),_=[{id:`workflow.entry`,label:`workflow entry`,kind:`initial`,status:s===`idle`?`active`:`completed`,description:`Project session is linked to a workflow-capable route.`},{id:`node.session`,label:t?.title??`pibo session actor`,kind:`agent`,status:c===`node.session`?s:s===`completed`?`completed`:`idle`,description:`Normal Pibo routed session used as the visible workflow actor.`},{id:j3(s),label:qUe(s),kind:`terminal`,status:c.startsWith(`workflow.`)?s:`idle`,description:`Terminal state projected from the current workflow/session state.`}];return{projectId:e.projectId,workflowId:e.workflowId,...e.workflowVersion?{workflowVersion:e.workflowVersion}:{},...e.workflowRunId?{workflowRunId:e.workflowRunId}:{},piboSessionId:e.piboSessionId,state:o,status:s,traceTitle:t?.title,traceVersion:t?.version,latestStreamId:t?.latestStreamId,nodes:_,edges:[{id:`workflow.transition.entry.session`,source:`workflow.entry`,target:`node.session`,label:`WORKFLOW.START`},{id:`workflow.transition.session.terminal`,source:`node.session`,target:j3(s),label:JUe(s)}],configuration:jUe(e),definitionLink:h,nestedSessionLinks:g,pendingHumanActions:MUe(e,r),runHistory:d,nodeAttempts:f,edgeTransfers:p,runtimeErrors:m,...l?{finalOutput:l}:{},validationErrors:u,snapshot:{kind:`pibo.workflow.xstateUiModel`,schemaVersion:1,projection:{workflowId:e.workflowId,initialStateId:`workflow.entry`,durableTruth:`kernel`,exposesPrivatePayloads:!1},authoring:{location:`workflows_tab`,rawXStateEditingUi:`not_exposed`,inlineExecutableCodeUi:`not_exposed`},current:{snapshotKind:`ui`,...e.workflowRunId?{runId:e.workflowRunId}:{},status:o,stateIds:[c],nodeId:c===`node.session`?`session`:void 0},nodeStatuses:_.map(e=>({id:e.id,kind:e.kind,status:e.status})),runInspection:{durableTruth:`kernel_run_records`,xstateProjectionOnly:!0,runHistoryCount:d.length,nodeAttemptCount:f.length,edgeTransferCount:p.length,runtimeErrorCount:m.length},result:{hasFinalOutput:!!l,validationErrorCount:u.length},actors:[{id:`workflow.actor.session`,kind:`agent`,piboSessionId:e.piboSessionId}],definitionLink:{status:h.status,workflowId:h.workflowId,workflowVersion:h.workflowVersion,hasLiveLink:h.status===`live`&&!!y3(h)},nestedWorkflowSessionCount:g.length}}}function kUe(e){return e.workflowDefinitionLink?e.workflowDefinitionLink:e.workflowVersion?{status:`live`,workflowId:e.workflowId,workflowVersion:e.workflowVersion,title:e.title??e.workflowId,href:b3(e.workflowId,e.workflowVersion)}:{status:`snapshot_only_definition_deleted`,workflowId:e.workflowId,title:e.title??e.workflowId,tombstoneLabel:`Historical run inspection uses the immutable Project session snapshot instead of a broken live definition link.`}}function AUe(e,t){let n=v3(e,t);if(!n)return[];let r=[],i=e=>{for(let t of e)t.workflowSessionKind===`nested_workflow`&&r.push({piboSessionId:t.piboSessionId,title:t.title,kind:t.workflowSessionKind??t.profile??`workflow`,...t.workflowSessionKind?{workflowSessionKind:t.workflowSessionKind}:{}}),i(t.children)};return i(n.children),r}function v3(e,t){for(let n of e){if(n.piboSessionId===t)return n;let e=v3(n.children,t);if(e)return e}}function y3(e){if(e.status===`live`){if(e.href)return e.href;if(e.workflowVersion)return b3(e.workflowId,e.workflowVersion)}}function b3(e,t){return`/apps/chat/workflows/view/${encodeURIComponent(e)}/${encodeURIComponent(t)}`}function x3(e){return`${e.workflowId}${e.workflowVersion?`@${e.workflowVersion}`:``}`}function jUe(e){let t=e.configuration;return{inputKeys:Object.keys(t?.inputValues??{}).sort(),promptOverrideNodeIds:Object.keys(t?.promptOverrides??{}).sort()}}function MUe(e,t){if(e.pendingHumanActions?.length)return e.pendingHumanActions.map(e=>({id:`wait-token:${e.waitTokenId}`,waitTokenId:e.waitTokenId,workflowRunId:e.workflowRunId,...e.nodeAttemptId?{nodeAttemptId:e.nodeAttemptId}:{},...e.humanNodeId?{humanNodeId:e.humanNodeId}:{},prompt:e.prompt,label:`Pending registered human action`,source:`persisted wait token`,...e.schema?{schema:e.schema}:{},payloadRequirements:e.payloadRequirements,availableActions:e.availableActions,diagnostics:e.diagnostics,createdAt:e.createdAt,...e.expiresAt?{expiresAt:e.expiresAt}:{}}));let n=A3(e,void 0).toLowerCase(),r=[t?.aggregateStatus,t?.localStatus].filter(e=>typeof e==`string`).join(` `).toLowerCase();return n.includes(`waiting`)||n.includes(`blocked`)||r.includes(`waiting`)||r.includes(`blocked`)||t?.hasBlockedDescendant?[{id:`human-action:${e.piboSessionId}`,prompt:`Session signal indicates a wait, but no persisted workflow wait token is available in the Project run store.`,label:`Awaiting human action`,source:t?`session signal`:`project session state`,availableActions:[],diagnostics:[]}]:[]}function NUe(e,t,n){return e.workflowRunId?[{id:e.workflowRunId,status:t,currentNodeId:n,updatedAt:e.updatedAt,source:`project session run record`}]:[]}function PUe(e,t){return!t||!e?[]:S3(e.nodes).filter(FUe).slice(0,8).map((e,t)=>({id:e.id,nodeId:e.stableKey??e.entryId??e.type,label:e.title||e.type,kind:e.type,status:IUe(e.status),attempt:t+1,source:`session trace fact`,...e.startedAt?{startedAt:e.startedAt}:{},...e.completedAt?{completedAt:e.completedAt}:{}}))}function FUe(e){return e.type===`agent.turn`||e.type===`tool.call`||e.type===`execution.command`||e.type===`agent.delegation`||e.type===`agent.async`||e.type===`yielded.run`||e.type===`error`}function IUe(e){return e===`done`?`completed`:e===`error`?`failed`:`running`}function LUe(e,t){if(!t||!e)return[];let n=[];for(let r of e.rawEvents){if(!k3(r.payload))continue;let e=O3(r.payload.type),i=O3(r.payload.runId);if(e!==`edge.transferred`||i&&i!==t)continue;let a=O3(r.payload.edgeId);a&&n.push({id:O3(r.payload.edgeTransferId)??r.id,edgeId:a,status:`transferred`,source:r.type,createdAt:r.createdAt})}return n.slice(0,8)}function RUe(e,t){let n=[];for(let e of t?.errors??[])n.push({id:`signal:${n.length}`,message:e.message,...e.code?{code:e.code}:{},source:e.source??`session signal`});if(e){for(let t of S3(e.nodes)){let e=t.error??(t.status===`error`?w3(t.output)??w3(t.summary):void 0);e&&n.push({id:`node:${t.id}`,message:e,source:t.type})}for(let t of e.rawEvents){if(!k3(t.payload))continue;let e=t.payload.error,r=k3(e)?O3(e.message):O3(e),i=k3(e)?O3(e.code):void 0;r&&n.push({id:`event:${t.id}`,message:r,...i?{code:i}:{},source:t.type})}}return zUe(n).slice(0,8)}function zUe(e){let t=new Set;return e.filter(e=>{let n=`${e.code??``}:${e.message}:${e.source??``}`;return!t.has(n)&&(t.add(n),!0)})}function BUe(e,t){if(t!==`completed`||!e)return;let n=S3(e.nodes),r=[...n].reverse().find(e=>e.type===`assistant.message`&&e.status===`done`&&(e.output!==void 0||e.summary));if(r)return{value:r.output??r.summary??``,source:`assistant.message`};let i=[...n].reverse().find(e=>e.status===`done`&&e.type!==`user.message`&&e.type!==`model.reasoning`&&e.output!==void 0);return i?{value:i.output,source:i.type}:void 0}function VUe(e,t){let n=[];for(let r of t)if(r.piboSessionId===e.piboSessionId&&(r.type===`project.workflow_start.blocked`||r.validation?.trigger===`before_workflow_start`))for(let e of r.diagnostics)e.severity===`error`&&n.push({id:`lifecycle:${r.id}:${n.length}`,message:e.message,code:e.code,path:e.path,source:`start lifecycle event`});return E3(n).slice(0,8)}function HUe(e){if(!e)return[];let t=[];for(let n of S3(e.nodes)){let e=n.error??w3(n.output)??w3(n.summary);e&&(!T3([n.title,n.summary,n.error,n.type].filter(e=>typeof e==`string`).join(` `))&&!T3(e)||t.push({id:`node:${n.id}`,message:e,...n.type?{source:n.type}:{}}))}for(let n of e.rawEvents)C3(n.payload,`event:${n.id}`,t);return E3(t).slice(0,8)}function S3(e){let t=[],n=e=>{for(let r of e)t.push(r),n(r.children)};return n(e),t}function C3(e,t,n,r=0){if(r>4||!k3(e))return;let i=Array.isArray(e.diagnostics)?e.diagnostics:void 0;if(i)for(let e of i){if(!k3(e))continue;let r=O3(e.message)??w3(e);r&&n.push({id:`${t}:diagnostic:${n.length}`,message:r,...O3(e.code)?{code:O3(e.code)}:{},...O3(e.path)?{path:O3(e.path)}:{},source:`workflow.diagnostic`})}let a=e.error;if(k3(a)){let e=O3(a.code),r=O3(a.message)??w3(a);r&&T3([e,r].filter(Boolean).join(` `))&&n.push({id:`${t}:error:${n.length}`,message:r,...e?{code:e}:{},source:`workflow.error`})}else typeof a==`string`&&T3(a)&&n.push({id:`${t}:error:${n.length}`,message:a,source:`workflow.error`});for(let[i,a]of Object.entries(e))i!==`diagnostics`&&i!==`error`&&(i===`payload`||i===`output`||i===`result`||i===`data`)&&C3(a,`${t}:${i}`,n,r+1)}function w3(e){if(typeof e==`string`)return e;if(k3(e))return O3(e.message)??O3(e.error)??O3(e.summary)}function T3(e){let t=e.toLowerCase();return t.includes(`validation`)||t.includes(`validate`)||t.includes(`diagnostic`)||t.includes(`workflowinterfaceerror`)||t.includes(`workflowruntimeerror.validation`)}function E3(e){let t=new Set;return e.filter(e=>{let n=`${e.code??``}:${e.path??``}:${e.message}`;return!t.has(n)&&(t.add(n),!0)})}function UUe(e){return k3(e)&&k3(e.data)&&Array.isArray(e.data.diagnostics)?e.data.diagnostics.filter(k3).map(t=>({code:O3(t.code)??`WorkflowRuntimeError.humanActionRejected`,message:O3(t.message)??D3(e),severity:t.severity===`info`||t.severity===`warning`||t.severity===`error`?t.severity:`error`,...O3(t.path)?{path:O3(t.path)}:{},...O3(t.registryRef)?{registryRef:O3(t.registryRef)}:{},...O3(t.hint)?{hint:O3(t.hint)}:{}})):[{code:`WorkflowRuntimeError.humanActionRejected`,message:D3(e),severity:`error`}]}function D3(e){return e instanceof Error?e.message:String(e)}function O3(e){return typeof e==`string`&&e.trim()?e:void 0}function k3(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function WUe(e){return!!e.workflowRunId||e.state===`workflow`||e.workflowId!==`simple-chat`}function A3(e,t){return e.archived?`archived`:e.state&&e.state!==`workflow`?e.state.replace(/_/g,` `):t===`running`?`running`:t===`error`?`failed`:e.workflowRunId?`workflow`:e.kind}function GUe(e,t){let n=A3(e,t).toLowerCase();return e.archived?`cancelled`:n.includes(`complete`)||n.includes(`done`)?`completed`:n.includes(`fail`)||n.includes(`error`)?`failed`:n.includes(`cancel`)?`cancelled`:n.includes(`wait`)||n.includes(`blocked`)?`waiting`:!e.workflowRunId&&n.includes(`configured`)?`idle`:`active`}function KUe(e){return e===`completed`?`workflow.completed`:e===`failed`?`workflow.failed`:e===`cancelled`?`workflow.cancelled`:`node.session`}function j3(e){return e===`failed`?`workflow.failed`:e===`cancelled`?`workflow.cancelled`:`workflow.completed`}function qUe(e){return e===`failed`?`failed`:e===`cancelled`?`cancelled`:`completed`}function JUe(e){return e===`failed`?`WORKFLOW.FAIL`:e===`cancelled`?`WORKFLOW.CANCEL`:`WORKFLOW.NODE.DONE`}function M3({status:e}){return e===`completed`?(0,W.jsx)($s,{size:16,className:`text-emerald-300`}):e===`failed`?(0,W.jsx)(nc,{size:16,className:`text-red-300`}):e===`cancelled`?(0,W.jsx)(Cl,{size:16,className:`text-slate-400`}):e===`waiting`?(0,W.jsx)(ic,{size:16,className:`text-amber-300`}):e===`active`?(0,W.jsx)(Es,{size:16,className:`text-[#11a4d4]`}):(0,W.jsx)(rc,{size:16,className:`text-slate-500`})}function N3({tone:e,children:t}){return(0,W.jsx)(`span`,{className:`rounded border px-2 py-1 font-mono ${{blue:`border-[#11a4d4]/40 bg-[#11a4d4]/10 text-[#11a4d4]`,slate:`border-slate-700 bg-slate-900/50 text-slate-300`,green:`border-emerald-500/40 bg-emerald-500/10 text-emerald-300`,amber:`border-amber-500/40 bg-amber-500/10 text-amber-300`,red:`border-red-500/40 bg-red-500/10 text-red-300`}[e]}`,children:t})}function YUe(e){return e===`completed`?`green`:e===`failed`||e===`cancelled`?`red`:e===`waiting`?`amber`:`blue`}function P3(e){return e===`completed`?`border-emerald-500/40 bg-emerald-500/10`:e===`failed`?`border-red-500/40 bg-red-500/10`:e===`cancelled`?`border-slate-600 bg-slate-800/40`:e===`waiting`?`border-amber-500/40 bg-amber-500/10`:e===`active`?`border-[#11a4d4]/50 bg-[#11a4d4]/10 shadow-[0_0_0_1px_rgba(17,164,212,0.18)]`:`border-slate-800 bg-[#111820]`}function XUe(e){return e===`completed`?`border-emerald-500/40 bg-emerald-500/10 text-emerald-300`:e===`failed`||e===`cancelled`?`border-red-500/40 bg-red-500/10 text-red-300`:e===`waiting`?`border-amber-500/40 bg-amber-500/10 text-amber-300`:e===`active`?`border-[#11a4d4]/40 bg-[#11a4d4]/10 text-[#11a4d4]`:`border-slate-700 bg-slate-900/50 text-slate-400`}function F3(e){let t=e.toLowerCase();return t.includes(`complete`)||t.includes(`done`)||t.includes(`transferred`)?`border-emerald-500/40 bg-emerald-500/10 text-emerald-300`:t.includes(`fail`)||t.includes(`error`)||t.includes(`cancel`)?`border-red-500/40 bg-red-500/10 text-red-300`:t.includes(`wait`)||t.includes(`blocked`)?`border-amber-500/40 bg-amber-500/10 text-amber-300`:t.includes(`run`)||t.includes(`active`)||t.includes(`workflow`)?`border-[#11a4d4]/40 bg-[#11a4d4]/10 text-[#11a4d4]`:`border-slate-700 bg-slate-900/50 text-slate-400`}function I3(e){return e.length>18?`${e.slice(0,10)}…${e.slice(-6)}`:e}var L3=[{id:`terminal`,label:`Terminal`,description:`Compact Codex-style terminal transcript.`,render:e=>(0,W.jsx)(XHe,{...e})},{id:`workflow`,label:`Workflow`,description:`Workflow/XState visualization for workflow-backed project sessions.`,render:e=>(0,W.jsx)(gUe,{...e})}],R3=new Map(L3.map(e=>[e.id,e]));function ZUe(){return L3}function z3(e){return R3.get(e)??R3.get(`terminal`)}function B3(e,t){return{localBootstrap:t,queryData:e.getQueriesData({queryKey:[`chat`,`bootstrap`]})}}function V3(e,t,n){return e.selectedRoomId===t?n(e):e}function H3(e){let t=!!(e.tempId&&e.currentSelectedPiboSessionId===e.tempId);return e.status===`success`?{selectedPiboSessionId:t?e.createdPiboSessionId:e.currentSelectedPiboSessionId,navigateToCreatedSession:t,autoRenameCreatedSession:t}:{selectedPiboSessionId:t?e.previousSelectedPiboSessionId??null:e.currentSelectedPiboSessionId,navigateToCreatedSession:!1,autoRenameCreatedSession:!1}}function U3(e,t){return!e||t===void 0?e:{...e,selectedPiboSessionId:t??``}}function W3(e,t){return n6(e.sessions,t.piboSessionId)?e:{...e,sessions:[t,...e.sessions]}}function QUe(e,t){let n=G3(e.sessions,t),r=t.has(e.selectedPiboSessionId);return{...e,selectedPiboSessionId:r?``:e.selectedPiboSessionId,sessions:n}}function G3(e,t){let n=!1,r=[];for(let i of e){if(t.has(i.piboSessionId)){n=!0;continue}let e=G3(i.children,t);e===i.children?r.push(i):(n=!0,r.push({...i,children:e}))}return n?r:e}function K3(e){let t=new Set([e.piboSessionId]);for(let n of e.children)for(let e of K3(n))t.add(e);return t}function $Ue(e,t,n){if(!t)return W3(e,n);let r=!1,i=$3(e.sessions,t,()=>(r=!0,n));return{...e,selectedPiboSessionId:e.selectedPiboSessionId===t?n.piboSessionId:e.selectedPiboSessionId,session:e.session.id===t?t6(n,e.session):e.session,sessions:r?i:[n,...i]}}function eWe(e,t,n){let r=G3(e.sessions,new Set([t])),i=e.selectedPiboSessionId===t;return r===e.sessions&&!i?e:{...e,selectedPiboSessionId:i?n??``:e.selectedPiboSessionId,sessions:r}}function q3(e,t){let n=typeof t.metadata?.chatWebArchivedAt==`string`;return{...e,session:e.session.id===t.id?t:e.session,sessions:$3(e.sessions,t.id,e=>({...e,profile:t.profile,activeModel:t.activeModel,title:t.title||e.title||`Untitled Session`,archived:n}))}}function J3(e,t,n){let r=e.session.id===t?t6(n(e6(e.session)),e.session):e.session;return{...e,session:r,sessions:$3(e.sessions,t,n)}}function tWe(e,t){return $q(e.rooms,t.id)?e:{...e,room:t,selectedRoomId:t.id,selectedPiboSessionId:``,rooms:[t,...e.rooms]}}function nWe(e,t,n){return{...e,room:e.room?.id===t?n:e.room,selectedRoomId:e.selectedRoomId===t?n.id:e.selectedRoomId,rooms:X3(e.rooms,t,()=>n)}}function Y3(e,t,n){return{...e,room:e.room?.id===t?n(e.room):e.room,rooms:X3(e.rooms,t,n)}}function rWe(e,t){let n=t.has(e.selectedRoomId);return{...e,room:e.room&&t.has(e.room.id)?void 0:e.room,selectedRoomId:n?``:e.selectedRoomId,selectedPiboSessionId:n?``:e.selectedPiboSessionId,rooms:Z3(e.rooms,t)}}function X3(e,t,n){let r=!1,i=e.map(e=>{if(e.id===t)return r=!0,n(e);let i=e.children??[],a=X3(i,t,n);return a===i?e:(r=!0,{...e,children:a})});return r?i:e}function Z3(e,t){let n=!1,r=[];for(let i of e){if(t.has(i.id)){n=!0;continue}let e=i.children??[],a=Z3(e,t);a===e?r.push(i):(n=!0,r.push({...i,children:a}))}return n?r:e}function iWe(e,t){let n=new Date().toISOString();return{id:e,name:t,type:`chat`,createdAt:n,updatedAt:n,metadata:{},children:[]}}function aWe(e,t){let n={...e.metadata};return t?n.chatRoomArchivedAt=new Date().toISOString():delete n.chatRoomArchivedAt,{...e,metadata:n,updatedAt:new Date().toISOString()}}function Q3(e){let t=new Set([e.id]);for(let n of e.children??[])for(let e of Q3(n))t.add(e);return t}function $3(e,t,n){let r=!1,i=e.map(e=>{if(e.piboSessionId===t)return r=!0,n(e);let i=$3(e.children,t,n);return i===e.children?e:(r=!0,{...e,children:i})});return r?i:e}function oWe(e,t){return{piboSessionId:e,piSessionId:`pending`,profile:t,title:`New Session`,status:`idle`,lastActivityAt:new Date().toISOString(),derivedSessions:[],children:[]}}function e6(e){return{piboSessionId:e.id,piSessionId:e.piSessionId,profile:e.profile,activeModel:e.activeModel,title:e.title||`Untitled Session`,archived:typeof e.metadata?.chatWebArchivedAt==`string`,status:`idle`,lastActivityAt:e.updatedAt,derivedSessions:[],children:[]}}function t6(e,t){return{...t,id:e.piboSessionId,piSessionId:e.piSessionId,profile:e.profile,activeModel:e.activeModel,title:Yq(e),updatedAt:e.lastActivityAt??t.updatedAt}}function n6(e,t){for(let n of e){if(n.piboSessionId===t)return n;let e=n6(n.children,t);if(e)return e}}function sWe(e){let t=e.trim();if(t.length>=2){let e=t[0],n=t[t.length-1];if(e===`"`&&n===`"`||e===`'`&&n===`'`)return t.slice(1,-1).trim()}return t}function r6(e,t){if(e===`thinking`&&t)return{level:t.split(/\s+/,1)[0]};if(e===`compact`&&t)return{customInstructions:t};if(e===`goal`)return{command:t}}function cWe(e){return!i6(e)||!i6(e.result)?null:e}function lWe(e){if(!(!i6(e)||!i6(e.result)))return typeof e.result.piboSessionId==`string`?e.result.piboSessionId:void 0}function i6(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function uWe(e){let t=e.flatMap(e=>e.slashCommands.filter(e=>e!==`tree`).map(t=>({slash:`/${t}`,action:e.name,description:e.name===`thinking`&&t===`thinking`?`Show thinking level or use /thinking <level>.`:e.description??e.name})));return t.push({slash:`/download`,action:`download`,description:`Download a file by absolute path or relative to the current working directory.`},{slash:`/upload`,action:`upload`,description:`Upload one or more files to the configured Pibo uploads directory.`},{slash:`/thinking-show`,action:`thinking-show`,description:`Toggle historical thinking display in this browser.`}),t}function dWe(e,t){if(!e)return[];let n=e.agentCatalog?.skills??[],r=e.agentCatalog?.userSkills??[],i=[...n,...r],a=jQ(e),o=t?NQ(e.sessions,t)?.profile??a:a,s=[...e.agents.map(e=>({name:e.name,skills:e.skills})),...e.customAgents.map(e=>({name:e.profileName,skills:e.skills}))].find(e=>e.name===o),c=new Set(s?.skills??[]);return i.filter(e=>c.has(e.name))}function fWe(e,t){let n=e.area===`sessions`?e.roomId:void 0,r=e.area===`sessions`||e.area===`projects`||e.area===`context`?e.piboSessionId:void 0,i=n?t.sessionsByRoom?.[n]:t.piboSessionId;return{requestedRoomId:e.area===`sessions`?n??(r?void 0:t.roomId):e.area===`context`&&r?void 0:t.roomId,requestedPiboSessionId:e.area===`sessions`?r??(r?void 0:i):e.area===`context`?r:t.piboSessionId}}function pWe(e){let{bootstrap:t,creatingSession:n,route:r}=e,i=r.area===`sessions`||r.area===`projects`||r.area===`context`?r.piboSessionId:void 0;return t&&r.area!==`sessions`&&(r.area!==`context`||!i||t.selectedPiboSessionId===i)||n?!0:!!(t&&r.area===`sessions`&&r.piboSessionId&&t.selectedPiboSessionId===r.piboSessionId&&t.selectedRoomId===r.roomId)}function mWe(e,t){if(e.area===`sessions`&&t.selectedPiboSessionId&&(e.roomId!==t.selectedRoomId||e.piboSessionId!==t.selectedPiboSessionId))return t}function hWe(e){return e.area===`sessions`&&!!(e.roomId||e.piboSessionId)}function gWe(e){if(!(!e||typeof e!=`object`||!(`status`in e)))return typeof e.status==`number`?e.status:void 0}function _We(e){return e instanceof Error?e.message:String(e)}function vWe(e){let t=gWe(e),n=_We(e);return t===401||t===403?{kind:`authentication-required`,message:n}:e instanceof TypeError||/failed to fetch|network(?:error| request failed)|internet disconnected|load failed/i.test(n)?{kind:`load-failed`,message:`Could not connect to Pibo Chat. Check your network connection and try again.`}:t!==void 0&&t>=500?{kind:`load-failed`,message:`Could not load Pibo Chat. The server may be unavailable. Try again.`}:{kind:`load-failed`,message:`Could not load Pibo Chat. Try again.`}}function a6({activePanel:e,onSelect:t,piPackageCount:n,userSkillCount:r}){return(0,W.jsx)(`div`,{className:`p-2`,children:(0,W.jsxs)(`div`,{className:`mb-4`,children:[(0,W.jsx)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Settings`}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`general`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`general`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(ml,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`General`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`browser + runtime`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`concurrency`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`concurrency`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Sc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Concurrency`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`yielded runs`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`previews`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`previews`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Kc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Previews`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`server pool + lease`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`transcription`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`transcription`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Wc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Transcription`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`audio provider`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`speech`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`speech`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Dl,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Speech`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`text-to-speech`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`shortcuts`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`shortcuts`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(kc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Shortcuts`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`keyboard`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`maintenance`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`maintenance`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(uc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Maintenance`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`telemetry retention`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`pi-packages`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`pi-packages`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Ac,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Pi Packages`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`runtime-packages`})]}),(0,W.jsx)(`span`,{className:`inline-flex min-w-6 items-center justify-center border border-slate-700 bg-[#101d22] px-1.5 py-0.5 text-[10px] font-mono text-slate-400`,children:n})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`skills`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`skills`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(kl,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Skills`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`user-managed`})]}),(0,W.jsx)(`span`,{className:`inline-flex min-w-6 items-center justify-center border border-slate-700 bg-[#101d22] px-1.5 py-0.5 text-[10px] font-mono text-slate-400`,children:r})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`providers`),className:`flex w-full items-center gap-2 border p-2 text-left ${e===`providers`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Oc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Providers`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`auth + api keys`})]})]})]})})}function yWe({piboSessionId:e,onProviderAuthChanged:t}){let[n,r]=(0,U.useState)(null),[i,a]=(0,U.useState)(!0),[o,s]=(0,U.useState)(null),[c,l]=(0,U.useState)(null),[u,d]=(0,U.useState)({}),[f,p]=(0,U.useState)({}),[m,h]=(0,U.useState)({}),[g,_]=(0,U.useState)({}),[v,y]=(0,U.useState)(null),[b,x]=(0,U.useState)({}),S=(0,U.useRef)(!1),C=(0,U.useCallback)(async(e=!1)=>{e&&a(!0);try{r(await GBe()),s(null)}catch(e){s(e instanceof Error?e.message:String(e))}finally{a(!1)}},[]);(0,U.useEffect)(()=>{C(!0)},[C]);let w=(0,U.useMemo)(()=>n?.targets.flatMap(e=>e.providers.flatMap(t=>t.pending?.completion===`notification`?[{target:e,provider:t,flowId:t.pending.flowId}]:[]))??[],[n]);(0,U.useEffect)(()=>{if(w.length===0)return;let e=async()=>{if(!S.current){S.current=!0;try{for(let{target:e,provider:n,flowId:r}of w){let i=await X2({action:`complete`,runtimeInstanceId:e.runtimeInstanceId,providerId:n.id,flowId:r});(i.state===`connected`||i.state===`partial`)&&(f6(l,`${e.displayName} / ${n.displayName??n.id} is ${l6(i.state).toLowerCase()}.`),await t?.())}await C()}catch(e){s(e instanceof Error?e.message:String(e)),await C()}finally{S.current=!1}}},n=window.setInterval(()=>void e(),1500);return()=>window.clearInterval(n)},[w,t,C]);let T=(0,U.useCallback)(async(e,t)=>{x(t=>({...t,[e]:!0})),s(null),l(null);try{return await t()}catch(e){s(e instanceof Error?e.message:String(e));return}finally{x(t=>({...t,[e]:!1}))}},[]),E=(0,U.useCallback)(async(e,t,n)=>{let r=s6(e,t);await T(r,async()=>await X2({action:`start`,runtimeInstanceId:e.runtimeInstanceId,providerId:t.id,method:n}))&&await C()},[C,T]),D=(0,U.useCallback)(async(e,n,r)=>{if(!n.pending)return;let i=s6(e,n),a=await T(i,async()=>await X2({action:`complete`,runtimeInstanceId:e.runtimeInstanceId,providerId:n.id,flowId:n.pending.flowId,...r?{code:r}:{}}));a&&((a.state===`connected`||a.state===`partial`)&&(f6(l,`${e.displayName} / ${n.displayName??n.id} is ${l6(a.state).toLowerCase()}.`),p(e=>({...e,[i]:``})),await t?.()),await C())},[t,C,T]),O=(0,U.useCallback)(async(e,t)=>{if(!t.pending)return;let n=s6(e,t);await T(n,async()=>await X2({action:`cancel`,runtimeInstanceId:e.runtimeInstanceId,providerId:t.id,flowId:t.pending.flowId}))&&await C()},[C,T]),k=(0,U.useCallback)(async(e,n)=>{let r=s6(e,n),i=m[r]?.trim();i&&await T(r,async()=>await X2({action:`api_key`,runtimeInstanceId:e.runtimeInstanceId,providerId:n.id,apiKey:i}))&&(h(e=>({...e,[r]:``})),_(e=>({...e,[r]:!1})),d(e=>({...e,[r]:`collapsed`})),f6(l,`${e.displayName} / ${n.displayName??n.id} API key is configured.`),await t?.(),await C())},[m,t,C,T]),A=(0,U.useCallback)(async(e,n)=>{let r=s6(e,n);await T(r,async()=>await X2({action:`logout`,runtimeInstanceId:e.runtimeInstanceId,providerId:n.id}))&&(f6(l,`${e.displayName} / ${n.displayName??n.id} is disconnected.`),await t?.(),await C())},[t,C,T]),j=(0,U.useCallback)(async(e,t)=>{try{await navigator.clipboard.writeText(t),y(e),window.setTimeout(()=>y(t=>t===e?null:t),1800)}catch{}},[]);return(0,W.jsxs)(`div`,{className:`grid gap-4`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border border-slate-700 bg-[#1a262b] p-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-xs font-bold uppercase tracking-wider text-slate-300`,children:`Runtime authentication targets`}),(0,W.jsx)(`div`,{className:`mt-1 text-[11px] leading-relaxed text-slate-500`,children:`Each target owns its effective account. The default runtime is marked below; credentials are never copied between runtimes.`})]}),(0,W.jsxs)(`button`,{type:`button`,disabled:i,onClick:()=>void C(!0),className:`inline-flex shrink-0 items-center gap-1 border border-slate-700 bg-[#0e1116] px-2 py-1 text-[11px] text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:[(0,W.jsx)(il,{size:12,className:i?`animate-spin`:``}),` Refresh`]})]}),o?(0,W.jsx)(d6,{tone:`red`,icon:(0,W.jsx)(Qs,{size:14}),children:o}):null,c?(0,W.jsx)(d6,{tone:`green`,icon:(0,W.jsx)(ec,{size:14}),children:c}):null,i&&!n?(0,W.jsx)(d6,{tone:`cyan`,icon:(0,W.jsx)(Ic,{size:14,className:`animate-spin`}),children:`Loading runtime authentication status...`}):null,n?.targets.map(e=>(0,W.jsxs)(`section`,{className:`border border-[#334155] bg-[#151f24]`,children:[(0,W.jsxs)(`header`,{className:`flex flex-wrap items-start justify-between gap-3 border-b border-slate-800 px-3 py-2.5`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(pl,{size:14,className:`text-[#11a4d4]`}),(0,W.jsx)(`span`,{className:`text-sm font-medium text-slate-200`,children:e.displayName}),(0,W.jsx)(`span`,{className:`font-mono text-[10px] text-slate-500`,children:e.runtimeInstanceId}),e.isDefault?(0,W.jsx)(u6,{tone:`cyan`,children:`Default runtime`}):null,(0,W.jsx)(CWe,{state:e.state})]}),(0,W.jsx)(`div`,{className:`mt-1 text-[11px] text-slate-500`,children:e.credentialScope===`runtime-instance`?`Private account for this configured runtime instance.`:`Shared adapter credential store; changes apply to Pi instances using this adapter.`})]}),(0,W.jsx)(`div`,{className:`font-mono text-[10px] uppercase tracking-wider text-slate-600`,children:e.adapterId})]}),e.providers.length===0?(0,W.jsx)(`div`,{className:`px-3 py-3 text-xs text-slate-500`,children:e.state===`unsupported`?`This runtime does not expose provider authentication controls.`:`Provider authentication status is unavailable for this runtime.`}):e.providers.map(t=>{let n=s6(e,t),r=u[n]??`collapsed`,i=b[n]??!1,a=t.pending;return(0,W.jsxs)(`div`,{className:`border-b border-slate-800 last:border-b-0`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3 px-3 py-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-sm text-slate-200`,children:t.displayName??t.id}),(0,W.jsx)(`span`,{className:`font-mono text-[10px] text-slate-600`,children:t.id}),t.methods.map(e=>(0,W.jsx)(u6,{tone:e.id===`api_key`?`amber`:`purple`,children:c6(e.id)},e.id))]}),(0,W.jsxs)(`div`,{className:`mt-1 flex flex-wrap items-center gap-2 text-[11px]`,children:[(0,W.jsx)(SWe,{state:t.state}),(0,W.jsx)(`span`,{className:xWe(t.state),children:l6(t.state)}),t.details?.accountType?(0,W.jsx)(`span`,{className:`text-slate-600`,children:wWe(t.details.accountType)}):null,t.details?.planType?(0,W.jsxs)(`span`,{className:`text-slate-600`,children:[`plan: `,t.details.planType]}):null]}),t.message?(0,W.jsx)(`div`,{className:`mt-1 text-[11px] text-slate-500`,children:t.message}):null]}),(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[t.state!==`pending`&&t.methods.map(a=>a.id===`api_key`?(0,W.jsxs)(`button`,{type:`button`,disabled:i||!e.available,onClick:()=>{let e=r===`api_key`;d(t=>({...t,[n]:e?`collapsed`:`api_key`})),e&&(h(e=>({...e,[n]:``})),_(e=>({...e,[n]:!1})))},className:o6,children:[(0,W.jsx)(Oc,{size:12}),` `,t.configured?`Replace key`:`API key`]},a.id):(0,W.jsxs)(`button`,{type:`button`,disabled:i||!e.available,onClick:()=>void E(e,t,a.id),className:o6,children:[i?(0,W.jsx)(Ic,{size:12,className:`animate-spin`}):(0,W.jsx)(Rc,{size:12}),` `,t.configured?`Reconnect`:c6(a.id)]},a.id)),(t.configured||t.state===`failed`)&&e.logoutSupported?(0,W.jsxs)(`button`,{type:`button`,disabled:i,onClick:()=>void A(e,t),className:`${o6} hover:!border-red-500 hover:!text-red-300`,children:[(0,W.jsx)(Sl,{size:12}),` `,t.configured?`Disconnect`:`Reset auth`]}):null]})]}),a?(0,W.jsx)(bWe,{flow:a,rowKey:n,busy:i,code:f[n]??``,onCodeChange:e=>p(t=>({...t,[n]:e})),onComplete:n=>void D(e,t,n),onCancel:e.cancelSupported?()=>void O(e,t):void 0,copied:v,onCopy:j}):r===`api_key`?(0,W.jsxs)(`div`,{className:`grid gap-2 border-t border-slate-800 bg-[#10191d] px-3 py-3`,children:[(0,W.jsxs)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:[`API key for `,e.runtimeInstanceId]}),(0,W.jsxs)(`div`,{className:`relative`,children:[(0,W.jsx)(`input`,{type:g[n]?`text`:`password`,value:m[n]??``,autoComplete:`off`,spellCheck:!1,onChange:e=>h(t=>({...t,[n]:e.target.value})),onKeyDown:n=>{n.key===`Enter`&&k(e,t)},placeholder:`Enter provider API key`,className:`w-full border border-slate-700 bg-[#0e1116] px-2 py-1.5 pr-8 font-mono text-[12px] text-slate-300 outline-none placeholder:text-slate-600 focus:border-[#11a4d4]`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>_(e=>({...e,[n]:!e[n]})),className:`absolute right-2 top-1/2 -translate-y-1/2 text-slate-500 hover:text-[#11a4d4]`,"aria-label":g[n]?`Hide API key`:`Show API key`,children:g[n]?(0,W.jsx)(pc,{size:14}):(0,W.jsx)(mc,{size:14})})]}),(0,W.jsxs)(`div`,{className:`flex gap-2`,children:[(0,W.jsxs)(`button`,{type:`button`,disabled:i||!(m[n]??``).trim(),onClick:()=>void k(e,t),className:o6,children:[i?(0,W.jsx)(Ic,{size:12,className:`animate-spin`}):(0,W.jsx)(ec,{size:12}),` Save for this target`]}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>{h(e=>({...e,[n]:``})),_(e=>({...e,[n]:!1})),d(e=>({...e,[n]:`collapsed`}))},className:`text-[11px] text-slate-500 hover:text-[#11a4d4]`,children:`Cancel`})]})]}):null]},t.id)}),e.diagnostics.some(e=>e.severity!==`info`)?(0,W.jsx)(`div`,{className:`border-t border-slate-800 px-3 py-2 text-[11px] text-slate-500`,children:e.diagnostics.find(e=>e.severity===`error`)?.message??e.diagnostics.find(e=>e.severity===`warning`)?.message}):null]},e.runtimeInstanceId)),n&&n.targets.length===0?(0,W.jsx)(`div`,{className:`border border-slate-700 bg-[#1a262b] p-4 text-sm text-slate-500`,children:`No configured runtime authentication targets are available.`}):null]})}function bWe({flow:e,rowKey:t,busy:n,code:r,onCodeChange:i,onComplete:a,onCancel:o,copied:s,onCopy:c}){let l=e.method===`browser_oauth`&&!e.userCode;return(0,W.jsxs)(`div`,{className:`grid gap-3 border-t border-slate-800 bg-[#10191d] px-3 py-3 text-[11px]`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[#11a4d4]`,children:[e.completion===`notification`?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(ic,{size:13}),e.completion===`notification`?`Waiting for the runtime's completion notification...`:`Login flow is pending.`]}),e.verificationUrl?(0,W.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Verification URL`}),(0,W.jsx)(`div`,{className:`break-all border border-slate-700 bg-[#0e1116] p-2 font-mono text-slate-300`,children:e.verificationUrl}),(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,W.jsxs)(`button`,{type:`button`,onClick:()=>void c(`${t}:url`,e.verificationUrl),className:o6,children:[s===`${t}:url`?(0,W.jsx)(ec,{size:12}):(0,W.jsx)(sc,{size:12}),` `,s===`${t}:url`?`Copied`:`Copy URL`]}),(0,W.jsxs)(`a`,{href:e.verificationUrl,target:`_blank`,rel:`noreferrer`,className:o6,children:[(0,W.jsx)(fc,{size:12}),` Open in browser`]})]})]}):null,e.userCode?(0,W.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`One-time code`}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>void c(`${t}:code`,e.userCode),className:`w-fit border border-[#1f4960] bg-[#0e1116] px-3 py-2 font-mono text-lg font-bold tracking-[0.2em] text-[#11a4d4] hover:border-[#11a4d4]`,children:[e.userCode,` `,s===`${t}:code`?(0,W.jsx)(ec,{size:12,className:`inline`}):null]})]}):null,e.instructions?(0,W.jsx)(`div`,{className:`text-slate-500`,children:e.instructions}):null,l?(0,W.jsx)(`input`,{value:r,autoComplete:`off`,spellCheck:!1,onChange:e=>i(e.target.value),placeholder:`Paste authorization code`,className:`border border-slate-700 bg-[#0e1116] px-2 py-1.5 font-mono text-slate-300 outline-none placeholder:text-slate-600 focus:border-[#11a4d4]`}):null,(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[e.completion===`explicit`?(0,W.jsxs)(`button`,{type:`button`,disabled:n||l&&!r.trim(),onClick:()=>a(l?r.trim():void 0),className:o6,children:[n?(0,W.jsx)(Ic,{size:12,className:`animate-spin`}):(0,W.jsx)(ec,{size:12}),` Complete login`]}):null,o?(0,W.jsxs)(`button`,{type:`button`,disabled:n,onClick:o,className:`${o6} hover:!border-red-500 hover:!text-red-300`,children:[(0,W.jsx)(nc,{size:12}),` Cancel flow`]}):null]})]})}var o6=`inline-flex items-center gap-1 border border-slate-700 bg-[#0e1116] px-2 py-1 text-[11px] text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`;function s6(e,t){return`${e.runtimeInstanceId}:${t.id}`}function c6(e){return e===`api_key`?`API key`:e===`browser_oauth`?`Browser OAuth`:`Device code`}function l6(e){return e.charAt(0).toUpperCase()+e.slice(1)}function xWe(e){return e===`connected`?`text-[#0bda57]`:e===`pending`?`text-[#11a4d4]`:e===`partial`?`text-amber-300`:e===`failed`?`text-red-300`:`text-slate-500`}function SWe({state:e}){return e===`connected`?(0,W.jsx)(ec,{size:12,className:`text-[#0bda57]`}):e===`pending`?(0,W.jsx)(Ic,{size:12,className:`animate-spin text-[#11a4d4]`}):e===`failed`?(0,W.jsx)(Qs,{size:12,className:`text-red-400`}):e===`partial`?(0,W.jsx)(Qs,{size:12,className:`text-amber-300`}):(0,W.jsx)(Rc,{size:12,className:`text-slate-500`})}function CWe({state:e}){return(0,W.jsx)(u6,{tone:e===`connected`?`green`:e===`pending`?`cyan`:e===`partial`?`amber`:e===`failed`?`red`:`neutral`,children:l6(e)})}function u6({tone:e,children:t}){return(0,W.jsx)(`span`,{className:`border px-1.5 py-0.5 text-[10px] font-mono uppercase tracking-wider ${e===`cyan`?`border-[#11a4d4]/40 text-[#6dd7f6]`:e===`green`?`border-[#0bda57]/40 text-[#7cf2a2]`:e===`amber`?`border-amber-500/40 text-amber-300`:e===`purple`?`border-purple-500/40 text-purple-300`:e===`red`?`border-red-500/40 text-red-300`:`border-slate-700 text-slate-500`}`,children:t})}function d6({tone:e,icon:t,children:n}){return(0,W.jsxs)(`div`,{className:`flex items-center gap-2 border px-3 py-2 text-xs ${e===`red`?`border-red-500/30 bg-red-500/10 text-red-300`:e===`green`?`border-[#0bda57]/30 bg-[#0bda57]/10 text-[#7cf2a2]`:`border-[#11a4d4]/30 bg-[#11a4d4]/10 text-[#6dd7f6]`}`,children:[t,n]})}function wWe(e){return e===`api_key`?`API key account`:e===`chatgpt`?`ChatGPT account`:e===`oauth`?`OAuth account`:`Managed account`}function f6(e,t){e(t),window.setTimeout(()=>e(e=>e===t?null:e),5e3)}function p6({activePanel:e,showThinking:t,setShowThinking:n,expandThinking:r,setExpandThinking:i,modelDefaults:a,modelCatalog:o,onModelDefaultsChanged:s,piPackages:c,onPiPackageChanged:l,onPiPackageRemoved:u,userSkills:d,onUserSkillChanged:f,onUserSkillRemoved:p,piboSessionId:m,onProviderAuthChanged:h}){return e===`pi-packages`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(Ac,{size:16}),`Pi Packages`]}),(0,W.jsx)(RWe,{packages:c,onPackageChanged:l,onPackageRemoved:u})]}):e===`skills`?(0,W.jsxs)(`div`,{className:`overflow-auto p-6 max-[640px]:p-3`,children:[(0,W.jsxs)(`h1`,{className:`mb-4 flex items-center gap-2 text-sm font-bold uppercase tracking-wider`,children:[(0,W.jsx)(kl,{size:16}),`Skills`]}),(0,W.jsx)(zWe,{skills:d,onSkillChanged:f,onSkillRemoved:p})]}):e===`concurrency`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(Sc,{size:16}),`Concurrency`]}),(0,W.jsx)(FJ,{title:`Yielded runs`,children:(0,W.jsx)(TWe,{})})]}):e===`transcription`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(Wc,{size:16}),`Transcription`]}),(0,W.jsx)(FJ,{title:`Audio transcription`,children:(0,W.jsx)(kWe,{})})]}):e===`previews`?(0,W.jsxs)(`div`,{className:`overflow-auto p-6 max-[640px]:p-3`,children:[(0,W.jsxs)(`h1`,{className:`mb-4 flex items-center gap-2 text-sm font-bold uppercase tracking-wider`,children:[(0,W.jsx)(Kc,{size:16}),`Previews`]}),(0,W.jsx)(FJ,{title:`Managed Preview servers`,children:(0,W.jsx)(EWe,{})})]}):e===`speech`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(Dl,{size:16}),`Speech`]}),(0,W.jsx)(FJ,{title:`Text-to-speech`,children:(0,W.jsx)(AWe,{})})]}):e===`providers`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(Oc,{size:16}),`Providers`]}),(0,W.jsx)(yWe,{piboSessionId:m,onProviderAuthChanged:h})]}):e===`shortcuts`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(kc,{size:16}),`Shortcuts`]}),(0,W.jsx)(NWe,{})]}):e===`maintenance`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(ml,{size:16}),`Maintenance`]}),(0,W.jsx)(jWe,{})]}):(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(ml,{size:16}),`General`]}),(0,W.jsxs)(FJ,{title:`General`,children:[(0,W.jsx)(OWe,{}),(0,W.jsx)(BJ,{checked:t,title:`Show thinking blocks`,onToggle:()=>{let e=!t;n(e),AY(e)}}),(0,W.jsx)(BJ,{checked:r,disabled:!t,title:`Expand thinking blocks`,onToggle:()=>{let e=!r;i(e),jY(e)}}),(0,W.jsx)(LWe,{modelDefaults:a,modelCatalog:o,onChanged:s})]})]})}function TWe(){let e=On(),{data:t,isLoading:n}=Un({queryKey:[`gateway-settings`],queryFn:BTe}),[r,i]=(0,U.useState)(`50`),[a,o]=(0,U.useState)(`10`),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(null),[d,f]=(0,U.useState)(null);(0,U.useEffect)(()=>{t&&(i(String(t.maxConcurrentYieldedRuns)),o(String(t.sessionConcurrentYieldedRuns)))},[t]);let p=async()=>{let t=Number(r),n=Number(a);if(!Number.isSafeInteger(t)||t<1){f(`Gateway concurrency must be a positive integer.`);return}if(!Number.isSafeInteger(n)||n<1){f(`Session concurrency must be a positive integer.`);return}c(!0),u(null),f(null);try{let r=await VTe({maxConcurrentYieldedRuns:t,sessionConcurrentYieldedRuns:n});i(String(r.maxConcurrentYieldedRuns)),o(String(r.sessionConcurrentYieldedRuns)),e.setQueryData([`gateway-settings`],r),u(`Concurrency settings saved. New yielded runs use these limits immediately.`)}catch(e){f(e instanceof Error?e.message:String(e))}finally{c(!1)}};return(0,W.jsxs)(`div`,{className:`max-w-xl`,children:[(0,W.jsx)(`p`,{className:`mb-4 text-xs text-slate-400`,children:`Limit concurrent yielded tool and subagent runs across the gateway and within each controlling Pibo Session.`}),(0,W.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,W.jsxs)(`label`,{className:`block text-xs text-slate-300`,htmlFor:`gateway-concurrent-yielded-runs`,children:[(0,W.jsx)(`span`,{className:`mb-1 block font-semibold`,children:`Gateway limit`}),(0,W.jsx)(`input`,{id:`gateway-concurrent-yielded-runs`,type:`number`,min:`1`,step:`1`,value:r,disabled:n||s,onChange:e=>i(e.target.value),className:`w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 font-mono text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`mt-1 block text-[11px] text-slate-500`,children:`Default: 50 across this gateway.`})]}),(0,W.jsxs)(`label`,{className:`block text-xs text-slate-300`,htmlFor:`session-concurrent-yielded-runs`,children:[(0,W.jsx)(`span`,{className:`mb-1 block font-semibold`,children:`Per-session limit`}),(0,W.jsx)(`input`,{id:`session-concurrent-yielded-runs`,type:`number`,min:`1`,step:`1`,value:a,disabled:n||s,onChange:e=>o(e.target.value),className:`w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 font-mono text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`mt-1 block text-[11px] text-slate-500`,children:`Default: 10 for each controlling session.`})]})]}),(0,W.jsxs)(`div`,{className:`mt-4 flex items-center gap-3`,children:[(0,W.jsx)(`button`,{type:`button`,disabled:n||s,onClick:()=>void p(),className:`whitespace-nowrap rounded-sm bg-[#11a4d4] px-3 py-2 text-xs font-semibold text-white hover:bg-[#0d8db7] disabled:opacity-60`,children:s?`Saving…`:`Save limits`}),l?(0,W.jsx)(`span`,{className:`text-xs text-green-400`,children:l}):null]}),d?(0,W.jsx)(`div`,{className:`mt-3 text-xs text-red-300`,children:d}):null,(0,W.jsx)(`p`,{className:`mt-4 font-mono text-[10px] text-slate-500`,children:`Environment fallbacks: PIBO_GATEWAY_MAX_CONCURRENT_YIELDED_RUNS and PIBO_SESSION_CONCURRENT_YIELDED_RUNS.`})]})}function EWe(){let e=On(),t=Un({queryKey:[`user-settings`],queryFn:rU}),[n,r]=(0,U.useState)(`3`),[i,a]=(0,U.useState)(`10`),[o,s]=(0,U.useState)(!1),[c,l]=(0,U.useState)(null),[u,d]=(0,U.useState)(null);(0,U.useEffect)(()=>{t.data?.previewServers&&(r(String(t.data.previewServers.maxRunningServers)),a(String(t.data.previewServers.autoStopMinutes)))},[t.data?.previewServers]);let f=async()=>{let t=Number(n),o=Number(i);if(!Number.isSafeInteger(t)||t<1||t>20){d(`Maximum running servers must be an integer from 1 to 20.`);return}if(!Number.isSafeInteger(o)||o<1||o>1440){d(`Automatic stop must be an integer from 1 to 1440 minutes.`);return}s(!0),l(null),d(null);try{let n=await iU({previewServers:{maxRunningServers:t,autoStopMinutes:o}});e.setQueryData([`user-settings`],n),r(String(n.previewServers.maxRunningServers)),a(String(n.previewServers.autoStopMinutes)),l(`Preview server settings saved.`)}catch(e){d(e instanceof Error?e.message:String(e))}finally{s(!1)}};return(0,W.jsxs)(`div`,{className:`max-w-2xl space-y-5`,children:[(0,W.jsxs)(`label`,{className:`block`,htmlFor:`preview-max-running`,children:[(0,W.jsx)(`span`,{className:`mb-1 block text-xs font-semibold uppercase tracking-wider text-slate-400`,children:`Maximum running servers`}),(0,W.jsx)(`input`,{id:`preview-max-running`,type:`number`,min:`1`,max:`20`,step:`1`,value:n,disabled:t.isLoading||o,onChange:e=>r(e.target.value),className:`w-32 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 font-mono text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`mt-1 block text-[11px] text-slate-500`,children:`Managed starts fail when the instance-wide pool is full. Existing servers are never stopped to make room.`})]}),(0,W.jsxs)(`label`,{className:`block`,htmlFor:`preview-auto-stop`,children:[(0,W.jsx)(`span`,{className:`mb-1 block text-xs font-semibold uppercase tracking-wider text-slate-400`,children:`Automatic stop after each start`}),(0,W.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`input`,{id:`preview-auto-stop`,type:`number`,min:`1`,max:`1440`,step:`1`,value:i,disabled:t.isLoading||o,onChange:e=>a(e.target.value),className:`w-32 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 font-mono text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`text-xs text-slate-500`,children:`minutes`})]}),(0,W.jsx)(`span`,{className:`mt-1 block text-[11px] text-slate-500`,children:`This is a fixed runtime lease, not an inactivity timer. A stopped Preview remains restartable.`})]}),(0,W.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,W.jsx)(`button`,{type:`button`,disabled:t.isLoading||o,onClick:()=>void f(),className:`rounded-sm bg-[#11a4d4] px-3 py-2 text-xs font-semibold text-white hover:bg-[#0d8db7] disabled:cursor-not-allowed disabled:opacity-50`,children:o?`Saving…`:`Save Preview settings`}),c?(0,W.jsx)(`span`,{className:`text-xs text-green-400`,role:`status`,children:c}):null]}),t.error?(0,W.jsx)(`div`,{className:`text-xs text-red-300`,role:`alert`,children:t.error instanceof Error?t.error.message:String(t.error)}):null,u?(0,W.jsx)(`div`,{className:`text-xs text-red-300`,role:`alert`,children:u}):null]})}var DWe=`UTC.Europe/Berlin.Europe/London.Europe/Paris.Europe/Madrid.Europe/Rome.Europe/Amsterdam.Europe/Vienna.Europe/Zurich.Europe/Warsaw.Europe/Istanbul.America/New_York.America/Chicago.America/Denver.America/Los_Angeles.America/Toronto.America/Sao_Paulo.America/Mexico_City.Asia/Dubai.Asia/Jerusalem.Asia/Kolkata.Asia/Bangkok.Asia/Singapore.Asia/Shanghai.Asia/Tokyo.Asia/Seoul.Australia/Sydney.Australia/Melbourne.Pacific/Auckland`.split(`.`);function OWe(){let e=On(),{data:t,isLoading:n}=Un({queryKey:[`user-settings`],queryFn:rU}),r=(0,U.useMemo)(()=>PWe(t?.timezone),[t?.timezone]),[i,a]=(0,U.useState)(`UTC`),[o,s]=(0,U.useState)(!1),[c,l]=(0,U.useState)(null);(0,U.useEffect)(()=>{t?.timezone&&a(t.timezone)},[t?.timezone]);let u=async(t=i)=>{s(!0),l(null);try{let n=await iU({timezone:t});a(n.timezone),e.setQueryData([`user-settings`],n)}catch(e){l(e instanceof Error?e.message:String(e))}finally{s(!1)}};return(0,W.jsxs)(`div`,{className:`border-b border-slate-800 pb-4 mb-4`,children:[(0,W.jsx)(`div`,{className:`mb-2 text-xs font-semibold uppercase tracking-wider text-slate-400`,children:`App timezone`}),(0,W.jsx)(`div`,{className:`max-w-xl`,children:(0,W.jsx)(`select`,{value:i,disabled:n||o,onChange:e=>{let t=e.target.value;a(t),u(t)},className:`w-full min-w-0 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`,children:r.map(e=>(0,W.jsx)(`option`,{value:e.value,children:e.label},e.value))})}),(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-slate-500`,children:`Choose a city-based timezone. Changes are saved automatically and loaded into every runtime context together with the current Pibo Session ID.`}),o?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-slate-400`,children:`Saving…`}):null,c?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-red-300`,children:c}):null]})}function kWe(){let e=On(),t=Un({queryKey:[`user-settings`],queryFn:rU}),n=Un({queryKey:[`transcription-providers`],queryFn:mNe}),r=n.data?.providers??[],i=t.data?.transcription.providerId??n.data?.selectedProviderId??``,[a,o]=(0,U.useState)(``),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(null);(0,U.useEffect)(()=>{i&&o(i)},[i]);let d=async t=>{o(t),c(!0),u(null);try{let n=await iU({transcription:{providerId:t}});e.setQueryData([`user-settings`],n),e.setQueryData([`transcription-providers`],e=>e&&{...e,selectedProviderId:n.transcription.providerId}),o(n.transcription.providerId)}catch(e){o(i),u(e instanceof Error?e.message:String(e))}finally{c(!1)}},f=r.some(e=>e.id===a);return(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`mb-2 text-xs font-semibold uppercase tracking-wider text-slate-400`,children:`Transcription provider`}),(0,W.jsx)(`div`,{className:`max-w-xl`,children:(0,W.jsxs)(`select`,{value:a,disabled:t.isLoading||n.isLoading||s||r.length===0,onChange:e=>void d(e.target.value),className:`w-full min-w-0 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`,children:[a&&!f?(0,W.jsxs)(`option`,{value:a,children:[a,` (unavailable)`]}):null,r.map(e=>(0,W.jsxs)(`option`,{value:e.id,children:[e.name,e.configured?``:` — authentication required`]},e.id))]})}),(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-slate-500`,children:`This selection is independent from the providers used by chat models. Recordings use the selected provider and are inserted into the composer without sending the message.`}),r.find(e=>e.id===a)?.description?(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-slate-400`,children:r.find(e=>e.id===a)?.description}):null,r.length===0&&!n.isLoading?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-amber-300`,children:`No transcription providers are registered.`}):null,n.error?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-red-300`,children:n.error instanceof Error?n.error.message:String(n.error)}):null,s?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-slate-400`,children:`Saving…`}):null,l?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-red-300`,children:l}):null]})}function AWe(){let e=On(),t=Un({queryKey:[`user-settings`],queryFn:rU}),n=Un({queryKey:[`speech-providers`],queryFn:$ze}),r=n.data?.providers??[],i=t.data?.speech.providerId??n.data?.selectedProviderId??``,[a,o]=(0,U.useState)(``),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(null);(0,U.useEffect)(()=>{i&&o(i)},[i]);let d=async t=>{let n=r.find(e=>e.id===t);if(!n?.configured){u(n?`${n.name} requires authentication`:`Unknown speech provider "${t}"`);return}o(t),c(!0),u(null);try{let n=await iU({speech:{providerId:t}});e.setQueryData([`user-settings`],n),e.setQueryData([`speech-providers`],e=>e&&{...e,selectedProviderId:n.speech.providerId}),o(n.speech.providerId)}catch(e){o(i),u(e instanceof Error?e.message:String(e))}finally{c(!1)}},f=r.find(e=>e.id===a),p=!!f;return(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`mb-2 text-xs font-semibold uppercase tracking-wider text-slate-400`,children:`Speech provider`}),(0,W.jsx)(`div`,{className:`max-w-xl`,children:(0,W.jsxs)(`select`,{value:a,disabled:t.isLoading||n.isLoading||s||r.length===0,onChange:e=>void d(e.target.value),"aria-describedby":`speech-provider-help speech-provider-status`,className:`w-full min-w-0 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`,children:[a&&!p?(0,W.jsxs)(`option`,{value:a,children:[a,` (unavailable)`]}):null,r.map(e=>(0,W.jsxs)(`option`,{value:e.id,disabled:!e.configured,children:[e.name,e.configured?``:` — authentication required`]},e.id))]})}),(0,W.jsx)(`div`,{id:`speech-provider-help`,className:`mt-2 text-[11px] text-slate-500`,children:`Assistant-message audio uses this provider independently from transcription, chat-model providers, and future preview settings. The initial provider uses the ChatGPT/Codex subscription configured under Providers for the Native Codex runtime.`}),f?.description?(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-slate-400`,children:f.description}):null,(0,W.jsxs)(`div`,{id:`speech-provider-status`,"aria-live":`polite`,children:[r.length===0&&!n.isLoading&&!n.error?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-amber-300`,children:`No speech providers are registered.`}):null,n.error?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-red-300`,role:`alert`,children:n.error instanceof Error?n.error.message:String(n.error)}):null,a&&!p&&!n.isLoading&&!n.error?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-amber-300`,children:`The selected speech provider is unavailable. Choose a configured provider.`}):null,f&&!f.configured?(0,W.jsxs)(`div`,{className:`mt-2 text-xs text-amber-300`,children:[f.name,` requires authentication before it can read messages aloud.`]}):null,s?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-slate-400`,children:`Saving…`}):null,l?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-red-300`,role:`alert`,children:l}):null]})]})}function jWe(){let e=On(),{data:t,isLoading:n}=Un({queryKey:[`user-settings`],queryFn:rU}),[r,i]=(0,U.useState)(30),[a,o]=(0,U.useState)(!0),[s,c]=(0,U.useState)(10),[l,u]=(0,U.useState)(!1),[d,f]=(0,U.useState)(!1),[p,m]=(0,U.useState)(null),[h,g]=(0,U.useState)(null),_=t?.telemetryRetention?.lastPrunedAt,v=Number.isInteger(s)&&s>=1&&s<=365;(0,U.useEffect)(()=>{t?.telemetryRetention&&(o(t.telemetryRetention.enabled),i(t.telemetryRetention.days),c(t.telemetryRetention.days))},[t?.telemetryRetention]);let y=async t=>{let n=t.enabled??a,s=MWe(t.days??r);o(n),i(s),u(!0),g(null),m(null);try{let t=await iU({telemetryRetention:{enabled:n,days:s}});e.setQueryData([`user-settings`],t),o(t.telemetryRetention.enabled),i(t.telemetryRetention.days),m(`Telemetry retention settings saved.`)}catch(e){g(e instanceof Error?e.message:String(e))}finally{u(!1)}},b=async()=>{if(!v){g(`Manual cleanup retention must be between 1 and 365 days.`);return}let t=s;f(!0),g(null),m(null);try{let n=await HTe({days:t}),r=await rU();e.setQueryData([`user-settings`],r),m(`Deleted ${n.rowsDeleted.toLocaleString()} telemetry rows older than ${t} days. Cutoff: ${n.cutoff}.`)}catch(e){g(e instanceof Error?e.message:String(e))}finally{f(!1)}};return(0,W.jsx)(FJ,{title:`Telemetry retention`,children:(0,W.jsxs)(`div`,{className:`space-y-5`,children:[(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-4`,children:[(0,W.jsx)(`div`,{className:`mb-2 text-xs font-semibold uppercase tracking-wider text-slate-300`,children:`Automatic cleanup`}),(0,W.jsx)(`p`,{className:`mb-4 max-w-2xl text-xs leading-5 text-slate-400`,children:`Pibo keeps sessions, rooms, chat messages, and renderable trace events. This retention policy deletes only runtime telemetry/debug rows older than the configured age.`}),(0,W.jsxs)(`label`,{className:`mb-4 flex items-center gap-3 text-sm text-slate-200`,children:[(0,W.jsx)(`input`,{type:`checkbox`,checked:a,disabled:n||l,onChange:e=>void y({enabled:e.target.checked}),className:`h-4 w-4 accent-[#11a4d4]`}),`Enable automatic telemetry retention`]}),(0,W.jsxs)(`div`,{className:`max-w-xs`,children:[(0,W.jsx)(`label`,{className:`mb-1 block text-[11px] font-semibold uppercase tracking-wider text-slate-500`,children:`Delete telemetry older than`}),(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`input`,{type:`number`,min:1,max:365,value:r,disabled:n||l,onChange:e=>i(Number(e.target.value)),onBlur:()=>void y({days:r}),className:`w-24 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`text-xs text-slate-400`,children:`days`})]})]}),(0,W.jsx)(`div`,{className:`mt-3 text-[11px] text-slate-500`,children:`Default is 30 days. Automatic cleanup skips runs while runtime sessions are processing or streaming.`}),(0,W.jsxs)(`div`,{className:`mt-2 text-[11px] text-slate-500`,children:[`Last prune: `,_?new Date(_).toLocaleString():`never`]})]}),(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-4`,children:[(0,W.jsx)(`div`,{className:`mb-2 text-xs font-semibold uppercase tracking-wider text-slate-300`,children:`Manual cleanup`}),(0,W.jsx)(`p`,{className:`mb-4 max-w-2xl text-xs leading-5 text-slate-400`,children:`Run retention now with a custom cutoff. This affects telemetry tables only and never deletes sessions, rooms, chat messages, or trace-render events.`}),(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`input`,{type:`number`,min:1,max:365,value:s,disabled:d,"aria-invalid":!v,onChange:e=>c(Number(e.target.value)),className:`w-24 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`text-xs text-slate-400`,children:`days`}),(0,W.jsxs)(`button`,{type:`button`,disabled:d||!v,onClick:()=>void b(),className:`inline-flex items-center justify-center gap-2 rounded-sm border border-red-900/70 bg-red-950/30 px-3 py-2 text-xs font-semibold text-red-100 transition hover:border-red-500 disabled:cursor-not-allowed disabled:opacity-60`,children:[(0,W.jsx)(Sl,{size:13}),d?`Deleting…`:`Delete old telemetry now`]})]})]}),(0,W.jsx)(`div`,{className:`rounded-sm border border-amber-900/50 bg-amber-950/20 p-3 text-[11px] leading-5 text-amber-100`,children:`Detailed provider-event capture is intentionally off by default because it can be high-volume. Use the dedicated debug flag only for short incident windows.`}),l?(0,W.jsx)(`div`,{className:`text-xs text-slate-400`,children:`Saving…`}):null,p?(0,W.jsx)(`div`,{className:`text-xs text-emerald-300`,children:p}):null,h?(0,W.jsx)(`div`,{className:`text-xs text-red-300`,children:h}):null]})})}function MWe(e){return Number.isFinite(e)?Math.max(1,Math.min(365,Math.trunc(e))):30}function NWe(){let e=On(),{data:t,isLoading:n}=Un({queryKey:[`user-settings`],queryFn:rU}),[r,i]=(0,U.useState)(aX),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(null);(0,U.useEffect)(()=>{let e=t?.shortcuts?.webAnnotationsToggle||oX();i(e),sX(e),cX(e)},[t?.shortcuts?.webAnnotationsToggle]);let d=async t=>{let n=lX(t)||`Alt+Shift+A`;i(n),c(!0),u(null);try{let t=await iU({shortcuts:{webAnnotationsToggle:n}});e.setQueryData([`user-settings`],t),sX(t.shortcuts.webAnnotationsToggle),cX(t.shortcuts.webAnnotationsToggle)}catch(e){u(e instanceof Error?e.message:String(e))}finally{c(!1)}};return(0,W.jsx)(FJ,{title:`Shortcuts`,children:(0,W.jsxs)(`div`,{className:`grid max-w-2xl gap-3 rounded-sm border border-slate-800 bg-[#151f24] p-3`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-semibold text-slate-200`,children:[(0,W.jsx)(Fs,{size:15}),` Toggle annotation mode`]}),(0,W.jsx)(`div`,{className:`mt-1 text-xs text-slate-500`,children:`Toggles the Web Annotation element mode with the pencil button.`})]}),(0,W.jsx)(`kbd`,{className:`rounded-sm border border-slate-700 bg-[#0e1116] px-2 py-1 font-mono text-xs text-[#7dd3fc]`,children:r})]}),(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`button`,{type:`button`,disabled:n||s,"aria-pressed":a,onClick:()=>{u(null),o(e=>!e)},onKeyDown:e=>{if(!a)return;if(e.key===`Escape`){e.preventDefault(),e.stopPropagation(),o(!1),u(null);return}let t=JNe(e);if(!t){[`Alt`,`Control`,`Meta`,`Shift`].includes(e.key)||(e.preventDefault(),e.stopPropagation(),u(`Use Ctrl, Alt, or Meta with another key.`));return}e.preventDefault(),e.stopPropagation(),o(!1),d(t)},className:`rounded-sm border px-3 py-2 text-xs font-medium ${a?`border-[#11a4d4] bg-[#11a4d4]/10 text-sky-100`:`border-slate-700 text-slate-300 hover:border-[#11a4d4] hover:text-[#7dd3fc]`} disabled:opacity-50`,children:a?`Press shortcut…`:`Record shortcut`}),(0,W.jsx)(`button`,{type:`button`,disabled:s||r===`Alt+Shift+A`,onClick:()=>void d(aX),className:`rounded-sm border border-slate-700 px-3 py-2 text-xs text-slate-300 hover:border-[#11a4d4] hover:text-[#7dd3fc] disabled:opacity-50`,children:`Reset`}),s?(0,W.jsx)(`span`,{className:`text-xs text-slate-400`,children:`Saving…`}):null]}),(0,W.jsxs)(`div`,{className:`text-[11px] text-slate-500`,children:[`Default: `,aX,`. Use a modifier combination to avoid conflicts with normal typing.`]}),l?(0,W.jsx)(`div`,{className:`text-xs text-red-300`,children:l}):null]})})}function PWe(e){let t=new Set([`UTC`,...Intl.supportedValuesOf?.(`timeZone`)??DWe]);return e&&t.add(e),[...t].map(e=>({value:e,label:FWe(e),offset:IWe(e)})).sort((e,t)=>e.offset-t.offset||e.label.localeCompare(t.label)).map(({value:e,label:t})=>({value:e,label:t}))}function FWe(e){let t=e===`UTC`?`UTC`:e.split(`/`).pop()?.replaceAll(`_`,` `)??e,n=e.includes(`/`)?e.split(`/`)[0].replaceAll(`_`,` `):void 0,r=m6(e);return`${t}${n?` (${n})`:``} — ${r}`}function m6(e){try{return new Intl.DateTimeFormat(`en-US`,{timeZone:e,timeZoneName:`shortOffset`}).formatToParts(new Date).find(e=>e.type===`timeZoneName`)?.value.replace(`GMT`,`UTC`)??e}catch{return e}}function IWe(e){let t=m6(e),n=/^UTC(?:(?<sign>[+-])(?<hours>\d{1,2})(?::(?<minutes>\d{2}))?)?$/.exec(t);return n?.groups?.sign?(n.groups.sign===`-`?-1:1)*(Number(n.groups.hours)*60+Number(n.groups.minutes??0)):0}function LWe({modelDefaults:e,modelCatalog:t,onChanged:n}){let[r,i]=(0,U.useState)(e??{}),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(null);(0,U.useEffect)(()=>{i(e??{})},[e]);let l=async e=>{i(e),o(!0);try{n(await zTe(e)),c(null)}catch(e){c(e instanceof Error?e.message:String(e))}finally{o(!1)}};return(0,W.jsxs)(`div`,{className:`grid gap-3 border-t border-slate-800 pt-3`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Runtime Model Defaults`}),(0,W.jsx)(KJ,{title:`Main Agent`,modelTitle:`Main Agent Default`,model:r.main,thinking:r.mainThinking,fast:r.mainFast??!1,modelCatalog:t,readOnly:a,modelHint:`Unset to use provider fallback.`,configuredProvidersOnly:!0,onModelChange:e=>void l({...r,main:e}),onThinkingChange:e=>void l({...r,mainThinking:e}),onFastChange:e=>void l({...r,mainFast:e})}),(0,W.jsx)(KJ,{title:`Subagent`,modelTitle:`Subagent Default`,model:r.subagent,thinking:r.subagentThinking,fast:r.subagentFast??!1,modelCatalog:t,readOnly:a,modelHint:`Unset to use provider fallback.`,configuredProvidersOnly:!0,onModelChange:e=>void l({...r,subagent:e}),onThinkingChange:e=>void l({...r,subagentThinking:e}),onFastChange:e=>void l({...r,subagentFast:e})}),s?(0,W.jsx)(`div`,{className:`text-xs text-amber-100`,children:s}):null]})}function RWe({packages:e,onPackageChanged:t,onPackageRemoved:n}){let[r,i]=(0,U.useState)(``),[a,o]=(0,U.useState)(null),[s,c]=(0,U.useState)(null),[l,u]=(0,U.useState)(()=>new Set),d=e??[],f=d.filter(e=>e.installStatus===`installed`).length,p=d.filter(e=>e.enabled).length,m=async()=>{if(!a){o(`add`);try{let e=await Fke(r);t(e),i(``),u(t=>new Set(t).add(e.id)),c(null)}catch(e){c(e instanceof Error?e.message:String(e))}finally{o(null)}}},h=async e=>{if(!a){o(`${e.id}:enabled`);try{t(await Ike(e.id,{enabled:!e.enabled})),c(null)}catch(e){c(e instanceof Error?e.message:String(e))}finally{o(null)}}},g=async e=>{if(!a&&window.confirm(`Unregister Pi package "${e.name}"?`)){o(`${e.id}:delete`);try{n(await Lke(e.id)),u(t=>{let n=new Set(t);return n.delete(e.id),n}),c(null)}catch(e){c(e instanceof Error?e.message:String(e))}finally{o(null)}}},_=e=>{u(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})};return(0,W.jsxs)(FJ,{title:`Pi Package Management`,children:[(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`div`,{className:`grid grid-cols-[minmax(0,1fr)_auto] gap-2`,children:[(0,W.jsx)(`input`,{value:r,disabled:!e||a===`add`,onChange:e=>{let t=e.target.value;i(t),t.trim()||c(null)},className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`,placeholder:`https://pi.dev/packages/package-name`}),(0,W.jsx)(`button`,{type:`button`,disabled:!e||a===`add`||!r.trim(),onClick:()=>void m(),title:`Add Pi Package`,"aria-label":`Add Pi Package`,className:`h-9 w-9 inline-flex items-center justify-center border border-[#11a4d4] rounded-sm text-[#11a4d4] bg-[#11a4d4]/10 disabled:opacity-50`,children:(0,W.jsx)(tl,{size:14})})]}),(0,W.jsx)(`div`,{className:`text-[11px] text-slate-500`,children:`Extensions execute code in the Pi runtime. Review package source before adding it.`}),s?(0,W.jsx)(`div`,{className:`border border-red-500/60 bg-red-500/10 text-red-200 px-3 py-2 text-sm rounded-sm`,children:s}):null,(0,W.jsxs)(`div`,{className:`font-mono text-[10px] uppercase tracking-wider text-slate-500`,children:[d.length,` registered / `,f,` installed / `,p,` enabled`]})]}),e?d.length?(0,W.jsx)(`div`,{className:`grid gap-2`,children:d.map(e=>(0,W.jsx)(VWe,{pkg:e,expanded:l.has(e.id),busy:a?.startsWith(`${e.id}:`)??!1,onToggleExpanded:()=>_(e.id),onToggleEnabled:()=>void h(e),onUnregister:()=>void g(e)},e.id))}):(0,W.jsx)(HJ,{message:`No Pi packages registered`}):(0,W.jsx)(HJ,{})]})}function zWe({skills:e,onSkillChanged:t,onSkillRemoved:n}){let[r,i]=(0,U.useState)(!1),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(null),[l,u]=(0,U.useState)(``),[d,f]=(0,U.useState)(null),[p,m]=(0,U.useState)(null),h=e??[],g=h.filter(e=>e.enabled).length,_=async e=>{if(!d){f(`${e.id}:enabled`);try{t(await hG(e.id,{enabled:!e.enabled})),m(null)}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(null)}}},v=async e=>{if(!d&&window.confirm(`Delete skill "${e.name}"?`)){f(`${e.id}:delete`);try{await Bke(e.id),n(e.id),m(null)}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(null)}}},y=async e=>{f(`create`);try{t(await zke(e)),i(!1),m(null)}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(null)}},b=async e=>{f(`install`);try{t(await Vke(e)),o(!1),m(null)}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(null)}},x=async(e,n)=>{f(`edit`);try{t(await hG(e,n)),c(null),m(null)}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(null)}};return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(FJ,{title:`Skill Management`,children:[(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,W.jsxs)(`button`,{type:`button`,disabled:d===`create`,onClick:()=>i(!0),className:`inline-flex items-center gap-2 border border-[#11a4d4] rounded-sm px-3 py-2 text-sm text-[#11a4d4] bg-[#11a4d4]/10 disabled:opacity-50`,children:[(0,W.jsx)(tl,{size:14}),`Create Skill`]}),(0,W.jsxs)(`button`,{type:`button`,disabled:d===`install`,onClick:()=>o(!0),className:`inline-flex items-center gap-2 border border-slate-700 rounded-sm px-3 py-2 text-sm text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:[(0,W.jsx)(fc,{size:14}),`Install from URL`]})]}),p?(0,W.jsx)(`div`,{className:`border border-red-500/60 bg-red-500/10 text-red-200 px-3 py-2 text-sm rounded-sm`,children:p}):null,(0,W.jsxs)(`div`,{className:`font-mono text-[10px] uppercase tracking-wider text-slate-500`,children:[h.length,` skills / `,g,` enabled`]})]}),e?h.length?(0,W.jsx)(`div`,{className:`grid gap-2`,children:h.map(e=>(0,W.jsx)(`div`,{className:`border rounded-sm p-2 ${e.enabled?`border-slate-800 bg-[#151f24]`:`border-slate-800 bg-[#151f24] opacity-75`}`,children:(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2 max-[640px]:items-start`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`min-w-0 truncate text-sm text-slate-200`,children:e.name}),(0,W.jsx)(`span`,{className:`shrink-0 border px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-wider ${e.enabled?`border-[#11a4d4]/60 text-[#7dd3fc]`:`border-slate-700 text-slate-500`}`,children:e.enabled?`enabled`:`disabled`}),(0,W.jsx)(`span`,{className:`shrink-0 border px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-wider border-slate-700 text-slate-500`,children:e.scope??`global`}),(0,W.jsx)(`span`,{className:`shrink-0 border px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-wider border-slate-700 text-slate-500`,children:e.source})]}),(0,W.jsx)(`div`,{className:`truncate text-xs text-slate-500`,children:e.description||e.path})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,disabled:d?.startsWith(`${e.id}:`)??!1,onClick:()=>void _(e),title:`${e.enabled?`Disable`:`Enable`} ${e.name}`,"aria-label":`${e.enabled?`Disable`:`Enable`} ${e.name}`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:e.enabled?(0,W.jsx)(nl,{size:13}):(0,W.jsx)(rl,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:d?.startsWith(`${e.id}:`)??!1,onClick:async()=>{try{let t=await Rke(e.id);c(e),u(t.markdown)}catch{c(e),u(``)}},title:`Edit ${e.name}`,"aria-label":`Edit ${e.name}`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:(0,W.jsx)($c,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:d?.startsWith(`${e.id}:`)??!1,onClick:()=>void v(e),title:`Delete ${e.name}`,"aria-label":`Delete ${e.name}`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-red-500 hover:text-red-400 disabled:opacity-50`,children:(0,W.jsx)(Sl,{size:13})})]})]})},e.id))}):(0,W.jsx)(HJ,{message:`No user skills`}):(0,W.jsx)(HJ,{})]}),r?(0,W.jsx)(g6,{title:`Create Skill`,onSave:y,onClose:()=>{i(!1),m(null)},busy:d===`create`}):null,a?(0,W.jsx)(BWe,{onInstall:b,onClose:()=>{o(!1),m(null)},busy:d===`install`}):null,s?(0,W.jsx)(g6,{title:`Edit Skill`,initialName:s.name,initialDescription:s.description,initialMarkdown:l,onSave:e=>void x(s.id,e),onClose:()=>c(null),busy:d===`edit`}):null]})}function h6({children:e,onClose:t}){return(0,W.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/70 p-4`,children:[(0,W.jsx)(`div`,{className:`w-full max-w-2xl rounded-sm border border-slate-700 bg-[#151f24] shadow-2xl`,children:e}),(0,W.jsx)(`button`,{type:`button`,className:`absolute inset-0 -z-10`,onClick:t,"aria-label":`Close modal`})]})}function g6({title:e,initialName:t=``,initialDescription:n=``,initialMarkdown:r=``,onSave:i,onClose:a,busy:o}){let[s,c]=(0,U.useState)(t),[l,u]=(0,U.useState)(n),[d,f]=(0,U.useState)(r);return(0,W.jsxs)(h6,{onClose:a,children:[(0,W.jsxs)(`h2`,{className:`flex items-center gap-2 border-b border-slate-800 px-4 py-3 text-sm font-bold uppercase tracking-wider`,children:[(0,W.jsx)($c,{size:16}),e]}),(0,W.jsxs)(`div`,{className:`grid gap-3 p-4`,children:[(0,W.jsx)(`input`,{value:s,onChange:e=>c(e.target.value),placeholder:`Skill name (kebab-case)`,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-[#11a4d4]`}),(0,W.jsx)(`input`,{value:l,onChange:e=>u(e.target.value),placeholder:`Short description`,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-[#11a4d4]`}),(0,W.jsx)(`textarea`,{value:d,onChange:e=>f(e.target.value),placeholder:`Markdown instructions...`,rows:10,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-[#11a4d4] resize-vertical`}),(0,W.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:a,className:`px-3 py-2 text-sm border border-slate-700 rounded-sm hover:border-slate-500`,children:`Cancel`}),(0,W.jsx)(`button`,{type:`button`,disabled:o||!s.trim(),onClick:()=>i({name:s,description:l,markdown:d}),className:`px-3 py-2 text-sm border border-[#11a4d4] rounded-sm bg-[#11a4d4]/10 text-[#11a4d4] disabled:opacity-50`,children:o?`Saving...`:`Save`})]})]})]})}function BWe({onInstall:e,onClose:t,busy:n}){let[r,i]=(0,U.useState)(``);return(0,W.jsxs)(h6,{onClose:t,children:[(0,W.jsxs)(`h2`,{className:`flex items-center gap-2 border-b border-slate-800 px-4 py-3 text-sm font-bold uppercase tracking-wider`,children:[(0,W.jsx)(fc,{size:16}),`Install Skill`]}),(0,W.jsxs)(`div`,{className:`grid gap-3 p-4`,children:[(0,W.jsx)(`input`,{value:r,onChange:e=>i(e.target.value),placeholder:`https://skills.sh/account/skills/skill-name`,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-[#11a4d4]`}),(0,W.jsx)(`div`,{className:`text-[11px] text-slate-500`,children:`Supports skills.sh URLs, GitHub tree URLs, or account/repo shorthand.`}),(0,W.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:t,className:`px-3 py-2 text-sm border border-slate-700 rounded-sm hover:border-slate-500`,children:`Cancel`}),(0,W.jsx)(`button`,{type:`button`,disabled:n||!r.trim(),onClick:()=>e(r),className:`px-3 py-2 text-sm border border-[#11a4d4] rounded-sm bg-[#11a4d4]/10 text-[#11a4d4] disabled:opacity-50`,children:n?`Installing...`:`Install`})]})]})]})}function VWe({pkg:e,expanded:t,busy:n,onToggleExpanded:r,onToggleEnabled:i,onUnregister:a}){let o=e.diagnostics.some(e=>e.type===`error`);return(0,W.jsxs)(`div`,{className:`border rounded-sm ${e.enabled?`border-slate-800 bg-[#151f24]`:`border-slate-800 bg-[#151f24] opacity-75`}`,children:[(0,W.jsxs)(`div`,{className:`grid grid-cols-[1fr_auto] gap-2 p-2`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`min-w-0 truncate text-sm text-slate-200`,children:e.name}),(0,W.jsx)(`span`,{className:`shrink-0 border px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-wider ${e.enabled?`border-[#11a4d4]/60 text-[#7dd3fc]`:`border-slate-700 text-slate-500`}`,children:e.enabled?`enabled`:`disabled`}),(0,W.jsx)(`span`,{className:`shrink-0 border px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-wider ${e.installStatus===`installed`?`border-[#0bda57]/50 text-green-300`:`border-[#f59e0b]/50 text-amber-100`}`,children:e.installStatus})]}),(0,W.jsx)(`div`,{className:`truncate text-xs text-slate-500`,children:e.description??e.source}),(0,W.jsx)(`div`,{className:`font-mono text-[10px] mt-1 ${o?`text-[#f59e0b]`:`text-[#11a4d4]`}`,children:NJ(e)})]}),(0,W.jsxs)(`div`,{className:`flex items-start gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:r,title:t?`Hide Details`:`Show Details`,"aria-label":t?`Hide Details`:`Show Details`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:t?(0,W.jsx)(Ws,{size:13}):(0,W.jsx)(Ks,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:n,onClick:i,title:e.enabled?`Disable Package`:`Enable Package`,"aria-label":e.enabled?`Disable Package`:`Enable Package`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:e.enabled?(0,W.jsx)(nl,{size:13}):(0,W.jsx)(rl,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:n,onClick:a,title:`Unregister Package`,"aria-label":`Unregister Package`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-red-400 hover:text-red-300 disabled:opacity-50`,children:(0,W.jsx)(Sl,{size:13})})]})]}),t?(0,W.jsx)(RJ,{pkg:e}):null]})}function HWe({data:e,selectedProject:t,selectedPiboSessionId:n,activeProjects:r,archivedProjects:i,sessionGroups:a,selectedSessionPathIds:o,autoRenameSessionId:s,creatingSession:c,navigationPending:l,showArchivedProjects:u,showArchivedSessions:d,mobileSidebarOpen:f,onRefresh:p,onCloseMobileSidebar:m,onCreateProject:h,onToggleArchivedProjects:g,onSelectProject:_,onRenameProject:v,onSetProjectArchived:y,onDeleteArchivedProject:b,onCreateProjectSession:x,onToggleArchivedSessions:S,onSelectSession:C,onRenameSession:w,onArchiveSession:T,onDeleteSession:E,onViewContext:D,onAutoRenameConsumed:O}){let k=xq(),A=Date.now(),j=r.filter(t=>t.id!==e.sharedDefaultProject.id);return(0,W.jsxs)(`aside`,{"data-pibo-mobile-sidebar":!0,"data-pibo-navigation-pending":l?`true`:`false`,...yq(k,f,`Projects sidebar`),className:`min-h-0 overflow-auto bg-[#1a262b] border-r border-slate-800 max-[980px]:fixed max-[980px]:left-0 max-[980px]:top-0 max-[980px]:bottom-0 max-[980px]:z-40 max-[980px]:w-[280px] max-[980px]:transition-transform max-[980px]:duration-200 ${f?`max-[980px]:translate-x-0`:`max-[980px]:-translate-x-full`}`,children:[(0,W.jsxs)(`div`,{className:`h-11 px-3 border-b border-slate-800 flex items-center justify-between text-xs font-bold uppercase tracking-wider max-[980px]:h-auto max-[980px]:py-2`,children:[(0,W.jsx)(`span`,{children:`projects`}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:p,title:`Refresh`,"aria-label":`Refresh`,className:`p-1 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(il,{size:13})}),(0,W.jsx)(`button`,{type:`button`,onClick:m,title:`Close sidebar`,"aria-label":`Close sidebar`,className:`min-[981px]:hidden p-1 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(Al,{size:13})})]})]}),(0,W.jsxs)(`div`,{className:`p-2 space-y-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Project Manager`}),(0,W.jsx)(_6,{project:e.sharedDefaultProject,selected:t?.id===e.sharedDefaultProject.id,onSelect:()=>_(e.sharedDefaultProject.id),mutationsDisabled:l})]}),(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-1 pb-1`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Projects`}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:h,disabled:l,title:`New Project`,"aria-label":`New Project`,className:`h-6 w-6 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:cursor-not-allowed disabled:opacity-50`,children:(0,W.jsx)(tl,{size:14})}),(0,W.jsx)(`button`,{type:`button`,onClick:g,title:`Archived Projects`,"aria-label":`Archived Projects`,className:`h-6 w-6 inline-flex items-center justify-center border rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4] ${u?`border-[#11a4d4] text-[#11a4d4]`:`border-slate-700 text-slate-400`}`,children:u?(0,W.jsx)(Ds,{size:14}):(0,W.jsx)(Os,{size:14})})]})]}),j.map(e=>(0,W.jsx)(_6,{project:e,selected:t?.id===e.id,onSelect:()=>_(e.id),onRename:t=>v(e,t),onArchive:()=>y(e,!0),mutationsDisabled:l},e.id)),j.length===0?(0,W.jsx)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm`,children:`No projects`}):null,u?(0,W.jsxs)(`div`,{className:`mt-3`,children:[(0,W.jsx)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Archived Projects`}),i.map(e=>(0,W.jsx)(_6,{project:e,selected:t?.id===e.id,onSelect:()=>_(e.id),onRename:t=>v(e,t),onArchive:()=>y(e,!1),onDelete:()=>b(e),archived:!0,mutationsDisabled:l},e.id))]}):null]}),(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-1 pb-1`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Project Sessions`}),(0,W.jsx)(`div`,{className:`text-[10px] text-slate-500`,children:`Sessions run in the project workspace`})]}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:x,disabled:c||l||!t,title:`New Project Session`,"aria-label":`New Project Session`,className:`h-6 w-6 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:(0,W.jsx)(tl,{size:14})}),(0,W.jsx)(`button`,{type:`button`,onClick:S,title:d?`Hide Archived Project Sessions`:`Show Archived Project Sessions`,"aria-label":d?`Hide Archived Project Sessions`:`Show Archived Project Sessions`,className:`h-6 w-6 inline-flex items-center justify-center border rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4] ${d?`border-[#11a4d4] text-[#11a4d4]`:`border-slate-700 text-slate-400`}`,children:d?(0,W.jsx)(Ds,{size:14}):(0,W.jsx)(Os,{size:14})})]})]}),a.active.map(e=>(0,W.jsx)(a$,{node:e,signalNow:A,selectedPiboSessionId:n,selectedSessionPathIds:o,onSelect:C,onRename:w,onArchive:T,onDelete:E,onViewContext:D,loadingPiboSessionId:null,autoRename:s===e.piboSessionId,onAutoRenameConsumed:O,mutationsDisabled:l},e.piboSessionId)),a.active.length===0?(0,W.jsx)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm`,children:`No active project sessions`}):null,d?(0,W.jsxs)(`div`,{className:`mt-3`,children:[(0,W.jsx)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Archived Project Sessions`}),a.archived.map(e=>(0,W.jsx)(a$,{node:e,signalNow:A,selectedPiboSessionId:n,selectedSessionPathIds:o,onSelect:C,onRename:w,onArchive:T,onDelete:E,onViewContext:D,loadingPiboSessionId:null,mutationsDisabled:l},e.piboSessionId)),a.archived.length===0?(0,W.jsx)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm`,children:`No archived project sessions`}):null]}):null]})]})]})}function _6({project:e,selected:t,archived:n,onSelect:r,onRename:i,onArchive:a,onDelete:o,mutationsDisabled:s}){let c=e.metadata?.default===!0||e.metadata?.personal===!0,[l,u]=(0,U.useState)(!1),[d,f]=(0,U.useState)(e.name),[p,m]=(0,U.useState)(!1),h=(0,U.useRef)(null),g=(0,U.useRef)(null);(0,U.useEffect)(()=>{l||f(e.name)},[l,e.name]),(0,U.useEffect)(()=>{s&&(u(!1),m(!1))},[s]),(0,U.useEffect)(()=>{if(!p)return;let e=e=>{g.current&&!g.current.contains(e.target)&&m(!1)};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[p]),(0,U.useLayoutEffect)(()=>{!l||s||(h.current?.focus(),h.current?.select())},[l]);let _=c?`Project Manager`:e.name,v=()=>{if(s)return;let t=d.trim();t&&t!==e.name&&i?.(t),u(!1)};return(0,W.jsxs)(`div`,{className:`group flex items-center gap-2 rounded-sm border px-2 py-2 text-sm ${c?t?`border-[#0bda57] bg-[#0bda57]/10 text-green-100`:`border-[#0bda57]/50 bg-[#0bda57]/5 text-slate-300 hover:border-[#0bda57]`:t?`border-[#11a4d4] bg-[#11a4d4]/10 text-sky-100`:`border-transparent text-slate-300 hover:border-slate-700 hover:bg-slate-900/40`}`,children:[(0,W.jsx)(`span`,{className:`h-6 w-6 shrink-0 inline-flex items-center justify-center rounded-sm ${c?`bg-[#0bda57]/15 text-[#0bda57]`:n?`bg-[#f59e0b]/15 text-[#f59e0b]`:`bg-[#151f24] text-slate-500`}`,children:c?(0,W.jsx)(Rc,{size:13}):n?(0,W.jsx)(Os,{size:13}):(0,W.jsx)(bc,{size:13})}),l&&!s?(0,W.jsxs)(`form`,{className:`min-w-0 flex-1 grid grid-cols-[1fr_auto_auto] gap-1`,onSubmit:e=>{e.preventDefault(),v()},children:[(0,W.jsx)(`input`,{ref:h,value:d,"aria-label":`Project name for ${e.name}`,disabled:s,onChange:e=>f(e.target.value),onKeyDown:t=>{t.key===`Escape`&&(t.preventDefault(),u(!1),f(e.name))},className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-2 py-1 text-sm outline-none focus:border-[#11a4d4]`}),(0,W.jsx)(`button`,{type:`submit`,disabled:s,title:`Save Project Name`,"aria-label":`Save Project Name`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(Us,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:s,onClick:()=>{u(!1),f(e.name)},title:`Cancel Rename`,"aria-label":`Cancel Rename`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(Al,{size:13})})]}):(0,W.jsxs)(`button`,{type:`button`,onClick:r,className:`min-w-0 flex-1 text-left`,children:[(0,W.jsx)(`span`,{className:`block truncate font-medium`,children:_}),(0,W.jsx)(`span`,{className:`block truncate text-[11px] text-slate-500`,children:c?`default project management workspace`:e.projectFolder})]}),c?(0,W.jsx)(`span`,{title:`Project Manager is locked`,"aria-label":`Project Manager is locked`,className:`h-7 w-7 max-[980px]:h-9 max-[980px]:w-9 inline-flex items-center justify-center border border-[#0bda57]/50 rounded-sm text-[#0bda57]`,children:(0,W.jsx)(Rc,{size:24,className:`w-3.5 h-3.5 max-[980px]:w-5 max-[980px]:h-5`})}):l?null:(0,W.jsxs)(`div`,{className:`relative opacity-0 group-hover:opacity-100 group-focus-within:opacity-100 transition-opacity max-[980px]:opacity-100`,ref:g,children:[(0,W.jsx)(`button`,{type:`button`,disabled:s,onClick:()=>m(e=>!e),title:`Project actions`,"aria-label":`Project actions`,className:`h-7 w-7 max-[980px]:h-9 max-[980px]:w-9 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:cursor-not-allowed disabled:opacity-50`,children:(0,W.jsx)(dc,{size:24,className:`w-3.5 h-3.5 max-[980px]:w-5 max-[980px]:h-5`})}),p&&!s?(0,W.jsxs)(`div`,{className:`absolute right-0 top-full z-50 mt-1 w-48 bg-[#1a262b] border border-slate-700 rounded-sm shadow-lg py-1`,children:[i?(0,W.jsxs)(`button`,{type:`button`,onClick:()=>{m(!1),u(!0)},className:`w-full text-left px-3 py-2.5 text-sm text-slate-300 hover:bg-[#11a4d4]/10 hover:text-[#11a4d4] flex items-center gap-2`,children:[(0,W.jsx)($c,{size:16}),` Rename Project`]}):null,a?(0,W.jsxs)(`button`,{type:`button`,onClick:()=>{m(!1),a()},className:`w-full text-left px-3 py-2.5 text-sm text-slate-300 hover:bg-[#11a4d4]/10 hover:text-[#11a4d4] flex items-center gap-2`,children:[n?(0,W.jsx)(Ds,{size:16}):(0,W.jsx)(Os,{size:16}),` `,n?`Restore Project`:`Archive Project`]}):null,o?(0,W.jsxs)(`button`,{type:`button`,onClick:()=>{m(!1),o()},className:`w-full text-left px-3 py-2.5 text-sm text-red-300 hover:bg-red-500/10 flex items-center gap-2`,children:[(0,W.jsx)(Sl,{size:16}),` Delete Project`]}):null]}):null]})]})}function UWe({open:e,onClose:t,onCreate:n,onCreated:r}){let[i,a]=(0,U.useState)(``),[o,s]=(0,U.useState)(``),[c,l]=(0,U.useState)(``),[u,d]=(0,U.useState)(!1),[f,p]=(0,U.useState)({name:!1,projectFolder:!1}),[m,h]=(0,U.useState)(!1),[g,_]=(0,U.useState)(),v=(0,U.useRef)(null),y=(0,U.useRef)(null);if((0,U.useEffect)(()=>{e&&(a(``),s(``),l(``),d(!1),p({name:!1,projectFolder:!1}),h(!1),_(void 0))},[e]),!e)return null;let b=v6(i,o),x=u||f.name?b.name:void 0,S=u||f.projectFolder?b.projectFolder:void 0;return(0,W.jsx)(AX,{title:`New Project`,description:`Create a project workspace for project-scoped sessions.`,onClose:t,initialFocusRef:v,closeLabel:`Cancel project creation`,closeDisabled:m,children:(0,W.jsxs)(`form`,{className:`grid gap-4 p-4`,onSubmit:async e=>{e.preventDefault(),d(!0),_(void 0);let a=v6(i,o);if(a.name){v.current?.focus();return}if(a.projectFolder){y.current?.focus();return}h(!0);try{let e=await n({name:i.trim(),projectFolder:o.trim(),...c.trim()?{description:c.trim()}:{}});h(!1),t(),r(e)}catch(e){_(JQ(e)),h(!1)}},noValidate:!0,children:[(0,W.jsxs)(y6,{label:`Name`,required:!0,error:x,errorId:`create-project-name-error`,children:[(0,W.jsx)(`input`,{ref:v,id:`create-project-name`,value:i,onChange:e=>{a(e.target.value),_(void 0)},onBlur:()=>p(e=>({...e,name:!0})),required:!0,maxLength:120,"aria-invalid":!!x,"aria-describedby":x?`create-project-name-help create-project-name-error`:`create-project-name-help`,className:`h-9 w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 text-sm text-slate-100 outline-none focus:border-[#11a4d4] focus:ring-1 focus:ring-[#11a4d4]`}),(0,W.jsx)(`div`,{id:`create-project-name-help`,className:`mt-1 text-[11px] text-slate-500`,children:`Required. Maximum 120 characters.`})]}),(0,W.jsxs)(y6,{label:`Folder`,required:!0,error:S,errorId:`create-project-folder-error`,children:[(0,W.jsx)(`input`,{ref:y,id:`create-project-folder`,value:o,onChange:e=>{s(e.target.value),_(void 0)},onBlur:()=>p(e=>({...e,projectFolder:!0})),required:!0,"aria-invalid":!!S,"aria-describedby":S?`create-project-folder-help create-project-folder-error`:`create-project-folder-help`,placeholder:`~/code/my-project or /home/me/code/my-project`,className:`h-9 w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 font-mono text-xs text-slate-100 outline-none placeholder:text-slate-600 focus:border-[#11a4d4] focus:ring-1 focus:ring-[#11a4d4]`}),(0,W.jsx)(`div`,{id:`create-project-folder-help`,className:`mt-1 text-[11px] text-slate-500`,children:`Use an absolute path or a path beginning with ~/.`})]}),(0,W.jsx)(y6,{label:`Description`,optional:!0,children:(0,W.jsx)(`input`,{id:`create-project-description`,value:c,onChange:e=>{l(e.target.value),_(void 0)},className:`h-9 w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 text-sm text-slate-100 outline-none focus:border-[#11a4d4] focus:ring-1 focus:ring-[#11a4d4]`})}),g?(0,W.jsx)(`div`,{className:`rounded-sm border border-red-900/70 bg-red-950/30 px-3 py-2 text-xs text-red-200`,role:`alert`,children:g}):null,(0,W.jsxs)(`div`,{className:`flex justify-end gap-2 border-t border-slate-800 pt-3`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:t,disabled:m,className:`h-8 rounded-sm border border-slate-700 px-3 text-xs text-slate-300 hover:border-slate-500 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,children:`Cancel`}),(0,W.jsxs)(`button`,{type:`submit`,disabled:m,className:`inline-flex h-8 items-center gap-2 rounded-sm bg-[#11a4d4] px-3 text-xs font-semibold text-white disabled:cursor-not-allowed disabled:opacity-50`,children:[m?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):null,`Create project`]})]})]})})}function v6(e,t){let n={},r=e.trim(),i=t.trim();return r?r.length>120&&(n.name=`Project name must be 120 characters or fewer.`):n.name=`Enter a project name.`,i?!i.startsWith(`/`)&&!i.startsWith(`~/`)&&(n.projectFolder=`Use an absolute path or a path beginning with ~/...`):n.projectFolder=`Enter a project folder.`,n}function y6({label:e,required:t,optional:n,error:r,errorId:i,children:a}){return(0,W.jsxs)(`label`,{className:`block text-xs font-semibold text-slate-300`,children:[(0,W.jsxs)(`span`,{children:[e,t?(0,W.jsx)(`span`,{className:`ml-1 text-[#8bdcf4]`,children:`required`}):null,n?(0,W.jsx)(`span`,{className:`ml-1 font-normal text-slate-500`,children:`optional`}):null]}),(0,W.jsx)(`div`,{className:`mt-1.5`,children:a}),r&&i?(0,W.jsx)(`div`,{id:i,className:`mt-1 text-[11px] text-red-300`,role:`alert`,children:r}):null]})}function WWe(e,t,n){return t===e.selectedProjectId&&n===e.selectedPiboSessionId?null:{projectId:e.selectedProjectId,...e.selectedPiboSessionId?{piboSessionId:e.selectedPiboSessionId}:{}}}function GWe(e,t,n){let r=!!(t&&e?.selectedProjectId!==t),i=!!(e&&(!t||e.selectedProjectId===t)),a=!!(n&&i&&NQ(e?.sessions??[],n)),o=!!(n&&(!a||e?.selectedPiboSessionId!==n)),s=r||o;return{project:!t||e?.project?.id===t?e?.project:e?.projects.find(e=>e.id===t),selectedPiboSessionId:r?null:n?a?n:null:e?.selectedPiboSessionId??null,navigationPending:s}}function KWe(e){let t=[],n=[];for(let r of e??[])r.archivedAt?n.push(r):t.push(r);return{active:t,archived:n}}function qWe(e,t){return{...e,...t?.session?{session:t.session}:{},agents:t?.agents??e.agents,customAgents:t?.customAgents??e.customAgents,agentFolders:t?.agentFolders??e.agentFolders,modelDefaults:t?.modelDefaults??e.modelDefaults,modelCatalog:t?.modelCatalog??e.modelCatalog,agentCatalog:t?.agentCatalog??e.agentCatalog,capabilities:t?.capabilities??e.capabilities,sessions:t?.sessions??[]}}var JWe=[{id:`sessions`,label:`Sessions`,routeSegment:`sessions`,enabled:!0,description:`Room-like chat sessions that always run in the project workspace.`},{id:`workflows`,label:`Workflows`,routeSegment:`workflows`,enabled:!1,description:`Workflow runs and graph authoring will return as a project module after the redesign.`},{id:`todos`,label:`Todos / Kanban`,routeSegment:`todos`,enabled:!1,description:`Project-scoped planning views are reserved for a later module.`},{id:`knowledge`,label:`Knowledge`,routeSegment:`knowledge`,enabled:!1,description:`Project-scoped knowledge, skills, MCPs, hooks, and heartbeat modules are deferred.`}],YWe=class{generation=0;routeKey;constructor(e){this.routeKey=e}sync(e){e!==this.routeKey&&(this.routeKey=e,this.generation+=1)}capture(){return this.generation}isCurrent(e){return e===this.generation}},XWe=class{generation=0;controller=null;begin(e){return this.controller?.abort(),this.controller=new AbortController,this.generation+=1,{generation:this.generation,routeKey:e,signal:this.controller.signal}}isCurrent(e,t){return!e.signal.aborted&&e.generation===this.generation&&e.routeKey===t}abort(){this.controller?.abort(),this.controller=null,this.generation+=1}};function ZWe(e,t){return JSON.stringify([e??null,t??null])}function QWe(e,t,n=!1){return JSON.stringify([e??null,t??null,n])}var $We=new Set;function b6({baseBootstrap:e,routeProjectId:t,routePiboSessionId:n,sessionViews:r,showRawEvents:i,showThinking:a,expandThinking:o,toolDisplayMode:s,commands:c,skills:l,onNavigate:u,onViewContext:d,onSelectSessionView:f,onToggleRawEvents:p,onToggleThinking:m,onToggleExpandThinking:h,onToolDisplayModeChange:g,onThinkingLevelChange:_,mobileSidebarOpen:v,onCloseMobileSidebar:y,terminalFullscreen:b,onEnterTerminalFullscreen:x,onExitTerminalFullscreen:S,onError:C}){let[w,T]=(0,U.useState)(null),[E,D]=(0,U.useState)(!0),[O,k]=(0,U.useState)(()=>localStorage.getItem(`pibo.chat.projects.showArchivedProjects`)===`true`),[A,j]=(0,U.useState)(()=>localStorage.getItem(`pibo.chat.projects.showArchivedSessions`)===`true`),[M,N]=(0,U.useState)(!1),[P,F]=(0,U.useState)(!1),[I,L]=(0,U.useState)(null),[R,z]=(0,U.useState)(null),[B,ee]=(0,U.useState)(()=>n?EY(n):``),[te,ne]=(0,U.useState)(0),re=O||A,V=ZWe(t,n),ie=(0,U.useRef)(null);ie.current?ie.current.sync(V):ie.current=new YWe(V);let ae=QWe(t,n,re),oe=(0,U.useRef)(ae);oe.current=ae;let se=(0,U.useRef)(null);se.current||=new XWe;let ce=(0,U.useCallback)(async(e={})=>{if(ae!==oe.current)return null;let r=se.current,i=r.begin(ae);D(!0);try{let a=await Fl({projectId:e.projectId??t,piboSessionId:e.piboSessionId??n,includeArchived:re},{signal:i.signal});if(!r.isCurrent(i,oe.current))return null;T(a);let o=WWe(a,t,n);return o&&u(o.projectId,o.piboSessionId,!0,{closeMobileSidebar:!1}),C(null),a}catch(e){if(!r.isCurrent(i,oe.current))return null;throw C(JQ(e)),e}finally{r.isCurrent(i,oe.current)&&D(!1)}},[ae,re,C,u,n,t]);(0,U.useEffect)(()=>{ce().catch(()=>void 0)},[ce]),(0,U.useEffect)(()=>()=>se.current?.abort(),[]),(0,U.useEffect)(()=>{ee(n?EY(n):``)},[n]);let le=w?.project,ue=GWe(w,t,n),de=(0,U.useRef)(ue.navigationPending);de.current=ue.navigationPending;let fe=ue.project,pe=fe?fe.metadata?.default===!0?`Project Manager`:fe.name:`Unknown project`,me=w?.selectedPiboSessionId??null,he=ue.selectedPiboSessionId,ge=he&&w?NQ(w.sessions,he):void 0,_e=ge?.profile??jQ(e),ve=w?.projectSessions??[],ye=KWe(w?.projects),be=ye.active,xe=ye.archived,Se=(0,U.useMemo)(()=>w?Zq(w.sessions,A):{active:[],archived:[]},[w,A]),Ce=(0,U.useMemo)(()=>me&&w?new Set(PQ(w.sessions,me).map(e=>e.piboSessionId)):$We,[w,me]),we=(0,U.useMemo)(()=>qWe(e,w),[e,w]),H=(0,U.useMemo)(()=>z3(`terminal`),[]),Te=!ue.navigationPending&&I===`info`&&le?(0,W.jsx)(eGe,{project:le,sessionCount:ve.length}):null,Ee=(0,U.useMemo)(()=>[{id:`project-info`,label:`Info`,description:`Project workspace and project-scoped module overview.`,active:!ue.navigationPending&&I===`info`,onSelect:()=>L(`info`)}],[I,ue.navigationPending]),De=e=>{L(null),f(e)},Oe=async e=>{if(de.current)throw Error(`Wait for project navigation to finish.`);let{project:t}=await Il({...e,createFolder:!0});return t.id},ke=e=>{de.current||u(e,void 0)},Ae=async()=>{if(!le||de.current)return;let e=ie.current.capture(),t=le.id;N(!0);try{let n=await zl(t,{profile:_e,workflowId:`simple-chat`});if(!ie.current.isCurrent(e))return;z(n.session.id),u(t,n.session.id,!1,{closeMobileSidebar:!1})}catch(e){C(JQ(e))}finally{N(!1)}},je=async(e,t)=>{if(!de.current)try{await Bl(e,{title:t}),await ce({projectId:le?.id,piboSessionId:e})}catch(e){C(JQ(e))}},Me=async(e,t)=>{if(!de.current)try{await Ll(e.id,{name:t}),await ce({projectId:le?.id,piboSessionId:me??void 0})}catch(e){C(JQ(e))}},Ne=async(e,t)=>{if(!de.current)try{await Ll(e.id,{archived:t});let n=await ce({projectId:t?void 0:e.id});n&&t&&le?.id===e.id&&u(n.selectedProjectId,n.selectedPiboSessionId)}catch(e){C(JQ(e))}},Pe=async e=>{if(de.current)return;let t=window.prompt(`Type the project name to permanently delete "${e.name}".`);if(t===null)return;let n=window.confirm(`Also delete the real project folder?\n\n${e.projectFolder}`);try{await Rl(e.id,{confirmName:t,deleteFiles:n});let r=await ce({projectId:le?.id===e.id?void 0:le?.id});r&&le?.id===e.id&&u(r.selectedProjectId,r.selectedPiboSessionId)}catch(e){C(JQ(e))}},Fe=async e=>{if(!he||ue.navigationPending)return!1;let t=e.trim().split(/\s+/)[0],n=c.find(e=>e.slash===t);if(!n)return!1;let r=r6(n.action,e.slice(t.length).trim());return await eu(he,n.action,r),await ce({projectId:fe?.id,piboSessionId:he}),!0},Ie=(0,U.useCallback)(async()=>void 0,[]),Le=(0,U.useCallback)(async()=>{await ce({projectId:fe?.id,piboSessionId:he??void 0})},[ce,he,fe?.id]);return E&&!w?(0,W.jsx)(`main`,{className:`min-h-0 grid place-items-center text-slate-400`,children:`Loading Projects...`}):w?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(UWe,{open:P&&!ue.navigationPending,onClose:()=>F(!1),onCreate:Oe,onCreated:ke}),b?null:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{"data-pibo-mobile-sidebar-backdrop":!0,"aria-hidden":`true`,className:`fixed inset-0 z-30 bg-black/60 min-[981px]:hidden transition-opacity duration-200 ${v?`opacity-100 pointer-events-auto`:`opacity-0 pointer-events-none`}`,onClick:y}),(0,W.jsx)(HWe,{data:w,selectedProject:le,selectedPiboSessionId:me,activeProjects:be,archivedProjects:xe,sessionGroups:Se,selectedSessionPathIds:Ce,autoRenameSessionId:R,creatingSession:M,navigationPending:ue.navigationPending,showArchivedProjects:O,showArchivedSessions:A,mobileSidebarOpen:v,onRefresh:()=>void ce(),onCloseMobileSidebar:y,onCreateProject:()=>{de.current||F(!0)},onToggleArchivedProjects:()=>{let e=!O;k(e),localStorage.setItem(`pibo.chat.projects.showArchivedProjects`,String(e))},onSelectProject:e=>u(e,void 0),onRenameProject:(e,t)=>void Me(e,t),onSetProjectArchived:(e,t)=>void Ne(e,t),onDeleteArchivedProject:e=>void Pe(e),onCreateProjectSession:()=>void Ae(),onToggleArchivedSessions:()=>{let e=!A;j(e),localStorage.setItem(`pibo.chat.projects.showArchivedSessions`,String(e))},onSelectSession:e=>u(le?.id,e),onRenameSession:(e,t)=>void je(e,t),onArchiveSession:(e,t)=>{de.current||Bl(e,{archived:t}).then(()=>ce({projectId:le?.id}))},onDeleteSession:e=>{de.current||Bl(e.piboSessionId,{archived:!0}).then(()=>ce({projectId:le?.id}))},onViewContext:d,onAutoRenameConsumed:()=>z(null)})]}),(0,W.jsx)(r$,{bootstrap:we,selectedPiboSessionId:he,selectedRoomId:null,contextKind:`project`,contextLabel:pe,selectedRoomArchived:!!fe?.archivedAt,sessionNavigationPending:ue.navigationPending,selectedSessionProfile:_e,selectedSessionActiveModel:MQ(we,ge??{profile:_e}),selectedSessionStatus:ge?.status,sessionViewId:`terminal`,sessionViews:r,currentSessionView:H,allowedSessionViewIds:[`terminal`],extraViewTabs:Ee,activeViewId:!ue.navigationPending&&I?`project-${I}`:`terminal`,projectModulePanel:Te,creatingSession:M||ue.navigationPending,terminalFullscreen:b,onEnterTerminalFullscreen:x,onExitTerminalFullscreen:S,showRawEvents:i,showThinking:a,expandThinking:o,toolDisplayMode:s,commands:c,skills:l,composerText:B,composerFocusSignal:te,onComposerTextChange:e=>ee(t=>typeof e==`function`?e(t):e),onToggleRawEvents:p,onToggleThinking:m,onToggleExpandThinking:h,onToolDisplayModeChange:g,onSessionAgentProfileChange:async e=>{he&&!ue.navigationPending&&await Xl(he,{profile:e})},onFork:()=>void 0,onOpenSession:e=>u(le?.id,e),onSelectSessionView:De,onCommand:Fe,onThinkingLevelChange:_,onRefreshTrace:Ie,onRefreshBootstrap:Le,onSend:async(e,t,n,r,i)=>{!he||ue.navigationPending||await Vl(he,e,r,i)},onError:C})]}):(0,W.jsx)(`main`,{className:`min-h-0 grid place-items-center bg-[#101d22] p-6 text-slate-300`,children:(0,W.jsxs)(`div`,{className:`max-w-lg rounded-sm border border-red-900/70 bg-red-950/30 p-4 text-sm leading-6 text-red-100`,role:`alert`,children:[(0,W.jsx)(`div`,{className:`font-bold`,children:`Projects could not be loaded`}),(0,W.jsx)(`div`,{className:`mt-1 text-xs text-red-100/80`,children:`The Projects bootstrap response was empty or unavailable. Refresh to try again.`}),(0,W.jsx)(`button`,{type:`button`,className:`mt-3 rounded-sm border border-red-400/60 px-3 py-1.5 text-xs font-semibold text-red-100 hover:border-red-300`,onClick:()=>void ce(),children:`Refresh Projects`})]})})}function eGe({project:e,sessionCount:t}){let n=e.metadata?.default===!0?`Project Manager`:e.name;return(0,W.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto bg-[#0e1116] p-4 text-sm text-slate-300`,children:(0,W.jsxs)(`div`,{className:`mx-auto max-w-5xl space-y-4`,children:[(0,W.jsxs)(`section`,{className:`rounded-sm border border-slate-800 bg-[#151f24] p-4`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.18em] text-[#11a4d4]`,children:`Project Info`}),(0,W.jsx)(`h2`,{className:`mt-1 text-lg font-bold text-slate-100`,children:n}),(0,W.jsxs)(`div`,{className:`mt-3 grid gap-3 text-xs md:grid-cols-2`,children:[(0,W.jsx)(x6,{label:`Workspace`,value:e.projectFolder,monospace:!0}),(0,W.jsx)(x6,{label:`Sessions`,value:String(t)}),(0,W.jsx)(x6,{label:`Status`,value:e.archivedAt?`archived`:`active`}),(0,W.jsx)(x6,{label:`Project id`,value:e.id,monospace:!0})]})]}),(0,W.jsxs)(`section`,{className:`rounded-sm border border-slate-800 bg-[#151f24] p-4`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.18em] text-slate-500`,children:`Project views`}),(0,W.jsx)(`p`,{className:`mt-2 max-w-2xl text-xs leading-5 text-slate-400`,children:`Project-scoped capabilities live in top-level view tabs, not in the sidebar. Terminal stays a clean session view; future views can be enabled here without becoming session rows.`}),(0,W.jsx)(`div`,{className:`mt-4 grid gap-2 md:grid-cols-2 xl:grid-cols-4`,children:JWe.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border px-3 py-3 text-xs ${e.enabled?`border-[#11a4d4] bg-[#11a4d4]/10 text-[#8bdcf4]`:`border-slate-800 bg-[#101d22]/60 text-slate-500`}`,children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,W.jsx)(`span`,{className:`font-semibold`,children:e.label}),(0,W.jsx)(`span`,{className:`text-[10px] uppercase tracking-wider`,children:e.enabled?`active`:`later`})]}),(0,W.jsx)(`div`,{className:`mt-2 text-[11px] leading-5 opacity-80`,children:e.description})]},e.id))})]})]})})}function x6({label:e,value:t,monospace:n}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-3`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:e}),(0,W.jsx)(`div`,{className:`mt-1 break-words text-slate-200 ${n?`font-mono text-[11px]`:`text-xs`}`,children:t})]})}function S6(e){if(typeof e==`string`||typeof e==`number`)return``+e;let t=``;if(Array.isArray(e))for(let n=0,r;n<e.length;n++)(r=S6(e[n]))!==``&&(t+=(t&&` `)+r);else for(let n in e)e[n]&&(t+=(t&&` `)+n);return t}var tGe={value:()=>{}};function C6(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new w6(n)}function w6(e){this._=e}function nGe(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}w6.prototype=C6.prototype={constructor:w6,on:function(e,t){var n=this._,r=nGe(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=rGe(n[i],e.name)))return i;return}if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=T6(n[i],e.name,t);else if(t==null)for(i in n)n[i]=T6(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new w6(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function rGe(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function T6(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=tGe,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var E6={svg:`http://www.w3.org/2000/svg`,xhtml:`http://www.w3.org/1999/xhtml`,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function D6(e){var t=e+=``,n=t.indexOf(`:`);return n>=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),E6.hasOwnProperty(t)?{space:E6[t],local:e}:e}function iGe(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===`http://www.w3.org/1999/xhtml`&&t.documentElement.namespaceURI===`http://www.w3.org/1999/xhtml`?t.createElement(e):t.createElementNS(n,e)}}function aGe(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function O6(e){var t=D6(e);return(t.local?aGe:iGe)(t)}function oGe(){}function k6(e){return e==null?oGe:function(){return this.querySelector(e)}}function sGe(e){typeof e!=`function`&&(e=k6(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=Array(o),c,l,u=0;u<o;++u)(c=a[u])&&(l=e.call(c,c.__data__,u,a))&&(`__data__`in c&&(l.__data__=c.__data__),s[u]=l);return new W6(r,this._parents)}function cGe(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function lGe(){return[]}function A6(e){return e==null?lGe:function(){return this.querySelectorAll(e)}}function uGe(e){return function(){return cGe(e.apply(this,arguments))}}function dGe(e){e=typeof e==`function`?uGe(e):A6(e);for(var t=this._groups,n=t.length,r=[],i=[],a=0;a<n;++a)for(var o=t[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&(r.push(e.call(c,c.__data__,l,o)),i.push(c));return new W6(r,i)}function j6(e){return function(){return this.matches(e)}}function M6(e){return function(t){return t.matches(e)}}var fGe=Array.prototype.find;function pGe(e){return function(){return fGe.call(this.children,e)}}function mGe(){return this.firstElementChild}function hGe(e){return this.select(e==null?mGe:pGe(typeof e==`function`?e:M6(e)))}var gGe=Array.prototype.filter;function _Ge(){return Array.from(this.children)}function vGe(e){return function(){return gGe.call(this.children,e)}}function yGe(e){return this.selectAll(e==null?_Ge:vGe(typeof e==`function`?e:M6(e)))}function bGe(e){typeof e!=`function`&&(e=j6(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new W6(r,this._parents)}function N6(e){return Array(e.length)}function xGe(){return new W6(this._enter||this._groups.map(N6),this._parents)}function P6(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}P6.prototype={constructor:P6,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function SGe(e){return function(){return e}}function CGe(e,t,n,r,i,a){for(var o=0,s,c=t.length,l=a.length;o<l;++o)(s=t[o])?(s.__data__=a[o],r[o]=s):n[o]=new P6(e,a[o]);for(;o<c;++o)(s=t[o])&&(i[o]=s)}function wGe(e,t,n,r,i,a,o){var s,c,l=new Map,u=t.length,d=a.length,f=Array(u),p;for(s=0;s<u;++s)(c=t[s])&&(f[s]=p=o.call(c,c.__data__,s,t)+``,l.has(p)?i[s]=c:l.set(p,c));for(s=0;s<d;++s)p=o.call(e,a[s],s,a)+``,(c=l.get(p))?(r[s]=c,c.__data__=a[s],l.delete(p)):n[s]=new P6(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&l.get(f[s])===c&&(i[s]=c)}function TGe(e){return e.__data__}function EGe(e,t){if(!arguments.length)return Array.from(this,TGe);var n=t?wGe:CGe,r=this._parents,i=this._groups;typeof e!=`function`&&(e=SGe(e));for(var a=i.length,o=Array(a),s=Array(a),c=Array(a),l=0;l<a;++l){var u=r[l],d=i[l],f=d.length,p=DGe(e.call(u,u&&u.__data__,l,r)),m=p.length,h=s[l]=Array(m),g=o[l]=Array(m);n(u,d,h,g,c[l]=Array(f),p,t);for(var _=0,v=0,y,b;_<m;++_)if(y=h[_]){for(_>=v&&(v=_+1);!(b=g[v])&&++v<m;);y._next=b||null}}return o=new W6(o,r),o._enter=s,o._exit=c,o}function DGe(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function OGe(){return new W6(this._exit||this._groups.map(N6),this._parents)}function kGe(e,t,n){var r=this.enter(),i=this,a=this.exit();return typeof e==`function`?(r=e(r),r&&=r.selection()):r=r.append(e+``),t!=null&&(i=t(i),i&&=i.selection()),n==null?a.remove():n(a),r&&i?r.merge(i).order():i}function AGe(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,a=r.length,o=Math.min(i,a),s=Array(i),c=0;c<o;++c)for(var l=n[c],u=r[c],d=l.length,f=s[c]=Array(d),p,m=0;m<d;++m)(p=l[m]||u[m])&&(f[m]=p);for(;c<i;++c)s[c]=n[c];return new W6(s,this._parents)}function jGe(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,a=r[i],o;--i>=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function MGe(e){e||=NGe;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,c=i[a]=Array(s),l,u=0;u<s;++u)(l=o[u])&&(c[u]=l);c.sort(t)}return new W6(i,this._parents).order()}function NGe(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function PGe(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function FGe(){return Array.from(this)}function IGe(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null}function LGe(){let e=0;for(let t of this)++e;return e}function RGe(){return!this.node()}function zGe(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],a=0,o=i.length,s;a<o;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function BGe(e){return function(){this.removeAttribute(e)}}function VGe(e){return function(){this.removeAttributeNS(e.space,e.local)}}function HGe(e,t){return function(){this.setAttribute(e,t)}}function UGe(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function WGe(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function GGe(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function KGe(e,t){var n=D6(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?VGe:BGe:typeof t==`function`?n.local?GGe:WGe:n.local?UGe:HGe)(n,t))}function F6(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function qGe(e){return function(){this.style.removeProperty(e)}}function JGe(e,t,n){return function(){this.style.setProperty(e,t,n)}}function YGe(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function XGe(e,t,n){return arguments.length>1?this.each((t==null?qGe:typeof t==`function`?YGe:JGe)(e,t,n??``)):I6(this.node(),e)}function I6(e,t){return e.style.getPropertyValue(t)||F6(e).getComputedStyle(e,null).getPropertyValue(t)}function ZGe(e){return function(){delete this[e]}}function QGe(e,t){return function(){this[e]=t}}function $Ge(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function eKe(e,t){return arguments.length>1?this.each((t==null?ZGe:typeof t==`function`?$Ge:QGe)(e,t)):this.node()[e]}function L6(e){return e.trim().split(/^|\s+/)}function R6(e){return e.classList||new z6(e)}function z6(e){this._node=e,this._names=L6(e.getAttribute(`class`)||``)}z6.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function B6(e,t){for(var n=R6(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function V6(e,t){for(var n=R6(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function tKe(e){return function(){B6(this,e)}}function nKe(e){return function(){V6(this,e)}}function rKe(e,t){return function(){(t.apply(this,arguments)?B6:V6)(this,e)}}function iKe(e,t){var n=L6(e+``);if(arguments.length<2){for(var r=R6(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t==`function`?rKe:t?tKe:nKe)(n,t))}function aKe(){this.textContent=``}function oKe(e){return function(){this.textContent=e}}function sKe(e){return function(){var t=e.apply(this,arguments);this.textContent=t??``}}function cKe(e){return arguments.length?this.each(e==null?aKe:(typeof e==`function`?sKe:oKe)(e)):this.node().textContent}function lKe(){this.innerHTML=``}function uKe(e){return function(){this.innerHTML=e}}function dKe(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??``}}function fKe(e){return arguments.length?this.each(e==null?lKe:(typeof e==`function`?dKe:uKe)(e)):this.node().innerHTML}function pKe(){this.nextSibling&&this.parentNode.appendChild(this)}function mKe(){return this.each(pKe)}function hKe(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function gKe(){return this.each(hKe)}function _Ke(e){var t=typeof e==`function`?e:O6(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function vKe(){return null}function yKe(e,t){var n=typeof e==`function`?e:O6(e),r=t==null?vKe:typeof t==`function`?t:k6(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function bKe(){var e=this.parentNode;e&&e.removeChild(this)}function xKe(){return this.each(bKe)}function SKe(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function CKe(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function wKe(e){return this.select(e?CKe:SKe)}function TKe(e){return arguments.length?this.property(`__data__`,e):this.node().__data__}function EKe(e){return function(t){e.call(this,t,this.__data__)}}function DKe(e){return e.trim().split(/^|\s+/).map(function(e){var t=``,n=e.indexOf(`.`);return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function OKe(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n<i;++n)a=t[n],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function kKe(e,t,n){return function(){var r=this.__on,i,a=EKe(t);if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=t;return}}this.addEventListener(e.type,a,n),i={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(i):this.__on=[i]}}function AKe(e,t,n){var r=DKe(e+``),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,l=s.length,u;c<l;++c)for(i=0,u=s[c];i<a;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}return}for(s=t?kKe:OKe,i=0;i<a;++i)this.each(s(r[i],t,n));return this}function H6(e,t,n){var r=F6(e),i=r.CustomEvent;typeof i==`function`?i=new i(t,n):(i=r.document.createEvent(`Event`),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function jKe(e,t){return function(){return H6(this,e,t)}}function MKe(e,t){return function(){return H6(this,e,t.apply(this,arguments))}}function NKe(e,t){return this.each((typeof t==`function`?MKe:jKe)(e,t))}function*PKe(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length,o;i<a;++i)(o=r[i])&&(yield o)}var U6=[null];function W6(e,t){this._groups=e,this._parents=t}function G6(){return new W6([[document.documentElement]],U6)}function FKe(){return this}W6.prototype=G6.prototype={constructor:W6,select:sGe,selectAll:dGe,selectChild:hGe,selectChildren:yGe,filter:bGe,data:EGe,enter:xGe,exit:OGe,join:kGe,merge:AGe,selection:FKe,order:jGe,sort:MGe,call:PGe,nodes:FGe,node:IGe,size:LGe,empty:RGe,each:zGe,attr:KGe,style:XGe,property:eKe,classed:iKe,text:cKe,html:fKe,raise:mKe,lower:gKe,append:_Ke,insert:yKe,remove:xKe,clone:wKe,datum:TKe,on:AKe,dispatch:NKe,[Symbol.iterator]:PKe};function K6(e){return typeof e==`string`?new W6([[document.querySelector(e)]],[document.documentElement]):new W6([[e]],U6)}function IKe(e){let t;for(;t=e.sourceEvent;)e=t;return e}function q6(e,t){if(e=IKe(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}var LKe={passive:!1},J6={capture:!0,passive:!1};function Y6(e){e.stopImmediatePropagation()}function X6(e){e.preventDefault(),e.stopImmediatePropagation()}function Z6(e){var t=e.document.documentElement,n=K6(e).on(`dragstart.drag`,X6,J6);`onselectstart`in t?n.on(`selectstart.drag`,X6,J6):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect=`none`)}function Q6(e,t){var n=e.document.documentElement,r=K6(e).on(`dragstart.drag`,null);t&&(r.on(`click.drag`,X6,J6),setTimeout(function(){r.on(`click.drag`,null)},0)),`onselectstart`in n?r.on(`selectstart.drag`,null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}var $6=e=>()=>e;function e8(e,{sourceEvent:t,subject:n,target:r,identifier:i,active:a,x:o,y:s,dx:c,dy:l,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:l,enumerable:!0,configurable:!0},_:{value:u}})}e8.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function RKe(e){return!e.ctrlKey&&!e.button}function zKe(){return this.parentNode}function BKe(e,t){return t??{x:e.x,y:e.y}}function VKe(){return navigator.maxTouchPoints||`ontouchstart`in this}function t8(){var e=RKe,t=zKe,n=BKe,r=VKe,i={},a=C6(`start`,`drag`,`end`),o=0,s,c,l,u,d=0;function f(e){e.on(`mousedown.drag`,p).filter(r).on(`touchstart.drag`,g).on(`touchmove.drag`,_,LKe).on(`touchend.drag touchcancel.drag`,v).style(`touch-action`,`none`).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}function p(n,r){if(!(u||!e.call(this,n,r))){var i=y(this,t.call(this,n,r),n,r,`mouse`);i&&(K6(n.view).on(`mousemove.drag`,m,J6).on(`mouseup.drag`,h,J6),Z6(n.view),Y6(n),l=!1,s=n.clientX,c=n.clientY,i(`start`,n))}}function m(e){if(X6(e),!l){var t=e.clientX-s,n=e.clientY-c;l=t*t+n*n>d}i.mouse(`drag`,e)}function h(e){K6(e.view).on(`mousemove.drag mouseup.drag`,null),Q6(e.view,l),X6(e),i.mouse(`end`,e)}function g(n,r){if(e.call(this,n,r)){var i=n.changedTouches,a=t.call(this,n,r),o=i.length,s,c;for(s=0;s<o;++s)(c=y(this,a,n,r,i[s].identifier,i[s]))&&(Y6(n),c(`start`,n,i[s]))}}function _(e){var t=e.changedTouches,n=t.length,r,a;for(r=0;r<n;++r)(a=i[t[r].identifier])&&(X6(e),a(`drag`,e,t[r]))}function v(e){var t=e.changedTouches,n=t.length,r,a;for(u&&clearTimeout(u),u=setTimeout(function(){u=null},500),r=0;r<n;++r)(a=i[t[r].identifier])&&(Y6(e),a(`end`,e,t[r]))}function y(e,t,r,s,c,l){var u=a.copy(),d=q6(l||r,t),p,m,h;if((h=n.call(e,new e8(`beforestart`,{sourceEvent:r,target:f,identifier:c,active:o,x:d[0],y:d[1],dx:0,dy:0,dispatch:u}),s))!=null)return p=h.x-d[0]||0,m=h.y-d[1]||0,function n(r,a,l){var g=d,_;switch(r){case`start`:i[c]=n,_=o++;break;case`end`:delete i[c],--o;case`drag`:d=q6(l||a,t),_=o}u.call(r,e,new e8(r,{sourceEvent:a,subject:h,target:f,identifier:c,active:_,x:d[0]+p,y:d[1]+m,dx:d[0]-g[0],dy:d[1]-g[1],dispatch:u}),s)}}return f.filter=function(t){return arguments.length?(e=typeof t==`function`?t:$6(!!t),f):e},f.container=function(e){return arguments.length?(t=typeof e==`function`?e:$6(e),f):t},f.subject=function(e){return arguments.length?(n=typeof e==`function`?e:$6(e),f):n},f.touchable=function(e){return arguments.length?(r=typeof e==`function`?e:$6(!!e),f):r},f.on=function(){var e=a.on.apply(a,arguments);return e===a?f:e},f.clickDistance=function(e){return arguments.length?(d=(e=+e)*e,f):Math.sqrt(d)},f}function n8(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function r8(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function i8(){}var a8=.7,o8=1/a8,s8=`\\s*([+-]?\\d+)\\s*`,c8=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,l8=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,HKe=/^#([0-9a-f]{3,8})$/,UKe=RegExp(`^rgb\\(${s8},${s8},${s8}\\)$`),WKe=RegExp(`^rgb\\(${l8},${l8},${l8}\\)$`),GKe=RegExp(`^rgba\\(${s8},${s8},${s8},${c8}\\)$`),KKe=RegExp(`^rgba\\(${l8},${l8},${l8},${c8}\\)$`),qKe=RegExp(`^hsl\\(${c8},${l8},${l8}\\)$`),JKe=RegExp(`^hsla\\(${c8},${l8},${l8},${c8}\\)$`),u8={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};n8(i8,p8,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:d8,formatHex:d8,formatHex8:YKe,formatHsl:XKe,formatRgb:f8,toString:f8});function d8(){return this.rgb().formatHex()}function YKe(){return this.rgb().formatHex8()}function XKe(){return w8(this).formatHsl()}function f8(){return this.rgb().formatRgb()}function p8(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=HKe.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?m8(t):n===3?new _8(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?h8(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?h8(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=UKe.exec(e))?new _8(t[1],t[2],t[3],1):(t=WKe.exec(e))?new _8(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=GKe.exec(e))?h8(t[1],t[2],t[3],t[4]):(t=KKe.exec(e))?h8(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=qKe.exec(e))?C8(t[1],t[2]/100,t[3]/100,1):(t=JKe.exec(e))?C8(t[1],t[2]/100,t[3]/100,t[4]):u8.hasOwnProperty(e)?m8(u8[e]):e===`transparent`?new _8(NaN,NaN,NaN,0):null}function m8(e){return new _8(e>>16&255,e>>8&255,e&255,1)}function h8(e,t,n,r){return r<=0&&(e=t=n=NaN),new _8(e,t,n,r)}function ZKe(e){return e instanceof i8||(e=p8(e)),e?(e=e.rgb(),new _8(e.r,e.g,e.b,e.opacity)):new _8}function g8(e,t,n,r){return arguments.length===1?ZKe(e):new _8(e,t,n,r??1)}function _8(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}n8(_8,g8,r8(i8,{brighter(e){return e=e==null?o8:o8**+e,new _8(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?a8:a8**+e,new _8(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new _8(x8(this.r),x8(this.g),x8(this.b),b8(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:v8,formatHex:v8,formatHex8:QKe,formatRgb:y8,toString:y8}));function v8(){return`#${S8(this.r)}${S8(this.g)}${S8(this.b)}`}function QKe(){return`#${S8(this.r)}${S8(this.g)}${S8(this.b)}${S8((isNaN(this.opacity)?1:this.opacity)*255)}`}function y8(){let e=b8(this.opacity);return`${e===1?`rgb(`:`rgba(`}${x8(this.r)}, ${x8(this.g)}, ${x8(this.b)}${e===1?`)`:`, ${e})`}`}function b8(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function x8(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function S8(e){return e=x8(e),(e<16?`0`:``)+e.toString(16)}function C8(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new T8(e,t,n,r)}function w8(e){if(e instanceof T8)return new T8(e.h,e.s,e.l,e.opacity);if(e instanceof i8||(e=p8(e)),!e)return new T8;if(e instanceof T8)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new T8(o,s,c,e.opacity)}function $Ke(e,t,n,r){return arguments.length===1?w8(e):new T8(e,t,n,r??1)}function T8(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}n8(T8,$Ke,r8(i8,{brighter(e){return e=e==null?o8:o8**+e,new T8(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?a8:a8**+e,new T8(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new _8(O8(e>=240?e-240:e+120,i,r),O8(e,i,r),O8(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new T8(E8(this.h),D8(this.s),D8(this.l),b8(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=b8(this.opacity);return`${e===1?`hsl(`:`hsla(`}${E8(this.h)}, ${D8(this.s)*100}%, ${D8(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function E8(e){return e=(e||0)%360,e<0?e+360:e}function D8(e){return Math.max(0,Math.min(1,e||0))}function O8(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var k8=e=>()=>e;function eqe(e,t){return function(n){return e+n*t}}function tqe(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function nqe(e){return(e=+e)==1?A8:function(t,n){return n-t?tqe(t,n,e):k8(isNaN(t)?n:t)}}function A8(e,t){var n=t-e;return n?eqe(e,n):k8(isNaN(e)?t:e)}var j8=(function e(t){var n=nqe(t);function r(e,t){var r=n((e=g8(e)).r,(t=g8(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=A8(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function rqe(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<n;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function iqe(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function aqe(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,i=Array(r),a=Array(n),o;for(o=0;o<r;++o)i[o]=I8(e[o],t[o]);for(;o<n;++o)a[o]=t[o];return function(e){for(o=0;o<r;++o)a[o]=i[o](e);return a}}function oqe(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function M8(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function sqe(e,t){var n={},r={},i;for(i in(typeof e!=`object`||!e)&&(e={}),(typeof t!=`object`||!t)&&(t={}),t)i in e?n[i]=I8(e[i],t[i]):r[i]=t[i];return function(e){for(i in n)r[i]=n[i](e);return r}}var N8=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,P8=new RegExp(N8.source,`g`);function cqe(e){return function(){return e}}function lqe(e){return function(t){return e(t)+``}}function F8(e,t){var n=N8.lastIndex=P8.lastIndex=0,r,i,a,o=-1,s=[],c=[];for(e+=``,t+=``;(r=N8.exec(e))&&(i=P8.exec(t));)(a=i.index)>n&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:M8(r,i)})),n=P8.lastIndex;return n<t.length&&(a=t.slice(n),s[o]?s[o]+=a:s[++o]=a),s.length<2?c[0]?lqe(c[0].x):cqe(t):(t=c.length,function(e){for(var n=0,r;n<t;++n)s[(r=c[n]).i]=r.x(e);return s.join(``)})}function I8(e,t){var n=typeof t,r;return t==null||n===`boolean`?k8(t):(n===`number`?M8:n===`string`?(r=p8(t))?(t=r,j8):F8:t instanceof p8?j8:t instanceof Date?oqe:iqe(t)?rqe:Array.isArray(t)?aqe:typeof t.valueOf!=`function`&&typeof t.toString!=`function`||isNaN(t)?sqe:M8)(e,t)}var L8=180/Math.PI,R8={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function z8(e,t,n,r,i,a){var o,s,c;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),e*r<t*n&&(e=-e,t=-t,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*L8,skewX:Math.atan(c)*L8,scaleX:o,scaleY:s}}var B8;function uqe(e){let t=new(typeof DOMMatrix==`function`?DOMMatrix:WebKitCSSMatrix)(e+``);return t.isIdentity?R8:z8(t.a,t.b,t.c,t.d,t.e,t.f)}function dqe(e){return e==null||(B8||=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),B8.setAttribute(`transform`,e),!(e=B8.transform.baseVal.consolidate()))?R8:(e=e.matrix,z8(e.a,e.b,e.c,e.d,e.e,e.f))}function V8(e,t,n,r){function i(e){return e.length?e.pop()+` `:``}function a(e,r,i,a,o,s){if(e!==i||r!==a){var c=o.push(`translate(`,null,t,null,n);s.push({i:c-4,x:M8(e,i)},{i:c-2,x:M8(r,a)})}else(i||a)&&o.push(`translate(`+i+t+a+n)}function o(e,t,n,a){e===t?t&&n.push(i(n)+`rotate(`+t+r):(e-t>180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:M8(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:M8(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:M8(e,n)},{i:s-2,x:M8(t,r)})}else(n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t<n;)r[(a=i[t]).i]=a.x(e);return r.join(``)}}}var fqe=V8(uqe,`px, `,`px)`,`deg)`),pqe=V8(dqe,`, `,`)`,`)`),mqe=1e-12;function H8(e){return((e=Math.exp(e))+1/e)/2}function hqe(e){return((e=Math.exp(e))-1/e)/2}function gqe(e){return((e=Math.exp(2*e))-1)/(e+1)}var U8=(function e(t,n,r){function i(e,i){var a=e[0],o=e[1],s=e[2],c=i[0],l=i[1],u=i[2],d=c-a,f=l-o,p=d*d+f*f,m,h;if(p<mqe)h=Math.log(u/s)/t,m=function(e){return[a+e*d,o+e*f,s*Math.exp(t*e*h)]};else{var g=Math.sqrt(p),_=(u*u-s*s+r*p)/(2*s*n*g),v=(u*u-s*s-r*p)/(2*u*n*g),y=Math.log(Math.sqrt(_*_+1)-_);h=(Math.log(Math.sqrt(v*v+1)-v)-y)/t,m=function(e){var r=e*h,i=H8(y),c=s/(n*g)*(i*gqe(t*r+y)-hqe(y));return[a+c*d,o+c*f,s*i/H8(t*r+y)]}}return m.duration=h*1e3*t/Math.SQRT2,m}return i.rho=function(t){var n=Math.max(.001,+t),r=n*n;return e(n,r,r*r)},i})(Math.SQRT2,2,4),W8=0,G8=0,K8=0,_qe=1e3,q8,J8,Y8=0,X8=0,Z8=0,Q8=typeof performance==`object`&&performance.now?performance:Date,vqe=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function $8(){return X8||=(vqe(yqe),Q8.now()+Z8)}function yqe(){X8=0}function e5(){this._call=this._time=this._next=null}e5.prototype=bqe.prototype={constructor:e5,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?$8():+n)+(t==null?0:+t),!this._next&&J8!==this&&(J8?J8._next=this:q8=this,J8=this),this._call=e,this._time=n,t5()},stop:function(){this._call&&(this._call=null,this._time=1/0,t5())}};function bqe(e,t,n){var r=new e5;return r.restart(e,t,n),r}function xqe(){$8(),++W8;for(var e=q8,t;e;)(t=X8-e._time)>=0&&e._call.call(void 0,t),e=e._next;--W8}function Sqe(){X8=(Y8=Q8.now())+Z8,W8=G8=0;try{xqe()}finally{W8=0,wqe(),X8=0}}function Cqe(){var e=Q8.now(),t=e-Y8;t>_qe&&(Z8-=t,Y8=e)}function wqe(){for(var e,t=q8,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:q8=n);J8=e,t5(r)}function t5(e){W8||(G8&&=clearTimeout(G8),e-X8>24?(e<1/0&&(G8=setTimeout(Sqe,e-Q8.now()-Z8)),K8&&=clearInterval(K8)):(K8||=(Y8=Q8.now(),setInterval(Cqe,_qe)),W8=1,vqe(Sqe)))}function Tqe(e,t,n){var r=new e5;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var Eqe=C6(`start`,`end`,`cancel`,`interrupt`),Dqe=[];function n5(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;Oqe(e,n,{name:t,index:r,group:i,on:Eqe,tween:Dqe,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function r5(e,t){var n=a5(e,t);if(n.state>0)throw Error(`too late; already scheduled`);return n}function i5(e,t){var n=a5(e,t);if(n.state>3)throw Error(`too late; already running`);return n}function a5(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function Oqe(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=bqe(a,0,n.time);function a(e){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==1)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===3)return Tqe(o);f.state===4?(f.state=6,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l<t&&(f.state=6,f.timer.stop(),f.on.call(`cancel`,e,e.__data__,f.index,f.group),delete r[l])}if(Tqe(function(){n.state===3&&(n.state=4,n.timer.restart(s,n.delay,n.time),s(a))}),n.state=2,n.on.call(`start`,e,e.__data__,n.index,n.group),n.state===2){for(n.state=3,i=Array(d=n.tween.length),l=0,u=-1;l<d;++l)(f=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(i[++u]=f);i.length=u+1}}function s(t){for(var r=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(c),n.state=5,1),a=-1,o=i.length;++a<o;)i[a].call(e,r);n.state===5&&(n.on.call(`end`,e,e.__data__,n.index,n.group),c())}function c(){for(var i in n.state=6,n.timer.stop(),delete r[t],r)return;delete e.__transition}}function o5(e,t){var n=e.__transition,r,i,a=!0,o;if(n){for(o in t=t==null?null:t+``,n){if((r=n[o]).name!==t){a=!1;continue}i=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]}a&&delete e.__transition}}function kqe(e){return this.each(function(){o5(this,e)})}function Aqe(e,t){var n,r;return function(){var i=i5(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function jqe(e,t,n){var r,i;if(typeof n!=`function`)throw Error();return function(){var a=i5(this,e),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:t,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===t){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function Mqe(e,t){var n=this._id;if(e+=``,arguments.length<2){for(var r=a5(this.node(),n).tween,i=0,a=r.length,o;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((t==null?Aqe:jqe)(n,e,t))}function s5(e,t,n){var r=e._id;return e.each(function(){var e=i5(this,r);(e.value||={})[t]=n.apply(this,arguments)}),function(e){return a5(e,r).value[t]}}function Nqe(e,t){var n;return(typeof t==`number`?M8:t instanceof p8?j8:(n=p8(t))?(t=n,j8):F8)(e,t)}function Pqe(e){return function(){this.removeAttribute(e)}}function Fqe(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Iqe(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttribute(e);return o===i?null:o===r?a:a=t(r=o,n)}}function Lqe(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttributeNS(e.space,e.local);return o===i?null:o===r?a:a=t(r=o,n)}}function Rqe(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttribute(e):(o=this.getAttribute(e),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function zqe(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function Bqe(e,t){var n=D6(e),r=n===`transform`?pqe:Nqe;return this.attrTween(e,typeof t==`function`?(n.local?zqe:Rqe)(n,r,s5(this,`attr.`+e,t)):t==null?(n.local?Fqe:Pqe)(n):(n.local?Lqe:Iqe)(n,r,t))}function Vqe(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function Hqe(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function Uqe(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&Hqe(e,i)),n}return i._value=t,i}function Wqe(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&Vqe(e,i)),n}return i._value=t,i}function Gqe(e,t){var n=`attr.`+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!=`function`)throw Error();var r=D6(e);return this.tween(n,(r.local?Uqe:Wqe)(r,t))}function Kqe(e,t){return function(){r5(this,e).delay=+t.apply(this,arguments)}}function qqe(e,t){return t=+t,function(){r5(this,e).delay=t}}function Jqe(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?Kqe:qqe)(t,e)):a5(this.node(),t).delay}function Yqe(e,t){return function(){i5(this,e).duration=+t.apply(this,arguments)}}function Xqe(e,t){return t=+t,function(){i5(this,e).duration=t}}function Zqe(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?Yqe:Xqe)(t,e)):a5(this.node(),t).duration}function Qqe(e,t){if(typeof t!=`function`)throw Error();return function(){i5(this,e).ease=t}}function $qe(e){var t=this._id;return arguments.length?this.each(Qqe(t,e)):a5(this.node(),t).ease}function eJe(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!=`function`)throw Error();i5(this,e).ease=n}}function tJe(e){if(typeof e!=`function`)throw Error();return this.each(eJe(this._id,e))}function nJe(e){typeof e!=`function`&&(e=j6(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new c5(r,this._parents,this._name,this._id)}function rJe(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,i=n.length,a=Math.min(r,i),o=Array(r),s=0;s<a;++s)for(var c=t[s],l=n[s],u=c.length,d=o[s]=Array(u),f,p=0;p<u;++p)(f=c[p]||l[p])&&(d[p]=f);for(;s<r;++s)o[s]=t[s];return new c5(o,this._parents,this._name,this._id)}function iJe(e){return(e+``).trim().split(/^|\s+/).every(function(e){var t=e.indexOf(`.`);return t>=0&&(e=e.slice(0,t)),!e||e===`start`})}function aJe(e,t,n){var r,i,a=iJe(t)?r5:i5;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function oJe(e,t){var n=this._id;return arguments.length<2?a5(this.node(),n).on.on(e):this.each(aJe(n,e,t))}function sJe(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function cJe(){return this.on(`end.remove`,sJe(this._id))}function lJe(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=k6(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o<i;++o)for(var s=r[o],c=s.length,l=a[o]=Array(c),u,d,f=0;f<c;++f)(u=s[f])&&(d=e.call(u,u.__data__,f,s))&&(`__data__`in u&&(d.__data__=u.__data__),l[f]=d,n5(l[f],t,n,f,l,a5(u,n)));return new c5(a,this._parents,t,n)}function uJe(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=A6(e));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c=r[s],l=c.length,u,d=0;d<l;++d)if(u=c[d]){for(var f=e.call(u,u.__data__,d,c),p,m=a5(u,n),h=0,g=f.length;h<g;++h)(p=f[h])&&n5(p,t,n,h,f,m);a.push(f),o.push(u)}return new c5(a,o,t,n)}var dJe=G6.prototype.constructor;function fJe(){return new dJe(this._groups,this._parents)}function pJe(e,t){var n,r,i;return function(){var a=I6(this,e),o=(this.style.removeProperty(e),I6(this,e));return a===o?null:a===n&&o===r?i:i=t(n=a,r=o)}}function mJe(e){return function(){this.style.removeProperty(e)}}function hJe(e,t,n){var r,i=n+``,a;return function(){var o=I6(this,e);return o===i?null:o===r?a:a=t(r=o,n)}}function gJe(e,t,n){var r,i,a;return function(){var o=I6(this,e),s=n(this),c=s+``;return s??(c=s=(this.style.removeProperty(e),I6(this,e))),o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s))}}function _Je(e,t){var n,r,i,a=`style.`+t,o=`end.`+a,s;return function(){var c=i5(this,e),l=c.on,u=c.value[a]==null?s||=mJe(t):void 0;(l!==n||i!==u)&&(r=(n=l).copy()).on(o,i=u),c.on=r}}function vJe(e,t,n){var r=(e+=``)==`transform`?fqe:Nqe;return t==null?this.styleTween(e,pJe(e,r)).on(`end.style.`+e,mJe(e)):typeof t==`function`?this.styleTween(e,gJe(e,r,s5(this,`style.`+e,t))).each(_Je(this._id,e)):this.styleTween(e,hJe(e,r,t),n).on(`end.style.`+e,null)}function yJe(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function bJe(e,t,n){var r,i;function a(){var a=t.apply(this,arguments);return a!==i&&(r=(i=a)&&yJe(e,a,n)),r}return a._value=t,a}function xJe(e,t,n){var r=`style.`+(e+=``);if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!=`function`)throw Error();return this.tween(r,bJe(e,t,n??``))}function SJe(e){return function(){this.textContent=e}}function CJe(e){return function(){var t=e(this);this.textContent=t??``}}function wJe(e){return this.tween(`text`,typeof e==`function`?CJe(s5(this,`text`,e)):SJe(e==null?``:e+``))}function TJe(e){return function(t){this.textContent=e.call(this,t)}}function EJe(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&TJe(r)),t}return r._value=e,r}function DJe(e){var t=`text`;if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=`function`)throw Error();return this.tween(t,EJe(e))}function OJe(){for(var e=this._name,t=this._id,n=jJe(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)if(c=o[l]){var u=a5(c,t);n5(c,e,n,l,o,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new c5(r,this._parents,e,n)}function kJe(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(a,o){var s={value:o},c={value:function(){--i===0&&a()}};n.each(function(){var n=i5(this,r),i=n.on;i!==e&&(t=(e=i).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),n.on=t}),i===0&&a()})}var AJe=0;function c5(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function jJe(){return++AJe}var l5=G6.prototype;c5.prototype={constructor:c5,select:lJe,selectAll:uJe,selectChild:l5.selectChild,selectChildren:l5.selectChildren,filter:nJe,merge:rJe,selection:fJe,transition:OJe,call:l5.call,nodes:l5.nodes,node:l5.node,size:l5.size,empty:l5.empty,each:l5.each,on:oJe,attr:Bqe,attrTween:Gqe,style:vJe,styleTween:xJe,text:wJe,textTween:DJe,remove:cJe,tween:Mqe,delay:Jqe,duration:Zqe,ease:$qe,easeVarying:tJe,end:kJe,[Symbol.iterator]:l5[Symbol.iterator]};function MJe(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var NJe={time:null,delay:0,duration:250,ease:MJe};function PJe(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}function FJe(e){var t,n;e instanceof c5?(t=e._id,e=e._name):(t=jJe(),(n=NJe).time=$8(),e=e==null?null:e+``);for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&n5(c,e,t,l,o,n||PJe(c,t));return new c5(r,this._parents,e,t)}G6.prototype.interrupt=kqe,G6.prototype.transition=FJe;var u5=e=>()=>e;function IJe(e,{sourceEvent:t,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function d5(e,t,n){this.k=e,this.x=t,this.y=n}d5.prototype={constructor:d5,scale:function(e){return e===1?this:new d5(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new d5(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var f5=new d5(1,0,0);LJe.prototype=d5.prototype;function LJe(e){for(;!e.__zoom;)if(!(e=e.parentNode))return f5;return e.__zoom}function p5(e){e.stopImmediatePropagation()}function m5(e){e.preventDefault(),e.stopImmediatePropagation()}function RJe(e){return(!e.ctrlKey||e.type===`wheel`)&&!e.button}function zJe(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute(`viewBox`)?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function BJe(){return this.__zoom||f5}function VJe(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function HJe(){return navigator.maxTouchPoints||`ontouchstart`in this}function UJe(e,t,n){var r=e.invertX(t[0][0])-n[0][0],i=e.invertX(t[1][0])-n[1][0],a=e.invertY(t[0][1])-n[0][1],o=e.invertY(t[1][1])-n[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function WJe(){var e=RJe,t=zJe,n=UJe,r=VJe,i=HJe,a=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],s=250,c=U8,l=C6(`start`,`zoom`,`end`),u,d,f,p=500,m=150,h=0,g=10;function _(e){e.property(`__zoom`,BJe).on(`wheel.zoom`,w,{passive:!1}).on(`mousedown.zoom`,T).on(`dblclick.zoom`,E).filter(i).on(`touchstart.zoom`,D).on(`touchmove.zoom`,O).on(`touchend.zoom touchcancel.zoom`,k).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}_.transform=function(e,t,n,r){var i=e.selection?e.selection():e;i.property(`__zoom`,BJe),e===i?i.interrupt().each(function(){S(this,arguments).event(r).start().zoom(null,typeof t==`function`?t.apply(this,arguments):t).end()}):x(e,t,n,r)},_.scaleBy=function(e,t,n,r){_.scaleTo(e,function(){return this.__zoom.k*(typeof t==`function`?t.apply(this,arguments):t)},n,r)},_.scaleTo=function(e,r,i,a){_.transform(e,function(){var e=t.apply(this,arguments),a=this.__zoom,s=i==null?b(e):typeof i==`function`?i.apply(this,arguments):i,c=a.invert(s),l=typeof r==`function`?r.apply(this,arguments):r;return n(y(v(a,l),s,c),e,o)},i,a)},_.translateBy=function(e,r,i,a){_.transform(e,function(){return n(this.__zoom.translate(typeof r==`function`?r.apply(this,arguments):r,typeof i==`function`?i.apply(this,arguments):i),t.apply(this,arguments),o)},null,a)},_.translateTo=function(e,r,i,a,s){_.transform(e,function(){var e=t.apply(this,arguments),s=this.__zoom,c=a==null?b(e):typeof a==`function`?a.apply(this,arguments):a;return n(f5.translate(c[0],c[1]).scale(s.k).translate(typeof r==`function`?-r.apply(this,arguments):-r,typeof i==`function`?-i.apply(this,arguments):-i),e,o)},a,s)};function v(e,t){return t=Math.max(a[0],Math.min(a[1],t)),t===e.k?e:new d5(t,e.x,e.y)}function y(e,t,n){var r=t[0]-n[0]*e.k,i=t[1]-n[1]*e.k;return r===e.x&&i===e.y?e:new d5(e.k,r,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function x(e,n,r,i){e.on(`start.zoom`,function(){S(this,arguments).event(i).start()}).on(`interrupt.zoom end.zoom`,function(){S(this,arguments).event(i).end()}).tween(`zoom`,function(){var e=this,a=arguments,o=S(e,a).event(i),s=t.apply(e,a),l=r==null?b(s):typeof r==`function`?r.apply(e,a):r,u=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),d=e.__zoom,f=typeof n==`function`?n.apply(e,a):n,p=c(d.invert(l).concat(u/d.k),f.invert(l).concat(u/f.k));return function(e){if(e===1)e=f;else{var t=p(e),n=u/t[2];e=new d5(n,l[0]-t[0]*n,l[1]-t[1]*n)}o.zoom(null,e)}})}function S(e,t,n){return!n&&e.__zooming||new C(e,t)}function C(e,n){this.that=e,this.args=n,this.active=0,this.sourceEvent=null,this.extent=t.apply(e,n),this.taps=0}C.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit(`start`)),this},zoom:function(e,t){return this.mouse&&e!==`mouse`&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&e!==`touch`&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&e!==`touch`&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit(`zoom`),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit(`end`)),this},emit:function(e){var t=K6(this.that).datum();l.call(e,this.that,new IJe(e,{sourceEvent:this.sourceEvent,target:_,type:e,transform:this.that.__zoom,dispatch:l}),t)}};function w(t,...i){if(!e.apply(this,arguments))return;var s=S(this,i).event(t),c=this.__zoom,l=Math.max(a[0],Math.min(a[1],c.k*2**r.apply(this,arguments))),u=q6(t);if(s.wheel)(s.mouse[0][0]!==u[0]||s.mouse[0][1]!==u[1])&&(s.mouse[1]=c.invert(s.mouse[0]=u)),clearTimeout(s.wheel);else if(c.k===l)return;else s.mouse=[u,c.invert(u)],o5(this),s.start();m5(t),s.wheel=setTimeout(d,m),s.zoom(`mouse`,n(y(v(c,l),s.mouse[0],s.mouse[1]),s.extent,o));function d(){s.wheel=null,s.end()}}function T(t,...r){if(f||!e.apply(this,arguments))return;var i=t.currentTarget,a=S(this,r,!0).event(t),s=K6(t.view).on(`mousemove.zoom`,d,!0).on(`mouseup.zoom`,p,!0),c=q6(t,i),l=t.clientX,u=t.clientY;Z6(t.view),p5(t),a.mouse=[c,this.__zoom.invert(c)],o5(this),a.start();function d(e){if(m5(e),!a.moved){var t=e.clientX-l,r=e.clientY-u;a.moved=t*t+r*r>h}a.event(e).zoom(`mouse`,n(y(a.that.__zoom,a.mouse[0]=q6(e,i),a.mouse[1]),a.extent,o))}function p(e){s.on(`mousemove.zoom mouseup.zoom`,null),Q6(e.view,a.moved),m5(e),a.event(e).end()}}function E(r,...i){if(e.apply(this,arguments)){var a=this.__zoom,c=q6(r.changedTouches?r.changedTouches[0]:r,this),l=a.invert(c),u=a.k*(r.shiftKey?.5:2),d=n(y(v(a,u),c,l),t.apply(this,i),o);m5(r),s>0?K6(this).transition().duration(s).call(x,d,c,r):K6(this).call(_.transform,d,c,r)}}function D(t,...n){if(e.apply(this,arguments)){var r=t.touches,i=r.length,a=S(this,n,t.changedTouches.length===i).event(t),o,s,c,l;for(p5(t),s=0;s<i;++s)c=r[s],l=q6(c,this),l=[l,this.__zoom.invert(l),c.identifier],a.touch0?!a.touch1&&a.touch0[2]!==l[2]&&(a.touch1=l,a.taps=0):(a.touch0=l,o=!0,a.taps=1+!!u);u&&=clearTimeout(u),o&&(a.taps<2&&(d=l[0],u=setTimeout(function(){u=null},p)),o5(this),a.start())}}function O(e,...t){if(this.__zooming){var r=S(this,t).event(e),i=e.changedTouches,a=i.length,s,c,l,u;for(m5(e),s=0;s<a;++s)c=i[s],l=q6(c,this),r.touch0&&r.touch0[2]===c.identifier?r.touch0[0]=l:r.touch1&&r.touch1[2]===c.identifier&&(r.touch1[0]=l);if(c=r.that.__zoom,r.touch1){var d=r.touch0[0],f=r.touch0[1],p=r.touch1[0],m=r.touch1[1],h=(h=p[0]-d[0])*h+(h=p[1]-d[1])*h,g=(g=m[0]-f[0])*g+(g=m[1]-f[1])*g;c=v(c,Math.sqrt(h/g)),l=[(d[0]+p[0])/2,(d[1]+p[1])/2],u=[(f[0]+m[0])/2,(f[1]+m[1])/2]}else if(r.touch0)l=r.touch0[0],u=r.touch0[1];else return;r.zoom(`touch`,n(y(c,l,u),r.extent,o))}}function k(e,...t){if(this.__zooming){var n=S(this,t).event(e),r=e.changedTouches,i=r.length,a,o;for(p5(e),f&&clearTimeout(f),f=setTimeout(function(){f=null},p),a=0;a<i;++a)o=r[a],n.touch0&&n.touch0[2]===o.identifier?delete n.touch0:n.touch1&&n.touch1[2]===o.identifier&&delete n.touch1;if(n.touch1&&!n.touch0&&(n.touch0=n.touch1,delete n.touch1),n.touch0)n.touch0[1]=this.__zoom.invert(n.touch0[0]);else if(n.end(),n.taps===2&&(o=q6(o,this),Math.hypot(d[0]-o[0],d[1]-o[1])<g)){var s=K6(this).on(`dblclick.zoom`);s&&s.apply(this,arguments)}}}return _.wheelDelta=function(e){return arguments.length?(r=typeof e==`function`?e:u5(+e),_):r},_.filter=function(t){return arguments.length?(e=typeof t==`function`?t:u5(!!t),_):e},_.touchable=function(e){return arguments.length?(i=typeof e==`function`?e:u5(!!e),_):i},_.extent=function(e){return arguments.length?(t=typeof e==`function`?e:u5([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),_):t},_.scaleExtent=function(e){return arguments.length?(a[0]=+e[0],a[1]=+e[1],_):[a[0],a[1]]},_.translateExtent=function(e){return arguments.length?(o[0][0]=+e[0][0],o[1][0]=+e[1][0],o[0][1]=+e[0][1],o[1][1]=+e[1][1],_):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]},_.constrain=function(e){return arguments.length?(n=e,_):n},_.duration=function(e){return arguments.length?(s=+e,_):s},_.interpolate=function(e){return arguments.length?(c=e,_):c},_.on=function(){var e=l.on.apply(l,arguments);return e===l?_:e},_.clickDistance=function(e){return arguments.length?(h=(e=+e)*e,_):Math.sqrt(h)},_.tapDistance=function(e){return arguments.length?(g=+e,_):g},_}var h5={error001:()=>`[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001`,error002:()=>`It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.`,error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>`The React Flow parent container needs a width and a height to render the graph.`,error005:()=>`Only child nodes can use a parent extent.`,error006:()=>`Can't create edge. An edge needs a source and a target.`,error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${e} handle id: "${e===`source`?n:r}", edge id: ${t}.`,error010:()=>`Handle: No node id found. Make sure to only use a Handle inside a custom Node.`,error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e=`react`)=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>`useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.`,error015:()=>`It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.`},g5=[[-1/0,-1/0],[1/0,1/0]],GJe=[`Enter`,` `,`Escape`],KJe={"node.a11yDescription.default":`Press enter or space to select a node. Press delete to remove it and escape to cancel.`,"node.a11yDescription.keyboardDisabled":`Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.`,"node.a11yDescription.ariaLiveMessage":({direction:e,x:t,y:n})=>`Moved selected node ${e}. New position, x: ${t}, y: ${n}`,"edge.a11yDescription.default":`Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.`,"controls.ariaLabel":`Control Panel`,"controls.zoomIn.ariaLabel":`Zoom In`,"controls.zoomOut.ariaLabel":`Zoom Out`,"controls.fitView.ariaLabel":`Fit View`,"controls.interactive.ariaLabel":`Toggle Interactivity`,"minimap.ariaLabel":`Mini Map`,"handle.ariaLabel":`Handle`},_5;(function(e){e.Strict=`strict`,e.Loose=`loose`})(_5||={});var v5;(function(e){e.Free=`free`,e.Vertical=`vertical`,e.Horizontal=`horizontal`})(v5||={});var y5;(function(e){e.Partial=`partial`,e.Full=`full`})(y5||={});var qJe={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null},b5;(function(e){e.Bezier=`default`,e.Straight=`straight`,e.Step=`step`,e.SmoothStep=`smoothstep`,e.SimpleBezier=`simplebezier`})(b5||={});var x5;(function(e){e.Arrow=`arrow`,e.ArrowClosed=`arrowclosed`})(x5||={});var S5;(function(e){e.Left=`left`,e.Top=`top`,e.Right=`right`,e.Bottom=`bottom`})(S5||={});var JJe={[S5.Left]:S5.Right,[S5.Right]:S5.Left,[S5.Top]:S5.Bottom,[S5.Bottom]:S5.Top};function YJe(e){return e===null?null:e?`valid`:`invalid`}var XJe=e=>`id`in e&&`source`in e&&`target`in e,ZJe=e=>`id`in e&&`position`in e&&!(`source`in e)&&!(`target`in e),C5=e=>`id`in e&&`internals`in e&&!(`source`in e)&&!(`target`in e),w5=(e,t=[0,0])=>{let{width:n,height:r}=U5(e),i=e.origin??t,a=n*i[0],o=r*i[1];return{x:e.position.x-a,y:e.position.y-o}},QJe=(e,t={nodeOrigin:[0,0]})=>e.length===0?{x:0,y:0,width:0,height:0}:j5(e.reduce((e,n)=>{let r=typeof n==`string`,i=!t.nodeLookup&&!r?n:void 0;return t.nodeLookup&&(i=r?t.nodeLookup.get(n):C5(n)?n:t.nodeLookup.get(n.id)),k5(e,i?N5(i,t.nodeOrigin):{x:0,y:0,x2:0,y2:0})},{x:1/0,y:1/0,x2:-1/0,y2:-1/0})),T5=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},r=!1;return e.forEach(e=>{(t.filter===void 0||t.filter(e))&&(n=k5(n,N5(e)),r=!0)}),r?j5(n):{x:0,y:0,width:0,height:0}},E5=(e,t,[n,r,i]=[0,0,1],a=!1,o=!1)=>{let s={...L5(t,[n,r,i]),width:t.width/i,height:t.height/i},c=[];for(let t of e.values()){let{measured:e,selectable:n=!0,hidden:r=!1}=t;if(o&&!n||r)continue;let i=e.width??t.width??t.initialWidth??null,l=e.height??t.height??t.initialHeight??null,u=P5(s,M5(t)),d=(i??0)*(l??0),f=a&&u>0;(!t.internals.handleBounds||f||u>=d||t.dragging)&&c.push(t)}return c},$Je=(e,t)=>{let n=new Set;return e.forEach(e=>{n.add(e.id)}),t.filter(e=>n.has(e.source)||n.has(e.target))};function eYe(e,t){let n=new Map,r=t?.nodes?new Set(t.nodes.map(e=>e.id)):null;return e.forEach(e=>{e.measured.width&&e.measured.height&&(t?.includeHiddenNodes||!e.hidden)&&(!r||r.has(e.id))&&n.set(e.id,e)}),n}async function tYe({nodes:e,width:t,height:n,panZoom:r,minZoom:i,maxZoom:a},o){if(e.size===0)return Promise.resolve(!0);let s=B5(T5(eYe(e,o)),t,n,o?.minZoom??i,o?.maxZoom??a,o?.padding??.1);return await r.setViewport(s,{duration:o?.duration,ease:o?.ease,interpolate:o?.interpolate}),Promise.resolve(!0)}function nYe({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:i,onError:a}){let o=n.get(e),s=o.parentId?n.get(o.parentId):void 0,{x:c,y:l}=s?s.internals.positionAbsolute:{x:0,y:0},u=o.origin??r,d=o.extent||i;if(o.extent===`parent`&&!o.expandParent){if(!s)a?.(`005`,h5.error005());else{let e=s.measured.width,t=s.measured.height;e&&t&&(d=[[c,l],[c+e,l+t]])}}else s&&H5(o.extent)&&(d=[[o.extent[0][0]+c,o.extent[0][1]+l],[o.extent[1][0]+c,o.extent[1][1]+l]]);let f=H5(d)?O5(t,d,o.measured):t;return(o.measured.width===void 0||o.measured.height===void 0)&&a?.(`015`,h5.error015()),{position:{x:f.x-c+(o.measured.width??0)*u[0],y:f.y-l+(o.measured.height??0)*u[1]},positionAbsolute:f}}async function rYe({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:i}){let a=new Set(e.map(e=>e.id)),o=[];for(let e of n){if(e.deletable===!1)continue;let t=a.has(e.id),n=!t&&e.parentId&&o.find(t=>t.id===e.parentId);(t||n)&&o.push(e)}let s=new Set(t.map(e=>e.id)),c=r.filter(e=>e.deletable!==!1),l=$Je(o,c);for(let e of c)s.has(e.id)&&!l.find(t=>t.id===e.id)&&l.push(e);if(!i)return{edges:l,nodes:o};let u=await i({nodes:o,edges:l});return typeof u==`boolean`?u?{edges:l,nodes:o}:{edges:[],nodes:[]}:u}var D5=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),O5=(e={x:0,y:0},t,n)=>({x:D5(e.x,t[0][0],t[1][0]-(n?.width??0)),y:D5(e.y,t[0][1],t[1][1]-(n?.height??0))});function iYe(e,t,n){let{width:r,height:i}=U5(n),{x:a,y:o}=n.internals.positionAbsolute;return O5(e,[[a,o],[a+r,o+i]],t)}var aYe=(e,t,n)=>e<t?D5(Math.abs(e-t),1,t)/t:e>n?-D5(Math.abs(e-n),1,t)/t:0,oYe=(e,t,n=15,r=40)=>[aYe(e.x,r,t.width-r)*n,aYe(e.y,r,t.height-r)*n],k5=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),A5=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),j5=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),M5=(e,t=[0,0])=>{let{x:n,y:r}=C5(e)?e.internals.positionAbsolute:w5(e,t);return{x:n,y:r,width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}},N5=(e,t=[0,0])=>{let{x:n,y:r}=C5(e)?e.internals.positionAbsolute:w5(e,t);return{x:n,y:r,x2:n+(e.measured?.width??e.width??e.initialWidth??0),y2:r+(e.measured?.height??e.height??e.initialHeight??0)}},sYe=(e,t)=>j5(k5(A5(e),A5(t))),P5=(e,t)=>{let n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*r)},cYe=e=>F5(e.width)&&F5(e.height)&&F5(e.x)&&F5(e.y),F5=e=>!isNaN(e)&&isFinite(e),lYe=(e,t)=>{},I5=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),L5=({x:e,y:t},[n,r,i],a=!1,o=[1,1])=>{let s={x:(e-n)/i,y:(t-r)/i};return a?I5(s,o):s},R5=({x:e,y:t},[n,r,i])=>({x:e*i+n,y:t*i+r});function z5(e,t){if(typeof e==`number`)return Math.floor((t-t/(1+e))*.5);if(typeof e==`string`&&e.endsWith(`px`)){let t=parseFloat(e);if(!Number.isNaN(t))return Math.floor(t)}if(typeof e==`string`&&e.endsWith(`%`)){let n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(t*n*.01)}return console.error(`[React Flow] The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function uYe(e,t,n){if(typeof e==`string`||typeof e==`number`){let r=z5(e,n),i=z5(e,t);return{top:r,right:i,bottom:r,left:i,x:i*2,y:r*2}}if(typeof e==`object`){let r=z5(e.top??e.y??0,n),i=z5(e.bottom??e.y??0,n),a=z5(e.left??e.x??0,t),o=z5(e.right??e.x??0,t);return{top:r,right:o,bottom:i,left:a,x:a+o,y:r+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function dYe(e,t,n,r,i,a){let{x:o,y:s}=R5(e,[t,n,r]),{x:c,y:l}=R5({x:e.x+e.width,y:e.y+e.height},[t,n,r]),u=i-c,d=a-l;return{left:Math.floor(o),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(d)}}var B5=(e,t,n,r,i,a)=>{let o=uYe(a,t,n),s=(t-o.x)/e.width,c=(n-o.y)/e.height,l=D5(Math.min(s,c),r,i),u=e.x+e.width/2,d=e.y+e.height/2,f=t/2-u*l,p=n/2-d*l,m=dYe(e,f,p,l,t,n),h={left:Math.min(m.left-o.left,0),top:Math.min(m.top-o.top,0),right:Math.min(m.right-o.right,0),bottom:Math.min(m.bottom-o.bottom,0)};return{x:f-h.left+h.right,y:p-h.top+h.bottom,zoom:l}},V5=()=>typeof navigator<`u`&&navigator?.userAgent?.indexOf(`Mac`)>=0;function H5(e){return e!=null&&e!==`parent`}function U5(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function fYe(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function pYe(e,t={width:0,height:0},n,r,i){let a={...e},o=r.get(n);if(o){let e=o.origin||i;a.x+=o.internals.positionAbsolute.x-(t.width??0)*e[0],a.y+=o.internals.positionAbsolute.y-(t.height??0)*e[1]}return a}function mYe(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function hYe(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}function gYe(e){return{...KJe,...e||{}}}function W5(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r,containerBounds:i}){let{x:a,y:o}=K5(e),s=L5({x:a-(i?.left??0),y:o-(i?.top??0)},r),{x:c,y:l}=n?I5(s,t):s;return{xSnapped:c,ySnapped:l,...s}}var G5=e=>({width:e.offsetWidth,height:e.offsetHeight}),_Ye=e=>e?.getRootNode?.()||window?.document,vYe=[`INPUT`,`SELECT`,`TEXTAREA`];function yYe(e){let t=e.composedPath?.()?.[0]||e.target;return t?.nodeType===1?vYe.includes(t.nodeName)||t.hasAttribute(`contenteditable`)||!!t.closest(`.nokey`):!1}var bYe=e=>`clientX`in e,K5=(e,t)=>{let n=bYe(e),r=n?e.clientX:e.touches?.[0].clientX,i=n?e.clientY:e.touches?.[0].clientY;return{x:r-(t?.left??0),y:i-(t?.top??0)}},xYe=(e,t,n,r,i)=>{let a=t.querySelectorAll(`.${e}`);return!a||!a.length?null:Array.from(a).map(t=>{let a=t.getBoundingClientRect();return{id:t.getAttribute(`data-handleid`),type:e,nodeId:i,position:t.getAttribute(`data-handlepos`),x:(a.left-n.left)/r,y:(a.top-n.top)/r,...G5(t)}})};function SYe({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:o,targetControlY:s}){let c=e*.125+i*.375+o*.375+n*.125,l=t*.125+a*.375+s*.375+r*.125;return[c,l,Math.abs(c-e),Math.abs(l-t)]}function q5(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function CYe({pos:e,x1:t,y1:n,x2:r,y2:i,c:a}){switch(e){case S5.Left:return[t-q5(t-r,a),n];case S5.Right:return[t+q5(r-t,a),n];case S5.Top:return[t,n-q5(n-i,a)];case S5.Bottom:return[t,n+q5(i-n,a)]}}function wYe({sourceX:e,sourceY:t,sourcePosition:n=S5.Bottom,targetX:r,targetY:i,targetPosition:a=S5.Top,curvature:o=.25}){let[s,c]=CYe({pos:n,x1:e,y1:t,x2:r,y2:i,c:o}),[l,u]=CYe({pos:a,x1:r,y1:i,x2:e,y2:t,c:o}),[d,f,p,m]=SYe({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:s,sourceControlY:c,targetControlX:l,targetControlY:u});return[`M${e},${t} C${s},${c} ${l},${u} ${r},${i}`,d,f,p,m]}function TYe({sourceX:e,sourceY:t,targetX:n,targetY:r}){let i=Math.abs(n-e)/2,a=n<e?n+i:n-i,o=Math.abs(r-t)/2;return[a,r<t?r+o:r-o,i,o]}function EYe({sourceNode:e,targetNode:t,selected:n=!1,zIndex:r=0,elevateOnSelect:i=!1,zIndexMode:a=`basic`}){return a===`manual`?r:(i&&n?r+1e3:r)+Math.max(e.parentId||i&&e.selected?e.internals.z:0,t.parentId||i&&t.selected?t.internals.z:0)}function DYe({sourceNode:e,targetNode:t,width:n,height:r,transform:i}){let a=k5(N5(e),N5(t));return a.x===a.x2&&(a.x2+=1),a.y===a.y2&&(a.y2+=1),P5({x:-i[0]/i[2],y:-i[1]/i[2],width:n/i[2],height:r/i[2]},j5(a))>0}var OYe=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||``}-${n}${r||``}`,kYe=(e,t)=>t.some(t=>t.source===e.source&&t.target===e.target&&(t.sourceHandle===e.sourceHandle||!t.sourceHandle&&!e.sourceHandle)&&(t.targetHandle===e.targetHandle||!t.targetHandle&&!e.targetHandle)),AYe=(e,t,n={})=>{if(!e.source||!e.target)return h5.error006(),t;let r=n.getEdgeId||OYe,i;return i=XJe(e)?{...e}:{...e,id:r(e)},kYe(i,t)?t:(i.sourceHandle===null&&delete i.sourceHandle,i.targetHandle===null&&delete i.targetHandle,t.concat(i))};function jYe({sourceX:e,sourceY:t,targetX:n,targetY:r}){let[i,a,o,s]=TYe({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,i,a,o,s]}var MYe={[S5.Left]:{x:-1,y:0},[S5.Right]:{x:1,y:0},[S5.Top]:{x:0,y:-1},[S5.Bottom]:{x:0,y:1}},NYe=({source:e,sourcePosition:t=S5.Bottom,target:n})=>t===S5.Left||t===S5.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},PYe=(e,t)=>Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2);function FYe({source:e,sourcePosition:t=S5.Bottom,target:n,targetPosition:r=S5.Top,center:i,offset:a,stepPosition:o}){let s=MYe[t],c=MYe[r],l={x:e.x+s.x*a,y:e.y+s.y*a},u={x:n.x+c.x*a,y:n.y+c.y*a},d=NYe({source:l,sourcePosition:t,target:u}),f=d.x===0?`y`:`x`,p=d[f],m=[],h,g,_={x:0,y:0},v={x:0,y:0},[,,y,b]=TYe({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){f===`x`?(h=i.x??l.x+(u.x-l.x)*o,g=i.y??(l.y+u.y)/2):(h=i.x??(l.x+u.x)/2,g=i.y??l.y+(u.y-l.y)*o);let e=[{x:h,y:l.y},{x:h,y:u.y}],t=[{x:l.x,y:g},{x:u.x,y:g}];m=s[f]===p?f===`x`?e:t:f===`x`?t:e}else{let i=[{x:l.x,y:u.y}],o=[{x:u.x,y:l.y}];if(m=f===`x`?s.x===p?o:i:s.y===p?i:o,t===r){let t=Math.abs(e[f]-n[f]);if(t<=a){let r=Math.min(a-1,a-t);s[f]===p?_[f]=(l[f]>e[f]?-1:1)*r:v[f]=(u[f]>n[f]?-1:1)*r}}if(t!==r){let e=f===`x`?`y`:`x`,t=s[f]===c[e],n=l[e]>u[e],r=l[e]<u[e];(s[f]===1&&(!t&&n||t&&r)||s[f]!==1&&(!t&&r||t&&n))&&(m=f===`x`?i:o)}let d={x:l.x+_.x,y:l.y+_.y},y={x:u.x+v.x,y:u.y+v.y};Math.max(Math.abs(d.x-m[0].x),Math.abs(y.x-m[0].x))>=Math.max(Math.abs(d.y-m[0].y),Math.abs(y.y-m[0].y))?(h=(d.x+y.x)/2,g=m[0].y):(h=m[0].x,g=(d.y+y.y)/2)}let x={x:l.x+_.x,y:l.y+_.y},S={x:u.x+v.x,y:u.y+v.y};return[[e,...x.x!==m[0].x||x.y!==m[0].y?[x]:[],...m,...S.x!==m[m.length-1].x||S.y!==m[m.length-1].y?[S]:[],n],h,g,y,b]}function IYe(e,t,n,r){let i=Math.min(PYe(e,t)/2,PYe(t,n)/2,r),{x:a,y:o}=t;if(e.x===a&&a===n.x||e.y===o&&o===n.y)return`L${a} ${o}`;if(e.y===o){let t=e.x<n.x?-1:1,r=e.y<n.y?1:-1;return`L ${a+i*t},${o}Q ${a},${o} ${a},${o+i*r}`}let s=e.x<n.x?1:-1;return`L ${a},${o+i*(e.y<n.y?-1:1)}Q ${a},${o} ${a+i*s},${o}`}function J5({sourceX:e,sourceY:t,sourcePosition:n=S5.Bottom,targetX:r,targetY:i,targetPosition:a=S5.Top,borderRadius:o=5,centerX:s,centerY:c,offset:l=20,stepPosition:u=.5}){let[d,f,p,m,h]=FYe({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:i},targetPosition:a,center:{x:s,y:c},offset:l,stepPosition:u}),g=`M${d[0].x} ${d[0].y}`;for(let e=1;e<d.length-1;e++)g+=IYe(d[e-1],d[e],d[e+1],o);return g+=`L${d[d.length-1].x} ${d[d.length-1].y}`,[g,f,p,m,h]}function LYe(e){return e&&!!(e.internals.handleBounds||e.handles?.length)&&!!(e.measured.width||e.width||e.initialWidth)}function RYe(e){let{sourceNode:t,targetNode:n}=e;if(!LYe(t)||!LYe(n))return null;let r=t.internals.handleBounds||zYe(t.handles),i=n.internals.handleBounds||zYe(n.handles),a=BYe(r?.source??[],e.sourceHandle),o=BYe(e.connectionMode===_5.Strict?i?.target??[]:(i?.target??[]).concat(i?.source??[]),e.targetHandle);if(!a||!o)return e.onError?.(`008`,h5.error008(a?`target`:`source`,{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;let s=a?.position||S5.Bottom,c=o?.position||S5.Top,l=Y5(t,a,s),u=Y5(n,o,c);return{sourceX:l.x,sourceY:l.y,targetX:u.x,targetY:u.y,sourcePosition:s,targetPosition:c}}function zYe(e){if(!e)return null;let t=[],n=[];for(let r of e)r.width=r.width??1,r.height=r.height??1,r.type===`source`?t.push(r):r.type===`target`&&n.push(r);return{source:t,target:n}}function Y5(e,t,n=S5.Left,r=!1){let i=(t?.x??0)+e.internals.positionAbsolute.x,a=(t?.y??0)+e.internals.positionAbsolute.y,{width:o,height:s}=t??U5(e);if(r)return{x:i+o/2,y:a+s/2};switch(t?.position??n){case S5.Top:return{x:i+o/2,y:a};case S5.Right:return{x:i+o,y:a+s/2};case S5.Bottom:return{x:i+o/2,y:a+s};case S5.Left:return{x:i,y:a+s/2}}}function BYe(e,t){return e&&(t?e.find(e=>e.id===t):e[0])||null}function X5(e,t){return e?typeof e==`string`?e:`${t?`${t}__`:``}${Object.keys(e).sort().map(t=>`${t}=${e[t]}`).join(`&`)}`:``}function VYe(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:i}){let a=new Set;return e.reduce((e,o)=>([o.markerStart||r,o.markerEnd||i].forEach(r=>{if(r&&typeof r==`object`){let i=X5(r,t);a.has(i)||(e.push({id:i,color:r.color||n,...r}),a.add(i))}}),e),[]).sort((e,t)=>e.id.localeCompare(t.id))}var HYe=1e3,UYe=10,Z5={nodeOrigin:[0,0],nodeExtent:g5,elevateNodesOnSelect:!0,zIndexMode:`basic`,defaults:{}},WYe={...Z5,checkEquality:!0};function Q5(e,t){let n={...e};for(let e in t)t[e]!==void 0&&(n[e]=t[e]);return n}function GYe(e,t,n){let r=Q5(Z5,n);for(let n of e.values())if(n.parentId)t7(n,e,t,r);else{let e=O5(w5(n,r.nodeOrigin),H5(n.extent)?n.extent:r.nodeExtent,U5(n));n.internals.positionAbsolute=e}}function KYe(e,t){if(!e.handles)return e.measured?t?.internals.handleBounds:void 0;let n=[],r=[];for(let t of e.handles){let i={id:t.id,width:t.width??1,height:t.height??1,nodeId:e.id,x:t.x,y:t.y,position:t.position,type:t.type};t.type===`source`?n.push(i):t.type===`target`&&r.push(i)}return{source:n,target:r}}function $5(e){return e===`manual`}function e7(e,t,n,r={}){let i=Q5(WYe,r),a={i:0},o=new Map(t),s=i?.elevateNodesOnSelect&&!$5(i.zIndexMode)?HYe:0,c=e.length>0,l=!1;t.clear(),n.clear();for(let u of e){let e=o.get(u.id);if(i.checkEquality&&u===e?.internals.userNode)t.set(u.id,e);else{let n=O5(w5(u,i.nodeOrigin),H5(u.extent)?u.extent:i.nodeExtent,U5(u));e={...i.defaults,...u,measured:{width:u.measured?.width,height:u.measured?.height},internals:{positionAbsolute:n,handleBounds:KYe(u,e),z:JYe(u,s,i.zIndexMode),userNode:u}},t.set(u.id,e)}(e.measured===void 0||e.measured.width===void 0||e.measured.height===void 0)&&!e.hidden&&(c=!1),u.parentId&&t7(e,t,n,r,a),l||=u.selected??!1}return{nodesInitialized:c,hasSelectedNodes:l}}function qYe(e,t){if(!e.parentId)return;let n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function t7(e,t,n,r,i){let{elevateNodesOnSelect:a,nodeOrigin:o,nodeExtent:s,zIndexMode:c}=Q5(Z5,r),l=e.parentId,u=t.get(l);if(!u){console.warn(`Parent node ${l} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}qYe(e,n),i&&!u.parentId&&u.internals.rootParentIndex===void 0&&c===`auto`&&(u.internals.rootParentIndex=++i.i,u.internals.z=u.internals.z+i.i*UYe),i&&u.internals.rootParentIndex!==void 0&&(i.i=u.internals.rootParentIndex);let{x:d,y:f,z:p}=YYe(e,u,o,s,a&&!$5(c)?HYe:0,c),{positionAbsolute:m}=e.internals,h=d!==m.x||f!==m.y;(h||p!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:h?{x:d,y:f}:m,z:p}})}function JYe(e,t,n){let r=F5(e.zIndex)?e.zIndex:0;return $5(n)?r:r+(e.selected?t:0)}function YYe(e,t,n,r,i,a){let{x:o,y:s}=t.internals.positionAbsolute,c=U5(e),l=w5(e,n),u=H5(e.extent)?O5(l,e.extent,c):l,d=O5({x:o+u.x,y:s+u.y},r,c);e.extent===`parent`&&(d=iYe(d,c,t));let f=JYe(e,i,a),p=t.internals.z??0;return{x:d.x,y:d.y,z:p>=f?p+1:f}}function n7(e,t,n,r=[0,0]){let i=[],a=new Map;for(let n of e){let e=t.get(n.parentId);if(!e)continue;let r=sYe(a.get(n.parentId)?.expandedRect??M5(e),n.rect);a.set(n.parentId,{expandedRect:r,parent:e})}return a.size>0&&a.forEach(({expandedRect:t,parent:a},o)=>{let s=a.internals.positionAbsolute,c=U5(a),l=a.origin??r,u=t.x<s.x?Math.round(Math.abs(s.x-t.x)):0,d=t.y<s.y?Math.round(Math.abs(s.y-t.y)):0,f=Math.max(c.width,Math.round(t.width)),p=Math.max(c.height,Math.round(t.height)),m=(f-c.width)*l[0],h=(p-c.height)*l[1];(u>0||d>0||m||h)&&(i.push({id:o,type:`position`,position:{x:a.position.x-u+m,y:a.position.y-d+h}}),n.get(o)?.forEach(t=>{e.some(e=>e.id===t.id)||i.push({id:t.id,type:`position`,position:{x:t.position.x+u,y:t.position.y+d}})})),(c.width<t.width||c.height<t.height||u||d)&&i.push({id:o,type:`dimensions`,setAttributes:!0,dimensions:{width:f+(u?l[0]*u-m:0),height:p+(d?l[1]*d-h:0)}})}),i}function XYe(e,t,n,r,i,a,o){let s=r?.querySelector(`.xyflow__viewport`),c=!1;if(!s)return{changes:[],updatedInternals:c};let l=[],u=window.getComputedStyle(s),{m22:d}=new window.DOMMatrixReadOnly(u.transform),f=[];for(let r of e.values()){let e=t.get(r.id);if(!e)continue;if(e.hidden){t.set(e.id,{...e,internals:{...e.internals,handleBounds:void 0}}),c=!0;continue}let s=G5(r.nodeElement),u=e.measured.width!==s.width||e.measured.height!==s.height;if(s.width&&s.height&&(u||!e.internals.handleBounds||r.force)){let p=r.nodeElement.getBoundingClientRect(),m=H5(e.extent)?e.extent:a,{positionAbsolute:h}=e.internals;e.parentId&&e.extent===`parent`?h=iYe(h,s,t.get(e.parentId)):m&&(h=O5(h,m,s));let g={...e,measured:s,internals:{...e.internals,positionAbsolute:h,handleBounds:{source:xYe(`source`,r.nodeElement,p,d,e.id),target:xYe(`target`,r.nodeElement,p,d,e.id)}}};t.set(e.id,g),e.parentId&&t7(g,t,n,{nodeOrigin:i,zIndexMode:o}),c=!0,u&&(l.push({id:e.id,type:`dimensions`,dimensions:s}),e.expandParent&&e.parentId&&f.push({id:e.id,parentId:e.parentId,rect:M5(g,i)}))}}if(f.length>0){let e=n7(f,t,n,i);l.push(...e)}return{changes:l,updatedInternals:c}}async function ZYe({delta:e,panZoom:t,transform:n,translateExtent:r,width:i,height:a}){if(!t||!e.x&&!e.y)return Promise.resolve(!1);let o=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[i,a]],r),s=!!o&&(o.x!==n[0]||o.y!==n[1]||o.k!==n[2]);return Promise.resolve(s)}function QYe(e,t,n,r,i,a){let o=i,s=r.get(o)||new Map;r.set(o,s.set(n,t)),o=`${i}-${e}`;let c=r.get(o)||new Map;if(r.set(o,c.set(n,t)),a){o=`${i}-${e}-${a}`;let s=r.get(o)||new Map;r.set(o,s.set(n,t))}}function $Ye(e,t,n){e.clear(),t.clear();for(let r of n){let{source:n,target:i,sourceHandle:a=null,targetHandle:o=null}=r,s={edgeId:r.id,source:n,target:i,sourceHandle:a,targetHandle:o},c=`${n}-${a}--${i}-${o}`;QYe(`source`,s,`${i}-${o}--${n}-${a}`,e,n,a),QYe(`target`,s,c,e,i,o),t.set(r.id,r)}}function eXe(e,t){if(!e.parentId)return!1;let n=t.get(e.parentId);return n?n.selected?!0:eXe(n,t):!1}function tXe(e,t,n){let r=e;do{if(r?.matches?.(t))return!0;if(r===n)return!1;r=r?.parentElement}while(r);return!1}function nXe(e,t,n,r){let i=new Map;for(let[a,o]of e)if((o.selected||o.id===r)&&(!o.parentId||!eXe(o,e))&&(o.draggable||t&&o.draggable===void 0)){let t=e.get(a);t&&i.set(a,{id:a,position:t.position||{x:0,y:0},distance:{x:n.x-t.internals.positionAbsolute.x,y:n.y-t.internals.positionAbsolute.y},extent:t.extent,parentId:t.parentId,origin:t.origin,expandParent:t.expandParent,internals:{positionAbsolute:t.internals.positionAbsolute||{x:0,y:0}},measured:{width:t.measured.width??0,height:t.measured.height??0}})}return i}function r7({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){let i=[];for(let[e,a]of t){let t=n.get(e)?.internals.userNode;t&&i.push({...t,position:a.position,dragging:r})}if(!e)return[i[0],i];let a=n.get(e)?.internals.userNode;return[a?{...a,position:t.get(e)?.position||a.position,dragging:r}:i[0],i]}function rXe({dragItems:e,snapGrid:t,x:n,y:r}){let i=e.values().next().value;if(!i)return null;let a={x:n-i.distance.x,y:r-i.distance.y},o=I5(a,t);return{x:o.x-a.x,y:o.y-a.y}}function iXe({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:i}){let a={x:null,y:null},o=0,s=new Map,c=!1,l={x:0,y:0},u=null,d=!1,f=null,p=!1,m=!1,h=null;function g({noDragClassName:g,handleSelector:_,domNode:v,isSelectable:y,nodeId:b,nodeClickDistance:x=0}){f=K6(v);function S({x:e,y:n}){let{nodeLookup:i,nodeExtent:o,snapGrid:c,snapToGrid:l,nodeOrigin:u,onNodeDrag:d,onSelectionDrag:f,onError:p,updateNodePositions:g}=t();a={x:e,y:n};let _=!1,v=s.size>1,y=v&&o?A5(T5(s)):null,x=v&&l?rXe({dragItems:s,snapGrid:c,x:e,y:n}):null;for(let[t,r]of s){if(!i.has(t))continue;let a={x:e-r.distance.x,y:n-r.distance.y};l&&(a=x?{x:Math.round(a.x+x.x),y:Math.round(a.y+x.y)}:I5(a,c));let s=null;if(v&&o&&!r.extent&&y){let{positionAbsolute:e}=r.internals,t=e.x-y.x+o[0][0],n=e.x+r.measured.width-y.x2+o[1][0],i=e.y-y.y+o[0][1],a=e.y+r.measured.height-y.y2+o[1][1];s=[[t,i],[n,a]]}let{position:d,positionAbsolute:f}=nYe({nodeId:t,nextPosition:a,nodeLookup:i,nodeExtent:s||o,nodeOrigin:u,onError:p});_=_||r.position.x!==d.x||r.position.y!==d.y,r.position=d,r.internals.positionAbsolute=f}if(m||=_,_&&(g(s,!0),h&&(r||d||!b&&f))){let[e,t]=r7({nodeId:b,dragItems:s,nodeLookup:i});r?.(h,s,e,t),d?.(h,e,t),b||f?.(h,t)}}async function C(){if(!u)return;let{transform:e,panBy:n,autoPanSpeed:r,autoPanOnNodeDrag:i}=t();if(!i){c=!1,cancelAnimationFrame(o);return}let[s,d]=oYe(l,u,r);(s!==0||d!==0)&&(a.x=(a.x??0)-s/e[2],a.y=(a.y??0)-d/e[2],await n({x:s,y:d})&&S(a)),o=requestAnimationFrame(C)}function w(r){let{nodeLookup:i,multiSelectionActive:o,nodesDraggable:c,transform:l,snapGrid:f,snapToGrid:p,selectNodesOnDrag:m,onNodeDragStart:h,onSelectionDragStart:g,unselectNodesAndEdges:_}=t();d=!0,(!m||!y)&&!o&&b&&(i.get(b)?.selected||_()),y&&m&&b&&e?.(b);let v=W5(r.sourceEvent,{transform:l,snapGrid:f,snapToGrid:p,containerBounds:u});if(a=v,s=nXe(i,c,v,b),s.size>0&&(n||h||!b&&g)){let[e,t]=r7({nodeId:b,dragItems:s,nodeLookup:i});n?.(r.sourceEvent,s,e,t),h?.(r.sourceEvent,e,t),b||g?.(r.sourceEvent,t)}}let T=t8().clickDistance(x).on(`start`,e=>{let{domNode:n,nodeDragThreshold:r,transform:i,snapGrid:o,snapToGrid:s}=t();u=n?.getBoundingClientRect()||null,p=!1,m=!1,h=e.sourceEvent,r===0&&w(e),a=W5(e.sourceEvent,{transform:i,snapGrid:o,snapToGrid:s,containerBounds:u}),l=K5(e.sourceEvent,u)}).on(`drag`,e=>{let{autoPanOnNodeDrag:n,transform:r,snapGrid:i,snapToGrid:o,nodeDragThreshold:f,nodeLookup:m}=t(),g=W5(e.sourceEvent,{transform:r,snapGrid:i,snapToGrid:o,containerBounds:u});if(h=e.sourceEvent,(e.sourceEvent.type===`touchmove`&&e.sourceEvent.touches.length>1||b&&!m.has(b))&&(p=!0),!p){if(!c&&n&&d&&(c=!0,C()),!d){let t=K5(e.sourceEvent,u),n=t.x-l.x,r=t.y-l.y;Math.sqrt(n*n+r*r)>f&&w(e)}(a.x!==g.xSnapped||a.y!==g.ySnapped)&&s&&d&&(l=K5(e.sourceEvent,u),S(g))}}).on(`end`,e=>{if(!(!d||p)&&(c=!1,d=!1,cancelAnimationFrame(o),s.size>0)){let{nodeLookup:n,updateNodePositions:r,onNodeDragStop:a,onSelectionDragStop:o}=t();if(m&&=(r(s,!1),!1),i||a||!b&&o){let[t,r]=r7({nodeId:b,dragItems:s,nodeLookup:n,dragging:!1});i?.(e.sourceEvent,s,t,r),a?.(e.sourceEvent,t,r),b||o?.(e.sourceEvent,r)}}}).filter(e=>{let t=e.target;return!e.button&&(!g||!tXe(t,`.${g}`,v))&&(!_||tXe(t,_,v))});f.call(T)}function _(){f?.on(`.drag`,null)}return{update:g,destroy:_}}function aXe(e,t,n){let r=[],i={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(let e of t.values())P5(i,M5(e))>0&&r.push(e);return r}var oXe=250;function sXe(e,t,n,r){let i=[],a=1/0,o=aXe(e,n,t+oXe);for(let n of o){let o=[...n.internals.handleBounds?.source??[],...n.internals.handleBounds?.target??[]];for(let s of o){if(r.nodeId===s.nodeId&&r.type===s.type&&r.id===s.id)continue;let{x:o,y:c}=Y5(n,s,s.position,!0),l=Math.sqrt((o-e.x)**2+(c-e.y)**2);l>t||(l<a?(i=[{...s,x:o,y:c}],a=l):l===a&&i.push({...s,x:o,y:c}))}}if(!i.length)return null;if(i.length>1){let e=r.type===`source`?`target`:`source`;return i.find(t=>t.type===e)??i[0]}return i[0]}function cXe(e,t,n,r,i,a=!1){let o=r.get(e);if(!o)return null;let s=i===`strict`?o.internals.handleBounds?.[t]:[...o.internals.handleBounds?.source??[],...o.internals.handleBounds?.target??[]],c=(n?s?.find(e=>e.id===n):s?.[0])??null;return c&&a?{...c,...Y5(o,c,c.position,!0)}:c}function lXe(e,t){return e||(t?.classList.contains(`target`)?`target`:t?.classList.contains(`source`)?`source`:null)}function uXe(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}var dXe=()=>!0;function fXe(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:i,edgeUpdaterType:a,isTarget:o,domNode:s,nodeLookup:c,lib:l,autoPanOnConnect:u,flowId:d,panBy:f,cancelConnection:p,onConnectStart:m,onConnect:h,onConnectEnd:g,isValidConnection:_=dXe,onReconnectEnd:v,updateConnection:y,getTransform:b,getFromHandle:x,autoPanSpeed:S,dragThreshold:C=1,handleDomNode:w}){let T=_Ye(e.target),E=0,D,{x:O,y:k}=K5(e),A=lXe(a,w),j=s?.getBoundingClientRect(),M=!1;if(!j||!A)return;let N=cXe(i,A,r,c,t);if(!N)return;let P=K5(e,j),F=!1,I=null,L=!1,R=null;function z(){if(!u||!j)return;let[e,t]=oYe(P,j,S);f({x:e,y:t}),E=requestAnimationFrame(z)}let B={...N,nodeId:i,type:A,position:N.position},ee=c.get(i),te={inProgress:!0,isValid:null,from:Y5(ee,B,S5.Left,!0),fromHandle:B,fromPosition:B.position,fromNode:ee,to:P,toHandle:null,toPosition:JJe[B.position],toNode:null,pointer:P};function ne(){M=!0,y(te),m?.(e,{nodeId:i,handleId:r,handleType:A})}C===0&&ne();function re(e){if(!M){let{x:t,y:n}=K5(e),r=t-O,i=n-k;if(!(r*r+i*i>C*C))return;ne()}if(!x()||!B){V(e);return}let a=b();P=K5(e,j),D=sXe(L5(P,a,!1,[1,1]),n,c,B),F||=(z(),!0);let s=pXe(e,{handle:D,connectionMode:t,fromNodeId:i,fromHandleId:r,fromType:o?`target`:`source`,isValidConnection:_,doc:T,lib:l,flowId:d,nodeLookup:c});R=s.handleDomNode,I=s.connection,L=uXe(!!D,s.isValid);let u=c.get(i),f=u?Y5(u,B,S5.Left,!0):te.from,p={...te,from:f,isValid:L,to:s.toHandle&&L?R5({x:s.toHandle.x,y:s.toHandle.y},a):P,toHandle:s.toHandle,toPosition:L&&s.toHandle?s.toHandle.position:JJe[B.position],toNode:s.toHandle?c.get(s.toHandle.nodeId):null,pointer:P};y(p),te=p}function V(e){if(!(`touches`in e&&e.touches.length>0)){if(M){(D||R)&&I&&L&&h?.(I);let{inProgress:t,...n}=te,r={...n,toPosition:te.toHandle?te.toPosition:null};g?.(e,r),a&&v?.(e,r)}p(),cancelAnimationFrame(E),F=!1,L=!1,I=null,R=null,T.removeEventListener(`mousemove`,re),T.removeEventListener(`mouseup`,V),T.removeEventListener(`touchmove`,re),T.removeEventListener(`touchend`,V)}}T.addEventListener(`mousemove`,re),T.addEventListener(`mouseup`,V),T.addEventListener(`touchmove`,re),T.addEventListener(`touchend`,V)}function pXe(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:i,fromType:a,doc:o,lib:s,flowId:c,isValidConnection:l=dXe,nodeLookup:u}){let d=a===`target`,f=t?o.querySelector(`.${s}-flow__handle[data-id="${c}-${t?.nodeId}-${t?.id}-${t?.type}"]`):null,{x:p,y:m}=K5(e),h=o.elementFromPoint(p,m),g=h?.classList.contains(`${s}-flow__handle`)?h:f,_={handleDomNode:g,isValid:!1,connection:null,toHandle:null};if(g){let e=lXe(void 0,g),t=g.getAttribute(`data-nodeid`),a=g.getAttribute(`data-handleid`),o=g.classList.contains(`connectable`),s=g.classList.contains(`connectableend`);if(!t||!e)return _;let c={source:d?t:r,sourceHandle:d?a:i,target:d?r:t,targetHandle:d?i:a};_.connection=c,_.isValid=o&&s&&(n===_5.Strict?d&&e===`source`||!d&&e===`target`:t!==r||a!==i)&&l(c),_.toHandle=cXe(t,e,a,u,n,!0)}return _}var i7={onPointerDown:fXe,isValid:pXe};function mXe({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){let i=K6(e);function a({translateExtent:e,width:a,height:o,zoomStep:s=1,pannable:c=!0,zoomable:l=!0,inversePan:u=!1}){let d=e=>{if(e.sourceEvent.type!==`wheel`||!t)return;let r=n(),i=e.sourceEvent.ctrlKey&&V5()?10:1,a=-e.sourceEvent.deltaY*(e.sourceEvent.deltaMode===1?.05:e.sourceEvent.deltaMode?1:.002)*s,o=r[2]*2**(a*i);t.scaleTo(o)},f=[0,0],p=WJe().on(`start`,e=>{(e.sourceEvent.type===`mousedown`||e.sourceEvent.type===`touchstart`)&&(f=[e.sourceEvent.clientX??e.sourceEvent.touches[0].clientX,e.sourceEvent.clientY??e.sourceEvent.touches[0].clientY])}).on(`zoom`,c?i=>{let s=n();if(i.sourceEvent.type!==`mousemove`&&i.sourceEvent.type!==`touchmove`||!t)return;let c=[i.sourceEvent.clientX??i.sourceEvent.touches[0].clientX,i.sourceEvent.clientY??i.sourceEvent.touches[0].clientY],l=[c[0]-f[0],c[1]-f[1]];f=c;let d=r()*Math.max(s[2],Math.log(s[2]))*(u?-1:1),p={x:s[0]-l[0]*d,y:s[1]-l[1]*d},m=[[0,0],[a,o]];t.setViewportConstrained({x:p.x,y:p.y,zoom:s[2]},m,e)}:null).on(`zoom.wheel`,l?d:null);i.call(p,{})}function o(){i.on(`zoom`,null)}return{update:a,destroy:o,pointer:q6}}var a7=e=>({x:e.x,y:e.y,zoom:e.k}),o7=({x:e,y:t,zoom:n})=>f5.translate(e,t).scale(n),s7=(e,t)=>e.target.closest(`.${t}`),hXe=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),gXe=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,c7=(e,t=0,n=gXe,r=()=>{})=>{let i=typeof t==`number`&&t>0;return i||r(),i?e.transition().duration(t).ease(n).on(`end`,r):e},_Xe=e=>{let t=e.ctrlKey&&V5()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function vXe({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:i,panOnScrollSpeed:a,zoomOnPinch:o,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:l}){return u=>{if(s7(u,t))return u.ctrlKey&&u.preventDefault(),!1;u.preventDefault(),u.stopImmediatePropagation();let d=n.property(`__zoom`).k||1;if(u.ctrlKey&&o){let e=q6(u),t=d*2**_Xe(u);r.scaleTo(n,t,e,u);return}let f=u.deltaMode===1?20:1,p=i===v5.Vertical?0:u.deltaX*f,m=i===v5.Horizontal?0:u.deltaY*f;!V5()&&u.shiftKey&&i!==v5.Vertical&&(p=u.deltaY*f,m=0),r.translateBy(n,-(p/d)*a,-(m/d)*a,{internal:!0});let h=a7(n.property(`__zoom`));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(c?.(u,h),e.panScrollTimeout=setTimeout(()=>{l?.(u,h),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,s?.(u,h))}}function yXe({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,i){let a=r.type===`wheel`,o=!t&&a&&!r.ctrlKey,s=s7(r,e);if(r.ctrlKey&&a&&s&&r.preventDefault(),o||s)return null;r.preventDefault(),n.call(this,r,i)}}function bXe({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{if(r.sourceEvent?.internal)return;let i=a7(r.transform);e.mouseButton=r.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=i,r.sourceEvent?.type===`mousedown`&&t(!0),n&&n?.(r.sourceEvent,i)}}function xXe({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:i}){return a=>{e.usedRightMouseButton=!!(n&&hXe(t,e.mouseButton??0)),a.sourceEvent?.sync||r([a.transform.x,a.transform.y,a.transform.k]),i&&!a.sourceEvent?.internal&&i?.(a.sourceEvent,a7(a.transform))}}function SXe({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:i,onPaneContextMenu:a}){return o=>{if(!o.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,a&&hXe(t,e.mouseButton??0)&&!e.usedRightMouseButton&&o.sourceEvent&&a(o.sourceEvent),e.usedRightMouseButton=!1,r(!1),i)){let t=a7(o.transform);e.prevViewport=t,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{i?.(o.sourceEvent,t)},n?150:0)}}}function CXe({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:r,panOnScroll:i,zoomOnDoubleClick:a,userSelectionActive:o,noWheelClassName:s,noPanClassName:c,lib:l,connectionInProgress:u}){return d=>{let f=e||t,p=n&&d.ctrlKey,m=d.type===`wheel`;if(d.button===1&&d.type===`mousedown`&&(s7(d,`${l}-flow__node`)||s7(d,`${l}-flow__edge`)))return!0;if(!r&&!f&&!i&&!a&&!n||o||u&&!m||s7(d,s)&&m||s7(d,c)&&(!m||i&&m&&!e)||!n&&d.ctrlKey&&m)return!1;if(!n&&d.type===`touchstart`&&d.touches?.length>1)return d.preventDefault(),!1;if(!f&&!i&&!p&&m||!r&&(d.type===`mousedown`||d.type===`touchstart`)||Array.isArray(r)&&!r.includes(d.button)&&d.type===`mousedown`)return!1;let h=Array.isArray(r)&&r.includes(d.button)||!d.button||d.button<=1;return(!d.ctrlKey||m)&&h}}function wXe({domNode:e,minZoom:t,maxZoom:n,translateExtent:r,viewport:i,onPanZoom:a,onPanZoomStart:o,onPanZoomEnd:s,onDraggingChange:c}){let l={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{x:0,y:0,zoom:0},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},u=e.getBoundingClientRect(),d=WJe().scaleExtent([t,n]).translateExtent(r),f=K6(e).call(d);v({x:i.x,y:i.y,zoom:D5(i.zoom,t,n)},[[0,0],[u.width,u.height]],r);let p=f.on(`wheel.zoom`),m=f.on(`dblclick.zoom`);d.wheelDelta(_Xe);function h(e,t){return f?new Promise(n=>{d?.interpolate(t?.interpolate===`linear`?I8:U8).transform(c7(f,t?.duration,t?.ease,()=>n(!0)),e)}):Promise.resolve(!1)}function g({noWheelClassName:e,noPanClassName:t,onPaneContextMenu:n,userSelectionActive:r,panOnScroll:i,panOnDrag:u,panOnScrollMode:h,panOnScrollSpeed:g,preventScrolling:v,zoomOnPinch:y,zoomOnScroll:b,zoomOnDoubleClick:x,zoomActivationKeyPressed:S,lib:C,onTransformChange:w,connectionInProgress:T,paneClickDistance:E,selectionOnDrag:D}){r&&!l.isZoomingOrPanning&&_();let O=i&&!S&&!r;d.clickDistance(D?1/0:!F5(E)||E<0?0:E);let k=O?vXe({zoomPanValues:l,noWheelClassName:e,d3Selection:f,d3Zoom:d,panOnScrollMode:h,panOnScrollSpeed:g,zoomOnPinch:y,onPanZoomStart:o,onPanZoom:a,onPanZoomEnd:s}):yXe({noWheelClassName:e,preventScrolling:v,d3ZoomHandler:p});if(f.on(`wheel.zoom`,k,{passive:!1}),!r){let e=bXe({zoomPanValues:l,onDraggingChange:c,onPanZoomStart:o});d.on(`start`,e);let t=xXe({zoomPanValues:l,panOnDrag:u,onPaneContextMenu:!!n,onPanZoom:a,onTransformChange:w});d.on(`zoom`,t);let r=SXe({zoomPanValues:l,panOnDrag:u,panOnScroll:i,onPaneContextMenu:n,onPanZoomEnd:s,onDraggingChange:c});d.on(`end`,r)}let A=CXe({zoomActivationKeyPressed:S,panOnDrag:u,zoomOnScroll:b,panOnScroll:i,zoomOnDoubleClick:x,zoomOnPinch:y,userSelectionActive:r,noPanClassName:t,noWheelClassName:e,lib:C,connectionInProgress:T});d.filter(A),x?f.on(`dblclick.zoom`,m):f.on(`dblclick.zoom`,null)}function _(){d.on(`zoom`,null)}async function v(e,t,n){let r=o7(e),i=d?.constrain()(r,t,n);return i&&await h(i),new Promise(e=>e(i))}async function y(e,t){let n=o7(e);return await h(n,t),new Promise(e=>e(n))}function b(e){if(f){let t=o7(e),n=f.property(`__zoom`);(n.k!==e.zoom||n.x!==e.x||n.y!==e.y)&&d?.transform(f,t,null,{sync:!0})}}function x(){let e=f?LJe(f.node()):{x:0,y:0,k:1};return{x:e.x,y:e.y,zoom:e.k}}function S(e,t){return f?new Promise(n=>{d?.interpolate(t?.interpolate===`linear`?I8:U8).scaleTo(c7(f,t?.duration,t?.ease,()=>n(!0)),e)}):Promise.resolve(!1)}function C(e,t){return f?new Promise(n=>{d?.interpolate(t?.interpolate===`linear`?I8:U8).scaleBy(c7(f,t?.duration,t?.ease,()=>n(!0)),e)}):Promise.resolve(!1)}function w(e){d?.scaleExtent(e)}function T(e){d?.translateExtent(e)}function E(e){let t=!F5(e)||e<0?0:e;d?.clickDistance(t)}return{update:g,destroy:_,setViewport:y,setViewportConstrained:v,getViewport:x,scaleTo:S,scaleBy:C,setScaleExtent:w,setTranslateExtent:T,syncViewport:b,setClickDistance:E}}var l7;(function(e){e.Line=`line`,e.Handle=`handle`})(l7||={});function TXe({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:i,affectsY:a}){let o=e-t,s=n-r,c=[o>0?1:o<0?-1:0,s>0?1:s<0?-1:0];return o&&i&&(c[0]*=-1),s&&a&&(c[1]*=-1),c}function EXe(e){return{isHorizontal:e.includes(`right`)||e.includes(`left`),isVertical:e.includes(`bottom`)||e.includes(`top`),affectsX:e.includes(`left`),affectsY:e.includes(`top`)}}function u7(e,t){return Math.max(0,t-e)}function d7(e,t){return Math.max(0,e-t)}function f7(e,t,n){return Math.max(0,t-e,e-n)}function DXe(e,t){return e?!t:t}function OXe(e,t,n,r,i,a,o,s){let{affectsX:c,affectsY:l}=t,{isHorizontal:u,isVertical:d}=t,f=u&&d,{xSnapped:p,ySnapped:m}=n,{minWidth:h,maxWidth:g,minHeight:_,maxHeight:v}=r,{x:y,y:b,width:x,height:S,aspectRatio:C}=e,w=Math.floor(u?p-e.pointerX:0),T=Math.floor(d?m-e.pointerY:0),E=x+(c?-w:w),D=S+(l?-T:T),O=-a[0]*x,k=-a[1]*S,A=f7(E,h,g),j=f7(D,_,v);if(o){let e=0,t=0;c&&w<0?e=u7(y+w+O,o[0][0]):!c&&w>0&&(e=d7(y+E+O,o[1][0])),l&&T<0?t=u7(b+T+k,o[0][1]):!l&&T>0&&(t=d7(b+D+k,o[1][1])),A=Math.max(A,e),j=Math.max(j,t)}if(s){let e=0,t=0;c&&w>0?e=d7(y+w,s[0][0]):!c&&w<0&&(e=u7(y+E,s[1][0])),l&&T>0?t=d7(b+T,s[0][1]):!l&&T<0&&(t=u7(b+D,s[1][1])),A=Math.max(A,e),j=Math.max(j,t)}if(i){if(u){let e=f7(E/C,_,v)*C;if(A=Math.max(A,e),o){let e=0;e=!c&&!l||c&&!l&&f?d7(b+k+E/C,o[1][1])*C:u7(b+k+(c?w:-w)/C,o[0][1])*C,A=Math.max(A,e)}if(s){let e=0;e=!c&&!l||c&&!l&&f?u7(b+E/C,s[1][1])*C:d7(b+(c?w:-w)/C,s[0][1])*C,A=Math.max(A,e)}}if(d){let e=f7(D*C,h,g)/C;if(j=Math.max(j,e),o){let e=0;e=!c&&!l||l&&!c&&f?d7(y+D*C+O,o[1][0])/C:u7(y+(l?T:-T)*C+O,o[0][0])/C,j=Math.max(j,e)}if(s){let e=0;e=!c&&!l||l&&!c&&f?u7(y+D*C,s[1][0])/C:d7(y+(l?T:-T)*C,s[0][0])/C,j=Math.max(j,e)}}}T+=T<0?j:-j,w+=w<0?A:-A,i&&(f?E>D*C?T=(DXe(c,l)?-w:w)/C:w=(DXe(c,l)?-T:T)*C:u?(T=w/C,l=c):(w=T*C,c=l));let M=c?y+w:y,N=l?b+T:b;return{width:x+(c?-w:w),height:S+(l?-T:T),x:a[0]*w*(c?-1:1)+M,y:a[1]*T*(l?-1:1)+N}}var kXe={width:0,height:0,x:0,y:0},AXe={...kXe,pointerX:0,pointerY:0,aspectRatio:1};function jXe(e){return[[0,0],[e.measured.width,e.measured.height]]}function MXe(e,t,n){let r=t.position.x+e.position.x,i=t.position.y+e.position.y,a=e.measured.width??0,o=e.measured.height??0,s=n[0]*a,c=n[1]*o;return[[r-s,i-c],[r+a-s,i+o-c]]}function NXe({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:i}){let a=K6(e),o={controlDirection:EXe(`bottom-right`),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function s({controlPosition:e,boundaries:s,keepAspectRatio:c,resizeDirection:l,onResizeStart:u,onResize:d,onResizeEnd:f,shouldResize:p}){let m={...kXe},h={...AXe};o={boundaries:s,resizeDirection:l,keepAspectRatio:c,controlDirection:EXe(e)};let g,_=null,v=[],y,b,x,S=!1,C=t8().on(`start`,e=>{let{nodeLookup:r,transform:i,snapGrid:a,snapToGrid:o,nodeOrigin:s,paneDomNode:c}=n();if(g=r.get(t),!g)return;_=c?.getBoundingClientRect()??null;let{xSnapped:l,ySnapped:d}=W5(e.sourceEvent,{transform:i,snapGrid:a,snapToGrid:o,containerBounds:_});m={width:g.measured.width??0,height:g.measured.height??0,x:g.position.x??0,y:g.position.y??0},h={...m,pointerX:l,pointerY:d,aspectRatio:m.width/m.height},y=void 0,g.parentId&&(g.extent===`parent`||g.expandParent)&&(y=r.get(g.parentId),b=y&&g.extent===`parent`?jXe(y):void 0),v=[],x=void 0;for(let[e,n]of r)if(n.parentId===t&&(v.push({id:e,position:{...n.position},extent:n.extent}),n.extent===`parent`||n.expandParent)){let e=MXe(n,g,n.origin??s);x=x?[[Math.min(e[0][0],x[0][0]),Math.min(e[0][1],x[0][1])],[Math.max(e[1][0],x[1][0]),Math.max(e[1][1],x[1][1])]]:e}u?.(e,{...m})}).on(`drag`,e=>{let{transform:t,snapGrid:i,snapToGrid:a,nodeOrigin:s}=n(),c=W5(e.sourceEvent,{transform:t,snapGrid:i,snapToGrid:a,containerBounds:_}),l=[];if(!g)return;let{x:u,y:f,width:C,height:w}=m,T={},E=g.origin??s,{width:D,height:O,x:k,y:A}=OXe(h,o.controlDirection,c,o.boundaries,o.keepAspectRatio,E,b,x),j=D!==C,M=O!==w,N=k!==u&&j,P=A!==f&&M;if(!N&&!P&&!j&&!M)return;if((N||P||E[0]===1||E[1]===1)&&(T.x=N?k:m.x,T.y=P?A:m.y,m.x=T.x,m.y=T.y,v.length>0)){let e=k-u,t=A-f;for(let n of v)n.position={x:n.position.x-e+E[0]*(D-C),y:n.position.y-t+E[1]*(O-w)},l.push(n)}if((j||M)&&(T.width=j&&(!o.resizeDirection||o.resizeDirection===`horizontal`)?D:m.width,T.height=M&&(!o.resizeDirection||o.resizeDirection===`vertical`)?O:m.height,m.width=T.width,m.height=T.height),y&&g.expandParent){let e=E[0]*(T.width??0);T.x&&T.x<e&&(m.x=e,h.x-=T.x-e);let t=E[1]*(T.height??0);T.y&&T.y<t&&(m.y=t,h.y-=T.y-t)}let F=TXe({width:m.width,prevWidth:C,height:m.height,prevHeight:w,affectsX:o.controlDirection.affectsX,affectsY:o.controlDirection.affectsY}),I={...m,direction:F};p?.(e,I)!==!1&&(S=!0,d?.(e,I),r(T,l))}).on(`end`,e=>{S&&=(f?.(e,{...m}),i?.({...m}),!1)});a.call(C)}function c(){a.on(`.drag`,null)}return{update:s,destroy:c}}var PXe=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e)),destroy:()=>{n.clear()}},o=t=e(r,i,a);return a},FXe=e=>e?PXe(e):PXe,{useDebugValue:IXe}=U.default,{useSyncExternalStoreWithSelector:LXe}=bo.default,RXe=e=>e;function zXe(e,t=RXe,n){let r=LXe(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return IXe(r),r}var BXe=(e,t)=>{let n=FXe(e),r=(e,r=t)=>zXe(n,e,r);return Object.assign(r,n),r},VXe=(e,t)=>e?BXe(e,t):BXe;function p7(e,t){if(Object.is(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}var m7=(0,U.createContext)(null),HXe=m7.Provider,UXe=h5.error001();function h7(e,t){let n=(0,U.useContext)(m7);if(n===null)throw Error(UXe);return zXe(n,e,t)}function g7(){let e=(0,U.useContext)(m7);if(e===null)throw Error(UXe);return(0,U.useMemo)(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}var WXe={display:`none`},GXe={position:`absolute`,width:1,height:1,margin:-1,border:0,padding:0,overflow:`hidden`,clip:`rect(0px, 0px, 0px, 0px)`,clipPath:`inset(100%)`},KXe=`react-flow__node-desc`,qXe=`react-flow__edge-desc`,JXe=`react-flow__aria-live`,YXe=e=>e.ariaLiveMessage,XXe=e=>e.ariaLabelConfig;function ZXe({rfId:e}){let t=h7(YXe);return(0,W.jsx)(`div`,{id:`${JXe}-${e}`,"aria-live":`assertive`,"aria-atomic":`true`,style:GXe,children:t})}function QXe({rfId:e,disableKeyboardA11y:t}){let n=h7(XXe);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{id:`${KXe}-${e}`,style:WXe,children:t?n[`node.a11yDescription.default`]:n[`node.a11yDescription.keyboardDisabled`]}),(0,W.jsx)(`div`,{id:`${qXe}-${e}`,style:WXe,children:n[`edge.a11yDescription.default`]}),!t&&(0,W.jsx)(ZXe,{rfId:e})]})}var _7=(0,U.forwardRef)(({position:e=`top-left`,children:t,className:n,style:r,...i},a)=>{let o=`${e}`.split(`-`);return(0,W.jsx)(`div`,{className:S6([`react-flow__panel`,n,...o]),style:r,ref:a,...i,children:t})});_7.displayName=`Panel`;function $Xe({proOptions:e,position:t=`bottom-right`}){return e?.hideAttribution?null:(0,W.jsx)(_7,{position:t,className:`react-flow__attribution`,"data-message":`Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev`,children:(0,W.jsx)(`a`,{href:`https://reactflow.dev`,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`React Flow attribution`,children:`React Flow`})})}var eZe=e=>{let t=[],n=[];for(let[,n]of e.nodeLookup)n.selected&&t.push(n.internals.userNode);for(let[,t]of e.edgeLookup)t.selected&&n.push(t);return{selectedNodes:t,selectedEdges:n}},v7=e=>e.id;function tZe(e,t){return p7(e.selectedNodes.map(v7),t.selectedNodes.map(v7))&&p7(e.selectedEdges.map(v7),t.selectedEdges.map(v7))}function nZe({onSelectionChange:e}){let t=g7(),{selectedNodes:n,selectedEdges:r}=h7(eZe,tZe);return(0,U.useEffect)(()=>{let i={nodes:n,edges:r};e?.(i),t.getState().onSelectionChangeHandlers.forEach(e=>e(i))},[n,r,e]),null}var rZe=e=>!!e.onSelectionChangeHandlers;function iZe({onSelectionChange:e}){let t=h7(rZe);return e||t?(0,W.jsx)(nZe,{onSelectionChange:e}):null}var y7=typeof window<`u`?U.useLayoutEffect:U.useEffect,aZe=[0,0],oZe={x:0,y:0,zoom:1},sZe=[...`nodes.edges.defaultNodes.defaultEdges.onConnect.onConnectStart.onConnectEnd.onClickConnectStart.onClickConnectEnd.nodesDraggable.autoPanOnNodeFocus.nodesConnectable.nodesFocusable.edgesFocusable.edgesReconnectable.elevateNodesOnSelect.elevateEdgesOnSelect.minZoom.maxZoom.nodeExtent.onNodesChange.onEdgesChange.elementsSelectable.connectionMode.snapGrid.snapToGrid.translateExtent.connectOnClick.defaultEdgeOptions.fitView.fitViewOptions.onNodesDelete.onEdgesDelete.onDelete.onNodeDrag.onNodeDragStart.onNodeDragStop.onSelectionDrag.onSelectionDragStart.onSelectionDragStop.onMoveStart.onMove.onMoveEnd.noPanClassName.nodeOrigin.autoPanOnConnect.autoPanOnNodeDrag.onError.connectionRadius.isValidConnection.selectNodesOnDrag.nodeDragThreshold.connectionDragThreshold.onBeforeDelete.debug.autoPanSpeed.ariaLabelConfig.zIndexMode`.split(`.`),`rfId`],cZe=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),lZe={translateExtent:g5,nodeOrigin:aZe,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:`nopan`,rfId:`1`};function uZe(e){let{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:i,setTranslateExtent:a,setNodeExtent:o,reset:s,setDefaultNodesAndEdges:c}=h7(cZe,p7),l=g7();y7(()=>(c(e.defaultNodes,e.defaultEdges),()=>{u.current=lZe,s()}),[]);let u=(0,U.useRef)(lZe);return y7(()=>{for(let s of sZe){let c=e[s];c!==u.current[s]&&e[s]!==void 0&&(s===`nodes`?t(c):s===`edges`?n(c):s===`minZoom`?r(c):s===`maxZoom`?i(c):s===`translateExtent`?a(c):s===`nodeExtent`?o(c):s===`ariaLabelConfig`?l.setState({ariaLabelConfig:gYe(c)}):s===`fitView`?l.setState({fitViewQueued:c}):s===`fitViewOptions`?l.setState({fitViewOptions:c}):l.setState({[s]:c}))}u.current=e},sZe.map(t=>e[t])),null}function dZe(){return typeof window>`u`||!window.matchMedia?null:window.matchMedia(`(prefers-color-scheme: dark)`)}function fZe(e){let[t,n]=(0,U.useState)(e===`system`?null:e);return(0,U.useEffect)(()=>{if(e!==`system`){n(e);return}let t=dZe(),r=()=>n(t?.matches?`dark`:`light`);return r(),t?.addEventListener(`change`,r),()=>{t?.removeEventListener(`change`,r)}},[e]),t===null?dZe()?.matches?`dark`:`light`:t}var pZe=typeof document<`u`?document:null;function b7(e=null,t={target:pZe,actInsideInputWithModifier:!0}){let[n,r]=(0,U.useState)(!1),i=(0,U.useRef)(!1),a=(0,U.useRef)(new Set([])),[o,s]=(0,U.useMemo)(()=>{if(e!==null){let t=(Array.isArray(e)?e:[e]).filter(e=>typeof e==`string`).map(e=>e.replace(`+`,`
212
+ `).trim();if(!t.startsWith(`{`)&&!t.startsWith(`[`))continue;let n=G2(t);if(n!==void 0)return W2(n,r.slice(0,e).join(` `).trim()||void 0)}}function W2(e,t){let n=F2(e);if(n.kind===`text`){let e=U2(n.text);return e?.kind===`json`?{...e,meta:e.meta??t}:{kind:`text`,text:n.text}}return{kind:`json`,value:e,meta:t}}function G2(e){if(!(!e.startsWith(`{`)&&!e.startsWith(`[`)))try{let t=JSON.parse(e);return typeof t==`object`&&t?t:void 0}catch{return}}function K2(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function NBe({name:e,input:t}){return(0,W.jsxs)(`span`,{className:`compact-terminal-function-call`,children:[(0,W.jsx)(`span`,{className:`text-[#facc15] font-semibold`,children:e}),(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:`(`}),t===void 0?null:(0,W.jsx)(PBe,{value:t}),(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:`)`})]})}function PBe({value:e}){let[t,n]=(0,U.useState)(()=>new Set([`$`])),[r,i]=(0,U.useState)(()=>new Set);return(0,W.jsx)(q2,{value:e,path:`$`,expandedPaths:t,expandedStrings:r,onTogglePath:e=>{n(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},onToggleString:e=>{i(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}})}function q2({value:e,path:t,expandedPaths:n,expandedStrings:r,onTogglePath:i,onToggleString:a}){if(Array.isArray(e))return(0,W.jsx)(J2,{value:e,path:t,open:`[`,close:`]`,expandedPaths:n,expandedStrings:r,onTogglePath:i,onToggleString:a});if(LBe(e))return(0,W.jsx)(J2,{value:e,path:t,open:`{`,close:`}`,expandedPaths:n,expandedStrings:r,onTogglePath:i,onToggleString:a});if(typeof e==`string`){let n=r.has(t),i=e.length>140&&!n,o=i?`${e.slice(0,140)}...`:e,s=(0,W.jsx)(`span`,{className:`text-[#fb923c]`,children:JSON.stringify(o)});return!i&&e.length<=140?s:(0,W.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),a(t)},className:`compact-terminal-json-toggle text-left align-baseline`,title:n?`Collapse string`:`Expand string`,"aria-label":`String at ${FBe(t)}`,"aria-expanded":n,children:s})}return typeof e==`number`||typeof e==`boolean`||e===null?(0,W.jsx)(`span`,{className:`text-[#60a5fa]`,children:String(e)}):(0,W.jsx)(`span`,{className:`text-[#737373]`,children:JSON.stringify(String(e))})}function J2({value:e,path:t,open:n,close:r,expandedPaths:i,expandedStrings:a,onTogglePath:o,onToggleString:s}){let c=i.has(t),l=`inline-json-${(0,U.useId)()}`,u=c?Array.isArray(e)?e.map((e,t)=>[String(t),e]):Object.entries(e):[];return(0,W.jsxs)(`span`,{children:[(0,W.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),o(t)},className:`compact-terminal-json-toggle align-baseline text-[#737373]`,title:c?`Collapse JSON`:`Expand JSON`,"aria-label":`JSON at ${t}`,"aria-expanded":c,"aria-controls":l,"data-inline-json-path":t,children:[(0,W.jsx)(`span`,{className:`compact-terminal-json-caret`,children:c?`▾`:`▸`}),n,c?null:`...${r}`]}),(0,W.jsxs)(`span`,{id:l,children:[u.map(([n,r],c)=>{let l=`${t}.${IBe(n)}`;return(0,W.jsxs)(`span`,{children:[c>0?(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`, `}):null,Array.isArray(e)?null:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:JSON.stringify(n)}),(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`:`})]}),(0,W.jsx)(q2,{value:r,path:l,expandedPaths:i,expandedStrings:a,onTogglePath:o,onToggleString:s})]},l)}),c?(0,W.jsx)(`span`,{className:`text-[#737373]`,children:r}):null]})]})}function FBe(e){let t=e.replace(/[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}/gi,`[id]`);return t.length<=80?t:`${t.slice(0,39)}…${t.slice(-39)}`}function IBe(e){return e.replaceAll(`\\`,`\\\\`).replaceAll(`.`,`\\.`)}function LBe(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}var RBe=120;function zBe({line:e,status:t,clampLines:n}){let r=`min-w-0 whitespace-pre-wrap break-words ${n?`block overflow-hidden`:``}`,i=HBe(e.tokens),a=i.length>RBe&&!i.some(e=>e.href);return(0,W.jsxs)(`div`,{className:`grid grid-cols-[1.9rem_minmax(0,1fr)] gap-2 leading-[1.45]`,children:[(0,W.jsx)(`span`,{className:`whitespace-pre ${VBe(e.prefix,t)}`,children:BBe(e.prefix)}),(0,W.jsxs)(`span`,{className:r,style:n?{maxHeight:`${n*1.45}em`}:void 0,children:[a?(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:i.map(e=>e.text).join(``)}):i.map((e,t)=>e.href?(0,W.jsx)(`a`,{href:e.href,target:`_blank`,rel:`noreferrer noopener`,"aria-label":e.ariaLabel,className:`${Y2(e)} underline decoration-[#60a5fa]/40 underline-offset-2 hover:decoration-[#60a5fa] focus:outline-none focus:ring-1 focus:ring-[#38bdf8]`,children:e.text},`${t}:${e.href}:${e.text}`):(0,W.jsx)(`span`,{className:Y2(e),children:e.text},`${t}:${e.text}`)),e.functionCall?(0,W.jsx)(NBe,{name:e.functionCall.name,input:e.functionCall.input}):null]})]})}function BBe(e=`none`){switch(e){case`bullet`:return`•`;case`detail`:return`└`;case`continuation`:return` `;case`prompt`:return`›`;default:return` `}}function VBe(e=`none`,t){if(e===`bullet`){if(t===`running`)return`text-[#38bdf8]`;if(t===`error`)return`text-[#ef4444]`;if(t===`done`)return`text-[#22c55e]`}return`text-[#737373]`}function Y2(e){return`${e.tone===`dim`?`text-[#737373]`:e.tone===`cyan`?`text-[#38bdf8]`:e.tone===`green`?`text-[#22c55e]`:e.tone===`red`?`text-[#ef4444]`:e.tone===`magenta`?`text-[#d946ef]`:e.tone===`yellow`?`text-[#facc15]`:e.tone===`blue`?`text-[#60a5fa]`:e.tone===`amber`?`text-[#f59e0b]`:`text-[#d4d4d4]`} ${e.weight===`bold`?`font-bold`:e.weight===`semibold`?`font-semibold`:`font-normal`} ${e.italic?`italic`:``}`.trim()}function HBe(e){let t=[];for(let n of e){if(!n.text)continue;let e=t.at(-1);if(e&&e.tone===n.tone&&e.weight===n.weight&&e.italic===n.italic&&e.href===n.href&&e.ariaLabel===n.ariaLabel){e.text+=n.text;continue}t.push({...n})}return t}async function UBe(){await fetch(`/api/auth/sign-out`,{method:`POST`,credentials:`same-origin`,headers:{"content-type":`application/json`},body:`{}`})}async function WBe(){let e=location.pathname.startsWith(`/apps/chat`)?`${location.pathname}${location.search}`:`/apps/chat`,t=await fetch(`/api/auth/sign-in/social`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({provider:`google`,callbackURL:e,disableRedirect:!0})}),n=await t.json();if(!t.ok||!n.url)throw Error(n.message||n.error||`Could not start Google sign in.`);location.href=n.url}async function GBe(){return await K(`/api/chat/provider-auth`)}async function X2(e){return(await K(`/api/chat/provider-auth`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e)})).result}async function Z2(e){let t=new URLSearchParams;return e&&t.set(`selectedProfileId`,e),K(`/api/chat/workflows/pickers/profiles${t.size?`?${t.toString()}`:``}`)}async function KBe(e){let t=new URLSearchParams;return e&&t.set(`selectedHandlerId`,e),K(`/api/chat/workflows/pickers/handlers${t.size?`?${t.toString()}`:``}`)}async function qBe(e){let t=new URLSearchParams;return e&&t.set(`selectedRefId`,e),K(`/api/chat/workflows/pickers/guards${t.size?`?${t.toString()}`:``}`)}async function Q2(e){let t=new URLSearchParams;return e&&t.set(`selectedRefId`,e),K(`/api/chat/workflows/pickers/adapters${t.size?`?${t.toString()}`:``}`)}async function $2(e){let t=new URLSearchParams;return e&&t.set(`selectedRefId`,e),K(`/api/chat/workflows/pickers/human-actions${t.size?`?${t.toString()}`:``}`)}async function JBe(e){let t=new URLSearchParams;return e&&t.set(`selectedRefId`,e),K(`/api/chat/workflows/pickers/prompt-assets${t.size?`?${t.toString()}`:``}`)}async function YBe(e){return K(`/api/chat/workflows/prompt-assets/${encodeURIComponent(e)}`)}async function XBe(e){return K(`/api/chat/workflows/prompt-assets`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e)})}async function ZBe(e={}){let t=new URLSearchParams;return e.includeArchived&&t.set(`includeArchived`,`true`),K(`/api/chat/workflows${t.size?`?${t.toString()}`:``}`)}async function QBe(e,t,n={}){let r=new URLSearchParams;n.includeArchived&&r.set(`includeArchived`,`true`);let i=r.size?`?${r.toString()}`:``;return K(`/api/chat/workflows/${encodeURIComponent(e)}/versions/${encodeURIComponent(t)}${i}`)}async function e4(e={}){let t=new URLSearchParams;return e.selectedWorkflowId&&t.set(`selectedWorkflowId`,e.selectedWorkflowId),e.selectedWorkflowVersion&&t.set(`selectedWorkflowVersion`,e.selectedWorkflowVersion),K(`/api/chat/workflows/pickers/workflow-versions${t.size?`?${t.toString()}`:``}`)}async function $Be(e={}){let t=new URLSearchParams;return e.selectedWorkflowId&&t.set(`selectedWorkflowId`,e.selectedWorkflowId),e.selectedWorkflowVersion&&t.set(`selectedWorkflowVersion`,e.selectedWorkflowVersion),K(`/api/chat/workflows/pickers/version-history${t.size?`?${t.toString()}`:``}`)}async function eVe(e,t,n){return K(`/api/chat/projects/${encodeURIComponent(e)}/workflow-sessions/${encodeURIComponent(t)}/human-actions`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(n)})}async function tVe(e){return K(`/api/chat/workflows`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e)})}async function nVe(e){return K(`/api/chat/workflows/drafts/${encodeURIComponent(e)}`)}async function t4(e,t){return K(`/api/chat/workflows/drafts/${encodeURIComponent(e)}`,{method:`PATCH`,headers:{"content-type":`application/json`},body:JSON.stringify(t)})}async function rVe(e,t){return K(`/api/chat/workflows/drafts/${encodeURIComponent(e)}/manual-trigger-runs`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(t)})}async function iVe(e,t={}){return K(`/api/chat/workflows/${encodeURIComponent(e)}/duplicate`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(t)})}function aVe(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=e;return t.action===`show_login_menu`&&Array.isArray(t.providers)}function oVe(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=e;return t.action===`show_model_menu`&&Array.isArray(t.providers)}function n4(e){return sVe(e)?e.result:e}function sVe(e){return!!e&&typeof e==`object`&&!Array.isArray(e)&&e.type===`execution_result`}var cVe={device_code:`Device code`,browser_oauth:`Browser OAuth`,api_key:`API key`};function lVe({row:e,piboSessionId:t}){let n=aVe(e.output)?e.output:void 0,r=(0,U.useMemo)(()=>n?.providers??[],[n?.providers]),[i,a]=(0,U.useState)({type:`select_provider`}),[o,s]=(0,U.useState)(!1),[c,l]=(0,U.useState)(``),[u,d]=(0,U.useState)(``),[f,p]=(0,U.useState)(null),m=(0,U.useRef)(!1),h=(0,U.useCallback)(()=>{a({type:`select_provider`}),l(``),d(``)},[]),g=(0,U.useCallback)(async e=>{try{await navigator.clipboard.writeText(e),p(e),window.setTimeout(()=>p(t=>t===e?null:t),1600)}catch{}},[]),_=(0,U.useCallback)(async(e,n)=>{if(!t){a({type:`error`,provider:e,message:`Select a chat session before starting login.`});return}s(!0),a({type:`device_starting`,provider:e});try{let r=n4(await eu(t,`login.start`,{provider:e.id,method:n})),i=r?.url??r?.flow?.verificationUrl;if(!i){a({type:`error`,provider:e,message:`No login URL returned.`});return}a({type:`device_flow`,provider:e,url:i,flowId:r.flowId??r.state??r.flow?.flowId,completion:r.flow?.completion,userCode:r.userCode??r.flow?.userCode,instructions:r.instructions??r.flow?.instructions})}catch(t){a({type:`error`,provider:e,message:t instanceof Error?t.message:String(t)})}finally{s(!1)}},[t]),v=(0,U.useCallback)(async(e,n,r)=>{if(!(!t||!n)){s(!0);try{let i=n4(await eu(t,`login.complete`,{provider:e.id,flowId:n,...r?{code:r}:{}}));if(i?.state===`pending`)return;if(i?.state===`failed`){a({type:`error`,provider:e,message:`Login failed. Start a new runtime login flow.`});return}a({type:`success`,provider:e,message:`${e.name} login completed for this runtime.`})}catch(t){a({type:`error`,provider:e,message:t instanceof Error?t.message:String(t)})}finally{s(!1)}}},[t]),y=(0,U.useCallback)(async(e,n)=>{if(!t||!n){h();return}s(!0);try{await eu(t,`login.cancel`,{provider:e.id,flowId:n}),h()}catch(t){a({type:`error`,provider:e,message:t instanceof Error?t.message:String(t)})}finally{s(!1)}},[t,h]);(0,U.useEffect)(()=>{if(i.type!==`device_flow`||i.completion!==`notification`||!i.flowId||!t)return;let e=async()=>{if(!(m.current||i.type!==`device_flow`)){m.current=!0;try{let e=n4(await eu(t,`login.complete`,{provider:i.provider.id,flowId:i.flowId}));e?.state===`connected`||e?.state===`partial`?a({type:`success`,provider:i.provider,message:`${i.provider.name} login completed for this runtime.`}):e?.state===`failed`&&a({type:`error`,provider:i.provider,message:`Login failed. Start a new runtime login flow.`})}catch(e){a({type:`error`,provider:i.provider,message:e instanceof Error?e.message:String(e)})}finally{m.current=!1}}},n=window.setInterval(()=>void e(),1500);return()=>window.clearInterval(n)},[t,i]);let b=(0,U.useCallback)(async e=>{if(!t)return;let n=c.trim();if(n){s(!0);try{await eu(t,`login.apikey`,{provider:e.id,apiKey:n}),l(``),a({type:`success`,provider:e,message:`${e.name} API key saved.`})}catch(t){a({type:`error`,provider:e,message:t instanceof Error?t.message:String(t)})}finally{s(!1)}}},[c,t]);return n?(0,W.jsx)(r4,{title:i.type===`select_provider`?`Login`:dVe(i),tone:i.type===`error`?`red`:i.type===`success`?`green`:`cyan`,action:i.type===`select_provider`?void 0:(0,W.jsx)(uVe,{onClick:()=>{i.type===`device_flow`?y(i.provider,i.flowId):h()},disabled:o}),children:i.type===`select_provider`?(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`div`,{className:`text-[11px] text-[#737373]`,children:[`Choose a provider. Use `,(0,W.jsx)(`span`,{className:`text-[#38bdf8]`,children:`/login`}),` anytime.`]}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:r.map(e=>(0,W.jsxs)(`button`,{type:`button`,onClick:()=>a({type:`select_method`,provider:e}),className:`inline-flex items-center gap-1 border border-[#3a3a3a] bg-transparent px-2 py-1 text-[11px] text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8]`,children:[(0,W.jsx)(`span`,{children:e.name}),e.configured?(0,W.jsx)(`span`,{className:`text-[#22c55e]`,children:`●`}):null]},e.id))})]}):i.type===`select_method`?(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px]`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`Provider:`}),(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:i.provider.name}),i.provider.configured?(0,W.jsx)(i4,{tone:`green`,children:`Configured`}):(0,W.jsx)(i4,{tone:`neutral`,children:`Not configured`})]}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:i.provider.authMethods.map(e=>(0,W.jsxs)(`button`,{type:`button`,onClick:()=>e===`api_key`?a({type:`api_key`,provider:i.provider}):void _(i.provider,e),className:`inline-flex items-center gap-1 border border-[#3a3a3a] bg-transparent px-2 py-1 text-[11px] text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8]`,children:[e===`api_key`?(0,W.jsx)(Oc,{size:11}):(0,W.jsx)(Rc,{size:11}),cVe[e]]},e))})]}):i.type===`device_starting`?(0,W.jsxs)(`div`,{className:`inline-flex items-center gap-2 text-[11px] text-[#38bdf8]`,children:[(0,W.jsx)(Ic,{size:13,className:`animate-spin`}),` Starting device login...`]}):i.type===`device_flow`?(0,W.jsxs)(`div`,{className:`grid gap-2 text-[11px]`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`Open:`}),(0,W.jsxs)(`a`,{href:i.url,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-[#38bdf8] hover:underline`,children:[fVe(i.url),` `,(0,W.jsx)(fc,{size:11})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>void g(i.url),className:`inline-flex items-center gap-1 border border-[#3a3a3a] px-1.5 py-0.5 text-[#737373] hover:border-[#38bdf8] hover:text-[#38bdf8]`,children:[f===i.url?(0,W.jsx)(ec,{size:10}):(0,W.jsx)(sc,{size:10}),` `,f===i.url?`Copied`:`Copy`]})]}),i.userCode?(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`Code:`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void g(i.userCode),className:`border border-[#1f4960] px-2 py-0.5 font-semibold tracking-widest text-[#38bdf8] hover:border-[#38bdf8]`,children:i.userCode}),(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`then`}),i.completion===`notification`?(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-[#38bdf8]`,children:[(0,W.jsx)(Ic,{size:11,className:`animate-spin`}),` Waiting for runtime`]}):(0,W.jsxs)(`button`,{type:`button`,disabled:o||!i.flowId,onClick:()=>void v(i.provider,i.flowId),className:`inline-flex items-center gap-1 border border-[#3a3a3a] px-2 py-0.5 text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:opacity-50`,children:[o?(0,W.jsx)(Ic,{size:11,className:`animate-spin`}):(0,W.jsx)(ec,{size:11}),` Complete`]})]}):(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,W.jsx)(`input`,{value:u,autoComplete:`off`,spellCheck:!1,onChange:e=>d(e.target.value),placeholder:`authorization code`,className:`min-w-0 flex-1 border border-[#2a2a2a] bg-[#0b0b0b] px-2 py-1 text-[11px] text-[#d4d4d4] outline-none focus:border-[#38bdf8]`}),(0,W.jsxs)(`button`,{type:`button`,disabled:o||!u.trim()||!i.flowId,onClick:()=>void v(i.provider,i.flowId,u.trim()),className:`inline-flex items-center gap-1 border border-[#3a3a3a] px-2 py-1 text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:opacity-50`,children:[o?(0,W.jsx)(Ic,{size:11,className:`animate-spin`}):(0,W.jsx)(ec,{size:11}),` Complete`]})]}),i.instructions?(0,W.jsx)(`div`,{className:`text-[#737373]`,children:i.instructions}):null]}):i.type===`api_key`?(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5 text-[11px]`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`API key:`}),(0,W.jsx)(`input`,{type:`password`,value:c,autoComplete:`off`,spellCheck:!1,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Enter`&&b(i.provider)},placeholder:`sk-...`,className:`min-w-[12rem] flex-1 border border-[#2a2a2a] bg-[#0b0b0b] px-2 py-1 text-[11px] text-[#d4d4d4] outline-none focus:border-[#38bdf8]`}),(0,W.jsxs)(`button`,{type:`button`,disabled:o||!c.trim(),onClick:()=>void b(i.provider),className:`inline-flex items-center gap-1 border border-[#3a3a3a] px-2 py-1 text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:opacity-50`,children:[o?(0,W.jsx)(Ic,{size:11,className:`animate-spin`}):(0,W.jsx)(ec,{size:11}),` Save`]})]}):i.type===`success`?(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] text-[#22c55e]`,children:[(0,W.jsx)(ec,{size:13}),` `,i.message]}):(0,W.jsxs)(`div`,{className:`flex items-start gap-2 text-[11px] text-[#ef4444]`,children:[(0,W.jsx)(Qs,{size:13,className:`mt-0.5 shrink-0`}),` `,(0,W.jsx)(`span`,{children:i.message})]})}):(0,W.jsx)(r4,{title:`Login`,tone:`red`,children:`Unparseable login payload.`})}function r4({title:e,tone:t,action:n,children:r}){return(0,W.jsxs)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-shared-terminal-card":`login`,children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center gap-2`,children:[(0,W.jsx)(Rc,{size:14,className:t===`red`?`text-[#ef4444]`:t===`green`?`text-[#22c55e]`:`text-[#38bdf8]`}),(0,W.jsx)(`span`,{className:`font-semibold text-[#d4d4d4]`,children:e}),n?(0,W.jsx)(`div`,{className:`ml-auto`,children:n}):null]}),r]})}function uVe({onClick:e,disabled:t}){return(0,W.jsxs)(`button`,{type:`button`,disabled:t,onClick:e,className:`inline-flex items-center gap-1 border border-[#3a3a3a] bg-transparent px-1.5 py-0.5 text-[11px] text-[#737373] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:opacity-50`,children:[(0,W.jsx)(js,{size:10}),` Back`]})}function i4({tone:e,children:t}){return(0,W.jsx)(`span`,{className:`border px-1.5 py-0.5 text-[10px] ${e===`green`?`border-[#14532d] text-[#22c55e]`:`border-[#3a3a3a] text-[#737373]`}`,children:t})}function dVe(e){return`provider`in e&&e.provider?e.provider.name:`Login`}function fVe(e){try{let t=new URL(e);return`${t.host}${t.pathname}`}catch{return e.length>42?`${e.slice(0,39)}...`:e}}function pVe({row:e,piboSessionId:t,onModelChanged:n}){let r=n4(e.output),i=(oVe(r)?r:void 0)?.providers??[],a=(0,U.useMemo)(()=>i.flatMap(e=>e.models.map(t=>({...t,providerLabel:e.label,authConfigured:e.authConfigured}))),[i]),[o,s]=(0,U.useState)(``),[c,l]=(0,U.useState)(null),[u,d]=(0,U.useState)(!1),[f,p]=(0,U.useState)(null),m=(0,U.useMemo)(()=>{let e=o.trim().toLowerCase();return e?a.filter(t=>`${t.providerLabel} ${t.provider} ${t.label} ${t.id}`.toLowerCase().includes(e)):a},[a,o]),h=async e=>{if(!(!t||u||e.authConfigured===!1)){d(!0),l(e),p(null);try{await Xl(t,{activeModel:{provider:e.provider,id:e.id}}),p(`Selected ${e.provider}/${e.id}.`),await n?.()}catch(e){p(e instanceof Error?e.message:String(e))}finally{d(!1)}}};return(0,W.jsxs)(`div`,{className:`ml-[1.9rem] max-w-3xl border border-[#3a3a3a] bg-[#111111] text-[12px] shadow-lg`,"data-shared-terminal-card":`model`,children:[(0,W.jsx)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[#2a2a2a] px-3 py-2`,children:(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[#d4d4d4]`,children:`Model`}),(0,W.jsx)(`div`,{className:`text-[11px] text-[#737373]`,children:`Choose a model exposed by the active runtime.`})]})}),(0,W.jsxs)(`div`,{className:`space-y-2 p-3`,children:[i.length?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`label`,{className:`flex items-center gap-2 border border-[#2a2a2a] bg-[#0b0b0b] px-2 py-1 text-[#737373]`,children:[(0,W.jsx)(ul,{size:13}),(0,W.jsx)(`input`,{value:o,onChange:e=>s(e.target.value),placeholder:`Search models`,className:`min-w-0 flex-1 bg-transparent text-[#d4d4d4] outline-none placeholder:text-[#525252]`})]}),(0,W.jsx)(`div`,{className:`max-h-72 overflow-auto border border-[#2a2a2a]`,children:m.length?m.map(e=>(0,W.jsxs)(`button`,{type:`button`,disabled:u||e.authConfigured===!1,onClick:()=>void h(e),className:`grid w-full grid-cols-[150px_1fr_auto] gap-2 border-b border-[#1f1f1f] px-3 py-2 text-left hover:bg-[#38bdf8]/10 disabled:cursor-not-allowed disabled:opacity-50`,children:[(0,W.jsx)(`span`,{className:`truncate text-[#737373]`,children:e.providerLabel}),(0,W.jsxs)(`span`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-[#d4d4d4]`,children:e.label}),(0,W.jsxs)(`span`,{className:`block truncate text-[11px] text-[#737373]`,children:[e.provider,`/`,e.id]})]}),e.authConfigured===!1?(0,W.jsx)(Rc,{size:13,className:`text-[#737373]`,"aria-label":`Provider authentication missing`}):c?.provider===e.provider&&c?.id===e.id?(0,W.jsx)(Us,{size:14,className:`text-[#22c55e]`}):null]},`${e.provider}:${e.id}`)):(0,W.jsx)(`div`,{className:`px-3 py-2 text-[#737373]`,children:`No matching models.`})})]}):(0,W.jsx)(`div`,{className:`text-[#737373]`,children:`No models are available for the active runtime.`}),f?(0,W.jsx)(`div`,{className:`text-[11px] text-[#a3a3a3]`,children:f}):null]})]})}function mVe(e={}){let t=[],n=[],r=s4(e.warnings),i=s4(e.errors);(e.session?.id||e.session?.title)&&t.push({id:`session`,label:`Session`,value:a4([e.session?.title,e.session?.id].filter(Boolean).join(` | `))}),e.session?.profile&&t.push({id:`profile`,label:`Profile`,value:a4(e.session.profile)}),e.session?.status&&t.push({id:`session-status`,label:`Session status`,value:a4(e.session.status),tone:e.session.status===`error`||e.session.status===`disposed`?`red`:`neutral`}),(e.model?.provider||e.model?.id||e.model?.label)&&t.push({id:`model`,label:`Model`,value:a4(e.model.label??[e.model.provider,e.model.id].filter(Boolean).join(`/`))}),e.runtime?.state&&t.push({id:`runtime`,label:`Runtime`,value:a4(e.runtime.state),tone:e.runtime.connected===!1||e.runtime.disposed?`red`:`green`}),e.runtime?.disposed!==void 0&&t.push({id:`disposed`,label:`Disposed`,value:e.runtime.disposed?`yes`:`no`,tone:e.runtime.disposed?`red`:`neutral`}),typeof e.runtime?.queuedMessages==`number`&&t.push({id:`queue`,label:`Queue`,value:String(e.runtime.queuedMessages)}),e.runtime?.processing!==void 0&&t.push({id:`processing`,label:`Processing`,value:e.runtime.processing?`yes`:`no`,tone:e.runtime.processing?`cyan`:`neutral`}),e.runtime?.streaming!==void 0&&t.push({id:`streaming`,label:`Streaming`,value:e.runtime.streaming?`yes`:`no`,tone:e.runtime.streaming?`cyan`:`neutral`}),e.cwd&&t.push({id:`cwd`,label:`CWD`,value:a4(e.cwd)});let a=typeof e.thinking==`string`?{level:e.thinking}:e.thinking;(a?.level||a?.supported!==void 0)&&t.push({id:`thinking`,label:`Thinking`,value:a4(a.level??(a.supported===!1?`unsupported`:`available`)),tone:a.supported===!1?`red`:`yellow`}),e.fastMode!==void 0&&t.push({id:`fast-mode`,label:`Fast mode`,value:typeof e.fastMode==`string`?a4(e.fastMode):e.fastMode?`on`:`off`,tone:e.fastMode?`green`:`neutral`});let o=s4(e.tools?.enabled),s=s4(e.tools?.active);o.length&&t.push({id:`enabled-tools`,label:`Enabled tools`,value:`${o.length}${o.length<=4?` (${o.join(`, `)})`:``}`}),s.length&&t.push({id:`active-tools`,label:`Active tools`,value:`${s.length}${s.length<=4?` (${s.join(`, `)})`:``}`,tone:`cyan`}),e.providerUsage?.planType&&t.push({id:`provider-plan`,label:`Provider plan`,value:a4(e.providerUsage.planType)}),e.providerUsage?.credits&&t.push({id:`provider-credits`,label:`Credits`,value:e.providerUsage.credits.unlimited?`unlimited`:a4(e.providerUsage.credits.balance??`available`)}),e.message&&t.push({id:`message`,label:`Message`,value:a4(e.message)}),n.push(hVe(e.contextUsage));for(let t of gVe(e.providerUsage))n.push(t);return{kind:`status`,title:`Status`,fields:t,progress:n,warnings:r,errors:i}}function a4(e){return e.replace(/\b([A-Z0-9_]*(?:API[_-]?KEY|TOKEN|SECRET|PASSWORD)[A-Z0-9_]*)\s*=\s*([^\s]+)/gi,`$1=[redacted]`).replace(/\b(api[_-]?key|token|secret|password)\s*[:=]\s*([^\s]+)/gi,`$1=[redacted]`).replace(/\b(?:sk|pk|pibo|ghp|github_pat)_[A-Za-z0-9_\-]{8,}\b/g,`[redacted]`)}function hVe(e){if(!e||e.tokens===void 0&&e.contextWindow===void 0&&e.percent===void 0)return{id:`context`,label:`Context`,state:`unavailable`,text:`Context usage unavailable`,tone:`neutral`};let t=o4(e.percent??(e.tokens!==void 0&&e.contextWindow?e.tokens/e.contextWindow*100:void 0));return{id:`context`,label:`Context`,state:t===void 0?`unavailable`:`available`,value:e.tokens,max:e.contextWindow,percent:t,text:t===void 0?`Context usage unavailable`:`${e.tokens??`?`}/${e.contextWindow??`?`} tokens (${t.toFixed(1)}%)`,tone:_Ve(t)}}function gVe(e){return e?.limits?.length?e.limits.map((t,n)=>{let r=o4(t.usedPercent),i=o4(t.remainingPercent??(r===void 0?void 0:100-r)),a=e.provider?`${e.provider} `:``,o=[i===void 0?void 0:`${i.toFixed(1)}% remaining`,t.resetsAt?`resets ${a4(t.resetsAt)}`:void 0].filter(Boolean).join(`, `);return{id:`provider-${n}`,label:`${a}${t.label??`quota`}`.trim(),state:i===void 0?`unavailable`:`available`,percent:i,text:i===void 0?`Provider usage unavailable`:o,tone:vVe(i)}}):[{id:`provider`,label:`Provider quota`,state:`unavailable`,text:`Provider usage unavailable`,tone:`neutral`}]}function o4(e){if(!(typeof e!=`number`||!Number.isFinite(e)))return Math.max(0,Math.min(100,e))}function _Ve(e){return e===void 0?`neutral`:e>=80?`red`:e>=50?`yellow`:`green`}function vVe(e){return e===void 0?`neutral`:e<=20?`red`:e<=50?`yellow`:`green`}function s4(e){return(e??[]).map(e=>a4(e)).filter(e=>e.length>0)}function c4(e){switch(e.kind){case`tool.status`:return yVe(e);case`tool.thinking`:return bVe(e);case`tool.model`:return xVe(e);case`tool.login`:return SVe(e);case`tool.call`:case`tool.image`:case`tool.group.exploring`:case`tool.group.images`:return CVe(e);case`yielded.run`:return l4(e,`yielded-run`,`Yielded run`,e.status===`error`?`red`:e.status===`running`?`cyan`:`green`);case`execution.compaction`:return l4(e,`compaction`,e.status===`error`?`Compaction failed`:e.status===`running`?`Compacting`:`Compaction`,e.status===`error`?`red`:`magenta`);case`execution.command`:return l4(e,`command`,`Command`,e.status===`error`?`red`:`yellow`);case`error`:return l4(e,`error`,`Error`,`red`);default:return}}function yVe(e){let t=u4(e.output),n=d4(t,`activeModel`)??d4(t,`model`),r=mVe({session:{id:m4(t,`piboSessionId`)??m4(t,`sessionId`),title:m4(t,`sessionTitle`)??m4(t,`title`),profile:m4(t,`profile`)??m4(t,`activeAgentId`)??m4(t,`agentId`),status:h4(t,`disposed`)?`disposed`:m4(t,`sessionStatus`)},model:n?{provider:m4(n,`provider`),id:m4(n,`id`),label:m4(n,`label`)}:void 0,runtime:{state:h4(t,`disposed`)?`disposed`:h4(t,`processing`)?`processing`:h4(t,`streaming`)?`streaming`:m4(t,`mode`)??`idle`,connected:h4(t,`connected`),queuedMessages:TVe(t,`queuedMessages`),processing:h4(t,`processing`),streaming:h4(t,`streaming`),disposed:h4(t,`disposed`)},cwd:m4(t,`cwd`),contextUsage:d4(t,`contextUsage`),providerUsage:d4(t,`providerUsage`),tools:{enabled:p4(t,`enabledTools`),active:p4(t,`activeTools`)},thinking:m4(t,`thinkingLevel`)?{level:m4(t,`thinkingLevel`)}:void 0,fastMode:h4(t,`fastMode`),warnings:p4(t,`warnings`),errors:p4(t,`errors`),message:m4(t,`message`)});return{id:e.id,kind:`status`,title:`Status`,status:e.status,tone:e.status===`error`?`red`:`green`,rows:r.fields.map(e=>({label:e.label,value:e.value,tone:e.tone})),statusView:r,sourceRowKind:e.kind}}function bVe(e){let t=u4(e.output),n=m4(t,`level`)??`unknown`,r=t?.supported!==!1,i=p4(t,`availableLevels`);return{id:e.id,kind:`thinking`,title:`Thinking`,status:e.status,tone:r?`yellow`:`red`,rows:[{label:`Current`,value:a4(n)},{label:`Supported`,value:r?`yes`:`no`,tone:r?`green`:`red`}],actions:i.map(e=>({id:`thinking:${e}`,label:e,action:`thinking.set`,value:e,disabled:!r})),sourceRowKind:e.kind}}function xVe(e){let t=f4(u4(e.output),`providers`),n=t.flatMap(e=>{let t=m4(e,`id`)??m4(e,`provider`)??`provider`,n=m4(e,`label`)??m4(e,`name`)??t;return f4(e,`models`).map(e=>{let r=m4(e,`id`)??`model`,i=m4(e,`label`)??r;return{id:`model:${t}:${r}`,label:`${n} / ${i}`,action:`model.select`,value:`${t}/${r}`}})});return{id:e.id,kind:`model`,title:`Model`,status:e.status,tone:n.length?`cyan`:`neutral`,rows:[{label:`Providers`,value:String(t.length)},{label:`Models`,value:String(n.length)}],actions:n,sourceRowKind:e.kind}}function SVe(e){let t=f4(u4(e.output),`providers`),n=t.map(e=>{let t=m4(e,`id`)??`provider`;return{id:`login:${t}`,label:m4(e,`name`)??m4(e,`label`)??t,action:`login.selectProvider`,value:t,description:p4(e,`authMethods`).join(`, `)}});return{id:e.id,kind:`login`,title:`Login`,status:e.status,tone:n.length?`cyan`:`neutral`,rows:[{label:`Providers`,value:String(t.length)}],actions:n,sourceRowKind:e.kind}}function CVe(e){return l4(e,`tool`,e.kind===`tool.group.exploring`?`Exploring`:e.kind===`tool.image`||e.kind===`tool.group.images`?`Image`:`Tool`,e.status===`error`?`red`:e.status===`running`?`cyan`:`green`)}function l4(e,t,n,r){let i=e.lines.flatMap(e=>{let t=`${e.tokens.map(e=>e.text).join(``)}${e.functionCall?`${e.functionCall.name}${e.functionCall.input===void 0?``:` ${wVe(e.functionCall.input)}`}`:``}`.trim();return t?[{value:a4(t)}]:[]}),a=e.lines.length===0&&typeof e.output==`string`&&e.output.trim()?[{value:a4(e.output.trim())}]:[],o=[e.error?{label:`Error`,value:a4(e.error),tone:`red`}:void 0].filter(e=>!!e);return{id:e.id,kind:t,title:n,status:e.status,tone:r,rows:[...i,...a,...o],sourceRowKind:e.kind}}function wVe(e){try{return JSON.stringify(e)}catch{return String(e)}}function u4(e){if(e){if(typeof e==`string`)try{let t=JSON.parse(e);return t&&typeof t==`object`&&!Array.isArray(t)?t:void 0}catch{return}return typeof e==`object`&&!Array.isArray(e)?e:void 0}}function d4(e,t){let n=e?.[t];return n&&typeof n==`object`&&!Array.isArray(n)?n:void 0}function f4(e,t){let n=e?.[t];return Array.isArray(n)?n.filter(e=>!!e&&typeof e==`object`&&!Array.isArray(e)):[]}function p4(e,t){let n=e?.[t];return Array.isArray(n)?n.filter(e=>typeof e==`string`):[]}function m4(e,t){let n=e?.[t];return typeof n==`string`?n:void 0}function TVe(e,t){let n=e?.[t];return typeof n==`number`&&Number.isFinite(n)?n:void 0}function h4(e,t){let n=e?.[t];return typeof n==`boolean`?n:void 0}var EVe=1e3,DVe={browser_use_open_tabs:`browser_use.open_tabs`,browser_use_take_screenshot:`browser_use.take_screenshot`,browser_use_browser_use:`browser_use.browser_use`,node_repl_js:`node_repl.js`,node_repl_js_reset:`node_repl.js_reset`};function OVe(e,t){if(!e)return[];let n=v4(e.nodes),r=pHe(y4(e.nodes).sort((e,t)=>GX(e.node,t.node)).filter(e=>e.node.type!==`agent.turn`&&(t.showThinking||e.node.type!==`model.reasoning`)).map(e=>jVe(e.node,e.turnId)));VVe(r,n);let i=NVe(r);return kVe((t.toolDisplayMode??`default`)==="default"?gHe(i).map(e=>e.row):i.map(e=>e.row),t.toolDisplayMode??`default`)}function kVe(e,t){return t==="default"?e:t===`hide`?e.filter(e=>!g4(e)):e.flatMap(e=>{if(!g4(e))return[e];let n=e.intent?.trim();if(t===`intent`&&!n)return[];let r={...e,lines:e.lines.slice(0,1),input:void 0,output:void 0,error:void 0,markdown:void 0,expandable:!1,singleLine:!0,previewOmission:void 0,detailItems:void 0};return t===`intent`?[{...r,title:void 0,summary:void 0,lines:[{prefix:`bullet`,tokens:[V4(n,e.status===`error`?`red`:e.status===`done`?`green`:`cyan`,`semibold`)]}]}]:[r]})}function g4(e){return e.sourceNodeIds.some(e=>QX(e)!==void 0)||e.id.startsWith(`terminal:tool:`)||e.kind===`tool.call`||e.kind===`tool.image`||e.kind===`tool.group.exploring`||e.kind===`tool.group.images`||e.kind===`agent.delegation`}function AVe(e){if(!e)return;let t=new Set(y4(e.nodes).map(({node:e})=>e).filter(e=>e.type===`error`&&e.eventId).map(e=>e.eventId));return[...v4(e.nodes).values()].filter(e=>e.startedAt&&!e.completedAt&&(!e.eventId||!t.has(e.eventId))).sort(GX).at(-1)?.startedAt}function _4(e){let t=Math.max(0,Math.floor(e/1e3));return[Math.floor(t/3600),Math.floor(t%3600/60),t%60].map(e=>String(e).padStart(2,`0`)).join(`:`)}function v4(e){let t=new Map;for(let n of e){n.type===`agent.turn`&&t.set(n.id,n);for(let[e,r]of v4(n.children))t.set(e,r)}return t}function y4(e,t){let n=[];for(let r of e)r.type!==`agent.turn`&&n.push({node:r,turnId:t}),n.push(...y4(r.children,r.type===`agent.turn`?r.id:t));return n}function jVe(e,t){let n;switch(e.type){case`user.message`:n={row:WVe(e),turnId:t};break;case`assistant.message`:n={row:GVe(e),turnId:t};break;case`model.reasoning`:n={row:KVe(e),turnId:t};break;case`tool.call`:n=qVe(e,t);break;case`tool.result`:n=YVe(e,t);break;case`agent.delegation`:n={row:ZVe(e),turnId:t};break;case`agent.async`:n={row:QVe(e),turnId:t};break;case`yielded.run`:n={row:$Ve(e),turnId:t};break;case`execution.command`:n={row:tHe(e),turnId:t};break;case`execution.compaction`:n={row:eHe(e),turnId:t};break;case`error`:n={row:dHe(e),turnId:t};break;case`agent.turn`:n={row:{id:e.id,kind:`error`,status:`neutral`,lines:[],sourceNodeIds:[e.id]},turnId:t}}return{...n,row:{...n.row,id:MVe(e),intent:e.intent,...UVe(e)}}}function MVe(e){if(e.type===`tool.call`||e.type===`tool.result`||e.type===`agent.delegation`){if(e.toolCallId)return QX(e.id)?.qualifier?`terminal:${e.id}`:`terminal:tool:${e.toolCallId}`;if(e.type===`agent.delegation`&&e.linkedPiboSessionId)return`terminal:delegation:${e.linkedPiboSessionId}`}if((e.type===`agent.async`||e.type===`yielded.run`)&&e.runId)return`terminal:run:${e.runId}`;if(e.type===`assistant.message`){let t=b4(e.stableKey,`assistant:`);if(t)return`terminal:assistant:${t}`}if(e.type===`model.reasoning`){let t=b4(e.stableKey,`reasoning:`);if(t)return`terminal:reasoning:${t}`}return e.id}function b4(e,t){if(!e?.startsWith(t))return;let n=e.slice(t.length);return n&&n!==`undefined`?n:void 0}function NVe(e){let t=[],n=new Map;for(let r of e){let e=n.get(r.row.id);if(e===void 0){n.set(r.row.id,t.length),t.push(r);continue}let i=t[e];t[e]={...r,turnId:r.turnId??i.turnId,row:{...i.row,...r.row,sourceNodeIds:[...new Set([...i.row.sourceNodeIds,...r.row.sourceNodeIds])],intent:r.row.intent??i.row.intent,input:r.row.input??i.row.input,output:r.row.output??i.row.output,error:r.row.error??i.row.error,payloadRefs:{...i.row.payloadRefs,...r.row.payloadRefs},imagePreviews:BVe(i.row.imagePreviews,r.row.imagePreviews)}}}return PVe(t)}function PVe(e){let t=new Map;for(let n=0;n<e.length;n+=1){let r=e[n].row,i=IVe(r)?`canonical`:LVe(r)?`fallback`:void 0,a=zVe(r.id);if(!i||a===void 0||typeof r.output!=`string`)continue;let o=`${a}\0${r.output}`,s=t.get(o)??{canonical:[],fallback:[]};s[i].push(n),t.set(o,s)}let n=[...e],r=new Set;for(let e of t.values()){if(e.canonical.length!==1||e.fallback.length!==1)continue;let t=e.canonical[0],i=e.fallback[0],a=n[t],o=n[i];RVe(a.row,o.row)&&(n[t]=FVe(a,o),r.add(i))}return n.filter((e,t)=>!r.has(t))}function FVe(e,t){return{...t,...e,turnId:e.turnId??t.turnId,row:{...t.row,...e.row,sourceNodeIds:[...new Set([...e.row.sourceNodeIds,...t.row.sourceNodeIds])],completedAt:e.row.completedAt??t.row.completedAt,durationMs:e.row.durationMs??t.row.durationMs,payloadRefs:{...t.row.payloadRefs,...e.row.payloadRefs}}}}function IVe(e){let t=e.eventId;return e.kind===`message.assistant`&&e.status===`done`&&e.orderSource===`event-log`&&t!==void 0&&!t.startsWith(`native-history-group:`)}function LVe(e){return e.kind===`message.assistant`&&e.status===`done`&&e.orderSource===`transcript`&&e.eventId?.startsWith(`native-history-group:`)===!0}function RVe(e,t){let n=Date.parse(e.completedAt??e.startedAt??``),r=Date.parse(t.completedAt??t.startedAt??``);return Number.isFinite(n)&&Number.isFinite(r)&&Math.abs(n-r)<=EVe}function zVe(e){let t=e.match(/:assistant:(\d+)$/);if(!t)return;let n=Number(t[1]);return Number.isSafeInteger(n)?n:void 0}function BVe(e,t){if(!e?.length)return t?.slice(0,20);if(!t?.length)return e.slice(0,20);let n=new Map(e.map(e=>[e.id,e]));for(let e of t)if(n.set(e.id,{...n.get(e.id),...e}),n.size>=20)break;return[...n.values()]}function VVe(e,t){for(let n of t.values()){if(!n.completedAt)continue;let t=e.filter(e=>e.turnId===n.id).at(-1);t?.row.kind===`message.assistant`&&t.row.status!==`running`&&(t.row.startedAt=n.startedAt,t.row.completedAt=n.completedAt,t.row.durationMs=n.durationMs??HVe(n.startedAt,n.completedAt))}}function HVe(e,t){if(!e||!t)return;let n=new Date(e).getTime(),r=new Date(t).getTime();return Number.isFinite(n)&&Number.isFinite(r)?Math.max(0,r-n):void 0}function UVe(e){return{eventId:e.eventId,runId:e.runId,orderSource:e.source,orderStreamId:e.orderKey?.streamId,orderStreamFrameIndex:e.orderKey?.streamFrameIndex,payloadRefs:e.payloadRefs}}function WVe(e){let t=H4(e.output)||H4(e.summary)||e.title;return{id:e.id,kind:`message.user`,status:z4(e.status),lines:[{prefix:`prompt`,tokens:[V4(t)]}],sourceNodeIds:[e.id],forkEntryId:e.entryId,pendingMessageDelivery:zHe(e),startedAt:e.startedAt,output:t,payloadRefs:e.payloadRefs}}function GVe(e){return{id:e.id,kind:`message.assistant`,status:z4(e.status),lines:[],sourceNodeIds:[e.id],startedAt:e.startedAt,completedAt:e.source===`transcript`||e.source===`product-history`?e.completedAt:void 0,durationMs:e.source===`transcript`||e.source===`product-history`?e.durationMs:void 0,output:H4(e.output)||H4(e.summary)||``,error:e.error,payloadRefs:e.payloadRefs}}function KVe(e){let t=P4(e.output??e.summary);return{id:e.id,kind:`reasoning`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(e.status===`running`?`Thinking`:`Thought`,`amber`,`semibold`)]}],sourceNodeIds:[e.id],markdown:t,payloadRefs:e.payloadRefs}}function qVe(e,t){let n=R4(e.input);if(n&&EHe(e.title))return{row:uHe(e,n),turnId:t,exploring:void 0};if(DHe(e.title))return{row:JVe(e),turnId:t};let r=w4(e);if(r)return{row:x4(e,r),turnId:t,image:r.groupable?r.detail:void 0};let i=M4(e.error??e.output,5,e.error?`red`:`dim`);return{row:{id:e.id,kind:`tool.call`,status:z4(e.status),errorKind:e.status===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(LHe(e.status),B4(e.status),`semibold`),V4(` `)],functionCall:{name:D4(e.title),input:e.input}},...i.lines],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error,previewOmission:N4(i,e.error?`error`:`output`)},turnId:t,exploring:THe(e)}}function JVe(e){let t=z4(e.status),n=kHe(e),r=AHe(e),i=jHe(e),a=MHe(e),o=NHe(e),s=PHe(e.output),c=FHe(e.output),l=[{prefix:`bullet`,tokens:[V4(OHe(e.status,n),B4(e.status),e.status===`error`?`bold`:`semibold`)]}];r?l.push({prefix:`detail`,tokens:[V4(`query: ${JSON.stringify(r)}`,`cyan`)]}):i?.length&&l.push({prefix:`detail`,tokens:[V4(`queries: ${JSON.stringify(i)}`,`cyan`)]}),a&&l.push({prefix:`detail`,tokens:[V4(`page: `,`dim`),L4(a,`Open web page: ${a}`)]}),o&&l.push({prefix:`detail`,tokens:[V4(`find: ${JSON.stringify(o)}`,`cyan`)]}),e.status===`done`&&c!==void 0&&l.push({prefix:`detail`,tokens:[V4(`sources: ${c}`,`dim`)]});let u=s.slice(0,3);for(let e of u)l.push({prefix:`detail`,tokens:[...e.title?[V4(`${e.title}: `,`dim`)]:[],L4(e.url,`Open source: ${e.title??e.url}`)]});let d=Math.max(0,(c??s.length)-u.length);return u.length>0&&d>0&&l.push({prefix:`detail`,tokens:[V4(`+${d} more sources`,`dim`)]}),e.status===`error`&&e.error&&l.push({prefix:`detail`,tokens:[V4(e.error,`red`)]}),{id:e.id,kind:`tool.call`,status:t,errorKind:e.status===`error`?`tool`:void 0,lines:l,sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error}}function x4(e,t){let n=z4(e.status),r=t.path?`Path: ${t.path}`:t.artifactId?`Artifact: ${t.artifactId}`:t.query?`Query: ${t.query}`:t.mimeType?`Type: ${t.mimeType}`:`Image content returned`;return{id:e.id,kind:`tool.image`,status:n,errorKind:e.status===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(t.verb,B4(e.status),`semibold`)]},{prefix:`detail`,tokens:[V4(r,e.status===`error`?`red`:`cyan`)]}],sourceNodeIds:[e.id],input:E4(e.input),output:t.summary,error:e.error,expandable:e.input!==void 0||t.summary!==void 0||!!e.error,imagePreviews:t.previews}}function YVe(e,t){let n=w4(e);return n?{row:x4(e,n),turnId:t,image:n.groupable?n.detail:void 0}:{row:XVe(e),turnId:t}}function XVe(e){let t=M4(e.error??e.output,5,e.error?`red`:`dim`);return{id:e.id,kind:`tool.call`,status:z4(e.status),errorKind:e.status===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(e.status===`error`?`Tool failed`:`Returned`,B4(e.status),`semibold`),V4(` ${D4(e.title)}`)]},...t.lines],sourceNodeIds:[e.id],output:e.output,error:e.error,expandable:e.output!==void 0||!!e.error,previewOmission:N4(t,e.error?`error`:`output`)}}function ZVe(e){let t=H4(U4(e.input)?e.input.subagentName:void 0)||e.summary||e.title,n=F4((U4(e.input)?e.input.arguments:void 0)??e.input),r=n?[{prefix:`detail`,tokens:[V4(n,`dim`)]}]:[];return{id:e.id,kind:`agent.delegation`,status:z4(e.status),errorKind:e.status===`error`?`tool`:void 0,title:e.title,summary:e.summary,lines:[{prefix:`bullet`,tokens:[V4(RHe(e.status),B4(e.status),`semibold`),V4(` ${t}`,`cyan`)]},...r],sourceNodeIds:[e.id],linkedPiboSessionId:e.linkedPiboSessionId,startedAt:e.startedAt,completedAt:e.completedAt,durationMs:e.durationMs,input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error}}function QVe(e){let t=M4(e.error??e.output,5,e.error?`red`:`dim`);return{id:e.id,kind:`agent.async`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(BHe(e.status),B4(e.status),`semibold`),V4(` ${e.title}`,`cyan`)]},...t.lines],sourceNodeIds:[e.id],linkedPiboSessionId:e.linkedPiboSessionId,input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error,previewOmission:N4(t,e.error?`error`:`output`)}}function $Ve(e){let t=M4(e.output,5);return{id:e.id,kind:`yielded.run`,status:z4(e.status),errorKind:e.status===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(e.status===`running`?`Waiting on runs`:`Run update`,B4(e.status),`semibold`),V4(e.summary?` ${e.summary}`:``)]},...t.lines],sourceNodeIds:[e.id],output:e.output,error:e.error,expandable:e.output!==void 0||!!e.error,previewOmission:N4(t,`output`)}}function eHe(e){let t=e.status===`running`?`Compacting`:e.status===`error`?`Compaction failed`:H4(e.summary)||`Compacted`;return{id:e.id,kind:`execution.compaction`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(t,B4(e.status),e.status===`error`?`bold`:`semibold`)]}],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error}}function tHe(e){if(e.title===`status`)return nHe(e);if(e.title===`thinking`)return hHe(e.output)?iHe(e):rHe(e);if(e.title===`fast_mode`)return aHe(e);if(e.title===`login`&&cHe(e.output))return oHe(e);if(e.title===`model`&&lHe(e.output))return sHe(e);R4(e.output)??R4(e.input)??e.title;let t=M4(e.error??e.output,5,e.error?`red`:`dim`,180);return{id:e.id,kind:`execution.command`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(`Command`,`yellow`,`semibold`),V4(` /${e.title}`,`yellow`)]},...t.lines],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error,previewOmission:N4(t,e.error?`error`:`output`)}}function nHe(e){return{id:e.id,kind:`tool.status`,status:z4(e.status),lines:[],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function rHe(e){return{id:e.id,kind:`tool.thinking`,status:z4(e.status),lines:[],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function iHe(e){let t=U4(e.output)?e.output:void 0,n=H4(t?.level),r=t?.changed!==!1,i=t?.supported!==!1,a=i?n?r?`Thinking level set to ${n}.`:`Thinking level is already ${n}.`:`Thinking level updated.`:`Thinking level is not supported by this model.`;return{id:e.id,kind:`execution.command`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(a,i?`green`:`dim`,`semibold`)]}],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function aHe(e){let t=U4(e.output)?e.output:void 0,n=t?.mode===`fast`?`fast`:t?.mode===`normal`?`normal`:void 0,r=t?.changed!==!1,i=t?.supported!==!1,a=i?n===`fast`?r?`Switched to Fast mode.`:`Fast mode is already on.`:n===`normal`?r?`Switched to Normal mode.`:`Normal mode is already on.`:`Fast mode updated.`:`Fast mode is not supported by this model.`;return{id:e.id,kind:`execution.command`,status:z4(e.status),lines:[{prefix:`bullet`,tokens:[V4(a,i?`green`:`dim`,`semibold`)]}],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function oHe(e){return{id:e.id,kind:`tool.login`,status:z4(e.status),lines:[],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function sHe(e){return{id:e.id,kind:`tool.model`,status:z4(e.status),lines:[],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:!1}}function cHe(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return t.action===`show_login_menu`&&Array.isArray(t.providers)}function lHe(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return t.action===`show_model_menu`&&Array.isArray(t.providers)}function uHe(e,t){let n=M4(e.error??e.output,5,e.error?`red`:`dim`,180);return{id:e.id,kind:`execution.command`,status:z4(e.status),errorKind:e.status===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(e.status===`running`?`Running`:`Ran`,B4(e.status),`semibold`),V4(` `),...IHe(t)]},...n.lines],sourceNodeIds:[e.id],input:e.input,output:e.output,error:e.error,expandable:e.input!==void 0||e.output!==void 0||!!e.error,previewOmission:N4(n,e.error?`error`:`output`)}}function dHe(e){return{id:e.id,kind:`error`,status:`error`,errorKind:`system`,lines:[{prefix:`bullet`,tokens:[V4(e.title||`Error`,`red`,`bold`),V4(e.error?` ${e.error}`:``,`red`)]},...fHe(e.input)],sourceNodeIds:[e.id],input:e.input,error:e.error,output:e.output,expandable:e.input!==void 0||e.output!==void 0||!!e.error}}function fHe(e){return U4(e)?[[`Class`,H4(e.errorClass)??H4(e.category)],[`Code`,H4(e.code)??H4(e.providerCode)],[`Origin`,H4(e.origin)],[`Provider`,[H4(e.api),H4(e.provider),H4(e.model)].filter(Boolean).join(` / `)||void 0],[`Retryable`,typeof e.retryable==`boolean`?e.retryable?`yes`:`no`:void 0]].filter(e=>typeof e[1]==`string`&&e[1].length>0).map(([e,t],n)=>({prefix:n===0?`detail`:`continuation`,tokens:[V4(`${e}: `,`dim`),V4(t,`red`)]})):[]}function pHe(e){let t=e.map(e=>e.row.output).filter(mHe).at(-1);return t?e.map(e=>e.row.kind!==`tool.thinking`||!U4(e.row.output)?e:{...e,row:{...e.row,output:{...e.row.output,level:t.level,availableLevels:t.availableLevels,supported:t.supported}}}):[...e]}function mHe(e){return U4(e)&&typeof e.level==`string`&&Array.isArray(e.availableLevels)}function hHe(e){return U4(e)&&e.action===`set_thinking_level`}function gHe(e){let t=[];for(let n=0;n<e.length;n+=1){let r=e[n],i=S4(r);if(!i){t.push(r);continue}let a=[r],o=n+1;for(;o<e.length&&S4(e[o])===i&&e[o].turnId===r.turnId;)a.push(e[o]),o+=1;if(a.length===1){t.push(r);continue}t.push({row:i===`images`?vHe(a):_He(a),turnId:r.turnId}),n=o-1}return t}function S4(e){if(e.image)return`images`;if(e.exploring)return`exploring`}function _He(e){let t=C4(e,`exploring`),n=t.slice(0,6),r=Math.max(0,t.length-n.length),i=e[0]?.row,a=i?.id??`exploring`,o=e[e.length-1]?.row.id??a,s=e.some(e=>e.row.status===`running`)?`running`:e.some(e=>e.row.status===`error`)?`error`:`done`;return{id:`group:exploring:${a}:${o}`,kind:`tool.group.exploring`,status:s,errorKind:s===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(s===`running`?`Exploring`:s===`error`?`Exploring failed`:`Explored`,B4(s),`semibold`)]},...n.map((e,t)=>({prefix:t===0?`detail`:`continuation`,tokens:[V4(e.label,e.status===`error`?`red`:`dim`)]})),...r>0?[{prefix:`continuation`,tokens:[V4(`+${r} more explorations`,`dim`,`normal`,!0)]}]:[]],sourceNodeIds:e.flatMap(e=>e.row.sourceNodeIds),eventId:i?.eventId,runId:i?.runId,orderSource:i?.orderSource,orderStreamId:i?.orderStreamId,orderStreamFrameIndex:i?.orderStreamFrameIndex,detailItems:t,expandable:t.some(e=>e.input!==void 0||e.output!==void 0||!!e.error),previewOmission:r>0?{source:`details`,visibleLineCount:n.length,omittedLineCount:r,totalLineCount:t.length,maxVisibleLineCount:6}:void 0}}function vHe(e){let t=C4(e,`images`),n=t.slice(0,6),r=Math.max(0,t.length-n.length),i=e[0]?.row,a=i?.id??`images`,o=e[e.length-1]?.row.id??a,s=e.some(e=>e.row.status===`running`)?`running`:e.some(e=>e.row.status===`error`)?`error`:`done`;return{id:`group:images:${a}:${o}`,kind:`tool.group.images`,status:s,errorKind:s===`error`?`tool`:void 0,lines:[{prefix:`bullet`,tokens:[V4(s===`running`?`Viewing images`:s===`error`?`Image reads failed`:`Viewed images`,B4(s),`semibold`)]},...n.map((e,t)=>({prefix:t===0?`detail`:`continuation`,tokens:[V4(e.label,e.status===`error`?`red`:`cyan`)]})),...r>0?[{prefix:`continuation`,tokens:[V4(`+${r} more image reads`,`dim`,`normal`,!0)]}]:[]],sourceNodeIds:e.flatMap(e=>e.row.sourceNodeIds),eventId:i?.eventId,runId:i?.runId,orderSource:i?.orderSource,orderStreamId:i?.orderStreamId,orderStreamFrameIndex:i?.orderStreamFrameIndex,detailItems:t,expandable:t.some(e=>e.input!==void 0||e.output!==void 0||!!e.error),imagePreviews:t.flatMap(e=>e.imagePreviews??[]).slice(0,20),previewOmission:r>0?{source:`details`,visibleLineCount:n.length,omittedLineCount:r,totalLineCount:t.length,maxVisibleLineCount:6}:void 0}}function C4(e,t){return e.map(e=>{let n=t===`images`?e.image:e.exploring;return{id:e.row.id,label:n?.label??e.row.lines[0]?.tokens.map(e=>e.text).join(``)??e.row.id,status:e.row.status,input:e.row.input,output:e.row.output,error:e.row.error,payloadRefs:e.row.payloadRefs,linkedPiboSessionId:e.row.linkedPiboSessionId,previewOmission:e.row.previewOmission,imagePreviews:e.row.imagePreviews}})}function w4(e){let t=(e.title??``).trim().toLowerCase(),n=U4(e.input)?e.input:void 0,r=U4(e.output)?e.output:void 0,i=wHe(r,`details`),a=t===`codex_image_generation`?xHe(i)??SHe(n):void 0,o=a?H4(i?.savedPath)??k4(i):k4(n)??k4(i)??k4(r),s=a?H4(i?.artifactId):void 0,c=A4(n),l=T4(e.output).slice(0,20),u=e.payloadRefs?.output,d=Math.min(u?.imageCount??0,20),f=O4(t,[`view_image`,`image`,`screenshot`])||t===`read`&&yHe(o);if(!l.length&&!d&&!f&&!a)return;let p=l.map(e=>e.mimeType).find(e=>!!e),m=Math.max(1,l.length,d),h={type:m>1?`images`:l.length===1?`image`:`image_reference`,toolName:a?e.title:void 0,operation:a,path:o,savedPath:a?o:void 0,artifactId:s,model:a?H4(i?.model):void 0,referencedImageCount:a?j4(i?.referencedImageCount):void 0,query:c,mimeType:p,count:m>1?m:void 0,detail:l.length||d?`Image data hidden in terminal view.`:`Image path only; binary data is hidden in terminal view.`},g=o??s??c??p??`image`,_=a?CHe(e.status,a):bHe(e.status,m),v=l.length?l:Array.from({length:Math.max(1,d)},()=>({mimeType:p})),y=v.map((t,n)=>({id:`${e.id}:image:${n}`,label:v.length>1?`${g} (${n+1}/${v.length})`:g,path:o,artifactId:s,payloadRef:u?.ref,payloadImageIndex:u?n:void 0,traceNodeId:u?u.nodeId??e.id:void 0,generatedToolCallId:a?e.toolCallId:void 0,mimeType:t.mimeType??p}));return{count:m,path:o,artifactId:s,query:c,mimeType:p,verb:_,groupable:!a,summary:h,previews:y,detail:{id:e.id,label:`${_} ${g}`,status:z4(e.status),input:E4(e.input),output:h,error:e.error,imagePreviews:y}}}function yHe(e){return e?/\.(?:png|jpe?g|gif|webp|bmp|avif)$/i.test(e.split(/[?#]/,1)[0]??``):!1}function T4(e,t=0,n=new Set){if(t>5||n.size>=1e3||typeof e!=`object`||!e||n.has(e))return[];if(n.add(e),Array.isArray(e)){let r=[];for(let i of e)if(r.push(...T4(i,t+1,n)),r.length>=20)return r.slice(0,20);return r}let r=e,i=typeof r.type==`string`?r.type.toLowerCase():void 0,a=typeof r.mimeType==`string`?r.mimeType:typeof r.mime_type==`string`?r.mime_type:void 0,o=typeof r.data==`string`||typeof r.image_url==`string`||U4(r.image_url);if((i===`image`||i===`input_image`||i===`output_image`||i===`image_url`)&&(o||a?.startsWith(`image/`))||a?.startsWith(`image/`)&&o)return[{mimeType:a}];let s=[];`content`in r&&s.push(r.content),`message`in r&&s.push(r.message),`result`in r&&s.push(r.result),`output`in r&&s.push(r.output);let c=[];for(let e of s)if(c.push(...T4(e,t+1,n)),c.length>=20)break;return c.slice(0,20)}function E4(e){if(Array.isArray(e))return e.map(E4);if(!U4(e))return e;let t={};for(let[n,r]of Object.entries(e)){if((n===`data`||n===`image_url`)&&typeof r==`string`&&r.length>120){t[n]=`[hidden ${n}]`;continue}t[n]=E4(r)}return t}function bHe(e,t){return e===`running`?t>1?`Viewing images`:`Viewing image`:e===`error`?t>1?`Image reads failed`:`Image read failed`:t>1?`Viewed images`:`Viewed image`}function xHe(e){let t=H4(e?.operation);return t===`generate`||t===`edit`?t:void 0}function SHe(e){if(!e)return;let t=e.referenced_image_paths;return Array.isArray(t)&&t.length>0||j4(e.num_last_images_to_include)!==void 0?`edit`:`generate`}function CHe(e,t){return t===`edit`?e===`running`?`Editing image`:e===`error`?`Image edit failed`:`Edited image`:e===`running`?`Generating image`:e===`error`?`Image generation failed`:`Generated image`}function wHe(e,t){let n=e?.[t];return U4(n)?n:void 0}function THe(e){let t=(e.title??``).trim().toLowerCase(),n=U4(e.input)?e.input:void 0;if(O4(t,[`read`,`open`]))return{id:e.id,label:`Read ${k4(n)??F4(e.input)}`,status:z4(e.status),input:e.input,output:e.output,error:e.error};if(O4(t,[`list`,`ls`,`glob`]))return{id:e.id,label:`List ${k4(n)??F4(e.input)}`,status:z4(e.status),input:e.input,output:e.output,error:e.error};if(O4(t,[`search`,`find`,`grep`,`rg`])){let t=A4(n),r=k4(n);return{id:e.id,label:`Search ${t??F4(e.input)}${r?` in ${r}`:``}`,status:z4(e.status),input:e.input,output:e.output,error:e.error}}}function D4(e){return DVe[e]??e}function O4(e,t){return t.some(t=>e===t||e.startsWith(`${t}_`)||e.endsWith(`_${t}`)||e.includes(t))}function k4(e){if(e)for(let t of[`path`,`file`,`filePath`,`filepath`,`url`,`uri`,`cwd`,`pattern`,`glob`]){let n=H4(e[t]);if(n)return n}}function A4(e){if(e)for(let t of[`query`,`pattern`,`text`,`name`,`q`,`regex`]){let n=H4(e[t]);if(n)return n}}function j4(e){return typeof e==`number`&&Number.isFinite(e)?e:void 0}function M4(e,t,n=`dim`,r=160){let i={lines:[],visibleLineCount:0,omittedLineCount:0,totalLineCount:0,maxVisibleLineCount:t},a=P4(e);if(!a)return i;let o=a.split(/\r?\n/).map(e=>e.trimEnd()).filter((e,t,n)=>e.length>0||n.length===1);if(!o.length)return i;let s=o.slice(0,t),c=Math.max(0,o.length-s.length),l=s.map((e,t)=>({prefix:t===0?`detail`:`continuation`,tokens:[V4(e,n)]}));return c>0&&l.push({prefix:`continuation`,tokens:[V4(`+${c} more lines`,`dim`,`normal`,!0)]}),{lines:l,visibleLineCount:s.length,omittedLineCount:c,totalLineCount:o.length,maxVisibleLineCount:t}}function N4(e,t){if(!(e.omittedLineCount<=0))return{source:t,visibleLineCount:e.visibleLineCount,omittedLineCount:e.omittedLineCount,totalLineCount:e.totalLineCount,maxVisibleLineCount:e.maxVisibleLineCount}}function P4(e){let t=I2(e);if(t!==void 0)return t.trim();if(typeof e==`string`)return e.trim();if(e==null)return``;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function F4(e){return(typeof e==`string`?e:P4(e)).replace(/\s+/g,` `).trim()}function EHe(e){let t=(e??``).trim().toLowerCase();return t===`shell`||t===`bash`||t===`terminal`}function DHe(e){return(e??``).trim().toLowerCase()===`web_search`}function OHe(e,t){return t===`open_page`?e===`running`?`Opening web page`:e===`error`?`Opening web page failed`:`Opened web page`:t===`find_in_page`?e===`running`?`Finding in web page`:e===`error`?`Finding in web page failed`:`Found in web page`:e===`running`?`Searching web`:e===`error`?`Web search failed`:`Searched web`}function kHe(e){let t=U4(e.input)?e.input:void 0,n=U4(e.output)?e.output:void 0;return H4(t?.actionType)??H4(n?.actionType)}function AHe(e){let t=U4(e.input)?e.input:void 0,n=U4(e.output)?e.output:void 0;return H4(t?.query)??H4(n?.query)??H4(e.summary)}function jHe(e){let t=U4(e.input)?e.input:void 0,n=U4(e.output)?e.output:void 0;for(let e of[t?.queries,n?.queries]){if(!Array.isArray(e))continue;let t=[...new Set(e.flatMap(e=>{let t=H4(e)?.trim();return t?[t]:[]}))];if(t.length)return t}}function MHe(e){let t=U4(e.input)?e.input:void 0,n=U4(e.output)?e.output:void 0;return H4(t?.url)??H4(n?.url)}function NHe(e){let t=U4(e.input)?e.input:void 0,n=U4(e.output)?e.output:void 0;return H4(t?.pattern)??H4(n?.pattern)}function PHe(e){if(!U4(e))return[];let t=e.sources??e.citations??e.results;if(!Array.isArray(t))return[];let n=new Map;for(let e of t){let t=U4(e)?e:void 0,r=I4(typeof e==`string`?e:H4(t?.url)??H4(t?.href)??H4(t?.link),!0);if(!r)continue;let i=H4(t?.title)?.trim()??H4(t?.name)?.trim(),a=n.get(r);(!a||!a.title&&i)&&n.set(r,{url:r,...i?{title:i}:{}})}return[...n.values()]}function FHe(e){if(!U4(e))return;let t=e.sourceCount??e.sourcesCount;if(typeof t==`number`&&Number.isFinite(t))return t;let n=e.sources??e.citations??e.results;return Array.isArray(n)?n.length:void 0}function I4(e,t=!1){if(e)try{let n=new URL(e.trim());return n.protocol!==`https:`&&n.protocol!==`http:`||n.username||n.password?void 0:(t&&(n.hash=``),n.href)}catch{return}}function L4(e,t){let n=I4(e);return{...V4(e,n?`blue`:`dim`),...n?{href:n,ariaLabel:t}:{}}}function R4(e){if(U4(e))for(let t of[`cmd`,`command`,`script`]){let n=H4(e[t]);if(n)return n}}function IHe(e){let t=e.match(/\s+|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|[^\s]+/g)??[e],n=!1;return t.map(e=>/^\s+$/.test(e)?V4(e):/^(?:&&|\|\||[|;<>]|2>&1)$/.test(e)?V4(e,`red`,`semibold`):e.startsWith(`-`)?V4(e,`magenta`):e.startsWith(`$`)||e.includes(`=`)?V4(e,`yellow`):/^['"]/.test(e)?V4(e,`green`):n?e.includes(`/`)||e.startsWith(`.`)?V4(e,`cyan`):V4(e,`default`):(n=!0,V4(e,`green`,`semibold`)))}function LHe(e){return e===`running`?`Calling`:e===`error`?`Call failed`:`Called`}function RHe(e){return e===`running`?`Spawning`:e===`error`?`Spawn failed`:`Spawned`}function zHe(e){if(e.status===`running`){if(e.id.startsWith(`event:message_steered:`))return`steer`;if(e.id.startsWith(`event:message_queued:`))return`queue`}}function BHe(e){return e===`running`?`Waiting for`:`Finished waiting for`}function z4(e){return e===`running`?`running`:e===`error`?`error`:`done`}function B4(e){return e===`running`?`cyan`:e===`error`?`red`:e===`done`?`green`:`default`}function V4(e,t=`default`,n=`normal`,r=!1){return{text:e,tone:t,weight:n,italic:r}}function H4(e){return typeof e==`string`&&e.trim().length?e:void 0}function U4(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function VHe(e){if(!e)return;let t;if(typeof e==`string`)try{t=JSON.parse(e)}catch{return}else typeof e==`object`&&!Array.isArray(e)&&(t=e);if(!t)return;let n=typeof t.contextUsage==`object`&&t.contextUsage!==null?t.contextUsage:void 0,r=typeof t.providerUsage==`object`&&t.providerUsage!==null?t.providerUsage:void 0,i=Array.isArray(r?.limits)?r.limits.filter(e=>!!e&&typeof e==`object`&&!Array.isArray(e)).map(e=>{let t=typeof e.usedPercent==`number`?e.usedPercent:void 0,n=typeof e.remainingPercent==`number`?e.remainingPercent:t===void 0?0:Math.max(0,Math.min(100,100-t));return{label:typeof e.label==`string`?e.label:`limit`,usedPercent:t??0,remainingPercent:n,resetsAt:typeof e.resetsAt==`string`?e.resetsAt:void 0}}):[],a=typeof r?.credits==`object`&&r.credits!==null?r.credits:void 0;return{piboSessionId:typeof t.piboSessionId==`string`?t.piboSessionId:void 0,queuedMessages:typeof t.queuedMessages==`number`?t.queuedMessages:void 0,processing:typeof t.processing==`boolean`?t.processing:void 0,streaming:typeof t.streaming==`boolean`?t.streaming:void 0,enabledTools:Array.isArray(t.enabledTools)?t.enabledTools.filter(e=>typeof e==`string`):Array.isArray(t.activeTools)?t.activeTools.filter(e=>typeof e==`string`):void 0,activeTools:Array.isArray(t.activeTools)?t.activeTools.filter(e=>typeof e==`string`):void 0,cwd:typeof t.cwd==`string`?t.cwd:void 0,disposed:typeof t.disposed==`boolean`?t.disposed:void 0,contextUsage:n?{tokens:typeof n.tokens==`number`?n.tokens:void 0,contextWindow:typeof n.contextWindow==`number`?n.contextWindow:void 0,percent:typeof n.percent==`number`?n.percent:void 0}:void 0,providerUsage:r&&(i.length>0||a)?{provider:typeof r.provider==`string`?r.provider:void 0,planType:typeof r.planType==`string`?r.planType:void 0,fetchedAt:typeof r.fetchedAt==`string`?r.fetchedAt:void 0,limits:i,credits:a?{unlimited:a.unlimited===!0,balance:typeof a.balance==`string`?a.balance:void 0}:void 0}:void 0}}function W4(e,t,n){return n?{id:e,label:t,value:n}:void 0}function G4({field:e,icon:t}){let n=t===`session`?Ec:xc;return(0,W.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px]`,"data-shared-status-field":e.id,children:[(0,W.jsx)(n,{size:11,className:`shrink-0 text-[#737373]`}),(0,W.jsxs)(`span`,{className:`shrink-0 text-[#737373]`,children:[e.label,`:`]}),(0,W.jsx)(`span`,{className:`truncate font-mono ${e.id===`session`?`text-[#38bdf8]`:`text-[#d4d4d4]`}`,children:e.value})]})}function K4({progress:e,label:t}){let n=e.percent??0,r=e.tone===`red`?`bg-[#ef4444]`:e.tone===`yellow`?`bg-[#facc15]`:e.tone===`cyan`?`bg-[#38bdf8]`:`bg-[#22c55e]`;return(0,W.jsxs)(`div`,{className:`mt-3 space-y-1`,"data-shared-progress":e.id,"data-shared-progress-state":e.state,children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between text-[11px]`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:t??e.label}),(0,W.jsx)(`span`,{className:`font-mono text-[#d4d4d4]`,children:e.state===`available`?e.text:`unavailable`})]}),e.state===`available`?(0,W.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded-full bg-[#2a2a2a]`,children:(0,W.jsx)(`div`,{className:`h-full rounded-full ${r} transition-all`,style:{width:`${Math.min(Math.max(n,0),100)}%`}})}):null]})}function HHe(e){if(!e)return;let t=new Date(e);if(!Number.isNaN(t.getTime()))return t.toLocaleString(void 0,{weekday:`short`,hour:`2-digit`,minute:`2-digit`})}function UHe({row:e,piboSessionId:t}){let[n,r]=(0,U.useState)(null),i=n?.rowId===e.id&&Object.is(n.sourceOutput,e.output)?n.output:e.output,[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(null),d=VHe(i),f=c4(e),p=i===e.output?f:c4({...e,output:i}),m=p?.kind===`status`?p.statusView:void 0,h=async()=>{if(!(!t||s)){c(!0),u(null);try{r({rowId:e.id,sourceOutput:e.output,output:await $l(t)})}catch(e){u(e instanceof Error?e.message:String(e))}finally{c(!1)}}},g=(0,W.jsx)(`button`,{type:`button`,disabled:!t||s,onClick:()=>void h(),className:`ml-auto inline-flex h-7 w-7 shrink-0 items-center justify-center border border-[#3a3a3a] bg-[#151f24] text-[#737373] transition hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:cursor-not-allowed disabled:opacity-50`,"aria-label":`Refresh status`,"aria-busy":s,title:s?`Refreshing status`:`Refresh status`,"data-pibo-debug":`terminal-status-refresh`,children:(0,W.jsx)(il,{size:13,className:s?`animate-spin`:void 0})});if(!d||!m)return(0,W.jsxs)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-pibo-component":`TerminalStatusCard`,"data-pibo-debug":`terminal-status-card`,"data-shared-terminal-card":`status`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`div`,{className:`text-[#737373]`,children:`Status (unparseable)`}),g]}),l?(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-[#ef4444]`,role:`alert`,children:l}):null]});let _=new Map(m.fields.map(e=>[e.id,e])),v=_.get(`session`)??W4(`session`,`Session`,d.piboSessionId),y=_.get(`cwd`)??W4(`cwd`,`CWD`,d.cwd),b=m.progress.find(e=>e.id===`context`),x=m.progress.filter(e=>e.id.startsWith(`provider`)),S=d.providerUsage?.limits.length?d.providerUsage.limits:void 0,C=d.enabledTools??d.activeTools??[],w=m.fields.filter(e=>!new Set([`session`,`cwd`]).has(e.id)),T=d.providerUsage?.provider?`${d.providerUsage.provider} quota`:`Provider quota`;return(0,W.jsxs)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-pibo-component":`TerminalStatusCard`,"data-pibo-debug":`terminal-status-card`,"data-shared-terminal-card":`status`,children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center gap-2`,children:[(0,W.jsx)(Es,{size:14,className:`text-[#22c55e]`}),(0,W.jsx)(`span`,{className:`font-semibold text-[#d4d4d4]`,children:m.title}),g]}),l?(0,W.jsx)(`div`,{className:`mb-2 text-[11px] text-[#ef4444]`,role:`alert`,children:l}):null,(0,W.jsxs)(`div`,{className:`grid grid-cols-1 gap-1.5 sm:grid-cols-2`,children:[v?(0,W.jsx)(G4,{field:v,icon:`session`}):null,y?(0,W.jsx)(G4,{field:y,icon:`cwd`}):null,w.slice(0,8).map(e=>(0,W.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px]`,"data-shared-status-field":e.id,children:[(0,W.jsxs)(`span`,{className:`shrink-0 text-[#737373]`,children:[e.label,`:`]}),(0,W.jsx)(`span`,{className:`truncate font-mono text-[#d4d4d4]`,children:e.value})]},e.id))]}),(0,W.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:[d.processing?(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1 border border-[#1f4960] px-1.5 py-0.5 text-[11px] text-[#38bdf8]`,children:[(0,W.jsx)(cc,{size:10}),` Processing`]}):null,d.streaming?(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1 border border-[#1f4960] px-1.5 py-0.5 text-[11px] text-[#38bdf8]`,children:[(0,W.jsx)(Es,{size:10}),` Streaming`]}):null,typeof d.queuedMessages==`number`&&d.queuedMessages>0?(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1 border border-[#3a3a3a] px-1.5 py-0.5 text-[11px] text-[#d4d4d4]`,children:[(0,W.jsx)(Ac,{size:10}),` Queued: `,d.queuedMessages]}):null,d.disposed?(0,W.jsx)(`span`,{className:`inline-flex items-center gap-1 border border-[#5f2222] px-1.5 py-0.5 text-[11px] text-[#ef4444]`,children:`Disposed`}):null]}),b?(0,W.jsx)(K4,{progress:b,label:`Context Usage`}):null,x.length?(0,W.jsxs)(`div`,{className:`mt-3 space-y-1.5 border-t border-[#2a2a2a] pt-2`,"data-shared-provider-progress":x.length,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px] text-[#737373]`,"data-shared-status-field":`provider-quota`,children:[(0,W.jsx)(Sc,{size:11}),(0,W.jsxs)(`span`,{children:[T,d.providerUsage?.planType?` (${d.providerUsage.planType})`:``]})]}),S?S.map(e=>{let t=HHe(e.resetsAt);return(0,W.jsxs)(`div`,{className:`space-y-1`,"data-shared-progress":`provider-limit:${e.label}`,"data-shared-progress-state":`available`,children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-[11px]`,children:[(0,W.jsx)(`span`,{className:`text-[#a3a3a3]`,children:e.label}),(0,W.jsxs)(`span`,{className:`shrink-0 font-mono text-[#d4d4d4]`,children:[e.remainingPercent.toFixed(0),`% left`,t?` · resets ${t}`:``]})]}),(0,W.jsx)(`div`,{className:`h-1.5 w-full overflow-hidden rounded-full bg-[#2a2a2a]`,children:(0,W.jsx)(`div`,{className:`h-full rounded-full bg-[#38bdf8] transition-all`,style:{width:`${Math.min(Math.max(e.remainingPercent,0),100)}%`}})})]},`${e.label}-${e.resetsAt??``}`)}):x.map(e=>(0,W.jsx)(K4,{progress:e},e.id)),d.providerUsage?.credits?(0,W.jsxs)(`div`,{className:`text-[11px] text-[#a3a3a3]`,"data-shared-status-field":`provider-credits`,children:[`Credits: `,d.providerUsage.credits.unlimited?`unlimited`:d.providerUsage.credits.balance??`available`]}):null]}):null,m.warnings.length||m.errors.length?(0,W.jsxs)(`div`,{className:`mt-3 space-y-1 border-t border-[#2a2a2a] pt-2`,children:[m.warnings.map((e,t)=>(0,W.jsxs)(`div`,{"data-shared-status-warning":!0,className:`text-[11px] text-[#facc15]`,children:[`⚠ `,e]},`warning-${t}`)),m.errors.map((e,t)=>(0,W.jsxs)(`div`,{"data-shared-status-error":!0,className:`text-[11px] text-[#ef4444]`,children:[`✕ `,e]},`error-${t}`))]}):null,C.length>0?(0,W.jsxs)(`div`,{className:`mt-3`,children:[(0,W.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`flex items-center gap-1.5 text-[11px] text-[#737373] hover:text-[#d4d4d4]`,children:[(0,W.jsx)(`span`,{className:`text-[#d4d4d4]`,children:a?`▾`:`▸`}),(0,W.jsxs)(`span`,{children:[`Enabled tools (`,C.length,`)`]})]}),a?(0,W.jsx)(`div`,{className:`mt-1.5 flex flex-wrap gap-1`,children:C.map(e=>(0,W.jsx)(`span`,{className:`inline-block rounded-sm border border-[#2a2a2a] bg-[#0b0b0b] px-1.5 py-0.5 font-mono text-[11px] text-[#a3a3a3]`,children:e},e))}):null]}):null]})}function WHe(e){let t;if(typeof e==`string`)try{t=JSON.parse(e)}catch{return}else e&&typeof e==`object`&&!Array.isArray(e)&&(t=e);if(t)return{level:typeof t.level==`string`?t.level:void 0,availableLevels:Array.isArray(t.availableLevels)?t.availableLevels.filter(e=>typeof e==`string`):[],supported:typeof t.supported==`boolean`?t.supported:void 0}}function GHe(e){return rJ.includes(e)?e:void 0}function KHe({row:e,onLevelSelect:t}){let n=WHe(e.output);return n?(0,W.jsxs)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-shared-terminal-card":`thinking`,children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center gap-2`,children:[(0,W.jsx)(zs,{size:14,className:`text-[#f59e0b]`}),(0,W.jsx)(`span`,{className:`font-semibold text-[#d4d4d4]`,children:`Thinking`}),n.supported===!1?(0,W.jsxs)(`span`,{className:`ml-auto inline-flex items-center gap-1 border border-[#5f2222] px-1.5 py-0.5 text-[11px] text-[#ef4444]`,children:[(0,W.jsx)(Al,{size:10}),` Unsupported`]}):(0,W.jsxs)(`span`,{className:`ml-auto inline-flex items-center gap-1 border border-[#1f4960] px-1.5 py-0.5 text-[11px] text-[#38bdf8]`,children:[(0,W.jsx)(Us,{size:10}),` Supported`]})]}),(0,W.jsxs)(`div`,{className:`grid gap-1.5 text-[11px]`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[#737373]`,children:`Current:`}),(0,W.jsx)(`span`,{className:`font-mono font-semibold text-[#f59e0b]`,children:n.level??`unknown`})]}),n.availableLevels.length?(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,W.jsx)(`span`,{className:`mr-1 text-[#737373]`,children:`Available:`}),n.availableLevels.map(e=>{let r=GHe(e),i=n.supported===!1||!r||!t;return(0,W.jsx)(`button`,{type:`button`,disabled:i,onClick:()=>{r&&t?.(r)},className:`border bg-transparent px-1.5 py-0.5 ${e===n.level?`border-[#f59e0b] text-[#f59e0b]`:`border-[#3a3a3a] text-[#d4d4d4]`} ${i?`cursor-default`:`cursor-pointer`}`,children:e},e)})]}):null,(0,W.jsxs)(`div`,{className:`text-[#737373]`,children:[`Click a level or use `,(0,W.jsx)(`span`,{className:`text-[#f59e0b]`,children:`/thinking <level>`}),`.`]})]})]}):(0,W.jsx)(`div`,{className:`mt-2 border border-[#2a2a2a] bg-[#111111] px-3 py-2 text-[12px] text-[#d4d4d4]`,"data-shared-terminal-card":`thinking`,children:(0,W.jsx)(`div`,{className:`text-[#737373]`,children:`Thinking (unparseable)`})})}var q4=`pibo.chat.terminalReadingPosition.`;function qHe(e){if(e)try{return JHe(sessionStorage.getItem(q4+e))}catch{return}}function J4(e,t){if(e)try{let n=q4+e;t?sessionStorage.setItem(n,JSON.stringify(t)):sessionStorage.removeItem(n)}catch{}}function JHe(e){if(e)try{let t=JSON.parse(e);return typeof t.rowId!=`string`||!t.rowId||typeof t.offsetPx!=`number`||!Number.isFinite(t.offsetPx)?void 0:{rowId:t.rowId,offsetPx:t.offsetPx}}catch{return}}var YHe=180,XHe=4800,ZHe=800,QHe=20,$He={index:`LAST`,align:`end`},eUe={top:2400,bottom:2400},tUe=84,nUe=6;function rUe({traceView:e,isLoading:t,terminalFullscreen:n,showThinking:r,expandThinking:i,toolDisplayMode:a,sessionAgentProfile:o,sessionActiveModel:s,sessionRuntimeBinding:c,selectedSessionStatus:l,selectedSessionSignal:u,signals:d,sessionGoal:f,sessionBreadcrumbs:p,originSession:m,derivedSessions:h,agentProfiles:g,sessionProfileChangeDisabled:_,onSessionAgentProfileChange:v,onFork:y,onOpenSession:b,onLoadOlderTracePage:x,hasOlderTraceEvents:S,isFetchingOlderTracePage:C,onThinkingLevelChange:w,onModelChanged:T}){let E=(0,U.useMemo)(()=>OVe(e,{showThinking:r,toolDisplayMode:a}),[r,a,e]),D=(0,U.useMemo)(()=>E.map(e=>e.id),[E]),O=e?.piboSessionId??``,[k,A]=(0,U.useState)(),j=(0,U.useRef)(void 0),[M,N]=(0,U.useState)(new Set),[P,F]=(0,U.useState)(null),I=(0,U.useMemo)(()=>[E,M],[M,E]),[L,R]=(0,U.useState)(null),z=(0,U.useRef)({}),B=(0,U.useRef)(!1),ee=(0,U.useRef)(!1),te=(0,U.useRef)(!1),ne=(0,U.useRef)(!1),re=(0,U.useRef)(!1),V=(0,U.useRef)(()=>void 0),ie=E.filter(e=>e3(e,`user`)).length,ae=E.filter(e=>e3(e,`tool`)).length,oe=E.filter(e=>e3(e,`system`)).length,se=TBe({signal:u,fallbackStatus:l,fallbackTurnStartedAt:(0,U.useMemo)(()=>AVe(e),[e])}),ce=se.activeTurnStartedAt,le=se.isTurnActive,ue=!!M2(f);(0,U.useLayoutEffect)(()=>{!O||!e||!MX()||APe(O,`compact-terminal:render`,E,{traceVersion:e.version,latestStreamId:e.latestStreamId,lastRawEventId:e.rawEvents.at(-1)?.id,selectedSessionStatus:l})},[O,E,l,e]);let de=(0,U.useCallback)(()=>{if(!S||C||te.current)return;if(ne.current){re.current=!0;return}te.current=!0,ee.current=!1,V.current();let e=x?.();Promise.resolve(e).then(()=>{te.current=!1},()=>{te.current=!1})},[S,C,x]),fe=(0,U.useCallback)(()=>{B.current&&ee.current&&de()},[de]),pe=(0,U.useCallback)(()=>{B.current&&(!ee.current&&!ne.current||de())},[de]),me=(0,U.useCallback)(e=>{ne.current=e,!(e||!re.current)&&(re.current=!1,de())},[de]),he=(0,U.useCallback)((e,t)=>{SUe(e,t)&&(ee.current=!0)},[]),ge=(0,U.useCallback)(e=>{!B.current||a!=="default"||e.startIndex<=QHe&&fe()},[fe,a]),_e=(0,U.useCallback)(e=>{O&&J4(O,e?{rowId:e.key,offsetPx:e.offset}:void 0)},[O]),ve=a==="default"?XHe:ZHe,ye=Pze({itemCount:E.length,itemKeys:D,isPrepending:C,resetKey:e?.piboSessionId,contentKey:I,atBottomThreshold:YHe,nearTopThreshold:ve,onAtTop:pe,onNearTop:fe,onUserScrollIntent:he,onScrollbarDragChange:me,onVisibleAnchorChange:_e});V.current=ye.prepareForPrepend,(0,U.useEffect)(()=>{j.current=void 0,te.current=!1,ne.current=!1,re.current=!1,A(O?qHe(O):void 0),F(null)},[O]),(0,U.useEffect)(()=>{if(!O||!k)return;let t=D.indexOf(k.rowId);if(t>=0){let e=requestAnimationFrame(()=>{ye.restoreAnchor({key:k.rowId,dataIndex:t,offset:k.offsetPx})&&A(void 0)});return()=>cancelAnimationFrame(e)}if(!S){J4(O,void 0),A(void 0);return}if(C)return;let n=String(e?.nextBeforeCursor??e?.nextBeforeSequence??E.length),r=`${O}:${n}`;j.current!==r&&(j.current=r,x?.())},[S,C,x,O,k,D,E.length,ye.restoreAnchor,e?.nextBeforeCursor,e?.nextBeforeSequence]),(0,U.useEffect)(()=>{if(!O)return;let e=()=>{ye.captureVisibleAnchor()},t=()=>{document.visibilityState===`hidden`&&e()};return window.addEventListener(`beforeunload`,e),window.addEventListener(`pagehide`,e),document.addEventListener(`visibilitychange`,t),()=>{window.removeEventListener(`beforeunload`,e),window.removeEventListener(`pagehide`,e),document.removeEventListener(`visibilitychange`,t)}},[O,ye.captureVisibleAnchor]),(0,U.useEffect)(()=>{N(e=>uUe(e,E,i))},[i,E]),(0,U.useEffect)(()=>{B.current=!1,ee.current=!1;let e=window.setTimeout(()=>{B.current=!0},250);return()=>window.clearTimeout(e)},[e?.piboSessionId]),(0,U.useEffect)(()=>{let e=new Set(E.map(e=>e.id));R(t=>t&&e.has(t)?t:null);for(let t of[`system`,`tool`,`user`]){let n=z.current[t];n&&!e.has(n)&&delete z.current[t]}},[E]);let be=(0,U.useCallback)(e=>{let t=dUe(E,e,z.current[e]);t&&(z.current[e]=t.row.id,R(t.row.id),ye.scrollToIndex(t.index,`start`,`fast-smooth`,{fromIndex:t.fromIndex,stagingAlign:e===`tool`?`end`:void 0}),fUe(t.row.id))},[E,ye]),xe=e=>{e.expandable&&N(t=>{let n=new Set(t);return n.has(e.id)?n.delete(e.id):n.add(e.id),n})},Se=(0,U.useCallback)(e=>{let t=Q4(e);t.length&&F({images:t,index:0})},[]),Ce=(0,U.useCallback)((t,n)=>(0,W.jsx)(`div`,{className:`px-4`,children:(0,W.jsx)(aUe,{row:n,expanded:M.has(n.id),focused:L===n.id,piboSessionId:e?.piboSessionId??``,onToggle:()=>xe(n),onFork:y,onOpenSession:b,onThinkingLevelChange:w,onModelChanged:T,onViewImages:Se,signals:d})}),[M,L,y,T,b,w,Se,d,e?.piboSessionId]),we=(0,U.useMemo)(()=>({Footer:le||ue?()=>(0,W.jsx)(n3,{startedAt:ce,isWorking:le,goal:f}):void 0}),[ce,le,f,ue]);return(0,W.jsxs)(`section`,{className:`relative min-w-0 flex-1 flex flex-col overflow-hidden bg-[#0b0b0b] text-[#d4d4d4]`,"data-pibo-component":`CompactTerminalSessionView`,"data-pibo-debug":`compact-terminal-session-view`,"data-pibo-session-id":e?.piboSessionId??void 0,"data-pibo-terminal-fullscreen":n?`true`:`false`,"data-pibo-trace-has-older":e?.hasOlderEvents===!0?`true`:`false`,"data-pibo-trace-next-before":e?.nextBeforeCursor??e?.nextBeforeSequence??``,children:[n?null:(0,W.jsx)(iUe,{errorCount:oe,toolErrorCount:ae,userMessageCount:ie,onNavigate:be,sessionAgentProfile:o,sessionActiveModel:s,sessionRuntimeBinding:c,sessionBreadcrumbs:p,originSession:m,derivedSessions:h,onOpenSession:b}),(0,W.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:e?E.length?(0,W.jsx)(KRe,{ref:ye.virtuosoRef,data:E,firstItemIndex:ye.firstItemIndex,initialTopMostItemIndex:$He,increaseViewportBy:eUe,defaultItemHeight:tUe,className:`min-h-0 h-full overflow-x-hidden font-mono text-[12px] leading-[1.45]`,computeItemKey:(e,t)=>t.id,scrollerRef:ye.scrollerRef,atBottomStateChange:ye.atBottomStateChange,atBottomThreshold:ye.atBottomThreshold,itemsRendered:ye.itemsRendered,rangeChanged:e=>ge(ye.normalizeRange(e)),followOutput:ye.followOutput,totalListHeightChanged:ye.totalListHeightChanged,alignToBottom:!0,components:we,itemContent:Ce}):(0,W.jsx)(l3,{isLoading:t,agentProfiles:g,disabled:_,onSelectAgentProfile:v,message:`No visible trace rows yet.`}):(0,W.jsx)(l3,{isLoading:t,agentProfiles:g,disabled:_,onSelectAgentProfile:v})}),E.length===0&&ue?(0,W.jsx)(n3,{isWorking:!1,goal:f}):null,P?(0,W.jsx)(lUe,{state:P,piboSessionId:O,onClose:()=>F(null),onIndexChange:e=>F(t=>t?{...t,index:Math.min(Math.max(e,0),t.images.length-1)}:null)}):null,ye.isSticky?null:(0,W.jsx)(`button`,{type:`button`,onClick:()=>{J4(O,void 0),ye.stickToBottom(`auto`)},title:`Scroll to latest`,"aria-label":`Scroll to latest`,className:`absolute right-4 bottom-4 z-30 inline-flex h-9 w-9 items-center justify-center rounded-sm border border-[#38bdf8] bg-[#111111]/95 text-[#38bdf8] shadow-lg shadow-black/30 hover:bg-[#161616]`,children:(0,W.jsx)(Ws,{size:18})})]})}function iUe({errorCount:e,toolErrorCount:t,userMessageCount:n,onNavigate:r,sessionAgentProfile:i,sessionActiveModel:a,sessionRuntimeBinding:o,sessionBreadcrumbs:s,originSession:c,derivedSessions:l,onOpenSession:u}){return(0,W.jsxs)(`div`,{"data-pibo-debug":`compact-terminal-header`,className:`border-b border-[#2a2a2a] bg-[#111111] px-4 py-2 text-[11px]`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[i?(0,W.jsx)(s3,{tone:`neutral`,children:i}):null,o?(0,W.jsxs)(s3,{tone:o.state===`missing`||o.state===`error`?`red`:o.state===`unbound`?`amber`:`cyan`,label:`Runtime ${o.runtimeInstanceId} · ${o.state}`,children:[o.runtimeInstanceId,` · `,o.state]}):null,a?(0,W.jsx)(s3,{tone:`purple`,children:a}):null,n>0?(0,W.jsxs)(s3,{tone:`cyan`,label:`${n} user messages · jump to previous user message`,onClick:()=>r(`user`),children:[n,(0,W.jsx)(Uc,{size:12})]}):null,e>0?(0,W.jsxs)(s3,{tone:`red`,label:`${e} errors · jump to previous error`,onClick:()=>r(`system`),children:[e,(0,W.jsx)(nc,{size:12})]}):null,t>0?(0,W.jsxs)(s3,{tone:`amber`,label:`${t} tool call errors · jump to previous tool error`,onClick:()=>r(`tool`),children:[t,(0,W.jsx)(Tc,{size:12})]}):null,c?(0,W.jsxs)(Y4,{onClick:()=>u(c.piboSessionId),children:[`Origin `,c.label]}):null,l.map(e=>(0,W.jsxs)(Y4,{onClick:()=>u(e.piboSessionId),children:[`Derived `,e.label]},e.piboSessionId))]}),s.length?(0,W.jsx)(`div`,{className:`mt-2 flex flex-wrap items-center gap-1 text-[#737373]`,children:s.map((e,t)=>(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[t>0?(0,W.jsx)(Ks,{size:12,className:`text-[#525252]`}):null,(0,W.jsx)(`button`,{type:`button`,onClick:()=>u(e.piboSessionId),className:`hover:text-[#38bdf8]`,children:e.label})]},e.piboSessionId))}):null]})}function Y4({children:e,onClick:t}){return(0,W.jsx)(`button`,{type:`button`,onClick:t,className:`border border-[#3a3a3a] px-2 py-0.5 text-[#38bdf8] hover:border-[#38bdf8]`,children:e})}function aUe({row:e,expanded:t,focused:n,piboSessionId:r,onToggle:i,onFork:a,onOpenSession:o,onThinkingLevelChange:s,onModelChanged:c,onViewImages:l,signals:u}){let d=!t&&mUe(e),f=d?pUe(e):e.lines;return e.kind===`agent.delegation`?(0,W.jsx)(`div`,{className:$4(e,n),"data-pibo-component":`TerminalRow`,"data-pibo-debug":`terminal-row`,"data-pibo-terminal-row":`true`,"data-row-id":e.id,"data-row-kind":e.kind,"data-row-status":e.status,"data-trace-node-id":e.sourceNodeIds.join(` `),"data-event-id":e.eventId,"data-run-id":e.runId,"data-order-source":e.orderSource,"data-order-stream-id":e.orderStreamId,"data-order-frame-index":e.orderStreamFrameIndex,tabIndex:n?0:void 0,"aria-current":n?`true`:void 0,children:(0,W.jsx)(h2,{title:e.title,summary:e.summary,input:e.input,output:e.output,error:e.error,traceStatus:e.status===`neutral`?`done`:e.status,linkedPiboSessionId:e.linkedPiboSessionId,startedAt:e.startedAt,completedAt:e.completedAt,durationMs:e.durationMs,signals:u,onOpenSession:o})}):(0,W.jsxs)(`div`,{className:$4(e,n),"data-pibo-component":`TerminalRow`,"data-pibo-debug":`terminal-row`,"data-pibo-terminal-row":`true`,"data-row-id":e.id,"data-row-kind":e.kind,"data-row-status":e.status,"data-trace-node-id":e.sourceNodeIds.join(` `),"data-event-id":e.eventId,"data-run-id":e.runId,"data-order-source":e.orderSource,"data-order-stream-id":e.orderStreamId,"data-order-frame-index":e.orderStreamFrameIndex,onDoubleClick:e.expandable?t=>{!e.expandable||t3(t)||i()}:void 0,onKeyDown:e.expandable?t=>{!e.expandable||t3(t)||(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),i())}:void 0,role:e.expandable?`button`:void 0,tabIndex:e.expandable||n?0:void 0,"aria-expanded":e.expandable?t:void 0,"aria-current":n?`true`:void 0,children:[(0,W.jsxs)(`div`,{className:`flex gap-3`,children:[(0,W.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,W.jsx)(oUe,{row:e,visibleLines:f,collapseToolCallPreview:d,piboSessionId:r,onThinkingLevelChange:s,onModelChanged:c,onFork:a})}),(0,W.jsx)(cUe,{row:e,onOpenSession:o,onViewImages:l})]}),t?(0,W.jsx)(ABe,{row:e,onOpenSession:o}):null]})}function oUe({row:e,visibleLines:t,collapseToolCallPreview:n,piboSessionId:r,onThinkingLevelChange:i,onModelChanged:a,onFork:o}){return e.kind===`message.assistant`?(0,W.jsxs)(`div`,{className:`ml-[1.9rem] min-w-0`,"data-pibo-component":`TerminalAssistantMessage`,children:[(0,W.jsx)(`div`,{className:`compact-terminal-markdown`,"data-pibo-component":`MarkdownRendererHost`,"data-pibo-markdown-kind":`assistant-message`,children:(0,W.jsx)(fG,{streaming:e.status===`running`,children:typeof e.output==`string`?e.output:``})}),e.status===`running`?null:(0,W.jsx)(Z4,{timestamp:e.completedAt,durationMs:e.durationMs,speechText:typeof e.output==`string`?e.output:void 0,speechScopeKey:`${r}:${e.id}`})]}):e.kind===`message.user`?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(X4,{lines:t,status:e.status,clampPreview:n,singleLine:e.singleLine}),e.pendingMessageDelivery?(0,W.jsx)(x2,{delivery:e.pendingMessageDelivery,className:`ml-[1.9rem] mt-2`}):null,(0,W.jsx)(Z4,{timestamp:e.startedAt,forkEntryId:e.forkEntryId,onFork:o})]}):e.kind===`tool.status`?(0,W.jsx)(UHe,{row:e,piboSessionId:r}):e.kind===`tool.thinking`?(0,W.jsx)(KHe,{row:e,onLevelSelect:i}):e.kind===`tool.login`?(0,W.jsx)(lVe,{row:e,piboSessionId:r}):e.kind===`tool.model`?(0,W.jsx)(pVe,{row:e,piboSessionId:r,onModelChanged:a}):e.kind===`execution.compaction`&&e.status===`running`?(0,W.jsx)(yUe,{}):e.kind===`reasoning`&&e.markdown?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(X4,{lines:t,status:e.status,clampPreview:n,singleLine:e.singleLine}),(0,W.jsx)(`div`,{className:`ml-[1.9rem] min-w-0`,"data-pibo-component":`TerminalReasoningMarkdown`,children:(0,W.jsx)(`div`,{className:`compact-terminal-markdown compact-terminal-reasoning`,"data-pibo-component":`MarkdownRendererHost`,"data-pibo-markdown-kind":`reasoning`,children:(0,W.jsx)(fG,{streaming:e.status===`running`,children:e.markdown})})})]}):(0,W.jsx)(X4,{lines:t,status:e.status,clampPreview:n,singleLine:e.singleLine})}function X4({lines:e,status:t,clampPreview:n,singleLine:r}){return e.map((e,i)=>(0,W.jsx)(zBe,{line:e,status:t,clampLines:r?1:n&&i===0?5:void 0},i))}function Z4({timestamp:e,durationMs:t,forkEntryId:n,onFork:r,speechText:i,speechScopeKey:a}){let o=sUe(e);return!o&&!n&&!i?.trim()?null:(0,W.jsxs)(`div`,{className:`mt-1 flex items-center justify-end gap-1 font-mono text-[10px] tabular-nums text-[#737373]`,"data-pibo-component":`TerminalMessageMetadata`,children:[n&&r?(0,W.jsx)(xBe,{entryId:n,onFork:r}):null,i?.trim()?(0,W.jsx)(b2,{text:i,scopeKey:a}):null,o?(0,W.jsxs)(`span`,{children:[o,t===void 0?null:` · ${_4(t)}`]}):null]})}function sUe(e){if(!e)return;let t=new Date(e);if(Number.isFinite(t.getTime()))return new Intl.DateTimeFormat(void 0,{hour:`2-digit`,minute:`2-digit`,hourCycle:`h23`}).format(t)}function cUe({row:e,onOpenSession:t,onViewImages:n}){let r=Q4(e.imagePreviews??[]);return!e.linkedPiboSessionId&&r.length===0?null:(0,W.jsxs)(`div`,{className:`flex shrink-0 items-start gap-1`,children:[r.length?(0,W.jsxs)(c3,{label:r.length===1?`View image preview`:`View ${r.length} image previews`,onClick:()=>n(r),children:[(0,W.jsx)(Dc,{size:13,"aria-hidden":`true`}),` View`]}):null,e.linkedPiboSessionId?(0,W.jsx)(c3,{label:`Open linked session`,onClick:()=>t(e.linkedPiboSessionId),children:`Open`}):null]})}function lUe({state:e,piboSessionId:t,onClose:n,onIndexChange:r}){let i=e.images[e.index],a=i?bu(i,t)[0]:void 0,[o,s]=(0,U.useState)(`loading`),c=(0,U.useRef)(null),l=e.index>0,u=e.index+1<e.images.length;(0,U.useEffect)(()=>s(a?`loading`:`error`),[i?.id,a]);let d=t=>{t<0||t>=e.images.length||(r(t),window.requestAnimationFrame(()=>c.current?.focus()))};return(0,W.jsx)(AX,{title:`Image preview`,description:`${i?.label??`Image`} · ${e.index+1} of ${e.images.length}`,onClose:n,initialFocusRef:c,onKeyDown:t=>{if(t.key===`ArrowLeft`&&l)d(e.index-1);else if(t.key===`ArrowRight`&&u)d(e.index+1);else if(t.key===`Home`&&l)d(0);else if(t.key===`End`&&u)d(e.images.length-1);else return;t.preventDefault()},closeLabel:`Close image preview`,maxWidthClassName:`max-w-6xl`,children:(0,W.jsxs)(`div`,{ref:c,tabIndex:-1,className:`flex min-h-[12rem] flex-col bg-[#0b0b0b] outline-none sm:min-h-[18rem]`,"data-pibo-component":`TerminalImageDialog`,children:[(0,W.jsxs)(`div`,{className:`relative flex min-h-0 flex-1 items-center justify-center overflow-auto p-2 sm:p-4`,children:[a?(0,W.jsx)(`img`,{src:a,alt:`Tool image: ${i?.label??`image preview`}`,loading:`lazy`,decoding:`async`,onLoad:()=>s(`loaded`),onError:()=>s(`error`),className:`max-h-[calc(100dvh-12rem)] max-w-full object-contain ${o===`loaded`?`block`:`invisible`}`},a):null,o===`loading`?(0,W.jsx)(`div`,{className:`absolute inset-0 grid place-items-center text-xs text-[#a3a3a3]`,role:`status`,children:`Loading image preview…`}):null,o===`error`?(0,W.jsx)(`div`,{className:`absolute inset-0 grid place-items-center px-6 text-center text-xs text-[#f87171]`,role:`alert`,children:`Image preview is unavailable.`}):null]}),(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-t border-[#2a2a2a] px-3 py-2`,children:[(0,W.jsxs)(c3,{label:`Previous image`,onClick:()=>d(e.index-1),disabled:!l,children:[(0,W.jsx)(Gs,{size:14,"aria-hidden":`true`}),` Previous`]}),(0,W.jsxs)(`span`,{className:`text-[11px] tabular-nums text-[#a3a3a3]`,"aria-live":`polite`,children:[e.index+1,` / `,e.images.length]}),(0,W.jsxs)(c3,{label:`Next image`,onClick:()=>d(e.index+1),disabled:!u,children:[`Next `,(0,W.jsx)(Ks,{size:14,"aria-hidden":`true`})]})]})]})})}function Q4(e){return e.filter(e=>!!(e.payloadRef?e.traceNodeId:e.generatedToolCallId||e.path)).slice(0,20)}function $4(e,t=!1){let n=e.kind===`message.user`?`group border-b border-[#141414] bg-[#11a4d4]/10 py-2 last:border-b-0 hover:bg-[#11a4d4]/15`:e.kind===`agent.delegation`?`group border-b border-[#141414] bg-[#f97316]/5 py-2 last:border-b-0`:e.kind===`execution.command`?`group border-b border-[#141414] bg-[#f59e0b]/5 py-2 last:border-b-0 hover:bg-[#f59e0b]/10`:`group border-b border-[#141414] py-2 last:border-b-0 hover:bg-[#161616]`,r=e.expandable||t?` focus:outline-none focus:ring-1 focus:ring-[#38bdf8]/50`:``;return t?`${n}${r} ring-1 ring-[#38bdf8] bg-[#123040]`:`${n}${r}`}function uUe(e,t,n){let r=new Set;for(let i of t)e.has(i.id)&&r.add(i.id),n&&i.kind===`reasoning`&&i.expandable&&r.add(i.id);return xUe(e,r)?e:r}function e3(e,t){return t===`user`?e.kind===`message.user`:e.status===`error`?t===`tool`?e.errorKind===`tool`:e.errorKind!==`tool`:!1}function dUe(e,t,n){let r=e.map((e,t)=>({row:e,index:t})).filter(({row:e})=>e3(e,t));if(!r.length)return;let i=n?e.findIndex(e=>e.id===n):-1,a=i>=0?i:e.length;return{...r.filter(e=>e.index<a).at(-1)??r[r.length-1],fromIndex:a}}function fUe(e){let t=0,n=()=>{let r=Array.from(document.querySelectorAll(`[data-pibo-component="TerminalRow"]`)).find(t=>t.dataset.rowId===e);if(r){r.scrollIntoView({block:`start`,inline:`nearest`,behavior:`smooth`}),r.focus({preventScroll:!0});return}t+=1,t<8&&requestAnimationFrame(n)};requestAnimationFrame(()=>requestAnimationFrame(n))}function pUe(e){return e.kind===`tool.group.exploring`||e.kind===`tool.group.images`?e.lines.slice(0,nUe):e.lines}function mUe(e){return!!e.expandable&&(e.kind===`tool.call`||e.kind===`tool.image`||e.kind===`tool.group.exploring`||e.kind===`tool.group.images`||e.kind===`agent.delegation`||e.kind===`agent.async`||e.kind===`yielded.run`||e.kind===`execution.command`||e.kind===`execution.compaction`)}function t3(e){let t=e.target;if(!(t instanceof Element)||t===e.currentTarget)return!1;let n=t.closest(`button, a, input, textarea, select, summary, [role='button'], [tabindex]:not([tabindex='-1'])`);return!!(n&&n!==e.currentTarget)}var hUe=`Working...`,gUe=33;function n3({startedAt:e,isWorking:t,goal:n}){let r=vUe(t?e:void 0),{chars:i,activeIndex:a}=_Ue(hUe,t),o=M2(n),s=n&&o===`active`?N2(n):void 0,c=[t?`Working`:void 0,o===`active`?`Pursuing Goal`:o===`paused`?`Goal Paused`:void 0,s?`Tokens ${s}`:void 0].filter(Boolean).join(`. `);return(0,W.jsx)(`div`,{className:`border-t border-[#141414] px-4 py-2`,role:`status`,"aria-live":`polite`,"aria-label":c,"data-pibo-component":`TerminalStreamingFooter`,"data-pibo-active-turn-started-at":t?e:void 0,children:(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-baseline justify-between gap-x-4 gap-y-1`,"aria-hidden":`true`,children:[t?(0,W.jsxs)(`div`,{className:`grid min-w-0 flex-1 grid-cols-[1.9rem_minmax(0,1fr)] gap-2 whitespace-pre-wrap break-words`,children:[(0,W.jsx)(`span`,{className:`whitespace-pre text-[#737373]`,children:`•`}),(0,W.jsxs)(`span`,{className:`inline-flex min-w-0 items-baseline gap-2`,children:[r?(0,W.jsx)(`span`,{className:`shrink-0 tabular-nums text-[#737373]`,children:r}):null,(0,W.jsx)(`span`,{className:`compact-terminal-working-scramble`,children:i.map((e,t)=>(0,W.jsx)(`span`,{className:t===a?`compact-terminal-working-scramble-active`:void 0,children:e},t))})]})]}):(0,W.jsx)(`span`,{className:`min-w-0 flex-1`}),(0,W.jsx)(EBe,{goal:n})]})})}function _Ue(e,t){let n=(0,U.useMemo)(()=>Array.from(e),[e]),[r,i]=(0,U.useState)(()=>n),[a,o]=(0,U.useState)(-1);return(0,U.useEffect)(()=>{if(!t||window.matchMedia(`(prefers-reduced-motion: reduce)`).matches){i(n),o(-1);return}let e=0,r=0,a=o3(),s=0;i(i3(n)),o(0);let c=window.setInterval(()=>{if(s>0){s--;return}if(e>=n.length){e=0,r=0,a=o3(),i(i3(n)),o(0);return}let t=e,c=n[t]??` `;if(o(t),r++,r<a){i(e=>r3(e,t,a3(c)));return}i(e=>r3(e,t,c)),e++,r=0,a=o3(),e>=n.length&&(i(n),o(-1),s=18)},55);return()=>window.clearInterval(c)},[t,n]),{chars:r,activeIndex:a}}function r3(e,t,n){let r=[...e];return r[t]=n,r}function i3(e){return e.map(e=>a3(e))}function a3(e){let t=``;do{let e=gUe+Math.floor(Math.random()*94);t=String.fromCharCode(e)}while(t===e);return t}function o3(){return 2+Math.floor(Math.random()*11)}function vUe(e){let t=e?new Date(e).getTime():NaN,[n,r]=(0,U.useState)(()=>Date.now());return(0,U.useEffect)(()=>{if(r(Date.now()),!Number.isFinite(t))return;let e=window.setInterval(()=>r(Date.now()),1e3);return()=>window.clearInterval(e)},[t]),Number.isFinite(t)?_4(Math.max(0,n-t)):void 0}function yUe(){let e=bUe();return(0,W.jsxs)(`div`,{className:`grid grid-cols-[1.9rem_minmax(0,1fr)] gap-2 whitespace-pre-wrap break-words`,children:[(0,W.jsx)(`span`,{className:`whitespace-pre text-[#38bdf8]`,children:`•`}),(0,W.jsxs)(`span`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`font-semibold text-[#38bdf8]`,children:`Compacting`}),(0,W.jsx)(`span`,{className:`text-[#38bdf8]`,children:e})]})]})}function bUe(){let[e,t]=(0,U.useState)(0);return(0,U.useEffect)(()=>{let e=window.setInterval(()=>t(e=>(e+1)%4),400);return()=>window.clearInterval(e)},[]),`.`.repeat(e)}function s3({tone:e,label:t,onClick:n,children:r}){let i=`inline-flex items-center gap-1 border px-2 py-0.5 ${e===`cyan`?`border-[#1f4960] text-[#38bdf8]`:e===`red`?`border-[#5f2222] text-[#ef4444]`:e===`amber`?`border-[#6b4e16] text-[#f59e0b]`:e===`purple`?`border-purple-500/40 text-purple-300`:`border-[#3a3a3a] text-[#d4d4d4]`}`;return n?(0,W.jsx)(`button`,{type:`button`,onClick:n,className:`${i} hover:bg-white/5 focus:outline-none focus:ring-1 focus:ring-[#38bdf8]`,title:t,"aria-label":t,children:r}):(0,W.jsx)(`span`,{className:i,title:t,"aria-label":t,children:r})}function c3({label:e,onClick:t,disabled:n=!1,children:r}){return(0,W.jsx)(`button`,{type:`button`,onClick:t,disabled:n,"aria-label":e,title:e,className:`inline-flex min-h-7 min-w-7 items-center gap-1 border border-[#3a3a3a] px-2 text-[11px] text-[#a3a3a3] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:cursor-not-allowed disabled:opacity-40 disabled:hover:border-[#3a3a3a] disabled:hover:text-[#a3a3a3]`,children:r})}function l3({isLoading:e,agentProfiles:t,disabled:n,onSelectAgentProfile:r,message:i}){return(0,W.jsxs)(`div`,{className:`flex min-h-full flex-col items-center justify-center gap-4 px-6 py-10 text-center text-[12px] text-[#737373]`,children:[(0,W.jsx)(`div`,{children:e?`Loading trace…`:i??`No trace selected.`}),t.length?(0,W.jsx)(`div`,{className:`flex flex-wrap items-center justify-center gap-2`,children:t.map(e=>(0,W.jsx)(`button`,{type:`button`,disabled:n,onClick:()=>r(e.name),className:`border border-[#3a3a3a] px-2 py-1 text-[#d4d4d4] hover:border-[#38bdf8] hover:text-[#38bdf8] disabled:opacity-50`,children:e.name},e.name))}):null]})}function xUe(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function SUe(e,t){return t?t===`away`:e instanceof WheelEvent?e.deltaY<0:e instanceof KeyboardEvent?[`ArrowUp`,`PageUp`,`Home`].includes(e.key):e?.type===`touchmove`}function CUe({traceView:e,isLoading:t,selectedSessionStatus:n,selectedSessionSignal:r,workflowProjectSession:i,workflowLifecycleEvents:a,sessionNodes:o,onOpenSession:s,onRefreshBootstrap:c,onError:l}){let u=i?FUe(i,e,n,r,a??[],o):null;return u?(0,W.jsx)(`section`,{className:`min-w-0 flex-1 overflow-auto bg-[#0b0f14] p-4 text-slate-300`,children:(0,W.jsxs)(`div`,{className:`mx-auto flex max-w-6xl flex-col gap-4`,children:[(0,W.jsx)(wUe,{model:u}),(0,W.jsx)(u3,{}),(0,W.jsx)(TUe,{model:u,onRefreshBootstrap:c,onError:l}),(0,W.jsx)(DUe,{model:u}),(0,W.jsx)(OUe,{model:u,onOpenSession:s}),(0,W.jsx)(kUe,{nodes:u.nodes,edges:u.edges}),(0,W.jsxs)(`div`,{className:`grid gap-4 lg:grid-cols-[minmax(0,1fr)_360px]`,children:[(0,W.jsx)(jUe,{model:u}),(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-4`,children:[(0,W.jsx)(MUe,{model:u}),(0,W.jsx)(NUe,{model:u}),(0,W.jsx)(PUe,{model:u})]})]})]})}):(0,W.jsx)(`section`,{className:`min-w-0 flex-1 overflow-auto bg-[#0b0f14] p-4 text-slate-300`,children:(0,W.jsxs)(`div`,{className:`mx-auto flex max-w-4xl flex-col gap-4`,children:[(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-semibold text-slate-100`,children:[(0,W.jsx)(Ac,{size:16,className:`text-[#11a4d4]`}),`Workflow / XState`]}),(0,W.jsx)(`p`,{className:`mt-2 text-sm text-slate-400`,children:t?`Loading session trace…`:`This session is not linked to a workflow run, so no Workflow/XState projection is available.`})]}),(0,W.jsx)(u3,{})]})})}function wUe({model:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-semibold text-slate-100`,children:[(0,W.jsx)(Ac,{size:16,className:`text-[#11a4d4]`}),`Workflow / XState Projection`]}),(0,W.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2 text-xs`,children:[(0,W.jsx)(N3,{tone:`blue`,children:e.workflowId}),e.workflowRunId?(0,W.jsxs)(N3,{tone:`slate`,children:[`run `,I3(e.workflowRunId)]}):null,(0,W.jsx)(N3,{tone:nWe(e.status),children:e.state})]})]}),(0,W.jsxs)(`div`,{className:`min-w-0 text-right font-mono text-[11px] text-slate-500`,children:[(0,W.jsxs)(`div`,{className:`truncate`,children:[`session `,I3(e.piboSessionId)]}),e.latestStreamId===void 0?null:(0,W.jsxs)(`div`,{children:[`stream `,e.latestStreamId]})]})]}),(0,W.jsx)(`p`,{className:`mt-3 text-sm text-slate-400`,children:`Dedicated Project workflow execution surface. This view derives the current XState-style UI snapshot from project-session workflow linkage and live session state while keeping kernel records as durable truth.`})]})}function u3(){return(0,W.jsx)(`div`,{className:`rounded-sm border border-amber-500/30 bg-amber-500/10 p-4 text-sm`,children:(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-amber-200`,children:[(0,W.jsx)(Cl,{size:14}),`Workflow IR source-of-truth boundary`]}),(0,W.jsx)(`p`,{className:`mt-2 max-w-3xl text-xs leading-5 text-amber-100/80`,children:`Projects inspect configured sessions, workflow runs, and the XState-style projection derived from Pibo Workflow IR. Authoring stays in the Workflows tab; raw XState editing and inline executable code are not exposed here.`})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 flex-wrap gap-2`,children:[(0,W.jsx)(`span`,{className:`rounded border border-amber-500/40 bg-[#0b0f14]/50 px-2 py-1 text-[10px] uppercase tracking-wide text-amber-100/80`,children:`IR: source of truth`}),(0,W.jsx)(`span`,{className:`rounded border border-amber-500/40 bg-[#0b0f14]/50 px-2 py-1 text-[10px] uppercase tracking-wide text-amber-100/80`,children:`XState: projection only`})]})]})})}function TUe({model:e,onRefreshBootstrap:t,onError:n}){let r=e.workflowRunId?g3(e):void 0,i=`${e.workflowId}${e.workflowVersion?`@${e.workflowVersion}`:``}`;return(0,W.jsxs)(`div`,{className:`grid gap-4 lg:grid-cols-3`,"aria-label":`Projects workflow execution shell`,children:[(0,W.jsx)(m3,{title:`Workflow configured-session view`,icon:(0,W.jsx)(Nc,{size:14}),children:(0,W.jsxs)(`div`,{className:`space-y-3 text-xs text-slate-400`,children:[(0,W.jsx)(h3,{label:`selected workflow`,value:i}),(0,W.jsx)(h3,{label:`session state`,value:e.workflowRunId?`started`:`configured/not-started`}),(0,W.jsx)(h3,{label:`input keys`,value:String(e.configuration.inputKeys.length)}),(0,W.jsx)(h3,{label:`prompt overrides`,value:String(e.configuration.promptOverrideNodeIds.length)}),(0,W.jsx)(`p`,{className:`leading-5 text-slate-500`,children:`Saved configuration is reviewed here before Start. Workflow selection and session overrides remain immutable for this configured Project session.`})]})}),(0,W.jsx)(m3,{title:`Workflow run view`,icon:(0,W.jsx)(Es,{size:14}),children:(0,W.jsxs)(`div`,{className:`space-y-3 text-xs text-slate-400`,children:[(0,W.jsx)(h3,{label:`run id`,value:e.workflowRunId?I3(e.workflowRunId):`not started`}),(0,W.jsx)(h3,{label:`status`,value:e.state}),(0,W.jsx)(h3,{label:`current node`,value:r?.label??`none`}),(0,W.jsx)(h3,{label:`output`,value:e.finalOutput?`available`:`empty`}),(0,W.jsx)(h3,{label:`error`,value:e.runtimeErrors.length?`${e.runtimeErrors.length} runtime errors`:e.validationErrors.length?`${e.validationErrors.length} validation diagnostics`:`none`}),(0,W.jsx)(`p`,{className:`leading-5 text-slate-500`,children:`This workflow run view container is the stable Project home for status, current node, output, and error sections.`})]})}),(0,W.jsx)(m3,{title:`Human action area`,icon:(0,W.jsx)(ic,{size:14}),children:(0,W.jsx)(EUe,{model:e,onRefreshBootstrap:t,onError:n})})]})}function EUe({model:e,onRefreshBootstrap:t,onError:n}){let[r,i]=(0,U.useState)({}),[a,o]=(0,U.useState)(null),[s,c]=(0,U.useState)({}),[l,u]=(0,U.useState)({}),d=(e,t)=>{i(n=>({...n,[e]:t}))},f=async(i,a)=>{if(!i.waitTokenId||!a.registered)return;let s=`${i.waitTokenId}:${a.id}`,l=a.kind??`resume`,d;if(l===`resume`){let e=r[i.waitTokenId]??(i.payloadRequirements?.required?`{}`:``);if(e.trim())try{d=JSON.parse(e)}catch{let e=[{code:`WorkflowRuntimeError.invalidHumanActionPayload`,message:`Resume payload must be valid JSON before it can be submitted.`,severity:`error`,path:`$.payload`,hint:`Enter JSON such as {"comment":"Approved"}.`}];c(t=>({...t,[i.waitTokenId]:e})),n?.(`Resume payload must be valid JSON.`);return}}o(s),c(e=>({...e,[i.waitTokenId]:[]}));try{await eVe(e.projectId,e.piboSessionId,{waitTokenId:i.waitTokenId,actionId:a.id,...a.kind?{kind:a.kind}:{},...d===void 0?{}:{payload:d}}),u(e=>({...e,[i.waitTokenId]:`${a.displayName} submitted.`})),n?.(null),await t?.()}catch(e){let t=XUe(e);c(e=>({...e,[i.waitTokenId]:t})),n?.(t[0]?.message??D3(e))}finally{o(null)}};return(0,W.jsxs)(`div`,{className:`space-y-3 text-xs text-slate-400`,children:[e.pendingHumanActions.length?(0,W.jsx)(`div`,{className:`space-y-3`,children:e.pendingHumanActions.map(e=>{let t=[...e.diagnostics,...e.waitTokenId?s[e.waitTokenId]??[]:[]];return(0,W.jsxs)(`div`,{className:`rounded-sm border border-amber-500/40 bg-amber-500/10 p-3 text-amber-100`,"aria-label":`Pending workflow human action wait token`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`font-semibold`,children:e.label}),(0,W.jsx)(`div`,{className:`mt-1 break-words text-[11px] leading-5 text-amber-100/80`,children:e.prompt})]}),(0,W.jsx)(`span`,{className:`shrink-0 rounded border border-amber-400/40 bg-[#0b0f14]/40 px-1.5 py-0.5 font-mono text-[10px] text-amber-100/70`,children:e.waitTokenId?I3(e.waitTokenId):e.source})]}),(0,W.jsxs)(`div`,{className:`mt-2 grid gap-2 text-[11px] text-amber-100/75`,children:[(0,W.jsx)(h3,{label:`human node`,value:e.humanNodeId??`unspecified`}),(0,W.jsx)(h3,{label:`payload`,value:e.payloadRequirements?.description??`No persisted payload schema.`}),e.expiresAt?(0,W.jsx)(h3,{label:`expires`,value:e.expiresAt}):null]}),e.payloadRequirements?.schema?(0,W.jsxs)(`div`,{className:`mt-2 rounded-sm border border-amber-400/25 bg-[#0b0f14]/50 p-2`,children:[(0,W.jsx)(`div`,{className:`mb-1 text-[10px] font-bold uppercase tracking-wider text-amber-100/70`,children:`Resume payload schema`}),(0,W.jsx)(sq,{value:e.payloadRequirements.schema,defaultExpandLevel:1,maxHeight:`10rem`,showControls:!1})]}):null,e.availableActions.some(e=>e.kind===`resume`)?(0,W.jsxs)(`label`,{className:`mt-3 block text-[11px] text-amber-100/80`,children:[(0,W.jsx)(`span`,{className:`mb-1 block font-semibold`,children:`Resume payload JSON`}),(0,W.jsx)(`textarea`,{className:`min-h-20 w-full rounded-sm border border-amber-500/30 bg-[#0b0f14] px-2 py-1.5 font-mono text-[11px] text-amber-50 outline-none focus:border-[#11a4d4]`,value:r[e.waitTokenId??e.id]??(e.payloadRequirements?.required?`{}`:``),onChange:t=>d(e.waitTokenId??e.id,t.target.value),placeholder:`{"comment":"Approved"}`})]}):null,(0,W.jsx)(`div`,{className:`mt-3 flex flex-wrap gap-2`,"aria-label":`Workflow wait token actions`,children:e.availableActions.length?e.availableActions.map(t=>{let n=`${e.waitTokenId}:${t.id}`;return(0,W.jsx)(`button`,{type:`button`,disabled:!e.waitTokenId||!t.registered||a!==null,onClick:()=>void f(e,t),className:`rounded-sm border border-amber-400/40 bg-[#0b0f14]/70 px-2.5 py-1 text-[11px] font-semibold text-amber-100 transition hover:border-[#11a4d4] hover:text-[#8bdcf4] disabled:cursor-not-allowed disabled:opacity-50`,title:t.description??t.id,children:a===n?`Submitting…`:t.displayName},t.id)}):(0,W.jsx)(`span`,{className:`text-amber-100/60`,children:`No registered human actions are available for this wait token.`})}),e.waitTokenId&&l[e.waitTokenId]?(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-emerald-200`,children:l[e.waitTokenId]}):null,t.length?(0,W.jsx)(`div`,{className:`mt-2 space-y-1`,"aria-label":`Human action diagnostics`,children:t.map((e,t)=>(0,W.jsxs)(`div`,{className:`rounded border border-red-400/35 bg-red-500/15 p-2 text-[11px] leading-5 text-red-100`,children:[(0,W.jsx)(`div`,{children:e.message}),(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[10px] text-red-100/70`,children:[e.code,e.path?` · ${e.path}`:``]})]},`${e.code}:${t}`))}):null]},e.id)})}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-3 text-slate-500`,children:`No pending human action. Approval, rejection, resume, and cancel controls render here when a persisted workflow wait token exists.`}),(0,W.jsx)(`p`,{className:`leading-5 text-slate-500`,children:`This human action area lives inside the workflow run context, validates wait-token state and resume payloads, and stays separate from normal Terminal chat controls.`})]})}function DUe({model:e}){let t=e.workflowRunId?g3(e):void 0,n=[...e.runtimeErrors.map(e=>({...e,source:e.source??`runtime`})),...e.validationErrors.map(e=>({...e,source:e.source??`validation`}))].slice(0,8);return(0,W.jsxs)(`section`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4 text-sm`,"aria-label":`Workflow run inspection panel`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(uc,{size:14}),`Workflow run inspection`]}),(0,W.jsx)(`p`,{className:`mt-2 max-w-3xl text-xs leading-5 text-slate-500`,children:`Status, current node, history, attempts, transfers, output, and errors are rendered from Project session and workflow run facts when a run is linked. The XState graph remains a visualization projection only.`})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 flex-wrap gap-2 text-[10px] uppercase tracking-wide`,children:[(0,W.jsx)(`span`,{className:`rounded border border-emerald-500/40 bg-emerald-500/10 px-2 py-1 text-emerald-200`,children:`kernel/run records: truth`}),(0,W.jsx)(`span`,{className:`rounded border border-amber-500/40 bg-amber-500/10 px-2 py-1 text-amber-100`,children:`XState projection only`})]})]}),(0,W.jsxs)(`div`,{className:`mt-4 grid gap-3 lg:grid-cols-3`,children:[(0,W.jsxs)(d3,{title:`Status`,badge:e.state,icon:(0,W.jsx)(Es,{size:14}),children:[(0,W.jsx)(f3,{label:`run id`,value:e.workflowRunId?I3(e.workflowRunId):`not started`}),(0,W.jsx)(f3,{label:`status`,value:e.state}),(0,W.jsx)(f3,{label:`record source`,value:e.workflowRunId?`Project workflow run id`:`no run record yet`})]}),(0,W.jsxs)(d3,{title:`Current node`,badge:t?.status??`none`,icon:(0,W.jsx)(ol,{size:14}),children:[(0,W.jsx)(f3,{label:`node`,value:t?.label??`none`}),(0,W.jsx)(f3,{label:`node id`,value:t?.id??`none`}),(0,W.jsx)(f3,{label:`source`,value:`project/session run cursor`})]}),(0,W.jsx)(d3,{title:`Run history`,badge:`${e.runHistory.length}`,icon:(0,W.jsx)(nee,{size:14}),children:e.runHistory.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:e.runHistory.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsx)(`div`,{className:`min-w-0 truncate font-mono text-xs text-slate-200`,children:I3(e.id)}),(0,W.jsx)(`span`,{className:`rounded border px-1.5 py-0.5 text-[10px] uppercase tracking-wide ${F3(e.status)}`,children:e.status})]}),(0,W.jsxs)(`div`,{className:`mt-1 text-[11px] text-slate-500`,children:[e.currentNodeId?`current ${e.currentNodeId}`:`no current node`,` · `,e.source]}),(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[10px] text-slate-600`,children:[`updated `,e.updatedAt]})]},e.id))}):(0,W.jsx)(p3,{children:e.workflowRunId?`No workflow run history for this selected Project session yet.`:`No current run attempts; this configured Project session has not been started.`})})]}),(0,W.jsxs)(`div`,{className:`mt-3 grid gap-3 lg:grid-cols-2`,children:[(0,W.jsx)(d3,{title:`Node attempts`,badge:`${e.nodeAttempts.length}`,icon:(0,W.jsx)(Nc,{size:14}),children:e.nodeAttempts.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:e.nodeAttempts.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`truncate text-xs font-semibold text-slate-200`,children:e.label}),(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[10px] text-slate-500`,children:[e.nodeId,` · attempt `,e.attempt]})]}),(0,W.jsx)(`span`,{className:`rounded border px-1.5 py-0.5 text-[10px] uppercase tracking-wide ${F3(e.status)}`,children:e.status})]}),(0,W.jsxs)(`div`,{className:`mt-1 text-[11px] text-slate-500`,children:[e.kind,` · `,e.source]})]},e.id))}):(0,W.jsx)(p3,{children:e.workflowRunId?`No node attempts recorded for this workflow run yet.`:`No current node attempts; Start has not created a workflow run.`})}),(0,W.jsx)(d3,{title:`Edge transfers`,badge:`${e.edgeTransfers.length}`,icon:(0,W.jsx)(Cc,{size:14}),children:e.edgeTransfers.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:e.edgeTransfers.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsx)(`div`,{className:`min-w-0 truncate font-mono text-xs text-slate-200`,children:e.edgeId}),(0,W.jsx)(`span`,{className:`rounded border px-1.5 py-0.5 text-[10px] uppercase tracking-wide ${F3(e.status)}`,children:e.status})]}),(0,W.jsxs)(`div`,{className:`mt-1 text-[11px] text-slate-500`,children:[e.source,e.createdAt?` · ${e.createdAt}`:``]})]},e.id))}):(0,W.jsx)(p3,{children:`No edge transfers recorded for this workflow run yet.`})}),(0,W.jsx)(d3,{title:`Output`,badge:e.finalOutput?`available`:`empty`,icon:(0,W.jsx)($s,{size:14}),children:e.finalOutput?(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-2`,children:[(0,W.jsx)(`div`,{className:`mb-2 font-mono text-[10px] text-slate-500`,children:e.finalOutput.source}),(0,W.jsx)(sq,{value:e.finalOutput.value,defaultExpandLevel:1,maxHeight:`12rem`,showControls:!1})]}):(0,W.jsx)(p3,{children:`No workflow output has been recorded for this run yet.`})}),(0,W.jsx)(d3,{title:`Error`,badge:n.length?`${n.length}`:`none`,icon:(0,W.jsx)(Cl,{size:14}),children:n.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:n.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-red-500/35 bg-red-500/10 p-2 text-xs text-red-100`,children:[(0,W.jsx)(`div`,{className:`break-words`,children:e.message}),(0,W.jsxs)(`div`,{className:`mt-1 flex flex-wrap gap-1 font-mono text-[10px] text-red-200/70`,children:[e.code?(0,W.jsx)(`span`,{children:e.code}):null,e.source?(0,W.jsx)(`span`,{children:e.source}):null]})]},e.id))}):(0,W.jsx)(p3,{children:`No workflow run errors are recorded.`})})]})]})}function OUe({model:e,onOpenSession:t}){let n=y3(e.definitionLink);return(0,W.jsxs)(`section`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4 text-sm`,"aria-label":`Workflow navigation links`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(fc,{size:14}),`Workflow navigation links`]}),(0,W.jsx)(`p`,{className:`mt-2 max-w-3xl text-xs leading-5 text-slate-500`,children:`Use these run-view links to move between real nested workflow sessions and the Workflows tab definition. Snapshot-only history is shown when the live definition is deleted or unavailable.`})]}),e.definitionLink.status===`live`&&n?(0,W.jsxs)(`a`,{className:`inline-flex shrink-0 items-center justify-center gap-1 rounded-sm border border-[#11a4d4]/50 px-3 py-1.5 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100`,href:n,children:[(0,W.jsx)(fc,{size:13}),`Open live workflow definition`]}):null]}),(0,W.jsxs)(`div`,{className:`mt-4 grid gap-3 lg:grid-cols-2`,children:[(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0f171e] p-3`,"aria-label":`Nested workflow child session links`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-2`,children:[(0,W.jsx)(`div`,{className:`text-xs font-bold uppercase tracking-wider text-slate-500`,children:`Nested workflow child sessions`}),(0,W.jsx)(`span`,{className:`rounded border border-slate-700 bg-[#0b0f14] px-1.5 py-0.5 font-mono text-[10px] text-slate-400`,children:e.nestedSessionLinks.length})]}),e.nestedSessionLinks.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:e.nestedSessionLinks.map(e=>(0,W.jsx)(`button`,{type:`button`,onClick:()=>t(e.piboSessionId),className:`w-full rounded-sm border border-slate-800 bg-[#0b0f14] p-2 text-left transition hover:border-[#11a4d4]/60 hover:bg-[#102331]`,children:(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`truncate text-xs font-semibold text-slate-200`,children:e.title}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[10px] text-slate-500`,children:I3(e.piboSessionId)})]}),(0,W.jsx)(`span`,{className:`rounded border border-[#11a4d4]/40 bg-[#11a4d4]/10 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-[#8bdcf4]`,children:`open session`})]})},e.piboSessionId))}):(0,W.jsx)(p3,{children:`No nested workflow child sessions are linked under this selected Project session yet.`})]}),(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0f171e] p-3`,"aria-label":`Workflow definition link state`,children:[(0,W.jsx)(`div`,{className:`mb-3 text-xs font-bold uppercase tracking-wider text-slate-500`,children:`Workflow definition link`}),e.definitionLink.status===`live`&&n?(0,W.jsxs)(`div`,{className:`rounded-sm border border-emerald-500/35 bg-emerald-500/10 p-3 text-xs leading-5 text-emerald-100`,children:[(0,W.jsx)(`div`,{className:`font-semibold`,children:`Live workflow definition exists`}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-emerald-100/80`,children:x3(e.definitionLink)}),e.definitionLink.definitionHash?(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[10px] text-emerald-100/60`,children:[`snapshot `,I3(e.definitionLink.definitionHash)]}):null]}):(0,W.jsxs)(`div`,{className:`rounded-sm border border-amber-500/40 bg-amber-500/10 p-3 text-xs leading-5 text-amber-100`,children:[(0,W.jsx)(`div`,{className:`font-semibold`,children:`Definition deleted — snapshot-only definition-deleted state`}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-amber-100/80`,children:x3(e.definitionLink)}),(0,W.jsx)(`div`,{className:`mt-1 text-amber-100/80`,children:e.definitionLink.tombstoneLabel??`Historical run inspection uses the immutable Project session snapshot instead of a broken live definition link.`}),e.definitionLink.definitionHash?(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[10px] text-amber-100/60`,children:[`snapshot `,I3(e.definitionLink.definitionHash)]}):null]})]})]})]})}function d3({title:e,badge:t,icon:n,children:r}){return(0,W.jsxs)(`section`,{className:`min-w-0 rounded-sm border border-slate-800 bg-[#0f171e] p-3`,"aria-label":e,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(`span`,{className:`text-[#11a4d4]`,children:n}),e]}),(0,W.jsx)(`span`,{className:`shrink-0 rounded border border-slate-700 bg-[#0b0f14] px-1.5 py-0.5 font-mono text-[10px] text-slate-400`,children:t})]}),r]})}function f3({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-slate-800/70 py-2 first:pt-0 last:border-b-0 last:pb-0`,children:[(0,W.jsx)(`span`,{className:`text-[10px] uppercase tracking-wide text-slate-500`,children:e}),(0,W.jsx)(`span`,{className:`min-w-0 max-w-[14rem] truncate text-right font-mono text-xs text-slate-300`,title:t,children:t})]})}function p3({children:e}){return(0,W.jsx)(`div`,{className:`rounded-sm border border-dashed border-slate-800 bg-[#0b0f14] p-3 text-xs leading-5 text-slate-500`,children:e})}function m3({title:e,icon:t,children:n}){return(0,W.jsxs)(`section`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4`,"aria-label":e,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(`span`,{className:`text-[#11a4d4]`,children:t}),e]}),n]})}function h3({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-slate-800/70 pb-2 last:border-b-0 last:pb-0`,children:[(0,W.jsx)(`span`,{className:`uppercase tracking-wide text-slate-500`,children:e}),(0,W.jsx)(`span`,{className:`min-w-0 max-w-[12rem] truncate text-right font-mono text-slate-300`,title:t,children:t})]})}function g3(e){return e.nodes.find(e=>e.status===`active`||e.status===`waiting`)??e.nodes[0]}function kUe({nodes:e,edges:t}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0f171e] p-4`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(ol,{size:14}),`Visual State Flow`]}),(0,W.jsx)(`div`,{className:`grid gap-3 md:grid-cols-[1fr_auto_1fr_auto_1fr]`,children:e.map((e,n)=>(0,W.jsx)(AUe,{node:e,edge:t[n]},e.id))})]})}function AUe({node:e,edge:t}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`rounded-sm border p-3 ${P3(e.status)}`,children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,W.jsx)(M3,{status:e.status}),(0,W.jsx)(`div`,{className:`min-w-0 truncate text-sm font-semibold text-slate-100`,children:e.label})]}),(0,W.jsx)(`span`,{className:`rounded border border-slate-700 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-400`,children:e.kind})]}),(0,W.jsx)(`p`,{className:`mt-2 text-xs text-slate-400`,children:e.description})]}),t?(0,W.jsx)(`div`,{className:`hidden items-center justify-center text-center text-[10px] uppercase tracking-wide text-slate-500 md:flex`,children:(0,W.jsxs)(`div`,{children:[(0,W.jsx)(Cc,{size:14,className:`mx-auto mb-1 text-[#11a4d4]`}),t.label]})}):null]})}function jUe({model:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(Es,{size:14}),`Current UI Snapshot`]}),(0,W.jsx)(sq,{value:e.snapshot,showControls:!1})]})}function MUe({model:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4 text-sm`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(Nc,{size:14}),`Node Statuses`]}),(0,W.jsxs)(`span`,{className:`font-mono text-[11px] text-slate-500`,children:[e.nodes.length,` nodes`]})]}),(0,W.jsx)(`div`,{className:`space-y-2`,children:e.nodes.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border px-3 py-2 ${P3(e.status)}`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2`,children:[(0,W.jsx)(`span`,{className:`mt-0.5 shrink-0`,children:(0,W.jsx)(M3,{status:e.status})}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`truncate text-sm font-semibold text-slate-100`,children:e.label}),(0,W.jsx)(`div`,{className:`mt-0.5 truncate font-mono text-[11px] text-slate-500`,children:e.id})]})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 flex-col items-end gap-1`,children:[(0,W.jsx)(`span`,{className:`rounded border px-1.5 py-0.5 text-[10px] uppercase tracking-wide ${rWe(e.status)}`,children:e.status}),(0,W.jsx)(`span`,{className:`rounded border border-slate-700 px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-slate-400`,children:e.kind})]})]}),(0,W.jsx)(`p`,{className:`mt-2 text-xs text-slate-400`,children:e.description})]},e.id))}),(0,W.jsx)(`p`,{className:`mt-3 text-xs text-slate-500`,children:`Node status is reconstructed from the workflow run linkage and live session state; persisted kernel records remain the durable source of truth.`})]})}function NUe({model:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4 text-sm`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)($s,{size:14}),`Final Output & Validation`]}),(0,W.jsxs)(`div`,{className:`space-y-4`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2`,children:[(0,W.jsx)(`div`,{className:`text-xs font-semibold uppercase tracking-wide text-slate-400`,children:`Final output`}),e.finalOutput?(0,W.jsx)(`span`,{className:`rounded border border-slate-700 px-1.5 py-0.5 font-mono text-[10px] text-slate-500`,children:e.finalOutput.source}):null]}),e.finalOutput?(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-2`,children:(0,W.jsx)(sq,{value:e.finalOutput.value,defaultExpandLevel:1,maxHeight:`14rem`,showControls:!1})}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-3 text-xs text-slate-500`,children:`No final workflow output is available yet. Completed workflow-backed sessions show the final assistant output here.`})]}),(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center justify-between gap-2`,children:[(0,W.jsx)(`div`,{className:`text-xs font-semibold uppercase tracking-wide text-slate-400`,children:`Validation errors`}),(0,W.jsx)(`span`,{className:`rounded border px-1.5 py-0.5 font-mono text-[10px] ${e.validationErrors.length?`border-red-500/40 bg-red-500/10 text-red-300`:`border-emerald-500/40 bg-emerald-500/10 text-emerald-300`}`,children:e.validationErrors.length?`${e.validationErrors.length} found`:`none`})]}),e.validationErrors.length?(0,W.jsx)(`div`,{className:`space-y-2`,children:e.validationErrors.map(e=>(0,W.jsx)(`div`,{className:`rounded-sm border border-red-500/35 bg-red-500/10 p-2`,children:(0,W.jsxs)(`div`,{className:`flex min-w-0 items-start gap-2 text-xs text-red-200`,children:[(0,W.jsx)(Cl,{size:14,className:`mt-0.5 shrink-0 text-red-300`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`break-words`,children:e.message}),(0,W.jsxs)(`div`,{className:`mt-1 flex flex-wrap gap-1 font-mono text-[10px] text-red-200/70`,children:[e.code?(0,W.jsx)(`span`,{children:e.code}):null,e.path?(0,W.jsx)(`span`,{children:e.path}):null,e.source?(0,W.jsx)(`span`,{children:e.source}):null]})]})]})},e.id))}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#0b0f14] p-3 text-xs text-slate-500`,children:`No workflow validation diagnostics were found in the current session trace.`})]})]})]})}function PUe({model:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#111820] p-4 text-sm`,children:[(0,W.jsxs)(`div`,{className:`mb-3 flex items-center gap-2 text-xs font-bold uppercase tracking-wider text-slate-500`,children:[(0,W.jsx)(rc,{size:14}),`Projection Facts`]}),(0,W.jsxs)(`dl`,{className:`space-y-3`,children:[(0,W.jsx)(_3,{label:`projection kind`,value:`pibo.workflow.xstateUiModel`}),(0,W.jsx)(_3,{label:`schema`,value:`v1`}),(0,W.jsx)(_3,{label:`durable truth`,value:`kernel`}),(0,W.jsx)(_3,{label:`private payloads`,value:`not exposed`}),(0,W.jsx)(_3,{label:`states`,value:String(e.nodes.length)}),(0,W.jsx)(_3,{label:`transitions`,value:String(e.edges.length)}),(0,W.jsx)(_3,{label:`trace`,value:e.traceVersion??`pending`})]})]})}function _3({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-slate-800/70 pb-2 last:border-b-0 last:pb-0`,children:[(0,W.jsx)(`dt`,{className:`text-xs uppercase tracking-wide text-slate-500`,children:e}),(0,W.jsx)(`dd`,{className:`min-w-0 truncate text-right font-mono text-xs text-slate-300`,children:t})]})}function FUe(e,t,n,r,i,a){if(!ZUe(e))return null;let o=A3(e,n),s=QUe(e,n),c=$Ue(s),l=qUe(t,s),u=[...YUe(t),...JUe(e,i)],d=BUe(e,o,c),f=VUe(t,e.workflowRunId),p=WUe(t,e.workflowRunId),m=GUe(t,r),h=IUe(e),g=LUe(a,e.piboSessionId),_=[{id:`workflow.entry`,label:`workflow entry`,kind:`initial`,status:s===`idle`?`active`:`completed`,description:`Project session is linked to a workflow-capable route.`},{id:`node.session`,label:t?.title??`pibo session actor`,kind:`agent`,status:c===`node.session`?s:s===`completed`?`completed`:`idle`,description:`Normal Pibo routed session used as the visible workflow actor.`},{id:j3(s),label:eWe(s),kind:`terminal`,status:c.startsWith(`workflow.`)?s:`idle`,description:`Terminal state projected from the current workflow/session state.`}];return{projectId:e.projectId,workflowId:e.workflowId,...e.workflowVersion?{workflowVersion:e.workflowVersion}:{},...e.workflowRunId?{workflowRunId:e.workflowRunId}:{},piboSessionId:e.piboSessionId,state:o,status:s,traceTitle:t?.title,traceVersion:t?.version,latestStreamId:t?.latestStreamId,nodes:_,edges:[{id:`workflow.transition.entry.session`,source:`workflow.entry`,target:`node.session`,label:`WORKFLOW.START`},{id:`workflow.transition.session.terminal`,source:`node.session`,target:j3(s),label:tWe(s)}],configuration:RUe(e),definitionLink:h,nestedSessionLinks:g,pendingHumanActions:zUe(e,r),runHistory:d,nodeAttempts:f,edgeTransfers:p,runtimeErrors:m,...l?{finalOutput:l}:{},validationErrors:u,snapshot:{kind:`pibo.workflow.xstateUiModel`,schemaVersion:1,projection:{workflowId:e.workflowId,initialStateId:`workflow.entry`,durableTruth:`kernel`,exposesPrivatePayloads:!1},authoring:{location:`workflows_tab`,rawXStateEditingUi:`not_exposed`,inlineExecutableCodeUi:`not_exposed`},current:{snapshotKind:`ui`,...e.workflowRunId?{runId:e.workflowRunId}:{},status:o,stateIds:[c],nodeId:c===`node.session`?`session`:void 0},nodeStatuses:_.map(e=>({id:e.id,kind:e.kind,status:e.status})),runInspection:{durableTruth:`kernel_run_records`,xstateProjectionOnly:!0,runHistoryCount:d.length,nodeAttemptCount:f.length,edgeTransferCount:p.length,runtimeErrorCount:m.length},result:{hasFinalOutput:!!l,validationErrorCount:u.length},actors:[{id:`workflow.actor.session`,kind:`agent`,piboSessionId:e.piboSessionId}],definitionLink:{status:h.status,workflowId:h.workflowId,workflowVersion:h.workflowVersion,hasLiveLink:h.status===`live`&&!!y3(h)},nestedWorkflowSessionCount:g.length}}}function IUe(e){return e.workflowDefinitionLink?e.workflowDefinitionLink:e.workflowVersion?{status:`live`,workflowId:e.workflowId,workflowVersion:e.workflowVersion,title:e.title??e.workflowId,href:b3(e.workflowId,e.workflowVersion)}:{status:`snapshot_only_definition_deleted`,workflowId:e.workflowId,title:e.title??e.workflowId,tombstoneLabel:`Historical run inspection uses the immutable Project session snapshot instead of a broken live definition link.`}}function LUe(e,t){let n=v3(e,t);if(!n)return[];let r=[],i=e=>{for(let t of e)t.workflowSessionKind===`nested_workflow`&&r.push({piboSessionId:t.piboSessionId,title:t.title,kind:t.workflowSessionKind??t.profile??`workflow`,...t.workflowSessionKind?{workflowSessionKind:t.workflowSessionKind}:{}}),i(t.children)};return i(n.children),r}function v3(e,t){for(let n of e){if(n.piboSessionId===t)return n;let e=v3(n.children,t);if(e)return e}}function y3(e){if(e.status===`live`){if(e.href)return e.href;if(e.workflowVersion)return b3(e.workflowId,e.workflowVersion)}}function b3(e,t){return`/apps/chat/workflows/view/${encodeURIComponent(e)}/${encodeURIComponent(t)}`}function x3(e){return`${e.workflowId}${e.workflowVersion?`@${e.workflowVersion}`:``}`}function RUe(e){let t=e.configuration;return{inputKeys:Object.keys(t?.inputValues??{}).sort(),promptOverrideNodeIds:Object.keys(t?.promptOverrides??{}).sort()}}function zUe(e,t){if(e.pendingHumanActions?.length)return e.pendingHumanActions.map(e=>({id:`wait-token:${e.waitTokenId}`,waitTokenId:e.waitTokenId,workflowRunId:e.workflowRunId,...e.nodeAttemptId?{nodeAttemptId:e.nodeAttemptId}:{},...e.humanNodeId?{humanNodeId:e.humanNodeId}:{},prompt:e.prompt,label:`Pending registered human action`,source:`persisted wait token`,...e.schema?{schema:e.schema}:{},payloadRequirements:e.payloadRequirements,availableActions:e.availableActions,diagnostics:e.diagnostics,createdAt:e.createdAt,...e.expiresAt?{expiresAt:e.expiresAt}:{}}));let n=A3(e,void 0).toLowerCase(),r=[t?.aggregateStatus,t?.localStatus].filter(e=>typeof e==`string`).join(` `).toLowerCase();return n.includes(`waiting`)||n.includes(`blocked`)||r.includes(`waiting`)||r.includes(`blocked`)||t?.hasBlockedDescendant?[{id:`human-action:${e.piboSessionId}`,prompt:`Session signal indicates a wait, but no persisted workflow wait token is available in the Project run store.`,label:`Awaiting human action`,source:t?`session signal`:`project session state`,availableActions:[],diagnostics:[]}]:[]}function BUe(e,t,n){return e.workflowRunId?[{id:e.workflowRunId,status:t,currentNodeId:n,updatedAt:e.updatedAt,source:`project session run record`}]:[]}function VUe(e,t){return!t||!e?[]:S3(e.nodes).filter(HUe).slice(0,8).map((e,t)=>({id:e.id,nodeId:e.stableKey??e.entryId??e.type,label:e.title||e.type,kind:e.type,status:UUe(e.status),attempt:t+1,source:`session trace fact`,...e.startedAt?{startedAt:e.startedAt}:{},...e.completedAt?{completedAt:e.completedAt}:{}}))}function HUe(e){return e.type===`agent.turn`||e.type===`tool.call`||e.type===`execution.command`||e.type===`agent.delegation`||e.type===`agent.async`||e.type===`yielded.run`||e.type===`error`}function UUe(e){return e===`done`?`completed`:e===`error`?`failed`:`running`}function WUe(e,t){if(!t||!e)return[];let n=[];for(let r of e.rawEvents){if(!k3(r.payload))continue;let e=O3(r.payload.type),i=O3(r.payload.runId);if(e!==`edge.transferred`||i&&i!==t)continue;let a=O3(r.payload.edgeId);a&&n.push({id:O3(r.payload.edgeTransferId)??r.id,edgeId:a,status:`transferred`,source:r.type,createdAt:r.createdAt})}return n.slice(0,8)}function GUe(e,t){let n=[];for(let e of t?.errors??[])n.push({id:`signal:${n.length}`,message:e.message,...e.code?{code:e.code}:{},source:e.source??`session signal`});if(e){for(let t of S3(e.nodes)){let e=t.error??(t.status===`error`?w3(t.output)??w3(t.summary):void 0);e&&n.push({id:`node:${t.id}`,message:e,source:t.type})}for(let t of e.rawEvents){if(!k3(t.payload))continue;let e=t.payload.error,r=k3(e)?O3(e.message):O3(e),i=k3(e)?O3(e.code):void 0;r&&n.push({id:`event:${t.id}`,message:r,...i?{code:i}:{},source:t.type})}}return KUe(n).slice(0,8)}function KUe(e){let t=new Set;return e.filter(e=>{let n=`${e.code??``}:${e.message}:${e.source??``}`;return!t.has(n)&&(t.add(n),!0)})}function qUe(e,t){if(t!==`completed`||!e)return;let n=S3(e.nodes),r=[...n].reverse().find(e=>e.type===`assistant.message`&&e.status===`done`&&(e.output!==void 0||e.summary));if(r)return{value:r.output??r.summary??``,source:`assistant.message`};let i=[...n].reverse().find(e=>e.status===`done`&&e.type!==`user.message`&&e.type!==`model.reasoning`&&e.output!==void 0);return i?{value:i.output,source:i.type}:void 0}function JUe(e,t){let n=[];for(let r of t)if(r.piboSessionId===e.piboSessionId&&(r.type===`project.workflow_start.blocked`||r.validation?.trigger===`before_workflow_start`))for(let e of r.diagnostics)e.severity===`error`&&n.push({id:`lifecycle:${r.id}:${n.length}`,message:e.message,code:e.code,path:e.path,source:`start lifecycle event`});return E3(n).slice(0,8)}function YUe(e){if(!e)return[];let t=[];for(let n of S3(e.nodes)){let e=n.error??w3(n.output)??w3(n.summary);e&&(!T3([n.title,n.summary,n.error,n.type].filter(e=>typeof e==`string`).join(` `))&&!T3(e)||t.push({id:`node:${n.id}`,message:e,...n.type?{source:n.type}:{}}))}for(let n of e.rawEvents)C3(n.payload,`event:${n.id}`,t);return E3(t).slice(0,8)}function S3(e){let t=[],n=e=>{for(let r of e)t.push(r),n(r.children)};return n(e),t}function C3(e,t,n,r=0){if(r>4||!k3(e))return;let i=Array.isArray(e.diagnostics)?e.diagnostics:void 0;if(i)for(let e of i){if(!k3(e))continue;let r=O3(e.message)??w3(e);r&&n.push({id:`${t}:diagnostic:${n.length}`,message:r,...O3(e.code)?{code:O3(e.code)}:{},...O3(e.path)?{path:O3(e.path)}:{},source:`workflow.diagnostic`})}let a=e.error;if(k3(a)){let e=O3(a.code),r=O3(a.message)??w3(a);r&&T3([e,r].filter(Boolean).join(` `))&&n.push({id:`${t}:error:${n.length}`,message:r,...e?{code:e}:{},source:`workflow.error`})}else typeof a==`string`&&T3(a)&&n.push({id:`${t}:error:${n.length}`,message:a,source:`workflow.error`});for(let[i,a]of Object.entries(e))i!==`diagnostics`&&i!==`error`&&(i===`payload`||i===`output`||i===`result`||i===`data`)&&C3(a,`${t}:${i}`,n,r+1)}function w3(e){if(typeof e==`string`)return e;if(k3(e))return O3(e.message)??O3(e.error)??O3(e.summary)}function T3(e){let t=e.toLowerCase();return t.includes(`validation`)||t.includes(`validate`)||t.includes(`diagnostic`)||t.includes(`workflowinterfaceerror`)||t.includes(`workflowruntimeerror.validation`)}function E3(e){let t=new Set;return e.filter(e=>{let n=`${e.code??``}:${e.path??``}:${e.message}`;return!t.has(n)&&(t.add(n),!0)})}function XUe(e){return k3(e)&&k3(e.data)&&Array.isArray(e.data.diagnostics)?e.data.diagnostics.filter(k3).map(t=>({code:O3(t.code)??`WorkflowRuntimeError.humanActionRejected`,message:O3(t.message)??D3(e),severity:t.severity===`info`||t.severity===`warning`||t.severity===`error`?t.severity:`error`,...O3(t.path)?{path:O3(t.path)}:{},...O3(t.registryRef)?{registryRef:O3(t.registryRef)}:{},...O3(t.hint)?{hint:O3(t.hint)}:{}})):[{code:`WorkflowRuntimeError.humanActionRejected`,message:D3(e),severity:`error`}]}function D3(e){return e instanceof Error?e.message:String(e)}function O3(e){return typeof e==`string`&&e.trim()?e:void 0}function k3(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function ZUe(e){return!!e.workflowRunId||e.state===`workflow`||e.workflowId!==`simple-chat`}function A3(e,t){return e.archived?`archived`:e.state&&e.state!==`workflow`?e.state.replace(/_/g,` `):t===`running`?`running`:t===`error`?`failed`:e.workflowRunId?`workflow`:e.kind}function QUe(e,t){let n=A3(e,t).toLowerCase();return e.archived?`cancelled`:n.includes(`complete`)||n.includes(`done`)?`completed`:n.includes(`fail`)||n.includes(`error`)?`failed`:n.includes(`cancel`)?`cancelled`:n.includes(`wait`)||n.includes(`blocked`)?`waiting`:!e.workflowRunId&&n.includes(`configured`)?`idle`:`active`}function $Ue(e){return e===`completed`?`workflow.completed`:e===`failed`?`workflow.failed`:e===`cancelled`?`workflow.cancelled`:`node.session`}function j3(e){return e===`failed`?`workflow.failed`:e===`cancelled`?`workflow.cancelled`:`workflow.completed`}function eWe(e){return e===`failed`?`failed`:e===`cancelled`?`cancelled`:`completed`}function tWe(e){return e===`failed`?`WORKFLOW.FAIL`:e===`cancelled`?`WORKFLOW.CANCEL`:`WORKFLOW.NODE.DONE`}function M3({status:e}){return e===`completed`?(0,W.jsx)($s,{size:16,className:`text-emerald-300`}):e===`failed`?(0,W.jsx)(nc,{size:16,className:`text-red-300`}):e===`cancelled`?(0,W.jsx)(Cl,{size:16,className:`text-slate-400`}):e===`waiting`?(0,W.jsx)(ic,{size:16,className:`text-amber-300`}):e===`active`?(0,W.jsx)(Es,{size:16,className:`text-[#11a4d4]`}):(0,W.jsx)(rc,{size:16,className:`text-slate-500`})}function N3({tone:e,children:t}){return(0,W.jsx)(`span`,{className:`rounded border px-2 py-1 font-mono ${{blue:`border-[#11a4d4]/40 bg-[#11a4d4]/10 text-[#11a4d4]`,slate:`border-slate-700 bg-slate-900/50 text-slate-300`,green:`border-emerald-500/40 bg-emerald-500/10 text-emerald-300`,amber:`border-amber-500/40 bg-amber-500/10 text-amber-300`,red:`border-red-500/40 bg-red-500/10 text-red-300`}[e]}`,children:t})}function nWe(e){return e===`completed`?`green`:e===`failed`||e===`cancelled`?`red`:e===`waiting`?`amber`:`blue`}function P3(e){return e===`completed`?`border-emerald-500/40 bg-emerald-500/10`:e===`failed`?`border-red-500/40 bg-red-500/10`:e===`cancelled`?`border-slate-600 bg-slate-800/40`:e===`waiting`?`border-amber-500/40 bg-amber-500/10`:e===`active`?`border-[#11a4d4]/50 bg-[#11a4d4]/10 shadow-[0_0_0_1px_rgba(17,164,212,0.18)]`:`border-slate-800 bg-[#111820]`}function rWe(e){return e===`completed`?`border-emerald-500/40 bg-emerald-500/10 text-emerald-300`:e===`failed`||e===`cancelled`?`border-red-500/40 bg-red-500/10 text-red-300`:e===`waiting`?`border-amber-500/40 bg-amber-500/10 text-amber-300`:e===`active`?`border-[#11a4d4]/40 bg-[#11a4d4]/10 text-[#11a4d4]`:`border-slate-700 bg-slate-900/50 text-slate-400`}function F3(e){let t=e.toLowerCase();return t.includes(`complete`)||t.includes(`done`)||t.includes(`transferred`)?`border-emerald-500/40 bg-emerald-500/10 text-emerald-300`:t.includes(`fail`)||t.includes(`error`)||t.includes(`cancel`)?`border-red-500/40 bg-red-500/10 text-red-300`:t.includes(`wait`)||t.includes(`blocked`)?`border-amber-500/40 bg-amber-500/10 text-amber-300`:t.includes(`run`)||t.includes(`active`)||t.includes(`workflow`)?`border-[#11a4d4]/40 bg-[#11a4d4]/10 text-[#11a4d4]`:`border-slate-700 bg-slate-900/50 text-slate-400`}function I3(e){return e.length>18?`${e.slice(0,10)}…${e.slice(-6)}`:e}var L3=[{id:`terminal`,label:`Terminal`,description:`Compact Codex-style terminal transcript.`,render:e=>(0,W.jsx)(rUe,{...e})},{id:`workflow`,label:`Workflow`,description:`Workflow/XState visualization for workflow-backed project sessions.`,render:e=>(0,W.jsx)(CUe,{...e})}],R3=new Map(L3.map(e=>[e.id,e]));function iWe(){return L3}function z3(e){return R3.get(e)??R3.get(`terminal`)}function B3(e,t){return{localBootstrap:t,queryData:e.getQueriesData({queryKey:[`chat`,`bootstrap`]})}}function V3(e,t,n){return e.selectedRoomId===t?n(e):e}function H3(e){let t=!!(e.tempId&&e.currentSelectedPiboSessionId===e.tempId);return e.status===`success`?{selectedPiboSessionId:t?e.createdPiboSessionId:e.currentSelectedPiboSessionId,navigateToCreatedSession:t,autoRenameCreatedSession:t}:{selectedPiboSessionId:t?e.previousSelectedPiboSessionId??null:e.currentSelectedPiboSessionId,navigateToCreatedSession:!1,autoRenameCreatedSession:!1}}function U3(e,t){return!e||t===void 0?e:{...e,selectedPiboSessionId:t??``}}function W3(e,t){return n6(e.sessions,t.piboSessionId)?e:{...e,sessions:[t,...e.sessions]}}function aWe(e,t){let n=G3(e.sessions,t),r=t.has(e.selectedPiboSessionId);return{...e,selectedPiboSessionId:r?``:e.selectedPiboSessionId,sessions:n}}function G3(e,t){let n=!1,r=[];for(let i of e){if(t.has(i.piboSessionId)){n=!0;continue}let e=G3(i.children,t);e===i.children?r.push(i):(n=!0,r.push({...i,children:e}))}return n?r:e}function K3(e){let t=new Set([e.piboSessionId]);for(let n of e.children)for(let e of K3(n))t.add(e);return t}function oWe(e,t,n){if(!t)return W3(e,n);let r=!1,i=$3(e.sessions,t,()=>(r=!0,n));return{...e,selectedPiboSessionId:e.selectedPiboSessionId===t?n.piboSessionId:e.selectedPiboSessionId,session:e.session.id===t?t6(n,e.session):e.session,sessions:r?i:[n,...i]}}function sWe(e,t,n){let r=G3(e.sessions,new Set([t])),i=e.selectedPiboSessionId===t;return r===e.sessions&&!i?e:{...e,selectedPiboSessionId:i?n??``:e.selectedPiboSessionId,sessions:r}}function q3(e,t){let n=typeof t.metadata?.chatWebArchivedAt==`string`;return{...e,session:e.session.id===t.id?t:e.session,sessions:$3(e.sessions,t.id,e=>({...e,profile:t.profile,activeModel:t.activeModel,title:t.title||e.title||`Untitled Session`,archived:n}))}}function J3(e,t,n){let r=e.session.id===t?t6(n(e6(e.session)),e.session):e.session;return{...e,session:r,sessions:$3(e.sessions,t,n)}}function cWe(e,t){return $q(e.rooms,t.id)?e:{...e,room:t,selectedRoomId:t.id,selectedPiboSessionId:``,rooms:[t,...e.rooms]}}function lWe(e,t,n){return{...e,room:e.room?.id===t?n:e.room,selectedRoomId:e.selectedRoomId===t?n.id:e.selectedRoomId,rooms:X3(e.rooms,t,()=>n)}}function Y3(e,t,n){return{...e,room:e.room?.id===t?n(e.room):e.room,rooms:X3(e.rooms,t,n)}}function uWe(e,t){let n=t.has(e.selectedRoomId);return{...e,room:e.room&&t.has(e.room.id)?void 0:e.room,selectedRoomId:n?``:e.selectedRoomId,selectedPiboSessionId:n?``:e.selectedPiboSessionId,rooms:Z3(e.rooms,t)}}function X3(e,t,n){let r=!1,i=e.map(e=>{if(e.id===t)return r=!0,n(e);let i=e.children??[],a=X3(i,t,n);return a===i?e:(r=!0,{...e,children:a})});return r?i:e}function Z3(e,t){let n=!1,r=[];for(let i of e){if(t.has(i.id)){n=!0;continue}let e=i.children??[],a=Z3(e,t);a===e?r.push(i):(n=!0,r.push({...i,children:a}))}return n?r:e}function dWe(e,t){let n=new Date().toISOString();return{id:e,name:t,type:`chat`,createdAt:n,updatedAt:n,metadata:{},children:[]}}function fWe(e,t){let n={...e.metadata};return t?n.chatRoomArchivedAt=new Date().toISOString():delete n.chatRoomArchivedAt,{...e,metadata:n,updatedAt:new Date().toISOString()}}function Q3(e){let t=new Set([e.id]);for(let n of e.children??[])for(let e of Q3(n))t.add(e);return t}function $3(e,t,n){let r=!1,i=e.map(e=>{if(e.piboSessionId===t)return r=!0,n(e);let i=$3(e.children,t,n);return i===e.children?e:(r=!0,{...e,children:i})});return r?i:e}function pWe(e,t){return{piboSessionId:e,piSessionId:`pending`,profile:t,title:`New Session`,status:`idle`,lastActivityAt:new Date().toISOString(),derivedSessions:[],children:[]}}function e6(e){return{piboSessionId:e.id,piSessionId:e.piSessionId,profile:e.profile,activeModel:e.activeModel,title:e.title||`Untitled Session`,archived:typeof e.metadata?.chatWebArchivedAt==`string`,status:`idle`,lastActivityAt:e.updatedAt,derivedSessions:[],children:[]}}function t6(e,t){return{...t,id:e.piboSessionId,piSessionId:e.piSessionId,profile:e.profile,activeModel:e.activeModel,title:Yq(e),updatedAt:e.lastActivityAt??t.updatedAt}}function n6(e,t){for(let n of e){if(n.piboSessionId===t)return n;let e=n6(n.children,t);if(e)return e}}function mWe(e){let t=e.trim();if(t.length>=2){let e=t[0],n=t[t.length-1];if(e===`"`&&n===`"`||e===`'`&&n===`'`)return t.slice(1,-1).trim()}return t}function r6(e,t){if(e===`thinking`&&t)return{level:t.split(/\s+/,1)[0]};if(e===`compact`&&t)return{customInstructions:t};if(e===`goal`)return{command:t}}function hWe(e){return!i6(e)||!i6(e.result)?null:e}function gWe(e){if(!(!i6(e)||!i6(e.result)))return typeof e.result.piboSessionId==`string`?e.result.piboSessionId:void 0}function i6(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function _We(e){let t=e.flatMap(e=>e.slashCommands.filter(e=>e!==`tree`).map(t=>({slash:`/${t}`,action:e.name,description:e.name===`thinking`&&t===`thinking`?`Show thinking level or use /thinking <level>.`:e.description??e.name})));return t.push({slash:`/download`,action:`download`,description:`Download a file by absolute path or relative to the current working directory.`},{slash:`/upload`,action:`upload`,description:`Upload one or more files to the configured Pibo uploads directory.`},{slash:`/thinking-show`,action:`thinking-show`,description:`Toggle historical thinking display in this browser.`}),t}function vWe(e,t){if(!e)return[];let n=e.agentCatalog?.skills??[],r=e.agentCatalog?.userSkills??[],i=[...n,...r],a=jQ(e),o=t?NQ(e.sessions,t)?.profile??a:a,s=[...e.agents.map(e=>({name:e.name,skills:e.skills})),...e.customAgents.map(e=>({name:e.profileName,skills:e.skills}))].find(e=>e.name===o),c=new Set(s?.skills??[]);return i.filter(e=>c.has(e.name))}function yWe(e,t){let n=e.area===`sessions`?e.roomId:void 0,r=e.area===`sessions`||e.area===`projects`||e.area===`context`?e.piboSessionId:void 0,i=n?t.sessionsByRoom?.[n]:t.piboSessionId;return{requestedRoomId:e.area===`sessions`?n??(r?void 0:t.roomId):e.area===`context`&&r?void 0:t.roomId,requestedPiboSessionId:e.area===`sessions`?r??(r?void 0:i):e.area===`context`?r:t.piboSessionId}}function bWe(e){let{bootstrap:t,creatingSession:n,route:r}=e,i=r.area===`sessions`||r.area===`projects`||r.area===`context`?r.piboSessionId:void 0;return t&&r.area!==`sessions`&&(r.area!==`context`||!i||t.selectedPiboSessionId===i)||n?!0:!!(t&&r.area===`sessions`&&r.piboSessionId&&t.selectedPiboSessionId===r.piboSessionId&&t.selectedRoomId===r.roomId)}function xWe(e,t){if(e.area===`sessions`&&t.selectedPiboSessionId&&(e.roomId!==t.selectedRoomId||e.piboSessionId!==t.selectedPiboSessionId))return t}function SWe(e){return e.area===`sessions`&&!!(e.roomId||e.piboSessionId)}function CWe(e){if(!(!e||typeof e!=`object`||!(`status`in e)))return typeof e.status==`number`?e.status:void 0}function wWe(e){return e instanceof Error?e.message:String(e)}function TWe(e){let t=CWe(e),n=wWe(e);return t===401||t===403?{kind:`authentication-required`,message:n}:e instanceof TypeError||/failed to fetch|network(?:error| request failed)|internet disconnected|load failed/i.test(n)?{kind:`load-failed`,message:`Could not connect to Pibo Chat. Check your network connection and try again.`}:t!==void 0&&t>=500?{kind:`load-failed`,message:`Could not load Pibo Chat. The server may be unavailable. Try again.`}:{kind:`load-failed`,message:`Could not load Pibo Chat. Try again.`}}function a6({activePanel:e,onSelect:t,piPackageCount:n,userSkillCount:r}){return(0,W.jsx)(`div`,{className:`p-2`,children:(0,W.jsxs)(`div`,{className:`mb-4`,children:[(0,W.jsx)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Settings`}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`general`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`general`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(ml,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`General`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`browser + runtime`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`concurrency`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`concurrency`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Sc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Concurrency`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`yielded runs`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`previews`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`previews`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Kc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Previews`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`server pool + lease`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`transcription`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`transcription`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Wc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Transcription`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`audio provider`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`speech`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`speech`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Dl,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Speech`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`text-to-speech`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`shortcuts`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`shortcuts`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(kc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Shortcuts`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`keyboard`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`maintenance`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`maintenance`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(uc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Maintenance`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`telemetry retention`})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`pi-packages`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`pi-packages`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Ac,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Pi Packages`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`runtime-packages`})]}),(0,W.jsx)(`span`,{className:`inline-flex min-w-6 items-center justify-center border border-slate-700 bg-[#101d22] px-1.5 py-0.5 text-[10px] font-mono text-slate-400`,children:n})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`skills`),className:`mb-1 flex w-full items-center gap-2 border p-2 text-left ${e===`skills`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(kl,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Skills`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`user-managed`})]}),(0,W.jsx)(`span`,{className:`inline-flex min-w-6 items-center justify-center border border-slate-700 bg-[#101d22] px-1.5 py-0.5 text-[10px] font-mono text-slate-400`,children:r})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>t(`providers`),className:`flex w-full items-center gap-2 border p-2 text-left ${e===`providers`?`border-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-800 bg-[#151f24] hover:border-slate-700`}`,children:[(0,W.jsx)(Oc,{size:13,className:`text-[#11a4d4]`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-sm text-slate-200`,children:`Providers`}),(0,W.jsx)(`span`,{className:`block truncate font-mono text-[10px] text-slate-500`,children:`auth + api keys`})]})]})]})})}function EWe({piboSessionId:e,onProviderAuthChanged:t}){let[n,r]=(0,U.useState)(null),[i,a]=(0,U.useState)(!0),[o,s]=(0,U.useState)(null),[c,l]=(0,U.useState)(null),[u,d]=(0,U.useState)({}),[f,p]=(0,U.useState)({}),[m,h]=(0,U.useState)({}),[g,_]=(0,U.useState)({}),[v,y]=(0,U.useState)(null),[b,x]=(0,U.useState)({}),S=(0,U.useRef)(!1),C=(0,U.useCallback)(async(e=!1)=>{e&&a(!0);try{r(await GBe()),s(null)}catch(e){s(e instanceof Error?e.message:String(e))}finally{a(!1)}},[]);(0,U.useEffect)(()=>{C(!0)},[C]);let w=(0,U.useMemo)(()=>n?.targets.flatMap(e=>e.providers.flatMap(t=>t.pending?.completion===`notification`?[{target:e,provider:t,flowId:t.pending.flowId}]:[]))??[],[n]);(0,U.useEffect)(()=>{if(w.length===0)return;let e=async()=>{if(!S.current){S.current=!0;try{for(let{target:e,provider:n,flowId:r}of w){let i=await X2({action:`complete`,runtimeInstanceId:e.runtimeInstanceId,providerId:n.id,flowId:r});(i.state===`connected`||i.state===`partial`)&&(f6(l,`${e.displayName} / ${n.displayName??n.id} is ${l6(i.state).toLowerCase()}.`),await t?.())}await C()}catch(e){s(e instanceof Error?e.message:String(e)),await C()}finally{S.current=!1}}},n=window.setInterval(()=>void e(),1500);return()=>window.clearInterval(n)},[w,t,C]);let T=(0,U.useCallback)(async(e,t)=>{x(t=>({...t,[e]:!0})),s(null),l(null);try{return await t()}catch(e){s(e instanceof Error?e.message:String(e));return}finally{x(t=>({...t,[e]:!1}))}},[]),E=(0,U.useCallback)(async(e,t,n)=>{let r=s6(e,t);await T(r,async()=>await X2({action:`start`,runtimeInstanceId:e.runtimeInstanceId,providerId:t.id,method:n}))&&await C()},[C,T]),D=(0,U.useCallback)(async(e,n,r)=>{if(!n.pending)return;let i=s6(e,n),a=await T(i,async()=>await X2({action:`complete`,runtimeInstanceId:e.runtimeInstanceId,providerId:n.id,flowId:n.pending.flowId,...r?{code:r}:{}}));a&&((a.state===`connected`||a.state===`partial`)&&(f6(l,`${e.displayName} / ${n.displayName??n.id} is ${l6(a.state).toLowerCase()}.`),p(e=>({...e,[i]:``})),await t?.()),await C())},[t,C,T]),O=(0,U.useCallback)(async(e,t)=>{if(!t.pending)return;let n=s6(e,t);await T(n,async()=>await X2({action:`cancel`,runtimeInstanceId:e.runtimeInstanceId,providerId:t.id,flowId:t.pending.flowId}))&&await C()},[C,T]),k=(0,U.useCallback)(async(e,n)=>{let r=s6(e,n),i=m[r]?.trim();i&&await T(r,async()=>await X2({action:`api_key`,runtimeInstanceId:e.runtimeInstanceId,providerId:n.id,apiKey:i}))&&(h(e=>({...e,[r]:``})),_(e=>({...e,[r]:!1})),d(e=>({...e,[r]:`collapsed`})),f6(l,`${e.displayName} / ${n.displayName??n.id} API key is configured.`),await t?.(),await C())},[m,t,C,T]),A=(0,U.useCallback)(async(e,n)=>{let r=s6(e,n);await T(r,async()=>await X2({action:`logout`,runtimeInstanceId:e.runtimeInstanceId,providerId:n.id}))&&(f6(l,`${e.displayName} / ${n.displayName??n.id} is disconnected.`),await t?.(),await C())},[t,C,T]),j=(0,U.useCallback)(async(e,t)=>{try{await navigator.clipboard.writeText(t),y(e),window.setTimeout(()=>y(t=>t===e?null:t),1800)}catch{}},[]);return(0,W.jsxs)(`div`,{className:`grid gap-4`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border border-slate-700 bg-[#1a262b] p-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-xs font-bold uppercase tracking-wider text-slate-300`,children:`Runtime authentication targets`}),(0,W.jsx)(`div`,{className:`mt-1 text-[11px] leading-relaxed text-slate-500`,children:`Each target owns its effective account. The default runtime is marked below; credentials are never copied between runtimes.`})]}),(0,W.jsxs)(`button`,{type:`button`,disabled:i,onClick:()=>void C(!0),className:`inline-flex shrink-0 items-center gap-1 border border-slate-700 bg-[#0e1116] px-2 py-1 text-[11px] text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:[(0,W.jsx)(il,{size:12,className:i?`animate-spin`:``}),` Refresh`]})]}),o?(0,W.jsx)(d6,{tone:`red`,icon:(0,W.jsx)(Qs,{size:14}),children:o}):null,c?(0,W.jsx)(d6,{tone:`green`,icon:(0,W.jsx)(ec,{size:14}),children:c}):null,i&&!n?(0,W.jsx)(d6,{tone:`cyan`,icon:(0,W.jsx)(Ic,{size:14,className:`animate-spin`}),children:`Loading runtime authentication status...`}):null,n?.targets.map(e=>(0,W.jsxs)(`section`,{className:`border border-[#334155] bg-[#151f24]`,children:[(0,W.jsxs)(`header`,{className:`flex flex-wrap items-start justify-between gap-3 border-b border-slate-800 px-3 py-2.5`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(pl,{size:14,className:`text-[#11a4d4]`}),(0,W.jsx)(`span`,{className:`text-sm font-medium text-slate-200`,children:e.displayName}),(0,W.jsx)(`span`,{className:`font-mono text-[10px] text-slate-500`,children:e.runtimeInstanceId}),e.isDefault?(0,W.jsx)(u6,{tone:`cyan`,children:`Default runtime`}):null,(0,W.jsx)(AWe,{state:e.state})]}),(0,W.jsx)(`div`,{className:`mt-1 text-[11px] text-slate-500`,children:e.credentialScope===`runtime-instance`?`Private account for this configured runtime instance.`:`Shared adapter credential store; changes apply to Pi instances using this adapter.`})]}),(0,W.jsx)(`div`,{className:`font-mono text-[10px] uppercase tracking-wider text-slate-600`,children:e.adapterId})]}),e.providers.length===0?(0,W.jsx)(`div`,{className:`px-3 py-3 text-xs text-slate-500`,children:e.state===`unsupported`?`This runtime does not expose provider authentication controls.`:`Provider authentication status is unavailable for this runtime.`}):e.providers.map(t=>{let n=s6(e,t),r=u[n]??`collapsed`,i=b[n]??!1,a=t.pending;return(0,W.jsxs)(`div`,{className:`border-b border-slate-800 last:border-b-0`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3 px-3 py-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-sm text-slate-200`,children:t.displayName??t.id}),(0,W.jsx)(`span`,{className:`font-mono text-[10px] text-slate-600`,children:t.id}),t.methods.map(e=>(0,W.jsx)(u6,{tone:e.id===`api_key`?`amber`:`purple`,children:c6(e.id)},e.id))]}),(0,W.jsxs)(`div`,{className:`mt-1 flex flex-wrap items-center gap-2 text-[11px]`,children:[(0,W.jsx)(kWe,{state:t.state}),(0,W.jsx)(`span`,{className:OWe(t.state),children:l6(t.state)}),t.details?.accountType?(0,W.jsx)(`span`,{className:`text-slate-600`,children:jWe(t.details.accountType)}):null,t.details?.planType?(0,W.jsxs)(`span`,{className:`text-slate-600`,children:[`plan: `,t.details.planType]}):null]}),t.message?(0,W.jsx)(`div`,{className:`mt-1 text-[11px] text-slate-500`,children:t.message}):null]}),(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[t.state!==`pending`&&t.methods.map(a=>a.id===`api_key`?(0,W.jsxs)(`button`,{type:`button`,disabled:i||!e.available,onClick:()=>{let e=r===`api_key`;d(t=>({...t,[n]:e?`collapsed`:`api_key`})),e&&(h(e=>({...e,[n]:``})),_(e=>({...e,[n]:!1})))},className:o6,children:[(0,W.jsx)(Oc,{size:12}),` `,t.configured?`Replace key`:`API key`]},a.id):(0,W.jsxs)(`button`,{type:`button`,disabled:i||!e.available,onClick:()=>void E(e,t,a.id),className:o6,children:[i?(0,W.jsx)(Ic,{size:12,className:`animate-spin`}):(0,W.jsx)(Rc,{size:12}),` `,t.configured?`Reconnect`:c6(a.id)]},a.id)),(t.configured||t.state===`failed`)&&e.logoutSupported?(0,W.jsxs)(`button`,{type:`button`,disabled:i,onClick:()=>void A(e,t),className:`${o6} hover:!border-red-500 hover:!text-red-300`,children:[(0,W.jsx)(Sl,{size:12}),` `,t.configured?`Disconnect`:`Reset auth`]}):null]})]}),a?(0,W.jsx)(DWe,{flow:a,rowKey:n,busy:i,code:f[n]??``,onCodeChange:e=>p(t=>({...t,[n]:e})),onComplete:n=>void D(e,t,n),onCancel:e.cancelSupported?()=>void O(e,t):void 0,copied:v,onCopy:j}):r===`api_key`?(0,W.jsxs)(`div`,{className:`grid gap-2 border-t border-slate-800 bg-[#10191d] px-3 py-3`,children:[(0,W.jsxs)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:[`API key for `,e.runtimeInstanceId]}),(0,W.jsxs)(`div`,{className:`relative`,children:[(0,W.jsx)(`input`,{type:g[n]?`text`:`password`,value:m[n]??``,autoComplete:`off`,spellCheck:!1,onChange:e=>h(t=>({...t,[n]:e.target.value})),onKeyDown:n=>{n.key===`Enter`&&k(e,t)},placeholder:`Enter provider API key`,className:`w-full border border-slate-700 bg-[#0e1116] px-2 py-1.5 pr-8 font-mono text-[12px] text-slate-300 outline-none placeholder:text-slate-600 focus:border-[#11a4d4]`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>_(e=>({...e,[n]:!e[n]})),className:`absolute right-2 top-1/2 -translate-y-1/2 text-slate-500 hover:text-[#11a4d4]`,"aria-label":g[n]?`Hide API key`:`Show API key`,children:g[n]?(0,W.jsx)(pc,{size:14}):(0,W.jsx)(mc,{size:14})})]}),(0,W.jsxs)(`div`,{className:`flex gap-2`,children:[(0,W.jsxs)(`button`,{type:`button`,disabled:i||!(m[n]??``).trim(),onClick:()=>void k(e,t),className:o6,children:[i?(0,W.jsx)(Ic,{size:12,className:`animate-spin`}):(0,W.jsx)(ec,{size:12}),` Save for this target`]}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>{h(e=>({...e,[n]:``})),_(e=>({...e,[n]:!1})),d(e=>({...e,[n]:`collapsed`}))},className:`text-[11px] text-slate-500 hover:text-[#11a4d4]`,children:`Cancel`})]})]}):null]},t.id)}),e.diagnostics.some(e=>e.severity!==`info`)?(0,W.jsx)(`div`,{className:`border-t border-slate-800 px-3 py-2 text-[11px] text-slate-500`,children:e.diagnostics.find(e=>e.severity===`error`)?.message??e.diagnostics.find(e=>e.severity===`warning`)?.message}):null]},e.runtimeInstanceId)),n&&n.targets.length===0?(0,W.jsx)(`div`,{className:`border border-slate-700 bg-[#1a262b] p-4 text-sm text-slate-500`,children:`No configured runtime authentication targets are available.`}):null]})}function DWe({flow:e,rowKey:t,busy:n,code:r,onCodeChange:i,onComplete:a,onCancel:o,copied:s,onCopy:c}){let l=e.method===`browser_oauth`&&!e.userCode;return(0,W.jsxs)(`div`,{className:`grid gap-3 border-t border-slate-800 bg-[#10191d] px-3 py-3 text-[11px]`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[#11a4d4]`,children:[e.completion===`notification`?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(ic,{size:13}),e.completion===`notification`?`Waiting for the runtime's completion notification...`:`Login flow is pending.`]}),e.verificationUrl?(0,W.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Verification URL`}),(0,W.jsx)(`div`,{className:`break-all border border-slate-700 bg-[#0e1116] p-2 font-mono text-slate-300`,children:e.verificationUrl}),(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,W.jsxs)(`button`,{type:`button`,onClick:()=>void c(`${t}:url`,e.verificationUrl),className:o6,children:[s===`${t}:url`?(0,W.jsx)(ec,{size:12}):(0,W.jsx)(sc,{size:12}),` `,s===`${t}:url`?`Copied`:`Copy URL`]}),(0,W.jsxs)(`a`,{href:e.verificationUrl,target:`_blank`,rel:`noreferrer`,className:o6,children:[(0,W.jsx)(fc,{size:12}),` Open in browser`]})]})]}):null,e.userCode?(0,W.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`One-time code`}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>void c(`${t}:code`,e.userCode),className:`w-fit border border-[#1f4960] bg-[#0e1116] px-3 py-2 font-mono text-lg font-bold tracking-[0.2em] text-[#11a4d4] hover:border-[#11a4d4]`,children:[e.userCode,` `,s===`${t}:code`?(0,W.jsx)(ec,{size:12,className:`inline`}):null]})]}):null,e.instructions?(0,W.jsx)(`div`,{className:`text-slate-500`,children:e.instructions}):null,l?(0,W.jsx)(`input`,{value:r,autoComplete:`off`,spellCheck:!1,onChange:e=>i(e.target.value),placeholder:`Paste authorization code`,className:`border border-slate-700 bg-[#0e1116] px-2 py-1.5 font-mono text-slate-300 outline-none placeholder:text-slate-600 focus:border-[#11a4d4]`}):null,(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[e.completion===`explicit`?(0,W.jsxs)(`button`,{type:`button`,disabled:n||l&&!r.trim(),onClick:()=>a(l?r.trim():void 0),className:o6,children:[n?(0,W.jsx)(Ic,{size:12,className:`animate-spin`}):(0,W.jsx)(ec,{size:12}),` Complete login`]}):null,o?(0,W.jsxs)(`button`,{type:`button`,disabled:n,onClick:o,className:`${o6} hover:!border-red-500 hover:!text-red-300`,children:[(0,W.jsx)(nc,{size:12}),` Cancel flow`]}):null]})]})}var o6=`inline-flex items-center gap-1 border border-slate-700 bg-[#0e1116] px-2 py-1 text-[11px] text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`;function s6(e,t){return`${e.runtimeInstanceId}:${t.id}`}function c6(e){return e===`api_key`?`API key`:e===`browser_oauth`?`Browser OAuth`:`Device code`}function l6(e){return e.charAt(0).toUpperCase()+e.slice(1)}function OWe(e){return e===`connected`?`text-[#0bda57]`:e===`pending`?`text-[#11a4d4]`:e===`partial`?`text-amber-300`:e===`failed`?`text-red-300`:`text-slate-500`}function kWe({state:e}){return e===`connected`?(0,W.jsx)(ec,{size:12,className:`text-[#0bda57]`}):e===`pending`?(0,W.jsx)(Ic,{size:12,className:`animate-spin text-[#11a4d4]`}):e===`failed`?(0,W.jsx)(Qs,{size:12,className:`text-red-400`}):e===`partial`?(0,W.jsx)(Qs,{size:12,className:`text-amber-300`}):(0,W.jsx)(Rc,{size:12,className:`text-slate-500`})}function AWe({state:e}){return(0,W.jsx)(u6,{tone:e===`connected`?`green`:e===`pending`?`cyan`:e===`partial`?`amber`:e===`failed`?`red`:`neutral`,children:l6(e)})}function u6({tone:e,children:t}){return(0,W.jsx)(`span`,{className:`border px-1.5 py-0.5 text-[10px] font-mono uppercase tracking-wider ${e===`cyan`?`border-[#11a4d4]/40 text-[#6dd7f6]`:e===`green`?`border-[#0bda57]/40 text-[#7cf2a2]`:e===`amber`?`border-amber-500/40 text-amber-300`:e===`purple`?`border-purple-500/40 text-purple-300`:e===`red`?`border-red-500/40 text-red-300`:`border-slate-700 text-slate-500`}`,children:t})}function d6({tone:e,icon:t,children:n}){return(0,W.jsxs)(`div`,{className:`flex items-center gap-2 border px-3 py-2 text-xs ${e===`red`?`border-red-500/30 bg-red-500/10 text-red-300`:e===`green`?`border-[#0bda57]/30 bg-[#0bda57]/10 text-[#7cf2a2]`:`border-[#11a4d4]/30 bg-[#11a4d4]/10 text-[#6dd7f6]`}`,children:[t,n]})}function jWe(e){return e===`api_key`?`API key account`:e===`chatgpt`?`ChatGPT account`:e===`oauth`?`OAuth account`:`Managed account`}function f6(e,t){e(t),window.setTimeout(()=>e(e=>e===t?null:e),5e3)}function p6({activePanel:e,showThinking:t,setShowThinking:n,expandThinking:r,setExpandThinking:i,modelDefaults:a,modelCatalog:o,onModelDefaultsChanged:s,piPackages:c,onPiPackageChanged:l,onPiPackageRemoved:u,userSkills:d,onUserSkillChanged:f,onUserSkillRemoved:p,piboSessionId:m,onProviderAuthChanged:h}){return e===`pi-packages`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(Ac,{size:16}),`Pi Packages`]}),(0,W.jsx)(GWe,{packages:c,onPackageChanged:l,onPackageRemoved:u})]}):e===`skills`?(0,W.jsxs)(`div`,{className:`overflow-auto p-6 max-[640px]:p-3`,children:[(0,W.jsxs)(`h1`,{className:`mb-4 flex items-center gap-2 text-sm font-bold uppercase tracking-wider`,children:[(0,W.jsx)(kl,{size:16}),`Skills`]}),(0,W.jsx)(KWe,{skills:d,onSkillChanged:f,onSkillRemoved:p})]}):e===`concurrency`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(Sc,{size:16}),`Concurrency`]}),(0,W.jsx)(FJ,{title:`Yielded runs`,children:(0,W.jsx)(MWe,{})})]}):e===`transcription`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(Wc,{size:16}),`Transcription`]}),(0,W.jsx)(FJ,{title:`Audio transcription`,children:(0,W.jsx)(IWe,{})})]}):e===`previews`?(0,W.jsxs)(`div`,{className:`overflow-auto p-6 max-[640px]:p-3`,children:[(0,W.jsxs)(`h1`,{className:`mb-4 flex items-center gap-2 text-sm font-bold uppercase tracking-wider`,children:[(0,W.jsx)(Kc,{size:16}),`Previews`]}),(0,W.jsx)(FJ,{title:`Managed Preview servers`,children:(0,W.jsx)(NWe,{})})]}):e===`speech`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(Dl,{size:16}),`Speech`]}),(0,W.jsx)(FJ,{title:`Text-to-speech`,children:(0,W.jsx)(LWe,{})})]}):e===`providers`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(Oc,{size:16}),`Providers`]}),(0,W.jsx)(EWe,{piboSessionId:m,onProviderAuthChanged:h})]}):e===`shortcuts`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(kc,{size:16}),`Shortcuts`]}),(0,W.jsx)(BWe,{})]}):e===`maintenance`?(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(ml,{size:16}),`Maintenance`]}),(0,W.jsx)(RWe,{})]}):(0,W.jsxs)(`div`,{className:`p-6 overflow-auto`,children:[(0,W.jsxs)(`h1`,{className:`text-sm font-bold uppercase tracking-wider mb-4 flex items-center gap-2`,children:[(0,W.jsx)(ml,{size:16}),`General`]}),(0,W.jsxs)(FJ,{title:`General`,children:[(0,W.jsx)(FWe,{}),(0,W.jsx)(BJ,{checked:t,title:`Show thinking blocks`,onToggle:()=>{let e=!t;n(e),AY(e)}}),(0,W.jsx)(BJ,{checked:r,disabled:!t,title:`Expand thinking blocks`,onToggle:()=>{let e=!r;i(e),jY(e)}}),(0,W.jsx)(WWe,{modelDefaults:a,modelCatalog:o,onChanged:s})]})]})}function MWe(){let e=On(),{data:t,isLoading:n}=Un({queryKey:[`gateway-settings`],queryFn:BTe}),[r,i]=(0,U.useState)(`50`),[a,o]=(0,U.useState)(`10`),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(null),[d,f]=(0,U.useState)(null);(0,U.useEffect)(()=>{t&&(i(String(t.maxConcurrentYieldedRuns)),o(String(t.sessionConcurrentYieldedRuns)))},[t]);let p=async()=>{let t=Number(r),n=Number(a);if(!Number.isSafeInteger(t)||t<1){f(`Gateway concurrency must be a positive integer.`);return}if(!Number.isSafeInteger(n)||n<1){f(`Session concurrency must be a positive integer.`);return}c(!0),u(null),f(null);try{let r=await VTe({maxConcurrentYieldedRuns:t,sessionConcurrentYieldedRuns:n});i(String(r.maxConcurrentYieldedRuns)),o(String(r.sessionConcurrentYieldedRuns)),e.setQueryData([`gateway-settings`],r),u(`Concurrency settings saved. New yielded runs use these limits immediately.`)}catch(e){f(e instanceof Error?e.message:String(e))}finally{c(!1)}};return(0,W.jsxs)(`div`,{className:`max-w-xl`,children:[(0,W.jsx)(`p`,{className:`mb-4 text-xs text-slate-400`,children:`Limit concurrent yielded tool and subagent runs across the gateway and within each controlling Pibo Session.`}),(0,W.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,W.jsxs)(`label`,{className:`block text-xs text-slate-300`,htmlFor:`gateway-concurrent-yielded-runs`,children:[(0,W.jsx)(`span`,{className:`mb-1 block font-semibold`,children:`Gateway limit`}),(0,W.jsx)(`input`,{id:`gateway-concurrent-yielded-runs`,type:`number`,min:`1`,step:`1`,value:r,disabled:n||s,onChange:e=>i(e.target.value),className:`w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 font-mono text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`mt-1 block text-[11px] text-slate-500`,children:`Default: 50 across this gateway.`})]}),(0,W.jsxs)(`label`,{className:`block text-xs text-slate-300`,htmlFor:`session-concurrent-yielded-runs`,children:[(0,W.jsx)(`span`,{className:`mb-1 block font-semibold`,children:`Per-session limit`}),(0,W.jsx)(`input`,{id:`session-concurrent-yielded-runs`,type:`number`,min:`1`,step:`1`,value:a,disabled:n||s,onChange:e=>o(e.target.value),className:`w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 font-mono text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`mt-1 block text-[11px] text-slate-500`,children:`Default: 10 for each controlling session.`})]})]}),(0,W.jsxs)(`div`,{className:`mt-4 flex items-center gap-3`,children:[(0,W.jsx)(`button`,{type:`button`,disabled:n||s,onClick:()=>void p(),className:`whitespace-nowrap rounded-sm bg-[#11a4d4] px-3 py-2 text-xs font-semibold text-white hover:bg-[#0d8db7] disabled:opacity-60`,children:s?`Saving…`:`Save limits`}),l?(0,W.jsx)(`span`,{className:`text-xs text-green-400`,children:l}):null]}),d?(0,W.jsx)(`div`,{className:`mt-3 text-xs text-red-300`,children:d}):null,(0,W.jsx)(`p`,{className:`mt-4 font-mono text-[10px] text-slate-500`,children:`Environment fallbacks: PIBO_GATEWAY_MAX_CONCURRENT_YIELDED_RUNS and PIBO_SESSION_CONCURRENT_YIELDED_RUNS.`})]})}function NWe(){let e=On(),t=Un({queryKey:[`user-settings`],queryFn:rU}),[n,r]=(0,U.useState)(`3`),[i,a]=(0,U.useState)(`10`),[o,s]=(0,U.useState)(!1),[c,l]=(0,U.useState)(null),[u,d]=(0,U.useState)(null);(0,U.useEffect)(()=>{t.data?.previewServers&&(r(String(t.data.previewServers.maxRunningServers)),a(String(t.data.previewServers.autoStopMinutes)))},[t.data?.previewServers]);let f=async()=>{let t=Number(n),o=Number(i);if(!Number.isSafeInteger(t)||t<1||t>20){d(`Maximum running servers must be an integer from 1 to 20.`);return}if(!Number.isSafeInteger(o)||o<1||o>1440){d(`Automatic stop must be an integer from 1 to 1440 minutes.`);return}s(!0),l(null),d(null);try{let n=await iU({previewServers:{maxRunningServers:t,autoStopMinutes:o}});e.setQueryData([`user-settings`],n),r(String(n.previewServers.maxRunningServers)),a(String(n.previewServers.autoStopMinutes)),l(`Preview server settings saved.`)}catch(e){d(e instanceof Error?e.message:String(e))}finally{s(!1)}};return(0,W.jsxs)(`div`,{className:`max-w-2xl space-y-5`,children:[(0,W.jsxs)(`label`,{className:`block`,htmlFor:`preview-max-running`,children:[(0,W.jsx)(`span`,{className:`mb-1 block text-xs font-semibold uppercase tracking-wider text-slate-400`,children:`Maximum running servers`}),(0,W.jsx)(`input`,{id:`preview-max-running`,type:`number`,min:`1`,max:`20`,step:`1`,value:n,disabled:t.isLoading||o,onChange:e=>r(e.target.value),className:`w-32 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 font-mono text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`mt-1 block text-[11px] text-slate-500`,children:`Managed starts fail when the instance-wide pool is full. Existing servers are never stopped to make room.`})]}),(0,W.jsxs)(`label`,{className:`block`,htmlFor:`preview-auto-stop`,children:[(0,W.jsx)(`span`,{className:`mb-1 block text-xs font-semibold uppercase tracking-wider text-slate-400`,children:`Automatic stop after each start`}),(0,W.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`input`,{id:`preview-auto-stop`,type:`number`,min:`1`,max:`1440`,step:`1`,value:i,disabled:t.isLoading||o,onChange:e=>a(e.target.value),className:`w-32 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 font-mono text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`text-xs text-slate-500`,children:`minutes`})]}),(0,W.jsx)(`span`,{className:`mt-1 block text-[11px] text-slate-500`,children:`This is a fixed runtime lease, not an inactivity timer. A stopped Preview remains restartable.`})]}),(0,W.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,W.jsx)(`button`,{type:`button`,disabled:t.isLoading||o,onClick:()=>void f(),className:`rounded-sm bg-[#11a4d4] px-3 py-2 text-xs font-semibold text-white hover:bg-[#0d8db7] disabled:cursor-not-allowed disabled:opacity-50`,children:o?`Saving…`:`Save Preview settings`}),c?(0,W.jsx)(`span`,{className:`text-xs text-green-400`,role:`status`,children:c}):null]}),t.error?(0,W.jsx)(`div`,{className:`text-xs text-red-300`,role:`alert`,children:t.error instanceof Error?t.error.message:String(t.error)}):null,u?(0,W.jsx)(`div`,{className:`text-xs text-red-300`,role:`alert`,children:u}):null]})}var PWe=`UTC.Europe/Berlin.Europe/London.Europe/Paris.Europe/Madrid.Europe/Rome.Europe/Amsterdam.Europe/Vienna.Europe/Zurich.Europe/Warsaw.Europe/Istanbul.America/New_York.America/Chicago.America/Denver.America/Los_Angeles.America/Toronto.America/Sao_Paulo.America/Mexico_City.Asia/Dubai.Asia/Jerusalem.Asia/Kolkata.Asia/Bangkok.Asia/Singapore.Asia/Shanghai.Asia/Tokyo.Asia/Seoul.Australia/Sydney.Australia/Melbourne.Pacific/Auckland`.split(`.`);function FWe(){let e=On(),{data:t,isLoading:n}=Un({queryKey:[`user-settings`],queryFn:rU}),r=(0,U.useMemo)(()=>VWe(t?.timezone),[t?.timezone]),[i,a]=(0,U.useState)(`UTC`),[o,s]=(0,U.useState)(!1),[c,l]=(0,U.useState)(null);(0,U.useEffect)(()=>{t?.timezone&&a(t.timezone)},[t?.timezone]);let u=async(t=i)=>{s(!0),l(null);try{let n=await iU({timezone:t});a(n.timezone),e.setQueryData([`user-settings`],n)}catch(e){l(e instanceof Error?e.message:String(e))}finally{s(!1)}};return(0,W.jsxs)(`div`,{className:`border-b border-slate-800 pb-4 mb-4`,children:[(0,W.jsx)(`div`,{className:`mb-2 text-xs font-semibold uppercase tracking-wider text-slate-400`,children:`App timezone`}),(0,W.jsx)(`div`,{className:`max-w-xl`,children:(0,W.jsx)(`select`,{value:i,disabled:n||o,onChange:e=>{let t=e.target.value;a(t),u(t)},className:`w-full min-w-0 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`,children:r.map(e=>(0,W.jsx)(`option`,{value:e.value,children:e.label},e.value))})}),(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-slate-500`,children:`Choose a city-based timezone. Changes are saved automatically and loaded into every runtime context together with the current Pibo Session ID.`}),o?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-slate-400`,children:`Saving…`}):null,c?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-red-300`,children:c}):null]})}function IWe(){let e=On(),t=Un({queryKey:[`user-settings`],queryFn:rU}),n=Un({queryKey:[`transcription-providers`],queryFn:mNe}),r=n.data?.providers??[],i=t.data?.transcription.providerId??n.data?.selectedProviderId??``,[a,o]=(0,U.useState)(``),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(null);(0,U.useEffect)(()=>{i&&o(i)},[i]);let d=async t=>{o(t),c(!0),u(null);try{let n=await iU({transcription:{providerId:t}});e.setQueryData([`user-settings`],n),e.setQueryData([`transcription-providers`],e=>e&&{...e,selectedProviderId:n.transcription.providerId}),o(n.transcription.providerId)}catch(e){o(i),u(e instanceof Error?e.message:String(e))}finally{c(!1)}},f=r.some(e=>e.id===a);return(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`mb-2 text-xs font-semibold uppercase tracking-wider text-slate-400`,children:`Transcription provider`}),(0,W.jsx)(`div`,{className:`max-w-xl`,children:(0,W.jsxs)(`select`,{value:a,disabled:t.isLoading||n.isLoading||s||r.length===0,onChange:e=>void d(e.target.value),className:`w-full min-w-0 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`,children:[a&&!f?(0,W.jsxs)(`option`,{value:a,children:[a,` (unavailable)`]}):null,r.map(e=>(0,W.jsxs)(`option`,{value:e.id,children:[e.name,e.configured?``:` — authentication required`]},e.id))]})}),(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-slate-500`,children:`This selection is independent from the providers used by chat models. Recordings use the selected provider and are inserted into the composer without sending the message.`}),r.find(e=>e.id===a)?.description?(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-slate-400`,children:r.find(e=>e.id===a)?.description}):null,r.length===0&&!n.isLoading?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-amber-300`,children:`No transcription providers are registered.`}):null,n.error?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-red-300`,children:n.error instanceof Error?n.error.message:String(n.error)}):null,s?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-slate-400`,children:`Saving…`}):null,l?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-red-300`,children:l}):null]})}function LWe(){let e=On(),t=Un({queryKey:[`user-settings`],queryFn:rU}),n=Un({queryKey:[`speech-providers`],queryFn:$ze}),r=n.data?.providers??[],i=t.data?.speech.providerId??n.data?.selectedProviderId??``,[a,o]=(0,U.useState)(``),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(null);(0,U.useEffect)(()=>{i&&o(i)},[i]);let d=async t=>{let n=r.find(e=>e.id===t);if(!n?.configured){u(n?`${n.name} requires authentication`:`Unknown speech provider "${t}"`);return}o(t),c(!0),u(null);try{let n=await iU({speech:{providerId:t}});e.setQueryData([`user-settings`],n),e.setQueryData([`speech-providers`],e=>e&&{...e,selectedProviderId:n.speech.providerId}),o(n.speech.providerId)}catch(e){o(i),u(e instanceof Error?e.message:String(e))}finally{c(!1)}},f=r.find(e=>e.id===a),p=!!f;return(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`mb-2 text-xs font-semibold uppercase tracking-wider text-slate-400`,children:`Speech provider`}),(0,W.jsx)(`div`,{className:`max-w-xl`,children:(0,W.jsxs)(`select`,{value:a,disabled:t.isLoading||n.isLoading||s||r.length===0,onChange:e=>void d(e.target.value),"aria-describedby":`speech-provider-help speech-provider-status`,className:`w-full min-w-0 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`,children:[a&&!p?(0,W.jsxs)(`option`,{value:a,children:[a,` (unavailable)`]}):null,r.map(e=>(0,W.jsxs)(`option`,{value:e.id,disabled:!e.configured,children:[e.name,e.configured?``:` — authentication required`]},e.id))]})}),(0,W.jsx)(`div`,{id:`speech-provider-help`,className:`mt-2 text-[11px] text-slate-500`,children:`Assistant-message audio uses this provider independently from transcription, chat-model providers, and future preview settings. The initial provider uses the ChatGPT/Codex subscription configured under Providers for the Native Codex runtime.`}),f?.description?(0,W.jsx)(`div`,{className:`mt-2 text-[11px] text-slate-400`,children:f.description}):null,(0,W.jsxs)(`div`,{id:`speech-provider-status`,"aria-live":`polite`,children:[r.length===0&&!n.isLoading&&!n.error?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-amber-300`,children:`No speech providers are registered.`}):null,n.error?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-red-300`,role:`alert`,children:n.error instanceof Error?n.error.message:String(n.error)}):null,a&&!p&&!n.isLoading&&!n.error?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-amber-300`,children:`The selected speech provider is unavailable. Choose a configured provider.`}):null,f&&!f.configured?(0,W.jsxs)(`div`,{className:`mt-2 text-xs text-amber-300`,children:[f.name,` requires authentication before it can read messages aloud.`]}):null,s?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-slate-400`,children:`Saving…`}):null,l?(0,W.jsx)(`div`,{className:`mt-2 text-xs text-red-300`,role:`alert`,children:l}):null]})]})}function RWe(){let e=On(),{data:t,isLoading:n}=Un({queryKey:[`user-settings`],queryFn:rU}),[r,i]=(0,U.useState)(30),[a,o]=(0,U.useState)(!0),[s,c]=(0,U.useState)(10),[l,u]=(0,U.useState)(!1),[d,f]=(0,U.useState)(!1),[p,m]=(0,U.useState)(null),[h,g]=(0,U.useState)(null),_=t?.telemetryRetention?.lastPrunedAt,v=Number.isInteger(s)&&s>=1&&s<=365;(0,U.useEffect)(()=>{t?.telemetryRetention&&(o(t.telemetryRetention.enabled),i(t.telemetryRetention.days),c(t.telemetryRetention.days))},[t?.telemetryRetention]);let y=async t=>{let n=t.enabled??a,s=zWe(t.days??r);o(n),i(s),u(!0),g(null),m(null);try{let t=await iU({telemetryRetention:{enabled:n,days:s}});e.setQueryData([`user-settings`],t),o(t.telemetryRetention.enabled),i(t.telemetryRetention.days),m(`Telemetry retention settings saved.`)}catch(e){g(e instanceof Error?e.message:String(e))}finally{u(!1)}},b=async()=>{if(!v){g(`Manual cleanup retention must be between 1 and 365 days.`);return}let t=s;f(!0),g(null),m(null);try{let n=await HTe({days:t}),r=await rU();e.setQueryData([`user-settings`],r),m(`Deleted ${n.rowsDeleted.toLocaleString()} telemetry rows older than ${t} days. Cutoff: ${n.cutoff}.`)}catch(e){g(e instanceof Error?e.message:String(e))}finally{f(!1)}};return(0,W.jsx)(FJ,{title:`Telemetry retention`,children:(0,W.jsxs)(`div`,{className:`space-y-5`,children:[(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-4`,children:[(0,W.jsx)(`div`,{className:`mb-2 text-xs font-semibold uppercase tracking-wider text-slate-300`,children:`Automatic cleanup`}),(0,W.jsx)(`p`,{className:`mb-4 max-w-2xl text-xs leading-5 text-slate-400`,children:`Pibo keeps sessions, rooms, chat messages, and renderable trace events. This retention policy deletes only runtime telemetry/debug rows older than the configured age.`}),(0,W.jsxs)(`label`,{className:`mb-4 flex items-center gap-3 text-sm text-slate-200`,children:[(0,W.jsx)(`input`,{type:`checkbox`,checked:a,disabled:n||l,onChange:e=>void y({enabled:e.target.checked}),className:`h-4 w-4 accent-[#11a4d4]`}),`Enable automatic telemetry retention`]}),(0,W.jsxs)(`div`,{className:`max-w-xs`,children:[(0,W.jsx)(`label`,{className:`mb-1 block text-[11px] font-semibold uppercase tracking-wider text-slate-500`,children:`Delete telemetry older than`}),(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`input`,{type:`number`,min:1,max:365,value:r,disabled:n||l,onChange:e=>i(Number(e.target.value)),onBlur:()=>void y({days:r}),className:`w-24 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`text-xs text-slate-400`,children:`days`})]})]}),(0,W.jsx)(`div`,{className:`mt-3 text-[11px] text-slate-500`,children:`Default is 30 days. Automatic cleanup skips runs while runtime sessions are processing or streaming.`}),(0,W.jsxs)(`div`,{className:`mt-2 text-[11px] text-slate-500`,children:[`Last prune: `,_?new Date(_).toLocaleString():`never`]})]}),(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-4`,children:[(0,W.jsx)(`div`,{className:`mb-2 text-xs font-semibold uppercase tracking-wider text-slate-300`,children:`Manual cleanup`}),(0,W.jsx)(`p`,{className:`mb-4 max-w-2xl text-xs leading-5 text-slate-400`,children:`Run retention now with a custom cutoff. This affects telemetry tables only and never deletes sessions, rooms, chat messages, or trace-render events.`}),(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`input`,{type:`number`,min:1,max:365,value:s,disabled:d,"aria-invalid":!v,onChange:e=>c(Number(e.target.value)),className:`w-24 rounded-sm border border-slate-700 bg-[#0e1116] px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`}),(0,W.jsx)(`span`,{className:`text-xs text-slate-400`,children:`days`}),(0,W.jsxs)(`button`,{type:`button`,disabled:d||!v,onClick:()=>void b(),className:`inline-flex items-center justify-center gap-2 rounded-sm border border-red-900/70 bg-red-950/30 px-3 py-2 text-xs font-semibold text-red-100 transition hover:border-red-500 disabled:cursor-not-allowed disabled:opacity-60`,children:[(0,W.jsx)(Sl,{size:13}),d?`Deleting…`:`Delete old telemetry now`]})]})]}),(0,W.jsx)(`div`,{className:`rounded-sm border border-amber-900/50 bg-amber-950/20 p-3 text-[11px] leading-5 text-amber-100`,children:`Detailed provider-event capture is intentionally off by default because it can be high-volume. Use the dedicated debug flag only for short incident windows.`}),l?(0,W.jsx)(`div`,{className:`text-xs text-slate-400`,children:`Saving…`}):null,p?(0,W.jsx)(`div`,{className:`text-xs text-emerald-300`,children:p}):null,h?(0,W.jsx)(`div`,{className:`text-xs text-red-300`,children:h}):null]})})}function zWe(e){return Number.isFinite(e)?Math.max(1,Math.min(365,Math.trunc(e))):30}function BWe(){let e=On(),{data:t,isLoading:n}=Un({queryKey:[`user-settings`],queryFn:rU}),[r,i]=(0,U.useState)(aX),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(null);(0,U.useEffect)(()=>{let e=t?.shortcuts?.webAnnotationsToggle||oX();i(e),sX(e),cX(e)},[t?.shortcuts?.webAnnotationsToggle]);let d=async t=>{let n=lX(t)||`Alt+Shift+A`;i(n),c(!0),u(null);try{let t=await iU({shortcuts:{webAnnotationsToggle:n}});e.setQueryData([`user-settings`],t),sX(t.shortcuts.webAnnotationsToggle),cX(t.shortcuts.webAnnotationsToggle)}catch(e){u(e instanceof Error?e.message:String(e))}finally{c(!1)}};return(0,W.jsx)(FJ,{title:`Shortcuts`,children:(0,W.jsxs)(`div`,{className:`grid max-w-2xl gap-3 rounded-sm border border-slate-800 bg-[#151f24] p-3`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-sm font-semibold text-slate-200`,children:[(0,W.jsx)(Fs,{size:15}),` Toggle annotation mode`]}),(0,W.jsx)(`div`,{className:`mt-1 text-xs text-slate-500`,children:`Toggles the Web Annotation element mode with the pencil button.`})]}),(0,W.jsx)(`kbd`,{className:`rounded-sm border border-slate-700 bg-[#0e1116] px-2 py-1 font-mono text-xs text-[#7dd3fc]`,children:r})]}),(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`button`,{type:`button`,disabled:n||s,"aria-pressed":a,onClick:()=>{u(null),o(e=>!e)},onKeyDown:e=>{if(!a)return;if(e.key===`Escape`){e.preventDefault(),e.stopPropagation(),o(!1),u(null);return}let t=JNe(e);if(!t){[`Alt`,`Control`,`Meta`,`Shift`].includes(e.key)||(e.preventDefault(),e.stopPropagation(),u(`Use Ctrl, Alt, or Meta with another key.`));return}e.preventDefault(),e.stopPropagation(),o(!1),d(t)},className:`rounded-sm border px-3 py-2 text-xs font-medium ${a?`border-[#11a4d4] bg-[#11a4d4]/10 text-sky-100`:`border-slate-700 text-slate-300 hover:border-[#11a4d4] hover:text-[#7dd3fc]`} disabled:opacity-50`,children:a?`Press shortcut…`:`Record shortcut`}),(0,W.jsx)(`button`,{type:`button`,disabled:s||r===`Alt+Shift+A`,onClick:()=>void d(aX),className:`rounded-sm border border-slate-700 px-3 py-2 text-xs text-slate-300 hover:border-[#11a4d4] hover:text-[#7dd3fc] disabled:opacity-50`,children:`Reset`}),s?(0,W.jsx)(`span`,{className:`text-xs text-slate-400`,children:`Saving…`}):null]}),(0,W.jsxs)(`div`,{className:`text-[11px] text-slate-500`,children:[`Default: `,aX,`. Use a modifier combination to avoid conflicts with normal typing.`]}),l?(0,W.jsx)(`div`,{className:`text-xs text-red-300`,children:l}):null]})})}function VWe(e){let t=new Set([`UTC`,...Intl.supportedValuesOf?.(`timeZone`)??PWe]);return e&&t.add(e),[...t].map(e=>({value:e,label:HWe(e),offset:UWe(e)})).sort((e,t)=>e.offset-t.offset||e.label.localeCompare(t.label)).map(({value:e,label:t})=>({value:e,label:t}))}function HWe(e){let t=e===`UTC`?`UTC`:e.split(`/`).pop()?.replaceAll(`_`,` `)??e,n=e.includes(`/`)?e.split(`/`)[0].replaceAll(`_`,` `):void 0,r=m6(e);return`${t}${n?` (${n})`:``} — ${r}`}function m6(e){try{return new Intl.DateTimeFormat(`en-US`,{timeZone:e,timeZoneName:`shortOffset`}).formatToParts(new Date).find(e=>e.type===`timeZoneName`)?.value.replace(`GMT`,`UTC`)??e}catch{return e}}function UWe(e){let t=m6(e),n=/^UTC(?:(?<sign>[+-])(?<hours>\d{1,2})(?::(?<minutes>\d{2}))?)?$/.exec(t);return n?.groups?.sign?(n.groups.sign===`-`?-1:1)*(Number(n.groups.hours)*60+Number(n.groups.minutes??0)):0}function WWe({modelDefaults:e,modelCatalog:t,onChanged:n}){let[r,i]=(0,U.useState)(e??{}),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(null);(0,U.useEffect)(()=>{i(e??{})},[e]);let l=async e=>{i(e),o(!0);try{n(await zTe(e)),c(null)}catch(e){c(e instanceof Error?e.message:String(e))}finally{o(!1)}};return(0,W.jsxs)(`div`,{className:`grid gap-3 border-t border-slate-800 pt-3`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Runtime Model Defaults`}),(0,W.jsx)(KJ,{title:`Main Agent`,modelTitle:`Main Agent Default`,model:r.main,thinking:r.mainThinking,fast:r.mainFast??!1,modelCatalog:t,readOnly:a,modelHint:`Unset to use provider fallback.`,configuredProvidersOnly:!0,onModelChange:e=>void l({...r,main:e}),onThinkingChange:e=>void l({...r,mainThinking:e}),onFastChange:e=>void l({...r,mainFast:e})}),(0,W.jsx)(KJ,{title:`Subagent`,modelTitle:`Subagent Default`,model:r.subagent,thinking:r.subagentThinking,fast:r.subagentFast??!1,modelCatalog:t,readOnly:a,modelHint:`Unset to use provider fallback.`,configuredProvidersOnly:!0,onModelChange:e=>void l({...r,subagent:e}),onThinkingChange:e=>void l({...r,subagentThinking:e}),onFastChange:e=>void l({...r,subagentFast:e})}),s?(0,W.jsx)(`div`,{className:`text-xs text-amber-100`,children:s}):null]})}function GWe({packages:e,onPackageChanged:t,onPackageRemoved:n}){let[r,i]=(0,U.useState)(``),[a,o]=(0,U.useState)(null),[s,c]=(0,U.useState)(null),[l,u]=(0,U.useState)(()=>new Set),d=e??[],f=d.filter(e=>e.installStatus===`installed`).length,p=d.filter(e=>e.enabled).length,m=async()=>{if(!a){o(`add`);try{let e=await Fke(r);t(e),i(``),u(t=>new Set(t).add(e.id)),c(null)}catch(e){c(e instanceof Error?e.message:String(e))}finally{o(null)}}},h=async e=>{if(!a){o(`${e.id}:enabled`);try{t(await Ike(e.id,{enabled:!e.enabled})),c(null)}catch(e){c(e instanceof Error?e.message:String(e))}finally{o(null)}}},g=async e=>{if(!a&&window.confirm(`Unregister Pi package "${e.name}"?`)){o(`${e.id}:delete`);try{n(await Lke(e.id)),u(t=>{let n=new Set(t);return n.delete(e.id),n}),c(null)}catch(e){c(e instanceof Error?e.message:String(e))}finally{o(null)}}},_=e=>{u(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})};return(0,W.jsxs)(FJ,{title:`Pi Package Management`,children:[(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`div`,{className:`grid grid-cols-[minmax(0,1fr)_auto] gap-2`,children:[(0,W.jsx)(`input`,{value:r,disabled:!e||a===`add`,onChange:e=>{let t=e.target.value;i(t),t.trim()||c(null)},className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-[#11a4d4] disabled:opacity-60`,placeholder:`https://pi.dev/packages/package-name`}),(0,W.jsx)(`button`,{type:`button`,disabled:!e||a===`add`||!r.trim(),onClick:()=>void m(),title:`Add Pi Package`,"aria-label":`Add Pi Package`,className:`h-9 w-9 inline-flex items-center justify-center border border-[#11a4d4] rounded-sm text-[#11a4d4] bg-[#11a4d4]/10 disabled:opacity-50`,children:(0,W.jsx)(tl,{size:14})})]}),(0,W.jsx)(`div`,{className:`text-[11px] text-slate-500`,children:`Extensions execute code in the Pi runtime. Review package source before adding it.`}),s?(0,W.jsx)(`div`,{className:`border border-red-500/60 bg-red-500/10 text-red-200 px-3 py-2 text-sm rounded-sm`,children:s}):null,(0,W.jsxs)(`div`,{className:`font-mono text-[10px] uppercase tracking-wider text-slate-500`,children:[d.length,` registered / `,f,` installed / `,p,` enabled`]})]}),e?d.length?(0,W.jsx)(`div`,{className:`grid gap-2`,children:d.map(e=>(0,W.jsx)(JWe,{pkg:e,expanded:l.has(e.id),busy:a?.startsWith(`${e.id}:`)??!1,onToggleExpanded:()=>_(e.id),onToggleEnabled:()=>void h(e),onUnregister:()=>void g(e)},e.id))}):(0,W.jsx)(HJ,{message:`No Pi packages registered`}):(0,W.jsx)(HJ,{})]})}function KWe({skills:e,onSkillChanged:t,onSkillRemoved:n}){let[r,i]=(0,U.useState)(!1),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(null),[l,u]=(0,U.useState)(``),[d,f]=(0,U.useState)(null),[p,m]=(0,U.useState)(null),h=e??[],g=h.filter(e=>e.enabled).length,_=async e=>{if(!d){f(`${e.id}:enabled`);try{t(await hG(e.id,{enabled:!e.enabled})),m(null)}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(null)}}},v=async e=>{if(!d&&window.confirm(`Delete skill "${e.name}"?`)){f(`${e.id}:delete`);try{await Bke(e.id),n(e.id),m(null)}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(null)}}},y=async e=>{f(`create`);try{t(await zke(e)),i(!1),m(null)}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(null)}},b=async e=>{f(`install`);try{t(await Vke(e)),o(!1),m(null)}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(null)}},x=async(e,n)=>{f(`edit`);try{t(await hG(e,n)),c(null),m(null)}catch(e){m(e instanceof Error?e.message:String(e))}finally{f(null)}};return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(FJ,{title:`Skill Management`,children:[(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,W.jsxs)(`button`,{type:`button`,disabled:d===`create`,onClick:()=>i(!0),className:`inline-flex items-center gap-2 border border-[#11a4d4] rounded-sm px-3 py-2 text-sm text-[#11a4d4] bg-[#11a4d4]/10 disabled:opacity-50`,children:[(0,W.jsx)(tl,{size:14}),`Create Skill`]}),(0,W.jsxs)(`button`,{type:`button`,disabled:d===`install`,onClick:()=>o(!0),className:`inline-flex items-center gap-2 border border-slate-700 rounded-sm px-3 py-2 text-sm text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:[(0,W.jsx)(fc,{size:14}),`Install from URL`]})]}),p?(0,W.jsx)(`div`,{className:`border border-red-500/60 bg-red-500/10 text-red-200 px-3 py-2 text-sm rounded-sm`,children:p}):null,(0,W.jsxs)(`div`,{className:`font-mono text-[10px] uppercase tracking-wider text-slate-500`,children:[h.length,` skills / `,g,` enabled`]})]}),e?h.length?(0,W.jsx)(`div`,{className:`grid gap-2`,children:h.map(e=>(0,W.jsx)(`div`,{className:`border rounded-sm p-2 ${e.enabled?`border-slate-800 bg-[#151f24]`:`border-slate-800 bg-[#151f24] opacity-75`}`,children:(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2 max-[640px]:items-start`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`min-w-0 truncate text-sm text-slate-200`,children:e.name}),(0,W.jsx)(`span`,{className:`shrink-0 border px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-wider ${e.enabled?`border-[#11a4d4]/60 text-[#7dd3fc]`:`border-slate-700 text-slate-500`}`,children:e.enabled?`enabled`:`disabled`}),(0,W.jsx)(`span`,{className:`shrink-0 border px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-wider border-slate-700 text-slate-500`,children:e.scope??`global`}),(0,W.jsx)(`span`,{className:`shrink-0 border px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-wider border-slate-700 text-slate-500`,children:e.source})]}),(0,W.jsx)(`div`,{className:`truncate text-xs text-slate-500`,children:e.description||e.path})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,disabled:d?.startsWith(`${e.id}:`)??!1,onClick:()=>void _(e),title:`${e.enabled?`Disable`:`Enable`} ${e.name}`,"aria-label":`${e.enabled?`Disable`:`Enable`} ${e.name}`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:e.enabled?(0,W.jsx)(nl,{size:13}):(0,W.jsx)(rl,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:d?.startsWith(`${e.id}:`)??!1,onClick:async()=>{try{let t=await Rke(e.id);c(e),u(t.markdown)}catch{c(e),u(``)}},title:`Edit ${e.name}`,"aria-label":`Edit ${e.name}`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:(0,W.jsx)($c,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:d?.startsWith(`${e.id}:`)??!1,onClick:()=>void v(e),title:`Delete ${e.name}`,"aria-label":`Delete ${e.name}`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-red-500 hover:text-red-400 disabled:opacity-50`,children:(0,W.jsx)(Sl,{size:13})})]})]})},e.id))}):(0,W.jsx)(HJ,{message:`No user skills`}):(0,W.jsx)(HJ,{})]}),r?(0,W.jsx)(g6,{title:`Create Skill`,onSave:y,onClose:()=>{i(!1),m(null)},busy:d===`create`}):null,a?(0,W.jsx)(qWe,{onInstall:b,onClose:()=>{o(!1),m(null)},busy:d===`install`}):null,s?(0,W.jsx)(g6,{title:`Edit Skill`,initialName:s.name,initialDescription:s.description,initialMarkdown:l,onSave:e=>void x(s.id,e),onClose:()=>c(null),busy:d===`edit`}):null]})}function h6({children:e,onClose:t}){return(0,W.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/70 p-4`,children:[(0,W.jsx)(`div`,{className:`w-full max-w-2xl rounded-sm border border-slate-700 bg-[#151f24] shadow-2xl`,children:e}),(0,W.jsx)(`button`,{type:`button`,className:`absolute inset-0 -z-10`,onClick:t,"aria-label":`Close modal`})]})}function g6({title:e,initialName:t=``,initialDescription:n=``,initialMarkdown:r=``,onSave:i,onClose:a,busy:o}){let[s,c]=(0,U.useState)(t),[l,u]=(0,U.useState)(n),[d,f]=(0,U.useState)(r);return(0,W.jsxs)(h6,{onClose:a,children:[(0,W.jsxs)(`h2`,{className:`flex items-center gap-2 border-b border-slate-800 px-4 py-3 text-sm font-bold uppercase tracking-wider`,children:[(0,W.jsx)($c,{size:16}),e]}),(0,W.jsxs)(`div`,{className:`grid gap-3 p-4`,children:[(0,W.jsx)(`input`,{value:s,onChange:e=>c(e.target.value),placeholder:`Skill name (kebab-case)`,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-[#11a4d4]`}),(0,W.jsx)(`input`,{value:l,onChange:e=>u(e.target.value),placeholder:`Short description`,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-[#11a4d4]`}),(0,W.jsx)(`textarea`,{value:d,onChange:e=>f(e.target.value),placeholder:`Markdown instructions...`,rows:10,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-[#11a4d4] resize-vertical`}),(0,W.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:a,className:`px-3 py-2 text-sm border border-slate-700 rounded-sm hover:border-slate-500`,children:`Cancel`}),(0,W.jsx)(`button`,{type:`button`,disabled:o||!s.trim(),onClick:()=>i({name:s,description:l,markdown:d}),className:`px-3 py-2 text-sm border border-[#11a4d4] rounded-sm bg-[#11a4d4]/10 text-[#11a4d4] disabled:opacity-50`,children:o?`Saving...`:`Save`})]})]})]})}function qWe({onInstall:e,onClose:t,busy:n}){let[r,i]=(0,U.useState)(``);return(0,W.jsxs)(h6,{onClose:t,children:[(0,W.jsxs)(`h2`,{className:`flex items-center gap-2 border-b border-slate-800 px-4 py-3 text-sm font-bold uppercase tracking-wider`,children:[(0,W.jsx)(fc,{size:16}),`Install Skill`]}),(0,W.jsxs)(`div`,{className:`grid gap-3 p-4`,children:[(0,W.jsx)(`input`,{value:r,onChange:e=>i(e.target.value),placeholder:`https://skills.sh/account/skills/skill-name`,className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-[#11a4d4]`}),(0,W.jsx)(`div`,{className:`text-[11px] text-slate-500`,children:`Supports skills.sh URLs, GitHub tree URLs, or account/repo shorthand.`}),(0,W.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:t,className:`px-3 py-2 text-sm border border-slate-700 rounded-sm hover:border-slate-500`,children:`Cancel`}),(0,W.jsx)(`button`,{type:`button`,disabled:n||!r.trim(),onClick:()=>e(r),className:`px-3 py-2 text-sm border border-[#11a4d4] rounded-sm bg-[#11a4d4]/10 text-[#11a4d4] disabled:opacity-50`,children:n?`Installing...`:`Install`})]})]})]})}function JWe({pkg:e,expanded:t,busy:n,onToggleExpanded:r,onToggleEnabled:i,onUnregister:a}){let o=e.diagnostics.some(e=>e.type===`error`);return(0,W.jsxs)(`div`,{className:`border rounded-sm ${e.enabled?`border-slate-800 bg-[#151f24]`:`border-slate-800 bg-[#151f24] opacity-75`}`,children:[(0,W.jsxs)(`div`,{className:`grid grid-cols-[1fr_auto] gap-2 p-2`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`min-w-0 truncate text-sm text-slate-200`,children:e.name}),(0,W.jsx)(`span`,{className:`shrink-0 border px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-wider ${e.enabled?`border-[#11a4d4]/60 text-[#7dd3fc]`:`border-slate-700 text-slate-500`}`,children:e.enabled?`enabled`:`disabled`}),(0,W.jsx)(`span`,{className:`shrink-0 border px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-wider ${e.installStatus===`installed`?`border-[#0bda57]/50 text-green-300`:`border-[#f59e0b]/50 text-amber-100`}`,children:e.installStatus})]}),(0,W.jsx)(`div`,{className:`truncate text-xs text-slate-500`,children:e.description??e.source}),(0,W.jsx)(`div`,{className:`font-mono text-[10px] mt-1 ${o?`text-[#f59e0b]`:`text-[#11a4d4]`}`,children:NJ(e)})]}),(0,W.jsxs)(`div`,{className:`flex items-start gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:r,title:t?`Hide Details`:`Show Details`,"aria-label":t?`Hide Details`:`Show Details`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:t?(0,W.jsx)(Ws,{size:13}):(0,W.jsx)(Ks,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:n,onClick:i,title:e.enabled?`Disable Package`:`Enable Package`,"aria-label":e.enabled?`Disable Package`:`Enable Package`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:e.enabled?(0,W.jsx)(nl,{size:13}):(0,W.jsx)(rl,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:n,onClick:a,title:`Unregister Package`,"aria-label":`Unregister Package`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-red-400 hover:text-red-300 disabled:opacity-50`,children:(0,W.jsx)(Sl,{size:13})})]})]}),t?(0,W.jsx)(RJ,{pkg:e}):null]})}function YWe({data:e,selectedProject:t,selectedPiboSessionId:n,activeProjects:r,archivedProjects:i,sessionGroups:a,selectedSessionPathIds:o,autoRenameSessionId:s,creatingSession:c,navigationPending:l,showArchivedProjects:u,showArchivedSessions:d,mobileSidebarOpen:f,onRefresh:p,onCloseMobileSidebar:m,onCreateProject:h,onToggleArchivedProjects:g,onSelectProject:_,onRenameProject:v,onSetProjectArchived:y,onDeleteArchivedProject:b,onCreateProjectSession:x,onToggleArchivedSessions:S,onSelectSession:C,onRenameSession:w,onArchiveSession:T,onDeleteSession:E,onViewContext:D,onAutoRenameConsumed:O}){let k=xq(),A=Date.now(),j=r.filter(t=>t.id!==e.sharedDefaultProject.id);return(0,W.jsxs)(`aside`,{"data-pibo-mobile-sidebar":!0,"data-pibo-navigation-pending":l?`true`:`false`,...yq(k,f,`Projects sidebar`),className:`min-h-0 overflow-auto bg-[#1a262b] border-r border-slate-800 max-[980px]:fixed max-[980px]:left-0 max-[980px]:top-0 max-[980px]:bottom-0 max-[980px]:z-40 max-[980px]:w-[280px] max-[980px]:transition-transform max-[980px]:duration-200 ${f?`max-[980px]:translate-x-0`:`max-[980px]:-translate-x-full`}`,children:[(0,W.jsxs)(`div`,{className:`h-11 px-3 border-b border-slate-800 flex items-center justify-between text-xs font-bold uppercase tracking-wider max-[980px]:h-auto max-[980px]:py-2`,children:[(0,W.jsx)(`span`,{children:`projects`}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:p,title:`Refresh`,"aria-label":`Refresh`,className:`p-1 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(il,{size:13})}),(0,W.jsx)(`button`,{type:`button`,onClick:m,title:`Close sidebar`,"aria-label":`Close sidebar`,className:`min-[981px]:hidden p-1 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(Al,{size:13})})]})]}),(0,W.jsxs)(`div`,{className:`p-2 space-y-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Project Manager`}),(0,W.jsx)(_6,{project:e.sharedDefaultProject,selected:t?.id===e.sharedDefaultProject.id,onSelect:()=>_(e.sharedDefaultProject.id),mutationsDisabled:l})]}),(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-1 pb-1`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Projects`}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:h,disabled:l,title:`New Project`,"aria-label":`New Project`,className:`h-6 w-6 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:cursor-not-allowed disabled:opacity-50`,children:(0,W.jsx)(tl,{size:14})}),(0,W.jsx)(`button`,{type:`button`,onClick:g,title:`Archived Projects`,"aria-label":`Archived Projects`,className:`h-6 w-6 inline-flex items-center justify-center border rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4] ${u?`border-[#11a4d4] text-[#11a4d4]`:`border-slate-700 text-slate-400`}`,children:u?(0,W.jsx)(Ds,{size:14}):(0,W.jsx)(Os,{size:14})})]})]}),j.map(e=>(0,W.jsx)(_6,{project:e,selected:t?.id===e.id,onSelect:()=>_(e.id),onRename:t=>v(e,t),onArchive:()=>y(e,!0),mutationsDisabled:l},e.id)),j.length===0?(0,W.jsx)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm`,children:`No projects`}):null,u?(0,W.jsxs)(`div`,{className:`mt-3`,children:[(0,W.jsx)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Archived Projects`}),i.map(e=>(0,W.jsx)(_6,{project:e,selected:t?.id===e.id,onSelect:()=>_(e.id),onRename:t=>v(e,t),onArchive:()=>y(e,!1),onDelete:()=>b(e),archived:!0,mutationsDisabled:l},e.id))]}):null]}),(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-1 pb-1`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Project Sessions`}),(0,W.jsx)(`div`,{className:`text-[10px] text-slate-500`,children:`Sessions run in the project workspace`})]}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:x,disabled:c||l||!t,title:`New Project Session`,"aria-label":`New Project Session`,className:`h-6 w-6 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:(0,W.jsx)(tl,{size:14})}),(0,W.jsx)(`button`,{type:`button`,onClick:S,title:d?`Hide Archived Project Sessions`:`Show Archived Project Sessions`,"aria-label":d?`Hide Archived Project Sessions`:`Show Archived Project Sessions`,className:`h-6 w-6 inline-flex items-center justify-center border rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4] ${d?`border-[#11a4d4] text-[#11a4d4]`:`border-slate-700 text-slate-400`}`,children:d?(0,W.jsx)(Ds,{size:14}):(0,W.jsx)(Os,{size:14})})]})]}),a.active.map(e=>(0,W.jsx)(a$,{node:e,signalNow:A,selectedPiboSessionId:n,selectedSessionPathIds:o,onSelect:C,onRename:w,onArchive:T,onDelete:E,onViewContext:D,loadingPiboSessionId:null,autoRename:s===e.piboSessionId,onAutoRenameConsumed:O,mutationsDisabled:l},e.piboSessionId)),a.active.length===0?(0,W.jsx)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm`,children:`No active project sessions`}):null,d?(0,W.jsxs)(`div`,{className:`mt-3`,children:[(0,W.jsx)(`div`,{className:`px-1 pb-1 text-[10px] font-bold uppercase tracking-wider text-slate-500`,children:`Archived Project Sessions`}),a.archived.map(e=>(0,W.jsx)(a$,{node:e,signalNow:A,selectedPiboSessionId:n,selectedSessionPathIds:o,onSelect:C,onRename:w,onArchive:T,onDelete:E,onViewContext:D,loadingPiboSessionId:null,mutationsDisabled:l},e.piboSessionId)),a.archived.length===0?(0,W.jsx)(`div`,{className:`px-2 py-3 text-xs text-slate-500 border border-dashed border-slate-700 rounded-sm`,children:`No archived project sessions`}):null]}):null]})]})]})}function _6({project:e,selected:t,archived:n,onSelect:r,onRename:i,onArchive:a,onDelete:o,mutationsDisabled:s}){let c=e.metadata?.default===!0||e.metadata?.personal===!0,[l,u]=(0,U.useState)(!1),[d,f]=(0,U.useState)(e.name),[p,m]=(0,U.useState)(!1),h=(0,U.useRef)(null),g=(0,U.useRef)(null);(0,U.useEffect)(()=>{l||f(e.name)},[l,e.name]),(0,U.useEffect)(()=>{s&&(u(!1),m(!1))},[s]),(0,U.useEffect)(()=>{if(!p)return;let e=e=>{g.current&&!g.current.contains(e.target)&&m(!1)};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[p]),(0,U.useLayoutEffect)(()=>{!l||s||(h.current?.focus(),h.current?.select())},[l]);let _=c?`Project Manager`:e.name,v=()=>{if(s)return;let t=d.trim();t&&t!==e.name&&i?.(t),u(!1)};return(0,W.jsxs)(`div`,{className:`group flex items-center gap-2 rounded-sm border px-2 py-2 text-sm ${c?t?`border-[#0bda57] bg-[#0bda57]/10 text-green-100`:`border-[#0bda57]/50 bg-[#0bda57]/5 text-slate-300 hover:border-[#0bda57]`:t?`border-[#11a4d4] bg-[#11a4d4]/10 text-sky-100`:`border-transparent text-slate-300 hover:border-slate-700 hover:bg-slate-900/40`}`,children:[(0,W.jsx)(`span`,{className:`h-6 w-6 shrink-0 inline-flex items-center justify-center rounded-sm ${c?`bg-[#0bda57]/15 text-[#0bda57]`:n?`bg-[#f59e0b]/15 text-[#f59e0b]`:`bg-[#151f24] text-slate-500`}`,children:c?(0,W.jsx)(Rc,{size:13}):n?(0,W.jsx)(Os,{size:13}):(0,W.jsx)(bc,{size:13})}),l&&!s?(0,W.jsxs)(`form`,{className:`min-w-0 flex-1 grid grid-cols-[1fr_auto_auto] gap-1`,onSubmit:e=>{e.preventDefault(),v()},children:[(0,W.jsx)(`input`,{ref:h,value:d,"aria-label":`Project name for ${e.name}`,disabled:s,onChange:e=>f(e.target.value),onKeyDown:t=>{t.key===`Escape`&&(t.preventDefault(),u(!1),f(e.name))},className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-2 py-1 text-sm outline-none focus:border-[#11a4d4]`}),(0,W.jsx)(`button`,{type:`submit`,disabled:s,title:`Save Project Name`,"aria-label":`Save Project Name`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(Us,{size:13})}),(0,W.jsx)(`button`,{type:`button`,disabled:s,onClick:()=>{u(!1),f(e.name)},title:`Cancel Rename`,"aria-label":`Cancel Rename`,className:`h-7 w-7 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(Al,{size:13})})]}):(0,W.jsxs)(`button`,{type:`button`,onClick:r,className:`min-w-0 flex-1 text-left`,children:[(0,W.jsx)(`span`,{className:`block truncate font-medium`,children:_}),(0,W.jsx)(`span`,{className:`block truncate text-[11px] text-slate-500`,children:c?`default project management workspace`:e.projectFolder})]}),c?(0,W.jsx)(`span`,{title:`Project Manager is locked`,"aria-label":`Project Manager is locked`,className:`h-7 w-7 max-[980px]:h-9 max-[980px]:w-9 inline-flex items-center justify-center border border-[#0bda57]/50 rounded-sm text-[#0bda57]`,children:(0,W.jsx)(Rc,{size:24,className:`w-3.5 h-3.5 max-[980px]:w-5 max-[980px]:h-5`})}):l?null:(0,W.jsxs)(`div`,{className:`relative opacity-0 group-hover:opacity-100 group-focus-within:opacity-100 transition-opacity max-[980px]:opacity-100`,ref:g,children:[(0,W.jsx)(`button`,{type:`button`,disabled:s,onClick:()=>m(e=>!e),title:`Project actions`,"aria-label":`Project actions`,className:`h-7 w-7 max-[980px]:h-9 max-[980px]:w-9 inline-flex items-center justify-center border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:cursor-not-allowed disabled:opacity-50`,children:(0,W.jsx)(dc,{size:24,className:`w-3.5 h-3.5 max-[980px]:w-5 max-[980px]:h-5`})}),p&&!s?(0,W.jsxs)(`div`,{className:`absolute right-0 top-full z-50 mt-1 w-48 bg-[#1a262b] border border-slate-700 rounded-sm shadow-lg py-1`,children:[i?(0,W.jsxs)(`button`,{type:`button`,onClick:()=>{m(!1),u(!0)},className:`w-full text-left px-3 py-2.5 text-sm text-slate-300 hover:bg-[#11a4d4]/10 hover:text-[#11a4d4] flex items-center gap-2`,children:[(0,W.jsx)($c,{size:16}),` Rename Project`]}):null,a?(0,W.jsxs)(`button`,{type:`button`,onClick:()=>{m(!1),a()},className:`w-full text-left px-3 py-2.5 text-sm text-slate-300 hover:bg-[#11a4d4]/10 hover:text-[#11a4d4] flex items-center gap-2`,children:[n?(0,W.jsx)(Ds,{size:16}):(0,W.jsx)(Os,{size:16}),` `,n?`Restore Project`:`Archive Project`]}):null,o?(0,W.jsxs)(`button`,{type:`button`,onClick:()=>{m(!1),o()},className:`w-full text-left px-3 py-2.5 text-sm text-red-300 hover:bg-red-500/10 flex items-center gap-2`,children:[(0,W.jsx)(Sl,{size:16}),` Delete Project`]}):null]}):null]})]})}function XWe({open:e,onClose:t,onCreate:n,onCreated:r}){let[i,a]=(0,U.useState)(``),[o,s]=(0,U.useState)(``),[c,l]=(0,U.useState)(``),[u,d]=(0,U.useState)(!1),[f,p]=(0,U.useState)({name:!1,projectFolder:!1}),[m,h]=(0,U.useState)(!1),[g,_]=(0,U.useState)(),v=(0,U.useRef)(null),y=(0,U.useRef)(null);if((0,U.useEffect)(()=>{e&&(a(``),s(``),l(``),d(!1),p({name:!1,projectFolder:!1}),h(!1),_(void 0))},[e]),!e)return null;let b=v6(i,o),x=u||f.name?b.name:void 0,S=u||f.projectFolder?b.projectFolder:void 0;return(0,W.jsx)(AX,{title:`New Project`,description:`Create a project workspace for project-scoped sessions.`,onClose:t,initialFocusRef:v,closeLabel:`Cancel project creation`,closeDisabled:m,children:(0,W.jsxs)(`form`,{className:`grid gap-4 p-4`,onSubmit:async e=>{e.preventDefault(),d(!0),_(void 0);let a=v6(i,o);if(a.name){v.current?.focus();return}if(a.projectFolder){y.current?.focus();return}h(!0);try{let e=await n({name:i.trim(),projectFolder:o.trim(),...c.trim()?{description:c.trim()}:{}});h(!1),t(),r(e)}catch(e){_(JQ(e)),h(!1)}},noValidate:!0,children:[(0,W.jsxs)(y6,{label:`Name`,required:!0,error:x,errorId:`create-project-name-error`,children:[(0,W.jsx)(`input`,{ref:v,id:`create-project-name`,value:i,onChange:e=>{a(e.target.value),_(void 0)},onBlur:()=>p(e=>({...e,name:!0})),required:!0,maxLength:120,"aria-invalid":!!x,"aria-describedby":x?`create-project-name-help create-project-name-error`:`create-project-name-help`,className:`h-9 w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 text-sm text-slate-100 outline-none focus:border-[#11a4d4] focus:ring-1 focus:ring-[#11a4d4]`}),(0,W.jsx)(`div`,{id:`create-project-name-help`,className:`mt-1 text-[11px] text-slate-500`,children:`Required. Maximum 120 characters.`})]}),(0,W.jsxs)(y6,{label:`Folder`,required:!0,error:S,errorId:`create-project-folder-error`,children:[(0,W.jsx)(`input`,{ref:y,id:`create-project-folder`,value:o,onChange:e=>{s(e.target.value),_(void 0)},onBlur:()=>p(e=>({...e,projectFolder:!0})),required:!0,"aria-invalid":!!S,"aria-describedby":S?`create-project-folder-help create-project-folder-error`:`create-project-folder-help`,placeholder:`~/code/my-project or /home/me/code/my-project`,className:`h-9 w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 font-mono text-xs text-slate-100 outline-none placeholder:text-slate-600 focus:border-[#11a4d4] focus:ring-1 focus:ring-[#11a4d4]`}),(0,W.jsx)(`div`,{id:`create-project-folder-help`,className:`mt-1 text-[11px] text-slate-500`,children:`Use an absolute path or a path beginning with ~/.`})]}),(0,W.jsx)(y6,{label:`Description`,optional:!0,children:(0,W.jsx)(`input`,{id:`create-project-description`,value:c,onChange:e=>{l(e.target.value),_(void 0)},className:`h-9 w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 text-sm text-slate-100 outline-none focus:border-[#11a4d4] focus:ring-1 focus:ring-[#11a4d4]`})}),g?(0,W.jsx)(`div`,{className:`rounded-sm border border-red-900/70 bg-red-950/30 px-3 py-2 text-xs text-red-200`,role:`alert`,children:g}):null,(0,W.jsxs)(`div`,{className:`flex justify-end gap-2 border-t border-slate-800 pt-3`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:t,disabled:m,className:`h-8 rounded-sm border border-slate-700 px-3 text-xs text-slate-300 hover:border-slate-500 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,children:`Cancel`}),(0,W.jsxs)(`button`,{type:`submit`,disabled:m,className:`inline-flex h-8 items-center gap-2 rounded-sm bg-[#11a4d4] px-3 text-xs font-semibold text-white disabled:cursor-not-allowed disabled:opacity-50`,children:[m?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):null,`Create project`]})]})]})})}function v6(e,t){let n={},r=e.trim(),i=t.trim();return r?r.length>120&&(n.name=`Project name must be 120 characters or fewer.`):n.name=`Enter a project name.`,i?!i.startsWith(`/`)&&!i.startsWith(`~/`)&&(n.projectFolder=`Use an absolute path or a path beginning with ~/...`):n.projectFolder=`Enter a project folder.`,n}function y6({label:e,required:t,optional:n,error:r,errorId:i,children:a}){return(0,W.jsxs)(`label`,{className:`block text-xs font-semibold text-slate-300`,children:[(0,W.jsxs)(`span`,{children:[e,t?(0,W.jsx)(`span`,{className:`ml-1 text-[#8bdcf4]`,children:`required`}):null,n?(0,W.jsx)(`span`,{className:`ml-1 font-normal text-slate-500`,children:`optional`}):null]}),(0,W.jsx)(`div`,{className:`mt-1.5`,children:a}),r&&i?(0,W.jsx)(`div`,{id:i,className:`mt-1 text-[11px] text-red-300`,role:`alert`,children:r}):null]})}function ZWe(e,t,n){return t===e.selectedProjectId&&n===e.selectedPiboSessionId?null:{projectId:e.selectedProjectId,...e.selectedPiboSessionId?{piboSessionId:e.selectedPiboSessionId}:{}}}function QWe(e,t,n){let r=!!(t&&e?.selectedProjectId!==t),i=!!(e&&(!t||e.selectedProjectId===t)),a=!!(n&&i&&NQ(e?.sessions??[],n)),o=!!(n&&(!a||e?.selectedPiboSessionId!==n)),s=r||o;return{project:!t||e?.project?.id===t?e?.project:e?.projects.find(e=>e.id===t),selectedPiboSessionId:r?null:n?a?n:null:e?.selectedPiboSessionId??null,navigationPending:s}}function $We(e){let t=[],n=[];for(let r of e??[])r.archivedAt?n.push(r):t.push(r);return{active:t,archived:n}}function eGe(e,t){return{...e,...t?.session?{session:t.session}:{},agents:t?.agents??e.agents,customAgents:t?.customAgents??e.customAgents,agentFolders:t?.agentFolders??e.agentFolders,modelDefaults:t?.modelDefaults??e.modelDefaults,modelCatalog:t?.modelCatalog??e.modelCatalog,agentCatalog:t?.agentCatalog??e.agentCatalog,capabilities:t?.capabilities??e.capabilities,sessions:t?.sessions??[]}}var tGe=[{id:`sessions`,label:`Sessions`,routeSegment:`sessions`,enabled:!0,description:`Room-like chat sessions that always run in the project workspace.`},{id:`workflows`,label:`Workflows`,routeSegment:`workflows`,enabled:!1,description:`Workflow runs and graph authoring will return as a project module after the redesign.`},{id:`todos`,label:`Todos / Kanban`,routeSegment:`todos`,enabled:!1,description:`Project-scoped planning views are reserved for a later module.`},{id:`knowledge`,label:`Knowledge`,routeSegment:`knowledge`,enabled:!1,description:`Project-scoped knowledge, skills, MCPs, hooks, and heartbeat modules are deferred.`}],nGe=class{generation=0;routeKey;constructor(e){this.routeKey=e}sync(e){e!==this.routeKey&&(this.routeKey=e,this.generation+=1)}capture(){return this.generation}isCurrent(e){return e===this.generation}},rGe=class{generation=0;controller=null;begin(e){return this.controller?.abort(),this.controller=new AbortController,this.generation+=1,{generation:this.generation,routeKey:e,signal:this.controller.signal}}isCurrent(e,t){return!e.signal.aborted&&e.generation===this.generation&&e.routeKey===t}abort(){this.controller?.abort(),this.controller=null,this.generation+=1}};function iGe(e,t){return JSON.stringify([e??null,t??null])}function aGe(e,t,n=!1){return JSON.stringify([e??null,t??null,n])}var oGe=new Set;function b6({baseBootstrap:e,routeProjectId:t,routePiboSessionId:n,sessionViews:r,showRawEvents:i,showThinking:a,expandThinking:o,toolDisplayMode:s,commands:c,skills:l,onNavigate:u,onViewContext:d,onSelectSessionView:f,onToggleRawEvents:p,onToggleThinking:m,onToggleExpandThinking:h,onToolDisplayModeChange:g,onThinkingLevelChange:_,mobileSidebarOpen:v,onCloseMobileSidebar:y,terminalFullscreen:b,onEnterTerminalFullscreen:x,onExitTerminalFullscreen:S,onError:C}){let[w,T]=(0,U.useState)(null),[E,D]=(0,U.useState)(!0),[O,k]=(0,U.useState)(()=>localStorage.getItem(`pibo.chat.projects.showArchivedProjects`)===`true`),[A,j]=(0,U.useState)(()=>localStorage.getItem(`pibo.chat.projects.showArchivedSessions`)===`true`),[M,N]=(0,U.useState)(!1),[P,F]=(0,U.useState)(!1),[I,L]=(0,U.useState)(null),[R,z]=(0,U.useState)(null),[B,ee]=(0,U.useState)(()=>n?EY(n):``),[te,ne]=(0,U.useState)(0),re=O||A,V=iGe(t,n),ie=(0,U.useRef)(null);ie.current?ie.current.sync(V):ie.current=new nGe(V);let ae=aGe(t,n,re),oe=(0,U.useRef)(ae);oe.current=ae;let se=(0,U.useRef)(null);se.current||=new rGe;let ce=(0,U.useCallback)(async(e={})=>{if(ae!==oe.current)return null;let r=se.current,i=r.begin(ae);D(!0);try{let a=await Fl({projectId:e.projectId??t,piboSessionId:e.piboSessionId??n,includeArchived:re},{signal:i.signal});if(!r.isCurrent(i,oe.current))return null;T(a);let o=ZWe(a,t,n);return o&&u(o.projectId,o.piboSessionId,!0,{closeMobileSidebar:!1}),C(null),a}catch(e){if(!r.isCurrent(i,oe.current))return null;throw C(JQ(e)),e}finally{r.isCurrent(i,oe.current)&&D(!1)}},[ae,re,C,u,n,t]);(0,U.useEffect)(()=>{ce().catch(()=>void 0)},[ce]),(0,U.useEffect)(()=>()=>se.current?.abort(),[]),(0,U.useEffect)(()=>{ee(n?EY(n):``)},[n]);let le=w?.project,ue=QWe(w,t,n),de=(0,U.useRef)(ue.navigationPending);de.current=ue.navigationPending;let fe=ue.project,pe=fe?fe.metadata?.default===!0?`Project Manager`:fe.name:`Unknown project`,me=w?.selectedPiboSessionId??null,he=ue.selectedPiboSessionId,ge=he&&w?NQ(w.sessions,he):void 0,_e=ge?.profile??jQ(e),ve=w?.projectSessions??[],ye=$We(w?.projects),be=ye.active,xe=ye.archived,Se=(0,U.useMemo)(()=>w?Zq(w.sessions,A):{active:[],archived:[]},[w,A]),Ce=(0,U.useMemo)(()=>me&&w?new Set(PQ(w.sessions,me).map(e=>e.piboSessionId)):oGe,[w,me]),we=(0,U.useMemo)(()=>eGe(e,w),[e,w]),H=(0,U.useMemo)(()=>z3(`terminal`),[]),Te=!ue.navigationPending&&I===`info`&&le?(0,W.jsx)(sGe,{project:le,sessionCount:ve.length}):null,Ee=(0,U.useMemo)(()=>[{id:`project-info`,label:`Info`,description:`Project workspace and project-scoped module overview.`,active:!ue.navigationPending&&I===`info`,onSelect:()=>L(`info`)}],[I,ue.navigationPending]),De=e=>{L(null),f(e)},Oe=async e=>{if(de.current)throw Error(`Wait for project navigation to finish.`);let{project:t}=await Il({...e,createFolder:!0});return t.id},ke=e=>{de.current||u(e,void 0)},Ae=async()=>{if(!le||de.current)return;let e=ie.current.capture(),t=le.id;N(!0);try{let n=await zl(t,{profile:_e,workflowId:`simple-chat`});if(!ie.current.isCurrent(e))return;z(n.session.id),u(t,n.session.id,!1,{closeMobileSidebar:!1})}catch(e){C(JQ(e))}finally{N(!1)}},je=async(e,t)=>{if(!de.current)try{await Bl(e,{title:t}),await ce({projectId:le?.id,piboSessionId:e})}catch(e){C(JQ(e))}},Me=async(e,t)=>{if(!de.current)try{await Ll(e.id,{name:t}),await ce({projectId:le?.id,piboSessionId:me??void 0})}catch(e){C(JQ(e))}},Ne=async(e,t)=>{if(!de.current)try{await Ll(e.id,{archived:t});let n=await ce({projectId:t?void 0:e.id});n&&t&&le?.id===e.id&&u(n.selectedProjectId,n.selectedPiboSessionId)}catch(e){C(JQ(e))}},Pe=async e=>{if(de.current)return;let t=window.prompt(`Type the project name to permanently delete "${e.name}".`);if(t===null)return;let n=window.confirm(`Also delete the real project folder?\n\n${e.projectFolder}`);try{await Rl(e.id,{confirmName:t,deleteFiles:n});let r=await ce({projectId:le?.id===e.id?void 0:le?.id});r&&le?.id===e.id&&u(r.selectedProjectId,r.selectedPiboSessionId)}catch(e){C(JQ(e))}},Fe=async e=>{if(!he||ue.navigationPending)return!1;let t=e.trim().split(/\s+/)[0],n=c.find(e=>e.slash===t);if(!n)return!1;let r=r6(n.action,e.slice(t.length).trim());return await eu(he,n.action,r),await ce({projectId:fe?.id,piboSessionId:he}),!0},Ie=(0,U.useCallback)(async()=>void 0,[]),Le=(0,U.useCallback)(async()=>{await ce({projectId:fe?.id,piboSessionId:he??void 0})},[ce,he,fe?.id]);return E&&!w?(0,W.jsx)(`main`,{className:`min-h-0 grid place-items-center text-slate-400`,children:`Loading Projects...`}):w?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(XWe,{open:P&&!ue.navigationPending,onClose:()=>F(!1),onCreate:Oe,onCreated:ke}),b?null:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{"data-pibo-mobile-sidebar-backdrop":!0,"aria-hidden":`true`,className:`fixed inset-0 z-30 bg-black/60 min-[981px]:hidden transition-opacity duration-200 ${v?`opacity-100 pointer-events-auto`:`opacity-0 pointer-events-none`}`,onClick:y}),(0,W.jsx)(YWe,{data:w,selectedProject:le,selectedPiboSessionId:me,activeProjects:be,archivedProjects:xe,sessionGroups:Se,selectedSessionPathIds:Ce,autoRenameSessionId:R,creatingSession:M,navigationPending:ue.navigationPending,showArchivedProjects:O,showArchivedSessions:A,mobileSidebarOpen:v,onRefresh:()=>void ce(),onCloseMobileSidebar:y,onCreateProject:()=>{de.current||F(!0)},onToggleArchivedProjects:()=>{let e=!O;k(e),localStorage.setItem(`pibo.chat.projects.showArchivedProjects`,String(e))},onSelectProject:e=>u(e,void 0),onRenameProject:(e,t)=>void Me(e,t),onSetProjectArchived:(e,t)=>void Ne(e,t),onDeleteArchivedProject:e=>void Pe(e),onCreateProjectSession:()=>void Ae(),onToggleArchivedSessions:()=>{let e=!A;j(e),localStorage.setItem(`pibo.chat.projects.showArchivedSessions`,String(e))},onSelectSession:e=>u(le?.id,e),onRenameSession:(e,t)=>void je(e,t),onArchiveSession:(e,t)=>{de.current||Bl(e,{archived:t}).then(()=>ce({projectId:le?.id}))},onDeleteSession:e=>{de.current||Bl(e.piboSessionId,{archived:!0}).then(()=>ce({projectId:le?.id}))},onViewContext:d,onAutoRenameConsumed:()=>z(null)})]}),(0,W.jsx)(r$,{bootstrap:we,selectedPiboSessionId:he,selectedRoomId:null,contextKind:`project`,contextLabel:pe,selectedRoomArchived:!!fe?.archivedAt,sessionNavigationPending:ue.navigationPending,selectedSessionProfile:_e,selectedSessionActiveModel:MQ(we,ge??{profile:_e}),selectedSessionStatus:ge?.status,sessionViewId:`terminal`,sessionViews:r,currentSessionView:H,allowedSessionViewIds:[`terminal`],extraViewTabs:Ee,activeViewId:!ue.navigationPending&&I?`project-${I}`:`terminal`,projectModulePanel:Te,creatingSession:M||ue.navigationPending,terminalFullscreen:b,onEnterTerminalFullscreen:x,onExitTerminalFullscreen:S,showRawEvents:i,showThinking:a,expandThinking:o,toolDisplayMode:s,commands:c,skills:l,composerText:B,composerFocusSignal:te,onComposerTextChange:e=>ee(t=>typeof e==`function`?e(t):e),onToggleRawEvents:p,onToggleThinking:m,onToggleExpandThinking:h,onToolDisplayModeChange:g,onSessionAgentProfileChange:async e=>{he&&!ue.navigationPending&&await Xl(he,{profile:e})},onFork:()=>void 0,onOpenSession:e=>u(le?.id,e),onSelectSessionView:De,onCommand:Fe,onThinkingLevelChange:_,onRefreshTrace:Ie,onRefreshBootstrap:Le,onSend:async(e,t,n,r,i)=>{!he||ue.navigationPending||await Vl(he,e,r,i)},onError:C})]}):(0,W.jsx)(`main`,{className:`min-h-0 grid place-items-center bg-[#101d22] p-6 text-slate-300`,children:(0,W.jsxs)(`div`,{className:`max-w-lg rounded-sm border border-red-900/70 bg-red-950/30 p-4 text-sm leading-6 text-red-100`,role:`alert`,children:[(0,W.jsx)(`div`,{className:`font-bold`,children:`Projects could not be loaded`}),(0,W.jsx)(`div`,{className:`mt-1 text-xs text-red-100/80`,children:`The Projects bootstrap response was empty or unavailable. Refresh to try again.`}),(0,W.jsx)(`button`,{type:`button`,className:`mt-3 rounded-sm border border-red-400/60 px-3 py-1.5 text-xs font-semibold text-red-100 hover:border-red-300`,onClick:()=>void ce(),children:`Refresh Projects`})]})})}function sGe({project:e,sessionCount:t}){let n=e.metadata?.default===!0?`Project Manager`:e.name;return(0,W.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto bg-[#0e1116] p-4 text-sm text-slate-300`,children:(0,W.jsxs)(`div`,{className:`mx-auto max-w-5xl space-y-4`,children:[(0,W.jsxs)(`section`,{className:`rounded-sm border border-slate-800 bg-[#151f24] p-4`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.18em] text-[#11a4d4]`,children:`Project Info`}),(0,W.jsx)(`h2`,{className:`mt-1 text-lg font-bold text-slate-100`,children:n}),(0,W.jsxs)(`div`,{className:`mt-3 grid gap-3 text-xs md:grid-cols-2`,children:[(0,W.jsx)(x6,{label:`Workspace`,value:e.projectFolder,monospace:!0}),(0,W.jsx)(x6,{label:`Sessions`,value:String(t)}),(0,W.jsx)(x6,{label:`Status`,value:e.archivedAt?`archived`:`active`}),(0,W.jsx)(x6,{label:`Project id`,value:e.id,monospace:!0})]})]}),(0,W.jsxs)(`section`,{className:`rounded-sm border border-slate-800 bg-[#151f24] p-4`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.18em] text-slate-500`,children:`Project views`}),(0,W.jsx)(`p`,{className:`mt-2 max-w-2xl text-xs leading-5 text-slate-400`,children:`Project-scoped capabilities live in top-level view tabs, not in the sidebar. Terminal stays a clean session view; future views can be enabled here without becoming session rows.`}),(0,W.jsx)(`div`,{className:`mt-4 grid gap-2 md:grid-cols-2 xl:grid-cols-4`,children:tGe.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border px-3 py-3 text-xs ${e.enabled?`border-[#11a4d4] bg-[#11a4d4]/10 text-[#8bdcf4]`:`border-slate-800 bg-[#101d22]/60 text-slate-500`}`,children:[(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,W.jsx)(`span`,{className:`font-semibold`,children:e.label}),(0,W.jsx)(`span`,{className:`text-[10px] uppercase tracking-wider`,children:e.enabled?`active`:`later`})]}),(0,W.jsx)(`div`,{className:`mt-2 text-[11px] leading-5 opacity-80`,children:e.description})]},e.id))})]})]})})}function x6({label:e,value:t,monospace:n}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-3`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:e}),(0,W.jsx)(`div`,{className:`mt-1 break-words text-slate-200 ${n?`font-mono text-[11px]`:`text-xs`}`,children:t})]})}function S6(e){if(typeof e==`string`||typeof e==`number`)return``+e;let t=``;if(Array.isArray(e))for(let n=0,r;n<e.length;n++)(r=S6(e[n]))!==``&&(t+=(t&&` `)+r);else for(let n in e)e[n]&&(t+=(t&&` `)+n);return t}var cGe={value:()=>{}};function C6(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new w6(n)}function w6(e){this._=e}function lGe(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}w6.prototype=C6.prototype={constructor:w6,on:function(e,t){var n=this._,r=lGe(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=uGe(n[i],e.name)))return i;return}if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=T6(n[i],e.name,t);else if(t==null)for(i in n)n[i]=T6(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new w6(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function uGe(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function T6(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=cGe,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var E6={svg:`http://www.w3.org/2000/svg`,xhtml:`http://www.w3.org/1999/xhtml`,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function D6(e){var t=e+=``,n=t.indexOf(`:`);return n>=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),E6.hasOwnProperty(t)?{space:E6[t],local:e}:e}function dGe(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===`http://www.w3.org/1999/xhtml`&&t.documentElement.namespaceURI===`http://www.w3.org/1999/xhtml`?t.createElement(e):t.createElementNS(n,e)}}function fGe(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function O6(e){var t=D6(e);return(t.local?fGe:dGe)(t)}function pGe(){}function k6(e){return e==null?pGe:function(){return this.querySelector(e)}}function mGe(e){typeof e!=`function`&&(e=k6(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=Array(o),c,l,u=0;u<o;++u)(c=a[u])&&(l=e.call(c,c.__data__,u,a))&&(`__data__`in c&&(l.__data__=c.__data__),s[u]=l);return new W6(r,this._parents)}function hGe(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function gGe(){return[]}function A6(e){return e==null?gGe:function(){return this.querySelectorAll(e)}}function _Ge(e){return function(){return hGe(e.apply(this,arguments))}}function vGe(e){e=typeof e==`function`?_Ge(e):A6(e);for(var t=this._groups,n=t.length,r=[],i=[],a=0;a<n;++a)for(var o=t[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&(r.push(e.call(c,c.__data__,l,o)),i.push(c));return new W6(r,i)}function j6(e){return function(){return this.matches(e)}}function M6(e){return function(t){return t.matches(e)}}var yGe=Array.prototype.find;function bGe(e){return function(){return yGe.call(this.children,e)}}function xGe(){return this.firstElementChild}function SGe(e){return this.select(e==null?xGe:bGe(typeof e==`function`?e:M6(e)))}var CGe=Array.prototype.filter;function wGe(){return Array.from(this.children)}function TGe(e){return function(){return CGe.call(this.children,e)}}function EGe(e){return this.selectAll(e==null?wGe:TGe(typeof e==`function`?e:M6(e)))}function DGe(e){typeof e!=`function`&&(e=j6(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new W6(r,this._parents)}function N6(e){return Array(e.length)}function OGe(){return new W6(this._enter||this._groups.map(N6),this._parents)}function P6(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}P6.prototype={constructor:P6,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function kGe(e){return function(){return e}}function AGe(e,t,n,r,i,a){for(var o=0,s,c=t.length,l=a.length;o<l;++o)(s=t[o])?(s.__data__=a[o],r[o]=s):n[o]=new P6(e,a[o]);for(;o<c;++o)(s=t[o])&&(i[o]=s)}function jGe(e,t,n,r,i,a,o){var s,c,l=new Map,u=t.length,d=a.length,f=Array(u),p;for(s=0;s<u;++s)(c=t[s])&&(f[s]=p=o.call(c,c.__data__,s,t)+``,l.has(p)?i[s]=c:l.set(p,c));for(s=0;s<d;++s)p=o.call(e,a[s],s,a)+``,(c=l.get(p))?(r[s]=c,c.__data__=a[s],l.delete(p)):n[s]=new P6(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&l.get(f[s])===c&&(i[s]=c)}function MGe(e){return e.__data__}function NGe(e,t){if(!arguments.length)return Array.from(this,MGe);var n=t?jGe:AGe,r=this._parents,i=this._groups;typeof e!=`function`&&(e=kGe(e));for(var a=i.length,o=Array(a),s=Array(a),c=Array(a),l=0;l<a;++l){var u=r[l],d=i[l],f=d.length,p=PGe(e.call(u,u&&u.__data__,l,r)),m=p.length,h=s[l]=Array(m),g=o[l]=Array(m);n(u,d,h,g,c[l]=Array(f),p,t);for(var _=0,v=0,y,b;_<m;++_)if(y=h[_]){for(_>=v&&(v=_+1);!(b=g[v])&&++v<m;);y._next=b||null}}return o=new W6(o,r),o._enter=s,o._exit=c,o}function PGe(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function FGe(){return new W6(this._exit||this._groups.map(N6),this._parents)}function IGe(e,t,n){var r=this.enter(),i=this,a=this.exit();return typeof e==`function`?(r=e(r),r&&=r.selection()):r=r.append(e+``),t!=null&&(i=t(i),i&&=i.selection()),n==null?a.remove():n(a),r&&i?r.merge(i).order():i}function LGe(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,a=r.length,o=Math.min(i,a),s=Array(i),c=0;c<o;++c)for(var l=n[c],u=r[c],d=l.length,f=s[c]=Array(d),p,m=0;m<d;++m)(p=l[m]||u[m])&&(f[m]=p);for(;c<i;++c)s[c]=n[c];return new W6(s,this._parents)}function RGe(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,a=r[i],o;--i>=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function zGe(e){e||=BGe;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,c=i[a]=Array(s),l,u=0;u<s;++u)(l=o[u])&&(c[u]=l);c.sort(t)}return new W6(i,this._parents).order()}function BGe(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function VGe(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function HGe(){return Array.from(this)}function UGe(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null}function WGe(){let e=0;for(let t of this)++e;return e}function GGe(){return!this.node()}function KGe(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],a=0,o=i.length,s;a<o;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function qGe(e){return function(){this.removeAttribute(e)}}function JGe(e){return function(){this.removeAttributeNS(e.space,e.local)}}function YGe(e,t){return function(){this.setAttribute(e,t)}}function XGe(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function ZGe(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function QGe(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function $Ge(e,t){var n=D6(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?JGe:qGe:typeof t==`function`?n.local?QGe:ZGe:n.local?XGe:YGe)(n,t))}function F6(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function eKe(e){return function(){this.style.removeProperty(e)}}function tKe(e,t,n){return function(){this.style.setProperty(e,t,n)}}function nKe(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function rKe(e,t,n){return arguments.length>1?this.each((t==null?eKe:typeof t==`function`?nKe:tKe)(e,t,n??``)):I6(this.node(),e)}function I6(e,t){return e.style.getPropertyValue(t)||F6(e).getComputedStyle(e,null).getPropertyValue(t)}function iKe(e){return function(){delete this[e]}}function aKe(e,t){return function(){this[e]=t}}function oKe(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function sKe(e,t){return arguments.length>1?this.each((t==null?iKe:typeof t==`function`?oKe:aKe)(e,t)):this.node()[e]}function L6(e){return e.trim().split(/^|\s+/)}function R6(e){return e.classList||new z6(e)}function z6(e){this._node=e,this._names=L6(e.getAttribute(`class`)||``)}z6.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function B6(e,t){for(var n=R6(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function V6(e,t){for(var n=R6(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function cKe(e){return function(){B6(this,e)}}function lKe(e){return function(){V6(this,e)}}function uKe(e,t){return function(){(t.apply(this,arguments)?B6:V6)(this,e)}}function dKe(e,t){var n=L6(e+``);if(arguments.length<2){for(var r=R6(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t==`function`?uKe:t?cKe:lKe)(n,t))}function fKe(){this.textContent=``}function pKe(e){return function(){this.textContent=e}}function mKe(e){return function(){var t=e.apply(this,arguments);this.textContent=t??``}}function hKe(e){return arguments.length?this.each(e==null?fKe:(typeof e==`function`?mKe:pKe)(e)):this.node().textContent}function gKe(){this.innerHTML=``}function _Ke(e){return function(){this.innerHTML=e}}function vKe(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??``}}function yKe(e){return arguments.length?this.each(e==null?gKe:(typeof e==`function`?vKe:_Ke)(e)):this.node().innerHTML}function bKe(){this.nextSibling&&this.parentNode.appendChild(this)}function xKe(){return this.each(bKe)}function SKe(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function CKe(){return this.each(SKe)}function wKe(e){var t=typeof e==`function`?e:O6(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function TKe(){return null}function EKe(e,t){var n=typeof e==`function`?e:O6(e),r=t==null?TKe:typeof t==`function`?t:k6(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function DKe(){var e=this.parentNode;e&&e.removeChild(this)}function OKe(){return this.each(DKe)}function kKe(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function AKe(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function jKe(e){return this.select(e?AKe:kKe)}function MKe(e){return arguments.length?this.property(`__data__`,e):this.node().__data__}function NKe(e){return function(t){e.call(this,t,this.__data__)}}function PKe(e){return e.trim().split(/^|\s+/).map(function(e){var t=``,n=e.indexOf(`.`);return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function FKe(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n<i;++n)a=t[n],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function IKe(e,t,n){return function(){var r=this.__on,i,a=NKe(t);if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=t;return}}this.addEventListener(e.type,a,n),i={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(i):this.__on=[i]}}function LKe(e,t,n){var r=PKe(e+``),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,l=s.length,u;c<l;++c)for(i=0,u=s[c];i<a;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}return}for(s=t?IKe:FKe,i=0;i<a;++i)this.each(s(r[i],t,n));return this}function H6(e,t,n){var r=F6(e),i=r.CustomEvent;typeof i==`function`?i=new i(t,n):(i=r.document.createEvent(`Event`),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function RKe(e,t){return function(){return H6(this,e,t)}}function zKe(e,t){return function(){return H6(this,e,t.apply(this,arguments))}}function BKe(e,t){return this.each((typeof t==`function`?zKe:RKe)(e,t))}function*VKe(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length,o;i<a;++i)(o=r[i])&&(yield o)}var U6=[null];function W6(e,t){this._groups=e,this._parents=t}function G6(){return new W6([[document.documentElement]],U6)}function HKe(){return this}W6.prototype=G6.prototype={constructor:W6,select:mGe,selectAll:vGe,selectChild:SGe,selectChildren:EGe,filter:DGe,data:NGe,enter:OGe,exit:FGe,join:IGe,merge:LGe,selection:HKe,order:RGe,sort:zGe,call:VGe,nodes:HGe,node:UGe,size:WGe,empty:GGe,each:KGe,attr:$Ge,style:rKe,property:sKe,classed:dKe,text:hKe,html:yKe,raise:xKe,lower:CKe,append:wKe,insert:EKe,remove:OKe,clone:jKe,datum:MKe,on:LKe,dispatch:BKe,[Symbol.iterator]:VKe};function K6(e){return typeof e==`string`?new W6([[document.querySelector(e)]],[document.documentElement]):new W6([[e]],U6)}function UKe(e){let t;for(;t=e.sourceEvent;)e=t;return e}function q6(e,t){if(e=UKe(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}var WKe={passive:!1},J6={capture:!0,passive:!1};function Y6(e){e.stopImmediatePropagation()}function X6(e){e.preventDefault(),e.stopImmediatePropagation()}function Z6(e){var t=e.document.documentElement,n=K6(e).on(`dragstart.drag`,X6,J6);`onselectstart`in t?n.on(`selectstart.drag`,X6,J6):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect=`none`)}function Q6(e,t){var n=e.document.documentElement,r=K6(e).on(`dragstart.drag`,null);t&&(r.on(`click.drag`,X6,J6),setTimeout(function(){r.on(`click.drag`,null)},0)),`onselectstart`in n?r.on(`selectstart.drag`,null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}var $6=e=>()=>e;function e8(e,{sourceEvent:t,subject:n,target:r,identifier:i,active:a,x:o,y:s,dx:c,dy:l,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:l,enumerable:!0,configurable:!0},_:{value:u}})}e8.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function GKe(e){return!e.ctrlKey&&!e.button}function KKe(){return this.parentNode}function qKe(e,t){return t??{x:e.x,y:e.y}}function JKe(){return navigator.maxTouchPoints||`ontouchstart`in this}function t8(){var e=GKe,t=KKe,n=qKe,r=JKe,i={},a=C6(`start`,`drag`,`end`),o=0,s,c,l,u,d=0;function f(e){e.on(`mousedown.drag`,p).filter(r).on(`touchstart.drag`,g).on(`touchmove.drag`,_,WKe).on(`touchend.drag touchcancel.drag`,v).style(`touch-action`,`none`).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}function p(n,r){if(!(u||!e.call(this,n,r))){var i=y(this,t.call(this,n,r),n,r,`mouse`);i&&(K6(n.view).on(`mousemove.drag`,m,J6).on(`mouseup.drag`,h,J6),Z6(n.view),Y6(n),l=!1,s=n.clientX,c=n.clientY,i(`start`,n))}}function m(e){if(X6(e),!l){var t=e.clientX-s,n=e.clientY-c;l=t*t+n*n>d}i.mouse(`drag`,e)}function h(e){K6(e.view).on(`mousemove.drag mouseup.drag`,null),Q6(e.view,l),X6(e),i.mouse(`end`,e)}function g(n,r){if(e.call(this,n,r)){var i=n.changedTouches,a=t.call(this,n,r),o=i.length,s,c;for(s=0;s<o;++s)(c=y(this,a,n,r,i[s].identifier,i[s]))&&(Y6(n),c(`start`,n,i[s]))}}function _(e){var t=e.changedTouches,n=t.length,r,a;for(r=0;r<n;++r)(a=i[t[r].identifier])&&(X6(e),a(`drag`,e,t[r]))}function v(e){var t=e.changedTouches,n=t.length,r,a;for(u&&clearTimeout(u),u=setTimeout(function(){u=null},500),r=0;r<n;++r)(a=i[t[r].identifier])&&(Y6(e),a(`end`,e,t[r]))}function y(e,t,r,s,c,l){var u=a.copy(),d=q6(l||r,t),p,m,h;if((h=n.call(e,new e8(`beforestart`,{sourceEvent:r,target:f,identifier:c,active:o,x:d[0],y:d[1],dx:0,dy:0,dispatch:u}),s))!=null)return p=h.x-d[0]||0,m=h.y-d[1]||0,function n(r,a,l){var g=d,_;switch(r){case`start`:i[c]=n,_=o++;break;case`end`:delete i[c],--o;case`drag`:d=q6(l||a,t),_=o}u.call(r,e,new e8(r,{sourceEvent:a,subject:h,target:f,identifier:c,active:_,x:d[0]+p,y:d[1]+m,dx:d[0]-g[0],dy:d[1]-g[1],dispatch:u}),s)}}return f.filter=function(t){return arguments.length?(e=typeof t==`function`?t:$6(!!t),f):e},f.container=function(e){return arguments.length?(t=typeof e==`function`?e:$6(e),f):t},f.subject=function(e){return arguments.length?(n=typeof e==`function`?e:$6(e),f):n},f.touchable=function(e){return arguments.length?(r=typeof e==`function`?e:$6(!!e),f):r},f.on=function(){var e=a.on.apply(a,arguments);return e===a?f:e},f.clickDistance=function(e){return arguments.length?(d=(e=+e)*e,f):Math.sqrt(d)},f}function n8(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function r8(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function i8(){}var a8=.7,o8=1/a8,s8=`\\s*([+-]?\\d+)\\s*`,c8=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,l8=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,YKe=/^#([0-9a-f]{3,8})$/,XKe=RegExp(`^rgb\\(${s8},${s8},${s8}\\)$`),ZKe=RegExp(`^rgb\\(${l8},${l8},${l8}\\)$`),QKe=RegExp(`^rgba\\(${s8},${s8},${s8},${c8}\\)$`),$Ke=RegExp(`^rgba\\(${l8},${l8},${l8},${c8}\\)$`),eqe=RegExp(`^hsl\\(${c8},${l8},${l8}\\)$`),tqe=RegExp(`^hsla\\(${c8},${l8},${l8},${c8}\\)$`),u8={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};n8(i8,p8,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:d8,formatHex:d8,formatHex8:nqe,formatHsl:rqe,formatRgb:f8,toString:f8});function d8(){return this.rgb().formatHex()}function nqe(){return this.rgb().formatHex8()}function rqe(){return w8(this).formatHsl()}function f8(){return this.rgb().formatRgb()}function p8(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=YKe.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?m8(t):n===3?new _8(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?h8(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?h8(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=XKe.exec(e))?new _8(t[1],t[2],t[3],1):(t=ZKe.exec(e))?new _8(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=QKe.exec(e))?h8(t[1],t[2],t[3],t[4]):(t=$Ke.exec(e))?h8(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=eqe.exec(e))?C8(t[1],t[2]/100,t[3]/100,1):(t=tqe.exec(e))?C8(t[1],t[2]/100,t[3]/100,t[4]):u8.hasOwnProperty(e)?m8(u8[e]):e===`transparent`?new _8(NaN,NaN,NaN,0):null}function m8(e){return new _8(e>>16&255,e>>8&255,e&255,1)}function h8(e,t,n,r){return r<=0&&(e=t=n=NaN),new _8(e,t,n,r)}function iqe(e){return e instanceof i8||(e=p8(e)),e?(e=e.rgb(),new _8(e.r,e.g,e.b,e.opacity)):new _8}function g8(e,t,n,r){return arguments.length===1?iqe(e):new _8(e,t,n,r??1)}function _8(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}n8(_8,g8,r8(i8,{brighter(e){return e=e==null?o8:o8**+e,new _8(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?a8:a8**+e,new _8(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new _8(x8(this.r),x8(this.g),x8(this.b),b8(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:v8,formatHex:v8,formatHex8:aqe,formatRgb:y8,toString:y8}));function v8(){return`#${S8(this.r)}${S8(this.g)}${S8(this.b)}`}function aqe(){return`#${S8(this.r)}${S8(this.g)}${S8(this.b)}${S8((isNaN(this.opacity)?1:this.opacity)*255)}`}function y8(){let e=b8(this.opacity);return`${e===1?`rgb(`:`rgba(`}${x8(this.r)}, ${x8(this.g)}, ${x8(this.b)}${e===1?`)`:`, ${e})`}`}function b8(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function x8(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function S8(e){return e=x8(e),(e<16?`0`:``)+e.toString(16)}function C8(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new T8(e,t,n,r)}function w8(e){if(e instanceof T8)return new T8(e.h,e.s,e.l,e.opacity);if(e instanceof i8||(e=p8(e)),!e)return new T8;if(e instanceof T8)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new T8(o,s,c,e.opacity)}function oqe(e,t,n,r){return arguments.length===1?w8(e):new T8(e,t,n,r??1)}function T8(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}n8(T8,oqe,r8(i8,{brighter(e){return e=e==null?o8:o8**+e,new T8(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?a8:a8**+e,new T8(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new _8(O8(e>=240?e-240:e+120,i,r),O8(e,i,r),O8(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new T8(E8(this.h),D8(this.s),D8(this.l),b8(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=b8(this.opacity);return`${e===1?`hsl(`:`hsla(`}${E8(this.h)}, ${D8(this.s)*100}%, ${D8(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function E8(e){return e=(e||0)%360,e<0?e+360:e}function D8(e){return Math.max(0,Math.min(1,e||0))}function O8(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var k8=e=>()=>e;function sqe(e,t){return function(n){return e+n*t}}function cqe(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function lqe(e){return(e=+e)==1?A8:function(t,n){return n-t?cqe(t,n,e):k8(isNaN(t)?n:t)}}function A8(e,t){var n=t-e;return n?sqe(e,n):k8(isNaN(e)?t:e)}var j8=(function e(t){var n=lqe(t);function r(e,t){var r=n((e=g8(e)).r,(t=g8(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=A8(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function uqe(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<n;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function dqe(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function fqe(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,i=Array(r),a=Array(n),o;for(o=0;o<r;++o)i[o]=I8(e[o],t[o]);for(;o<n;++o)a[o]=t[o];return function(e){for(o=0;o<r;++o)a[o]=i[o](e);return a}}function pqe(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function M8(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function mqe(e,t){var n={},r={},i;for(i in(typeof e!=`object`||!e)&&(e={}),(typeof t!=`object`||!t)&&(t={}),t)i in e?n[i]=I8(e[i],t[i]):r[i]=t[i];return function(e){for(i in n)r[i]=n[i](e);return r}}var N8=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,P8=new RegExp(N8.source,`g`);function hqe(e){return function(){return e}}function gqe(e){return function(t){return e(t)+``}}function F8(e,t){var n=N8.lastIndex=P8.lastIndex=0,r,i,a,o=-1,s=[],c=[];for(e+=``,t+=``;(r=N8.exec(e))&&(i=P8.exec(t));)(a=i.index)>n&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:M8(r,i)})),n=P8.lastIndex;return n<t.length&&(a=t.slice(n),s[o]?s[o]+=a:s[++o]=a),s.length<2?c[0]?gqe(c[0].x):hqe(t):(t=c.length,function(e){for(var n=0,r;n<t;++n)s[(r=c[n]).i]=r.x(e);return s.join(``)})}function I8(e,t){var n=typeof t,r;return t==null||n===`boolean`?k8(t):(n===`number`?M8:n===`string`?(r=p8(t))?(t=r,j8):F8:t instanceof p8?j8:t instanceof Date?pqe:dqe(t)?uqe:Array.isArray(t)?fqe:typeof t.valueOf!=`function`&&typeof t.toString!=`function`||isNaN(t)?mqe:M8)(e,t)}var L8=180/Math.PI,R8={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function z8(e,t,n,r,i,a){var o,s,c;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),e*r<t*n&&(e=-e,t=-t,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*L8,skewX:Math.atan(c)*L8,scaleX:o,scaleY:s}}var B8;function _qe(e){let t=new(typeof DOMMatrix==`function`?DOMMatrix:WebKitCSSMatrix)(e+``);return t.isIdentity?R8:z8(t.a,t.b,t.c,t.d,t.e,t.f)}function vqe(e){return e==null||(B8||=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),B8.setAttribute(`transform`,e),!(e=B8.transform.baseVal.consolidate()))?R8:(e=e.matrix,z8(e.a,e.b,e.c,e.d,e.e,e.f))}function V8(e,t,n,r){function i(e){return e.length?e.pop()+` `:``}function a(e,r,i,a,o,s){if(e!==i||r!==a){var c=o.push(`translate(`,null,t,null,n);s.push({i:c-4,x:M8(e,i)},{i:c-2,x:M8(r,a)})}else(i||a)&&o.push(`translate(`+i+t+a+n)}function o(e,t,n,a){e===t?t&&n.push(i(n)+`rotate(`+t+r):(e-t>180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:M8(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:M8(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:M8(e,n)},{i:s-2,x:M8(t,r)})}else(n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t<n;)r[(a=i[t]).i]=a.x(e);return r.join(``)}}}var yqe=V8(_qe,`px, `,`px)`,`deg)`),bqe=V8(vqe,`, `,`)`,`)`),xqe=1e-12;function H8(e){return((e=Math.exp(e))+1/e)/2}function Sqe(e){return((e=Math.exp(e))-1/e)/2}function Cqe(e){return((e=Math.exp(2*e))-1)/(e+1)}var U8=(function e(t,n,r){function i(e,i){var a=e[0],o=e[1],s=e[2],c=i[0],l=i[1],u=i[2],d=c-a,f=l-o,p=d*d+f*f,m,h;if(p<xqe)h=Math.log(u/s)/t,m=function(e){return[a+e*d,o+e*f,s*Math.exp(t*e*h)]};else{var g=Math.sqrt(p),_=(u*u-s*s+r*p)/(2*s*n*g),v=(u*u-s*s-r*p)/(2*u*n*g),y=Math.log(Math.sqrt(_*_+1)-_);h=(Math.log(Math.sqrt(v*v+1)-v)-y)/t,m=function(e){var r=e*h,i=H8(y),c=s/(n*g)*(i*Cqe(t*r+y)-Sqe(y));return[a+c*d,o+c*f,s*i/H8(t*r+y)]}}return m.duration=h*1e3*t/Math.SQRT2,m}return i.rho=function(t){var n=Math.max(.001,+t),r=n*n;return e(n,r,r*r)},i})(Math.SQRT2,2,4),W8=0,G8=0,K8=0,wqe=1e3,q8,J8,Y8=0,X8=0,Z8=0,Q8=typeof performance==`object`&&performance.now?performance:Date,Tqe=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function $8(){return X8||=(Tqe(Eqe),Q8.now()+Z8)}function Eqe(){X8=0}function e5(){this._call=this._time=this._next=null}e5.prototype=Dqe.prototype={constructor:e5,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?$8():+n)+(t==null?0:+t),!this._next&&J8!==this&&(J8?J8._next=this:q8=this,J8=this),this._call=e,this._time=n,t5()},stop:function(){this._call&&(this._call=null,this._time=1/0,t5())}};function Dqe(e,t,n){var r=new e5;return r.restart(e,t,n),r}function Oqe(){$8(),++W8;for(var e=q8,t;e;)(t=X8-e._time)>=0&&e._call.call(void 0,t),e=e._next;--W8}function kqe(){X8=(Y8=Q8.now())+Z8,W8=G8=0;try{Oqe()}finally{W8=0,jqe(),X8=0}}function Aqe(){var e=Q8.now(),t=e-Y8;t>wqe&&(Z8-=t,Y8=e)}function jqe(){for(var e,t=q8,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:q8=n);J8=e,t5(r)}function t5(e){W8||(G8&&=clearTimeout(G8),e-X8>24?(e<1/0&&(G8=setTimeout(kqe,e-Q8.now()-Z8)),K8&&=clearInterval(K8)):(K8||=(Y8=Q8.now(),setInterval(Aqe,wqe)),W8=1,Tqe(kqe)))}function Mqe(e,t,n){var r=new e5;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var Nqe=C6(`start`,`end`,`cancel`,`interrupt`),Pqe=[];function n5(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;Fqe(e,n,{name:t,index:r,group:i,on:Nqe,tween:Pqe,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function r5(e,t){var n=a5(e,t);if(n.state>0)throw Error(`too late; already scheduled`);return n}function i5(e,t){var n=a5(e,t);if(n.state>3)throw Error(`too late; already running`);return n}function a5(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function Fqe(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=Dqe(a,0,n.time);function a(e){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==1)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===3)return Mqe(o);f.state===4?(f.state=6,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l<t&&(f.state=6,f.timer.stop(),f.on.call(`cancel`,e,e.__data__,f.index,f.group),delete r[l])}if(Mqe(function(){n.state===3&&(n.state=4,n.timer.restart(s,n.delay,n.time),s(a))}),n.state=2,n.on.call(`start`,e,e.__data__,n.index,n.group),n.state===2){for(n.state=3,i=Array(d=n.tween.length),l=0,u=-1;l<d;++l)(f=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(i[++u]=f);i.length=u+1}}function s(t){for(var r=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(c),n.state=5,1),a=-1,o=i.length;++a<o;)i[a].call(e,r);n.state===5&&(n.on.call(`end`,e,e.__data__,n.index,n.group),c())}function c(){for(var i in n.state=6,n.timer.stop(),delete r[t],r)return;delete e.__transition}}function o5(e,t){var n=e.__transition,r,i,a=!0,o;if(n){for(o in t=t==null?null:t+``,n){if((r=n[o]).name!==t){a=!1;continue}i=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]}a&&delete e.__transition}}function Iqe(e){return this.each(function(){o5(this,e)})}function Lqe(e,t){var n,r;return function(){var i=i5(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function Rqe(e,t,n){var r,i;if(typeof n!=`function`)throw Error();return function(){var a=i5(this,e),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:t,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===t){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function zqe(e,t){var n=this._id;if(e+=``,arguments.length<2){for(var r=a5(this.node(),n).tween,i=0,a=r.length,o;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((t==null?Lqe:Rqe)(n,e,t))}function s5(e,t,n){var r=e._id;return e.each(function(){var e=i5(this,r);(e.value||={})[t]=n.apply(this,arguments)}),function(e){return a5(e,r).value[t]}}function Bqe(e,t){var n;return(typeof t==`number`?M8:t instanceof p8?j8:(n=p8(t))?(t=n,j8):F8)(e,t)}function Vqe(e){return function(){this.removeAttribute(e)}}function Hqe(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Uqe(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttribute(e);return o===i?null:o===r?a:a=t(r=o,n)}}function Wqe(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttributeNS(e.space,e.local);return o===i?null:o===r?a:a=t(r=o,n)}}function Gqe(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttribute(e):(o=this.getAttribute(e),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function Kqe(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function qqe(e,t){var n=D6(e),r=n===`transform`?bqe:Bqe;return this.attrTween(e,typeof t==`function`?(n.local?Kqe:Gqe)(n,r,s5(this,`attr.`+e,t)):t==null?(n.local?Hqe:Vqe)(n):(n.local?Wqe:Uqe)(n,r,t))}function Jqe(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function Yqe(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function Xqe(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&Yqe(e,i)),n}return i._value=t,i}function Zqe(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&Jqe(e,i)),n}return i._value=t,i}function Qqe(e,t){var n=`attr.`+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!=`function`)throw Error();var r=D6(e);return this.tween(n,(r.local?Xqe:Zqe)(r,t))}function $qe(e,t){return function(){r5(this,e).delay=+t.apply(this,arguments)}}function eJe(e,t){return t=+t,function(){r5(this,e).delay=t}}function tJe(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?$qe:eJe)(t,e)):a5(this.node(),t).delay}function nJe(e,t){return function(){i5(this,e).duration=+t.apply(this,arguments)}}function rJe(e,t){return t=+t,function(){i5(this,e).duration=t}}function iJe(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?nJe:rJe)(t,e)):a5(this.node(),t).duration}function aJe(e,t){if(typeof t!=`function`)throw Error();return function(){i5(this,e).ease=t}}function oJe(e){var t=this._id;return arguments.length?this.each(aJe(t,e)):a5(this.node(),t).ease}function sJe(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!=`function`)throw Error();i5(this,e).ease=n}}function cJe(e){if(typeof e!=`function`)throw Error();return this.each(sJe(this._id,e))}function lJe(e){typeof e!=`function`&&(e=j6(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new c5(r,this._parents,this._name,this._id)}function uJe(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,i=n.length,a=Math.min(r,i),o=Array(r),s=0;s<a;++s)for(var c=t[s],l=n[s],u=c.length,d=o[s]=Array(u),f,p=0;p<u;++p)(f=c[p]||l[p])&&(d[p]=f);for(;s<r;++s)o[s]=t[s];return new c5(o,this._parents,this._name,this._id)}function dJe(e){return(e+``).trim().split(/^|\s+/).every(function(e){var t=e.indexOf(`.`);return t>=0&&(e=e.slice(0,t)),!e||e===`start`})}function fJe(e,t,n){var r,i,a=dJe(t)?r5:i5;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function pJe(e,t){var n=this._id;return arguments.length<2?a5(this.node(),n).on.on(e):this.each(fJe(n,e,t))}function mJe(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function hJe(){return this.on(`end.remove`,mJe(this._id))}function gJe(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=k6(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o<i;++o)for(var s=r[o],c=s.length,l=a[o]=Array(c),u,d,f=0;f<c;++f)(u=s[f])&&(d=e.call(u,u.__data__,f,s))&&(`__data__`in u&&(d.__data__=u.__data__),l[f]=d,n5(l[f],t,n,f,l,a5(u,n)));return new c5(a,this._parents,t,n)}function _Je(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=A6(e));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c=r[s],l=c.length,u,d=0;d<l;++d)if(u=c[d]){for(var f=e.call(u,u.__data__,d,c),p,m=a5(u,n),h=0,g=f.length;h<g;++h)(p=f[h])&&n5(p,t,n,h,f,m);a.push(f),o.push(u)}return new c5(a,o,t,n)}var vJe=G6.prototype.constructor;function yJe(){return new vJe(this._groups,this._parents)}function bJe(e,t){var n,r,i;return function(){var a=I6(this,e),o=(this.style.removeProperty(e),I6(this,e));return a===o?null:a===n&&o===r?i:i=t(n=a,r=o)}}function xJe(e){return function(){this.style.removeProperty(e)}}function SJe(e,t,n){var r,i=n+``,a;return function(){var o=I6(this,e);return o===i?null:o===r?a:a=t(r=o,n)}}function CJe(e,t,n){var r,i,a;return function(){var o=I6(this,e),s=n(this),c=s+``;return s??(c=s=(this.style.removeProperty(e),I6(this,e))),o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s))}}function wJe(e,t){var n,r,i,a=`style.`+t,o=`end.`+a,s;return function(){var c=i5(this,e),l=c.on,u=c.value[a]==null?s||=xJe(t):void 0;(l!==n||i!==u)&&(r=(n=l).copy()).on(o,i=u),c.on=r}}function TJe(e,t,n){var r=(e+=``)==`transform`?yqe:Bqe;return t==null?this.styleTween(e,bJe(e,r)).on(`end.style.`+e,xJe(e)):typeof t==`function`?this.styleTween(e,CJe(e,r,s5(this,`style.`+e,t))).each(wJe(this._id,e)):this.styleTween(e,SJe(e,r,t),n).on(`end.style.`+e,null)}function EJe(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function DJe(e,t,n){var r,i;function a(){var a=t.apply(this,arguments);return a!==i&&(r=(i=a)&&EJe(e,a,n)),r}return a._value=t,a}function OJe(e,t,n){var r=`style.`+(e+=``);if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!=`function`)throw Error();return this.tween(r,DJe(e,t,n??``))}function kJe(e){return function(){this.textContent=e}}function AJe(e){return function(){var t=e(this);this.textContent=t??``}}function jJe(e){return this.tween(`text`,typeof e==`function`?AJe(s5(this,`text`,e)):kJe(e==null?``:e+``))}function MJe(e){return function(t){this.textContent=e.call(this,t)}}function NJe(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&MJe(r)),t}return r._value=e,r}function PJe(e){var t=`text`;if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=`function`)throw Error();return this.tween(t,NJe(e))}function FJe(){for(var e=this._name,t=this._id,n=RJe(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)if(c=o[l]){var u=a5(c,t);n5(c,e,n,l,o,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new c5(r,this._parents,e,n)}function IJe(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(a,o){var s={value:o},c={value:function(){--i===0&&a()}};n.each(function(){var n=i5(this,r),i=n.on;i!==e&&(t=(e=i).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),n.on=t}),i===0&&a()})}var LJe=0;function c5(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function RJe(){return++LJe}var l5=G6.prototype;c5.prototype={constructor:c5,select:gJe,selectAll:_Je,selectChild:l5.selectChild,selectChildren:l5.selectChildren,filter:lJe,merge:uJe,selection:yJe,transition:FJe,call:l5.call,nodes:l5.nodes,node:l5.node,size:l5.size,empty:l5.empty,each:l5.each,on:pJe,attr:qqe,attrTween:Qqe,style:TJe,styleTween:OJe,text:jJe,textTween:PJe,remove:hJe,tween:zqe,delay:tJe,duration:iJe,ease:oJe,easeVarying:cJe,end:IJe,[Symbol.iterator]:l5[Symbol.iterator]};function zJe(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var BJe={time:null,delay:0,duration:250,ease:zJe};function VJe(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}function HJe(e){var t,n;e instanceof c5?(t=e._id,e=e._name):(t=RJe(),(n=BJe).time=$8(),e=e==null?null:e+``);for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&n5(c,e,t,l,o,n||VJe(c,t));return new c5(r,this._parents,e,t)}G6.prototype.interrupt=Iqe,G6.prototype.transition=HJe;var u5=e=>()=>e;function UJe(e,{sourceEvent:t,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function d5(e,t,n){this.k=e,this.x=t,this.y=n}d5.prototype={constructor:d5,scale:function(e){return e===1?this:new d5(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new d5(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var f5=new d5(1,0,0);WJe.prototype=d5.prototype;function WJe(e){for(;!e.__zoom;)if(!(e=e.parentNode))return f5;return e.__zoom}function p5(e){e.stopImmediatePropagation()}function m5(e){e.preventDefault(),e.stopImmediatePropagation()}function GJe(e){return(!e.ctrlKey||e.type===`wheel`)&&!e.button}function KJe(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute(`viewBox`)?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function qJe(){return this.__zoom||f5}function JJe(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function YJe(){return navigator.maxTouchPoints||`ontouchstart`in this}function XJe(e,t,n){var r=e.invertX(t[0][0])-n[0][0],i=e.invertX(t[1][0])-n[1][0],a=e.invertY(t[0][1])-n[0][1],o=e.invertY(t[1][1])-n[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function ZJe(){var e=GJe,t=KJe,n=XJe,r=JJe,i=YJe,a=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],s=250,c=U8,l=C6(`start`,`zoom`,`end`),u,d,f,p=500,m=150,h=0,g=10;function _(e){e.property(`__zoom`,qJe).on(`wheel.zoom`,w,{passive:!1}).on(`mousedown.zoom`,T).on(`dblclick.zoom`,E).filter(i).on(`touchstart.zoom`,D).on(`touchmove.zoom`,O).on(`touchend.zoom touchcancel.zoom`,k).style(`-webkit-tap-highlight-color`,`rgba(0,0,0,0)`)}_.transform=function(e,t,n,r){var i=e.selection?e.selection():e;i.property(`__zoom`,qJe),e===i?i.interrupt().each(function(){S(this,arguments).event(r).start().zoom(null,typeof t==`function`?t.apply(this,arguments):t).end()}):x(e,t,n,r)},_.scaleBy=function(e,t,n,r){_.scaleTo(e,function(){return this.__zoom.k*(typeof t==`function`?t.apply(this,arguments):t)},n,r)},_.scaleTo=function(e,r,i,a){_.transform(e,function(){var e=t.apply(this,arguments),a=this.__zoom,s=i==null?b(e):typeof i==`function`?i.apply(this,arguments):i,c=a.invert(s),l=typeof r==`function`?r.apply(this,arguments):r;return n(y(v(a,l),s,c),e,o)},i,a)},_.translateBy=function(e,r,i,a){_.transform(e,function(){return n(this.__zoom.translate(typeof r==`function`?r.apply(this,arguments):r,typeof i==`function`?i.apply(this,arguments):i),t.apply(this,arguments),o)},null,a)},_.translateTo=function(e,r,i,a,s){_.transform(e,function(){var e=t.apply(this,arguments),s=this.__zoom,c=a==null?b(e):typeof a==`function`?a.apply(this,arguments):a;return n(f5.translate(c[0],c[1]).scale(s.k).translate(typeof r==`function`?-r.apply(this,arguments):-r,typeof i==`function`?-i.apply(this,arguments):-i),e,o)},a,s)};function v(e,t){return t=Math.max(a[0],Math.min(a[1],t)),t===e.k?e:new d5(t,e.x,e.y)}function y(e,t,n){var r=t[0]-n[0]*e.k,i=t[1]-n[1]*e.k;return r===e.x&&i===e.y?e:new d5(e.k,r,i)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function x(e,n,r,i){e.on(`start.zoom`,function(){S(this,arguments).event(i).start()}).on(`interrupt.zoom end.zoom`,function(){S(this,arguments).event(i).end()}).tween(`zoom`,function(){var e=this,a=arguments,o=S(e,a).event(i),s=t.apply(e,a),l=r==null?b(s):typeof r==`function`?r.apply(e,a):r,u=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),d=e.__zoom,f=typeof n==`function`?n.apply(e,a):n,p=c(d.invert(l).concat(u/d.k),f.invert(l).concat(u/f.k));return function(e){if(e===1)e=f;else{var t=p(e),n=u/t[2];e=new d5(n,l[0]-t[0]*n,l[1]-t[1]*n)}o.zoom(null,e)}})}function S(e,t,n){return!n&&e.__zooming||new C(e,t)}function C(e,n){this.that=e,this.args=n,this.active=0,this.sourceEvent=null,this.extent=t.apply(e,n),this.taps=0}C.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit(`start`)),this},zoom:function(e,t){return this.mouse&&e!==`mouse`&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&e!==`touch`&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&e!==`touch`&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit(`zoom`),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit(`end`)),this},emit:function(e){var t=K6(this.that).datum();l.call(e,this.that,new UJe(e,{sourceEvent:this.sourceEvent,target:_,type:e,transform:this.that.__zoom,dispatch:l}),t)}};function w(t,...i){if(!e.apply(this,arguments))return;var s=S(this,i).event(t),c=this.__zoom,l=Math.max(a[0],Math.min(a[1],c.k*2**r.apply(this,arguments))),u=q6(t);if(s.wheel)(s.mouse[0][0]!==u[0]||s.mouse[0][1]!==u[1])&&(s.mouse[1]=c.invert(s.mouse[0]=u)),clearTimeout(s.wheel);else if(c.k===l)return;else s.mouse=[u,c.invert(u)],o5(this),s.start();m5(t),s.wheel=setTimeout(d,m),s.zoom(`mouse`,n(y(v(c,l),s.mouse[0],s.mouse[1]),s.extent,o));function d(){s.wheel=null,s.end()}}function T(t,...r){if(f||!e.apply(this,arguments))return;var i=t.currentTarget,a=S(this,r,!0).event(t),s=K6(t.view).on(`mousemove.zoom`,d,!0).on(`mouseup.zoom`,p,!0),c=q6(t,i),l=t.clientX,u=t.clientY;Z6(t.view),p5(t),a.mouse=[c,this.__zoom.invert(c)],o5(this),a.start();function d(e){if(m5(e),!a.moved){var t=e.clientX-l,r=e.clientY-u;a.moved=t*t+r*r>h}a.event(e).zoom(`mouse`,n(y(a.that.__zoom,a.mouse[0]=q6(e,i),a.mouse[1]),a.extent,o))}function p(e){s.on(`mousemove.zoom mouseup.zoom`,null),Q6(e.view,a.moved),m5(e),a.event(e).end()}}function E(r,...i){if(e.apply(this,arguments)){var a=this.__zoom,c=q6(r.changedTouches?r.changedTouches[0]:r,this),l=a.invert(c),u=a.k*(r.shiftKey?.5:2),d=n(y(v(a,u),c,l),t.apply(this,i),o);m5(r),s>0?K6(this).transition().duration(s).call(x,d,c,r):K6(this).call(_.transform,d,c,r)}}function D(t,...n){if(e.apply(this,arguments)){var r=t.touches,i=r.length,a=S(this,n,t.changedTouches.length===i).event(t),o,s,c,l;for(p5(t),s=0;s<i;++s)c=r[s],l=q6(c,this),l=[l,this.__zoom.invert(l),c.identifier],a.touch0?!a.touch1&&a.touch0[2]!==l[2]&&(a.touch1=l,a.taps=0):(a.touch0=l,o=!0,a.taps=1+!!u);u&&=clearTimeout(u),o&&(a.taps<2&&(d=l[0],u=setTimeout(function(){u=null},p)),o5(this),a.start())}}function O(e,...t){if(this.__zooming){var r=S(this,t).event(e),i=e.changedTouches,a=i.length,s,c,l,u;for(m5(e),s=0;s<a;++s)c=i[s],l=q6(c,this),r.touch0&&r.touch0[2]===c.identifier?r.touch0[0]=l:r.touch1&&r.touch1[2]===c.identifier&&(r.touch1[0]=l);if(c=r.that.__zoom,r.touch1){var d=r.touch0[0],f=r.touch0[1],p=r.touch1[0],m=r.touch1[1],h=(h=p[0]-d[0])*h+(h=p[1]-d[1])*h,g=(g=m[0]-f[0])*g+(g=m[1]-f[1])*g;c=v(c,Math.sqrt(h/g)),l=[(d[0]+p[0])/2,(d[1]+p[1])/2],u=[(f[0]+m[0])/2,(f[1]+m[1])/2]}else if(r.touch0)l=r.touch0[0],u=r.touch0[1];else return;r.zoom(`touch`,n(y(c,l,u),r.extent,o))}}function k(e,...t){if(this.__zooming){var n=S(this,t).event(e),r=e.changedTouches,i=r.length,a,o;for(p5(e),f&&clearTimeout(f),f=setTimeout(function(){f=null},p),a=0;a<i;++a)o=r[a],n.touch0&&n.touch0[2]===o.identifier?delete n.touch0:n.touch1&&n.touch1[2]===o.identifier&&delete n.touch1;if(n.touch1&&!n.touch0&&(n.touch0=n.touch1,delete n.touch1),n.touch0)n.touch0[1]=this.__zoom.invert(n.touch0[0]);else if(n.end(),n.taps===2&&(o=q6(o,this),Math.hypot(d[0]-o[0],d[1]-o[1])<g)){var s=K6(this).on(`dblclick.zoom`);s&&s.apply(this,arguments)}}}return _.wheelDelta=function(e){return arguments.length?(r=typeof e==`function`?e:u5(+e),_):r},_.filter=function(t){return arguments.length?(e=typeof t==`function`?t:u5(!!t),_):e},_.touchable=function(e){return arguments.length?(i=typeof e==`function`?e:u5(!!e),_):i},_.extent=function(e){return arguments.length?(t=typeof e==`function`?e:u5([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),_):t},_.scaleExtent=function(e){return arguments.length?(a[0]=+e[0],a[1]=+e[1],_):[a[0],a[1]]},_.translateExtent=function(e){return arguments.length?(o[0][0]=+e[0][0],o[1][0]=+e[1][0],o[0][1]=+e[0][1],o[1][1]=+e[1][1],_):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]},_.constrain=function(e){return arguments.length?(n=e,_):n},_.duration=function(e){return arguments.length?(s=+e,_):s},_.interpolate=function(e){return arguments.length?(c=e,_):c},_.on=function(){var e=l.on.apply(l,arguments);return e===l?_:e},_.clickDistance=function(e){return arguments.length?(h=(e=+e)*e,_):Math.sqrt(h)},_.tapDistance=function(e){return arguments.length?(g=+e,_):g},_}var h5={error001:()=>`[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001`,error002:()=>`It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.`,error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>`The React Flow parent container needs a width and a height to render the graph.`,error005:()=>`Only child nodes can use a parent extent.`,error006:()=>`Can't create edge. An edge needs a source and a target.`,error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${e} handle id: "${e===`source`?n:r}", edge id: ${t}.`,error010:()=>`Handle: No node id found. Make sure to only use a Handle inside a custom Node.`,error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e=`react`)=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>`useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.`,error015:()=>`It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.`},g5=[[-1/0,-1/0],[1/0,1/0]],QJe=[`Enter`,` `,`Escape`],$Je={"node.a11yDescription.default":`Press enter or space to select a node. Press delete to remove it and escape to cancel.`,"node.a11yDescription.keyboardDisabled":`Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.`,"node.a11yDescription.ariaLiveMessage":({direction:e,x:t,y:n})=>`Moved selected node ${e}. New position, x: ${t}, y: ${n}`,"edge.a11yDescription.default":`Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.`,"controls.ariaLabel":`Control Panel`,"controls.zoomIn.ariaLabel":`Zoom In`,"controls.zoomOut.ariaLabel":`Zoom Out`,"controls.fitView.ariaLabel":`Fit View`,"controls.interactive.ariaLabel":`Toggle Interactivity`,"minimap.ariaLabel":`Mini Map`,"handle.ariaLabel":`Handle`},_5;(function(e){e.Strict=`strict`,e.Loose=`loose`})(_5||={});var v5;(function(e){e.Free=`free`,e.Vertical=`vertical`,e.Horizontal=`horizontal`})(v5||={});var y5;(function(e){e.Partial=`partial`,e.Full=`full`})(y5||={});var eYe={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null},b5;(function(e){e.Bezier=`default`,e.Straight=`straight`,e.Step=`step`,e.SmoothStep=`smoothstep`,e.SimpleBezier=`simplebezier`})(b5||={});var x5;(function(e){e.Arrow=`arrow`,e.ArrowClosed=`arrowclosed`})(x5||={});var S5;(function(e){e.Left=`left`,e.Top=`top`,e.Right=`right`,e.Bottom=`bottom`})(S5||={});var tYe={[S5.Left]:S5.Right,[S5.Right]:S5.Left,[S5.Top]:S5.Bottom,[S5.Bottom]:S5.Top};function nYe(e){return e===null?null:e?`valid`:`invalid`}var rYe=e=>`id`in e&&`source`in e&&`target`in e,iYe=e=>`id`in e&&`position`in e&&!(`source`in e)&&!(`target`in e),C5=e=>`id`in e&&`internals`in e&&!(`source`in e)&&!(`target`in e),w5=(e,t=[0,0])=>{let{width:n,height:r}=U5(e),i=e.origin??t,a=n*i[0],o=r*i[1];return{x:e.position.x-a,y:e.position.y-o}},aYe=(e,t={nodeOrigin:[0,0]})=>e.length===0?{x:0,y:0,width:0,height:0}:j5(e.reduce((e,n)=>{let r=typeof n==`string`,i=!t.nodeLookup&&!r?n:void 0;return t.nodeLookup&&(i=r?t.nodeLookup.get(n):C5(n)?n:t.nodeLookup.get(n.id)),k5(e,i?N5(i,t.nodeOrigin):{x:0,y:0,x2:0,y2:0})},{x:1/0,y:1/0,x2:-1/0,y2:-1/0})),T5=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},r=!1;return e.forEach(e=>{(t.filter===void 0||t.filter(e))&&(n=k5(n,N5(e)),r=!0)}),r?j5(n):{x:0,y:0,width:0,height:0}},E5=(e,t,[n,r,i]=[0,0,1],a=!1,o=!1)=>{let s={...L5(t,[n,r,i]),width:t.width/i,height:t.height/i},c=[];for(let t of e.values()){let{measured:e,selectable:n=!0,hidden:r=!1}=t;if(o&&!n||r)continue;let i=e.width??t.width??t.initialWidth??null,l=e.height??t.height??t.initialHeight??null,u=P5(s,M5(t)),d=(i??0)*(l??0),f=a&&u>0;(!t.internals.handleBounds||f||u>=d||t.dragging)&&c.push(t)}return c},oYe=(e,t)=>{let n=new Set;return e.forEach(e=>{n.add(e.id)}),t.filter(e=>n.has(e.source)||n.has(e.target))};function sYe(e,t){let n=new Map,r=t?.nodes?new Set(t.nodes.map(e=>e.id)):null;return e.forEach(e=>{e.measured.width&&e.measured.height&&(t?.includeHiddenNodes||!e.hidden)&&(!r||r.has(e.id))&&n.set(e.id,e)}),n}async function cYe({nodes:e,width:t,height:n,panZoom:r,minZoom:i,maxZoom:a},o){if(e.size===0)return Promise.resolve(!0);let s=B5(T5(sYe(e,o)),t,n,o?.minZoom??i,o?.maxZoom??a,o?.padding??.1);return await r.setViewport(s,{duration:o?.duration,ease:o?.ease,interpolate:o?.interpolate}),Promise.resolve(!0)}function lYe({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:i,onError:a}){let o=n.get(e),s=o.parentId?n.get(o.parentId):void 0,{x:c,y:l}=s?s.internals.positionAbsolute:{x:0,y:0},u=o.origin??r,d=o.extent||i;if(o.extent===`parent`&&!o.expandParent){if(!s)a?.(`005`,h5.error005());else{let e=s.measured.width,t=s.measured.height;e&&t&&(d=[[c,l],[c+e,l+t]])}}else s&&H5(o.extent)&&(d=[[o.extent[0][0]+c,o.extent[0][1]+l],[o.extent[1][0]+c,o.extent[1][1]+l]]);let f=H5(d)?O5(t,d,o.measured):t;return(o.measured.width===void 0||o.measured.height===void 0)&&a?.(`015`,h5.error015()),{position:{x:f.x-c+(o.measured.width??0)*u[0],y:f.y-l+(o.measured.height??0)*u[1]},positionAbsolute:f}}async function uYe({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:i}){let a=new Set(e.map(e=>e.id)),o=[];for(let e of n){if(e.deletable===!1)continue;let t=a.has(e.id),n=!t&&e.parentId&&o.find(t=>t.id===e.parentId);(t||n)&&o.push(e)}let s=new Set(t.map(e=>e.id)),c=r.filter(e=>e.deletable!==!1),l=oYe(o,c);for(let e of c)s.has(e.id)&&!l.find(t=>t.id===e.id)&&l.push(e);if(!i)return{edges:l,nodes:o};let u=await i({nodes:o,edges:l});return typeof u==`boolean`?u?{edges:l,nodes:o}:{edges:[],nodes:[]}:u}var D5=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),O5=(e={x:0,y:0},t,n)=>({x:D5(e.x,t[0][0],t[1][0]-(n?.width??0)),y:D5(e.y,t[0][1],t[1][1]-(n?.height??0))});function dYe(e,t,n){let{width:r,height:i}=U5(n),{x:a,y:o}=n.internals.positionAbsolute;return O5(e,[[a,o],[a+r,o+i]],t)}var fYe=(e,t,n)=>e<t?D5(Math.abs(e-t),1,t)/t:e>n?-D5(Math.abs(e-n),1,t)/t:0,pYe=(e,t,n=15,r=40)=>[fYe(e.x,r,t.width-r)*n,fYe(e.y,r,t.height-r)*n],k5=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),A5=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),j5=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),M5=(e,t=[0,0])=>{let{x:n,y:r}=C5(e)?e.internals.positionAbsolute:w5(e,t);return{x:n,y:r,width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}},N5=(e,t=[0,0])=>{let{x:n,y:r}=C5(e)?e.internals.positionAbsolute:w5(e,t);return{x:n,y:r,x2:n+(e.measured?.width??e.width??e.initialWidth??0),y2:r+(e.measured?.height??e.height??e.initialHeight??0)}},mYe=(e,t)=>j5(k5(A5(e),A5(t))),P5=(e,t)=>{let n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*r)},hYe=e=>F5(e.width)&&F5(e.height)&&F5(e.x)&&F5(e.y),F5=e=>!isNaN(e)&&isFinite(e),gYe=(e,t)=>{},I5=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),L5=({x:e,y:t},[n,r,i],a=!1,o=[1,1])=>{let s={x:(e-n)/i,y:(t-r)/i};return a?I5(s,o):s},R5=({x:e,y:t},[n,r,i])=>({x:e*i+n,y:t*i+r});function z5(e,t){if(typeof e==`number`)return Math.floor((t-t/(1+e))*.5);if(typeof e==`string`&&e.endsWith(`px`)){let t=parseFloat(e);if(!Number.isNaN(t))return Math.floor(t)}if(typeof e==`string`&&e.endsWith(`%`)){let n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(t*n*.01)}return console.error(`[React Flow] The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function _Ye(e,t,n){if(typeof e==`string`||typeof e==`number`){let r=z5(e,n),i=z5(e,t);return{top:r,right:i,bottom:r,left:i,x:i*2,y:r*2}}if(typeof e==`object`){let r=z5(e.top??e.y??0,n),i=z5(e.bottom??e.y??0,n),a=z5(e.left??e.x??0,t),o=z5(e.right??e.x??0,t);return{top:r,right:o,bottom:i,left:a,x:a+o,y:r+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function vYe(e,t,n,r,i,a){let{x:o,y:s}=R5(e,[t,n,r]),{x:c,y:l}=R5({x:e.x+e.width,y:e.y+e.height},[t,n,r]),u=i-c,d=a-l;return{left:Math.floor(o),top:Math.floor(s),right:Math.floor(u),bottom:Math.floor(d)}}var B5=(e,t,n,r,i,a)=>{let o=_Ye(a,t,n),s=(t-o.x)/e.width,c=(n-o.y)/e.height,l=D5(Math.min(s,c),r,i),u=e.x+e.width/2,d=e.y+e.height/2,f=t/2-u*l,p=n/2-d*l,m=vYe(e,f,p,l,t,n),h={left:Math.min(m.left-o.left,0),top:Math.min(m.top-o.top,0),right:Math.min(m.right-o.right,0),bottom:Math.min(m.bottom-o.bottom,0)};return{x:f-h.left+h.right,y:p-h.top+h.bottom,zoom:l}},V5=()=>typeof navigator<`u`&&navigator?.userAgent?.indexOf(`Mac`)>=0;function H5(e){return e!=null&&e!==`parent`}function U5(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function yYe(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function bYe(e,t={width:0,height:0},n,r,i){let a={...e},o=r.get(n);if(o){let e=o.origin||i;a.x+=o.internals.positionAbsolute.x-(t.width??0)*e[0],a.y+=o.internals.positionAbsolute.y-(t.height??0)*e[1]}return a}function xYe(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function SYe(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}function CYe(e){return{...$Je,...e||{}}}function W5(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r,containerBounds:i}){let{x:a,y:o}=K5(e),s=L5({x:a-(i?.left??0),y:o-(i?.top??0)},r),{x:c,y:l}=n?I5(s,t):s;return{xSnapped:c,ySnapped:l,...s}}var G5=e=>({width:e.offsetWidth,height:e.offsetHeight}),wYe=e=>e?.getRootNode?.()||window?.document,TYe=[`INPUT`,`SELECT`,`TEXTAREA`];function EYe(e){let t=e.composedPath?.()?.[0]||e.target;return t?.nodeType===1?TYe.includes(t.nodeName)||t.hasAttribute(`contenteditable`)||!!t.closest(`.nokey`):!1}var DYe=e=>`clientX`in e,K5=(e,t)=>{let n=DYe(e),r=n?e.clientX:e.touches?.[0].clientX,i=n?e.clientY:e.touches?.[0].clientY;return{x:r-(t?.left??0),y:i-(t?.top??0)}},OYe=(e,t,n,r,i)=>{let a=t.querySelectorAll(`.${e}`);return!a||!a.length?null:Array.from(a).map(t=>{let a=t.getBoundingClientRect();return{id:t.getAttribute(`data-handleid`),type:e,nodeId:i,position:t.getAttribute(`data-handlepos`),x:(a.left-n.left)/r,y:(a.top-n.top)/r,...G5(t)}})};function kYe({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:o,targetControlY:s}){let c=e*.125+i*.375+o*.375+n*.125,l=t*.125+a*.375+s*.375+r*.125;return[c,l,Math.abs(c-e),Math.abs(l-t)]}function q5(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function AYe({pos:e,x1:t,y1:n,x2:r,y2:i,c:a}){switch(e){case S5.Left:return[t-q5(t-r,a),n];case S5.Right:return[t+q5(r-t,a),n];case S5.Top:return[t,n-q5(n-i,a)];case S5.Bottom:return[t,n+q5(i-n,a)]}}function jYe({sourceX:e,sourceY:t,sourcePosition:n=S5.Bottom,targetX:r,targetY:i,targetPosition:a=S5.Top,curvature:o=.25}){let[s,c]=AYe({pos:n,x1:e,y1:t,x2:r,y2:i,c:o}),[l,u]=AYe({pos:a,x1:r,y1:i,x2:e,y2:t,c:o}),[d,f,p,m]=kYe({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:s,sourceControlY:c,targetControlX:l,targetControlY:u});return[`M${e},${t} C${s},${c} ${l},${u} ${r},${i}`,d,f,p,m]}function MYe({sourceX:e,sourceY:t,targetX:n,targetY:r}){let i=Math.abs(n-e)/2,a=n<e?n+i:n-i,o=Math.abs(r-t)/2;return[a,r<t?r+o:r-o,i,o]}function NYe({sourceNode:e,targetNode:t,selected:n=!1,zIndex:r=0,elevateOnSelect:i=!1,zIndexMode:a=`basic`}){return a===`manual`?r:(i&&n?r+1e3:r)+Math.max(e.parentId||i&&e.selected?e.internals.z:0,t.parentId||i&&t.selected?t.internals.z:0)}function PYe({sourceNode:e,targetNode:t,width:n,height:r,transform:i}){let a=k5(N5(e),N5(t));return a.x===a.x2&&(a.x2+=1),a.y===a.y2&&(a.y2+=1),P5({x:-i[0]/i[2],y:-i[1]/i[2],width:n/i[2],height:r/i[2]},j5(a))>0}var FYe=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||``}-${n}${r||``}`,IYe=(e,t)=>t.some(t=>t.source===e.source&&t.target===e.target&&(t.sourceHandle===e.sourceHandle||!t.sourceHandle&&!e.sourceHandle)&&(t.targetHandle===e.targetHandle||!t.targetHandle&&!e.targetHandle)),LYe=(e,t,n={})=>{if(!e.source||!e.target)return h5.error006(),t;let r=n.getEdgeId||FYe,i;return i=rYe(e)?{...e}:{...e,id:r(e)},IYe(i,t)?t:(i.sourceHandle===null&&delete i.sourceHandle,i.targetHandle===null&&delete i.targetHandle,t.concat(i))};function RYe({sourceX:e,sourceY:t,targetX:n,targetY:r}){let[i,a,o,s]=MYe({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,i,a,o,s]}var zYe={[S5.Left]:{x:-1,y:0},[S5.Right]:{x:1,y:0},[S5.Top]:{x:0,y:-1},[S5.Bottom]:{x:0,y:1}},BYe=({source:e,sourcePosition:t=S5.Bottom,target:n})=>t===S5.Left||t===S5.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},VYe=(e,t)=>Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2);function HYe({source:e,sourcePosition:t=S5.Bottom,target:n,targetPosition:r=S5.Top,center:i,offset:a,stepPosition:o}){let s=zYe[t],c=zYe[r],l={x:e.x+s.x*a,y:e.y+s.y*a},u={x:n.x+c.x*a,y:n.y+c.y*a},d=BYe({source:l,sourcePosition:t,target:u}),f=d.x===0?`y`:`x`,p=d[f],m=[],h,g,_={x:0,y:0},v={x:0,y:0},[,,y,b]=MYe({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){f===`x`?(h=i.x??l.x+(u.x-l.x)*o,g=i.y??(l.y+u.y)/2):(h=i.x??(l.x+u.x)/2,g=i.y??l.y+(u.y-l.y)*o);let e=[{x:h,y:l.y},{x:h,y:u.y}],t=[{x:l.x,y:g},{x:u.x,y:g}];m=s[f]===p?f===`x`?e:t:f===`x`?t:e}else{let i=[{x:l.x,y:u.y}],o=[{x:u.x,y:l.y}];if(m=f===`x`?s.x===p?o:i:s.y===p?i:o,t===r){let t=Math.abs(e[f]-n[f]);if(t<=a){let r=Math.min(a-1,a-t);s[f]===p?_[f]=(l[f]>e[f]?-1:1)*r:v[f]=(u[f]>n[f]?-1:1)*r}}if(t!==r){let e=f===`x`?`y`:`x`,t=s[f]===c[e],n=l[e]>u[e],r=l[e]<u[e];(s[f]===1&&(!t&&n||t&&r)||s[f]!==1&&(!t&&r||t&&n))&&(m=f===`x`?i:o)}let d={x:l.x+_.x,y:l.y+_.y},y={x:u.x+v.x,y:u.y+v.y};Math.max(Math.abs(d.x-m[0].x),Math.abs(y.x-m[0].x))>=Math.max(Math.abs(d.y-m[0].y),Math.abs(y.y-m[0].y))?(h=(d.x+y.x)/2,g=m[0].y):(h=m[0].x,g=(d.y+y.y)/2)}let x={x:l.x+_.x,y:l.y+_.y},S={x:u.x+v.x,y:u.y+v.y};return[[e,...x.x!==m[0].x||x.y!==m[0].y?[x]:[],...m,...S.x!==m[m.length-1].x||S.y!==m[m.length-1].y?[S]:[],n],h,g,y,b]}function UYe(e,t,n,r){let i=Math.min(VYe(e,t)/2,VYe(t,n)/2,r),{x:a,y:o}=t;if(e.x===a&&a===n.x||e.y===o&&o===n.y)return`L${a} ${o}`;if(e.y===o){let t=e.x<n.x?-1:1,r=e.y<n.y?1:-1;return`L ${a+i*t},${o}Q ${a},${o} ${a},${o+i*r}`}let s=e.x<n.x?1:-1;return`L ${a},${o+i*(e.y<n.y?-1:1)}Q ${a},${o} ${a+i*s},${o}`}function J5({sourceX:e,sourceY:t,sourcePosition:n=S5.Bottom,targetX:r,targetY:i,targetPosition:a=S5.Top,borderRadius:o=5,centerX:s,centerY:c,offset:l=20,stepPosition:u=.5}){let[d,f,p,m,h]=HYe({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:i},targetPosition:a,center:{x:s,y:c},offset:l,stepPosition:u}),g=`M${d[0].x} ${d[0].y}`;for(let e=1;e<d.length-1;e++)g+=UYe(d[e-1],d[e],d[e+1],o);return g+=`L${d[d.length-1].x} ${d[d.length-1].y}`,[g,f,p,m,h]}function WYe(e){return e&&!!(e.internals.handleBounds||e.handles?.length)&&!!(e.measured.width||e.width||e.initialWidth)}function GYe(e){let{sourceNode:t,targetNode:n}=e;if(!WYe(t)||!WYe(n))return null;let r=t.internals.handleBounds||KYe(t.handles),i=n.internals.handleBounds||KYe(n.handles),a=qYe(r?.source??[],e.sourceHandle),o=qYe(e.connectionMode===_5.Strict?i?.target??[]:(i?.target??[]).concat(i?.source??[]),e.targetHandle);if(!a||!o)return e.onError?.(`008`,h5.error008(a?`target`:`source`,{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;let s=a?.position||S5.Bottom,c=o?.position||S5.Top,l=Y5(t,a,s),u=Y5(n,o,c);return{sourceX:l.x,sourceY:l.y,targetX:u.x,targetY:u.y,sourcePosition:s,targetPosition:c}}function KYe(e){if(!e)return null;let t=[],n=[];for(let r of e)r.width=r.width??1,r.height=r.height??1,r.type===`source`?t.push(r):r.type===`target`&&n.push(r);return{source:t,target:n}}function Y5(e,t,n=S5.Left,r=!1){let i=(t?.x??0)+e.internals.positionAbsolute.x,a=(t?.y??0)+e.internals.positionAbsolute.y,{width:o,height:s}=t??U5(e);if(r)return{x:i+o/2,y:a+s/2};switch(t?.position??n){case S5.Top:return{x:i+o/2,y:a};case S5.Right:return{x:i+o,y:a+s/2};case S5.Bottom:return{x:i+o/2,y:a+s};case S5.Left:return{x:i,y:a+s/2}}}function qYe(e,t){return e&&(t?e.find(e=>e.id===t):e[0])||null}function X5(e,t){return e?typeof e==`string`?e:`${t?`${t}__`:``}${Object.keys(e).sort().map(t=>`${t}=${e[t]}`).join(`&`)}`:``}function JYe(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:i}){let a=new Set;return e.reduce((e,o)=>([o.markerStart||r,o.markerEnd||i].forEach(r=>{if(r&&typeof r==`object`){let i=X5(r,t);a.has(i)||(e.push({id:i,color:r.color||n,...r}),a.add(i))}}),e),[]).sort((e,t)=>e.id.localeCompare(t.id))}var YYe=1e3,XYe=10,Z5={nodeOrigin:[0,0],nodeExtent:g5,elevateNodesOnSelect:!0,zIndexMode:`basic`,defaults:{}},ZYe={...Z5,checkEquality:!0};function Q5(e,t){let n={...e};for(let e in t)t[e]!==void 0&&(n[e]=t[e]);return n}function QYe(e,t,n){let r=Q5(Z5,n);for(let n of e.values())if(n.parentId)t7(n,e,t,r);else{let e=O5(w5(n,r.nodeOrigin),H5(n.extent)?n.extent:r.nodeExtent,U5(n));n.internals.positionAbsolute=e}}function $Ye(e,t){if(!e.handles)return e.measured?t?.internals.handleBounds:void 0;let n=[],r=[];for(let t of e.handles){let i={id:t.id,width:t.width??1,height:t.height??1,nodeId:e.id,x:t.x,y:t.y,position:t.position,type:t.type};t.type===`source`?n.push(i):t.type===`target`&&r.push(i)}return{source:n,target:r}}function $5(e){return e===`manual`}function e7(e,t,n,r={}){let i=Q5(ZYe,r),a={i:0},o=new Map(t),s=i?.elevateNodesOnSelect&&!$5(i.zIndexMode)?YYe:0,c=e.length>0,l=!1;t.clear(),n.clear();for(let u of e){let e=o.get(u.id);if(i.checkEquality&&u===e?.internals.userNode)t.set(u.id,e);else{let n=O5(w5(u,i.nodeOrigin),H5(u.extent)?u.extent:i.nodeExtent,U5(u));e={...i.defaults,...u,measured:{width:u.measured?.width,height:u.measured?.height},internals:{positionAbsolute:n,handleBounds:$Ye(u,e),z:tXe(u,s,i.zIndexMode),userNode:u}},t.set(u.id,e)}(e.measured===void 0||e.measured.width===void 0||e.measured.height===void 0)&&!e.hidden&&(c=!1),u.parentId&&t7(e,t,n,r,a),l||=u.selected??!1}return{nodesInitialized:c,hasSelectedNodes:l}}function eXe(e,t){if(!e.parentId)return;let n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function t7(e,t,n,r,i){let{elevateNodesOnSelect:a,nodeOrigin:o,nodeExtent:s,zIndexMode:c}=Q5(Z5,r),l=e.parentId,u=t.get(l);if(!u){console.warn(`Parent node ${l} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}eXe(e,n),i&&!u.parentId&&u.internals.rootParentIndex===void 0&&c===`auto`&&(u.internals.rootParentIndex=++i.i,u.internals.z=u.internals.z+i.i*XYe),i&&u.internals.rootParentIndex!==void 0&&(i.i=u.internals.rootParentIndex);let{x:d,y:f,z:p}=nXe(e,u,o,s,a&&!$5(c)?YYe:0,c),{positionAbsolute:m}=e.internals,h=d!==m.x||f!==m.y;(h||p!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:h?{x:d,y:f}:m,z:p}})}function tXe(e,t,n){let r=F5(e.zIndex)?e.zIndex:0;return $5(n)?r:r+(e.selected?t:0)}function nXe(e,t,n,r,i,a){let{x:o,y:s}=t.internals.positionAbsolute,c=U5(e),l=w5(e,n),u=H5(e.extent)?O5(l,e.extent,c):l,d=O5({x:o+u.x,y:s+u.y},r,c);e.extent===`parent`&&(d=dYe(d,c,t));let f=tXe(e,i,a),p=t.internals.z??0;return{x:d.x,y:d.y,z:p>=f?p+1:f}}function n7(e,t,n,r=[0,0]){let i=[],a=new Map;for(let n of e){let e=t.get(n.parentId);if(!e)continue;let r=mYe(a.get(n.parentId)?.expandedRect??M5(e),n.rect);a.set(n.parentId,{expandedRect:r,parent:e})}return a.size>0&&a.forEach(({expandedRect:t,parent:a},o)=>{let s=a.internals.positionAbsolute,c=U5(a),l=a.origin??r,u=t.x<s.x?Math.round(Math.abs(s.x-t.x)):0,d=t.y<s.y?Math.round(Math.abs(s.y-t.y)):0,f=Math.max(c.width,Math.round(t.width)),p=Math.max(c.height,Math.round(t.height)),m=(f-c.width)*l[0],h=(p-c.height)*l[1];(u>0||d>0||m||h)&&(i.push({id:o,type:`position`,position:{x:a.position.x-u+m,y:a.position.y-d+h}}),n.get(o)?.forEach(t=>{e.some(e=>e.id===t.id)||i.push({id:t.id,type:`position`,position:{x:t.position.x+u,y:t.position.y+d}})})),(c.width<t.width||c.height<t.height||u||d)&&i.push({id:o,type:`dimensions`,setAttributes:!0,dimensions:{width:f+(u?l[0]*u-m:0),height:p+(d?l[1]*d-h:0)}})}),i}function rXe(e,t,n,r,i,a,o){let s=r?.querySelector(`.xyflow__viewport`),c=!1;if(!s)return{changes:[],updatedInternals:c};let l=[],u=window.getComputedStyle(s),{m22:d}=new window.DOMMatrixReadOnly(u.transform),f=[];for(let r of e.values()){let e=t.get(r.id);if(!e)continue;if(e.hidden){t.set(e.id,{...e,internals:{...e.internals,handleBounds:void 0}}),c=!0;continue}let s=G5(r.nodeElement),u=e.measured.width!==s.width||e.measured.height!==s.height;if(s.width&&s.height&&(u||!e.internals.handleBounds||r.force)){let p=r.nodeElement.getBoundingClientRect(),m=H5(e.extent)?e.extent:a,{positionAbsolute:h}=e.internals;e.parentId&&e.extent===`parent`?h=dYe(h,s,t.get(e.parentId)):m&&(h=O5(h,m,s));let g={...e,measured:s,internals:{...e.internals,positionAbsolute:h,handleBounds:{source:OYe(`source`,r.nodeElement,p,d,e.id),target:OYe(`target`,r.nodeElement,p,d,e.id)}}};t.set(e.id,g),e.parentId&&t7(g,t,n,{nodeOrigin:i,zIndexMode:o}),c=!0,u&&(l.push({id:e.id,type:`dimensions`,dimensions:s}),e.expandParent&&e.parentId&&f.push({id:e.id,parentId:e.parentId,rect:M5(g,i)}))}}if(f.length>0){let e=n7(f,t,n,i);l.push(...e)}return{changes:l,updatedInternals:c}}async function iXe({delta:e,panZoom:t,transform:n,translateExtent:r,width:i,height:a}){if(!t||!e.x&&!e.y)return Promise.resolve(!1);let o=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[i,a]],r),s=!!o&&(o.x!==n[0]||o.y!==n[1]||o.k!==n[2]);return Promise.resolve(s)}function aXe(e,t,n,r,i,a){let o=i,s=r.get(o)||new Map;r.set(o,s.set(n,t)),o=`${i}-${e}`;let c=r.get(o)||new Map;if(r.set(o,c.set(n,t)),a){o=`${i}-${e}-${a}`;let s=r.get(o)||new Map;r.set(o,s.set(n,t))}}function oXe(e,t,n){e.clear(),t.clear();for(let r of n){let{source:n,target:i,sourceHandle:a=null,targetHandle:o=null}=r,s={edgeId:r.id,source:n,target:i,sourceHandle:a,targetHandle:o},c=`${n}-${a}--${i}-${o}`;aXe(`source`,s,`${i}-${o}--${n}-${a}`,e,n,a),aXe(`target`,s,c,e,i,o),t.set(r.id,r)}}function sXe(e,t){if(!e.parentId)return!1;let n=t.get(e.parentId);return n?n.selected?!0:sXe(n,t):!1}function cXe(e,t,n){let r=e;do{if(r?.matches?.(t))return!0;if(r===n)return!1;r=r?.parentElement}while(r);return!1}function lXe(e,t,n,r){let i=new Map;for(let[a,o]of e)if((o.selected||o.id===r)&&(!o.parentId||!sXe(o,e))&&(o.draggable||t&&o.draggable===void 0)){let t=e.get(a);t&&i.set(a,{id:a,position:t.position||{x:0,y:0},distance:{x:n.x-t.internals.positionAbsolute.x,y:n.y-t.internals.positionAbsolute.y},extent:t.extent,parentId:t.parentId,origin:t.origin,expandParent:t.expandParent,internals:{positionAbsolute:t.internals.positionAbsolute||{x:0,y:0}},measured:{width:t.measured.width??0,height:t.measured.height??0}})}return i}function r7({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){let i=[];for(let[e,a]of t){let t=n.get(e)?.internals.userNode;t&&i.push({...t,position:a.position,dragging:r})}if(!e)return[i[0],i];let a=n.get(e)?.internals.userNode;return[a?{...a,position:t.get(e)?.position||a.position,dragging:r}:i[0],i]}function uXe({dragItems:e,snapGrid:t,x:n,y:r}){let i=e.values().next().value;if(!i)return null;let a={x:n-i.distance.x,y:r-i.distance.y},o=I5(a,t);return{x:o.x-a.x,y:o.y-a.y}}function dXe({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:i}){let a={x:null,y:null},o=0,s=new Map,c=!1,l={x:0,y:0},u=null,d=!1,f=null,p=!1,m=!1,h=null;function g({noDragClassName:g,handleSelector:_,domNode:v,isSelectable:y,nodeId:b,nodeClickDistance:x=0}){f=K6(v);function S({x:e,y:n}){let{nodeLookup:i,nodeExtent:o,snapGrid:c,snapToGrid:l,nodeOrigin:u,onNodeDrag:d,onSelectionDrag:f,onError:p,updateNodePositions:g}=t();a={x:e,y:n};let _=!1,v=s.size>1,y=v&&o?A5(T5(s)):null,x=v&&l?uXe({dragItems:s,snapGrid:c,x:e,y:n}):null;for(let[t,r]of s){if(!i.has(t))continue;let a={x:e-r.distance.x,y:n-r.distance.y};l&&(a=x?{x:Math.round(a.x+x.x),y:Math.round(a.y+x.y)}:I5(a,c));let s=null;if(v&&o&&!r.extent&&y){let{positionAbsolute:e}=r.internals,t=e.x-y.x+o[0][0],n=e.x+r.measured.width-y.x2+o[1][0],i=e.y-y.y+o[0][1],a=e.y+r.measured.height-y.y2+o[1][1];s=[[t,i],[n,a]]}let{position:d,positionAbsolute:f}=lYe({nodeId:t,nextPosition:a,nodeLookup:i,nodeExtent:s||o,nodeOrigin:u,onError:p});_=_||r.position.x!==d.x||r.position.y!==d.y,r.position=d,r.internals.positionAbsolute=f}if(m||=_,_&&(g(s,!0),h&&(r||d||!b&&f))){let[e,t]=r7({nodeId:b,dragItems:s,nodeLookup:i});r?.(h,s,e,t),d?.(h,e,t),b||f?.(h,t)}}async function C(){if(!u)return;let{transform:e,panBy:n,autoPanSpeed:r,autoPanOnNodeDrag:i}=t();if(!i){c=!1,cancelAnimationFrame(o);return}let[s,d]=pYe(l,u,r);(s!==0||d!==0)&&(a.x=(a.x??0)-s/e[2],a.y=(a.y??0)-d/e[2],await n({x:s,y:d})&&S(a)),o=requestAnimationFrame(C)}function w(r){let{nodeLookup:i,multiSelectionActive:o,nodesDraggable:c,transform:l,snapGrid:f,snapToGrid:p,selectNodesOnDrag:m,onNodeDragStart:h,onSelectionDragStart:g,unselectNodesAndEdges:_}=t();d=!0,(!m||!y)&&!o&&b&&(i.get(b)?.selected||_()),y&&m&&b&&e?.(b);let v=W5(r.sourceEvent,{transform:l,snapGrid:f,snapToGrid:p,containerBounds:u});if(a=v,s=lXe(i,c,v,b),s.size>0&&(n||h||!b&&g)){let[e,t]=r7({nodeId:b,dragItems:s,nodeLookup:i});n?.(r.sourceEvent,s,e,t),h?.(r.sourceEvent,e,t),b||g?.(r.sourceEvent,t)}}let T=t8().clickDistance(x).on(`start`,e=>{let{domNode:n,nodeDragThreshold:r,transform:i,snapGrid:o,snapToGrid:s}=t();u=n?.getBoundingClientRect()||null,p=!1,m=!1,h=e.sourceEvent,r===0&&w(e),a=W5(e.sourceEvent,{transform:i,snapGrid:o,snapToGrid:s,containerBounds:u}),l=K5(e.sourceEvent,u)}).on(`drag`,e=>{let{autoPanOnNodeDrag:n,transform:r,snapGrid:i,snapToGrid:o,nodeDragThreshold:f,nodeLookup:m}=t(),g=W5(e.sourceEvent,{transform:r,snapGrid:i,snapToGrid:o,containerBounds:u});if(h=e.sourceEvent,(e.sourceEvent.type===`touchmove`&&e.sourceEvent.touches.length>1||b&&!m.has(b))&&(p=!0),!p){if(!c&&n&&d&&(c=!0,C()),!d){let t=K5(e.sourceEvent,u),n=t.x-l.x,r=t.y-l.y;Math.sqrt(n*n+r*r)>f&&w(e)}(a.x!==g.xSnapped||a.y!==g.ySnapped)&&s&&d&&(l=K5(e.sourceEvent,u),S(g))}}).on(`end`,e=>{if(!(!d||p)&&(c=!1,d=!1,cancelAnimationFrame(o),s.size>0)){let{nodeLookup:n,updateNodePositions:r,onNodeDragStop:a,onSelectionDragStop:o}=t();if(m&&=(r(s,!1),!1),i||a||!b&&o){let[t,r]=r7({nodeId:b,dragItems:s,nodeLookup:n,dragging:!1});i?.(e.sourceEvent,s,t,r),a?.(e.sourceEvent,t,r),b||o?.(e.sourceEvent,r)}}}).filter(e=>{let t=e.target;return!e.button&&(!g||!cXe(t,`.${g}`,v))&&(!_||cXe(t,_,v))});f.call(T)}function _(){f?.on(`.drag`,null)}return{update:g,destroy:_}}function fXe(e,t,n){let r=[],i={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(let e of t.values())P5(i,M5(e))>0&&r.push(e);return r}var pXe=250;function mXe(e,t,n,r){let i=[],a=1/0,o=fXe(e,n,t+pXe);for(let n of o){let o=[...n.internals.handleBounds?.source??[],...n.internals.handleBounds?.target??[]];for(let s of o){if(r.nodeId===s.nodeId&&r.type===s.type&&r.id===s.id)continue;let{x:o,y:c}=Y5(n,s,s.position,!0),l=Math.sqrt((o-e.x)**2+(c-e.y)**2);l>t||(l<a?(i=[{...s,x:o,y:c}],a=l):l===a&&i.push({...s,x:o,y:c}))}}if(!i.length)return null;if(i.length>1){let e=r.type===`source`?`target`:`source`;return i.find(t=>t.type===e)??i[0]}return i[0]}function hXe(e,t,n,r,i,a=!1){let o=r.get(e);if(!o)return null;let s=i===`strict`?o.internals.handleBounds?.[t]:[...o.internals.handleBounds?.source??[],...o.internals.handleBounds?.target??[]],c=(n?s?.find(e=>e.id===n):s?.[0])??null;return c&&a?{...c,...Y5(o,c,c.position,!0)}:c}function gXe(e,t){return e||(t?.classList.contains(`target`)?`target`:t?.classList.contains(`source`)?`source`:null)}function _Xe(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}var vXe=()=>!0;function yXe(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:i,edgeUpdaterType:a,isTarget:o,domNode:s,nodeLookup:c,lib:l,autoPanOnConnect:u,flowId:d,panBy:f,cancelConnection:p,onConnectStart:m,onConnect:h,onConnectEnd:g,isValidConnection:_=vXe,onReconnectEnd:v,updateConnection:y,getTransform:b,getFromHandle:x,autoPanSpeed:S,dragThreshold:C=1,handleDomNode:w}){let T=wYe(e.target),E=0,D,{x:O,y:k}=K5(e),A=gXe(a,w),j=s?.getBoundingClientRect(),M=!1;if(!j||!A)return;let N=hXe(i,A,r,c,t);if(!N)return;let P=K5(e,j),F=!1,I=null,L=!1,R=null;function z(){if(!u||!j)return;let[e,t]=pYe(P,j,S);f({x:e,y:t}),E=requestAnimationFrame(z)}let B={...N,nodeId:i,type:A,position:N.position},ee=c.get(i),te={inProgress:!0,isValid:null,from:Y5(ee,B,S5.Left,!0),fromHandle:B,fromPosition:B.position,fromNode:ee,to:P,toHandle:null,toPosition:tYe[B.position],toNode:null,pointer:P};function ne(){M=!0,y(te),m?.(e,{nodeId:i,handleId:r,handleType:A})}C===0&&ne();function re(e){if(!M){let{x:t,y:n}=K5(e),r=t-O,i=n-k;if(!(r*r+i*i>C*C))return;ne()}if(!x()||!B){V(e);return}let a=b();P=K5(e,j),D=mXe(L5(P,a,!1,[1,1]),n,c,B),F||=(z(),!0);let s=bXe(e,{handle:D,connectionMode:t,fromNodeId:i,fromHandleId:r,fromType:o?`target`:`source`,isValidConnection:_,doc:T,lib:l,flowId:d,nodeLookup:c});R=s.handleDomNode,I=s.connection,L=_Xe(!!D,s.isValid);let u=c.get(i),f=u?Y5(u,B,S5.Left,!0):te.from,p={...te,from:f,isValid:L,to:s.toHandle&&L?R5({x:s.toHandle.x,y:s.toHandle.y},a):P,toHandle:s.toHandle,toPosition:L&&s.toHandle?s.toHandle.position:tYe[B.position],toNode:s.toHandle?c.get(s.toHandle.nodeId):null,pointer:P};y(p),te=p}function V(e){if(!(`touches`in e&&e.touches.length>0)){if(M){(D||R)&&I&&L&&h?.(I);let{inProgress:t,...n}=te,r={...n,toPosition:te.toHandle?te.toPosition:null};g?.(e,r),a&&v?.(e,r)}p(),cancelAnimationFrame(E),F=!1,L=!1,I=null,R=null,T.removeEventListener(`mousemove`,re),T.removeEventListener(`mouseup`,V),T.removeEventListener(`touchmove`,re),T.removeEventListener(`touchend`,V)}}T.addEventListener(`mousemove`,re),T.addEventListener(`mouseup`,V),T.addEventListener(`touchmove`,re),T.addEventListener(`touchend`,V)}function bXe(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:i,fromType:a,doc:o,lib:s,flowId:c,isValidConnection:l=vXe,nodeLookup:u}){let d=a===`target`,f=t?o.querySelector(`.${s}-flow__handle[data-id="${c}-${t?.nodeId}-${t?.id}-${t?.type}"]`):null,{x:p,y:m}=K5(e),h=o.elementFromPoint(p,m),g=h?.classList.contains(`${s}-flow__handle`)?h:f,_={handleDomNode:g,isValid:!1,connection:null,toHandle:null};if(g){let e=gXe(void 0,g),t=g.getAttribute(`data-nodeid`),a=g.getAttribute(`data-handleid`),o=g.classList.contains(`connectable`),s=g.classList.contains(`connectableend`);if(!t||!e)return _;let c={source:d?t:r,sourceHandle:d?a:i,target:d?r:t,targetHandle:d?i:a};_.connection=c,_.isValid=o&&s&&(n===_5.Strict?d&&e===`source`||!d&&e===`target`:t!==r||a!==i)&&l(c),_.toHandle=hXe(t,e,a,u,n,!0)}return _}var i7={onPointerDown:yXe,isValid:bXe};function xXe({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){let i=K6(e);function a({translateExtent:e,width:a,height:o,zoomStep:s=1,pannable:c=!0,zoomable:l=!0,inversePan:u=!1}){let d=e=>{if(e.sourceEvent.type!==`wheel`||!t)return;let r=n(),i=e.sourceEvent.ctrlKey&&V5()?10:1,a=-e.sourceEvent.deltaY*(e.sourceEvent.deltaMode===1?.05:e.sourceEvent.deltaMode?1:.002)*s,o=r[2]*2**(a*i);t.scaleTo(o)},f=[0,0],p=ZJe().on(`start`,e=>{(e.sourceEvent.type===`mousedown`||e.sourceEvent.type===`touchstart`)&&(f=[e.sourceEvent.clientX??e.sourceEvent.touches[0].clientX,e.sourceEvent.clientY??e.sourceEvent.touches[0].clientY])}).on(`zoom`,c?i=>{let s=n();if(i.sourceEvent.type!==`mousemove`&&i.sourceEvent.type!==`touchmove`||!t)return;let c=[i.sourceEvent.clientX??i.sourceEvent.touches[0].clientX,i.sourceEvent.clientY??i.sourceEvent.touches[0].clientY],l=[c[0]-f[0],c[1]-f[1]];f=c;let d=r()*Math.max(s[2],Math.log(s[2]))*(u?-1:1),p={x:s[0]-l[0]*d,y:s[1]-l[1]*d},m=[[0,0],[a,o]];t.setViewportConstrained({x:p.x,y:p.y,zoom:s[2]},m,e)}:null).on(`zoom.wheel`,l?d:null);i.call(p,{})}function o(){i.on(`zoom`,null)}return{update:a,destroy:o,pointer:q6}}var a7=e=>({x:e.x,y:e.y,zoom:e.k}),o7=({x:e,y:t,zoom:n})=>f5.translate(e,t).scale(n),s7=(e,t)=>e.target.closest(`.${t}`),SXe=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),CXe=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,c7=(e,t=0,n=CXe,r=()=>{})=>{let i=typeof t==`number`&&t>0;return i||r(),i?e.transition().duration(t).ease(n).on(`end`,r):e},wXe=e=>{let t=e.ctrlKey&&V5()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function TXe({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:i,panOnScrollSpeed:a,zoomOnPinch:o,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:l}){return u=>{if(s7(u,t))return u.ctrlKey&&u.preventDefault(),!1;u.preventDefault(),u.stopImmediatePropagation();let d=n.property(`__zoom`).k||1;if(u.ctrlKey&&o){let e=q6(u),t=d*2**wXe(u);r.scaleTo(n,t,e,u);return}let f=u.deltaMode===1?20:1,p=i===v5.Vertical?0:u.deltaX*f,m=i===v5.Horizontal?0:u.deltaY*f;!V5()&&u.shiftKey&&i!==v5.Vertical&&(p=u.deltaY*f,m=0),r.translateBy(n,-(p/d)*a,-(m/d)*a,{internal:!0});let h=a7(n.property(`__zoom`));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(c?.(u,h),e.panScrollTimeout=setTimeout(()=>{l?.(u,h),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,s?.(u,h))}}function EXe({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,i){let a=r.type===`wheel`,o=!t&&a&&!r.ctrlKey,s=s7(r,e);if(r.ctrlKey&&a&&s&&r.preventDefault(),o||s)return null;r.preventDefault(),n.call(this,r,i)}}function DXe({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{if(r.sourceEvent?.internal)return;let i=a7(r.transform);e.mouseButton=r.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=i,r.sourceEvent?.type===`mousedown`&&t(!0),n&&n?.(r.sourceEvent,i)}}function OXe({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:i}){return a=>{e.usedRightMouseButton=!!(n&&SXe(t,e.mouseButton??0)),a.sourceEvent?.sync||r([a.transform.x,a.transform.y,a.transform.k]),i&&!a.sourceEvent?.internal&&i?.(a.sourceEvent,a7(a.transform))}}function kXe({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:i,onPaneContextMenu:a}){return o=>{if(!o.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,a&&SXe(t,e.mouseButton??0)&&!e.usedRightMouseButton&&o.sourceEvent&&a(o.sourceEvent),e.usedRightMouseButton=!1,r(!1),i)){let t=a7(o.transform);e.prevViewport=t,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{i?.(o.sourceEvent,t)},n?150:0)}}}function AXe({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:r,panOnScroll:i,zoomOnDoubleClick:a,userSelectionActive:o,noWheelClassName:s,noPanClassName:c,lib:l,connectionInProgress:u}){return d=>{let f=e||t,p=n&&d.ctrlKey,m=d.type===`wheel`;if(d.button===1&&d.type===`mousedown`&&(s7(d,`${l}-flow__node`)||s7(d,`${l}-flow__edge`)))return!0;if(!r&&!f&&!i&&!a&&!n||o||u&&!m||s7(d,s)&&m||s7(d,c)&&(!m||i&&m&&!e)||!n&&d.ctrlKey&&m)return!1;if(!n&&d.type===`touchstart`&&d.touches?.length>1)return d.preventDefault(),!1;if(!f&&!i&&!p&&m||!r&&(d.type===`mousedown`||d.type===`touchstart`)||Array.isArray(r)&&!r.includes(d.button)&&d.type===`mousedown`)return!1;let h=Array.isArray(r)&&r.includes(d.button)||!d.button||d.button<=1;return(!d.ctrlKey||m)&&h}}function jXe({domNode:e,minZoom:t,maxZoom:n,translateExtent:r,viewport:i,onPanZoom:a,onPanZoomStart:o,onPanZoomEnd:s,onDraggingChange:c}){let l={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{x:0,y:0,zoom:0},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},u=e.getBoundingClientRect(),d=ZJe().scaleExtent([t,n]).translateExtent(r),f=K6(e).call(d);v({x:i.x,y:i.y,zoom:D5(i.zoom,t,n)},[[0,0],[u.width,u.height]],r);let p=f.on(`wheel.zoom`),m=f.on(`dblclick.zoom`);d.wheelDelta(wXe);function h(e,t){return f?new Promise(n=>{d?.interpolate(t?.interpolate===`linear`?I8:U8).transform(c7(f,t?.duration,t?.ease,()=>n(!0)),e)}):Promise.resolve(!1)}function g({noWheelClassName:e,noPanClassName:t,onPaneContextMenu:n,userSelectionActive:r,panOnScroll:i,panOnDrag:u,panOnScrollMode:h,panOnScrollSpeed:g,preventScrolling:v,zoomOnPinch:y,zoomOnScroll:b,zoomOnDoubleClick:x,zoomActivationKeyPressed:S,lib:C,onTransformChange:w,connectionInProgress:T,paneClickDistance:E,selectionOnDrag:D}){r&&!l.isZoomingOrPanning&&_();let O=i&&!S&&!r;d.clickDistance(D?1/0:!F5(E)||E<0?0:E);let k=O?TXe({zoomPanValues:l,noWheelClassName:e,d3Selection:f,d3Zoom:d,panOnScrollMode:h,panOnScrollSpeed:g,zoomOnPinch:y,onPanZoomStart:o,onPanZoom:a,onPanZoomEnd:s}):EXe({noWheelClassName:e,preventScrolling:v,d3ZoomHandler:p});if(f.on(`wheel.zoom`,k,{passive:!1}),!r){let e=DXe({zoomPanValues:l,onDraggingChange:c,onPanZoomStart:o});d.on(`start`,e);let t=OXe({zoomPanValues:l,panOnDrag:u,onPaneContextMenu:!!n,onPanZoom:a,onTransformChange:w});d.on(`zoom`,t);let r=kXe({zoomPanValues:l,panOnDrag:u,panOnScroll:i,onPaneContextMenu:n,onPanZoomEnd:s,onDraggingChange:c});d.on(`end`,r)}let A=AXe({zoomActivationKeyPressed:S,panOnDrag:u,zoomOnScroll:b,panOnScroll:i,zoomOnDoubleClick:x,zoomOnPinch:y,userSelectionActive:r,noPanClassName:t,noWheelClassName:e,lib:C,connectionInProgress:T});d.filter(A),x?f.on(`dblclick.zoom`,m):f.on(`dblclick.zoom`,null)}function _(){d.on(`zoom`,null)}async function v(e,t,n){let r=o7(e),i=d?.constrain()(r,t,n);return i&&await h(i),new Promise(e=>e(i))}async function y(e,t){let n=o7(e);return await h(n,t),new Promise(e=>e(n))}function b(e){if(f){let t=o7(e),n=f.property(`__zoom`);(n.k!==e.zoom||n.x!==e.x||n.y!==e.y)&&d?.transform(f,t,null,{sync:!0})}}function x(){let e=f?WJe(f.node()):{x:0,y:0,k:1};return{x:e.x,y:e.y,zoom:e.k}}function S(e,t){return f?new Promise(n=>{d?.interpolate(t?.interpolate===`linear`?I8:U8).scaleTo(c7(f,t?.duration,t?.ease,()=>n(!0)),e)}):Promise.resolve(!1)}function C(e,t){return f?new Promise(n=>{d?.interpolate(t?.interpolate===`linear`?I8:U8).scaleBy(c7(f,t?.duration,t?.ease,()=>n(!0)),e)}):Promise.resolve(!1)}function w(e){d?.scaleExtent(e)}function T(e){d?.translateExtent(e)}function E(e){let t=!F5(e)||e<0?0:e;d?.clickDistance(t)}return{update:g,destroy:_,setViewport:y,setViewportConstrained:v,getViewport:x,scaleTo:S,scaleBy:C,setScaleExtent:w,setTranslateExtent:T,syncViewport:b,setClickDistance:E}}var l7;(function(e){e.Line=`line`,e.Handle=`handle`})(l7||={});function MXe({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:i,affectsY:a}){let o=e-t,s=n-r,c=[o>0?1:o<0?-1:0,s>0?1:s<0?-1:0];return o&&i&&(c[0]*=-1),s&&a&&(c[1]*=-1),c}function NXe(e){return{isHorizontal:e.includes(`right`)||e.includes(`left`),isVertical:e.includes(`bottom`)||e.includes(`top`),affectsX:e.includes(`left`),affectsY:e.includes(`top`)}}function u7(e,t){return Math.max(0,t-e)}function d7(e,t){return Math.max(0,e-t)}function f7(e,t,n){return Math.max(0,t-e,e-n)}function PXe(e,t){return e?!t:t}function FXe(e,t,n,r,i,a,o,s){let{affectsX:c,affectsY:l}=t,{isHorizontal:u,isVertical:d}=t,f=u&&d,{xSnapped:p,ySnapped:m}=n,{minWidth:h,maxWidth:g,minHeight:_,maxHeight:v}=r,{x:y,y:b,width:x,height:S,aspectRatio:C}=e,w=Math.floor(u?p-e.pointerX:0),T=Math.floor(d?m-e.pointerY:0),E=x+(c?-w:w),D=S+(l?-T:T),O=-a[0]*x,k=-a[1]*S,A=f7(E,h,g),j=f7(D,_,v);if(o){let e=0,t=0;c&&w<0?e=u7(y+w+O,o[0][0]):!c&&w>0&&(e=d7(y+E+O,o[1][0])),l&&T<0?t=u7(b+T+k,o[0][1]):!l&&T>0&&(t=d7(b+D+k,o[1][1])),A=Math.max(A,e),j=Math.max(j,t)}if(s){let e=0,t=0;c&&w>0?e=d7(y+w,s[0][0]):!c&&w<0&&(e=u7(y+E,s[1][0])),l&&T>0?t=d7(b+T,s[0][1]):!l&&T<0&&(t=u7(b+D,s[1][1])),A=Math.max(A,e),j=Math.max(j,t)}if(i){if(u){let e=f7(E/C,_,v)*C;if(A=Math.max(A,e),o){let e=0;e=!c&&!l||c&&!l&&f?d7(b+k+E/C,o[1][1])*C:u7(b+k+(c?w:-w)/C,o[0][1])*C,A=Math.max(A,e)}if(s){let e=0;e=!c&&!l||c&&!l&&f?u7(b+E/C,s[1][1])*C:d7(b+(c?w:-w)/C,s[0][1])*C,A=Math.max(A,e)}}if(d){let e=f7(D*C,h,g)/C;if(j=Math.max(j,e),o){let e=0;e=!c&&!l||l&&!c&&f?d7(y+D*C+O,o[1][0])/C:u7(y+(l?T:-T)*C+O,o[0][0])/C,j=Math.max(j,e)}if(s){let e=0;e=!c&&!l||l&&!c&&f?u7(y+D*C,s[1][0])/C:d7(y+(l?T:-T)*C,s[0][0])/C,j=Math.max(j,e)}}}T+=T<0?j:-j,w+=w<0?A:-A,i&&(f?E>D*C?T=(PXe(c,l)?-w:w)/C:w=(PXe(c,l)?-T:T)*C:u?(T=w/C,l=c):(w=T*C,c=l));let M=c?y+w:y,N=l?b+T:b;return{width:x+(c?-w:w),height:S+(l?-T:T),x:a[0]*w*(c?-1:1)+M,y:a[1]*T*(l?-1:1)+N}}var IXe={width:0,height:0,x:0,y:0},LXe={...IXe,pointerX:0,pointerY:0,aspectRatio:1};function RXe(e){return[[0,0],[e.measured.width,e.measured.height]]}function zXe(e,t,n){let r=t.position.x+e.position.x,i=t.position.y+e.position.y,a=e.measured.width??0,o=e.measured.height??0,s=n[0]*a,c=n[1]*o;return[[r-s,i-c],[r+a-s,i+o-c]]}function BXe({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:i}){let a=K6(e),o={controlDirection:NXe(`bottom-right`),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function s({controlPosition:e,boundaries:s,keepAspectRatio:c,resizeDirection:l,onResizeStart:u,onResize:d,onResizeEnd:f,shouldResize:p}){let m={...IXe},h={...LXe};o={boundaries:s,resizeDirection:l,keepAspectRatio:c,controlDirection:NXe(e)};let g,_=null,v=[],y,b,x,S=!1,C=t8().on(`start`,e=>{let{nodeLookup:r,transform:i,snapGrid:a,snapToGrid:o,nodeOrigin:s,paneDomNode:c}=n();if(g=r.get(t),!g)return;_=c?.getBoundingClientRect()??null;let{xSnapped:l,ySnapped:d}=W5(e.sourceEvent,{transform:i,snapGrid:a,snapToGrid:o,containerBounds:_});m={width:g.measured.width??0,height:g.measured.height??0,x:g.position.x??0,y:g.position.y??0},h={...m,pointerX:l,pointerY:d,aspectRatio:m.width/m.height},y=void 0,g.parentId&&(g.extent===`parent`||g.expandParent)&&(y=r.get(g.parentId),b=y&&g.extent===`parent`?RXe(y):void 0),v=[],x=void 0;for(let[e,n]of r)if(n.parentId===t&&(v.push({id:e,position:{...n.position},extent:n.extent}),n.extent===`parent`||n.expandParent)){let e=zXe(n,g,n.origin??s);x=x?[[Math.min(e[0][0],x[0][0]),Math.min(e[0][1],x[0][1])],[Math.max(e[1][0],x[1][0]),Math.max(e[1][1],x[1][1])]]:e}u?.(e,{...m})}).on(`drag`,e=>{let{transform:t,snapGrid:i,snapToGrid:a,nodeOrigin:s}=n(),c=W5(e.sourceEvent,{transform:t,snapGrid:i,snapToGrid:a,containerBounds:_}),l=[];if(!g)return;let{x:u,y:f,width:C,height:w}=m,T={},E=g.origin??s,{width:D,height:O,x:k,y:A}=FXe(h,o.controlDirection,c,o.boundaries,o.keepAspectRatio,E,b,x),j=D!==C,M=O!==w,N=k!==u&&j,P=A!==f&&M;if(!N&&!P&&!j&&!M)return;if((N||P||E[0]===1||E[1]===1)&&(T.x=N?k:m.x,T.y=P?A:m.y,m.x=T.x,m.y=T.y,v.length>0)){let e=k-u,t=A-f;for(let n of v)n.position={x:n.position.x-e+E[0]*(D-C),y:n.position.y-t+E[1]*(O-w)},l.push(n)}if((j||M)&&(T.width=j&&(!o.resizeDirection||o.resizeDirection===`horizontal`)?D:m.width,T.height=M&&(!o.resizeDirection||o.resizeDirection===`vertical`)?O:m.height,m.width=T.width,m.height=T.height),y&&g.expandParent){let e=E[0]*(T.width??0);T.x&&T.x<e&&(m.x=e,h.x-=T.x-e);let t=E[1]*(T.height??0);T.y&&T.y<t&&(m.y=t,h.y-=T.y-t)}let F=MXe({width:m.width,prevWidth:C,height:m.height,prevHeight:w,affectsX:o.controlDirection.affectsX,affectsY:o.controlDirection.affectsY}),I={...m,direction:F};p?.(e,I)!==!1&&(S=!0,d?.(e,I),r(T,l))}).on(`end`,e=>{S&&=(f?.(e,{...m}),i?.({...m}),!1)});a.call(C)}function c(){a.on(`.drag`,null)}return{update:s,destroy:c}}var VXe=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e)),destroy:()=>{n.clear()}},o=t=e(r,i,a);return a},HXe=e=>e?VXe(e):VXe,{useDebugValue:UXe}=U.default,{useSyncExternalStoreWithSelector:WXe}=bo.default,GXe=e=>e;function KXe(e,t=GXe,n){let r=WXe(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return UXe(r),r}var qXe=(e,t)=>{let n=HXe(e),r=(e,r=t)=>KXe(n,e,r);return Object.assign(r,n),r},JXe=(e,t)=>e?qXe(e,t):qXe;function p7(e,t){if(Object.is(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}var m7=(0,U.createContext)(null),YXe=m7.Provider,XXe=h5.error001();function h7(e,t){let n=(0,U.useContext)(m7);if(n===null)throw Error(XXe);return KXe(n,e,t)}function g7(){let e=(0,U.useContext)(m7);if(e===null)throw Error(XXe);return(0,U.useMemo)(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}var ZXe={display:`none`},QXe={position:`absolute`,width:1,height:1,margin:-1,border:0,padding:0,overflow:`hidden`,clip:`rect(0px, 0px, 0px, 0px)`,clipPath:`inset(100%)`},$Xe=`react-flow__node-desc`,eZe=`react-flow__edge-desc`,tZe=`react-flow__aria-live`,nZe=e=>e.ariaLiveMessage,rZe=e=>e.ariaLabelConfig;function iZe({rfId:e}){let t=h7(nZe);return(0,W.jsx)(`div`,{id:`${tZe}-${e}`,"aria-live":`assertive`,"aria-atomic":`true`,style:QXe,children:t})}function aZe({rfId:e,disableKeyboardA11y:t}){let n=h7(rZe);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{id:`${$Xe}-${e}`,style:ZXe,children:t?n[`node.a11yDescription.default`]:n[`node.a11yDescription.keyboardDisabled`]}),(0,W.jsx)(`div`,{id:`${eZe}-${e}`,style:ZXe,children:n[`edge.a11yDescription.default`]}),!t&&(0,W.jsx)(iZe,{rfId:e})]})}var _7=(0,U.forwardRef)(({position:e=`top-left`,children:t,className:n,style:r,...i},a)=>{let o=`${e}`.split(`-`);return(0,W.jsx)(`div`,{className:S6([`react-flow__panel`,n,...o]),style:r,ref:a,...i,children:t})});_7.displayName=`Panel`;function oZe({proOptions:e,position:t=`bottom-right`}){return e?.hideAttribution?null:(0,W.jsx)(_7,{position:t,className:`react-flow__attribution`,"data-message":`Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev`,children:(0,W.jsx)(`a`,{href:`https://reactflow.dev`,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`React Flow attribution`,children:`React Flow`})})}var sZe=e=>{let t=[],n=[];for(let[,n]of e.nodeLookup)n.selected&&t.push(n.internals.userNode);for(let[,t]of e.edgeLookup)t.selected&&n.push(t);return{selectedNodes:t,selectedEdges:n}},v7=e=>e.id;function cZe(e,t){return p7(e.selectedNodes.map(v7),t.selectedNodes.map(v7))&&p7(e.selectedEdges.map(v7),t.selectedEdges.map(v7))}function lZe({onSelectionChange:e}){let t=g7(),{selectedNodes:n,selectedEdges:r}=h7(sZe,cZe);return(0,U.useEffect)(()=>{let i={nodes:n,edges:r};e?.(i),t.getState().onSelectionChangeHandlers.forEach(e=>e(i))},[n,r,e]),null}var uZe=e=>!!e.onSelectionChangeHandlers;function dZe({onSelectionChange:e}){let t=h7(uZe);return e||t?(0,W.jsx)(lZe,{onSelectionChange:e}):null}var y7=typeof window<`u`?U.useLayoutEffect:U.useEffect,fZe=[0,0],pZe={x:0,y:0,zoom:1},mZe=[...`nodes.edges.defaultNodes.defaultEdges.onConnect.onConnectStart.onConnectEnd.onClickConnectStart.onClickConnectEnd.nodesDraggable.autoPanOnNodeFocus.nodesConnectable.nodesFocusable.edgesFocusable.edgesReconnectable.elevateNodesOnSelect.elevateEdgesOnSelect.minZoom.maxZoom.nodeExtent.onNodesChange.onEdgesChange.elementsSelectable.connectionMode.snapGrid.snapToGrid.translateExtent.connectOnClick.defaultEdgeOptions.fitView.fitViewOptions.onNodesDelete.onEdgesDelete.onDelete.onNodeDrag.onNodeDragStart.onNodeDragStop.onSelectionDrag.onSelectionDragStart.onSelectionDragStop.onMoveStart.onMove.onMoveEnd.noPanClassName.nodeOrigin.autoPanOnConnect.autoPanOnNodeDrag.onError.connectionRadius.isValidConnection.selectNodesOnDrag.nodeDragThreshold.connectionDragThreshold.onBeforeDelete.debug.autoPanSpeed.ariaLabelConfig.zIndexMode`.split(`.`),`rfId`],hZe=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),gZe={translateExtent:g5,nodeOrigin:fZe,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:`nopan`,rfId:`1`};function _Ze(e){let{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:i,setTranslateExtent:a,setNodeExtent:o,reset:s,setDefaultNodesAndEdges:c}=h7(hZe,p7),l=g7();y7(()=>(c(e.defaultNodes,e.defaultEdges),()=>{u.current=gZe,s()}),[]);let u=(0,U.useRef)(gZe);return y7(()=>{for(let s of mZe){let c=e[s];c!==u.current[s]&&e[s]!==void 0&&(s===`nodes`?t(c):s===`edges`?n(c):s===`minZoom`?r(c):s===`maxZoom`?i(c):s===`translateExtent`?a(c):s===`nodeExtent`?o(c):s===`ariaLabelConfig`?l.setState({ariaLabelConfig:CYe(c)}):s===`fitView`?l.setState({fitViewQueued:c}):s===`fitViewOptions`?l.setState({fitViewOptions:c}):l.setState({[s]:c}))}u.current=e},mZe.map(t=>e[t])),null}function vZe(){return typeof window>`u`||!window.matchMedia?null:window.matchMedia(`(prefers-color-scheme: dark)`)}function yZe(e){let[t,n]=(0,U.useState)(e===`system`?null:e);return(0,U.useEffect)(()=>{if(e!==`system`){n(e);return}let t=vZe(),r=()=>n(t?.matches?`dark`:`light`);return r(),t?.addEventListener(`change`,r),()=>{t?.removeEventListener(`change`,r)}},[e]),t===null?vZe()?.matches?`dark`:`light`:t}var bZe=typeof document<`u`?document:null;function b7(e=null,t={target:bZe,actInsideInputWithModifier:!0}){let[n,r]=(0,U.useState)(!1),i=(0,U.useRef)(!1),a=(0,U.useRef)(new Set([])),[o,s]=(0,U.useMemo)(()=>{if(e!==null){let t=(Array.isArray(e)?e:[e]).filter(e=>typeof e==`string`).map(e=>e.replace(`+`,`
213
213
  `).replace(`
214
214
 
215
215
  `,`
216
216
  +`).split(`
217
- `));return[t,t.reduce((e,t)=>e.concat(...t),[])]}return[[],[]]},[e]);return(0,U.useEffect)(()=>{let n=t?.target??pZe,c=t?.actInsideInputWithModifier??!0;if(e!==null){let e=e=>{if(i.current=e.ctrlKey||e.metaKey||e.shiftKey||e.altKey,(!i.current||i.current&&!c)&&yYe(e))return!1;let n=hZe(e.code,s);if(a.current.add(e[n]),mZe(o,a.current,!1)){let n=e.composedPath?.()?.[0]||e.target,a=n?.nodeName===`BUTTON`||n?.nodeName===`A`;t.preventDefault!==!1&&(i.current||!a)&&e.preventDefault(),r(!0)}},l=e=>{let t=hZe(e.code,s);mZe(o,a.current,!0)?(r(!1),a.current.clear()):a.current.delete(e[t]),e.key===`Meta`&&a.current.clear(),i.current=!1},u=()=>{a.current.clear(),r(!1)};return n?.addEventListener(`keydown`,e),n?.addEventListener(`keyup`,l),window.addEventListener(`blur`,u),window.addEventListener(`contextmenu`,u),()=>{n?.removeEventListener(`keydown`,e),n?.removeEventListener(`keyup`,l),window.removeEventListener(`blur`,u),window.removeEventListener(`contextmenu`,u)}}},[e,r]),n}function mZe(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function hZe(e,t){return t.includes(e)?`code`:`key`}var gZe=()=>{let e=g7();return(0,U.useMemo)(()=>({zoomIn:t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1.2,t):Promise.resolve(!1)},zoomOut:t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,t):Promise.resolve(!1)},zoomTo:(t,n)=>{let{panZoom:r}=e.getState();return r?r.scaleTo(t,n):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{let{transform:[r,i,a],panZoom:o}=e.getState();return o?(await o.setViewport({x:t.x??r,y:t.y??i,zoom:t.zoom??a},n),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{let[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},setCenter:async(t,n,r)=>e.getState().setCenter(t,n,r),fitBounds:async(t,n)=>{let{width:r,height:i,minZoom:a,maxZoom:o,panZoom:s}=e.getState(),c=B5(t,r,i,a,o,n?.padding??.1);return s?(await s.setViewport(c,{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(t,n={})=>{let{transform:r,snapGrid:i,snapToGrid:a,domNode:o}=e.getState();if(!o)return t;let{x:s,y:c}=o.getBoundingClientRect(),l={x:t.x-s,y:t.y-c},u=n.snapGrid??i;return L5(l,r,n.snapToGrid??a,u)},flowToScreenPosition:t=>{let{transform:n,domNode:r}=e.getState();if(!r)return t;let{x:i,y:a}=r.getBoundingClientRect(),o=R5(t,n);return{x:o.x+i,y:o.y+a}}}),[])};function _Ze(e,t){let n=[],r=new Map,i=[];for(let t of e)if(t.type===`add`){i.push(t);continue}else if(t.type===`remove`||t.type===`replace`)r.set(t.id,[t]);else{let e=r.get(t.id);e?e.push(t):r.set(t.id,[t])}for(let e of t){let t=r.get(e.id);if(!t){n.push(e);continue}if(t[0].type===`remove`)continue;if(t[0].type===`replace`){n.push({...t[0].item});continue}let i={...e};for(let e of t)vZe(e,i);n.push(i)}return i.length&&i.forEach(e=>{e.index===void 0?n.push({...e.item}):n.splice(e.index,0,{...e.item})}),n}function vZe(e,t){switch(e.type){case`select`:t.selected=e.selected;break;case`position`:e.position!==void 0&&(t.position=e.position),e.dragging!==void 0&&(t.dragging=e.dragging);break;case`dimensions`:e.dimensions!==void 0&&(t.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes===`width`)&&(t.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes===`height`)&&(t.height=e.dimensions.height))),typeof e.resizing==`boolean`&&(t.resizing=e.resizing)}}function yZe(e,t){return _Ze(e,t)}function bZe(e,t){return _Ze(e,t)}function x7(e,t){return{id:e,type:`select`,selected:t}}function S7(e,t=new Set,n=!1){let r=[];for(let[i,a]of e){let e=t.has(i);!(a.selected===void 0&&!e)&&a.selected!==e&&(n&&(a.selected=e),r.push(x7(a.id,e)))}return r}function xZe({items:e=[],lookup:t}){let n=[],r=new Map(e.map(e=>[e.id,e]));for(let[r,i]of e.entries()){let e=t.get(i.id),a=e?.internals?.userNode??e;a!==void 0&&a!==i&&n.push({id:i.id,item:i,type:`replace`}),a===void 0&&n.push({item:i,type:`add`,index:r})}for(let[e]of t)r.get(e)===void 0&&n.push({id:e,type:`remove`});return n}function SZe(e){return{id:e.id,type:`remove`}}var CZe=e=>ZJe(e),wZe=e=>XJe(e);function TZe(e){return(0,U.forwardRef)(e)}function EZe(e){let[t,n]=(0,U.useState)(BigInt(0)),[r]=(0,U.useState)(()=>DZe(()=>n(e=>e+BigInt(1))));return y7(()=>{let t=r.get();t.length&&(e(t),r.reset())},[t]),r}function DZe(e){let t=[];return{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}}var OZe=(0,U.createContext)(null);function kZe({children:e}){let t=g7(),n=EZe((0,U.useCallback)(e=>{let{nodes:n=[],setNodes:r,hasDefaultNodes:i,onNodesChange:a,nodeLookup:o,fitViewQueued:s,onNodesChangeMiddlewareMap:c}=t.getState(),l=n;for(let t of e)l=typeof t==`function`?t(l):t;let u=xZe({items:l,lookup:o});for(let e of c.values())u=e(u);i&&r(l),u.length>0?a?.(u):s&&window.requestAnimationFrame(()=>{let{fitViewQueued:e,nodes:n,setNodes:r}=t.getState();e&&r(n)})},[])),r=EZe((0,U.useCallback)(e=>{let{edges:n=[],setEdges:r,hasDefaultEdges:i,onEdgesChange:a,edgeLookup:o}=t.getState(),s=n;for(let t of e)s=typeof t==`function`?t(s):t;i?r(s):a&&a(xZe({items:s,lookup:o}))},[])),i=(0,U.useMemo)(()=>({nodeQueue:n,edgeQueue:r}),[]);return(0,W.jsx)(OZe.Provider,{value:i,children:e})}function AZe(){let e=(0,U.useContext)(OZe);if(!e)throw Error(`useBatchContext must be used within a BatchProvider`);return e}var jZe=e=>!!e.panZoom;function C7(){let e=gZe(),t=g7(),n=AZe(),r=h7(jZe),i=(0,U.useMemo)(()=>{let e=e=>t.getState().nodeLookup.get(e),r=e=>{n.nodeQueue.push(e)},i=e=>{n.edgeQueue.push(e)},a=e=>{let{nodeLookup:n,nodeOrigin:r}=t.getState(),i=CZe(e)?e:n.get(e.id),a=i.parentId?pYe(i.position,i.measured,i.parentId,n,r):i.position;return M5({...i,position:a,width:i.measured?.width??i.width,height:i.measured?.height??i.height})},o=(e,t,n={replace:!1})=>{r(r=>r.map(r=>{if(r.id===e){let e=typeof t==`function`?t(r):t;return n.replace&&CZe(e)?e:{...r,...e}}return r}))},s=(e,t,n={replace:!1})=>{i(r=>r.map(r=>{if(r.id===e){let e=typeof t==`function`?t(r):t;return n.replace&&wZe(e)?e:{...r,...e}}return r}))};return{getNodes:()=>t.getState().nodes.map(e=>({...e})),getNode:t=>e(t)?.internals.userNode,getInternalNode:e,getEdges:()=>{let{edges:e=[]}=t.getState();return e.map(e=>({...e}))},getEdge:e=>t.getState().edgeLookup.get(e),setNodes:r,setEdges:i,addNodes:e=>{let t=Array.isArray(e)?e:[e];n.nodeQueue.push(e=>[...e,...t])},addEdges:e=>{let t=Array.isArray(e)?e:[e];n.edgeQueue.push(e=>[...e,...t])},toObject:()=>{let{nodes:e=[],edges:n=[],transform:r}=t.getState(),[i,a,o]=r;return{nodes:e.map(e=>({...e})),edges:n.map(e=>({...e})),viewport:{x:i,y:a,zoom:o}}},deleteElements:async({nodes:e=[],edges:n=[]})=>{let{nodes:r,edges:i,onNodesDelete:a,onEdgesDelete:o,triggerNodeChanges:s,triggerEdgeChanges:c,onDelete:l,onBeforeDelete:u}=t.getState(),{nodes:d,edges:f}=await rYe({nodesToRemove:e,edgesToRemove:n,nodes:r,edges:i,onBeforeDelete:u}),p=f.length>0,m=d.length>0;if(p){let e=f.map(SZe);o?.(f),c(e)}if(m){let e=d.map(SZe);a?.(d),s(e)}return(m||p)&&l?.({nodes:d,edges:f}),{deletedNodes:d,deletedEdges:f}},getIntersectingNodes:(e,n=!0,r)=>{let i=cYe(e),o=i?e:a(e),s=r!==void 0;return o?(r||t.getState().nodes).filter(r=>{let a=t.getState().nodeLookup.get(r.id);if(a&&!i&&(r.id===e.id||!a.internals.positionAbsolute))return!1;let c=M5(s?r:a),l=P5(c,o);return n&&l>0||l>=c.width*c.height||l>=o.width*o.height}):[]},isNodeIntersecting:(e,t,n=!0)=>{let r=cYe(e)?e:a(e);if(!r)return!1;let i=P5(r,t);return n&&i>0||i>=t.width*t.height||i>=r.width*r.height},updateNode:o,updateNodeData:(e,t,n={replace:!1})=>{o(e,e=>{let r=typeof t==`function`?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},updateEdge:s,updateEdgeData:(e,t,n={replace:!1})=>{s(e,e=>{let r=typeof t==`function`?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},getNodesBounds:e=>{let{nodeLookup:n,nodeOrigin:r}=t.getState();return QJe(e,{nodeLookup:n,nodeOrigin:r})},getHandleConnections:({type:e,id:n,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}-${e}${n?`-${n}`:``}`)?.values()??[]),getNodeConnections:({type:e,handleId:n,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}${e?n?`-${e}-${n}`:`-${e}`:``}`)?.values()??[]),fitView:async e=>{let r=t.getState().fitViewResolver??hYe();return t.setState({fitViewQueued:!0,fitViewOptions:e,fitViewResolver:r}),n.nodeQueue.push(e=>[...e]),r.promise}}},[]);return(0,U.useMemo)(()=>({...i,...e,viewportInitialized:r}),[r])}var MZe=e=>e.selected,NZe=typeof window<`u`?window:void 0;function PZe({deleteKeyCode:e,multiSelectionKeyCode:t}){let n=g7(),{deleteElements:r}=C7(),i=b7(e,{actInsideInputWithModifier:!1}),a=b7(t,{target:NZe});(0,U.useEffect)(()=>{if(i){let{edges:e,nodes:t}=n.getState();r({nodes:t.filter(MZe),edges:e.filter(MZe)}),n.setState({nodesSelectionActive:!1})}},[i]),(0,U.useEffect)(()=>{n.setState({multiSelectionActive:a})},[a])}function FZe(e){let t=g7();(0,U.useEffect)(()=>{let n=()=>{if(!e.current||!(e.current.checkVisibility?.()??!0))return!1;let n=G5(e.current);(n.height===0||n.width===0)&&t.getState().onError?.(`004`,h5.error004()),t.setState({width:n.width||500,height:n.height||500})};if(e.current){n(),window.addEventListener(`resize`,n);let t=new ResizeObserver(()=>n());return t.observe(e.current),()=>{window.removeEventListener(`resize`,n),t&&e.current&&t.unobserve(e.current)}}},[])}var w7={position:`absolute`,width:`100%`,height:`100%`,top:0,left:0},IZe=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function LZe({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:r=!1,panOnScrollSpeed:i=.5,panOnScrollMode:a=v5.Free,zoomOnDoubleClick:o=!0,panOnDrag:s=!0,defaultViewport:c,translateExtent:l,minZoom:u,maxZoom:d,zoomActivationKeyCode:f,preventScrolling:p=!0,children:m,noWheelClassName:h,noPanClassName:g,onViewportChange:_,isControlledViewport:v,paneClickDistance:y,selectionOnDrag:b}){let x=g7(),S=(0,U.useRef)(null),{userSelectionActive:C,lib:w,connectionInProgress:T}=h7(IZe,p7),E=b7(f),D=(0,U.useRef)();FZe(S);let O=(0,U.useCallback)(e=>{_?.({x:e[0],y:e[1],zoom:e[2]}),v||x.setState({transform:e})},[_,v]);return(0,U.useEffect)(()=>{if(S.current){D.current=wXe({domNode:S.current,minZoom:u,maxZoom:d,translateExtent:l,viewport:c,onDraggingChange:e=>x.setState(t=>t.paneDragging===e?t:{paneDragging:e}),onPanZoomStart:(e,t)=>{let{onViewportChangeStart:n,onMoveStart:r}=x.getState();r?.(e,t),n?.(t)},onPanZoom:(e,t)=>{let{onViewportChange:n,onMove:r}=x.getState();r?.(e,t),n?.(t)},onPanZoomEnd:(e,t)=>{let{onViewportChangeEnd:n,onMoveEnd:r}=x.getState();r?.(e,t),n?.(t)}});let{x:e,y:t,zoom:n}=D.current.getViewport();return x.setState({panZoom:D.current,transform:[e,t,n],domNode:S.current.closest(`.react-flow`)}),()=>{D.current?.destroy()}}},[]),(0,U.useEffect)(()=>{D.current?.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:r,panOnScrollSpeed:i,panOnScrollMode:a,zoomOnDoubleClick:o,panOnDrag:s,zoomActivationKeyPressed:E,preventScrolling:p,noPanClassName:g,userSelectionActive:C,noWheelClassName:h,lib:w,onTransformChange:O,connectionInProgress:T,selectionOnDrag:b,paneClickDistance:y})},[e,t,n,r,i,a,o,s,E,p,g,C,h,w,O,T,b,y]),(0,W.jsx)(`div`,{className:`react-flow__renderer`,ref:S,style:w7,children:m})}var RZe=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function zZe(){let{userSelectionActive:e,userSelectionRect:t}=h7(RZe,p7);return e&&t?(0,W.jsx)(`div`,{className:`react-flow__selection react-flow__container`,style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}var T7=(e,t)=>n=>{n.target===t.current&&e?.(n)},BZe=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging});function VZe({isSelecting:e,selectionKeyPressed:t,selectionMode:n=y5.Full,panOnDrag:r,paneClickDistance:i,selectionOnDrag:a,onSelectionStart:o,onSelectionEnd:s,onPaneClick:c,onPaneContextMenu:l,onPaneScroll:u,onPaneMouseEnter:d,onPaneMouseMove:f,onPaneMouseLeave:p,children:m}){let h=g7(),{userSelectionActive:g,elementsSelectable:_,dragging:v,connectionInProgress:y}=h7(BZe,p7),b=_&&(e||g),x=(0,U.useRef)(null),S=(0,U.useRef)(),C=(0,U.useRef)(new Set),w=(0,U.useRef)(new Set),T=(0,U.useRef)(!1),E=e=>{if(T.current||y){T.current=!1;return}c?.(e),h.getState().resetSelectedElements(),h.setState({nodesSelectionActive:!1})},D=e=>{if(Array.isArray(r)&&r?.includes(2)){e.preventDefault();return}l?.(e)},O=u?e=>u(e):void 0,k=e=>{T.current&&=(e.stopPropagation(),!1)},A=n=>{let{domNode:r}=h.getState();if(S.current=r?.getBoundingClientRect(),!S.current)return;let i=n.target===x.current;if(!i&&n.target.closest(`.nokey`)||!e||!(a&&i||t)||n.button!==0||!n.isPrimary)return;n.target?.setPointerCapture?.(n.pointerId),T.current=!1;let{x:o,y:s}=K5(n.nativeEvent,S.current);h.setState({userSelectionRect:{width:0,height:0,startX:o,startY:s,x:o,y:s}}),i||(n.stopPropagation(),n.preventDefault())},j=e=>{let{userSelectionRect:r,transform:a,nodeLookup:s,edgeLookup:c,connectionLookup:l,triggerNodeChanges:u,triggerEdgeChanges:d,defaultEdgeOptions:f,resetSelectedElements:p}=h.getState();if(!S.current||!r)return;let{x:m,y:g}=K5(e.nativeEvent,S.current),{startX:_,startY:v}=r;if(!T.current){let n=t?0:i;if(Math.hypot(m-_,g-v)<=n)return;p(),o?.(e)}T.current=!0;let y={startX:_,startY:v,x:m<_?m:_,y:g<v?g:v,width:Math.abs(m-_),height:Math.abs(g-v)},b=C.current,x=w.current;C.current=new Set(E5(s,y,a,n===y5.Partial,!0).map(e=>e.id)),w.current=new Set;let E=f?.selectable??!0;for(let e of C.current){let t=l.get(e);if(t)for(let{edgeId:e}of t.values()){let t=c.get(e);t&&(t.selectable??E)&&w.current.add(e)}}mYe(b,C.current)||u(S7(s,C.current,!0)),mYe(x,w.current)||d(S7(c,w.current)),h.setState({userSelectionRect:y,userSelectionActive:!0,nodesSelectionActive:!1})},M=e=>{e.button===0&&(e.target?.releasePointerCapture?.(e.pointerId),!g&&e.target===x.current&&h.getState().userSelectionRect&&E?.(e),h.setState({userSelectionActive:!1,userSelectionRect:null}),T.current&&(s?.(e),h.setState({nodesSelectionActive:C.current.size>0})))},N=r===!0||Array.isArray(r)&&r.includes(0);return(0,W.jsxs)(`div`,{className:S6([`react-flow__pane`,{draggable:N,dragging:v,selection:e}]),onClick:b?void 0:T7(E,x),onContextMenu:T7(D,x),onWheel:T7(O,x),onPointerEnter:b?void 0:d,onPointerMove:b?j:f,onPointerUp:b?M:void 0,onPointerDownCapture:b?A:void 0,onClickCapture:b?k:void 0,onPointerLeave:p,ref:x,style:w7,children:[m,(0,W.jsx)(zZe,{})]})}function E7({id:e,store:t,unselect:n=!1,nodeRef:r}){let{addSelectedNodes:i,unselectNodesAndEdges:a,multiSelectionActive:o,nodeLookup:s,onError:c}=t.getState(),l=s.get(e);if(!l){c?.(`012`,h5.error012(e));return}t.setState({nodesSelectionActive:!1}),l.selected?(n||l.selected&&o)&&(a({nodes:[l],edges:[]}),requestAnimationFrame(()=>r?.current?.blur())):i([e])}function HZe({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:i,isSelectable:a,nodeClickDistance:o}){let s=g7(),[c,l]=(0,U.useState)(!1),u=(0,U.useRef)();return(0,U.useEffect)(()=>{u.current=iXe({getStoreItems:()=>s.getState(),onNodeMouseDown:t=>{E7({id:t,store:s,nodeRef:e})},onDragStart:()=>{l(!0)},onDragStop:()=>{l(!1)}})},[]),(0,U.useEffect)(()=>{if(!(t||!e.current||!u.current))return u.current.update({noDragClassName:n,handleSelector:r,domNode:e.current,isSelectable:a,nodeId:i,nodeClickDistance:o}),()=>{u.current?.destroy()}},[n,r,t,a,e,i,o]),c}var UZe=e=>t=>t.selected&&(t.draggable||e&&t.draggable===void 0);function WZe(){let e=g7();return(0,U.useCallback)(t=>{let{nodeExtent:n,snapToGrid:r,snapGrid:i,nodesDraggable:a,onError:o,updateNodePositions:s,nodeLookup:c,nodeOrigin:l}=e.getState(),u=new Map,d=UZe(a),f=r?i[0]:5,p=r?i[1]:5,m=t.direction.x*f*t.factor,h=t.direction.y*p*t.factor;for(let[,e]of c){if(!d(e))continue;let t={x:e.internals.positionAbsolute.x+m,y:e.internals.positionAbsolute.y+h};r&&(t=I5(t,i));let{position:a,positionAbsolute:s}=nYe({nodeId:e.id,nextPosition:t,nodeLookup:c,nodeExtent:n,nodeOrigin:l,onError:o});e.position=a,e.internals.positionAbsolute=s,u.set(e.id,e)}s(u)},[])}var D7=(0,U.createContext)(null),GZe=D7.Provider;D7.Consumer;var KZe=()=>(0,U.useContext)(D7),qZe=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),JZe=(e,t,n)=>r=>{let{connectionClickStartHandle:i,connectionMode:a,connection:o}=r,{fromHandle:s,toHandle:c,isValid:l}=o,u=c?.nodeId===e&&c?.id===t&&c?.type===n;return{connectingFrom:s?.nodeId===e&&s?.id===t&&s?.type===n,connectingTo:u,clickConnecting:i?.nodeId===e&&i?.id===t&&i?.type===n,isPossibleEndHandle:a===_5.Strict?s?.type!==n:e!==s?.nodeId||t!==s?.id,connectionInProcess:!!s,clickConnectionInProcess:!!i,valid:u&&l}};function YZe({type:e=`source`,position:t=S5.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:i=!0,isConnectableEnd:a=!0,id:o,onConnect:s,children:c,className:l,onMouseDown:u,onTouchStart:d,...f},p){let m=o||null,h=e===`target`,g=g7(),_=KZe(),{connectOnClick:v,noPanClassName:y,rfId:b}=h7(qZe,p7),{connectingFrom:x,connectingTo:S,clickConnecting:C,isPossibleEndHandle:w,connectionInProcess:T,clickConnectionInProcess:E,valid:D}=h7(JZe(_,m,e),p7);_||g.getState().onError?.(`010`,h5.error010());let O=e=>{let{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:r}=g.getState(),i={...t,...e};if(r){let{edges:e,setEdges:t}=g.getState();t(AYe(i,e))}n?.(i),s?.(i)},k=e=>{if(!_)return;let t=bYe(e.nativeEvent);if(i&&(t&&e.button===0||!t)){let t=g.getState();i7.onPointerDown(e.nativeEvent,{handleDomNode:e.currentTarget,autoPanOnConnect:t.autoPanOnConnect,connectionMode:t.connectionMode,connectionRadius:t.connectionRadius,domNode:t.domNode,nodeLookup:t.nodeLookup,lib:t.lib,isTarget:h,handleId:m,nodeId:_,flowId:t.rfId,panBy:t.panBy,cancelConnection:t.cancelConnection,onConnectStart:t.onConnectStart,onConnectEnd:(...e)=>g.getState().onConnectEnd?.(...e),updateConnection:t.updateConnection,onConnect:O,isValidConnection:n||((...e)=>g.getState().isValidConnection?.(...e)??!0),getTransform:()=>g.getState().transform,getFromHandle:()=>g.getState().connection.fromHandle,autoPanSpeed:t.autoPanSpeed,dragThreshold:t.connectionDragThreshold})}t?u?.(e):d?.(e)};return(0,W.jsx)(`div`,{"data-handleid":m,"data-nodeid":_,"data-handlepos":t,"data-id":`${b}-${_}-${m}-${e}`,className:S6([`react-flow__handle`,`react-flow__handle-${t}`,`nodrag`,y,l,{source:!h,target:h,connectable:r,connectablestart:i,connectableend:a,clickconnecting:C,connectingfrom:x,connectingto:S,valid:D,connectionindicator:r&&(!T||w)&&(T||E?a:i)}]),onMouseDown:k,onTouchStart:k,onClick:v?t=>{let{onClickConnectStart:r,onClickConnectEnd:a,connectionClickStartHandle:o,connectionMode:s,isValidConnection:c,lib:l,rfId:u,nodeLookup:d,connection:f}=g.getState();if(!_||!o&&!i)return;if(!o){r?.(t.nativeEvent,{nodeId:_,handleId:m,handleType:e}),g.setState({connectionClickStartHandle:{nodeId:_,type:e,id:m}});return}let p=_Ye(t.target),h=n||c,{connection:v,isValid:y}=i7.isValid(t.nativeEvent,{handle:{nodeId:_,id:m,type:e},connectionMode:s,fromNodeId:o.nodeId,fromHandleId:o.id||null,fromType:o.type,isValidConnection:h,flowId:u,doc:p,lib:l,nodeLookup:d});y&&v&&O(v);let b=structuredClone(f);delete b.inProgress,b.toPosition=b.toHandle?b.toHandle.position:null,a?.(t,b),g.setState({connectionClickStartHandle:null})}:void 0,ref:p,...f,children:c})}var O7=(0,U.memo)(TZe(YZe));function XZe({data:e,isConnectable:t,sourcePosition:n=S5.Bottom}){return(0,W.jsxs)(W.Fragment,{children:[e?.label,(0,W.jsx)(O7,{type:`source`,position:n,isConnectable:t})]})}function ZZe({data:e,isConnectable:t,targetPosition:n=S5.Top,sourcePosition:r=S5.Bottom}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(O7,{type:`target`,position:n,isConnectable:t}),e?.label,(0,W.jsx)(O7,{type:`source`,position:r,isConnectable:t})]})}function QZe(){return null}function $Ze({data:e,isConnectable:t,targetPosition:n=S5.Top}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(O7,{type:`target`,position:n,isConnectable:t}),e?.label]})}var k7={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},eQe={input:XZe,default:ZZe,output:$Ze,group:QZe};function tQe(e){return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??e.style?.width,height:e.height??e.initialHeight??e.style?.height}:{width:e.width??e.style?.width,height:e.height??e.style?.height}}var nQe=e=>{let{width:t,height:n,x:r,y:i}=T5(e.nodeLookup,{filter:e=>!!e.selected});return{width:F5(t)?t:null,height:F5(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${r}px,${i}px)`}};function rQe({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){let r=g7(),{width:i,height:a,transformString:o,userSelectionActive:s}=h7(nQe,p7),c=WZe(),l=(0,U.useRef)(null);(0,U.useEffect)(()=>{n||l.current?.focus({preventScroll:!0})},[n]);let u=!s&&i!==null&&a!==null;if(HZe({nodeRef:l,disabled:!u}),!u)return null;let d=e?t=>{e(t,r.getState().nodes.filter(e=>e.selected))}:void 0;return(0,W.jsx)(`div`,{className:S6([`react-flow__nodesselection`,`react-flow__container`,t]),style:{transform:o},children:(0,W.jsx)(`div`,{ref:l,className:`react-flow__nodesselection-rect`,onContextMenu:d,tabIndex:n?void 0:-1,onKeyDown:n?void 0:e=>{Object.prototype.hasOwnProperty.call(k7,e.key)&&(e.preventDefault(),c({direction:k7[e.key],factor:e.shiftKey?4:1}))},style:{width:i,height:a}})})}var iQe=typeof window<`u`?window:void 0,aQe=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function oQe({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:o,paneClickDistance:s,deleteKeyCode:c,selectionKeyCode:l,selectionOnDrag:u,selectionMode:d,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:m,panActivationKeyCode:h,zoomActivationKeyCode:g,elementsSelectable:_,zoomOnScroll:v,zoomOnPinch:y,panOnScroll:b,panOnScrollSpeed:x,panOnScrollMode:S,zoomOnDoubleClick:C,panOnDrag:w,defaultViewport:T,translateExtent:E,minZoom:D,maxZoom:O,preventScrolling:k,onSelectionContextMenu:A,noWheelClassName:j,noPanClassName:M,disableKeyboardA11y:N,onViewportChange:P,isControlledViewport:F}){let{nodesSelectionActive:I,userSelectionActive:L}=h7(aQe,p7),R=b7(l,{target:iQe}),z=b7(h,{target:iQe}),B=z||w,ee=z||b,te=u&&B!==!0,ne=R||L||te;return PZe({deleteKeyCode:c,multiSelectionKeyCode:m}),(0,W.jsx)(LZe,{onPaneContextMenu:a,elementsSelectable:_,zoomOnScroll:v,zoomOnPinch:y,panOnScroll:ee,panOnScrollSpeed:x,panOnScrollMode:S,zoomOnDoubleClick:C,panOnDrag:!R&&B,defaultViewport:T,translateExtent:E,minZoom:D,maxZoom:O,zoomActivationKeyCode:g,preventScrolling:k,noWheelClassName:j,noPanClassName:M,onViewportChange:P,isControlledViewport:F,paneClickDistance:s,selectionOnDrag:te,children:(0,W.jsxs)(VZe,{onSelectionStart:f,onSelectionEnd:p,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:o,panOnDrag:B,isSelecting:!!ne,selectionMode:d,selectionKeyPressed:R,paneClickDistance:s,selectionOnDrag:te,children:[e,I&&(0,W.jsx)(rQe,{onSelectionContextMenu:A,noPanClassName:M,disableKeyboardA11y:N})]})})}oQe.displayName=`FlowRenderer`;var sQe=(0,U.memo)(oQe),cQe=e=>t=>e?E5(t.nodeLookup,{x:0,y:0,width:t.width,height:t.height},t.transform,!0).map(e=>e.id):Array.from(t.nodeLookup.keys());function lQe(e){return h7((0,U.useCallback)(cQe(e),[e]),p7)}var uQe=e=>e.updateNodeInternals;function dQe(){let e=h7(uQe),[t]=(0,U.useState)(()=>typeof ResizeObserver>`u`?null:new ResizeObserver(t=>{let n=new Map;t.forEach(e=>{let t=e.target.getAttribute(`data-id`);n.set(t,{id:t,nodeElement:e.target,force:!0})}),e(n)}));return(0,U.useEffect)(()=>()=>{t?.disconnect()},[t]),t}function fQe({node:e,nodeType:t,hasDimensions:n,resizeObserver:r}){let i=g7(),a=(0,U.useRef)(null),o=(0,U.useRef)(null),s=(0,U.useRef)(e.sourcePosition),c=(0,U.useRef)(e.targetPosition),l=(0,U.useRef)(t),u=n&&!!e.internals.handleBounds;return(0,U.useEffect)(()=>{a.current&&!e.hidden&&(!u||o.current!==a.current)&&(o.current&&r?.unobserve(o.current),r?.observe(a.current),o.current=a.current)},[u,e.hidden]),(0,U.useEffect)(()=>()=>{o.current&&=(r?.unobserve(o.current),null)},[]),(0,U.useEffect)(()=>{if(a.current){let n=l.current!==t,r=s.current!==e.sourcePosition,o=c.current!==e.targetPosition;(n||r||o)&&(l.current=t,s.current=e.sourcePosition,c.current=e.targetPosition,i.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:a.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),a}function pQe({id:e,onClick:t,onMouseEnter:n,onMouseMove:r,onMouseLeave:i,onContextMenu:a,onDoubleClick:o,nodesDraggable:s,elementsSelectable:c,nodesConnectable:l,nodesFocusable:u,resizeObserver:d,noDragClassName:f,noPanClassName:p,disableKeyboardA11y:m,rfId:h,nodeTypes:g,nodeClickDistance:_,onError:v}){let{node:y,internals:b,isParent:x}=h7(t=>{let n=t.nodeLookup.get(e),r=t.parentLookup.has(e);return{node:n,internals:n.internals,isParent:r}},p7),S=y.type||`default`,C=g?.[S]||eQe[S];C===void 0&&(v?.(`003`,h5.error003(S)),S=`default`,C=g?.default||eQe.default);let w=!!(y.draggable||s&&y.draggable===void 0),T=!!(y.selectable||c&&y.selectable===void 0),E=!!(y.connectable||l&&y.connectable===void 0),D=!!(y.focusable||u&&y.focusable===void 0),O=g7(),k=fYe(y),A=fQe({node:y,nodeType:S,hasDimensions:k,resizeObserver:d}),j=HZe({nodeRef:A,disabled:y.hidden||!w,noDragClassName:f,handleSelector:y.dragHandle,nodeId:e,isSelectable:T,nodeClickDistance:_}),M=WZe();if(y.hidden)return null;let N=U5(y),P=tQe(y),F=T||w||t||n||r||i,I=n?e=>n(e,{...b.userNode}):void 0,L=r?e=>r(e,{...b.userNode}):void 0,R=i?e=>i(e,{...b.userNode}):void 0,z=a?e=>a(e,{...b.userNode}):void 0,B=o?e=>o(e,{...b.userNode}):void 0,ee=n=>{let{selectNodesOnDrag:r,nodeDragThreshold:i}=O.getState();T&&(!r||!w||i>0)&&E7({id:e,store:O,nodeRef:A}),t&&t(n,{...b.userNode})},te=t=>{if(!(yYe(t.nativeEvent)||m)){if(GJe.includes(t.key)&&T){let n=t.key===`Escape`;E7({id:e,store:O,unselect:n,nodeRef:A})}else if(w&&y.selected&&Object.prototype.hasOwnProperty.call(k7,t.key)){t.preventDefault();let{ariaLabelConfig:e}=O.getState();O.setState({ariaLiveMessage:e[`node.a11yDescription.ariaLiveMessage`]({direction:t.key.replace(`Arrow`,``).toLowerCase(),x:~~b.positionAbsolute.x,y:~~b.positionAbsolute.y})}),M({direction:k7[t.key],factor:t.shiftKey?4:1})}}},ne=()=>{if(m||!A.current?.matches(`:focus-visible`))return;let{transform:t,width:n,height:r,autoPanOnNodeFocus:i,setCenter:a}=O.getState();i&&(E5(new Map([[e,y]]),{x:0,y:0,width:n,height:r},t,!0).length>0||a(y.position.x+N.width/2,y.position.y+N.height/2,{zoom:t[2]}))};return(0,W.jsx)(`div`,{className:S6([`react-flow__node`,`react-flow__node-${S}`,{[p]:w},y.className,{selected:y.selected,selectable:T,parent:x,draggable:w,dragging:j}]),ref:A,style:{zIndex:b.z,transform:`translate(${b.positionAbsolute.x}px,${b.positionAbsolute.y}px)`,pointerEvents:F?`all`:`none`,visibility:k?`visible`:`hidden`,...y.style,...P},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:I,onMouseMove:L,onMouseLeave:R,onContextMenu:z,onClick:ee,onDoubleClick:B,onKeyDown:D?te:void 0,tabIndex:D?0:void 0,onFocus:D?ne:void 0,role:y.ariaRole??(D?`group`:void 0),"aria-roledescription":`node`,"aria-describedby":m?void 0:`${KXe}-${h}`,"aria-label":y.ariaLabel,...y.domAttributes,children:(0,W.jsx)(GZe,{value:e,children:(0,W.jsx)(C,{id:e,data:y.data,type:S,positionAbsoluteX:b.positionAbsolute.x,positionAbsoluteY:b.positionAbsolute.y,selected:y.selected??!1,selectable:T,draggable:w,deletable:y.deletable??!0,isConnectable:E,sourcePosition:y.sourcePosition,targetPosition:y.targetPosition,dragging:j,dragHandle:y.dragHandle,zIndex:b.z,parentId:y.parentId,...N})})})}var mQe=(0,U.memo)(pQe),hQe=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function gQe(e){let{nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:i,onError:a}=h7(hQe,p7),o=lQe(e.onlyRenderVisibleElements),s=dQe();return(0,W.jsx)(`div`,{className:`react-flow__nodes`,style:w7,children:o.map(o=>(0,W.jsx)(mQe,{id:o,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:s,nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:i,nodeClickDistance:e.nodeClickDistance,onError:a},o))})}gQe.displayName=`NodeRenderer`;var _Qe=(0,U.memo)(gQe);function vQe(e){return h7((0,U.useCallback)(t=>{if(!e)return t.edges.map(e=>e.id);let n=[];if(t.width&&t.height)for(let e of t.edges){let r=t.nodeLookup.get(e.source),i=t.nodeLookup.get(e.target);r&&i&&DYe({sourceNode:r,targetNode:i,width:t.width,height:t.height,transform:t.transform})&&n.push(e.id)}return n},[e]),p7)}var yQe=({color:e=`none`,strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e}};return(0,W.jsx)(`polyline`,{className:`arrow`,style:n,strokeLinecap:`round`,fill:`none`,strokeLinejoin:`round`,points:`-5,-4 0,0 -5,4`})},bQe=({color:e=`none`,strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e,fill:e}};return(0,W.jsx)(`polyline`,{className:`arrowclosed`,style:n,strokeLinecap:`round`,strokeLinejoin:`round`,points:`-5,-4 0,0 -5,4 -5,-4`})},xQe={[x5.Arrow]:yQe,[x5.ArrowClosed]:bQe};function SQe(e){let t=g7();return(0,U.useMemo)(()=>Object.prototype.hasOwnProperty.call(xQe,e)?xQe[e]:(t.getState().onError?.(`009`,h5.error009(e)),null),[e])}var CQe=({id:e,type:t,color:n,width:r=12.5,height:i=12.5,markerUnits:a=`strokeWidth`,strokeWidth:o,orient:s=`auto-start-reverse`})=>{let c=SQe(t);return c?(0,W.jsx)(`marker`,{className:`react-flow__arrowhead`,id:e,markerWidth:`${r}`,markerHeight:`${i}`,viewBox:`-10 -10 20 20`,markerUnits:a,orient:s,refX:`0`,refY:`0`,children:(0,W.jsx)(c,{color:n,strokeWidth:o})}):null},wQe=({defaultColor:e,rfId:t})=>{let n=h7(e=>e.edges),r=h7(e=>e.defaultEdgeOptions),i=(0,U.useMemo)(()=>VYe(n,{id:t,defaultColor:e,defaultMarkerStart:r?.markerStart,defaultMarkerEnd:r?.markerEnd}),[n,r,t,e]);return i.length?(0,W.jsx)(`svg`,{className:`react-flow__marker`,"aria-hidden":`true`,children:(0,W.jsx)(`defs`,{children:i.map(e=>(0,W.jsx)(CQe,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})}):null};wQe.displayName=`MarkerDefinitions`;var TQe=(0,U.memo)(wQe);function EQe({x:e,y:t,label:n,labelStyle:r,labelShowBg:i=!0,labelBgStyle:a,labelBgPadding:o=[2,4],labelBgBorderRadius:s=2,children:c,className:l,...u}){let[d,f]=(0,U.useState)({x:1,y:0,width:0,height:0}),p=S6([`react-flow__edge-textwrapper`,l]),m=(0,U.useRef)(null);return(0,U.useEffect)(()=>{if(m.current){let e=m.current.getBBox();f({x:e.x,y:e.y,width:e.width,height:e.height})}},[n]),n?(0,W.jsxs)(`g`,{transform:`translate(${e-d.width/2} ${t-d.height/2})`,className:p,visibility:d.width?`visible`:`hidden`,...u,children:[i&&(0,W.jsx)(`rect`,{width:d.width+2*o[0],x:-o[0],y:-o[1],height:d.height+2*o[1],className:`react-flow__edge-textbg`,style:a,rx:s,ry:s}),(0,W.jsx)(`text`,{className:`react-flow__edge-text`,y:d.height/2,dy:`0.3em`,ref:m,style:r,children:n}),c]}):null}EQe.displayName=`EdgeText`;var DQe=(0,U.memo)(EQe);function A7({path:e,labelX:t,labelY:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:o,labelBgPadding:s,labelBgBorderRadius:c,interactionWidth:l=20,...u}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`path`,{...u,d:e,fill:`none`,className:S6([`react-flow__edge-path`,u.className])}),l?(0,W.jsx)(`path`,{d:e,fill:`none`,strokeOpacity:0,strokeWidth:l,className:`react-flow__edge-interaction`}):null,r&&F5(t)&&F5(n)?(0,W.jsx)(DQe,{x:t,y:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:o,labelBgPadding:s,labelBgBorderRadius:c}):null]})}function OQe({pos:e,x1:t,y1:n,x2:r,y2:i}){return e===S5.Left||e===S5.Right?[.5*(t+r),n]:[t,.5*(n+i)]}function kQe({sourceX:e,sourceY:t,sourcePosition:n=S5.Bottom,targetX:r,targetY:i,targetPosition:a=S5.Top}){let[o,s]=OQe({pos:n,x1:e,y1:t,x2:r,y2:i}),[c,l]=OQe({pos:a,x1:r,y1:i,x2:e,y2:t}),[u,d,f,p]=SYe({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:o,sourceControlY:s,targetControlX:c,targetControlY:l});return[`M${e},${t} C${o},${s} ${c},${l} ${r},${i}`,u,d,f,p]}function AQe(e){return(0,U.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,sourcePosition:o,targetPosition:s,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:_})=>{let[v,y,b]=kQe({sourceX:n,sourceY:r,sourcePosition:o,targetX:i,targetY:a,targetPosition:s}),x=e.isInternal?void 0:t;return(0,W.jsx)(A7,{id:x,path:v,labelX:y,labelY:b,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:_})})}var jQe=AQe({isInternal:!1}),MQe=AQe({isInternal:!0});jQe.displayName=`SimpleBezierEdge`,MQe.displayName=`SimpleBezierEdgeInternal`;function NQe(e){return(0,U.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,sourcePosition:p=S5.Bottom,targetPosition:m=S5.Top,markerEnd:h,markerStart:g,pathOptions:_,interactionWidth:v})=>{let[y,b,x]=J5({sourceX:n,sourceY:r,sourcePosition:p,targetX:i,targetY:a,targetPosition:m,borderRadius:_?.borderRadius,offset:_?.offset,stepPosition:_?.stepPosition}),S=e.isInternal?void 0:t;return(0,W.jsx)(A7,{id:S,path:y,labelX:b,labelY:x,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:g,interactionWidth:v})})}var PQe=NQe({isInternal:!1}),FQe=NQe({isInternal:!0});PQe.displayName=`SmoothStepEdge`,FQe.displayName=`SmoothStepEdgeInternal`;function IQe(e){return(0,U.memo)(({id:t,...n})=>{let r=e.isInternal?void 0:t;return(0,W.jsx)(PQe,{...n,id:r,pathOptions:(0,U.useMemo)(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}var LQe=IQe({isInternal:!1}),RQe=IQe({isInternal:!0});LQe.displayName=`StepEdge`,RQe.displayName=`StepEdgeInternal`;function zQe(e){return(0,U.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:p,markerStart:m,interactionWidth:h})=>{let[g,_,v]=jYe({sourceX:n,sourceY:r,targetX:i,targetY:a}),y=e.isInternal?void 0:t;return(0,W.jsx)(A7,{id:y,path:g,labelX:_,labelY:v,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:p,markerStart:m,interactionWidth:h})})}var BQe=zQe({isInternal:!1}),VQe=zQe({isInternal:!0});BQe.displayName=`StraightEdge`,VQe.displayName=`StraightEdgeInternal`;function HQe(e){return(0,U.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,sourcePosition:o=S5.Bottom,targetPosition:s=S5.Top,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,pathOptions:_,interactionWidth:v})=>{let[y,b,x]=wYe({sourceX:n,sourceY:r,sourcePosition:o,targetX:i,targetY:a,targetPosition:s,curvature:_?.curvature}),S=e.isInternal?void 0:t;return(0,W.jsx)(A7,{id:S,path:y,labelX:b,labelY:x,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:v})})}var UQe=HQe({isInternal:!1}),WQe=HQe({isInternal:!0});UQe.displayName=`BezierEdge`,WQe.displayName=`BezierEdgeInternal`;var GQe={default:WQe,straight:VQe,step:RQe,smoothstep:FQe,simplebezier:MQe},KQe={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},qQe=(e,t,n)=>n===S5.Left?e-t:n===S5.Right?e+t:e,JQe=(e,t,n)=>n===S5.Top?e-t:n===S5.Bottom?e+t:e,YQe=`react-flow__edgeupdater`;function XQe({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:i,onMouseEnter:a,onMouseOut:o,type:s}){return(0,W.jsx)(`circle`,{onMouseDown:i,onMouseEnter:a,onMouseOut:o,className:S6([YQe,`${YQe}-${s}`]),cx:qQe(t,r,e),cy:JQe(n,r,e),r,stroke:`transparent`,fill:`transparent`})}function ZQe({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:r,sourceY:i,targetX:a,targetY:o,sourcePosition:s,targetPosition:c,onReconnect:l,onReconnectStart:u,onReconnectEnd:d,setReconnecting:f,setUpdateHover:p}){let m=g7(),h=(e,t)=>{if(e.button!==0)return;let{autoPanOnConnect:r,domNode:i,connectionMode:a,connectionRadius:o,lib:s,onConnectStart:c,cancelConnection:p,nodeLookup:h,rfId:g,panBy:_,updateConnection:v}=m.getState(),y=t.type===`target`;i7.onPointerDown(e.nativeEvent,{autoPanOnConnect:r,connectionMode:a,connectionRadius:o,domNode:i,handleId:t.id,nodeId:t.nodeId,nodeLookup:h,isTarget:y,edgeUpdaterType:t.type,lib:s,flowId:g,cancelConnection:p,panBy:_,isValidConnection:(...e)=>m.getState().isValidConnection?.(...e)??!0,onConnect:e=>l?.(n,e),onConnectStart:(r,i)=>{f(!0),u?.(e,n,t.type),c?.(r,i)},onConnectEnd:(...e)=>m.getState().onConnectEnd?.(...e),onReconnectEnd:(e,r)=>{f(!1),d?.(e,n,t.type,r)},updateConnection:v,getTransform:()=>m.getState().transform,getFromHandle:()=>m.getState().connection.fromHandle,dragThreshold:m.getState().connectionDragThreshold,handleDomNode:e.currentTarget})},g=e=>h(e,{nodeId:n.target,id:n.targetHandle??null,type:`target`}),_=e=>h(e,{nodeId:n.source,id:n.sourceHandle??null,type:`source`}),v=()=>p(!0),y=()=>p(!1);return(0,W.jsxs)(W.Fragment,{children:[(e===!0||e===`source`)&&(0,W.jsx)(XQe,{position:s,centerX:r,centerY:i,radius:t,onMouseDown:g,onMouseEnter:v,onMouseOut:y,type:`source`}),(e===!0||e===`target`)&&(0,W.jsx)(XQe,{position:c,centerX:a,centerY:o,radius:t,onMouseDown:_,onMouseEnter:v,onMouseOut:y,type:`target`})]})}function QQe({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:r,onClick:i,onDoubleClick:a,onContextMenu:o,onMouseEnter:s,onMouseMove:c,onMouseLeave:l,reconnectRadius:u,onReconnect:d,onReconnectStart:f,onReconnectEnd:p,rfId:m,edgeTypes:h,noPanClassName:g,onError:_,disableKeyboardA11y:v}){let y=h7(t=>t.edgeLookup.get(e)),b=h7(e=>e.defaultEdgeOptions);y=b?{...b,...y}:y;let x=y.type||`default`,S=h?.[x]||GQe[x];S===void 0&&(_?.(`011`,h5.error011(x)),x=`default`,S=h?.default||GQe.default);let C=!!(y.focusable||t&&y.focusable===void 0),w=d!==void 0&&(y.reconnectable||n&&y.reconnectable===void 0),T=!!(y.selectable||r&&y.selectable===void 0),E=(0,U.useRef)(null),[D,O]=(0,U.useState)(!1),[k,A]=(0,U.useState)(!1),j=g7(),{zIndex:M,sourceX:N,sourceY:P,targetX:F,targetY:I,sourcePosition:L,targetPosition:R}=h7((0,U.useCallback)(t=>{let n=t.nodeLookup.get(y.source),r=t.nodeLookup.get(y.target);if(!n||!r)return{zIndex:y.zIndex,...KQe};let i=RYe({id:e,sourceNode:n,targetNode:r,sourceHandle:y.sourceHandle||null,targetHandle:y.targetHandle||null,connectionMode:t.connectionMode,onError:_});return{zIndex:EYe({selected:y.selected,zIndex:y.zIndex,sourceNode:n,targetNode:r,elevateOnSelect:t.elevateEdgesOnSelect,zIndexMode:t.zIndexMode}),...i||KQe}},[y.source,y.target,y.sourceHandle,y.targetHandle,y.selected,y.zIndex]),p7),z=(0,U.useMemo)(()=>y.markerStart?`url('#${X5(y.markerStart,m)}')`:void 0,[y.markerStart,m]),B=(0,U.useMemo)(()=>y.markerEnd?`url('#${X5(y.markerEnd,m)}')`:void 0,[y.markerEnd,m]);if(y.hidden||N===null||P===null||F===null||I===null)return null;let ee=t=>{let{addSelectedEdges:n,unselectNodesAndEdges:r,multiSelectionActive:a}=j.getState();T&&(j.setState({nodesSelectionActive:!1}),y.selected&&a?(r({nodes:[],edges:[y]}),E.current?.blur()):n([e])),i&&i(t,y)},te=a?e=>{a(e,{...y})}:void 0,ne=o?e=>{o(e,{...y})}:void 0,re=s?e=>{s(e,{...y})}:void 0,V=c?e=>{c(e,{...y})}:void 0,ie=l?e=>{l(e,{...y})}:void 0;return(0,W.jsx)(`svg`,{style:{zIndex:M},children:(0,W.jsxs)(`g`,{className:S6([`react-flow__edge`,`react-flow__edge-${x}`,y.className,g,{selected:y.selected,animated:y.animated,inactive:!T&&!i,updating:D,selectable:T}]),onClick:ee,onDoubleClick:te,onContextMenu:ne,onMouseEnter:re,onMouseMove:V,onMouseLeave:ie,onKeyDown:C?t=>{if(!v&&GJe.includes(t.key)&&T){let{unselectNodesAndEdges:n,addSelectedEdges:r}=j.getState();t.key===`Escape`?(E.current?.blur(),n({edges:[y]})):r([e])}}:void 0,tabIndex:C?0:void 0,role:y.ariaRole??(C?`group`:`img`),"aria-roledescription":`edge`,"data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":y.ariaLabel===null?void 0:y.ariaLabel||`Edge from ${y.source} to ${y.target}`,"aria-describedby":C?`${qXe}-${m}`:void 0,ref:E,...y.domAttributes,children:[!k&&(0,W.jsx)(S,{id:e,source:y.source,target:y.target,type:y.type,selected:y.selected,animated:y.animated,selectable:T,deletable:y.deletable??!0,label:y.label,labelStyle:y.labelStyle,labelShowBg:y.labelShowBg,labelBgStyle:y.labelBgStyle,labelBgPadding:y.labelBgPadding,labelBgBorderRadius:y.labelBgBorderRadius,sourceX:N,sourceY:P,targetX:F,targetY:I,sourcePosition:L,targetPosition:R,data:y.data,style:y.style,sourceHandleId:y.sourceHandle,targetHandleId:y.targetHandle,markerStart:z,markerEnd:B,pathOptions:`pathOptions`in y?y.pathOptions:void 0,interactionWidth:y.interactionWidth}),w&&(0,W.jsx)(ZQe,{edge:y,isReconnectable:w,reconnectRadius:u,onReconnect:d,onReconnectStart:f,onReconnectEnd:p,sourceX:N,sourceY:P,targetX:F,targetY:I,sourcePosition:L,targetPosition:R,setUpdateHover:O,setReconnecting:A})]})})}var $Qe=(0,U.memo)(QQe),e$e=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function t$e({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:r,noPanClassName:i,onReconnect:a,onEdgeContextMenu:o,onEdgeMouseEnter:s,onEdgeMouseMove:c,onEdgeMouseLeave:l,onEdgeClick:u,reconnectRadius:d,onEdgeDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,disableKeyboardA11y:h}){let{edgesFocusable:g,edgesReconnectable:_,elementsSelectable:v,onError:y}=h7(e$e,p7),b=vQe(t);return(0,W.jsxs)(`div`,{className:`react-flow__edges`,children:[(0,W.jsx)(TQe,{defaultColor:e,rfId:n}),b.map(e=>(0,W.jsx)($Qe,{id:e,edgesFocusable:g,edgesReconnectable:_,elementsSelectable:v,noPanClassName:i,onReconnect:a,onContextMenu:o,onMouseEnter:s,onMouseMove:c,onMouseLeave:l,onClick:u,reconnectRadius:d,onDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,rfId:n,onError:y,edgeTypes:r,disableKeyboardA11y:h},e))]})}t$e.displayName=`EdgeRenderer`;var n$e=(0,U.memo)(t$e),r$e=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function i$e({children:e}){let t=h7(r$e);return(0,W.jsx)(`div`,{className:`react-flow__viewport xyflow__viewport react-flow__container`,style:{transform:t},children:e})}function a$e(e){let t=C7(),n=(0,U.useRef)(!1);(0,U.useEffect)(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}var o$e=e=>e.panZoom?.syncViewport;function s$e(e){let t=h7(o$e),n=g7();return(0,U.useEffect)(()=>{e&&(t?.(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t]),null}function c$e(e){return e.connection.inProgress?{...e.connection,to:L5(e.connection.to,e.transform)}:{...e.connection}}function l$e(e){return e?t=>e(c$e(t)):c$e}function u$e(e){return h7(l$e(e),p7)}var d$e=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function f$e({containerStyle:e,style:t,type:n,component:r}){let{nodesConnectable:i,width:a,height:o,isValid:s,inProgress:c}=h7(d$e,p7);return a&&i&&c?(0,W.jsx)(`svg`,{style:e,width:a,height:o,className:`react-flow__connectionline react-flow__container`,children:(0,W.jsx)(`g`,{className:S6([`react-flow__connection`,YJe(s)]),children:(0,W.jsx)(p$e,{style:t,type:n,CustomComponent:r,isValid:s})})}):null}var p$e=({style:e,type:t=b5.Bezier,CustomComponent:n,isValid:r})=>{let{inProgress:i,from:a,fromNode:o,fromHandle:s,fromPosition:c,to:l,toNode:u,toHandle:d,toPosition:f,pointer:p}=u$e();if(!i)return;if(n)return(0,W.jsx)(n,{connectionLineType:t,connectionLineStyle:e,fromNode:o,fromHandle:s,fromX:a.x,fromY:a.y,toX:l.x,toY:l.y,fromPosition:c,toPosition:f,connectionStatus:YJe(r),toNode:u,toHandle:d,pointer:p});let m=``,h={sourceX:a.x,sourceY:a.y,sourcePosition:c,targetX:l.x,targetY:l.y,targetPosition:f};switch(t){case b5.Bezier:[m]=wYe(h);break;case b5.SimpleBezier:[m]=kQe(h);break;case b5.Step:[m]=J5({...h,borderRadius:0});break;case b5.SmoothStep:[m]=J5(h);break;default:[m]=jYe(h)}return(0,W.jsx)(`path`,{d:m,fill:`none`,className:`react-flow__connection-path`,style:e})};p$e.displayName=`ConnectionLine`;var m$e={};function h$e(e=m$e){(0,U.useRef)(e),g7(),(0,U.useEffect)(()=>{},[e])}function g$e(){g7(),(0,U.useRef)(!1),(0,U.useEffect)(()=>{},[])}function _$e({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:r,onEdgeClick:i,onNodeDoubleClick:a,onEdgeDoubleClick:o,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:l,onNodeContextMenu:u,onSelectionContextMenu:d,onSelectionStart:f,onSelectionEnd:p,connectionLineType:m,connectionLineStyle:h,connectionLineComponent:g,connectionLineContainerStyle:_,selectionKeyCode:v,selectionOnDrag:y,selectionMode:b,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:C,deleteKeyCode:w,onlyRenderVisibleElements:T,elementsSelectable:E,defaultViewport:D,translateExtent:O,minZoom:k,maxZoom:A,preventScrolling:j,defaultMarkerColor:M,zoomOnScroll:N,zoomOnPinch:P,panOnScroll:F,panOnScrollSpeed:I,panOnScrollMode:L,zoomOnDoubleClick:R,panOnDrag:z,onPaneClick:B,onPaneMouseEnter:ee,onPaneMouseMove:te,onPaneMouseLeave:ne,onPaneScroll:re,onPaneContextMenu:V,paneClickDistance:ie,nodeClickDistance:ae,onEdgeContextMenu:oe,onEdgeMouseEnter:se,onEdgeMouseMove:ce,onEdgeMouseLeave:le,reconnectRadius:ue,onReconnect:de,onReconnectStart:fe,onReconnectEnd:pe,noDragClassName:me,noWheelClassName:he,noPanClassName:ge,disableKeyboardA11y:_e,nodeExtent:ve,rfId:ye,viewport:be,onViewportChange:xe}){return h$e(e),h$e(t),g$e(),a$e(n),s$e(be),(0,W.jsx)(sQe,{onPaneClick:B,onPaneMouseEnter:ee,onPaneMouseMove:te,onPaneMouseLeave:ne,onPaneContextMenu:V,onPaneScroll:re,paneClickDistance:ie,deleteKeyCode:w,selectionKeyCode:v,selectionOnDrag:y,selectionMode:b,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:C,elementsSelectable:E,zoomOnScroll:N,zoomOnPinch:P,zoomOnDoubleClick:R,panOnScroll:F,panOnScrollSpeed:I,panOnScrollMode:L,panOnDrag:z,defaultViewport:D,translateExtent:O,minZoom:k,maxZoom:A,onSelectionContextMenu:d,preventScrolling:j,noDragClassName:me,noWheelClassName:he,noPanClassName:ge,disableKeyboardA11y:_e,onViewportChange:xe,isControlledViewport:!!be,children:(0,W.jsxs)(i$e,{children:[(0,W.jsx)(n$e,{edgeTypes:t,onEdgeClick:i,onEdgeDoubleClick:o,onReconnect:de,onReconnectStart:fe,onReconnectEnd:pe,onlyRenderVisibleElements:T,onEdgeContextMenu:oe,onEdgeMouseEnter:se,onEdgeMouseMove:ce,onEdgeMouseLeave:le,reconnectRadius:ue,defaultMarkerColor:M,noPanClassName:ge,disableKeyboardA11y:_e,rfId:ye}),(0,W.jsx)(f$e,{style:h,type:m,component:g,containerStyle:_}),(0,W.jsx)(`div`,{className:`react-flow__edgelabel-renderer`}),(0,W.jsx)(_Qe,{nodeTypes:e,onNodeClick:r,onNodeDoubleClick:a,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:l,onNodeContextMenu:u,nodeClickDistance:ae,onlyRenderVisibleElements:T,noPanClassName:ge,noDragClassName:me,disableKeyboardA11y:_e,nodeExtent:ve,rfId:ye}),(0,W.jsx)(`div`,{className:`react-flow__viewport-portal`})]})})}_$e.displayName=`GraphView`;var v$e=(0,U.memo)(_$e),y$e=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c=.5,maxZoom:l=2,nodeOrigin:u,nodeExtent:d,zIndexMode:f=`basic`}={})=>{let p=new Map,m=new Map,h=new Map,g=new Map,_=r??t??[],v=n??e??[],y=u??[0,0],b=d??g5;$Ye(h,g,_);let{nodesInitialized:x}=e7(v,p,m,{nodeOrigin:y,nodeExtent:b,zIndexMode:f}),S=[0,0,1];if(o&&i&&a){let{x:e,y:t,zoom:n}=B5(T5(p,{filter:e=>!!((e.width||e.initialWidth)&&(e.height||e.initialHeight))}),i,a,c,l,s?.padding??.1);S=[e,t,n]}return{rfId:`1`,width:i??0,height:a??0,transform:S,nodes:v,nodesInitialized:x,nodeLookup:p,parentLookup:m,edges:_,edgeLookup:g,connectionLookup:h,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:r!==void 0,panZoom:null,minZoom:c,maxZoom:l,translateExtent:g5,nodeExtent:b,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:_5.Strict,domNode:null,paneDragging:!1,noPanClassName:`nopan`,nodeOrigin:y,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:o??!1,fitViewOptions:s,fitViewResolver:null,connection:{...qJe},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:``,autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:lYe,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:`react`,debug:!1,ariaLabelConfig:KJe,zIndexMode:f,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},b$e=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c,maxZoom:l,nodeOrigin:u,nodeExtent:d,zIndexMode:f})=>VXe((p,m)=>{async function h(){let{nodeLookup:e,panZoom:t,fitViewOptions:n,fitViewResolver:r,width:i,height:a,minZoom:o,maxZoom:s}=m();t&&(await tYe({nodes:e,width:i,height:a,panZoom:t,minZoom:o,maxZoom:s},n),r?.resolve(!0),p({fitViewResolver:null}))}return{...y$e({nodes:e,edges:t,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c,maxZoom:l,nodeOrigin:u,nodeExtent:d,defaultNodes:n,defaultEdges:r,zIndexMode:f}),setNodes:e=>{let{nodeLookup:t,parentLookup:n,nodeOrigin:r,elevateNodesOnSelect:i,fitViewQueued:a,zIndexMode:o,nodesSelectionActive:s}=m(),{nodesInitialized:c,hasSelectedNodes:l}=e7(e,t,n,{nodeOrigin:r,nodeExtent:d,elevateNodesOnSelect:i,checkEquality:!0,zIndexMode:o}),u=s&&l;a&&c?(h(),p({nodes:e,nodesInitialized:c,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:u})):p({nodes:e,nodesInitialized:c,nodesSelectionActive:u})},setEdges:e=>{let{connectionLookup:t,edgeLookup:n}=m();$Ye(t,n,e),p({edges:e})},setDefaultNodesAndEdges:(e,t)=>{if(e){let{setNodes:t}=m();t(e),p({hasDefaultNodes:!0})}if(t){let{setEdges:e}=m();e(t),p({hasDefaultEdges:!0})}},updateNodeInternals:e=>{let{triggerNodeChanges:t,nodeLookup:n,parentLookup:r,domNode:i,nodeOrigin:a,nodeExtent:o,debug:s,fitViewQueued:c,zIndexMode:l}=m(),{changes:u,updatedInternals:d}=XYe(e,n,r,i,a,o,l);d&&(GYe(n,r,{nodeOrigin:a,nodeExtent:o,zIndexMode:l}),c?(h(),p({fitViewQueued:!1,fitViewOptions:void 0})):p({}),u?.length>0&&(s&&console.log(`React Flow: trigger node changes`,u),t?.(u)))},updateNodePositions:(e,t=!1)=>{let n=[],r=[],{nodeLookup:i,triggerNodeChanges:a,connection:o,updateConnection:s,onNodesChangeMiddlewareMap:c}=m();for(let[a,c]of e){let e=i.get(a),l=!!(e?.expandParent&&e?.parentId&&c?.position),u={id:a,type:`position`,position:l?{x:Math.max(0,c.position.x),y:Math.max(0,c.position.y)}:c.position,dragging:t};if(e&&o.inProgress&&o.fromNode.id===e.id){let t=Y5(e,o.fromHandle,S5.Left,!0);s({...o,from:t})}l&&e.parentId&&n.push({id:a,parentId:e.parentId,rect:{...c.internals.positionAbsolute,width:c.measured.width??0,height:c.measured.height??0}}),r.push(u)}if(n.length>0){let{parentLookup:e,nodeOrigin:t}=m(),a=n7(n,i,e,t);r.push(...a)}for(let e of c.values())r=e(r);a(r)},triggerNodeChanges:e=>{let{onNodesChange:t,setNodes:n,nodes:r,hasDefaultNodes:i,debug:a}=m();e?.length&&(i&&n(yZe(e,r)),a&&console.log(`React Flow: trigger node changes`,e),t?.(e))},triggerEdgeChanges:e=>{let{onEdgesChange:t,setEdges:n,edges:r,hasDefaultEdges:i,debug:a}=m();e?.length&&(i&&n(bZe(e,r)),a&&console.log(`React Flow: trigger edge changes`,e),t?.(e))},addSelectedNodes:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:i,triggerEdgeChanges:a}=m();if(t){i(e.map(e=>x7(e,!0)));return}i(S7(r,new Set([...e]),!0)),a(S7(n))},addSelectedEdges:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:i,triggerEdgeChanges:a}=m();if(t){a(e.map(e=>x7(e,!0)));return}a(S7(n,new Set([...e]))),i(S7(r,new Set,!0))},unselectNodesAndEdges:({nodes:e,edges:t}={})=>{let{edges:n,nodes:r,nodeLookup:i,triggerNodeChanges:a,triggerEdgeChanges:o}=m(),s=e||r,c=t||n,l=[];for(let e of s){if(!e.selected)continue;let t=i.get(e.id);t&&(t.selected=!1),l.push(x7(e.id,!1))}let u=[];for(let e of c)e.selected&&u.push(x7(e.id,!1));a(l),o(u)},setMinZoom:e=>{let{panZoom:t,maxZoom:n}=m();t?.setScaleExtent([e,n]),p({minZoom:e})},setMaxZoom:e=>{let{panZoom:t,minZoom:n}=m();t?.setScaleExtent([n,e]),p({maxZoom:e})},setTranslateExtent:e=>{m().panZoom?.setTranslateExtent(e),p({translateExtent:e})},resetSelectedElements:()=>{let{edges:e,nodes:t,triggerNodeChanges:n,triggerEdgeChanges:r,elementsSelectable:i}=m();if(!i)return;let a=t.reduce((e,t)=>t.selected?[...e,x7(t.id,!1)]:e,[]),o=e.reduce((e,t)=>t.selected?[...e,x7(t.id,!1)]:e,[]);n(a),r(o)},setNodeExtent:e=>{let{nodes:t,nodeLookup:n,parentLookup:r,nodeOrigin:i,elevateNodesOnSelect:a,nodeExtent:o,zIndexMode:s}=m();(e[0][0]!==o[0][0]||e[0][1]!==o[0][1]||e[1][0]!==o[1][0]||e[1][1]!==o[1][1])&&(e7(t,n,r,{nodeOrigin:i,nodeExtent:e,elevateNodesOnSelect:a,checkEquality:!1,zIndexMode:s}),p({nodeExtent:e}))},panBy:e=>{let{transform:t,width:n,height:r,panZoom:i,translateExtent:a}=m();return ZYe({delta:e,panZoom:i,transform:t,translateExtent:a,width:n,height:r})},setCenter:async(e,t,n)=>{let{width:r,height:i,maxZoom:a,panZoom:o}=m();if(!o)return Promise.resolve(!1);let s=n?.zoom===void 0?a:n.zoom;return await o.setViewport({x:r/2-e*s,y:i/2-t*s,zoom:s},{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{p({connection:{...qJe}})},updateConnection:e=>{p({connection:e})},reset:()=>p({...y$e()})}},Object.is);function x$e({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:r,initialWidth:i,initialHeight:a,initialMinZoom:o,initialMaxZoom:s,initialFitViewOptions:c,fitView:l,nodeOrigin:u,nodeExtent:d,zIndexMode:f,children:p}){let[m]=(0,U.useState)(()=>b$e({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:l,minZoom:o,maxZoom:s,fitViewOptions:c,nodeOrigin:u,nodeExtent:d,zIndexMode:f}));return(0,W.jsx)(HXe,{value:m,children:(0,W.jsx)(kZe,{children:p})})}function S$e({children:e,nodes:t,edges:n,defaultNodes:r,defaultEdges:i,width:a,height:o,fitView:s,fitViewOptions:c,minZoom:l,maxZoom:u,nodeOrigin:d,nodeExtent:f,zIndexMode:p}){return(0,U.useContext)(m7)?(0,W.jsx)(W.Fragment,{children:e}):(0,W.jsx)(x$e,{initialNodes:t,initialEdges:n,defaultNodes:r,defaultEdges:i,initialWidth:a,initialHeight:o,fitView:s,initialFitViewOptions:c,initialMinZoom:l,initialMaxZoom:u,nodeOrigin:d,nodeExtent:f,zIndexMode:p,children:e})}var C$e={width:`100%`,height:`100%`,overflow:`hidden`,position:`relative`,zIndex:0};function w$e({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:i,nodeTypes:a,edgeTypes:o,onNodeClick:s,onEdgeClick:c,onInit:l,onMove:u,onMoveStart:d,onMoveEnd:f,onConnect:p,onConnectStart:m,onConnectEnd:h,onClickConnectStart:g,onClickConnectEnd:_,onNodeMouseEnter:v,onNodeMouseMove:y,onNodeMouseLeave:b,onNodeContextMenu:x,onNodeDoubleClick:S,onNodeDragStart:C,onNodeDrag:w,onNodeDragStop:T,onNodesDelete:E,onEdgesDelete:D,onDelete:O,onSelectionChange:k,onSelectionDragStart:A,onSelectionDrag:j,onSelectionDragStop:M,onSelectionContextMenu:N,onSelectionStart:P,onSelectionEnd:F,onBeforeDelete:I,connectionMode:L,connectionLineType:R=b5.Bezier,connectionLineStyle:z,connectionLineComponent:B,connectionLineContainerStyle:ee,deleteKeyCode:te=`Backspace`,selectionKeyCode:ne=`Shift`,selectionOnDrag:re=!1,selectionMode:V=y5.Full,panActivationKeyCode:ie=`Space`,multiSelectionKeyCode:ae=V5()?`Meta`:`Control`,zoomActivationKeyCode:oe=V5()?`Meta`:`Control`,snapToGrid:se,snapGrid:ce,onlyRenderVisibleElements:le=!1,selectNodesOnDrag:ue,nodesDraggable:de,autoPanOnNodeFocus:fe,nodesConnectable:pe,nodesFocusable:me,nodeOrigin:he=aZe,edgesFocusable:ge,edgesReconnectable:_e,elementsSelectable:ve=!0,defaultViewport:ye=oZe,minZoom:be=.5,maxZoom:xe=2,translateExtent:Se=g5,preventScrolling:Ce=!0,nodeExtent:we,defaultMarkerColor:H=`#b1b1b7`,zoomOnScroll:Te=!0,zoomOnPinch:Ee=!0,panOnScroll:De=!1,panOnScrollSpeed:Oe=.5,panOnScrollMode:ke=v5.Free,zoomOnDoubleClick:Ae=!0,panOnDrag:je=!0,onPaneClick:Me,onPaneMouseEnter:Ne,onPaneMouseMove:Pe,onPaneMouseLeave:Fe,onPaneScroll:Ie,onPaneContextMenu:Le,paneClickDistance:Re=1,nodeClickDistance:ze=0,children:Be,onReconnect:Ve,onReconnectStart:He,onReconnectEnd:Ue,onEdgeContextMenu:We,onEdgeDoubleClick:Ge,onEdgeMouseEnter:Ke,onEdgeMouseMove:qe,onEdgeMouseLeave:Je,reconnectRadius:Ye=10,onNodesChange:Xe,onEdgesChange:Ze,noDragClassName:Qe=`nodrag`,noWheelClassName:$e=`nowheel`,noPanClassName:et=`nopan`,fitView:tt,fitViewOptions:nt,connectOnClick:rt,attributionPosition:it,proOptions:at,defaultEdgeOptions:ot,elevateNodesOnSelect:st=!0,elevateEdgesOnSelect:ct=!1,disableKeyboardA11y:lt=!1,autoPanOnConnect:ut,autoPanOnNodeDrag:dt,autoPanSpeed:ft,connectionRadius:pt,isValidConnection:mt,onError:ht,style:gt,id:_t,nodeDragThreshold:vt,connectionDragThreshold:yt,viewport:bt,onViewportChange:xt,width:St,height:Ct,colorMode:wt=`light`,debug:Tt,onScroll:Et,ariaLabelConfig:Dt,zIndexMode:Ot=`basic`,...kt},At){let jt=_t||`1`,Mt=fZe(wt),Nt=(0,U.useCallback)(e=>{e.currentTarget.scrollTo({top:0,left:0,behavior:`instant`}),Et?.(e)},[Et]);return(0,W.jsx)(`div`,{"data-testid":`rf__wrapper`,...kt,onScroll:Nt,style:{...gt,...C$e},ref:At,className:S6([`react-flow`,i,Mt]),id:_t,role:`application`,children:(0,W.jsxs)(S$e,{nodes:e,edges:t,width:St,height:Ct,fitView:tt,fitViewOptions:nt,minZoom:be,maxZoom:xe,nodeOrigin:he,nodeExtent:we,zIndexMode:Ot,children:[(0,W.jsx)(uZe,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:p,onConnectStart:m,onConnectEnd:h,onClickConnectStart:g,onClickConnectEnd:_,nodesDraggable:de,autoPanOnNodeFocus:fe,nodesConnectable:pe,nodesFocusable:me,edgesFocusable:ge,edgesReconnectable:_e,elementsSelectable:ve,elevateNodesOnSelect:st,elevateEdgesOnSelect:ct,minZoom:be,maxZoom:xe,nodeExtent:we,onNodesChange:Xe,onEdgesChange:Ze,snapToGrid:se,snapGrid:ce,connectionMode:L,translateExtent:Se,connectOnClick:rt,defaultEdgeOptions:ot,fitView:tt,fitViewOptions:nt,onNodesDelete:E,onEdgesDelete:D,onDelete:O,onNodeDragStart:C,onNodeDrag:w,onNodeDragStop:T,onSelectionDrag:j,onSelectionDragStart:A,onSelectionDragStop:M,onMove:u,onMoveStart:d,onMoveEnd:f,noPanClassName:et,nodeOrigin:he,rfId:jt,autoPanOnConnect:ut,autoPanOnNodeDrag:dt,autoPanSpeed:ft,onError:ht,connectionRadius:pt,isValidConnection:mt,selectNodesOnDrag:ue,nodeDragThreshold:vt,connectionDragThreshold:yt,onBeforeDelete:I,debug:Tt,ariaLabelConfig:Dt,zIndexMode:Ot}),(0,W.jsx)(v$e,{onInit:l,onNodeClick:s,onEdgeClick:c,onNodeMouseEnter:v,onNodeMouseMove:y,onNodeMouseLeave:b,onNodeContextMenu:x,onNodeDoubleClick:S,nodeTypes:a,edgeTypes:o,connectionLineType:R,connectionLineStyle:z,connectionLineComponent:B,connectionLineContainerStyle:ee,selectionKeyCode:ne,selectionOnDrag:re,selectionMode:V,deleteKeyCode:te,multiSelectionKeyCode:ae,panActivationKeyCode:ie,zoomActivationKeyCode:oe,onlyRenderVisibleElements:le,defaultViewport:ye,translateExtent:Se,minZoom:be,maxZoom:xe,preventScrolling:Ce,zoomOnScroll:Te,zoomOnPinch:Ee,zoomOnDoubleClick:Ae,panOnScroll:De,panOnScrollSpeed:Oe,panOnScrollMode:ke,panOnDrag:je,onPaneClick:Me,onPaneMouseEnter:Ne,onPaneMouseMove:Pe,onPaneMouseLeave:Fe,onPaneScroll:Ie,onPaneContextMenu:Le,paneClickDistance:Re,nodeClickDistance:ze,onSelectionContextMenu:N,onSelectionStart:P,onSelectionEnd:F,onReconnect:Ve,onReconnectStart:He,onReconnectEnd:Ue,onEdgeContextMenu:We,onEdgeDoubleClick:Ge,onEdgeMouseEnter:Ke,onEdgeMouseMove:qe,onEdgeMouseLeave:Je,reconnectRadius:Ye,defaultMarkerColor:H,noDragClassName:Qe,noWheelClassName:$e,noPanClassName:et,rfId:jt,disableKeyboardA11y:lt,nodeExtent:we,viewport:bt,onViewportChange:xt}),(0,W.jsx)(iZe,{onSelectionChange:k}),Be,(0,W.jsx)($Xe,{proOptions:at,position:it}),(0,W.jsx)(QXe,{rfId:jt,disableKeyboardA11y:lt})]})})}var T$e=TZe(w$e);h5.error014();function E$e({dimensions:e,lineWidth:t,variant:n,className:r}){return(0,W.jsx)(`path`,{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:S6([`react-flow__background-pattern`,n,r])})}function D$e({radius:e,className:t}){return(0,W.jsx)(`circle`,{cx:e,cy:e,r:e,className:S6([`react-flow__background-pattern`,`dots`,t])})}var j7;(function(e){e.Lines=`lines`,e.Dots=`dots`,e.Cross=`cross`})(j7||={});var O$e={[j7.Dots]:1,[j7.Lines]:1,[j7.Cross]:6},k$e=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function A$e({id:e,variant:t=j7.Dots,gap:n=20,size:r,lineWidth:i=1,offset:a=0,color:o,bgColor:s,style:c,className:l,patternClassName:u}){let d=(0,U.useRef)(null),{transform:f,patternId:p}=h7(k$e,p7),m=r||O$e[t],h=t===j7.Dots,g=t===j7.Cross,_=Array.isArray(n)?n:[n,n],v=[_[0]*f[2]||1,_[1]*f[2]||1],y=m*f[2],b=Array.isArray(a)?a:[a,a],x=g?[y,y]:v,S=[b[0]*f[2]||1+x[0]/2,b[1]*f[2]||1+x[1]/2],C=`${p}${e||``}`;return(0,W.jsxs)(`svg`,{className:S6([`react-flow__background`,l]),style:{...c,...w7,"--xy-background-color-props":s,"--xy-background-pattern-color-props":o},ref:d,"data-testid":`rf__background`,children:[(0,W.jsx)(`pattern`,{id:C,x:f[0]%v[0],y:f[1]%v[1],width:v[0],height:v[1],patternUnits:`userSpaceOnUse`,patternTransform:`translate(-${S[0]},-${S[1]})`,children:h?(0,W.jsx)(D$e,{radius:y/2,className:u}):(0,W.jsx)(E$e,{dimensions:x,lineWidth:i,variant:t,className:u})}),(0,W.jsx)(`rect`,{x:`0`,y:`0`,width:`100%`,height:`100%`,fill:`url(#${C})`})]})}A$e.displayName=`Background`;var j$e=(0,U.memo)(A$e);function M$e(){return(0,W.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,children:(0,W.jsx)(`path`,{d:`M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z`})})}function N$e(){return(0,W.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 5`,children:(0,W.jsx)(`path`,{d:`M0 0h32v4.2H0z`})})}function P$e(){return(0,W.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 30`,children:(0,W.jsx)(`path`,{d:`M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z`})})}function F$e(){return(0,W.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`,children:(0,W.jsx)(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z`})})}function I$e(){return(0,W.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`,children:(0,W.jsx)(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z`})})}function M7({children:e,className:t,...n}){return(0,W.jsx)(`button`,{type:`button`,className:S6([`react-flow__controls-button`,t]),...n,children:e})}var L$e=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function R$e({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:i,onZoomIn:a,onZoomOut:o,onFitView:s,onInteractiveChange:c,className:l,children:u,position:d=`bottom-left`,orientation:f=`vertical`,"aria-label":p}){let m=g7(),{isInteractive:h,minZoomReached:g,maxZoomReached:_,ariaLabelConfig:v}=h7(L$e,p7),{zoomIn:y,zoomOut:b,fitView:x}=C7();return(0,W.jsxs)(_7,{className:S6([`react-flow__controls`,f===`horizontal`?`horizontal`:`vertical`,l]),position:d,style:e,"data-testid":`rf__controls`,"aria-label":p??v[`controls.ariaLabel`],children:[t&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(M7,{onClick:()=>{y(),a?.()},className:`react-flow__controls-zoomin`,title:v[`controls.zoomIn.ariaLabel`],"aria-label":v[`controls.zoomIn.ariaLabel`],disabled:_,children:(0,W.jsx)(M$e,{})}),(0,W.jsx)(M7,{onClick:()=>{b(),o?.()},className:`react-flow__controls-zoomout`,title:v[`controls.zoomOut.ariaLabel`],"aria-label":v[`controls.zoomOut.ariaLabel`],disabled:g,children:(0,W.jsx)(N$e,{})})]}),n&&(0,W.jsx)(M7,{className:`react-flow__controls-fitview`,onClick:()=>{x(i),s?.()},title:v[`controls.fitView.ariaLabel`],"aria-label":v[`controls.fitView.ariaLabel`],children:(0,W.jsx)(P$e,{})}),r&&(0,W.jsx)(M7,{className:`react-flow__controls-interactive`,onClick:()=>{m.setState({nodesDraggable:!h,nodesConnectable:!h,elementsSelectable:!h}),c?.(!h)},title:v[`controls.interactive.ariaLabel`],"aria-label":v[`controls.interactive.ariaLabel`],children:h?(0,W.jsx)(I$e,{}):(0,W.jsx)(F$e,{})}),u]})}R$e.displayName=`Controls`;var z$e=(0,U.memo)(R$e);function B$e({id:e,x:t,y:n,width:r,height:i,style:a,color:o,strokeColor:s,strokeWidth:c,className:l,borderRadius:u,shapeRendering:d,selected:f,onClick:p}){let{background:m,backgroundColor:h}=a||{},g=o||m||h;return(0,W.jsx)(`rect`,{className:S6([`react-flow__minimap-node`,{selected:f},l]),x:t,y:n,rx:u,ry:u,width:r,height:i,style:{fill:g,stroke:s,strokeWidth:c},shapeRendering:d,onClick:p?t=>p(t,e):void 0})}var V$e=(0,U.memo)(B$e),H$e=e=>e.nodes.map(e=>e.id),N7=e=>e instanceof Function?e:()=>e;function U$e({nodeStrokeColor:e,nodeColor:t,nodeClassName:n=``,nodeBorderRadius:r=5,nodeStrokeWidth:i,nodeComponent:a=V$e,onClick:o}){let s=h7(H$e,p7),c=N7(t),l=N7(e),u=N7(n),d=typeof window>`u`||window.chrome?`crispEdges`:`geometricPrecision`;return(0,W.jsx)(W.Fragment,{children:s.map(e=>(0,W.jsx)(G$e,{id:e,nodeColorFunc:c,nodeStrokeColorFunc:l,nodeClassNameFunc:u,nodeBorderRadius:r,nodeStrokeWidth:i,NodeComponent:a,onClick:o,shapeRendering:d},e))})}function W$e({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:r,nodeBorderRadius:i,nodeStrokeWidth:a,shapeRendering:o,NodeComponent:s,onClick:c}){let{node:l,x:u,y:d,width:f,height:p}=h7(t=>{let n=t.nodeLookup.get(e);if(!n)return{node:void 0,x:0,y:0,width:0,height:0};let r=n.internals.userNode,{x:i,y:a}=n.internals.positionAbsolute,{width:o,height:s}=U5(r);return{node:r,x:i,y:a,width:o,height:s}},p7);return!l||l.hidden||!fYe(l)?null:(0,W.jsx)(s,{x:u,y:d,width:f,height:p,style:l.style,selected:!!l.selected,className:r(l),color:t(l),borderRadius:i,strokeColor:n(l),strokeWidth:a,shapeRendering:o,onClick:c,id:l.id})}var G$e=(0,U.memo)(W$e),K$e=(0,U.memo)(U$e),q$e=200,J$e=150,Y$e=e=>!e.hidden,X$e=e=>{let t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:t,boundingRect:e.nodeLookup.size>0?sYe(T5(e.nodeLookup,{filter:Y$e}),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},Z$e=`react-flow__minimap-desc`;function Q$e({style:e,className:t,nodeStrokeColor:n,nodeColor:r,nodeClassName:i=``,nodeBorderRadius:a=5,nodeStrokeWidth:o,nodeComponent:s,bgColor:c,maskColor:l,maskStrokeColor:u,maskStrokeWidth:d,position:f=`bottom-right`,onClick:p,onNodeClick:m,pannable:h=!1,zoomable:g=!1,ariaLabel:_,inversePan:v,zoomStep:y=1,offsetScale:b=5}){let x=g7(),S=(0,U.useRef)(null),{boundingRect:C,viewBB:w,rfId:T,panZoom:E,translateExtent:D,flowWidth:O,flowHeight:k,ariaLabelConfig:A}=h7(X$e,p7),j=e?.width??q$e,M=e?.height??J$e,N=C.width/j,P=C.height/M,F=Math.max(N,P),I=F*j,L=F*M,R=b*F,z=C.x-(I-C.width)/2-R,B=C.y-(L-C.height)/2-R,ee=I+R*2,te=L+R*2,ne=`${Z$e}-${T}`,re=(0,U.useRef)(0),V=(0,U.useRef)();re.current=F,(0,U.useEffect)(()=>{if(S.current&&E)return V.current=mXe({domNode:S.current,panZoom:E,getTransform:()=>x.getState().transform,getViewScale:()=>re.current}),()=>{V.current?.destroy()}},[E]),(0,U.useEffect)(()=>{V.current?.update({translateExtent:D,width:O,height:k,inversePan:v,pannable:h,zoomStep:y,zoomable:g})},[h,g,v,y,D,O,k]);let ie=p?e=>{let[t,n]=V.current?.pointer(e)||[0,0];p(e,{x:t,y:n})}:void 0,ae=m?(0,U.useCallback)((e,t)=>{let n=x.getState().nodeLookup.get(t).internals.userNode;m(e,n)},[]):void 0,oe=_??A[`minimap.ariaLabel`];return(0,W.jsx)(_7,{position:f,style:{...e,"--xy-minimap-background-color-props":typeof c==`string`?c:void 0,"--xy-minimap-mask-background-color-props":typeof l==`string`?l:void 0,"--xy-minimap-mask-stroke-color-props":typeof u==`string`?u:void 0,"--xy-minimap-mask-stroke-width-props":typeof d==`number`?d*F:void 0,"--xy-minimap-node-background-color-props":typeof r==`string`?r:void 0,"--xy-minimap-node-stroke-color-props":typeof n==`string`?n:void 0,"--xy-minimap-node-stroke-width-props":typeof o==`number`?o:void 0},className:S6([`react-flow__minimap`,t]),"data-testid":`rf__minimap`,children:(0,W.jsxs)(`svg`,{width:j,height:M,viewBox:`${z} ${B} ${ee} ${te}`,className:`react-flow__minimap-svg`,role:`img`,"aria-labelledby":ne,ref:S,onClick:ie,children:[oe&&(0,W.jsx)(`title`,{id:ne,children:oe}),(0,W.jsx)(K$e,{onClick:ae,nodeColor:r,nodeStrokeColor:n,nodeBorderRadius:a,nodeClassName:i,nodeStrokeWidth:o,nodeComponent:s}),(0,W.jsx)(`path`,{className:`react-flow__minimap-mask`,d:`M${z-R},${B-R}h${ee+R*2}v${te+R*2}h${-ee-R*2}z
218
- M${w.x},${w.y}h${w.width}v${w.height}h${-w.width}z`,fillRule:`evenodd`,pointerEvents:`none`})]})})}Q$e.displayName=`MiniMap`;var $$e=(0,U.memo)(Q$e),e1e=e=>t=>e?`${Math.max(1/t.transform[2],1)}`:void 0,t1e={[l7.Line]:`right`,[l7.Handle]:`bottom-right`};function n1e({nodeId:e,position:t,variant:n=l7.Handle,className:r,style:i=void 0,children:a,color:o,minWidth:s=10,minHeight:c=10,maxWidth:l=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:d=!1,resizeDirection:f,autoScale:p=!0,shouldResize:m,onResizeStart:h,onResize:g,onResizeEnd:_}){let v=KZe(),y=typeof e==`string`?e:v,b=g7(),x=(0,U.useRef)(null),S=n===l7.Handle,C=h7((0,U.useCallback)(e1e(S&&p),[S,p]),p7),w=(0,U.useRef)(null),T=t??t1e[n];(0,U.useEffect)(()=>{if(!(!x.current||!y))return w.current||=NXe({domNode:x.current,nodeId:y,getStoreItems:()=>{let{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:i,domNode:a}=b.getState();return{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:i,paneDomNode:a}},onChange:(e,t)=>{let{triggerNodeChanges:n,nodeLookup:r,parentLookup:i,nodeOrigin:a}=b.getState(),o=[],s={x:e.x,y:e.y},c=r.get(y);if(c&&c.expandParent&&c.parentId){let t=c.origin??a,n=e.width??c.measured.width??0,l=e.height??c.measured.height??0,u=n7([{id:c.id,parentId:c.parentId,rect:{width:n,height:l,...pYe({x:e.x??c.position.x,y:e.y??c.position.y},{width:n,height:l},c.parentId,r,t)}}],r,i,a);o.push(...u),s.x=e.x?Math.max(t[0]*n,e.x):void 0,s.y=e.y?Math.max(t[1]*l,e.y):void 0}if(s.x!==void 0&&s.y!==void 0){let e={id:y,type:`position`,position:{...s}};o.push(e)}if(e.width!==void 0&&e.height!==void 0){let t={id:y,type:`dimensions`,resizing:!0,setAttributes:f?f===`horizontal`?`width`:`height`:!0,dimensions:{width:e.width,height:e.height}};o.push(t)}for(let e of t){let t={...e,type:`position`};o.push(t)}n(o)},onEnd:({width:e,height:t})=>{let n={id:y,type:`dimensions`,resizing:!1,dimensions:{width:e,height:t}};b.getState().triggerNodeChanges([n])}}),w.current.update({controlPosition:T,boundaries:{minWidth:s,minHeight:c,maxWidth:l,maxHeight:u},keepAspectRatio:d,resizeDirection:f,onResizeStart:h,onResize:g,onResizeEnd:_,shouldResize:m}),()=>{w.current?.destroy()}},[T,s,c,l,u,d,h,g,_,m]);let E=T.split(`-`);return(0,W.jsx)(`div`,{className:S6([`react-flow__resize-control`,`nodrag`,...E,n,r]),ref:x,style:{...i,scale:C,...o&&{[S?`backgroundColor`:`borderColor`]:o}},children:a})}(0,U.memo)(n1e);var P7={x:80,y:80},r1e=260,i1e=150;function a1e(e,t){let n=I7(e),r=Object.entries(n),i=B7(e),a=V7(e),o=new Set(r.map(([e])=>e)),s=0;return{nodes:r.map(([n,a],o)=>{let c=i[n]??l1e(a),l=c??f1e(o,r.length);return c||(s+=1),{id:n,type:`workflowNode`,position:l,data:{nodeId:n,label:z7(n,a),kind:R7(a),validationCount:b1e(t,n),isInitial:y1e(e).includes(n)}}}),edges:Object.entries(L7(e)).flatMap(([e,t])=>{let n=q7(t.from),r=q7(t.to);if(!n||!r||!o.has(n)||!o.has(r))return[];let i=typeof t.kind==`string`?t.kind:`data`;return[{id:e,source:n,target:r,type:`workflowEdge`,label:i,data:{edgeId:e,kind:i,route:a[e]},markerEnd:{type:x5.ArrowClosed,color:`#38bdf8`},style:{stroke:`#38bdf8`,strokeWidth:1.5}}]}),usedAutoLayout:s>0,missingPositionCount:s}}function o1e(e,t){return t.type===`node`?e.nodes.some(e=>e.id===t.id):e.edges.some(e=>e.id===t.id)}function F7(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function I7(e){return s1e(e.nodes)}function L7(e){return s1e(e.edges)}function s1e(e){if(!F7(e))return{};let t={};for(let[n,r]of Object.entries(e))F7(r)&&(t[n]=r);return t}function R7(e){return typeof e.kind==`string`?e.kind:`node`}function z7(e,t){return typeof t.label==`string`&&t.label.trim()?t.label.trim():`${c1e(R7(t))} ${e}`}function c1e(e){return e.charAt(0).toUpperCase()+e.slice(1)}function B7(e){let t=F7(e.ui)?e.ui:void 0,n=t&&F7(t.positions)?t.positions:void 0;if(!n)return{};let r={};for(let[e,t]of Object.entries(n)){let n=u1e(t);n&&(r[e]=n)}return r}function V7(e){let t=F7(e.ui)?e.ui:void 0,n=t&&F7(t.edgeRoutes)?t.edgeRoutes:void 0;if(!n)return{};let r={};for(let[e,t]of Object.entries(n)){let n=d1e(t);n&&(r[e]=n)}return r}function l1e(e){let t=F7(e.ui)?e.ui:void 0;return t?u1e(t.position):void 0}function u1e(e){if(!F7(e))return;let{x:t,y:n}=e;return typeof t==`number`&&Number.isFinite(t)&&typeof n==`number`&&Number.isFinite(n)?{x:t,y:n}:void 0}function d1e(e){if(!F7(e))return;let t={};for(let n of[`centerX`,`centerY`,`sourceControlX`,`sourceControlY`,`targetControlX`,`targetControlY`])typeof e[n]==`number`&&Number.isFinite(e[n])&&(t[n]=e[n]);return Object.keys(t).length?t:void 0}function f1e(e,t){if(t<=0)return P7;let n=Math.max(1,Math.ceil(Math.sqrt(t)));return{x:P7.x+e%n*r1e,y:P7.y+Math.floor(e/n)*i1e}}function H7(e){return e.length?{x:P7.x+e.length%3*r1e,y:P7.y+Math.floor(e.length/3)*i1e}:P7}function U7(e,t){let n=I7(e);if(!Object.hasOwn(n,t))return t;let r=2;for(;Object.hasOwn(n,`${t}_${r}`);)r+=1;return`${t}_${r}`}function p1e(e,t,n){let r=L7(e),i=`edge_${t}_to_${n}`.replace(/[^a-zA-Z0-9_-]/g,`-`);if(!Object.hasOwn(r,i))return i;let a=2;for(;Object.hasOwn(r,`${i}_${a}`);)a+=1;return`${i}_${a}`}function W7(e,t,n,r){let i=I7(e),a={...e,nodes:{...i,[t]:r},edges:F7(e.edges)?e.edges:{}};return y1e(a).length||(a.initial=t),G7(a,{...B7(e),[t]:n})}function m1e(e,t,n,r){return{...e,edges:{...L7(e),[t]:{id:t,from:{nodeId:n},to:{nodeId:r},kind:`data`}}}}function h1e(e,t){let n=I7(e);delete n[t];let r=Object.fromEntries(Object.entries(L7(e)).filter(([,e])=>q7(e.from)!==t&&q7(e.to)!==t)),i=B7(e);delete i[t];let a=V7(e);for(let e of Object.keys(a))Object.hasOwn(r,e)||delete a[e];return _1e(K7({...e,nodes:n,edges:r},i,a),t,Object.keys(n))}function g1e(e,t){let n=L7(e);delete n[t];let r=V7(e);return delete r[t],v1e({...e,edges:n},r)}function _1e(e,t,n){let r={...e};if(typeof r.initial==`string`)return r.initial===t&&(n[0]?r.initial=n[0]:delete r.initial),r;if(Array.isArray(r.initial)){let e=r.initial.filter(e=>e!==t);e.length?r.initial=e:n[0]?r.initial=n[0]:delete r.initial}return r}function G7(e,t){let n=F7(e.ui)?e.ui:{};return{...e,ui:{...n,layout:`manual`,positions:t}}}function v1e(e,t){let n=F7(e.ui)?e.ui:{};return{...e,ui:{...n,edgeRoutes:t}}}function K7(e,t,n){return v1e(G7(e,t),n)}function y1e(e){return typeof e.initial==`string`?[e.initial]:Array.isArray(e.initial)?e.initial.filter(e=>typeof e==`string`):[]}function b1e(e,t){return e.filter(e=>e.nodeId===t||e.path?.startsWith(`$.nodes.${t}`)).length}function q7(e){return F7(e)&&typeof e.nodeId==`string`&&e.nodeId.trim()?e.nodeId.trim():void 0}var J7={type:`object`,properties:{},required:[],additionalProperties:!1},Y7=[`global`,`local`,`edge`],x1e=[`draft`,`notes`,`result`],S1e=[`payload`,`previous`,`resume`],C1e=[`global`,`local`];function w1e(e,t){return T1e(e.state,t.stateAccess)}function T1e(e,t){let n=X7(e);return JSON.stringify({reads:n.reads,writes:n.writes})!==JSON.stringify({reads:t.reads,writes:t.writes})}function X7(e){let t=F7(e)?e:{},n=E1e(t.reads),r=E1e(t.writes),i=Z7(n[0]),a=Z7(r[0]);return{reads:n,writes:r,readScope:i?.scope??`global`,readPath:i?.path??``,writeScope:a?.scope===`edge`?`global`:a?.scope??`global`,writePath:a?.scope===`edge`?``:a?.path??``}}function E1e(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`&&!!Z7(e)):[]}function D1e(e,t){let n=F7(e.state)?{...e.state}:{};t.reads.length?n.reads=[...t.reads]:delete n.reads,t.writes.length?n.writes=[...t.writes]:delete n.writes,Object.keys(n).length?e.state=n:delete e.state}function O1e(e,t,n){let r=n.flatMap(e=>{let n=Z7(e);return n?.scope===t?[n.path]:[]}),i=t===`global`?k1e(e):t===`local`?x1e:S1e;return[...new Set([...i,...r])].sort()}function k1e(e){let t=F7(e.state)?e.state:void 0,n=t&&F7(t.global)?t.global:void 0;return n?Object.keys(n).sort():[]}function A1e(e){return e.trim().replace(/\s+/g,``).replace(/^\.+/,``).replace(/\.+$/,``).replace(/\.{2,}/g,`.`)}function Z7(e){if(!e)return;let t=e.indexOf(`.`);if(t<=0||t===e.length-1)return;let n=e.slice(0,t),r=e.slice(t+1);if(Y7.includes(n)&&!r.split(`.`).some(e=>!e))return{scope:n,path:r}}function j1e(e){let t=typeof e.workflowId==`string`?e.workflowId:``,n=typeof e.workflowVersion==`string`?e.workflowVersion:``;return{label:typeof e.label==`string`?e.label:``,description:typeof e.description==`string`?e.description:``,inputKind:F1e(e.input),inputDescription:e9(e.input),inputSchemaText:t9(e.input),outputKind:F1e(e.output),outputDescription:e9(e.output),outputSchemaText:t9(e.output),stateAccess:X7(e.state),profileId:R1e(e.profile),promptTemplate:typeof e.promptTemplate==`string`?e.promptTemplate:``,handlerId:typeof e.handler==`string`?e.handler:``,adapterRef:z1e(e.handler),adapterParamsText:s9(B1e(e.handler)),workflowVersionKey:t&&n?J1e(t,n):``,humanPrompt:typeof e.prompt==`string`?e.prompt:``,humanSchemaText:e.schema===void 0?``:n9(e.schema),humanActionRefs:V1e(e.actions),humanTimeoutKind:G1e(e.timeout),humanTimeoutValue:K1e(e.timeout)}}function M1e(e,t,n){let r=I7(e),i=r[t];if(!i)return e;let a=R7(i),o={...i};if(l9(o,`label`,n.label),l9(o,`description`,n.description),I1e(o,`input`,n.inputKind,n.inputDescription,i.input,n.inputSchemaText),I1e(o,`output`,n.outputKind,n.outputDescription,i.output,n.outputSchemaText),D1e(o,n.stateAccess),a===`agent`&&(o.runtime=`pibo`,n.profileId.trim()&&(o.profile={kind:`fixed`,id:n.profileId.trim()}),l9(o,`promptTemplate`,n.promptTemplate),n.promptTemplate.trim()&&delete o.promptBuilder),a===`code`&&(o.language=`typescript`,n.handlerId.trim()&&(o.handler=n.handlerId.trim())),a===`adapter`&&(o.mode=`deterministic`,n.adapterRef.trim())){let e=a9(n.adapterRef.trim());c9(e,n.adapterParamsText),o.handler=e}if(a===`workflow`){let e=Y1e(n.workflowVersionKey);e&&(o.workflowId=e.workflowId,o.workflowVersion=e.workflowVersion)}return a===`human`&&(l9(o,`prompt`,n.humanPrompt),n.humanSchemaText.trim()?o.schema=r9(n.humanSchemaText):delete o.schema,W1e(o,n.humanActionRefs),q1e(o,n.humanTimeoutKind,n.humanTimeoutValue)),{...e,nodes:{...r,[t]:o}}}function N1e(e,t){let n=F7(e.from)?e.from:{},r=F7(e.to)?e.to:{},i=F7(e.guard)?e.guard:void 0,a=F7(e.adapter)?e.adapter:void 0,o=a&&F7(a.transform)?a.transform:void 0,s=typeof e.kind==`string`&&[`data`,`control`,`error`,`resume`].includes(e.kind)?e.kind:`data`;return{sourceNodeId:typeof n.nodeId==`string`?n.nodeId:t[0]??``,sourcePortId:typeof n.portId==`string`?n.portId:``,targetNodeId:typeof r.nodeId==`string`?r.nodeId:t.find(e=>e!==(n.nodeId??t[0]))??``,targetPortId:typeof r.portId==`string`?r.portId:``,kind:s,guardHandler:i&&typeof i.handler==`string`?i.handler:``,guardPriority:i&&typeof i.priority==`number`?String(i.priority):``,guardParamsText:s9(i?.params),adapterRef:o&&typeof o.id==`string`?o.id:``,adapterParamsText:s9(o?.params),stateAccess:X7(e.state)}}function P1e(e,t,n){let r=L7(e),i=r[t];if(!i)return e;let a={...i,id:t,from:L1e(n.sourceNodeId,n.sourcePortId),to:L1e(n.targetNodeId,n.targetPortId),kind:n.kind},o=n.guardHandler.trim();if(o){let e=Number.parseInt(n.guardPriority,10),t={handler:o,...Number.isInteger(e)&&e>=0?{priority:e}:{}};c9(t,n.guardParamsText),a.guard=t}else delete a.guard;D1e(a,n.stateAccess);let s=n.adapterRef.trim();if(s){let e=F7(i.adapter)?i.adapter:{},t=a9(s);c9(t,n.adapterParamsText),a.adapter={...e,kind:`edgeAdapter`,output:F7(e.output)?e.output:i9(`text`,``,void 0),transform:t}}else delete a.adapter;return{...e,edges:{...r,[t]:a}}}function Q7(e){return JSON.parse(JSON.stringify(e))}function $7(e,t){return F7(e)?e.kind===`json`?`json`:`text`:t}function F1e(e){return F7(e)?$7(e,`text`):`none`}function e9(e){return F7(e)&&typeof e.description==`string`?e.description:``}function t9(e){return n9(F7(e)&&e.schema!==void 0?e.schema:J7)}function n9(e){try{return JSON.stringify(e??J7,null,2)??JSON.stringify(J7,null,2)}catch{return JSON.stringify(J7,null,2)}}function r9(e){let t=e.trim();if(!t)return Q7(J7);try{return JSON.parse(t)}catch{return e}}function i9(e,t,n,r){let i={kind:e};return l9(i,`description`,t),e===`json`&&(i.schema=r9(r??t9(n))),i}function I1e(e,t,n,r,i,a){if(n===`none`){delete e[t];return}e[t]=i9(n,r,i,a)}function L1e(e,t){let n={nodeId:e};return l9(n,`portId`,t),n}function R1e(e){return F7(e)&&e.kind===`fixed`&&typeof e.id==`string`?e.id:``}function z1e(e){return F7(e)&&e.kind===`adapter`&&e.language===`typescript`&&typeof e.id==`string`?e.id:``}function B1e(e){return F7(e)&&e.kind===`adapter`&&e.language===`typescript`?e.params:void 0}function a9(e){return{kind:`adapter`,language:`typescript`,id:e}}function V1e(e){return Array.isArray(e)?e.flatMap(e=>!F7(e)||typeof e.id!=`string`||!e.id.trim()?[]:[o9(e.id,typeof e.kind==`string`?e.kind:void 0)]):[]}function o9(e,t){return t?{id:e,kind:t}:{id:e}}function H1e(e){return e.kind?{id:e.id,kind:e.kind}:{id:e.id}}function U1e(e,t,n){return n?e.some(e=>e.id===t.id)?e:[...e,o9(t.id,t.kind)]:e.filter(e=>e.id!==t.id)}function W1e(e,t){if(!t.length){delete e.actions;return}e.actions=t.map(H1e)}function G1e(e){return!F7(e)||typeof e.kind!=`string`?`none`:[`milliseconds`,`seconds`,`minutes`,`iso8601`].includes(e.kind)?e.kind:`none`}function K1e(e){return F7(e)&&(typeof e.value==`number`||typeof e.value==`string`)?String(e.value):``}function q1e(e,t,n){let r=n.trim();if(t===`none`||!r){delete e.timeout;return}if(t===`iso8601`){e.timeout={kind:t,value:r};return}let i=Number(r);Number.isFinite(i)&&i>0?e.timeout={kind:t,value:i}:delete e.timeout}function s9(e){if(e===void 0)return``;try{return JSON.stringify(e,null,2)??``}catch{return``}}function c9(e,t){let n=t.trim();if(!n){delete e.params;return}try{e.params=JSON.parse(n)}catch{e.params=n}}function l9(e,t,n){let r=n.trim();r?e[t]=r:delete e[t]}function J1e(e,t){return`${e}@${t}`}function Y1e(e){let t=e.indexOf(`@`);if(!(t<=0||t===e.length-1))return{workflowId:e.slice(0,t),workflowVersion:e.slice(t+1)}}function X1e(e,t,n){if(e===`Escape`||e===`Tab`)return{type:`dismiss`};if(!(n<=0))switch(e){case`ArrowDown`:return{type:`focus`,index:(t+1+n)%n};case`ArrowUp`:return{type:`focus`,index:(t-1+n)%n};case`Home`:return{type:`focus`,index:0};case`End`:return{type:`focus`,index:n-1};default:return}}function Z1e(e,t){return e===`ContextMenu`||e===`F10`&&t}var Q1e=`Use the workflow input to produce a concise answer.
217
+ `));return[t,t.reduce((e,t)=>e.concat(...t),[])]}return[[],[]]},[e]);return(0,U.useEffect)(()=>{let n=t?.target??bZe,c=t?.actInsideInputWithModifier??!0;if(e!==null){let e=e=>{if(i.current=e.ctrlKey||e.metaKey||e.shiftKey||e.altKey,(!i.current||i.current&&!c)&&EYe(e))return!1;let n=SZe(e.code,s);if(a.current.add(e[n]),xZe(o,a.current,!1)){let n=e.composedPath?.()?.[0]||e.target,a=n?.nodeName===`BUTTON`||n?.nodeName===`A`;t.preventDefault!==!1&&(i.current||!a)&&e.preventDefault(),r(!0)}},l=e=>{let t=SZe(e.code,s);xZe(o,a.current,!0)?(r(!1),a.current.clear()):a.current.delete(e[t]),e.key===`Meta`&&a.current.clear(),i.current=!1},u=()=>{a.current.clear(),r(!1)};return n?.addEventListener(`keydown`,e),n?.addEventListener(`keyup`,l),window.addEventListener(`blur`,u),window.addEventListener(`contextmenu`,u),()=>{n?.removeEventListener(`keydown`,e),n?.removeEventListener(`keyup`,l),window.removeEventListener(`blur`,u),window.removeEventListener(`contextmenu`,u)}}},[e,r]),n}function xZe(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function SZe(e,t){return t.includes(e)?`code`:`key`}var CZe=()=>{let e=g7();return(0,U.useMemo)(()=>({zoomIn:t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1.2,t):Promise.resolve(!1)},zoomOut:t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,t):Promise.resolve(!1)},zoomTo:(t,n)=>{let{panZoom:r}=e.getState();return r?r.scaleTo(t,n):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{let{transform:[r,i,a],panZoom:o}=e.getState();return o?(await o.setViewport({x:t.x??r,y:t.y??i,zoom:t.zoom??a},n),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{let[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},setCenter:async(t,n,r)=>e.getState().setCenter(t,n,r),fitBounds:async(t,n)=>{let{width:r,height:i,minZoom:a,maxZoom:o,panZoom:s}=e.getState(),c=B5(t,r,i,a,o,n?.padding??.1);return s?(await s.setViewport(c,{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(t,n={})=>{let{transform:r,snapGrid:i,snapToGrid:a,domNode:o}=e.getState();if(!o)return t;let{x:s,y:c}=o.getBoundingClientRect(),l={x:t.x-s,y:t.y-c},u=n.snapGrid??i;return L5(l,r,n.snapToGrid??a,u)},flowToScreenPosition:t=>{let{transform:n,domNode:r}=e.getState();if(!r)return t;let{x:i,y:a}=r.getBoundingClientRect(),o=R5(t,n);return{x:o.x+i,y:o.y+a}}}),[])};function wZe(e,t){let n=[],r=new Map,i=[];for(let t of e)if(t.type===`add`){i.push(t);continue}else if(t.type===`remove`||t.type===`replace`)r.set(t.id,[t]);else{let e=r.get(t.id);e?e.push(t):r.set(t.id,[t])}for(let e of t){let t=r.get(e.id);if(!t){n.push(e);continue}if(t[0].type===`remove`)continue;if(t[0].type===`replace`){n.push({...t[0].item});continue}let i={...e};for(let e of t)TZe(e,i);n.push(i)}return i.length&&i.forEach(e=>{e.index===void 0?n.push({...e.item}):n.splice(e.index,0,{...e.item})}),n}function TZe(e,t){switch(e.type){case`select`:t.selected=e.selected;break;case`position`:e.position!==void 0&&(t.position=e.position),e.dragging!==void 0&&(t.dragging=e.dragging);break;case`dimensions`:e.dimensions!==void 0&&(t.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes===`width`)&&(t.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes===`height`)&&(t.height=e.dimensions.height))),typeof e.resizing==`boolean`&&(t.resizing=e.resizing)}}function EZe(e,t){return wZe(e,t)}function DZe(e,t){return wZe(e,t)}function x7(e,t){return{id:e,type:`select`,selected:t}}function S7(e,t=new Set,n=!1){let r=[];for(let[i,a]of e){let e=t.has(i);!(a.selected===void 0&&!e)&&a.selected!==e&&(n&&(a.selected=e),r.push(x7(a.id,e)))}return r}function OZe({items:e=[],lookup:t}){let n=[],r=new Map(e.map(e=>[e.id,e]));for(let[r,i]of e.entries()){let e=t.get(i.id),a=e?.internals?.userNode??e;a!==void 0&&a!==i&&n.push({id:i.id,item:i,type:`replace`}),a===void 0&&n.push({item:i,type:`add`,index:r})}for(let[e]of t)r.get(e)===void 0&&n.push({id:e,type:`remove`});return n}function kZe(e){return{id:e.id,type:`remove`}}var AZe=e=>iYe(e),jZe=e=>rYe(e);function MZe(e){return(0,U.forwardRef)(e)}function NZe(e){let[t,n]=(0,U.useState)(BigInt(0)),[r]=(0,U.useState)(()=>PZe(()=>n(e=>e+BigInt(1))));return y7(()=>{let t=r.get();t.length&&(e(t),r.reset())},[t]),r}function PZe(e){let t=[];return{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}}var FZe=(0,U.createContext)(null);function IZe({children:e}){let t=g7(),n=NZe((0,U.useCallback)(e=>{let{nodes:n=[],setNodes:r,hasDefaultNodes:i,onNodesChange:a,nodeLookup:o,fitViewQueued:s,onNodesChangeMiddlewareMap:c}=t.getState(),l=n;for(let t of e)l=typeof t==`function`?t(l):t;let u=OZe({items:l,lookup:o});for(let e of c.values())u=e(u);i&&r(l),u.length>0?a?.(u):s&&window.requestAnimationFrame(()=>{let{fitViewQueued:e,nodes:n,setNodes:r}=t.getState();e&&r(n)})},[])),r=NZe((0,U.useCallback)(e=>{let{edges:n=[],setEdges:r,hasDefaultEdges:i,onEdgesChange:a,edgeLookup:o}=t.getState(),s=n;for(let t of e)s=typeof t==`function`?t(s):t;i?r(s):a&&a(OZe({items:s,lookup:o}))},[])),i=(0,U.useMemo)(()=>({nodeQueue:n,edgeQueue:r}),[]);return(0,W.jsx)(FZe.Provider,{value:i,children:e})}function LZe(){let e=(0,U.useContext)(FZe);if(!e)throw Error(`useBatchContext must be used within a BatchProvider`);return e}var RZe=e=>!!e.panZoom;function C7(){let e=CZe(),t=g7(),n=LZe(),r=h7(RZe),i=(0,U.useMemo)(()=>{let e=e=>t.getState().nodeLookup.get(e),r=e=>{n.nodeQueue.push(e)},i=e=>{n.edgeQueue.push(e)},a=e=>{let{nodeLookup:n,nodeOrigin:r}=t.getState(),i=AZe(e)?e:n.get(e.id),a=i.parentId?bYe(i.position,i.measured,i.parentId,n,r):i.position;return M5({...i,position:a,width:i.measured?.width??i.width,height:i.measured?.height??i.height})},o=(e,t,n={replace:!1})=>{r(r=>r.map(r=>{if(r.id===e){let e=typeof t==`function`?t(r):t;return n.replace&&AZe(e)?e:{...r,...e}}return r}))},s=(e,t,n={replace:!1})=>{i(r=>r.map(r=>{if(r.id===e){let e=typeof t==`function`?t(r):t;return n.replace&&jZe(e)?e:{...r,...e}}return r}))};return{getNodes:()=>t.getState().nodes.map(e=>({...e})),getNode:t=>e(t)?.internals.userNode,getInternalNode:e,getEdges:()=>{let{edges:e=[]}=t.getState();return e.map(e=>({...e}))},getEdge:e=>t.getState().edgeLookup.get(e),setNodes:r,setEdges:i,addNodes:e=>{let t=Array.isArray(e)?e:[e];n.nodeQueue.push(e=>[...e,...t])},addEdges:e=>{let t=Array.isArray(e)?e:[e];n.edgeQueue.push(e=>[...e,...t])},toObject:()=>{let{nodes:e=[],edges:n=[],transform:r}=t.getState(),[i,a,o]=r;return{nodes:e.map(e=>({...e})),edges:n.map(e=>({...e})),viewport:{x:i,y:a,zoom:o}}},deleteElements:async({nodes:e=[],edges:n=[]})=>{let{nodes:r,edges:i,onNodesDelete:a,onEdgesDelete:o,triggerNodeChanges:s,triggerEdgeChanges:c,onDelete:l,onBeforeDelete:u}=t.getState(),{nodes:d,edges:f}=await uYe({nodesToRemove:e,edgesToRemove:n,nodes:r,edges:i,onBeforeDelete:u}),p=f.length>0,m=d.length>0;if(p){let e=f.map(kZe);o?.(f),c(e)}if(m){let e=d.map(kZe);a?.(d),s(e)}return(m||p)&&l?.({nodes:d,edges:f}),{deletedNodes:d,deletedEdges:f}},getIntersectingNodes:(e,n=!0,r)=>{let i=hYe(e),o=i?e:a(e),s=r!==void 0;return o?(r||t.getState().nodes).filter(r=>{let a=t.getState().nodeLookup.get(r.id);if(a&&!i&&(r.id===e.id||!a.internals.positionAbsolute))return!1;let c=M5(s?r:a),l=P5(c,o);return n&&l>0||l>=c.width*c.height||l>=o.width*o.height}):[]},isNodeIntersecting:(e,t,n=!0)=>{let r=hYe(e)?e:a(e);if(!r)return!1;let i=P5(r,t);return n&&i>0||i>=t.width*t.height||i>=r.width*r.height},updateNode:o,updateNodeData:(e,t,n={replace:!1})=>{o(e,e=>{let r=typeof t==`function`?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},updateEdge:s,updateEdgeData:(e,t,n={replace:!1})=>{s(e,e=>{let r=typeof t==`function`?t(e):t;return n.replace?{...e,data:r}:{...e,data:{...e.data,...r}}},n)},getNodesBounds:e=>{let{nodeLookup:n,nodeOrigin:r}=t.getState();return aYe(e,{nodeLookup:n,nodeOrigin:r})},getHandleConnections:({type:e,id:n,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}-${e}${n?`-${n}`:``}`)?.values()??[]),getNodeConnections:({type:e,handleId:n,nodeId:r})=>Array.from(t.getState().connectionLookup.get(`${r}${e?n?`-${e}-${n}`:`-${e}`:``}`)?.values()??[]),fitView:async e=>{let r=t.getState().fitViewResolver??SYe();return t.setState({fitViewQueued:!0,fitViewOptions:e,fitViewResolver:r}),n.nodeQueue.push(e=>[...e]),r.promise}}},[]);return(0,U.useMemo)(()=>({...i,...e,viewportInitialized:r}),[r])}var zZe=e=>e.selected,BZe=typeof window<`u`?window:void 0;function VZe({deleteKeyCode:e,multiSelectionKeyCode:t}){let n=g7(),{deleteElements:r}=C7(),i=b7(e,{actInsideInputWithModifier:!1}),a=b7(t,{target:BZe});(0,U.useEffect)(()=>{if(i){let{edges:e,nodes:t}=n.getState();r({nodes:t.filter(zZe),edges:e.filter(zZe)}),n.setState({nodesSelectionActive:!1})}},[i]),(0,U.useEffect)(()=>{n.setState({multiSelectionActive:a})},[a])}function HZe(e){let t=g7();(0,U.useEffect)(()=>{let n=()=>{if(!e.current||!(e.current.checkVisibility?.()??!0))return!1;let n=G5(e.current);(n.height===0||n.width===0)&&t.getState().onError?.(`004`,h5.error004()),t.setState({width:n.width||500,height:n.height||500})};if(e.current){n(),window.addEventListener(`resize`,n);let t=new ResizeObserver(()=>n());return t.observe(e.current),()=>{window.removeEventListener(`resize`,n),t&&e.current&&t.unobserve(e.current)}}},[])}var w7={position:`absolute`,width:`100%`,height:`100%`,top:0,left:0},UZe=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function WZe({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:r=!1,panOnScrollSpeed:i=.5,panOnScrollMode:a=v5.Free,zoomOnDoubleClick:o=!0,panOnDrag:s=!0,defaultViewport:c,translateExtent:l,minZoom:u,maxZoom:d,zoomActivationKeyCode:f,preventScrolling:p=!0,children:m,noWheelClassName:h,noPanClassName:g,onViewportChange:_,isControlledViewport:v,paneClickDistance:y,selectionOnDrag:b}){let x=g7(),S=(0,U.useRef)(null),{userSelectionActive:C,lib:w,connectionInProgress:T}=h7(UZe,p7),E=b7(f),D=(0,U.useRef)();HZe(S);let O=(0,U.useCallback)(e=>{_?.({x:e[0],y:e[1],zoom:e[2]}),v||x.setState({transform:e})},[_,v]);return(0,U.useEffect)(()=>{if(S.current){D.current=jXe({domNode:S.current,minZoom:u,maxZoom:d,translateExtent:l,viewport:c,onDraggingChange:e=>x.setState(t=>t.paneDragging===e?t:{paneDragging:e}),onPanZoomStart:(e,t)=>{let{onViewportChangeStart:n,onMoveStart:r}=x.getState();r?.(e,t),n?.(t)},onPanZoom:(e,t)=>{let{onViewportChange:n,onMove:r}=x.getState();r?.(e,t),n?.(t)},onPanZoomEnd:(e,t)=>{let{onViewportChangeEnd:n,onMoveEnd:r}=x.getState();r?.(e,t),n?.(t)}});let{x:e,y:t,zoom:n}=D.current.getViewport();return x.setState({panZoom:D.current,transform:[e,t,n],domNode:S.current.closest(`.react-flow`)}),()=>{D.current?.destroy()}}},[]),(0,U.useEffect)(()=>{D.current?.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:r,panOnScrollSpeed:i,panOnScrollMode:a,zoomOnDoubleClick:o,panOnDrag:s,zoomActivationKeyPressed:E,preventScrolling:p,noPanClassName:g,userSelectionActive:C,noWheelClassName:h,lib:w,onTransformChange:O,connectionInProgress:T,selectionOnDrag:b,paneClickDistance:y})},[e,t,n,r,i,a,o,s,E,p,g,C,h,w,O,T,b,y]),(0,W.jsx)(`div`,{className:`react-flow__renderer`,ref:S,style:w7,children:m})}var GZe=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function KZe(){let{userSelectionActive:e,userSelectionRect:t}=h7(GZe,p7);return e&&t?(0,W.jsx)(`div`,{className:`react-flow__selection react-flow__container`,style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}var T7=(e,t)=>n=>{n.target===t.current&&e?.(n)},qZe=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging});function JZe({isSelecting:e,selectionKeyPressed:t,selectionMode:n=y5.Full,panOnDrag:r,paneClickDistance:i,selectionOnDrag:a,onSelectionStart:o,onSelectionEnd:s,onPaneClick:c,onPaneContextMenu:l,onPaneScroll:u,onPaneMouseEnter:d,onPaneMouseMove:f,onPaneMouseLeave:p,children:m}){let h=g7(),{userSelectionActive:g,elementsSelectable:_,dragging:v,connectionInProgress:y}=h7(qZe,p7),b=_&&(e||g),x=(0,U.useRef)(null),S=(0,U.useRef)(),C=(0,U.useRef)(new Set),w=(0,U.useRef)(new Set),T=(0,U.useRef)(!1),E=e=>{if(T.current||y){T.current=!1;return}c?.(e),h.getState().resetSelectedElements(),h.setState({nodesSelectionActive:!1})},D=e=>{if(Array.isArray(r)&&r?.includes(2)){e.preventDefault();return}l?.(e)},O=u?e=>u(e):void 0,k=e=>{T.current&&=(e.stopPropagation(),!1)},A=n=>{let{domNode:r}=h.getState();if(S.current=r?.getBoundingClientRect(),!S.current)return;let i=n.target===x.current;if(!i&&n.target.closest(`.nokey`)||!e||!(a&&i||t)||n.button!==0||!n.isPrimary)return;n.target?.setPointerCapture?.(n.pointerId),T.current=!1;let{x:o,y:s}=K5(n.nativeEvent,S.current);h.setState({userSelectionRect:{width:0,height:0,startX:o,startY:s,x:o,y:s}}),i||(n.stopPropagation(),n.preventDefault())},j=e=>{let{userSelectionRect:r,transform:a,nodeLookup:s,edgeLookup:c,connectionLookup:l,triggerNodeChanges:u,triggerEdgeChanges:d,defaultEdgeOptions:f,resetSelectedElements:p}=h.getState();if(!S.current||!r)return;let{x:m,y:g}=K5(e.nativeEvent,S.current),{startX:_,startY:v}=r;if(!T.current){let n=t?0:i;if(Math.hypot(m-_,g-v)<=n)return;p(),o?.(e)}T.current=!0;let y={startX:_,startY:v,x:m<_?m:_,y:g<v?g:v,width:Math.abs(m-_),height:Math.abs(g-v)},b=C.current,x=w.current;C.current=new Set(E5(s,y,a,n===y5.Partial,!0).map(e=>e.id)),w.current=new Set;let E=f?.selectable??!0;for(let e of C.current){let t=l.get(e);if(t)for(let{edgeId:e}of t.values()){let t=c.get(e);t&&(t.selectable??E)&&w.current.add(e)}}xYe(b,C.current)||u(S7(s,C.current,!0)),xYe(x,w.current)||d(S7(c,w.current)),h.setState({userSelectionRect:y,userSelectionActive:!0,nodesSelectionActive:!1})},M=e=>{e.button===0&&(e.target?.releasePointerCapture?.(e.pointerId),!g&&e.target===x.current&&h.getState().userSelectionRect&&E?.(e),h.setState({userSelectionActive:!1,userSelectionRect:null}),T.current&&(s?.(e),h.setState({nodesSelectionActive:C.current.size>0})))},N=r===!0||Array.isArray(r)&&r.includes(0);return(0,W.jsxs)(`div`,{className:S6([`react-flow__pane`,{draggable:N,dragging:v,selection:e}]),onClick:b?void 0:T7(E,x),onContextMenu:T7(D,x),onWheel:T7(O,x),onPointerEnter:b?void 0:d,onPointerMove:b?j:f,onPointerUp:b?M:void 0,onPointerDownCapture:b?A:void 0,onClickCapture:b?k:void 0,onPointerLeave:p,ref:x,style:w7,children:[m,(0,W.jsx)(KZe,{})]})}function E7({id:e,store:t,unselect:n=!1,nodeRef:r}){let{addSelectedNodes:i,unselectNodesAndEdges:a,multiSelectionActive:o,nodeLookup:s,onError:c}=t.getState(),l=s.get(e);if(!l){c?.(`012`,h5.error012(e));return}t.setState({nodesSelectionActive:!1}),l.selected?(n||l.selected&&o)&&(a({nodes:[l],edges:[]}),requestAnimationFrame(()=>r?.current?.blur())):i([e])}function YZe({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:i,isSelectable:a,nodeClickDistance:o}){let s=g7(),[c,l]=(0,U.useState)(!1),u=(0,U.useRef)();return(0,U.useEffect)(()=>{u.current=dXe({getStoreItems:()=>s.getState(),onNodeMouseDown:t=>{E7({id:t,store:s,nodeRef:e})},onDragStart:()=>{l(!0)},onDragStop:()=>{l(!1)}})},[]),(0,U.useEffect)(()=>{if(!(t||!e.current||!u.current))return u.current.update({noDragClassName:n,handleSelector:r,domNode:e.current,isSelectable:a,nodeId:i,nodeClickDistance:o}),()=>{u.current?.destroy()}},[n,r,t,a,e,i,o]),c}var XZe=e=>t=>t.selected&&(t.draggable||e&&t.draggable===void 0);function ZZe(){let e=g7();return(0,U.useCallback)(t=>{let{nodeExtent:n,snapToGrid:r,snapGrid:i,nodesDraggable:a,onError:o,updateNodePositions:s,nodeLookup:c,nodeOrigin:l}=e.getState(),u=new Map,d=XZe(a),f=r?i[0]:5,p=r?i[1]:5,m=t.direction.x*f*t.factor,h=t.direction.y*p*t.factor;for(let[,e]of c){if(!d(e))continue;let t={x:e.internals.positionAbsolute.x+m,y:e.internals.positionAbsolute.y+h};r&&(t=I5(t,i));let{position:a,positionAbsolute:s}=lYe({nodeId:e.id,nextPosition:t,nodeLookup:c,nodeExtent:n,nodeOrigin:l,onError:o});e.position=a,e.internals.positionAbsolute=s,u.set(e.id,e)}s(u)},[])}var D7=(0,U.createContext)(null),QZe=D7.Provider;D7.Consumer;var $Ze=()=>(0,U.useContext)(D7),eQe=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),tQe=(e,t,n)=>r=>{let{connectionClickStartHandle:i,connectionMode:a,connection:o}=r,{fromHandle:s,toHandle:c,isValid:l}=o,u=c?.nodeId===e&&c?.id===t&&c?.type===n;return{connectingFrom:s?.nodeId===e&&s?.id===t&&s?.type===n,connectingTo:u,clickConnecting:i?.nodeId===e&&i?.id===t&&i?.type===n,isPossibleEndHandle:a===_5.Strict?s?.type!==n:e!==s?.nodeId||t!==s?.id,connectionInProcess:!!s,clickConnectionInProcess:!!i,valid:u&&l}};function nQe({type:e=`source`,position:t=S5.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:i=!0,isConnectableEnd:a=!0,id:o,onConnect:s,children:c,className:l,onMouseDown:u,onTouchStart:d,...f},p){let m=o||null,h=e===`target`,g=g7(),_=$Ze(),{connectOnClick:v,noPanClassName:y,rfId:b}=h7(eQe,p7),{connectingFrom:x,connectingTo:S,clickConnecting:C,isPossibleEndHandle:w,connectionInProcess:T,clickConnectionInProcess:E,valid:D}=h7(tQe(_,m,e),p7);_||g.getState().onError?.(`010`,h5.error010());let O=e=>{let{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:r}=g.getState(),i={...t,...e};if(r){let{edges:e,setEdges:t}=g.getState();t(LYe(i,e))}n?.(i),s?.(i)},k=e=>{if(!_)return;let t=DYe(e.nativeEvent);if(i&&(t&&e.button===0||!t)){let t=g.getState();i7.onPointerDown(e.nativeEvent,{handleDomNode:e.currentTarget,autoPanOnConnect:t.autoPanOnConnect,connectionMode:t.connectionMode,connectionRadius:t.connectionRadius,domNode:t.domNode,nodeLookup:t.nodeLookup,lib:t.lib,isTarget:h,handleId:m,nodeId:_,flowId:t.rfId,panBy:t.panBy,cancelConnection:t.cancelConnection,onConnectStart:t.onConnectStart,onConnectEnd:(...e)=>g.getState().onConnectEnd?.(...e),updateConnection:t.updateConnection,onConnect:O,isValidConnection:n||((...e)=>g.getState().isValidConnection?.(...e)??!0),getTransform:()=>g.getState().transform,getFromHandle:()=>g.getState().connection.fromHandle,autoPanSpeed:t.autoPanSpeed,dragThreshold:t.connectionDragThreshold})}t?u?.(e):d?.(e)};return(0,W.jsx)(`div`,{"data-handleid":m,"data-nodeid":_,"data-handlepos":t,"data-id":`${b}-${_}-${m}-${e}`,className:S6([`react-flow__handle`,`react-flow__handle-${t}`,`nodrag`,y,l,{source:!h,target:h,connectable:r,connectablestart:i,connectableend:a,clickconnecting:C,connectingfrom:x,connectingto:S,valid:D,connectionindicator:r&&(!T||w)&&(T||E?a:i)}]),onMouseDown:k,onTouchStart:k,onClick:v?t=>{let{onClickConnectStart:r,onClickConnectEnd:a,connectionClickStartHandle:o,connectionMode:s,isValidConnection:c,lib:l,rfId:u,nodeLookup:d,connection:f}=g.getState();if(!_||!o&&!i)return;if(!o){r?.(t.nativeEvent,{nodeId:_,handleId:m,handleType:e}),g.setState({connectionClickStartHandle:{nodeId:_,type:e,id:m}});return}let p=wYe(t.target),h=n||c,{connection:v,isValid:y}=i7.isValid(t.nativeEvent,{handle:{nodeId:_,id:m,type:e},connectionMode:s,fromNodeId:o.nodeId,fromHandleId:o.id||null,fromType:o.type,isValidConnection:h,flowId:u,doc:p,lib:l,nodeLookup:d});y&&v&&O(v);let b=structuredClone(f);delete b.inProgress,b.toPosition=b.toHandle?b.toHandle.position:null,a?.(t,b),g.setState({connectionClickStartHandle:null})}:void 0,ref:p,...f,children:c})}var O7=(0,U.memo)(MZe(nQe));function rQe({data:e,isConnectable:t,sourcePosition:n=S5.Bottom}){return(0,W.jsxs)(W.Fragment,{children:[e?.label,(0,W.jsx)(O7,{type:`source`,position:n,isConnectable:t})]})}function iQe({data:e,isConnectable:t,targetPosition:n=S5.Top,sourcePosition:r=S5.Bottom}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(O7,{type:`target`,position:n,isConnectable:t}),e?.label,(0,W.jsx)(O7,{type:`source`,position:r,isConnectable:t})]})}function aQe(){return null}function oQe({data:e,isConnectable:t,targetPosition:n=S5.Top}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(O7,{type:`target`,position:n,isConnectable:t}),e?.label]})}var k7={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},sQe={input:rQe,default:iQe,output:oQe,group:aQe};function cQe(e){return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??e.style?.width,height:e.height??e.initialHeight??e.style?.height}:{width:e.width??e.style?.width,height:e.height??e.style?.height}}var lQe=e=>{let{width:t,height:n,x:r,y:i}=T5(e.nodeLookup,{filter:e=>!!e.selected});return{width:F5(t)?t:null,height:F5(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${r}px,${i}px)`}};function uQe({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){let r=g7(),{width:i,height:a,transformString:o,userSelectionActive:s}=h7(lQe,p7),c=ZZe(),l=(0,U.useRef)(null);(0,U.useEffect)(()=>{n||l.current?.focus({preventScroll:!0})},[n]);let u=!s&&i!==null&&a!==null;if(YZe({nodeRef:l,disabled:!u}),!u)return null;let d=e?t=>{e(t,r.getState().nodes.filter(e=>e.selected))}:void 0;return(0,W.jsx)(`div`,{className:S6([`react-flow__nodesselection`,`react-flow__container`,t]),style:{transform:o},children:(0,W.jsx)(`div`,{ref:l,className:`react-flow__nodesselection-rect`,onContextMenu:d,tabIndex:n?void 0:-1,onKeyDown:n?void 0:e=>{Object.prototype.hasOwnProperty.call(k7,e.key)&&(e.preventDefault(),c({direction:k7[e.key],factor:e.shiftKey?4:1}))},style:{width:i,height:a}})})}var dQe=typeof window<`u`?window:void 0,fQe=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function pQe({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:o,paneClickDistance:s,deleteKeyCode:c,selectionKeyCode:l,selectionOnDrag:u,selectionMode:d,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:m,panActivationKeyCode:h,zoomActivationKeyCode:g,elementsSelectable:_,zoomOnScroll:v,zoomOnPinch:y,panOnScroll:b,panOnScrollSpeed:x,panOnScrollMode:S,zoomOnDoubleClick:C,panOnDrag:w,defaultViewport:T,translateExtent:E,minZoom:D,maxZoom:O,preventScrolling:k,onSelectionContextMenu:A,noWheelClassName:j,noPanClassName:M,disableKeyboardA11y:N,onViewportChange:P,isControlledViewport:F}){let{nodesSelectionActive:I,userSelectionActive:L}=h7(fQe,p7),R=b7(l,{target:dQe}),z=b7(h,{target:dQe}),B=z||w,ee=z||b,te=u&&B!==!0,ne=R||L||te;return VZe({deleteKeyCode:c,multiSelectionKeyCode:m}),(0,W.jsx)(WZe,{onPaneContextMenu:a,elementsSelectable:_,zoomOnScroll:v,zoomOnPinch:y,panOnScroll:ee,panOnScrollSpeed:x,panOnScrollMode:S,zoomOnDoubleClick:C,panOnDrag:!R&&B,defaultViewport:T,translateExtent:E,minZoom:D,maxZoom:O,zoomActivationKeyCode:g,preventScrolling:k,noWheelClassName:j,noPanClassName:M,onViewportChange:P,isControlledViewport:F,paneClickDistance:s,selectionOnDrag:te,children:(0,W.jsxs)(JZe,{onSelectionStart:f,onSelectionEnd:p,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:a,onPaneScroll:o,panOnDrag:B,isSelecting:!!ne,selectionMode:d,selectionKeyPressed:R,paneClickDistance:s,selectionOnDrag:te,children:[e,I&&(0,W.jsx)(uQe,{onSelectionContextMenu:A,noPanClassName:M,disableKeyboardA11y:N})]})})}pQe.displayName=`FlowRenderer`;var mQe=(0,U.memo)(pQe),hQe=e=>t=>e?E5(t.nodeLookup,{x:0,y:0,width:t.width,height:t.height},t.transform,!0).map(e=>e.id):Array.from(t.nodeLookup.keys());function gQe(e){return h7((0,U.useCallback)(hQe(e),[e]),p7)}var _Qe=e=>e.updateNodeInternals;function vQe(){let e=h7(_Qe),[t]=(0,U.useState)(()=>typeof ResizeObserver>`u`?null:new ResizeObserver(t=>{let n=new Map;t.forEach(e=>{let t=e.target.getAttribute(`data-id`);n.set(t,{id:t,nodeElement:e.target,force:!0})}),e(n)}));return(0,U.useEffect)(()=>()=>{t?.disconnect()},[t]),t}function yQe({node:e,nodeType:t,hasDimensions:n,resizeObserver:r}){let i=g7(),a=(0,U.useRef)(null),o=(0,U.useRef)(null),s=(0,U.useRef)(e.sourcePosition),c=(0,U.useRef)(e.targetPosition),l=(0,U.useRef)(t),u=n&&!!e.internals.handleBounds;return(0,U.useEffect)(()=>{a.current&&!e.hidden&&(!u||o.current!==a.current)&&(o.current&&r?.unobserve(o.current),r?.observe(a.current),o.current=a.current)},[u,e.hidden]),(0,U.useEffect)(()=>()=>{o.current&&=(r?.unobserve(o.current),null)},[]),(0,U.useEffect)(()=>{if(a.current){let n=l.current!==t,r=s.current!==e.sourcePosition,o=c.current!==e.targetPosition;(n||r||o)&&(l.current=t,s.current=e.sourcePosition,c.current=e.targetPosition,i.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:a.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),a}function bQe({id:e,onClick:t,onMouseEnter:n,onMouseMove:r,onMouseLeave:i,onContextMenu:a,onDoubleClick:o,nodesDraggable:s,elementsSelectable:c,nodesConnectable:l,nodesFocusable:u,resizeObserver:d,noDragClassName:f,noPanClassName:p,disableKeyboardA11y:m,rfId:h,nodeTypes:g,nodeClickDistance:_,onError:v}){let{node:y,internals:b,isParent:x}=h7(t=>{let n=t.nodeLookup.get(e),r=t.parentLookup.has(e);return{node:n,internals:n.internals,isParent:r}},p7),S=y.type||`default`,C=g?.[S]||sQe[S];C===void 0&&(v?.(`003`,h5.error003(S)),S=`default`,C=g?.default||sQe.default);let w=!!(y.draggable||s&&y.draggable===void 0),T=!!(y.selectable||c&&y.selectable===void 0),E=!!(y.connectable||l&&y.connectable===void 0),D=!!(y.focusable||u&&y.focusable===void 0),O=g7(),k=yYe(y),A=yQe({node:y,nodeType:S,hasDimensions:k,resizeObserver:d}),j=YZe({nodeRef:A,disabled:y.hidden||!w,noDragClassName:f,handleSelector:y.dragHandle,nodeId:e,isSelectable:T,nodeClickDistance:_}),M=ZZe();if(y.hidden)return null;let N=U5(y),P=cQe(y),F=T||w||t||n||r||i,I=n?e=>n(e,{...b.userNode}):void 0,L=r?e=>r(e,{...b.userNode}):void 0,R=i?e=>i(e,{...b.userNode}):void 0,z=a?e=>a(e,{...b.userNode}):void 0,B=o?e=>o(e,{...b.userNode}):void 0,ee=n=>{let{selectNodesOnDrag:r,nodeDragThreshold:i}=O.getState();T&&(!r||!w||i>0)&&E7({id:e,store:O,nodeRef:A}),t&&t(n,{...b.userNode})},te=t=>{if(!(EYe(t.nativeEvent)||m)){if(QJe.includes(t.key)&&T){let n=t.key===`Escape`;E7({id:e,store:O,unselect:n,nodeRef:A})}else if(w&&y.selected&&Object.prototype.hasOwnProperty.call(k7,t.key)){t.preventDefault();let{ariaLabelConfig:e}=O.getState();O.setState({ariaLiveMessage:e[`node.a11yDescription.ariaLiveMessage`]({direction:t.key.replace(`Arrow`,``).toLowerCase(),x:~~b.positionAbsolute.x,y:~~b.positionAbsolute.y})}),M({direction:k7[t.key],factor:t.shiftKey?4:1})}}},ne=()=>{if(m||!A.current?.matches(`:focus-visible`))return;let{transform:t,width:n,height:r,autoPanOnNodeFocus:i,setCenter:a}=O.getState();i&&(E5(new Map([[e,y]]),{x:0,y:0,width:n,height:r},t,!0).length>0||a(y.position.x+N.width/2,y.position.y+N.height/2,{zoom:t[2]}))};return(0,W.jsx)(`div`,{className:S6([`react-flow__node`,`react-flow__node-${S}`,{[p]:w},y.className,{selected:y.selected,selectable:T,parent:x,draggable:w,dragging:j}]),ref:A,style:{zIndex:b.z,transform:`translate(${b.positionAbsolute.x}px,${b.positionAbsolute.y}px)`,pointerEvents:F?`all`:`none`,visibility:k?`visible`:`hidden`,...y.style,...P},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:I,onMouseMove:L,onMouseLeave:R,onContextMenu:z,onClick:ee,onDoubleClick:B,onKeyDown:D?te:void 0,tabIndex:D?0:void 0,onFocus:D?ne:void 0,role:y.ariaRole??(D?`group`:void 0),"aria-roledescription":`node`,"aria-describedby":m?void 0:`${$Xe}-${h}`,"aria-label":y.ariaLabel,...y.domAttributes,children:(0,W.jsx)(QZe,{value:e,children:(0,W.jsx)(C,{id:e,data:y.data,type:S,positionAbsoluteX:b.positionAbsolute.x,positionAbsoluteY:b.positionAbsolute.y,selected:y.selected??!1,selectable:T,draggable:w,deletable:y.deletable??!0,isConnectable:E,sourcePosition:y.sourcePosition,targetPosition:y.targetPosition,dragging:j,dragHandle:y.dragHandle,zIndex:b.z,parentId:y.parentId,...N})})})}var xQe=(0,U.memo)(bQe),SQe=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function CQe(e){let{nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:i,onError:a}=h7(SQe,p7),o=gQe(e.onlyRenderVisibleElements),s=vQe();return(0,W.jsx)(`div`,{className:`react-flow__nodes`,style:w7,children:o.map(o=>(0,W.jsx)(xQe,{id:o,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:s,nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:i,nodeClickDistance:e.nodeClickDistance,onError:a},o))})}CQe.displayName=`NodeRenderer`;var wQe=(0,U.memo)(CQe);function TQe(e){return h7((0,U.useCallback)(t=>{if(!e)return t.edges.map(e=>e.id);let n=[];if(t.width&&t.height)for(let e of t.edges){let r=t.nodeLookup.get(e.source),i=t.nodeLookup.get(e.target);r&&i&&PYe({sourceNode:r,targetNode:i,width:t.width,height:t.height,transform:t.transform})&&n.push(e.id)}return n},[e]),p7)}var EQe=({color:e=`none`,strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e}};return(0,W.jsx)(`polyline`,{className:`arrow`,style:n,strokeLinecap:`round`,fill:`none`,strokeLinejoin:`round`,points:`-5,-4 0,0 -5,4`})},DQe=({color:e=`none`,strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e,fill:e}};return(0,W.jsx)(`polyline`,{className:`arrowclosed`,style:n,strokeLinecap:`round`,strokeLinejoin:`round`,points:`-5,-4 0,0 -5,4 -5,-4`})},OQe={[x5.Arrow]:EQe,[x5.ArrowClosed]:DQe};function kQe(e){let t=g7();return(0,U.useMemo)(()=>Object.prototype.hasOwnProperty.call(OQe,e)?OQe[e]:(t.getState().onError?.(`009`,h5.error009(e)),null),[e])}var AQe=({id:e,type:t,color:n,width:r=12.5,height:i=12.5,markerUnits:a=`strokeWidth`,strokeWidth:o,orient:s=`auto-start-reverse`})=>{let c=kQe(t);return c?(0,W.jsx)(`marker`,{className:`react-flow__arrowhead`,id:e,markerWidth:`${r}`,markerHeight:`${i}`,viewBox:`-10 -10 20 20`,markerUnits:a,orient:s,refX:`0`,refY:`0`,children:(0,W.jsx)(c,{color:n,strokeWidth:o})}):null},jQe=({defaultColor:e,rfId:t})=>{let n=h7(e=>e.edges),r=h7(e=>e.defaultEdgeOptions),i=(0,U.useMemo)(()=>JYe(n,{id:t,defaultColor:e,defaultMarkerStart:r?.markerStart,defaultMarkerEnd:r?.markerEnd}),[n,r,t,e]);return i.length?(0,W.jsx)(`svg`,{className:`react-flow__marker`,"aria-hidden":`true`,children:(0,W.jsx)(`defs`,{children:i.map(e=>(0,W.jsx)(AQe,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})}):null};jQe.displayName=`MarkerDefinitions`;var MQe=(0,U.memo)(jQe);function NQe({x:e,y:t,label:n,labelStyle:r,labelShowBg:i=!0,labelBgStyle:a,labelBgPadding:o=[2,4],labelBgBorderRadius:s=2,children:c,className:l,...u}){let[d,f]=(0,U.useState)({x:1,y:0,width:0,height:0}),p=S6([`react-flow__edge-textwrapper`,l]),m=(0,U.useRef)(null);return(0,U.useEffect)(()=>{if(m.current){let e=m.current.getBBox();f({x:e.x,y:e.y,width:e.width,height:e.height})}},[n]),n?(0,W.jsxs)(`g`,{transform:`translate(${e-d.width/2} ${t-d.height/2})`,className:p,visibility:d.width?`visible`:`hidden`,...u,children:[i&&(0,W.jsx)(`rect`,{width:d.width+2*o[0],x:-o[0],y:-o[1],height:d.height+2*o[1],className:`react-flow__edge-textbg`,style:a,rx:s,ry:s}),(0,W.jsx)(`text`,{className:`react-flow__edge-text`,y:d.height/2,dy:`0.3em`,ref:m,style:r,children:n}),c]}):null}NQe.displayName=`EdgeText`;var PQe=(0,U.memo)(NQe);function A7({path:e,labelX:t,labelY:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:o,labelBgPadding:s,labelBgBorderRadius:c,interactionWidth:l=20,...u}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`path`,{...u,d:e,fill:`none`,className:S6([`react-flow__edge-path`,u.className])}),l?(0,W.jsx)(`path`,{d:e,fill:`none`,strokeOpacity:0,strokeWidth:l,className:`react-flow__edge-interaction`}):null,r&&F5(t)&&F5(n)?(0,W.jsx)(PQe,{x:t,y:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:o,labelBgPadding:s,labelBgBorderRadius:c}):null]})}function FQe({pos:e,x1:t,y1:n,x2:r,y2:i}){return e===S5.Left||e===S5.Right?[.5*(t+r),n]:[t,.5*(n+i)]}function IQe({sourceX:e,sourceY:t,sourcePosition:n=S5.Bottom,targetX:r,targetY:i,targetPosition:a=S5.Top}){let[o,s]=FQe({pos:n,x1:e,y1:t,x2:r,y2:i}),[c,l]=FQe({pos:a,x1:r,y1:i,x2:e,y2:t}),[u,d,f,p]=kYe({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:o,sourceControlY:s,targetControlX:c,targetControlY:l});return[`M${e},${t} C${o},${s} ${c},${l} ${r},${i}`,u,d,f,p]}function LQe(e){return(0,U.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,sourcePosition:o,targetPosition:s,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:_})=>{let[v,y,b]=IQe({sourceX:n,sourceY:r,sourcePosition:o,targetX:i,targetY:a,targetPosition:s}),x=e.isInternal?void 0:t;return(0,W.jsx)(A7,{id:x,path:v,labelX:y,labelY:b,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:_})})}var RQe=LQe({isInternal:!1}),zQe=LQe({isInternal:!0});RQe.displayName=`SimpleBezierEdge`,zQe.displayName=`SimpleBezierEdgeInternal`;function BQe(e){return(0,U.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,sourcePosition:p=S5.Bottom,targetPosition:m=S5.Top,markerEnd:h,markerStart:g,pathOptions:_,interactionWidth:v})=>{let[y,b,x]=J5({sourceX:n,sourceY:r,sourcePosition:p,targetX:i,targetY:a,targetPosition:m,borderRadius:_?.borderRadius,offset:_?.offset,stepPosition:_?.stepPosition}),S=e.isInternal?void 0:t;return(0,W.jsx)(A7,{id:S,path:y,labelX:b,labelY:x,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:g,interactionWidth:v})})}var VQe=BQe({isInternal:!1}),HQe=BQe({isInternal:!0});VQe.displayName=`SmoothStepEdge`,HQe.displayName=`SmoothStepEdgeInternal`;function UQe(e){return(0,U.memo)(({id:t,...n})=>{let r=e.isInternal?void 0:t;return(0,W.jsx)(VQe,{...n,id:r,pathOptions:(0,U.useMemo)(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}var WQe=UQe({isInternal:!1}),GQe=UQe({isInternal:!0});WQe.displayName=`StepEdge`,GQe.displayName=`StepEdgeInternal`;function KQe(e){return(0,U.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:p,markerStart:m,interactionWidth:h})=>{let[g,_,v]=RYe({sourceX:n,sourceY:r,targetX:i,targetY:a}),y=e.isInternal?void 0:t;return(0,W.jsx)(A7,{id:y,path:g,labelX:_,labelY:v,label:o,labelStyle:s,labelShowBg:c,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:p,markerStart:m,interactionWidth:h})})}var qQe=KQe({isInternal:!1}),JQe=KQe({isInternal:!0});qQe.displayName=`StraightEdge`,JQe.displayName=`StraightEdgeInternal`;function YQe(e){return(0,U.memo)(({id:t,sourceX:n,sourceY:r,targetX:i,targetY:a,sourcePosition:o=S5.Bottom,targetPosition:s=S5.Top,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,pathOptions:_,interactionWidth:v})=>{let[y,b,x]=jYe({sourceX:n,sourceY:r,sourcePosition:o,targetX:i,targetY:a,targetPosition:s,curvature:_?.curvature}),S=e.isInternal?void 0:t;return(0,W.jsx)(A7,{id:S,path:y,labelX:b,labelY:x,label:c,labelStyle:l,labelShowBg:u,labelBgStyle:d,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:h,markerStart:g,interactionWidth:v})})}var XQe=YQe({isInternal:!1}),ZQe=YQe({isInternal:!0});XQe.displayName=`BezierEdge`,ZQe.displayName=`BezierEdgeInternal`;var QQe={default:ZQe,straight:JQe,step:GQe,smoothstep:HQe,simplebezier:zQe},$Qe={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},e$e=(e,t,n)=>n===S5.Left?e-t:n===S5.Right?e+t:e,t$e=(e,t,n)=>n===S5.Top?e-t:n===S5.Bottom?e+t:e,n$e=`react-flow__edgeupdater`;function r$e({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:i,onMouseEnter:a,onMouseOut:o,type:s}){return(0,W.jsx)(`circle`,{onMouseDown:i,onMouseEnter:a,onMouseOut:o,className:S6([n$e,`${n$e}-${s}`]),cx:e$e(t,r,e),cy:t$e(n,r,e),r,stroke:`transparent`,fill:`transparent`})}function i$e({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:r,sourceY:i,targetX:a,targetY:o,sourcePosition:s,targetPosition:c,onReconnect:l,onReconnectStart:u,onReconnectEnd:d,setReconnecting:f,setUpdateHover:p}){let m=g7(),h=(e,t)=>{if(e.button!==0)return;let{autoPanOnConnect:r,domNode:i,connectionMode:a,connectionRadius:o,lib:s,onConnectStart:c,cancelConnection:p,nodeLookup:h,rfId:g,panBy:_,updateConnection:v}=m.getState(),y=t.type===`target`;i7.onPointerDown(e.nativeEvent,{autoPanOnConnect:r,connectionMode:a,connectionRadius:o,domNode:i,handleId:t.id,nodeId:t.nodeId,nodeLookup:h,isTarget:y,edgeUpdaterType:t.type,lib:s,flowId:g,cancelConnection:p,panBy:_,isValidConnection:(...e)=>m.getState().isValidConnection?.(...e)??!0,onConnect:e=>l?.(n,e),onConnectStart:(r,i)=>{f(!0),u?.(e,n,t.type),c?.(r,i)},onConnectEnd:(...e)=>m.getState().onConnectEnd?.(...e),onReconnectEnd:(e,r)=>{f(!1),d?.(e,n,t.type,r)},updateConnection:v,getTransform:()=>m.getState().transform,getFromHandle:()=>m.getState().connection.fromHandle,dragThreshold:m.getState().connectionDragThreshold,handleDomNode:e.currentTarget})},g=e=>h(e,{nodeId:n.target,id:n.targetHandle??null,type:`target`}),_=e=>h(e,{nodeId:n.source,id:n.sourceHandle??null,type:`source`}),v=()=>p(!0),y=()=>p(!1);return(0,W.jsxs)(W.Fragment,{children:[(e===!0||e===`source`)&&(0,W.jsx)(r$e,{position:s,centerX:r,centerY:i,radius:t,onMouseDown:g,onMouseEnter:v,onMouseOut:y,type:`source`}),(e===!0||e===`target`)&&(0,W.jsx)(r$e,{position:c,centerX:a,centerY:o,radius:t,onMouseDown:_,onMouseEnter:v,onMouseOut:y,type:`target`})]})}function a$e({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:r,onClick:i,onDoubleClick:a,onContextMenu:o,onMouseEnter:s,onMouseMove:c,onMouseLeave:l,reconnectRadius:u,onReconnect:d,onReconnectStart:f,onReconnectEnd:p,rfId:m,edgeTypes:h,noPanClassName:g,onError:_,disableKeyboardA11y:v}){let y=h7(t=>t.edgeLookup.get(e)),b=h7(e=>e.defaultEdgeOptions);y=b?{...b,...y}:y;let x=y.type||`default`,S=h?.[x]||QQe[x];S===void 0&&(_?.(`011`,h5.error011(x)),x=`default`,S=h?.default||QQe.default);let C=!!(y.focusable||t&&y.focusable===void 0),w=d!==void 0&&(y.reconnectable||n&&y.reconnectable===void 0),T=!!(y.selectable||r&&y.selectable===void 0),E=(0,U.useRef)(null),[D,O]=(0,U.useState)(!1),[k,A]=(0,U.useState)(!1),j=g7(),{zIndex:M,sourceX:N,sourceY:P,targetX:F,targetY:I,sourcePosition:L,targetPosition:R}=h7((0,U.useCallback)(t=>{let n=t.nodeLookup.get(y.source),r=t.nodeLookup.get(y.target);if(!n||!r)return{zIndex:y.zIndex,...$Qe};let i=GYe({id:e,sourceNode:n,targetNode:r,sourceHandle:y.sourceHandle||null,targetHandle:y.targetHandle||null,connectionMode:t.connectionMode,onError:_});return{zIndex:NYe({selected:y.selected,zIndex:y.zIndex,sourceNode:n,targetNode:r,elevateOnSelect:t.elevateEdgesOnSelect,zIndexMode:t.zIndexMode}),...i||$Qe}},[y.source,y.target,y.sourceHandle,y.targetHandle,y.selected,y.zIndex]),p7),z=(0,U.useMemo)(()=>y.markerStart?`url('#${X5(y.markerStart,m)}')`:void 0,[y.markerStart,m]),B=(0,U.useMemo)(()=>y.markerEnd?`url('#${X5(y.markerEnd,m)}')`:void 0,[y.markerEnd,m]);if(y.hidden||N===null||P===null||F===null||I===null)return null;let ee=t=>{let{addSelectedEdges:n,unselectNodesAndEdges:r,multiSelectionActive:a}=j.getState();T&&(j.setState({nodesSelectionActive:!1}),y.selected&&a?(r({nodes:[],edges:[y]}),E.current?.blur()):n([e])),i&&i(t,y)},te=a?e=>{a(e,{...y})}:void 0,ne=o?e=>{o(e,{...y})}:void 0,re=s?e=>{s(e,{...y})}:void 0,V=c?e=>{c(e,{...y})}:void 0,ie=l?e=>{l(e,{...y})}:void 0;return(0,W.jsx)(`svg`,{style:{zIndex:M},children:(0,W.jsxs)(`g`,{className:S6([`react-flow__edge`,`react-flow__edge-${x}`,y.className,g,{selected:y.selected,animated:y.animated,inactive:!T&&!i,updating:D,selectable:T}]),onClick:ee,onDoubleClick:te,onContextMenu:ne,onMouseEnter:re,onMouseMove:V,onMouseLeave:ie,onKeyDown:C?t=>{if(!v&&QJe.includes(t.key)&&T){let{unselectNodesAndEdges:n,addSelectedEdges:r}=j.getState();t.key===`Escape`?(E.current?.blur(),n({edges:[y]})):r([e])}}:void 0,tabIndex:C?0:void 0,role:y.ariaRole??(C?`group`:`img`),"aria-roledescription":`edge`,"data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":y.ariaLabel===null?void 0:y.ariaLabel||`Edge from ${y.source} to ${y.target}`,"aria-describedby":C?`${eZe}-${m}`:void 0,ref:E,...y.domAttributes,children:[!k&&(0,W.jsx)(S,{id:e,source:y.source,target:y.target,type:y.type,selected:y.selected,animated:y.animated,selectable:T,deletable:y.deletable??!0,label:y.label,labelStyle:y.labelStyle,labelShowBg:y.labelShowBg,labelBgStyle:y.labelBgStyle,labelBgPadding:y.labelBgPadding,labelBgBorderRadius:y.labelBgBorderRadius,sourceX:N,sourceY:P,targetX:F,targetY:I,sourcePosition:L,targetPosition:R,data:y.data,style:y.style,sourceHandleId:y.sourceHandle,targetHandleId:y.targetHandle,markerStart:z,markerEnd:B,pathOptions:`pathOptions`in y?y.pathOptions:void 0,interactionWidth:y.interactionWidth}),w&&(0,W.jsx)(i$e,{edge:y,isReconnectable:w,reconnectRadius:u,onReconnect:d,onReconnectStart:f,onReconnectEnd:p,sourceX:N,sourceY:P,targetX:F,targetY:I,sourcePosition:L,targetPosition:R,setUpdateHover:O,setReconnecting:A})]})})}var o$e=(0,U.memo)(a$e),s$e=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function c$e({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:r,noPanClassName:i,onReconnect:a,onEdgeContextMenu:o,onEdgeMouseEnter:s,onEdgeMouseMove:c,onEdgeMouseLeave:l,onEdgeClick:u,reconnectRadius:d,onEdgeDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,disableKeyboardA11y:h}){let{edgesFocusable:g,edgesReconnectable:_,elementsSelectable:v,onError:y}=h7(s$e,p7),b=TQe(t);return(0,W.jsxs)(`div`,{className:`react-flow__edges`,children:[(0,W.jsx)(MQe,{defaultColor:e,rfId:n}),b.map(e=>(0,W.jsx)(o$e,{id:e,edgesFocusable:g,edgesReconnectable:_,elementsSelectable:v,noPanClassName:i,onReconnect:a,onContextMenu:o,onMouseEnter:s,onMouseMove:c,onMouseLeave:l,onClick:u,reconnectRadius:d,onDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,rfId:n,onError:y,edgeTypes:r,disableKeyboardA11y:h},e))]})}c$e.displayName=`EdgeRenderer`;var l$e=(0,U.memo)(c$e),u$e=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function d$e({children:e}){let t=h7(u$e);return(0,W.jsx)(`div`,{className:`react-flow__viewport xyflow__viewport react-flow__container`,style:{transform:t},children:e})}function f$e(e){let t=C7(),n=(0,U.useRef)(!1);(0,U.useEffect)(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}var p$e=e=>e.panZoom?.syncViewport;function m$e(e){let t=h7(p$e),n=g7();return(0,U.useEffect)(()=>{e&&(t?.(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t]),null}function h$e(e){return e.connection.inProgress?{...e.connection,to:L5(e.connection.to,e.transform)}:{...e.connection}}function g$e(e){return e?t=>e(h$e(t)):h$e}function _$e(e){return h7(g$e(e),p7)}var v$e=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function y$e({containerStyle:e,style:t,type:n,component:r}){let{nodesConnectable:i,width:a,height:o,isValid:s,inProgress:c}=h7(v$e,p7);return a&&i&&c?(0,W.jsx)(`svg`,{style:e,width:a,height:o,className:`react-flow__connectionline react-flow__container`,children:(0,W.jsx)(`g`,{className:S6([`react-flow__connection`,nYe(s)]),children:(0,W.jsx)(b$e,{style:t,type:n,CustomComponent:r,isValid:s})})}):null}var b$e=({style:e,type:t=b5.Bezier,CustomComponent:n,isValid:r})=>{let{inProgress:i,from:a,fromNode:o,fromHandle:s,fromPosition:c,to:l,toNode:u,toHandle:d,toPosition:f,pointer:p}=_$e();if(!i)return;if(n)return(0,W.jsx)(n,{connectionLineType:t,connectionLineStyle:e,fromNode:o,fromHandle:s,fromX:a.x,fromY:a.y,toX:l.x,toY:l.y,fromPosition:c,toPosition:f,connectionStatus:nYe(r),toNode:u,toHandle:d,pointer:p});let m=``,h={sourceX:a.x,sourceY:a.y,sourcePosition:c,targetX:l.x,targetY:l.y,targetPosition:f};switch(t){case b5.Bezier:[m]=jYe(h);break;case b5.SimpleBezier:[m]=IQe(h);break;case b5.Step:[m]=J5({...h,borderRadius:0});break;case b5.SmoothStep:[m]=J5(h);break;default:[m]=RYe(h)}return(0,W.jsx)(`path`,{d:m,fill:`none`,className:`react-flow__connection-path`,style:e})};b$e.displayName=`ConnectionLine`;var x$e={};function S$e(e=x$e){(0,U.useRef)(e),g7(),(0,U.useEffect)(()=>{},[e])}function C$e(){g7(),(0,U.useRef)(!1),(0,U.useEffect)(()=>{},[])}function w$e({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:r,onEdgeClick:i,onNodeDoubleClick:a,onEdgeDoubleClick:o,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:l,onNodeContextMenu:u,onSelectionContextMenu:d,onSelectionStart:f,onSelectionEnd:p,connectionLineType:m,connectionLineStyle:h,connectionLineComponent:g,connectionLineContainerStyle:_,selectionKeyCode:v,selectionOnDrag:y,selectionMode:b,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:C,deleteKeyCode:w,onlyRenderVisibleElements:T,elementsSelectable:E,defaultViewport:D,translateExtent:O,minZoom:k,maxZoom:A,preventScrolling:j,defaultMarkerColor:M,zoomOnScroll:N,zoomOnPinch:P,panOnScroll:F,panOnScrollSpeed:I,panOnScrollMode:L,zoomOnDoubleClick:R,panOnDrag:z,onPaneClick:B,onPaneMouseEnter:ee,onPaneMouseMove:te,onPaneMouseLeave:ne,onPaneScroll:re,onPaneContextMenu:V,paneClickDistance:ie,nodeClickDistance:ae,onEdgeContextMenu:oe,onEdgeMouseEnter:se,onEdgeMouseMove:ce,onEdgeMouseLeave:le,reconnectRadius:ue,onReconnect:de,onReconnectStart:fe,onReconnectEnd:pe,noDragClassName:me,noWheelClassName:he,noPanClassName:ge,disableKeyboardA11y:_e,nodeExtent:ve,rfId:ye,viewport:be,onViewportChange:xe}){return S$e(e),S$e(t),C$e(),f$e(n),m$e(be),(0,W.jsx)(mQe,{onPaneClick:B,onPaneMouseEnter:ee,onPaneMouseMove:te,onPaneMouseLeave:ne,onPaneContextMenu:V,onPaneScroll:re,paneClickDistance:ie,deleteKeyCode:w,selectionKeyCode:v,selectionOnDrag:y,selectionMode:b,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:C,elementsSelectable:E,zoomOnScroll:N,zoomOnPinch:P,zoomOnDoubleClick:R,panOnScroll:F,panOnScrollSpeed:I,panOnScrollMode:L,panOnDrag:z,defaultViewport:D,translateExtent:O,minZoom:k,maxZoom:A,onSelectionContextMenu:d,preventScrolling:j,noDragClassName:me,noWheelClassName:he,noPanClassName:ge,disableKeyboardA11y:_e,onViewportChange:xe,isControlledViewport:!!be,children:(0,W.jsxs)(d$e,{children:[(0,W.jsx)(l$e,{edgeTypes:t,onEdgeClick:i,onEdgeDoubleClick:o,onReconnect:de,onReconnectStart:fe,onReconnectEnd:pe,onlyRenderVisibleElements:T,onEdgeContextMenu:oe,onEdgeMouseEnter:se,onEdgeMouseMove:ce,onEdgeMouseLeave:le,reconnectRadius:ue,defaultMarkerColor:M,noPanClassName:ge,disableKeyboardA11y:_e,rfId:ye}),(0,W.jsx)(y$e,{style:h,type:m,component:g,containerStyle:_}),(0,W.jsx)(`div`,{className:`react-flow__edgelabel-renderer`}),(0,W.jsx)(wQe,{nodeTypes:e,onNodeClick:r,onNodeDoubleClick:a,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:l,onNodeContextMenu:u,nodeClickDistance:ae,onlyRenderVisibleElements:T,noPanClassName:ge,noDragClassName:me,disableKeyboardA11y:_e,nodeExtent:ve,rfId:ye}),(0,W.jsx)(`div`,{className:`react-flow__viewport-portal`})]})})}w$e.displayName=`GraphView`;var T$e=(0,U.memo)(w$e),E$e=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c=.5,maxZoom:l=2,nodeOrigin:u,nodeExtent:d,zIndexMode:f=`basic`}={})=>{let p=new Map,m=new Map,h=new Map,g=new Map,_=r??t??[],v=n??e??[],y=u??[0,0],b=d??g5;oXe(h,g,_);let{nodesInitialized:x}=e7(v,p,m,{nodeOrigin:y,nodeExtent:b,zIndexMode:f}),S=[0,0,1];if(o&&i&&a){let{x:e,y:t,zoom:n}=B5(T5(p,{filter:e=>!!((e.width||e.initialWidth)&&(e.height||e.initialHeight))}),i,a,c,l,s?.padding??.1);S=[e,t,n]}return{rfId:`1`,width:i??0,height:a??0,transform:S,nodes:v,nodesInitialized:x,nodeLookup:p,parentLookup:m,edges:_,edgeLookup:g,connectionLookup:h,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:r!==void 0,panZoom:null,minZoom:c,maxZoom:l,translateExtent:g5,nodeExtent:b,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:_5.Strict,domNode:null,paneDragging:!1,noPanClassName:`nopan`,nodeOrigin:y,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:o??!1,fitViewOptions:s,fitViewResolver:null,connection:{...eYe},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:``,autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:gYe,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:`react`,debug:!1,ariaLabelConfig:$Je,zIndexMode:f,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},D$e=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c,maxZoom:l,nodeOrigin:u,nodeExtent:d,zIndexMode:f})=>JXe((p,m)=>{async function h(){let{nodeLookup:e,panZoom:t,fitViewOptions:n,fitViewResolver:r,width:i,height:a,minZoom:o,maxZoom:s}=m();t&&(await cYe({nodes:e,width:i,height:a,panZoom:t,minZoom:o,maxZoom:s},n),r?.resolve(!0),p({fitViewResolver:null}))}return{...E$e({nodes:e,edges:t,width:i,height:a,fitView:o,fitViewOptions:s,minZoom:c,maxZoom:l,nodeOrigin:u,nodeExtent:d,defaultNodes:n,defaultEdges:r,zIndexMode:f}),setNodes:e=>{let{nodeLookup:t,parentLookup:n,nodeOrigin:r,elevateNodesOnSelect:i,fitViewQueued:a,zIndexMode:o,nodesSelectionActive:s}=m(),{nodesInitialized:c,hasSelectedNodes:l}=e7(e,t,n,{nodeOrigin:r,nodeExtent:d,elevateNodesOnSelect:i,checkEquality:!0,zIndexMode:o}),u=s&&l;a&&c?(h(),p({nodes:e,nodesInitialized:c,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:u})):p({nodes:e,nodesInitialized:c,nodesSelectionActive:u})},setEdges:e=>{let{connectionLookup:t,edgeLookup:n}=m();oXe(t,n,e),p({edges:e})},setDefaultNodesAndEdges:(e,t)=>{if(e){let{setNodes:t}=m();t(e),p({hasDefaultNodes:!0})}if(t){let{setEdges:e}=m();e(t),p({hasDefaultEdges:!0})}},updateNodeInternals:e=>{let{triggerNodeChanges:t,nodeLookup:n,parentLookup:r,domNode:i,nodeOrigin:a,nodeExtent:o,debug:s,fitViewQueued:c,zIndexMode:l}=m(),{changes:u,updatedInternals:d}=rXe(e,n,r,i,a,o,l);d&&(QYe(n,r,{nodeOrigin:a,nodeExtent:o,zIndexMode:l}),c?(h(),p({fitViewQueued:!1,fitViewOptions:void 0})):p({}),u?.length>0&&(s&&console.log(`React Flow: trigger node changes`,u),t?.(u)))},updateNodePositions:(e,t=!1)=>{let n=[],r=[],{nodeLookup:i,triggerNodeChanges:a,connection:o,updateConnection:s,onNodesChangeMiddlewareMap:c}=m();for(let[a,c]of e){let e=i.get(a),l=!!(e?.expandParent&&e?.parentId&&c?.position),u={id:a,type:`position`,position:l?{x:Math.max(0,c.position.x),y:Math.max(0,c.position.y)}:c.position,dragging:t};if(e&&o.inProgress&&o.fromNode.id===e.id){let t=Y5(e,o.fromHandle,S5.Left,!0);s({...o,from:t})}l&&e.parentId&&n.push({id:a,parentId:e.parentId,rect:{...c.internals.positionAbsolute,width:c.measured.width??0,height:c.measured.height??0}}),r.push(u)}if(n.length>0){let{parentLookup:e,nodeOrigin:t}=m(),a=n7(n,i,e,t);r.push(...a)}for(let e of c.values())r=e(r);a(r)},triggerNodeChanges:e=>{let{onNodesChange:t,setNodes:n,nodes:r,hasDefaultNodes:i,debug:a}=m();e?.length&&(i&&n(EZe(e,r)),a&&console.log(`React Flow: trigger node changes`,e),t?.(e))},triggerEdgeChanges:e=>{let{onEdgesChange:t,setEdges:n,edges:r,hasDefaultEdges:i,debug:a}=m();e?.length&&(i&&n(DZe(e,r)),a&&console.log(`React Flow: trigger edge changes`,e),t?.(e))},addSelectedNodes:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:i,triggerEdgeChanges:a}=m();if(t){i(e.map(e=>x7(e,!0)));return}i(S7(r,new Set([...e]),!0)),a(S7(n))},addSelectedEdges:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:r,triggerNodeChanges:i,triggerEdgeChanges:a}=m();if(t){a(e.map(e=>x7(e,!0)));return}a(S7(n,new Set([...e]))),i(S7(r,new Set,!0))},unselectNodesAndEdges:({nodes:e,edges:t}={})=>{let{edges:n,nodes:r,nodeLookup:i,triggerNodeChanges:a,triggerEdgeChanges:o}=m(),s=e||r,c=t||n,l=[];for(let e of s){if(!e.selected)continue;let t=i.get(e.id);t&&(t.selected=!1),l.push(x7(e.id,!1))}let u=[];for(let e of c)e.selected&&u.push(x7(e.id,!1));a(l),o(u)},setMinZoom:e=>{let{panZoom:t,maxZoom:n}=m();t?.setScaleExtent([e,n]),p({minZoom:e})},setMaxZoom:e=>{let{panZoom:t,minZoom:n}=m();t?.setScaleExtent([n,e]),p({maxZoom:e})},setTranslateExtent:e=>{m().panZoom?.setTranslateExtent(e),p({translateExtent:e})},resetSelectedElements:()=>{let{edges:e,nodes:t,triggerNodeChanges:n,triggerEdgeChanges:r,elementsSelectable:i}=m();if(!i)return;let a=t.reduce((e,t)=>t.selected?[...e,x7(t.id,!1)]:e,[]),o=e.reduce((e,t)=>t.selected?[...e,x7(t.id,!1)]:e,[]);n(a),r(o)},setNodeExtent:e=>{let{nodes:t,nodeLookup:n,parentLookup:r,nodeOrigin:i,elevateNodesOnSelect:a,nodeExtent:o,zIndexMode:s}=m();(e[0][0]!==o[0][0]||e[0][1]!==o[0][1]||e[1][0]!==o[1][0]||e[1][1]!==o[1][1])&&(e7(t,n,r,{nodeOrigin:i,nodeExtent:e,elevateNodesOnSelect:a,checkEquality:!1,zIndexMode:s}),p({nodeExtent:e}))},panBy:e=>{let{transform:t,width:n,height:r,panZoom:i,translateExtent:a}=m();return iXe({delta:e,panZoom:i,transform:t,translateExtent:a,width:n,height:r})},setCenter:async(e,t,n)=>{let{width:r,height:i,maxZoom:a,panZoom:o}=m();if(!o)return Promise.resolve(!1);let s=n?.zoom===void 0?a:n.zoom;return await o.setViewport({x:r/2-e*s,y:i/2-t*s,zoom:s},{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{p({connection:{...eYe}})},updateConnection:e=>{p({connection:e})},reset:()=>p({...E$e()})}},Object.is);function O$e({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:r,initialWidth:i,initialHeight:a,initialMinZoom:o,initialMaxZoom:s,initialFitViewOptions:c,fitView:l,nodeOrigin:u,nodeExtent:d,zIndexMode:f,children:p}){let[m]=(0,U.useState)(()=>D$e({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:i,height:a,fitView:l,minZoom:o,maxZoom:s,fitViewOptions:c,nodeOrigin:u,nodeExtent:d,zIndexMode:f}));return(0,W.jsx)(YXe,{value:m,children:(0,W.jsx)(IZe,{children:p})})}function k$e({children:e,nodes:t,edges:n,defaultNodes:r,defaultEdges:i,width:a,height:o,fitView:s,fitViewOptions:c,minZoom:l,maxZoom:u,nodeOrigin:d,nodeExtent:f,zIndexMode:p}){return(0,U.useContext)(m7)?(0,W.jsx)(W.Fragment,{children:e}):(0,W.jsx)(O$e,{initialNodes:t,initialEdges:n,defaultNodes:r,defaultEdges:i,initialWidth:a,initialHeight:o,fitView:s,initialFitViewOptions:c,initialMinZoom:l,initialMaxZoom:u,nodeOrigin:d,nodeExtent:f,zIndexMode:p,children:e})}var A$e={width:`100%`,height:`100%`,overflow:`hidden`,position:`relative`,zIndex:0};function j$e({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:i,nodeTypes:a,edgeTypes:o,onNodeClick:s,onEdgeClick:c,onInit:l,onMove:u,onMoveStart:d,onMoveEnd:f,onConnect:p,onConnectStart:m,onConnectEnd:h,onClickConnectStart:g,onClickConnectEnd:_,onNodeMouseEnter:v,onNodeMouseMove:y,onNodeMouseLeave:b,onNodeContextMenu:x,onNodeDoubleClick:S,onNodeDragStart:C,onNodeDrag:w,onNodeDragStop:T,onNodesDelete:E,onEdgesDelete:D,onDelete:O,onSelectionChange:k,onSelectionDragStart:A,onSelectionDrag:j,onSelectionDragStop:M,onSelectionContextMenu:N,onSelectionStart:P,onSelectionEnd:F,onBeforeDelete:I,connectionMode:L,connectionLineType:R=b5.Bezier,connectionLineStyle:z,connectionLineComponent:B,connectionLineContainerStyle:ee,deleteKeyCode:te=`Backspace`,selectionKeyCode:ne=`Shift`,selectionOnDrag:re=!1,selectionMode:V=y5.Full,panActivationKeyCode:ie=`Space`,multiSelectionKeyCode:ae=V5()?`Meta`:`Control`,zoomActivationKeyCode:oe=V5()?`Meta`:`Control`,snapToGrid:se,snapGrid:ce,onlyRenderVisibleElements:le=!1,selectNodesOnDrag:ue,nodesDraggable:de,autoPanOnNodeFocus:fe,nodesConnectable:pe,nodesFocusable:me,nodeOrigin:he=fZe,edgesFocusable:ge,edgesReconnectable:_e,elementsSelectable:ve=!0,defaultViewport:ye=pZe,minZoom:be=.5,maxZoom:xe=2,translateExtent:Se=g5,preventScrolling:Ce=!0,nodeExtent:we,defaultMarkerColor:H=`#b1b1b7`,zoomOnScroll:Te=!0,zoomOnPinch:Ee=!0,panOnScroll:De=!1,panOnScrollSpeed:Oe=.5,panOnScrollMode:ke=v5.Free,zoomOnDoubleClick:Ae=!0,panOnDrag:je=!0,onPaneClick:Me,onPaneMouseEnter:Ne,onPaneMouseMove:Pe,onPaneMouseLeave:Fe,onPaneScroll:Ie,onPaneContextMenu:Le,paneClickDistance:Re=1,nodeClickDistance:ze=0,children:Be,onReconnect:Ve,onReconnectStart:He,onReconnectEnd:Ue,onEdgeContextMenu:We,onEdgeDoubleClick:Ge,onEdgeMouseEnter:Ke,onEdgeMouseMove:qe,onEdgeMouseLeave:Je,reconnectRadius:Ye=10,onNodesChange:Xe,onEdgesChange:Ze,noDragClassName:Qe=`nodrag`,noWheelClassName:$e=`nowheel`,noPanClassName:et=`nopan`,fitView:tt,fitViewOptions:nt,connectOnClick:rt,attributionPosition:it,proOptions:at,defaultEdgeOptions:ot,elevateNodesOnSelect:st=!0,elevateEdgesOnSelect:ct=!1,disableKeyboardA11y:lt=!1,autoPanOnConnect:ut,autoPanOnNodeDrag:dt,autoPanSpeed:ft,connectionRadius:pt,isValidConnection:mt,onError:ht,style:gt,id:_t,nodeDragThreshold:vt,connectionDragThreshold:yt,viewport:bt,onViewportChange:xt,width:St,height:Ct,colorMode:wt=`light`,debug:Tt,onScroll:Et,ariaLabelConfig:Dt,zIndexMode:Ot=`basic`,...kt},At){let jt=_t||`1`,Mt=yZe(wt),Nt=(0,U.useCallback)(e=>{e.currentTarget.scrollTo({top:0,left:0,behavior:`instant`}),Et?.(e)},[Et]);return(0,W.jsx)(`div`,{"data-testid":`rf__wrapper`,...kt,onScroll:Nt,style:{...gt,...A$e},ref:At,className:S6([`react-flow`,i,Mt]),id:_t,role:`application`,children:(0,W.jsxs)(k$e,{nodes:e,edges:t,width:St,height:Ct,fitView:tt,fitViewOptions:nt,minZoom:be,maxZoom:xe,nodeOrigin:he,nodeExtent:we,zIndexMode:Ot,children:[(0,W.jsx)(_Ze,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:p,onConnectStart:m,onConnectEnd:h,onClickConnectStart:g,onClickConnectEnd:_,nodesDraggable:de,autoPanOnNodeFocus:fe,nodesConnectable:pe,nodesFocusable:me,edgesFocusable:ge,edgesReconnectable:_e,elementsSelectable:ve,elevateNodesOnSelect:st,elevateEdgesOnSelect:ct,minZoom:be,maxZoom:xe,nodeExtent:we,onNodesChange:Xe,onEdgesChange:Ze,snapToGrid:se,snapGrid:ce,connectionMode:L,translateExtent:Se,connectOnClick:rt,defaultEdgeOptions:ot,fitView:tt,fitViewOptions:nt,onNodesDelete:E,onEdgesDelete:D,onDelete:O,onNodeDragStart:C,onNodeDrag:w,onNodeDragStop:T,onSelectionDrag:j,onSelectionDragStart:A,onSelectionDragStop:M,onMove:u,onMoveStart:d,onMoveEnd:f,noPanClassName:et,nodeOrigin:he,rfId:jt,autoPanOnConnect:ut,autoPanOnNodeDrag:dt,autoPanSpeed:ft,onError:ht,connectionRadius:pt,isValidConnection:mt,selectNodesOnDrag:ue,nodeDragThreshold:vt,connectionDragThreshold:yt,onBeforeDelete:I,debug:Tt,ariaLabelConfig:Dt,zIndexMode:Ot}),(0,W.jsx)(T$e,{onInit:l,onNodeClick:s,onEdgeClick:c,onNodeMouseEnter:v,onNodeMouseMove:y,onNodeMouseLeave:b,onNodeContextMenu:x,onNodeDoubleClick:S,nodeTypes:a,edgeTypes:o,connectionLineType:R,connectionLineStyle:z,connectionLineComponent:B,connectionLineContainerStyle:ee,selectionKeyCode:ne,selectionOnDrag:re,selectionMode:V,deleteKeyCode:te,multiSelectionKeyCode:ae,panActivationKeyCode:ie,zoomActivationKeyCode:oe,onlyRenderVisibleElements:le,defaultViewport:ye,translateExtent:Se,minZoom:be,maxZoom:xe,preventScrolling:Ce,zoomOnScroll:Te,zoomOnPinch:Ee,zoomOnDoubleClick:Ae,panOnScroll:De,panOnScrollSpeed:Oe,panOnScrollMode:ke,panOnDrag:je,onPaneClick:Me,onPaneMouseEnter:Ne,onPaneMouseMove:Pe,onPaneMouseLeave:Fe,onPaneScroll:Ie,onPaneContextMenu:Le,paneClickDistance:Re,nodeClickDistance:ze,onSelectionContextMenu:N,onSelectionStart:P,onSelectionEnd:F,onReconnect:Ve,onReconnectStart:He,onReconnectEnd:Ue,onEdgeContextMenu:We,onEdgeDoubleClick:Ge,onEdgeMouseEnter:Ke,onEdgeMouseMove:qe,onEdgeMouseLeave:Je,reconnectRadius:Ye,defaultMarkerColor:H,noDragClassName:Qe,noWheelClassName:$e,noPanClassName:et,rfId:jt,disableKeyboardA11y:lt,nodeExtent:we,viewport:bt,onViewportChange:xt}),(0,W.jsx)(dZe,{onSelectionChange:k}),Be,(0,W.jsx)(oZe,{proOptions:at,position:it}),(0,W.jsx)(aZe,{rfId:jt,disableKeyboardA11y:lt})]})})}var M$e=MZe(j$e);h5.error014();function N$e({dimensions:e,lineWidth:t,variant:n,className:r}){return(0,W.jsx)(`path`,{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:S6([`react-flow__background-pattern`,n,r])})}function P$e({radius:e,className:t}){return(0,W.jsx)(`circle`,{cx:e,cy:e,r:e,className:S6([`react-flow__background-pattern`,`dots`,t])})}var j7;(function(e){e.Lines=`lines`,e.Dots=`dots`,e.Cross=`cross`})(j7||={});var F$e={[j7.Dots]:1,[j7.Lines]:1,[j7.Cross]:6},I$e=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function L$e({id:e,variant:t=j7.Dots,gap:n=20,size:r,lineWidth:i=1,offset:a=0,color:o,bgColor:s,style:c,className:l,patternClassName:u}){let d=(0,U.useRef)(null),{transform:f,patternId:p}=h7(I$e,p7),m=r||F$e[t],h=t===j7.Dots,g=t===j7.Cross,_=Array.isArray(n)?n:[n,n],v=[_[0]*f[2]||1,_[1]*f[2]||1],y=m*f[2],b=Array.isArray(a)?a:[a,a],x=g?[y,y]:v,S=[b[0]*f[2]||1+x[0]/2,b[1]*f[2]||1+x[1]/2],C=`${p}${e||``}`;return(0,W.jsxs)(`svg`,{className:S6([`react-flow__background`,l]),style:{...c,...w7,"--xy-background-color-props":s,"--xy-background-pattern-color-props":o},ref:d,"data-testid":`rf__background`,children:[(0,W.jsx)(`pattern`,{id:C,x:f[0]%v[0],y:f[1]%v[1],width:v[0],height:v[1],patternUnits:`userSpaceOnUse`,patternTransform:`translate(-${S[0]},-${S[1]})`,children:h?(0,W.jsx)(P$e,{radius:y/2,className:u}):(0,W.jsx)(N$e,{dimensions:x,lineWidth:i,variant:t,className:u})}),(0,W.jsx)(`rect`,{x:`0`,y:`0`,width:`100%`,height:`100%`,fill:`url(#${C})`})]})}L$e.displayName=`Background`;var R$e=(0,U.memo)(L$e);function z$e(){return(0,W.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 32`,children:(0,W.jsx)(`path`,{d:`M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z`})})}function B$e(){return(0,W.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 5`,children:(0,W.jsx)(`path`,{d:`M0 0h32v4.2H0z`})})}function V$e(){return(0,W.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 32 30`,children:(0,W.jsx)(`path`,{d:`M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z`})})}function H$e(){return(0,W.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`,children:(0,W.jsx)(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z`})})}function U$e(){return(0,W.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 25 32`,children:(0,W.jsx)(`path`,{d:`M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z`})})}function M7({children:e,className:t,...n}){return(0,W.jsx)(`button`,{type:`button`,className:S6([`react-flow__controls-button`,t]),...n,children:e})}var W$e=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function G$e({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:i,onZoomIn:a,onZoomOut:o,onFitView:s,onInteractiveChange:c,className:l,children:u,position:d=`bottom-left`,orientation:f=`vertical`,"aria-label":p}){let m=g7(),{isInteractive:h,minZoomReached:g,maxZoomReached:_,ariaLabelConfig:v}=h7(W$e,p7),{zoomIn:y,zoomOut:b,fitView:x}=C7();return(0,W.jsxs)(_7,{className:S6([`react-flow__controls`,f===`horizontal`?`horizontal`:`vertical`,l]),position:d,style:e,"data-testid":`rf__controls`,"aria-label":p??v[`controls.ariaLabel`],children:[t&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(M7,{onClick:()=>{y(),a?.()},className:`react-flow__controls-zoomin`,title:v[`controls.zoomIn.ariaLabel`],"aria-label":v[`controls.zoomIn.ariaLabel`],disabled:_,children:(0,W.jsx)(z$e,{})}),(0,W.jsx)(M7,{onClick:()=>{b(),o?.()},className:`react-flow__controls-zoomout`,title:v[`controls.zoomOut.ariaLabel`],"aria-label":v[`controls.zoomOut.ariaLabel`],disabled:g,children:(0,W.jsx)(B$e,{})})]}),n&&(0,W.jsx)(M7,{className:`react-flow__controls-fitview`,onClick:()=>{x(i),s?.()},title:v[`controls.fitView.ariaLabel`],"aria-label":v[`controls.fitView.ariaLabel`],children:(0,W.jsx)(V$e,{})}),r&&(0,W.jsx)(M7,{className:`react-flow__controls-interactive`,onClick:()=>{m.setState({nodesDraggable:!h,nodesConnectable:!h,elementsSelectable:!h}),c?.(!h)},title:v[`controls.interactive.ariaLabel`],"aria-label":v[`controls.interactive.ariaLabel`],children:h?(0,W.jsx)(U$e,{}):(0,W.jsx)(H$e,{})}),u]})}G$e.displayName=`Controls`;var K$e=(0,U.memo)(G$e);function q$e({id:e,x:t,y:n,width:r,height:i,style:a,color:o,strokeColor:s,strokeWidth:c,className:l,borderRadius:u,shapeRendering:d,selected:f,onClick:p}){let{background:m,backgroundColor:h}=a||{},g=o||m||h;return(0,W.jsx)(`rect`,{className:S6([`react-flow__minimap-node`,{selected:f},l]),x:t,y:n,rx:u,ry:u,width:r,height:i,style:{fill:g,stroke:s,strokeWidth:c},shapeRendering:d,onClick:p?t=>p(t,e):void 0})}var J$e=(0,U.memo)(q$e),Y$e=e=>e.nodes.map(e=>e.id),N7=e=>e instanceof Function?e:()=>e;function X$e({nodeStrokeColor:e,nodeColor:t,nodeClassName:n=``,nodeBorderRadius:r=5,nodeStrokeWidth:i,nodeComponent:a=J$e,onClick:o}){let s=h7(Y$e,p7),c=N7(t),l=N7(e),u=N7(n),d=typeof window>`u`||window.chrome?`crispEdges`:`geometricPrecision`;return(0,W.jsx)(W.Fragment,{children:s.map(e=>(0,W.jsx)(Q$e,{id:e,nodeColorFunc:c,nodeStrokeColorFunc:l,nodeClassNameFunc:u,nodeBorderRadius:r,nodeStrokeWidth:i,NodeComponent:a,onClick:o,shapeRendering:d},e))})}function Z$e({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:r,nodeBorderRadius:i,nodeStrokeWidth:a,shapeRendering:o,NodeComponent:s,onClick:c}){let{node:l,x:u,y:d,width:f,height:p}=h7(t=>{let n=t.nodeLookup.get(e);if(!n)return{node:void 0,x:0,y:0,width:0,height:0};let r=n.internals.userNode,{x:i,y:a}=n.internals.positionAbsolute,{width:o,height:s}=U5(r);return{node:r,x:i,y:a,width:o,height:s}},p7);return!l||l.hidden||!yYe(l)?null:(0,W.jsx)(s,{x:u,y:d,width:f,height:p,style:l.style,selected:!!l.selected,className:r(l),color:t(l),borderRadius:i,strokeColor:n(l),strokeWidth:a,shapeRendering:o,onClick:c,id:l.id})}var Q$e=(0,U.memo)(Z$e),$$e=(0,U.memo)(X$e),e1e=200,t1e=150,n1e=e=>!e.hidden,r1e=e=>{let t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:t,boundingRect:e.nodeLookup.size>0?mYe(T5(e.nodeLookup,{filter:n1e}),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},i1e=`react-flow__minimap-desc`;function a1e({style:e,className:t,nodeStrokeColor:n,nodeColor:r,nodeClassName:i=``,nodeBorderRadius:a=5,nodeStrokeWidth:o,nodeComponent:s,bgColor:c,maskColor:l,maskStrokeColor:u,maskStrokeWidth:d,position:f=`bottom-right`,onClick:p,onNodeClick:m,pannable:h=!1,zoomable:g=!1,ariaLabel:_,inversePan:v,zoomStep:y=1,offsetScale:b=5}){let x=g7(),S=(0,U.useRef)(null),{boundingRect:C,viewBB:w,rfId:T,panZoom:E,translateExtent:D,flowWidth:O,flowHeight:k,ariaLabelConfig:A}=h7(r1e,p7),j=e?.width??e1e,M=e?.height??t1e,N=C.width/j,P=C.height/M,F=Math.max(N,P),I=F*j,L=F*M,R=b*F,z=C.x-(I-C.width)/2-R,B=C.y-(L-C.height)/2-R,ee=I+R*2,te=L+R*2,ne=`${i1e}-${T}`,re=(0,U.useRef)(0),V=(0,U.useRef)();re.current=F,(0,U.useEffect)(()=>{if(S.current&&E)return V.current=xXe({domNode:S.current,panZoom:E,getTransform:()=>x.getState().transform,getViewScale:()=>re.current}),()=>{V.current?.destroy()}},[E]),(0,U.useEffect)(()=>{V.current?.update({translateExtent:D,width:O,height:k,inversePan:v,pannable:h,zoomStep:y,zoomable:g})},[h,g,v,y,D,O,k]);let ie=p?e=>{let[t,n]=V.current?.pointer(e)||[0,0];p(e,{x:t,y:n})}:void 0,ae=m?(0,U.useCallback)((e,t)=>{let n=x.getState().nodeLookup.get(t).internals.userNode;m(e,n)},[]):void 0,oe=_??A[`minimap.ariaLabel`];return(0,W.jsx)(_7,{position:f,style:{...e,"--xy-minimap-background-color-props":typeof c==`string`?c:void 0,"--xy-minimap-mask-background-color-props":typeof l==`string`?l:void 0,"--xy-minimap-mask-stroke-color-props":typeof u==`string`?u:void 0,"--xy-minimap-mask-stroke-width-props":typeof d==`number`?d*F:void 0,"--xy-minimap-node-background-color-props":typeof r==`string`?r:void 0,"--xy-minimap-node-stroke-color-props":typeof n==`string`?n:void 0,"--xy-minimap-node-stroke-width-props":typeof o==`number`?o:void 0},className:S6([`react-flow__minimap`,t]),"data-testid":`rf__minimap`,children:(0,W.jsxs)(`svg`,{width:j,height:M,viewBox:`${z} ${B} ${ee} ${te}`,className:`react-flow__minimap-svg`,role:`img`,"aria-labelledby":ne,ref:S,onClick:ie,children:[oe&&(0,W.jsx)(`title`,{id:ne,children:oe}),(0,W.jsx)($$e,{onClick:ae,nodeColor:r,nodeStrokeColor:n,nodeBorderRadius:a,nodeClassName:i,nodeStrokeWidth:o,nodeComponent:s}),(0,W.jsx)(`path`,{className:`react-flow__minimap-mask`,d:`M${z-R},${B-R}h${ee+R*2}v${te+R*2}h${-ee-R*2}z
218
+ M${w.x},${w.y}h${w.width}v${w.height}h${-w.width}z`,fillRule:`evenodd`,pointerEvents:`none`})]})})}a1e.displayName=`MiniMap`;var o1e=(0,U.memo)(a1e),s1e=e=>t=>e?`${Math.max(1/t.transform[2],1)}`:void 0,c1e={[l7.Line]:`right`,[l7.Handle]:`bottom-right`};function l1e({nodeId:e,position:t,variant:n=l7.Handle,className:r,style:i=void 0,children:a,color:o,minWidth:s=10,minHeight:c=10,maxWidth:l=Number.MAX_VALUE,maxHeight:u=Number.MAX_VALUE,keepAspectRatio:d=!1,resizeDirection:f,autoScale:p=!0,shouldResize:m,onResizeStart:h,onResize:g,onResizeEnd:_}){let v=$Ze(),y=typeof e==`string`?e:v,b=g7(),x=(0,U.useRef)(null),S=n===l7.Handle,C=h7((0,U.useCallback)(s1e(S&&p),[S,p]),p7),w=(0,U.useRef)(null),T=t??c1e[n];(0,U.useEffect)(()=>{if(!(!x.current||!y))return w.current||=BXe({domNode:x.current,nodeId:y,getStoreItems:()=>{let{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:i,domNode:a}=b.getState();return{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:r,nodeOrigin:i,paneDomNode:a}},onChange:(e,t)=>{let{triggerNodeChanges:n,nodeLookup:r,parentLookup:i,nodeOrigin:a}=b.getState(),o=[],s={x:e.x,y:e.y},c=r.get(y);if(c&&c.expandParent&&c.parentId){let t=c.origin??a,n=e.width??c.measured.width??0,l=e.height??c.measured.height??0,u=n7([{id:c.id,parentId:c.parentId,rect:{width:n,height:l,...bYe({x:e.x??c.position.x,y:e.y??c.position.y},{width:n,height:l},c.parentId,r,t)}}],r,i,a);o.push(...u),s.x=e.x?Math.max(t[0]*n,e.x):void 0,s.y=e.y?Math.max(t[1]*l,e.y):void 0}if(s.x!==void 0&&s.y!==void 0){let e={id:y,type:`position`,position:{...s}};o.push(e)}if(e.width!==void 0&&e.height!==void 0){let t={id:y,type:`dimensions`,resizing:!0,setAttributes:f?f===`horizontal`?`width`:`height`:!0,dimensions:{width:e.width,height:e.height}};o.push(t)}for(let e of t){let t={...e,type:`position`};o.push(t)}n(o)},onEnd:({width:e,height:t})=>{let n={id:y,type:`dimensions`,resizing:!1,dimensions:{width:e,height:t}};b.getState().triggerNodeChanges([n])}}),w.current.update({controlPosition:T,boundaries:{minWidth:s,minHeight:c,maxWidth:l,maxHeight:u},keepAspectRatio:d,resizeDirection:f,onResizeStart:h,onResize:g,onResizeEnd:_,shouldResize:m}),()=>{w.current?.destroy()}},[T,s,c,l,u,d,h,g,_,m]);let E=T.split(`-`);return(0,W.jsx)(`div`,{className:S6([`react-flow__resize-control`,`nodrag`,...E,n,r]),ref:x,style:{...i,scale:C,...o&&{[S?`backgroundColor`:`borderColor`]:o}},children:a})}(0,U.memo)(l1e);var P7={x:80,y:80},u1e=260,d1e=150;function f1e(e,t){let n=I7(e),r=Object.entries(n),i=B7(e),a=V7(e),o=new Set(r.map(([e])=>e)),s=0;return{nodes:r.map(([n,a],o)=>{let c=i[n]??g1e(a),l=c??y1e(o,r.length);return c||(s+=1),{id:n,type:`workflowNode`,position:l,data:{nodeId:n,label:z7(n,a),kind:R7(a),validationCount:D1e(t,n),isInitial:E1e(e).includes(n)}}}),edges:Object.entries(L7(e)).flatMap(([e,t])=>{let n=q7(t.from),r=q7(t.to);if(!n||!r||!o.has(n)||!o.has(r))return[];let i=typeof t.kind==`string`?t.kind:`data`;return[{id:e,source:n,target:r,type:`workflowEdge`,label:i,data:{edgeId:e,kind:i,route:a[e]},markerEnd:{type:x5.ArrowClosed,color:`#38bdf8`},style:{stroke:`#38bdf8`,strokeWidth:1.5}}]}),usedAutoLayout:s>0,missingPositionCount:s}}function p1e(e,t){return t.type===`node`?e.nodes.some(e=>e.id===t.id):e.edges.some(e=>e.id===t.id)}function F7(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function I7(e){return m1e(e.nodes)}function L7(e){return m1e(e.edges)}function m1e(e){if(!F7(e))return{};let t={};for(let[n,r]of Object.entries(e))F7(r)&&(t[n]=r);return t}function R7(e){return typeof e.kind==`string`?e.kind:`node`}function z7(e,t){return typeof t.label==`string`&&t.label.trim()?t.label.trim():`${h1e(R7(t))} ${e}`}function h1e(e){return e.charAt(0).toUpperCase()+e.slice(1)}function B7(e){let t=F7(e.ui)?e.ui:void 0,n=t&&F7(t.positions)?t.positions:void 0;if(!n)return{};let r={};for(let[e,t]of Object.entries(n)){let n=_1e(t);n&&(r[e]=n)}return r}function V7(e){let t=F7(e.ui)?e.ui:void 0,n=t&&F7(t.edgeRoutes)?t.edgeRoutes:void 0;if(!n)return{};let r={};for(let[e,t]of Object.entries(n)){let n=v1e(t);n&&(r[e]=n)}return r}function g1e(e){let t=F7(e.ui)?e.ui:void 0;return t?_1e(t.position):void 0}function _1e(e){if(!F7(e))return;let{x:t,y:n}=e;return typeof t==`number`&&Number.isFinite(t)&&typeof n==`number`&&Number.isFinite(n)?{x:t,y:n}:void 0}function v1e(e){if(!F7(e))return;let t={};for(let n of[`centerX`,`centerY`,`sourceControlX`,`sourceControlY`,`targetControlX`,`targetControlY`])typeof e[n]==`number`&&Number.isFinite(e[n])&&(t[n]=e[n]);return Object.keys(t).length?t:void 0}function y1e(e,t){if(t<=0)return P7;let n=Math.max(1,Math.ceil(Math.sqrt(t)));return{x:P7.x+e%n*u1e,y:P7.y+Math.floor(e/n)*d1e}}function H7(e){return e.length?{x:P7.x+e.length%3*u1e,y:P7.y+Math.floor(e.length/3)*d1e}:P7}function U7(e,t){let n=I7(e);if(!Object.hasOwn(n,t))return t;let r=2;for(;Object.hasOwn(n,`${t}_${r}`);)r+=1;return`${t}_${r}`}function b1e(e,t,n){let r=L7(e),i=`edge_${t}_to_${n}`.replace(/[^a-zA-Z0-9_-]/g,`-`);if(!Object.hasOwn(r,i))return i;let a=2;for(;Object.hasOwn(r,`${i}_${a}`);)a+=1;return`${i}_${a}`}function W7(e,t,n,r){let i=I7(e),a={...e,nodes:{...i,[t]:r},edges:F7(e.edges)?e.edges:{}};return E1e(a).length||(a.initial=t),G7(a,{...B7(e),[t]:n})}function x1e(e,t,n,r){return{...e,edges:{...L7(e),[t]:{id:t,from:{nodeId:n},to:{nodeId:r},kind:`data`}}}}function S1e(e,t){let n=I7(e);delete n[t];let r=Object.fromEntries(Object.entries(L7(e)).filter(([,e])=>q7(e.from)!==t&&q7(e.to)!==t)),i=B7(e);delete i[t];let a=V7(e);for(let e of Object.keys(a))Object.hasOwn(r,e)||delete a[e];return w1e(K7({...e,nodes:n,edges:r},i,a),t,Object.keys(n))}function C1e(e,t){let n=L7(e);delete n[t];let r=V7(e);return delete r[t],T1e({...e,edges:n},r)}function w1e(e,t,n){let r={...e};if(typeof r.initial==`string`)return r.initial===t&&(n[0]?r.initial=n[0]:delete r.initial),r;if(Array.isArray(r.initial)){let e=r.initial.filter(e=>e!==t);e.length?r.initial=e:n[0]?r.initial=n[0]:delete r.initial}return r}function G7(e,t){let n=F7(e.ui)?e.ui:{};return{...e,ui:{...n,layout:`manual`,positions:t}}}function T1e(e,t){let n=F7(e.ui)?e.ui:{};return{...e,ui:{...n,edgeRoutes:t}}}function K7(e,t,n){return T1e(G7(e,t),n)}function E1e(e){return typeof e.initial==`string`?[e.initial]:Array.isArray(e.initial)?e.initial.filter(e=>typeof e==`string`):[]}function D1e(e,t){return e.filter(e=>e.nodeId===t||e.path?.startsWith(`$.nodes.${t}`)).length}function q7(e){return F7(e)&&typeof e.nodeId==`string`&&e.nodeId.trim()?e.nodeId.trim():void 0}var J7={type:`object`,properties:{},required:[],additionalProperties:!1},Y7=[`global`,`local`,`edge`],O1e=[`draft`,`notes`,`result`],k1e=[`payload`,`previous`,`resume`],A1e=[`global`,`local`];function j1e(e,t){return M1e(e.state,t.stateAccess)}function M1e(e,t){let n=X7(e);return JSON.stringify({reads:n.reads,writes:n.writes})!==JSON.stringify({reads:t.reads,writes:t.writes})}function X7(e){let t=F7(e)?e:{},n=N1e(t.reads),r=N1e(t.writes),i=Z7(n[0]),a=Z7(r[0]);return{reads:n,writes:r,readScope:i?.scope??`global`,readPath:i?.path??``,writeScope:a?.scope===`edge`?`global`:a?.scope??`global`,writePath:a?.scope===`edge`?``:a?.path??``}}function N1e(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`&&!!Z7(e)):[]}function P1e(e,t){let n=F7(e.state)?{...e.state}:{};t.reads.length?n.reads=[...t.reads]:delete n.reads,t.writes.length?n.writes=[...t.writes]:delete n.writes,Object.keys(n).length?e.state=n:delete e.state}function F1e(e,t,n){let r=n.flatMap(e=>{let n=Z7(e);return n?.scope===t?[n.path]:[]}),i=t===`global`?I1e(e):t===`local`?O1e:k1e;return[...new Set([...i,...r])].sort()}function I1e(e){let t=F7(e.state)?e.state:void 0,n=t&&F7(t.global)?t.global:void 0;return n?Object.keys(n).sort():[]}function L1e(e){return e.trim().replace(/\s+/g,``).replace(/^\.+/,``).replace(/\.+$/,``).replace(/\.{2,}/g,`.`)}function Z7(e){if(!e)return;let t=e.indexOf(`.`);if(t<=0||t===e.length-1)return;let n=e.slice(0,t),r=e.slice(t+1);if(Y7.includes(n)&&!r.split(`.`).some(e=>!e))return{scope:n,path:r}}function R1e(e){let t=typeof e.workflowId==`string`?e.workflowId:``,n=typeof e.workflowVersion==`string`?e.workflowVersion:``;return{label:typeof e.label==`string`?e.label:``,description:typeof e.description==`string`?e.description:``,inputKind:H1e(e.input),inputDescription:e9(e.input),inputSchemaText:t9(e.input),outputKind:H1e(e.output),outputDescription:e9(e.output),outputSchemaText:t9(e.output),stateAccess:X7(e.state),profileId:G1e(e.profile),promptTemplate:typeof e.promptTemplate==`string`?e.promptTemplate:``,handlerId:typeof e.handler==`string`?e.handler:``,adapterRef:K1e(e.handler),adapterParamsText:s9(q1e(e.handler)),workflowVersionKey:t&&n?t0e(t,n):``,humanPrompt:typeof e.prompt==`string`?e.prompt:``,humanSchemaText:e.schema===void 0?``:n9(e.schema),humanActionRefs:J1e(e.actions),humanTimeoutKind:Q1e(e.timeout),humanTimeoutValue:$1e(e.timeout)}}function z1e(e,t,n){let r=I7(e),i=r[t];if(!i)return e;let a=R7(i),o={...i};if(l9(o,`label`,n.label),l9(o,`description`,n.description),U1e(o,`input`,n.inputKind,n.inputDescription,i.input,n.inputSchemaText),U1e(o,`output`,n.outputKind,n.outputDescription,i.output,n.outputSchemaText),P1e(o,n.stateAccess),a===`agent`&&(o.runtime=`pibo`,n.profileId.trim()&&(o.profile={kind:`fixed`,id:n.profileId.trim()}),l9(o,`promptTemplate`,n.promptTemplate),n.promptTemplate.trim()&&delete o.promptBuilder),a===`code`&&(o.language=`typescript`,n.handlerId.trim()&&(o.handler=n.handlerId.trim())),a===`adapter`&&(o.mode=`deterministic`,n.adapterRef.trim())){let e=a9(n.adapterRef.trim());c9(e,n.adapterParamsText),o.handler=e}if(a===`workflow`){let e=n0e(n.workflowVersionKey);e&&(o.workflowId=e.workflowId,o.workflowVersion=e.workflowVersion)}return a===`human`&&(l9(o,`prompt`,n.humanPrompt),n.humanSchemaText.trim()?o.schema=r9(n.humanSchemaText):delete o.schema,Z1e(o,n.humanActionRefs),e0e(o,n.humanTimeoutKind,n.humanTimeoutValue)),{...e,nodes:{...r,[t]:o}}}function B1e(e,t){let n=F7(e.from)?e.from:{},r=F7(e.to)?e.to:{},i=F7(e.guard)?e.guard:void 0,a=F7(e.adapter)?e.adapter:void 0,o=a&&F7(a.transform)?a.transform:void 0,s=typeof e.kind==`string`&&[`data`,`control`,`error`,`resume`].includes(e.kind)?e.kind:`data`;return{sourceNodeId:typeof n.nodeId==`string`?n.nodeId:t[0]??``,sourcePortId:typeof n.portId==`string`?n.portId:``,targetNodeId:typeof r.nodeId==`string`?r.nodeId:t.find(e=>e!==(n.nodeId??t[0]))??``,targetPortId:typeof r.portId==`string`?r.portId:``,kind:s,guardHandler:i&&typeof i.handler==`string`?i.handler:``,guardPriority:i&&typeof i.priority==`number`?String(i.priority):``,guardParamsText:s9(i?.params),adapterRef:o&&typeof o.id==`string`?o.id:``,adapterParamsText:s9(o?.params),stateAccess:X7(e.state)}}function V1e(e,t,n){let r=L7(e),i=r[t];if(!i)return e;let a={...i,id:t,from:W1e(n.sourceNodeId,n.sourcePortId),to:W1e(n.targetNodeId,n.targetPortId),kind:n.kind},o=n.guardHandler.trim();if(o){let e=Number.parseInt(n.guardPriority,10),t={handler:o,...Number.isInteger(e)&&e>=0?{priority:e}:{}};c9(t,n.guardParamsText),a.guard=t}else delete a.guard;P1e(a,n.stateAccess);let s=n.adapterRef.trim();if(s){let e=F7(i.adapter)?i.adapter:{},t=a9(s);c9(t,n.adapterParamsText),a.adapter={...e,kind:`edgeAdapter`,output:F7(e.output)?e.output:i9(`text`,``,void 0),transform:t}}else delete a.adapter;return{...e,edges:{...r,[t]:a}}}function Q7(e){return JSON.parse(JSON.stringify(e))}function $7(e,t){return F7(e)?e.kind===`json`?`json`:`text`:t}function H1e(e){return F7(e)?$7(e,`text`):`none`}function e9(e){return F7(e)&&typeof e.description==`string`?e.description:``}function t9(e){return n9(F7(e)&&e.schema!==void 0?e.schema:J7)}function n9(e){try{return JSON.stringify(e??J7,null,2)??JSON.stringify(J7,null,2)}catch{return JSON.stringify(J7,null,2)}}function r9(e){let t=e.trim();if(!t)return Q7(J7);try{return JSON.parse(t)}catch{return e}}function i9(e,t,n,r){let i={kind:e};return l9(i,`description`,t),e===`json`&&(i.schema=r9(r??t9(n))),i}function U1e(e,t,n,r,i,a){if(n===`none`){delete e[t];return}e[t]=i9(n,r,i,a)}function W1e(e,t){let n={nodeId:e};return l9(n,`portId`,t),n}function G1e(e){return F7(e)&&e.kind===`fixed`&&typeof e.id==`string`?e.id:``}function K1e(e){return F7(e)&&e.kind===`adapter`&&e.language===`typescript`&&typeof e.id==`string`?e.id:``}function q1e(e){return F7(e)&&e.kind===`adapter`&&e.language===`typescript`?e.params:void 0}function a9(e){return{kind:`adapter`,language:`typescript`,id:e}}function J1e(e){return Array.isArray(e)?e.flatMap(e=>!F7(e)||typeof e.id!=`string`||!e.id.trim()?[]:[o9(e.id,typeof e.kind==`string`?e.kind:void 0)]):[]}function o9(e,t){return t?{id:e,kind:t}:{id:e}}function Y1e(e){return e.kind?{id:e.id,kind:e.kind}:{id:e.id}}function X1e(e,t,n){return n?e.some(e=>e.id===t.id)?e:[...e,o9(t.id,t.kind)]:e.filter(e=>e.id!==t.id)}function Z1e(e,t){if(!t.length){delete e.actions;return}e.actions=t.map(Y1e)}function Q1e(e){return!F7(e)||typeof e.kind!=`string`?`none`:[`milliseconds`,`seconds`,`minutes`,`iso8601`].includes(e.kind)?e.kind:`none`}function $1e(e){return F7(e)&&(typeof e.value==`number`||typeof e.value==`string`)?String(e.value):``}function e0e(e,t,n){let r=n.trim();if(t===`none`||!r){delete e.timeout;return}if(t===`iso8601`){e.timeout={kind:t,value:r};return}let i=Number(r);Number.isFinite(i)&&i>0?e.timeout={kind:t,value:i}:delete e.timeout}function s9(e){if(e===void 0)return``;try{return JSON.stringify(e,null,2)??``}catch{return``}}function c9(e,t){let n=t.trim();if(!n){delete e.params;return}try{e.params=JSON.parse(n)}catch{e.params=n}}function l9(e,t,n){let r=n.trim();r?e[t]=r:delete e[t]}function t0e(e,t){return`${e}@${t}`}function n0e(e){let t=e.indexOf(`@`);if(!(t<=0||t===e.length-1))return{workflowId:e.slice(0,t),workflowVersion:e.slice(t+1)}}function r0e(e,t,n){if(e===`Escape`||e===`Tab`)return{type:`dismiss`};if(!(n<=0))switch(e){case`ArrowDown`:return{type:`focus`,index:(t+1+n)%n};case`ArrowUp`:return{type:`focus`,index:(t-1+n)%n};case`Home`:return{type:`focus`,index:0};case`End`:return{type:`focus`,index:n-1};default:return}}function i0e(e,t){return e===`ContextMenu`||e===`F10`&&t}var a0e=`Use the workflow input to produce a concise answer.
219
219
 
220
- {{input}}`;function $1e(e,t,n){return W7(e,t,n,i0e(t))}function e0e(e,t,n,r){return W7(e,t,n,a0e(t,r))}function t0e(e,t,n,r){return W7(e,t,n,o0e(t,r))}function n0e(e,t,n,r){return W7(e,t,n,s0e(t,r))}function r0e(e,t,n,r){return W7(e,t,n,c0e(t,r))}function i0e(e){return{kind:`trigger`,trigger:{kind:`manual`,mode:`editor`},label:`Manual Trigger ${e}`,output:i9(`text`,`Manual text prompt from the workflow editor.`,void 0),ui:{variant:`start`}}}function a0e(e,t){return{kind:`agent`,runtime:`pibo`,label:`Agent ${e}`,profile:{kind:`fixed`,id:t||`base`},promptTemplate:Q1e,metadata:{sessionOverrides:{prompt:!0}}}}function o0e(e,t){return{kind:`workflow`,label:`Workflow ${e}`,workflowId:t.id,workflowVersion:t.version}}function s0e(e,t,n,r){return{kind:`adapter`,label:`Adapter ${e}`,mode:`deterministic`,handler:a9(t),input:Q7(n??i9(`text`,``,void 0)),output:Q7(r??i9(`text`,``,void 0))}}function c0e(e,t){return{kind:`human`,label:`Human ${e}`,prompt:`Review the workflow context and choose an available action.`,input:i9(`text`,`Context for human review.`,void 0),output:i9(`json`,`Human action result.`,void 0,n9(J7)),schema:Q7(J7),actions:[H1e(t)],timeout:{kind:`minutes`,value:60}}}function l0e(e,t){return`${e}@${t}`}function u0e(e){let t=e.lastIndexOf(`@`);if(!(t<=0||t===e.length-1))return{workflowId:e.slice(0,t),workflowVersion:e.slice(t+1)}}function d0e(e){return e.source===`custom`?`${e.displayName} (custom)`:`${e.displayName} (global)`}function f0e(e){return`${e.displayName} (${e.id})`}function u9(e){return`${e.displayName} (${e.id})`}function p0e(e){return`${e.displayName}${e.kind?` · ${e.kind}`:``} (${e.id})`}function d9(e){return l0e(e.id,e.version)}function m0e(e){return`${e.title} (${d9(e)})`}function h0e({diagnostics:e,emptyLabel:t}){return e.length?(0,W.jsx)(`div`,{className:`grid gap-2`,"aria-label":`Inspector diagnostics`,children:e.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-amber-700/70 bg-amber-950/30 p-2 text-[11px] leading-5 text-amber-100`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 font-bold text-amber-200`,children:[(0,W.jsx)(Cl,{size:12}),e.code]}),(0,W.jsx)(`div`,{className:`mt-1`,children:e.message}),e.path?(0,W.jsx)(`div`,{className:`mt-1 font-mono text-amber-200/80`,children:e.path}):null,e.hint?(0,W.jsx)(`div`,{className:`mt-1 text-amber-200/80`,children:e.hint}):null]},`${e.code}:${e.path??e.nodeId??e.edgeId??e.registryRef??e.message}`))}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-2 text-[11px] text-slate-500`,children:t})}function f9({label:e}){return(0,W.jsx)(`span`,{className:`rounded-full border border-slate-700 bg-[#101d22] px-2 py-0.5 text-slate-400`,children:e})}function g0e({draft:e,onDraftChange:t,renderInspectors:n,fullHeight:r=!1,compactHeader:i=!1,readOnly:a=!1,onDraftDefinitionChange:o,onStatusMessage:s}){let c=(0,U.useMemo)(()=>a1e(e.definition,e.diagnostics),[e.definition,e.diagnostics]),[l,u]=(0,U.useState)(c.nodes),[d,f]=(0,U.useState)(c.edges),[p,m]=(0,U.useState)(),[h,g]=(0,U.useState)(``),[_,v]=(0,U.useState)(``),[y,b]=(0,U.useState)(!1),[x,S]=(0,U.useState)(`idle`),[C,w]=(0,U.useState)(),[T,E]=(0,U.useState)(`base`),[D,O]=(0,U.useState)([]),[k,A]=(0,U.useState)(``),[j,M]=(0,U.useState)([]),[N,P]=(0,U.useState)(``),[F,I]=(0,U.useState)([]),[L,R]=(0,U.useState)(``),[z,B]=(0,U.useState)(440),[ee,te]=(0,U.useState)(`inspect`),[ne,re]=(0,U.useState)(),[V,ie]=(0,U.useState)(),[ae,oe]=(0,U.useState)(()=>({runningNodeIds:new Set,recentNodeIds:new Set,recentEdgeIds:new Set})),se=(0,U.useRef)(null),ce=(0,U.useRef)(null),le=(0,U.useRef)(null),ue=(0,U.useRef)([]);(0,U.useEffect)(()=>{let e=!1;return Z2().then(t=>{!e&&t.options[0]?.id&&E(t.options[0].id)}).catch(()=>void 0),()=>{e=!0}},[]),(0,U.useEffect)(()=>{let e=!1;return e4().then(t=>{e||(O(t.options),A(e=>e||(t.options[0]?d9(t.options[0]):``)))}).catch(()=>void 0),()=>{e=!0}},[]),(0,U.useEffect)(()=>{let e=!1;return Q2().then(t=>{e||(M(t.options),P(e=>e||(t.options[0]?.id??``)))}).catch(()=>void 0),()=>{e=!0}},[]),(0,U.useEffect)(()=>{let e=!1;return $2().then(t=>{e||(I(t.options),R(e=>e||(t.options[0]?.id??``)))}).catch(()=>void 0),()=>{e=!0}},[]),(0,U.useEffect)(()=>{u(c.nodes),f(c.edges),m(e=>e&&o1e(c,e)?e:void 0)},[c]),(0,U.useEffect)(()=>{b(!1)},[e.draftId,e.revision]),(0,U.useEffect)(()=>()=>{for(let e of ue.current)clearTimeout(e);ue.current=[]},[]);let de=(0,U.useCallback)(()=>{for(let e of ue.current)clearTimeout(e);ue.current=[]},[]),fe=(0,U.useCallback)(e=>{de();let t=e.nodeAttempts.filter(e=>e.kind===`agent`),n=t.length?t.map(t=>({nodeIds:[t.nodeId],edgeIds:e.edgeTransfers.filter(e=>e.targetNodeId===t.nodeId).map(e=>e.edgeId)})):[{nodeIds:e.nodeAttempts.map(e=>e.nodeId),edgeIds:e.edgeTransfers.map(e=>e.edgeId)}];n.forEach((t,n)=>{let r=setTimeout(()=>{oe({runningNodeIds:new Set,recentNodeIds:new Set(t.nodeIds),recentEdgeIds:new Set(t.edgeIds),lastRun:e})},n*900);ue.current.push(r)});let r=setTimeout(()=>{oe(e=>({...e,runningNodeIds:new Set,recentNodeIds:new Set,recentEdgeIds:new Set})),ue.current=[]},Math.max(n.length,1)*900+600);ue.current.push(r)},[de]),pe=(0,U.useMemo)(()=>l.map(e=>e.id),[l]);(0,U.useEffect)(()=>{g(e=>e&&pe.includes(e)?e:pe[0]??``),v(e=>e&&pe.includes(e)&&e!==h?e:pe.find(e=>e!==(h||pe[0]))??``)},[pe,h]);let me=(0,U.useCallback)((e,t=l,n=d)=>{let r=new Set(Object.keys(I7(e))),i=new Set(Object.keys(L7(e))),a=Object.fromEntries(Object.entries(B7(e)).filter(([e])=>r.has(e)));for(let e of t)r.has(e.id)&&(a[e.id]=e.position);let o=Object.fromEntries(Object.entries(V7(e)).filter(([e])=>i.has(e)));for(let e of n)i.has(e.id)&&e.data?.route&&(o[e.id]=e.data.route);return K7(e,a,o)},[d,l]),he=(0,U.useCallback)((t=l,n=d)=>{o?.(me(e.definition,t,n))},[e.definition,d,me,l,o]),ge=(0,U.useCallback)((e,t=`status`)=>{w(e),s?.(e,t)},[s]),_e=(0,U.useCallback)(async(n,r,i={})=>{if(a){ge(`This workflow is read-only. Duplicate it before editing.`,`error`);return}let o=me(n,i.layoutNodes,i.layoutEdges);S(`saving`);try{t((await t4(e.draftId,{definition:o,editTrigger:i.editTrigger??`graph_edit`})).draft),S(`saved`),ge(r),i.clearLayoutDirty&&b(!1)}catch(e){let t=e instanceof Error?e.message:`Failed to save graph edit`;S(`error`),ge(t,`error`)}},[e.draftId,me,t,ge,a]),ve=(0,U.useCallback)(e=>{a||(u(t=>yZe(e,t)),e.some(e=>e.type===`position`)&&b(!0))},[a]),ye=(0,U.useCallback)((e,t)=>{if(a)return;let n=l.map(e=>e.id===t.id?{...e,position:t.position}:e);u(n),b(!0),he(n,d),ge(`Layout updated for ${t.id}; it will be preserved on save or graph edits.`)},[d,l,ge,a,he]),be=(0,U.useCallback)(e=>{a||f(t=>bZe(e,t))},[a]),xe=(0,U.useCallback)((e,t)=>{a||(f(n=>{let r=n.map(n=>n.id===e?{...n,data:{edgeId:n.data?.edgeId??n.id,kind:n.data?.kind??`data`,...n.data,route:t}}:n);return he(l,r),r}),b(!0),ge(`Edge route updated for ${e}; it will be preserved on save or graph edits.`))},[l,ge,a,he]),Se=(0,U.useCallback)(()=>Array.from(ce.current?.querySelectorAll(`[role='menuitem']:not([disabled])`)??[]),[]),Ce=(0,U.useCallback)((e=!1)=>{let t=le.current;re(void 0),e&&requestAnimationFrame(()=>t?.focus())},[]);(0,U.useLayoutEffect)(()=>{ne&&Se()[0]?.focus()},[ne,Se]),(0,U.useEffect)(()=>{if(!ne)return;let e=()=>Ce(),t=e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),Ce(!0))};return document.addEventListener(`click`,e),document.addEventListener(`contextmenu`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`click`,e),document.removeEventListener(`contextmenu`,e),document.removeEventListener(`keydown`,t)}},[Ce,ne]);let we=(0,U.useCallback)((e,t,n,r)=>{let i=se.current?.getBoundingClientRect(),a=i?e-i.left:e,o=i?t-i.top:t;le.current=r,re({x:Math.max(8,Math.min(a,(i?.width??a)-236)),y:Math.max(8,Math.min(o,(i?.height??o)-260)),target:n})},[]),H=(0,U.useCallback)((e,t)=>{e.preventDefault(),e.stopPropagation();let n=e.target instanceof Element?e.target:null,r=t.type===`pane`?se.current:n?.closest(t.type===`node`?`.react-flow__node[data-id]`:`.react-flow__edge[data-id]`)??null;we(e.clientX,e.clientY,t,r)},[we]),Te=e=>{let t=Se(),n=Math.max(0,t.indexOf(document.activeElement)),r=X1e(e.key,n,t.length);r&&(e.preventDefault(),e.stopPropagation(),e.nativeEvent.stopImmediatePropagation(),r.type===`dismiss`?Ce(!0):t[r.index]?.focus())},Ee=(0,U.useCallback)(e=>{if(!Z1e(e.key,e.shiftKey))return;let t=(e.target instanceof Element?e.target:null)?.closest(`.react-flow__node[data-id], .react-flow__edge[data-id]`),n;if(t?.classList.contains(`react-flow__node`)){let e=t.dataset.id;e&&(n={type:`node`,id:e})}else if(t?.classList.contains(`react-flow__edge`)){let e=t.dataset.id;e&&(n={type:`edge`,id:e})}else e.target===e.currentTarget&&(n={type:`pane`});if(!n)return;e.preventDefault(),e.stopPropagation(),e.nativeEvent.stopImmediatePropagation(),n.type!==`pane`&&m(n);let r=t??se.current,i=r?.getBoundingClientRect();we(i?.left??0,i?.bottom??0,n,r??null)},[we]),De=(0,U.useCallback)((e,t)=>{m({type:`edge`,id:e}),u(e=>e.map(e=>e.selected?{...e,selected:!1}:e)),f(t=>t.map(t=>({...t,selected:t.id===e}))),H(t,{type:`edge`,id:e})},[H]),Oe=(0,U.useCallback)(e=>{m({type:`edge`,id:e}),u(e=>e.map(e=>e.selected?{...e,selected:!1}:e)),f(t=>t.map(t=>({...t,selected:t.id===e}))),re(void 0)},[]),ke=(0,U.useCallback)(e=>{m({type:`node`,id:e}),te(`status`),re(void 0),ie({triggerNodeId:e,input:``,status:`idle`})},[]),Ae=(0,U.useMemo)(()=>l.map(e=>({...e,data:{...e.data,onManualTriggerRun:ke,readOnly:a,runVisualState:ae.runningNodeIds.has(e.id)?`running`:ae.recentNodeIds.has(e.id)?`recent`:void 0}})),[l,ke,a,ae.recentNodeIds,ae.runningNodeIds]),je=(0,U.useMemo)(()=>d.map(e=>({...e,data:{edgeId:e.data?.edgeId??e.id,kind:e.data?.kind??`data`,...e.data,onRouteChange:xe,onSelect:Oe,onContextMenu:De,readOnly:a,recentTransition:ae.recentEdgeIds.has(e.id)}})),[d,De,xe,Oe,a,ae.recentEdgeIds]),Me=()=>{let t=U7(e.definition,`trigger`),n=H7(l),r=$1e(e.definition,t,n);m({type:`node`,id:t}),_e(r,`Added manual trigger ${t}.`)},Ne=()=>{let t=U7(e.definition,`agent`),n=H7(l),r=e0e(e.definition,t,n,T);m({type:`node`,id:t}),_e(r,`Added node ${t}.`)},Pe=(0,U.useMemo)(()=>D.find(e=>d9(e)===k),[D,k]),Fe=()=>{if(!Pe)return;let t=U7(e.definition,`workflow`),n=H7(l),r=t0e(e.definition,t,n,Pe);m({type:`node`,id:t}),_e(r,`Added nested workflow node ${t} for ${Pe.id}@${Pe.version}.`)},Ie=()=>{if(!N)return;let t=U7(e.definition,`adapter`),n=H7(l),r=n0e(e.definition,t,n,N);m({type:`node`,id:t}),_e(r,`Added adapter node ${t} for ${N}.`)},Le=()=>{if(!L)return;let t=U7(e.definition,`human`),n=H7(l),r=F.find(e=>e.id===L),i=r0e(e.definition,t,n,o9(L,r?.kind));m({type:`node`,id:t}),_e(i,`Added human node ${t} with action ${L}.`)},Re=(0,U.useCallback)((t=h,n=_)=>{if(!t||!n||t===n)return;let r=p1e(e.definition,t,n),i=m1e(e.definition,r,t,n);f(e=>AYe({id:r,source:t,target:n,type:`workflowEdge`},e)),m({type:`edge`,id:r}),_e(i,`Connected ${t} to ${n}.`)},[e.definition,_e,h,_]),ze=(0,U.useCallback)(t=>{let n=t.type===`node`?h1e(e.definition,t.id):g1e(e.definition,t.id);m(void 0),re(void 0),_e(n,`Deleted ${t.type} ${t.id}.`)},[e.definition,_e]),Be=()=>{p&&ze(p)};(0,U.useEffect)(()=>{let e=e=>{a||x===`saving`||!p||(e.key===`Delete`||e.key===`Backspace`)&&(z0e(e.target)||(e.preventDefault(),ze(p)))};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[ze,a,x,p]);let Ve=e=>{m(e),te(`inspect`),re(void 0)},He=t=>{m({type:`node`,id:t}),re(void 0),_e({...e.definition,initial:t},`Set ${t} as the initial node.`)},Ue=(e,t)=>{t===`source`?g(e):v(e),m({type:`node`,id:e}),re(void 0),ge(t===`source`?`Connect from ${e}; choose a target node.`:`Connect to ${e}; choose a source node.`)},We=t=>{let n=d.map(e=>{if(e.id!==t)return e;let{route:n,...r}=e.data??{};return{...e,data:{edgeId:e.data?.edgeId??e.id,kind:e.data?.kind??`data`,...r}}}),r=V7(e.definition);delete r[t];let i=K7(e.definition,B7(e.definition),r);f(n),m({type:`edge`,id:t}),re(void 0),_e(i,`Reset route for edge ${t}.`,{layoutEdges:n})},Ge=(e,t,n)=>{let r=l.map(r=>r.id===e?{...r,position:{x:r.position.x+t,y:r.position.y+n},selected:!0}:r);u(r),he(r,d),m({type:`node`,id:e}),re(void 0),b(!0),ge(`Moved node ${e}; layout will be preserved on save or graph edits.`)},Ke=(e,t)=>{p?.type===`node`&&Ge(p.id,e,t)},qe=()=>{let t=me(e.definition);_e(t,`Layout saved to workflow.ui.positions and workflow.ui.edgeRoutes without changing runtime semantics.`,{clearLayoutDirty:!0})},Je=(0,U.useCallback)(e=>{a||!e.source||!e.target||Re(e.source,e.target)},[Re,a]),Ye=(0,U.useCallback)(async()=>{if(!V||V.status===`running`)return;let n=V.input;de();let r=I7(e.definition),i=Object.values(L7(e.definition)).flatMap(e=>{let t=q7(e.from),n=q7(e.to);return t===V.triggerNodeId&&n&&R7(r[n]??{})===`agent`?[n]:[]});oe(e=>({...e,runningNodeIds:new Set(i.length?i:[V.triggerNodeId]),recentNodeIds:new Set,recentEdgeIds:new Set})),ie(e=>e&&{...e,status:`running`,message:`Running manual trigger…`,output:void 0}),ge(`Running manual trigger ${V.triggerNodeId}…`);try{let r=await rVe(e.draftId,{triggerNodeId:V.triggerNodeId,input:n});t(r.draft),fe(r),ie(e=>e&&{...e,status:r.ok?`completed`:`error`,message:r.ok?`Manual trigger run completed.`:r.error?.message??`Manual trigger run failed.`,output:r.output,runId:r.run?.id,nodeCount:r.nodeAttempts.length,edgeTransferCount:r.edgeTransfers.length}),ge(r.ok?`Manual trigger ${V.triggerNodeId} completed.`:r.error?.message??`Manual trigger run failed.`,r.ok?`status`:`error`)}catch(e){let t=e instanceof Error?e.message:`Manual trigger run failed.`;oe(e=>({...e,runningNodeIds:new Set,recentNodeIds:new Set,recentEdgeIds:new Set})),ie(e=>e&&{...e,status:`error`,message:t}),ge(t,`error`)}},[de,e.definition,e.draftId,V,t,ge,fe]),Xe=(0,U.useCallback)(e=>{e.preventDefault();let t=e=>{let t=Math.min(720,Math.max(420,window.innerWidth-520)),n=Math.max(360,Math.min(t,window.innerWidth-e.clientX-32));B(n)},n=()=>{document.removeEventListener(`mousemove`,t),document.removeEventListener(`mouseup`,n),document.body.style.cursor=``,document.body.style.userSelect=``};document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`,document.addEventListener(`mousemove`,t),document.addEventListener(`mouseup`,n)},[]),Ze=B0e(e.definition,p),Qe=p?.type===`node`?I7(e.definition)[p.id]:void 0,$e=x===`saving`,et=$e||a,tt=pe.length>1,nt=ne?.target,rt=nt?.type===`node`?`Node ${nt.id}`:nt?.type===`edge`?`Edge ${nt.id}`:`Graph canvas`,it=nt?.type===`node`?`Workflow node actions`:nt?.type===`edge`?`Workflow edge actions`:`Canvas actions`,at=[{id:`build`,label:`Build`,icon:kl},{id:`inspect`,label:`Inspect`,icon:_l},{id:`status`,label:`Status`,icon:Es}];return(0,W.jsxs)(`section`,{className:`${r?`flex h-full min-h-0 flex-col`:`grid`} gap-4 rounded-sm border border-slate-800 bg-[#151f24]/70 p-4`,"aria-labelledby":`workflow-graph-canvas-title`,children:[(0,W.jsx)(_0e,{}),i?null:(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:[(0,W.jsx)(qc,{size:13}),`Workflow graph canvas`]}),(0,W.jsx)(`h4`,{id:`workflow-graph-canvas-title`,className:`mt-1 text-sm font-bold text-slate-100`,children:`Visual graph editor`}),(0,W.jsxs)(`p`,{className:`mt-2 max-w-2xl text-xs leading-5 text-slate-500`,children:[`React Flow projects Pibo Workflow IR nodes and edges. Graph edits save IR changes; layout saves only `,(0,W.jsx)(`code`,{className:`rounded bg-slate-900 px-1 text-slate-300`,children:`workflow.ui.positions`}),` metadata.`]})]}),(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2 text-[11px]`,children:[(0,W.jsx)(f9,{label:`${l.length} nodes`}),(0,W.jsx)(f9,{label:`${d.length} edges`}),(0,W.jsx)(f9,{label:c.usedAutoLayout?`auto layout (${c.missingPositionCount} missing)`:`manual positions`})]})]}),(0,W.jsxs)(`div`,{className:`${r?`min-h-0 flex-1`:``} grid min-w-0 gap-3 text-xs`,style:{gridTemplateColumns:`minmax(0, 1fr) ${z}px`},children:[(0,W.jsxs)(`div`,{ref:se,className:`${r?`h-full min-h-[360px]`:`h-[420px]`} relative min-w-0 overflow-hidden rounded-sm border border-slate-800 bg-[#0c171c]`,"aria-label":`Workflow graph canvas`,role:`group`,tabIndex:0,onKeyDownCapture:Ee,children:[(0,W.jsxs)(T$e,{nodes:Ae,edges:je,nodeTypes:L0e,edgeTypes:R0e,onNodesChange:ve,onNodeDragStop:ye,onEdgesChange:be,onConnect:Je,onNodeClick:(e,t)=>m({type:`node`,id:t.id}),onEdgeClick:(e,t)=>Oe(t.id),onPaneClick:()=>{m(void 0),re(void 0)},onNodeContextMenu:(e,t)=>{m({type:`node`,id:t.id}),H(e,{type:`node`,id:t.id})},onEdgeContextMenu:(e,t)=>{m({type:`edge`,id:t.id}),H(e,{type:`edge`,id:t.id})},onPaneContextMenu:e=>H(e,{type:`pane`}),fitView:!0,minZoom:.35,maxZoom:1.6,colorMode:`dark`,nodesDraggable:!a,nodesConnectable:!a,edgesReconnectable:!a,defaultEdgeOptions:{type:`workflowEdge`,markerEnd:{type:x5.ArrowClosed,color:`#38bdf8`}},children:[(0,W.jsx)(j$e,{color:`#1f3a44`,gap:18}),(0,W.jsx)($$e,{pannable:!0,zoomable:!0,nodeColor:e=>e.selected?`#38bdf8`:`#1e293b`}),(0,W.jsx)(z$e,{showInteractive:!1})]}),V?(0,W.jsxs)(`div`,{className:`absolute bottom-3 left-3 z-40 w-[360px] max-w-[calc(100%-1.5rem)] rounded-sm border border-emerald-700/70 bg-[#101d22] p-3 text-xs shadow-xl shadow-black/40`,role:`dialog`,"aria-label":`Manual trigger test run`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-emerald-300`,children:`Manual trigger`}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-slate-400`,children:V.triggerNodeId})]}),(0,W.jsx)(`button`,{type:`button`,className:`rounded-sm border border-slate-700 px-2 py-1 text-slate-400 transition hover:border-slate-500 hover:text-slate-100`,onClick:()=>ie(void 0),disabled:V.status===`running`,"aria-label":`Close manual trigger dialog`,children:(0,W.jsx)(Al,{size:13})})]}),(0,W.jsxs)(`label`,{className:`mt-3 grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Prompt input`}),(0,W.jsx)(`textarea`,{className:`min-h-24 resize-y rounded-sm border border-slate-700 bg-[#151f24] px-2 py-2 font-mono text-[11px] text-slate-100 outline-none transition focus:border-emerald-500`,value:V.input,onChange:e=>ie(t=>t&&{...t,input:e.target.value}),disabled:V.status===`running`,placeholder:`Write the text prompt for the first agent…`})]}),(0,W.jsx)(`div`,{className:`mt-3 flex gap-2`,children:(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex flex-1 items-center justify-center gap-2 rounded-sm border border-emerald-600/70 bg-emerald-500/10 px-3 py-2 text-xs font-bold text-emerald-100 transition hover:border-emerald-300 hover:text-white disabled:cursor-not-allowed disabled:opacity-50`,onClick:Ye,disabled:V.status===`running`,children:[V.status===`running`?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(el,{size:13}),`Run trigger`]})}),V.message?(0,W.jsx)(`div`,{className:`mt-3 rounded-sm border p-2 text-[11px] leading-5 ${V.status===`error`?`border-red-800 bg-red-950/30 text-red-200`:`border-emerald-800 bg-emerald-950/20 text-emerald-100`}`,children:V.message}):null,V.output?(0,W.jsx)(`pre`,{className:`mt-2 max-h-32 overflow-auto rounded-sm border border-slate-800 bg-[#0c171c] p-2 text-[11px] leading-5 text-slate-200`,children:V.output}):null,V.runId?(0,W.jsxs)(`div`,{className:`mt-2 text-[10px] text-slate-500`,children:[`Run `,V.runId,` · `,V.nodeCount??0,` node attempts · `,V.edgeTransferCount??0,` edge transfers`]}):null]}):null,ne?(0,W.jsxs)(`div`,{ref:ce,className:`absolute z-50 w-56 overflow-hidden rounded-sm border border-slate-700 bg-[#1a262b] py-1 text-xs shadow-xl shadow-black/40`,style:{left:ne.x,top:ne.y},role:`menu`,"aria-label":`Workflow graph context menu`,onKeyDown:Te,onClick:e=>e.stopPropagation(),onContextMenu:e=>{e.preventDefault(),e.stopPropagation()},children:[(0,W.jsxs)(`div`,{className:`border-b border-slate-800 px-3 py-2`,children:[(0,W.jsx)(`div`,{className:`truncate text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:it}),(0,W.jsx)(`div`,{className:`mt-0.5 truncate font-mono text-[11px] text-slate-400`,children:rt})]}),nt?.type===`node`?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(p9,{icon:(0,W.jsx)(ll,{size:14}),label:`Inspect node`,onSelect:()=>Ve({type:`node`,id:nt.id})}),(0,W.jsx)(p9,{icon:(0,W.jsx)($s,{size:14}),label:`Set as initial`,onSelect:()=>He(nt.id),disabled:et}),(0,W.jsx)(p9,{icon:(0,W.jsx)(Mc,{size:14}),label:`Connect from this`,onSelect:()=>Ue(nt.id,`source`),disabled:et}),(0,W.jsx)(p9,{icon:(0,W.jsx)(lc,{size:14}),label:`Connect to this`,onSelect:()=>Ue(nt.id,`target`),disabled:et}),(0,W.jsx)(p9,{icon:(0,W.jsx)(Jc,{size:14}),label:`Nudge right`,onSelect:()=>Ge(nt.id,40,0),disabled:et}),(0,W.jsx)(`div`,{className:`my-1 border-t border-slate-800`}),(0,W.jsx)(p9,{icon:(0,W.jsx)(Sl,{size:14}),label:`Delete node`,onSelect:()=>ze({type:`node`,id:nt.id}),disabled:et,destructive:!0})]}):null,nt?.type===`edge`?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(p9,{icon:(0,W.jsx)(ll,{size:14}),label:`Inspect edge`,onSelect:()=>Ve({type:`edge`,id:nt.id})}),(0,W.jsx)(p9,{icon:(0,W.jsx)(al,{size:14}),label:`Reset edge route`,onSelect:()=>We(nt.id),disabled:et}),(0,W.jsx)(`div`,{className:`my-1 border-t border-slate-800`}),(0,W.jsx)(p9,{icon:(0,W.jsx)(Sl,{size:14}),label:`Delete edge`,onSelect:()=>ze({type:`edge`,id:nt.id}),disabled:et,destructive:!0})]}):null,nt?.type===`pane`?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(p9,{icon:(0,W.jsx)(el,{size:14}),label:`Add Manual trigger`,onSelect:()=>{re(void 0),Me()},disabled:et}),(0,W.jsx)(p9,{icon:(0,W.jsx)(tl,{size:14}),label:`Add Agent node`,onSelect:()=>{re(void 0),Ne()},disabled:et}),(0,W.jsx)(p9,{icon:(0,W.jsx)(cl,{size:14}),label:`Save layout`,onSelect:()=>{re(void 0),qe()},disabled:et||!l.length||!y}),(0,W.jsx)(p9,{icon:(0,W.jsx)(Al,{size:14}),label:`Clear selection`,onSelect:()=>{m(void 0),re(void 0)},disabled:!p})]}):null]}):null]}),(0,W.jsxs)(`aside`,{className:`relative flex min-h-0 min-w-0 flex-col overflow-hidden rounded-sm border border-slate-800 bg-[#0f1b20]`,"aria-label":`Workflow editor inspector panel`,children:[(0,W.jsx)(`button`,{type:`button`,className:`absolute -left-1 top-0 z-10 h-full w-2 cursor-col-resize border-l border-[#11a4d4]/20 bg-[#11a4d4]/10 opacity-60 transition hover:bg-[#11a4d4]/30 hover:opacity-100`,onMouseDown:Xe,"aria-label":`Resize workflow inspector`,title:`Drag to resize inspector`}),(0,W.jsxs)(`header`,{className:`shrink-0 border-b border-slate-800 bg-[#101d22] p-2`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:`Workflow editor`}),(0,W.jsx)(`div`,{className:`mt-0.5 truncate text-[11px] text-slate-500`,children:`Drag edge to resize`})]}),(0,W.jsx)(`nav`,{className:`mt-2 grid grid-cols-3 gap-1`,"aria-label":`Workflow inspector sections`,children:at.map(e=>{let t=e.icon;return(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border px-2 py-2 text-[11px] font-semibold transition ${ee===e.id?`border-[#11a4d4]/70 bg-[#11a4d4]/10 text-[#8bdcf4]`:`border-slate-800 text-slate-400 hover:border-slate-600 hover:text-slate-100`}`,onClick:()=>te(e.id),title:e.label,children:[(0,W.jsx)(t,{size:14}),(0,W.jsx)(`span`,{children:e.label})]},e.id)})})]}),(0,W.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overflow-x-hidden p-3`,children:[ee===`build`?a?(0,W.jsx)(`div`,{className:`rounded-sm border border-amber-700/60 bg-amber-950/20 p-3 text-xs leading-5 text-amber-100`,"aria-label":`Read-only workflow graph`,children:`This published workflow is read-only. Duplicate it from the top bar to edit your own copy.`}):(0,W.jsxs)(`div`,{className:`grid min-w-0 gap-2`,"aria-label":`Graph edit controls`,children:[(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-emerald-700/70 px-3 py-2 text-xs font-semibold text-emerald-200 transition hover:border-emerald-400 hover:text-emerald-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Me,disabled:et,title:`Add Manual trigger node`,children:[(0,W.jsx)(el,{size:13}),`Add Manual trigger`]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Ne,disabled:et,title:`Add Agent node`,children:[(0,W.jsx)(tl,{size:13}),`Add Agent node`]}),(0,W.jsxs)(`label`,{className:`grid min-w-0 gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Nested workflow version`}),(0,W.jsx)(`select`,{"aria-label":`Nested workflow version`,className:`min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:k,onChange:e=>A(e.target.value),disabled:et||!D.length,children:D.length?D.map(e=>(0,W.jsx)(`option`,{value:d9(e),children:m0e(e)},d9(e))):(0,W.jsx)(`option`,{value:``,children:`No published workflow versions`})})]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Fe,disabled:et||!Pe,title:`Add Workflow node`,children:[(0,W.jsx)(Ac,{size:13}),`Add Workflow node`]}),(0,W.jsxs)(`label`,{className:`grid min-w-0 gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Adapter ref`}),(0,W.jsx)(`select`,{"aria-label":`Adapter node ref`,className:`min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:N,onChange:e=>P(e.target.value),disabled:et||!j.length,children:j.length?j.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id)):(0,W.jsx)(`option`,{value:``,children:`No registered adapters`})})]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Ie,disabled:et||!N,title:`Add Adapter node`,children:[(0,W.jsx)(Mc,{size:13}),`Add Adapter node`]}),(0,W.jsxs)(`label`,{className:`grid min-w-0 gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Human action ref`}),(0,W.jsx)(`select`,{"aria-label":`Human node action ref`,className:`min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:L,onChange:e=>R(e.target.value),disabled:et||!F.length,children:F.length?F.map(e=>(0,W.jsx)(`option`,{value:e.id,children:p0e(e)},e.id)):(0,W.jsx)(`option`,{value:``,children:`No registered human actions`})})]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Le,disabled:et||!L,title:`Add Human node`,children:[(0,W.jsx)(qc,{size:13}),`Add Human node`]}),(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-2 text-[11px] leading-5 text-slate-500`,children:`Workflow nodes store only a workflow id/version reference. Adapter and human nodes store only registered deterministic adapter or human action refs.`}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`label`,{className:`grid min-w-0 gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`From`}),(0,W.jsx)(`select`,{"aria-label":`Connect from node`,className:`min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:h,onChange:e=>g(e.target.value),disabled:et||!tt,children:pe.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))})]}),(0,W.jsxs)(`label`,{className:`grid min-w-0 gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`To`}),(0,W.jsx)(`select`,{"aria-label":`Connect to node`,className:`min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:_,onChange:e=>v(e.target.value),disabled:et||!tt,children:pe.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))})]})]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>Re(),disabled:et||!h||!_||h===_,title:`Connect nodes`,children:[(0,W.jsx)(Mc,{size:13}),`Connect nodes`]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>Ke(40,0),disabled:et||p?.type!==`node`,title:`Nudge selected node`,children:[(0,W.jsx)(Jc,{size:13}),`Nudge selected node`]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-red-500/70 hover:text-red-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Be,disabled:et||!p,title:`Delete selected`,children:[(0,W.jsx)(Sl,{size:13}),`Delete selected`]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-emerald-700/70 px-3 py-2 text-xs font-semibold text-emerald-200 transition hover:border-emerald-400 hover:text-emerald-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:qe,disabled:et||!l.length||!y,title:`Save layout`,children:[$e?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(cl,{size:13}),`Save layout`]})]}):null,ee===`inspect`?(0,W.jsxs)(`div`,{className:`grid gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Selected graph element`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Selected graph element`}),(0,W.jsx)(`div`,{className:`mt-2 text-xs leading-5 text-slate-300`,children:Ze})]}),p?.type===`node`&&Qe?(0,W.jsx)(v0e,{nodeId:p.id,node:Qe,lastRun:ae.lastRun,visualState:ae.runningNodeIds.has(p.id)?`running`:ae.recentNodeIds.has(p.id)?`recent`:void 0}):null,n({draft:e,selectedElement:p,nodeIds:pe,isSaving:$e,onSaveDefinition:_e,onDraftDefinitionChange:o})]}):null,ee===`status`?(0,W.jsxs)(`div`,{className:`grid gap-3`,children:[a?(0,W.jsx)(`div`,{className:`rounded-sm border border-amber-700/60 bg-amber-950/20 p-3 text-xs leading-5 text-amber-100`,"aria-label":`Read-only workflow graph`,children:`This published workflow is read-only. Duplicate it from the top bar to edit your own copy.`}):null,(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-3 text-xs leading-5 text-slate-300`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Graph summary`}),(0,W.jsxs)(`div`,{className:`mt-2 grid gap-1`,children:[(0,W.jsxs)(`div`,{children:[l.length,` nodes`]}),(0,W.jsxs)(`div`,{children:[d.length,` edges`]}),(0,W.jsx)(`div`,{children:c.usedAutoLayout?`Auto layout; ${c.missingPositionCount} nodes need saved positions.`:`Manual positions saved.`})]})]}),C?(0,W.jsx)(`div`,{className:`rounded-sm border p-3 text-xs leading-5 ${x===`error`?`border-red-900/70 bg-red-950/40 text-red-200`:`border-emerald-900/60 bg-emerald-950/20 text-emerald-200`}`,role:`status`,children:C}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-3 text-xs leading-5 text-slate-500`,children:`No recent editor status message.`})]}):null]})]})]}),i?null:(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22]/70 p-3 text-[11px] leading-5 text-slate-500`,children:`Automatic layout is a canvas projection only for workflows without saved positions. Node positions and edge routes are preserved when you connect, add, inspect, or save graph edits. Saving layout writes only display metadata and does not change nodes, edges, ports, guards, adapters, runtime routing, or validation semantics.`})]})}function _0e(){return(0,W.jsx)(`style`,{children:`
220
+ {{input}}`;function o0e(e,t,n){return W7(e,t,n,d0e(t))}function s0e(e,t,n,r){return W7(e,t,n,f0e(t,r))}function c0e(e,t,n,r){return W7(e,t,n,p0e(t,r))}function l0e(e,t,n,r){return W7(e,t,n,m0e(t,r))}function u0e(e,t,n,r){return W7(e,t,n,h0e(t,r))}function d0e(e){return{kind:`trigger`,trigger:{kind:`manual`,mode:`editor`},label:`Manual Trigger ${e}`,output:i9(`text`,`Manual text prompt from the workflow editor.`,void 0),ui:{variant:`start`}}}function f0e(e,t){return{kind:`agent`,runtime:`pibo`,label:`Agent ${e}`,profile:{kind:`fixed`,id:t||`base`},promptTemplate:a0e,metadata:{sessionOverrides:{prompt:!0}}}}function p0e(e,t){return{kind:`workflow`,label:`Workflow ${e}`,workflowId:t.id,workflowVersion:t.version}}function m0e(e,t,n,r){return{kind:`adapter`,label:`Adapter ${e}`,mode:`deterministic`,handler:a9(t),input:Q7(n??i9(`text`,``,void 0)),output:Q7(r??i9(`text`,``,void 0))}}function h0e(e,t){return{kind:`human`,label:`Human ${e}`,prompt:`Review the workflow context and choose an available action.`,input:i9(`text`,`Context for human review.`,void 0),output:i9(`json`,`Human action result.`,void 0,n9(J7)),schema:Q7(J7),actions:[Y1e(t)],timeout:{kind:`minutes`,value:60}}}function g0e(e,t){return`${e}@${t}`}function _0e(e){let t=e.lastIndexOf(`@`);if(!(t<=0||t===e.length-1))return{workflowId:e.slice(0,t),workflowVersion:e.slice(t+1)}}function v0e(e){return e.source===`custom`?`${e.displayName} (custom)`:`${e.displayName} (global)`}function y0e(e){return`${e.displayName} (${e.id})`}function u9(e){return`${e.displayName} (${e.id})`}function b0e(e){return`${e.displayName}${e.kind?` · ${e.kind}`:``} (${e.id})`}function d9(e){return g0e(e.id,e.version)}function x0e(e){return`${e.title} (${d9(e)})`}function S0e({diagnostics:e,emptyLabel:t}){return e.length?(0,W.jsx)(`div`,{className:`grid gap-2`,"aria-label":`Inspector diagnostics`,children:e.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-amber-700/70 bg-amber-950/30 p-2 text-[11px] leading-5 text-amber-100`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 font-bold text-amber-200`,children:[(0,W.jsx)(Cl,{size:12}),e.code]}),(0,W.jsx)(`div`,{className:`mt-1`,children:e.message}),e.path?(0,W.jsx)(`div`,{className:`mt-1 font-mono text-amber-200/80`,children:e.path}):null,e.hint?(0,W.jsx)(`div`,{className:`mt-1 text-amber-200/80`,children:e.hint}):null]},`${e.code}:${e.path??e.nodeId??e.edgeId??e.registryRef??e.message}`))}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-2 text-[11px] text-slate-500`,children:t})}function f9({label:e}){return(0,W.jsx)(`span`,{className:`rounded-full border border-slate-700 bg-[#101d22] px-2 py-0.5 text-slate-400`,children:e})}function C0e({draft:e,onDraftChange:t,renderInspectors:n,fullHeight:r=!1,compactHeader:i=!1,readOnly:a=!1,onDraftDefinitionChange:o,onStatusMessage:s}){let c=(0,U.useMemo)(()=>f1e(e.definition,e.diagnostics),[e.definition,e.diagnostics]),[l,u]=(0,U.useState)(c.nodes),[d,f]=(0,U.useState)(c.edges),[p,m]=(0,U.useState)(),[h,g]=(0,U.useState)(``),[_,v]=(0,U.useState)(``),[y,b]=(0,U.useState)(!1),[x,S]=(0,U.useState)(`idle`),[C,w]=(0,U.useState)(),[T,E]=(0,U.useState)(`base`),[D,O]=(0,U.useState)([]),[k,A]=(0,U.useState)(``),[j,M]=(0,U.useState)([]),[N,P]=(0,U.useState)(``),[F,I]=(0,U.useState)([]),[L,R]=(0,U.useState)(``),[z,B]=(0,U.useState)(440),[ee,te]=(0,U.useState)(`inspect`),[ne,re]=(0,U.useState)(),[V,ie]=(0,U.useState)(),[ae,oe]=(0,U.useState)(()=>({runningNodeIds:new Set,recentNodeIds:new Set,recentEdgeIds:new Set})),se=(0,U.useRef)(null),ce=(0,U.useRef)(null),le=(0,U.useRef)(null),ue=(0,U.useRef)([]);(0,U.useEffect)(()=>{let e=!1;return Z2().then(t=>{!e&&t.options[0]?.id&&E(t.options[0].id)}).catch(()=>void 0),()=>{e=!0}},[]),(0,U.useEffect)(()=>{let e=!1;return e4().then(t=>{e||(O(t.options),A(e=>e||(t.options[0]?d9(t.options[0]):``)))}).catch(()=>void 0),()=>{e=!0}},[]),(0,U.useEffect)(()=>{let e=!1;return Q2().then(t=>{e||(M(t.options),P(e=>e||(t.options[0]?.id??``)))}).catch(()=>void 0),()=>{e=!0}},[]),(0,U.useEffect)(()=>{let e=!1;return $2().then(t=>{e||(I(t.options),R(e=>e||(t.options[0]?.id??``)))}).catch(()=>void 0),()=>{e=!0}},[]),(0,U.useEffect)(()=>{u(c.nodes),f(c.edges),m(e=>e&&p1e(c,e)?e:void 0)},[c]),(0,U.useEffect)(()=>{b(!1)},[e.draftId,e.revision]),(0,U.useEffect)(()=>()=>{for(let e of ue.current)clearTimeout(e);ue.current=[]},[]);let de=(0,U.useCallback)(()=>{for(let e of ue.current)clearTimeout(e);ue.current=[]},[]),fe=(0,U.useCallback)(e=>{de();let t=e.nodeAttempts.filter(e=>e.kind===`agent`),n=t.length?t.map(t=>({nodeIds:[t.nodeId],edgeIds:e.edgeTransfers.filter(e=>e.targetNodeId===t.nodeId).map(e=>e.edgeId)})):[{nodeIds:e.nodeAttempts.map(e=>e.nodeId),edgeIds:e.edgeTransfers.map(e=>e.edgeId)}];n.forEach((t,n)=>{let r=setTimeout(()=>{oe({runningNodeIds:new Set,recentNodeIds:new Set(t.nodeIds),recentEdgeIds:new Set(t.edgeIds),lastRun:e})},n*900);ue.current.push(r)});let r=setTimeout(()=>{oe(e=>({...e,runningNodeIds:new Set,recentNodeIds:new Set,recentEdgeIds:new Set})),ue.current=[]},Math.max(n.length,1)*900+600);ue.current.push(r)},[de]),pe=(0,U.useMemo)(()=>l.map(e=>e.id),[l]);(0,U.useEffect)(()=>{g(e=>e&&pe.includes(e)?e:pe[0]??``),v(e=>e&&pe.includes(e)&&e!==h?e:pe.find(e=>e!==(h||pe[0]))??``)},[pe,h]);let me=(0,U.useCallback)((e,t=l,n=d)=>{let r=new Set(Object.keys(I7(e))),i=new Set(Object.keys(L7(e))),a=Object.fromEntries(Object.entries(B7(e)).filter(([e])=>r.has(e)));for(let e of t)r.has(e.id)&&(a[e.id]=e.position);let o=Object.fromEntries(Object.entries(V7(e)).filter(([e])=>i.has(e)));for(let e of n)i.has(e.id)&&e.data?.route&&(o[e.id]=e.data.route);return K7(e,a,o)},[d,l]),he=(0,U.useCallback)((t=l,n=d)=>{o?.(me(e.definition,t,n))},[e.definition,d,me,l,o]),ge=(0,U.useCallback)((e,t=`status`)=>{w(e),s?.(e,t)},[s]),_e=(0,U.useCallback)(async(n,r,i={})=>{if(a){ge(`This workflow is read-only. Duplicate it before editing.`,`error`);return}let o=me(n,i.layoutNodes,i.layoutEdges);S(`saving`);try{t((await t4(e.draftId,{definition:o,editTrigger:i.editTrigger??`graph_edit`})).draft),S(`saved`),ge(r),i.clearLayoutDirty&&b(!1)}catch(e){let t=e instanceof Error?e.message:`Failed to save graph edit`;S(`error`),ge(t,`error`)}},[e.draftId,me,t,ge,a]),ve=(0,U.useCallback)(e=>{a||(u(t=>EZe(e,t)),e.some(e=>e.type===`position`)&&b(!0))},[a]),ye=(0,U.useCallback)((e,t)=>{if(a)return;let n=l.map(e=>e.id===t.id?{...e,position:t.position}:e);u(n),b(!0),he(n,d),ge(`Layout updated for ${t.id}; it will be preserved on save or graph edits.`)},[d,l,ge,a,he]),be=(0,U.useCallback)(e=>{a||f(t=>DZe(e,t))},[a]),xe=(0,U.useCallback)((e,t)=>{a||(f(n=>{let r=n.map(n=>n.id===e?{...n,data:{edgeId:n.data?.edgeId??n.id,kind:n.data?.kind??`data`,...n.data,route:t}}:n);return he(l,r),r}),b(!0),ge(`Edge route updated for ${e}; it will be preserved on save or graph edits.`))},[l,ge,a,he]),Se=(0,U.useCallback)(()=>Array.from(ce.current?.querySelectorAll(`[role='menuitem']:not([disabled])`)??[]),[]),Ce=(0,U.useCallback)((e=!1)=>{let t=le.current;re(void 0),e&&requestAnimationFrame(()=>t?.focus())},[]);(0,U.useLayoutEffect)(()=>{ne&&Se()[0]?.focus()},[ne,Se]),(0,U.useEffect)(()=>{if(!ne)return;let e=()=>Ce(),t=e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),Ce(!0))};return document.addEventListener(`click`,e),document.addEventListener(`contextmenu`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`click`,e),document.removeEventListener(`contextmenu`,e),document.removeEventListener(`keydown`,t)}},[Ce,ne]);let we=(0,U.useCallback)((e,t,n,r)=>{let i=se.current?.getBoundingClientRect(),a=i?e-i.left:e,o=i?t-i.top:t;le.current=r,re({x:Math.max(8,Math.min(a,(i?.width??a)-236)),y:Math.max(8,Math.min(o,(i?.height??o)-260)),target:n})},[]),H=(0,U.useCallback)((e,t)=>{e.preventDefault(),e.stopPropagation();let n=e.target instanceof Element?e.target:null,r=t.type===`pane`?se.current:n?.closest(t.type===`node`?`.react-flow__node[data-id]`:`.react-flow__edge[data-id]`)??null;we(e.clientX,e.clientY,t,r)},[we]),Te=e=>{let t=Se(),n=Math.max(0,t.indexOf(document.activeElement)),r=r0e(e.key,n,t.length);r&&(e.preventDefault(),e.stopPropagation(),e.nativeEvent.stopImmediatePropagation(),r.type===`dismiss`?Ce(!0):t[r.index]?.focus())},Ee=(0,U.useCallback)(e=>{if(!i0e(e.key,e.shiftKey))return;let t=(e.target instanceof Element?e.target:null)?.closest(`.react-flow__node[data-id], .react-flow__edge[data-id]`),n;if(t?.classList.contains(`react-flow__node`)){let e=t.dataset.id;e&&(n={type:`node`,id:e})}else if(t?.classList.contains(`react-flow__edge`)){let e=t.dataset.id;e&&(n={type:`edge`,id:e})}else e.target===e.currentTarget&&(n={type:`pane`});if(!n)return;e.preventDefault(),e.stopPropagation(),e.nativeEvent.stopImmediatePropagation(),n.type!==`pane`&&m(n);let r=t??se.current,i=r?.getBoundingClientRect();we(i?.left??0,i?.bottom??0,n,r??null)},[we]),De=(0,U.useCallback)((e,t)=>{m({type:`edge`,id:e}),u(e=>e.map(e=>e.selected?{...e,selected:!1}:e)),f(t=>t.map(t=>({...t,selected:t.id===e}))),H(t,{type:`edge`,id:e})},[H]),Oe=(0,U.useCallback)(e=>{m({type:`edge`,id:e}),u(e=>e.map(e=>e.selected?{...e,selected:!1}:e)),f(t=>t.map(t=>({...t,selected:t.id===e}))),re(void 0)},[]),ke=(0,U.useCallback)(e=>{m({type:`node`,id:e}),te(`status`),re(void 0),ie({triggerNodeId:e,input:``,status:`idle`})},[]),Ae=(0,U.useMemo)(()=>l.map(e=>({...e,data:{...e.data,onManualTriggerRun:ke,readOnly:a,runVisualState:ae.runningNodeIds.has(e.id)?`running`:ae.recentNodeIds.has(e.id)?`recent`:void 0}})),[l,ke,a,ae.recentNodeIds,ae.runningNodeIds]),je=(0,U.useMemo)(()=>d.map(e=>({...e,data:{edgeId:e.data?.edgeId??e.id,kind:e.data?.kind??`data`,...e.data,onRouteChange:xe,onSelect:Oe,onContextMenu:De,readOnly:a,recentTransition:ae.recentEdgeIds.has(e.id)}})),[d,De,xe,Oe,a,ae.recentEdgeIds]),Me=()=>{let t=U7(e.definition,`trigger`),n=H7(l),r=o0e(e.definition,t,n);m({type:`node`,id:t}),_e(r,`Added manual trigger ${t}.`)},Ne=()=>{let t=U7(e.definition,`agent`),n=H7(l),r=s0e(e.definition,t,n,T);m({type:`node`,id:t}),_e(r,`Added node ${t}.`)},Pe=(0,U.useMemo)(()=>D.find(e=>d9(e)===k),[D,k]),Fe=()=>{if(!Pe)return;let t=U7(e.definition,`workflow`),n=H7(l),r=c0e(e.definition,t,n,Pe);m({type:`node`,id:t}),_e(r,`Added nested workflow node ${t} for ${Pe.id}@${Pe.version}.`)},Ie=()=>{if(!N)return;let t=U7(e.definition,`adapter`),n=H7(l),r=l0e(e.definition,t,n,N);m({type:`node`,id:t}),_e(r,`Added adapter node ${t} for ${N}.`)},Le=()=>{if(!L)return;let t=U7(e.definition,`human`),n=H7(l),r=F.find(e=>e.id===L),i=u0e(e.definition,t,n,o9(L,r?.kind));m({type:`node`,id:t}),_e(i,`Added human node ${t} with action ${L}.`)},Re=(0,U.useCallback)((t=h,n=_)=>{if(!t||!n||t===n)return;let r=b1e(e.definition,t,n),i=x1e(e.definition,r,t,n);f(e=>LYe({id:r,source:t,target:n,type:`workflowEdge`},e)),m({type:`edge`,id:r}),_e(i,`Connected ${t} to ${n}.`)},[e.definition,_e,h,_]),ze=(0,U.useCallback)(t=>{let n=t.type===`node`?S1e(e.definition,t.id):C1e(e.definition,t.id);m(void 0),re(void 0),_e(n,`Deleted ${t.type} ${t.id}.`)},[e.definition,_e]),Be=()=>{p&&ze(p)};(0,U.useEffect)(()=>{let e=e=>{a||x===`saving`||!p||(e.key===`Delete`||e.key===`Backspace`)&&(K0e(e.target)||(e.preventDefault(),ze(p)))};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[ze,a,x,p]);let Ve=e=>{m(e),te(`inspect`),re(void 0)},He=t=>{m({type:`node`,id:t}),re(void 0),_e({...e.definition,initial:t},`Set ${t} as the initial node.`)},Ue=(e,t)=>{t===`source`?g(e):v(e),m({type:`node`,id:e}),re(void 0),ge(t===`source`?`Connect from ${e}; choose a target node.`:`Connect to ${e}; choose a source node.`)},We=t=>{let n=d.map(e=>{if(e.id!==t)return e;let{route:n,...r}=e.data??{};return{...e,data:{edgeId:e.data?.edgeId??e.id,kind:e.data?.kind??`data`,...r}}}),r=V7(e.definition);delete r[t];let i=K7(e.definition,B7(e.definition),r);f(n),m({type:`edge`,id:t}),re(void 0),_e(i,`Reset route for edge ${t}.`,{layoutEdges:n})},Ge=(e,t,n)=>{let r=l.map(r=>r.id===e?{...r,position:{x:r.position.x+t,y:r.position.y+n},selected:!0}:r);u(r),he(r,d),m({type:`node`,id:e}),re(void 0),b(!0),ge(`Moved node ${e}; layout will be preserved on save or graph edits.`)},Ke=(e,t)=>{p?.type===`node`&&Ge(p.id,e,t)},qe=()=>{let t=me(e.definition);_e(t,`Layout saved to workflow.ui.positions and workflow.ui.edgeRoutes without changing runtime semantics.`,{clearLayoutDirty:!0})},Je=(0,U.useCallback)(e=>{a||!e.source||!e.target||Re(e.source,e.target)},[Re,a]),Ye=(0,U.useCallback)(async()=>{if(!V||V.status===`running`)return;let n=V.input;de();let r=I7(e.definition),i=Object.values(L7(e.definition)).flatMap(e=>{let t=q7(e.from),n=q7(e.to);return t===V.triggerNodeId&&n&&R7(r[n]??{})===`agent`?[n]:[]});oe(e=>({...e,runningNodeIds:new Set(i.length?i:[V.triggerNodeId]),recentNodeIds:new Set,recentEdgeIds:new Set})),ie(e=>e&&{...e,status:`running`,message:`Running manual trigger…`,output:void 0}),ge(`Running manual trigger ${V.triggerNodeId}…`);try{let r=await rVe(e.draftId,{triggerNodeId:V.triggerNodeId,input:n});t(r.draft),fe(r),ie(e=>e&&{...e,status:r.ok?`completed`:`error`,message:r.ok?`Manual trigger run completed.`:r.error?.message??`Manual trigger run failed.`,output:r.output,runId:r.run?.id,nodeCount:r.nodeAttempts.length,edgeTransferCount:r.edgeTransfers.length}),ge(r.ok?`Manual trigger ${V.triggerNodeId} completed.`:r.error?.message??`Manual trigger run failed.`,r.ok?`status`:`error`)}catch(e){let t=e instanceof Error?e.message:`Manual trigger run failed.`;oe(e=>({...e,runningNodeIds:new Set,recentNodeIds:new Set,recentEdgeIds:new Set})),ie(e=>e&&{...e,status:`error`,message:t}),ge(t,`error`)}},[de,e.definition,e.draftId,V,t,ge,fe]),Xe=(0,U.useCallback)(e=>{e.preventDefault();let t=e=>{let t=Math.min(720,Math.max(420,window.innerWidth-520)),n=Math.max(360,Math.min(t,window.innerWidth-e.clientX-32));B(n)},n=()=>{document.removeEventListener(`mousemove`,t),document.removeEventListener(`mouseup`,n),document.body.style.cursor=``,document.body.style.userSelect=``};document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`,document.addEventListener(`mousemove`,t),document.addEventListener(`mouseup`,n)},[]),Ze=q0e(e.definition,p),Qe=p?.type===`node`?I7(e.definition)[p.id]:void 0,$e=x===`saving`,et=$e||a,tt=pe.length>1,nt=ne?.target,rt=nt?.type===`node`?`Node ${nt.id}`:nt?.type===`edge`?`Edge ${nt.id}`:`Graph canvas`,it=nt?.type===`node`?`Workflow node actions`:nt?.type===`edge`?`Workflow edge actions`:`Canvas actions`,at=[{id:`build`,label:`Build`,icon:kl},{id:`inspect`,label:`Inspect`,icon:_l},{id:`status`,label:`Status`,icon:Es}];return(0,W.jsxs)(`section`,{className:`${r?`flex h-full min-h-0 flex-col`:`grid`} gap-4 rounded-sm border border-slate-800 bg-[#151f24]/70 p-4`,"aria-labelledby":`workflow-graph-canvas-title`,children:[(0,W.jsx)(w0e,{}),i?null:(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:[(0,W.jsx)(qc,{size:13}),`Workflow graph canvas`]}),(0,W.jsx)(`h4`,{id:`workflow-graph-canvas-title`,className:`mt-1 text-sm font-bold text-slate-100`,children:`Visual graph editor`}),(0,W.jsxs)(`p`,{className:`mt-2 max-w-2xl text-xs leading-5 text-slate-500`,children:[`React Flow projects Pibo Workflow IR nodes and edges. Graph edits save IR changes; layout saves only `,(0,W.jsx)(`code`,{className:`rounded bg-slate-900 px-1 text-slate-300`,children:`workflow.ui.positions`}),` metadata.`]})]}),(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2 text-[11px]`,children:[(0,W.jsx)(f9,{label:`${l.length} nodes`}),(0,W.jsx)(f9,{label:`${d.length} edges`}),(0,W.jsx)(f9,{label:c.usedAutoLayout?`auto layout (${c.missingPositionCount} missing)`:`manual positions`})]})]}),(0,W.jsxs)(`div`,{className:`${r?`min-h-0 flex-1`:``} grid min-w-0 gap-3 text-xs`,style:{gridTemplateColumns:`minmax(0, 1fr) ${z}px`},children:[(0,W.jsxs)(`div`,{ref:se,className:`${r?`h-full min-h-[360px]`:`h-[420px]`} relative min-w-0 overflow-hidden rounded-sm border border-slate-800 bg-[#0c171c]`,"aria-label":`Workflow graph canvas`,role:`group`,tabIndex:0,onKeyDownCapture:Ee,children:[(0,W.jsxs)(M$e,{nodes:Ae,edges:je,nodeTypes:W0e,edgeTypes:G0e,onNodesChange:ve,onNodeDragStop:ye,onEdgesChange:be,onConnect:Je,onNodeClick:(e,t)=>m({type:`node`,id:t.id}),onEdgeClick:(e,t)=>Oe(t.id),onPaneClick:()=>{m(void 0),re(void 0)},onNodeContextMenu:(e,t)=>{m({type:`node`,id:t.id}),H(e,{type:`node`,id:t.id})},onEdgeContextMenu:(e,t)=>{m({type:`edge`,id:t.id}),H(e,{type:`edge`,id:t.id})},onPaneContextMenu:e=>H(e,{type:`pane`}),fitView:!0,minZoom:.35,maxZoom:1.6,colorMode:`dark`,nodesDraggable:!a,nodesConnectable:!a,edgesReconnectable:!a,defaultEdgeOptions:{type:`workflowEdge`,markerEnd:{type:x5.ArrowClosed,color:`#38bdf8`}},children:[(0,W.jsx)(R$e,{color:`#1f3a44`,gap:18}),(0,W.jsx)(o1e,{pannable:!0,zoomable:!0,nodeColor:e=>e.selected?`#38bdf8`:`#1e293b`}),(0,W.jsx)(K$e,{showInteractive:!1})]}),V?(0,W.jsxs)(`div`,{className:`absolute bottom-3 left-3 z-40 w-[360px] max-w-[calc(100%-1.5rem)] rounded-sm border border-emerald-700/70 bg-[#101d22] p-3 text-xs shadow-xl shadow-black/40`,role:`dialog`,"aria-label":`Manual trigger test run`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-emerald-300`,children:`Manual trigger`}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-slate-400`,children:V.triggerNodeId})]}),(0,W.jsx)(`button`,{type:`button`,className:`rounded-sm border border-slate-700 px-2 py-1 text-slate-400 transition hover:border-slate-500 hover:text-slate-100`,onClick:()=>ie(void 0),disabled:V.status===`running`,"aria-label":`Close manual trigger dialog`,children:(0,W.jsx)(Al,{size:13})})]}),(0,W.jsxs)(`label`,{className:`mt-3 grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Prompt input`}),(0,W.jsx)(`textarea`,{className:`min-h-24 resize-y rounded-sm border border-slate-700 bg-[#151f24] px-2 py-2 font-mono text-[11px] text-slate-100 outline-none transition focus:border-emerald-500`,value:V.input,onChange:e=>ie(t=>t&&{...t,input:e.target.value}),disabled:V.status===`running`,placeholder:`Write the text prompt for the first agent…`})]}),(0,W.jsx)(`div`,{className:`mt-3 flex gap-2`,children:(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex flex-1 items-center justify-center gap-2 rounded-sm border border-emerald-600/70 bg-emerald-500/10 px-3 py-2 text-xs font-bold text-emerald-100 transition hover:border-emerald-300 hover:text-white disabled:cursor-not-allowed disabled:opacity-50`,onClick:Ye,disabled:V.status===`running`,children:[V.status===`running`?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(el,{size:13}),`Run trigger`]})}),V.message?(0,W.jsx)(`div`,{className:`mt-3 rounded-sm border p-2 text-[11px] leading-5 ${V.status===`error`?`border-red-800 bg-red-950/30 text-red-200`:`border-emerald-800 bg-emerald-950/20 text-emerald-100`}`,children:V.message}):null,V.output?(0,W.jsx)(`pre`,{className:`mt-2 max-h-32 overflow-auto rounded-sm border border-slate-800 bg-[#0c171c] p-2 text-[11px] leading-5 text-slate-200`,children:V.output}):null,V.runId?(0,W.jsxs)(`div`,{className:`mt-2 text-[10px] text-slate-500`,children:[`Run `,V.runId,` · `,V.nodeCount??0,` node attempts · `,V.edgeTransferCount??0,` edge transfers`]}):null]}):null,ne?(0,W.jsxs)(`div`,{ref:ce,className:`absolute z-50 w-56 overflow-hidden rounded-sm border border-slate-700 bg-[#1a262b] py-1 text-xs shadow-xl shadow-black/40`,style:{left:ne.x,top:ne.y},role:`menu`,"aria-label":`Workflow graph context menu`,onKeyDown:Te,onClick:e=>e.stopPropagation(),onContextMenu:e=>{e.preventDefault(),e.stopPropagation()},children:[(0,W.jsxs)(`div`,{className:`border-b border-slate-800 px-3 py-2`,children:[(0,W.jsx)(`div`,{className:`truncate text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:it}),(0,W.jsx)(`div`,{className:`mt-0.5 truncate font-mono text-[11px] text-slate-400`,children:rt})]}),nt?.type===`node`?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(p9,{icon:(0,W.jsx)(ll,{size:14}),label:`Inspect node`,onSelect:()=>Ve({type:`node`,id:nt.id})}),(0,W.jsx)(p9,{icon:(0,W.jsx)($s,{size:14}),label:`Set as initial`,onSelect:()=>He(nt.id),disabled:et}),(0,W.jsx)(p9,{icon:(0,W.jsx)(Mc,{size:14}),label:`Connect from this`,onSelect:()=>Ue(nt.id,`source`),disabled:et}),(0,W.jsx)(p9,{icon:(0,W.jsx)(lc,{size:14}),label:`Connect to this`,onSelect:()=>Ue(nt.id,`target`),disabled:et}),(0,W.jsx)(p9,{icon:(0,W.jsx)(Jc,{size:14}),label:`Nudge right`,onSelect:()=>Ge(nt.id,40,0),disabled:et}),(0,W.jsx)(`div`,{className:`my-1 border-t border-slate-800`}),(0,W.jsx)(p9,{icon:(0,W.jsx)(Sl,{size:14}),label:`Delete node`,onSelect:()=>ze({type:`node`,id:nt.id}),disabled:et,destructive:!0})]}):null,nt?.type===`edge`?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(p9,{icon:(0,W.jsx)(ll,{size:14}),label:`Inspect edge`,onSelect:()=>Ve({type:`edge`,id:nt.id})}),(0,W.jsx)(p9,{icon:(0,W.jsx)(al,{size:14}),label:`Reset edge route`,onSelect:()=>We(nt.id),disabled:et}),(0,W.jsx)(`div`,{className:`my-1 border-t border-slate-800`}),(0,W.jsx)(p9,{icon:(0,W.jsx)(Sl,{size:14}),label:`Delete edge`,onSelect:()=>ze({type:`edge`,id:nt.id}),disabled:et,destructive:!0})]}):null,nt?.type===`pane`?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(p9,{icon:(0,W.jsx)(el,{size:14}),label:`Add Manual trigger`,onSelect:()=>{re(void 0),Me()},disabled:et}),(0,W.jsx)(p9,{icon:(0,W.jsx)(tl,{size:14}),label:`Add Agent node`,onSelect:()=>{re(void 0),Ne()},disabled:et}),(0,W.jsx)(p9,{icon:(0,W.jsx)(cl,{size:14}),label:`Save layout`,onSelect:()=>{re(void 0),qe()},disabled:et||!l.length||!y}),(0,W.jsx)(p9,{icon:(0,W.jsx)(Al,{size:14}),label:`Clear selection`,onSelect:()=>{m(void 0),re(void 0)},disabled:!p})]}):null]}):null]}),(0,W.jsxs)(`aside`,{className:`relative flex min-h-0 min-w-0 flex-col overflow-hidden rounded-sm border border-slate-800 bg-[#0f1b20]`,"aria-label":`Workflow editor inspector panel`,children:[(0,W.jsx)(`button`,{type:`button`,className:`absolute -left-1 top-0 z-10 h-full w-2 cursor-col-resize border-l border-[#11a4d4]/20 bg-[#11a4d4]/10 opacity-60 transition hover:bg-[#11a4d4]/30 hover:opacity-100`,onMouseDown:Xe,"aria-label":`Resize workflow inspector`,title:`Drag to resize inspector`}),(0,W.jsxs)(`header`,{className:`shrink-0 border-b border-slate-800 bg-[#101d22] p-2`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:`Workflow editor`}),(0,W.jsx)(`div`,{className:`mt-0.5 truncate text-[11px] text-slate-500`,children:`Drag edge to resize`})]}),(0,W.jsx)(`nav`,{className:`mt-2 grid grid-cols-3 gap-1`,"aria-label":`Workflow inspector sections`,children:at.map(e=>{let t=e.icon;return(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border px-2 py-2 text-[11px] font-semibold transition ${ee===e.id?`border-[#11a4d4]/70 bg-[#11a4d4]/10 text-[#8bdcf4]`:`border-slate-800 text-slate-400 hover:border-slate-600 hover:text-slate-100`}`,onClick:()=>te(e.id),title:e.label,children:[(0,W.jsx)(t,{size:14}),(0,W.jsx)(`span`,{children:e.label})]},e.id)})})]}),(0,W.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto overflow-x-hidden p-3`,children:[ee===`build`?a?(0,W.jsx)(`div`,{className:`rounded-sm border border-amber-700/60 bg-amber-950/20 p-3 text-xs leading-5 text-amber-100`,"aria-label":`Read-only workflow graph`,children:`This published workflow is read-only. Duplicate it from the top bar to edit your own copy.`}):(0,W.jsxs)(`div`,{className:`grid min-w-0 gap-2`,"aria-label":`Graph edit controls`,children:[(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-emerald-700/70 px-3 py-2 text-xs font-semibold text-emerald-200 transition hover:border-emerald-400 hover:text-emerald-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Me,disabled:et,title:`Add Manual trigger node`,children:[(0,W.jsx)(el,{size:13}),`Add Manual trigger`]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Ne,disabled:et,title:`Add Agent node`,children:[(0,W.jsx)(tl,{size:13}),`Add Agent node`]}),(0,W.jsxs)(`label`,{className:`grid min-w-0 gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Nested workflow version`}),(0,W.jsx)(`select`,{"aria-label":`Nested workflow version`,className:`min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:k,onChange:e=>A(e.target.value),disabled:et||!D.length,children:D.length?D.map(e=>(0,W.jsx)(`option`,{value:d9(e),children:x0e(e)},d9(e))):(0,W.jsx)(`option`,{value:``,children:`No published workflow versions`})})]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Fe,disabled:et||!Pe,title:`Add Workflow node`,children:[(0,W.jsx)(Ac,{size:13}),`Add Workflow node`]}),(0,W.jsxs)(`label`,{className:`grid min-w-0 gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Adapter ref`}),(0,W.jsx)(`select`,{"aria-label":`Adapter node ref`,className:`min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:N,onChange:e=>P(e.target.value),disabled:et||!j.length,children:j.length?j.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id)):(0,W.jsx)(`option`,{value:``,children:`No registered adapters`})})]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Ie,disabled:et||!N,title:`Add Adapter node`,children:[(0,W.jsx)(Mc,{size:13}),`Add Adapter node`]}),(0,W.jsxs)(`label`,{className:`grid min-w-0 gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Human action ref`}),(0,W.jsx)(`select`,{"aria-label":`Human node action ref`,className:`min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:L,onChange:e=>R(e.target.value),disabled:et||!F.length,children:F.length?F.map(e=>(0,W.jsx)(`option`,{value:e.id,children:b0e(e)},e.id)):(0,W.jsx)(`option`,{value:``,children:`No registered human actions`})})]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Le,disabled:et||!L,title:`Add Human node`,children:[(0,W.jsx)(qc,{size:13}),`Add Human node`]}),(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-2 text-[11px] leading-5 text-slate-500`,children:`Workflow nodes store only a workflow id/version reference. Adapter and human nodes store only registered deterministic adapter or human action refs.`}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`label`,{className:`grid min-w-0 gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`From`}),(0,W.jsx)(`select`,{"aria-label":`Connect from node`,className:`min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:h,onChange:e=>g(e.target.value),disabled:et||!tt,children:pe.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))})]}),(0,W.jsxs)(`label`,{className:`grid min-w-0 gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`To`}),(0,W.jsx)(`select`,{"aria-label":`Connect to node`,className:`min-w-0 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:_,onChange:e=>v(e.target.value),disabled:et||!tt,children:pe.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))})]})]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>Re(),disabled:et||!h||!_||h===_,title:`Connect nodes`,children:[(0,W.jsx)(Mc,{size:13}),`Connect nodes`]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>Ke(40,0),disabled:et||p?.type!==`node`,title:`Nudge selected node`,children:[(0,W.jsx)(Jc,{size:13}),`Nudge selected node`]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-red-500/70 hover:text-red-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:Be,disabled:et||!p,title:`Delete selected`,children:[(0,W.jsx)(Sl,{size:13}),`Delete selected`]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-emerald-700/70 px-3 py-2 text-xs font-semibold text-emerald-200 transition hover:border-emerald-400 hover:text-emerald-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:qe,disabled:et||!l.length||!y,title:`Save layout`,children:[$e?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(cl,{size:13}),`Save layout`]})]}):null,ee===`inspect`?(0,W.jsxs)(`div`,{className:`grid gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Selected graph element`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Selected graph element`}),(0,W.jsx)(`div`,{className:`mt-2 text-xs leading-5 text-slate-300`,children:Ze})]}),p?.type===`node`&&Qe?(0,W.jsx)(T0e,{nodeId:p.id,node:Qe,lastRun:ae.lastRun,visualState:ae.runningNodeIds.has(p.id)?`running`:ae.recentNodeIds.has(p.id)?`recent`:void 0}):null,n({draft:e,selectedElement:p,nodeIds:pe,isSaving:$e,onSaveDefinition:_e,onDraftDefinitionChange:o})]}):null,ee===`status`?(0,W.jsxs)(`div`,{className:`grid gap-3`,children:[a?(0,W.jsx)(`div`,{className:`rounded-sm border border-amber-700/60 bg-amber-950/20 p-3 text-xs leading-5 text-amber-100`,"aria-label":`Read-only workflow graph`,children:`This published workflow is read-only. Duplicate it from the top bar to edit your own copy.`}):null,(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-3 text-xs leading-5 text-slate-300`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Graph summary`}),(0,W.jsxs)(`div`,{className:`mt-2 grid gap-1`,children:[(0,W.jsxs)(`div`,{children:[l.length,` nodes`]}),(0,W.jsxs)(`div`,{children:[d.length,` edges`]}),(0,W.jsx)(`div`,{children:c.usedAutoLayout?`Auto layout; ${c.missingPositionCount} nodes need saved positions.`:`Manual positions saved.`})]})]}),C?(0,W.jsx)(`div`,{className:`rounded-sm border p-3 text-xs leading-5 ${x===`error`?`border-red-900/70 bg-red-950/40 text-red-200`:`border-emerald-900/60 bg-emerald-950/20 text-emerald-200`}`,role:`status`,children:C}):(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-3 text-xs leading-5 text-slate-500`,children:`No recent editor status message.`})]}):null]})]})]}),i?null:(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22]/70 p-3 text-[11px] leading-5 text-slate-500`,children:`Automatic layout is a canvas projection only for workflows without saved positions. Node positions and edge routes are preserved when you connect, add, inspect, or save graph edits. Saving layout writes only display metadata and does not change nodes, edges, ports, guards, adapters, runtime routing, or validation semantics.`})]})}function w0e(){return(0,W.jsx)(`style`,{children:`
221
221
  @keyframes workflow-node-outline-flow {
222
222
  to { stroke-dashoffset: -32; }
223
223
  }
224
224
  @keyframes workflow-edge-flow {
225
225
  to { stroke-dashoffset: -24; }
226
226
  }
227
- `})}function p9({icon:e,label:t,onSelect:n,disabled:r=!1,destructive:i=!1}){return(0,W.jsxs)(`button`,{type:`button`,role:`menuitem`,tabIndex:-1,onClick:n,disabled:r,className:`flex w-full items-center gap-2 px-3 py-2 text-left transition disabled:cursor-not-allowed disabled:opacity-40 ${i?`text-red-300 hover:bg-red-500/10 hover:text-red-100`:`text-slate-300 hover:bg-[#11a4d4]/10 hover:text-[#11a4d4]`}`,children:[(0,W.jsx)(`span`,{className:`shrink-0`,children:e}),(0,W.jsx)(`span`,{className:`truncate`,children:t})]})}function v0e({nodeId:e,node:t,lastRun:n,visualState:r}){let i=R7(t),a=n?.nodeAttempts.findLast(t=>t.nodeId===e),o=F7(t.input)?t.input:void 0,s=F7(t.output)?t.output:void 0;return(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Workflow node viewer`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:`Node viewer`}),(0,W.jsx)(`div`,{className:`mt-1 truncate text-sm font-bold text-slate-100`,children:z7(e,t)}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-slate-500`,children:e})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 flex-wrap justify-end gap-1 text-[10px]`,children:[(0,W.jsx)(f9,{label:i}),r===`running`?(0,W.jsx)(f9,{label:`running`}):null,r===`recent`?(0,W.jsx)(f9,{label:`last run`}):null]})]}),(0,W.jsxs)(`div`,{className:`grid gap-2 text-[11px] leading-5 text-slate-300`,children:[(0,W.jsx)(m9,{label:`Input port`,value:b0e(o)}),(0,W.jsx)(m9,{label:`Output port`,value:b0e(s)}),i===`trigger`?(0,W.jsx)(m9,{label:`Trigger`,value:x0e(t.trigger)}):null,i===`agent`?(0,W.jsx)(m9,{label:`Agent profile`,value:S0e(t.profile)}):null,i===`agent`?(0,W.jsx)(m9,{label:`Prompt source`,value:typeof t.promptTemplate==`string`?`promptTemplate`:t.promptBuilder?`promptBuilder`:`input`}):null,i===`adapter`?(0,W.jsx)(m9,{label:`Adapter`,value:C0e(t.handler)}):null,i===`workflow`?(0,W.jsx)(m9,{label:`Nested workflow`,value:`${typeof t.workflowId==`string`?t.workflowId:`<missing>`}@${typeof t.workflowVersion==`string`?t.workflowVersion:`latest`}`}):null,i===`human`?(0,W.jsx)(m9,{label:`Human actions`,value:Array.isArray(t.actions)?`${t.actions.length} actions`:`none`}):null]}),a?(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#151f24]/70 p-2 text-[11px] leading-5 text-slate-300`,"aria-label":`Last node run facts`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Last run facts`}),(0,W.jsx)(m9,{label:`Attempt`,value:`${a.id} · ${a.status}`}),a.piboSessionId?(0,W.jsx)(m9,{label:`Pibo Session`,value:a.piboSessionId}):null,(0,W.jsx)(y0e,{label:`Input`,value:a.input}),a.output===void 0?null:(0,W.jsx)(y0e,{label:`Output`,value:a.output})]}):(0,W.jsx)(`div`,{className:`rounded-sm border border-dashed border-slate-700 bg-[#151f24]/50 p-2 text-[11px] leading-5 text-slate-500`,children:`No run facts for this node yet.`})]})}function m9({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`grid grid-cols-[110px_minmax(0,1fr)] gap-2`,children:[(0,W.jsx)(`div`,{className:`text-slate-500`,children:e}),(0,W.jsx)(`div`,{className:`min-w-0 break-words font-mono text-slate-200`,children:t})]})}function y0e({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`grid gap-1`,children:[(0,W.jsx)(`div`,{className:`text-slate-500`,children:e}),(0,W.jsx)(`pre`,{className:`max-h-28 overflow-auto rounded-sm border border-slate-800 bg-[#0c171c] p-2 whitespace-pre-wrap text-slate-200`,children:t})]})}function b0e(e){return e?`${typeof e.kind==`string`?e.kind:`unknown`}${typeof e.description==`string`&&e.description.trim()?` · ${e.description.trim()}`:``}`:`none`}function x0e(e){return F7(e)?`${typeof e.kind==`string`?e.kind:`unknown`} · ${typeof e.mode==`string`?e.mode:`default`}`:`<missing>`}function S0e(e){return F7(e)&&typeof e.id==`string`?e.id:`<missing>`}function C0e(e){return typeof e==`string`?e:F7(e)&&typeof e.id==`string`?e.id:`<missing>`}function w0e({color:e}){return(0,W.jsx)(`svg`,{className:`pointer-events-none absolute inset-0 z-10 h-full w-full`,viewBox:`0 0 100 100`,preserveAspectRatio:`none`,"aria-hidden":`true`,children:(0,W.jsx)(`rect`,{x:`1`,y:`1`,width:`98`,height:`98`,rx:`2`,fill:`none`,stroke:e,strokeWidth:`2`,strokeDasharray:`9 7`,vectorEffect:`non-scaling-stroke`,style:{animation:`workflow-node-outline-flow 0.8s linear infinite`}})})}function T0e({data:e,selected:t}){let n=e.kind===`trigger`,r=e.runVisualState===`running`||e.runVisualState===`recent`,i=e.runVisualState===`running`?`#facc15`:`#22c55e`;return(0,W.jsxs)(`div`,{className:`relative min-w-44 rounded-sm border px-3 py-2 shadow-lg shadow-black/20 ${n?`bg-emerald-950/30`:`bg-[#15242b]`} ${r?`border-transparent`:t?`border-[#38bdf8]`:n?`border-emerald-700/70`:`border-slate-700`}`,children:[r?(0,W.jsx)(w0e,{color:i}):null,n?null:(0,W.jsx)(O7,{type:`target`,position:S5.Left,className:`!h-2.5 !w-2.5 !border-[#0f172a] !bg-[#38bdf8]`}),(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,W.jsx)(`div`,{className:`truncate text-xs font-bold text-slate-100`,children:e.label}),(0,W.jsx)(`span`,{className:`rounded-full border px-2 py-0.5 text-[10px] uppercase tracking-[0.12em] ${n?`border-emerald-500/50 text-emerald-200`:`border-slate-700 text-slate-400`}`,children:e.kind})]}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[10px] text-slate-500`,children:e.nodeId}),(0,W.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-1 text-[10px]`,children:[e.isInitial?(0,W.jsx)(`span`,{className:`rounded-full border border-[#11a4d4]/40 bg-[#11a4d4]/10 px-2 py-0.5 text-[#8bdcf4]`,children:`initial`}):null,e.validationCount?(0,W.jsxs)(`span`,{className:`rounded-full border border-amber-600/60 bg-amber-950/30 px-2 py-0.5 text-amber-200`,children:[e.validationCount,` diagnostics`]}):null]}),n?(0,W.jsxs)(`button`,{type:`button`,className:`nodrag nopan mt-2 inline-flex w-full items-center justify-center gap-2 rounded-sm border border-emerald-600/70 bg-emerald-500/10 px-2 py-1.5 text-[11px] font-bold text-emerald-100 transition hover:border-emerald-300 hover:text-white disabled:cursor-not-allowed disabled:opacity-50`,onClick:t=>{t.preventDefault(),t.stopPropagation(),e.onManualTriggerRun?.(e.nodeId)},disabled:e.readOnly,title:`Run this manual trigger`,children:[(0,W.jsx)(el,{size:12}),`Play test`]}):null,(0,W.jsx)(O7,{type:`source`,position:S5.Right,className:`!h-2.5 !w-2.5 !border-[#0f172a] ${n?`!bg-emerald-400`:`!bg-[#38bdf8]`}`})]})}function E0e({id:e,sourceX:t,sourceY:n,targetX:r,targetY:i,sourcePosition:a,targetPosition:o,markerEnd:s,markerStart:c,style:l,selected:u,data:d,label:f,labelStyle:p,labelShowBg:m,labelBgStyle:h,labelBgPadding:g,labelBgBorderRadius:_}){let{screenToFlowPosition:v}=C7(),[y,b]=(0,U.useState)(void 0),x=(0,U.useRef)(void 0);(0,U.useEffect)(()=>{b(void 0),x.current=void 0},[d?.route,t,n,r,i,a,o]);let S=k0e({sourceX:t,sourceY:n,targetX:r,targetY:i,sourcePosition:a,targetPosition:o,route:{...d?.route??{},...y??{}}}),C=d?.recentTransition===!0,w={...l,stroke:u?`#facc15`:C?`#22c55e`:`#38bdf8`,strokeWidth:u?2.2:C?2.4:1.5,...C?{strokeDasharray:`8 7`,animation:`workflow-edge-flow 0.7s linear infinite`}:{}},T=(t,n)=>{if(d?.readOnly||n.button!==0)return;n.preventDefault(),n.stopPropagation();let r=n.clientX,i=n.clientY,a=!1;x.current={...d?.route??{},...x.current??y??{}};let o=e=>{if(!a&&Math.hypot(e.clientX-r,e.clientY-i)<3)return;a=!0;let n=v({x:e.clientX,y:e.clientY}),o=Math.round(t.axis===`x`?n.x:n.y),s={...x.current??{}};s[t.routeKey]=o,x.current=s,b(s)},s=()=>{document.removeEventListener(`pointermove`,o),document.removeEventListener(`pointerup`,s),document.body.style.cursor=``,document.body.style.userSelect=``,a?d?.onRouteChange?.(e,x.current??{}):d?.onSelect?.(e)};document.body.style.cursor=t.cursor,document.body.style.userSelect=`none`,document.addEventListener(`pointermove`,o),document.addEventListener(`pointerup`,s)};return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(A7,{id:e,path:S.path,markerStart:c,markerEnd:s,style:w,interactionWidth:22,label:f,labelX:S.labelX,labelY:S.labelY,labelStyle:p,labelShowBg:m,labelBgStyle:h,labelBgPadding:g,labelBgBorderRadius:_}),S.draggableSegments.map(t=>(0,W.jsx)(`path`,{d:t.path,fill:`none`,stroke:`transparent`,strokeWidth:22,className:`nopan ${t.cursorClass}`,onClick:e=>e.stopPropagation(),onPointerDown:e=>T(t,e),onContextMenu:t=>d?.onContextMenu?.(e,t),"aria-label":`Move edge route ${e}`,children:(0,W.jsx)(`title`,{children:t.title})},t.id))]})}var h9=20,D0e=5,O0e=8;function k0e(e){let t={x:e.sourceX,y:e.sourceY},n={x:e.targetX,y:e.targetY},r=A0e(e.sourcePosition),i=A0e(e.targetPosition),a={x:t.x+r.x*h9,y:t.y+r.y*h9},o={x:n.x+i.x*h9,y:n.y+i.y*h9},s,c;if(r.x!==0&&i.x!==0&&r.x*i.x===-1){let i=o.x>=a.x?1:-1;if(r.x===i){let r=g9(e.route.centerX,(a.x+o.x)/2);s=[t,{x:r,y:t.y},{x:r,y:n.y},n],c=[_9(`centerX`,s[1],s[2])]}else{let r=g9(e.route.sourceControlX,a.x),i=g9(e.route.targetControlX,o.x),l=g9(e.route.centerY,(t.y+n.y)/2);s=[t,{x:r,y:t.y},{x:r,y:l},{x:i,y:l},{x:i,y:n.y},n],c=[_9(`sourceControlX`,s[1],s[2]),_9(`centerY`,s[2],s[3]),_9(`targetControlX`,s[3],s[4])]}}else if(r.y!==0&&i.y!==0&&r.y*i.y===-1){let i=o.y>=a.y?1:-1;if(r.y===i){let r=g9(e.route.centerY,(a.y+o.y)/2);s=[t,{x:t.x,y:r},{x:n.x,y:r},n],c=[_9(`centerY`,s[1],s[2])]}else{let r=g9(e.route.sourceControlY,a.y),i=g9(e.route.targetControlY,o.y),l=g9(e.route.centerX,(t.x+n.x)/2);s=[t,{x:t.x,y:r},{x:l,y:r},{x:l,y:i},{x:n.x,y:i},n],c=[_9(`sourceControlY`,s[1],s[2]),_9(`centerX`,s[2],s[3]),_9(`targetControlY`,s[3],s[4])]}}else{let r=g9(e.route.centerX,(a.x+o.x)/2),i=g9(e.route.centerY,(a.y+o.y)/2);s=[t,a,{x:r,y:a.y},{x:r,y:i},{x:o.x,y:i},o,n],c=j0e(s).map((e,t)=>({...e,id:`fallback-${t}`,routeKey:e.axis===`x`?`centerX`:`centerY`}))}let l=c.filter(e=>P0e(e)>=O0e),u=F0e(l)??I0e(s);return{path:M0e(s),labelX:u?(u.start.x+u.end.x)/2:(t.x+n.x)/2,labelY:u?(u.start.y+u.end.y)/2:(t.y+n.y)/2,draggableSegments:l}}function A0e(e){return e===S5.Left?{x:-1,y:0}:e===S5.Right?{x:1,y:0}:e===S5.Top?{x:0,y:-1}:{x:0,y:1}}function g9(e,t){return typeof e==`number`&&Number.isFinite(e)?e:t}function _9(e,t,n){let r=t.x===n.x;return{id:`${e}-${t.x}-${t.y}-${n.x}-${n.y}`,start:t,end:n,path:`M ${t.x},${t.y} L ${n.x},${n.y}`,axis:r?`x`:`y`,routeKey:e,cursor:r?`ew-resize`:`ns-resize`,cursorClass:r?`cursor-ew-resize`:`cursor-ns-resize`,title:r?`Drag vertical edge segment left or right`:`Drag horizontal edge segment up or down`}}function j0e(e){return e.slice(1,-2).flatMap((t,n)=>{let r=e[n+2];return!r||t.x!==r.x&&t.y!==r.y||t.x===r.x&&t.y===r.y?[]:[_9(t.x===r.x?`centerX`:`centerY`,t,r)]})}function M0e(e){if(!e.length)return``;let t=`M ${e[0].x},${e[0].y}`;for(let n=1;n<e.length-1;n+=1)t+=N0e(e[n-1],e[n],e[n+1]);return t+=` L ${e[e.length-1].x},${e[e.length-1].y}`,t}function N0e(e,t,n){let r=Math.min(v9(e,t)/2,v9(t,n)/2,D0e);if(e.x===t.x&&t.x===n.x||e.y===t.y&&t.y===n.y)return` L ${t.x},${t.y}`;if(e.y===t.y){let i=e.x<n.x?-1:1,a=e.y<n.y?1:-1;return` L ${t.x+r*i},${t.y} Q ${t.x},${t.y} ${t.x},${t.y+r*a}`}let i=e.x<n.x?1:-1,a=e.y<n.y?-1:1;return` L ${t.x},${t.y+r*a} Q ${t.x},${t.y} ${t.x+r*i},${t.y}`}function v9(e,t){return Math.hypot(t.x-e.x,t.y-e.y)}function P0e(e){return v9(e.start,e.end)}function F0e(e){let t;for(let n of e){let e=P0e(n);(!t||e>t.length)&&(t={start:n.start,end:n.end,length:e})}return t}function I0e(e){let t;for(let n=0;n<e.length-1;n+=1){let r=e[n],i=e[n+1],a=v9(r,i);(!t||a>t.length)&&(t={start:r,end:i,length:a})}return t}var L0e={workflowNode:T0e},R0e={workflowEdge:E0e};function z0e(e){return e instanceof HTMLElement?e.isContentEditable?!0:!!e.closest(`input, textarea, select, [contenteditable='true']`):!1}function B0e(e,t){if(!t)return`Select a node or edge in the canvas to inspect or delete it.`;if(t.type===`node`){let n=I7(e)[t.id];return n?`Node ${t.id}: ${R7(n)} — ${z7(t.id,n)}`:`Node ${t.id}`}let n=L7(e)[t.id],r=n?q7(n.from):void 0,i=n?q7(n.to):void 0;return n&&r&&i?`Edge ${t.id}: ${r} → ${i}`:`Edge ${t.id}`}function V0e(e,t){let n=q7(t.from),r=q7(t.to),i=K0e(e,t),a=y9(e,t);return{...n?{sourceNodeId:n}:{},...r?{targetNodeId:r}:{},...i?{sourcePort:i}:{},...a?{targetPort:a}:{},directlyCompatible:!!(i&&a&&G0e(i,a))}}function H0e(e){let t=F7(e.adapter)?e.adapter:void 0;return Y0e(t&&F7(t.transform)?t.transform:void 0)}function U0e(e,t,n){let r=L7(e),i=r[t];if(!i)return e;let a=y9(e,i)??b9();return{...e,edges:{...r,[t]:{...i,id:t,adapter:{kind:`edgeAdapter`,transform:J0e(n),output:x9(a)}}}}}function W0e(e,t,n){let r=L7(e),i=r[t];if(!i)return e;let a=q7(i.from),o=q7(i.to);if(!a||!o)return e;let s=I7(e),c=U7(e,`adapter`),l=K0e(e,i)??b9(),u=y9(e,i)??b9(),d=B7(e),f=X0e(d[a],d[o])??H7(a1e(e,[]).nodes),p={...r};delete p[t];let m=Z0e(p,`${t}_to_${c}`),h=Z0e({...p,[m]:{}},`${c}_to_${o}`),g={id:m,from:x9(F7(i.from)?i.from:{nodeId:a}),to:{nodeId:c},kind:typeof i.kind==`string`?i.kind:`data`};F7(i.guard)&&(g.guard=x9(i.guard));let _={id:h,from:{nodeId:c},to:x9(F7(i.to)?i.to:{nodeId:o}),kind:typeof i.kind==`string`?i.kind:`data`};return G7({...e,nodes:{...s,[c]:s0e(c,n,l,u)},edges:{...p,[m]:g,[h]:_}},{...d,[c]:f})}function G0e(e,t){return e.kind===`text`&&t.kind===`text`?!0:e.kind!==`json`||t.kind!==`json`?!1:JSON.stringify(e.schema??null)===JSON.stringify(t.schema??null)}function K0e(e,t){let n=q0e(e,t.from);return n&&F7(n.output)?n.output:void 0}function y9(e,t){let n=q0e(e,t.to);return n&&F7(n.input)?n.input:void 0}function q0e(e,t){let n=q7(t);return n?I7(e)[n]:void 0}function b9(){return{kind:`text`}}function J0e(e){return{kind:`adapter`,language:`typescript`,id:e}}function Y0e(e){return F7(e)&&e.kind===`adapter`&&e.language===`typescript`&&typeof e.id==`string`?e.id:``}function X0e(e,t){return e&&t?{x:(e.x+t.x)/2,y:(e.y+t.y)/2}:void 0}function Z0e(e,t){let n=t.replace(/[^a-zA-Z0-9_-]/g,`-`);if(!Object.hasOwn(e,n))return n;let r=2;for(;Object.hasOwn(e,`${n}_${r}`);)r+=1;return`${n}_${r}`}function x9(e){return JSON.parse(JSON.stringify(e))}function Q0e(e){let t=F7(e.metadata)?e.metadata:{};return{title:typeof e.title==`string`?e.title:``,description:typeof e.description==`string`?e.description:``,inputKind:$7(e.input,`text`),inputDescription:e9(e.input),inputSchemaText:t9(e.input),outputKind:$7(e.output,`text`),outputDescription:e9(e.output),outputSchemaText:t9(e.output),globalStateFields:e2e(e),metadataTags:w9(t.tags),metadataUseWhen:w9(t.useWhen),metadataNotFor:w9(t.notFor),metadataExamples:w9(t.examples)}}function S9(e,t){let n=F7(e.metadata)?{...e.metadata}:{};T9(n,`tags`,t.metadataTags),T9(n,`useWhen`,t.metadataUseWhen),T9(n,`notFor`,t.metadataNotFor),T9(n,`examples`,t.metadataExamples);let r={...e,input:i9(t.inputKind,t.inputDescription,e.input,t.inputSchemaText),output:i9(t.outputKind,t.outputDescription,e.output,t.outputSchemaText)};return n2e(r,t.globalStateFields),l9(r,`title`,t.title),l9(r,`description`,t.description),Object.keys(n).length?r.metadata=n:delete r.metadata,r}function $0e(e){let t=new Set(e.map(e=>e.path.trim()).filter(Boolean)),n=`projectGoal`,r=2;for(;t.has(n);)n=`projectGoal${r}`,r+=1;return{path:n,description:``,schemaText:n9(J7),mergeKind:`none`}}function e2e(e){let t=F7(e.state)?e.state:void 0,n=t&&F7(t.global)?t.global:void 0;return n?Object.entries(n).flatMap(([e,t])=>F7(t)?[{path:e,description:typeof t.description==`string`?t.description:``,schemaText:n9(t.schema),mergeKind:t2e(t.merge)}]:[]):[]}function t2e(e){return!F7(e)||typeof e.kind!=`string`?`none`:[`replace`,`append`,`shallowMerge`].includes(e.kind)?e.kind:`none`}function n2e(e,t){let n=F7(e.state)?{...e.state}:{},r={};for(let e of t){let t=A1e(e.path);if(!t)continue;let n={schema:r9(e.schemaText)};l9(n,`description`,e.description);let i=r2e(e.mergeKind);i&&(n.merge=i),r[t]=n}Object.keys(r).length?n.global=r:delete n.global,Object.keys(n).length?e.state=n:delete e.state}function r2e(e){return e===`none`?void 0:{kind:e}}function i2e(e,t){return JSON.stringify(e2e(e))!==JSON.stringify(t.globalStateFields)}function C9(e){return typeof e==`string`?e.trim():F7(e)&&typeof e.id==`string`?e.id.trim():``}function a2e(e,t,n){let r=I7(e),i=r[t];if(!i)return e;let a={...i,promptBuilder:{kind:`promptBuilder`,language:`typescript`,id:n.id,revisionId:n.revisionId,contentHash:n.contentHash,source:n.source},metadata:o2e(i.metadata,n)};return delete a.promptTemplate,{...e,metadata:o2e(e.metadata,n),nodes:{...r,[t]:a}}}function o2e(e,t){let n=F7(e)?{...e}:{},r=Array.isArray(n.promptAssetRefs)?n.promptAssetRefs.filter(e=>typeof e==`string`&&e.trim().length>0):[];return n.promptAssetRefs=[...new Set([...r,t.id])],n.promptAssetPins=[...Array.isArray(n.promptAssetPins)?n.promptAssetPins.filter(e=>F7(e)&&e.assetId!==t.id):[],{assetId:t.id,revisionId:t.revisionId,contentHash:t.contentHash,source:t.source}],n}function w9(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`).join(`
228
- `):``}function s2e(e){return e.split(/\r?\n|,/).map(e=>e.trim()).filter(Boolean)}function T9(e,t,n){let r=s2e(n);r.length?e[t]=r:delete e[t]}function E9({diagnostics:e}){return e.length?(0,W.jsx)(`div`,{className:`grid gap-2`,"aria-label":`Inspector picker diagnostics`,children:e.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-amber-700/70 bg-amber-950/30 p-2 text-[11px] leading-5 text-amber-100`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 font-bold text-amber-200`,children:[(0,W.jsx)(Cl,{size:12}),e.code]}),(0,W.jsx)(`div`,{className:`mt-1`,children:e.message}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-amber-200/80`,children:e.path}),(0,W.jsx)(`div`,{className:`mt-1 text-amber-200/80`,children:e.hint})]},`${e.code}:${e.registryRef}`))}):null}function D9({option:e,badge:t}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3 text-xs leading-5 text-slate-400`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-2`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`font-semibold text-slate-200`,children:e.displayName}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-slate-300`,children:e.id})]}),(0,W.jsx)(f9,{label:t})]}),e.description?(0,W.jsx)(`div`,{className:`mt-2 text-slate-500`,children:e.description}):null,e.paramsSchema?(0,W.jsx)(`div`,{className:`mt-3`,children:(0,W.jsx)(O9,{label:`paramsSchema`,schema:e.paramsSchema})}):null]})}function O9({label:e,schema:t}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-2`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.14em] text-slate-500`,children:e}),(0,W.jsx)(`pre`,{className:`mt-1 max-h-24 overflow-auto whitespace-pre-wrap font-mono text-[11px] leading-5 text-slate-300`,children:c2e(t)})]})}function c2e(e){return e?JSON.stringify(e,null,2):`null`}function l2e({draft:e,nodeId:t,node:n,isSaving:r,onSaveDefinition:i}){let a=(0,U.useRef)(null),[o,s]=(0,U.useState)(C9(n.promptBuilder)),[c,l]=(0,U.useState)(),[u,d]=(0,U.useState)(),[f,p]=(0,U.useState)(`idle`),[m,h]=(0,U.useState)(`saved`),[g,_]=(0,U.useState)();(0,U.useEffect)(()=>{s(C9(n.promptBuilder))},[n,t]),(0,U.useEffect)(()=>{let e=!1;return JBe(o||void 0).then(t=>{e||l(t)}).catch(()=>void 0),()=>{e=!0}},[o]),(0,U.useEffect)(()=>{let e=!1;return _(void 0),o?(p(`loading`),YBe(o).then(t=>{e||(d(t.asset),p(`loaded`))}).catch(t=>{e||(d(void 0),p(`error`),_(t instanceof Error?t.message:`Failed to load prompt asset`))}),()=>{e=!0}):(d(void 0),p(`idle`),()=>{e=!0})},[o]);let v=c?.options.find(e=>e.id===o),y=typeof n.promptTemplate==`string`?n.promptTemplate:Q1e,b=u?.markdown??y,x=`${e.draftId}:${t}`,S=!!C9(n.promptBuilder),C=o.startsWith(`ui.promptAssets.`),w=`${typeof n.label==`string`&&n.label.trim()?n.label.trim():t} prompt asset`,T=(0,U.useCallback)(async n=>{try{let r=await XBe({assetId:C?o:void 0,sourceRefId:o||void 0,displayName:w,description:`Managed prompt asset for ${t} in draft ${e.draftId}.`,markdown:n});await i(a2e(e.definition,t,r.asset),`Saved prompt asset revision ${r.asset.revisionId} and updated ${t}.`,{editTrigger:`prompt_edit`}),s(r.asset.id),d(r.asset),_(`Saved ${r.asset.displayName} as revision ${r.asset.revisionId}; draft now pins ${r.asset.contentHash}.`)}catch(e){throw _(e instanceof Error?e.message:`Failed to save prompt asset revision`),e}},[e.definition,e.draftId,t,i,w,o,C]),E=async e=>{try{await a.current?.flushSave(),s(e)}catch(e){_(e instanceof Error?e.message:`Failed to save the current prompt asset before switching`)}},D=async()=>{u&&(await i(a2e(e.definition,t,u),`Updated ${t} to use prompt asset ${u.id}.`,{editTrigger:`prompt_edit`}),_(`Draft node ${t} now uses ${u.displayName} at ${u.contentHash}.`))};return(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#151f24]/70 p-3`,"aria-label":`Prompt asset Markdown editor`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Prompt asset Markdown editor`}),(0,W.jsx)(`p`,{className:`mt-1 text-[11px] leading-5 text-slate-500`,children:`Edit prompt assets with the same Markdown editor pattern as Context Files. Saving creates a managed UI asset revision, updates this draft node to a prompt asset ref, and pins the revision id plus content hash in the Pibo Workflow IR.`})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Prompt asset ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o,onChange:e=>void E(e.target.value),disabled:r,children:[(0,W.jsx)(`option`,{value:``,children:`Create managed asset from direct prompt template`}),c?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id))]})]}),(0,W.jsx)(E9,{diagnostics:c?.diagnostics??[]}),v?(0,W.jsx)(D9,{option:v,badge:v.kind===`ui`?`managed prompt asset`:`registered prompt asset`}):null,f===`error`?(0,W.jsx)(`div`,{className:`rounded-sm border border-red-900/70 bg-red-950/40 p-2 text-[11px] leading-5 text-red-200`,role:`alert`,children:g??`Failed to load prompt asset.`}):null,(0,W.jsx)(`div`,{className:`workflow-prompt-editor-frame min-w-0 rounded-sm bg-[#101d22]`,children:(0,W.jsx)(XH,{ref:a,documentKey:x,initialMarkdown:b,onPersist:T,onSaveStateChange:h,ariaLabel:`Prompt asset Markdown editor`})}),(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-[11px]`,children:[(0,W.jsx)(f9,{label:S?`promptBuilder ref`:`direct promptTemplate source`}),(0,W.jsx)(f9,{label:`Markdown save: ${m}`}),u?(0,W.jsx)(f9,{label:`${u.source} · ${u.revisionId}`}):null]}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>void D(),disabled:r||!u,children:[(0,W.jsx)(cl,{size:13}),`Use selected asset on draft`]})}),g&&f!==`error`?(0,W.jsx)(`div`,{className:`rounded-sm border border-emerald-900/60 bg-emerald-950/20 p-2 text-[11px] leading-5 text-emerald-200`,role:`status`,children:g}):null,(0,W.jsx)(`div`,{className:`text-[11px] leading-5 text-slate-500`,children:`Code/plugin prompt assets are not mutated. Editing a registered asset copies the Markdown into a managed UI prompt asset; later saves append revisions and only affect this draft or future workflow versions that reference the new revision.`})]})}function u2e({workflowId:e,workflowVersion:t}){let[n,r]=(0,U.useState)(),[i,a]=(0,U.useState)(`loading`),[o,s]=(0,U.useState)();(0,U.useEffect)(()=>{let n=!1;return a(`loading`),s(void 0),$Be({selectedWorkflowId:e,selectedWorkflowVersion:t}).then(e=>{n||(r(e),a(`loaded`))}).catch(e=>{n||(s(e instanceof Error?e.message:`Failed to load workflow viewer`),a(`error`))}),()=>{n=!0}},[e,t]);let c=(0,U.useMemo)(()=>n?.options.find(e=>e.id===n.selectedWorkflowId&&e.version===n.selectedWorkflowVersion),[n]);return i===`loading`?(0,W.jsxs)(`div`,{className:`flex w-full items-center gap-2 rounded-sm border border-slate-800 bg-[#101d22]/70 p-4 text-sm text-slate-300`,"aria-live":`polite`,children:[(0,W.jsx)(Ic,{size:16,className:`animate-spin text-[#11a4d4]`}),`Loading workflow viewer `,e,`@`,t,`…`]}):i===`error`?(0,W.jsxs)(`div`,{className:`rounded-sm border border-red-900/70 bg-red-950/40 p-4 text-sm leading-6 text-red-200`,role:`alert`,children:[(0,W.jsx)(`div`,{className:`font-bold`,children:`Could not load workflow viewer`}),(0,W.jsx)(`div`,{className:`mt-1 text-xs`,children:o??`Failed to load workflow metadata.`})]}):(0,W.jsxs)(`div`,{className:`flex w-full flex-col gap-4 rounded-sm border border-slate-800 bg-[#101d22]/70 p-4`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:[(0,W.jsx)(fc,{size:13}),`Workflow version viewer`]}),(0,W.jsx)(`h3`,{className:`mt-1 text-lg font-bold text-slate-100`,children:c?.title??`${e}@${t}`}),(0,W.jsx)(`p`,{className:`mt-2 max-w-2xl text-xs leading-5 text-slate-500`,children:`This separate viewer is the nested workflow navigation target. Parent graphs do not inline-expand nested workflow internals in V2.`})]}),(0,W.jsx)(`a`,{className:`shrink-0 rounded-sm border border-slate-700 px-3 py-1.5 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100`,href:`/apps/chat/workflows`,children:`Back to Workflows`})]}),c?(0,W.jsx)(d2e,{option:c}):null,(0,W.jsx)(f2e,{diagnostics:n?.diagnostics??[],ariaLabel:`Workflow viewer diagnostics`}),(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3 text-[11px] leading-5 text-slate-500`,children:`Viewer mode shows registry metadata and navigation context only. To change a child workflow, open its own UI draft or duplicate/edit a published workflow from the Workflow Library.`})]})}function d2e({option:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3 text-xs leading-5 text-slate-400`,children:[(0,W.jsxs)(`div`,{className:`font-semibold text-slate-200`,children:[`Selected workflow: `,e.title]}),(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[11px] text-slate-300`,children:[e.id,`@`,e.version]}),e.description?(0,W.jsx)(`div`,{className:`mt-2 text-slate-500`,children:e.description}):null,(0,W.jsxs)(`div`,{className:`mt-3 flex flex-wrap gap-2 text-[11px]`,children:[(0,W.jsx)(f9,{label:`${e.source} source`}),(0,W.jsx)(f9,{label:e.status}),e.tags.map(e=>(0,W.jsx)(f9,{label:e},e))]})]})}function f2e({diagnostics:e,ariaLabel:t}){return e.length?(0,W.jsx)(`div`,{className:`grid gap-2`,"aria-label":t,children:e.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-amber-700/70 bg-amber-950/30 p-3 text-xs leading-5 text-amber-100`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 font-bold text-amber-200`,children:[(0,W.jsx)(Cl,{size:13}),e.code]}),(0,W.jsx)(`div`,{className:`mt-1`,children:e.message}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-amber-200/80`,children:e.path}),(0,W.jsx)(`div`,{className:`mt-1 text-amber-200/80`,children:e.hint})]},`${e.code}:${e.registryRef}`))}):null}function p2e({draft:e,selectedElement:t,nodeIds:n,isSaving:r,onSaveDefinition:i,onDraftDefinitionChange:a}){let o=t?.type===`node`?I7(e.definition)[t.id]:void 0,s=t?.type===`edge`?L7(e.definition)[t.id]:void 0;return(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Workflow inspectors`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:`Workflow inspectors`}),(0,W.jsx)(`p`,{className:`mt-1 text-[11px] leading-5 text-slate-500`,children:`Inspector saves update the same Pibo Workflow IR draft as the graph canvas; XState remains projection-only.`})]}),(0,W.jsx)(g2e,{draft:e,isSaving:r,onSaveDefinition:i,onDraftDefinitionChange:a}),t?.type===`node`&&o?(0,W.jsx)(_2e,{draft:e,nodeId:t.id,node:o,isSaving:r,onSaveDefinition:i}):t?.type===`edge`&&s?(0,W.jsx)(x2e,{draft:e,edgeId:t.id,edge:s,nodeIds:n,isSaving:r,onSaveDefinition:i}):(0,W.jsx)(`div`,{className:`rounded-sm border border-dashed border-slate-700 bg-[#151f24]/70 p-3 text-[11px] leading-5 text-slate-500`,children:`Select a canvas node or edge to open the node or edge inspector. Workflow settings remain editable at all times.`})]})}function m2e(e,t){return e.filter(e=>e.nodeId===t||e.path?.startsWith(`$.nodes.${t}`))}function h2e(e,t){return e.filter(e=>e.edgeId===t||e.path?.startsWith(`$.edges.${t}`))}function g2e({draft:e,isSaving:t,onSaveDefinition:n,onDraftDefinitionChange:r}){let[i,a]=(0,U.useState)(()=>Q0e(e.definition));(0,U.useEffect)(()=>{a(Q0e(e.definition))},[e.definition]);let o=(t,n)=>{a(i=>{let a={...i,[t]:n};return r?.(S9(e.definition,a)),a})};return(0,W.jsxs)(`details`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3`,open:!0,children:[(0,W.jsx)(`summary`,{className:`cursor-pointer text-xs font-bold text-slate-200`,children:`Workflow settings inspector`}),(0,W.jsxs)(`div`,{className:`mt-3 grid gap-3 text-xs`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Workflow title`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:i.title,onChange:e=>o(`title`,e.target.value)})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Workflow description`}),(0,W.jsx)(`textarea`,{className:`min-h-20 rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:i.description,onChange:e=>o(`description`,e.target.value)})]}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsx)(C2e,{label:`Workflow input port`,kind:i.inputKind,description:i.inputDescription,schemaText:i.inputSchemaText,onKindChange:e=>o(`inputKind`,e),onDescriptionChange:e=>o(`inputDescription`,e),onSchemaChange:e=>o(`inputSchemaText`,e)}),(0,W.jsx)(C2e,{label:`Workflow output port`,kind:i.outputKind,description:i.outputDescription,schemaText:i.outputSchemaText,onKindChange:e=>o(`outputKind`,e),onDescriptionChange:e=>o(`outputDescription`,e),onSchemaChange:e=>o(`outputSchemaText`,e)})]}),(0,W.jsx)(T2e,{fields:i.globalStateFields,onAddField:()=>{a(t=>{let n={...t,globalStateFields:[...t.globalStateFields,$0e(t.globalStateFields)]};return r?.(S9(e.definition,n)),n})},onRemoveField:t=>{a(n=>{let i={...n,globalStateFields:n.globalStateFields.filter((e,n)=>n!==t)};return r?.(S9(e.definition,i)),i})},onUpdateField:(t,n,i)=>{a(a=>{let o={...a,globalStateFields:a.globalStateFields.map((e,r)=>r===t?{...e,[n]:i}:e)};return r?.(S9(e.definition,o)),o})}}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsx)(A9,{label:`metadata.tags`,value:i.metadataTags,onChange:e=>o(`metadataTags`,e)}),(0,W.jsx)(A9,{label:`metadata.useWhen`,value:i.metadataUseWhen,onChange:e=>o(`metadataUseWhen`,e)}),(0,W.jsx)(A9,{label:`metadata.notFor`,value:i.metadataNotFor,onChange:e=>o(`metadataNotFor`,e)}),(0,W.jsx)(A9,{label:`metadata.examples`,value:i.metadataExamples,onChange:e=>o(`metadataExamples`,e)})]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>{n(S9(e.definition,i),`Saved workflow settings inspector edits to the draft IR.`,{editTrigger:i2e(e.definition,i)?`state_edit`:`schema_edit`})},disabled:t,children:[t?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(cl,{size:13}),`Save workflow settings`]})]})]})}function _2e({draft:e,nodeId:t,node:n,isSaving:r,onSaveDefinition:i}){let[a,o]=(0,U.useState)(()=>j1e(n)),[s,c]=(0,U.useState)(),[l,u]=(0,U.useState)(),[d,f]=(0,U.useState)(),[p,m]=(0,U.useState)(),[h,g]=(0,U.useState)(),_=R7(n),v=m2e(e.diagnostics,t),y=d?.options.find(e=>e.id===(d?.selectedRefId??a.adapterRef)),b=(0,U.useMemo)(()=>new Set(a.humanActionRefs.map(e=>e.id)),[a.humanActionRefs]);(0,U.useEffect)(()=>{o(j1e(n))},[n,t]),(0,U.useEffect)(()=>{if(_!==`agent`)return;let e=!1;return Z2(a.profileId||void 0).then(t=>{e||c(t)}).catch(()=>void 0),()=>{e=!0}},[_,a.profileId]),(0,U.useEffect)(()=>{if(_!==`code`)return;let e=!1;return KBe(a.handlerId||void 0).then(t=>{e||u(t)}).catch(()=>void 0),()=>{e=!0}},[_,a.handlerId]),(0,U.useEffect)(()=>{if(_!==`adapter`)return;let e=!1;return Q2(a.adapterRef||void 0).then(t=>{e||f(t)}).catch(()=>void 0),()=>{e=!0}},[_,a.adapterRef]),(0,U.useEffect)(()=>{if(_!==`workflow`)return;let e=!1,t=u0e(a.workflowVersionKey);return e4({selectedWorkflowId:t?.workflowId,selectedWorkflowVersion:t?.workflowVersion}).then(t=>{e||m(t)}).catch(()=>void 0),()=>{e=!0}},[_,a.workflowVersionKey]),(0,U.useEffect)(()=>{if(_!==`human`)return;let e=!1;return $2().then(t=>{e||g(t)}).catch(()=>void 0),()=>{e=!0}},[_]);let x=(e,t)=>{o(n=>({...n,[e]:t}))},S=(e,t)=>{o(n=>({...n,humanActionRefs:U1e(n.humanActionRefs,e,t)}))};return(0,W.jsxs)(`details`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3`,open:!0,children:[(0,W.jsxs)(`summary`,{className:`cursor-pointer text-xs font-bold text-slate-200`,children:[`Node inspector: `,t]}),(0,W.jsxs)(`div`,{className:`mt-3 grid gap-3 text-xs`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2 text-[11px]`,children:[(0,W.jsx)(f9,{label:`${_} node`}),(0,W.jsx)(f9,{label:`${v.length} diagnostics`})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Node label`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:a.label,onChange:e=>x(`label`,e.target.value)})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Node description`}),(0,W.jsx)(`textarea`,{className:`min-h-16 rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:a.description,onChange:e=>x(`description`,e.target.value)})]}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsx)(w2e,{label:`Node input port`,kind:a.inputKind,description:a.inputDescription,schemaText:a.inputSchemaText,onKindChange:e=>x(`inputKind`,e),onDescriptionChange:e=>x(`inputDescription`,e),onSchemaChange:e=>x(`inputSchemaText`,e)}),(0,W.jsx)(w2e,{label:`Node output port`,kind:a.outputKind,description:a.outputDescription,schemaText:a.outputSchemaText,onKindChange:e=>x(`outputKind`,e),onDescriptionChange:e=>x(`outputDescription`,e),onSchemaChange:e=>x(`outputSchemaText`,e)})]}),(0,W.jsx)(v2e,{label:`Node`,definition:e.definition,value:a.stateAccess,onChange:e=>x(`stateAccess`,e)}),_===`agent`?(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Agent node fields`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Agent profile ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:s?.selectedProfileId??a.profileId,onChange:e=>x(`profileId`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select a non-archived profile`}),s?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:d0e(e)},e.id))]})]}),(0,W.jsx)(E9,{diagnostics:s?.diagnostics??[]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Prompt template`}),(0,W.jsx)(`textarea`,{className:`min-h-24 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 font-mono text-slate-100`,value:a.promptTemplate,onChange:e=>x(`promptTemplate`,e.target.value)}),(0,W.jsxs)(`span`,{className:`text-[11px] font-normal leading-5 text-slate-500`,children:[`Saving direct prompt text writes `,(0,W.jsx)(`code`,{className:`rounded bg-slate-900 px-1 text-slate-300`,children:`promptTemplate`}),` on this Pibo Workflow IR node.`]})]}),(0,W.jsx)(l2e,{draft:e,nodeId:t,node:n,isSaving:r,onSaveDefinition:i})]}):null,_===`code`?(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Code node fields`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Registered code handler`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:l?.selectedHandlerId??a.handlerId,onChange:e=>x(`handlerId`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select a registered handler ref`}),l?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:f0e(e)},e.id))]})]}),(0,W.jsx)(E9,{diagnostics:l?.diagnostics??[]})]}):null,_===`adapter`?(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Adapter node fields`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Registered adapter ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:d?.selectedRefId??a.adapterRef,onChange:e=>x(`adapterRef`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select a registered adapter ref`}),d?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id))]})]}),(0,W.jsx)(E9,{diagnostics:d?.diagnostics??[]}),y?.paramsSchema?(0,W.jsx)(j9,{label:`Adapter params JSON`,schema:y.paramsSchema,value:a.adapterParamsText,onChange:e=>x(`adapterParamsText`,e)}):null,(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-2 text-[11px] leading-5 text-slate-500`,children:`Adapter nodes store only a registered deterministic adapter ref. Inline transformation code and hidden LLM coercion are not exposed by the UI.`})]}):null,_===`workflow`?(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Workflow node fields`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Nested workflow ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:p?.selectedWorkflowId&&p.selectedWorkflowVersion?l0e(p.selectedWorkflowId,p.selectedWorkflowVersion):a.workflowVersionKey,onChange:e=>x(`workflowVersionKey`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select a published workflow version`}),p?.options.map(e=>(0,W.jsx)(`option`,{value:d9(e),children:m0e(e)},d9(e)))]})]}),(0,W.jsx)(f2e,{diagnostics:p?.diagnostics??[],ariaLabel:`Workflow node diagnostics`})]}):null,_===`human`?(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Human node fields`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Human prompt`}),(0,W.jsx)(`textarea`,{className:`min-h-24 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:a.humanPrompt,onChange:e=>x(`humanPrompt`,e.target.value)})]}),(0,W.jsx)(k9,{label:`Human node resume payload schema JSON`,value:a.humanSchemaText,onChange:e=>x(`humanSchemaText`,e)}),(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#151f24]/70 p-3`,"aria-label":`Human action choices`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Registered action choices`}),(0,W.jsx)(`p`,{className:`mt-1 text-[11px] leading-5 text-slate-500`,children:`Actions are selected from the Workflow Registry. The label, action kind, and payload requirements come from picker metadata.`})]}),h?.options.length?h.options.map(e=>(0,W.jsxs)(`label`,{className:`grid gap-1 rounded-sm border border-slate-800 bg-[#101d22] p-2 text-slate-300`,children:[(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-2 font-semibold`,children:[(0,W.jsx)(`input`,{type:`checkbox`,className:`h-3.5 w-3.5 accent-[#11a4d4]`,checked:b.has(e.id),onChange:t=>S(e,t.target.checked)}),(0,W.jsx)(`span`,{children:e.displayName}),(0,W.jsx)(f9,{label:`kind: ${e.kind??`registered`}`})]}),(0,W.jsx)(`span`,{className:`text-[11px] font-normal leading-5 text-slate-500`,children:e.description??e.id}),(0,W.jsxs)(`span`,{className:`text-[11px] font-normal leading-5 text-slate-500`,children:[`Payload requirements: `,e.paramsSchema?JSON.stringify(e.paramsSchema):`none`]})]},e.id)):(0,W.jsx)(`div`,{className:`rounded-sm border border-dashed border-slate-700 p-2 text-[11px] leading-5 text-slate-500`,children:`No registered human actions are available from the picker.`}),(0,W.jsx)(E9,{diagnostics:h?.diagnostics??[]}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-2 text-[11px]`,"aria-label":`Selected human action refs`,children:a.humanActionRefs.length?a.humanActionRefs.map(e=>(0,W.jsx)(f9,{label:`${e.id}${e.kind?` (${e.kind})`:``}`},`${e.id}:${e.kind??``}`)):(0,W.jsx)(`span`,{className:`text-slate-500`,children:`No human action refs selected.`})})]}),(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#151f24]/70 p-3 md:grid-cols-[1fr_1fr]`,"aria-label":`Human node timeout`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Timeout kind`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:a.humanTimeoutKind,onChange:e=>x(`humanTimeoutKind`,e.target.value),children:[(0,W.jsx)(`option`,{value:`none`,children:`No timeout`}),(0,W.jsx)(`option`,{value:`milliseconds`,children:`Milliseconds`}),(0,W.jsx)(`option`,{value:`seconds`,children:`Seconds`}),(0,W.jsx)(`option`,{value:`minutes`,children:`Minutes`}),(0,W.jsx)(`option`,{value:`iso8601`,children:`ISO-8601 duration`})]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Timeout value`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,type:a.humanTimeoutKind===`iso8601`?`text`:`number`,min:a.humanTimeoutKind===`iso8601`?void 0:1,placeholder:a.humanTimeoutKind===`iso8601`?`PT1H`:`60`,value:a.humanTimeoutValue,onChange:e=>x(`humanTimeoutValue`,e.target.value),disabled:a.humanTimeoutKind===`none`})]})]})]}):null,(0,W.jsx)(h0e,{diagnostics:v,emptyLabel:`No diagnostics for selected node.`}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>{let r=M1e(e.definition,t,a),o=w1e(n,a)?`state_edit`:_===`agent`||_===`human`?`prompt_edit`:`schema_edit`;i(r,`Saved node inspector edits for ${t}.`,{editTrigger:o})},disabled:r,children:[r?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(cl,{size:13}),`Save node inspector`]})]})]})}function v2e({label:e,definition:t,value:n,onChange:r,allowEdgeWrites:i=!1}){let a=O1e(t,n.readScope,[...n.reads,...n.writes]),o=i?Y7:C1e,s=O1e(t,n.writeScope,[...n.reads,...n.writes]),c=!!n.readPath.trim(),l=!!n.writePath.trim()&&(i||n.writeScope!==`edge`),u=(e,t)=>r({...n,[e]:t}),d=e=>{let t=e===`reads`?n.readScope:n.writeScope,i=(e===`reads`?n.readPath:n.writePath).trim();if(!i)return;let a=`${t}.${i}`,o=n[e];o.includes(a)||r({...n,[e]:[...o,a]})},f=(e,t)=>r({...n,[e]:n[e].filter(e=>e!==t)});return(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22]/70 p-3`,"aria-label":`${e} simple state mapping controls`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:[e,` simple state mappings`]}),(0,W.jsxs)(`p`,{className:`mt-1 text-[11px] leading-5 text-slate-500`,children:[`Add simple scoped state reads and writes as Pibo Workflow IR `,(0,W.jsx)(`code`,{className:`rounded bg-slate-900 px-1 text-slate-300`,children:`state.reads`}),` and `,(0,W.jsx)(`code`,{className:`rounded bg-slate-900 px-1 text-slate-300`,children:`state.writes`}),` arrays. Complex state mapping DSLs remain raw Workflow IR only.`]})]}),(0,W.jsxs)(`div`,{className:`grid gap-2 md:grid-cols-[0.7fr_1fr_auto]`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Read scope`}),(0,W.jsx)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:n.readScope,onChange:e=>u(`readScope`,e.target.value),children:Y7.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))})]}),(0,W.jsx)(y2e,{label:`Read path`,value:n.readPath,options:a,onChange:e=>u(`readPath`,e)}),(0,W.jsx)(`button`,{type:`button`,className:`self-end rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>d(`reads`),disabled:!c,children:`Add read`})]}),(0,W.jsx)(b2e,{label:`Reads`,entries:n.reads,onRemove:e=>f(`reads`,e)}),(0,W.jsxs)(`div`,{className:`grid gap-2 md:grid-cols-[0.7fr_1fr_auto]`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Write scope`}),(0,W.jsx)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:n.writeScope,onChange:e=>u(`writeScope`,e.target.value),children:o.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))})]}),(0,W.jsx)(y2e,{label:`Write path`,value:n.writePath,options:s,onChange:e=>u(`writePath`,e)}),(0,W.jsx)(`button`,{type:`button`,className:`self-end rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>d(`writes`),disabled:!l,children:`Add write`})]}),(0,W.jsx)(b2e,{label:`Writes`,entries:n.writes,onRemove:e=>f(`writes`,e)}),n.writeScope===`global`&&!k1e(t).length?(0,W.jsx)(`div`,{className:`rounded-sm border border-amber-900/60 bg-amber-950/20 p-2 text-[11px] leading-5 text-amber-100`,children:`Declare global state fields in the workflow settings inspector before selecting global read/write paths.`}):null]})}function y2e({label:e,value:t,options:n,onChange:r}){let i=t&&!n.includes(t)?[t,...n]:n;return(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:t,onChange:e=>r(e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select path`}),i.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))]})]})}function b2e({label:e,entries:t,onRemove:n}){return(0,W.jsxs)(`div`,{className:`grid gap-1`,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-semibold text-slate-400`,children:e}),t.length?(0,W.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:t.map(e=>(0,W.jsxs)(`button`,{type:`button`,className:`rounded-full border border-slate-700 px-2 py-1 text-[11px] text-slate-300 transition hover:border-red-500/60 hover:text-red-100`,onClick:()=>n(e),title:`Remove ${e}`,children:[e,` ×`]},e))}):(0,W.jsxs)(`div`,{className:`text-[11px] text-slate-500`,children:[`No `,e.toLowerCase(),` declared.`]})]})}function x2e({draft:e,edgeId:t,edge:n,nodeIds:r,isSaving:i,onSaveDefinition:a}){let[o,s]=(0,U.useState)(()=>N1e(n,r)),[c,l]=(0,U.useState)(),[u,d]=(0,U.useState)(),[f,p]=(0,U.useState)(!1),m=h2e(e.diagnostics,t),h=V0e(e.definition,n),g=m.some(e=>e.code===`WorkflowGraphError.incompatibleEdgePorts`),_=c?.options.find(e=>e.id===(c?.selectedRefId??o.guardHandler)),v=u?.options.find(e=>e.id===(u?.selectedRefId??o.adapterRef));(0,U.useEffect)(()=>{s(N1e(n,r))},[n,t,r]),(0,U.useEffect)(()=>{p(!1)},[t]),(0,U.useEffect)(()=>{let e=!1;return qBe(o.guardHandler||void 0).then(t=>{e||l(t)}).catch(()=>void 0),()=>{e=!0}},[o.guardHandler]),(0,U.useEffect)(()=>{let e=!1;return Q2(o.adapterRef||void 0).then(t=>{e||d(t)}).catch(()=>void 0),()=>{e=!0}},[o.adapterRef]);let y=(e,t)=>{s(n=>({...n,[e]:t}))},b=()=>{let r=P1e(e.definition,t,o),i=T1e(n.state,o.stateAccess)?`state_edit`:`edge_edit`;a(r,`Saved edge inspector edits for ${t}.`,{editTrigger:i})};return(0,W.jsxs)(`details`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3`,open:!0,children:[(0,W.jsxs)(`summary`,{className:`cursor-pointer text-xs font-bold text-slate-200`,children:[`Edge inspector: `,t]}),(0,W.jsxs)(`div`,{className:`mt-3 grid gap-3 text-xs`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2 text-[11px]`,children:[(0,W.jsx)(f9,{label:`${o.kind} edge`}),(0,W.jsx)(f9,{label:`${m.length} diagnostics`})]}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Source node`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.sourceNodeId,onChange:e=>y(`sourceNodeId`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select source`}),r.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Target node`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.targetNodeId,onChange:e=>y(`targetNodeId`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select target`}),r.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Source port id`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.sourcePortId,onChange:e=>y(`sourcePortId`,e.target.value),placeholder:`default`})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Target port id`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.targetPortId,onChange:e=>y(`targetPortId`,e.target.value),placeholder:`default`})]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Edge kind`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.kind,onChange:e=>y(`kind`,e.target.value),children:[(0,W.jsx)(`option`,{value:`data`,children:`data`}),(0,W.jsx)(`option`,{value:`control`,children:`control`}),(0,W.jsx)(`option`,{value:`error`,children:`error`}),(0,W.jsx)(`option`,{value:`resume`,children:`resume`})]})]}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Guard ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:c?.selectedRefId??o.guardHandler,onChange:e=>y(`guardHandler`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`No guard`}),c?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id))]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Guard priority`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.guardPriority,onChange:e=>y(`guardPriority`,e.target.value),placeholder:`optional integer`})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300 md:col-span-2`,children:[(0,W.jsx)(`span`,{children:`Edge adapter ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:u?.selectedRefId??o.adapterRef,onChange:e=>y(`adapterRef`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`No edge adapter`}),u?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id))]})]})]}),_?.paramsSchema?(0,W.jsx)(j9,{label:`Guard params JSON`,schema:_.paramsSchema,value:o.guardParamsText,onChange:e=>y(`guardParamsText`,e)}):null,v?.paramsSchema?(0,W.jsx)(j9,{label:`Edge adapter params JSON`,schema:v.paramsSchema,value:o.adapterParamsText,onChange:e=>y(`adapterParamsText`,e)}):null,(0,W.jsx)(v2e,{label:`Edge`,definition:e.definition,value:o.stateAccess,onChange:e=>y(`stateAccess`,e),allowEdgeWrites:!0}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border px-3 py-2 text-xs font-semibold transition disabled:cursor-not-allowed disabled:opacity-50 ${g?`border-amber-600/70 text-amber-100 hover:border-amber-400`:`border-slate-700 text-slate-300 hover:border-[#11a4d4]/60 hover:text-slate-100`}`,onClick:()=>p(!0),disabled:i||!h.sourcePort||!h.targetPort,children:[(0,W.jsx)(Mc,{size:13}),g?`Fix incompatible edge with adapter`:`Open compatible edge adapter dialog`]}),f?(0,W.jsx)(S2e,{draft:e,edgeId:t,edge:n,edgePortDetails:h,isSaving:i,onClose:()=>p(!1),onSaveDefinition:a}):null,(0,W.jsx)(E9,{diagnostics:[...c?.diagnostics??[],...u?.diagnostics??[]]}),(0,W.jsx)(h0e,{diagnostics:m,emptyLabel:`No diagnostics for selected edge.`}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:b,disabled:i||!o.sourceNodeId||!o.targetNodeId,children:[i?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(cl,{size:13}),`Save edge inspector`]})]})]})}function S2e({draft:e,edgeId:t,edge:n,edgePortDetails:r,isSaving:i,onClose:a,onSaveDefinition:o}){let[s,c]=(0,U.useState)(),[l,u]=(0,U.useState)(H0e(n)),[d,f]=(0,U.useState)(`loading`),[p,m]=(0,U.useState)();(0,U.useEffect)(()=>{let e=!1;return f(`loading`),m(void 0),Q2(l||void 0).then(t=>{e||(c(t),u(e=>e||(t.options[0]?.id??``)),f(`loaded`))}).catch(t=>{e||(m(t instanceof Error?t.message:`Failed to load compatible adapters`),f(`error`))}),()=>{e=!0}},[l]);let h=s?.options.find(e=>e.id===l),g=!!(h&&r.sourcePort&&r.targetPort&&d===`loaded`&&!i),_=async()=>{l&&(await o(U0e(e.definition,t,l),`Applied ${l} as edge adapter for ${t}.`,{editTrigger:`edge_edit`}),a())},v=async()=>{l&&(await o(W0e(e.definition,t,l),`Inserted adapter node for ${t} using ${l}.`,{editTrigger:`graph_edit`}),a())};return(0,W.jsx)(AX,{title:`Choose a registered adapter for ${t}`,description:`The dialog shows the source output and target input schemas from the Pibo Workflow IR.`,onClose:a,closeLabel:`Close compatible edge adapter dialog`,closeDisabled:i,maxWidthClassName:`max-w-3xl`,children:(0,W.jsxs)(`div`,{className:`grid gap-4 p-4`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:[(0,W.jsx)(Mc,{size:13}),`Compatible edge adapter dialog`]}),(0,W.jsx)(`p`,{className:`max-w-2xl text-xs leading-5 text-slate-500`,children:`Use a registered adapter as an explicit edge adapter, or insert a visible adapter node between the endpoints.`}),(0,W.jsxs)(`div`,{className:`grid gap-3`,children:[(0,W.jsx)(O9,{label:`From schema${r.sourceNodeId?` (${r.sourceNodeId})`:``}`,schema:r.sourcePort??null}),(0,W.jsx)(O9,{label:`To schema${r.targetNodeId?` (${r.targetNodeId})`:``}`,schema:r.targetPort??null})]}),(0,W.jsx)(`div`,{className:`rounded-sm border p-3 text-xs leading-5 ${r.directlyCompatible?`border-emerald-900/60 bg-emerald-950/20 text-emerald-200`:`border-amber-700/70 bg-amber-950/30 text-amber-100`}`,children:r.directlyCompatible?`These ports are directly compatible. An adapter is optional and remains explicit if selected.`:`These ports are not directly compatible. Select a registered adapter instead of hidden LLM coercion or inline transformation code.`}),(0,W.jsxs)(`div`,{className:`grid gap-3 text-xs`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Compatible registered adapter`}),(0,W.jsxs)(`select`,{"aria-label":`Compatible registered adapter`,className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:l,onChange:e=>u(e.target.value),disabled:d===`loading`||d===`error`||i,children:[(0,W.jsx)(`option`,{value:``,children:`Select a registered adapter ref`}),s?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id))]})]}),d===`error`?(0,W.jsx)(`div`,{className:`rounded-sm border border-red-900/70 bg-red-950/40 p-3 text-xs leading-5 text-red-200`,role:`alert`,children:p??`Failed to load compatible adapters.`}):null,(0,W.jsx)(E9,{diagnostics:s?.diagnostics??[]}),h?(0,W.jsx)(D9,{option:h,badge:`selected adapter`}):null,(0,W.jsxs)(`div`,{className:`grid gap-2`,"aria-label":`Compatible adapter candidates`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Compatible adapter candidates`}),s?.options.map(e=>(0,W.jsx)(D9,{option:e,badge:`compatible adapter`},e.id))]}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>void _(),disabled:!g,children:[(0,W.jsx)(Mc,{size:13}),`Use as edge adapter`]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>void v(),disabled:!g,children:[(0,W.jsx)(tl,{size:13}),`Insert adapter node`]})]}),(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3 text-[11px] leading-5 text-slate-500`,children:[`Both actions persist Pibo Workflow IR only. Edge adapters store `,(0,W.jsx)(`code`,{className:`rounded bg-slate-900 px-1 text-slate-300`,children:`adapter.transform.id`}),`; inserted adapter nodes store a visible deterministic adapter handler ref.`]})]})]})})}function C2e({label:e,kind:t,description:n,schemaText:r,onKindChange:i,onDescriptionChange:a,onSchemaChange:o}){return(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#101d22] p-2`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:t,onChange:e=>i(e.target.value),children:[(0,W.jsx)(`option`,{value:`text`,children:`text`}),(0,W.jsx)(`option`,{value:`json`,children:`json`})]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Description`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:n,onChange:e=>a(e.target.value),placeholder:`Optional port description`})]}),t===`json`?(0,W.jsx)(k9,{label:`${e} raw JSON schema`,value:r,onChange:o}):null]})}function w2e({label:e,kind:t,description:n,schemaText:r,onKindChange:i,onDescriptionChange:a,onSchemaChange:o}){return(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#101d22] p-2`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:t,onChange:e=>i(e.target.value),children:[(0,W.jsx)(`option`,{value:`none`,children:`inherit/default`}),(0,W.jsx)(`option`,{value:`text`,children:`text`}),(0,W.jsx)(`option`,{value:`json`,children:`json`})]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Description`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:n,onChange:e=>a(e.target.value),disabled:t===`none`,placeholder:`Optional port description`})]}),t===`json`?(0,W.jsx)(k9,{label:`${e} raw JSON schema`,value:r,onChange:o}):null]})}function T2e({fields:e,onAddField:t,onRemoveField:n,onUpdateField:r}){return(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Workflow global state fields`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Workflow global state fields`}),(0,W.jsx)(`p`,{className:`mt-1 text-[11px] leading-5 text-slate-500`,children:`Declare simple global state paths for node and edge state mapping dropdowns. State schema changes run draft validation and may invalidate connected graph diagnostics without blocking draft save.`})]}),e.length?e.map((e,t)=>(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#151f24]/70 p-2`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Global state path`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:e.path,onChange:e=>r(t,`path`,e.target.value),placeholder:`projectGoal`})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Merge policy`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:e.mergeKind,onChange:e=>r(t,`mergeKind`,e.target.value),children:[(0,W.jsx)(`option`,{value:`none`,children:`No merge policy`}),(0,W.jsx)(`option`,{value:`replace`,children:`replace`}),(0,W.jsx)(`option`,{value:`append`,children:`append`}),(0,W.jsx)(`option`,{value:`shallowMerge`,children:`shallowMerge`})]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300 md:col-span-2`,children:[(0,W.jsx)(`span`,{children:`Description`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:e.description,onChange:e=>r(t,`description`,e.target.value),placeholder:`Optional state description`})]}),(0,W.jsx)(`div`,{className:`md:col-span-2`,children:(0,W.jsx)(k9,{label:`Global state ${e.path||t+1} schema JSON`,value:e.schemaText,onChange:e=>r(t,`schemaText`,e)})}),(0,W.jsx)(`button`,{type:`button`,className:`rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-red-500/70 hover:text-red-100`,onClick:()=>n(t),children:`Remove state field`})]},`${t}:${e.path}`)):(0,W.jsx)(`div`,{className:`rounded-sm border border-dashed border-slate-700 p-2 text-[11px] leading-5 text-slate-500`,children:`No global state fields declared. Local and edge path dropdowns remain available for simple node-local state and edge payload access.`}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100`,onClick:t,children:[(0,W.jsx)(tl,{size:13}),`Add global state field`]})]})}function k9({label:e,value:t,onChange:n}){return(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsx)(`textarea`,{className:`min-h-36 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 font-mono text-[11px] leading-5 text-slate-100`,value:t,onChange:e=>n(e.target.value),placeholder:JSON.stringify(J7,null,2),spellCheck:!1,"aria-label":e}),(0,W.jsx)(`span`,{className:`text-[11px] font-normal leading-5 text-slate-500`,children:`Raw JSON Schema subset only. Unsupported keywords return workflow diagnostics; no Zod, AJV, or form-builder schema layer is introduced.`})]})}function A9({label:e,value:t,onChange:n}){return(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsx)(`textarea`,{className:`min-h-16 rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:t,onChange:e=>n(e.target.value),placeholder:`One value per line`})]})}function j9({label:e,schema:t,value:n,onChange:r}){return(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#101d22] p-2`,"aria-label":e,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.14em] text-slate-500`,children:e}),(0,W.jsx)(O9,{label:`paramsSchema`,schema:t}),(0,W.jsx)(`textarea`,{className:`min-h-24 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 font-mono text-[11px] leading-5 text-slate-100`,value:n,onChange:e=>r(e.target.value),placeholder:`{}`,"aria-label":`${e} value`}),(0,W.jsx)(`div`,{className:`text-[11px] leading-5 text-slate-500`,children:`Params save as data on the selected registry ref. No inline code path is created.`})]})}function E2e({open:e,onClose:t,onCreate:n}){let[r,i]=(0,U.useState)(``),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(!1),[d,f]=(0,U.useState)(),p=(0,U.useRef)(null);if((0,U.useEffect)(()=>{e&&(i(``),o(!1),c(!1),u(!1),f(void 0))},[e]),!e)return null;let m=a||s?D2e(r):void 0;return(0,W.jsx)(AX,{title:`Create workflow`,description:`Create a new editable workflow draft.`,onClose:t,initialFocusRef:p,closeLabel:`Cancel workflow creation`,closeDisabled:l,children:(0,W.jsxs)(`form`,{className:`grid gap-4 p-4`,onSubmit:async e=>{if(e.preventDefault(),o(!0),f(void 0),D2e(r)){p.current?.focus();return}u(!0);try{await n(r.trim()),u(!1),t()}catch(e){f(JQ(e)),u(!1)}},noValidate:!0,children:[(0,W.jsxs)(`label`,{className:`block text-xs font-semibold text-slate-300`,children:[(0,W.jsxs)(`span`,{children:[`Name `,(0,W.jsx)(`span`,{className:`ml-1 text-[#8bdcf4]`,children:`required`})]}),(0,W.jsx)(`input`,{ref:p,id:`create-workflow-name`,value:r,onChange:e=>{i(e.target.value),f(void 0)},onBlur:()=>c(!0),required:!0,maxLength:160,"aria-invalid":!!m,"aria-describedby":m?`create-workflow-name-help create-workflow-name-error`:`create-workflow-name-help`,className:`mt-1.5 h-9 w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 text-sm text-slate-100 outline-none focus:border-[#11a4d4] focus:ring-1 focus:ring-[#11a4d4]`}),(0,W.jsx)(`div`,{id:`create-workflow-name-help`,className:`mt-1 text-[11px] text-slate-500`,children:`Maximum 160 characters.`}),m?(0,W.jsx)(`div`,{id:`create-workflow-name-error`,className:`mt-1 text-[11px] text-red-300`,role:`alert`,children:m}):null]}),d?(0,W.jsx)(`div`,{className:`rounded-sm border border-red-900/70 bg-red-950/30 px-3 py-2 text-xs text-red-200`,role:`alert`,children:d}):null,(0,W.jsxs)(`div`,{className:`flex justify-end gap-2 border-t border-slate-800 pt-3`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:t,disabled:l,className:`h-8 rounded-sm border border-slate-700 px-3 text-xs text-slate-300 hover:border-slate-500 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,children:`Cancel`}),(0,W.jsxs)(`button`,{type:`submit`,disabled:l,className:`inline-flex h-8 items-center gap-2 rounded-sm bg-[#11a4d4] px-3 text-xs font-semibold text-white disabled:cursor-not-allowed disabled:opacity-50`,children:[l?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):null,`Create workflow`]})]})]})})}function D2e(e){let t=e.trim();if(!t)return`Enter a workflow name.`;if(t.length>160)return`Workflow name must be 160 characters or fewer.`}function O2e({draftId:e,onNavigateDraft:t}){let[n,r]=(0,U.useState)([]),[i,a]=(0,U.useState)(),[o,s]=(0,U.useState)(),[c,l]=(0,U.useState)(``),[u,d]=(0,U.useState)(!1),[f,p]=(0,U.useState)(!1),[m,h]=(0,U.useState)(`loading`),[g,_]=(0,U.useState)(`idle`),[v,y]=(0,U.useState)(),[b,x]=(0,U.useState)(),[S,C]=(0,U.useState)(),w=(0,U.useRef)(null),T=(0,U.useCallback)(async()=>{h(`loading`);try{let e=await ZBe();r(e.workflows),h(`loaded`)}catch(e){C(e instanceof Error?e.message:`Failed to load workflows`),h(`error`)}},[]);(0,U.useEffect)(()=>{T()},[T]),(0,U.useEffect)(()=>{if(!e){a(void 0),_(`idle`);return}let t=!1;return s(void 0),_(`loading`),C(void 0),nVe(e).then(e=>{t||(a(e.draft),_(`loaded`))}).catch(e=>{t||(a(void 0),_(`error`),C(e instanceof Error?e.message:`Failed to load workflow draft`))}),()=>{t=!0}},[e]),(0,U.useEffect)(()=>{function e(e){w.current?.contains(e.target)||d(!1)}return document.addEventListener(`pointerdown`,e),()=>document.removeEventListener(`pointerdown`,e)},[]);let E=(0,U.useMemo)(()=>n.map(j2e),[n]),D=i?.workflowId??o?.workflowId,O=D?E.find(e=>e.workflowId===D):void 0,k=(0,U.useMemo)(()=>{let e=c.trim().toLowerCase().split(/\s+/).filter(Boolean);return!e.length||O?.label===c?E:E.filter(t=>e.every(e=>t.searchText.includes(e)))},[E,c,O]);(0,U.useEffect)(()=>{O&&!u&&l(O.label)},[u,O]);let A=async e=>{if(!e.latestPublishedVersion)throw Error(`This workflow has no draft or published version to open.`);let t=await QBe(e.workflowId,e.latestPublishedVersion),n=new Date().toISOString();a(void 0),s({workflowId:e.workflowId,workflowVersion:e.latestPublishedVersion,title:t.workflow.title||e.label,source:t.workflow.source,draft:{draftId:`readonly_${e.workflowId}_${e.latestPublishedVersion}`,workflowId:e.workflowId,source:`ui`,status:`draft`,versionIntent:`patch`,definition:t.definition,diagnostics:t.diagnostics,validationState:t.validation.validationState,validation:t.validation,revision:0,createdAt:n,updatedAt:n}})},j=async e=>{y(`select`),d(!1),x(void 0),C(void 0);try{if(e.activeDraftId){s(void 0),t(e.activeDraftId);return}await A(e),x(`Opened ${e.label} as read-only.`)}catch(e){C(e instanceof Error?e.message:`Failed to select workflow`)}finally{y(void 0)}},M=async e=>{y(`new`),x(void 0),C(void 0);try{let n=await tVe({title:e});s(void 0),x(`Created workflow ${n.draft.workflowId}.`),await T(),t(n.draft.draftId)}finally{y(void 0)}},N=async()=>{if(o){y(`duplicate`),x(void 0),C(void 0);try{let e=await iVe(o.workflowId,{version:o.workflowVersion});s(void 0),x(`Duplicated ${o.title}.`),await T(),t(e.draft.draftId)}catch(e){C(e instanceof Error?e.message:`Failed to duplicate workflow`)}finally{y(void 0)}}},P=async()=>{if(i){y(`save`),x(void 0),C(void 0);try{let e=await t4(i.draftId,{definition:i.definition,editTrigger:`graph_edit`});a(e.draft),x(e.message??`Saved ${i.workflowId}.`),await T()}catch(e){C(e instanceof Error?e.message:`Failed to save workflow`)}finally{y(void 0)}}},F=(0,U.useCallback)(e=>{a(t=>t&&{...t,definition:e})},[]),I=(0,U.useCallback)(e=>{a(e),T()},[T]),L=(0,U.useCallback)((e,t=`status`)=>{if(t===`error`){C(e);return}C(void 0),x(e)},[]),R=m===`loading`||g===`loading`,z=O?.label??o?.title??(i?i.workflowId:`No workflow selected`),B=i??o?.draft,ee=S??(v?k2e(v):R?`Loading workflow surface…`:b??`Ready`),te=S?`error`:v||R?`busy`:`status`;return(0,W.jsxs)(`main`,{className:`flex h-full min-h-0 min-w-0 flex-col overflow-hidden bg-[#101d22] text-slate-200`,"aria-label":`Workflows`,children:[(0,W.jsx)(E2e,{open:f,onClose:()=>p(!1),onCreate:M}),(0,W.jsxs)(`div`,{className:`flex min-w-0 shrink-0 flex-wrap items-center gap-2 border-b border-slate-800 bg-[#151f24] px-3 py-2`,children:[(0,W.jsx)(`button`,{type:`button`,className:`inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-sm border border-[#11a4d4]/60 text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>p(!0),disabled:!!v,title:`Create workflow`,"aria-label":`Create workflow`,children:v===`new`?(0,W.jsx)(Ic,{size:15,className:`animate-spin`}):(0,W.jsx)(tl,{size:15})}),(0,W.jsxs)(`div`,{className:`relative min-w-0 flex-1 basis-64`,ref:w,children:[(0,W.jsxs)(`div`,{className:`flex h-9 min-w-0 items-center gap-2 rounded-sm border border-slate-700 bg-[#101d22] px-2 focus-within:border-[#11a4d4]`,children:[(0,W.jsx)(ul,{size:14,className:`shrink-0 text-slate-500`}),(0,W.jsx)(`input`,{className:`min-w-0 flex-1 bg-transparent text-sm text-slate-100 outline-none placeholder:text-slate-600`,value:c,onFocus:()=>d(!0),onChange:e=>{l(e.target.value),d(!0)},placeholder:`Search workflows by name, id, tag, status…`,"aria-label":`Search workflows`})]}),u?(0,W.jsxs)(`div`,{className:`absolute left-0 right-0 top-full z-40 mt-1 max-h-80 overflow-auto rounded-sm border border-slate-700 bg-[#151f24] p-1 shadow-2xl`,role:`listbox`,"aria-label":`Workflow results`,children:[m===`loading`?(0,W.jsx)(P2e,{children:`Loading workflows…`}):null,m===`loaded`&&k.length===0?(0,W.jsx)(P2e,{children:`No workflows match this search.`}):null,k.map(e=>(0,W.jsxs)(`button`,{type:`button`,className:`flex w-full items-start justify-between gap-3 rounded-sm px-3 py-2 text-left text-xs transition hover:bg-slate-800/80 ${D===e.workflowId?`bg-[#11a4d4]/10 text-[#8bdcf4]`:`text-slate-300`}`,onClick:()=>void j(e),disabled:!!v,role:`option`,"aria-selected":D===e.workflowId,children:[(0,W.jsxs)(`span`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate font-semibold`,children:e.label}),(0,W.jsx)(`span`,{className:`mt-0.5 block truncate text-[11px] text-slate-500`,children:e.description})]}),(0,W.jsx)(`span`,{className:`shrink-0 rounded-sm border px-1.5 py-0.5 text-[10px] uppercase tracking-wide ${e.activeDraftId?`border-emerald-700/60 text-emerald-300`:`border-amber-700/60 text-amber-300`}`,children:e.activeDraftId?`draft`:`read only`})]},e.workflowId))]}):null]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex h-9 shrink-0 items-center justify-center gap-2 rounded-sm border border-emerald-700/70 px-3 text-xs font-semibold uppercase tracking-wide text-emerald-200 transition hover:border-emerald-400 hover:text-emerald-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>void P(),disabled:!i||!!v,children:[v===`save`?(0,W.jsx)(Ic,{size:14,className:`animate-spin`}):(0,W.jsx)(cl,{size:14}),`Save`]})]}),o?(0,W.jsxs)(`div`,{className:`flex min-w-0 shrink-0 items-center justify-between gap-3 border-b border-amber-700/50 bg-amber-950/20 px-3 py-1.5 text-xs text-amber-100`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 truncate`,children:[(0,W.jsx)(`span`,{className:`mr-2 rounded-sm border border-amber-500/60 px-1.5 py-0.5 text-[10px] font-bold uppercase tracking-wide text-amber-200`,children:`Read only`}),o.title,` · `,o.workflowId,`@`,o.workflowVersion]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex shrink-0 items-center gap-2 rounded-sm border border-amber-500/60 px-2 py-1 text-[11px] font-semibold uppercase tracking-wide text-amber-100 hover:border-amber-300 hover:text-white disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>void N(),disabled:!!v,children:[v===`duplicate`?(0,W.jsx)(Ic,{size:12,className:`animate-spin`}):(0,W.jsx)(oc,{size:12}),`Duplicate`]})]}):null,(0,W.jsx)(`div`,{className:`min-h-0 min-w-0 flex-1 overflow-hidden p-3`,children:B?(0,W.jsx)(g0e,{draft:B,onDraftChange:o?()=>void 0:I,fullHeight:!0,compactHeader:!0,readOnly:!!o,onDraftDefinitionChange:o?void 0:F,onStatusMessage:o?void 0:L,renderInspectors:e=>o?(0,W.jsx)(N2e,{...e}):(0,W.jsx)(p2e,{...e})}):(0,W.jsx)(`div`,{className:`grid h-full min-w-0 place-items-center rounded-sm border border-dashed border-slate-700 bg-[#151f24]/50 p-6 text-center`,children:(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-lg font-bold text-slate-100`,children:z}),(0,W.jsx)(`p`,{className:`mt-2 max-w-xl text-sm leading-6 text-slate-500`,children:`Create a workflow with the plus button or search and select an existing workflow above. Published and built-in workflows open read-only and can be duplicated before editing.`})]})})}),(0,W.jsxs)(`div`,{className:`flex h-7 shrink-0 items-center gap-2 border-t px-3 text-[11px] ${A2e(te)}`,role:S?`alert`:`status`,"aria-label":`Workflow editor status`,children:[(0,W.jsx)(`span`,{className:`h-1.5 w-1.5 shrink-0 rounded-full ${te===`error`?`bg-red-400`:te===`busy`?`animate-pulse bg-[#11a4d4]`:`bg-emerald-400`}`}),(0,W.jsx)(`span`,{className:`shrink-0 font-bold uppercase tracking-[0.16em]`,children:`Status`}),(0,W.jsx)(`span`,{className:`min-w-0 truncate font-mono text-[11px]`,children:ee})]})]})}function k2e(e){return e===`new`?`Creating workflow…`:e===`select`?`Opening workflow…`:e===`duplicate`?`Duplicating workflow…`:`Saving workflow…`}function A2e(e){return e===`error`?`border-red-900/70 bg-red-950/30 text-red-200`:e===`busy`?`border-slate-800 bg-[#0f1b20] text-[#8bdcf4]`:`border-slate-800 bg-[#0f1b20] text-slate-400`}function j2e(e){let t=M2e(e.versions),n=e.tags.join(`, `),r=[e.id,e.status,e.source,n].filter(Boolean),i=[e.id,e.title,e.description,e.status,e.source,n,t?.version].filter(e=>!!e);return{workflowId:e.id,label:e.title||e.id,description:r.join(` · `),...e.activeDraftId?{activeDraftId:e.activeDraftId}:{},...t?{latestPublishedVersion:t.version}:{},searchText:i.join(` `).toLowerCase()}}function M2e(e){return[...e].reverse().find(e=>e.status===`published`)}function N2e({draft:e,selectedElement:t}){let n=I7(e.definition),r=L7(e.definition),i=t?.type===`node`?n[t.id]:t?.type===`edge`?r[t.id]:e.definition,a=t?`${t.type} ${t.id}`:`Workflow definition`;return(0,W.jsxs)(`div`,{className:`min-w-0 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Read-only workflow details`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Read-only details`}),(0,W.jsx)(`div`,{className:`mt-2 truncate text-xs font-semibold text-slate-200`,children:a}),(0,W.jsx)(`pre`,{className:`mt-2 max-h-72 overflow-auto rounded-sm border border-slate-800 bg-[#0c171c] p-2 text-[11px] leading-5 text-slate-300`,children:JSON.stringify(i??{},null,2)})]})}function P2e({children:e}){return(0,W.jsx)(`div`,{className:`px-3 py-2 text-xs text-slate-500`,children:e})}function F2e(e){return e.viewWorkflowId&&e.viewWorkflowVersion?{workflowId:e.viewWorkflowId,workflowVersion:e.viewWorkflowVersion}:void 0}function I2e({workflowId:e,workflowVersion:t,surface:n=`desktop`}){return(0,W.jsx)(`main`,{className:`h-full min-h-0 overflow-auto bg-[#101d22] p-6 max-[720px]:p-4`,"data-pibo-debug":`${n}-workflow-version-viewer`,children:(0,W.jsx)(`div`,{className:`mx-auto w-full max-w-4xl`,children:(0,W.jsx)(u2e,{workflowId:e,workflowVersion:t})})})}function L2e({route:e,surface:t,fallback:n}){let r=F2e(e);return r?(0,W.jsx)(I2e,{...r,surface:t}):n}var R2e=50,z2e=6e4,B2e=[`.vs`,`.vs-dark`,`.hc-black`,`.hc-light`];function V2e(e){return!!(e?.querySelector(`.monaco-workbench`)&&B2e.some(t=>e.querySelector(t)))}function H2e(e,t,n=`http://localhost/`){let r=new URL(e,n);if(r.origin!==new URL(n).origin)throw Error(`VS Code Web URL must use the Pibo Chat origin.`);return t?r.searchParams.set(`folder`,t):r.searchParams.delete(`folder`),`${r.pathname}${r.search}${r.hash}`}function U2e({integration:e}){let[t,n]=(0,U.useState)(`checking`),[r,i]=(0,U.useState)(null),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(0),l=(0,U.useRef)(null),u=(0,U.useRef)(null),d=(0,U.useMemo)(()=>e?H2e(e.url,e.workspaceRoot||void 0,window.location.href):``,[e?.url,e?.workspaceRoot]);return(0,U.useEffect)(()=>{if(!d){n(`unavailable`),i(`VS Code Web is not configured for this Pibo gateway.`);return}let e=new URL(d,window.location.href),t=new AbortController;return n(`checking`),i(null),fetch(e.toString(),{method:`GET`,credentials:`same-origin`,cache:`no-store`,headers:{accept:`text/html`},signal:t.signal}).then(e=>{let t=e.headers.get(`content-type`)??``;if(!e.ok||!t.toLowerCase().includes(`text/html`))throw Error(`VS Code Web returned HTTP ${e.status}.`);n(`ready`)}).catch(e=>{t.signal.aborted||(n(`unavailable`),i(e instanceof Error?e.message:String(e)))}),()=>t.abort()},[d,s]),(0,U.useEffect)(()=>(o(!1),u.current!==null&&(window.clearTimeout(u.current),u.current=null),()=>{u.current!==null&&(window.clearTimeout(u.current),u.current=null)}),[d]),e?(0,W.jsx)(`main`,{className:`flex h-full min-h-0 min-w-0 flex-col overflow-hidden bg-[#101d22]`,"aria-label":`VS Code Web`,children:(0,W.jsx)(`div`,{className:`relative min-h-0 flex-1 bg-[#101d22]`,children:t===`ready`?(0,W.jsxs)(W.Fragment,{children:[a?null:(0,W.jsx)(`div`,{className:`absolute inset-0 z-10 grid place-items-center bg-[#101d22]`,role:`status`,"aria-live":`polite`,children:(0,W.jsxs)(`div`,{className:`flex items-center gap-3 text-sm text-slate-300`,children:[(0,W.jsx)(il,{size:16,className:`animate-spin text-[#11a4d4]`}),`Starting VS Code…`]})}),(0,W.jsx)(`iframe`,{ref:l,src:d,title:`VS Code Web`,allow:`clipboard-read; clipboard-write`,onLoad:()=>{u.current!==null&&window.clearTimeout(u.current),o(!1);let e=Date.now(),t=()=>{let r=!1;try{let e=l.current?.contentDocument;r=V2e(e)}catch{r=!1}if(r){u.current=window.setTimeout(()=>{o(!0),u.current=null},100);return}if(Date.now()-e>=z2e){u.current=null,n(`unavailable`),i(`VS Code Web did not finish starting.`);return}u.current=window.setTimeout(t,R2e)};t()},"aria-hidden":!a,tabIndex:a?0:-1,className:`h-full w-full border-0 bg-[#101d22] ${a?`visible`:`invisible`}`},d)]}):t===`checking`?(0,W.jsx)(`div`,{className:`grid h-full place-items-center bg-[#101d22] text-sm text-slate-400`,children:`Connecting to VS Code Web…`}):(0,W.jsx)(`div`,{className:`grid h-full place-items-center p-6`,children:(0,W.jsxs)(`div`,{className:`max-w-lg border border-orange-500/40 bg-orange-500/10 p-5 text-sm text-slate-300 rounded-sm`,role:`alert`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 font-bold uppercase tracking-wider text-orange-300`,children:[(0,W.jsx)(fl,{size:16}),` VS Code Web is not reachable`]}),(0,W.jsx)(`p`,{className:`mt-3 break-words text-slate-400`,children:r??`The embedded IDE did not respond.`}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>c(e=>e+1),className:`mt-4 inline-flex items-center gap-2 rounded-sm bg-[#11a4d4] px-3 py-2 text-xs font-bold uppercase tracking-wider text-white`,children:[(0,W.jsx)(il,{size:14}),` Retry`]})]})})})}):(0,W.jsx)(`main`,{className:`grid min-h-0 place-items-center bg-[#101d22] p-6`,"aria-label":`VS Code Web`,children:(0,W.jsxs)(`div`,{className:`max-w-lg border border-slate-700 bg-[#1a262b] p-5 text-sm text-slate-300 rounded-sm`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-slate-100 font-bold uppercase tracking-wider`,children:[(0,W.jsx)(fl,{size:16,className:`text-orange-400`}),` VS Code Web unavailable`]}),(0,W.jsxs)(`p`,{className:`mt-3 text-slate-400`,children:[`Configure `,(0,W.jsx)(`code`,{className:`text-slate-200`,children:`PIBO_VSCODE_WEB_URL`}),` on the gateway to enable the embedded IDE.`]})]})})}var M9=`Delete this session`;function W2e({session:e,confirmText:t,deleting:n,onConfirmTextChange:r,onCancel:i,onDelete:a}){let o=(0,U.useRef)(null);return(0,W.jsx)(AX,{title:`Delete Session`,description:e.piboSessionId,onClose:i,initialFocusRef:o,closeLabel:`Cancel session deletion`,closeDisabled:n,children:(0,W.jsxs)(`div`,{className:`p-4 grid gap-3`,children:[(0,W.jsx)(`div`,{className:`border border-red-500/60 bg-red-500/10 text-red-100 rounded-sm p-3 text-sm`,children:`This permanently deletes the archived session, its child sessions, and their Chat events. This cannot be undone.`}),(0,W.jsxs)(`div`,{className:`text-sm text-slate-300`,children:[`Type `,(0,W.jsx)(`span`,{className:`font-mono text-red-200`,children:M9}),` to confirm.`]}),(0,W.jsx)(`input`,{ref:o,value:t,onChange:e=>r(e.target.value),className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-red-500`,placeholder:M9}),(0,W.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:i,disabled:n,className:`h-8 inline-flex items-center border border-slate-700 rounded-sm px-3 text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:`Cancel`}),(0,W.jsxs)(`button`,{type:`button`,onClick:a,disabled:n||t!==M9,className:`h-8 inline-flex items-center gap-2 border border-red-500 rounded-sm px-3 text-red-200 bg-red-500/10 disabled:opacity-50`,children:[(0,W.jsx)(Sl,{size:14}),`Delete permanently`]})]})]})})}function G2e({room:e,confirmName:t,deleting:n,onConfirmNameChange:r,onCancel:i,onDelete:a}){let o=(0,U.useRef)(null);return(0,W.jsx)(AX,{title:`Delete Room`,description:e.id,onClose:i,initialFocusRef:o,closeLabel:`Cancel room deletion`,closeDisabled:n,children:(0,W.jsxs)(`div`,{className:`p-4 grid gap-3`,children:[(0,W.jsx)(`div`,{className:`border border-red-500/60 bg-red-500/10 text-red-100 rounded-sm p-3 text-sm`,children:`This permanently deletes the archived room, child rooms, all contained sessions, subagent sessions, and their Chat events. This cannot be undone.`}),(0,W.jsxs)(`div`,{className:`text-sm text-slate-300`,children:[`Type `,(0,W.jsx)(`span`,{className:`font-mono text-red-200`,children:e.name}),` to confirm.`]}),(0,W.jsx)(`input`,{ref:o,value:t,onChange:e=>r(e.target.value),className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-red-500`,placeholder:e.name}),(0,W.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:i,disabled:n,className:`h-8 inline-flex items-center border border-slate-700 rounded-sm px-3 text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:`Cancel`}),(0,W.jsxs)(`button`,{type:`button`,onClick:a,disabled:n||t!==e.name,className:`h-8 inline-flex items-center gap-2 border border-red-500 rounded-sm px-3 text-red-200 bg-red-500/10 disabled:opacity-50`,children:[(0,W.jsx)(Sl,{size:14}),`Delete permanently`]})]})]})})}var K2e=[`sessions`,`projects`,`workflows`,`cron`,`loops`,`agents`,`context`,`settings`],q2e={sessions:`sessions`,projects:`projects`,vscode:`VS Code`,workflows:`workflows`,cron:`cron`,loops:`loops`,agents:`agents`,context:`context`,settings:`settings`};function J2e(e){return e?[`sessions`,`projects`,`vscode`,`workflows`,`cron`,`loops`,`agents`,`context`,`settings`]:K2e}var Y2e=`main-navigation-menu`;function X2e(){return(0,W.jsxs)(`div`,{className:`fixed top-0 left-0 right-0 z-50 bg-red-600 text-white text-center text-sm font-bold py-1.5 px-4 flex items-center justify-center gap-2 shadow-lg`,children:[(0,W.jsx)(Cl,{size:16}),`Recovery Mode: Main gateway is down. You are connected to a fallback instance.`]})}function Z2e({area:e,desktopTabMode:t=!1,identity:n,mobileAreaMenuOpen:r,mobileSidebarTriggerRef:i,totalRoomUnreadCount:a,vscodeEnabled:o=!1,showMobileSidebarTrigger:s=!0,onOpenMobileSidebar:c,onSelectMainNavArea:l,onToggleMobileAreaMenu:u,onCloseMobileAreaMenu:d}){let f=n.email||n.name||n.userId,p=(0,U.useRef)(null),m=(0,U.useRef)(null),h=(0,U.useRef)([]),g=(0,U.useRef)(null),_=J2e(o),v=e=>{let t=(e+_.length)%_.length;h.current[t]?.focus()},y=e=>{if(r){v(e);return}g.current=e,u()};return(0,U.useLayoutEffect)(()=>{if(!r){g.current=null;return}let e=g.current;e!==null&&(g.current=null,v(e))},[r]),(0,U.useEffect)(()=>{if(!r)return;let e=e=>{p.current&&!p.current.contains(e.target)&&d()},t=e=>{e.key===`Escape`&&(e.preventDefault(),d(),m.current?.focus())};return document.addEventListener(`mousedown`,e),document.addEventListener(`touchstart`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`touchstart`,e),document.removeEventListener(`keydown`,t)}},[r,d]),(0,W.jsxs)(`header`,{className:`relative flex items-center gap-3 px-4 bg-[#1a262b] border-b border-slate-800 min-h-14 max-[980px]:px-3`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[s?(0,W.jsx)(`button`,{ref:i,type:`button`,onClick:c,className:`min-[981px]:hidden shrink-0 p-1.5 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,title:`Open sidebar`,"aria-label":`Open sidebar`,children:(0,W.jsx)(Bc,{size:16})}):null,(0,W.jsx)(`img`,{src:`/apps/chat/assets/pwa-images/android/launchericon-512x512.png`,alt:`Logo`,className:`h-5 w-auto shrink-0`}),(0,W.jsx)(`div`,{className:`truncate font-extrabold tracking-[0.08em] uppercase text-lg max-[420px]:text-base`,children:`Pibo Chat`})]}),t?null:(0,W.jsx)(`nav`,{"aria-label":`Main navigation`,className:`flex gap-1 max-[1200px]:hidden min-[1201px]:absolute min-[1201px]:left-1/2 min-[1201px]:-translate-x-1/2`,children:_.map(t=>(0,W.jsx)(`button`,{type:`button`,onClick:()=>l(t),"aria-current":e===t?`page`:void 0,className:`h-8 px-3 border rounded-sm text-xs uppercase tracking-wider ${e===t?`border-[#11a4d4] text-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-700 text-slate-400`}`,children:(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,W.jsx)(`span`,{children:q2e[t]}),t===`sessions`?(0,W.jsx)(n4e,{count:a}):null]})},t))}),(0,W.jsxs)(`div`,{className:`ml-auto flex shrink-0 items-center justify-end gap-2 text-xs text-slate-400 min-[1201px]:ml-0`,children:[(0,W.jsx)(Tl,{size:14}),(0,W.jsx)(`span`,{className:`truncate ${o?`max-[1500px]:hidden`:`max-[600px]:hidden`}`,children:f}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void UBe().then(()=>location.reload()),className:`p-1 border border-slate-700 rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4]`,title:`Sign out`,"aria-label":`Sign out`,children:(0,W.jsx)(Lc,{size:14})}),t?null:(0,W.jsxs)(`div`,{className:`relative min-[1201px]:hidden`,ref:p,children:[(0,W.jsx)(`button`,{ref:m,type:`button`,onClick:()=>{g.current=null,u()},onKeyDown:e=>{e.key===`Enter`||e.key===` `||e.key===`ArrowDown`?(e.preventDefault(),y(0)):e.key===`ArrowUp`&&(e.preventDefault(),y(_.length-1))},className:`p-1 border rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4] ${r?`border-[#11a4d4] text-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-700 text-slate-400`}`,title:`Open navigation menu`,"aria-label":`Open navigation menu`,"aria-haspopup":`menu`,"aria-controls":Y2e,"aria-expanded":r,children:(0,W.jsx)(Fc,{size:14})}),r?(0,W.jsx)(`div`,{id:Y2e,className:`absolute right-0 top-full z-50 mt-2 w-52 rounded-sm border border-slate-700 bg-[#1a262b] p-1 shadow-xl`,role:`menu`,"aria-label":`Main navigation`,onKeyDown:e=>{if(e.key===`Tab`){d();return}let t=h.current.findIndex(e=>e===document.activeElement),n=null;e.key===`ArrowDown`?n=t<0?0:t+1:e.key===`ArrowUp`?n=t<0?_.length-1:t-1:e.key===`Home`?n=0:e.key===`End`&&(n=_.length-1),n!==null&&(e.preventDefault(),e.stopPropagation(),v(n))},children:_.map((t,n)=>(0,W.jsxs)(`button`,{ref:e=>{h.current[n]=e},type:`button`,onClick:()=>{d(),l(t)},"aria-current":e===t?`page`:void 0,className:`flex w-full items-center justify-between gap-2 rounded-sm px-3 py-2 text-left text-xs uppercase tracking-wider ${e===t?`bg-[#11a4d4]/10 text-[#11a4d4]`:`text-slate-300 hover:bg-slate-800/80 hover:text-[#11a4d4]`}`,role:`menuitem`,tabIndex:-1,children:[(0,W.jsx)(`span`,{children:q2e[t]}),t===`sessions`?(0,W.jsx)(n4e,{count:a}):null]},t))}):null]})]})]})}function Q2e({message:e,onDismiss:t}){return(0,W.jsxs)(`div`,{className:`border-b border-red-500/40 bg-red-500/10 px-4 py-2 text-sm text-red-100 flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 flex items-start gap-2`,children:[(0,W.jsx)(Cl,{size:16,className:`mt-0.5 shrink-0 text-red-300`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-bold uppercase tracking-wider text-red-300`,children:`Session Error`}),(0,W.jsx)(`div`,{className:`break-words`,children:e})]})]}),(0,W.jsx)(`button`,{type:`button`,onClick:t,className:`shrink-0 rounded-sm border border-red-500/40 px-2 py-1 text-[11px] uppercase tracking-wider text-red-200 hover:border-red-300 hover:text-red-100`,children:`Dismiss`})]})}function $2e({message:e}){return(0,W.jsx)(`div`,{className:`min-h-screen bg-[#101d22] text-slate-300 grid place-items-center`,children:(0,W.jsxs)(`div`,{className:`border border-slate-700 bg-[#1a262b] p-5 rounded-sm`,children:[(0,W.jsx)(`div`,{className:`mb-4 text-sm text-slate-400`,children:e}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void WBe(),className:`px-3 py-2 bg-[#11a4d4] rounded-sm`,children:`Sign in with Google`})]})})}function e4e({message:e,onRetry:t}){return(0,W.jsx)(`div`,{className:`min-h-screen bg-[#101d22] text-slate-300 grid place-items-center px-4`,children:(0,W.jsxs)(`div`,{className:`w-full max-w-md border border-slate-700 bg-[#1a262b] p-5 rounded-sm`,role:`alert`,children:[(0,W.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,W.jsx)(Cl,{size:18,className:`mt-0.5 shrink-0 text-orange-400`}),(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-sm font-bold uppercase tracking-wider text-slate-100`,children:`Could not load Pibo Chat`}),(0,W.jsx)(`div`,{className:`mt-2 text-sm text-slate-400`,children:e})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:t,className:`mt-4 inline-flex items-center gap-2 px-3 py-2 bg-[#11a4d4] text-white rounded-sm`,children:[(0,W.jsx)(il,{size:14}),`Retry`]})]})})}function t4e(e){return e>99?`99+`:String(e)}function n4e({count:e}){return!e||e<=0?null:(0,W.jsx)(`span`,{className:`min-w-5 h-5 px-1.5 inline-flex items-center justify-center rounded-full bg-[#38bdf8] text-[#0e1116] text-[10px] font-bold tabular-nums leading-none`,"aria-label":`${e} unread messages across all rooms`,title:`${e} unread messages across all rooms`,children:t4e(e)})}function r4e(e,t){return F9(e,e=>h4e(t.sessions[e]))}function i4e(e,t){return F9(e,e=>g4e(t.sessions[e]))}function N9(e,t){return!!e?.sessions[t]}function a4e(e,t){return N9(e,t)?e:null}function o4e(e,t,n){if(!N9(e,t))return!0;let r=e.sessions[t];return r.isTreeActive||r.latestTurn?.state===`running`||n===`running`}function s4e(e,t,n){return N9(t,n)?e?.rootPiboSessionId!==t.rootPiboSessionId||e.version<=t.version:!1}function c4e(e,t,n){if(!N9(e,n))return{snapshot:e,needsRefresh:!0};let r=_4e(e,t);return{snapshot:r,needsRefresh:r===e}}function l4e(e,t){let n=new Map(t.sessionSnapshots.map(e=>[e.piboSessionId,h4e(e)]));return F9(e,e=>n.get(e))}function u4e(e,t){let n=new Map(t.sessionStatuses.map(e=>[e.piboSessionId,g4e(e)]));return F9(e,e=>n.get(e))}function P9(e,t){if(!e)return!0;let n=Date.parse(e.generatedAt),r=Date.parse(t.generatedAt);return Number.isFinite(n)&&Number.isFinite(r)?n<=r:Object.entries(e.rootVersions).every(([e,n])=>(t.rootVersions[e]??-1)>=n)}function d4e(e,t){if(!e||(e.rootVersions[t.rootPiboSessionId]??0)!==t.fromVersion)return{snapshot:e,needsRefresh:!0};let n={...e.sessions};for(let e of t.sessionStatuses)n[e.piboSessionId]=e;return{snapshot:{...e,generatedAt:t.generatedAt,rootVersions:{...e.rootVersions,[t.rootPiboSessionId]:t.toVersion},sessions:n},needsRefresh:!1}}function F9(e,t){return{...e,sessions:e.sessions.map(e=>f4e(e,t))}}function f4e(e,t){let n=t(e.piboSessionId),r=m4e(n,p4e(e)),i=r&&r!==e.status?L9(e.lastActivityAt,n?.updatedAt,new Date().toISOString()):L9(e.lastActivityAt,n?.updatedAt);return{...e,status:r??e.status,lastActivityAt:i,children:e.children.map(e=>f4e(e,t)),derivedSessions:e.derivedSessions.map(e=>{let n=t(e.piboSessionId),r=m4e(n,0),i=!!(r&&r!==e.status);return{...e,status:r??e.status,lastActivityAt:i?L9(e.lastActivityAt,n?.updatedAt,new Date().toISOString()):L9(e.lastActivityAt,n?.updatedAt)}})}}function p4e(e){return(e.unreadCount??0)+e.children.reduce((e,t)=>e+p4e(t),0)}function m4e(e,t){return e?.isTreeActive?`running`:e?.status===`error`?t>0?`error`:`idle`:e?.status}function h4e(e){let t=I9(e);if(!(!e&&!t))return{status:t,updatedAt:e?.updatedAt,isTreeActive:e?.isTreeActive}}function g4e(e){return e?{status:e.status,updatedAt:e.updatedAt,isTreeActive:e.isTreeActive}:void 0}function I9(e){return e?j2(e).status:void 0}function L9(...e){let t,n=-1/0;for(let r of e){if(!r)continue;let e=Date.parse(r);!Number.isFinite(e)||e<n||(t=r,n=e)}return t}function _4e(e,t){if(!e||e.rootPiboSessionId!==t.rootPiboSessionId||e.version!==t.fromVersion)return e;let n={...e.nodes};for(let e of t.removes)delete n[e];for(let e of t.upserts)n[e.id]=e;let r={...e.sessions};for(let e of t.sessionSnapshots)r[e.piboSessionId]=e;return{...e,version:t.toVersion,generatedAt:t.generatedAt,nodes:n,sessions:r}}function v4e(e,t,n={}){let r=n.readSessionId?b4e(e.sessions,n.readSessionId):new Set,i=new Map;R9(e.sessions,i);let a=[...r].reduce((e,t)=>e+(i.get(t)??0),0);return{...e,identity:t.identity,session:t.session,room:t.room,selectedRoomId:t.selectedRoomId,selectedPiboSessionId:t.selectedPiboSessionId,latestRoomStreamId:t.latestRoomStreamId,rooms:C4e(e.rooms,t.rooms,t.selectedRoomId,a),sessions:e.selectedRoomId===t.selectedRoomId?S4e(e.sessions,z9(t.sessions,r,i)):z9(t.sessions,r,i)}}function y4e(e,t,n=e.selectedRoomId){let r=b4e(e.sessions,t),i=new Map;R9(e.sessions,i);let a=[...r].reduce((e,t)=>e+(i.get(t)??0),0);return{...e,selectedRoomId:n,selectedPiboSessionId:t,rooms:C4e(e.rooms,e.rooms,n,a),sessions:z9(e.sessions,r,i)}}function R9(e,t){for(let n of e)t.set(n.piboSessionId,n.unreadCount??0),R9(n.children,t)}function b4e(e,t){let n=new Set,r=e=>e.piboSessionId===t?(x4e(e,n),!0):e.children.some(e=>r(e));for(let t of e)r(t);return n}function x4e(e,t){t.add(e.piboSessionId);for(let n of e.children)x4e(n,t)}function S4e(e,t){let n=e.filter(e=>e.piSessionId===`pending`);if(!n.length)return t;let r=new Set(t.map(e=>e.piboSessionId)),i=n.filter(e=>!r.has(e.piboSessionId));return i.length?[...i,...t]:t}function z9(e,t,n){return e.map(e=>{let r=n.get(e.piboSessionId),i=t.has(e.piboSessionId)?0:e.unreadCount??r??0;return{...e,...i>0?{unreadCount:i}:{unreadCount:void 0},children:z9(e.children,t,n)}})}function C4e(e,t,n,r){let i=new Map;return w4e(e,i),T4e(t,i,n,r).rooms}function w4e(e,t){for(let n of e)t.set(n.id,n.unreadCount??0),w4e(n.children??[],t)}function T4e(e,t,n,r){let i=!1;return{rooms:e.map(e=>{let a=T4e(e.children??[],t,n,r),o=e.id===n||a.selectedRoomFound;i||=o;let s=e.unreadCount??t.get(e.id)??0,c=o&&r>0?Math.max(0,s-r):s;return{...e,...c>0?{unreadCount:c}:{unreadCount:void 0},...e.children?{children:a.rooms}:{}}}),selectedRoomFound:i}}function E4e(e,t){if(!t.length)return e;let n=new Set(e.map(e=>e.piboSessionId)),r=t.filter(e=>!n.has(e.piboSessionId));return r.length?[...e,...r]:e}function D4e(e,t){return e.agentCatalog?{...e,agentCatalog:{...e.agentCatalog,mcpServers:e.agentCatalog.mcpServers.map(e=>e.name===t.name?t:e)}}:e}function O4e(e,t){if(!e.agentCatalog)return e;let n=e.agentCatalog.piPackages.filter(e=>e.id!==t.id);return{...e,agentCatalog:{...e.agentCatalog,piPackages:M4e([...n,t])}}}function k4e(e,t){return e.agentCatalog?{...e,agentCatalog:{...e.agentCatalog,piPackages:e.agentCatalog.piPackages.filter(e=>e.id!==t)}}:e}function A4e(e,t){if(!e.agentCatalog)return e;let n=e.agentCatalog.userSkills.filter(e=>e.id!==t.id);return{...e,agentCatalog:{...e.agentCatalog,userSkills:M4e([...n,t])}}}function j4e(e,t){return e.agentCatalog?{...e,agentCatalog:{...e.agentCatalog,userSkills:e.agentCatalog.userSkills.filter(e=>e.id!==t)}}:e}function M4e(e){return e.sort((e,t)=>e.name.localeCompare(t.name))}function N4e(e,t){let n=K3(e);return{deletedSessionIds:n,selectedSessionDeleted:t?n.has(t):!1,restoreSelectedPiboSessionId:t}}function P4e(e,t,n){return t?e.includes(t):n}function F4e(e,t){return t?void 0:e??void 0}function I4e(e,t,n){let r=Q3(e);return{deletedRoomIds:r,selectedRoomDeleted:t?r.has(t):!1,restoreSelectedRoomId:t,restoreSelectedPiboSessionId:n}}function L4e(e,t){return t===e}function R4e({queryClient:e,bootstrap:t,selectedPiboSessionId:n,selectedRoomId:r,showArchivedRef:i,isSessionsArea:a,loadBootstrap:o,navigateToSelectedSession:s,updateBootstrapCache:c,restoreBootstrapSnapshot:l,setSelectedPiboSessionId:u,setSelectedRoomId:d,setError:f}){let[p,m]=(0,U.useState)(null),[h,g]=(0,U.useState)(``),[_,v]=(0,U.useState)(!1),[y,b]=(0,U.useState)(null),[x,S]=(0,U.useState)(``),[C,w]=(0,U.useState)(!1),T=e=>{b(e),S(``)},E=()=>{b(null),S(``)},D=async()=>{if(!y)return;w(!0),await e.cancelQueries({queryKey:[`chat`,`bootstrap`]});let d=B3(e,t),p=N4e(y,n);p.selectedSessionDeleted&&u(null),c(e=>QUe(e,p.deletedSessionIds));try{let e=P4e((await Zl(y.piboSessionId,x)).deletedSessionIds,n,p.selectedSessionDeleted);e&&u(null);let t=await o(F4e(n,e),i.current,r??void 0,{force:!0});a&&s(t.selectedRoomId,t.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(),f(null)}catch(e){l(d),p.selectedSessionDeleted&&u(p.restoreSelectedPiboSessionId),f(e instanceof Error?e.message:String(e))}finally{w(!1)}},O=e=>{m(e),g(``)},k=()=>{m(null),g(``)};return{deleteRoomTarget:p,deleteRoomConfirmName:h,deletingRoom:_,setDeleteRoomConfirmName:g,requestRoomDelete:O,cancelRoomDelete:k,permanentlyDeleteRoom:async()=>{if(!p)return;v(!0),await e.cancelQueries({queryKey:[`chat`,`bootstrap`]});let m=B3(e,t),g=I4e(p,r,n);g.selectedRoomDeleted&&(d(null),u(null)),c(e=>rWe(e,g.deletedRoomIds));try{await Yl(p.id,h);for(let e of g.deletedRoomIds)TY(e),IY(e);L4e(p.id,r)&&(d(null),u(null));let e=await o(void 0,i.current,void 0,{force:!0});a&&s(e.selectedRoomId,e.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),k(),f(null)}catch(e){l(m),g.selectedRoomDeleted&&(d(g.restoreSelectedRoomId),u(g.restoreSelectedPiboSessionId)),f(e instanceof Error?e.message:String(e))}finally{v(!1)}},deleteSessionTarget:y,deleteSessionConfirmText:x,deletingSession:C,setDeleteSessionConfirmText:S,requestSessionDelete:T,cancelSessionDelete:E,permanentlyDeleteSession:D}}function z4e(e){if(e.area!==`sessions`||!e.activeRoomId||e.bootstrapSelectedRoomId!==e.activeRoomId||typeof e.latestRoomStreamId!=`number`||!Number.isFinite(e.latestRoomStreamId)||e.latestRoomStreamId<=0)return null;let t=new URLSearchParams({roomId:e.activeRoomId});return t.set(`mode`,`summary`),t.set(`since`,`${e.latestRoomStreamId}:999999`),`/api/chat/events?${t.toString()}`}var B4e=`pibo.chat.desktopTabs.v1`;function B9(){return{version:1,tabs:[],activeTabId:null,width:520,collapsed:!1}}function V9(e){if(e.kind===`new-tab`)return`new-tab:${e.instanceId}`;if(e.kind===`session-tool`)return`tool:${e.tool}`;let t=e.route;return t.area===`projects`?t.projectId?`projects:${t.projectId}`:`projects`:t.area===`workflows`?t.draftId?`workflows:draft:${t.draftId}`:t.viewWorkflowId&&t.viewWorkflowVersion?`workflows:view:${t.viewWorkflowId}:${t.viewWorkflowVersion}`:`workflows`:`route:${t.area}`}function H9(e){if(e.kind===`new-tab`)return`New Tab`;if(e.kind===`session-tool`)return e.tool===`preview`?`Preview`:e.tool===`raw-events`?`Raw Events`:e.tool===`web-annotations`?`Annotations`:e.tool===`runtime-requests`?`Runtime Requests`:`Session Inspector`;let t=e.route;return t.area===`vscode`?`VS Code`:t.area===`cron`?`Cron`:t.area===`loops`?`Loops`:t.area===`agents`?`Agent Designer`:t.area===`context`?`Context`:t.area===`settings`?`Settings`:t.area===`projects`?t.projectId?`Project · ${t.projectId}`:`Projects`:t.draftId?`Workflow · ${t.draftId}`:t.viewWorkflowId?`Workflow · ${t.viewWorkflowId}`:`Workflows`}function V4e(e){return e.area===`sessions`?null:{kind:`route`,route:e}}function U9(e,t,n={}){let r=n.now??Date.now(),i=V9(t),a=e.tabs.findIndex(e=>V9(e.target)===i);if(a>=0){let n=e.tabs[a],i=e.tabs.slice();return i[a]={...n,target:t,title:H9(t),lastActivatedAt:r},{...e,tabs:i,activeTabId:n.id,collapsed:!1}}let o=n.id??d3e(),s={id:o,target:t,title:H9(t),createdAt:r,lastActivatedAt:r},c=e.tabs.length>=24?e.tabs.slice(-23):e.tabs;return{...e,tabs:[...c,s],activeTabId:o,collapsed:!1}}function H4e(e,t={}){let n=t.id??d3e();return U9(e,{kind:`new-tab`,instanceId:n},{...t,id:n})}function U4e(e,t,n,r=Date.now()){let i=e.tabs.findIndex(e=>e.id===t&&e.target.kind===`new-tab`);if(i<0)return U9(e,n,{now:r});let a=V9(n);if(e.tabs.find(e=>e.id!==t&&V9(e.target)===a))return U9(G4e(e,t),n,{now:r});let o=e.tabs.slice();return o[i]={...o[i],target:n,title:H9(n),lastActivatedAt:r},{...e,tabs:o,activeTabId:t,collapsed:!1}}function W4e(e,t,n=Date.now()){return e.activeTabId===t&&!e.collapsed||!e.tabs.some(e=>e.id===t)?e:{...e,activeTabId:t,collapsed:!1,tabs:e.tabs.map(e=>e.id===t?{...e,lastActivatedAt:n}:e)}}function G4e(e,t){let n=e.tabs.findIndex(e=>e.id===t);if(n<0)return e;let r=e.tabs.filter(e=>e.id!==t);if(e.activeTabId!==t)return{...e,tabs:r};let i=r[n]??r[n-1]??null;return{...e,tabs:r,activeTabId:i?.id??null,collapsed:r.length?e.collapsed:!1}}function K4e(e,t,n){let r=e.tabs.findIndex(e=>e.id===t);if(r<0||e.tabs.length<2)return e;let i=Math.max(0,Math.min(e.tabs.length-1,n));if(i===r)return e;let a=e.tabs.slice(),[o]=a.splice(r,1);return a.splice(i,0,o),{...e,tabs:a}}function q4e(e,t,n){let r=e.tabs.findIndex(e=>e.id===t);return r<0?e:K4e(e,t,r+n)}function J4e(e,t){return{...e,width:W9(t)}}function W9(e){return Number.isFinite(e)?Math.round(Math.max(360,Math.min(920,e))):520}function G9(e){return e.tabs.find(t=>t.id===e.activeTabId)??null}function Y4e(e){return e.target.kind===`new-tab`?!1:e.target.kind===`session-tool`?e.target.tool===`preview`:e.target.route.area===`vscode`}function X4e(e,t){let n=G9(e);return n?.target.kind===`route`?n.target.route:t}function Z4e(e,t){return e?.target.kind===`route`&&e.target.route.area===`agents`&&e.id!==t}async function Q4e(e,t){if(!e||!t)return{allowed:!0};try{return await t(),{allowed:!0}}catch(e){return{allowed:!1,error:e}}}async function $4e({current:e,next:t,sessionsRoute:n,closingTab:r,autosave:i,onCommit:a,onNavigate:o}){let s=G9(e),c=await Q4e(!!(r?.target.kind===`route`&&r.target.route.area===`agents`||Z4e(s,t.activeTabId)),i);if(!c.allowed)return c;let l=X4e(e,n),u=X4e(t,n);return a(t),JSON.stringify(l)!==JSON.stringify(u)&&o(u),{allowed:!0}}function e3e(e,t,n={}){let r=V4e(t);return r?{...U9(e,r,n),collapsed:e.collapsed}:e}function t3e(e){return JSON.stringify({...e,width:W9(e.width),tabs:e.tabs.slice(0,24),activeTabId:e.tabs.some(t=>t.id===e.activeTabId)?e.activeTabId:null})}function n3e(e){if(!e)return B9();try{let t=JSON.parse(e);if(!K9(t)||t.version!==1||!Array.isArray(t.tabs))return B9();let n=t.tabs.slice(0,24).map(a3e).filter(e=>e!==null),r=[],i=new Set,a=new Map,o=new Map;for(let e of n){let t=V9(e.target),n=a.get(t);if(i.has(e.id)||n){o.set(e.id,n??e.id);continue}r.push(e),i.add(e.id),a.set(t,e.id),o.set(e.id,e.id)}let s=typeof t.activeTabId==`string`?o.get(t.activeTabId):void 0;return{version:1,tabs:r,activeTabId:s&&r.some(e=>e.id===s)?s:r[0]?.id??null,width:W9(typeof t.width==`number`?t.width:520),collapsed:t.collapsed===!0&&r.length>0}}catch{return B9()}}function r3e(e=u3e()){try{return n3e(e?.getItem(B4e))}catch{return B9()}}function i3e(e,t=u3e()){try{t?.setItem(B4e,t3e(e))}catch{}}function a3e(e){if(!K9(e)||typeof e.id!=`string`||!e.id||!o3e(e.target))return null;let t=l3e(e.createdAt)??Date.now();return{id:e.id,target:e.target,title:typeof e.title==`string`&&e.title.trim()?e.title:H9(e.target),createdAt:t,lastActivatedAt:l3e(e.lastActivatedAt)??t}}function o3e(e){return K9(e)?e.kind===`new-tab`?typeof e.instanceId==`string`&&!!e.instanceId:e.kind===`session-tool`?s3e(e.tool):e.kind===`route`&&K9(e.route)&&c3e(e.route):!1}function s3e(e){return e===`preview`||e===`raw-events`||e===`web-annotations`||e===`runtime-requests`||e===`session-inspector`}function c3e(e){return e.area===`vscode`||e.area===`agents`||e.area===`cron`||e.area===`loops`||e.area===`projects`||e.area===`workflows`||e.area===`context`||e.area===`settings`}function l3e(e){return typeof e==`number`&&Number.isFinite(e)?e:void 0}function K9(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function u3e(){try{return typeof localStorage>`u`?void 0:localStorage}catch{return}}function d3e(){return typeof crypto<`u`&&typeof crypto.randomUUID==`function`?`tab-${crypto.randomUUID()}`:`tab-${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`}function f3e(e,t,n,r){let i=e.filter(e=>e.id!==t),a=i.findIndex(e=>e.id===n);return a<0?Math.max(0,i.length):a+ +(r===`after`)}var p3e=[{id:`preview`,label:`Preview`,description:`Live session preview`,icon:vl,target:{kind:`session-tool`,tool:`preview`}},{id:`raw-events`,label:`Raw Events`,description:`Raw trace and event payloads`,icon:Rs,target:{kind:`session-tool`,tool:`raw-events`}},{id:`web-annotations`,label:`Web Annotations`,description:`Annotations attached to this session`,icon:Hc,target:{kind:`session-tool`,tool:`web-annotations`}},{id:`runtime-requests`,label:`Runtime Requests`,description:`Approvals and runtime input`,icon:yl,target:{kind:`session-tool`,tool:`runtime-requests`}},{id:`session-inspector`,label:`Session Inspector`,description:`Session, signal, and runtime metadata`,icon:Pc,target:{kind:`session-tool`,tool:`session-inspector`}}];function m3e(e){return[{id:`sessions`,label:`Sessions`,description:`Focus the fixed Rooms and Sessions navigation`,icon:Ac,sessionsAction:!0},{id:`projects`,label:`Projects`,description:`Project workspaces and project sessions`,icon:yc,target:{kind:`route`,route:{area:`projects`}}},{id:`vscode`,label:`VS Code`,description:`Embedded workspace editor`,icon:ac,target:{kind:`route`,route:{area:`vscode`}}},{id:`workflows`,label:`Workflows`,description:`Workflow definitions and drafts`,icon:Ol,target:{kind:`route`,route:{area:`workflows`}}},{id:`cron`,label:`Cron`,description:`Scheduled jobs`,icon:ic,target:{kind:`route`,route:{area:`cron`}}},{id:`loops`,label:`Loops`,description:`Goal and legacy Ralph loops`,icon:Cc,target:{kind:`route`,route:{area:`loops`}}},{id:`agents`,label:`Agent Designer`,description:`Agents, profiles, and capability selection`,icon:vl,target:{kind:`route`,route:{area:`agents`}}},{id:`context`,label:`Context`,description:`Context files, prompts, and MCP tools`,icon:Rs,target:{kind:`route`,route:{area:`context`}}},{id:`settings`,label:`Settings`,description:`Chat and runtime settings`,icon:ml,target:{kind:`route`,route:{area:`settings`}}},...p3e]}function h3e(e,t){let[n,r]=(0,U.useState)(()=>r3e()),i=(0,U.useMemo)(()=>JSON.stringify(e),[e]);return(0,U.useEffect)(()=>{t&&r(t=>e3e(t,e))},[t,i]),(0,U.useEffect)(()=>{t&&i3e(n)},[t,n]),{state:n,setState:r}}function g3e({state:e,vscodeEnabled:t,onStateChange:n,onActivate:r,onClose:i,onFocusSessions:a,renderPanel:o,hidden:s=!1,fullscreen:c=!1}){let l=(0,U.useRef)(null),u=(0,U.useRef)(null),d=(0,U.useRef)(null),f=(0,U.useRef)(new Map),p=(0,U.useRef)(null),[m,h]=(0,U.useState)(null),g=(0,U.useRef)(!1),_=G9(e),v=(0,U.useMemo)(()=>m3e(t),[t]);(0,U.useLayoutEffect)(()=>{_?.target.kind===`new-tab`&&u.current?.querySelector(`button[data-catalog-entry]`)?.focus()},[_?.id]),(0,U.useEffect)(()=>{e.collapsed||!_||f.current.get(_.id)?.scrollIntoView({block:`nearest`,inline:`nearest`})},[_?.id,e.collapsed]),(0,U.useLayoutEffect)(()=>{g.current&&(g.current=!1,e.activeTabId?f.current.get(e.activeTabId)?.focus():l.current?.focus())},[e.activeTabId,e.tabs.length]);let y=(0,U.useCallback)(async e=>{g.current=!0,await i(e)||(g.current=!1)},[i]),b=e=>{let t=[...u.current?.querySelectorAll(`button[data-catalog-entry]`)??[]],n=t.indexOf(document.activeElement),r=-1;e.key===`ArrowDown`&&(r=n<0?0:(n+1)%t.length),e.key===`ArrowUp`&&(r=n<0?t.length-1:(n-1+t.length)%t.length),e.key===`Home`&&(r=0),e.key===`End`&&(r=t.length-1),r>=0&&(e.preventDefault(),t[r]?.focus())},x=t=>{if(!(!_||_.target.kind!==`new-tab`)){if(t.sessionsAction){a(_);return}t.target&&n(U4e(e,_.id,t.target))}},S=t=>{let n=e.tabs[Math.max(0,Math.min(e.tabs.length-1,t))];n&&f.current.get(n.id)?.focus()},C=(t,i,a)=>{if(t.altKey&&t.shiftKey&&(t.key===`ArrowLeft`||t.key===`ArrowRight`)){t.preventDefault();let r=t.key===`ArrowLeft`?-1:1;n(q4e(e,i.id,r)),window.setTimeout(()=>f.current.get(i.id)?.focus(),0);return}if(t.key===`ArrowLeft`||t.key===`ArrowRight`||t.key===`Home`||t.key===`End`){t.preventDefault(),t.key===`Home`?S(0):t.key===`End`?S(e.tabs.length-1):S((a+(t.key===`ArrowLeft`?-1:1)+e.tabs.length)%e.tabs.length);return}if(t.key===`Delete`){t.preventDefault(),y(i);return}(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),r(i))},w=t=>{t.preventDefault();let r=t.clientX,i=e.width,a=t=>n(J4e(e,i+r-t.clientX)),o=()=>{window.removeEventListener(`pointermove`,a),window.removeEventListener(`pointerup`,o),document.body.style.removeProperty(`cursor`),document.body.style.removeProperty(`user-select`)};document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`,window.addEventListener(`pointermove`,a),window.addEventListener(`pointerup`,o)},T={"--pibo-desktop-tabs-width":`${e.width}px`,width:c?`100%`:e.collapsed?`44px`:`min(${e.width}px, calc(100vw - 740px))`};return(0,W.jsxs)(`aside`,{"data-pibo-debug":`desktop-tab-sidebar`,"data-pibo-state":c?`preview-fullscreen`:e.collapsed?`collapsed`:`open`,"data-pibo-preview-fullscreen":c?`true`:`false`,"aria-label":`Open workspace tabs`,"aria-hidden":s||void 0,hidden:s,className:`relative min-h-0 shrink-0 bg-[#101d22] ${c?`border-l-0`:`border-l border-slate-700`}`,style:T,children:[(0,W.jsx)(`div`,{role:`separator`,"aria-label":`Resize workspace tabs`,"aria-orientation":`vertical`,"aria-valuemin":360,"aria-valuemax":920,"aria-valuenow":e.width,tabIndex:e.collapsed||c?-1:0,onPointerDown:w,onKeyDown:t=>{(t.key===`ArrowLeft`||t.key===`ArrowRight`)&&(t.preventDefault(),n(J4e(e,e.width+(t.key===`ArrowLeft`?24:-24))))},className:`absolute inset-y-0 -left-1 z-20 w-2 cursor-col-resize outline-none hover:bg-[#11a4d4]/35 focus-visible:bg-[#11a4d4]/60 ${e.collapsed||c?`hidden`:``}`}),e.collapsed&&!c?(0,W.jsxs)(`div`,{className:`flex h-full flex-col items-center gap-2 border-l border-slate-800 bg-[#151f24] py-2`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:()=>n({...e,collapsed:!1}),className:`inline-flex h-8 w-8 items-center justify-center rounded-sm border border-slate-700 text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#11a4d4]`,title:`Reopen workspace tabs`,"aria-label":`Reopen workspace tabs`,children:(0,W.jsx)(Xc,{size:15})}),(0,W.jsxs)(`span`,{className:`mt-1 font-mono text-[10px] text-slate-500 [writing-mode:vertical-rl]`,children:[e.tabs.length,` tabs`]})]}):(0,W.jsxs)(`div`,{className:`grid h-full min-h-0 ${c?`grid-rows-[0_minmax(0,1fr)]`:`grid-rows-[40px_minmax(0,1fr)]`}`,children:[(0,W.jsxs)(`div`,{hidden:c,className:`relative flex min-w-0 items-stretch border-b border-slate-800 bg-[#151f24]`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:()=>d.current?.scrollBy({left:-220,behavior:`smooth`}),title:`Scroll tabs left`,"aria-label":`Scroll tabs left`,className:`w-7 shrink-0 border-r border-slate-800 text-slate-500 hover:text-[#11a4d4]`,children:(0,W.jsx)(Gs,{size:13,className:`mx-auto`})}),(0,W.jsx)(`div`,{ref:d,role:`tablist`,"aria-label":`Workspace tabs`,onDragLeave:e=>{e.currentTarget.contains(e.relatedTarget)||h(null)},className:`flex min-w-0 flex-1 overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:e.tabs.map((t,i)=>{let a=t.id===e.activeTabId,o=m?.overTabId===t.id&&m.position===`before`,s=m?.overTabId===t.id&&m.position===`after`;return(0,W.jsxs)(`div`,{className:`flex shrink-0 items-center`,children:[o?(0,W.jsx)(_3e,{index:m.toIndex}):null,(0,W.jsxs)(`div`,{draggable:!0,onDragStart:e=>{p.current=t.id,e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`text/plain`,t.id)},onDragOver:n=>{n.preventDefault(),n.dataTransfer.dropEffect=`move`;let r=p.current;if(!r||r===t.id)return;let i=n.currentTarget.getBoundingClientRect(),a=n.clientX>=i.left+i.width/2?`after`:`before`,o=f3e(e.tabs,r,t.id,a);h(e=>e?.draggedTabId===r&&e.overTabId===t.id&&e.position===a?e:{draggedTabId:r,overTabId:t.id,position:a,toIndex:o})},onDrop:t=>{t.preventDefault();let r=p.current;r&&m?.draggedTabId===r&&n(K4e(e,r,m.toIndex)),p.current=null,h(null)},onDragEnd:()=>{p.current=null,h(null)},className:`group flex h-10 min-w-[9.5rem] max-w-[13rem] items-center border-r border-slate-800 ${p.current===t.id?`opacity-60`:``} ${a?`bg-[#101d22] text-[#7ddfff]`:`bg-[#151f24] text-slate-400 hover:bg-slate-800/60`}`,children:[(0,W.jsx)(`button`,{ref:e=>{e?f.current.set(t.id,e):f.current.delete(t.id)},id:`desktop-tab-${t.id}`,type:`button`,role:`tab`,"aria-selected":a,"aria-controls":`desktop-tabpanel-${t.id}`,tabIndex:a?0:-1,onClick:()=>r(t),onKeyDown:e=>C(e,t,i),title:`${t.title}. Alt+Shift+Arrow reorders; Delete closes.`,className:`min-w-0 flex-1 truncate px-2 text-left text-[11px] font-semibold focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[#11a4d4]`,children:t.title}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void y(t),title:`Close ${t.title}`,"aria-label":`Close ${t.title}`,className:`mr-1 inline-flex h-6 w-6 shrink-0 items-center justify-center rounded-sm text-slate-500 opacity-70 hover:bg-slate-700 hover:text-slate-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#11a4d4]`,children:(0,W.jsx)(Al,{size:12})})]}),s?(0,W.jsx)(_3e,{index:m.toIndex}):null]},t.id)})}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>d.current?.scrollBy({left:220,behavior:`smooth`}),title:`Scroll tabs right`,"aria-label":`Scroll tabs right`,className:`w-7 shrink-0 border-l border-slate-800 text-slate-500 hover:text-[#11a4d4]`,children:(0,W.jsx)(Ks,{size:13,className:`mx-auto`})}),(0,W.jsx)(`button`,{ref:l,type:`button`,onClick:()=>n(H4e(e)),title:`New Tab`,"aria-label":`New Tab`,className:`w-9 shrink-0 border-l border-slate-800 text-slate-300 hover:bg-[#11a4d4]/10 hover:text-[#11a4d4] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[#11a4d4]`,children:(0,W.jsx)(tl,{size:15,className:`mx-auto`})}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>n({...e,collapsed:!0}),title:`Collapse workspace tabs`,"aria-label":`Collapse workspace tabs`,className:`w-9 shrink-0 border-l border-slate-800 text-slate-400 hover:text-[#11a4d4] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[#11a4d4]`,children:(0,W.jsx)(Yc,{size:15,className:`mx-auto`})})]}),(0,W.jsx)(`div`,{className:`relative min-h-0 overflow-hidden bg-[#101d22] ${c?`row-start-2`:``}`,children:e.tabs.length?e.tabs.map(t=>{let n=t.id===e.activeTabId;return(0,W.jsx)(`section`,{id:`desktop-tabpanel-${t.id}`,role:`tabpanel`,"aria-labelledby":`desktop-tab-${t.id}`,hidden:!n,className:`h-full min-h-0 overflow-hidden`,children:t.target.kind===`new-tab`?(0,W.jsx)(v3e,{ref:n?u:void 0,entries:v,onKeyDown:b,onChoose:x}):n||Y4e(t)?o(t,n):null},t.id)}):(0,W.jsx)(`div`,{className:`grid h-full place-items-center p-6 text-center`,children:(0,W.jsxs)(`div`,{children:[(0,W.jsx)(Ys,{size:22,className:`mx-auto text-slate-600`}),(0,W.jsx)(`div`,{className:`mt-3 text-xs font-bold uppercase tracking-wider text-slate-300`,children:`No workspace tabs`}),(0,W.jsx)(`p`,{className:`mt-2 text-xs text-slate-500`,children:`Use + to open a product area or a session tool.`})]})})})]})]})}function _3e({index:e}){return(0,W.jsx)(`span`,{"aria-hidden":`true`,"data-pibo-debug":`desktop-tab-drop-gap`,"data-pibo-insertion-index":e,className:`desktop-tab-drop-gap h-6 w-2 shrink-0 rounded-sm bg-[#11a4d4]/75 motion-reduce:animate-none`})}var v3e=function({ref:e,entries:t,onKeyDown:n,onChoose:r}){return(0,W.jsx)(`div`,{"data-pibo-debug":`desktop-new-tab`,className:`grid h-full min-h-0 place-items-center overflow-auto p-6`,children:(0,W.jsxs)(`div`,{ref:e,role:`navigation`,"aria-label":`New Tab module catalog`,onKeyDown:n,className:`grid w-full max-w-2xl grid-cols-2 gap-1 border border-slate-700 bg-[#1a262b] p-3 max-[1180px]:grid-cols-1`,children:[(0,W.jsxs)(`div`,{className:`col-span-full px-2 pb-2 pt-0.5`,children:[(0,W.jsx)(`h2`,{className:`text-[11px] font-bold uppercase tracking-[0.14em] text-slate-400`,children:`New Tab`}),(0,W.jsx)(`p`,{className:`mt-1 text-[10px] text-slate-500`,children:`Open a product area or session tool`})]}),t.map(e=>{let t=e.icon;return(0,W.jsxs)(`button`,{"data-catalog-entry":!0,type:`button`,onClick:()=>r(e),className:`flex min-w-0 items-start gap-2 rounded-sm border border-transparent px-2 py-2 text-left hover:border-slate-700 hover:bg-[#101d22] focus-visible:border-[#11a4d4] focus-visible:bg-[#101d22] focus-visible:outline-none`,children:[(0,W.jsx)(t,{size:15,className:`mt-0.5 shrink-0 text-[#11a4d4]`}),(0,W.jsxs)(`span`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-xs font-semibold text-slate-200`,children:e.label}),(0,W.jsx)(`span`,{className:`block text-[10px] leading-4 text-slate-500`,children:e.description})]})]},e.id)})]})})};function y3e(e){return e?.target.kind===`session-tool`?e.target.tool:null}function b3e(e,t){return U9(e,t)}function x3e(e,t){return W4e(e,t)}var q9=750,S3e=5e3,C3e=3e4,J9=120,Y9=60,w3e=new Set;function X9(e){return e.trim().replace(/\\/g,`/`).split(`/`).filter(Boolean).pop()??`download`}function Z9(e){if(!Number.isFinite(e)||e<=0)return`0 B`;let t=[`B`,`KB`,`MB`,`GB`,`TB`],n=e,r=0;for(;n>=1024&&r<t.length-1;)n/=1024,r+=1;let i=n>=10||r===0?0:1;return`${n.toFixed(i)} ${t[r]}`}function T3e(e){return e.status===`starting`?`Preparing download…`:e.status===`failed`?e.error??`Download failed`:e.totalBytes&&e.totalBytes>0?`${Math.min(100,Math.floor(e.receivedBytes/e.totalBytes*100))}% · ${Z9(e.receivedBytes)} of ${Z9(e.totalBytes)}`:e.receivedBytes>0?`${Z9(e.receivedBytes)} received`:`Waiting for bytes…`}function Q9(e){return e instanceof DOMException&&e.name===`AbortError`}function E3e(e){let t=Number(e.split(`:`,1)[0]);return Number.isFinite(t)?t:void 0}async function D3e(e,t){let n=KFe(t.piboSessionId,t.includeArchived,t.roomId);return await e.removeQueries({queryKey:n,exact:!0}),Nl(t.piboSessionId,t.includeArchived,t.roomId,!!t.markRead,{signal:t.signal})}async function O3e(e,t){return YFe(e,t,()=>Pl(t.piboSessionId,t.includeArchived,t.roomId,{signal:t.signal}))}function k3e({route:e}){let t=Ao(),n=On(),r=xq(),i=!r,a=h3e(e,i),o=G9(a.state),s=y3e(o),c=o?.target.kind===`route`?o.target.route:void 0,l=i?`sessions`:e.area,u=e.area===`sessions`?e.roomId:void 0,d=e.area===`projects`?e.projectId:void 0,f=e.area===`sessions`||e.area===`projects`||e.area===`context`?e.piboSessionId:void 0,p=e.area===`sessions`||!i&&e.area===`projects`?e.sessionViewId:void 0,m=e.area===`workflows`?e.draftId:void 0,h=e.area===`settings`?e.panel??`general`:`general`,[g,_]=(0,U.useState)(null),v=(0,U.useRef)(null),y=(0,U.useRef)(null),[b,x]=(0,U.useState)(null),S=(0,U.useCallback)(e=>{if(typeof e==`function`){x(t=>{let n=e(t);return v.current=n,n});return}v.current=e,x(e)},[]),[C,w]=(0,U.useState)(null),[T,E]=(0,U.useState)(null),[D,O]=(0,U.useState)(null),[k,A]=(0,U.useState)(null),j=(0,U.useRef)(new Set),[M,N]=(0,U.useState)(yNe),[P,F]=(0,U.useState)(bNe),[I,L]=(0,U.useState)(xNe),[R,z]=(0,U.useState)(SNe),[B,ee]=(0,U.useState)(CNe),[te,ne]=(0,U.useState)(TNe),[re,V]=(0,U.useState)(``),[ie,ae]=(0,U.useState)(null),[oe,se]=(0,U.useState)(()=>p??kY()),[ce,le]=(0,U.useState)(!1),[ue,de]=(0,U.useState)(!1),[fe,pe]=(0,U.useState)(``),[me,he]=(0,U.useState)(0),[ge,_e]=(0,U.useState)(!1),ve=(0,U.useRef)(!1),ye=(0,U.useRef)(null),be=(0,U.useRef)(!1),[xe,Se]=(0,U.useState)(!1),[Ce,we]=(0,U.useState)(!1),[H,Te]=(0,U.useState)(J9),[Ee,De]=(0,U.useState)(Y9),[Oe,ke]=(0,U.useState)(null),[Ae,je]=(0,U.useState)(null),[Me,Ne]=(0,U.useState)(null),[Pe,Fe]=(0,U.useState)(`build-context`),[Ie,Le]=(0,U.useState)(null),[Re,ze]=(0,U.useState)(null),[Be,Ve]=(0,U.useState)(!1),[He,Ue]=(0,U.useState)(!1),[We,Ge]=(0,U.useState)({}),Ke=(0,U.useMemo)(()=>Object.fromEntries([`preview`,`raw-events`,`web-annotations`,`runtime-requests`,`session-inspector`].map(e=>[e,t=>{Ge(n=>n[e]===t?n:{...n,[e]:t})}])),[]);(0,U.useEffect)(()=>{(!i||s!==`preview`)&&de(!1)},[s,i]);let qe=(0,U.useRef)(null),Je=_je({isMobileViewport:r,isOpen:He,onClose:(0,U.useCallback)(()=>Ue(!1),[]),triggerRef:qe}),[Ye,Xe]=(0,U.useState)(!1),[Ze,Qe]=(0,U.useState)(null),[$e,et]=(0,U.useState)(null),tt=(0,U.useRef)(null),nt=(0,U.useRef)(null),[rt,it]=(0,U.useState)(()=>Date.now()),at=(0,U.useRef)(B),ot=(0,U.useRef)(null),st=(0,U.useRef)(null),ct=(0,U.useRef)(0),lt=(0,U.useRef)(new Map),ut=(0,U.useRef)(null),dt=(0,U.useRef)(0),ft=C??g?.selectedRoomId??null,pt=ft&&g?$q(g.rooms,ft)??g.room:void 0,mt=$je(g?.rooms??[],ft,g?.room),ht=pt?nJ(pt):!1,gt=!!(Ae&&Ae===C),_t=qQ(b),vt=(0,U.useCallback)(e=>{let t=nt.current,n=t?i4e(e,t):e,r=tt.current;return e.selectedPiboSessionId&&N9(r,e.selectedPiboSessionId)?r4e(n,r):n},[]);(0,U.useEffect)(()=>{at.current=B},[B]),(0,U.useEffect)(()=>{st.current=g},[g]),(0,U.useEffect)(()=>{Te(J9),De(Y9)},[C,B]),(0,U.useEffect)(()=>{it(Date.now())},[g]);let yt=(0,U.useCallback)(e=>P9(nt.current,e)?(nt.current=e,_(t=>t&&i4e(t,e)),!0):!1,[]),bt=(0,U.useCallback)(e=>{let t=d4e(nt.current,e);return!t.needsRefresh&&(nt.current=t.snapshot,_(t=>t&&u4e(t,e)),!0)},[]);(0,U.useEffect)(()=>{if(l===`sessions`&&_t)return;let e=!0,t,n=new AbortController,r=i=>{e&&(t&&clearTimeout(t),t=setTimeout(()=>{t=void 0,Mu({signal:n.signal}).then(t=>{e&&!n.signal.aborted&&yt(t)}).catch(()=>{n.signal.aborted||r(q9)})},i))},i={onSnapshot:n=>{!e||!P9(nt.current,n)||(t&&=(clearTimeout(t),void 0),yt(n))},onPatch:t=>{e&&!bt(t)&&r(0)},onError:()=>r(q9)},a=()=>void 0,o=()=>{e&&(a(),a=Nu(i))},s=()=>{document.visibilityState===`visible`&&o()};return a=Nu(i),window.addEventListener(`pageshow`,o),document.addEventListener(`visibilitychange`,s),()=>{e=!1,n.abort(),t&&clearTimeout(t),window.removeEventListener(`pageshow`,o),document.removeEventListener(`visibilitychange`,s),a()}},[l,bt,yt,_t]),(0,U.useEffect)(()=>{if(l!==`sessions`||!_t){tt.current=null,et(null);return}let e=a4e(tt.current,_t);tt.current=e,et(e);let t=!0,n,r,i=new AbortController,a=e=>{!t||i.signal.aborted||!s4e(tt.current,e,_t)||(tt.current=e,et(e),_(t=>t&&r4e(t,e)))},o=e=>{t&&(n&&clearTimeout(n),n=setTimeout(()=>{n=void 0,ju(_t,{signal:i.signal}).then(a).catch(()=>{i.signal.aborted||o(q9)})},e))},s=e=>{t&&(r&&clearTimeout(r),r=setTimeout(()=>{r=void 0,Mu({signal:i.signal}).then(e=>{t&&!i.signal.aborted&&yt(e)}).catch(()=>{i.signal.aborted||s(q9)})},e))},c={onSnapshot:e=>{!t||!s4e(tt.current,e,_t)||(n&&=(clearTimeout(n),void 0),a(e))},onPatch:e=>{if(!t)return;let n=c4e(tt.current,e,_t);if(n.needsRefresh){o(0);return}tt.current=n.snapshot,et(n.snapshot),_(t=>t&&l4e(t,e))},onStatusSnapshot:e=>{!t||!P9(nt.current,e)||(r&&=(clearTimeout(r),void 0),yt(e))},onStatusPatch:e=>{t&&!bt(e)&&s(0)},onError:()=>{o(q9),s(q9)}},u=()=>void 0,d=()=>{t&&(u(),u=Pu(_t,c),o(0))},f=()=>{document.visibilityState===`visible`&&d()},p=()=>{let e=st.current?NQ(st.current.sessions,_t):void 0;return o4e(tt.current,_t,e?.status)};u=Pu(_t,c),window.addEventListener(`pageshow`,d),document.addEventListener(`visibilitychange`,f);let m=window.setInterval(()=>{document.visibilityState===`visible`&&p()&&o(0)},S3e);return o(0),()=>{t=!1,i.abort(),n&&clearTimeout(n),r&&clearTimeout(r),window.removeEventListener(`pageshow`,d),document.removeEventListener(`visibilitychange`,f),window.clearInterval(m),u()}},[l,bt,yt,_t]),(0,U.useEffect)(()=>{let e=g?Zje(g.sessions,rt):void 0;if(e===void 0)return;let t=setTimeout(()=>it(Date.now()),Math.max(50,e));return()=>clearTimeout(t)},[g,rt]),(0,U.useEffect)(()=>{let e=async()=>{try{let e=await fetch(`/health`,{signal:AbortSignal.timeout(3e3)});if(e.ok){let t=await e.json();Qe(t.mode===`fallback`?`fallback`:`main`)}else Qe(null)}catch{Qe(null)}};e();let t=setInterval(e,5e3);return()=>clearInterval(t)},[]),(0,U.useEffect)(()=>{if(l!==`sessions`&&l!==`projects`)return;let e=p??kY();se(t=>t===e?t:e)},[l,p]),(0,U.useEffect)(()=>{vNe(oe)},[oe]),(0,U.useEffect)(()=>{le(!1)},[l]),(0,U.useEffect)(()=>{l===`sessions`&&oe!==`terminal`&&le(!1)},[l,oe]);let xt=(0,U.useCallback)(()=>{Ue(!1),Xe(!1),le(!0)},[]),St=(0,U.useCallback)((e,n=!1,r=oe,i={})=>{i.closeMobileSidebar!==!1&&Je(),gu(t,e,n,r,i.preserveHash===!0,i.preserveSearch===!0)},[Je,t,oe]),Ct=(0,U.useCallback)(e=>{ye.current=e},[]),wt=(0,U.useCallback)(async({current:e,next:t})=>{if(e.pathname===t.pathname)return!1;if(be.current)return be.current=!1,!1;let n=ye.current;if(!n)return!1;try{return await n(),!1}catch(e){return E(`Agent Designer changes were not saved: ${e instanceof Error?e.message:String(e)}`),!0}},[]);vs({disabled:i?o?.target.kind!==`route`||o.target.route.area!==`agents`:l!==`agents`,enableBeforeUnload:!1,shouldBlockFn:wt});let Tt=(0,U.useCallback)((e,t,n=!1,r={})=>{if(!t){St({area:`sessions`,...e?{roomId:e}:{}},n,oe,r);return}St({area:`sessions`,...e?{roomId:e}:{},piboSessionId:t},n,oe,r)},[St,oe]),Et=(0,U.useCallback)((e,t,n=!1,r={})=>{if(!t){St({area:`projects`,...e?{projectId:e}:{}},n,oe,r);return}St({area:`projects`,...e?{projectId:e}:{},piboSessionId:t},n,oe,r)},[St,oe]),Dt=(0,U.useCallback)(e=>{Fe(`build-context`),St({area:`context`,piboSessionId:e})},[St]),Ot=(0,U.useCallback)(e=>{Le(e),Fe(`context-files`),St({area:`context`})},[St]),kt=(0,U.useCallback)(e=>{ze(e),Fe(`mcp-tools`),St({area:`context`})},[St]),At=(0,U.useCallback)(e=>{_(t=>t&&D4e(t,e))},[]),jt=(0,U.useCallback)(e=>{_(t=>t&&O4e(t,e)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},t=>t&&O4e(t,e))},[n]),Mt=(0,U.useCallback)(e=>{_(t=>t&&k4e(t,e.id)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},t=>t&&k4e(t,e.id))},[n]),Nt=(0,U.useCallback)(e=>{_(t=>t&&A4e(t,e)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},t=>t&&A4e(t,e))},[n]),Pt=(0,U.useCallback)(e=>{_(t=>t&&j4e(t,e)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},t=>t&&j4e(t,e))},[n]),Ft=(0,U.useCallback)(e=>{let t=JSON.stringify([e.piboSessionId??``,e.includeArchived===!0?`archived`:`active`,e.roomId??``,e.force===!0?`force`:`cached`,iQ(n)]);if(e.signal)return O3e(n,e);let r=lt.current.get(t);if(r)return r;let i=O3e(n,e).finally(()=>{lt.current.get(t)===i&&lt.current.delete(t)});return lt.current.set(t,i),i},[n]),It=(0,U.useCallback)(async(e,t=at.current,r,i={})=>{let a=st.current;if(a&&i.selectSession!==!1&&!i.force){e&&Gl(e).catch(()=>void 0);let n=ct.current+1;ct.current=n;let o=v4e(a,await Ft({piboSessionId:e,includeArchived:t,roomId:r,signal:i.signal}),{readSessionId:e});if(n!==ct.current)return o;let s=vt(o);return _(s),S(s.selectedPiboSessionId),w(s.selectedRoomId),s}let o=ct.current+1;ct.current=o;let s=await D3e(n,{piboSessionId:e,includeArchived:t,roomId:r,markRead:i.selectSession!==!1,force:i.force,signal:i.signal});if(o!==ct.current)return s;let c=vt(s);return _(c),i.selectSession!==!1&&S(c.selectedPiboSessionId),w(c.selectedRoomId),c},[vt,n]),Lt=(0,U.useCallback)(async(e,t=at.current,n,r={})=>{let i=st.current;if(!i)return It(e,t,n,{force:r.force,signal:r.signal});let a=ct.current+1;ct.current=a;let o=v4e(i,await Ft({piboSessionId:e,includeArchived:t,roomId:n,force:r.force,signal:r.signal}),{readSessionId:r.readSessionId});if(a!==ct.current)return o;let s=vt(o);return _(s),S(s.selectedPiboSessionId),w(s.selectedRoomId),s},[Ft,It,vt]);(0,U.useEffect)(()=>{if(l!==`sessions`)return;let e=!1,t=!1,n=()=>{e||t||document.hidden||!st.current||b&&!_t||(t=!0,Lt(_t??void 0,at.current,ft??void 0,{force:!0}).catch(()=>void 0).finally(()=>{t=!1}))},r=window.setInterval(n,C3e),i=()=>{document.hidden||n()};return window.addEventListener(`focus`,n),document.addEventListener(`visibilitychange`,i),()=>{e=!0,window.clearInterval(r),window.removeEventListener(`focus`,n),document.removeEventListener(`visibilitychange`,i)}},[ft,l,Lt,_t,b]),(0,U.useEffect)(()=>{let{requestedRoomId:t,requestedPiboSessionId:n}=fWe(e,wY()),r=(t,n=!0)=>{let r=mWe(e,t);r&&Tt(r.selectedRoomId,r.selectedPiboSessionId,n,{preserveHash:!0,preserveSearch:!0})};if(pWe({bootstrap:g,creatingSession:ve.current,route:e}))return;let i=g?Lt:It,a=()=>{O(null),E(null)},o=e=>{st.current||O(vWe(e)),E(JQ(e))};i(n,at.current,t).then(e=>{r(e),a()}).catch(s=>{if(e.area===`sessions`&&u&&!f&&n){TY(u),i(void 0,at.current,u).then(e=>{r(e),a()}).catch(o);return}if(hWe(e)||!n&&!t){o(s);return}ENe(),i().then(e=>{r(e),a()}).catch(o)})},[g,It,Lt,Tt,e.area,f,u]),(0,U.useEffect)(()=>{!C&&!b||gNe({roomId:C??void 0,piboSessionId:b??void 0})},[b,C]),(0,U.useEffect)(()=>{pe(b?EY(b):``)},[b]);let Rt=(0,U.useCallback)(e=>{pe(t=>{let n=typeof e==`function`?e(t):e;return b&&DY(b,n),n})},[b]),zt=(0,U.useMemo)(()=>ZUe(),[]),Bt=(0,U.useMemo)(()=>z3(oe),[oe]),Vt=(0,U.useMemo)(()=>z3(`terminal`),[]);(0,U.useEffect)(()=>{if(!g?.agents.length)return;let e=g.selectedRoomId;if(Ae||!e||e.startsWith(`optimistic-room-`))return;let t=jQ(g),n=FY(e),r=n?``:FY(),i=j3e(g.agents,n||r||t)?.name??j3e(g.agents,t)?.name??g.agents[0].name;V(i),ae(e),n!==i&&LY(i,e),r&&LY(``)},[g,Ae]);let Ht=(0,U.useCallback)(e=>{V(e);let t=C??st.current?.selectedRoomId;t&&(ae(t),LY(e,t))},[C]),Ut=(0,U.useCallback)(async e=>{let t=$Oe(e),r=!1;try{await Promise.all([n.invalidateQueries({queryKey:oQ(e),refetchType:`none`}),n.invalidateQueries({queryKey:sQ(e),refetchType:`none`})]),await Promise.all([n.refetchQueries({queryKey:oQ(e),type:`active`}),n.refetchQueries({queryKey:sQ(e),type:`active`})])}catch(e){throw r=!0,e}finally{eke(e,t,r)}},[n]),Wt=(0,U.useCallback)(()=>b?Ut(b):Promise.resolve(),[Ut,b]),Gt=(0,U.useCallback)(()=>Lt(b??void 0,at.current,C??void 0,{force:!0}),[Lt,b,C]),Kt=(0,U.useCallback)(async()=>{E(null);let e=b??void 0;await It(e,at.current,C??void 0,{force:!0,selectSession:!1}),e&&await Ut(e)},[It,Ut,b,C]),qt=(0,U.useCallback)(e=>{_(t=>t&&e(t)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},t=>t&&e(t))},[n]),Jt=(0,U.useCallback)((e,t)=>{_(n=>n&&V3(n,e,t)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},n=>n&&V3(n,e,t))},[n]),Yt=(0,U.useCallback)(async()=>{ct.current+=1,lt.current.clear(),await Promise.all([n.cancelQueries({queryKey:[`chat`,`bootstrap`]}),JFe(n)])},[n]),Xt=g?.latestRoomStreamId;(0,U.useEffect)(()=>{let e=z4e({area:l,activeRoomId:ft,bootstrapSelectedRoomId:g?.selectedRoomId,latestRoomStreamId:Xt});if(!e||!ft||typeof Xt!=`number`)return;let t,n,r=()=>{b&&!_t||(n&&clearTimeout(n),n=setTimeout(()=>{n=void 0,Lt(_t??void 0,at.current,ft,{force:!0}).catch(e=>{Q9(e)||E(JQ(e))})},900))},i=e=>{let t=qu(e);if(!t||t.type===`ready`)return;let n=E3e(e.lastEventId),i=n!==void 0&&n<=Xt,a=t.piboSessionId,o=nd(t);if(a&&o){let e=nt.current?.sessions[a]?.status??I9(tt.current?.sessions[a])??o,t=new Date().toISOString();qt(n=>J3(n,a,n=>({...n,status:e,lastActivityAt:t})))}!i&&Xu(t)&&r()},a=()=>{n&&clearTimeout(n),n=void 0,t?.close(),t=void 0},o=()=>{a(),t=new EventSource(e),t.addEventListener(`pibo`,i)};return o(),window.addEventListener(`pagehide`,a),window.addEventListener(`pageshow`,o),()=>{window.removeEventListener(`pagehide`,a),window.removeEventListener(`pageshow`,o),a()}},[ft,l,g?.selectedRoomId,Xt,Lt,_t,b,qt]);let Zt=(0,U.useCallback)((e,t)=>{if(e){_(U3(e.localBootstrap,t)??null);for(let[r,i]of e.queryData)n.setQueryData(r,U3(i,t)??void 0)}},[n]),{deleteRoomTarget:Qt,deleteRoomConfirmName:$t,deletingRoom:en,setDeleteRoomConfirmName:tn,requestRoomDelete:nn,cancelRoomDelete:rn,permanentlyDeleteRoom:an,deleteSessionTarget:on,deleteSessionConfirmText:sn,deletingSession:cn,setDeleteSessionConfirmText:ln,requestSessionDelete:un,cancelSessionDelete:dn,permanentlyDeleteSession:fn}=R4e({queryClient:n,bootstrap:g,selectedPiboSessionId:b,selectedRoomId:C,showArchivedRef:at,isSessionsArea:l===`sessions`,loadBootstrap:It,navigateToSelectedSession:Tt,updateBootstrapCache:qt,restoreBootstrapSnapshot:Zt,setSelectedPiboSessionId:S,setSelectedRoomId:w,setError:E}),pn=Wn({mutationFn:({profile:e,roomId:t})=>Ul(e||void 0,t),onMutate:async({profile:e,roomId:t})=>{y.current=null,await Yt();let n=t??g?.selectedRoomId??``,r=v.current,i=`optimistic-session-${FQ()}`;return st.current?.selectedRoomId===n&&S(i),Jt(n,t=>({...W3(t,oWe(i,e||jQ(t))),selectedPiboSessionId:i})),{tempId:i,previousSelectedPiboSessionId:r,originRoomId:n}},onError:(e,t,n)=>{let r=H3({status:`failure`,currentSelectedPiboSessionId:v.current,tempId:n?.tempId,previousSelectedPiboSessionId:n?.previousSelectedPiboSessionId});y.current=r,n?.originRoomId&&n.tempId&&Jt(n.originRoomId,e=>eWe(e,n.tempId,n.previousSelectedPiboSessionId??null)),S(r.selectedPiboSessionId)},onSuccess:(e,t,n)=>{let r=H3({status:`success`,currentSelectedPiboSessionId:v.current,tempId:n?.tempId,previousSelectedPiboSessionId:n?.previousSelectedPiboSessionId,createdPiboSessionId:e.session.id});y.current=r,n?.originRoomId&&Jt(n.originRoomId,t=>$Ue(t,n.tempId,e6(e.session))),S(r.selectedPiboSessionId)}}),mn=Wn({mutationFn:({piboSessionId:e,title:t})=>Xl(e,{title:t}),onMutate:async({piboSessionId:e,title:t})=>{await Yt();let r=B3(n,g);return qt(n=>J3(n,e,e=>({...e,title:t||`Untitled Session`}))),{snapshot:r}},onError:(e,t,n)=>Zt(n?.snapshot),onSuccess:({session:e})=>qt(t=>q3(t,e))}),hn=Wn({mutationFn:({piboSessionId:e,archived:t})=>Xl(e,{archived:t}),onMutate:async({piboSessionId:e,archived:t})=>{await Yt();let r=B3(n,g);return qt(n=>J3(n,e,e=>({...e,archived:t,unreadCount:t?0:e.unreadCount}))),{snapshot:r}},onError:(e,t,n)=>Zt(n?.snapshot),onSuccess:({session:e})=>qt(t=>q3(t,e))}),gn=Wn({mutationFn:({piboSessionId:e,text:t,clientTxnId:n,roomId:r,webAnnotationIds:i,fileAttachmentPaths:a,delivery:o})=>Ql(e,t,n,r,i,a,o),onMutate:async({piboSessionId:e})=>{await n.cancelQueries({queryKey:sQ(e)}),qt(t=>J3(t,e,e=>({...e,status:`running`,lastActivityAt:new Date().toISOString()})))},onError:(e,t)=>{qt(e=>J3(e,t.piboSessionId,e=>({...e,status:`error`})))}}),_n=(0,U.useCallback)(async e=>{if(!(!b||!g||e===jQ(g)))try{await Xl(b,{profile:e});let t=await It(b,at.current,C??void 0);l===`sessions`&&Tt(t.selectedRoomId,t.selectedPiboSessionId),await Ut(b),E(null)}catch(e){E(e instanceof Error?e.message:String(e))}},[l,g,It,Tt,Ut,b,C]),vn=(0,U.useMemo)(()=>uWe(g?.capabilities.actions??[]),[g]),yn=(0,U.useMemo)(()=>dWe(g,b),[g,b]),bn=(0,U.useCallback)(async e=>{let t=C??g?.selectedRoomId;(0,jl.flushSync)(()=>{S(e),ke(e),Je()}),qt(n=>y4e(n,e,t??n.selectedRoomId)),Tt(t,e,!1,{closeMobileSidebar:!1}),Gl(e).catch(()=>void 0),window.setTimeout(()=>{ke(t=>t===e?null:t)},50),window.setTimeout(()=>{st.current?.selectedPiboSessionId===e&&Lt(e,at.current,t,{readSessionId:e}).then(t=>{st.current?.selectedPiboSessionId===e&&Tt(t.selectedRoomId,t.selectedPiboSessionId,!0,{closeMobileSidebar:!1})}).catch(t=>{!Q9(t)&&st.current?.selectedPiboSessionId===e&&E(JQ(t))})},750)},[g?.selectedRoomId,Je,Lt,Tt,C,qt]),xn=(0,U.useCallback)(async(e,t={})=>{let n={...t,closeMobileSidebar:!1},r=wY().sessionsByRoom?.[e],i=dt.current+1;dt.current=i,ut.current?.abort();let a=new AbortController;ut.current=a,(0,jl.flushSync)(()=>{w(e),S(r??null),ae(null),je(e),Je()});try{let t=await Lt(r,at.current,e,{signal:a.signal});if(dt.current!==i||a.signal.aborted)return;Tt(t.selectedRoomId,t.selectedPiboSessionId,!1,n)}catch(t){if(Q9(t))return;if(!r)throw t;TY(e),S(null);let o=await Lt(void 0,at.current,e,{signal:a.signal});if(dt.current!==i||a.signal.aborted)return;Tt(o.selectedRoomId,o.selectedPiboSessionId,!1,n)}finally{dt.current===i&&(ut.current===a&&(ut.current=null),je(t=>t===e?null:t))}},[Je,Lt,Tt]),Sn=(0,U.useCallback)(()=>{let e=!te;if(ne(e),PY(e),e||!g)return;let t=eMe(g.rooms,ft);t&&xn(t,{closeMobileSidebar:!1}).catch(e=>{E(e instanceof Error?e.message:String(e))})},[ft,g,xn,te]),Cn=async(e=re)=>{if(ge||ht)return;let t=C??g?.selectedRoomId??``;ve.current=!0,_e(!0);try{let n=await pn.mutateAsync({profile:e,roomId:t||void 0}),r=y.current;if(r?.autoRenameCreatedSession&&Ne(n.session.id),r?.navigateToCreatedSession){Tt(t||void 0,n.session.id,!1,{closeMobileSidebar:!1});let e=await It(n.session.id,at.current,t||void 0,{force:!0});Tt(e.selectedRoomId,e.selectedPiboSessionId,!1,{closeMobileSidebar:!1})}E(null)}catch(e){E(e instanceof Error?e.message:String(e))}finally{y.current=null,ve.current=!1,_e(!1)}},wn=async()=>{let e=!B;if(ee(e),wNe(e),!e){we(!1),E(null);return}we(!0);try{let e=await Lt(b??void 0,!0,C??void 0);l===`sessions`&&Tt(e.selectedRoomId,e.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){E(e instanceof Error?e.message:String(e))}finally{we(!1)}},Tn=async(e,t)=>{try{await mn.mutateAsync({piboSessionId:e,title:t});let n=await It(b??void 0,at.current,C??void 0,{force:!0});l===`sessions`&&await Ut(n.selectedPiboSessionId),l===`sessions`&&Tt(n.selectedRoomId,n.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){E(e instanceof Error?e.message:String(e))}},En=async(e,t)=>{try{await hn.mutateAsync({piboSessionId:e,archived:t});let n=await It(t&&!B&&b===e?void 0:b??void 0,at.current,C??void 0,{force:!0});l===`sessions`&&Tt(n.selectedRoomId,n.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){E(e instanceof Error?e.message:String(e))}},Dn=async()=>{if(Be)return;Ve(!0),await n.cancelQueries({queryKey:[`chat`,`bootstrap`]});let e=B3(n,g),t=`optimistic-room-${FQ()}`,r=iWe(t,`New Chat`);w(t),S(null),ae(null),je(t),qt(e=>tWe(e,r));try{let e=await ql({name:`New Chat`});TY(t),IY(t),qt(n=>nWe(n,t,e.room)),await xn(e.room.id,{closeMobileSidebar:!1}),E(null)}catch(n){TY(t),IY(t),Zt(e),w(C),S(b),E(n instanceof Error?n.message:String(n))}finally{je(e=>e===t?null:e),Ve(!1)}},kn=async(e,t)=>{await n.cancelQueries({queryKey:[`chat`,`bootstrap`]});let r=B3(n,g);qt(n=>Y3(n,e,e=>({...e,...t.name===void 0?{}:{name:t.name},...t.topic===void 0?{}:{topic:t.topic??void 0},...t.workspace===void 0?{}:{workspace:t.workspace??void 0},updatedAt:new Date().toISOString()})));try{let{room:n}=await Jl(e,t);qt(t=>Y3(t,e,()=>n));let r=await It(b??void 0,at.current,e,{force:!0});l===`sessions`&&Tt(r.selectedRoomId,r.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){Zt(r),E(e instanceof Error?e.message:String(e))}},An=async e=>{try{await Kl(e);let t=await It(b??void 0,at.current,C??void 0,{force:!0,selectSession:!1});l===`sessions`&&Tt(t.selectedRoomId,t.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){E(e instanceof Error?e.message:String(e))}},jn=async(e,t)=>{await n.cancelQueries({queryKey:[`chat`,`bootstrap`]});let r=B3(n,g);t&&(ne(!0),PY(!0)),qt(n=>Y3(n,e,e=>aWe(e,t)));try{let{room:n}=await Jl(e,{archived:t});qt(t=>Y3(t,e,()=>n));let r=await It(b??void 0,at.current,C??void 0,{force:!0});l===`sessions`&&Tt(r.selectedRoomId,r.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){Zt(r),E(e instanceof Error?e.message:String(e))}},Mn=(0,U.useCallback)(async e=>{if(!b||ht)return!1;let t=e.trim().split(/\s+/)[0],n=vn.find(e=>e.slash===t);if(!n)return!1;if(n.action===`thinking-show`){let e=!M;return N(e),AY(e),!0}if(n.action===`download`){let n=sWe(e.slice(t.length));if(!n)return E(`Usage: /download <path>`),!0;let r=`${b}:${n}`;if(j.current.has(r))return A(e=>e?.key===r?{...e,duplicateAttempted:!0}:{key:r,path:n,filename:X9(n),receivedBytes:0,status:`running`,duplicateAttempted:!0}),!0;j.current.add(r),A({key:r,path:n,filename:X9(n),receivedBytes:0,status:`starting`});try{let e=await Su(n,{piboSessionId:b,roomId:C??void 0,onStart:e=>A(t=>({...e,key:r,status:`running`,duplicateAttempted:t?.key===r&&t.duplicateAttempted})),onProgress:e=>A(t=>({...e,key:r,status:`running`,duplicateAttempted:t?.key===r&&t.duplicateAttempted}))});A(t=>({...e,key:r,status:`completed`,duplicateAttempted:t?.key===r&&t.duplicateAttempted})),E(null)}catch(e){let t=e instanceof Error?e.message:String(e);A(e=>({key:r,path:n,filename:e?.key===r?e.filename:X9(n),receivedBytes:e?.key===r?e.receivedBytes:0,totalBytes:e?.key===r?e.totalBytes:void 0,status:`failed`,error:t})),E(t)}finally{j.current.delete(r)}return!0}let r=r6(n.action,e.slice(t.length).trim()),i=lWe(await eu(b,n.action,r));if((n.action===`session.clone`||n.action===`session.fork`)&&i)await bn(i);else{let e=await It(b,at.current,C??void 0);l===`sessions`&&Tt(e.selectedRoomId,e.selectedPiboSessionId),await Ut(b)}return!0},[l,It,Tt,Ut,bn,b,ht,C,M,vn]),Nn=(0,U.useCallback)(async e=>{if(!b||ht)return;let t=cWe(await eu(b,`session.fork`,{entryId:e}));if(t?.result.cancelled)return;if(!t)throw Error(`Unexpected fork action response`);let n=typeof t.result.selectedText==`string`?t.result.selectedText:void 0;n!==void 0&&t.result.piboSessionId&&DY(t.result.piboSessionId,n),t.result.piboSessionId&&await bn(t.result.piboSessionId),n!==void 0&&(pe(n),he(e=>e+1))},[bn,b,ht]),Pn=(0,U.useCallback)(e=>void bn(e),[bn]),Fn=(0,U.useCallback)(e=>{if(se(e),l===`projects`){St({area:`projects`,...d?{projectId:d}:{},...f?{piboSessionId:f}:{}},!1,e);return}l===`sessions`&&St({area:`sessions`,...C?{roomId:C}:{},...b?{piboSessionId:b}:{}},!1,e)},[l,St,f,d,b,C]),In=(0,U.useMemo)(()=>g?Zq(g.sessions,B):{active:[],archived:[]},[g?.sessions,B]),Ln=(0,U.useMemo)(()=>Qje(In.active,H,b),[In.active,b,H]),Rn=(0,U.useMemo)(()=>B?In.archived.slice(0,Ee):[],[In.archived,B,Ee]),zn=In.active.length>Ln.length,Bn=B&&In.archived.length>Rn.length,Vn=(0,U.useMemo)(()=>b?new Set(PQ(g?.sessions??[],b).map(e=>e.piboSessionId)):w3e,[g?.sessions,b]),Hn=(0,U.useCallback)(async e=>{if(!ft)return;let t=(e?Rn:Ln).at(-1)?.piboSessionId;e?we(!0):Se(!0);try{let r=e?Y9:J9,i=await n.fetchQuery({queryKey:ZFe(ft,e,t,r),queryFn:()=>Hl({roomId:ft,piboSessionId:b??void 0,archived:e,cursor:t,limit:r}),staleTime:3e4,gcTime:18e5});_(e=>e&&vt({...e,sessions:E4e(e.sessions,i.sessions)})),e?De(e=>e+r):Te(e=>e+r)}finally{e?we(!1):Se(!1)}},[ft,vt,n,b,Ln,Rn]);if(D&&!g)return D.kind===`authentication-required`?(0,W.jsx)($2e,{message:D.message}):(0,W.jsx)(e4e,{message:D.message,onRetry:()=>window.location.reload()});if(!g)return(0,W.jsx)(`div`,{className:`min-h-screen bg-[#101d22] text-slate-300 grid place-items-center`,children:`Loading Pibo Chat...`});let Un=b?NQ(g.sessions,b):void 0,Gn=b?$e?.sessions[b]:void 0,Kn=$e?.rootPiboSessionId?$e.sessions[$e.rootPiboSessionId]:void 0,qn=MQ(g,Un??{profile:jQ(g),parentId:g.session?.parentId}),Jn=tMe(g.rooms),Yn=[...new Set([...g.agents.map(e=>e.name),...g.customAgents.map(e=>e.profileName)])],Xn=AIe(g),Zn=ce&&(l===`sessions`||l===`projects`)&&(l===`projects`||oe===`terminal`),Qn=i&&ue&&s===`preview`,$n=Zn||Qn,er=Zn?`h-full overflow-hidden grid grid-cols-[minmax(0,1fr)]`:l===`vscode`||l===`workflows`||l===`cron`||l===`loops`?`h-full overflow-hidden`:`grid ${(l===`sessions`||l===`projects`)&&I?`grid-cols-[300px_minmax(0,1fr)_320px] max-[980px]:grid-cols-1`:`grid-cols-[300px_minmax(0,1fr)] max-[980px]:grid-cols-1`}`,tr=e=>{if(Xe(!1),e===`sessions`){Tt(C??g.selectedRoomId,b??g.selectedPiboSessionId);return}if(e===`projects`){St({area:`projects`});return}St({area:e})},nr={area:`sessions`,...C??g.selectedRoomId?{roomId:C??g.selectedRoomId}:{},...b??g.selectedPiboSessionId?{piboSessionId:b??g.selectedPiboSessionId}:{}},rr=async(e,t={})=>{let n=G9(a.state),r=t.saveClosingTab?.target.kind===`route`&&t.saveClosingTab.target.route.area===`agents`||n?.target.kind===`route`&&n.target.route.area===`agents`&&n.id!==e.activeTabId,i=await $4e({current:a.state,next:e,sessionsRoute:nr,closingTab:t.saveClosingTab,autosave:ye.current,onCommit:a.setState,onNavigate:e=>{r&&(be.current=!0),St(e),r&&window.setTimeout(()=>{be.current=!1},0)}});return i.allowed?!0:(E(`Agent Designer changes were not saved: ${i.error instanceof Error?i.error.message:String(i.error)}`),!1)},ir=e=>{rr(e)},ar=async e=>{let t=b3e(a.state,e);await rr(t)},or=async e=>{await rr(x3e(a.state,e.id))},sr=async e=>rr(G4e(a.state,e.id),{saveClosingTab:e}),cr=e=>{let t=a.state.tabs.find(t=>t.target.kind===`session-tool`&&t.target.tool===e);t&&sr(t)},lr=async e=>{e&&!await sr(e)||(Tt(C??g.selectedRoomId,b??g.selectedPiboSessionId),window.setTimeout(()=>document.querySelector(`[data-pibo-debug="desktop-session-sidebar"] button`)?.focus(),0))},ur=(e,t)=>{if(e.target.kind===`new-tab`)return null;if(e.target.kind===`session-tool`)return(0,W.jsx)(`div`,{ref:Ke[e.target.tool],className:`h-full min-h-0 overflow-hidden ${e.target.tool===`preview`?`flex flex-col`:``}`,"data-pibo-debug":`desktop-session-tool-${e.target.tool}`});let n=e.target.route;if(n.area===`vscode`)return(0,W.jsx)(U2e,{integration:g.integrations?.vscode});if(n.area===`cron`)return(0,W.jsx)(Sq,{bootstrap:g,mobileSidebarOpen:!1,onCloseMobileSidebar:()=>void 0});if(n.area===`loops`)return(0,W.jsx)(aJ,{bootstrap:g,mobileSidebarOpen:!1,onCloseMobileSidebar:()=>void 0});if(n.area===`agents`)return(0,W.jsx)(lY,{agents:g.agents,initialCustomAgents:g.customAgents,initialAgentFolders:g.agentFolders,initialCatalog:g.agentCatalog,modelCatalog:g.modelCatalog,onCreateSession:e=>void Cn(e),onEditContextFile:Ot,onEditMcpServer:kt,onAgentsChanged:()=>void It(b??void 0,at.current,C??void 0,{selectSession:!1}),onAutosaveHandlerChange:Ct,creatingSession:ge||ht,mobileSidebarOpen:!1,isMobileSidebarViewport:!1,onCloseMobileSidebar:()=>void 0});if(n.area===`workflows`)return(0,W.jsx)(L2e,{route:n,surface:`desktop`,fallback:(0,W.jsx)(O2e,{draftId:n.draftId,onNavigateDraft:e=>{t&&St({area:`workflows`,draftId:e})}})});if(n.area===`projects`)return(0,W.jsx)(b6,{baseBootstrap:g,routeProjectId:n.projectId,routePiboSessionId:n.piboSessionId,sessionViews:zt,showRawEvents:I,showThinking:M,expandThinking:P,toolDisplayMode:R,commands:vn,skills:yn,mobileSidebarOpen:!1,onCloseMobileSidebar:()=>void 0,terminalFullscreen:!1,onEnterTerminalFullscreen:()=>void 0,onExitTerminalFullscreen:()=>void 0,onNavigate:t?Et:()=>void 0,onViewContext:Dt,onSelectSessionView:e=>St({...n,sessionViewId:e},!1,e),onToggleRawEvents:()=>{let e=!I;L(e),NY(e)},onToggleThinking:()=>{let e=!M;N(e),AY(e)},onToggleExpandThinking:()=>{let e=!P;F(e),jY(e)},onToolDisplayModeChange:e=>{z(e),MY(e)},onThinkingLevelChange:e=>void eu(n.piboSessionId??``,`thinking`,{level:e}),onError:E});if(n.area===`context`)return(0,W.jsxs)(`div`,{className:`grid h-full min-h-0 grid-cols-[210px_minmax(0,1fr)] overflow-hidden`,children:[(0,W.jsx)(`aside`,{className:`min-h-0 overflow-hidden border-r border-slate-800 bg-[#1a262b]`,children:(0,W.jsx)(gq,{activePanel:Pe,onSelect:Fe,toolCount:g.agentCatalog?.piboTools.length??0,mcpServerCount:g.agentCatalog?.mcpServers.length??0})}),(0,W.jsx)(`main`,{className:`min-h-0 overflow-auto`,children:Pe===`pibo-tools`?(0,W.jsx)(pG,{tools:g.agentCatalog?.piboTools??[]}):Pe===`mcp-tools`?(0,W.jsx)(gG,{servers:g.agentCatalog?.mcpServers??[],selectedServerName:Re,onServerSaved:At}):Pe===`build-context`?(0,W.jsx)(cq,{piboSessionId:n.piboSessionId??b}):Pe===`base-prompt`?(0,W.jsx)(aU,{}):Pe===`compaction-prompt`?(0,W.jsx)(oU,{}):(0,W.jsx)(ZH,{agentProfiles:Yn,selectedFileKey:Ie})})]});let r=n.panel??`general`;return(0,W.jsxs)(`div`,{className:`grid h-full min-h-0 grid-cols-[210px_minmax(0,1fr)] overflow-hidden`,children:[(0,W.jsx)(`aside`,{className:`min-h-0 overflow-hidden border-r border-slate-800 bg-[#1a262b]`,children:(0,W.jsx)(a6,{activePanel:r,onSelect:e=>St({area:`settings`,panel:e}),piPackageCount:g.agentCatalog?.piPackages.length??0,userSkillCount:g.agentCatalog?.userSkills.length??0})}),(0,W.jsx)(`main`,{className:`min-h-0 overflow-auto`,children:(0,W.jsx)(p6,{activePanel:r,showThinking:M,setShowThinking:N,expandThinking:P,setExpandThinking:F,modelDefaults:g.modelDefaults,modelCatalog:g.modelCatalog,onModelDefaultsChanged:e=>_(t=>t&&{...t,modelDefaults:e}),piPackages:g.agentCatalog?.piPackages,onPiPackageChanged:jt,onPiPackageRemoved:Mt,userSkills:g.agentCatalog?.userSkills,onUserSkillChanged:Nt,onUserSkillRemoved:Pt,piboSessionId:b,onProviderAuthChanged:Kt})})]})};return(0,W.jsxs)(W.Fragment,{children:[Ze===`fallback`&&!$n?(0,W.jsx)(X2e,{}):null,(0,W.jsxs)(`div`,{"data-pibo-debug":`chat-app`,"data-pibo-area":l,"data-pibo-room-id":C??g.selectedRoomId??void 0,"data-pibo-selected-session-id":b??g.selectedPiboSessionId??void 0,"data-pibo-terminal-fullscreen":Zn?`true`:`false`,"data-pibo-preview-fullscreen":Qn?`true`:`false`,className:`h-dvh overflow-hidden bg-[#101d22] text-slate-200 grid ${$n?`grid-rows-[1fr]`:`grid-rows-[auto_auto_1fr]`}`,children:[$n?null:(0,W.jsx)(Z2e,{area:l,desktopTabMode:i,identity:Xn,mobileAreaMenuOpen:Ye,mobileSidebarTriggerRef:qe,totalRoomUnreadCount:Jn,vscodeEnabled:!!g.integrations?.vscode,showMobileSidebarTrigger:l!==`vscode`,onOpenMobileSidebar:()=>Ue(!0),onSelectMainNavArea:tr,onToggleMobileAreaMenu:()=>Xe(e=>!e),onCloseMobileAreaMenu:()=>Xe(!1)}),$n?null:(0,W.jsxs)(`div`,{children:[T?(0,W.jsx)(Q2e,{message:T,onDismiss:()=>E(null)}):null,k?(0,W.jsx)(A3e,{status:k,onDismiss:()=>A(null)}):null]}),i?(0,W.jsxs)(`div`,{"data-pibo-debug":`desktop-route-shell`,"data-pibo-area":c?.area??`sessions`,className:`min-h-0 flex overflow-hidden`,children:[(0,W.jsxs)(`aside`,{"data-pibo-debug":`desktop-session-sidebar`,tabIndex:-1,hidden:$n,"aria-hidden":$n||void 0,className:`min-h-0 w-[300px] shrink-0 overflow-hidden border-r border-slate-800 bg-[#1a262b] flex flex-col outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[#11a4d4]`,children:[(0,W.jsxs)(`div`,{className:`h-11 px-3 border-b border-slate-800 flex items-center justify-between text-xs font-bold uppercase tracking-wider`,children:[(0,W.jsx)(`span`,{children:`Sessions`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void It(b??void 0,at.current,C??void 0,{force:!0}).then(e=>{b&&Ut(b),Tt(e.selectedRoomId,e.selectedPiboSessionId)}),title:`Refresh Sessions`,"aria-label":`Refresh Sessions`,className:`p-1 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#11a4d4]`,children:(0,W.jsx)(il,{size:13})})]}),(0,W.jsx)(o$,{bootstrap:g,selectedRoomId:C,selectedPiboSessionId:b,showArchivedRooms:te,onToggleArchivedRooms:Sn,creatingRoom:Be,onCreateRoom:()=>Dn(),onSelectRoom:xn,loadingRoomId:Ae,roomSessionsLoading:gt,onUpdateRoom:kn,onArchiveRoom:jn,onReadAllRoom:An,onDeleteRoom:nn,newSessionProfile:re,newSessionProfileReady:ie===(C??g.selectedRoomId),onNewSessionProfileChange:Ht,selectedRoomArchived:ht,creatingSession:ge,onCreateSession:()=>Cn(),showArchived:B,onToggleArchivedSessions:wn,loadingArchivedSessions:Ce,visibleActiveSessions:Ln,visibleArchivedSessions:Rn,totalActiveSessionCount:In.active.length,totalArchivedSessionCount:In.archived.length,hasMoreActiveSessions:zn,hasMoreArchivedSessions:Bn,loadingActiveSessions:xe,sessionListScrollRef:ot,onLoadMoreSessions:Hn,signalNow:rt,selectedSessionPathIds:Vn,onSelectSession:bn,onRenameSession:Tn,onArchiveSession:En,onDeleteSession:un,onViewContext:Dt,loadingPiboSessionId:Oe,autoRenameSessionId:Me,onAutoRenameConsumed:()=>Ne(null)})]}),(0,W.jsx)(`main`,{"data-pibo-debug":`desktop-session-center`,hidden:Qn,"aria-hidden":Qn||void 0,className:`min-h-0 flex-1 overflow-hidden ${Zn?`min-w-0`:`min-w-[420px]`}`,children:(0,W.jsx)(r$,{bootstrap:g,selectedPiboSessionId:b,selectedRoomId:C,contextLabel:mt,selectedRoomArchived:ht,roomNavigationPending:gt,sessionNavigationPending:!!(Oe&&Oe===b),selectedSessionProfile:Un?.profile??jQ(g),selectedSessionActiveModel:qn,selectedSessionStatus:I9(Gn??Kn)??Un?.status,selectedSessionSignal:Gn,signals:$e??void 0,sessionViewId:`terminal`,sessionViews:zt,currentSessionView:Vt,desktopTerminalOnly:!0,creatingSession:ge,terminalFullscreen:Zn,onEnterTerminalFullscreen:xt,onExitTerminalFullscreen:()=>le(!1),showRawEvents:I,showThinking:M,expandThinking:P,toolDisplayMode:R,commands:vn,skills:yn,composerText:fe,composerFocusSignal:me,onComposerTextChange:Rt,onToggleRawEvents:()=>ar({kind:`session-tool`,tool:`raw-events`}),onToggleThinking:()=>{let e=!M;N(e),AY(e)},onToggleExpandThinking:()=>{let e=!P;F(e),jY(e)},onToolDisplayModeChange:e=>{z(e),MY(e)},onSessionAgentProfileChange:e=>void _n(e),onFork:Nn,onOpenSession:Pn,onSelectSessionView:Fn,onCommand:Mn,onThinkingLevelChange:e=>void Mn(`/thinking ${e}`),onRefreshTrace:Wt,onRefreshBootstrap:Gt,desktopActiveTool:s,desktopToolHosts:We,onOpenDesktopTool:e=>void ar({kind:`session-tool`,tool:e}),onCloseDesktopTool:cr,desktopPreviewFullscreen:Qn,onEnterDesktopPreviewFullscreen:()=>de(!0),onExitDesktopPreviewFullscreen:()=>de(!1),onSend:async(e,t,n,r,i)=>{if(!(IQ(b,ht)||!b))try{await gn.mutateAsync({piboSessionId:b,text:e,clientTxnId:r??FQ(),roomId:C??void 0,webAnnotationIds:t,fileAttachmentPaths:n,delivery:i}),await It(b,at.current,C??void 0,{force:!0}),E(null)}catch(e){throw E(e instanceof Error?e.message:String(e)),e}},onError:E})}),(0,W.jsx)(g3e,{state:a.state,vscodeEnabled:!!g.integrations?.vscode,onStateChange:ir,onActivate:e=>void or(e),onClose:sr,onFocusSessions:e=>void lr(e),renderPanel:(e,t)=>ur(e,t),hidden:Zn,fullscreen:Qn}),Qt?(0,W.jsx)(G2e,{room:Qt,confirmName:$t,deleting:en,onConfirmNameChange:tn,onCancel:rn,onDelete:()=>void an()}):null,on?(0,W.jsx)(W2e,{session:on,confirmText:sn,deleting:cn,onConfirmTextChange:ln,onCancel:dn,onDelete:()=>void fn()}):null]}):(0,W.jsx)(`div`,{"data-pibo-debug":`route-shell`,"data-pibo-area":l,"data-pibo-room-id":C??g.selectedRoomId??void 0,"data-pibo-selected-session-id":b??void 0,className:`min-h-0 ${er}`,children:l===`vscode`?(0,W.jsx)(U2e,{integration:g.integrations?.vscode}):l===`cron`?(0,W.jsx)(Sq,{bootstrap:g,mobileSidebarOpen:He,onCloseMobileSidebar:Je}):l===`loops`?(0,W.jsx)(aJ,{bootstrap:g,mobileSidebarOpen:He,onCloseMobileSidebar:Je}):l===`agents`?(0,W.jsx)(lY,{agents:g.agents,initialCustomAgents:g.customAgents,initialAgentFolders:g.agentFolders,initialCatalog:g.agentCatalog,modelCatalog:g.modelCatalog,onCreateSession:e=>void Cn(e),onEditContextFile:Ot,onEditMcpServer:kt,onAgentsChanged:()=>void It(b??void 0,at.current,C??void 0,{selectSession:!1}),onAutosaveHandlerChange:Ct,creatingSession:ge||ht,mobileSidebarOpen:He,isMobileSidebarViewport:r,onCloseMobileSidebar:Je}):l===`workflows`?(0,W.jsx)(L2e,{route:e.area===`workflows`?e:{area:`workflows`,draftId:m},surface:`mobile`,fallback:(0,W.jsx)(O2e,{draftId:m,onNavigateDraft:e=>St({area:`workflows`,draftId:e})})}):l===`projects`?(0,W.jsx)(b6,{baseBootstrap:g,routeProjectId:d,routePiboSessionId:f,sessionViews:zt,showRawEvents:I,showThinking:M,expandThinking:P,toolDisplayMode:R,commands:vn,skills:yn,mobileSidebarOpen:He,onCloseMobileSidebar:Je,terminalFullscreen:Zn,onEnterTerminalFullscreen:xt,onExitTerminalFullscreen:()=>le(!1),onNavigate:Et,onViewContext:Dt,onSelectSessionView:Fn,onToggleRawEvents:()=>{let e=!I;L(e),NY(e)},onToggleThinking:()=>{let e=!M;N(e),AY(e)},onToggleExpandThinking:()=>{let e=!P;F(e),jY(e)},onToolDisplayModeChange:e=>{z(e),MY(e)},onThinkingLevelChange:e=>void eu(f??``,`thinking`,{level:e}),onError:E}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{"data-pibo-mobile-sidebar-backdrop":!0,"aria-hidden":`true`,className:`fixed inset-0 z-30 bg-black/60 min-[981px]:hidden transition-opacity duration-200 ${Zn?`hidden`:He?`opacity-100 pointer-events-auto`:`opacity-0 pointer-events-none`}`,onClick:Je}),(0,W.jsxs)(`aside`,{"data-pibo-mobile-sidebar":!0,...yq(r,He,`Chat sidebar`),"data-pibo-debug":`sidebar-shell`,"data-pibo-area":l,"data-pibo-room-id":C??g.selectedRoomId??void 0,"data-pibo-selected-session-id":b??void 0,"data-pibo-state":He?`open`:`closed`,className:`min-h-0 overflow-hidden flex flex-col bg-[#1a262b] border-r border-slate-800 max-[980px]:fixed max-[980px]:left-0 max-[980px]:top-0 max-[980px]:bottom-0 max-[980px]:z-40 max-[980px]:w-[280px] max-[980px]:transition-transform max-[980px]:duration-200 ${Zn?`hidden`:He?`max-[980px]:translate-x-0`:`max-[980px]:-translate-x-full`}`,children:[(0,W.jsxs)(`div`,{className:`h-11 px-3 border-b border-slate-800 flex items-center justify-between text-xs font-bold uppercase tracking-wider max-[980px]:h-auto max-[980px]:py-2 max-[980px]:flex-wrap`,children:[(0,W.jsx)(`span`,{children:l}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[l===`sessions`?(0,W.jsx)(`button`,{type:`button`,onClick:()=>void It(b??void 0,at.current,C??void 0,{force:!0}).then(e=>{b&&Ut(b),l===`sessions`&&Tt(e.selectedRoomId,e.selectedPiboSessionId)}),title:`Refresh`,"aria-label":`Refresh`,className:`p-1 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(il,{size:13})}):null,(0,W.jsx)(`button`,{type:`button`,onClick:Je,className:`min-[981px]:hidden p-1 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,title:`Close sidebar`,"aria-label":`Close sidebar`,children:(0,W.jsx)(Al,{size:13})})]})]}),l===`sessions`?(0,W.jsx)(o$,{bootstrap:g,selectedRoomId:C,selectedPiboSessionId:b,showArchivedRooms:te,onToggleArchivedRooms:Sn,creatingRoom:Be,onCreateRoom:()=>Dn(),onSelectRoom:xn,loadingRoomId:Ae,roomSessionsLoading:gt,onUpdateRoom:kn,onArchiveRoom:jn,onReadAllRoom:An,onDeleteRoom:nn,newSessionProfile:re,newSessionProfileReady:ie===(C??g.selectedRoomId),onNewSessionProfileChange:Ht,selectedRoomArchived:ht,creatingSession:ge,onCreateSession:()=>Cn(),showArchived:B,onToggleArchivedSessions:wn,loadingArchivedSessions:Ce,visibleActiveSessions:Ln,visibleArchivedSessions:Rn,totalActiveSessionCount:In.active.length,totalArchivedSessionCount:In.archived.length,hasMoreActiveSessions:zn,hasMoreArchivedSessions:Bn,loadingActiveSessions:xe,sessionListScrollRef:ot,onLoadMoreSessions:Hn,signalNow:rt,selectedSessionPathIds:Vn,onSelectSession:bn,onRenameSession:Tn,onArchiveSession:En,onDeleteSession:un,onViewContext:Dt,loadingPiboSessionId:Oe,autoRenameSessionId:Me,onAutoRenameConsumed:()=>Ne(null)}):l===`context`?(0,W.jsx)(gq,{activePanel:Pe,onSelect:Fe,toolCount:g.agentCatalog?.piboTools.length??0,mcpServerCount:g.agentCatalog?.mcpServers.length??0}):(0,W.jsx)(a6,{activePanel:h,onSelect:e=>St({area:`settings`,panel:e}),piPackageCount:g.agentCatalog?.piPackages.length??0,userSkillCount:g.agentCatalog?.userSkills.length??0})]}),l===`sessions`?(0,W.jsx)(r$,{bootstrap:g,selectedPiboSessionId:b,selectedRoomId:C,contextLabel:mt,selectedRoomArchived:ht,roomNavigationPending:gt,sessionNavigationPending:!!(Oe&&Oe===b),selectedSessionProfile:Un?.profile??jQ(g),selectedSessionActiveModel:qn,selectedSessionStatus:I9(Gn??Kn)??Un?.status,selectedSessionSignal:Gn,signals:$e??void 0,sessionViewId:oe,sessionViews:zt,currentSessionView:Bt,creatingSession:ge,terminalFullscreen:Zn,onEnterTerminalFullscreen:xt,onExitTerminalFullscreen:()=>le(!1),showRawEvents:I,showThinking:M,expandThinking:P,toolDisplayMode:R,commands:vn,skills:yn,composerText:fe,composerFocusSignal:me,onComposerTextChange:Rt,onToggleRawEvents:()=>{let e=!I;L(e),NY(e)},onToggleThinking:()=>{let e=!M;N(e),AY(e)},onToggleExpandThinking:()=>{let e=!P;F(e),jY(e)},onToolDisplayModeChange:e=>{z(e),MY(e)},onSessionAgentProfileChange:e=>void _n(e),onFork:Nn,onOpenSession:Pn,onSelectSessionView:Fn,onCommand:Mn,onThinkingLevelChange:e=>void Mn(`/thinking ${e}`),onRefreshTrace:Wt,onRefreshBootstrap:Gt,onSend:async(e,t,n,r,i)=>{if(!(IQ(b,ht)||!b))try{await gn.mutateAsync({piboSessionId:b,text:e,clientTxnId:r??FQ(),roomId:C??void 0,webAnnotationIds:t,fileAttachmentPaths:n,delivery:i}),await It(b,at.current,C??void 0,{force:!0}),E(null)}catch(e){throw E(e instanceof Error?e.message:String(e)),e}},onError:E}):(0,W.jsx)(`main`,{className:`min-h-0 flex flex-col`,children:l===`context`?Pe===`pibo-tools`?(0,W.jsx)(pG,{tools:g.agentCatalog?.piboTools??[]}):Pe===`mcp-tools`?(0,W.jsx)(gG,{servers:g.agentCatalog?.mcpServers??[],selectedServerName:Re,onServerSaved:At}):Pe===`build-context`?(0,W.jsx)(cq,{piboSessionId:f??null}):Pe===`base-prompt`?(0,W.jsx)(aU,{}):Pe===`compaction-prompt`?(0,W.jsx)(oU,{}):(0,W.jsx)(ZH,{agentProfiles:Yn,selectedFileKey:Ie}):(0,W.jsx)(p6,{activePanel:h,showThinking:M,setShowThinking:N,expandThinking:P,setExpandThinking:F,modelDefaults:g.modelDefaults,modelCatalog:g.modelCatalog,onModelDefaultsChanged:e=>{_(t=>t&&{...t,modelDefaults:e})},piPackages:g.agentCatalog?.piPackages,onPiPackageChanged:jt,onPiPackageRemoved:Mt,userSkills:g.agentCatalog?.userSkills,onUserSkillChanged:Nt,onUserSkillRemoved:Pt,piboSessionId:b,onProviderAuthChanged:Kt})}),Qt?(0,W.jsx)(G2e,{room:Qt,confirmName:$t,deleting:en,onConfirmNameChange:tn,onCancel:rn,onDelete:()=>void an()}):null,on?(0,W.jsx)(W2e,{session:on,confirmText:sn,deleting:cn,onConfirmTextChange:ln,onCancel:dn,onDelete:()=>void fn()}):null]})})]})]})}function A3e({status:e,onDismiss:t}){let n=e.status===`starting`||e.status===`running`,r=e.totalBytes&&e.totalBytes>0?Math.min(100,Math.max(0,e.receivedBytes/e.totalBytes*100)):void 0,i=e.status===`failed`?`border-red-500/40 bg-red-500/10 text-red-100`:e.status===`completed`?`border-emerald-500/40 bg-emerald-500/10 text-emerald-100`:`border-[#11a4d4]/40 bg-[#11a4d4]/10 text-slate-100`,a=e.status===`completed`?`Download ready`:e.status===`failed`?`Download failed`:`Download in progress`;return(0,W.jsx)(`div`,{className:`border-b px-4 py-2 text-sm ${i}`,role:`status`,"aria-live":`polite`,children:(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-bold uppercase tracking-wider opacity-80`,children:a}),(0,W.jsx)(`div`,{className:`min-w-0 truncate font-medium`,title:e.path,children:e.filename}),(0,W.jsxs)(`div`,{className:`mt-1 text-xs text-slate-300`,children:[T3e(e),e.duplicateAttempted&&n?(0,W.jsx)(`span`,{className:`ml-2 text-amber-200`,children:`Already downloading this file. Please wait.`}):null]}),r!==void 0&&n?(0,W.jsx)(`div`,{className:`mt-2 h-1.5 overflow-hidden rounded-sm bg-[#0e1116]`,"aria-label":`Download progress ${Math.floor(r)}%`,children:(0,W.jsx)(`div`,{className:`h-full bg-[#11a4d4] transition-[width]`,style:{width:`${r}%`}})}):null,r===void 0&&n?(0,W.jsx)(`div`,{className:`mt-2 h-1.5 overflow-hidden rounded-sm bg-[#0e1116]`,children:(0,W.jsx)(`div`,{className:`h-full w-1/3 animate-pulse bg-[#11a4d4]`})}):null]}),n?null:(0,W.jsx)(`button`,{type:`button`,onClick:t,className:`shrink-0 rounded-sm border border-slate-600 px-2 py-1 text-[11px] uppercase tracking-wider text-slate-200 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:`Dismiss`})]})})}function j3e(e,t){return e.find(e=>e.name===t||e.aliases.includes(t))}var M3e=new wn({defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:1}}});function N3e(){let e=ys({select:e=>({pathname:e.location.pathname,search:e.location.search})});return(0,W.jsx)(k3e,{route:fu(e.pathname,e.search)})}var $9=Xo({component:N3e}),P3e=Jo({getParentRoute:()=>$9,path:`/`}),F3e=Jo({getParentRoute:()=>$9,path:`sessions/$piboSessionId`}),I3e=Jo({getParentRoute:()=>$9,path:`rooms/$roomId`}),L3e=Jo({getParentRoute:()=>$9,path:`rooms/$roomId/sessions/$piboSessionId`}),R3e=Jo({getParentRoute:()=>$9,path:`projects`}),z3e=Jo({getParentRoute:()=>$9,path:`projects/$projectId`}),B3e=Jo({getParentRoute:()=>$9,path:`projects/$projectId/sessions/$piboSessionId`}),V3e=Jo({getParentRoute:()=>$9,path:`vscode`}),H3e=Jo({getParentRoute:()=>$9,path:`workflows`}),U3e=Jo({getParentRoute:()=>$9,path:`workflows/drafts/$draftId`}),W3e=Jo({getParentRoute:()=>$9,path:`workflows/view/$workflowId/$workflowVersion`}),G3e=Jo({getParentRoute:()=>$9,path:`agents`}),K3e=Jo({getParentRoute:()=>$9,path:`cron`}),q3e=Jo({getParentRoute:()=>$9,path:`loops`}),J3e=Jo({getParentRoute:()=>$9,path:`ralph`}),Y3e=Jo({getParentRoute:()=>$9,path:`context`}),X3e=Jo({getParentRoute:()=>$9,path:`settings`}),Z3e=Jo({getParentRoute:()=>$9,path:`settings/concurrency`}),Q3e=Jo({getParentRoute:()=>$9,path:`settings/previews`}),$3e=Jo({getParentRoute:()=>$9,path:`settings/transcription`}),e6e=Jo({getParentRoute:()=>$9,path:`settings/speech`}),t6e=Jo({getParentRoute:()=>$9,path:`settings/shortcuts`}),n6e=Jo({getParentRoute:()=>$9,path:`settings/maintenance`}),r6e=Jo({getParentRoute:()=>$9,path:`settings/pi-packages`}),i6e=Jo({getParentRoute:()=>$9,path:`settings/skills`}),a6e=Jo({getParentRoute:()=>$9,path:`settings/providers`}),o6e=ps({routeTree:$9.addChildren([P3e,F3e,I3e,L3e,R3e,z3e,B3e,V3e,H3e,U3e,W3e,G3e,K3e,q3e,J3e,Y3e,X3e,Z3e,Q3e,$3e,e6e,t6e,n6e,r6e,i6e,a6e]),basepath:`/apps/chat`,stringifySearch:hu});`serviceWorker`in navigator&&window.addEventListener(`load`,()=>{let e=!1;navigator.serviceWorker.addEventListener(`controllerchange`,()=>{e||(e=!0,window.location.reload())}),navigator.serviceWorker.register(`/apps/chat/sw.js`).then(e=>{e.addEventListener(`updatefound`,()=>{let t=e.installing;t&&t.addEventListener(`statechange`,()=>{t.state===`installed`&&navigator.serviceWorker.controller&&t.postMessage({type:`PIBO_CHAT_SKIP_WAITING`})})}),window.setInterval(()=>{e.update()},3e5)}).catch(()=>{})}),(0,Ml.createRoot)(document.getElementById(`root`)).render((0,W.jsx)(U.StrictMode,{children:(0,W.jsx)(kn,{client:M3e,children:(0,W.jsx)(gs,{router:o6e})})}));export{tL as n,PL as t};
227
+ `})}function p9({icon:e,label:t,onSelect:n,disabled:r=!1,destructive:i=!1}){return(0,W.jsxs)(`button`,{type:`button`,role:`menuitem`,tabIndex:-1,onClick:n,disabled:r,className:`flex w-full items-center gap-2 px-3 py-2 text-left transition disabled:cursor-not-allowed disabled:opacity-40 ${i?`text-red-300 hover:bg-red-500/10 hover:text-red-100`:`text-slate-300 hover:bg-[#11a4d4]/10 hover:text-[#11a4d4]`}`,children:[(0,W.jsx)(`span`,{className:`shrink-0`,children:e}),(0,W.jsx)(`span`,{className:`truncate`,children:t})]})}function T0e({nodeId:e,node:t,lastRun:n,visualState:r}){let i=R7(t),a=n?.nodeAttempts.findLast(t=>t.nodeId===e),o=F7(t.input)?t.input:void 0,s=F7(t.output)?t.output:void 0;return(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Workflow node viewer`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:`Node viewer`}),(0,W.jsx)(`div`,{className:`mt-1 truncate text-sm font-bold text-slate-100`,children:z7(e,t)}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-slate-500`,children:e})]}),(0,W.jsxs)(`div`,{className:`flex shrink-0 flex-wrap justify-end gap-1 text-[10px]`,children:[(0,W.jsx)(f9,{label:i}),r===`running`?(0,W.jsx)(f9,{label:`running`}):null,r===`recent`?(0,W.jsx)(f9,{label:`last run`}):null]})]}),(0,W.jsxs)(`div`,{className:`grid gap-2 text-[11px] leading-5 text-slate-300`,children:[(0,W.jsx)(m9,{label:`Input port`,value:D0e(o)}),(0,W.jsx)(m9,{label:`Output port`,value:D0e(s)}),i===`trigger`?(0,W.jsx)(m9,{label:`Trigger`,value:O0e(t.trigger)}):null,i===`agent`?(0,W.jsx)(m9,{label:`Agent profile`,value:k0e(t.profile)}):null,i===`agent`?(0,W.jsx)(m9,{label:`Prompt source`,value:typeof t.promptTemplate==`string`?`promptTemplate`:t.promptBuilder?`promptBuilder`:`input`}):null,i===`adapter`?(0,W.jsx)(m9,{label:`Adapter`,value:A0e(t.handler)}):null,i===`workflow`?(0,W.jsx)(m9,{label:`Nested workflow`,value:`${typeof t.workflowId==`string`?t.workflowId:`<missing>`}@${typeof t.workflowVersion==`string`?t.workflowVersion:`latest`}`}):null,i===`human`?(0,W.jsx)(m9,{label:`Human actions`,value:Array.isArray(t.actions)?`${t.actions.length} actions`:`none`}):null]}),a?(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#151f24]/70 p-2 text-[11px] leading-5 text-slate-300`,"aria-label":`Last node run facts`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Last run facts`}),(0,W.jsx)(m9,{label:`Attempt`,value:`${a.id} · ${a.status}`}),a.piboSessionId?(0,W.jsx)(m9,{label:`Pibo Session`,value:a.piboSessionId}):null,(0,W.jsx)(E0e,{label:`Input`,value:a.input}),a.output===void 0?null:(0,W.jsx)(E0e,{label:`Output`,value:a.output})]}):(0,W.jsx)(`div`,{className:`rounded-sm border border-dashed border-slate-700 bg-[#151f24]/50 p-2 text-[11px] leading-5 text-slate-500`,children:`No run facts for this node yet.`})]})}function m9({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`grid grid-cols-[110px_minmax(0,1fr)] gap-2`,children:[(0,W.jsx)(`div`,{className:`text-slate-500`,children:e}),(0,W.jsx)(`div`,{className:`min-w-0 break-words font-mono text-slate-200`,children:t})]})}function E0e({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`grid gap-1`,children:[(0,W.jsx)(`div`,{className:`text-slate-500`,children:e}),(0,W.jsx)(`pre`,{className:`max-h-28 overflow-auto rounded-sm border border-slate-800 bg-[#0c171c] p-2 whitespace-pre-wrap text-slate-200`,children:t})]})}function D0e(e){return e?`${typeof e.kind==`string`?e.kind:`unknown`}${typeof e.description==`string`&&e.description.trim()?` · ${e.description.trim()}`:``}`:`none`}function O0e(e){return F7(e)?`${typeof e.kind==`string`?e.kind:`unknown`} · ${typeof e.mode==`string`?e.mode:`default`}`:`<missing>`}function k0e(e){return F7(e)&&typeof e.id==`string`?e.id:`<missing>`}function A0e(e){return typeof e==`string`?e:F7(e)&&typeof e.id==`string`?e.id:`<missing>`}function j0e({color:e}){return(0,W.jsx)(`svg`,{className:`pointer-events-none absolute inset-0 z-10 h-full w-full`,viewBox:`0 0 100 100`,preserveAspectRatio:`none`,"aria-hidden":`true`,children:(0,W.jsx)(`rect`,{x:`1`,y:`1`,width:`98`,height:`98`,rx:`2`,fill:`none`,stroke:e,strokeWidth:`2`,strokeDasharray:`9 7`,vectorEffect:`non-scaling-stroke`,style:{animation:`workflow-node-outline-flow 0.8s linear infinite`}})})}function M0e({data:e,selected:t}){let n=e.kind===`trigger`,r=e.runVisualState===`running`||e.runVisualState===`recent`,i=e.runVisualState===`running`?`#facc15`:`#22c55e`;return(0,W.jsxs)(`div`,{className:`relative min-w-44 rounded-sm border px-3 py-2 shadow-lg shadow-black/20 ${n?`bg-emerald-950/30`:`bg-[#15242b]`} ${r?`border-transparent`:t?`border-[#38bdf8]`:n?`border-emerald-700/70`:`border-slate-700`}`,children:[r?(0,W.jsx)(j0e,{color:i}):null,n?null:(0,W.jsx)(O7,{type:`target`,position:S5.Left,className:`!h-2.5 !w-2.5 !border-[#0f172a] !bg-[#38bdf8]`}),(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,W.jsx)(`div`,{className:`truncate text-xs font-bold text-slate-100`,children:e.label}),(0,W.jsx)(`span`,{className:`rounded-full border px-2 py-0.5 text-[10px] uppercase tracking-[0.12em] ${n?`border-emerald-500/50 text-emerald-200`:`border-slate-700 text-slate-400`}`,children:e.kind})]}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[10px] text-slate-500`,children:e.nodeId}),(0,W.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-1 text-[10px]`,children:[e.isInitial?(0,W.jsx)(`span`,{className:`rounded-full border border-[#11a4d4]/40 bg-[#11a4d4]/10 px-2 py-0.5 text-[#8bdcf4]`,children:`initial`}):null,e.validationCount?(0,W.jsxs)(`span`,{className:`rounded-full border border-amber-600/60 bg-amber-950/30 px-2 py-0.5 text-amber-200`,children:[e.validationCount,` diagnostics`]}):null]}),n?(0,W.jsxs)(`button`,{type:`button`,className:`nodrag nopan mt-2 inline-flex w-full items-center justify-center gap-2 rounded-sm border border-emerald-600/70 bg-emerald-500/10 px-2 py-1.5 text-[11px] font-bold text-emerald-100 transition hover:border-emerald-300 hover:text-white disabled:cursor-not-allowed disabled:opacity-50`,onClick:t=>{t.preventDefault(),t.stopPropagation(),e.onManualTriggerRun?.(e.nodeId)},disabled:e.readOnly,title:`Run this manual trigger`,children:[(0,W.jsx)(el,{size:12}),`Play test`]}):null,(0,W.jsx)(O7,{type:`source`,position:S5.Right,className:`!h-2.5 !w-2.5 !border-[#0f172a] ${n?`!bg-emerald-400`:`!bg-[#38bdf8]`}`})]})}function N0e({id:e,sourceX:t,sourceY:n,targetX:r,targetY:i,sourcePosition:a,targetPosition:o,markerEnd:s,markerStart:c,style:l,selected:u,data:d,label:f,labelStyle:p,labelShowBg:m,labelBgStyle:h,labelBgPadding:g,labelBgBorderRadius:_}){let{screenToFlowPosition:v}=C7(),[y,b]=(0,U.useState)(void 0),x=(0,U.useRef)(void 0);(0,U.useEffect)(()=>{b(void 0),x.current=void 0},[d?.route,t,n,r,i,a,o]);let S=I0e({sourceX:t,sourceY:n,targetX:r,targetY:i,sourcePosition:a,targetPosition:o,route:{...d?.route??{},...y??{}}}),C=d?.recentTransition===!0,w={...l,stroke:u?`#facc15`:C?`#22c55e`:`#38bdf8`,strokeWidth:u?2.2:C?2.4:1.5,...C?{strokeDasharray:`8 7`,animation:`workflow-edge-flow 0.7s linear infinite`}:{}},T=(t,n)=>{if(d?.readOnly||n.button!==0)return;n.preventDefault(),n.stopPropagation();let r=n.clientX,i=n.clientY,a=!1;x.current={...d?.route??{},...x.current??y??{}};let o=e=>{if(!a&&Math.hypot(e.clientX-r,e.clientY-i)<3)return;a=!0;let n=v({x:e.clientX,y:e.clientY}),o=Math.round(t.axis===`x`?n.x:n.y),s={...x.current??{}};s[t.routeKey]=o,x.current=s,b(s)},s=()=>{document.removeEventListener(`pointermove`,o),document.removeEventListener(`pointerup`,s),document.body.style.cursor=``,document.body.style.userSelect=``,a?d?.onRouteChange?.(e,x.current??{}):d?.onSelect?.(e)};document.body.style.cursor=t.cursor,document.body.style.userSelect=`none`,document.addEventListener(`pointermove`,o),document.addEventListener(`pointerup`,s)};return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(A7,{id:e,path:S.path,markerStart:c,markerEnd:s,style:w,interactionWidth:22,label:f,labelX:S.labelX,labelY:S.labelY,labelStyle:p,labelShowBg:m,labelBgStyle:h,labelBgPadding:g,labelBgBorderRadius:_}),S.draggableSegments.map(t=>(0,W.jsx)(`path`,{d:t.path,fill:`none`,stroke:`transparent`,strokeWidth:22,className:`nopan ${t.cursorClass}`,onClick:e=>e.stopPropagation(),onPointerDown:e=>T(t,e),onContextMenu:t=>d?.onContextMenu?.(e,t),"aria-label":`Move edge route ${e}`,children:(0,W.jsx)(`title`,{children:t.title})},t.id))]})}var h9=20,P0e=5,F0e=8;function I0e(e){let t={x:e.sourceX,y:e.sourceY},n={x:e.targetX,y:e.targetY},r=L0e(e.sourcePosition),i=L0e(e.targetPosition),a={x:t.x+r.x*h9,y:t.y+r.y*h9},o={x:n.x+i.x*h9,y:n.y+i.y*h9},s,c;if(r.x!==0&&i.x!==0&&r.x*i.x===-1){let i=o.x>=a.x?1:-1;if(r.x===i){let r=g9(e.route.centerX,(a.x+o.x)/2);s=[t,{x:r,y:t.y},{x:r,y:n.y},n],c=[_9(`centerX`,s[1],s[2])]}else{let r=g9(e.route.sourceControlX,a.x),i=g9(e.route.targetControlX,o.x),l=g9(e.route.centerY,(t.y+n.y)/2);s=[t,{x:r,y:t.y},{x:r,y:l},{x:i,y:l},{x:i,y:n.y},n],c=[_9(`sourceControlX`,s[1],s[2]),_9(`centerY`,s[2],s[3]),_9(`targetControlX`,s[3],s[4])]}}else if(r.y!==0&&i.y!==0&&r.y*i.y===-1){let i=o.y>=a.y?1:-1;if(r.y===i){let r=g9(e.route.centerY,(a.y+o.y)/2);s=[t,{x:t.x,y:r},{x:n.x,y:r},n],c=[_9(`centerY`,s[1],s[2])]}else{let r=g9(e.route.sourceControlY,a.y),i=g9(e.route.targetControlY,o.y),l=g9(e.route.centerX,(t.x+n.x)/2);s=[t,{x:t.x,y:r},{x:l,y:r},{x:l,y:i},{x:n.x,y:i},n],c=[_9(`sourceControlY`,s[1],s[2]),_9(`centerX`,s[2],s[3]),_9(`targetControlY`,s[3],s[4])]}}else{let r=g9(e.route.centerX,(a.x+o.x)/2),i=g9(e.route.centerY,(a.y+o.y)/2);s=[t,a,{x:r,y:a.y},{x:r,y:i},{x:o.x,y:i},o,n],c=R0e(s).map((e,t)=>({...e,id:`fallback-${t}`,routeKey:e.axis===`x`?`centerX`:`centerY`}))}let l=c.filter(e=>V0e(e)>=F0e),u=H0e(l)??U0e(s);return{path:z0e(s),labelX:u?(u.start.x+u.end.x)/2:(t.x+n.x)/2,labelY:u?(u.start.y+u.end.y)/2:(t.y+n.y)/2,draggableSegments:l}}function L0e(e){return e===S5.Left?{x:-1,y:0}:e===S5.Right?{x:1,y:0}:e===S5.Top?{x:0,y:-1}:{x:0,y:1}}function g9(e,t){return typeof e==`number`&&Number.isFinite(e)?e:t}function _9(e,t,n){let r=t.x===n.x;return{id:`${e}-${t.x}-${t.y}-${n.x}-${n.y}`,start:t,end:n,path:`M ${t.x},${t.y} L ${n.x},${n.y}`,axis:r?`x`:`y`,routeKey:e,cursor:r?`ew-resize`:`ns-resize`,cursorClass:r?`cursor-ew-resize`:`cursor-ns-resize`,title:r?`Drag vertical edge segment left or right`:`Drag horizontal edge segment up or down`}}function R0e(e){return e.slice(1,-2).flatMap((t,n)=>{let r=e[n+2];return!r||t.x!==r.x&&t.y!==r.y||t.x===r.x&&t.y===r.y?[]:[_9(t.x===r.x?`centerX`:`centerY`,t,r)]})}function z0e(e){if(!e.length)return``;let t=`M ${e[0].x},${e[0].y}`;for(let n=1;n<e.length-1;n+=1)t+=B0e(e[n-1],e[n],e[n+1]);return t+=` L ${e[e.length-1].x},${e[e.length-1].y}`,t}function B0e(e,t,n){let r=Math.min(v9(e,t)/2,v9(t,n)/2,P0e);if(e.x===t.x&&t.x===n.x||e.y===t.y&&t.y===n.y)return` L ${t.x},${t.y}`;if(e.y===t.y){let i=e.x<n.x?-1:1,a=e.y<n.y?1:-1;return` L ${t.x+r*i},${t.y} Q ${t.x},${t.y} ${t.x},${t.y+r*a}`}let i=e.x<n.x?1:-1,a=e.y<n.y?-1:1;return` L ${t.x},${t.y+r*a} Q ${t.x},${t.y} ${t.x+r*i},${t.y}`}function v9(e,t){return Math.hypot(t.x-e.x,t.y-e.y)}function V0e(e){return v9(e.start,e.end)}function H0e(e){let t;for(let n of e){let e=V0e(n);(!t||e>t.length)&&(t={start:n.start,end:n.end,length:e})}return t}function U0e(e){let t;for(let n=0;n<e.length-1;n+=1){let r=e[n],i=e[n+1],a=v9(r,i);(!t||a>t.length)&&(t={start:r,end:i,length:a})}return t}var W0e={workflowNode:M0e},G0e={workflowEdge:N0e};function K0e(e){return e instanceof HTMLElement?e.isContentEditable?!0:!!e.closest(`input, textarea, select, [contenteditable='true']`):!1}function q0e(e,t){if(!t)return`Select a node or edge in the canvas to inspect or delete it.`;if(t.type===`node`){let n=I7(e)[t.id];return n?`Node ${t.id}: ${R7(n)} — ${z7(t.id,n)}`:`Node ${t.id}`}let n=L7(e)[t.id],r=n?q7(n.from):void 0,i=n?q7(n.to):void 0;return n&&r&&i?`Edge ${t.id}: ${r} → ${i}`:`Edge ${t.id}`}function J0e(e,t){let n=q7(t.from),r=q7(t.to),i=$0e(e,t),a=y9(e,t);return{...n?{sourceNodeId:n}:{},...r?{targetNodeId:r}:{},...i?{sourcePort:i}:{},...a?{targetPort:a}:{},directlyCompatible:!!(i&&a&&Q0e(i,a))}}function Y0e(e){let t=F7(e.adapter)?e.adapter:void 0;return n2e(t&&F7(t.transform)?t.transform:void 0)}function X0e(e,t,n){let r=L7(e),i=r[t];if(!i)return e;let a=y9(e,i)??b9();return{...e,edges:{...r,[t]:{...i,id:t,adapter:{kind:`edgeAdapter`,transform:t2e(n),output:x9(a)}}}}}function Z0e(e,t,n){let r=L7(e),i=r[t];if(!i)return e;let a=q7(i.from),o=q7(i.to);if(!a||!o)return e;let s=I7(e),c=U7(e,`adapter`),l=$0e(e,i)??b9(),u=y9(e,i)??b9(),d=B7(e),f=r2e(d[a],d[o])??H7(f1e(e,[]).nodes),p={...r};delete p[t];let m=i2e(p,`${t}_to_${c}`),h=i2e({...p,[m]:{}},`${c}_to_${o}`),g={id:m,from:x9(F7(i.from)?i.from:{nodeId:a}),to:{nodeId:c},kind:typeof i.kind==`string`?i.kind:`data`};F7(i.guard)&&(g.guard=x9(i.guard));let _={id:h,from:{nodeId:c},to:x9(F7(i.to)?i.to:{nodeId:o}),kind:typeof i.kind==`string`?i.kind:`data`};return G7({...e,nodes:{...s,[c]:m0e(c,n,l,u)},edges:{...p,[m]:g,[h]:_}},{...d,[c]:f})}function Q0e(e,t){return e.kind===`text`&&t.kind===`text`?!0:e.kind!==`json`||t.kind!==`json`?!1:JSON.stringify(e.schema??null)===JSON.stringify(t.schema??null)}function $0e(e,t){let n=e2e(e,t.from);return n&&F7(n.output)?n.output:void 0}function y9(e,t){let n=e2e(e,t.to);return n&&F7(n.input)?n.input:void 0}function e2e(e,t){let n=q7(t);return n?I7(e)[n]:void 0}function b9(){return{kind:`text`}}function t2e(e){return{kind:`adapter`,language:`typescript`,id:e}}function n2e(e){return F7(e)&&e.kind===`adapter`&&e.language===`typescript`&&typeof e.id==`string`?e.id:``}function r2e(e,t){return e&&t?{x:(e.x+t.x)/2,y:(e.y+t.y)/2}:void 0}function i2e(e,t){let n=t.replace(/[^a-zA-Z0-9_-]/g,`-`);if(!Object.hasOwn(e,n))return n;let r=2;for(;Object.hasOwn(e,`${n}_${r}`);)r+=1;return`${n}_${r}`}function x9(e){return JSON.parse(JSON.stringify(e))}function a2e(e){let t=F7(e.metadata)?e.metadata:{};return{title:typeof e.title==`string`?e.title:``,description:typeof e.description==`string`?e.description:``,inputKind:$7(e.input,`text`),inputDescription:e9(e.input),inputSchemaText:t9(e.input),outputKind:$7(e.output,`text`),outputDescription:e9(e.output),outputSchemaText:t9(e.output),globalStateFields:s2e(e),metadataTags:w9(t.tags),metadataUseWhen:w9(t.useWhen),metadataNotFor:w9(t.notFor),metadataExamples:w9(t.examples)}}function S9(e,t){let n=F7(e.metadata)?{...e.metadata}:{};T9(n,`tags`,t.metadataTags),T9(n,`useWhen`,t.metadataUseWhen),T9(n,`notFor`,t.metadataNotFor),T9(n,`examples`,t.metadataExamples);let r={...e,input:i9(t.inputKind,t.inputDescription,e.input,t.inputSchemaText),output:i9(t.outputKind,t.outputDescription,e.output,t.outputSchemaText)};return l2e(r,t.globalStateFields),l9(r,`title`,t.title),l9(r,`description`,t.description),Object.keys(n).length?r.metadata=n:delete r.metadata,r}function o2e(e){let t=new Set(e.map(e=>e.path.trim()).filter(Boolean)),n=`projectGoal`,r=2;for(;t.has(n);)n=`projectGoal${r}`,r+=1;return{path:n,description:``,schemaText:n9(J7),mergeKind:`none`}}function s2e(e){let t=F7(e.state)?e.state:void 0,n=t&&F7(t.global)?t.global:void 0;return n?Object.entries(n).flatMap(([e,t])=>F7(t)?[{path:e,description:typeof t.description==`string`?t.description:``,schemaText:n9(t.schema),mergeKind:c2e(t.merge)}]:[]):[]}function c2e(e){return!F7(e)||typeof e.kind!=`string`?`none`:[`replace`,`append`,`shallowMerge`].includes(e.kind)?e.kind:`none`}function l2e(e,t){let n=F7(e.state)?{...e.state}:{},r={};for(let e of t){let t=L1e(e.path);if(!t)continue;let n={schema:r9(e.schemaText)};l9(n,`description`,e.description);let i=u2e(e.mergeKind);i&&(n.merge=i),r[t]=n}Object.keys(r).length?n.global=r:delete n.global,Object.keys(n).length?e.state=n:delete e.state}function u2e(e){return e===`none`?void 0:{kind:e}}function d2e(e,t){return JSON.stringify(s2e(e))!==JSON.stringify(t.globalStateFields)}function C9(e){return typeof e==`string`?e.trim():F7(e)&&typeof e.id==`string`?e.id.trim():``}function f2e(e,t,n){let r=I7(e),i=r[t];if(!i)return e;let a={...i,promptBuilder:{kind:`promptBuilder`,language:`typescript`,id:n.id,revisionId:n.revisionId,contentHash:n.contentHash,source:n.source},metadata:p2e(i.metadata,n)};return delete a.promptTemplate,{...e,metadata:p2e(e.metadata,n),nodes:{...r,[t]:a}}}function p2e(e,t){let n=F7(e)?{...e}:{},r=Array.isArray(n.promptAssetRefs)?n.promptAssetRefs.filter(e=>typeof e==`string`&&e.trim().length>0):[];return n.promptAssetRefs=[...new Set([...r,t.id])],n.promptAssetPins=[...Array.isArray(n.promptAssetPins)?n.promptAssetPins.filter(e=>F7(e)&&e.assetId!==t.id):[],{assetId:t.id,revisionId:t.revisionId,contentHash:t.contentHash,source:t.source}],n}function w9(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`).join(`
228
+ `):``}function m2e(e){return e.split(/\r?\n|,/).map(e=>e.trim()).filter(Boolean)}function T9(e,t,n){let r=m2e(n);r.length?e[t]=r:delete e[t]}function E9({diagnostics:e}){return e.length?(0,W.jsx)(`div`,{className:`grid gap-2`,"aria-label":`Inspector picker diagnostics`,children:e.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-amber-700/70 bg-amber-950/30 p-2 text-[11px] leading-5 text-amber-100`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 font-bold text-amber-200`,children:[(0,W.jsx)(Cl,{size:12}),e.code]}),(0,W.jsx)(`div`,{className:`mt-1`,children:e.message}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-amber-200/80`,children:e.path}),(0,W.jsx)(`div`,{className:`mt-1 text-amber-200/80`,children:e.hint})]},`${e.code}:${e.registryRef}`))}):null}function D9({option:e,badge:t}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3 text-xs leading-5 text-slate-400`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-2`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`font-semibold text-slate-200`,children:e.displayName}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-slate-300`,children:e.id})]}),(0,W.jsx)(f9,{label:t})]}),e.description?(0,W.jsx)(`div`,{className:`mt-2 text-slate-500`,children:e.description}):null,e.paramsSchema?(0,W.jsx)(`div`,{className:`mt-3`,children:(0,W.jsx)(O9,{label:`paramsSchema`,schema:e.paramsSchema})}):null]})}function O9({label:e,schema:t}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#101d22] p-2`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.14em] text-slate-500`,children:e}),(0,W.jsx)(`pre`,{className:`mt-1 max-h-24 overflow-auto whitespace-pre-wrap font-mono text-[11px] leading-5 text-slate-300`,children:h2e(t)})]})}function h2e(e){return e?JSON.stringify(e,null,2):`null`}function g2e({draft:e,nodeId:t,node:n,isSaving:r,onSaveDefinition:i}){let a=(0,U.useRef)(null),[o,s]=(0,U.useState)(C9(n.promptBuilder)),[c,l]=(0,U.useState)(),[u,d]=(0,U.useState)(),[f,p]=(0,U.useState)(`idle`),[m,h]=(0,U.useState)(`saved`),[g,_]=(0,U.useState)();(0,U.useEffect)(()=>{s(C9(n.promptBuilder))},[n,t]),(0,U.useEffect)(()=>{let e=!1;return JBe(o||void 0).then(t=>{e||l(t)}).catch(()=>void 0),()=>{e=!0}},[o]),(0,U.useEffect)(()=>{let e=!1;return _(void 0),o?(p(`loading`),YBe(o).then(t=>{e||(d(t.asset),p(`loaded`))}).catch(t=>{e||(d(void 0),p(`error`),_(t instanceof Error?t.message:`Failed to load prompt asset`))}),()=>{e=!0}):(d(void 0),p(`idle`),()=>{e=!0})},[o]);let v=c?.options.find(e=>e.id===o),y=typeof n.promptTemplate==`string`?n.promptTemplate:a0e,b=u?.markdown??y,x=`${e.draftId}:${t}`,S=!!C9(n.promptBuilder),C=o.startsWith(`ui.promptAssets.`),w=`${typeof n.label==`string`&&n.label.trim()?n.label.trim():t} prompt asset`,T=(0,U.useCallback)(async n=>{try{let r=await XBe({assetId:C?o:void 0,sourceRefId:o||void 0,displayName:w,description:`Managed prompt asset for ${t} in draft ${e.draftId}.`,markdown:n});await i(f2e(e.definition,t,r.asset),`Saved prompt asset revision ${r.asset.revisionId} and updated ${t}.`,{editTrigger:`prompt_edit`}),s(r.asset.id),d(r.asset),_(`Saved ${r.asset.displayName} as revision ${r.asset.revisionId}; draft now pins ${r.asset.contentHash}.`)}catch(e){throw _(e instanceof Error?e.message:`Failed to save prompt asset revision`),e}},[e.definition,e.draftId,t,i,w,o,C]),E=async e=>{try{await a.current?.flushSave(),s(e)}catch(e){_(e instanceof Error?e.message:`Failed to save the current prompt asset before switching`)}},D=async()=>{u&&(await i(f2e(e.definition,t,u),`Updated ${t} to use prompt asset ${u.id}.`,{editTrigger:`prompt_edit`}),_(`Draft node ${t} now uses ${u.displayName} at ${u.contentHash}.`))};return(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#151f24]/70 p-3`,"aria-label":`Prompt asset Markdown editor`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Prompt asset Markdown editor`}),(0,W.jsx)(`p`,{className:`mt-1 text-[11px] leading-5 text-slate-500`,children:`Edit prompt assets with the same Markdown editor pattern as Context Files. Saving creates a managed UI asset revision, updates this draft node to a prompt asset ref, and pins the revision id plus content hash in the Pibo Workflow IR.`})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Prompt asset ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o,onChange:e=>void E(e.target.value),disabled:r,children:[(0,W.jsx)(`option`,{value:``,children:`Create managed asset from direct prompt template`}),c?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id))]})]}),(0,W.jsx)(E9,{diagnostics:c?.diagnostics??[]}),v?(0,W.jsx)(D9,{option:v,badge:v.kind===`ui`?`managed prompt asset`:`registered prompt asset`}):null,f===`error`?(0,W.jsx)(`div`,{className:`rounded-sm border border-red-900/70 bg-red-950/40 p-2 text-[11px] leading-5 text-red-200`,role:`alert`,children:g??`Failed to load prompt asset.`}):null,(0,W.jsx)(`div`,{className:`workflow-prompt-editor-frame min-w-0 rounded-sm bg-[#101d22]`,children:(0,W.jsx)(XH,{ref:a,documentKey:x,initialMarkdown:b,onPersist:T,onSaveStateChange:h,ariaLabel:`Prompt asset Markdown editor`})}),(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-[11px]`,children:[(0,W.jsx)(f9,{label:S?`promptBuilder ref`:`direct promptTemplate source`}),(0,W.jsx)(f9,{label:`Markdown save: ${m}`}),u?(0,W.jsx)(f9,{label:`${u.source} · ${u.revisionId}`}):null]}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>void D(),disabled:r||!u,children:[(0,W.jsx)(cl,{size:13}),`Use selected asset on draft`]})}),g&&f!==`error`?(0,W.jsx)(`div`,{className:`rounded-sm border border-emerald-900/60 bg-emerald-950/20 p-2 text-[11px] leading-5 text-emerald-200`,role:`status`,children:g}):null,(0,W.jsx)(`div`,{className:`text-[11px] leading-5 text-slate-500`,children:`Code/plugin prompt assets are not mutated. Editing a registered asset copies the Markdown into a managed UI prompt asset; later saves append revisions and only affect this draft or future workflow versions that reference the new revision.`})]})}function _2e({workflowId:e,workflowVersion:t}){let[n,r]=(0,U.useState)(),[i,a]=(0,U.useState)(`loading`),[o,s]=(0,U.useState)();(0,U.useEffect)(()=>{let n=!1;return a(`loading`),s(void 0),$Be({selectedWorkflowId:e,selectedWorkflowVersion:t}).then(e=>{n||(r(e),a(`loaded`))}).catch(e=>{n||(s(e instanceof Error?e.message:`Failed to load workflow viewer`),a(`error`))}),()=>{n=!0}},[e,t]);let c=(0,U.useMemo)(()=>n?.options.find(e=>e.id===n.selectedWorkflowId&&e.version===n.selectedWorkflowVersion),[n]);return i===`loading`?(0,W.jsxs)(`div`,{className:`flex w-full items-center gap-2 rounded-sm border border-slate-800 bg-[#101d22]/70 p-4 text-sm text-slate-300`,"aria-live":`polite`,children:[(0,W.jsx)(Ic,{size:16,className:`animate-spin text-[#11a4d4]`}),`Loading workflow viewer `,e,`@`,t,`…`]}):i===`error`?(0,W.jsxs)(`div`,{className:`rounded-sm border border-red-900/70 bg-red-950/40 p-4 text-sm leading-6 text-red-200`,role:`alert`,children:[(0,W.jsx)(`div`,{className:`font-bold`,children:`Could not load workflow viewer`}),(0,W.jsx)(`div`,{className:`mt-1 text-xs`,children:o??`Failed to load workflow metadata.`})]}):(0,W.jsxs)(`div`,{className:`flex w-full flex-col gap-4 rounded-sm border border-slate-800 bg-[#101d22]/70 p-4`,children:[(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:[(0,W.jsx)(fc,{size:13}),`Workflow version viewer`]}),(0,W.jsx)(`h3`,{className:`mt-1 text-lg font-bold text-slate-100`,children:c?.title??`${e}@${t}`}),(0,W.jsx)(`p`,{className:`mt-2 max-w-2xl text-xs leading-5 text-slate-500`,children:`This separate viewer is the nested workflow navigation target. Parent graphs do not inline-expand nested workflow internals in V2.`})]}),(0,W.jsx)(`a`,{className:`shrink-0 rounded-sm border border-slate-700 px-3 py-1.5 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100`,href:`/apps/chat/workflows`,children:`Back to Workflows`})]}),c?(0,W.jsx)(v2e,{option:c}):null,(0,W.jsx)(y2e,{diagnostics:n?.diagnostics??[],ariaLabel:`Workflow viewer diagnostics`}),(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3 text-[11px] leading-5 text-slate-500`,children:`Viewer mode shows registry metadata and navigation context only. To change a child workflow, open its own UI draft or duplicate/edit a published workflow from the Workflow Library.`})]})}function v2e({option:e}){return(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3 text-xs leading-5 text-slate-400`,children:[(0,W.jsxs)(`div`,{className:`font-semibold text-slate-200`,children:[`Selected workflow: `,e.title]}),(0,W.jsxs)(`div`,{className:`mt-1 font-mono text-[11px] text-slate-300`,children:[e.id,`@`,e.version]}),e.description?(0,W.jsx)(`div`,{className:`mt-2 text-slate-500`,children:e.description}):null,(0,W.jsxs)(`div`,{className:`mt-3 flex flex-wrap gap-2 text-[11px]`,children:[(0,W.jsx)(f9,{label:`${e.source} source`}),(0,W.jsx)(f9,{label:e.status}),e.tags.map(e=>(0,W.jsx)(f9,{label:e},e))]})]})}function y2e({diagnostics:e,ariaLabel:t}){return e.length?(0,W.jsx)(`div`,{className:`grid gap-2`,"aria-label":t,children:e.map(e=>(0,W.jsxs)(`div`,{className:`rounded-sm border border-amber-700/70 bg-amber-950/30 p-3 text-xs leading-5 text-amber-100`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 font-bold text-amber-200`,children:[(0,W.jsx)(Cl,{size:13}),e.code]}),(0,W.jsx)(`div`,{className:`mt-1`,children:e.message}),(0,W.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-amber-200/80`,children:e.path}),(0,W.jsx)(`div`,{className:`mt-1 text-amber-200/80`,children:e.hint})]},`${e.code}:${e.registryRef}`))}):null}function b2e({draft:e,selectedElement:t,nodeIds:n,isSaving:r,onSaveDefinition:i,onDraftDefinitionChange:a}){let o=t?.type===`node`?I7(e.definition)[t.id]:void 0,s=t?.type===`edge`?L7(e.definition)[t.id]:void 0;return(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Workflow inspectors`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:`Workflow inspectors`}),(0,W.jsx)(`p`,{className:`mt-1 text-[11px] leading-5 text-slate-500`,children:`Inspector saves update the same Pibo Workflow IR draft as the graph canvas; XState remains projection-only.`})]}),(0,W.jsx)(C2e,{draft:e,isSaving:r,onSaveDefinition:i,onDraftDefinitionChange:a}),t?.type===`node`&&o?(0,W.jsx)(w2e,{draft:e,nodeId:t.id,node:o,isSaving:r,onSaveDefinition:i}):t?.type===`edge`&&s?(0,W.jsx)(O2e,{draft:e,edgeId:t.id,edge:s,nodeIds:n,isSaving:r,onSaveDefinition:i}):(0,W.jsx)(`div`,{className:`rounded-sm border border-dashed border-slate-700 bg-[#151f24]/70 p-3 text-[11px] leading-5 text-slate-500`,children:`Select a canvas node or edge to open the node or edge inspector. Workflow settings remain editable at all times.`})]})}function x2e(e,t){return e.filter(e=>e.nodeId===t||e.path?.startsWith(`$.nodes.${t}`))}function S2e(e,t){return e.filter(e=>e.edgeId===t||e.path?.startsWith(`$.edges.${t}`))}function C2e({draft:e,isSaving:t,onSaveDefinition:n,onDraftDefinitionChange:r}){let[i,a]=(0,U.useState)(()=>a2e(e.definition));(0,U.useEffect)(()=>{a(a2e(e.definition))},[e.definition]);let o=(t,n)=>{a(i=>{let a={...i,[t]:n};return r?.(S9(e.definition,a)),a})};return(0,W.jsxs)(`details`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3`,open:!0,children:[(0,W.jsx)(`summary`,{className:`cursor-pointer text-xs font-bold text-slate-200`,children:`Workflow settings inspector`}),(0,W.jsxs)(`div`,{className:`mt-3 grid gap-3 text-xs`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Workflow title`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:i.title,onChange:e=>o(`title`,e.target.value)})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Workflow description`}),(0,W.jsx)(`textarea`,{className:`min-h-20 rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:i.description,onChange:e=>o(`description`,e.target.value)})]}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsx)(A2e,{label:`Workflow input port`,kind:i.inputKind,description:i.inputDescription,schemaText:i.inputSchemaText,onKindChange:e=>o(`inputKind`,e),onDescriptionChange:e=>o(`inputDescription`,e),onSchemaChange:e=>o(`inputSchemaText`,e)}),(0,W.jsx)(A2e,{label:`Workflow output port`,kind:i.outputKind,description:i.outputDescription,schemaText:i.outputSchemaText,onKindChange:e=>o(`outputKind`,e),onDescriptionChange:e=>o(`outputDescription`,e),onSchemaChange:e=>o(`outputSchemaText`,e)})]}),(0,W.jsx)(M2e,{fields:i.globalStateFields,onAddField:()=>{a(t=>{let n={...t,globalStateFields:[...t.globalStateFields,o2e(t.globalStateFields)]};return r?.(S9(e.definition,n)),n})},onRemoveField:t=>{a(n=>{let i={...n,globalStateFields:n.globalStateFields.filter((e,n)=>n!==t)};return r?.(S9(e.definition,i)),i})},onUpdateField:(t,n,i)=>{a(a=>{let o={...a,globalStateFields:a.globalStateFields.map((e,r)=>r===t?{...e,[n]:i}:e)};return r?.(S9(e.definition,o)),o})}}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsx)(A9,{label:`metadata.tags`,value:i.metadataTags,onChange:e=>o(`metadataTags`,e)}),(0,W.jsx)(A9,{label:`metadata.useWhen`,value:i.metadataUseWhen,onChange:e=>o(`metadataUseWhen`,e)}),(0,W.jsx)(A9,{label:`metadata.notFor`,value:i.metadataNotFor,onChange:e=>o(`metadataNotFor`,e)}),(0,W.jsx)(A9,{label:`metadata.examples`,value:i.metadataExamples,onChange:e=>o(`metadataExamples`,e)})]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>{n(S9(e.definition,i),`Saved workflow settings inspector edits to the draft IR.`,{editTrigger:d2e(e.definition,i)?`state_edit`:`schema_edit`})},disabled:t,children:[t?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(cl,{size:13}),`Save workflow settings`]})]})]})}function w2e({draft:e,nodeId:t,node:n,isSaving:r,onSaveDefinition:i}){let[a,o]=(0,U.useState)(()=>R1e(n)),[s,c]=(0,U.useState)(),[l,u]=(0,U.useState)(),[d,f]=(0,U.useState)(),[p,m]=(0,U.useState)(),[h,g]=(0,U.useState)(),_=R7(n),v=x2e(e.diagnostics,t),y=d?.options.find(e=>e.id===(d?.selectedRefId??a.adapterRef)),b=(0,U.useMemo)(()=>new Set(a.humanActionRefs.map(e=>e.id)),[a.humanActionRefs]);(0,U.useEffect)(()=>{o(R1e(n))},[n,t]),(0,U.useEffect)(()=>{if(_!==`agent`)return;let e=!1;return Z2(a.profileId||void 0).then(t=>{e||c(t)}).catch(()=>void 0),()=>{e=!0}},[_,a.profileId]),(0,U.useEffect)(()=>{if(_!==`code`)return;let e=!1;return KBe(a.handlerId||void 0).then(t=>{e||u(t)}).catch(()=>void 0),()=>{e=!0}},[_,a.handlerId]),(0,U.useEffect)(()=>{if(_!==`adapter`)return;let e=!1;return Q2(a.adapterRef||void 0).then(t=>{e||f(t)}).catch(()=>void 0),()=>{e=!0}},[_,a.adapterRef]),(0,U.useEffect)(()=>{if(_!==`workflow`)return;let e=!1,t=_0e(a.workflowVersionKey);return e4({selectedWorkflowId:t?.workflowId,selectedWorkflowVersion:t?.workflowVersion}).then(t=>{e||m(t)}).catch(()=>void 0),()=>{e=!0}},[_,a.workflowVersionKey]),(0,U.useEffect)(()=>{if(_!==`human`)return;let e=!1;return $2().then(t=>{e||g(t)}).catch(()=>void 0),()=>{e=!0}},[_]);let x=(e,t)=>{o(n=>({...n,[e]:t}))},S=(e,t)=>{o(n=>({...n,humanActionRefs:X1e(n.humanActionRefs,e,t)}))};return(0,W.jsxs)(`details`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3`,open:!0,children:[(0,W.jsxs)(`summary`,{className:`cursor-pointer text-xs font-bold text-slate-200`,children:[`Node inspector: `,t]}),(0,W.jsxs)(`div`,{className:`mt-3 grid gap-3 text-xs`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2 text-[11px]`,children:[(0,W.jsx)(f9,{label:`${_} node`}),(0,W.jsx)(f9,{label:`${v.length} diagnostics`})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Node label`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:a.label,onChange:e=>x(`label`,e.target.value)})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Node description`}),(0,W.jsx)(`textarea`,{className:`min-h-16 rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:a.description,onChange:e=>x(`description`,e.target.value)})]}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsx)(j2e,{label:`Node input port`,kind:a.inputKind,description:a.inputDescription,schemaText:a.inputSchemaText,onKindChange:e=>x(`inputKind`,e),onDescriptionChange:e=>x(`inputDescription`,e),onSchemaChange:e=>x(`inputSchemaText`,e)}),(0,W.jsx)(j2e,{label:`Node output port`,kind:a.outputKind,description:a.outputDescription,schemaText:a.outputSchemaText,onKindChange:e=>x(`outputKind`,e),onDescriptionChange:e=>x(`outputDescription`,e),onSchemaChange:e=>x(`outputSchemaText`,e)})]}),(0,W.jsx)(T2e,{label:`Node`,definition:e.definition,value:a.stateAccess,onChange:e=>x(`stateAccess`,e)}),_===`agent`?(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Agent node fields`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Agent profile ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:s?.selectedProfileId??a.profileId,onChange:e=>x(`profileId`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select a non-archived profile`}),s?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:v0e(e)},e.id))]})]}),(0,W.jsx)(E9,{diagnostics:s?.diagnostics??[]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Prompt template`}),(0,W.jsx)(`textarea`,{className:`min-h-24 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 font-mono text-slate-100`,value:a.promptTemplate,onChange:e=>x(`promptTemplate`,e.target.value)}),(0,W.jsxs)(`span`,{className:`text-[11px] font-normal leading-5 text-slate-500`,children:[`Saving direct prompt text writes `,(0,W.jsx)(`code`,{className:`rounded bg-slate-900 px-1 text-slate-300`,children:`promptTemplate`}),` on this Pibo Workflow IR node.`]})]}),(0,W.jsx)(g2e,{draft:e,nodeId:t,node:n,isSaving:r,onSaveDefinition:i})]}):null,_===`code`?(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Code node fields`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Registered code handler`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:l?.selectedHandlerId??a.handlerId,onChange:e=>x(`handlerId`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select a registered handler ref`}),l?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:y0e(e)},e.id))]})]}),(0,W.jsx)(E9,{diagnostics:l?.diagnostics??[]})]}):null,_===`adapter`?(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Adapter node fields`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Registered adapter ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:d?.selectedRefId??a.adapterRef,onChange:e=>x(`adapterRef`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select a registered adapter ref`}),d?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id))]})]}),(0,W.jsx)(E9,{diagnostics:d?.diagnostics??[]}),y?.paramsSchema?(0,W.jsx)(j9,{label:`Adapter params JSON`,schema:y.paramsSchema,value:a.adapterParamsText,onChange:e=>x(`adapterParamsText`,e)}):null,(0,W.jsx)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-2 text-[11px] leading-5 text-slate-500`,children:`Adapter nodes store only a registered deterministic adapter ref. Inline transformation code and hidden LLM coercion are not exposed by the UI.`})]}):null,_===`workflow`?(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Workflow node fields`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Nested workflow ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:p?.selectedWorkflowId&&p.selectedWorkflowVersion?g0e(p.selectedWorkflowId,p.selectedWorkflowVersion):a.workflowVersionKey,onChange:e=>x(`workflowVersionKey`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select a published workflow version`}),p?.options.map(e=>(0,W.jsx)(`option`,{value:d9(e),children:x0e(e)},d9(e)))]})]}),(0,W.jsx)(y2e,{diagnostics:p?.diagnostics??[],ariaLabel:`Workflow node diagnostics`})]}):null,_===`human`?(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Human node fields`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Human prompt`}),(0,W.jsx)(`textarea`,{className:`min-h-24 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:a.humanPrompt,onChange:e=>x(`humanPrompt`,e.target.value)})]}),(0,W.jsx)(k9,{label:`Human node resume payload schema JSON`,value:a.humanSchemaText,onChange:e=>x(`humanSchemaText`,e)}),(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#151f24]/70 p-3`,"aria-label":`Human action choices`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Registered action choices`}),(0,W.jsx)(`p`,{className:`mt-1 text-[11px] leading-5 text-slate-500`,children:`Actions are selected from the Workflow Registry. The label, action kind, and payload requirements come from picker metadata.`})]}),h?.options.length?h.options.map(e=>(0,W.jsxs)(`label`,{className:`grid gap-1 rounded-sm border border-slate-800 bg-[#101d22] p-2 text-slate-300`,children:[(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-2 font-semibold`,children:[(0,W.jsx)(`input`,{type:`checkbox`,className:`h-3.5 w-3.5 accent-[#11a4d4]`,checked:b.has(e.id),onChange:t=>S(e,t.target.checked)}),(0,W.jsx)(`span`,{children:e.displayName}),(0,W.jsx)(f9,{label:`kind: ${e.kind??`registered`}`})]}),(0,W.jsx)(`span`,{className:`text-[11px] font-normal leading-5 text-slate-500`,children:e.description??e.id}),(0,W.jsxs)(`span`,{className:`text-[11px] font-normal leading-5 text-slate-500`,children:[`Payload requirements: `,e.paramsSchema?JSON.stringify(e.paramsSchema):`none`]})]},e.id)):(0,W.jsx)(`div`,{className:`rounded-sm border border-dashed border-slate-700 p-2 text-[11px] leading-5 text-slate-500`,children:`No registered human actions are available from the picker.`}),(0,W.jsx)(E9,{diagnostics:h?.diagnostics??[]}),(0,W.jsx)(`div`,{className:`flex flex-wrap gap-2 text-[11px]`,"aria-label":`Selected human action refs`,children:a.humanActionRefs.length?a.humanActionRefs.map(e=>(0,W.jsx)(f9,{label:`${e.id}${e.kind?` (${e.kind})`:``}`},`${e.id}:${e.kind??``}`)):(0,W.jsx)(`span`,{className:`text-slate-500`,children:`No human action refs selected.`})})]}),(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#151f24]/70 p-3 md:grid-cols-[1fr_1fr]`,"aria-label":`Human node timeout`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Timeout kind`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:a.humanTimeoutKind,onChange:e=>x(`humanTimeoutKind`,e.target.value),children:[(0,W.jsx)(`option`,{value:`none`,children:`No timeout`}),(0,W.jsx)(`option`,{value:`milliseconds`,children:`Milliseconds`}),(0,W.jsx)(`option`,{value:`seconds`,children:`Seconds`}),(0,W.jsx)(`option`,{value:`minutes`,children:`Minutes`}),(0,W.jsx)(`option`,{value:`iso8601`,children:`ISO-8601 duration`})]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Timeout value`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,type:a.humanTimeoutKind===`iso8601`?`text`:`number`,min:a.humanTimeoutKind===`iso8601`?void 0:1,placeholder:a.humanTimeoutKind===`iso8601`?`PT1H`:`60`,value:a.humanTimeoutValue,onChange:e=>x(`humanTimeoutValue`,e.target.value),disabled:a.humanTimeoutKind===`none`})]})]})]}):null,(0,W.jsx)(S0e,{diagnostics:v,emptyLabel:`No diagnostics for selected node.`}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>{let r=z1e(e.definition,t,a),o=j1e(n,a)?`state_edit`:_===`agent`||_===`human`?`prompt_edit`:`schema_edit`;i(r,`Saved node inspector edits for ${t}.`,{editTrigger:o})},disabled:r,children:[r?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(cl,{size:13}),`Save node inspector`]})]})]})}function T2e({label:e,definition:t,value:n,onChange:r,allowEdgeWrites:i=!1}){let a=F1e(t,n.readScope,[...n.reads,...n.writes]),o=i?Y7:A1e,s=F1e(t,n.writeScope,[...n.reads,...n.writes]),c=!!n.readPath.trim(),l=!!n.writePath.trim()&&(i||n.writeScope!==`edge`),u=(e,t)=>r({...n,[e]:t}),d=e=>{let t=e===`reads`?n.readScope:n.writeScope,i=(e===`reads`?n.readPath:n.writePath).trim();if(!i)return;let a=`${t}.${i}`,o=n[e];o.includes(a)||r({...n,[e]:[...o,a]})},f=(e,t)=>r({...n,[e]:n[e].filter(e=>e!==t)});return(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22]/70 p-3`,"aria-label":`${e} simple state mapping controls`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:[e,` simple state mappings`]}),(0,W.jsxs)(`p`,{className:`mt-1 text-[11px] leading-5 text-slate-500`,children:[`Add simple scoped state reads and writes as Pibo Workflow IR `,(0,W.jsx)(`code`,{className:`rounded bg-slate-900 px-1 text-slate-300`,children:`state.reads`}),` and `,(0,W.jsx)(`code`,{className:`rounded bg-slate-900 px-1 text-slate-300`,children:`state.writes`}),` arrays. Complex state mapping DSLs remain raw Workflow IR only.`]})]}),(0,W.jsxs)(`div`,{className:`grid gap-2 md:grid-cols-[0.7fr_1fr_auto]`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Read scope`}),(0,W.jsx)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:n.readScope,onChange:e=>u(`readScope`,e.target.value),children:Y7.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))})]}),(0,W.jsx)(E2e,{label:`Read path`,value:n.readPath,options:a,onChange:e=>u(`readPath`,e)}),(0,W.jsx)(`button`,{type:`button`,className:`self-end rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>d(`reads`),disabled:!c,children:`Add read`})]}),(0,W.jsx)(D2e,{label:`Reads`,entries:n.reads,onRemove:e=>f(`reads`,e)}),(0,W.jsxs)(`div`,{className:`grid gap-2 md:grid-cols-[0.7fr_1fr_auto]`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Write scope`}),(0,W.jsx)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:n.writeScope,onChange:e=>u(`writeScope`,e.target.value),children:o.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))})]}),(0,W.jsx)(E2e,{label:`Write path`,value:n.writePath,options:s,onChange:e=>u(`writePath`,e)}),(0,W.jsx)(`button`,{type:`button`,className:`self-end rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>d(`writes`),disabled:!l,children:`Add write`})]}),(0,W.jsx)(D2e,{label:`Writes`,entries:n.writes,onRemove:e=>f(`writes`,e)}),n.writeScope===`global`&&!I1e(t).length?(0,W.jsx)(`div`,{className:`rounded-sm border border-amber-900/60 bg-amber-950/20 p-2 text-[11px] leading-5 text-amber-100`,children:`Declare global state fields in the workflow settings inspector before selecting global read/write paths.`}):null]})}function E2e({label:e,value:t,options:n,onChange:r}){let i=t&&!n.includes(t)?[t,...n]:n;return(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:t,onChange:e=>r(e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select path`}),i.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))]})]})}function D2e({label:e,entries:t,onRemove:n}){return(0,W.jsxs)(`div`,{className:`grid gap-1`,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-semibold text-slate-400`,children:e}),t.length?(0,W.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:t.map(e=>(0,W.jsxs)(`button`,{type:`button`,className:`rounded-full border border-slate-700 px-2 py-1 text-[11px] text-slate-300 transition hover:border-red-500/60 hover:text-red-100`,onClick:()=>n(e),title:`Remove ${e}`,children:[e,` ×`]},e))}):(0,W.jsxs)(`div`,{className:`text-[11px] text-slate-500`,children:[`No `,e.toLowerCase(),` declared.`]})]})}function O2e({draft:e,edgeId:t,edge:n,nodeIds:r,isSaving:i,onSaveDefinition:a}){let[o,s]=(0,U.useState)(()=>B1e(n,r)),[c,l]=(0,U.useState)(),[u,d]=(0,U.useState)(),[f,p]=(0,U.useState)(!1),m=S2e(e.diagnostics,t),h=J0e(e.definition,n),g=m.some(e=>e.code===`WorkflowGraphError.incompatibleEdgePorts`),_=c?.options.find(e=>e.id===(c?.selectedRefId??o.guardHandler)),v=u?.options.find(e=>e.id===(u?.selectedRefId??o.adapterRef));(0,U.useEffect)(()=>{s(B1e(n,r))},[n,t,r]),(0,U.useEffect)(()=>{p(!1)},[t]),(0,U.useEffect)(()=>{let e=!1;return qBe(o.guardHandler||void 0).then(t=>{e||l(t)}).catch(()=>void 0),()=>{e=!0}},[o.guardHandler]),(0,U.useEffect)(()=>{let e=!1;return Q2(o.adapterRef||void 0).then(t=>{e||d(t)}).catch(()=>void 0),()=>{e=!0}},[o.adapterRef]);let y=(e,t)=>{s(n=>({...n,[e]:t}))},b=()=>{let r=V1e(e.definition,t,o),i=M1e(n.state,o.stateAccess)?`state_edit`:`edge_edit`;a(r,`Saved edge inspector edits for ${t}.`,{editTrigger:i})};return(0,W.jsxs)(`details`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3`,open:!0,children:[(0,W.jsxs)(`summary`,{className:`cursor-pointer text-xs font-bold text-slate-200`,children:[`Edge inspector: `,t]}),(0,W.jsxs)(`div`,{className:`mt-3 grid gap-3 text-xs`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap gap-2 text-[11px]`,children:[(0,W.jsx)(f9,{label:`${o.kind} edge`}),(0,W.jsx)(f9,{label:`${m.length} diagnostics`})]}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Source node`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.sourceNodeId,onChange:e=>y(`sourceNodeId`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select source`}),r.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Target node`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.targetNodeId,onChange:e=>y(`targetNodeId`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`Select target`}),r.map(e=>(0,W.jsx)(`option`,{value:e,children:e},e))]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Source port id`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.sourcePortId,onChange:e=>y(`sourcePortId`,e.target.value),placeholder:`default`})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Target port id`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.targetPortId,onChange:e=>y(`targetPortId`,e.target.value),placeholder:`default`})]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Edge kind`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.kind,onChange:e=>y(`kind`,e.target.value),children:[(0,W.jsx)(`option`,{value:`data`,children:`data`}),(0,W.jsx)(`option`,{value:`control`,children:`control`}),(0,W.jsx)(`option`,{value:`error`,children:`error`}),(0,W.jsx)(`option`,{value:`resume`,children:`resume`})]})]}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Guard ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:c?.selectedRefId??o.guardHandler,onChange:e=>y(`guardHandler`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`No guard`}),c?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id))]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Guard priority`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:o.guardPriority,onChange:e=>y(`guardPriority`,e.target.value),placeholder:`optional integer`})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300 md:col-span-2`,children:[(0,W.jsx)(`span`,{children:`Edge adapter ref`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:u?.selectedRefId??o.adapterRef,onChange:e=>y(`adapterRef`,e.target.value),children:[(0,W.jsx)(`option`,{value:``,children:`No edge adapter`}),u?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id))]})]})]}),_?.paramsSchema?(0,W.jsx)(j9,{label:`Guard params JSON`,schema:_.paramsSchema,value:o.guardParamsText,onChange:e=>y(`guardParamsText`,e)}):null,v?.paramsSchema?(0,W.jsx)(j9,{label:`Edge adapter params JSON`,schema:v.paramsSchema,value:o.adapterParamsText,onChange:e=>y(`adapterParamsText`,e)}):null,(0,W.jsx)(T2e,{label:`Edge`,definition:e.definition,value:o.stateAccess,onChange:e=>y(`stateAccess`,e),allowEdgeWrites:!0}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border px-3 py-2 text-xs font-semibold transition disabled:cursor-not-allowed disabled:opacity-50 ${g?`border-amber-600/70 text-amber-100 hover:border-amber-400`:`border-slate-700 text-slate-300 hover:border-[#11a4d4]/60 hover:text-slate-100`}`,onClick:()=>p(!0),disabled:i||!h.sourcePort||!h.targetPort,children:[(0,W.jsx)(Mc,{size:13}),g?`Fix incompatible edge with adapter`:`Open compatible edge adapter dialog`]}),f?(0,W.jsx)(k2e,{draft:e,edgeId:t,edge:n,edgePortDetails:h,isSaving:i,onClose:()=>p(!1),onSaveDefinition:a}):null,(0,W.jsx)(E9,{diagnostics:[...c?.diagnostics??[],...u?.diagnostics??[]]}),(0,W.jsx)(S0e,{diagnostics:m,emptyLabel:`No diagnostics for selected edge.`}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:b,disabled:i||!o.sourceNodeId||!o.targetNodeId,children:[i?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):(0,W.jsx)(cl,{size:13}),`Save edge inspector`]})]})]})}function k2e({draft:e,edgeId:t,edge:n,edgePortDetails:r,isSaving:i,onClose:a,onSaveDefinition:o}){let[s,c]=(0,U.useState)(),[l,u]=(0,U.useState)(Y0e(n)),[d,f]=(0,U.useState)(`loading`),[p,m]=(0,U.useState)();(0,U.useEffect)(()=>{let e=!1;return f(`loading`),m(void 0),Q2(l||void 0).then(t=>{e||(c(t),u(e=>e||(t.options[0]?.id??``)),f(`loaded`))}).catch(t=>{e||(m(t instanceof Error?t.message:`Failed to load compatible adapters`),f(`error`))}),()=>{e=!0}},[l]);let h=s?.options.find(e=>e.id===l),g=!!(h&&r.sourcePort&&r.targetPort&&d===`loaded`&&!i),_=async()=>{l&&(await o(X0e(e.definition,t,l),`Applied ${l} as edge adapter for ${t}.`,{editTrigger:`edge_edit`}),a())},v=async()=>{l&&(await o(Z0e(e.definition,t,l),`Inserted adapter node for ${t} using ${l}.`,{editTrigger:`graph_edit`}),a())};return(0,W.jsx)(AX,{title:`Choose a registered adapter for ${t}`,description:`The dialog shows the source output and target input schemas from the Pibo Workflow IR.`,onClose:a,closeLabel:`Close compatible edge adapter dialog`,closeDisabled:i,maxWidthClassName:`max-w-3xl`,children:(0,W.jsxs)(`div`,{className:`grid gap-4 p-4`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] font-bold uppercase tracking-[0.16em] text-[#11a4d4]`,children:[(0,W.jsx)(Mc,{size:13}),`Compatible edge adapter dialog`]}),(0,W.jsx)(`p`,{className:`max-w-2xl text-xs leading-5 text-slate-500`,children:`Use a registered adapter as an explicit edge adapter, or insert a visible adapter node between the endpoints.`}),(0,W.jsxs)(`div`,{className:`grid gap-3`,children:[(0,W.jsx)(O9,{label:`From schema${r.sourceNodeId?` (${r.sourceNodeId})`:``}`,schema:r.sourcePort??null}),(0,W.jsx)(O9,{label:`To schema${r.targetNodeId?` (${r.targetNodeId})`:``}`,schema:r.targetPort??null})]}),(0,W.jsx)(`div`,{className:`rounded-sm border p-3 text-xs leading-5 ${r.directlyCompatible?`border-emerald-900/60 bg-emerald-950/20 text-emerald-200`:`border-amber-700/70 bg-amber-950/30 text-amber-100`}`,children:r.directlyCompatible?`These ports are directly compatible. An adapter is optional and remains explicit if selected.`:`These ports are not directly compatible. Select a registered adapter instead of hidden LLM coercion or inline transformation code.`}),(0,W.jsxs)(`div`,{className:`grid gap-3 text-xs`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Compatible registered adapter`}),(0,W.jsxs)(`select`,{"aria-label":`Compatible registered adapter`,className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:l,onChange:e=>u(e.target.value),disabled:d===`loading`||d===`error`||i,children:[(0,W.jsx)(`option`,{value:``,children:`Select a registered adapter ref`}),s?.options.map(e=>(0,W.jsx)(`option`,{value:e.id,children:u9(e)},e.id))]})]}),d===`error`?(0,W.jsx)(`div`,{className:`rounded-sm border border-red-900/70 bg-red-950/40 p-3 text-xs leading-5 text-red-200`,role:`alert`,children:p??`Failed to load compatible adapters.`}):null,(0,W.jsx)(E9,{diagnostics:s?.diagnostics??[]}),h?(0,W.jsx)(D9,{option:h,badge:`selected adapter`}):null,(0,W.jsxs)(`div`,{className:`grid gap-2`,"aria-label":`Compatible adapter candidates`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Compatible adapter candidates`}),s?.options.map(e=>(0,W.jsx)(D9,{option:e,badge:`compatible adapter`},e.id))]}),(0,W.jsxs)(`div`,{className:`grid gap-2`,children:[(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>void _(),disabled:!g,children:[(0,W.jsx)(Mc,{size:13}),`Use as edge adapter`]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-[#11a4d4]/50 px-3 py-2 text-xs font-semibold text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>void v(),disabled:!g,children:[(0,W.jsx)(tl,{size:13}),`Insert adapter node`]})]}),(0,W.jsxs)(`div`,{className:`rounded-sm border border-slate-800 bg-[#151f24]/70 p-3 text-[11px] leading-5 text-slate-500`,children:[`Both actions persist Pibo Workflow IR only. Edge adapters store `,(0,W.jsx)(`code`,{className:`rounded bg-slate-900 px-1 text-slate-300`,children:`adapter.transform.id`}),`; inserted adapter nodes store a visible deterministic adapter handler ref.`]})]})]})})}function A2e({label:e,kind:t,description:n,schemaText:r,onKindChange:i,onDescriptionChange:a,onSchemaChange:o}){return(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#101d22] p-2`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:t,onChange:e=>i(e.target.value),children:[(0,W.jsx)(`option`,{value:`text`,children:`text`}),(0,W.jsx)(`option`,{value:`json`,children:`json`})]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Description`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:n,onChange:e=>a(e.target.value),placeholder:`Optional port description`})]}),t===`json`?(0,W.jsx)(k9,{label:`${e} raw JSON schema`,value:r,onChange:o}):null]})}function j2e({label:e,kind:t,description:n,schemaText:r,onKindChange:i,onDescriptionChange:a,onSchemaChange:o}){return(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#101d22] p-2`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:t,onChange:e=>i(e.target.value),children:[(0,W.jsx)(`option`,{value:`none`,children:`inherit/default`}),(0,W.jsx)(`option`,{value:`text`,children:`text`}),(0,W.jsx)(`option`,{value:`json`,children:`json`})]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Description`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 text-slate-100`,value:n,onChange:e=>a(e.target.value),disabled:t===`none`,placeholder:`Optional port description`})]}),t===`json`?(0,W.jsx)(k9,{label:`${e} raw JSON schema`,value:r,onChange:o}):null]})}function M2e({fields:e,onAddField:t,onRemoveField:n,onUpdateField:r}){return(0,W.jsxs)(`div`,{className:`grid gap-3 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Workflow global state fields`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Workflow global state fields`}),(0,W.jsx)(`p`,{className:`mt-1 text-[11px] leading-5 text-slate-500`,children:`Declare simple global state paths for node and edge state mapping dropdowns. State schema changes run draft validation and may invalidate connected graph diagnostics without blocking draft save.`})]}),e.length?e.map((e,t)=>(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#151f24]/70 p-2`,children:[(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Global state path`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:e.path,onChange:e=>r(t,`path`,e.target.value),placeholder:`projectGoal`})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:`Merge policy`}),(0,W.jsxs)(`select`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:e.mergeKind,onChange:e=>r(t,`mergeKind`,e.target.value),children:[(0,W.jsx)(`option`,{value:`none`,children:`No merge policy`}),(0,W.jsx)(`option`,{value:`replace`,children:`replace`}),(0,W.jsx)(`option`,{value:`append`,children:`append`}),(0,W.jsx)(`option`,{value:`shallowMerge`,children:`shallowMerge`})]})]}),(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300 md:col-span-2`,children:[(0,W.jsx)(`span`,{children:`Description`}),(0,W.jsx)(`input`,{className:`rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:e.description,onChange:e=>r(t,`description`,e.target.value),placeholder:`Optional state description`})]}),(0,W.jsx)(`div`,{className:`md:col-span-2`,children:(0,W.jsx)(k9,{label:`Global state ${e.path||t+1} schema JSON`,value:e.schemaText,onChange:e=>r(t,`schemaText`,e)})}),(0,W.jsx)(`button`,{type:`button`,className:`rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-red-500/70 hover:text-red-100`,onClick:()=>n(t),children:`Remove state field`})]},`${t}:${e.path}`)):(0,W.jsx)(`div`,{className:`rounded-sm border border-dashed border-slate-700 p-2 text-[11px] leading-5 text-slate-500`,children:`No global state fields declared. Local and edge path dropdowns remain available for simple node-local state and edge payload access.`}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex items-center justify-center gap-2 rounded-sm border border-slate-700 px-3 py-2 text-xs font-semibold text-slate-300 transition hover:border-[#11a4d4]/60 hover:text-slate-100`,onClick:t,children:[(0,W.jsx)(tl,{size:13}),`Add global state field`]})]})}function k9({label:e,value:t,onChange:n}){return(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsx)(`textarea`,{className:`min-h-36 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 font-mono text-[11px] leading-5 text-slate-100`,value:t,onChange:e=>n(e.target.value),placeholder:JSON.stringify(J7,null,2),spellCheck:!1,"aria-label":e}),(0,W.jsx)(`span`,{className:`text-[11px] font-normal leading-5 text-slate-500`,children:`Raw JSON Schema subset only. Unsupported keywords return workflow diagnostics; no Zod, AJV, or form-builder schema layer is introduced.`})]})}function A9({label:e,value:t,onChange:n}){return(0,W.jsxs)(`label`,{className:`grid gap-1 font-semibold text-slate-300`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsx)(`textarea`,{className:`min-h-16 rounded-sm border border-slate-700 bg-[#101d22] px-2 py-1.5 text-slate-100`,value:t,onChange:e=>n(e.target.value),placeholder:`One value per line`})]})}function j9({label:e,schema:t,value:n,onChange:r}){return(0,W.jsxs)(`div`,{className:`grid gap-2 rounded-sm border border-slate-800 bg-[#101d22] p-2`,"aria-label":e,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.14em] text-slate-500`,children:e}),(0,W.jsx)(O9,{label:`paramsSchema`,schema:t}),(0,W.jsx)(`textarea`,{className:`min-h-24 rounded-sm border border-slate-700 bg-[#151f24] px-2 py-1.5 font-mono text-[11px] leading-5 text-slate-100`,value:n,onChange:e=>r(e.target.value),placeholder:`{}`,"aria-label":`${e} value`}),(0,W.jsx)(`div`,{className:`text-[11px] leading-5 text-slate-500`,children:`Params save as data on the selected registry ref. No inline code path is created.`})]})}function N2e({open:e,onClose:t,onCreate:n}){let[r,i]=(0,U.useState)(``),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)(!1),[d,f]=(0,U.useState)(),p=(0,U.useRef)(null);if((0,U.useEffect)(()=>{e&&(i(``),o(!1),c(!1),u(!1),f(void 0))},[e]),!e)return null;let m=a||s?P2e(r):void 0;return(0,W.jsx)(AX,{title:`Create workflow`,description:`Create a new editable workflow draft.`,onClose:t,initialFocusRef:p,closeLabel:`Cancel workflow creation`,closeDisabled:l,children:(0,W.jsxs)(`form`,{className:`grid gap-4 p-4`,onSubmit:async e=>{if(e.preventDefault(),o(!0),f(void 0),P2e(r)){p.current?.focus();return}u(!0);try{await n(r.trim()),u(!1),t()}catch(e){f(JQ(e)),u(!1)}},noValidate:!0,children:[(0,W.jsxs)(`label`,{className:`block text-xs font-semibold text-slate-300`,children:[(0,W.jsxs)(`span`,{children:[`Name `,(0,W.jsx)(`span`,{className:`ml-1 text-[#8bdcf4]`,children:`required`})]}),(0,W.jsx)(`input`,{ref:p,id:`create-workflow-name`,value:r,onChange:e=>{i(e.target.value),f(void 0)},onBlur:()=>c(!0),required:!0,maxLength:160,"aria-invalid":!!m,"aria-describedby":m?`create-workflow-name-help create-workflow-name-error`:`create-workflow-name-help`,className:`mt-1.5 h-9 w-full rounded-sm border border-slate-700 bg-[#0e1116] px-3 text-sm text-slate-100 outline-none focus:border-[#11a4d4] focus:ring-1 focus:ring-[#11a4d4]`}),(0,W.jsx)(`div`,{id:`create-workflow-name-help`,className:`mt-1 text-[11px] text-slate-500`,children:`Maximum 160 characters.`}),m?(0,W.jsx)(`div`,{id:`create-workflow-name-error`,className:`mt-1 text-[11px] text-red-300`,role:`alert`,children:m}):null]}),d?(0,W.jsx)(`div`,{className:`rounded-sm border border-red-900/70 bg-red-950/30 px-3 py-2 text-xs text-red-200`,role:`alert`,children:d}):null,(0,W.jsxs)(`div`,{className:`flex justify-end gap-2 border-t border-slate-800 pt-3`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:t,disabled:l,className:`h-8 rounded-sm border border-slate-700 px-3 text-xs text-slate-300 hover:border-slate-500 hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,children:`Cancel`}),(0,W.jsxs)(`button`,{type:`submit`,disabled:l,className:`inline-flex h-8 items-center gap-2 rounded-sm bg-[#11a4d4] px-3 text-xs font-semibold text-white disabled:cursor-not-allowed disabled:opacity-50`,children:[l?(0,W.jsx)(Ic,{size:13,className:`animate-spin`}):null,`Create workflow`]})]})]})})}function P2e(e){let t=e.trim();if(!t)return`Enter a workflow name.`;if(t.length>160)return`Workflow name must be 160 characters or fewer.`}function F2e({draftId:e,onNavigateDraft:t}){let[n,r]=(0,U.useState)([]),[i,a]=(0,U.useState)(),[o,s]=(0,U.useState)(),[c,l]=(0,U.useState)(``),[u,d]=(0,U.useState)(!1),[f,p]=(0,U.useState)(!1),[m,h]=(0,U.useState)(`loading`),[g,_]=(0,U.useState)(`idle`),[v,y]=(0,U.useState)(),[b,x]=(0,U.useState)(),[S,C]=(0,U.useState)(),w=(0,U.useRef)(null),T=(0,U.useCallback)(async()=>{h(`loading`);try{let e=await ZBe();r(e.workflows),h(`loaded`)}catch(e){C(e instanceof Error?e.message:`Failed to load workflows`),h(`error`)}},[]);(0,U.useEffect)(()=>{T()},[T]),(0,U.useEffect)(()=>{if(!e){a(void 0),_(`idle`);return}let t=!1;return s(void 0),_(`loading`),C(void 0),nVe(e).then(e=>{t||(a(e.draft),_(`loaded`))}).catch(e=>{t||(a(void 0),_(`error`),C(e instanceof Error?e.message:`Failed to load workflow draft`))}),()=>{t=!0}},[e]),(0,U.useEffect)(()=>{function e(e){w.current?.contains(e.target)||d(!1)}return document.addEventListener(`pointerdown`,e),()=>document.removeEventListener(`pointerdown`,e)},[]);let E=(0,U.useMemo)(()=>n.map(R2e),[n]),D=i?.workflowId??o?.workflowId,O=D?E.find(e=>e.workflowId===D):void 0,k=(0,U.useMemo)(()=>{let e=c.trim().toLowerCase().split(/\s+/).filter(Boolean);return!e.length||O?.label===c?E:E.filter(t=>e.every(e=>t.searchText.includes(e)))},[E,c,O]);(0,U.useEffect)(()=>{O&&!u&&l(O.label)},[u,O]);let A=async e=>{if(!e.latestPublishedVersion)throw Error(`This workflow has no draft or published version to open.`);let t=await QBe(e.workflowId,e.latestPublishedVersion),n=new Date().toISOString();a(void 0),s({workflowId:e.workflowId,workflowVersion:e.latestPublishedVersion,title:t.workflow.title||e.label,source:t.workflow.source,draft:{draftId:`readonly_${e.workflowId}_${e.latestPublishedVersion}`,workflowId:e.workflowId,source:`ui`,status:`draft`,versionIntent:`patch`,definition:t.definition,diagnostics:t.diagnostics,validationState:t.validation.validationState,validation:t.validation,revision:0,createdAt:n,updatedAt:n}})},j=async e=>{y(`select`),d(!1),x(void 0),C(void 0);try{if(e.activeDraftId){s(void 0),t(e.activeDraftId);return}await A(e),x(`Opened ${e.label} as read-only.`)}catch(e){C(e instanceof Error?e.message:`Failed to select workflow`)}finally{y(void 0)}},M=async e=>{y(`new`),x(void 0),C(void 0);try{let n=await tVe({title:e});s(void 0),x(`Created workflow ${n.draft.workflowId}.`),await T(),t(n.draft.draftId)}finally{y(void 0)}},N=async()=>{if(o){y(`duplicate`),x(void 0),C(void 0);try{let e=await iVe(o.workflowId,{version:o.workflowVersion});s(void 0),x(`Duplicated ${o.title}.`),await T(),t(e.draft.draftId)}catch(e){C(e instanceof Error?e.message:`Failed to duplicate workflow`)}finally{y(void 0)}}},P=async()=>{if(i){y(`save`),x(void 0),C(void 0);try{let e=await t4(i.draftId,{definition:i.definition,editTrigger:`graph_edit`});a(e.draft),x(e.message??`Saved ${i.workflowId}.`),await T()}catch(e){C(e instanceof Error?e.message:`Failed to save workflow`)}finally{y(void 0)}}},F=(0,U.useCallback)(e=>{a(t=>t&&{...t,definition:e})},[]),I=(0,U.useCallback)(e=>{a(e),T()},[T]),L=(0,U.useCallback)((e,t=`status`)=>{if(t===`error`){C(e);return}C(void 0),x(e)},[]),R=m===`loading`||g===`loading`,z=O?.label??o?.title??(i?i.workflowId:`No workflow selected`),B=i??o?.draft,ee=S??(v?I2e(v):R?`Loading workflow surface…`:b??`Ready`),te=S?`error`:v||R?`busy`:`status`;return(0,W.jsxs)(`main`,{className:`flex h-full min-h-0 min-w-0 flex-col overflow-hidden bg-[#101d22] text-slate-200`,"aria-label":`Workflows`,children:[(0,W.jsx)(N2e,{open:f,onClose:()=>p(!1),onCreate:M}),(0,W.jsxs)(`div`,{className:`flex min-w-0 shrink-0 flex-wrap items-center gap-2 border-b border-slate-800 bg-[#151f24] px-3 py-2`,children:[(0,W.jsx)(`button`,{type:`button`,className:`inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-sm border border-[#11a4d4]/60 text-[#8bdcf4] transition hover:border-[#11a4d4] hover:text-slate-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>p(!0),disabled:!!v,title:`Create workflow`,"aria-label":`Create workflow`,children:v===`new`?(0,W.jsx)(Ic,{size:15,className:`animate-spin`}):(0,W.jsx)(tl,{size:15})}),(0,W.jsxs)(`div`,{className:`relative min-w-0 flex-1 basis-64`,ref:w,children:[(0,W.jsxs)(`div`,{className:`flex h-9 min-w-0 items-center gap-2 rounded-sm border border-slate-700 bg-[#101d22] px-2 focus-within:border-[#11a4d4]`,children:[(0,W.jsx)(ul,{size:14,className:`shrink-0 text-slate-500`}),(0,W.jsx)(`input`,{className:`min-w-0 flex-1 bg-transparent text-sm text-slate-100 outline-none placeholder:text-slate-600`,value:c,onFocus:()=>d(!0),onChange:e=>{l(e.target.value),d(!0)},placeholder:`Search workflows by name, id, tag, status…`,"aria-label":`Search workflows`})]}),u?(0,W.jsxs)(`div`,{className:`absolute left-0 right-0 top-full z-40 mt-1 max-h-80 overflow-auto rounded-sm border border-slate-700 bg-[#151f24] p-1 shadow-2xl`,role:`listbox`,"aria-label":`Workflow results`,children:[m===`loading`?(0,W.jsx)(V2e,{children:`Loading workflows…`}):null,m===`loaded`&&k.length===0?(0,W.jsx)(V2e,{children:`No workflows match this search.`}):null,k.map(e=>(0,W.jsxs)(`button`,{type:`button`,className:`flex w-full items-start justify-between gap-3 rounded-sm px-3 py-2 text-left text-xs transition hover:bg-slate-800/80 ${D===e.workflowId?`bg-[#11a4d4]/10 text-[#8bdcf4]`:`text-slate-300`}`,onClick:()=>void j(e),disabled:!!v,role:`option`,"aria-selected":D===e.workflowId,children:[(0,W.jsxs)(`span`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate font-semibold`,children:e.label}),(0,W.jsx)(`span`,{className:`mt-0.5 block truncate text-[11px] text-slate-500`,children:e.description})]}),(0,W.jsx)(`span`,{className:`shrink-0 rounded-sm border px-1.5 py-0.5 text-[10px] uppercase tracking-wide ${e.activeDraftId?`border-emerald-700/60 text-emerald-300`:`border-amber-700/60 text-amber-300`}`,children:e.activeDraftId?`draft`:`read only`})]},e.workflowId))]}):null]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex h-9 shrink-0 items-center justify-center gap-2 rounded-sm border border-emerald-700/70 px-3 text-xs font-semibold uppercase tracking-wide text-emerald-200 transition hover:border-emerald-400 hover:text-emerald-100 disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>void P(),disabled:!i||!!v,children:[v===`save`?(0,W.jsx)(Ic,{size:14,className:`animate-spin`}):(0,W.jsx)(cl,{size:14}),`Save`]})]}),o?(0,W.jsxs)(`div`,{className:`flex min-w-0 shrink-0 items-center justify-between gap-3 border-b border-amber-700/50 bg-amber-950/20 px-3 py-1.5 text-xs text-amber-100`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 truncate`,children:[(0,W.jsx)(`span`,{className:`mr-2 rounded-sm border border-amber-500/60 px-1.5 py-0.5 text-[10px] font-bold uppercase tracking-wide text-amber-200`,children:`Read only`}),o.title,` · `,o.workflowId,`@`,o.workflowVersion]}),(0,W.jsxs)(`button`,{type:`button`,className:`inline-flex shrink-0 items-center gap-2 rounded-sm border border-amber-500/60 px-2 py-1 text-[11px] font-semibold uppercase tracking-wide text-amber-100 hover:border-amber-300 hover:text-white disabled:cursor-not-allowed disabled:opacity-50`,onClick:()=>void N(),disabled:!!v,children:[v===`duplicate`?(0,W.jsx)(Ic,{size:12,className:`animate-spin`}):(0,W.jsx)(oc,{size:12}),`Duplicate`]})]}):null,(0,W.jsx)(`div`,{className:`min-h-0 min-w-0 flex-1 overflow-hidden p-3`,children:B?(0,W.jsx)(C0e,{draft:B,onDraftChange:o?()=>void 0:I,fullHeight:!0,compactHeader:!0,readOnly:!!o,onDraftDefinitionChange:o?void 0:F,onStatusMessage:o?void 0:L,renderInspectors:e=>o?(0,W.jsx)(B2e,{...e}):(0,W.jsx)(b2e,{...e})}):(0,W.jsx)(`div`,{className:`grid h-full min-w-0 place-items-center rounded-sm border border-dashed border-slate-700 bg-[#151f24]/50 p-6 text-center`,children:(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-lg font-bold text-slate-100`,children:z}),(0,W.jsx)(`p`,{className:`mt-2 max-w-xl text-sm leading-6 text-slate-500`,children:`Create a workflow with the plus button or search and select an existing workflow above. Published and built-in workflows open read-only and can be duplicated before editing.`})]})})}),(0,W.jsxs)(`div`,{className:`flex h-7 shrink-0 items-center gap-2 border-t px-3 text-[11px] ${L2e(te)}`,role:S?`alert`:`status`,"aria-label":`Workflow editor status`,children:[(0,W.jsx)(`span`,{className:`h-1.5 w-1.5 shrink-0 rounded-full ${te===`error`?`bg-red-400`:te===`busy`?`animate-pulse bg-[#11a4d4]`:`bg-emerald-400`}`}),(0,W.jsx)(`span`,{className:`shrink-0 font-bold uppercase tracking-[0.16em]`,children:`Status`}),(0,W.jsx)(`span`,{className:`min-w-0 truncate font-mono text-[11px]`,children:ee})]})]})}function I2e(e){return e===`new`?`Creating workflow…`:e===`select`?`Opening workflow…`:e===`duplicate`?`Duplicating workflow…`:`Saving workflow…`}function L2e(e){return e===`error`?`border-red-900/70 bg-red-950/30 text-red-200`:e===`busy`?`border-slate-800 bg-[#0f1b20] text-[#8bdcf4]`:`border-slate-800 bg-[#0f1b20] text-slate-400`}function R2e(e){let t=z2e(e.versions),n=e.tags.join(`, `),r=[e.id,e.status,e.source,n].filter(Boolean),i=[e.id,e.title,e.description,e.status,e.source,n,t?.version].filter(e=>!!e);return{workflowId:e.id,label:e.title||e.id,description:r.join(` · `),...e.activeDraftId?{activeDraftId:e.activeDraftId}:{},...t?{latestPublishedVersion:t.version}:{},searchText:i.join(` `).toLowerCase()}}function z2e(e){return[...e].reverse().find(e=>e.status===`published`)}function B2e({draft:e,selectedElement:t}){let n=I7(e.definition),r=L7(e.definition),i=t?.type===`node`?n[t.id]:t?.type===`edge`?r[t.id]:e.definition,a=t?`${t.type} ${t.id}`:`Workflow definition`;return(0,W.jsxs)(`div`,{className:`min-w-0 rounded-sm border border-slate-800 bg-[#101d22] p-3`,"aria-label":`Read-only workflow details`,children:[(0,W.jsx)(`div`,{className:`text-[10px] font-bold uppercase tracking-[0.16em] text-slate-500`,children:`Read-only details`}),(0,W.jsx)(`div`,{className:`mt-2 truncate text-xs font-semibold text-slate-200`,children:a}),(0,W.jsx)(`pre`,{className:`mt-2 max-h-72 overflow-auto rounded-sm border border-slate-800 bg-[#0c171c] p-2 text-[11px] leading-5 text-slate-300`,children:JSON.stringify(i??{},null,2)})]})}function V2e({children:e}){return(0,W.jsx)(`div`,{className:`px-3 py-2 text-xs text-slate-500`,children:e})}function H2e(e){return e.viewWorkflowId&&e.viewWorkflowVersion?{workflowId:e.viewWorkflowId,workflowVersion:e.viewWorkflowVersion}:void 0}function U2e({workflowId:e,workflowVersion:t,surface:n=`desktop`}){return(0,W.jsx)(`main`,{className:`h-full min-h-0 overflow-auto bg-[#101d22] p-6 max-[720px]:p-4`,"data-pibo-debug":`${n}-workflow-version-viewer`,children:(0,W.jsx)(`div`,{className:`mx-auto w-full max-w-4xl`,children:(0,W.jsx)(_2e,{workflowId:e,workflowVersion:t})})})}function W2e({route:e,surface:t,fallback:n}){let r=H2e(e);return r?(0,W.jsx)(U2e,{...r,surface:t}):n}var G2e=50,K2e=6e4,q2e=[`.vs`,`.vs-dark`,`.hc-black`,`.hc-light`];function J2e(e){return!!(e?.querySelector(`.monaco-workbench`)&&q2e.some(t=>e.querySelector(t)))}function Y2e(e,t,n=`http://localhost/`){let r=new URL(e,n);if(r.origin!==new URL(n).origin)throw Error(`VS Code Web URL must use the Pibo Chat origin.`);return t?r.searchParams.set(`folder`,t):r.searchParams.delete(`folder`),`${r.pathname}${r.search}${r.hash}`}function X2e({integration:e}){let[t,n]=(0,U.useState)(`checking`),[r,i]=(0,U.useState)(null),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)(0),l=(0,U.useRef)(null),u=(0,U.useRef)(null),d=(0,U.useMemo)(()=>e?Y2e(e.url,e.workspaceRoot||void 0,window.location.href):``,[e?.url,e?.workspaceRoot]);return(0,U.useEffect)(()=>{if(!d){n(`unavailable`),i(`VS Code Web is not configured for this Pibo gateway.`);return}let e=new URL(d,window.location.href),t=new AbortController;return n(`checking`),i(null),fetch(e.toString(),{method:`GET`,credentials:`same-origin`,cache:`no-store`,headers:{accept:`text/html`},signal:t.signal}).then(e=>{let t=e.headers.get(`content-type`)??``;if(!e.ok||!t.toLowerCase().includes(`text/html`))throw Error(`VS Code Web returned HTTP ${e.status}.`);n(`ready`)}).catch(e=>{t.signal.aborted||(n(`unavailable`),i(e instanceof Error?e.message:String(e)))}),()=>t.abort()},[d,s]),(0,U.useEffect)(()=>(o(!1),u.current!==null&&(window.clearTimeout(u.current),u.current=null),()=>{u.current!==null&&(window.clearTimeout(u.current),u.current=null)}),[d]),e?(0,W.jsx)(`main`,{className:`flex h-full min-h-0 min-w-0 flex-col overflow-hidden bg-[#101d22]`,"aria-label":`VS Code Web`,children:(0,W.jsx)(`div`,{className:`relative min-h-0 flex-1 bg-[#101d22]`,children:t===`ready`?(0,W.jsxs)(W.Fragment,{children:[a?null:(0,W.jsx)(`div`,{className:`absolute inset-0 z-10 grid place-items-center bg-[#101d22]`,role:`status`,"aria-live":`polite`,children:(0,W.jsxs)(`div`,{className:`flex items-center gap-3 text-sm text-slate-300`,children:[(0,W.jsx)(il,{size:16,className:`animate-spin text-[#11a4d4]`}),`Starting VS Code…`]})}),(0,W.jsx)(`iframe`,{ref:l,src:d,title:`VS Code Web`,allow:`clipboard-read; clipboard-write`,onLoad:()=>{u.current!==null&&window.clearTimeout(u.current),o(!1);let e=Date.now(),t=()=>{let r=!1;try{let e=l.current?.contentDocument;r=J2e(e)}catch{r=!1}if(r){u.current=window.setTimeout(()=>{o(!0),u.current=null},100);return}if(Date.now()-e>=K2e){u.current=null,n(`unavailable`),i(`VS Code Web did not finish starting.`);return}u.current=window.setTimeout(t,G2e)};t()},"aria-hidden":!a,tabIndex:a?0:-1,className:`h-full w-full border-0 bg-[#101d22] ${a?`visible`:`invisible`}`},d)]}):t===`checking`?(0,W.jsx)(`div`,{className:`grid h-full place-items-center bg-[#101d22] text-sm text-slate-400`,children:`Connecting to VS Code Web…`}):(0,W.jsx)(`div`,{className:`grid h-full place-items-center p-6`,children:(0,W.jsxs)(`div`,{className:`max-w-lg border border-orange-500/40 bg-orange-500/10 p-5 text-sm text-slate-300 rounded-sm`,role:`alert`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 font-bold uppercase tracking-wider text-orange-300`,children:[(0,W.jsx)(fl,{size:16}),` VS Code Web is not reachable`]}),(0,W.jsx)(`p`,{className:`mt-3 break-words text-slate-400`,children:r??`The embedded IDE did not respond.`}),(0,W.jsxs)(`button`,{type:`button`,onClick:()=>c(e=>e+1),className:`mt-4 inline-flex items-center gap-2 rounded-sm bg-[#11a4d4] px-3 py-2 text-xs font-bold uppercase tracking-wider text-white`,children:[(0,W.jsx)(il,{size:14}),` Retry`]})]})})})}):(0,W.jsx)(`main`,{className:`grid min-h-0 place-items-center bg-[#101d22] p-6`,"aria-label":`VS Code Web`,children:(0,W.jsxs)(`div`,{className:`max-w-lg border border-slate-700 bg-[#1a262b] p-5 text-sm text-slate-300 rounded-sm`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2 text-slate-100 font-bold uppercase tracking-wider`,children:[(0,W.jsx)(fl,{size:16,className:`text-orange-400`}),` VS Code Web unavailable`]}),(0,W.jsxs)(`p`,{className:`mt-3 text-slate-400`,children:[`Configure `,(0,W.jsx)(`code`,{className:`text-slate-200`,children:`PIBO_VSCODE_WEB_URL`}),` on the gateway to enable the embedded IDE.`]})]})})}var M9=`Delete this session`;function Z2e({session:e,confirmText:t,deleting:n,onConfirmTextChange:r,onCancel:i,onDelete:a}){let o=(0,U.useRef)(null);return(0,W.jsx)(AX,{title:`Delete Session`,description:e.piboSessionId,onClose:i,initialFocusRef:o,closeLabel:`Cancel session deletion`,closeDisabled:n,children:(0,W.jsxs)(`div`,{className:`p-4 grid gap-3`,children:[(0,W.jsx)(`div`,{className:`border border-red-500/60 bg-red-500/10 text-red-100 rounded-sm p-3 text-sm`,children:`This permanently deletes the archived session, its child sessions, and their Chat events. This cannot be undone.`}),(0,W.jsxs)(`div`,{className:`text-sm text-slate-300`,children:[`Type `,(0,W.jsx)(`span`,{className:`font-mono text-red-200`,children:M9}),` to confirm.`]}),(0,W.jsx)(`input`,{ref:o,value:t,onChange:e=>r(e.target.value),className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-red-500`,placeholder:M9}),(0,W.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:i,disabled:n,className:`h-8 inline-flex items-center border border-slate-700 rounded-sm px-3 text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:`Cancel`}),(0,W.jsxs)(`button`,{type:`button`,onClick:a,disabled:n||t!==M9,className:`h-8 inline-flex items-center gap-2 border border-red-500 rounded-sm px-3 text-red-200 bg-red-500/10 disabled:opacity-50`,children:[(0,W.jsx)(Sl,{size:14}),`Delete permanently`]})]})]})})}function Q2e({room:e,confirmName:t,deleting:n,onConfirmNameChange:r,onCancel:i,onDelete:a}){let o=(0,U.useRef)(null);return(0,W.jsx)(AX,{title:`Delete Room`,description:e.id,onClose:i,initialFocusRef:o,closeLabel:`Cancel room deletion`,closeDisabled:n,children:(0,W.jsxs)(`div`,{className:`p-4 grid gap-3`,children:[(0,W.jsx)(`div`,{className:`border border-red-500/60 bg-red-500/10 text-red-100 rounded-sm p-3 text-sm`,children:`This permanently deletes the archived room, child rooms, all contained sessions, subagent sessions, and their Chat events. This cannot be undone.`}),(0,W.jsxs)(`div`,{className:`text-sm text-slate-300`,children:[`Type `,(0,W.jsx)(`span`,{className:`font-mono text-red-200`,children:e.name}),` to confirm.`]}),(0,W.jsx)(`input`,{ref:o,value:t,onChange:e=>r(e.target.value),className:`min-w-0 bg-[#0e1116] border border-slate-700 rounded-sm px-3 py-2 text-sm outline-none focus:border-red-500`,placeholder:e.name}),(0,W.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:i,disabled:n,className:`h-8 inline-flex items-center border border-slate-700 rounded-sm px-3 text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] disabled:opacity-50`,children:`Cancel`}),(0,W.jsxs)(`button`,{type:`button`,onClick:a,disabled:n||t!==e.name,className:`h-8 inline-flex items-center gap-2 border border-red-500 rounded-sm px-3 text-red-200 bg-red-500/10 disabled:opacity-50`,children:[(0,W.jsx)(Sl,{size:14}),`Delete permanently`]})]})]})})}var $2e=[`sessions`,`projects`,`workflows`,`cron`,`loops`,`agents`,`context`,`settings`],e4e={sessions:`sessions`,projects:`projects`,vscode:`VS Code`,workflows:`workflows`,cron:`cron`,loops:`loops`,agents:`agents`,context:`context`,settings:`settings`};function t4e(e){return e?[`sessions`,`projects`,`vscode`,`workflows`,`cron`,`loops`,`agents`,`context`,`settings`]:$2e}var n4e=`main-navigation-menu`;function r4e(){return(0,W.jsxs)(`div`,{className:`fixed top-0 left-0 right-0 z-50 bg-red-600 text-white text-center text-sm font-bold py-1.5 px-4 flex items-center justify-center gap-2 shadow-lg`,children:[(0,W.jsx)(Cl,{size:16}),`Recovery Mode: Main gateway is down. You are connected to a fallback instance.`]})}function i4e({area:e,desktopTabMode:t=!1,identity:n,mobileAreaMenuOpen:r,mobileSidebarTriggerRef:i,totalRoomUnreadCount:a,vscodeEnabled:o=!1,showMobileSidebarTrigger:s=!0,onOpenMobileSidebar:c,onSelectMainNavArea:l,onToggleMobileAreaMenu:u,onCloseMobileAreaMenu:d}){let f=n.email||n.name||n.userId,p=(0,U.useRef)(null),m=(0,U.useRef)(null),h=(0,U.useRef)([]),g=(0,U.useRef)(null),_=t4e(o),v=e=>{let t=(e+_.length)%_.length;h.current[t]?.focus()},y=e=>{if(r){v(e);return}g.current=e,u()};return(0,U.useLayoutEffect)(()=>{if(!r){g.current=null;return}let e=g.current;e!==null&&(g.current=null,v(e))},[r]),(0,U.useEffect)(()=>{if(!r)return;let e=e=>{p.current&&!p.current.contains(e.target)&&d()},t=e=>{e.key===`Escape`&&(e.preventDefault(),d(),m.current?.focus())};return document.addEventListener(`mousedown`,e),document.addEventListener(`touchstart`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`touchstart`,e),document.removeEventListener(`keydown`,t)}},[r,d]),(0,W.jsxs)(`header`,{className:`relative flex items-center gap-3 px-4 bg-[#1a262b] border-b border-slate-800 min-h-14 max-[980px]:px-3`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[s?(0,W.jsx)(`button`,{ref:i,type:`button`,onClick:c,className:`min-[981px]:hidden shrink-0 p-1.5 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,title:`Open sidebar`,"aria-label":`Open sidebar`,children:(0,W.jsx)(Bc,{size:16})}):null,(0,W.jsx)(`img`,{src:`/apps/chat/assets/pwa-images/android/launchericon-512x512.png`,alt:`Logo`,className:`h-5 w-auto shrink-0`}),(0,W.jsx)(`div`,{className:`truncate font-extrabold tracking-[0.08em] uppercase text-lg max-[420px]:text-base`,children:`Pibo Chat`})]}),t?null:(0,W.jsx)(`nav`,{"aria-label":`Main navigation`,className:`flex gap-1 max-[1200px]:hidden min-[1201px]:absolute min-[1201px]:left-1/2 min-[1201px]:-translate-x-1/2`,children:_.map(t=>(0,W.jsx)(`button`,{type:`button`,onClick:()=>l(t),"aria-current":e===t?`page`:void 0,className:`h-8 px-3 border rounded-sm text-xs uppercase tracking-wider ${e===t?`border-[#11a4d4] text-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-700 text-slate-400`}`,children:(0,W.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,W.jsx)(`span`,{children:e4e[t]}),t===`sessions`?(0,W.jsx)(l4e,{count:a}):null]})},t))}),(0,W.jsxs)(`div`,{className:`ml-auto flex shrink-0 items-center justify-end gap-2 text-xs text-slate-400 min-[1201px]:ml-0`,children:[(0,W.jsx)(Tl,{size:14}),(0,W.jsx)(`span`,{className:`truncate ${o?`max-[1500px]:hidden`:`max-[600px]:hidden`}`,children:f}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void UBe().then(()=>location.reload()),className:`p-1 border border-slate-700 rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4]`,title:`Sign out`,"aria-label":`Sign out`,children:(0,W.jsx)(Lc,{size:14})}),t?null:(0,W.jsxs)(`div`,{className:`relative min-[1201px]:hidden`,ref:p,children:[(0,W.jsx)(`button`,{ref:m,type:`button`,onClick:()=>{g.current=null,u()},onKeyDown:e=>{e.key===`Enter`||e.key===` `||e.key===`ArrowDown`?(e.preventDefault(),y(0)):e.key===`ArrowUp`&&(e.preventDefault(),y(_.length-1))},className:`p-1 border rounded-sm hover:border-[#11a4d4] hover:text-[#11a4d4] ${r?`border-[#11a4d4] text-[#11a4d4] bg-[#11a4d4]/10`:`border-slate-700 text-slate-400`}`,title:`Open navigation menu`,"aria-label":`Open navigation menu`,"aria-haspopup":`menu`,"aria-controls":n4e,"aria-expanded":r,children:(0,W.jsx)(Fc,{size:14})}),r?(0,W.jsx)(`div`,{id:n4e,className:`absolute right-0 top-full z-50 mt-2 w-52 rounded-sm border border-slate-700 bg-[#1a262b] p-1 shadow-xl`,role:`menu`,"aria-label":`Main navigation`,onKeyDown:e=>{if(e.key===`Tab`){d();return}let t=h.current.findIndex(e=>e===document.activeElement),n=null;e.key===`ArrowDown`?n=t<0?0:t+1:e.key===`ArrowUp`?n=t<0?_.length-1:t-1:e.key===`Home`?n=0:e.key===`End`&&(n=_.length-1),n!==null&&(e.preventDefault(),e.stopPropagation(),v(n))},children:_.map((t,n)=>(0,W.jsxs)(`button`,{ref:e=>{h.current[n]=e},type:`button`,onClick:()=>{d(),l(t)},"aria-current":e===t?`page`:void 0,className:`flex w-full items-center justify-between gap-2 rounded-sm px-3 py-2 text-left text-xs uppercase tracking-wider ${e===t?`bg-[#11a4d4]/10 text-[#11a4d4]`:`text-slate-300 hover:bg-slate-800/80 hover:text-[#11a4d4]`}`,role:`menuitem`,tabIndex:-1,children:[(0,W.jsx)(`span`,{children:e4e[t]}),t===`sessions`?(0,W.jsx)(l4e,{count:a}):null]},t))}):null]})]})]})}function a4e({message:e,onDismiss:t}){return(0,W.jsxs)(`div`,{className:`border-b border-red-500/40 bg-red-500/10 px-4 py-2 text-sm text-red-100 flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 flex items-start gap-2`,children:[(0,W.jsx)(Cl,{size:16,className:`mt-0.5 shrink-0 text-red-300`}),(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-bold uppercase tracking-wider text-red-300`,children:`Session Error`}),(0,W.jsx)(`div`,{className:`break-words`,children:e})]})]}),(0,W.jsx)(`button`,{type:`button`,onClick:t,className:`shrink-0 rounded-sm border border-red-500/40 px-2 py-1 text-[11px] uppercase tracking-wider text-red-200 hover:border-red-300 hover:text-red-100`,children:`Dismiss`})]})}function o4e({message:e}){return(0,W.jsx)(`div`,{className:`min-h-screen bg-[#101d22] text-slate-300 grid place-items-center`,children:(0,W.jsxs)(`div`,{className:`border border-slate-700 bg-[#1a262b] p-5 rounded-sm`,children:[(0,W.jsx)(`div`,{className:`mb-4 text-sm text-slate-400`,children:e}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void WBe(),className:`px-3 py-2 bg-[#11a4d4] rounded-sm`,children:`Sign in with Google`})]})})}function s4e({message:e,onRetry:t}){return(0,W.jsx)(`div`,{className:`min-h-screen bg-[#101d22] text-slate-300 grid place-items-center px-4`,children:(0,W.jsxs)(`div`,{className:`w-full max-w-md border border-slate-700 bg-[#1a262b] p-5 rounded-sm`,role:`alert`,children:[(0,W.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,W.jsx)(Cl,{size:18,className:`mt-0.5 shrink-0 text-orange-400`}),(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`text-sm font-bold uppercase tracking-wider text-slate-100`,children:`Could not load Pibo Chat`}),(0,W.jsx)(`div`,{className:`mt-2 text-sm text-slate-400`,children:e})]})]}),(0,W.jsxs)(`button`,{type:`button`,onClick:t,className:`mt-4 inline-flex items-center gap-2 px-3 py-2 bg-[#11a4d4] text-white rounded-sm`,children:[(0,W.jsx)(il,{size:14}),`Retry`]})]})})}function c4e(e){return e>99?`99+`:String(e)}function l4e({count:e}){return!e||e<=0?null:(0,W.jsx)(`span`,{className:`min-w-5 h-5 px-1.5 inline-flex items-center justify-center rounded-full bg-[#38bdf8] text-[#0e1116] text-[10px] font-bold tabular-nums leading-none`,"aria-label":`${e} unread messages across all rooms`,title:`${e} unread messages across all rooms`,children:c4e(e)})}function u4e(e,t){return F9(e,e=>S4e(t.sessions[e]))}function d4e(e,t){return F9(e,e=>C4e(t.sessions[e]))}function N9(e,t){return!!e?.sessions[t]}function f4e(e,t){return N9(e,t)?e:null}function p4e(e,t,n){if(!N9(e,t))return!0;let r=e.sessions[t];return r.isTreeActive||r.latestTurn?.state===`running`||n===`running`}function m4e(e,t,n){return N9(t,n)?e?.rootPiboSessionId!==t.rootPiboSessionId||e.version<=t.version:!1}function h4e(e,t,n){if(!N9(e,n))return{snapshot:e,needsRefresh:!0};let r=w4e(e,t);return{snapshot:r,needsRefresh:r===e}}function g4e(e,t){let n=new Map(t.sessionSnapshots.map(e=>[e.piboSessionId,S4e(e)]));return F9(e,e=>n.get(e))}function _4e(e,t){let n=new Map(t.sessionStatuses.map(e=>[e.piboSessionId,C4e(e)]));return F9(e,e=>n.get(e))}function P9(e,t){if(!e)return!0;let n=Date.parse(e.generatedAt),r=Date.parse(t.generatedAt);return Number.isFinite(n)&&Number.isFinite(r)?n<=r:Object.entries(e.rootVersions).every(([e,n])=>(t.rootVersions[e]??-1)>=n)}function v4e(e,t){if(!e||(e.rootVersions[t.rootPiboSessionId]??0)!==t.fromVersion)return{snapshot:e,needsRefresh:!0};let n={...e.sessions};for(let e of t.sessionStatuses)n[e.piboSessionId]=e;return{snapshot:{...e,generatedAt:t.generatedAt,rootVersions:{...e.rootVersions,[t.rootPiboSessionId]:t.toVersion},sessions:n},needsRefresh:!1}}function F9(e,t){return{...e,sessions:e.sessions.map(e=>y4e(e,t))}}function y4e(e,t){let n=t(e.piboSessionId),r=x4e(n,b4e(e)),i=r&&r!==e.status?L9(e.lastActivityAt,n?.updatedAt,new Date().toISOString()):L9(e.lastActivityAt,n?.updatedAt);return{...e,status:r??e.status,lastActivityAt:i,children:e.children.map(e=>y4e(e,t)),derivedSessions:e.derivedSessions.map(e=>{let n=t(e.piboSessionId),r=x4e(n,0),i=!!(r&&r!==e.status);return{...e,status:r??e.status,lastActivityAt:i?L9(e.lastActivityAt,n?.updatedAt,new Date().toISOString()):L9(e.lastActivityAt,n?.updatedAt)}})}}function b4e(e){return(e.unreadCount??0)+e.children.reduce((e,t)=>e+b4e(t),0)}function x4e(e,t){return e?.isTreeActive?`running`:e?.status===`error`?t>0?`error`:`idle`:e?.status}function S4e(e){let t=I9(e);if(!(!e&&!t))return{status:t,updatedAt:e?.updatedAt,isTreeActive:e?.isTreeActive}}function C4e(e){return e?{status:e.status,updatedAt:e.updatedAt,isTreeActive:e.isTreeActive}:void 0}function I9(e){return e?j2(e).status:void 0}function L9(...e){let t,n=-1/0;for(let r of e){if(!r)continue;let e=Date.parse(r);!Number.isFinite(e)||e<n||(t=r,n=e)}return t}function w4e(e,t){if(!e||e.rootPiboSessionId!==t.rootPiboSessionId||e.version!==t.fromVersion)return e;let n={...e.nodes};for(let e of t.removes)delete n[e];for(let e of t.upserts)n[e.id]=e;let r={...e.sessions};for(let e of t.sessionSnapshots)r[e.piboSessionId]=e;return{...e,version:t.toVersion,generatedAt:t.generatedAt,nodes:n,sessions:r}}function T4e(e,t,n={}){let r=n.readSessionId?D4e(e.sessions,n.readSessionId):new Set,i=new Map;R9(e.sessions,i);let a=[...r].reduce((e,t)=>e+(i.get(t)??0),0);return{...e,identity:t.identity,session:t.session,room:t.room,selectedRoomId:t.selectedRoomId,selectedPiboSessionId:t.selectedPiboSessionId,latestRoomStreamId:t.latestRoomStreamId,rooms:A4e(e.rooms,t.rooms,t.selectedRoomId,a),sessions:e.selectedRoomId===t.selectedRoomId?k4e(e.sessions,z9(t.sessions,r,i)):z9(t.sessions,r,i)}}function E4e(e,t,n=e.selectedRoomId){let r=D4e(e.sessions,t),i=new Map;R9(e.sessions,i);let a=[...r].reduce((e,t)=>e+(i.get(t)??0),0);return{...e,selectedRoomId:n,selectedPiboSessionId:t,rooms:A4e(e.rooms,e.rooms,n,a),sessions:z9(e.sessions,r,i)}}function R9(e,t){for(let n of e)t.set(n.piboSessionId,n.unreadCount??0),R9(n.children,t)}function D4e(e,t){let n=new Set,r=e=>e.piboSessionId===t?(O4e(e,n),!0):e.children.some(e=>r(e));for(let t of e)r(t);return n}function O4e(e,t){t.add(e.piboSessionId);for(let n of e.children)O4e(n,t)}function k4e(e,t){let n=e.filter(e=>e.piSessionId===`pending`);if(!n.length)return t;let r=new Set(t.map(e=>e.piboSessionId)),i=n.filter(e=>!r.has(e.piboSessionId));return i.length?[...i,...t]:t}function z9(e,t,n){return e.map(e=>{let r=n.get(e.piboSessionId),i=t.has(e.piboSessionId)?0:e.unreadCount??r??0;return{...e,...i>0?{unreadCount:i}:{unreadCount:void 0},children:z9(e.children,t,n)}})}function A4e(e,t,n,r){let i=new Map;return j4e(e,i),M4e(t,i,n,r).rooms}function j4e(e,t){for(let n of e)t.set(n.id,n.unreadCount??0),j4e(n.children??[],t)}function M4e(e,t,n,r){let i=!1;return{rooms:e.map(e=>{let a=M4e(e.children??[],t,n,r),o=e.id===n||a.selectedRoomFound;i||=o;let s=e.unreadCount??t.get(e.id)??0,c=o&&r>0?Math.max(0,s-r):s;return{...e,...c>0?{unreadCount:c}:{unreadCount:void 0},...e.children?{children:a.rooms}:{}}}),selectedRoomFound:i}}function N4e(e,t){if(!t.length)return e;let n=new Set(e.map(e=>e.piboSessionId)),r=t.filter(e=>!n.has(e.piboSessionId));return r.length?[...e,...r]:e}function P4e(e,t){return e.agentCatalog?{...e,agentCatalog:{...e.agentCatalog,mcpServers:e.agentCatalog.mcpServers.map(e=>e.name===t.name?t:e)}}:e}function F4e(e,t){if(!e.agentCatalog)return e;let n=e.agentCatalog.piPackages.filter(e=>e.id!==t.id);return{...e,agentCatalog:{...e.agentCatalog,piPackages:z4e([...n,t])}}}function I4e(e,t){return e.agentCatalog?{...e,agentCatalog:{...e.agentCatalog,piPackages:e.agentCatalog.piPackages.filter(e=>e.id!==t)}}:e}function L4e(e,t){if(!e.agentCatalog)return e;let n=e.agentCatalog.userSkills.filter(e=>e.id!==t.id);return{...e,agentCatalog:{...e.agentCatalog,userSkills:z4e([...n,t])}}}function R4e(e,t){return e.agentCatalog?{...e,agentCatalog:{...e.agentCatalog,userSkills:e.agentCatalog.userSkills.filter(e=>e.id!==t)}}:e}function z4e(e){return e.sort((e,t)=>e.name.localeCompare(t.name))}function B4e(e,t){let n=K3(e);return{deletedSessionIds:n,selectedSessionDeleted:t?n.has(t):!1,restoreSelectedPiboSessionId:t}}function V4e(e,t,n){return t?e.includes(t):n}function H4e(e,t){return t?void 0:e??void 0}function U4e(e,t,n){let r=Q3(e);return{deletedRoomIds:r,selectedRoomDeleted:t?r.has(t):!1,restoreSelectedRoomId:t,restoreSelectedPiboSessionId:n}}function W4e(e,t){return t===e}function G4e({queryClient:e,bootstrap:t,selectedPiboSessionId:n,selectedRoomId:r,showArchivedRef:i,isSessionsArea:a,loadBootstrap:o,navigateToSelectedSession:s,updateBootstrapCache:c,restoreBootstrapSnapshot:l,setSelectedPiboSessionId:u,setSelectedRoomId:d,setError:f}){let[p,m]=(0,U.useState)(null),[h,g]=(0,U.useState)(``),[_,v]=(0,U.useState)(!1),[y,b]=(0,U.useState)(null),[x,S]=(0,U.useState)(``),[C,w]=(0,U.useState)(!1),T=e=>{b(e),S(``)},E=()=>{b(null),S(``)},D=async()=>{if(!y)return;w(!0),await e.cancelQueries({queryKey:[`chat`,`bootstrap`]});let d=B3(e,t),p=B4e(y,n);p.selectedSessionDeleted&&u(null),c(e=>aWe(e,p.deletedSessionIds));try{let e=V4e((await Zl(y.piboSessionId,x)).deletedSessionIds,n,p.selectedSessionDeleted);e&&u(null);let t=await o(H4e(n,e),i.current,r??void 0,{force:!0});a&&s(t.selectedRoomId,t.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(),f(null)}catch(e){l(d),p.selectedSessionDeleted&&u(p.restoreSelectedPiboSessionId),f(e instanceof Error?e.message:String(e))}finally{w(!1)}},O=e=>{m(e),g(``)},k=()=>{m(null),g(``)};return{deleteRoomTarget:p,deleteRoomConfirmName:h,deletingRoom:_,setDeleteRoomConfirmName:g,requestRoomDelete:O,cancelRoomDelete:k,permanentlyDeleteRoom:async()=>{if(!p)return;v(!0),await e.cancelQueries({queryKey:[`chat`,`bootstrap`]});let m=B3(e,t),g=U4e(p,r,n);g.selectedRoomDeleted&&(d(null),u(null)),c(e=>uWe(e,g.deletedRoomIds));try{await Yl(p.id,h);for(let e of g.deletedRoomIds)TY(e),IY(e);W4e(p.id,r)&&(d(null),u(null));let e=await o(void 0,i.current,void 0,{force:!0});a&&s(e.selectedRoomId,e.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),k(),f(null)}catch(e){l(m),g.selectedRoomDeleted&&(d(g.restoreSelectedRoomId),u(g.restoreSelectedPiboSessionId)),f(e instanceof Error?e.message:String(e))}finally{v(!1)}},deleteSessionTarget:y,deleteSessionConfirmText:x,deletingSession:C,setDeleteSessionConfirmText:S,requestSessionDelete:T,cancelSessionDelete:E,permanentlyDeleteSession:D}}function K4e(e){if(e.area!==`sessions`||!e.activeRoomId||e.bootstrapSelectedRoomId!==e.activeRoomId||typeof e.latestRoomStreamId!=`number`||!Number.isFinite(e.latestRoomStreamId)||e.latestRoomStreamId<=0)return null;let t=new URLSearchParams({roomId:e.activeRoomId});return t.set(`mode`,`summary`),t.set(`since`,`${e.latestRoomStreamId}:999999`),`/api/chat/events?${t.toString()}`}var q4e=`pibo.chat.desktopTabs.v1`;function B9(){return{version:1,tabs:[],activeTabId:null,width:520,collapsed:!1}}function V9(e){if(e.kind===`new-tab`)return`new-tab:${e.instanceId}`;if(e.kind===`session-tool`)return`tool:${e.tool}`;let t=e.route;return t.area===`projects`?t.projectId?`projects:${t.projectId}`:`projects`:t.area===`workflows`?t.draftId?`workflows:draft:${t.draftId}`:t.viewWorkflowId&&t.viewWorkflowVersion?`workflows:view:${t.viewWorkflowId}:${t.viewWorkflowVersion}`:`workflows`:`route:${t.area}`}function H9(e){if(e.kind===`new-tab`)return`New Tab`;if(e.kind===`session-tool`)return e.tool===`preview`?`Preview`:e.tool===`raw-events`?`Raw Events`:e.tool===`web-annotations`?`Annotations`:e.tool===`runtime-requests`?`Runtime Requests`:`Session Inspector`;let t=e.route;return t.area===`vscode`?`VS Code`:t.area===`cron`?`Cron`:t.area===`loops`?`Loops`:t.area===`agents`?`Agent Designer`:t.area===`context`?`Context`:t.area===`settings`?`Settings`:t.area===`projects`?t.projectId?`Project · ${t.projectId}`:`Projects`:t.draftId?`Workflow · ${t.draftId}`:t.viewWorkflowId?`Workflow · ${t.viewWorkflowId}`:`Workflows`}function J4e(e){return e.area===`sessions`?null:{kind:`route`,route:e}}function U9(e,t,n={}){let r=n.now??Date.now(),i=V9(t),a=e.tabs.findIndex(e=>V9(e.target)===i);if(a>=0){let n=e.tabs[a],i=e.tabs.slice();return i[a]={...n,target:t,title:H9(t),lastActivatedAt:r},{...e,tabs:i,activeTabId:n.id,collapsed:!1}}let o=n.id??v3e(),s={id:o,target:t,title:H9(t),createdAt:r,lastActivatedAt:r},c=e.tabs.length>=24?e.tabs.slice(-23):e.tabs;return{...e,tabs:[...c,s],activeTabId:o,collapsed:!1}}function Y4e(e,t={}){let n=t.id??v3e();return U9(e,{kind:`new-tab`,instanceId:n},{...t,id:n})}function X4e(e,t,n,r=Date.now()){let i=e.tabs.findIndex(e=>e.id===t&&e.target.kind===`new-tab`);if(i<0)return U9(e,n,{now:r});let a=V9(n);if(e.tabs.find(e=>e.id!==t&&V9(e.target)===a))return U9(Q4e(e,t),n,{now:r});let o=e.tabs.slice();return o[i]={...o[i],target:n,title:H9(n),lastActivatedAt:r},{...e,tabs:o,activeTabId:t,collapsed:!1}}function Z4e(e,t,n=Date.now()){return e.activeTabId===t&&!e.collapsed||!e.tabs.some(e=>e.id===t)?e:{...e,activeTabId:t,collapsed:!1,tabs:e.tabs.map(e=>e.id===t?{...e,lastActivatedAt:n}:e)}}function Q4e(e,t){let n=e.tabs.findIndex(e=>e.id===t);if(n<0)return e;let r=e.tabs.filter(e=>e.id!==t);if(e.activeTabId!==t)return{...e,tabs:r};let i=r[n]??r[n-1]??null;return{...e,tabs:r,activeTabId:i?.id??null,collapsed:r.length?e.collapsed:!1}}function $4e(e,t,n){let r=e.tabs.findIndex(e=>e.id===t);if(r<0||e.tabs.length<2)return e;let i=Math.max(0,Math.min(e.tabs.length-1,n));if(i===r)return e;let a=e.tabs.slice(),[o]=a.splice(r,1);return a.splice(i,0,o),{...e,tabs:a}}function e3e(e,t,n){let r=e.tabs.findIndex(e=>e.id===t);return r<0?e:$4e(e,t,r+n)}function t3e(e,t){return{...e,width:W9(t)}}function W9(e){return Number.isFinite(e)?Math.round(Math.max(360,Math.min(920,e))):520}function G9(e){return e.tabs.find(t=>t.id===e.activeTabId)??null}function n3e(e){return e.target.kind===`new-tab`?!1:e.target.kind===`session-tool`?e.target.tool===`preview`:e.target.route.area===`vscode`}function r3e(e,t){let n=G9(e);return n?.target.kind===`route`?n.target.route:t}function i3e(e,t){return e?.target.kind===`route`&&e.target.route.area===`agents`&&e.id!==t}async function a3e(e,t){if(!e||!t)return{allowed:!0};try{return await t(),{allowed:!0}}catch(e){return{allowed:!1,error:e}}}async function o3e({current:e,next:t,sessionsRoute:n,closingTab:r,autosave:i,onCommit:a,onNavigate:o}){let s=G9(e),c=await a3e(!!(r?.target.kind===`route`&&r.target.route.area===`agents`||i3e(s,t.activeTabId)),i);if(!c.allowed)return c;let l=r3e(e,n),u=r3e(t,n);return a(t),JSON.stringify(l)!==JSON.stringify(u)&&o(u),{allowed:!0}}function s3e(e,t,n={}){let r=J4e(t);return r?{...U9(e,r,n),collapsed:e.collapsed}:e}function c3e(e){return JSON.stringify({...e,width:W9(e.width),tabs:e.tabs.slice(0,24),activeTabId:e.tabs.some(t=>t.id===e.activeTabId)?e.activeTabId:null})}function l3e(e){if(!e)return B9();try{let t=JSON.parse(e);if(!K9(t)||t.version!==1||!Array.isArray(t.tabs))return B9();let n=t.tabs.slice(0,24).map(f3e).filter(e=>e!==null),r=[],i=new Set,a=new Map,o=new Map;for(let e of n){let t=V9(e.target),n=a.get(t);if(i.has(e.id)||n){o.set(e.id,n??e.id);continue}r.push(e),i.add(e.id),a.set(t,e.id),o.set(e.id,e.id)}let s=typeof t.activeTabId==`string`?o.get(t.activeTabId):void 0;return{version:1,tabs:r,activeTabId:s&&r.some(e=>e.id===s)?s:r[0]?.id??null,width:W9(typeof t.width==`number`?t.width:520),collapsed:t.collapsed===!0&&r.length>0}}catch{return B9()}}function u3e(e=_3e()){try{return l3e(e?.getItem(q4e))}catch{return B9()}}function d3e(e,t=_3e()){try{t?.setItem(q4e,c3e(e))}catch{}}function f3e(e){if(!K9(e)||typeof e.id!=`string`||!e.id||!p3e(e.target))return null;let t=g3e(e.createdAt)??Date.now();return{id:e.id,target:e.target,title:typeof e.title==`string`&&e.title.trim()?e.title:H9(e.target),createdAt:t,lastActivatedAt:g3e(e.lastActivatedAt)??t}}function p3e(e){return K9(e)?e.kind===`new-tab`?typeof e.instanceId==`string`&&!!e.instanceId:e.kind===`session-tool`?m3e(e.tool):e.kind===`route`&&K9(e.route)&&h3e(e.route):!1}function m3e(e){return e===`preview`||e===`raw-events`||e===`web-annotations`||e===`runtime-requests`||e===`session-inspector`}function h3e(e){return e.area===`vscode`||e.area===`agents`||e.area===`cron`||e.area===`loops`||e.area===`projects`||e.area===`workflows`||e.area===`context`||e.area===`settings`}function g3e(e){return typeof e==`number`&&Number.isFinite(e)?e:void 0}function K9(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function _3e(){try{return typeof localStorage>`u`?void 0:localStorage}catch{return}}function v3e(){return typeof crypto<`u`&&typeof crypto.randomUUID==`function`?`tab-${crypto.randomUUID()}`:`tab-${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`}function y3e(e,t,n,r){let i=e.filter(e=>e.id!==t),a=i.findIndex(e=>e.id===n);return a<0?Math.max(0,i.length):a+ +(r===`after`)}var b3e=[{id:`preview`,label:`Preview`,description:`Live session preview`,icon:vl,target:{kind:`session-tool`,tool:`preview`}},{id:`raw-events`,label:`Raw Events`,description:`Raw trace and event payloads`,icon:Rs,target:{kind:`session-tool`,tool:`raw-events`}},{id:`web-annotations`,label:`Web Annotations`,description:`Annotations attached to this session`,icon:Hc,target:{kind:`session-tool`,tool:`web-annotations`}},{id:`runtime-requests`,label:`Runtime Requests`,description:`Approvals and runtime input`,icon:yl,target:{kind:`session-tool`,tool:`runtime-requests`}},{id:`session-inspector`,label:`Session Inspector`,description:`Session, signal, and runtime metadata`,icon:Pc,target:{kind:`session-tool`,tool:`session-inspector`}}];function x3e(e){return[{id:`sessions`,label:`Sessions`,description:`Focus the fixed Rooms and Sessions navigation`,icon:Ac,sessionsAction:!0},{id:`projects`,label:`Projects`,description:`Project workspaces and project sessions`,icon:yc,target:{kind:`route`,route:{area:`projects`}}},{id:`vscode`,label:`VS Code`,description:`Embedded workspace editor`,icon:ac,target:{kind:`route`,route:{area:`vscode`}}},{id:`workflows`,label:`Workflows`,description:`Workflow definitions and drafts`,icon:Ol,target:{kind:`route`,route:{area:`workflows`}}},{id:`cron`,label:`Cron`,description:`Scheduled jobs`,icon:ic,target:{kind:`route`,route:{area:`cron`}}},{id:`loops`,label:`Loops`,description:`Goal and legacy Ralph loops`,icon:Cc,target:{kind:`route`,route:{area:`loops`}}},{id:`agents`,label:`Agent Designer`,description:`Agents, profiles, and capability selection`,icon:vl,target:{kind:`route`,route:{area:`agents`}}},{id:`context`,label:`Context`,description:`Context files, prompts, and MCP tools`,icon:Rs,target:{kind:`route`,route:{area:`context`}}},{id:`settings`,label:`Settings`,description:`Chat and runtime settings`,icon:ml,target:{kind:`route`,route:{area:`settings`}}},...b3e]}function S3e(e,t){let[n,r]=(0,U.useState)(()=>u3e()),i=(0,U.useMemo)(()=>JSON.stringify(e),[e]);return(0,U.useEffect)(()=>{t&&r(t=>s3e(t,e))},[t,i]),(0,U.useEffect)(()=>{t&&d3e(n)},[t,n]),{state:n,setState:r}}function C3e({state:e,vscodeEnabled:t,onStateChange:n,onActivate:r,onClose:i,onFocusSessions:a,renderPanel:o,hidden:s=!1,fullscreen:c=!1}){let l=(0,U.useRef)(null),u=(0,U.useRef)(null),d=(0,U.useRef)(null),f=(0,U.useRef)(new Map),p=(0,U.useRef)(null),[m,h]=(0,U.useState)(null),g=(0,U.useRef)(!1),_=G9(e),v=(0,U.useMemo)(()=>x3e(t),[t]);(0,U.useLayoutEffect)(()=>{_?.target.kind===`new-tab`&&u.current?.querySelector(`button[data-catalog-entry]`)?.focus()},[_?.id]),(0,U.useEffect)(()=>{e.collapsed||!_||f.current.get(_.id)?.scrollIntoView({block:`nearest`,inline:`nearest`})},[_?.id,e.collapsed]),(0,U.useLayoutEffect)(()=>{g.current&&(g.current=!1,e.activeTabId?f.current.get(e.activeTabId)?.focus():l.current?.focus())},[e.activeTabId,e.tabs.length]);let y=(0,U.useCallback)(async e=>{g.current=!0,await i(e)||(g.current=!1)},[i]),b=e=>{let t=[...u.current?.querySelectorAll(`button[data-catalog-entry]`)??[]],n=t.indexOf(document.activeElement),r=-1;e.key===`ArrowDown`&&(r=n<0?0:(n+1)%t.length),e.key===`ArrowUp`&&(r=n<0?t.length-1:(n-1+t.length)%t.length),e.key===`Home`&&(r=0),e.key===`End`&&(r=t.length-1),r>=0&&(e.preventDefault(),t[r]?.focus())},x=t=>{if(!(!_||_.target.kind!==`new-tab`)){if(t.sessionsAction){a(_);return}t.target&&n(X4e(e,_.id,t.target))}},S=t=>{let n=e.tabs[Math.max(0,Math.min(e.tabs.length-1,t))];n&&f.current.get(n.id)?.focus()},C=(t,i,a)=>{if(t.altKey&&t.shiftKey&&(t.key===`ArrowLeft`||t.key===`ArrowRight`)){t.preventDefault();let r=t.key===`ArrowLeft`?-1:1;n(e3e(e,i.id,r)),window.setTimeout(()=>f.current.get(i.id)?.focus(),0);return}if(t.key===`ArrowLeft`||t.key===`ArrowRight`||t.key===`Home`||t.key===`End`){t.preventDefault(),t.key===`Home`?S(0):t.key===`End`?S(e.tabs.length-1):S((a+(t.key===`ArrowLeft`?-1:1)+e.tabs.length)%e.tabs.length);return}if(t.key===`Delete`){t.preventDefault(),y(i);return}(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),r(i))},w=t=>{t.preventDefault();let r=t.clientX,i=e.width,a=t=>n(t3e(e,i+r-t.clientX)),o=()=>{window.removeEventListener(`pointermove`,a),window.removeEventListener(`pointerup`,o),document.body.style.removeProperty(`cursor`),document.body.style.removeProperty(`user-select`)};document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`,window.addEventListener(`pointermove`,a),window.addEventListener(`pointerup`,o)},T={"--pibo-desktop-tabs-width":`${e.width}px`,width:c?`100%`:e.collapsed?`44px`:`min(${e.width}px, calc(100vw - 740px))`};return(0,W.jsxs)(`aside`,{"data-pibo-debug":`desktop-tab-sidebar`,"data-pibo-state":c?`preview-fullscreen`:e.collapsed?`collapsed`:`open`,"data-pibo-preview-fullscreen":c?`true`:`false`,"aria-label":`Open workspace tabs`,"aria-hidden":s||void 0,hidden:s,className:`relative min-h-0 shrink-0 bg-[#101d22] ${c?`border-l-0`:`border-l border-slate-700`}`,style:T,children:[(0,W.jsx)(`div`,{role:`separator`,"aria-label":`Resize workspace tabs`,"aria-orientation":`vertical`,"aria-valuemin":360,"aria-valuemax":920,"aria-valuenow":e.width,tabIndex:e.collapsed||c?-1:0,onPointerDown:w,onKeyDown:t=>{(t.key===`ArrowLeft`||t.key===`ArrowRight`)&&(t.preventDefault(),n(t3e(e,e.width+(t.key===`ArrowLeft`?24:-24))))},className:`absolute inset-y-0 -left-1 z-20 w-2 cursor-col-resize outline-none hover:bg-[#11a4d4]/35 focus-visible:bg-[#11a4d4]/60 ${e.collapsed||c?`hidden`:``}`}),e.collapsed&&!c?(0,W.jsxs)(`div`,{className:`flex h-full flex-col items-center gap-2 border-l border-slate-800 bg-[#151f24] py-2`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:()=>n({...e,collapsed:!1}),className:`inline-flex h-8 w-8 items-center justify-center rounded-sm border border-slate-700 text-slate-300 hover:border-[#11a4d4] hover:text-[#11a4d4] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#11a4d4]`,title:`Reopen workspace tabs`,"aria-label":`Reopen workspace tabs`,children:(0,W.jsx)(Xc,{size:15})}),(0,W.jsxs)(`span`,{className:`mt-1 font-mono text-[10px] text-slate-500 [writing-mode:vertical-rl]`,children:[e.tabs.length,` tabs`]})]}):(0,W.jsxs)(`div`,{className:`grid h-full min-h-0 ${c?`grid-rows-[0_minmax(0,1fr)]`:`grid-rows-[40px_minmax(0,1fr)]`}`,children:[(0,W.jsxs)(`div`,{hidden:c,className:`relative flex min-w-0 items-stretch border-b border-slate-800 bg-[#151f24]`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:()=>d.current?.scrollBy({left:-220,behavior:`smooth`}),title:`Scroll tabs left`,"aria-label":`Scroll tabs left`,className:`w-7 shrink-0 border-r border-slate-800 text-slate-500 hover:text-[#11a4d4]`,children:(0,W.jsx)(Gs,{size:13,className:`mx-auto`})}),(0,W.jsx)(`div`,{ref:d,role:`tablist`,"aria-label":`Workspace tabs`,onDragLeave:e=>{e.currentTarget.contains(e.relatedTarget)||h(null)},className:`flex min-w-0 flex-1 overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:e.tabs.map((t,i)=>{let a=t.id===e.activeTabId,o=m?.overTabId===t.id&&m.position===`before`,s=m?.overTabId===t.id&&m.position===`after`;return(0,W.jsxs)(`div`,{className:`flex shrink-0 items-center`,children:[o?(0,W.jsx)(w3e,{index:m.toIndex}):null,(0,W.jsxs)(`div`,{draggable:!0,onDragStart:e=>{p.current=t.id,e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`text/plain`,t.id)},onDragOver:n=>{n.preventDefault(),n.dataTransfer.dropEffect=`move`;let r=p.current;if(!r||r===t.id)return;let i=n.currentTarget.getBoundingClientRect(),a=n.clientX>=i.left+i.width/2?`after`:`before`,o=y3e(e.tabs,r,t.id,a);h(e=>e?.draggedTabId===r&&e.overTabId===t.id&&e.position===a?e:{draggedTabId:r,overTabId:t.id,position:a,toIndex:o})},onDrop:t=>{t.preventDefault();let r=p.current;r&&m?.draggedTabId===r&&n($4e(e,r,m.toIndex)),p.current=null,h(null)},onDragEnd:()=>{p.current=null,h(null)},className:`group flex h-10 min-w-[9.5rem] max-w-[13rem] items-center border-r border-slate-800 ${p.current===t.id?`opacity-60`:``} ${a?`bg-[#101d22] text-[#7ddfff]`:`bg-[#151f24] text-slate-400 hover:bg-slate-800/60`}`,children:[(0,W.jsx)(`button`,{ref:e=>{e?f.current.set(t.id,e):f.current.delete(t.id)},id:`desktop-tab-${t.id}`,type:`button`,role:`tab`,"aria-selected":a,"aria-controls":`desktop-tabpanel-${t.id}`,tabIndex:a?0:-1,onClick:()=>r(t),onKeyDown:e=>C(e,t,i),title:`${t.title}. Alt+Shift+Arrow reorders; Delete closes.`,className:`min-w-0 flex-1 truncate px-2 text-left text-[11px] font-semibold focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[#11a4d4]`,children:t.title}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void y(t),title:`Close ${t.title}`,"aria-label":`Close ${t.title}`,className:`mr-1 inline-flex h-6 w-6 shrink-0 items-center justify-center rounded-sm text-slate-500 opacity-70 hover:bg-slate-700 hover:text-slate-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#11a4d4]`,children:(0,W.jsx)(Al,{size:12})})]}),s?(0,W.jsx)(w3e,{index:m.toIndex}):null]},t.id)})}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>d.current?.scrollBy({left:220,behavior:`smooth`}),title:`Scroll tabs right`,"aria-label":`Scroll tabs right`,className:`w-7 shrink-0 border-l border-slate-800 text-slate-500 hover:text-[#11a4d4]`,children:(0,W.jsx)(Ks,{size:13,className:`mx-auto`})}),(0,W.jsx)(`button`,{ref:l,type:`button`,onClick:()=>n(Y4e(e)),title:`New Tab`,"aria-label":`New Tab`,className:`w-9 shrink-0 border-l border-slate-800 text-slate-300 hover:bg-[#11a4d4]/10 hover:text-[#11a4d4] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[#11a4d4]`,children:(0,W.jsx)(tl,{size:15,className:`mx-auto`})}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>n({...e,collapsed:!0}),title:`Collapse workspace tabs`,"aria-label":`Collapse workspace tabs`,className:`w-9 shrink-0 border-l border-slate-800 text-slate-400 hover:text-[#11a4d4] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[#11a4d4]`,children:(0,W.jsx)(Yc,{size:15,className:`mx-auto`})})]}),(0,W.jsx)(`div`,{className:`relative min-h-0 overflow-hidden bg-[#101d22] ${c?`row-start-2`:``}`,children:e.tabs.length?e.tabs.map(t=>{let n=t.id===e.activeTabId;return(0,W.jsx)(`section`,{id:`desktop-tabpanel-${t.id}`,role:`tabpanel`,"aria-labelledby":`desktop-tab-${t.id}`,hidden:!n,className:`h-full min-h-0 overflow-hidden`,children:t.target.kind===`new-tab`?(0,W.jsx)(T3e,{ref:n?u:void 0,entries:v,onKeyDown:b,onChoose:x}):n||n3e(t)?o(t,n):null},t.id)}):(0,W.jsx)(`div`,{className:`grid h-full place-items-center p-6 text-center`,children:(0,W.jsxs)(`div`,{children:[(0,W.jsx)(Ys,{size:22,className:`mx-auto text-slate-600`}),(0,W.jsx)(`div`,{className:`mt-3 text-xs font-bold uppercase tracking-wider text-slate-300`,children:`No workspace tabs`}),(0,W.jsx)(`p`,{className:`mt-2 text-xs text-slate-500`,children:`Use + to open a product area or a session tool.`})]})})})]})]})}function w3e({index:e}){return(0,W.jsx)(`span`,{"aria-hidden":`true`,"data-pibo-debug":`desktop-tab-drop-gap`,"data-pibo-insertion-index":e,className:`desktop-tab-drop-gap h-6 w-2 shrink-0 rounded-sm bg-[#11a4d4]/75 motion-reduce:animate-none`})}var T3e=function({ref:e,entries:t,onKeyDown:n,onChoose:r}){return(0,W.jsx)(`div`,{"data-pibo-debug":`desktop-new-tab`,className:`grid h-full min-h-0 place-items-center overflow-auto p-6`,children:(0,W.jsxs)(`div`,{ref:e,role:`navigation`,"aria-label":`New Tab module catalog`,onKeyDown:n,className:`grid w-full max-w-2xl grid-cols-2 gap-1 border border-slate-700 bg-[#1a262b] p-3 max-[1180px]:grid-cols-1`,children:[(0,W.jsxs)(`div`,{className:`col-span-full px-2 pb-2 pt-0.5`,children:[(0,W.jsx)(`h2`,{className:`text-[11px] font-bold uppercase tracking-[0.14em] text-slate-400`,children:`New Tab`}),(0,W.jsx)(`p`,{className:`mt-1 text-[10px] text-slate-500`,children:`Open a product area or session tool`})]}),t.map(e=>{let t=e.icon;return(0,W.jsxs)(`button`,{"data-catalog-entry":!0,type:`button`,onClick:()=>r(e),className:`flex min-w-0 items-start gap-2 rounded-sm border border-transparent px-2 py-2 text-left hover:border-slate-700 hover:bg-[#101d22] focus-visible:border-[#11a4d4] focus-visible:bg-[#101d22] focus-visible:outline-none`,children:[(0,W.jsx)(t,{size:15,className:`mt-0.5 shrink-0 text-[#11a4d4]`}),(0,W.jsxs)(`span`,{className:`min-w-0`,children:[(0,W.jsx)(`span`,{className:`block truncate text-xs font-semibold text-slate-200`,children:e.label}),(0,W.jsx)(`span`,{className:`block text-[10px] leading-4 text-slate-500`,children:e.description})]})]},e.id)})]})})};function E3e(e){return e?.target.kind===`session-tool`?e.target.tool:null}function D3e(e,t){return U9(e,t)}function O3e(e,t){return Z4e(e,t)}var q9=750,k3e=5e3,A3e=3e4,J9=120,Y9=60,j3e=new Set;function X9(e){return e.trim().replace(/\\/g,`/`).split(`/`).filter(Boolean).pop()??`download`}function Z9(e){if(!Number.isFinite(e)||e<=0)return`0 B`;let t=[`B`,`KB`,`MB`,`GB`,`TB`],n=e,r=0;for(;n>=1024&&r<t.length-1;)n/=1024,r+=1;let i=n>=10||r===0?0:1;return`${n.toFixed(i)} ${t[r]}`}function M3e(e){return e.status===`starting`?`Preparing download…`:e.status===`failed`?e.error??`Download failed`:e.totalBytes&&e.totalBytes>0?`${Math.min(100,Math.floor(e.receivedBytes/e.totalBytes*100))}% · ${Z9(e.receivedBytes)} of ${Z9(e.totalBytes)}`:e.receivedBytes>0?`${Z9(e.receivedBytes)} received`:`Waiting for bytes…`}function Q9(e){return e instanceof DOMException&&e.name===`AbortError`}function N3e(e){let t=Number(e.split(`:`,1)[0]);return Number.isFinite(t)?t:void 0}async function P3e(e,t){let n=KFe(t.piboSessionId,t.includeArchived,t.roomId);return await e.removeQueries({queryKey:n,exact:!0}),Nl(t.piboSessionId,t.includeArchived,t.roomId,!!t.markRead,{signal:t.signal})}async function F3e(e,t){return YFe(e,t,()=>Pl(t.piboSessionId,t.includeArchived,t.roomId,{signal:t.signal}))}function I3e({route:e}){let t=Ao(),n=On(),r=xq(),i=!r,a=S3e(e,i),o=G9(a.state),s=E3e(o),c=o?.target.kind===`route`?o.target.route:void 0,l=i?`sessions`:e.area,u=e.area===`sessions`?e.roomId:void 0,d=e.area===`projects`?e.projectId:void 0,f=e.area===`sessions`||e.area===`projects`||e.area===`context`?e.piboSessionId:void 0,p=e.area===`sessions`||!i&&e.area===`projects`?e.sessionViewId:void 0,m=e.area===`workflows`?e.draftId:void 0,h=e.area===`settings`?e.panel??`general`:`general`,[g,_]=(0,U.useState)(null),v=(0,U.useRef)(null),y=(0,U.useRef)(null),[b,x]=(0,U.useState)(null),S=(0,U.useCallback)(e=>{if(typeof e==`function`){x(t=>{let n=e(t);return v.current=n,n});return}v.current=e,x(e)},[]),[C,w]=(0,U.useState)(null),[T,E]=(0,U.useState)(null),[D,O]=(0,U.useState)(null),[k,A]=(0,U.useState)(null),j=(0,U.useRef)(new Set),[M,N]=(0,U.useState)(yNe),[P,F]=(0,U.useState)(bNe),[I,L]=(0,U.useState)(xNe),[R,z]=(0,U.useState)(SNe),[B,ee]=(0,U.useState)(CNe),[te,ne]=(0,U.useState)(TNe),[re,V]=(0,U.useState)(``),[ie,ae]=(0,U.useState)(null),[oe,se]=(0,U.useState)(()=>p??kY()),[ce,le]=(0,U.useState)(!1),[ue,de]=(0,U.useState)(!1),[fe,pe]=(0,U.useState)(``),[me,he]=(0,U.useState)(0),[ge,_e]=(0,U.useState)(!1),ve=(0,U.useRef)(!1),ye=(0,U.useRef)(null),be=(0,U.useRef)(!1),[xe,Se]=(0,U.useState)(!1),[Ce,we]=(0,U.useState)(!1),[H,Te]=(0,U.useState)(J9),[Ee,De]=(0,U.useState)(Y9),[Oe,ke]=(0,U.useState)(null),[Ae,je]=(0,U.useState)(null),[Me,Ne]=(0,U.useState)(null),[Pe,Fe]=(0,U.useState)(`build-context`),[Ie,Le]=(0,U.useState)(null),[Re,ze]=(0,U.useState)(null),[Be,Ve]=(0,U.useState)(!1),[He,Ue]=(0,U.useState)(!1),[We,Ge]=(0,U.useState)({}),Ke=(0,U.useMemo)(()=>Object.fromEntries([`preview`,`raw-events`,`web-annotations`,`runtime-requests`,`session-inspector`].map(e=>[e,t=>{Ge(n=>n[e]===t?n:{...n,[e]:t})}])),[]);(0,U.useEffect)(()=>{(!i||s!==`preview`)&&de(!1)},[s,i]);let qe=(0,U.useRef)(null),Je=_je({isMobileViewport:r,isOpen:He,onClose:(0,U.useCallback)(()=>Ue(!1),[]),triggerRef:qe}),[Ye,Xe]=(0,U.useState)(!1),[Ze,Qe]=(0,U.useState)(null),[$e,et]=(0,U.useState)(null),tt=(0,U.useRef)(null),nt=(0,U.useRef)(null),[rt,it]=(0,U.useState)(()=>Date.now()),at=(0,U.useRef)(B),ot=(0,U.useRef)(null),st=(0,U.useRef)(null),ct=(0,U.useRef)(0),lt=(0,U.useRef)(new Map),ut=(0,U.useRef)(null),dt=(0,U.useRef)(0),ft=C??g?.selectedRoomId??null,pt=ft&&g?$q(g.rooms,ft)??g.room:void 0,mt=$je(g?.rooms??[],ft,g?.room),ht=pt?nJ(pt):!1,gt=!!(Ae&&Ae===C),_t=qQ(b),vt=(0,U.useCallback)(e=>{let t=nt.current,n=t?d4e(e,t):e,r=tt.current;return e.selectedPiboSessionId&&N9(r,e.selectedPiboSessionId)?u4e(n,r):n},[]);(0,U.useEffect)(()=>{at.current=B},[B]),(0,U.useEffect)(()=>{st.current=g},[g]),(0,U.useEffect)(()=>{Te(J9),De(Y9)},[C,B]),(0,U.useEffect)(()=>{it(Date.now())},[g]);let yt=(0,U.useCallback)(e=>P9(nt.current,e)?(nt.current=e,_(t=>t&&d4e(t,e)),!0):!1,[]),bt=(0,U.useCallback)(e=>{let t=v4e(nt.current,e);return!t.needsRefresh&&(nt.current=t.snapshot,_(t=>t&&_4e(t,e)),!0)},[]);(0,U.useEffect)(()=>{if(l===`sessions`&&_t)return;let e=!0,t,n=new AbortController,r=i=>{e&&(t&&clearTimeout(t),t=setTimeout(()=>{t=void 0,Mu({signal:n.signal}).then(t=>{e&&!n.signal.aborted&&yt(t)}).catch(()=>{n.signal.aborted||r(q9)})},i))},i={onSnapshot:n=>{!e||!P9(nt.current,n)||(t&&=(clearTimeout(t),void 0),yt(n))},onPatch:t=>{e&&!bt(t)&&r(0)},onError:()=>r(q9)},a=()=>void 0,o=()=>{e&&(a(),a=Nu(i))},s=()=>{document.visibilityState===`visible`&&o()};return a=Nu(i),window.addEventListener(`pageshow`,o),document.addEventListener(`visibilitychange`,s),()=>{e=!1,n.abort(),t&&clearTimeout(t),window.removeEventListener(`pageshow`,o),document.removeEventListener(`visibilitychange`,s),a()}},[l,bt,yt,_t]),(0,U.useEffect)(()=>{if(l!==`sessions`||!_t){tt.current=null,et(null);return}let e=f4e(tt.current,_t);tt.current=e,et(e);let t=!0,n,r,i=new AbortController,a=e=>{!t||i.signal.aborted||!m4e(tt.current,e,_t)||(tt.current=e,et(e),_(t=>t&&u4e(t,e)))},o=e=>{t&&(n&&clearTimeout(n),n=setTimeout(()=>{n=void 0,ju(_t,{signal:i.signal}).then(a).catch(()=>{i.signal.aborted||o(q9)})},e))},s=e=>{t&&(r&&clearTimeout(r),r=setTimeout(()=>{r=void 0,Mu({signal:i.signal}).then(e=>{t&&!i.signal.aborted&&yt(e)}).catch(()=>{i.signal.aborted||s(q9)})},e))},c={onSnapshot:e=>{!t||!m4e(tt.current,e,_t)||(n&&=(clearTimeout(n),void 0),a(e))},onPatch:e=>{if(!t)return;let n=h4e(tt.current,e,_t);if(n.needsRefresh){o(0);return}tt.current=n.snapshot,et(n.snapshot),_(t=>t&&g4e(t,e))},onStatusSnapshot:e=>{!t||!P9(nt.current,e)||(r&&=(clearTimeout(r),void 0),yt(e))},onStatusPatch:e=>{t&&!bt(e)&&s(0)},onError:()=>{o(q9),s(q9)}},u=()=>void 0,d=()=>{t&&(u(),u=Pu(_t,c),o(0))},f=()=>{document.visibilityState===`visible`&&d()},p=()=>{let e=st.current?NQ(st.current.sessions,_t):void 0;return p4e(tt.current,_t,e?.status)};u=Pu(_t,c),window.addEventListener(`pageshow`,d),document.addEventListener(`visibilitychange`,f);let m=window.setInterval(()=>{document.visibilityState===`visible`&&p()&&o(0)},k3e);return o(0),()=>{t=!1,i.abort(),n&&clearTimeout(n),r&&clearTimeout(r),window.removeEventListener(`pageshow`,d),document.removeEventListener(`visibilitychange`,f),window.clearInterval(m),u()}},[l,bt,yt,_t]),(0,U.useEffect)(()=>{let e=g?Zje(g.sessions,rt):void 0;if(e===void 0)return;let t=setTimeout(()=>it(Date.now()),Math.max(50,e));return()=>clearTimeout(t)},[g,rt]),(0,U.useEffect)(()=>{let e=async()=>{try{let e=await fetch(`/health`,{signal:AbortSignal.timeout(3e3)});if(e.ok){let t=await e.json();Qe(t.mode===`fallback`?`fallback`:`main`)}else Qe(null)}catch{Qe(null)}};e();let t=setInterval(e,5e3);return()=>clearInterval(t)},[]),(0,U.useEffect)(()=>{if(l!==`sessions`&&l!==`projects`)return;let e=p??kY();se(t=>t===e?t:e)},[l,p]),(0,U.useEffect)(()=>{vNe(oe)},[oe]),(0,U.useEffect)(()=>{le(!1)},[l]),(0,U.useEffect)(()=>{l===`sessions`&&oe!==`terminal`&&le(!1)},[l,oe]);let xt=(0,U.useCallback)(()=>{Ue(!1),Xe(!1),le(!0)},[]),St=(0,U.useCallback)((e,n=!1,r=oe,i={})=>{i.closeMobileSidebar!==!1&&Je(),gu(t,e,n,r,i.preserveHash===!0,i.preserveSearch===!0)},[Je,t,oe]),Ct=(0,U.useCallback)(e=>{ye.current=e},[]),wt=(0,U.useCallback)(async({current:e,next:t})=>{if(e.pathname===t.pathname)return!1;if(be.current)return be.current=!1,!1;let n=ye.current;if(!n)return!1;try{return await n(),!1}catch(e){return E(`Agent Designer changes were not saved: ${e instanceof Error?e.message:String(e)}`),!0}},[]);vs({disabled:i?o?.target.kind!==`route`||o.target.route.area!==`agents`:l!==`agents`,enableBeforeUnload:!1,shouldBlockFn:wt});let Tt=(0,U.useCallback)((e,t,n=!1,r={})=>{if(!t){St({area:`sessions`,...e?{roomId:e}:{}},n,oe,r);return}St({area:`sessions`,...e?{roomId:e}:{},piboSessionId:t},n,oe,r)},[St,oe]),Et=(0,U.useCallback)((e,t,n=!1,r={})=>{if(!t){St({area:`projects`,...e?{projectId:e}:{}},n,oe,r);return}St({area:`projects`,...e?{projectId:e}:{},piboSessionId:t},n,oe,r)},[St,oe]),Dt=(0,U.useCallback)(e=>{Fe(`build-context`),St({area:`context`,piboSessionId:e})},[St]),Ot=(0,U.useCallback)(e=>{Le(e),Fe(`context-files`),St({area:`context`})},[St]),kt=(0,U.useCallback)(e=>{ze(e),Fe(`mcp-tools`),St({area:`context`})},[St]),At=(0,U.useCallback)(e=>{_(t=>t&&P4e(t,e))},[]),jt=(0,U.useCallback)(e=>{_(t=>t&&F4e(t,e)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},t=>t&&F4e(t,e))},[n]),Mt=(0,U.useCallback)(e=>{_(t=>t&&I4e(t,e.id)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},t=>t&&I4e(t,e.id))},[n]),Nt=(0,U.useCallback)(e=>{_(t=>t&&L4e(t,e)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},t=>t&&L4e(t,e))},[n]),Pt=(0,U.useCallback)(e=>{_(t=>t&&R4e(t,e)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},t=>t&&R4e(t,e))},[n]),Ft=(0,U.useCallback)(e=>{let t=JSON.stringify([e.piboSessionId??``,e.includeArchived===!0?`archived`:`active`,e.roomId??``,e.force===!0?`force`:`cached`,iQ(n)]);if(e.signal)return F3e(n,e);let r=lt.current.get(t);if(r)return r;let i=F3e(n,e).finally(()=>{lt.current.get(t)===i&&lt.current.delete(t)});return lt.current.set(t,i),i},[n]),It=(0,U.useCallback)(async(e,t=at.current,r,i={})=>{let a=st.current;if(a&&i.selectSession!==!1&&!i.force){e&&Gl(e).catch(()=>void 0);let n=ct.current+1;ct.current=n;let o=T4e(a,await Ft({piboSessionId:e,includeArchived:t,roomId:r,signal:i.signal}),{readSessionId:e});if(n!==ct.current)return o;let s=vt(o);return _(s),S(s.selectedPiboSessionId),w(s.selectedRoomId),s}let o=ct.current+1;ct.current=o;let s=await P3e(n,{piboSessionId:e,includeArchived:t,roomId:r,markRead:i.selectSession!==!1,force:i.force,signal:i.signal});if(o!==ct.current)return s;let c=vt(s);return _(c),i.selectSession!==!1&&S(c.selectedPiboSessionId),w(c.selectedRoomId),c},[vt,n]),Lt=(0,U.useCallback)(async(e,t=at.current,n,r={})=>{let i=st.current;if(!i)return It(e,t,n,{force:r.force,signal:r.signal});let a=ct.current+1;ct.current=a;let o=T4e(i,await Ft({piboSessionId:e,includeArchived:t,roomId:n,force:r.force,signal:r.signal}),{readSessionId:r.readSessionId});if(a!==ct.current)return o;let s=vt(o);return _(s),S(s.selectedPiboSessionId),w(s.selectedRoomId),s},[Ft,It,vt]);(0,U.useEffect)(()=>{if(l!==`sessions`)return;let e=!1,t=!1,n=()=>{e||t||document.hidden||!st.current||b&&!_t||(t=!0,Lt(_t??void 0,at.current,ft??void 0,{force:!0}).catch(()=>void 0).finally(()=>{t=!1}))},r=window.setInterval(n,A3e),i=()=>{document.hidden||n()};return window.addEventListener(`focus`,n),document.addEventListener(`visibilitychange`,i),()=>{e=!0,window.clearInterval(r),window.removeEventListener(`focus`,n),document.removeEventListener(`visibilitychange`,i)}},[ft,l,Lt,_t,b]),(0,U.useEffect)(()=>{let{requestedRoomId:t,requestedPiboSessionId:n}=yWe(e,wY()),r=(t,n=!0)=>{let r=xWe(e,t);r&&Tt(r.selectedRoomId,r.selectedPiboSessionId,n,{preserveHash:!0,preserveSearch:!0})};if(bWe({bootstrap:g,creatingSession:ve.current,route:e}))return;let i=g?Lt:It,a=()=>{O(null),E(null)},o=e=>{st.current||O(TWe(e)),E(JQ(e))};i(n,at.current,t).then(e=>{r(e),a()}).catch(s=>{if(e.area===`sessions`&&u&&!f&&n){TY(u),i(void 0,at.current,u).then(e=>{r(e),a()}).catch(o);return}if(SWe(e)||!n&&!t){o(s);return}ENe(),i().then(e=>{r(e),a()}).catch(o)})},[g,It,Lt,Tt,e.area,f,u]),(0,U.useEffect)(()=>{!C&&!b||gNe({roomId:C??void 0,piboSessionId:b??void 0})},[b,C]),(0,U.useEffect)(()=>{pe(b?EY(b):``)},[b]);let Rt=(0,U.useCallback)(e=>{pe(t=>{let n=typeof e==`function`?e(t):e;return b&&DY(b,n),n})},[b]),zt=(0,U.useMemo)(()=>iWe(),[]),Bt=(0,U.useMemo)(()=>z3(oe),[oe]),Vt=(0,U.useMemo)(()=>z3(`terminal`),[]);(0,U.useEffect)(()=>{if(!g?.agents.length)return;let e=g.selectedRoomId;if(Ae||!e||e.startsWith(`optimistic-room-`))return;let t=jQ(g),n=FY(e),r=n?``:FY(),i=R3e(g.agents,n||r||t)?.name??R3e(g.agents,t)?.name??g.agents[0].name;V(i),ae(e),n!==i&&LY(i,e),r&&LY(``)},[g,Ae]);let Ht=(0,U.useCallback)(e=>{V(e);let t=C??st.current?.selectedRoomId;t&&(ae(t),LY(e,t))},[C]),Ut=(0,U.useCallback)(async e=>{let t=$Oe(e),r=!1;try{await Promise.all([n.invalidateQueries({queryKey:oQ(e),refetchType:`none`}),n.invalidateQueries({queryKey:sQ(e),refetchType:`none`})]),await Promise.all([n.refetchQueries({queryKey:oQ(e),type:`active`}),n.refetchQueries({queryKey:sQ(e),type:`active`})])}catch(e){throw r=!0,e}finally{eke(e,t,r)}},[n]),Wt=(0,U.useCallback)(()=>b?Ut(b):Promise.resolve(),[Ut,b]),Gt=(0,U.useCallback)(()=>Lt(b??void 0,at.current,C??void 0,{force:!0}),[Lt,b,C]),Kt=(0,U.useCallback)(async()=>{E(null);let e=b??void 0;await It(e,at.current,C??void 0,{force:!0,selectSession:!1}),e&&await Ut(e)},[It,Ut,b,C]),qt=(0,U.useCallback)(e=>{_(t=>t&&e(t)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},t=>t&&e(t))},[n]),Jt=(0,U.useCallback)((e,t)=>{_(n=>n&&V3(n,e,t)),n.setQueriesData({queryKey:[`chat`,`bootstrap`]},n=>n&&V3(n,e,t))},[n]),Yt=(0,U.useCallback)(async()=>{ct.current+=1,lt.current.clear(),await Promise.all([n.cancelQueries({queryKey:[`chat`,`bootstrap`]}),JFe(n)])},[n]),Xt=g?.latestRoomStreamId;(0,U.useEffect)(()=>{let e=K4e({area:l,activeRoomId:ft,bootstrapSelectedRoomId:g?.selectedRoomId,latestRoomStreamId:Xt});if(!e||!ft||typeof Xt!=`number`)return;let t,n,r=()=>{b&&!_t||(n&&clearTimeout(n),n=setTimeout(()=>{n=void 0,Lt(_t??void 0,at.current,ft,{force:!0}).catch(e=>{Q9(e)||E(JQ(e))})},900))},i=e=>{let t=qu(e);if(!t||t.type===`ready`)return;let n=N3e(e.lastEventId),i=n!==void 0&&n<=Xt,a=t.piboSessionId,o=nd(t);if(a&&o){let e=nt.current?.sessions[a]?.status??I9(tt.current?.sessions[a])??o,t=new Date().toISOString();qt(n=>J3(n,a,n=>({...n,status:e,lastActivityAt:t})))}!i&&Xu(t)&&r()},a=()=>{n&&clearTimeout(n),n=void 0,t?.close(),t=void 0},o=()=>{a(),t=new EventSource(e),t.addEventListener(`pibo`,i)};return o(),window.addEventListener(`pagehide`,a),window.addEventListener(`pageshow`,o),()=>{window.removeEventListener(`pagehide`,a),window.removeEventListener(`pageshow`,o),a()}},[ft,l,g?.selectedRoomId,Xt,Lt,_t,b,qt]);let Zt=(0,U.useCallback)((e,t)=>{if(e){_(U3(e.localBootstrap,t)??null);for(let[r,i]of e.queryData)n.setQueryData(r,U3(i,t)??void 0)}},[n]),{deleteRoomTarget:Qt,deleteRoomConfirmName:$t,deletingRoom:en,setDeleteRoomConfirmName:tn,requestRoomDelete:nn,cancelRoomDelete:rn,permanentlyDeleteRoom:an,deleteSessionTarget:on,deleteSessionConfirmText:sn,deletingSession:cn,setDeleteSessionConfirmText:ln,requestSessionDelete:un,cancelSessionDelete:dn,permanentlyDeleteSession:fn}=G4e({queryClient:n,bootstrap:g,selectedPiboSessionId:b,selectedRoomId:C,showArchivedRef:at,isSessionsArea:l===`sessions`,loadBootstrap:It,navigateToSelectedSession:Tt,updateBootstrapCache:qt,restoreBootstrapSnapshot:Zt,setSelectedPiboSessionId:S,setSelectedRoomId:w,setError:E}),pn=Wn({mutationFn:({profile:e,roomId:t})=>Ul(e||void 0,t),onMutate:async({profile:e,roomId:t})=>{y.current=null,await Yt();let n=t??g?.selectedRoomId??``,r=v.current,i=`optimistic-session-${FQ()}`;return st.current?.selectedRoomId===n&&S(i),Jt(n,t=>({...W3(t,pWe(i,e||jQ(t))),selectedPiboSessionId:i})),{tempId:i,previousSelectedPiboSessionId:r,originRoomId:n}},onError:(e,t,n)=>{let r=H3({status:`failure`,currentSelectedPiboSessionId:v.current,tempId:n?.tempId,previousSelectedPiboSessionId:n?.previousSelectedPiboSessionId});y.current=r,n?.originRoomId&&n.tempId&&Jt(n.originRoomId,e=>sWe(e,n.tempId,n.previousSelectedPiboSessionId??null)),S(r.selectedPiboSessionId)},onSuccess:(e,t,n)=>{let r=H3({status:`success`,currentSelectedPiboSessionId:v.current,tempId:n?.tempId,previousSelectedPiboSessionId:n?.previousSelectedPiboSessionId,createdPiboSessionId:e.session.id});y.current=r,n?.originRoomId&&Jt(n.originRoomId,t=>oWe(t,n.tempId,e6(e.session))),S(r.selectedPiboSessionId)}}),mn=Wn({mutationFn:({piboSessionId:e,title:t})=>Xl(e,{title:t}),onMutate:async({piboSessionId:e,title:t})=>{await Yt();let r=B3(n,g);return qt(n=>J3(n,e,e=>({...e,title:t||`Untitled Session`}))),{snapshot:r}},onError:(e,t,n)=>Zt(n?.snapshot),onSuccess:({session:e})=>qt(t=>q3(t,e))}),hn=Wn({mutationFn:({piboSessionId:e,archived:t})=>Xl(e,{archived:t}),onMutate:async({piboSessionId:e,archived:t})=>{await Yt();let r=B3(n,g);return qt(n=>J3(n,e,e=>({...e,archived:t,unreadCount:t?0:e.unreadCount}))),{snapshot:r}},onError:(e,t,n)=>Zt(n?.snapshot),onSuccess:({session:e})=>qt(t=>q3(t,e))}),gn=Wn({mutationFn:({piboSessionId:e,text:t,clientTxnId:n,roomId:r,webAnnotationIds:i,fileAttachmentPaths:a,delivery:o})=>Ql(e,t,n,r,i,a,o),onMutate:async({piboSessionId:e})=>{await n.cancelQueries({queryKey:sQ(e)}),qt(t=>J3(t,e,e=>({...e,status:`running`,lastActivityAt:new Date().toISOString()})))},onError:(e,t)=>{qt(e=>J3(e,t.piboSessionId,e=>({...e,status:`error`})))}}),_n=(0,U.useCallback)(async e=>{if(!(!b||!g||e===jQ(g)))try{await Xl(b,{profile:e});let t=await It(b,at.current,C??void 0);l===`sessions`&&Tt(t.selectedRoomId,t.selectedPiboSessionId),await Ut(b),E(null)}catch(e){E(e instanceof Error?e.message:String(e))}},[l,g,It,Tt,Ut,b,C]),vn=(0,U.useMemo)(()=>_We(g?.capabilities.actions??[]),[g]),yn=(0,U.useMemo)(()=>vWe(g,b),[g,b]),bn=(0,U.useCallback)(async e=>{let t=C??g?.selectedRoomId;(0,jl.flushSync)(()=>{S(e),ke(e),Je()}),qt(n=>E4e(n,e,t??n.selectedRoomId)),Tt(t,e,!1,{closeMobileSidebar:!1}),Gl(e).catch(()=>void 0),window.setTimeout(()=>{ke(t=>t===e?null:t)},50),window.setTimeout(()=>{st.current?.selectedPiboSessionId===e&&Lt(e,at.current,t,{readSessionId:e}).then(t=>{st.current?.selectedPiboSessionId===e&&Tt(t.selectedRoomId,t.selectedPiboSessionId,!0,{closeMobileSidebar:!1})}).catch(t=>{!Q9(t)&&st.current?.selectedPiboSessionId===e&&E(JQ(t))})},750)},[g?.selectedRoomId,Je,Lt,Tt,C,qt]),xn=(0,U.useCallback)(async(e,t={})=>{let n={...t,closeMobileSidebar:!1},r=wY().sessionsByRoom?.[e],i=dt.current+1;dt.current=i,ut.current?.abort();let a=new AbortController;ut.current=a,(0,jl.flushSync)(()=>{w(e),S(r??null),ae(null),je(e),Je()});try{let t=await Lt(r,at.current,e,{signal:a.signal});if(dt.current!==i||a.signal.aborted)return;Tt(t.selectedRoomId,t.selectedPiboSessionId,!1,n)}catch(t){if(Q9(t))return;if(!r)throw t;TY(e),S(null);let o=await Lt(void 0,at.current,e,{signal:a.signal});if(dt.current!==i||a.signal.aborted)return;Tt(o.selectedRoomId,o.selectedPiboSessionId,!1,n)}finally{dt.current===i&&(ut.current===a&&(ut.current=null),je(t=>t===e?null:t))}},[Je,Lt,Tt]),Sn=(0,U.useCallback)(()=>{let e=!te;if(ne(e),PY(e),e||!g)return;let t=eMe(g.rooms,ft);t&&xn(t,{closeMobileSidebar:!1}).catch(e=>{E(e instanceof Error?e.message:String(e))})},[ft,g,xn,te]),Cn=async(e=re)=>{if(ge||ht)return;let t=C??g?.selectedRoomId??``;ve.current=!0,_e(!0);try{let n=await pn.mutateAsync({profile:e,roomId:t||void 0}),r=y.current;if(r?.autoRenameCreatedSession&&Ne(n.session.id),r?.navigateToCreatedSession){Tt(t||void 0,n.session.id,!1,{closeMobileSidebar:!1});let e=await It(n.session.id,at.current,t||void 0,{force:!0});Tt(e.selectedRoomId,e.selectedPiboSessionId,!1,{closeMobileSidebar:!1})}E(null)}catch(e){E(e instanceof Error?e.message:String(e))}finally{y.current=null,ve.current=!1,_e(!1)}},wn=async()=>{let e=!B;if(ee(e),wNe(e),!e){we(!1),E(null);return}we(!0);try{let e=await Lt(b??void 0,!0,C??void 0);l===`sessions`&&Tt(e.selectedRoomId,e.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){E(e instanceof Error?e.message:String(e))}finally{we(!1)}},Tn=async(e,t)=>{try{await mn.mutateAsync({piboSessionId:e,title:t});let n=await It(b??void 0,at.current,C??void 0,{force:!0});l===`sessions`&&await Ut(n.selectedPiboSessionId),l===`sessions`&&Tt(n.selectedRoomId,n.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){E(e instanceof Error?e.message:String(e))}},En=async(e,t)=>{try{await hn.mutateAsync({piboSessionId:e,archived:t});let n=await It(t&&!B&&b===e?void 0:b??void 0,at.current,C??void 0,{force:!0});l===`sessions`&&Tt(n.selectedRoomId,n.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){E(e instanceof Error?e.message:String(e))}},Dn=async()=>{if(Be)return;Ve(!0),await n.cancelQueries({queryKey:[`chat`,`bootstrap`]});let e=B3(n,g),t=`optimistic-room-${FQ()}`,r=dWe(t,`New Chat`);w(t),S(null),ae(null),je(t),qt(e=>cWe(e,r));try{let e=await ql({name:`New Chat`});TY(t),IY(t),qt(n=>lWe(n,t,e.room)),await xn(e.room.id,{closeMobileSidebar:!1}),E(null)}catch(n){TY(t),IY(t),Zt(e),w(C),S(b),E(n instanceof Error?n.message:String(n))}finally{je(e=>e===t?null:e),Ve(!1)}},kn=async(e,t)=>{await n.cancelQueries({queryKey:[`chat`,`bootstrap`]});let r=B3(n,g);qt(n=>Y3(n,e,e=>({...e,...t.name===void 0?{}:{name:t.name},...t.topic===void 0?{}:{topic:t.topic??void 0},...t.workspace===void 0?{}:{workspace:t.workspace??void 0},updatedAt:new Date().toISOString()})));try{let{room:n}=await Jl(e,t);qt(t=>Y3(t,e,()=>n));let r=await It(b??void 0,at.current,e,{force:!0});l===`sessions`&&Tt(r.selectedRoomId,r.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){Zt(r),E(e instanceof Error?e.message:String(e))}},An=async e=>{try{await Kl(e);let t=await It(b??void 0,at.current,C??void 0,{force:!0,selectSession:!1});l===`sessions`&&Tt(t.selectedRoomId,t.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){E(e instanceof Error?e.message:String(e))}},jn=async(e,t)=>{await n.cancelQueries({queryKey:[`chat`,`bootstrap`]});let r=B3(n,g);t&&(ne(!0),PY(!0)),qt(n=>Y3(n,e,e=>fWe(e,t)));try{let{room:n}=await Jl(e,{archived:t});qt(t=>Y3(t,e,()=>n));let r=await It(b??void 0,at.current,C??void 0,{force:!0});l===`sessions`&&Tt(r.selectedRoomId,r.selectedPiboSessionId,!1,{closeMobileSidebar:!1}),E(null)}catch(e){Zt(r),E(e instanceof Error?e.message:String(e))}},Mn=(0,U.useCallback)(async e=>{if(!b||ht)return!1;let t=e.trim().split(/\s+/)[0],n=vn.find(e=>e.slash===t);if(!n)return!1;if(n.action===`thinking-show`){let e=!M;return N(e),AY(e),!0}if(n.action===`download`){let n=mWe(e.slice(t.length));if(!n)return E(`Usage: /download <path>`),!0;let r=`${b}:${n}`;if(j.current.has(r))return A(e=>e?.key===r?{...e,duplicateAttempted:!0}:{key:r,path:n,filename:X9(n),receivedBytes:0,status:`running`,duplicateAttempted:!0}),!0;j.current.add(r),A({key:r,path:n,filename:X9(n),receivedBytes:0,status:`starting`});try{let e=await Su(n,{piboSessionId:b,roomId:C??void 0,onStart:e=>A(t=>({...e,key:r,status:`running`,duplicateAttempted:t?.key===r&&t.duplicateAttempted})),onProgress:e=>A(t=>({...e,key:r,status:`running`,duplicateAttempted:t?.key===r&&t.duplicateAttempted}))});A(t=>({...e,key:r,status:`completed`,duplicateAttempted:t?.key===r&&t.duplicateAttempted})),E(null)}catch(e){let t=e instanceof Error?e.message:String(e);A(e=>({key:r,path:n,filename:e?.key===r?e.filename:X9(n),receivedBytes:e?.key===r?e.receivedBytes:0,totalBytes:e?.key===r?e.totalBytes:void 0,status:`failed`,error:t})),E(t)}finally{j.current.delete(r)}return!0}let r=r6(n.action,e.slice(t.length).trim()),i=gWe(await eu(b,n.action,r));if((n.action===`session.clone`||n.action===`session.fork`)&&i)await bn(i);else{let e=await It(b,at.current,C??void 0);l===`sessions`&&Tt(e.selectedRoomId,e.selectedPiboSessionId),await Ut(b)}return!0},[l,It,Tt,Ut,bn,b,ht,C,M,vn]),Nn=(0,U.useCallback)(async e=>{if(!b||ht)return;let t=hWe(await eu(b,`session.fork`,{entryId:e}));if(t?.result.cancelled)return;if(!t)throw Error(`Unexpected fork action response`);let n=typeof t.result.selectedText==`string`?t.result.selectedText:void 0;n!==void 0&&t.result.piboSessionId&&DY(t.result.piboSessionId,n),t.result.piboSessionId&&await bn(t.result.piboSessionId),n!==void 0&&(pe(n),he(e=>e+1))},[bn,b,ht]),Pn=(0,U.useCallback)(e=>void bn(e),[bn]),Fn=(0,U.useCallback)(e=>{if(se(e),l===`projects`){St({area:`projects`,...d?{projectId:d}:{},...f?{piboSessionId:f}:{}},!1,e);return}l===`sessions`&&St({area:`sessions`,...C?{roomId:C}:{},...b?{piboSessionId:b}:{}},!1,e)},[l,St,f,d,b,C]),In=(0,U.useMemo)(()=>g?Zq(g.sessions,B):{active:[],archived:[]},[g?.sessions,B]),Ln=(0,U.useMemo)(()=>Qje(In.active,H,b),[In.active,b,H]),Rn=(0,U.useMemo)(()=>B?In.archived.slice(0,Ee):[],[In.archived,B,Ee]),zn=In.active.length>Ln.length,Bn=B&&In.archived.length>Rn.length,Vn=(0,U.useMemo)(()=>b?new Set(PQ(g?.sessions??[],b).map(e=>e.piboSessionId)):j3e,[g?.sessions,b]),Hn=(0,U.useCallback)(async e=>{if(!ft)return;let t=(e?Rn:Ln).at(-1)?.piboSessionId;e?we(!0):Se(!0);try{let r=e?Y9:J9,i=await n.fetchQuery({queryKey:ZFe(ft,e,t,r),queryFn:()=>Hl({roomId:ft,piboSessionId:b??void 0,archived:e,cursor:t,limit:r}),staleTime:3e4,gcTime:18e5});_(e=>e&&vt({...e,sessions:N4e(e.sessions,i.sessions)})),e?De(e=>e+r):Te(e=>e+r)}finally{e?we(!1):Se(!1)}},[ft,vt,n,b,Ln,Rn]);if(D&&!g)return D.kind===`authentication-required`?(0,W.jsx)(o4e,{message:D.message}):(0,W.jsx)(s4e,{message:D.message,onRetry:()=>window.location.reload()});if(!g)return(0,W.jsx)(`div`,{className:`min-h-screen bg-[#101d22] text-slate-300 grid place-items-center`,children:`Loading Pibo Chat...`});let Un=b?NQ(g.sessions,b):void 0,Gn=b?$e?.sessions[b]:void 0,Kn=$e?.rootPiboSessionId?$e.sessions[$e.rootPiboSessionId]:void 0,qn=MQ(g,Un??{profile:jQ(g),parentId:g.session?.parentId}),Jn=tMe(g.rooms),Yn=[...new Set([...g.agents.map(e=>e.name),...g.customAgents.map(e=>e.profileName)])],Xn=AIe(g),Zn=ce&&(l===`sessions`||l===`projects`)&&(l===`projects`||oe===`terminal`),Qn=i&&ue&&s===`preview`,$n=Zn||Qn,er=Zn?`h-full overflow-hidden grid grid-cols-[minmax(0,1fr)]`:l===`vscode`||l===`workflows`||l===`cron`||l===`loops`?`h-full overflow-hidden`:`grid ${(l===`sessions`||l===`projects`)&&I?`grid-cols-[300px_minmax(0,1fr)_320px] max-[980px]:grid-cols-1`:`grid-cols-[300px_minmax(0,1fr)] max-[980px]:grid-cols-1`}`,tr=e=>{if(Xe(!1),e===`sessions`){Tt(C??g.selectedRoomId,b??g.selectedPiboSessionId);return}if(e===`projects`){St({area:`projects`});return}St({area:e})},nr={area:`sessions`,...C??g.selectedRoomId?{roomId:C??g.selectedRoomId}:{},...b??g.selectedPiboSessionId?{piboSessionId:b??g.selectedPiboSessionId}:{}},rr=async(e,t={})=>{let n=G9(a.state),r=t.saveClosingTab?.target.kind===`route`&&t.saveClosingTab.target.route.area===`agents`||n?.target.kind===`route`&&n.target.route.area===`agents`&&n.id!==e.activeTabId,i=await o3e({current:a.state,next:e,sessionsRoute:nr,closingTab:t.saveClosingTab,autosave:ye.current,onCommit:a.setState,onNavigate:e=>{r&&(be.current=!0),St(e),r&&window.setTimeout(()=>{be.current=!1},0)}});return i.allowed?!0:(E(`Agent Designer changes were not saved: ${i.error instanceof Error?i.error.message:String(i.error)}`),!1)},ir=e=>{rr(e)},ar=async e=>{let t=D3e(a.state,e);await rr(t)},or=async e=>{await rr(O3e(a.state,e.id))},sr=async e=>rr(Q4e(a.state,e.id),{saveClosingTab:e}),cr=e=>{let t=a.state.tabs.find(t=>t.target.kind===`session-tool`&&t.target.tool===e);t&&sr(t)},lr=async e=>{e&&!await sr(e)||(Tt(C??g.selectedRoomId,b??g.selectedPiboSessionId),window.setTimeout(()=>document.querySelector(`[data-pibo-debug="desktop-session-sidebar"] button`)?.focus(),0))},ur=(e,t)=>{if(e.target.kind===`new-tab`)return null;if(e.target.kind===`session-tool`)return(0,W.jsx)(`div`,{ref:Ke[e.target.tool],className:`h-full min-h-0 overflow-hidden ${e.target.tool===`preview`?`flex flex-col`:``}`,"data-pibo-debug":`desktop-session-tool-${e.target.tool}`});let n=e.target.route;if(n.area===`vscode`)return(0,W.jsx)(X2e,{integration:g.integrations?.vscode});if(n.area===`cron`)return(0,W.jsx)(Sq,{bootstrap:g,mobileSidebarOpen:!1,onCloseMobileSidebar:()=>void 0});if(n.area===`loops`)return(0,W.jsx)(aJ,{bootstrap:g,mobileSidebarOpen:!1,onCloseMobileSidebar:()=>void 0});if(n.area===`agents`)return(0,W.jsx)(lY,{agents:g.agents,initialCustomAgents:g.customAgents,initialAgentFolders:g.agentFolders,initialCatalog:g.agentCatalog,modelCatalog:g.modelCatalog,onCreateSession:e=>void Cn(e),onEditContextFile:Ot,onEditMcpServer:kt,onAgentsChanged:()=>void It(b??void 0,at.current,C??void 0,{selectSession:!1}),onAutosaveHandlerChange:Ct,creatingSession:ge||ht,mobileSidebarOpen:!1,isMobileSidebarViewport:!1,onCloseMobileSidebar:()=>void 0});if(n.area===`workflows`)return(0,W.jsx)(W2e,{route:n,surface:`desktop`,fallback:(0,W.jsx)(F2e,{draftId:n.draftId,onNavigateDraft:e=>{t&&St({area:`workflows`,draftId:e})}})});if(n.area===`projects`)return(0,W.jsx)(b6,{baseBootstrap:g,routeProjectId:n.projectId,routePiboSessionId:n.piboSessionId,sessionViews:zt,showRawEvents:I,showThinking:M,expandThinking:P,toolDisplayMode:R,commands:vn,skills:yn,mobileSidebarOpen:!1,onCloseMobileSidebar:()=>void 0,terminalFullscreen:!1,onEnterTerminalFullscreen:()=>void 0,onExitTerminalFullscreen:()=>void 0,onNavigate:t?Et:()=>void 0,onViewContext:Dt,onSelectSessionView:e=>St({...n,sessionViewId:e},!1,e),onToggleRawEvents:()=>{let e=!I;L(e),NY(e)},onToggleThinking:()=>{let e=!M;N(e),AY(e)},onToggleExpandThinking:()=>{let e=!P;F(e),jY(e)},onToolDisplayModeChange:e=>{z(e),MY(e)},onThinkingLevelChange:e=>void eu(n.piboSessionId??``,`thinking`,{level:e}),onError:E});if(n.area===`context`)return(0,W.jsxs)(`div`,{className:`grid h-full min-h-0 grid-cols-[210px_minmax(0,1fr)] overflow-hidden`,children:[(0,W.jsx)(`aside`,{className:`min-h-0 overflow-hidden border-r border-slate-800 bg-[#1a262b]`,children:(0,W.jsx)(gq,{activePanel:Pe,onSelect:Fe,toolCount:g.agentCatalog?.piboTools.length??0,mcpServerCount:g.agentCatalog?.mcpServers.length??0})}),(0,W.jsx)(`main`,{className:`min-h-0 overflow-auto`,children:Pe===`pibo-tools`?(0,W.jsx)(pG,{tools:g.agentCatalog?.piboTools??[]}):Pe===`mcp-tools`?(0,W.jsx)(gG,{servers:g.agentCatalog?.mcpServers??[],selectedServerName:Re,onServerSaved:At}):Pe===`build-context`?(0,W.jsx)(cq,{piboSessionId:n.piboSessionId??b}):Pe===`base-prompt`?(0,W.jsx)(aU,{}):Pe===`compaction-prompt`?(0,W.jsx)(oU,{}):(0,W.jsx)(ZH,{agentProfiles:Yn,selectedFileKey:Ie})})]});let r=n.panel??`general`;return(0,W.jsxs)(`div`,{className:`grid h-full min-h-0 grid-cols-[210px_minmax(0,1fr)] overflow-hidden`,children:[(0,W.jsx)(`aside`,{className:`min-h-0 overflow-hidden border-r border-slate-800 bg-[#1a262b]`,children:(0,W.jsx)(a6,{activePanel:r,onSelect:e=>St({area:`settings`,panel:e}),piPackageCount:g.agentCatalog?.piPackages.length??0,userSkillCount:g.agentCatalog?.userSkills.length??0})}),(0,W.jsx)(`main`,{className:`min-h-0 overflow-auto`,children:(0,W.jsx)(p6,{activePanel:r,showThinking:M,setShowThinking:N,expandThinking:P,setExpandThinking:F,modelDefaults:g.modelDefaults,modelCatalog:g.modelCatalog,onModelDefaultsChanged:e=>_(t=>t&&{...t,modelDefaults:e}),piPackages:g.agentCatalog?.piPackages,onPiPackageChanged:jt,onPiPackageRemoved:Mt,userSkills:g.agentCatalog?.userSkills,onUserSkillChanged:Nt,onUserSkillRemoved:Pt,piboSessionId:b,onProviderAuthChanged:Kt})})]})};return(0,W.jsxs)(W.Fragment,{children:[Ze===`fallback`&&!$n?(0,W.jsx)(r4e,{}):null,(0,W.jsxs)(`div`,{"data-pibo-debug":`chat-app`,"data-pibo-area":l,"data-pibo-room-id":C??g.selectedRoomId??void 0,"data-pibo-selected-session-id":b??g.selectedPiboSessionId??void 0,"data-pibo-terminal-fullscreen":Zn?`true`:`false`,"data-pibo-preview-fullscreen":Qn?`true`:`false`,className:`h-dvh overflow-hidden bg-[#101d22] text-slate-200 grid ${$n?`grid-rows-[1fr]`:`grid-rows-[auto_auto_1fr]`}`,children:[$n?null:(0,W.jsx)(i4e,{area:l,desktopTabMode:i,identity:Xn,mobileAreaMenuOpen:Ye,mobileSidebarTriggerRef:qe,totalRoomUnreadCount:Jn,vscodeEnabled:!!g.integrations?.vscode,showMobileSidebarTrigger:l!==`vscode`,onOpenMobileSidebar:()=>Ue(!0),onSelectMainNavArea:tr,onToggleMobileAreaMenu:()=>Xe(e=>!e),onCloseMobileAreaMenu:()=>Xe(!1)}),$n?null:(0,W.jsxs)(`div`,{children:[T?(0,W.jsx)(a4e,{message:T,onDismiss:()=>E(null)}):null,k?(0,W.jsx)(L3e,{status:k,onDismiss:()=>A(null)}):null]}),i?(0,W.jsxs)(`div`,{"data-pibo-debug":`desktop-route-shell`,"data-pibo-area":c?.area??`sessions`,className:`min-h-0 flex overflow-hidden`,children:[(0,W.jsxs)(`aside`,{"data-pibo-debug":`desktop-session-sidebar`,tabIndex:-1,hidden:$n,"aria-hidden":$n||void 0,className:`min-h-0 w-[300px] shrink-0 overflow-hidden border-r border-slate-800 bg-[#1a262b] flex flex-col outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[#11a4d4]`,children:[(0,W.jsxs)(`div`,{className:`h-11 px-3 border-b border-slate-800 flex items-center justify-between text-xs font-bold uppercase tracking-wider`,children:[(0,W.jsx)(`span`,{children:`Sessions`}),(0,W.jsx)(`button`,{type:`button`,onClick:()=>void It(b??void 0,at.current,C??void 0,{force:!0}).then(e=>{b&&Ut(b),Tt(e.selectedRoomId,e.selectedPiboSessionId)}),title:`Refresh Sessions`,"aria-label":`Refresh Sessions`,className:`p-1 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[#11a4d4]`,children:(0,W.jsx)(il,{size:13})})]}),(0,W.jsx)(o$,{bootstrap:g,selectedRoomId:C,selectedPiboSessionId:b,showArchivedRooms:te,onToggleArchivedRooms:Sn,creatingRoom:Be,onCreateRoom:()=>Dn(),onSelectRoom:xn,loadingRoomId:Ae,roomSessionsLoading:gt,onUpdateRoom:kn,onArchiveRoom:jn,onReadAllRoom:An,onDeleteRoom:nn,newSessionProfile:re,newSessionProfileReady:ie===(C??g.selectedRoomId),onNewSessionProfileChange:Ht,selectedRoomArchived:ht,creatingSession:ge,onCreateSession:()=>Cn(),showArchived:B,onToggleArchivedSessions:wn,loadingArchivedSessions:Ce,visibleActiveSessions:Ln,visibleArchivedSessions:Rn,totalActiveSessionCount:In.active.length,totalArchivedSessionCount:In.archived.length,hasMoreActiveSessions:zn,hasMoreArchivedSessions:Bn,loadingActiveSessions:xe,sessionListScrollRef:ot,onLoadMoreSessions:Hn,signalNow:rt,selectedSessionPathIds:Vn,onSelectSession:bn,onRenameSession:Tn,onArchiveSession:En,onDeleteSession:un,onViewContext:Dt,loadingPiboSessionId:Oe,autoRenameSessionId:Me,onAutoRenameConsumed:()=>Ne(null)})]}),(0,W.jsx)(`main`,{"data-pibo-debug":`desktop-session-center`,hidden:Qn,"aria-hidden":Qn||void 0,className:`min-h-0 flex-1 overflow-hidden ${Zn?`min-w-0`:`min-w-[420px]`}`,children:(0,W.jsx)(r$,{bootstrap:g,selectedPiboSessionId:b,selectedRoomId:C,contextLabel:mt,selectedRoomArchived:ht,roomNavigationPending:gt,sessionNavigationPending:!!(Oe&&Oe===b),selectedSessionProfile:Un?.profile??jQ(g),selectedSessionActiveModel:qn,selectedSessionStatus:I9(Gn??Kn)??Un?.status,selectedSessionSignal:Gn,signals:$e??void 0,sessionViewId:`terminal`,sessionViews:zt,currentSessionView:Vt,desktopTerminalOnly:!0,creatingSession:ge,terminalFullscreen:Zn,onEnterTerminalFullscreen:xt,onExitTerminalFullscreen:()=>le(!1),showRawEvents:I,showThinking:M,expandThinking:P,toolDisplayMode:R,commands:vn,skills:yn,composerText:fe,composerFocusSignal:me,onComposerTextChange:Rt,onToggleRawEvents:()=>ar({kind:`session-tool`,tool:`raw-events`}),onToggleThinking:()=>{let e=!M;N(e),AY(e)},onToggleExpandThinking:()=>{let e=!P;F(e),jY(e)},onToolDisplayModeChange:e=>{z(e),MY(e)},onSessionAgentProfileChange:e=>void _n(e),onFork:Nn,onOpenSession:Pn,onSelectSessionView:Fn,onCommand:Mn,onThinkingLevelChange:e=>void Mn(`/thinking ${e}`),onRefreshTrace:Wt,onRefreshBootstrap:Gt,desktopActiveTool:s,desktopToolHosts:We,onOpenDesktopTool:e=>void ar({kind:`session-tool`,tool:e}),onCloseDesktopTool:cr,desktopPreviewFullscreen:Qn,onEnterDesktopPreviewFullscreen:()=>de(!0),onExitDesktopPreviewFullscreen:()=>de(!1),onSend:async(e,t,n,r,i)=>{if(!(IQ(b,ht)||!b))try{await gn.mutateAsync({piboSessionId:b,text:e,clientTxnId:r??FQ(),roomId:C??void 0,webAnnotationIds:t,fileAttachmentPaths:n,delivery:i}),await It(b,at.current,C??void 0,{force:!0}),E(null)}catch(e){throw E(e instanceof Error?e.message:String(e)),e}},onError:E})}),(0,W.jsx)(C3e,{state:a.state,vscodeEnabled:!!g.integrations?.vscode,onStateChange:ir,onActivate:e=>void or(e),onClose:sr,onFocusSessions:e=>void lr(e),renderPanel:(e,t)=>ur(e,t),hidden:Zn,fullscreen:Qn}),Qt?(0,W.jsx)(Q2e,{room:Qt,confirmName:$t,deleting:en,onConfirmNameChange:tn,onCancel:rn,onDelete:()=>void an()}):null,on?(0,W.jsx)(Z2e,{session:on,confirmText:sn,deleting:cn,onConfirmTextChange:ln,onCancel:dn,onDelete:()=>void fn()}):null]}):(0,W.jsx)(`div`,{"data-pibo-debug":`route-shell`,"data-pibo-area":l,"data-pibo-room-id":C??g.selectedRoomId??void 0,"data-pibo-selected-session-id":b??void 0,className:`min-h-0 ${er}`,children:l===`vscode`?(0,W.jsx)(X2e,{integration:g.integrations?.vscode}):l===`cron`?(0,W.jsx)(Sq,{bootstrap:g,mobileSidebarOpen:He,onCloseMobileSidebar:Je}):l===`loops`?(0,W.jsx)(aJ,{bootstrap:g,mobileSidebarOpen:He,onCloseMobileSidebar:Je}):l===`agents`?(0,W.jsx)(lY,{agents:g.agents,initialCustomAgents:g.customAgents,initialAgentFolders:g.agentFolders,initialCatalog:g.agentCatalog,modelCatalog:g.modelCatalog,onCreateSession:e=>void Cn(e),onEditContextFile:Ot,onEditMcpServer:kt,onAgentsChanged:()=>void It(b??void 0,at.current,C??void 0,{selectSession:!1}),onAutosaveHandlerChange:Ct,creatingSession:ge||ht,mobileSidebarOpen:He,isMobileSidebarViewport:r,onCloseMobileSidebar:Je}):l===`workflows`?(0,W.jsx)(W2e,{route:e.area===`workflows`?e:{area:`workflows`,draftId:m},surface:`mobile`,fallback:(0,W.jsx)(F2e,{draftId:m,onNavigateDraft:e=>St({area:`workflows`,draftId:e})})}):l===`projects`?(0,W.jsx)(b6,{baseBootstrap:g,routeProjectId:d,routePiboSessionId:f,sessionViews:zt,showRawEvents:I,showThinking:M,expandThinking:P,toolDisplayMode:R,commands:vn,skills:yn,mobileSidebarOpen:He,onCloseMobileSidebar:Je,terminalFullscreen:Zn,onEnterTerminalFullscreen:xt,onExitTerminalFullscreen:()=>le(!1),onNavigate:Et,onViewContext:Dt,onSelectSessionView:Fn,onToggleRawEvents:()=>{let e=!I;L(e),NY(e)},onToggleThinking:()=>{let e=!M;N(e),AY(e)},onToggleExpandThinking:()=>{let e=!P;F(e),jY(e)},onToolDisplayModeChange:e=>{z(e),MY(e)},onThinkingLevelChange:e=>void eu(f??``,`thinking`,{level:e}),onError:E}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{"data-pibo-mobile-sidebar-backdrop":!0,"aria-hidden":`true`,className:`fixed inset-0 z-30 bg-black/60 min-[981px]:hidden transition-opacity duration-200 ${Zn?`hidden`:He?`opacity-100 pointer-events-auto`:`opacity-0 pointer-events-none`}`,onClick:Je}),(0,W.jsxs)(`aside`,{"data-pibo-mobile-sidebar":!0,...yq(r,He,`Chat sidebar`),"data-pibo-debug":`sidebar-shell`,"data-pibo-area":l,"data-pibo-room-id":C??g.selectedRoomId??void 0,"data-pibo-selected-session-id":b??void 0,"data-pibo-state":He?`open`:`closed`,className:`min-h-0 overflow-hidden flex flex-col bg-[#1a262b] border-r border-slate-800 max-[980px]:fixed max-[980px]:left-0 max-[980px]:top-0 max-[980px]:bottom-0 max-[980px]:z-40 max-[980px]:w-[280px] max-[980px]:transition-transform max-[980px]:duration-200 ${Zn?`hidden`:He?`max-[980px]:translate-x-0`:`max-[980px]:-translate-x-full`}`,children:[(0,W.jsxs)(`div`,{className:`h-11 px-3 border-b border-slate-800 flex items-center justify-between text-xs font-bold uppercase tracking-wider max-[980px]:h-auto max-[980px]:py-2 max-[980px]:flex-wrap`,children:[(0,W.jsx)(`span`,{children:l}),(0,W.jsxs)(`div`,{className:`flex items-center gap-1`,children:[l===`sessions`?(0,W.jsx)(`button`,{type:`button`,onClick:()=>void It(b??void 0,at.current,C??void 0,{force:!0}).then(e=>{b&&Ut(b),l===`sessions`&&Tt(e.selectedRoomId,e.selectedPiboSessionId)}),title:`Refresh`,"aria-label":`Refresh`,className:`p-1 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:(0,W.jsx)(il,{size:13})}):null,(0,W.jsx)(`button`,{type:`button`,onClick:Je,className:`min-[981px]:hidden p-1 border border-slate-700 rounded-sm text-slate-400 hover:border-[#11a4d4] hover:text-[#11a4d4]`,title:`Close sidebar`,"aria-label":`Close sidebar`,children:(0,W.jsx)(Al,{size:13})})]})]}),l===`sessions`?(0,W.jsx)(o$,{bootstrap:g,selectedRoomId:C,selectedPiboSessionId:b,showArchivedRooms:te,onToggleArchivedRooms:Sn,creatingRoom:Be,onCreateRoom:()=>Dn(),onSelectRoom:xn,loadingRoomId:Ae,roomSessionsLoading:gt,onUpdateRoom:kn,onArchiveRoom:jn,onReadAllRoom:An,onDeleteRoom:nn,newSessionProfile:re,newSessionProfileReady:ie===(C??g.selectedRoomId),onNewSessionProfileChange:Ht,selectedRoomArchived:ht,creatingSession:ge,onCreateSession:()=>Cn(),showArchived:B,onToggleArchivedSessions:wn,loadingArchivedSessions:Ce,visibleActiveSessions:Ln,visibleArchivedSessions:Rn,totalActiveSessionCount:In.active.length,totalArchivedSessionCount:In.archived.length,hasMoreActiveSessions:zn,hasMoreArchivedSessions:Bn,loadingActiveSessions:xe,sessionListScrollRef:ot,onLoadMoreSessions:Hn,signalNow:rt,selectedSessionPathIds:Vn,onSelectSession:bn,onRenameSession:Tn,onArchiveSession:En,onDeleteSession:un,onViewContext:Dt,loadingPiboSessionId:Oe,autoRenameSessionId:Me,onAutoRenameConsumed:()=>Ne(null)}):l===`context`?(0,W.jsx)(gq,{activePanel:Pe,onSelect:Fe,toolCount:g.agentCatalog?.piboTools.length??0,mcpServerCount:g.agentCatalog?.mcpServers.length??0}):(0,W.jsx)(a6,{activePanel:h,onSelect:e=>St({area:`settings`,panel:e}),piPackageCount:g.agentCatalog?.piPackages.length??0,userSkillCount:g.agentCatalog?.userSkills.length??0})]}),l===`sessions`?(0,W.jsx)(r$,{bootstrap:g,selectedPiboSessionId:b,selectedRoomId:C,contextLabel:mt,selectedRoomArchived:ht,roomNavigationPending:gt,sessionNavigationPending:!!(Oe&&Oe===b),selectedSessionProfile:Un?.profile??jQ(g),selectedSessionActiveModel:qn,selectedSessionStatus:I9(Gn??Kn)??Un?.status,selectedSessionSignal:Gn,signals:$e??void 0,sessionViewId:oe,sessionViews:zt,currentSessionView:Bt,creatingSession:ge,terminalFullscreen:Zn,onEnterTerminalFullscreen:xt,onExitTerminalFullscreen:()=>le(!1),showRawEvents:I,showThinking:M,expandThinking:P,toolDisplayMode:R,commands:vn,skills:yn,composerText:fe,composerFocusSignal:me,onComposerTextChange:Rt,onToggleRawEvents:()=>{let e=!I;L(e),NY(e)},onToggleThinking:()=>{let e=!M;N(e),AY(e)},onToggleExpandThinking:()=>{let e=!P;F(e),jY(e)},onToolDisplayModeChange:e=>{z(e),MY(e)},onSessionAgentProfileChange:e=>void _n(e),onFork:Nn,onOpenSession:Pn,onSelectSessionView:Fn,onCommand:Mn,onThinkingLevelChange:e=>void Mn(`/thinking ${e}`),onRefreshTrace:Wt,onRefreshBootstrap:Gt,onSend:async(e,t,n,r,i)=>{if(!(IQ(b,ht)||!b))try{await gn.mutateAsync({piboSessionId:b,text:e,clientTxnId:r??FQ(),roomId:C??void 0,webAnnotationIds:t,fileAttachmentPaths:n,delivery:i}),await It(b,at.current,C??void 0,{force:!0}),E(null)}catch(e){throw E(e instanceof Error?e.message:String(e)),e}},onError:E}):(0,W.jsx)(`main`,{className:`min-h-0 flex flex-col`,children:l===`context`?Pe===`pibo-tools`?(0,W.jsx)(pG,{tools:g.agentCatalog?.piboTools??[]}):Pe===`mcp-tools`?(0,W.jsx)(gG,{servers:g.agentCatalog?.mcpServers??[],selectedServerName:Re,onServerSaved:At}):Pe===`build-context`?(0,W.jsx)(cq,{piboSessionId:f??null}):Pe===`base-prompt`?(0,W.jsx)(aU,{}):Pe===`compaction-prompt`?(0,W.jsx)(oU,{}):(0,W.jsx)(ZH,{agentProfiles:Yn,selectedFileKey:Ie}):(0,W.jsx)(p6,{activePanel:h,showThinking:M,setShowThinking:N,expandThinking:P,setExpandThinking:F,modelDefaults:g.modelDefaults,modelCatalog:g.modelCatalog,onModelDefaultsChanged:e=>{_(t=>t&&{...t,modelDefaults:e})},piPackages:g.agentCatalog?.piPackages,onPiPackageChanged:jt,onPiPackageRemoved:Mt,userSkills:g.agentCatalog?.userSkills,onUserSkillChanged:Nt,onUserSkillRemoved:Pt,piboSessionId:b,onProviderAuthChanged:Kt})}),Qt?(0,W.jsx)(Q2e,{room:Qt,confirmName:$t,deleting:en,onConfirmNameChange:tn,onCancel:rn,onDelete:()=>void an()}):null,on?(0,W.jsx)(Z2e,{session:on,confirmText:sn,deleting:cn,onConfirmTextChange:ln,onCancel:dn,onDelete:()=>void fn()}):null]})})]})]})}function L3e({status:e,onDismiss:t}){let n=e.status===`starting`||e.status===`running`,r=e.totalBytes&&e.totalBytes>0?Math.min(100,Math.max(0,e.receivedBytes/e.totalBytes*100)):void 0,i=e.status===`failed`?`border-red-500/40 bg-red-500/10 text-red-100`:e.status===`completed`?`border-emerald-500/40 bg-emerald-500/10 text-emerald-100`:`border-[#11a4d4]/40 bg-[#11a4d4]/10 text-slate-100`,a=e.status===`completed`?`Download ready`:e.status===`failed`?`Download failed`:`Download in progress`;return(0,W.jsx)(`div`,{className:`border-b px-4 py-2 text-sm ${i}`,role:`status`,"aria-live":`polite`,children:(0,W.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,W.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,W.jsx)(`div`,{className:`text-[11px] font-bold uppercase tracking-wider opacity-80`,children:a}),(0,W.jsx)(`div`,{className:`min-w-0 truncate font-medium`,title:e.path,children:e.filename}),(0,W.jsxs)(`div`,{className:`mt-1 text-xs text-slate-300`,children:[M3e(e),e.duplicateAttempted&&n?(0,W.jsx)(`span`,{className:`ml-2 text-amber-200`,children:`Already downloading this file. Please wait.`}):null]}),r!==void 0&&n?(0,W.jsx)(`div`,{className:`mt-2 h-1.5 overflow-hidden rounded-sm bg-[#0e1116]`,"aria-label":`Download progress ${Math.floor(r)}%`,children:(0,W.jsx)(`div`,{className:`h-full bg-[#11a4d4] transition-[width]`,style:{width:`${r}%`}})}):null,r===void 0&&n?(0,W.jsx)(`div`,{className:`mt-2 h-1.5 overflow-hidden rounded-sm bg-[#0e1116]`,children:(0,W.jsx)(`div`,{className:`h-full w-1/3 animate-pulse bg-[#11a4d4]`})}):null]}),n?null:(0,W.jsx)(`button`,{type:`button`,onClick:t,className:`shrink-0 rounded-sm border border-slate-600 px-2 py-1 text-[11px] uppercase tracking-wider text-slate-200 hover:border-[#11a4d4] hover:text-[#11a4d4]`,children:`Dismiss`})]})})}function R3e(e,t){return e.find(e=>e.name===t||e.aliases.includes(t))}var z3e=new wn({defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:1}}});function B3e(){let e=ys({select:e=>({pathname:e.location.pathname,search:e.location.search})});return(0,W.jsx)(I3e,{route:fu(e.pathname,e.search)})}var $9=Xo({component:B3e}),V3e=Jo({getParentRoute:()=>$9,path:`/`}),H3e=Jo({getParentRoute:()=>$9,path:`sessions/$piboSessionId`}),U3e=Jo({getParentRoute:()=>$9,path:`rooms/$roomId`}),W3e=Jo({getParentRoute:()=>$9,path:`rooms/$roomId/sessions/$piboSessionId`}),G3e=Jo({getParentRoute:()=>$9,path:`projects`}),K3e=Jo({getParentRoute:()=>$9,path:`projects/$projectId`}),q3e=Jo({getParentRoute:()=>$9,path:`projects/$projectId/sessions/$piboSessionId`}),J3e=Jo({getParentRoute:()=>$9,path:`vscode`}),Y3e=Jo({getParentRoute:()=>$9,path:`workflows`}),X3e=Jo({getParentRoute:()=>$9,path:`workflows/drafts/$draftId`}),Z3e=Jo({getParentRoute:()=>$9,path:`workflows/view/$workflowId/$workflowVersion`}),Q3e=Jo({getParentRoute:()=>$9,path:`agents`}),$3e=Jo({getParentRoute:()=>$9,path:`cron`}),e6e=Jo({getParentRoute:()=>$9,path:`loops`}),t6e=Jo({getParentRoute:()=>$9,path:`ralph`}),n6e=Jo({getParentRoute:()=>$9,path:`context`}),r6e=Jo({getParentRoute:()=>$9,path:`settings`}),i6e=Jo({getParentRoute:()=>$9,path:`settings/concurrency`}),a6e=Jo({getParentRoute:()=>$9,path:`settings/previews`}),o6e=Jo({getParentRoute:()=>$9,path:`settings/transcription`}),s6e=Jo({getParentRoute:()=>$9,path:`settings/speech`}),c6e=Jo({getParentRoute:()=>$9,path:`settings/shortcuts`}),l6e=Jo({getParentRoute:()=>$9,path:`settings/maintenance`}),u6e=Jo({getParentRoute:()=>$9,path:`settings/pi-packages`}),d6e=Jo({getParentRoute:()=>$9,path:`settings/skills`}),f6e=Jo({getParentRoute:()=>$9,path:`settings/providers`}),p6e=ps({routeTree:$9.addChildren([V3e,H3e,U3e,W3e,G3e,K3e,q3e,J3e,Y3e,X3e,Z3e,Q3e,$3e,e6e,t6e,n6e,r6e,i6e,a6e,o6e,s6e,c6e,l6e,u6e,d6e,f6e]),basepath:`/apps/chat`,stringifySearch:hu});`serviceWorker`in navigator&&window.addEventListener(`load`,()=>{let e=!1;navigator.serviceWorker.addEventListener(`controllerchange`,()=>{e||(e=!0,window.location.reload())}),navigator.serviceWorker.register(`/apps/chat/sw.js`).then(e=>{e.addEventListener(`updatefound`,()=>{let t=e.installing;t&&t.addEventListener(`statechange`,()=>{t.state===`installed`&&navigator.serviceWorker.controller&&t.postMessage({type:`PIBO_CHAT_SKIP_WAITING`})})}),window.setInterval(()=>{e.update()},3e5)}).catch(()=>{})}),(0,Ml.createRoot)(document.getElementById(`root`)).render((0,W.jsx)(U.StrictMode,{children:(0,W.jsx)(kn,{client:z3e,children:(0,W.jsx)(gs,{router:p6e})})}));export{tL as n,PL as t};