@tonyclaw/agent-inspector 2.1.5 → 2.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/assets/{CompareDrawer-SAn2KFl2.js → CompareDrawer-Djazxhew.js} +1 -1
  3. package/.output/public/assets/{ProxyViewerContainer-DaiTFf7n.js → ProxyViewerContainer-BC-z9RPh.js} +40 -40
  4. package/.output/public/assets/{ReplayDialog-CCwz0YUV.js → ReplayDialog-BaD4R6ac.js} +1 -1
  5. package/.output/public/assets/{RequestAnatomy-DXcC4ydl.js → RequestAnatomy-w6uGdqYp.js} +1 -1
  6. package/.output/public/assets/{ResponseView-Bh9t9aZF.js → ResponseView-VPed-Yif.js} +1 -1
  7. package/.output/public/assets/{StreamingChunkSequence-B69M2rr-.js → StreamingChunkSequence-CPB8FgHI.js} +1 -1
  8. package/.output/public/assets/_sessionId-mnr0O0Ri.js +1 -0
  9. package/.output/public/assets/index-DH1DjJOl.js +1 -0
  10. package/.output/public/assets/index-DP4NzCZ5.css +1 -0
  11. package/.output/public/assets/{main-DZVKUeg6.js → main-CIV3Chb5.js} +2 -2
  12. package/.output/server/{_sessionId-COVUf_EG.mjs → _sessionId-CIXQGim9.mjs} +2 -2
  13. package/.output/server/_ssr/{CompareDrawer-DqQHO4tk.mjs → CompareDrawer-_uFgjkB2.mjs} +2 -2
  14. package/.output/server/_ssr/{ProxyViewerContainer-BEeF4V-C.mjs → ProxyViewerContainer-D8YjQDNj.mjs} +227 -34
  15. package/.output/server/_ssr/{ReplayDialog-DUZbsd5x.mjs → ReplayDialog-CFwKM7jc.mjs} +3 -3
  16. package/.output/server/_ssr/{RequestAnatomy-DKuIxoBj.mjs → RequestAnatomy-2Vr84GxT.mjs} +2 -2
  17. package/.output/server/_ssr/{ResponseView-BB9CYmTJ.mjs → ResponseView-CSBWBHRJ.mjs} +2 -2
  18. package/.output/server/_ssr/{StreamingChunkSequence-CkY3uTjF.mjs → StreamingChunkSequence-Dr4JApqs.mjs} +2 -2
  19. package/.output/server/_ssr/{index-CHTchkrO.mjs → index-WnsY1fh_.mjs} +2 -2
  20. package/.output/server/_ssr/index.mjs +2 -2
  21. package/.output/server/_ssr/{router-C8DJ5pQZ.mjs → router-sy38X5AX.mjs} +4 -4
  22. package/.output/server/{_tanstack-start-manifest_v-Z1ffcxDr.mjs → _tanstack-start-manifest_v-Dde-eACV.mjs} +1 -1
  23. package/.output/server/index.mjs +68 -68
  24. package/package.json +1 -1
  25. package/src/components/groups/GroupsDialog.tsx +255 -28
  26. package/.output/public/assets/_sessionId-6fF5JpyQ.js +0 -1
  27. package/.output/public/assets/index-Bcq8bZoK.css +0 -1
  28. package/.output/public/assets/index-DBSbw8Gd.js +0 -1
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DBSbw8Gd.js","assets/ProxyViewerContainer-DaiTFf7n.js","assets/_sessionId-6fF5JpyQ.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DH1DjJOl.js","assets/ProxyViewerContainer-BC-z9RPh.js","assets/_sessionId-mnr0O0Ri.js"])))=>i.map(i=>d[i]);
2
2
  function I0(a,u){for(var i=0;i<u.length;i++){const r=u[i];if(typeof r!="string"&&!Array.isArray(r)){for(const o in r)if(o!=="default"&&!(o in a)){const f=Object.getOwnPropertyDescriptor(r,o);f&&Object.defineProperty(a,o,f.get?f:{enumerable:!0,get:()=>r[o]})}}}return Object.freeze(Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}))}var yR=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function hp(a){return a&&a.__esModule&&Object.prototype.hasOwnProperty.call(a,"default")?a.default:a}var ho={exports:{}},Xi={};var py;function tS(){if(py)return Xi;py=1;var a=Symbol.for("react.transitional.element"),u=Symbol.for("react.fragment");function i(r,o,f){var h=null;if(f!==void 0&&(h=""+f),o.key!==void 0&&(h=""+o.key),"key"in o){f={};for(var y in o)y!=="key"&&(f[y]=o[y])}else f=o;return o=f.ref,{$$typeof:a,type:r,key:h,ref:o!==void 0?o:null,props:f}}return Xi.Fragment=u,Xi.jsx=i,Xi.jsxs=i,Xi}var gy;function eS(){return gy||(gy=1,ho.exports=tS()),ho.exports}var k=eS(),mo={exports:{}},dt={};var vy;function nS(){if(vy)return dt;vy=1;var a=Symbol.for("react.transitional.element"),u=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),f=Symbol.for("react.consumer"),h=Symbol.for("react.context"),y=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),v=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),_=Symbol.iterator;function R(w){return w===null||typeof w!="object"?null:(w=_&&w[_]||w["@@iterator"],typeof w=="function"?w:null)}var C={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},A=Object.assign,M={};function Y(w,q,J){this.props=w,this.context=q,this.refs=M,this.updater=J||C}Y.prototype.isReactComponent={},Y.prototype.setState=function(w,q){if(typeof w!="object"&&typeof w!="function"&&w!=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,w,q,"setState")},Y.prototype.forceUpdate=function(w){this.updater.enqueueForceUpdate(this,w,"forceUpdate")};function B(){}B.prototype=Y.prototype;function Z(w,q,J){this.props=w,this.context=q,this.refs=M,this.updater=J||C}var H=Z.prototype=new B;H.constructor=Z,A(H,Y.prototype),H.isPureReactComponent=!0;var F=Array.isArray;function I(){}var Q={H:null,A:null,T:null,S:null},X=Object.prototype.hasOwnProperty;function K(w,q,J){var W=J.ref;return{$$typeof:a,type:w,key:q,ref:W!==void 0?W:null,props:J}}function rt(w,q){return K(w.type,q,w.props)}function nt(w){return typeof w=="object"&&w!==null&&w.$$typeof===a}function lt(w){var q={"=":"=0",":":"=2"};return"$"+w.replace(/[=:]/g,function(J){return q[J]})}var ht=/\/+/g;function it(w,q){return typeof w=="object"&&w!==null&&w.key!=null?lt(""+w.key):q.toString(36)}function jt(w){switch(w.status){case"fulfilled":return w.value;case"rejected":throw w.reason;default:switch(typeof w.status=="string"?w.then(I,I):(w.status="pending",w.then(function(q){w.status==="pending"&&(w.status="fulfilled",w.value=q)},function(q){w.status==="pending"&&(w.status="rejected",w.reason=q)})),w.status){case"fulfilled":return w.value;case"rejected":throw w.reason}}throw w}function N(w,q,J,W,ct){var ot=typeof w;(ot==="undefined"||ot==="boolean")&&(w=null);var ft=!1;if(w===null)ft=!0;else switch(ot){case"bigint":case"string":case"number":ft=!0;break;case"object":switch(w.$$typeof){case a:case u:ft=!0;break;case v:return ft=w._init,N(ft(w._payload),q,J,W,ct)}}if(ft)return ct=ct(w),ft=W===""?"."+it(w,0):W,F(ct)?(J="",ft!=null&&(J=ft.replace(ht,"$&/")+"/"),N(ct,q,J,"",function(De){return De})):ct!=null&&(nt(ct)&&(ct=rt(ct,J+(ct.key==null||w&&w.key===ct.key?"":(""+ct.key).replace(ht,"$&/")+"/")+ft)),q.push(ct)),1;ft=0;var Xt=W===""?".":W+":";if(F(w))for(var Ht=0;Ht<w.length;Ht++)W=w[Ht],ot=Xt+it(W,Ht),ft+=N(W,q,J,ot,ct);else if(Ht=R(w),typeof Ht=="function")for(w=Ht.call(w),Ht=0;!(W=w.next()).done;)W=W.value,ot=Xt+it(W,Ht++),ft+=N(W,q,J,ot,ct);else if(ot==="object"){if(typeof w.then=="function")return N(jt(w),q,J,W,ct);throw q=String(w),Error("Objects are not valid as a React child (found: "+(q==="[object Object]"?"object with keys {"+Object.keys(w).join(", ")+"}":q)+"). If you meant to render a collection of children, use an array instead.")}return ft}function P(w,q,J){if(w==null)return w;var W=[],ct=0;return N(w,W,"","",function(ot){return q.call(J,ot,ct++)}),W}function ut(w){if(w._status===-1){var q=w._result;q=q(),q.then(function(J){(w._status===0||w._status===-1)&&(w._status=1,w._result=J)},function(J){(w._status===0||w._status===-1)&&(w._status=2,w._result=J)}),w._status===-1&&(w._status=0,w._result=q)}if(w._status===1)return w._result.default;throw w._result}var Tt=typeof reportError=="function"?reportError:function(w){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var q=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof w=="object"&&w!==null&&typeof w.message=="string"?String(w.message):String(w),error:w});if(!window.dispatchEvent(q))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",w);return}console.error(w)},pt={map:P,forEach:function(w,q,J){P(w,function(){q.apply(this,arguments)},J)},count:function(w){var q=0;return P(w,function(){q++}),q},toArray:function(w){return P(w,function(q){return q})||[]},only:function(w){if(!nt(w))throw Error("React.Children.only expected to receive a single React element child.");return w}};return dt.Activity=S,dt.Children=pt,dt.Component=Y,dt.Fragment=i,dt.Profiler=o,dt.PureComponent=Z,dt.StrictMode=r,dt.Suspense=m,dt.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=Q,dt.__COMPILER_RUNTIME={__proto__:null,c:function(w){return Q.H.useMemoCache(w)}},dt.cache=function(w){return function(){return w.apply(null,arguments)}},dt.cacheSignal=function(){return null},dt.cloneElement=function(w,q,J){if(w==null)throw Error("The argument must be a React element, but you passed "+w+".");var W=A({},w.props),ct=w.key;if(q!=null)for(ot in q.key!==void 0&&(ct=""+q.key),q)!X.call(q,ot)||ot==="key"||ot==="__self"||ot==="__source"||ot==="ref"&&q.ref===void 0||(W[ot]=q[ot]);var ot=arguments.length-2;if(ot===1)W.children=J;else if(1<ot){for(var ft=Array(ot),Xt=0;Xt<ot;Xt++)ft[Xt]=arguments[Xt+2];W.children=ft}return K(w.type,ct,W)},dt.createContext=function(w){return w={$$typeof:h,_currentValue:w,_currentValue2:w,_threadCount:0,Provider:null,Consumer:null},w.Provider=w,w.Consumer={$$typeof:f,_context:w},w},dt.createElement=function(w,q,J){var W,ct={},ot=null;if(q!=null)for(W in q.key!==void 0&&(ot=""+q.key),q)X.call(q,W)&&W!=="key"&&W!=="__self"&&W!=="__source"&&(ct[W]=q[W]);var ft=arguments.length-2;if(ft===1)ct.children=J;else if(1<ft){for(var Xt=Array(ft),Ht=0;Ht<ft;Ht++)Xt[Ht]=arguments[Ht+2];ct.children=Xt}if(w&&w.defaultProps)for(W in ft=w.defaultProps,ft)ct[W]===void 0&&(ct[W]=ft[W]);return K(w,ot,ct)},dt.createRef=function(){return{current:null}},dt.forwardRef=function(w){return{$$typeof:y,render:w}},dt.isValidElement=nt,dt.lazy=function(w){return{$$typeof:v,_payload:{_status:-1,_result:w},_init:ut}},dt.memo=function(w,q){return{$$typeof:p,type:w,compare:q===void 0?null:q}},dt.startTransition=function(w){var q=Q.T,J={};Q.T=J;try{var W=w(),ct=Q.S;ct!==null&&ct(J,W),typeof W=="object"&&W!==null&&typeof W.then=="function"&&W.then(I,Tt)}catch(ot){Tt(ot)}finally{q!==null&&J.types!==null&&(q.types=J.types),Q.T=q}},dt.unstable_useCacheRefresh=function(){return Q.H.useCacheRefresh()},dt.use=function(w){return Q.H.use(w)},dt.useActionState=function(w,q,J){return Q.H.useActionState(w,q,J)},dt.useCallback=function(w,q){return Q.H.useCallback(w,q)},dt.useContext=function(w){return Q.H.useContext(w)},dt.useDebugValue=function(){},dt.useDeferredValue=function(w,q){return Q.H.useDeferredValue(w,q)},dt.useEffect=function(w,q){return Q.H.useEffect(w,q)},dt.useEffectEvent=function(w){return Q.H.useEffectEvent(w)},dt.useId=function(){return Q.H.useId()},dt.useImperativeHandle=function(w,q,J){return Q.H.useImperativeHandle(w,q,J)},dt.useInsertionEffect=function(w,q){return Q.H.useInsertionEffect(w,q)},dt.useLayoutEffect=function(w,q){return Q.H.useLayoutEffect(w,q)},dt.useMemo=function(w,q){return Q.H.useMemo(w,q)},dt.useOptimistic=function(w,q){return Q.H.useOptimistic(w,q)},dt.useReducer=function(w,q,J){return Q.H.useReducer(w,q,J)},dt.useRef=function(w){return Q.H.useRef(w)},dt.useState=function(w){return Q.H.useState(w)},dt.useSyncExternalStore=function(w,q,J){return Q.H.useSyncExternalStore(w,q,J)},dt.useTransition=function(){return Q.H.useTransition()},dt.version="19.2.4",dt}var Sy;function nu(){return Sy||(Sy=1,mo.exports=nS()),mo.exports}var $=nu();const qn=hp($),aS=I0({__proto__:null,default:qn},[$]);var yo={exports:{}},Qi={},po={exports:{}},go={};var by;function lS(){return by||(by=1,(function(a){function u(N,P){var ut=N.length;N.push(P);t:for(;0<ut;){var Tt=ut-1>>>1,pt=N[Tt];if(0<o(pt,P))N[Tt]=P,N[ut]=pt,ut=Tt;else break t}}function i(N){return N.length===0?null:N[0]}function r(N){if(N.length===0)return null;var P=N[0],ut=N.pop();if(ut!==P){N[0]=ut;t:for(var Tt=0,pt=N.length,w=pt>>>1;Tt<w;){var q=2*(Tt+1)-1,J=N[q],W=q+1,ct=N[W];if(0>o(J,ut))W<pt&&0>o(ct,J)?(N[Tt]=ct,N[W]=ut,Tt=W):(N[Tt]=J,N[q]=ut,Tt=q);else if(W<pt&&0>o(ct,ut))N[Tt]=ct,N[W]=ut,Tt=W;else break t}}return P}function o(N,P){var ut=N.sortIndex-P.sortIndex;return ut!==0?ut:N.id-P.id}if(a.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var f=performance;a.unstable_now=function(){return f.now()}}else{var h=Date,y=h.now();a.unstable_now=function(){return h.now()-y}}var m=[],p=[],v=1,S=null,_=3,R=!1,C=!1,A=!1,M=!1,Y=typeof setTimeout=="function"?setTimeout:null,B=typeof clearTimeout=="function"?clearTimeout:null,Z=typeof setImmediate<"u"?setImmediate:null;function H(N){for(var P=i(p);P!==null;){if(P.callback===null)r(p);else if(P.startTime<=N)r(p),P.sortIndex=P.expirationTime,u(m,P);else break;P=i(p)}}function F(N){if(A=!1,H(N),!C)if(i(m)!==null)C=!0,I||(I=!0,lt());else{var P=i(p);P!==null&&jt(F,P.startTime-N)}}var I=!1,Q=-1,X=5,K=-1;function rt(){return M?!0:!(a.unstable_now()-K<X)}function nt(){if(M=!1,I){var N=a.unstable_now();K=N;var P=!0;try{t:{C=!1,A&&(A=!1,B(Q),Q=-1),R=!0;var ut=_;try{e:{for(H(N),S=i(m);S!==null&&!(S.expirationTime>N&&rt());){var Tt=S.callback;if(typeof Tt=="function"){S.callback=null,_=S.priorityLevel;var pt=Tt(S.expirationTime<=N);if(N=a.unstable_now(),typeof pt=="function"){S.callback=pt,H(N),P=!0;break e}S===i(m)&&r(m),H(N)}else r(m);S=i(m)}if(S!==null)P=!0;else{var w=i(p);w!==null&&jt(F,w.startTime-N),P=!1}}break t}finally{S=null,_=ut,R=!1}P=void 0}}finally{P?lt():I=!1}}}var lt;if(typeof Z=="function")lt=function(){Z(nt)};else if(typeof MessageChannel<"u"){var ht=new MessageChannel,it=ht.port2;ht.port1.onmessage=nt,lt=function(){it.postMessage(null)}}else lt=function(){Y(nt,0)};function jt(N,P){Q=Y(function(){N(a.unstable_now())},P)}a.unstable_IdlePriority=5,a.unstable_ImmediatePriority=1,a.unstable_LowPriority=4,a.unstable_NormalPriority=3,a.unstable_Profiling=null,a.unstable_UserBlockingPriority=2,a.unstable_cancelCallback=function(N){N.callback=null},a.unstable_forceFrameRate=function(N){0>N||125<N?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):X=0<N?Math.floor(1e3/N):5},a.unstable_getCurrentPriorityLevel=function(){return _},a.unstable_next=function(N){switch(_){case 1:case 2:case 3:var P=3;break;default:P=_}var ut=_;_=P;try{return N()}finally{_=ut}},a.unstable_requestPaint=function(){M=!0},a.unstable_runWithPriority=function(N,P){switch(N){case 1:case 2:case 3:case 4:case 5:break;default:N=3}var ut=_;_=N;try{return P()}finally{_=ut}},a.unstable_scheduleCallback=function(N,P,ut){var Tt=a.unstable_now();switch(typeof ut=="object"&&ut!==null?(ut=ut.delay,ut=typeof ut=="number"&&0<ut?Tt+ut:Tt):ut=Tt,N){case 1:var pt=-1;break;case 2:pt=250;break;case 5:pt=1073741823;break;case 4:pt=1e4;break;default:pt=5e3}return pt=ut+pt,N={id:v++,callback:P,priorityLevel:N,startTime:ut,expirationTime:pt,sortIndex:-1},ut>Tt?(N.sortIndex=ut,u(p,N),i(m)===null&&N===i(p)&&(A?(B(Q),Q=-1):A=!0,jt(F,ut-Tt))):(N.sortIndex=pt,u(m,N),C||R||(C=!0,I||(I=!0,lt()))),N},a.unstable_shouldYield=rt,a.unstable_wrapCallback=function(N){var P=_;return function(){var ut=_;_=P;try{return N.apply(this,arguments)}finally{_=ut}}}})(go)),go}var _y;function iS(){return _y||(_y=1,po.exports=lS()),po.exports}var vo={exports:{}},Se={};var Ey;function uS(){if(Ey)return Se;Ey=1;var a=nu();function u(m){var p="https://react.dev/errors/"+m;if(1<arguments.length){p+="?args[]="+encodeURIComponent(arguments[1]);for(var v=2;v<arguments.length;v++)p+="&args[]="+encodeURIComponent(arguments[v])}return"Minified React error #"+m+"; visit "+p+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function i(){}var r={d:{f:i,r:function(){throw Error(u(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},o=Symbol.for("react.portal");function f(m,p,v){var S=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:S==null?null:""+S,children:m,containerInfo:p,implementation:v}}var h=a.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function y(m,p){if(m==="font")return"";if(typeof p=="string")return p==="use-credentials"?p:""}return Se.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=r,Se.createPortal=function(m,p){var v=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!p||p.nodeType!==1&&p.nodeType!==9&&p.nodeType!==11)throw Error(u(299));return f(m,p,null,v)},Se.flushSync=function(m){var p=h.T,v=r.p;try{if(h.T=null,r.p=2,m)return m()}finally{h.T=p,r.p=v,r.d.f()}},Se.preconnect=function(m,p){typeof m=="string"&&(p?(p=p.crossOrigin,p=typeof p=="string"?p==="use-credentials"?p:"":void 0):p=null,r.d.C(m,p))},Se.prefetchDNS=function(m){typeof m=="string"&&r.d.D(m)},Se.preinit=function(m,p){if(typeof m=="string"&&p&&typeof p.as=="string"){var v=p.as,S=y(v,p.crossOrigin),_=typeof p.integrity=="string"?p.integrity:void 0,R=typeof p.fetchPriority=="string"?p.fetchPriority:void 0;v==="style"?r.d.S(m,typeof p.precedence=="string"?p.precedence:void 0,{crossOrigin:S,integrity:_,fetchPriority:R}):v==="script"&&r.d.X(m,{crossOrigin:S,integrity:_,fetchPriority:R,nonce:typeof p.nonce=="string"?p.nonce:void 0})}},Se.preinitModule=function(m,p){if(typeof m=="string")if(typeof p=="object"&&p!==null){if(p.as==null||p.as==="script"){var v=y(p.as,p.crossOrigin);r.d.M(m,{crossOrigin:v,integrity:typeof p.integrity=="string"?p.integrity:void 0,nonce:typeof p.nonce=="string"?p.nonce:void 0})}}else p==null&&r.d.M(m)},Se.preload=function(m,p){if(typeof m=="string"&&typeof p=="object"&&p!==null&&typeof p.as=="string"){var v=p.as,S=y(v,p.crossOrigin);r.d.L(m,v,{crossOrigin:S,integrity:typeof p.integrity=="string"?p.integrity:void 0,nonce:typeof p.nonce=="string"?p.nonce:void 0,type:typeof p.type=="string"?p.type:void 0,fetchPriority:typeof p.fetchPriority=="string"?p.fetchPriority:void 0,referrerPolicy:typeof p.referrerPolicy=="string"?p.referrerPolicy:void 0,imageSrcSet:typeof p.imageSrcSet=="string"?p.imageSrcSet:void 0,imageSizes:typeof p.imageSizes=="string"?p.imageSizes:void 0,media:typeof p.media=="string"?p.media:void 0})}},Se.preloadModule=function(m,p){if(typeof m=="string")if(p){var v=y(p.as,p.crossOrigin);r.d.m(m,{as:typeof p.as=="string"&&p.as!=="script"?p.as:void 0,crossOrigin:v,integrity:typeof p.integrity=="string"?p.integrity:void 0})}else r.d.m(m)},Se.requestFormReset=function(m){r.d.r(m)},Se.unstable_batchedUpdates=function(m,p){return m(p)},Se.useFormState=function(m,p,v){return h.H.useFormState(m,p,v)},Se.useFormStatus=function(){return h.H.useHostTransitionStatus()},Se.version="19.2.4",Se}var Ry;function mp(){if(Ry)return vo.exports;Ry=1;function a(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(a)}catch(u){console.error(u)}}return a(),vo.exports=uS(),vo.exports}var Ty;function sS(){if(Ty)return Qi;Ty=1;var a=iS(),u=nu(),i=mp();function r(t){var e="https://react.dev/errors/"+t;if(1<arguments.length){e+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)e+="&args[]="+encodeURIComponent(arguments[n])}return"Minified React error #"+t+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function o(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function f(t){var e=t,n=t;if(t.alternate)for(;e.return;)e=e.return;else{t=e;do e=t,(e.flags&4098)!==0&&(n=e.return),t=e.return;while(t)}return e.tag===3?n:null}function h(t){if(t.tag===13){var e=t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e.dehydrated}return null}function y(t){if(t.tag===31){var e=t.memoizedState;if(e===null&&(t=t.alternate,t!==null&&(e=t.memoizedState)),e!==null)return e.dehydrated}return null}function m(t){if(f(t)!==t)throw Error(r(188))}function p(t){var e=t.alternate;if(!e){if(e=f(t),e===null)throw Error(r(188));return e!==t?null:t}for(var n=t,l=e;;){var s=n.return;if(s===null)break;var c=s.alternate;if(c===null){if(l=s.return,l!==null){n=l;continue}break}if(s.child===c.child){for(c=s.child;c;){if(c===n)return m(s),t;if(c===l)return m(s),e;c=c.sibling}throw Error(r(188))}if(n.return!==l.return)n=s,l=c;else{for(var d=!1,g=s.child;g;){if(g===n){d=!0,n=s,l=c;break}if(g===l){d=!0,l=s,n=c;break}g=g.sibling}if(!d){for(g=c.child;g;){if(g===n){d=!0,n=c,l=s;break}if(g===l){d=!0,l=c,n=s;break}g=g.sibling}if(!d)throw Error(r(189))}}if(n.alternate!==l)throw Error(r(190))}if(n.tag!==3)throw Error(r(188));return n.stateNode.current===n?t:e}function v(t){var e=t.tag;if(e===5||e===26||e===27||e===6)return t;for(t=t.child;t!==null;){if(e=v(t),e!==null)return e;t=t.sibling}return null}var S=Object.assign,_=Symbol.for("react.element"),R=Symbol.for("react.transitional.element"),C=Symbol.for("react.portal"),A=Symbol.for("react.fragment"),M=Symbol.for("react.strict_mode"),Y=Symbol.for("react.profiler"),B=Symbol.for("react.consumer"),Z=Symbol.for("react.context"),H=Symbol.for("react.forward_ref"),F=Symbol.for("react.suspense"),I=Symbol.for("react.suspense_list"),Q=Symbol.for("react.memo"),X=Symbol.for("react.lazy"),K=Symbol.for("react.activity"),rt=Symbol.for("react.memo_cache_sentinel"),nt=Symbol.iterator;function lt(t){return t===null||typeof t!="object"?null:(t=nt&&t[nt]||t["@@iterator"],typeof t=="function"?t:null)}var ht=Symbol.for("react.client.reference");function it(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===ht?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case A:return"Fragment";case Y:return"Profiler";case M:return"StrictMode";case F:return"Suspense";case I:return"SuspenseList";case K:return"Activity"}if(typeof t=="object")switch(t.$$typeof){case C:return"Portal";case Z:return t.displayName||"Context";case B:return(t._context.displayName||"Context")+".Consumer";case H:var e=t.render;return t=t.displayName,t||(t=e.displayName||e.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case Q:return e=t.displayName||null,e!==null?e:it(t.type)||"Memo";case X:e=t._payload,t=t._init;try{return it(t(e))}catch{}}return null}var jt=Array.isArray,N=u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,P=i.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ut={pending:!1,data:null,method:null,action:null},Tt=[],pt=-1;function w(t){return{current:t}}function q(t){0>pt||(t.current=Tt[pt],Tt[pt]=null,pt--)}function J(t,e){pt++,Tt[pt]=t.current,t.current=e}var W=w(null),ct=w(null),ot=w(null),ft=w(null);function Xt(t,e){switch(J(ot,e),J(ct,t),J(W,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?qm(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=qm(e),t=Vm(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}q(W),J(W,t)}function Ht(){q(W),q(ct),q(ot)}function De(t){t.memoizedState!==null&&J(ft,t);var e=W.current,n=Vm(e,t.type);e!==n&&(J(ct,t),J(W,n))}function Xe(t){ct.current===t&&(q(W),q(ct)),ft.current===t&&(q(ft),qi._currentValue=ut)}var Qn,Ta;function _e(t){if(Qn===void 0)try{throw Error()}catch(n){var e=n.stack.trim().match(/\n( *(at )?)/);Qn=e&&e[1]||"",Ta=-1<n.stack.indexOf(`
3
3
  at`)?" (<anonymous>)":-1<n.stack.indexOf("@")?"@unknown:0:0":""}return`
4
4
  `+Qn+t+Ta}var mn=!1;function Aa(t,e){if(!t||mn)return"";mn=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var l={DetermineComponentFrameRoot:function(){try{if(e){var G=function(){throw Error()};if(Object.defineProperty(G.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(G,[])}catch(U){var L=U}Reflect.construct(t,[],G)}else{try{G.call()}catch(U){L=U}t.call(G.prototype)}}else{try{throw Error()}catch(U){L=U}(G=t())&&typeof G.catch=="function"&&G.catch(function(){})}}catch(U){if(U&&L&&typeof U.stack=="string")return[U.stack,L.stack]}return[null,null]}};l.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var s=Object.getOwnPropertyDescriptor(l.DetermineComponentFrameRoot,"name");s&&s.configurable&&Object.defineProperty(l.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var c=l.DetermineComponentFrameRoot(),d=c[0],g=c[1];if(d&&g){var E=d.split(`
@@ -15,4 +15,4 @@ Error generating stack: `+l.message+`
15
15
  `)}else{const p=o.indexOf(`
16
16
  `);if(p>=0){const v=o.slice(0,p).trim();o=o.slice(p+1),v.length>0&&(h=JSON.parse(v),f=!0)}}}return(async()=>{try{for(;;){const{value:y,done:m}=await r.read();y&&(o+=y);const p=o.lastIndexOf(`
17
17
  `);if(p>=0){const v=o.slice(0,p);o=o.slice(p+1);const S=v.split(`
18
- `).filter(Boolean);for(const _ of S)try{u(JSON.parse(_))}catch(R){i?.(`Invalid JSON line: ${_}`,R)}}if(m)break}}catch(y){i?.("Stream processing error:",y)}})(),u(h)}async function yE({jsonStream:a,onMessage:u,onError:i}){const r=a.getReader(),{value:o,done:f}=await r.read();if(f||!o)throw new Error("Stream ended before first object");const h=JSON.parse(o);return(async()=>{try{for(;;){const{value:y,done:m}=await r.read();if(m)break;if(y)try{u(JSON.parse(y))}catch(p){i?.(`Invalid JSON: ${y}`,p)}}}catch(y){i?.("Stream processing error:",y)}})(),u(h)}function pE(a){const u="/_serverFn/"+a;return Object.assign((...o)=>{const f=bg()?.serverFns?.fetch;return fE(u,o,f??fetch)},{url:u,serverFnMeta:{id:a},[Zo]:!0})}const gE={key:"$TSS/serverfn",test:a=>typeof a!="function"||!(Zo in a)?!1:!!a[Zo],toSerializable:({serverFnMeta:a})=>({functionId:a.id}),fromSerializable:({functionId:a})=>pE(a)};var ip=og();const Tg=0,Ag=1,Og=2,up=3;var sp=Object.prototype.hasOwnProperty;function Ko(a,u){var i,r;if(a===u)return!0;if(a&&u&&(i=a.constructor)===u.constructor){if(i===Date)return a.getTime()===u.getTime();if(i===RegExp)return a.toString()===u.toString();if(i===Array){if((r=a.length)===u.length)for(;r--&&Ko(a[r],u[r]););return r===-1}if(!i||typeof a=="object"){r=0;for(i in a)if(sp.call(a,i)&&++r&&!sp.call(u,i)||!(i in u)||!Ko(a[i],u[i]))return!1;return Object.keys(u).length===r}}return a!==a&&u!==u}const Bn=new WeakMap,Hn=()=>{},ge=Hn(),Qs=Object,_t=a=>a===ge,sn=a=>typeof a=="function",Gn=(a,u)=>({...a,...u}),wg=a=>sn(a.then),Uo={},As={},pf="undefined",lu=typeof window!=pf,Jo=typeof document!=pf,vE=lu&&"Deno"in window,SE=()=>lu&&typeof window.requestAnimationFrame!=pf,xg=(a,u)=>{const i=Bn.get(a);return[()=>!_t(u)&&a.get(u)||Uo,r=>{if(!_t(u)){const o=a.get(u);u in As||(As[u]=o),i[5](u,Gn(o,r),o||Uo)}},i[6],()=>!_t(u)&&u in As?As[u]:!_t(u)&&a.get(u)||Uo]};let ko=!0;const bE=()=>ko,[Fo,Po]=lu&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[Hn,Hn],_E=()=>{const a=Jo&&document.visibilityState;return _t(a)||a!=="hidden"},EE=a=>(Jo&&document.addEventListener("visibilitychange",a),Fo("focus",a),()=>{Jo&&document.removeEventListener("visibilitychange",a),Po("focus",a)}),RE=a=>{const u=()=>{ko=!0,a()},i=()=>{ko=!1};return Fo("online",u),Fo("offline",i),()=>{Po("online",u),Po("offline",i)}},TE={isOnline:bE,isVisible:_E},AE={initFocus:EE,initReconnect:RE},rp=!qn.useId,Fl=!lu||vE,OE=a=>SE()?window.requestAnimationFrame(a):setTimeout(a,1),Ds=Fl?$.useEffect:$.useLayoutEffect,Bo=typeof navigator<"u"&&navigator.connection,cp=!Fl&&Bo&&(["slow-2g","2g"].includes(Bo.effectiveType)||Bo.saveData),Os=new WeakMap,wE=a=>Qs.prototype.toString.call(a),jo=(a,u)=>a===`[object ${u}]`;let xE=0;const Wo=a=>{const u=typeof a,i=wE(a),r=jo(i,"Date"),o=jo(i,"RegExp"),f=jo(i,"Object");let h,y;if(Qs(a)===a&&!r&&!o){if(h=Os.get(a),h)return h;if(h=++xE+"~",Os.set(a,h),Array.isArray(a)){for(h="@",y=0;y<a.length;y++)h+=Wo(a[y])+",";Os.set(a,h)}if(f){h="#";const m=Qs.keys(a).sort();for(;!_t(y=m.pop());)_t(a[y])||(h+=y+":"+Wo(a[y])+",");Os.set(a,h)}}else h=r?a.toJSON():u=="symbol"?a.toString():u=="string"?JSON.stringify(a):""+a;return h},gf=a=>{if(sn(a))try{a=a()}catch{a=""}const u=a;return a=typeof a=="string"?a:(Array.isArray(a)?a.length:a)?Wo(a):"",[a,u]};let ME=0;const $o=()=>++ME;async function Mg(...a){const[u,i,r,o]=a,f=Gn({populateCache:!0,throwOnError:!0},typeof o=="boolean"?{revalidate:o}:o||{});let h=f.populateCache;const y=f.rollbackOnError;let m=f.optimisticData;const p=_=>typeof y=="function"?y(_):y!==!1,v=f.throwOnError;if(sn(i)){const _=i,R=[],C=u.keys();for(const A of C)!/^\$(inf|sub)\$/.test(A)&&_(u.get(A)._k)&&R.push(A);return Promise.all(R.map(S))}return S(i);async function S(_){const[R]=gf(_);if(!R)return;const[C,A]=xg(u,R),[M,Y,B,Z]=Bn.get(u),H=()=>{const it=M[R];return(sn(f.revalidate)?f.revalidate(C().data,_):f.revalidate!==!1)&&(delete B[R],delete Z[R],it&&it[0])?it[0](Og).then(()=>C().data):C().data};if(a.length<3)return H();let F=r,I,Q=!1;const X=$o();Y[R]=[X,0];const K=!_t(m),rt=C(),nt=rt.data,lt=rt._c,ht=_t(lt)?nt:lt;if(K&&(m=sn(m)?m(ht,nt):m,A({data:m,_c:ht})),sn(F))try{F=F(ht)}catch(it){I=it,Q=!0}if(F&&wg(F))if(F=await F.catch(it=>{I=it,Q=!0}),X!==Y[R][0]){if(Q)throw I;return F}else Q&&K&&p(I)&&(h=!0,A({data:ht,_c:ge}));if(h&&!Q)if(sn(h)){const it=h(F,ht);A({data:it,error:ge,_c:ge})}else A({data:F,error:ge,_c:ge});if(Y[R][1]=$o(),Promise.resolve(H()).then(()=>{A({_c:ge})}),Q){if(v)throw I;return}return F}}const op=(a,u)=>{for(const i in a)a[i][0]&&a[i][0](u)},Cg=(a,u)=>{if(!Bn.has(a)){const i=Gn(AE,u),r=Object.create(null),o=Mg.bind(ge,a);let f=Hn;const h=Object.create(null),y=(v,S)=>{const _=h[v]||[];return h[v]=_,_.push(S),()=>_.splice(_.indexOf(S),1)},m=(v,S,_)=>{a.set(v,S);const R=h[v];if(R)for(const C of R)C(S,_)},p=()=>{if(!Bn.has(a)&&(Bn.set(a,[r,Object.create(null),Object.create(null),Object.create(null),o,m,y]),!Fl)){const v=i.initFocus(setTimeout.bind(ge,op.bind(ge,r,Tg))),S=i.initReconnect(setTimeout.bind(ge,op.bind(ge,r,Ag)));f=()=>{v&&v(),S&&S(),Bn.delete(a)}}};return p(),[a,o,p,f]}return[a,Bn.get(a)[4]]},CE=(a,u,i,r,o)=>{const f=i.errorRetryCount,h=o.retryCount,y=~~((Math.random()+.5)*(1<<(h<8?h:8)))*i.errorRetryInterval;!_t(f)&&h>f||setTimeout(r,y,o)},zE=Ko,[vf,DE]=Cg(new Map),zg=Gn({onLoadingSlow:Hn,onSuccess:Hn,onError:Hn,onErrorRetry:CE,onDiscarded:Hn,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:cp?1e4:5e3,focusThrottleInterval:5*1e3,dedupingInterval:2*1e3,loadingTimeout:cp?5e3:3e3,compare:zE,isPaused:()=>!1,cache:vf,mutate:DE,fallback:{}},TE),Dg=(a,u)=>{const i=Gn(a,u);if(u){const{use:r,fallback:o}=a,{use:f,fallback:h}=u;r&&f&&(i.use=r.concat(f)),o&&h&&(i.fallback=Gn(o,h))}return i},Io=$.createContext({}),LE=a=>{const{value:u}=a,i=$.useContext(Io),r=sn(u),o=$.useMemo(()=>r?u(i):u,[r,i,u]),f=$.useMemo(()=>r?o:Dg(i,o),[r,i,o]),h=o&&o.provider,y=$.useRef(ge);h&&!y.current&&(y.current=Cg(h(f.cache||vf),o));const m=y.current;return m&&(f.cache=m[0],f.mutate=m[1]),Ds(()=>{if(m)return m[2]&&m[2](),m[3]},[]),$.createElement(Io.Provider,Gn(a,{value:f}))},NE="$inf$",Lg=lu&&window.__SWR_DEVTOOLS_USE__,UE=Lg?window.__SWR_DEVTOOLS_USE__:[],BE=()=>{Lg&&(window.__SWR_DEVTOOLS_REACT__=qn)},jE=a=>sn(a[1])?[a[0],a[1],a[2]||{}]:[a[0],null,(a[1]===null?a[2]:a[1])||{}],HE=()=>{const a=$.useContext(Io);return $.useMemo(()=>Gn(zg,a),[a])},qE=a=>(u,i,r)=>a(u,i&&((...f)=>{const[h]=gf(u),[,,,y]=Bn.get(vf);if(h.startsWith(NE))return i(...f);const m=y[h];return _t(m)?i(...f):(delete y[h],m)}),r),VE=UE.concat(qE),YE=a=>function(...i){const r=HE(),[o,f,h]=jE(i),y=Dg(r,h);let m=a;const{use:p}=y,v=(p||[]).concat(VE);for(let S=v.length;S--;)m=v[S](m);return m(o,f||y.fetcher||null,y)},GE=(a,u,i)=>{const r=u[a]||(u[a]=[]);return r.push(i),()=>{const o=r.indexOf(i);o>=0&&(r[o]=r[r.length-1],r.pop())}};BE();const Ho=qn.use||(a=>{switch(a.status){case"pending":throw a;case"fulfilled":return a.value;case"rejected":throw a.reason;default:throw a.status="pending",a.then(u=>{a.status="fulfilled",a.value=u},u=>{a.status="rejected",a.reason=u}),a}}),qo={dedupe:!0},fp=Promise.resolve(ge),XE=()=>Hn,QE=(a,u,i)=>{const{cache:r,compare:o,suspense:f,fallbackData:h,revalidateOnMount:y,revalidateIfStale:m,refreshInterval:p,refreshWhenHidden:v,refreshWhenOffline:S,keepPreviousData:_,strictServerPrefetchWarning:R}=i,[C,A,M,Y]=Bn.get(r),[B,Z]=gf(a),H=$.useRef(!1),F=$.useRef(!1),I=$.useRef(B),Q=$.useRef(u),X=$.useRef(i),K=()=>X.current,rt=()=>K().isVisible()&&K().isOnline(),[nt,lt,ht,it]=xg(r,B),jt=$.useRef({}).current,N=_t(h)?_t(i.fallback)?ge:i.fallback[B]:h,P=(Et,Lt)=>{for(const At in jt){const qt=At;if(qt==="data"){if(!o(Et[qt],Lt[qt])&&(!_t(Et[qt])||!o(ot,Lt[qt])))return!1}else if(Lt[qt]!==Et[qt])return!1}return!0},ut=!H.current,Tt=$.useMemo(()=>{const Et=nt(),Lt=it(),At=Jt=>{const Vt=Gn(Jt);return delete Vt._k,(()=>{if(!B||!u||K().isPaused())return!1;if(ut&&!_t(y))return y;const Mt=_t(N)?Vt.data:N;return _t(Mt)||m})()?{isValidating:!0,isLoading:!0,...Vt}:Vt},qt=At(Et),ve=Et===Lt?qt:At(Lt);let oe=qt;return[()=>{const Jt=At(nt());return P(Jt,oe)?(oe.data=Jt.data,oe.isLoading=Jt.isLoading,oe.isValidating=Jt.isValidating,oe.error=Jt.error,oe):(oe=Jt,Jt)},()=>ve]},[r,B]),pt=ip.useSyncExternalStore($.useCallback(Et=>ht(B,(Lt,At)=>{P(At,Lt)||Et()}),[r,B]),Tt[0],Tt[1]),w=C[B]&&C[B].length>0,q=pt.data,J=_t(q)?N&&wg(N)?Ho(N):N:q,W=pt.error,ct=$.useRef(J),ot=_?_t(q)?_t(ct.current)?J:ct.current:q:J,ft=B&&_t(J),Xt=$.useRef(null);!Fl&&ip.useSyncExternalStore(XE,()=>(Xt.current=!1,Xt),()=>(Xt.current=!0,Xt));const Ht=Xt.current;R&&Ht&&!f&&ft&&console.warn(`Missing pre-initiated data for serialized key "${B}" during server-side rendering. Data fetching should be initiated on the server and provided to SWR via fallback data. You can set "strictServerPrefetchWarning: false" to disable this warning.`);const De=!B||!u||K().isPaused()||w&&!_t(W)?!1:ut&&!_t(y)?y:f?_t(J)?!1:m:_t(J)||m,Xe=ut&&De,Qn=_t(pt.isValidating)?Xe:pt.isValidating,Ta=_t(pt.isLoading)?Xe:pt.isLoading,_e=$.useCallback(async Et=>{const Lt=Q.current;if(!B||!Lt||F.current||K().isPaused())return!1;let At,qt,ve=!0;const oe=Et||{},Jt=!M[B]||!oe.dedupe,Vt=()=>rp?!F.current&&B===I.current&&H.current:B===I.current,yn={isValidating:!1,isLoading:!1},Mt=()=>{lt(yn)},$t=()=>{const fe=M[B];fe&&fe[1]===qt&&delete M[B]},ae={isValidating:!0};_t(nt().data)&&(ae.isLoading=!0);try{if(Jt&&(lt(ae),i.loadingTimeout&&_t(nt().data)&&setTimeout(()=>{ve&&Vt()&&K().onLoadingSlow(B,i)},i.loadingTimeout),M[B]=[Lt(Z),$o()]),[At,qt]=M[B],At=await At,Jt&&setTimeout($t,i.dedupingInterval),!M[B]||M[B][1]!==qt)return Jt&&Vt()&&K().onDiscarded(B),!1;yn.error=ge;const fe=A[B];if(!_t(fe)&&(qt<=fe[0]||qt<=fe[1]||fe[1]===0))return Mt(),Jt&&Vt()&&K().onDiscarded(B),!1;const Qe=nt().data;yn.data=o(Qe,At)?Qe:At,Jt&&Vt()&&K().onSuccess(At,B,i)}catch(fe){$t();const Qe=K(),{shouldRetryOnError:Wl}=Qe;Qe.isPaused()||(yn.error=fe,Jt&&Vt()&&(Qe.onError(fe,B,Qe),(Wl===!0||sn(Wl)&&Wl(fe))&&(!K().revalidateOnFocus||!K().revalidateOnReconnect||rt())&&Qe.onErrorRetry(fe,B,Qe,Is=>{const pn=C[B];pn&&pn[0]&&pn[0](up,Is)},{retryCount:(oe.retryCount||0)+1,dedupe:!0})))}return ve=!1,Mt(),!0},[B,r]),mn=$.useCallback((...Et)=>Mg(r,I.current,...Et),[]);if(Ds(()=>{Q.current=u,X.current=i,_t(q)||(ct.current=q)}),Ds(()=>{if(!B)return;const Et=_e.bind(ge,qo);let Lt=0;K().revalidateOnFocus&&(Lt=Date.now()+K().focusThrottleInterval);const qt=GE(B,C,(ve,oe={})=>{if(ve==Tg){const Jt=Date.now();K().revalidateOnFocus&&Jt>Lt&&rt()&&(Lt=Jt+K().focusThrottleInterval,Et())}else if(ve==Ag)K().revalidateOnReconnect&&rt()&&Et();else{if(ve==Og)return _e();if(ve==up)return _e(oe)}});return F.current=!1,I.current=B,H.current=!0,lt({_k:Z}),De&&(M[B]||(_t(J)||Fl?Et():OE(Et))),()=>{F.current=!0,qt()}},[B]),Ds(()=>{let Et;function Lt(){const qt=sn(p)?p(nt().data):p;qt&&Et!==-1&&(Et=setTimeout(At,qt))}function At(){!nt().error&&(v||K().isVisible())&&(S||K().isOnline())?_e(qo).then(Lt):Lt()}return Lt(),()=>{Et&&(clearTimeout(Et),Et=-1)}},[p,v,S,B]),$.useDebugValue(ot),f){if(!rp&&Fl&&ft)throw new Error("Fallback data is required when using Suspense in SSR.");ft&&(Q.current=u,X.current=i,F.current=!1);const Et=Y[B],Lt=!_t(Et)&&ft?mn(Et):fp;if(Ho(Lt),!_t(W)&&ft)throw W;const At=ft?_e(qo):fp;!_t(ot)&&ft&&(At.status="fulfilled",At.value=!0),Ho(At)}return{mutate:mn,get data(){return jt.data=!0,ot},get error(){return jt.error=!0,W},get isValidating(){return jt.isValidating=!0,Qn},get isLoading(){return jt.isLoading=!0,Ta}}},ZE=Qs.defineProperty(LE,"defaultValue",{value:zg}),_R=YE(QE),KE="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20role='img'%20aria-label='Agent%20Inspector'%3e%3cg%20fill='none'%20stroke='%23f59e0b'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M5%2013%20C5%209%208%207%2012%207%20C16%207%2019%209%2019%2013%20C19%2016%2016%2018%2012%2018%20C8%2018%205%2016%205%2013%20Z'%20/%3e%3cpath%20d='M5%2011%20C3.5%209.5%201.5%2010%202%2012.5%20C2.5%2014%204%2013.5%205%2012.5'%20/%3e%3cpath%20d='M19%2011%20C20.5%209.5%2022.5%2010%2022%2012.5%20C21.5%2014%2020%2013.5%2019%2012.5'%20/%3e%3cline%20x1='10'%20y1='7'%20x2='9.5'%20y2='5'%20/%3e%3cline%20x1='14'%20y1='7'%20x2='14.5'%20y2='5'%20/%3e%3cline%20x1='6.5'%20y1='16'%20x2='4.5'%20y2='19.5'%20/%3e%3cline%20x1='9'%20y1='17.5'%20x2='8'%20y2='20.5'%20/%3e%3cline%20x1='15'%20y1='17.5'%20x2='16'%20y2='20.5'%20/%3e%3cline%20x1='17.5'%20y1='16'%20x2='19.5'%20y2='19.5'%20/%3e%3c/g%3e%3ccircle%20cx='9.5'%20cy='4.5'%20r='0.9'%20fill='%23f59e0b'%20/%3e%3ccircle%20cx='14.5'%20cy='4.5'%20r='0.9'%20fill='%23f59e0b'%20/%3e%3c/svg%3e",JE="/assets/index-Bcq8bZoK.css",Sf=B2({head:()=>({meta:[{charSet:"utf-8"},{name:"viewport",content:"width=device-width, initial-scale=1"},{title:"Agent Inspector"}],links:[{rel:"stylesheet",href:JE},{rel:"icon",type:"image/svg+xml",href:KE}]}),component:kE,notFoundComponent:FE});function kE(){return k.jsx(Ng,{children:k.jsx(gg,{})})}function FE(){return k.jsx(Ng,{children:k.jsx("main",{className:"min-h-screen bg-background text-foreground",children:k.jsx("div",{className:"mx-auto flex min-h-screen w-full max-w-3xl flex-col justify-center px-6 py-16",children:k.jsxs("div",{className:"border-border/70 bg-card/60 rounded-lg border p-8 shadow-sm",children:[k.jsx("div",{className:"text-muted-foreground font-mono text-xs uppercase tracking-wider",children:"404"}),k.jsx("h1",{className:"mt-3 text-2xl font-semibold",children:"Page not found"}),k.jsx("p",{className:"text-muted-foreground mt-3 max-w-xl text-sm leading-6",children:"This route is not part of the Agent Inspector UI or API surface."}),k.jsx("a",{href:"/",className:"bg-primary text-primary-foreground hover:bg-primary/90 mt-6 inline-flex h-9 items-center justify-center rounded-md px-4 text-sm font-medium transition-colors",children:"Open Agent Inspector"})]})})})})}function Ng({children:a}){return k.jsxs("html",{lang:"en",className:"dark",children:[k.jsx("head",{children:k.jsx(W2,{})}),k.jsxs("body",{children:[k.jsx(ZE,{value:{revalidateOnFocus:!1,revalidateIfStale:!1},children:a}),k.jsx($2,{})]})]})}const PE="modulepreload",WE=function(a){return"/"+a},dp={},Ug=function(u,i,r){let o=Promise.resolve();if(i&&i.length>0){let m=function(p){return Promise.all(p.map(v=>Promise.resolve(v).then(S=>({status:"fulfilled",value:S}),S=>({status:"rejected",reason:S}))))};document.getElementsByTagName("link");const h=document.querySelector("meta[property=csp-nonce]"),y=h?.nonce||h?.getAttribute("nonce");o=m(i.map(p=>{if(p=WE(p),p in dp)return;dp[p]=!0;const v=p.endsWith(".css"),S=v?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${p}"]${S}`))return;const _=document.createElement("link");if(_.rel=v?"stylesheet":PE,v||(_.as="script"),_.crossOrigin="",_.href=p,y&&_.setAttribute("nonce",y),document.head.appendChild(_),v)return new Promise((R,C)=>{_.addEventListener("load",R),_.addEventListener("error",()=>C(new Error(`Unable to preload CSS for ${p}`)))})}))}function f(h){const y=new Event("vite:preloadError",{cancelable:!0});if(y.payload=h,window.dispatchEvent(y),!y.defaultPrevented)throw h}return o.then(h=>{for(const y of h||[])y.status==="rejected"&&f(y.reason);return u().catch(f)})},$E=()=>Ug(()=>import("./index-DBSbw8Gd.js"),__vite__mapDeps([0,1])),IE=Xs("/")({component:mg($E,"component")}),tR=/^[A-Za-z0-9_-]+$/;function eR(a){let u="";for(const i of a)u+=String.fromCharCode(i);return u}function nR(a){const u=new Uint8Array(a.length);for(let i=0;i<a.length;i++)u[i]=a.charCodeAt(i);return u}function Bg(a){const u=new TextEncoder().encode(a);return btoa(eR(u)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function aR(a){if(a.startsWith("%"))return decodeURIComponent(a);if(!tR.test(a))return a;try{const i=a.padEnd(Math.ceil(a.length/4)*4,"=").replace(/-/g,"+").replace(/_/g,"/"),r=atob(i);return new TextDecoder().decode(nR(r))}catch{return a}}function ER(a){return`/session/${Bg(a)}`}const lR=()=>Ug(()=>import("./_sessionId-6fF5JpyQ.js"),__vite__mapDeps([2,1])),iR=Xs("/session/$sessionId")({component:mg(lR,"component"),parseParams:a=>({sessionId:aR(a.sessionId)}),stringifyParams:a=>({sessionId:Bg(a.sessionId)})}),uR=IE.update({id:"/",path:"/",getParentRoute:()=>Sf}),sR=iR.update({id:"/session/$sessionId",path:"/session/$sessionId",getParentRoute:()=>Sf}),rR={IndexRoute:uR,SessionSessionIdRoute:sR},cR=Sf._addFileChildren(rR);function oR(){const a=Q2({routeTree:cR,scrollRestoration:!1});return fR(a),a}function fR(a){Object.getOwnPropertyDescriptor(a,"stores")===void 0&&Object.defineProperty(a,"stores",{configurable:!0,value:{matches:{get:()=>a.state.matches}}})}async function dR(){const a=await oR();let u;return u=[],window.__TSS_START_OPTIONS__={serializationAdapters:u},u.push(gE),a.options.serializationAdapters&&u.push(...a.options.serializationAdapters),a.update({basepath:"",serializationAdapters:u}),a.state.matches.length||await tE(a),a}async function hR(){const a=await dR();return window.$_TSR?.h(),a}let Vo;function mR(){return Vo||(Vo=hR()),k.jsx(d2,{promise:Vo,children:a=>k.jsx(J2,{router:a})})}$.startTransition(()=>{cS.hydrateRoot(document,k.jsx($.StrictMode,{children:k.jsx(mR,{})}))});export{iR as R,Ug as _,HE as a,dg as b,yR as c,qn as d,aS as e,SR as f,hp as g,ER as h,k as j,$ as r,_R as u};
18
+ `).filter(Boolean);for(const _ of S)try{u(JSON.parse(_))}catch(R){i?.(`Invalid JSON line: ${_}`,R)}}if(m)break}}catch(y){i?.("Stream processing error:",y)}})(),u(h)}async function yE({jsonStream:a,onMessage:u,onError:i}){const r=a.getReader(),{value:o,done:f}=await r.read();if(f||!o)throw new Error("Stream ended before first object");const h=JSON.parse(o);return(async()=>{try{for(;;){const{value:y,done:m}=await r.read();if(m)break;if(y)try{u(JSON.parse(y))}catch(p){i?.(`Invalid JSON: ${y}`,p)}}}catch(y){i?.("Stream processing error:",y)}})(),u(h)}function pE(a){const u="/_serverFn/"+a;return Object.assign((...o)=>{const f=bg()?.serverFns?.fetch;return fE(u,o,f??fetch)},{url:u,serverFnMeta:{id:a},[Zo]:!0})}const gE={key:"$TSS/serverfn",test:a=>typeof a!="function"||!(Zo in a)?!1:!!a[Zo],toSerializable:({serverFnMeta:a})=>({functionId:a.id}),fromSerializable:({functionId:a})=>pE(a)};var ip=og();const Tg=0,Ag=1,Og=2,up=3;var sp=Object.prototype.hasOwnProperty;function Ko(a,u){var i,r;if(a===u)return!0;if(a&&u&&(i=a.constructor)===u.constructor){if(i===Date)return a.getTime()===u.getTime();if(i===RegExp)return a.toString()===u.toString();if(i===Array){if((r=a.length)===u.length)for(;r--&&Ko(a[r],u[r]););return r===-1}if(!i||typeof a=="object"){r=0;for(i in a)if(sp.call(a,i)&&++r&&!sp.call(u,i)||!(i in u)||!Ko(a[i],u[i]))return!1;return Object.keys(u).length===r}}return a!==a&&u!==u}const Bn=new WeakMap,Hn=()=>{},ge=Hn(),Qs=Object,_t=a=>a===ge,sn=a=>typeof a=="function",Gn=(a,u)=>({...a,...u}),wg=a=>sn(a.then),Uo={},As={},pf="undefined",lu=typeof window!=pf,Jo=typeof document!=pf,vE=lu&&"Deno"in window,SE=()=>lu&&typeof window.requestAnimationFrame!=pf,xg=(a,u)=>{const i=Bn.get(a);return[()=>!_t(u)&&a.get(u)||Uo,r=>{if(!_t(u)){const o=a.get(u);u in As||(As[u]=o),i[5](u,Gn(o,r),o||Uo)}},i[6],()=>!_t(u)&&u in As?As[u]:!_t(u)&&a.get(u)||Uo]};let ko=!0;const bE=()=>ko,[Fo,Po]=lu&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[Hn,Hn],_E=()=>{const a=Jo&&document.visibilityState;return _t(a)||a!=="hidden"},EE=a=>(Jo&&document.addEventListener("visibilitychange",a),Fo("focus",a),()=>{Jo&&document.removeEventListener("visibilitychange",a),Po("focus",a)}),RE=a=>{const u=()=>{ko=!0,a()},i=()=>{ko=!1};return Fo("online",u),Fo("offline",i),()=>{Po("online",u),Po("offline",i)}},TE={isOnline:bE,isVisible:_E},AE={initFocus:EE,initReconnect:RE},rp=!qn.useId,Fl=!lu||vE,OE=a=>SE()?window.requestAnimationFrame(a):setTimeout(a,1),Ds=Fl?$.useEffect:$.useLayoutEffect,Bo=typeof navigator<"u"&&navigator.connection,cp=!Fl&&Bo&&(["slow-2g","2g"].includes(Bo.effectiveType)||Bo.saveData),Os=new WeakMap,wE=a=>Qs.prototype.toString.call(a),jo=(a,u)=>a===`[object ${u}]`;let xE=0;const Wo=a=>{const u=typeof a,i=wE(a),r=jo(i,"Date"),o=jo(i,"RegExp"),f=jo(i,"Object");let h,y;if(Qs(a)===a&&!r&&!o){if(h=Os.get(a),h)return h;if(h=++xE+"~",Os.set(a,h),Array.isArray(a)){for(h="@",y=0;y<a.length;y++)h+=Wo(a[y])+",";Os.set(a,h)}if(f){h="#";const m=Qs.keys(a).sort();for(;!_t(y=m.pop());)_t(a[y])||(h+=y+":"+Wo(a[y])+",");Os.set(a,h)}}else h=r?a.toJSON():u=="symbol"?a.toString():u=="string"?JSON.stringify(a):""+a;return h},gf=a=>{if(sn(a))try{a=a()}catch{a=""}const u=a;return a=typeof a=="string"?a:(Array.isArray(a)?a.length:a)?Wo(a):"",[a,u]};let ME=0;const $o=()=>++ME;async function Mg(...a){const[u,i,r,o]=a,f=Gn({populateCache:!0,throwOnError:!0},typeof o=="boolean"?{revalidate:o}:o||{});let h=f.populateCache;const y=f.rollbackOnError;let m=f.optimisticData;const p=_=>typeof y=="function"?y(_):y!==!1,v=f.throwOnError;if(sn(i)){const _=i,R=[],C=u.keys();for(const A of C)!/^\$(inf|sub)\$/.test(A)&&_(u.get(A)._k)&&R.push(A);return Promise.all(R.map(S))}return S(i);async function S(_){const[R]=gf(_);if(!R)return;const[C,A]=xg(u,R),[M,Y,B,Z]=Bn.get(u),H=()=>{const it=M[R];return(sn(f.revalidate)?f.revalidate(C().data,_):f.revalidate!==!1)&&(delete B[R],delete Z[R],it&&it[0])?it[0](Og).then(()=>C().data):C().data};if(a.length<3)return H();let F=r,I,Q=!1;const X=$o();Y[R]=[X,0];const K=!_t(m),rt=C(),nt=rt.data,lt=rt._c,ht=_t(lt)?nt:lt;if(K&&(m=sn(m)?m(ht,nt):m,A({data:m,_c:ht})),sn(F))try{F=F(ht)}catch(it){I=it,Q=!0}if(F&&wg(F))if(F=await F.catch(it=>{I=it,Q=!0}),X!==Y[R][0]){if(Q)throw I;return F}else Q&&K&&p(I)&&(h=!0,A({data:ht,_c:ge}));if(h&&!Q)if(sn(h)){const it=h(F,ht);A({data:it,error:ge,_c:ge})}else A({data:F,error:ge,_c:ge});if(Y[R][1]=$o(),Promise.resolve(H()).then(()=>{A({_c:ge})}),Q){if(v)throw I;return}return F}}const op=(a,u)=>{for(const i in a)a[i][0]&&a[i][0](u)},Cg=(a,u)=>{if(!Bn.has(a)){const i=Gn(AE,u),r=Object.create(null),o=Mg.bind(ge,a);let f=Hn;const h=Object.create(null),y=(v,S)=>{const _=h[v]||[];return h[v]=_,_.push(S),()=>_.splice(_.indexOf(S),1)},m=(v,S,_)=>{a.set(v,S);const R=h[v];if(R)for(const C of R)C(S,_)},p=()=>{if(!Bn.has(a)&&(Bn.set(a,[r,Object.create(null),Object.create(null),Object.create(null),o,m,y]),!Fl)){const v=i.initFocus(setTimeout.bind(ge,op.bind(ge,r,Tg))),S=i.initReconnect(setTimeout.bind(ge,op.bind(ge,r,Ag)));f=()=>{v&&v(),S&&S(),Bn.delete(a)}}};return p(),[a,o,p,f]}return[a,Bn.get(a)[4]]},CE=(a,u,i,r,o)=>{const f=i.errorRetryCount,h=o.retryCount,y=~~((Math.random()+.5)*(1<<(h<8?h:8)))*i.errorRetryInterval;!_t(f)&&h>f||setTimeout(r,y,o)},zE=Ko,[vf,DE]=Cg(new Map),zg=Gn({onLoadingSlow:Hn,onSuccess:Hn,onError:Hn,onErrorRetry:CE,onDiscarded:Hn,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:cp?1e4:5e3,focusThrottleInterval:5*1e3,dedupingInterval:2*1e3,loadingTimeout:cp?5e3:3e3,compare:zE,isPaused:()=>!1,cache:vf,mutate:DE,fallback:{}},TE),Dg=(a,u)=>{const i=Gn(a,u);if(u){const{use:r,fallback:o}=a,{use:f,fallback:h}=u;r&&f&&(i.use=r.concat(f)),o&&h&&(i.fallback=Gn(o,h))}return i},Io=$.createContext({}),LE=a=>{const{value:u}=a,i=$.useContext(Io),r=sn(u),o=$.useMemo(()=>r?u(i):u,[r,i,u]),f=$.useMemo(()=>r?o:Dg(i,o),[r,i,o]),h=o&&o.provider,y=$.useRef(ge);h&&!y.current&&(y.current=Cg(h(f.cache||vf),o));const m=y.current;return m&&(f.cache=m[0],f.mutate=m[1]),Ds(()=>{if(m)return m[2]&&m[2](),m[3]},[]),$.createElement(Io.Provider,Gn(a,{value:f}))},NE="$inf$",Lg=lu&&window.__SWR_DEVTOOLS_USE__,UE=Lg?window.__SWR_DEVTOOLS_USE__:[],BE=()=>{Lg&&(window.__SWR_DEVTOOLS_REACT__=qn)},jE=a=>sn(a[1])?[a[0],a[1],a[2]||{}]:[a[0],null,(a[1]===null?a[2]:a[1])||{}],HE=()=>{const a=$.useContext(Io);return $.useMemo(()=>Gn(zg,a),[a])},qE=a=>(u,i,r)=>a(u,i&&((...f)=>{const[h]=gf(u),[,,,y]=Bn.get(vf);if(h.startsWith(NE))return i(...f);const m=y[h];return _t(m)?i(...f):(delete y[h],m)}),r),VE=UE.concat(qE),YE=a=>function(...i){const r=HE(),[o,f,h]=jE(i),y=Dg(r,h);let m=a;const{use:p}=y,v=(p||[]).concat(VE);for(let S=v.length;S--;)m=v[S](m);return m(o,f||y.fetcher||null,y)},GE=(a,u,i)=>{const r=u[a]||(u[a]=[]);return r.push(i),()=>{const o=r.indexOf(i);o>=0&&(r[o]=r[r.length-1],r.pop())}};BE();const Ho=qn.use||(a=>{switch(a.status){case"pending":throw a;case"fulfilled":return a.value;case"rejected":throw a.reason;default:throw a.status="pending",a.then(u=>{a.status="fulfilled",a.value=u},u=>{a.status="rejected",a.reason=u}),a}}),qo={dedupe:!0},fp=Promise.resolve(ge),XE=()=>Hn,QE=(a,u,i)=>{const{cache:r,compare:o,suspense:f,fallbackData:h,revalidateOnMount:y,revalidateIfStale:m,refreshInterval:p,refreshWhenHidden:v,refreshWhenOffline:S,keepPreviousData:_,strictServerPrefetchWarning:R}=i,[C,A,M,Y]=Bn.get(r),[B,Z]=gf(a),H=$.useRef(!1),F=$.useRef(!1),I=$.useRef(B),Q=$.useRef(u),X=$.useRef(i),K=()=>X.current,rt=()=>K().isVisible()&&K().isOnline(),[nt,lt,ht,it]=xg(r,B),jt=$.useRef({}).current,N=_t(h)?_t(i.fallback)?ge:i.fallback[B]:h,P=(Et,Lt)=>{for(const At in jt){const qt=At;if(qt==="data"){if(!o(Et[qt],Lt[qt])&&(!_t(Et[qt])||!o(ot,Lt[qt])))return!1}else if(Lt[qt]!==Et[qt])return!1}return!0},ut=!H.current,Tt=$.useMemo(()=>{const Et=nt(),Lt=it(),At=Jt=>{const Vt=Gn(Jt);return delete Vt._k,(()=>{if(!B||!u||K().isPaused())return!1;if(ut&&!_t(y))return y;const Mt=_t(N)?Vt.data:N;return _t(Mt)||m})()?{isValidating:!0,isLoading:!0,...Vt}:Vt},qt=At(Et),ve=Et===Lt?qt:At(Lt);let oe=qt;return[()=>{const Jt=At(nt());return P(Jt,oe)?(oe.data=Jt.data,oe.isLoading=Jt.isLoading,oe.isValidating=Jt.isValidating,oe.error=Jt.error,oe):(oe=Jt,Jt)},()=>ve]},[r,B]),pt=ip.useSyncExternalStore($.useCallback(Et=>ht(B,(Lt,At)=>{P(At,Lt)||Et()}),[r,B]),Tt[0],Tt[1]),w=C[B]&&C[B].length>0,q=pt.data,J=_t(q)?N&&wg(N)?Ho(N):N:q,W=pt.error,ct=$.useRef(J),ot=_?_t(q)?_t(ct.current)?J:ct.current:q:J,ft=B&&_t(J),Xt=$.useRef(null);!Fl&&ip.useSyncExternalStore(XE,()=>(Xt.current=!1,Xt),()=>(Xt.current=!0,Xt));const Ht=Xt.current;R&&Ht&&!f&&ft&&console.warn(`Missing pre-initiated data for serialized key "${B}" during server-side rendering. Data fetching should be initiated on the server and provided to SWR via fallback data. You can set "strictServerPrefetchWarning: false" to disable this warning.`);const De=!B||!u||K().isPaused()||w&&!_t(W)?!1:ut&&!_t(y)?y:f?_t(J)?!1:m:_t(J)||m,Xe=ut&&De,Qn=_t(pt.isValidating)?Xe:pt.isValidating,Ta=_t(pt.isLoading)?Xe:pt.isLoading,_e=$.useCallback(async Et=>{const Lt=Q.current;if(!B||!Lt||F.current||K().isPaused())return!1;let At,qt,ve=!0;const oe=Et||{},Jt=!M[B]||!oe.dedupe,Vt=()=>rp?!F.current&&B===I.current&&H.current:B===I.current,yn={isValidating:!1,isLoading:!1},Mt=()=>{lt(yn)},$t=()=>{const fe=M[B];fe&&fe[1]===qt&&delete M[B]},ae={isValidating:!0};_t(nt().data)&&(ae.isLoading=!0);try{if(Jt&&(lt(ae),i.loadingTimeout&&_t(nt().data)&&setTimeout(()=>{ve&&Vt()&&K().onLoadingSlow(B,i)},i.loadingTimeout),M[B]=[Lt(Z),$o()]),[At,qt]=M[B],At=await At,Jt&&setTimeout($t,i.dedupingInterval),!M[B]||M[B][1]!==qt)return Jt&&Vt()&&K().onDiscarded(B),!1;yn.error=ge;const fe=A[B];if(!_t(fe)&&(qt<=fe[0]||qt<=fe[1]||fe[1]===0))return Mt(),Jt&&Vt()&&K().onDiscarded(B),!1;const Qe=nt().data;yn.data=o(Qe,At)?Qe:At,Jt&&Vt()&&K().onSuccess(At,B,i)}catch(fe){$t();const Qe=K(),{shouldRetryOnError:Wl}=Qe;Qe.isPaused()||(yn.error=fe,Jt&&Vt()&&(Qe.onError(fe,B,Qe),(Wl===!0||sn(Wl)&&Wl(fe))&&(!K().revalidateOnFocus||!K().revalidateOnReconnect||rt())&&Qe.onErrorRetry(fe,B,Qe,Is=>{const pn=C[B];pn&&pn[0]&&pn[0](up,Is)},{retryCount:(oe.retryCount||0)+1,dedupe:!0})))}return ve=!1,Mt(),!0},[B,r]),mn=$.useCallback((...Et)=>Mg(r,I.current,...Et),[]);if(Ds(()=>{Q.current=u,X.current=i,_t(q)||(ct.current=q)}),Ds(()=>{if(!B)return;const Et=_e.bind(ge,qo);let Lt=0;K().revalidateOnFocus&&(Lt=Date.now()+K().focusThrottleInterval);const qt=GE(B,C,(ve,oe={})=>{if(ve==Tg){const Jt=Date.now();K().revalidateOnFocus&&Jt>Lt&&rt()&&(Lt=Jt+K().focusThrottleInterval,Et())}else if(ve==Ag)K().revalidateOnReconnect&&rt()&&Et();else{if(ve==Og)return _e();if(ve==up)return _e(oe)}});return F.current=!1,I.current=B,H.current=!0,lt({_k:Z}),De&&(M[B]||(_t(J)||Fl?Et():OE(Et))),()=>{F.current=!0,qt()}},[B]),Ds(()=>{let Et;function Lt(){const qt=sn(p)?p(nt().data):p;qt&&Et!==-1&&(Et=setTimeout(At,qt))}function At(){!nt().error&&(v||K().isVisible())&&(S||K().isOnline())?_e(qo).then(Lt):Lt()}return Lt(),()=>{Et&&(clearTimeout(Et),Et=-1)}},[p,v,S,B]),$.useDebugValue(ot),f){if(!rp&&Fl&&ft)throw new Error("Fallback data is required when using Suspense in SSR.");ft&&(Q.current=u,X.current=i,F.current=!1);const Et=Y[B],Lt=!_t(Et)&&ft?mn(Et):fp;if(Ho(Lt),!_t(W)&&ft)throw W;const At=ft?_e(qo):fp;!_t(ot)&&ft&&(At.status="fulfilled",At.value=!0),Ho(At)}return{mutate:mn,get data(){return jt.data=!0,ot},get error(){return jt.error=!0,W},get isValidating(){return jt.isValidating=!0,Qn},get isLoading(){return jt.isLoading=!0,Ta}}},ZE=Qs.defineProperty(LE,"defaultValue",{value:zg}),_R=YE(QE),KE="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20role='img'%20aria-label='Agent%20Inspector'%3e%3cg%20fill='none'%20stroke='%23f59e0b'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M5%2013%20C5%209%208%207%2012%207%20C16%207%2019%209%2019%2013%20C19%2016%2016%2018%2012%2018%20C8%2018%205%2016%205%2013%20Z'%20/%3e%3cpath%20d='M5%2011%20C3.5%209.5%201.5%2010%202%2012.5%20C2.5%2014%204%2013.5%205%2012.5'%20/%3e%3cpath%20d='M19%2011%20C20.5%209.5%2022.5%2010%2022%2012.5%20C21.5%2014%2020%2013.5%2019%2012.5'%20/%3e%3cline%20x1='10'%20y1='7'%20x2='9.5'%20y2='5'%20/%3e%3cline%20x1='14'%20y1='7'%20x2='14.5'%20y2='5'%20/%3e%3cline%20x1='6.5'%20y1='16'%20x2='4.5'%20y2='19.5'%20/%3e%3cline%20x1='9'%20y1='17.5'%20x2='8'%20y2='20.5'%20/%3e%3cline%20x1='15'%20y1='17.5'%20x2='16'%20y2='20.5'%20/%3e%3cline%20x1='17.5'%20y1='16'%20x2='19.5'%20y2='19.5'%20/%3e%3c/g%3e%3ccircle%20cx='9.5'%20cy='4.5'%20r='0.9'%20fill='%23f59e0b'%20/%3e%3ccircle%20cx='14.5'%20cy='4.5'%20r='0.9'%20fill='%23f59e0b'%20/%3e%3c/svg%3e",JE="/assets/index-DP4NzCZ5.css",Sf=B2({head:()=>({meta:[{charSet:"utf-8"},{name:"viewport",content:"width=device-width, initial-scale=1"},{title:"Agent Inspector"}],links:[{rel:"stylesheet",href:JE},{rel:"icon",type:"image/svg+xml",href:KE}]}),component:kE,notFoundComponent:FE});function kE(){return k.jsx(Ng,{children:k.jsx(gg,{})})}function FE(){return k.jsx(Ng,{children:k.jsx("main",{className:"min-h-screen bg-background text-foreground",children:k.jsx("div",{className:"mx-auto flex min-h-screen w-full max-w-3xl flex-col justify-center px-6 py-16",children:k.jsxs("div",{className:"border-border/70 bg-card/60 rounded-lg border p-8 shadow-sm",children:[k.jsx("div",{className:"text-muted-foreground font-mono text-xs uppercase tracking-wider",children:"404"}),k.jsx("h1",{className:"mt-3 text-2xl font-semibold",children:"Page not found"}),k.jsx("p",{className:"text-muted-foreground mt-3 max-w-xl text-sm leading-6",children:"This route is not part of the Agent Inspector UI or API surface."}),k.jsx("a",{href:"/",className:"bg-primary text-primary-foreground hover:bg-primary/90 mt-6 inline-flex h-9 items-center justify-center rounded-md px-4 text-sm font-medium transition-colors",children:"Open Agent Inspector"})]})})})})}function Ng({children:a}){return k.jsxs("html",{lang:"en",className:"dark",children:[k.jsx("head",{children:k.jsx(W2,{})}),k.jsxs("body",{children:[k.jsx(ZE,{value:{revalidateOnFocus:!1,revalidateIfStale:!1},children:a}),k.jsx($2,{})]})]})}const PE="modulepreload",WE=function(a){return"/"+a},dp={},Ug=function(u,i,r){let o=Promise.resolve();if(i&&i.length>0){let m=function(p){return Promise.all(p.map(v=>Promise.resolve(v).then(S=>({status:"fulfilled",value:S}),S=>({status:"rejected",reason:S}))))};document.getElementsByTagName("link");const h=document.querySelector("meta[property=csp-nonce]"),y=h?.nonce||h?.getAttribute("nonce");o=m(i.map(p=>{if(p=WE(p),p in dp)return;dp[p]=!0;const v=p.endsWith(".css"),S=v?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${p}"]${S}`))return;const _=document.createElement("link");if(_.rel=v?"stylesheet":PE,v||(_.as="script"),_.crossOrigin="",_.href=p,y&&_.setAttribute("nonce",y),document.head.appendChild(_),v)return new Promise((R,C)=>{_.addEventListener("load",R),_.addEventListener("error",()=>C(new Error(`Unable to preload CSS for ${p}`)))})}))}function f(h){const y=new Event("vite:preloadError",{cancelable:!0});if(y.payload=h,window.dispatchEvent(y),!y.defaultPrevented)throw h}return o.then(h=>{for(const y of h||[])y.status==="rejected"&&f(y.reason);return u().catch(f)})},$E=()=>Ug(()=>import("./index-DH1DjJOl.js"),__vite__mapDeps([0,1])),IE=Xs("/")({component:mg($E,"component")}),tR=/^[A-Za-z0-9_-]+$/;function eR(a){let u="";for(const i of a)u+=String.fromCharCode(i);return u}function nR(a){const u=new Uint8Array(a.length);for(let i=0;i<a.length;i++)u[i]=a.charCodeAt(i);return u}function Bg(a){const u=new TextEncoder().encode(a);return btoa(eR(u)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function aR(a){if(a.startsWith("%"))return decodeURIComponent(a);if(!tR.test(a))return a;try{const i=a.padEnd(Math.ceil(a.length/4)*4,"=").replace(/-/g,"+").replace(/_/g,"/"),r=atob(i);return new TextDecoder().decode(nR(r))}catch{return a}}function ER(a){return`/session/${Bg(a)}`}const lR=()=>Ug(()=>import("./_sessionId-mnr0O0Ri.js"),__vite__mapDeps([2,1])),iR=Xs("/session/$sessionId")({component:mg(lR,"component"),parseParams:a=>({sessionId:aR(a.sessionId)}),stringifyParams:a=>({sessionId:Bg(a.sessionId)})}),uR=IE.update({id:"/",path:"/",getParentRoute:()=>Sf}),sR=iR.update({id:"/session/$sessionId",path:"/session/$sessionId",getParentRoute:()=>Sf}),rR={IndexRoute:uR,SessionSessionIdRoute:sR},cR=Sf._addFileChildren(rR);function oR(){const a=Q2({routeTree:cR,scrollRestoration:!1});return fR(a),a}function fR(a){Object.getOwnPropertyDescriptor(a,"stores")===void 0&&Object.defineProperty(a,"stores",{configurable:!0,value:{matches:{get:()=>a.state.matches}}})}async function dR(){const a=await oR();let u;return u=[],window.__TSS_START_OPTIONS__={serializationAdapters:u},u.push(gE),a.options.serializationAdapters&&u.push(...a.options.serializationAdapters),a.update({basepath:"",serializationAdapters:u}),a.state.matches.length||await tE(a),a}async function hR(){const a=await dR();return window.$_TSR?.h(),a}let Vo;function mR(){return Vo||(Vo=hR()),k.jsx(d2,{promise:Vo,children:a=>k.jsx(J2,{router:a})})}$.startTransition(()=>{cS.hydrateRoot(document,k.jsx($.StrictMode,{children:k.jsx(mR,{})}))});export{iR as R,Ug as _,HE as a,dg as b,yR as c,qn as d,aS as e,SR as f,hp as g,ER as h,k as j,$ as r,_R as u};
@@ -1,6 +1,6 @@
1
1
  import { j as jsxRuntimeExports } from "./_libs/react.mjs";
2
- import { P as ProxyViewerContainer } from "./_ssr/ProxyViewerContainer-BEeF4V-C.mjs";
3
- import { R as Route$B } from "./_ssr/router-C8DJ5pQZ.mjs";
2
+ import { P as ProxyViewerContainer } from "./_ssr/ProxyViewerContainer-D8YjQDNj.mjs";
3
+ import { R as Route$B } from "./_ssr/router-sy38X5AX.mjs";
4
4
  import "./_libs/jszip.mjs";
5
5
  import "./_libs/modelcontextprotocol__server.mjs";
6
6
  import "./_libs/swr.mjs";
@@ -1,6 +1,6 @@
1
1
  import { r as reactExports, j as jsxRuntimeExports } from "../_libs/react.mjs";
2
- import { g as getLogFormatAdapter, r as resolveLogFormat, a as getConversationId, c as cn, B as Badge, f as formatTokens, J as JsonViewerFromString, b as copyTextToClipboard } from "./ProxyViewerContainer-BEeF4V-C.mjs";
3
- import "./router-C8DJ5pQZ.mjs";
2
+ import { g as getLogFormatAdapter, r as resolveLogFormat, a as getConversationId, c as cn, B as Badge, f as formatTokens, J as JsonViewerFromString, b as copyTextToClipboard } from "./ProxyViewerContainer-D8YjQDNj.mjs";
3
+ import "./router-sy38X5AX.mjs";
4
4
  import "../_libs/modelcontextprotocol__server.mjs";
5
5
  import "../_libs/jszip.mjs";
6
6
  import { X, ak as Rows3, al as Columns2, a6 as Minus, P as Plus, y as Pencil, f as ChevronRight, am as Equal, a as Check, c as Copy } from "../_libs/lucide-react.mjs";
@@ -1,5 +1,5 @@
1
1
  import { r as reactExports, j as jsxRuntimeExports, a as React } from "../_libs/react.mjs";
2
- import { I as InspectorGroupsListResponseSchema, C as CapturedLogSchema, D as DEFAULT_CAPTURE_MODE, a as DEFAULT_SLOW_RESPONSE_THRESHOLD_SECONDS, b as DEFAULT_PROVIDER_TEST_TIMEOUT_SECONDS, c as DEFAULT_TIME_DISPLAY_FORMAT, d as RuntimeConfigSchema, p as packageJson, P as ProviderConfigSchema, g as apiFormatForPath, l as GroupEvidenceExportResultSchema, m as DeleteInspectorGroupResponseSchema, r as createPendingProviderTestResults, t as ProviderTestResultsSchema, u as createFailedProviderTestResults, M as MAX_SLOW_RESPONSE_THRESHOLD_SECONDS, v as MAX_PROVIDER_TEST_TIMEOUT_SECONDS, T as TimeDisplayFormatSchema, h as getSessionPath, f as parseOpenAIResponse, O as OpenAIRequestSchema, A as AnthropicResponseSchema$1, e as AnthropicRequestSchema, s as safeGetOwnProperty, w as resolveProviderContextWindow, j as AlertSummarySchema, k as AlertListResponseSchema, G as GroupEvidenceReadResponseSchema, q as maskApiKey, n as providerHasContextMetadata, o as findProviderModelMetadata, K as KnowledgeCandidateSchema, i as stripClaudeCodeBillingHeader, L as LogBodyChunkSchema, x as isPlainRecord } from "./router-C8DJ5pQZ.mjs";
2
+ import { I as InspectorGroupsListResponseSchema, C as CapturedLogSchema, D as DEFAULT_CAPTURE_MODE, a as DEFAULT_SLOW_RESPONSE_THRESHOLD_SECONDS, b as DEFAULT_PROVIDER_TEST_TIMEOUT_SECONDS, c as DEFAULT_TIME_DISPLAY_FORMAT, d as RuntimeConfigSchema, p as packageJson, P as ProviderConfigSchema, g as apiFormatForPath, l as GroupEvidenceExportResultSchema, m as DeleteInspectorGroupResponseSchema, r as createPendingProviderTestResults, t as ProviderTestResultsSchema, u as createFailedProviderTestResults, M as MAX_SLOW_RESPONSE_THRESHOLD_SECONDS, v as MAX_PROVIDER_TEST_TIMEOUT_SECONDS, T as TimeDisplayFormatSchema, h as getSessionPath, f as parseOpenAIResponse, O as OpenAIRequestSchema, A as AnthropicResponseSchema$1, e as AnthropicRequestSchema, s as safeGetOwnProperty, w as resolveProviderContextWindow, j as AlertSummarySchema, k as AlertListResponseSchema, G as GroupEvidenceReadResponseSchema, q as maskApiKey, n as providerHasContextMetadata, o as findProviderModelMetadata, K as KnowledgeCandidateSchema, i as stripClaudeCodeBillingHeader, L as LogBodyChunkSchema, x as isPlainRecord } from "./router-sy38X5AX.mjs";
3
3
  import { u as useSWR, a as useSWRConfig } from "../_libs/swr.mjs";
4
4
  import { J as JSZip } from "../_libs/jszip.mjs";
5
5
  import { c as clsx } from "../_libs/clsx.mjs";
@@ -1989,19 +1989,19 @@ function useCopyFeedback(text) {
1989
1989
  return { copied, copy };
1990
1990
  }
1991
1991
  const LazyCompareDrawer = reactExports.lazy(
1992
- () => import("./CompareDrawer-DqQHO4tk.mjs").then((m) => ({ default: m.CompareDrawer }))
1992
+ () => import("./CompareDrawer-_uFgjkB2.mjs").then((m) => ({ default: m.CompareDrawer }))
1993
1993
  );
1994
1994
  const LazyReplayDialog = reactExports.lazy(
1995
- () => import("./ReplayDialog-DUZbsd5x.mjs").then((m) => ({ default: m.ReplayDialog }))
1995
+ () => import("./ReplayDialog-CFwKM7jc.mjs").then((m) => ({ default: m.ReplayDialog }))
1996
1996
  );
1997
1997
  const LazyRequestAnatomy = reactExports.lazy(
1998
- () => import("./RequestAnatomy-DKuIxoBj.mjs").then((m) => ({ default: m.RequestAnatomy }))
1998
+ () => import("./RequestAnatomy-2Vr84GxT.mjs").then((m) => ({ default: m.RequestAnatomy }))
1999
1999
  );
2000
2000
  const LazyResponseView = reactExports.lazy(
2001
- () => import("./ResponseView-BB9CYmTJ.mjs").then((m) => ({ default: m.ResponseView }))
2001
+ () => import("./ResponseView-CSBWBHRJ.mjs").then((m) => ({ default: m.ResponseView }))
2002
2002
  );
2003
2003
  const LazyStreamingChunkSequence = reactExports.lazy(
2004
- () => import("./StreamingChunkSequence-CkY3uTjF.mjs").then((m) => ({
2004
+ () => import("./StreamingChunkSequence-Dr4JApqs.mjs").then((m) => ({
2005
2005
  default: m.StreamingChunkSequence
2006
2006
  }))
2007
2007
  );
@@ -6520,6 +6520,15 @@ function formatTimestamp(value) {
6520
6520
  hour12: false
6521
6521
  }).format(new Date(millis));
6522
6522
  }
6523
+ function formatNullableTimestamp(value) {
6524
+ return value === null ? "-" : formatTimestamp(value);
6525
+ }
6526
+ function formatJsonPreview(value) {
6527
+ const serialized = JSON.stringify(value);
6528
+ const text = serialized === void 0 ? String(value) : serialized;
6529
+ if (text.length <= 160) return text;
6530
+ return `${text.slice(0, 157)}...`;
6531
+ }
6523
6532
  function firstNonEmpty(...values) {
6524
6533
  for (const value of values) {
6525
6534
  if (value !== null && value.trim().length > 0) return value;
@@ -6545,6 +6554,16 @@ function latestLog(row) {
6545
6554
  const logs = row.exportMember?.session?.latestLogs ?? [];
6546
6555
  return logs[0] ?? null;
6547
6556
  }
6557
+ function memberSourceLabel(source) {
6558
+ switch (source) {
6559
+ case "export":
6560
+ return "fresh export";
6561
+ case "evidence":
6562
+ return "evidence";
6563
+ case "group":
6564
+ return "group";
6565
+ }
6566
+ }
6548
6567
  function evidenceFor(group, exportResult) {
6549
6568
  if (exportResult !== null && exportResult.group.id === group.id) return exportResult.evidence;
6550
6569
  return group.evidence;
@@ -7073,6 +7092,10 @@ function CopyPathRow({ label, value }) {
7073
7092
  ] });
7074
7093
  }
7075
7094
  function MemberTable({ rows }) {
7095
+ const [expandedMemberId, setExpandedMemberId] = reactExports.useState(null);
7096
+ const toggleMember = reactExports.useCallback((memberId) => {
7097
+ setExpandedMemberId((current) => current === memberId ? null : memberId);
7098
+ }, []);
7076
7099
  if (rows.length === 0) {
7077
7100
  return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "rounded-md border border-dashed border-border px-3 py-8 text-center text-xs text-muted-foreground", children: "No sessions attached." });
7078
7101
  }
@@ -7088,11 +7111,21 @@ function MemberTable({ rows }) {
7088
7111
  /* @__PURE__ */ jsxRuntimeExports.jsx("th", { className: "px-3 py-2 font-medium", children: "First chunk" }),
7089
7112
  /* @__PURE__ */ jsxRuntimeExports.jsx("th", { className: "px-3 py-2 font-medium", children: "Tokens" })
7090
7113
  ] }) }),
7091
- /* @__PURE__ */ jsxRuntimeExports.jsx("tbody", { children: rows.map((row) => /* @__PURE__ */ jsxRuntimeExports.jsx(MemberRow, { row }, row.member.id)) })
7114
+ /* @__PURE__ */ jsxRuntimeExports.jsx("tbody", { children: rows.map((row) => {
7115
+ const isExpanded = expandedMemberId === row.member.id;
7116
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs(reactExports.Fragment, { children: [
7117
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberRow, { row, isExpanded, onToggleDetails: toggleMember }),
7118
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailsRow, { row, isExpanded })
7119
+ ] }, row.member.id);
7120
+ }) })
7092
7121
  ] }) })
7093
7122
  ] });
7094
7123
  }
7095
- function MemberRow({ row }) {
7124
+ function MemberRow({
7125
+ row,
7126
+ isExpanded,
7127
+ onToggleDetails
7128
+ }) {
7096
7129
  const member = row.member;
7097
7130
  const session = row.exportMember?.session ?? null;
7098
7131
  const log = latestLog(row);
@@ -7103,33 +7136,57 @@ function MemberRow({ row }) {
7103
7136
  const tokens = session?.tokenUsage.total ?? null;
7104
7137
  const firstChunkMs = log?.firstChunkMs ?? null;
7105
7138
  const sessionLabel = firstNonEmpty(member.label, member.sessionId);
7106
- return /* @__PURE__ */ jsxRuntimeExports.jsxs("tr", { className: "border-b border-border last:border-0", children: [
7139
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("tr", { className: "border-b border-border last:border-0 hover:bg-muted/20", children: [
7107
7140
  /* @__PURE__ */ jsxRuntimeExports.jsxs("td", { className: "max-w-56 px-3 py-2", children: [
7108
- canOpenLiveSession ? /* @__PURE__ */ jsxRuntimeExports.jsxs(
7109
- "a",
7110
- {
7111
- href: sessionPath,
7112
- target: "_blank",
7113
- rel: "noreferrer",
7114
- className: "inline-flex max-w-full min-w-0 items-center gap-2 rounded-sm font-mono text-xs text-primary outline-none hover:underline focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
7115
- "aria-label": `Open session ${sessionLabel}`,
7116
- title: `Open session ${sessionLabel}`,
7117
- children: [
7118
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "min-w-0 truncate", children: sessionLabel }),
7119
- /* @__PURE__ */ jsxRuntimeExports.jsx(ExternalLink, { className: "size-3 shrink-0 text-muted-foreground" })
7120
- ]
7121
- }
7122
- ) : /* @__PURE__ */ jsxRuntimeExports.jsxs(
7123
- "span",
7124
- {
7125
- className: "inline-flex max-w-full min-w-0 items-center gap-2 font-mono text-xs text-foreground",
7126
- title: `Evidence snapshot for ${sessionLabel}`,
7127
- children: [
7128
- /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "min-w-0 truncate", children: sessionLabel }),
7129
- /* @__PURE__ */ jsxRuntimeExports.jsx(Badge, { variant: "outline", className: "shrink-0 border-zinc-200 bg-zinc-50 text-zinc-600", children: "evidence" })
7130
- ]
7131
- }
7132
- ),
7141
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex min-w-0 items-center gap-1.5", children: [
7142
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
7143
+ Button,
7144
+ {
7145
+ type: "button",
7146
+ variant: "ghost",
7147
+ size: "icon",
7148
+ className: "size-6 shrink-0 text-muted-foreground",
7149
+ "aria-label": isExpanded ? `Hide member ${sessionLabel}` : `Show member ${sessionLabel}`,
7150
+ title: isExpanded ? "Hide member details" : "Show member details",
7151
+ onClick: () => {
7152
+ onToggleDetails(member.id);
7153
+ },
7154
+ children: isExpanded ? /* @__PURE__ */ jsxRuntimeExports.jsx(ChevronDown, { className: "size-3.5" }) : /* @__PURE__ */ jsxRuntimeExports.jsx(ChevronRight, { className: "size-3.5" })
7155
+ }
7156
+ ),
7157
+ canOpenLiveSession ? /* @__PURE__ */ jsxRuntimeExports.jsxs(
7158
+ "a",
7159
+ {
7160
+ href: sessionPath,
7161
+ target: "_blank",
7162
+ rel: "noreferrer",
7163
+ className: "inline-flex max-w-full min-w-0 items-center gap-2 rounded-sm font-mono text-xs text-primary outline-none hover:underline focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
7164
+ "aria-label": `Open session ${sessionLabel}`,
7165
+ title: `Open session ${sessionLabel}`,
7166
+ children: [
7167
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "min-w-0 truncate", children: sessionLabel }),
7168
+ /* @__PURE__ */ jsxRuntimeExports.jsx(ExternalLink, { className: "size-3 shrink-0 text-muted-foreground" })
7169
+ ]
7170
+ }
7171
+ ) : /* @__PURE__ */ jsxRuntimeExports.jsxs(
7172
+ "span",
7173
+ {
7174
+ className: "inline-flex max-w-full min-w-0 items-center gap-2 font-mono text-xs text-foreground",
7175
+ title: `Evidence snapshot for ${sessionLabel}`,
7176
+ children: [
7177
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "min-w-0 truncate", children: sessionLabel }),
7178
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
7179
+ Badge,
7180
+ {
7181
+ variant: "outline",
7182
+ className: "shrink-0 border-zinc-200 bg-zinc-50 text-zinc-600",
7183
+ children: "evidence"
7184
+ }
7185
+ )
7186
+ ]
7187
+ }
7188
+ )
7189
+ ] }),
7133
7190
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "mt-0.5 truncate text-[11px] text-muted-foreground", children: displayText(member.agent) })
7134
7191
  ] }),
7135
7192
  /* @__PURE__ */ jsxRuntimeExports.jsx("td", { className: "max-w-52 px-3 py-2", children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "block truncate", children: providerModel(member) }) }),
@@ -7140,6 +7197,142 @@ function MemberRow({ row }) {
7140
7197
  /* @__PURE__ */ jsxRuntimeExports.jsx("td", { className: "px-3 py-2 font-mono", children: tokens === null ? "-" : formatNumber(tokens) })
7141
7198
  ] });
7142
7199
  }
7200
+ function MemberDetailsRow({
7201
+ row,
7202
+ isExpanded
7203
+ }) {
7204
+ if (!isExpanded) return null;
7205
+ const member = row.member;
7206
+ const exportMember = row.exportMember;
7207
+ const session = exportMember?.session ?? null;
7208
+ const run = exportMember?.run ?? null;
7209
+ const metadataEntries = Object.entries(member.metadata);
7210
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("tr", { className: "border-b border-border bg-muted/10", children: /* @__PURE__ */ jsxRuntimeExports.jsx("td", { colSpan: 7, className: "px-3 pb-4 pt-2", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "space-y-3 rounded-md border border-border bg-background p-3", children: [
7211
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "grid gap-2 sm:grid-cols-2 lg:grid-cols-4", children: [
7212
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailItem, { label: "Source", value: memberSourceLabel(row.source) }),
7213
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailItem, { label: "Member ID", value: member.id, mono: true }),
7214
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailItem, { label: "Session ID", value: member.sessionId, mono: true }),
7215
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailItem, { label: "Run ID", value: run?.id ?? member.runId ?? "-", mono: true }),
7216
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailItem, { label: "Created", value: formatTimestamp(member.addedAt) }),
7217
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailItem, { label: "Updated", value: formatTimestamp(member.updatedAt) }),
7218
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
7219
+ MemberDetailItem,
7220
+ {
7221
+ label: "Session created",
7222
+ value: formatNullableTimestamp(session?.createdAt ?? null)
7223
+ }
7224
+ ),
7225
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
7226
+ MemberDetailItem,
7227
+ {
7228
+ label: "Session updated",
7229
+ value: formatNullableTimestamp(session?.updatedAt ?? null)
7230
+ }
7231
+ )
7232
+ ] }),
7233
+ session === null ? /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "rounded-md border border-dashed border-border px-3 py-2 text-xs text-muted-foreground", children: "No session snapshot is available for this member." }) : /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "grid gap-2 sm:grid-cols-2 lg:grid-cols-4", children: [
7234
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailItem, { label: "Log coverage", value: session.logCoverage }),
7235
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailItem, { label: "Runtime", value: displayText(session.runtimeMode) }),
7236
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailItem, { label: "Requests", value: formatNumber(session.requestCount), mono: true }),
7237
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberDetailItem, { label: "Errors", value: formatNumber(session.errorCount), mono: true }),
7238
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
7239
+ MemberDetailItem,
7240
+ {
7241
+ label: "Input tokens",
7242
+ value: formatNumber(session.tokenUsage.input),
7243
+ mono: true
7244
+ }
7245
+ ),
7246
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
7247
+ MemberDetailItem,
7248
+ {
7249
+ label: "Output tokens",
7250
+ value: formatNumber(session.tokenUsage.output),
7251
+ mono: true
7252
+ }
7253
+ ),
7254
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
7255
+ MemberDetailItem,
7256
+ {
7257
+ label: "Cache read",
7258
+ value: formatNumber(session.tokenUsage.cacheRead),
7259
+ mono: true
7260
+ }
7261
+ ),
7262
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
7263
+ MemberDetailItem,
7264
+ {
7265
+ label: "Total tokens",
7266
+ value: formatNumber(session.tokenUsage.total),
7267
+ mono: true
7268
+ }
7269
+ )
7270
+ ] }),
7271
+ /* @__PURE__ */ jsxRuntimeExports.jsx(LatestLogsPreview, { logs: session?.latestLogs ?? [] }),
7272
+ /* @__PURE__ */ jsxRuntimeExports.jsx(MemberMetadata, { entries: metadataEntries })
7273
+ ] }) }) });
7274
+ }
7275
+ function MemberDetailItem({
7276
+ label,
7277
+ value,
7278
+ mono = false
7279
+ }) {
7280
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "min-w-0", children: [
7281
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-[11px] font-medium uppercase tracking-wide text-muted-foreground", children: label }),
7282
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
7283
+ "div",
7284
+ {
7285
+ className: cn("truncate text-xs text-foreground", mono ? "font-mono" : ""),
7286
+ title: value,
7287
+ children: value
7288
+ }
7289
+ )
7290
+ ] });
7291
+ }
7292
+ function LatestLogsPreview({ logs }) {
7293
+ const visibleLogs = logs.slice(0, 5);
7294
+ if (visibleLogs.length === 0) {
7295
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "rounded-md border border-dashed border-border px-3 py-2 text-xs text-muted-foreground", children: "No latest logs in this snapshot." });
7296
+ }
7297
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "overflow-hidden rounded-md border border-border", children: [
7298
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "border-b border-border bg-muted/30 px-3 py-2 text-[11px] font-semibold uppercase tracking-wide text-muted-foreground", children: "Latest logs" }),
7299
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "divide-y divide-border", children: visibleLogs.map((log) => /* @__PURE__ */ jsxRuntimeExports.jsxs(
7300
+ "div",
7301
+ {
7302
+ className: "grid gap-2 px-3 py-2 text-xs sm:grid-cols-[72px_1fr_88px_88px]",
7303
+ children: [
7304
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "font-mono text-muted-foreground", children: [
7305
+ "#",
7306
+ log.id
7307
+ ] }),
7308
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "min-w-0 truncate", children: [
7309
+ displayText(log.model),
7310
+ " · ",
7311
+ log.apiFormat,
7312
+ " · ",
7313
+ log.path
7314
+ ] }),
7315
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "font-mono text-muted-foreground", children: formatMs(log.firstChunkMs) }),
7316
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "font-mono text-muted-foreground", children: formatMs(log.latencyMs) })
7317
+ ]
7318
+ },
7319
+ log.id
7320
+ )) })
7321
+ ] });
7322
+ }
7323
+ function MemberMetadata({ entries }) {
7324
+ if (entries.length === 0) return null;
7325
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "overflow-hidden rounded-md border border-border", children: [
7326
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "border-b border-border bg-muted/30 px-3 py-2 text-[11px] font-semibold uppercase tracking-wide text-muted-foreground", children: "Metadata" }),
7327
+ /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "grid gap-x-3 gap-y-2 p-3 text-xs sm:grid-cols-2", children: entries.map(([key, value]) => {
7328
+ const preview = formatJsonPreview(value);
7329
+ return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "min-w-0", children: [
7330
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "mr-2 text-muted-foreground", children: key }),
7331
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "font-mono text-foreground", title: preview, children: preview })
7332
+ ] }, key);
7333
+ }) })
7334
+ ] });
7335
+ }
7143
7336
  function ClaudeCodeIcon() {
7144
7337
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
7145
7338
  "svg",
@@ -1,7 +1,7 @@
1
1
  import { r as reactExports, j as jsxRuntimeExports } from "../_libs/react.mjs";
2
- import { u as useProviders, D as Dialog, d as DialogContent, e as DialogHeader, h as DialogTitle, T as Tabs, i as TabsList, j as TabsTrigger, k as TabsContent, l as Button, m as TooltipProvider, n as Tooltip, o as TooltipTrigger, p as TooltipContent, q as dispatchLogFocusRequest } from "./ProxyViewerContainer-BEeF4V-C.mjs";
3
- import { ResponseView } from "./ResponseView-BB9CYmTJ.mjs";
4
- import { C as CapturedLogSchema } from "./router-C8DJ5pQZ.mjs";
2
+ import { u as useProviders, D as Dialog, d as DialogContent, e as DialogHeader, h as DialogTitle, T as Tabs, i as TabsList, j as TabsTrigger, k as TabsContent, l as Button, m as TooltipProvider, n as Tooltip, o as TooltipTrigger, p as TooltipContent, q as dispatchLogFocusRequest } from "./ProxyViewerContainer-D8YjQDNj.mjs";
3
+ import { ResponseView } from "./ResponseView-CSBWBHRJ.mjs";
4
+ import { C as CapturedLogSchema } from "./router-sy38X5AX.mjs";
5
5
  import "../_libs/jszip.mjs";
6
6
  import "../_libs/modelcontextprotocol__server.mjs";
7
7
  import { a3 as RotateCcw, an as Braces, ao as Minimize2 } from "../_libs/lucide-react.mjs";
@@ -1,6 +1,6 @@
1
1
  import { r as reactExports, j as jsxRuntimeExports } from "../_libs/react.mjs";
2
- import { u as useProviders, s as analyzeContextIntelligence, f as formatTokens, m as TooltipProvider, c as cn, n as Tooltip, o as TooltipTrigger, p as TooltipContent, S as SegmentBar, R as ROLE_COLOR_CLASSES, A as ANATOMY_ROLE_LABELS, t as formatContextWindowTokens, C as CONTEXT_USAGE_THRESHOLDS } from "./ProxyViewerContainer-BEeF4V-C.mjs";
3
- import "./router-C8DJ5pQZ.mjs";
2
+ import { u as useProviders, s as analyzeContextIntelligence, f as formatTokens, m as TooltipProvider, c as cn, n as Tooltip, o as TooltipTrigger, p as TooltipContent, S as SegmentBar, R as ROLE_COLOR_CLASSES, A as ANATOMY_ROLE_LABELS, t as formatContextWindowTokens, C as CONTEXT_USAGE_THRESHOLDS } from "./ProxyViewerContainer-D8YjQDNj.mjs";
3
+ import "./router-sy38X5AX.mjs";
4
4
  import "../_libs/modelcontextprotocol__server.mjs";
5
5
  import "../_libs/jszip.mjs";
6
6
  import { I as Info, C as ChevronDown, f as ChevronRight } from "../_libs/lucide-react.mjs";
@@ -1,6 +1,6 @@
1
1
  import { r as reactExports, j as jsxRuntimeExports } from "../_libs/react.mjs";
2
- import { g as getLogFormatAdapter, f as formatTokens, c as cn, v as getStatusCategory, B as Badge, w as Collapsible, x as CollapsibleTrigger, y as CollapsibleContent, z as ScrollArea, E as JsonViewer, F as safeJsonValue } from "./ProxyViewerContainer-BEeF4V-C.mjs";
3
- import "./router-C8DJ5pQZ.mjs";
2
+ import { g as getLogFormatAdapter, f as formatTokens, c as cn, v as getStatusCategory, B as Badge, w as Collapsible, x as CollapsibleTrigger, y as CollapsibleContent, z as ScrollArea, E as JsonViewer, F as safeJsonValue } from "./ProxyViewerContainer-D8YjQDNj.mjs";
3
+ import "./router-sy38X5AX.mjs";
4
4
  import "../_libs/modelcontextprotocol__server.mjs";
5
5
  import "../_libs/jszip.mjs";
6
6
  import { Z as Zap, r as TriangleAlert, ap as CircleStop, B as Brain, C as ChevronDown, f as ChevronRight, m as Terminal } from "../_libs/lucide-react.mjs";
@@ -1,6 +1,6 @@
1
1
  import { r as reactExports, j as jsxRuntimeExports } from "../_libs/react.mjs";
2
- import { m as TooltipProvider, n as Tooltip, o as TooltipTrigger, B as Badge, p as TooltipContent, E as JsonViewer } from "./ProxyViewerContainer-BEeF4V-C.mjs";
3
- import "./router-C8DJ5pQZ.mjs";
2
+ import { m as TooltipProvider, n as Tooltip, o as TooltipTrigger, B as Badge, p as TooltipContent, E as JsonViewer } from "./ProxyViewerContainer-D8YjQDNj.mjs";
3
+ import "./router-sy38X5AX.mjs";
4
4
  import "../_libs/modelcontextprotocol__server.mjs";
5
5
  import "../_libs/jszip.mjs";
6
6
  import { C as ChevronDown, f as ChevronRight, L as LoaderCircle } from "../_libs/lucide-react.mjs";
@@ -1,6 +1,6 @@
1
- import { P as ProxyViewerContainer } from "./ProxyViewerContainer-BEeF4V-C.mjs";
1
+ import { P as ProxyViewerContainer } from "./ProxyViewerContainer-D8YjQDNj.mjs";
2
2
  import "../_libs/react.mjs";
3
- import "./router-C8DJ5pQZ.mjs";
3
+ import "./router-sy38X5AX.mjs";
4
4
  import "../_libs/modelcontextprotocol__server.mjs";
5
5
  import "../_libs/jszip.mjs";
6
6
  import "../_libs/swr.mjs";
@@ -198,7 +198,7 @@ function getResponse() {
198
198
  return event.res;
199
199
  }
200
200
  async function getStartManifest(matchedRoutes) {
201
- const { tsrStartManifest } = await import("../_tanstack-start-manifest_v-Z1ffcxDr.mjs");
201
+ const { tsrStartManifest } = await import("../_tanstack-start-manifest_v-Dde-eACV.mjs");
202
202
  const startManifest = tsrStartManifest();
203
203
  const rootRoute = startManifest.routes[rootRouteId] = startManifest.routes[rootRouteId] || {};
204
204
  rootRoute.assets = rootRoute.assets || [];
@@ -776,7 +776,7 @@ let entriesPromise;
776
776
  let baseManifestPromise;
777
777
  let cachedFinalManifestPromise;
778
778
  async function loadEntries() {
779
- const routerEntry = await import("./router-C8DJ5pQZ.mjs").then((n) => n.y);
779
+ const routerEntry = await import("./router-sy38X5AX.mjs").then((n) => n.y);
780
780
  const startEntry = await import("./start-HYkvq4Ni.mjs");
781
781
  return { startEntry, routerEntry };
782
782
  }
@@ -65,7 +65,7 @@ import "../_libs/immediate.mjs";
65
65
  import "../_libs/setimmediate.mjs";
66
66
  import "../_libs/pako.mjs";
67
67
  const faviconSvg = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20role='img'%20aria-label='Agent%20Inspector'%3e%3cg%20fill='none'%20stroke='%23f59e0b'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20%3e%3cpath%20d='M5%2013%20C5%209%208%207%2012%207%20C16%207%2019%209%2019%2013%20C19%2016%2016%2018%2012%2018%20C8%2018%205%2016%205%2013%20Z'%20/%3e%3cpath%20d='M5%2011%20C3.5%209.5%201.5%2010%202%2012.5%20C2.5%2014%204%2013.5%205%2012.5'%20/%3e%3cpath%20d='M19%2011%20C20.5%209.5%2022.5%2010%2022%2012.5%20C21.5%2014%2020%2013.5%2019%2012.5'%20/%3e%3cline%20x1='10'%20y1='7'%20x2='9.5'%20y2='5'%20/%3e%3cline%20x1='14'%20y1='7'%20x2='14.5'%20y2='5'%20/%3e%3cline%20x1='6.5'%20y1='16'%20x2='4.5'%20y2='19.5'%20/%3e%3cline%20x1='9'%20y1='17.5'%20x2='8'%20y2='20.5'%20/%3e%3cline%20x1='15'%20y1='17.5'%20x2='16'%20y2='20.5'%20/%3e%3cline%20x1='17.5'%20y1='16'%20x2='19.5'%20y2='19.5'%20/%3e%3c/g%3e%3ccircle%20cx='9.5'%20cy='4.5'%20r='0.9'%20fill='%23f59e0b'%20/%3e%3ccircle%20cx='14.5'%20cy='4.5'%20r='0.9'%20fill='%23f59e0b'%20/%3e%3c/svg%3e";
68
- const appCss = "/assets/index-Bcq8bZoK.css";
68
+ const appCss = "/assets/index-DP4NzCZ5.css";
69
69
  const Route$D = createRootRoute({
70
70
  head: () => ({
71
71
  meta: [
@@ -108,7 +108,7 @@ function RootDocument({ children }) {
108
108
  ] })
109
109
  ] });
110
110
  }
111
- const $$splitComponentImporter$1 = () => import("./index-CHTchkrO.mjs");
111
+ const $$splitComponentImporter$1 = () => import("./index-WnsY1fh_.mjs");
112
112
  const Route$C = createFileRoute("/")({
113
113
  component: lazyRouteComponent($$splitComponentImporter$1, "component")
114
114
  });
@@ -151,7 +151,7 @@ function decodeSessionIdFromPath(encoded) {
151
151
  function getSessionPath(sessionId) {
152
152
  return `/session/${encodeSessionIdForPath(sessionId)}`;
153
153
  }
154
- const $$splitComponentImporter = () => import("../_sessionId-COVUf_EG.mjs");
154
+ const $$splitComponentImporter = () => import("../_sessionId-CIXQGim9.mjs");
155
155
  const Route$B = createFileRoute("/session/$sessionId")({
156
156
  component: lazyRouteComponent($$splitComponentImporter, "component"),
157
157
  parseParams: (params) => ({
@@ -7926,7 +7926,7 @@ const Route$w = createFileRoute("/api/models")({
7926
7926
  }
7927
7927
  }
7928
7928
  });
7929
- const version = "2.1.5";
7929
+ const version = "2.1.6";
7930
7930
  const packageJson = {
7931
7931
  version
7932
7932
  };